私の会社では、以前にいくつかのカスタムFPGAボードを設計しており、最近、カスタムFMCドーターボードを備えた市販の( "COTS")FPGAボードの使用を開始しました。
試作段階
まだプロジェクト定義の初期段階にある場合は、プロトタイピング用に少なくとも1つのCOTS FPGAボードを購入することを計画してください。センサーの1つをI / Oヘッダーに接続して、概念実証をすばやく行うことができます。これにより、多くのセンサーにスケーリングした場合のプロジェクトのパフォーマンスと、特定のFPGAでサポートできる数を推定できます。
FPGAが小さすぎる、または遅すぎる、またはツールがジョブに不十分である場合、この段階で別のCOTS FPGAを簡単に交換できます。(簡単ではありませんが、少なくとも管理可能です...)
この段階でファームウェアが機能しない場合は、カスタムPCB設計エラーではなく、ファームウェアの問題が原因です。カスタムファームウェアとカスタムPCBでは、どちらの側に問題があるのかを判断するのが難しい場合があります。
カスタムFPGAボードと市販の市販FPGAボードの比較
カスタムFPGAボードの設計は、プロジェクトのライフサイクルが短い、大量である、またはCOTS FPGAボードとPMODまたはFMCアドオンボードで実現できるよりも小さいフォームファクターが必要な場合に意味があります。
プロジェクトのライフサイクルがDDRメモリチップの製品寿命(数年)を超える場合は、カスタムFMCドーターボードを設計することをお勧めします。
コストはこの決定の要因です。ほとんどのCOTS FPGAボードはある程度汎用的で、最大限の柔軟性を実現するように設計されています。大量生産でコスト重視の製品を製造している場合は、カスタム設計を作成することはおそらく価値があります。しかし、少量の場合は、おそらくドーターカードの作成に集中する方が良いでしょう。
選択する方法に関係なく、明確なマスタードキュメントが必要な特定のインターフェイスがあります。FPGAトップレベルI / Oピンとボードの残りの部分の間のインターフェイス、およびボード間のコネクタインターフェイスです。これらは、ピンの位置、内部ネット名、および外部ネット名が不一致になり、入れ替わる場所です。表は十分なドキュメントです。このインターフェイステーブルは常にバージョン管理を行い、ソース管理下に置いてください。PCBファイルを製造に送る前に、このインターフェーステーブルのコピー、回路図のコピー、およびFPGAピン/パッドレポートのコピーを印刷してください。蛍光ペンを紙全体にドラッグして、必要な場所で各信号接続を確認します。
コネクタについては、ボードと嵌合コネクタの両方を1つの寸法のある図面に一緒に表示する機械的な「システム図」を提供する難しい方法を学びました。最初に、一方のコネクタのピン「A1」がもう一方のコネクタのピン「A1」にマッピングされていないVMEコネクタシステムに火傷しました。また、直角のコネクタのペアが鏡像接続になることを設計者が忘れているのを見てきました(90度+ 90度= 180度)。これは私がマザーボードを担当していて、他のいくつかのプロジェクトマネージャーがさまざまなドーターボードを担当していたときに問題でした。
カスタムFPGAボードのヒント
FPGAベンダーの「リファレンスデザイン」から始めて、アプリケーションに不要な部分は省略します。FPGAからバイパスコンデンサを取り外さないでください。また、PCBレイヤーの数を減らして回避しようとしないでください。レイヤースタックに注意してください(ドリルの図面と一緒によく見られます); ファインピッチコンポーネントは通常、標準の1オンスの銅箔の厚さの代わりに0.5オンスの銅を使用します。
BGAパッケージは扱いが面倒です。歩留まりはTQFPまたはTQFNパッケージほど優れておらず、BGAの再加工はほぼ不可能です。アセンブリの問題を検査する場合でも、X線イメージャーが必要です。信頼できる委託製造サービスプロバイダーを使用してください。
FPGAボードを使用する場合、電源は常に扱いにくいものです。FPGAの実際の電力要件は、コンフィギュレーションビットストリームに大きく依存します。ザイリンクスは「消費電力見積もり」ツールを提供していますが、見積もりはファームウェアが完全な場合にのみ有効です。土壇場でファームウェアを変更する場合、電力要件が予想よりも大きくなるリスクがあります。ある程度の供給電流マージンを残すことを計画します。最初の電力見積もりで560mAが必要と表示された場合は、先に進んで1000mAレギュレータを使用してください。追加の利用可能な出力電流は害を及ぼしませんが、不十分な出力電流があると、異常なシステム動作が発生します。
コミットされていないFPGAピンがある場合は、ヘッダーにできるだけ多く引き出します。問題がある場合、これらのコミットされていないピンは、FPGA内の信号をプローブするための貴重な診断リソースになります。