Technology Reports 2006

FPGA-PCBシステム設計プロセスの最適化

はじめに

従来、システム設計へのFPGAの統合では、シリコン・デバイスに対する古典的な「ブラック・ボックス」手法が採用されていました。PCB設計者はデバイスの中身とパッケージを無視し、それを回路図シートやボード・レイアウトにどのようにフィットさせるかのみに注力してきました。しかし今日のFPGAにおける機能と密度の向上とシステム・パフォーマンス要件の著しい拡大は、新しい設計パラダイムを生み出しています。今後はFPGA設計者とPCB設計者が設計プロセスを通して協力し、システム・パフォーマンスの最適化と設計サイクルの短縮をコスト効率良く実現しなくてはなりません。

FPGAの複雑化と設計に対する影響の拡大

FPGAデバイスの複雑性とパッケージ密度は、近年大幅に拡大しています。増え続ける機能の高密度な統合を、より少ない構成部品で実現するシステム・オン・チップのトレンドを背景として、FPGA設計者にはシステム全体に大きく影響を及ぼし、結果としてデザイン内の総ピン数までを決める権限が与えられました。しかしながら、多くの場合その権限は、それらのピンの使用がFPGAのためだけでなく、システム向けに最適化されたものであることを保障する責任を伴ったものではありませんでした。

システム・パフォーマンスを効果的に最適化するには、FPGA設計者とPCB設計者が協力し、互いに影響を与える設計変更について頻繁にやりとりする必要があります。製品要件の収束を達成するには、FPGAに対する変更がPCB設計に伝達され、PCBの設計内で評価された後、さらにここで発生した修正がFPGAの設計プロセスに再び反映されなくてはなりません。

図1.システムレベルにおけるFPGA I/Oピン割り当ての悪い例 図1a(左)はPCB の「ラッツネスト」。 図1bは著しい配線遅延をともなう実際のPCB 配線。(クリックで拡大図を表示)図1.システムレベルにおけるFPGA I/Oピン割り当ての悪い例 図1a(左)はPCB の「ラッツネスト」。 図1bは著しい配線遅延をともなう実際のPCB 配線。(クリックで拡大図を表示)

図1 aは、3 2ビットのデータ・バスに対するI/Oピン割り当てがFPGAの配置・配線ツールにより行われたPCBの「ラッツネスト」を示したものです。このピン配置は、PCBへの配慮を行っておらず、FPGAにとっての最良な結果を得るべく決定されたものです。ここでFPGAの反対側への接続と、交差する接続に注目してください。図1 bは、PCBにおける実際の配線です。配線長を等しくして、バスのタイミング・スキューを最小化するために、PCB配線ツールによる「トロンボーン配線」の挿入が多数必要であったことが分かります。

図2では、データ・バスのピンがコネクタの近くに移動されています。最大配線長が3 . 6インチから1 . 8インチに短縮され、320ps高速になりました。この例をより複雑なデザインに当てはめて考えれば、FPGAのI/Oピン割り当ての最適化がPCB配線の長さ短縮と混雑緩和につながり、製品に大きなコスト節約をもたらすPCBの層削減までもが実現できるかもしれないことが容易に分かります。

このようなPCBの改善は、FPGA側の潜在的負担なしでは実現できません。FPGAを無視してPCBの配線設計を最適化することは、 PCBを無視してFPGAを優先することと変わりません。設計を完成するには、FPGA設計者が新しいピン割り当てによる再合成と再配置配線を行い、その結果についてタイミング要件と合致することを確かめなければなりません。

シグナル・インテグリティの考慮

システムに対する厳しい制約は信号タイミングだけではありません。今日のFPGAは、マルチ・ギガビット・レンジの高速通信向けにI / Oバンクを備えています。ドライバからのギガビット信号を、ボードを通して、受信デバイスへクリーンに転送するには、ボードのインターコネクト(配線およびビア)およびドライバとレシーバの動作特性(ドライブ強度、プリエンファシス、等化)を厳しく制御する必要があります。

