« Cosmo-Zの汎用パルス処理回路が完成 | トップページ | Cosmo-Zで32chのパルス波形計測が可能になった »

2016.06.09

AXI HPポートのタイミングを緩和する

長い間悩んできたタイミングエラーがあります。

ZYNQのPS-PL間のインタフェースで起きているタイミングエラーなのですが、

Timerr_1

実は、Cosmo-Zでは多数のADCの信号を束ねるために、64bitのFIFOの後、8:1マルチプレクサを通じてAXI HPポートに送っています。

図にするとこんな感じです。

Timerr_3

見るだけでも気が遠くなりそうなロジックです。

エラーレポートを見ると、PSが出してくるaxi_hp0_WREADYから、FIFOのRD、そしてデータへと続くパスが250MHzのクロックで間に合わないということのようです。

Timerr_2

そこで、前から気になっていたオプションを試してみました。

EDK(古くてスマン)を開いて、AXI HP0の設定を開きます。

Timerr_4

その中にある、Use register slice on W channelの設定を、BYPASSからFULLY_REGISTEREDに変えます。

Timerr_5

これをすると、おそらく、AXI HP0のWチャネルにレジスタが挿入されて、タイミングが緩和されるかと思ったのですが・・

ビンゴでした!

Timerr_6

タイミングエラーが解決されて、無事綺麗になりました。

EDKの深いところにあるオプションとか、怖くてなかなか変えられませんが、今回はうまくいったようで良かったです。

|

« Cosmo-Zの汎用パルス処理回路が完成 | トップページ | Cosmo-Zで32chのパルス波形計測が可能になった »

コメント

コメントを書く



(ウェブ上には掲載しません)




« Cosmo-Zの汎用パルス処理回路が完成 | トップページ | Cosmo-Zで32chのパルス波形計測が可能になった »