FC2カウンター FPGAの部屋 2024年03月29日
fc2ブログ

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

FPGAの部屋

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

Xyloni Development Kit を使ってみる3

Xyloni Development Kit を使ってみる2”の続き。

Efinity® Trion® Tutorial UG-EFN-TUTORIAL-v7.0 August 2022”を参照して、Ubuntu 22.04 のパソコンで Efinity の helloworld チュートリアルをやってみようということで、前回は、Xyloni Development Kit にあらかじめコンフィグレーションされている LED の表示と SD カードの機能を確かめた。今回は、Github の Efinix-Inc/xyloni をクローンして、bsp ディレクトリをやってみた。

git clone するので、OS が Ubuntu 22.04 のパソコンを使用する。

Github の Efinix-Inc/xyloni をクローンする。
git clone https://github.com/Efinix-Inc/xyloni.git --recursive
Efinity_52_L240328.png

xyloni ディレクトリが git clone された。
Efinity_68_L240328.png

bsp ディレクトリをやっていこう。

Interface Designer のピン割り当ての生成 をやってみる。
最初に環境を設定した。
source /media/masaaki/Ubuntu_Disk/Efinity/efinity/2023.2/bin/setup.sh

CSV ファイルを使用しないで、コマンドだけでピン割り当てを指定する場合
python3 build.py -m spi -p hi_xyloni -1 8 -2 5
このコマンドはエラーになった。
Efinity_53_L240328.png

次は、CSV ファイルの設定でピン割り当てを指定する場合
使用する pmod_gpio.csv を示す。
Efinity_69_L240328.png
フォーマットは 1 行目の

Inst name,,,,Conn Type,Dir,Resource,In Clk,In Reg,Out Clk,Out Reg,Slew Rate,Drive Strength

のようだ。

コマンドを実行した。
python3 build_csv.py -p hi_xyloni T8F81 pmod_gpio.csv
Efinity_54_L240328.png

ERROR が出ているが、bsp/output ディレクトリの下に、 hi_xyloni.peri.xml ファイルと outflow ディレクトリとファイルが生成された。
Efinity_55_L240328.png

hi_xyloni.peri.xml ファイルの一部を示す。
Efinity_67_L240328.png

トップレベルのテンプレートを生成する。
環境を設定し、Efinity を起動する。
source /media/masaaki/Ubuntu_Disk/Efinity/efinity/2023.2/bin/setup.sh
efinity &


Efinity 2023.2 が起動した。
Efinity Software の File メニューから Create Project... を選択した。

Create New Project ダイアログが表示された。
Name に hi_xyloni と入力した。
Location のフォルダ・アイコンをクリックし、/media/masaaki/Ubuntu_Disk/Efinity/HDL/xyloni_proj/hi_xyloni を選択した。
Family はデフォルトで Trion だった。
Device もデフォルトで T8F81 だった。
Efinity_56_L240328.png

Design タブをクリックした。
Top Module/Entity に hi_xyloni を入力した。
OK ボタンをクリックした。
Efinity_57_L240328.png

hi_xyloni プロジェクトが生成された。
Efinity_58_L240328.png

xyloni/bps/output/hi_xyloni.peri.xml ファイルをコピーして、
Efinity_59_L240328.png

hi_xyloni プロジェクトにペーストした。
Efinity_60_L240328.png

Efinity Software から Open Interface Desiger ボタンをクリックする。
Efinity_61_L240328.png

Efinity Interface Designer が起動すると、GPIO の情報がすべて設定されていた。
Efinity_62_L240328.png

Efinity_63_L240328.png

Generate Efinity Constraint Files ボタンをクリックした。
Efinity_64_L240328.png

hi_xyloni ディレクトリの outflow ディレクトリに Verilog ファイルのテンプレートの hi_xyloni_template.v が生成された。
Efinity_65_L240328.png

hi_xyloni_template.v を示す。
Efinity_66_L240328.png
  1. 2024年03月29日 06:50 |
  2. Xyloni Development Kit
  3. | トラックバック:0
  4. | コメント:0