FC2カウンター FPGAの部屋 SDSoC のプラットフォームのお勉強3(ハードウェア・プラットフォームの試作1)

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

SDSoC のプラットフォームのお勉強3(ハードウェア・プラットフォームの試作1)

SDSoC のプラットフォームのお勉強2”の続き。

前回は、ハードウェア・プラットフォームの作り方を見てきた。今回は、試しにハードウェア・プラットフォームを作成するためにVivado 2016.3 のプロジェクトを作った。

今回使用するのは、ZYBO_0 ブロックデザインをコピー&ペーストして、ZYBO_0_platform_163 フォルダとしたものだ。これには、AXI4-Stream出力のカメラ・コントローラからラプラシアンフィルタIP やガボール・フィルタIP、RGB2HSV変換IP などがストリーム・スイッチを介して接続されているが、それをSDSoC で生成してみようと思う。

ZYBO_0_platform_163 フォルダのVivado 2016.3 プロジェクトを示す。
SDx_v2016_3_20_161226.png

ZYBO_0 ブロックデザインを開いて、mt9d111_inf_axis_0 の m_aixs ポートを空けて、その下のラプラシアンフィルタIP やガボール・フィルタIP、RGB2HSV変換IP、ストリーム・スイッチを削除した。
SDx_v2016_3_21_161226.png

PS をダブルクリックして、設定画面を開き、Page Navigator でInterrupts をクリックし、Interrupt Port のFabric Interrupts にチェックを入れた。その下のPL-PS Interrupt Ports の IRQ_F2P[15:0] にチェックを入れた。
SDx_v2016_3_22_161226.png

PS に戻ると、IRQ_F2P[0:0] ポートが増えていた。
Add IP してConcat を追加した。ポートは入力ポートを 1 個に設定した。
SDx_v2016_3_23_161226.png

FCLK_CLK0 にはProcessor System Rest が付いているので、FCLK_CLK1、FCLK_CLK2、FCLK_CLK3 にProcessor System Rest をAdd IP した。
SDx_v2016_3_24_161226.png

S_AXI_HP0 にカメラ側のDMAがつながっていたのを削除した。
SDx_v2016_3_25_161226.png

全体のブロックデザインを示す。
SDx_v2016_3_26_161226.png

ちょっと複雑すぎるかもしれない?
それに、ソフトウェアから起動を指示するカメラ・インターフェースIP やビットマップ・ディスプレイ・コントローラIP などはどうやって起動すれば良いのだろうか?
もう1つ、DMAする場合にLinux 上でのDMA領域の確保はどうするんだろうか?(たぶん、これは自動的にメモリ帯域をマップしてくれるのだろう?)

さて、次からはTcl スクリプトを使用して、.hpfm ファイル(ハードウェア・プラットフォームのメタデータ)を作っていこう。
  1. 2016年12月26日 05:19 |
  2. SDSoC
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog19.fc2.com/tb.php/3674-d6a34e9b
この記事にトラックバックする(FC2ブログユーザー)