はじめに
ARTYボードのBDファイルもダウンロードすればもちろん使用できますが、今回はVIVADOでARTYボードのFPGAの型名(XC7A35T-L1CSG324I)を設定し、ピンアサインは回路図を見ながら設定しようと思います。
開発環境
- Vivado v2022.1
- Xilinx Vitis IDE v2022.1
- Windows10
- Tera Term
VIVADOを起動
まずVIVADOを起動しFPGAの設定まで行います。ここではプロジェクト名をArty_ledとします。もちろん別の名前でもかまいません。

Create Block Designを開き、IP CatalogでmicroBlazeを選択。

Run Block Automationをクリック。

一応Local Memoryを32KBに設定してOKをクリック。

ある程度自動配線されます。ここでclk_wiz_1をダブルクリック。

clk_in1をSingle endedに変更。

Output ClocksタブでresetをActive Lowに変更しOKをクリック。

Run Connection Automationをクリック。

全てにチェックを入れてクリック。

IP CatalogからAXI GPIOとAXI Uartliteを選択し挿入。そしてAXI GPIOをダブルクリック。

All Outputsにチェックを入れGPIO WIdthに4を設定してOKをクリック。

Run Connection Automationをクリック。

全てにチェックを入れてクリック。

上部にあるValidate Designをクリックし、エラーがないことを確認。そしてFile -> Save Block DesignをクリックしてBlock Designを保存。

design_1の上で右クリックしてGenerate Output Productsをクリック。

Generateをクリック。完了までに時間がかかります。

design_1の上で右クリックしてCreate HDL Wrapperをクリック。

OKをクリック。完了したらFlow NavigatorのSYNTHESISでRunSynthesisをクリック。

OKをクリック。完了までに時間がかかります。

Opne Synthesized Designを選択してOKをクリック。

I/OPortsでI/O stdやピンアサインを設定します。
回路図によると以下のアサインとなります。
信号名 | ピン番号 |
clk_100MHz | E3 |
gpio_rtl_0_tri_o[3] | H6 |
gpio_rtl_0_tri_o[2] | J2 |
gpio_rtl_0_tri_o[1] | J4 |
gpio_rtl_0_tri_o[0] | F6 |
reset_rtl_0 | C2 |
uart_rtl_0_rxd | A9 |
uart_rtl_0_txd | D10 |
I/O stdについては全てLVCMOS33に設定します。

ここでctrl-sで保存。Saving the current constraints.....と出たらOKをクリック。

constrinat fileの保存が必要になるため、ここではconstraintfileと入力しOKをクリック。その後PROGRAM AND DEBUGでGenerate Bitstreamをクリック。

Yesをクリック。

OKをクリック。完了すればbit fileが生成されます。
File -> Export Hardwareをクリック。

Nextをクリック。

Include bitstreamを選択してNextをクリック。

このままNextをクリック。

Finishをクリック。これでプロジェクトArty_ledの下にdesign_1_wrapper.xsaが生成されました。