Zynq FPGA入門 2つのチップ内CPU構成法
別チップ派?ハードCPU派?ソフトCPU派?
Zynq FPGAの特徴とCPU構成の選択肢
図1 Zynq FPGAは,Xilinx社が提供するFPGAとCPUを統合したSoC(System on Chip).CPUとロジックIPの構成方法において3つの選択肢が存在する.画像クリックで動画を見る.または記事を読む.[提供・著]森岡 澄夫
詳細:【Cora Z7-07S Zynq-7000開発ボード付き】Zynqで初めてのFPGA×Linux I/O搭載カスタムSoC製作 |
Zynq FPGAは,Xilinx社が提供するFPGAとCPUを統合したSoC(System on Chip)です.このSoCは,FPGAの柔軟性とCPUの汎用性を兼ね備え,組み込みシステム設計における強力なツールになります.CPUとFPGAの構成方法において次の3つの選択肢が存在します.
- 別チップ構成
CPUをFPGAとは独立したチップとして使用し,外部インターフェースで連結 - ハードCPU構成
FPGA内部に設計されたハードウェアCPU(e.g., ARM Cortex)を利用 - ソフトCPU構成: FPGA内のLUT(Look-Up Table)上にソフトウェアでCPUを実装
これらの構成は,性能,柔軟性,リスク,コストの観点からそれぞれにメリットとデメリットがあります.
1.別チップ構成
外部接続を用いるため,データ帯域やレイテンシに制限が生じますが,FPGAとCPUの独立性を保つことで,設計変更やデバイスのアップグレードが容易です.しかし,基板面積や消費電力が大きくなる点がデメリットです.
2.ハードCPU構成
ZynqのようなFPGA-SoCでは,オンチップ・バス(AXIなど)を介してハードCPUとFPGAのプログラマブル・ロジックが密接に連携します.これにより,データ転送効率が向上し,高速かつ低消費電力なシステム設計が可能です.一方で,CPU部分のコア数や種類は固定されるため,将来的な柔軟性が制限されることがあります.
3.ソフトCPU構成
FPGA内のLUTにソフトCPU(例:MicroBlaze)を構築する方法は,FPGAのリソースが許す限り,柔軟にCPUコア数を増やせる利点があります.また,FPGA自体をほかのデバイスに置き換えることで,設計の再利用が容易です.ただし,CPU性能はFPGAの動作周波数やリソースに依存するため,ハードCPUと比べて性能が劣る場合があります.
3.実装のポイント
Zynqを活用する際の設計フローは次のとおりです.〈著:ZEPマガジン〉
- プロセッサと周辺回路の設定
Vivadoを用いて,ハードウェア構成(CPUやGPIOの設定など)を設計 - 回路合成とソフトウェア開発
論理合成後,Vitisなどのツールを使い,必要なソフトウェアを作成 - 動作確認と最適化
開発したハードウェアとソフトウェアを評価ボード上で動作させ,性能を確認
著者紹介
- 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エンジニアリング株式会社.