RX671のQSPI経由でRAM領域は確保できますか?

こんにちは

大型連休前に解決したいと思い急遽UPさせていただきます。

RX671のQSPI経由でQSPIインタフェイスを持つRAM(PSRAMなど)を接続してメモリマッピング後R/Wできるのでしょうか?

データシート上ではROM対象のようですが、Writeもできそうな記述もあるのでお伺いしたいと思います。

また、RAM領域を拡張する方法で、外部RAMを使用する以外でアイデアをお持ちの方がおられればご教授いただければありがたいです。

Parents
  • kitasanさん、こんにちは。NoMaYです。

    頂いたリプライで、kitasanさんの発想が、たぶん、分かったような気がしました。PSRAMということで、具体的に、以下を例にしたいと思います。

    ESP-PSRAM64 & ESP-PSRAM64H Datasheet
    cdn-shop.adafruit.com/product-files/4677/4677_esp-psram64_esp-psram64h_datasheet_en.pdf


    リードする場合、例えば、Fast Quad Readモードでは、以下のプロトコルが使われます。

    PSRAM側 上記ドキュメントの14ページ (表記上は10/22ページ)
    Figure 6-3. SPI Fast Quad Read ‘hEB

    RX671側 ユーザーズマニュアルの2468P
    42.6.7 Fast Read Quad I/O 命令


    他方、ライトする場合、例えば、SPI Quad Writeモードでは、以下のプロトコルが使われます。

    PSRAM側 上記ドキュメントの15ページ (表記上は11/22ページ)
    Figure 6-5. SPI Quad Write ‘h38

    RX671側 ユーザーズマニュアルに該当コマンドの記載無し
    つまりメモリマップトでライトする機能は無いです


    こういうことなのですけれども。

  • NoMaYさん、おはようございます。

    詳細なご説明ありがとうございます。

    頂いた情報はハード担当者に展開させていただきます。

    理解した内容を簡単に書くと、

    ・PSRAMリードだけなら、マッピングされたアドレスから読める

    ・ライトは、ドライバ等でプロトコルを組んで(提供されているかもしれないけど)書く

    ・なので、ライトは面倒で遅めだけれども、リードは簡単で早め

    という内容で方向性は間違ってないでしょうか?

    当然何かあってもこちらの全責任で進めていきます。

    よろしくお願いいたします。

  • kitasanさん、こんにちは。NoMaYです。

    もしかしたら、(遅め、は、ともかく、)早め、に関して、思っておられる程度の「桁」が違っているのでは、と危惧しています。メモリマップトにてリードする場合でも、例えば、32ビットデータを内蔵RAMからリードする場合に比べて、PSRAMからリードすると1桁以上遅くなります。この見積もりの論拠は、単純で、以下の理屈によるものです。

    内蔵RAM: RXマイコンの動作として、32ビットデータを一度に、かつ、120MHzのスピードで、リード出来ます。

    PSRAM: Quadモード(データ線を4本使うモード)であっても、リードを8回繰り返さなければ32ビットデータを得られません。更に、1回分のリードスピードも最大60MHz(CPU動作クロック120MHzの1/2(この機能の回路の仕様))になります。

    つまり、両者を比べると、8×2=16倍、の差が出てしまうのです。

  • NoMaYさん、こんにちは。kitasanです

    返信遅れました。すいません。
    頭の中はほぼPowerONReset状態です。(^-^;

    ご教示ありがとうございます。そうなりますよね・・・

    実は、SDカードを演算中のデータバッファとして使おうとして評価基板を作成し評価しておりました。
    その結果から今回のポストとなった経緯があります。
    なので、まずはSDカードのR/W速度との比較となります。
    FAT32とシーケンシャルを比較したのですがあんまり差がなかったということで、SDカードではこれが速度限界かなというところは捉えています。
    それよりも少しでも早い構成は無いかという目論見です。
    まだ試していませんが、現在の評価基板のピン配を変更すれば8bitデータバスのSDRAMが使用できそうなので手はまだ残っていそうで後は覚悟というところでしょうか。
    ちなみに、SDカードのRWとクワッドSPI メモリのRWのアクセスの比較に関してなんらかの知見をお持ちであれば教えていただければうれしいです。
    あとは自分でやってみて。ということであればCloseとします。
    お手数をおかけしてすいません。

  • kitasanさん、こんにちは。NoMaYです。

    > SDカードを演算中のデータバッファとして使おうとして

    > SDカードのR/W速度との比較となります。

    今まで意識していませんでしたけれども、SDHIではデータ線4本でライト出来るのに対して、QSPIXではデータ線1本でライトすることしか出来ないような(もちろんメモリマップトではライト出来ませんので間接モードですけれども)、改めてRX671のユーザーズマニュアルを見直してみると、どうもそのように見受けられます。それが気掛かりです。


    > FAT32とシーケンシャルを比較したのですがあんまり差がなかったということで、SDカードではこれが速度限界かなというところは捉えています。

    倍/半分の相違は誤差の範囲と割り切って考えて、連休前にリプライしたような速度見積もりの考え方で、SDHIやQSPIXでの性能は捉えることが出来るように思います。(通信速度以上の性能は出る筈が無い。) 一度考察されてはどうでしょうか。

    ちなみに、私は若かりし頃、よくある、データ転送と演算処理を並列動作させて性能を稼ぐ、ということをしばしば行ったのですけれども、それとて、通信速度の限界を超える性能は、当然ながら、出せませんでした。

  • NoMaYさん、おはようございます。kitasanです

    毎回丁寧なアドバイスありがとうございました。

    自分の中の流行トレンドキーワード「考察」をしてみます。(^_^.)

    助かりました。ありがとうございます。

Reply
  • NoMaYさん、おはようございます。kitasanです

    毎回丁寧なアドバイスありがとうございました。

    自分の中の流行トレンドキーワード「考察」をしてみます。(^_^.)

    助かりました。ありがとうございます。

Children
No Data