Simulink からの HDL 生成に関して

3 次查看(过去 30 天)
Nobuo Iwasaki
Nobuo Iwasaki 2018-10-30
Simulink 上のモデルをトリガ入力で起動するブロックとして HDL に変換したいと考えています。
”開始(割り込み)信号の検出 -> 対象ブロックの入力データをラッチ -> 対象ブロックでの処理 -> 対象ブロックの出力データをラッチ -> 終了(割り込み)信号を出力”
のような流れで Xilinx Zynq の ARM コアから FPGA のプログラマブルロジックに実装したファンクションをコールするような形式です。
このようなブロックを作る場合 Simulink 上の対象モデルに Trigger ブロックを追加するだけでよい、あるいは対象モデルの全てのポートを Triggered Subsystem にすればよい、それとも別な方法があるのかお教えください。
また参考になるサンプル等があれば併せてお教えください。

采纳的回答

Shoumei
Shoumei 2018-11-1
ZynqのARM-FPGA間の同期はFree runningモードとCoprocessing-Blockingモードという2種類あって、後者がNobuo Iwasakiさんが言われているような動作に該当すると思います。
モデルはTriggered Subsystemを使わずに、HDLワークフローアドバイザーでIPコア生成するときにこのモードを選択するようです。
  1 个评论
Nobuo Iwasaki
Nobuo Iwasaki 2018-11-1
回答ありがとうございました。
FPGA に実装する部分は IP コアとして扱うことを考えていたのですが、教えていただいた Coprocessing モードは IP コア生成ワークフローをサポートしていませんでした。メニュー上は設定できるのですがヘルプに記載されていました。 ということで IP コアとして扱うことをやめる方向で再検討したいと思います。 複数のプロジェクトでの使いまわし等を考慮して IP コア化したかったのですが...。

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!