はじめに
今回は、ZYBO(ZYNQ-7020 Development Board)のLEDを点滅させます。GPIOのIPを使用して、それをボード上の4つのLEDに接続し点滅させようと思います。
動作環境
- Vivado v2020.2
- Xilinx Vitis IDE v2020.2.0
- Windows10
VIVADOを起動
既にインストールしてあるVivado v2020.2を起動してFile - Project - New。
Nextをクリック。
適当にProject Nameを入力してNextをクリック。
Nextをクリック。
Nextをクリック。
Nextをクリック。
Boardsをクリック。
Zybo Z7-20を選択してNextをクリック。これはZYBOの初期設定の情報です。もしない場合にはDigilentの
で入手し、VIVADO2020.2の場合なら、Xilinx\Vivado\2020.2\data\boards\board_filesの下に置いた後、立ち上げなおしてください。
Finishをクリック。
VIVADOで上のような画面になります。ここで左のFlow NavigatorのCreate Block Designをクリック。
Design nameはディフォルトのdesign_1のままでOKをクリック。
Add IP (+マーク)をクリック。
ZYNQ7 Processing Systemを選びリターン。
Run Block Automationをクリック。
OKをクリック。これによりZYBOのボードの初期設定が行われます。
Add IP (+マーク)をクリック。
AXI GPIOを選択してリターン。
AXI GPIOをダブルクリック。
Board InterfaceのCustomをプルダウンしてleds 4bitsを選択し、OKをクリック。
All AutomationにチェックをいれてOKをクリック。
File - Save Block DesignをクリックしてBlock Designを保存します。
Sourcesを選択してdesign_1の上で右クリックし、Generate Output Productsをクリック。
Generateをクリック。その後同様にdesign_1の上で右クリックし、Create HDL Wrapperをクリック。
OKをクリック。Wrapperが生成されます。
Run Implementationをクリック。
Yesをクリック。
OKをクリック。
OKをクリック。
I/O Portsのleds_4bits_tri_oをクリック。
ZYBOの回路図はDIGILENTのWebサイトにあると思います。回路図からLEDはそれぞれ
- LED0 - M14
- LED1 - M15
- LED2 - G14
- LED3 - D18
に接続されていることがわかるので、Package Pinを上記のようにアサインします。初期設定値と上記が同じならそのまま、違う場合には変更します。その後Generate Bitstreamをクリック。ピンアサインを保存するか聞かれたら保存するとして続行。
OKでもいいですけど特に見る必要がないならCancelをクリック。
File - Export - Export Hardwareをクリック。
Nextをクリック。
Include bitstreamを選択してNextをクリック。
Nextをクリック。
Finishをクリック。これでxsaファイルが生成されました。
ここでちょっとアドレスを確認しておきます。Address Editorをクリック。
AXI GPIOは0x41200000に割り当てられています。
VITISを起動
Tools - Launch Vitis IDEをクリック。
今のプロジェクトの下にvitisというディレクトリをworksaceと設定してLaunchをクリック 。
VITISが起動しました。