FPGA デバイスの基礎となる構造と、ASIC デバイスの構造とは異なりますが、ASIC 設計者は、Quartus® II ソフトウェアの提供する手法や機能を利用することによって、高性能で生産性の高いアルテラ FPGA デバイスおよび ASIC デバイスを設計することができます。実際のところ、アルテラ FPGA デバイスが進化し、アプリケーション領域が ASIC デバイスに近づくにつれて、FPGA デザイン・フローはASIC デザイン・フローに類似したものになります。 また、Quartus II ソフトウェアは、システム・デザインを高速化し、FPGA デバイスのプログラマブルな性質を活かして、イン・システム検証を行うための革新的な技術を提供します。 このページでは、ASIC デザインから FPGA デザインへの移行についての概要を説明します。 さらに、以下の技術情報も提供しています。
- AN 311: ASICからFPGAへの移行に関するデザイン手法およびガイドライン
- Quartus II Handbook の Synopsys DC FPGA Supportの章
- FPGA vs. ASIC Project Cost Calculator
FPGA および ASIC デバイス・オプション
アルテラの最新世代の FPGA は、最先端のプロセス・テクノロジに基づき、より大規模なロジック集積度を実現し、広範なシステム・レベル機能を実装しています。アルテラが新たに開発したHardCopy® シリーズ ASIC デバイスは、同じ FPGA 機能をより低コスト、高性能、低消費電力で提供し、さらに広いカスタム ASIC アプリケーション領域をカバーします。同じ Quartus II デザイン・ソフトウェアを使用して、デザイン・サイクルの最初から FPGA およびHardCopy シリーズ ASICのデザインを性能と電力消費の予想もあわせて行うことができます。HardCopy Stratix デバイスを設計する場合、デザイン作業を一度で確実に成功 (ファースト・シリコン・サクセス) させ、かつテスト基板のデザイン期間を短縮するために、ピン互換およびリソース互換の FPGA デバイスをイン・システム機能検証用に使用することができます。
ASIC 対 FPGA デザイン・フローの概要
Quartus II ソフトウェアは、ASIC 設計者が使用するのと同じ基本デザイン、RTL 合成、配置配線、および検証フローをサポートしますが、図 1 に示すとおりカスタム ASIC デザインに要求されるフィジカル・デザインやテスト・デザインのステップの一部は必要ありません。
図 1. FPGA および ASIC のデザイン・フローは基本的に類似

