C言語ライブラリーモージュルだけをROMにするのは可能でしょうか?

現在CS+でRX63Nでソフトを作成しております

なにぶんRAMが128K Byteのようで、これをまだまだ先になりそうですが

SDカードやLANやUSBからファームを転送してRAM上で動作させるといいんじゃないかと

その場合ROMは大容量なのでC言語ライブラリーモージュルだけをROMにもたせることができれば

いいのじゃないかと素人考えで、そんなことは可能なんでしょうか?

Parents
  • わわいです
    まー、ビルドコンフィグレーション(DebugとかReleaseとかですな)をRAMデバッグ用(RAM_Debug とかなんとか)に新しく作って、すべてのアドレス割当をRAM上にしてしまうというのはよくやりますねー
    まあ、RAM容量が潤沢にないと使えない手ですが

    で、DMAを使うとかいうはなしですが、いまどきでは内蔵RAMのアクセスについては、DMAが圧倒的に遅くなります(というより、内蔵RAMのアクセスがクソ早い)。また、内蔵RAMを相手にする場合はその心配はないですが、DMAではキャッシュが使えないためキャッシュ無効のエリアでしか相手にできないってこともあったりします。

    ということで、そこらへんのワケがわかってないうちは、DMAはやめといたほうがいいとは思いますです
  • わわいさん
    DMAですよね、これあんまり信頼してもいけませんよね、前に割り込みでケアした時に高ボーレートの機器が接続されて取れなかったことがありましてDMACにしました、DMACも使わなかったらもったいないの精神です、「キャッシュ無効のエリアでしか相手にできない」SHではそうでした、RXはこれもキャッシュがあるのでしょうか?シリアルでDMACは意外と便利です、リピートモードで使用するとポインタの管理がいりません、自動でリングバッファを構成してくれます、SCI2はサンプルもありましたし、簡単に実現できました、評価ボードの回路図が違ってたようで信号が出るまでえらい時間がかかりました、あれからコマンドラインとタスクモジュールも追加して快適です、先ほどUSBペリファイ?のサンプルをダウンロードしましたから、明日からUSBに取り組みます、またいろいろ教えてください。
Reply
  • わわいさん
    DMAですよね、これあんまり信頼してもいけませんよね、前に割り込みでケアした時に高ボーレートの機器が接続されて取れなかったことがありましてDMACにしました、DMACも使わなかったらもったいないの精神です、「キャッシュ無効のエリアでしか相手にできない」SHではそうでした、RXはこれもキャッシュがあるのでしょうか?シリアルでDMACは意外と便利です、リピートモードで使用するとポインタの管理がいりません、自動でリングバッファを構成してくれます、SCI2はサンプルもありましたし、簡単に実現できました、評価ボードの回路図が違ってたようで信号が出るまでえらい時間がかかりました、あれからコマンドラインとタスクモジュールも追加して快適です、先ほどUSBペリファイ?のサンプルをダウンロードしましたから、明日からUSBに取り組みます、またいろいろ教えてください。
Children
No Data