Xilinx FPGA入門 重要な2つのファイル
HDLソース(.v)とピンアサイン(.xdc)
回路の動作を決めるHDLソース,物理的な接続を定義する制約ファイル
![]() |
---|
図1 FPGAの設計にはHDLソースと制約ファイルが不可欠.HDLは回路の動作を記述し,制約ファイルはFPGAと外部デバイスの接続を定義するもの.画像クリックで動画を見る.または記事を読む.[提供・著]森岡 澄夫 詳細:[VOD/KIT]Xilinx製FPGAで始めるHDL回路設計入門 |
HDLソース(.v)とは
FPGAの設計にはハードウェア記述言語(HDL)が用いられます.Xilinx FPGAでは,主にVerilog HDL(.v)やVHDL(.vhd)が使用されます.HDLはソフトウェアのプログラムとは異なり,ハードウェアの動作を記述するための言語です.
HDLの役割は以下のとおりです.
- 論理回路の設計を記述する
- シミュレーションを行い,設計の妥当性を確認する
- 論理合成を行い,FPGA上で実行可能な形式に変換する
次のVerilog HDLのコードは,スイッチの状態に応じてLEDを点灯させる動作を記述しています.
```verilog assign led = sw; ```
この記述により,スイッチの入力信号がLED出力へ直接接続され,スイッチをONにすると対応するLEDが点灯します.
ピン・アサイン(.xdc)とは
FPGAの設計では,論理回路の動作を記述するだけでなく,外部との接続も設定する必要があります.そのために使用されるのが制約ファイル(.xdc)です.
制約ファイルには,各信号をどのピンに割り当てるかを定義する情報が含まれています.たとえば,Basys 3ボードのスイッチやLEDをFPGAの特定のピンに接続するためには,次のような記述を行います.
```xdc set_property PACKAGE_PIN V17 [get_ports {sw[0]}] set_property IOSTANDARD LVCMOS33 [get_ports {sw[0]}] ```
この設定により,`sw[0]`の入力信号がFPGAのV17ピンに割り当てられます.同様に,LEDの出力信号も適切なピンに割り当てる必要があります.
FPGA設計の流れ
FPGAを動作させるまでの一般的な手順は以下のとおりです.
- HDLでソースコードを作成する
- シミュレーションを行い,動作を確認する
- 論理合成を行い,FPGAに適した形式へ変換する
- FPGAボードへプログラムを書き込む
HDLと制約ファイルの重要性
FPGA開発において,HDLと制約ファイルは欠かせない要素です.HDLは回路の動作を決定し,制約ファイルは物理的な接続を定義します.両者を適切に組み合わせることで,設計どおりの動作をFPGA上で実現できます.〈著:ZEPマガジン〉
著者紹介
- NTT,IBM,Sony,NECの各研究所において高性能回路IPやハイレベル・シンセシスの研究,およびプレイステーションなどの製品用SoC開発に従事した後,現職にて民間宇宙ロケットの飛行制御コンピュータの研究開発に従事.FPGAや高位合成を活用している
著書
- [VOD/KIT]一緒に動かそう!Lチカから始めるFPGA開発【基礎編&実践編】,ZEPエンジニアリング株式会社.
- [VOD/KIT]Xilinx製FPGAで始めるHDL回路設計入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]一緒に動かそう!Lチカから始めるFPGA開発【基礎編】,ZEPエンジニアリング株式会社.
- [VOD/KIT]Zynqで初めてのFPGA×Linux I/O搭載カスタムSoC製作,ZEPエンジニアリング株式会社.
- [VOD/KIT]Tiny FPGA実習!高校生から始めるHDLプログラミング,ZEPエンジニアリング株式会社.
- [VOD/Pi KIT]カメラ×ラズパイで一緒に!初めての画像処理プログラミング,ZEPエンジニアリング株式会社.
- スパコンでも破れない!高セキュリティ・マイコン・プログラミング,ZEPエンジニアリング株式会社.
- [YouTube]宇宙軌道ロケット 成功の方程式
- [YouTube]宇宙ロケットの電子回路開発
- FPGA/Zynqで作るカスタム・コンピュータ・チップ,ZEPエンジニアリング株式会社.
- Lチカ入門!ソフトウェア屋のためのHDL事はじめ,ZEPエンジニアリング株式会社.
- USBカメラの動画キャプチャ&描画用 Pythonプログラム,ZEPエンジニアリング株式会社.
- ライブラリ完備!組立式ラズパイI/O増設ボード MCC DAQ HATSファミリ誕生,ZEPエンジニアリング株式会社.
参考文献
- [VOD/KIT] 実習キットで一緒に作る!オープンソースCPU RISC-V入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]ARM Cortex-A9&FPGA内蔵SoC Zynqで初体験!オリジナル・プロセッサ開発入門,ZEPエンジニアリング株式会社.