アルテラ FPGA デバイス特有の機能により、FPGA デザイン・フローではスキャン挿入とクロック・ツリー合成は不要です。FPGA デザイン・フローでは、配置配線は設計者が FPGA ベンダー配置配線ツールを使用して実行します。ASIC デザインでは、配置配線や内部デバイス信号間のクロス・トーク解析などの物理的なデザインの検証は、お客様が実行するか、または ASICベンダに委託することができます。
ASIC を開発するには、I/O セルを慎重に設計および配置し、すべてのピンで良好なシグナル・インテグリティを確保しながら、最新の複雑な標準 I/O 規格をサポートすることが必要です。Quartus II FPGA デザイン・ソフトウェアを使用すれば、スプレッドシートに似たシンプルなインタフェースのアサインメント・エディタまたはスクリプトを使用して、コンフィギュレーション可能な I/O セルにロジックを割り当てることができます。また、Quartus II は、正しい動作を保証するために、ピン配置および対応する標準 I/O 規格のアサインメントを事前に検査するチェックを迅速に実行することも可能です。
ASIC のテストと故障検出は、ASIC 開発プロセスの重要な部分です。テストには バウンダリ・スキャン挿入、BIST(ビルトイン・セルフ・テスト)、シグネチャ解析、lddq、ATPG (自動テストパターン生成 ) などの手法を用いた ASIC デバイスのデザインだけでなく、目的のデザインの機能性も対象になります。ASIC デザイン・フローでは設計者がバウンダリ・スキャン・ロジックを挿入し、実際のデザイン・ロジックに加えてこのロジックをシミュレーションする必要があるのに対して、FPGA デバイスはすでにバウンダリ・スキャン・ロジックを内蔵しています。FPGA デバイスは製造段階ですでに十分にテストされているため、FPGA デザイン・フローにおいて、エンジニアはデザインの機能性とタイミング要件のテストに専念でき、クロス・トーク解析などのデザイン・テストを実行する必要はありません。
アルテラの FPGA デバイスは、デバイス内でのクロック分配用に、最新の低スキュー・クロック・ネットワークを搭載しています。FPGA 内の定義済みクロック・ツリー構造では、ASIC 設計者がカスタム・クロック・ネットワークをすべて自在に実装できるような自由度は失われますが、同等な ASIC 実装と比較して、デザイン・プロセスが大幅に簡潔化され、ほとんどの用途に対応できます。
RTL コーディング
ASIC デザインから FPGA デザインに移行するときには、同期デザイン方式を慎重に採用する必要があります。長期間にわたり高信頼性動作を確保し、異なるデバイス・スピード・グレードやデバイス・アーキテクチャでの実装に対して、デザインを移植可能にするために、以下の同期デザイン方式が不可欠です。ASIC 設計者をサポートするために、Quartus II ソフトウェアには、同期デザイン方式を強化するための、統合されたデザイン・ルール・チェック機能が含まれています。
階層デザイン
ASIC 設計者を支援するために、Quartus II ソフトウェアは、ASIC デザイン・フローで使用されるブロック・ベース・デザイン・フローに類似した LogicLock ブロック・ベース・デザイン手法をサポートしています。LogicLock 手法を使用すれば、デザインをいくつかの機能ブロックに分割して、それらのブロックを個別のチーム・メンバに割り当て、設計、最適化、および実装を個別に行うことができます。次に、個々のブロックのデザイン性能を維持しながら、これらのブロックをトップ・レベルのシステム・デザインにインポートすることができます。最適化されたブロックは、以降のプロジェクトにおいて同じ性能で再使用することも可能です。
システム・レベル・デザイン
Quartus II ソフトウェアは、迅速なシステム・デザインおよびハードウェア/ソフトウェアのトレードオフ解析のための革新的な機能を提供します。広範な標準 IP (Intellectual Property) コアを、アルテラ FPGA でのシステム・デザインに利用できます。この IP 群 には、インタフェースやペリフェラルだけでなく、エンベデッド・プロセッサ、通信機能、最適化された DSP 処理機能が含まれます。 Quartus II ソフトウェアに含まれるアルテラの SOPC Builder ソフトウェアは、IP (intellectual property) コアの追加、パラメータ化、接続ロジックの生成を 自動的に行い、完全なシステムを簡単に構築します。SOPC Builder の重要な要素は、ハードウェア・プロトタイプが構築される前に、テストベンチ・ファイルおよびシミュレーション・モデルを用いて、デザイン・プロセスの初期の段階で、ハードウェアとソフトウェアの相互作用のテストを可能にする機能です。設計者は、SOPC Builder の迅速なシステム生成機能を使用して、どの機能をハードウェアで実装し、どの機能をエンベデッド・ソフトウェアで実装すべきかのトレードオフ解析を実行できます。
タイミング・クロージャと ECO サポート
どの ASIC または FPGA デザイン・フローにおいても、タイミング・クロージャに到達することが重要です。現在、Quartus II ソフトウェアには、自動化されたツール、および ASIC に類似した制御を設計者に提供する「パワー・ツール」が含まれています。例えば、アルテラの Quartus II ソフトウェアには、自動的にレジスタ複製やデザイン性能を調整するレジスタ・リ・タイミングなど、フィジカル・シンセシス最適化ツール一式が含まれています。Quartus II ユーザは手動でレジスタを複製して、クリティカル・パス上のファンアウトを低減し、デザインのクリティカル・タイミング・パス上にパス・ベースのアサインメントを行うこともできます。Quartus II ソフトウェアのタイミング・クロージャ・フロアプラン・エディタは、フロアプランの任意の 2つのノード・ロケーション間のタイミングを表示します。また、手動でロジック配置を調整してタイミングの最適化を図ることも可能です。
一般的なエンジニアリング・プロジェクト開発サイクルでは、プログラマブル・ロジック部分の仕様は、エンジニアリング・プロジェクト開発の開始時、またはすべてのシステム・エレメントの統合時に変更される可能性があります。このような最終段階でのデザイン変更は、一般に ECO (Engineering Change Orders) と呼ばれます。ECO は、デザインが完全にコンパイルされた後、つまり合成、配置、および配線完了後のデザイン機能へのわずかな変更と定義されています。ECO に対するサポートは ASIC デザイン・フローでの共通要素であり、Quartus II ソフトウェアは、インクリメンタル・フィッティングおよびChip Editor機能を使用して、HDL およびネットリスト・レベルで ECO を反映することができます。
スクリプト機能
ASIC デザイン・フローでは、一般にカスタム・スクリプトまたは make ファイルを使用します。FPGA 設計者は、Quartus II ソフトウェアで同様の機能を利用できます。Quartus II ソフトウェアの実行は、グラフィカル・ユーザ・インタフェースまたはコマンド・ライン・インタフェースからできます。Quartus II ソフトウェアは、デザイン制約を入力するために、多くの ASIC 開発ツールで一般的に使用される SDC (Synopsys Design Constraint) 構文のサブセットをサポートします。また、Quartus II ソフトウェアは、カスタム・デザイン・フローをスクリプト化する、 Tcl ベースのアプリケーション・プログラミング・インタフェース(API)も備えています。
EDA 検証ツールのサポート
初めて FPGA デザインに取り組む ASIC 設計者は、Quartus II デザイン・フローで 多数の馴染みのある ASIC 検証ツールを使用できることに気付くでしょう。Quartus II ソフトウェアは、主要なすべての EDA スタティック・タイミング解析、HDL シミュレーション、ボード・レベルのタイミング解析、および一般的な ASIC デザイン・フローで使用される、シグナル・インテグリティ・ツールによる解析用のネットリストを出力することができます。
イン・システム検証
リアルタイム・イン・システム検証に代わる方法はありません。本質的にイン・システム検証では、FPGA デバイスは、ASIC デバイスよりも有利です。素早く FPGA デザインを繰り返して、即座にイン・システムのテストをできることも明らかな利点ですが、その他にも Quartus II ソフトウェアのような FPGA デザイン・ツールは、エンベデッド・ロジック・アナライザ機能をデザインにシームレスに挿入する機能を提供しています。また、Quartus II ソフトウェアは、HDL ソース・ファイルを変更しないで、デバッグ信号をインクリメンタリにピンに伝達することも可能です。デザイン・フィックスについては、Chip Editor機能を使用してラボ内で実装やテストを行い、詳細なデザインの実装構造を表示したり、追加の変更をわずか数分で行うことができます。
まとめ
「Time-to-Market」への圧力が高まるに伴い、ASIC のマスク・コストや開発コストが上昇する一方で、FPGA デバイスの性能とシステム・レベル機能の高度化が進み、今日では より多くの旧 ASIC 設計者がアルテラの FPGA および ASIC デバイスでのデザインに移行しています。Quartus II ソフトウェアは、ASIC に類似した開発環境の提供、ASIC レベルの性能と機能の提供、システム・デザインおよびイン・システム検証における利点の提供を通して、FPGA デザインの「Time-to-Market」の優位性をさらに強化することにより、ASIC 設計者のニーズに応えます。

