Simulink からの HDL 生成に関して

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

 Respuesta aceptada

Shoumei
Shoumei el 1 de Nov. de 2018

1 voto

ZynqのARM-FPGA間の同期はFree runningモードとCoprocessing-Blockingモードという2種類あって、後者がNobuo Iwasakiさんが言われているような動作に該当すると思います。
モデルはTriggered Subsystemを使わずに、HDLワークフローアドバイザーでIPコア生成するときにこのモードを選択するようです。

1 comentario

Nobuo Iwasaki
Nobuo Iwasaki el 1 de Nov. de 2018
回答ありがとうございました。
FPGA に実装する部分は IP コアとして扱うことを考えていたのですが、教えていただいた Coprocessing モードは IP コア生成ワークフローをサポートしていませんでした。メニュー上は設定できるのですがヘルプに記載されていました。 ということで IP コアとして扱うことをやめる方向で再検討したいと思います。 複数のプロジェクトでの使いまわし等を考慮して IP コア化したかったのですが...。

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Versión

R2018a

Preguntada:

el 30 de Oct. de 2018

Comentada:

el 1 de Nov. de 2018

Community Treasure Hunt

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

Start Hunting!