ドライブ強度は、効率的な信号切り替えに対して重要な役割を担っています。たとえば、図3 aで選択されたFPGAドライバとインターコネクト・トポロジでは、設計者による2mAから24mAまでのドライブ強度の選択が可能です。図3 bは8 m Aのドライバを使用した場合の結果であり、遷移時間の遅れと不正なスイッチングの可能性が見られます。図3 cは24mAのドライバを使用した場合の結果です。24mAのドライバはより多くの電流供給を行います。したがって、電力要件とシグナル・インテグリティ要件のトレードオフを図る必要があります。

図2.システムレベルにおけるFPGA I/Oピン割り当ての改善例 図2aは、FPGAのピン割り当てを改善した後のPCBの「ラッツネスト」。 図2bは、「トロンボーン配線」が大幅に削減された結果。図2.システムレベルにおけるFPGA I/Oピン割り当ての改善例 図2aは、FPGAのピン割り当てを改善した後のPCBの「ラッツネスト」。 図2bは、「トロンボーン配線」が大幅に削減された結果。

ボードにおける接続性の保障

前述のような複雑に入り組んだ諸現象に加え、大規模なFPGAでは、シンボル作成、回路図への配置、残りのシステムとの接続という直接的な課題が生じます。1200ピンや1500ピンのシンボル作成は、面倒なだけでなく、現実的に不可能な場合もあります。このような大規模デバイスに対応するシンボルを単一の回路図シートに配置することは容易ではありません。このような場合は、シンボルの分割が必要となります。シンボルの分割と配置が完了しても、残りのシステムとの接続という作業は残されており、1500ピン分のネット接続は最初のシンボル作成と同様に楽ではありません。

状況をさらに複雑にさせるのは、多くのFPGAでは、最終的なI/Oピン割り当てを決定するまでに少なくとも3回から4回のイタレーションが必要となるという事実です。しかしながら、それぞれの設計変更では、シンボルや回路図の管理と、すべてのエンジニア、ツール、およびデータベース間の変更内容の伝達と同期を何らかの形で行う必要があります。デザインの3 0 %が2つ以上のFPGAを含んでいると考えた場合、これらのすべての管理を手動で行うことは非現実的です。

この作業を支援するツールの不足により、PCB設計者は配線の最適化が十分に行えず、結果的にFPGAは単にプログラマブルなASIC となっていました。

FPGAのドライブ強度の変更は、受信される信号の品質に大きな影響を与えます。FPGAのドライブ強度の変更は、受信される信号の品質に大きな影響を与えます。

 図3.FPGAドライブ強度選択(クリックで拡大図を表示) 図3.FPGAドライブ強度選択(クリックで拡大図を表示)

先端PCB 製造技術の役割

FPGAの高密度化によって、より微細なPCBジオメトリ(配線幅や間隔およびビア・サイズ)が微細ピッチのパッケージ・ピン・アレイに接続されるようになっています。PCB設計者は、既存のラミネート・スタックアップ・ジオメトリの寸法縮小により製造歩留まりの低下を覚悟するか、あるいは、HDI (High-Density Interconnect)のようなより高価な製造プロセスを使用するかの選択に迫られます。さらに、FPGAの複雑化は新たに埋め込み部品を含めた受動部品(終端抵抗やデカップリング・キャパシタ)の必要性にもつながります。これらの先端技術がもたらす結果は、インターコネクト寸法と基板面積の縮小、システム・パフォーマンスの向上です。

電子機器の設計を行うあらゆる企業は、FPGAによる設計実装の長所を実現するために必要な情報を持っています。ところがFPGAの PCBへの統合を決断した後に、それらの統合に関する問題に遭遇します。これらの問題は、FPGAの容量やパフォーマンスの向上と共に増え続けています。

しかし設計チームの理解により、製品開発工程にFPGA技術を効果的に組み込み、統合コストを考慮し、最小化しながら最適な製品設計工程を構築することは可能です。その結果、システム・パフォーマンスの向上、設計イタレーション回数と期間の短縮、および製品コスト全 般の削減を行うことが可能となります。