Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page

RZ/T1 SCIFAレジスタアクセス

お世話になっております。

RZ/T1を用いて高速なシリアル受信を短周期(数10usecオーダー)で読み出すようなソフトウェアを構築しております。
データシートどおりの読み出し手順で実施したところ、1バイトあたり約1usecくらい時間がかかっており、課題となっています。
この読み出し性能はRZシリーズの設計性能なのでしょうか?
もし、同じ問題に直面された方がいらっしゃれば、教えていただきたいです。

また、解決にDMACを使おうと思っています。
DMACを使った場合の1バイトあたりの読み出し時間はどれくらいになりますか?
転送先は内部拡張RAMを想定しています。
ハードウェアの設計性能をご存知の方、教えていただけないでしょうか。

以上、よろしくお願いいたします。

  • 動作情報を追記しておきます。

    CPUクロックは450MHz
    シリアルクロックは150MHzです。
  • In reply to Nao:

    Naoさん
    1バイトあたり約1usecくらいということで1M Byte 秒は確かにUSB等と比べると遅いですよね、USBなら2.0サポートだと思いますから、480MHzですからDMACを使用すると最低でも20MByte秒は行くと思いますよ、SCI等ですと分周比1でシリアルクロック上限までですよね。
  • In reply to IKUZO:

    Naoさん
    CKS[1:0]=0で
    CM=1 クロック同期式モード
    の設定ではシリアルクロックは150MHzですから
    ボーレートジェネレータを使用する場合の各周波数における最大ビットレート(クロック同期式モード)

    150M 37.500.000bps 0 0 18.750.000bps 0 1

    ですから37Mbps=約4M Byte 秒~18Mbps=約2M Byte 秒ですか、

    外部クロック入力時の最大ビットレート(クロック同期式モード)

    150M 12.5M 12.500.000bps  の方が遅いですね

    DMACを使用しても通信のビットレートは変わりませんので

    格段の改善は難しいかと、同期式で4M=250nS程度が最高かと

    以上、適当な回答です。

  • In reply to IKUZO:

    IKUZOさん
    情報ありがとうございます。
    調歩同期式でボーレート6.25MHzとして、あるタイミングでデータを受信済みである前提でFIFOをリードしています。
    #随時転送は想定していませんでした。

    そのうえで、FIFOレジスタを読みに行くと、1usecかかるという状況でした。
    で、今日知ったのですが、計測方法が少し怪しいのでクロックカウンタを使ってみようと思います。

    もうちょっと探ってみますが…
    ソースコードの改善も必要かもしれません。

Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page