FPGA設計:テスト動作までの流れを解説!
本記事ではFPGA設計のポイントやFPGA設計の流れをご説明します!
【無料ダウンロード】組み込み機器・ハードウェア設計入門
組み込み機器・ハードウェア設計製作.comでは、技術資料を無料で発行しております。
組み込み機器設計に関する基礎知識やFPGA設計のポイントについて、まとめた資料となっていますので是非ご確認ください。
FPGAとは何か
FPGA とは、Field Programmable Gate Arrayの文字通り、設計者がフィールド(現場)で論理回路の構成をプログラムできるゲート(論理回路)を集積したデバイスのことです。
製造後は回路構成を変更できないLSI(集積回路)に対し、プログラムにより内部の回路構成、つまりデバイスの処理内容を書き換えられることからProgrammable(装置やソフトウェア、システムなどの動作を利用者が必要に応じて変更・自動化できること)と呼ばれます。
FPGAのメリットとデメリットについては以下の記事で詳しく解説しておりますので、こちらもあわせてご覧ください。
<当社の”FPGA設計開発 代行サービス”>
FPGAの用途
FPGAは、液晶パネル、オーディオ、コンピュータ、通信機器、ゲーム機、メモリカード、プリンター、LED表示機等様々な電子機器に使われます。
他にも、最近だと、データセンターのコンピューターに使われます。
FPGA設計をするための環境づくり
ここからはFPGA設計をするための環境づくりについて解説いたします。
FPGAの開発言語
ハードウェア開発では、VHDLやVerilog HDLが主流でした。
現在では高位合成ツールを使用することにより、C, C++, Pythonなどの言語で開発されるようになってきました。
FPGA設計の流れ
ここからはFPGA設計の流れを解説いたします。
評価ボードの選定
FPGAの選定要素としては、
・コスト、入手性、サイズ
・電源電圧
・ゲート容量
・ブロックRAM容量
・I/Oピン数
・PLL数
などがあります。
選定する前に開発ツールで仮プロジェクトをビルドして必要容量や空き容量の確認・検討を行います。
FPGAの選定要素としては、①コスト②入手性③サイズがあります。ただし、コスト、入手性、サイズのみを考慮しFPGAの選定を行うと、意図する動作をしないなど、基板開発が停滞する懸念があります。
書き込みツールの準備
メーカーが推奨するJTAGケーブルなどを用意します。
※評価ボードに書き込み回路が含まれている場合はUSBケーブルのみの準備でOKです。
開発環境のセットアップ
メーカー提供の開発環境をセットアップします。
どのシリーズのデバイスを使うかあらかじめ決めておく必要があります。
選定したデバイスを指定したプロジェクトを作成し、論理合成を行えるか確認します。
書き込みテスト
評価ボードとPCをJTAGケーブル(書き込み回路内蔵の場合はUSBケーブル)で接続し、書き込みを行います。
コンフィグレーションROMに書き込むことができれば電源投入時に回路がロードされます。
テスト回路の動作確認
トップレベルに簡単な回路を記述し、使用可能なピンに信号を割り当てます。
書き込みを行って入出力信号が回路通り正しく動作することを確認します。
FPGA設計のポイントについて詳しく知りたい方は以下の記事で詳しく解説しておりますので、こちらもあわせてご覧ください。
>>FPGA設計のポイントについて解説!
まとめ
今回の記事では
・FPGAとは何か
・FPGA設計をするための環境づくり
・FPGA設計の流れ
についてご説明しました。
組み込み機器・組み込みハードウェア 設計製作.comを運営するアイディ・アイでは、FPGAを用いた組み込み機器の設計開発代行を得意としております。FPGAを用いた組み込み機器の開発及び、その他のICからの代替等のご相談はぜひ当社までお気軽にお申し付けくださいませ。弊社担当よりお返事させて頂きます。
技術情報・技術コラム
- 組み込みボード
SoMとしてのRaspberry Piの活用と組み込み開発
今回の記事では、Raspberry Piを活用した組み込み開発のメリットについて説明します。Raspberry Piを使う場面についても解説しています。
- 組み込みボード
画像処理とFPGA
今回の記事では、画像処理とFPGAについて紹介します。画像処理にFPGAを使用するメリット、FPGAの実装方法等、解説しています。
- 組み込みボード
Raspberry Piを活用した組み込み開発のメリット!
今回の記事では、Raspberry Piを活用した組み込み開発のメリットについて説明します。Raspberry Piを使う場面についても解説しています。
- 組み込み機器
SoCとは?FPGAとの違いを解説!
今回の記事では、SoCとは何か、SoCの用途、SoCのメリット・デメリット、SoCとFPGAとの違いについてご説明いたします。
- 組み込み機器
組み込みLinuxとは?組み込みLinuxの特徴と開発までの流れを解説!
今回の記事では、組み込みLinuxとは何か、組み込みLinuxの特徴についてご説明いたします。
- 組み込みボード
マイコン開発ってどうやるの?マイコン開発のポイントと流れを解説!
今回の記事では、マイコン開発のポイントやマイコン開発の流れをご説明します。
- 組み込みボード
FPGA設計:テスト動作までの流れを解説!
本記事ではFPGA設計のポイントやFPGA設計の流れをご説明します!
- 組み込みハードウェア
ハードウェア設計を外注する際に注意すべき点
「ハードウェア設計」と一口に言っても、設計する要素は多数あります。それもまた、10、20といったレベルではありません。これは機器に使用されるソフトウェア以外は、ハードウェアと言うことができ、ハードウェアの定義が非常に幅広いためです。
- 組み込みボード
ASICとFPGAの違いについて解説!
ASIC(エーシック)とは、ある特定の用途や分野のために使われる電子機器やシステムに搭載される、「大規模集積回路」の総称で、FPGA とは、Field Programmable Gate Arrayの文字通り、設計者がフィールド(現場)で論理回路の構成をプログラムできるゲート(論理回路)を集積したデバイスのことを指します。
当記事では ASICとFPGAについて、それぞれの違いも含めて詳しく説明しています。
- 組み込みボード
FPGAとは?メリット・デメリットについて解説!
本記事ではFPGAとは何かについて、わかりやすく解説します!
FPGAとよく混同されがちな、マイコン、CPU、CPLD、DSP、GPU、ASIC、ASSPとの違いについてや、メリットデメリットについて詳しく解説します!