Cyclone IIIデザイン・ガイドライン

Cyclone III デザイン・ガイドライン
この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。こちらの日本語版は参考用としてご利用
ください。設計の際には、最新の英語版で内容をご確認ください。
Application Note 466
2007 年 8 月 ver 1.0
はじめに
アルテラの Cyclone® III FPGA ファミリは、低コストでメモリ・リソースが豊富
な FPGA ファミリです。Cyclone III FPGA は、TSMC の 65 nm ロー・パワー(LP)
プロセス・テクノロジに基づいて構築され、消費電力を最小化するためシリコン
の最適化およびソフトウェアの機能が追加されています。この第 3 世代の Cyclone
シリーズにより、アルテラは FPGA から利益を得られるコスト重視の量産アプリ
ケーションの数を拡大しています。適切なデザイン方法と Cyclone III デバイスで
のデザイン・フローを明確に理解することにより、デザイン・フローが簡単にな
ります。このデザイン・ガイドラインでは、Cyclone III デバイスのさまざまな特
長に加え、Cyclone III デバイスの設計に必要な Quartus® II ソフトウェアの機能
を要約しています。
本資料では、以下の項目について説明します。
■ 「デバイスの選択」
■
デバイスの
選択
4 ページの「早期システム・プランニング」
■
16 ページの「ボード・デザインの検討事項」
■
30 ページの「デザインおよびコンパイル」
■
48 ページの「検証」
■
53 ページの「デザインのデバッグ」
■
55 ページの「テスト作業」
■
55 ページの「その他の検討事項」
この項では、システムで使用する Cyclone III デバイスを選択するときの検討事項
を説明します。
ロジック集積度
Cyclone III デバイス・ファミリは、約 5,000 ロジック・エレメント(LE)から
120,000 LE までの集積度を提供しており、広範なアプリケーションに対応します。
デザインをアップグレードまたは拡張したい場合により多くの LE が利用できる
よう、常にデザイン要件の見積値を上回る LE を持つデバイスを選択してくださ
い。また、デバッグ目的に LE を追加することも検討する必要があります。より
多くのリソースを持つことによって、Quartus II ソフトウェアで最大性能または
低消費電力、あるいはその両方を達成するために、配置配線を最適化する柔軟性
を得ることもできます。
Cyclone III デバイス・リソース、デバイス集積度について詳しくは、
「Cyclone III
デバイス・ハンドブック Volume 1」の「Cyclone III デバイス・ファミリの概要」
の章を参照してください。
Altera Corporation
AN-466-1.0
1
Cyclone III デザイン・ガイドライン
I/O ピン数、パッケージ、およびバーティカル・
マイグレーション
Cyclone III デバイス・ファミリは、最大 535 本のユーザ I/O ピンを提供していま
す。パッケージは、クワッド・フラット・パック(QFP)、1.0 mm ボール・ピッ
チの FineLine ボール・グリッド・アレイ(FBGA)、または Cyclone III デバイス・
ファミリで最小サイズでボード・スペースを節約する 0.8 mm ボール・ピッチの
Ultra FBGA(UBGA)から、アプリケーションおよびボード・レイアウトに応じ
て選択することができます。
Cyclone III デバイスは、同一のパッケージにおけるバーティカル・マイグレー
ションをサポートしています。同一パッケージのため、デバイスの集積度が異なっ
ていても電源ピン、コンフィギュレーション・ピンおよび専用ピンの位置は同じ
です。
これにより、
ボード上のCyclone IIIデバイスを集積度が異なる別のCyclone III
デバイスに置き換えることができるため、将来ボード・レイアウトを変更するこ
となくCyclone IIIデザインをアップグレードまたは変更することが可能になりま
す。最良の結果を得るには、サイズの異なるデバイスへのシームレスな移行を実
現するために、デザインにおいて両方のデバイスで位置が同じピンのみ使用され
るよう、Quartus II ソフトウェアで最初のデザインをコンパイルする前にマイグ
レーション・デバイスを指定します。
差動チャネルの数は、デバイスの集積度によって異なります。Cyclone III デバイ
ス・ファミリの集積度およびパッケージごとの差動チャネル数について詳しくは、
「Cyclone III デバイス・ハンドブック」の「高速差動インタフェース」の章を参
照してください。
表 1 に、Cyclone III ファミリの各集積度に対するユーザ I/O ピン数およびパッ
ケージを示します。矢印は、同一のパッケージのデバイスのバーティカル・マイ
グレーションを示しています。
2
Altera Corporation
2007 年 8 月
デバイスの選択
表 1.
Cyclone III FPGA のパッケージ・オプションおよび I/O ピン数
注 (1)、(2)、(3)
324 ピン
256 ピン
256 ピン
240 ピン・
144 ピン・
FineLine
Ultra
プラスチック・ プラスチック・ FineLine
ボール・
ボール・ FineLine
クワッド・
エンハンスト・
グリッド・ ボール・ グリッド・
フラット・
クワッド・
デバイス
アレイ
グリッド・ アレイ
パック
フラット・
(FBGA)
(FBGA)
アレイ
(PQFP)
パック
(UBGA)
(EQFP)
(6)
(5)
484 ピン
484 ピン
Ultra
FineLine
ボール・ FineLine
グリッド・ ボール・
アレイ
グリッド・
(FBGA)
アレイ
(UBGA)
(6)
780 ピン
FineLine
ボール・
グリッド・
アレイ
(FBGA)
EP3C5
94
—
182
182
—
—
—
—
EP3C10
94
—
182
182
—
—
—
—
EP3C16
84
160
168
168
—
346
346
—
EP3C25
82
148
156
156
215
—
—
—
EP3C40
—
128
—
—
195
331
331
535 (4)
EP3C55
—
—
—
—
—
327
327
377
EP3C80
—
—
—
—
—
295
295
429
EP3C120
—
—
—
—
—
283
—
531
表 1 の注 :
(1)
デバイス・パッケージの仕様について詳しくは、アルテラ・ウェブサイトのサポート・セクション(www.altera.co.jp/support/devices/
packaging/specifications/pkg-pin/spe-index.html)を参照してください。
(2)
数値は、デバイスとパッケージの組み合わせでサポートされている最大 I/O 数(クロック入力ピンを含む)が記載されていますが、デバイ
(3)
(4)
スのコンフィギュレーション方法により変動します。
すべてのパッケージは、無鉛および有鉛のオプションを提供しています。
F780 パッケージの EP3C40 は、制約されたバーティカル・マイグレーションをサポートします。電圧リファレンス形式の I/O 規格を使用し
ているデザインにおいて、EP3C120 にマイグレーションした場合には、最大ユーザ I/O 数は 510 I/O に制限されます。電圧リファレンス形
式の I/O 規格を使用しない場合、この最大 I/O 数を増やすことができます。このパッケージは、LVDS アプリケーションには最適化されて
いません。すべての差動ペアが隣接しているわけではないため、PCB レイアウトはより困難になります。EP3C55F780 およびより大きなデ
バイスは、多数の LVDS チャネルを必要とするアプリケーションに最適なピン配置を提供します。
(5)
E144 パッケージは、パッケージの裏面に露出パッドを備えています。この露出パッドは、PCB のグランド・プレーンに接続する必要のあ
(6)
るグランド・パッドです。この露出パッドは放熱用ではなく、電気的接続のために使用されています。
EP3C16 デバイス以外のすべての UBGA パッケージは、Quartus II ソフトウェアのバージョン 7.1 SP1 でサポートされています。EP3C16 の
UBGA パッケージは、Quartus II ソフトウェアのバージョン 7.2 でサポートされます。
Altera Corporation
2007 年 8 月
3
Cyclone III デザイン・ガイドライン
スピード • グレード
デバイスのスピード・グレードは、デバイスのタイミング・クロージャに影響を
与えます。Cyclone III デバイスは、集積度とパッケージに応じて、-6、-7、およ
び -8 の 3 つのスピード・グレードで提供されており、-6 が最も高速です。異なる
スピード・グレードのデバイスに移行する場合、タイミング解析のタイミング・
レポートをチェックして、Cyclone III デバイス内の異なるブロック間およびボー
ド上のCyclone IIIデバイスと他のデバイス間でタイミング違反がないことを確認
します。異なるスピード・グレードのデバイスで動作できるよう、常に十分なタ
イミング・マージンを設けて設計してください。一般に、スピード・グレードが
1 違うと、コア fMAX または I/O 性能に最大 20% の差が生じる可能性があります。
早期システム・
プランニング
システム要件および Cyclone III デバイスの機能をデザイン・サイクルの初期段階
で把握することが重要です。
早期消費電力見積り
アルテラは、システム・プランニングの段階でデザインの消費電力の見積りを支
援する、Early Power Estimator (EPE)と呼ばれる消費電力見積りツールを提供
しています。EPE では、アーキテクチャ機能に基づいてデザイン情報を入力し、
各アーキテクチャ機能の消費電力を計算できます。EPE には、環境条件およびデ
ザインで使用するデバイス・リソース(クロック周波数、RAM ブロック数、お
よび DSP ブロック数など)を入力します。EPE は、次にデザインのスタティック
およびダイナミック消費電力、電流見積り、熱解析を計算します。
デザイン情報をスプレッドシートに手動で入力するか、完全にまたは部分的に完
成したデザインの Power Estimator ファイルを Quartus II ソフトウェアからイン
ポートすることができます。ファイルをインポートした後、システム要件を満た
すために、VCCINT、周囲温度、空気流量、クロック周波数、およびトグル・レー
トなどの入力パラメータを編集することができます
EPE の詳細情報、Power Estimator ファイルの生成およびインポート方法につい
ては、
「Cyclone III FPGA 用 PowerPlay Early Power Estimator ユーザガイド」を
参照してください。
I/O 消費電力ガイドライン
I/O バッファのダイナミック消費電力は、0.5 × F × C × V2 で計算することができ
ます。ここで、F は出力遷移周波数、C は合計負荷キャパシタンス、そして V は
VCCIO 電源を表します。C が低下すると消費電力も減少します。
4
Altera Corporation
2007 年 8 月
早期システム・プランニング
LVTTL や LVCMOS などの非終端 I/O 規格のレール・トゥ・レール出力振幅は、
VCCIO 電源電圧と同じです。ダイナミック消費電力を低減するには、低い電圧の
I/O 規格を使用してください。高周波数アプリケーションの場合は、SSTL など
の抵抗で終端された I/O 規格を使用してください。出力負荷電圧の振幅は、一部
のバイアス・ポイントでは VCCIO よりも小さくなります。ダイナミック消費電力
は、同じ条件下では非終端I/O規格のダイナミック消費電力よりも小さくなります。
抵抗終端 I/O 規格では、電流が継続的に終端ネットワークにドライブされるため、
多くのスタティック電力が消費されます。抵抗終端された I/O 規格を使用する場
合は、スタティック消費電力を低減するために、速度および波形要件を満たす最
小ドライブ強度を使用してください。
低消費電力デザイン手法について詳しくは、「Quartus II ハンドブック
Volume 2」の「消費電力の最適化」の章を参照してください。
I/O サポート
この項では、全般的な Cyclone III デバイスの I/O サポートについて説明します。
I/O プランニングを開始する前に、Cyclone III I/O の提供するサポートについて
検討してください。
選択可能な I/O 規格
Cyclone III デバイスは、シングル・エンド、電圧リファレンス形式、および差動
I/O 規格を含む業界標準 I/O 規格を幅広くサポートします。選択の基準となるの
は性能とコストです。
表 2に、
選択可能な各I/O信号の種類を簡略化して示します。
表 2.
各 I/O 信号の種類の選択基準 (1 / 2)
選択基準
I/O 信号の種類
性能
シングル・エンド
コスト
低速レール・トゥ・レール・インタフェー 反射によるシグナル・インテグリティの問
スで、大きな電圧振幅とノイズの制限を 題が発生し終端が必要にならない限り、非
常に低い。
受ける。
多数のピンで同時にレベルを変化させる 終端による追加コンポーネントおよびク
リファレンス電圧
(シングル・エンドまた 同時スイッチング出力(SSO)の影響 リーンなリファレンス電圧 VT T のため、高
を軽減。電圧振幅の低減および I/O 規格 くなる。
は差動)(1)
の終端要件に起因する反射によって発生
するノイズを抑制することで、ロジック
遷移レートを改善。
Altera Corporation
2007 年 8 月
5
Cyclone III デザイン・ガイドライン
表 2.
各 I/O 信号の種類の選択基準 (2 / 2)
選択基準
I/O 信号の種類
差動 (2)
性能
コスト
コモン・モード・ノイズ除去機能によ
り、卓越した速度(最大 840 Mbps)、低
い振幅電圧、および高いノイズ耐性を実
現。
シリアライゼーション / デシリアライゼー
ション(SERDES)ロジックを実装し、パ
ラレル・データ送信を置き換えることによ
り、物理な配線および I/O リソースを減少
させることができるため、低くなる。
表 2 の注 :
(1)
差動電圧リファレンス形式の規格は、クロックにのみ使用できますこれらの I/O 規格は、 GCLK および PLL_OUT ピンでのみサ
(2)
ポートされています。
サイド I/O バンクは、専用の差動バッファをサポートします。トップおよびボトム I/O バンクは、送信側に抵抗ネットワークを
追加することで差動信号をサポートします。
柔軟性の高い I/O バンク
バンク内で I/O を効率的にグループ化することにより、さまざまな I/O 規格を同
時にサポートすることができます。各バンクに対して、1 つの VCCIO レベルを供
給する必要があります。各 I/O バンクは、バンク内の VCCIO ピンで個別にパワー
アップされ、他の I/O バンクの VCCIO からは独立しています。マルチ電圧システ
ムをサポートするために 8 つの I/O バンクが提供され、さらに柔軟性が向上して
います。出力バッファは、VCCIO が Cyclone III デバイス・データシートに記載さ
れている I/O 規格の推奨動作範囲外にある場合、コンフィギュレーションされた
I/O 規格の仕様を満たしません。
1 つの I/O バンクには 1 つの VCCIO 電圧しかありませんが、Cyclone III デバイス
では入力信号を追加することができます。
許容入力および出力レベルに関する情報は、「Cyclone III デバイス・ハンドブッ
ク Volume 1」の「Cyclone III デバイスの I/O 機能」の章を参照してください。
6
Altera Corporation
2007 年 8 月
早期システム・プランニング
Cyclone III の各 I/O バンクには、電圧リファレンス形式の I/O 規格に対応する
VREF バスがあります。1 つの I/O バンク内の複数の VREF ピンが、共有 VREF バ
スに接続されます。各バンクが一度にサポートできるのは、1 つの VCCIO 電圧レ
ベルと 1 つの VREF 電圧レベルだけです。VREF は、ロジック・スレッショルドを
決定するための電圧リファレンス形式入力(SSTL および HSTL I/O 規格)のリ
ファレンス電圧として使用されます。したがって、VREF にノイズがないことが重
要です。リファレンス電圧に対するノイズの抑制については、
「Cyclone III デバ
イス・ハンドブック Volume 1」の「Cyclone III デバイスの I/O 機能」の章にあ
るパッド配置ガイドラインに従ってください。VREF ピンの電圧変動は、入力動
作のスレッショルド感度に影響を及ぼすことがあります。電圧リファレンス形式
の入力を VREF グループに使用しない場合、Quartus II ソフトウェアは VREF ピン
を I/O ピンとして使用するために自動的に解放しますが、パワー・バスの負荷に
よりピン・キャパシタンスが高くなります。
外部メモリ・インタフェース
Cyclone III デバイスは、DDR2 SDRAM、DDR SDRAM および QDRII SRAM へ
のインタフェースをサポートしています。デバイス集積度およびパッケージに応
じて、I/O バンクのそれぞれのサイドは、最大 ×36 モードのメモリ・インタフェー
スをサポートします。Cyclone III デバイスでは、×8、×9、×16、×18、×32、およ
び ×36 モードがサポートされています。Pin Planner ツールはメモリ・インタフェー
スのピン・アサインメントの決定および作成を支援します。
一般に、外部メモリ・インタフェースのクロック・レートを高くするには、サイ
ド I/O バンクではなくトップまたはボトム I/O バンクを選択します。Cyclone III
デバイスは、最大 200 MHz の外部メモリ・インタフェースをサポートします。
メモリ規格に対するすべてのスピード・グレードの最大クロック・レートのサポー
トについては、
「Cyclone III デバイス・ハンドブック Volume 1」の「外部メモリ・
インタフェース」の章を参照してください。
Pin-Out ファイル
Cyclone III Pin-Out ファイルには、デバイスのすべてのピンの位置に関する情報
がパッケージごとに記載されています。また、I/O ピンが属している I/O バンク
および VREF グループに関する情報も含まれています。さらに、Pin-Out ファイル
には専用ピンおよび汎用ピンに関する情報もあります。Pin-Out ファイルは、設
計者がデザインの作成やボードの設計を行うときに使用する I/O ピンを決定する
のに役立ちます。ボード・デザイン・ステージでは、I/O ピンの他に専用ピンや
汎用ピンの位置も重要です。
Cyclone III デバイスのピン配置は、アルテラ・ウェブサイト(www.altera.co.jp)
の資料ページのデバイス・ピンアウトを参照してください。
Altera Corporation
2007 年 8 月
7
Cyclone III デザイン・ガイドライン
コンフィギュレーション手法のプランニングおよび選択
デバイス・コンフィギュレーション手法は、システム設計者やボード設計者がシ
ステムにデバイスを追加する必要があるかどうか判断できるよう、初期段階で選
択します。手法ごとに必要な接続が異なるため、ボード・レイアウトはプログラ
マブル・デバイスに使用するコンフィギュレーション手法に依存します。コンフィ
ギュレーション・ピンに関連するボード・デザイン・ガイドラインについては、
16 ページの「ボード・デザインの検討事項」を参照してください。
Cyclone III デバイスは、コンフィギュレーション・メモリ容量および時間を節減
するコンフィギュレーション・データの圧縮復元機能を提供しています。これら
のコンフィギュレーション機能のサポートは、選択したコンフィギュレーション
手法によって異なります。また、Cyclone III デバイスには、オプションのコン
フィギュレーション・ピンとボードおよびシステム・デザインに必要なすべての
情報を取得するために、Quartus II ソフトウェアの起動時に決定および設定しな
ければならないオプションのリコンフィギュレーション・ピンもあります。
Quartus II ソフトウェア設定およびボードおよびシステム・デザインに影響を与
えるコンフィギュレーション・オプションに関連するピンについては、30 ページ
の「デザインおよびコンパイル」を参照してください。
デバイス集積度およびパッケージ・オプションに応じて、以下の 5 つのコンフィ
ギュレーション手法のいずれかを使用して Cyclone III デバイスをコンフィギュ
レーションすることができます。
■
アクティブ・シリアル(AS)
■
アクティブ・パラレル(AP)
■
パッシブ・シリアル(PS)
■
ファースト・パッシブ・パラレル(FPP)
■
JTAG (Joint Test Action Group)
コンフィギュレーション電圧規格が異なるコンフィギュレーション手法を選択す
るには、Cyclone III デバイスの MSEL ピンを High または Low にドライブしま
す。MSEL ピンの設定に応じて、ファースト・パワー・オン・リセット(POR)時
間またはスタンダード POR 時間を選択できます。ファースト POR 時間は、動作
を開始するためにデバイスに迅速なウェイクアップが要求される高速ウェイクアッ
プ時間アプリケーションをサポートします。
Cyclone III デバイスでは、サポートされるコンフィギュレーション手法はデバイ
ス集積度およびパッケージ・オプションによって異なります。例えば、EP3C16
デバイスの E144 パッケージでは AS、PS、および JTAG 手法をサポートしていま
すが、U484 パッケージでは AS、PS、FPP、AP および JTAG 手法がサポートさ
れています。
サポートされているコンフィギュレーション手法については、コンフィギュレー
ション・センタの Cyclone III デバイスのセクションを参照してください。
8
Altera Corporation
2007 年 8 月
早期システム・プランニング
Cyclone III デバイスでサポートされるデバイス集積度別のコンフィギュレーショ
ン手法とパッケージ・オプション、コンフィギュレーション電圧規格および POR
時間、必要なコンフィギュレーション手法の実行方法、および MSEL ピン設定な
ど、必要なすべてのオプション・ピン設定については、
「Cyclone III デバイス・ハ
ンドブック Volume 1」の「Cyclone III デバイスのコンフィギュレーション」の
章を参照してください。
アルテラのデバイス・コンフィギュレーション手法を初めて使用する場合は、ど
のコンフィギュレーション手法およびコンフィギュレーション手法の設定方法を
選択すればよいか分からない場合があります。一般に、アルテラのコンフィギュ
レーション手法は、アクティブ・コンフィギュレーション手法またはパッシブ・
コンフィギュレーション手法に分類されます。システム要件に最適なコンフィギュ
レーション手法を選択するときは、コンフィギュレーション時間も考慮したい場
合があります。コンフィギュレーション時間は、コンフィギュレーション手法ご
とに異なり、コンフィギュレーション・ファイル・サイズ、コンフィギュレーショ
ン・データ幅、ドライブ・クロックの周波数、およびフラッシュ・アクセス時間
に依存します。
コンフィギュレーション手法の選択を支援するために、コンフィギュレーション・
センタを提供しています。このウェブ・ページには、アルテラの FPGA コンフィ
ギュレーション手法の概要とデザインに最適な手法の手引きや、手法の比較を提
供する、コンフィギュレーション・ガイドラインへのリンクが含まれています。
すべてのコンフィギュレーション手法では、コンフィギュレーション・デバイス、
ダウンロード・ケーブル、または外部コントローラ(MAX® II デバイスまたはマ
イクロプロセッサなど)のいずれかを使用します。AS および AP 手法では、シリ
アル・コンフィギュレーション・デバイスまたはサポートされたフラッシュ・メ
モリなど、外部フラッシュ・メモリを使用します。PS、FPP、および JTAG 手法
では、外部コントローラまたはダウンロード・ケーブルのいずれかを使用します。
コンフィギュレーション・デバイス
AS コンフィギュレーション手法では、アルテラのシリアル・コンフィギュレー
ション・デバイス(EPCS)を使用することができます。汎用パラレル・フラッ
シュ・ファミリは、AP コンフィギュレーション手法で使用されます。コンフィ
ギュレーション・デバイスがユーザの Cyclone III デバイスのコンフィギュレー
ション・ビットストリーム・ファイル・サイズをサポートしているかどうか確認
してください。PS、FPP、または JTAG コンフィギュレーション手法では、MAX II
デバイスまたはフラッシュ・メモリを使用したマイクロプロセッサのコンフィギュ
レーション手法を使用できます。
AS および PS コンフィギュレーション手法では、
規模の大きい Cyclone III デバイスのコンフィギュレーション・ファイルのサイズ
を低減する圧縮機能を使用することができます。
Altera Corporation
2007 年 8 月
9
Cyclone III デザイン・ガイドライン
シリアル・コンフィギュレーション・デバイスについて詳しくは、
「コンフィギュ
レーション・ハンドブック Volume 2」の「シリアル・コンフィギュレーション・
デバイス(EPCS1、EPCS4、EPCS16、EPCS64 および EPCS128)データシート」
を参照してください。
サポートされている汎用パラレル・フラッシュ・ファミリについて詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスのコン
フィギュレーション」の章を参照してください。
ダウンロード・ケーブル
Quartus II プログラマは、アルテラ・プログラミング・ケーブルを介して PS また
は JTAG インタフェースを使用し、Cyclone III デバイスのコンフィギュレーショ
ンを直接サポートします。アルテラのダウンロード・ケーブルで接続されたデバ
イスにデザインの変更を直接ダウンロードして、簡単にプロトタイプを作成して、
複数のデザインの繰り返しをすばやく連続して実行できます。同じダウンロード・
ケーブルを使用してボード上のコンフィギュレーション・デバイスをプログラム
し、SignalTap II ロジック・アナライザなどのデバッグ・ツールを使用すること
ができます。
アルテラの最新のダウンロード・ケーブルの使用方法については、以下の使用を
参照してください。
■
■
■
USB-Blaster ダウンロード・ケーブル・ユーザガイド
ByteBlaster II Download Cable User Guide
EthernetBlaster Download Cable User Guide
MAX II パラレル・フラッシュ・ローダ
システムに既にコモン・フラッシュ・インタフェース(CFI)フラッシュ・メモ
リがある場合は、それを Cyclone III デバイスのコンフィギュレーション・スト
レージとしても使用できます。MAX II デバイスでパラレル・フラッシュ・ロー
ダ(PFL)機能を使用することにより、JTAG インタフェースを通じて CFI フラッ
シュ・メモリ・デバイスをプログラムすることができます。また、フラッシュ・
メモリ・デバイスから Cyclone III デバイスへのコンフィギュレーションを制御す
るためのロジックを提供し、コンフィギュレーション・データのサイズを縮小す
るための圧縮をサポートします。この PFL 機能を使用して、PS および FPP 両方
のコンフィギュレーション・モードがサポートされます。このコンフィギュレー
ション手法を選択する場合、システム・デザイン・サイクルの初期段階でサポー
トされているフラッシュ・デバイスのリストをチェックし、それに応じてプラン
ニングする必要があります。
PFL に つい て 詳し く は、「AN 386 : Using the Parallel Flash Loader with the
Quartus II Software」を参照してください。
10
Altera Corporation
2007 年 8 月
早期システム・プランニング
コンフィギュレーション機能
この項では、Cyclone III のコンフィギュレーション機能、特にデータ圧縮および
リモート・システム・アップグレードと、これらの機能がデザイン・プロセスに
どのように影響するか説明します。
データ圧縮
データ圧縮機能をイネーブルにすると、Quartus II ソフトウェアは圧縮されたコ
ンフィギュレーション・データでコンフィギュレーション・ファイルを生成しま
す。この圧縮ファイルは、コンフィギュレーション・デバイスまたはフラッシュ・
メモリで必要な容量を低減し、Cyclone III デバイスにビットストリームを送信す
るために必要な時間を短縮します。Cyclone III デバイスがコンフィギュレーショ
ン・ファイルを復元するために必要な時間は、コンフィギュレーション・データ
をデバイスに送信するために必要な時間よりも短くなっています。Cyclone III デ
バイスは、PS(MAX II デバイス / マイクロプロセッサ + フラッシュ使用時)お
よび AS コンフィギュレーション手法で圧縮されたコンフィギュレーション・デー
タの復元をサポートしています。Cyclone III の圧縮復元機能は、AP、FPP、また
は JTAG コンフィギュレーション手法では提供されていません。
コンパイルの前に圧縮をイネーブルにするためには、Device & Pin Options ダイ
アログ・ボックスの Configuration タブの Generate compressed bitstreams をイ
ネーブルにしてください。プログラミング・ファイルを Convert Programming
Files ウィンドウから作成するときに、圧縮をイネーブルにすることもできます。
プ ロ グ ラ ミ ン グ・フ ァ イ ル の Properties ダ イ ア ロ グ・ボ ッ ク ス を 開 い て、
Compression をオンにします。
データ圧縮について詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」
の「Cyclone III デバイスのコンフィギュレーション」の章を参照してください。
リモート・システム・アップグレード
Cyclone III デバイスは、AS および AP コンフィギュレーション手法でリモート・
アップデ ートをサポート しています。リモート・アップ デート・モードは、
Quartus II ソフトウェアのオプション設定でイネーブルまたはディセーブルにす
ることができます。AS コンフィギュレーション手法では、シリアル・コンフィ
ギュレーション・デバイスのコンフィギュレーション・メモリ容量を節約する必
要がある場合は、コンフィギュレーション・データのリアルタイム復元と共にリ
モート・アップデートを実行することができます。altremote_update メガファン
クションを使用して、リモート・システム・アップグレード・インタフェースを
実装できます。
リモート・システム・アップグレード機能について詳しくは、「Cyclone III デバ
イス・ハンドブック」の「Cyclone III デバイスのリモート・システム・アップグ
レード」の章を参照してください。
Altera Corporation
2007 年 8 月
11
Cyclone III デザイン・ガイドライン
altremote_update メ ガ ファ ン ク ショ ン につ い て 詳し く は、「altremote_update
Megafunction User Guide」を参照してください。
PLL
Cyclone III PLL は、クロックの逓倍と分周、位相シフト、プログラマブル・デュー
ティ・サイクル、クロック・スイッチオーバ、PLL カスケード接続、PLL ダイナ
ミック・リコンフィギュレーション、ダイナミック位相シフト、スペクトラム拡
散クロック、外部クロック出力、およびコントロール信号など、多くの高度な機
能を備えています。
PLL 機能について詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」の
「クロック・ネットワークおよび PLL」の章を参照してください。
PLL アプリケーション
一般的に、PLL はクロック管理に使用することができます。PLL を使用すると、
規模の大きいクロック・ネットワークのクロック遅延が減少し性能が向上します。
また、クロックを復元し、伝送信号ラインによって生じたジッタをクリーンにす
ることもできます。FPGA のプログラマビリティにより、周波数、帯域幅、デュー
ティ・サイクルなどのパラメータを容易に変更できます。
PLL を使用して設計を開始する前に、PLL に対して正しいアプリケーションを定
義してください。
PLL 設定の定義
ターゲットの Cyclone III デバイスで提供される機能に応じて、システム要件に基
づいて PLL の設定を定義します。設定を決定するのに、以下のガイドラインが役
立ちます。
PLL 入力および出力周波数
システム要件に基づき、PLL の入力周波数と出力周波数を定義します。Cyclone III
の PLL は特定の帯域幅で動作可能です。入力周波数と出力周波数がその帯域幅に
適合しない場合は、PLL をカスケード接続することができます。Cyclone III の
PLL クロック入力は、専用のクロック入力ピンまたは別の PLL からの出力によっ
てのみ供給することができます。PLL クロック入力は、内部で生成されたロジッ
クまたは汎用 I/O ピンから供給することはできません。PLL クロック出力は、専
用クロック出力ピンまたはグローバル・クロック・ネットワークをドライブする
ことができます。
1 個の PLL に入力周波数と出力周波数を実装できるかどうかを知るに
は、Quartus II ソフトウェアから altpll メガファンクションをインスタ
ンス化するときに設定を入力します。
12
Altera Corporation
2007 年 8 月
早期システム・プランニング
異なるデバイス・スピード・グレードに対する入力および出力周波数範囲の仕様
については、
「Cyclone III デバイス・ハンドブック Volume 2」の「Cyclone III デ
バイス・データシート : DC およびスイッチング特性」の章を参照してください。
クロック入力数
Cyclone III PLL は、最大 2 つのクロック入力を備えていますが、一度に動作する
のは 1 つのみです。クロック冗長性やデュアル・クロック・ドメインなどのアプ
リケーションの場合、PLL に 2 つのクロック入力が必要になります。クロック冗
長性アプリケーションは、現在のクロックが存在しない場合にバックアップ入力
クロックがあることを保証します。デュアル・クロック・アプリケーションでは、
動作中に PLL を別の入力クロックに変更することができます。この機能は、ク
ロック・スイッチオーバと呼ばれます。
Cyclone III デバイスは、自動およびマニュアル・クロック・スイッチオーバを備
えています。自動クロック・スイッチオーバによって、現在のクロック入力が使
用できなくなると PLL を別のクロック入力に変更できます。マニュアル・クロッ
ク・スイッチオーバでは、ユーザが入力クロックのスイッチを制御することがで
きます。
これらのアプリケーションにPLLを使用しない場合、1つのクロック入力で十分です。
クロック・スイッチオーバ機能は、altpll メガファンクションから有効
にすることができます。
クロック出力数
Cyclone III PLL は、最大 5 個のクロック出力(c0-c4)を備えています。c0 クロッ
ク出力は、専用外部クロック出力ピン(推奨)
、通常のユーザ I/O または専用グ
ローバル・クロック・ネットワークに接続することができます。c1、c2、c3、お
よび c4 は、ユーザ I/O ピンまたは専用グローバル・クロック・ネットワークに
接続できます。
クロック入力および出力 I/O 規格
専用クロック入力ピンは、PPDS、RSDS、および mini-LVDS 以外の Cyclone III
デバイスでサポートされているすべてのI/O規格をサポートすることができます。
専用外部クロック出力ピンは、Cyclone III デバイスでサポートされているすべて
の I/O 規格をサポートできます。
I/O 規格のサポートについて詳しくは、「Cyclone III デバイス・ハンドブック
Volume 1」の「Cyclone III デバイスの I/O 機能」の章を参照してください。
PLL 規格
PLL を仕様に従って使用することが、機能と信頼性の確保に不可欠です。
Altera Corporation
2007 年 8 月
13
Cyclone III デザイン・ガイドライン
その他の PLL 仕様については、「Cyclone III デバイス・ハンドブック Volume 2」
の「Cyclone III デバイス・データシート : DC およびスイッチング特性」の章を
参照してください。
PLL デザイン
要件を定義した後、アプリケーションに応じて PLL を設計するために以下の項目
を考慮する必要があります。
最適な補償モードの選択
Cyclone III デバイスは、4 つの補償モードをサポートしています。
表 3.
補償モード
モード
説明
ソース・シンクロナス・モード このモードは、クロックと入力ピンから PLL でドライブされる I/O エレメント
(IOE)レジスタに送られるデータ間の位相関係を維持したい場合に使用します。
非補償モード
PLL出力でより優れたジッタ性能が必要な場合には、このモードを選択します。
ノーマル・モード
このモードは、IOE または PLL でドライブされるロジック・エレメント(LE)
レジスタのクロック・エッジをクロック入力ピンのクロック信号に位相調整す
る場合に選択します。
ゼロ遅延バッファ(ZDB)
モード
このモードは、デバイス全体でゼロ遅延になるように、外部クロック出力ピン
をクロック入力ピンに位相調整する場合に選択します。
PLL ダイナミック・リコンフィギュレーションおよび位相ステップ
この機能は、デバイス全体をリコンフィギュレーションしないで PLL 設定を変更
したい場合に使用します。この機能の 2 つの主要アプリケーションは、コンフィ
ギュレーション・ファイルを再生成することなく、新しい PLL 設定で 2 つの出力
周波数を切り替え、clock-to-output(tCO)遅延をリアルタイムで調整します。
ダイナミック・リコンフィギュレーション機能は、altpll メガファンク
ションをインスタンス化して有効にすることができます。それによっ
て、altpll_reconfig メガファンクションをインスタンス化することで、
この機能を簡単に使用できるようになります。
最大リコンフィギュレーション・クロック周波数(fscanclk)およびスキャン・
チェイン(tconfigpll)のリコンフィギュレーションに必要な標準時間につい
ては、「Cyclone III デバイス・ハンドブック Volume 2」の「Cyclone III デバイ
ス・データシート : DC およびスイッチング特性」の章を参照してください。
14
Altera Corporation
2007 年 8 月
早期システム・プランニング
PLL コントロール信号
アプリケーションによっては、PLL の使用時に必ず必要な 3 つの主要コントロー
ル信号があります。
表 4.
主な PLL コントロール信号
信号
説明
areset
このコントロール・ピンはイネーブルされると、各 PLL に対する入力リセット・ピンに
なります。ダイナミック・リコンフィギュレーションおよびクロック・スイッチオーバ
機能をイネーブルする場合は、このコントロール・ピンをイネーブルする必要がありま
す。また、ロックされた信号が Low になると PLL が自動的にリセットされるよう、altpll
メガファンクションを使用してロック機能喪失時の自動リセットもイネーブルしなけれ
ばなりません。
areset 信号(tARESET)の最小パルス幅については、
「Cyclone III デバイス・ハンドブッ
ク Volume 2」の「Cyclone III デバイス・データシート : DC およびスイッチング特性」の
章を参照してください。
locked
このコントロール・ピンは、イネーブルされると各 PLL の出力ピンになります。High の
とき、PLL は基準クロックにロックし、PLL クロック出力は目的の位相および周波数で
動作しています。PLL クロック出力を使用するシステムがクロック出力の有効性に応じ
て反応するよう、この信号をモニタするためのデザインを作成する必要があります。
pfdena
このコントロール・ピンは、イネーブルされると各 PLL の入力ピンになります。入力ク
ロックがディセーブルされていても、システムで PLL からの特定のクロック周波数が必
要な場合は、シャット・ダウンする前に現在の設定を保存する時間が確保されるよう、こ
のピンをイネーブルする必要があります。
デザインのデバッグ
Quartus II ソフトウェアは、オン・チップ・デバッグを行うための方法をいくつ
か備えています。使用する方法によっては、デバッグ・プロセスに追加リソース
を利用できるよう、早期のシステム・プランニングが重要です。
SignalTap II エンベデッド・ロジック・アナライザ、SignalProbe、イン・システ
ム・ソースおよびプローブ、ロジック・アナライザ・インタフェース、In-System
Memory Content Editor、および Virtual JTAG メガファンクションを使用してオ
ン・チップ・デバッグを実行するには、JTAG 接続が必要です。このために、ボー
ドは JTAG ポートを搭載している必要があります。JTAG 接続は JTAG コンフィ
ギュレーションにも使用できます。
デバイスがオン・チップ・デバッグをサポートするためのリソースを搭載してい
ることを確認します。デバッグ手法では、JTAG インタフェース・ロジックを実
装するための追加 LE が必要です。SignalTap II エンベデッド・ロジック・アナラ
イザでは、LE の他にデータをキャプチャするために Cyclone III デバイスの M9K
メモリが必要になります。また、SignalProbe またはロジック・アナライザ・イ
ンタフェースによるデバッグのために、一部の未使用 I/O ピンを予約する必要も
あります。
Altera Corporation
2007 年 8 月
15
Cyclone III デザイン・ガイドライン
ボード・
デザインの
検討事項
この項では、ボードを設計するときの検討事項に関する情報を提供します。
I/O の検討事項
3.3/3.0/2.5 V LVTTL/LVCMOS インタフェース
Cyclone III デバイスは 1.2 V ∼ 3.3 V のインタフェース電圧レベルをサポートす
るよう設計されており、柔軟な I/O インタフェースの実装に対するニーズに応え
ます。Cyclone III デバイスを使用して、3.3 V LVTTL を最大 8 mA で、3.3 V
LVCMOSを最大2 mAで直接ドライブできます。Cyclone IIIデバイスを3.3/3.0/2.5 V
LVTTL/LVCMOS システムでレシーバとして使用する場合、
「Cyclone III デバイ
ス・ハンドブック」の Cyclone III の絶対最大 DC 入力電圧および最大許容オー
バーシュート/アンダーシュート電圧要件を含む動作条件に従う必要があります。
Cyclone III を 3.3/3.0/2.5 V 電圧レベルにインタフェースする場合、デバイスの
信 頼 性 を 確 保 す る に は「AN 447 : Cyclone III デ バ イ ス と 3.3 V/3.0 V/2.5 V
LVTTL/LVCMOS I/O システムのインタフェース」のガイドラインに従います。
パッド配置の検討事項
バンクの VCCIO 電源は、バンク内のスイッチング出力からのノイズに敏感です。
VCCIO 電源で許容ノイズ・レベルを維持するために、差動パッドに対するシング
ル・エンド I/O パッドの配置に制約があります。Quartus II ソフトウェアは、こ
れらの制約を自動的にチェックします。
バンクでシングル・エンド電圧リファレンス形式の入力を使用すると、Quartus II
ソフトウェアは VREF パッドおよび電源ペア(VCCIO と GND)に対する出力の配
置に関する制約を自動的にチェックします。この制約は VCCIO 電源で許容ノイズ・
レベルを維持し、VREF レールのシフトによる出力スイッチング・ノイズを防止す
るためのものです。
「Cyclone III デバイス・ハンドブック」の「Cyclone III デバイスの I/O 機能」の
章の「パッド配置および DC のガイドライン」の項で、サポートされている各差
動 I/O 規格の差動パッドに対するシングル・エンド・パッドの配置ガイドライン
を提供しています。電圧リファレンス形式の入力パッドがバンクに存在する場合
の入力、出力、および双方向パッドの配置ガイドラインも、同じ項に記載されて
います。
特定のアプリケーションでは、Quartus II ソフトウェアでの制約チェックを緩和
することができます。例えば、トグルしないシングル・エンド・ピンがある場合、
それを差動ピンの近くに安全に配置して、ピン配置チェックを省略することがで
きます。Quartus II ソフトウェアでこれを設定するには、Assignment Editor で、
ピンの Toggle Rate アサインメントに 0 MHz のトグル・レートを割り当てます。
Output Enable Group アサインメントは、VREF グループで電圧リファレンス形式
の入力を使用する場合に、外部メモリ・インタフェースで出力ピンまたは双方向
ピンの効率的な配置を可能にするのに特に有用な設定です。
16
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
これらの機能の実装ついて詳しくは、「Quartus II ハンドブック Volume 2」の
「I/O Management」の章を参照してください。
同時スイッチング・ノイズの最小化
近接する多数のピンが同時にレベルを変化させ、近くのノイズの少ないピンにVCC
サグまたはグランド・バウンスが発生した場合、同時スイッチング・ノイズ(SSN)
が問題になります。SSN で発生したノイズによって、ノイズ・マージンが減少し
誤ったスイッチングが発生する可能性があります。
デザインの作成時は、同時にスイッチングするピンを分離して配置するようにし
ます。可能な場合は、スイッチング・ピンを異なる I/O バンクに振り分けます。
付近にある未使用 I/O ピンを VCC に設定して VCC サグを抑えるか、グランドに
設定してグランド・バウンスを最小化します。また、低速スルー・レート機能を
オンにして、スイッチング・ピンに低いドライブ強度を使用することもできます。
ボード上のデカップリング・コンデンサを使用して I/O ピンおよび電源のノイズ
を低減することができます。スイッチング I/O ピンを適切に終端することで、ノ
イズの少ないピンでの反射や SSN の影響も減少します。
ボード・デザイン・ガイドラインについては、「AN 224 : 高速ボード・レイアウ
ト・ガイドライン」および「AN 315 : 高速 FPGA のプリント基板の設計ガイドラ
ン」を参照してください。
未使用ピンの接続
デザインをコンパイルすると、Quartus II ソフトウェアはピン・レポート・ファ
イル(.pin)を生成します。このレポート・ファイルは、デバイスの未使用ピン
の接続方法を指定します。Cyclone IIIデバイスの場合、未使用I/OピンはQuartus II
ソフトウェアでの設定に応じて、レポート・ファイルでは以下のいずれかの名称
になります。
■
■
■
■
■
GND*
RESERVED
RESERVED_INPUT
RESERVED_INPUT_WITH_WEAK_PULLUP
RESERVED_INPUT_WITH_BUS_HOLD
GND* として指定されるすべての I/O ピンは、デバイスのノイズ耐性を向上させる
ためにグランドに接続するか、未接続のままにすることができます。これらの I/O
ピンは未指定の信号をドライブするため、ボード上ではすべての RESERVED の
I/O ピンは未接続のままにしておきます。RESERVED の I/O ピンが VCC、グラン
ド、またはその他の信号ソースと接続されると競合が起こり、デバイスの出力ド
ライバが損傷されることがあります。
Altera Corporation
2007 年 8 月
17
Cyclone III デザイン・ガイドライン
ボード上で、RESERVED_INPUT ピンは High または Low 信号に接続すること
ができ、RESERVED_INPUT_WITH_WEAK_PULLUP ピンおよび RESERVED_
INPUT_WITH_BUS_HOLD ピンは未接続のままにしておくことができます。
終端方法
信号ラインでの信号反射を防止するために、正しい終端を行うことが重要です。
ボードで使用する終端方法は、使用する I/O 規格および信号の伝達方向に応じて
異なります。直列終端および並列終端を使用できます。一般的なガイドラインと
して、直列終端は通常トランスミッタで使用され、並列終端はレシーバ端で使用
されます。終端抵抗の値は、トレース・インピーダンスと一致しなければなりま
せん。また、終端方法に基づき、最適な抵抗値を取得するためにボード・レベル
のシミュレーションを実行することもできます。
Cyclone III デバイスは、ボード上の直列終端抵抗を置換できる直列 On-Chip
Termination(キャリブレーション付き / なし)を備えています。
各種終端方法については、「Cyclone III デバイス・ハンドブック Volume 1」の
「Cyclone III デバイスの I/O 機能」の章、
「AN 224 : 高速ボード・レイアウト・ガ
イドライン」
、および「AN 315 : 高速 FPGA のプリント基板の設計ガイドライン」
を参照してください。
ボード・レベル・シミュレーション
選択した I/O 信号がボード・セットアップにおいて確実にレシーバ・スレッショ
ルド・レベルを満たすようにするには、Cyclone III IBIS または HSPICE モデルを
使用するサードパーティ製のボード・レベル・シミュレーション・ツールでシミュ
レーションを実行します。IBIS モデルと HSPICE モデルは、いずれも I/O バッ
ファの動作を記述したものですが、方法が異なります。IBIS モデルは I/O バッ
ファを電圧-電流および電圧-時間データ曲線で示し、HSPICE モデルは I/O バッ
ファをトランジスタ特性、寄生キャパシタンス、相互の接続などの物理的特性で
記述しています。
IBISモデルとHSPICEモデルは、入手可能になるとwww.altera.co.jp
からダウンロードできます。また、Quartus II ソフトウェアを使用してデザイン
に対するカスタム IBIS モデルおよび HSPICE モデルを作成し、これらのモデルで
シミュレーションを実行して、ボード信号における終端方法の効果をチェックす
ることも可能です。
IBIS および HSPICE モデルを使用したシミュレーションの実行については、
「Quartus II ハンドブック Volume 3」の「サードパーティ・シミュレーション・
ツールでのアルテラ IP のシミュレーション」の章を参照してください。
18
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
消費電力の検討事項
この項では、ボード設計者が Cyclone III デバイス用ボードを設計する際のガイド
ラインについて説明します。
ボードの電源
システム・ノイズを低減するには、電源がクリーンであることが重要です。パ
ワー・プレーンへのノイズをフィルタするために、電源がボードのパワー・プレー
ンに入る位置にフェライト・ビーズとタンタル・コンデンサを配置します。一般
に、タンタル・コンデンサはキャパシタンス値に高い安定性が要求される回路に
使用されます。
フェライト・ビーズは電源とパワー・プレーンの間に直列に接続し、コンデンサ
はパワー・プレーンとグランドの間に並列に接続する必要があります。さまざま
な周波数のノイズをフィルタするには、異なる値のコンデンサを組み合わせて使
用します。
電源ノイズの最小化については、「AN 224 : 高速ボード・レイアウト・ガイドラ
イン」および「AN 315 : 高速 FPGA のプリント基板の設計ガイドラン」を参照し
てください。
Cyclone III PLL は、追加の電源(VCCA および VCCD)が必要です。PLL には、デ
ジタル・デバイスに組み込まれたアナログ・コンポーネントが搭載されているた
め、ボードを設計するための検討事項がいくつかあります。
■
ジッタを抑えるには以下を実行します。
■
電源から各 VCCA ピンに厚い配線パターン(最低 20 mils)を走らせる。
すべてのVCCD電源ピンをボード上で最もノイズの少ないデジタル電源
に接続する。
デバイスでPLLを使用するかしないかに関係なく、
すべてのVCCAピンおよび
■
します。
GNDA ピンおよび GND ピンは、デバイスのデジタル・グランドと同じグラン
●
●
VCCD電源ピンがそれぞれ2.5 V電源と1.2 V電源に接続されていることを確認
ド・プレーンに接続する必要があります。
PLL のボード・レイアウトの検討事項について詳しくは、
「Cyclone III デバイス・
ハンドブック Volume 1」の「クロック・ネットワークおよび PLL」の章を参照し
てください。
Altera Corporation
2007 年 8 月
19
Cyclone III デザイン・ガイドライン
デバイスのパワーアップ
多くのアプリケーションでは、デバイスのパワーアップ時の動作、特にシステム
動作中にシステムでボードを抜き差しするときの動作を把握することが重要です。
検討事項には、I/O 動作、電源およびタイミングの条件が含まれます。Cyclone III
デバイスにデザインを正常に実装するためには、
ボードのデザインとコンフィギュ
レーションのセットアップを開始する前に、この項で説明する条件と検討事項を
確認してください。
テクノロジ
Cyclone III デバイスは、コンフィギュレーション前にデバイスのパワーアップ・
シーケンスを制御するホット・ソケットおよびパワー・オン・リセット(POR)
回路を用いて設計されています。これらの回路は、Cyclone III デバイスがコン
フィギュレーション可能な状態になることを保証し、これらのステージにおける
デバイス・インタフェースでの不確実性に対応します。また、Cyclone III デバイ
スが外部デバイスを使用することなく、ホット・スワップが可能になるようにし
ます。図 1 に、Cyclone III デバイスのパワーアップ・ステージを示します。
ホット・ソケットおよびパワー・オン・リセット回路動作について詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」の「ホット・ソケットおよび
パワー・オン・リセット」の章を参照してください。
図 1.
Cyclone III のパワーアップ・ステージ
Voltage
VCC Minimum
Time
VCC Ramp
Time
POR Time
Configuration Time
Initialization
Time
User
Mode
図 1 の注 :
(1)
20
VCC ランプは、モノトニック(単調増加)でなければなりません。
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
要件と動作
表 5 に、Cyclone III デバイスの要件と動作をコンフィギュレーション前のステー
ジごとに詳細に示します。
表 5.
各種パワーアップ・ステージでのデバイスの要件および動作
セットアップ
ステージ
要件
動作
プリパワーアップ デバイスにダメージを与えることなく、信号を 適用されません。
Cyclone III の I/O ピン、専用入力ピン、および
専用クロック・ピンに入力することができます。
デバイスで必要な POR 時間を、ファースト
POR(3 ms ∼ 9 ms)またはスタンダード POR
(50 ms ∼ 200 ms)のいずれかから決定しま
す。選択は、MSEL ピンの設定で決定します。
VCC ランプ
POR
電源の任意のパワーアップ・シーケンスをサ 出力バッファは、すべての条件でトライ・ス
テートになります。以下に例を示します。
ポートできます。
VC C I O 、VC C I N T 、および VC C A が必要です。 ● VC C I N T の前にVC C I O がパワーアップされ
コンフィギュレーション・ピン(1、6、7、お
る場合
よび 8)を持つバンクの VC C I O が必要です。 ● I/O パッド電圧が VC C I O より高い場合
電源は、ファースト POR の場合は 50 µs ∼ ● ホット・ソケット中の突発的な電圧スパ
3 ms、スタンダード POR の場合は 50 ms の
イク(オーバーシュート)の場合
所要 POR に準じたランプ・レートを満たす必
パワーアップ・サイクル中にドライブ・アウ
要があります。ファースト POR は、Cyclone III
トすることが期待されるコンフィギュレーショ
デバイスが迅速にウェイクアップして動作を
ン・ピンは除外されます。これらのピンに対
開始する必要があるときに使用されます。MSEL
するホット・ソケット回路はありません。
ピン設定を使用して、POR を選択します。
ホット・ソケット中には、
I/O ピンから VC C I N T
「Cyclone III デバイス・ハンドブック Volume
またはVC C I O への電流経路はありません。
ホッ
1」の「Cyclone III デバイスのコンフィギュ
ト・ソケット中のリーク電流またはドライブ
レーション」の章を参照してください。
電流については、
「Cyclone III デバイス・ハ
VCC ランプは、モノトニックでなければなり
ンドブック Volume 1」の「Cyclone III デバ
ません。
イスのホット・ソケットおよびパワー・オ
ン・リセット」の章を参照してください。
ラッチ・アップが発生しないため、VC C から
GND に大きな電流が流れる低インピーダン
ス・パスは生じません。
VC C ランプを目的の動作電圧レベルに維持し 出力バッファはトライ・ステートのままです。
POR 回路は、コンフィギュレーションがト
ます。
最大 VC C ランプ時間を満たすことができない リガされる前に、すべての VCC 電源が安定
場合は、外部コンポーネントを使用して、電 し、許容レベルに到達するまでデバイスをリ
源 が 最 小 推 奨 動 作 レ ベ ル に 達 す る ま で、 セット状態に維持します。
nCONFIG を Low に保持してください。そうし
ないと、デバイスが正しくコンフィギュレー
ションされず、ユーザ・モードに入らない可
能性があります。
Altera Corporation
2007 年 8 月
21
Cyclone III デザイン・ガイドライン
Cyclone III デバイスがユーザ・モードになった後も、POR 回路は VCCINT およ
び VCCA ピンを継続してモニタするため、ユーザ・モード中のブラウン・アウト
状態を検出できます。ユーザ・モード中に、VCCINT および VCCA 電圧が POR ト
リップ・ポイント以下に低下すると、POR 回路がデバイスをリセットします。
ユーザ・モード中に VCCIO 電圧が低下した場合、POR 回路はデバイスをリセット
しません。
パワー・オン・リセットについて詳しくは、
「Cyclone III デバイス・ハンドブッ
ク Volume 1」の「ホット・ソケットおよびパワー・オン・リセット」の章を参照
してください。
コンフィギュレーション・ピンの接続
コンフィギュレーション手法に応じて、異なるプルアップまたはプルダウン抵抗
あるいはシグナル・インテグリティ要件が適用される場合があります。また、一
部のコンフィギュレーション・ピンには、未使用の場合には特定の要件がありま
す。コンフィギュレーション・ピンは正しく接続することが重要です。この項で
は、一般的な問題に対処するためのガイドラインを提供します。
ピンが Quartus II プロジェクトで選択されたコンフィギュレーション
手法の一部である場合、兼用コンフィギュレーション・ピンの内部 PCI
クランプ・ダイオードはオフになります。
専用および兼用コンフィギュレーション・ピンのリスト、および機能の説明と接
続ガイドラインについては、
「Cyclone III デバイス・ハンドブック Volume 1」の
「Cyclone III デバイスのコンフィギュレーション」の章を参照してください。
コンフィギュレーションおよび JTAG ピンの I/O 電圧要件
AS コンフィギュレーション手法でシリアル・コンフィギュレーション・デバイ
スを使用する場合は、DATA[0] に対するシリアル・コンフィギュレーション・デ
バイスの近端で 25 Ω 直列抵抗を接続しなければなりません。Cyclone III デバイ
スをマルチデバイス・コンフィギュレーションでカスケード接続する場合は、
DATA
および DCLK に対する Cyclone III マスタおよびスレーブ・デバイスの間に、リ
ピータ・バッファを接続する必要があります。リピータ・バッファの出力抵抗は、
0.8ZO = RE = 1.8ZOで与えられる最大オーバーシュートの等式に適合しなければな
りません。この等式で、ZO は、伝送ライン・インピーダンス、RE は出力バッファ
の等価抵抗です。
コンフィギュレーション要件については、
「Cyclone III デバイス・ハンドブック
Volume 1」の「Cyclone III デバイスのコンフィギュレーション」の章を参照して
ください。
22
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
DCLK/TCK シグナル・インテグリティ
適切なデザイン手法を使用して、ボード上で DCLK および TCK トレースを設ける
ことによって、オーバーシュート、アンダーシュート、またはリンギングのない
クリーンな信号が生成されます。ボードを設計するときは、クロック・ラインの
レイアウトと同じ手法を使用して DCLK トレースと TCK トレースをレイアウトし
ます。DCLK 信号にノイズが多い場合、コンフィギュレーションが影響を受け、
nSTATUS エラーが発生することがあります。TCK トレースが、オーバーシュート、
アンダーシュート、またはリンギングのないクリーンな信号を生成するようにし
てください。Cyclone III デバイスのチェインでは、チェイン内の各デバイスの
DCLK ピンまたは TCK ピンのノイズによって、チェイン全体のコンフィギュレー
ションまたは JTAG プログラミングが失敗することがあります。
チェイン内のデバイスの接続について詳しくは、「Cyclone III デバイス・ハンド
ブック Volume 1」の「Cyclone III デバイスのコンフィギュレーション」の章を
参照してください。
JTAG/ コンフィギュレーション・ピンのプルアップ / プルダウン
デバイスが ISP モードまたはユーザ・モードのとき、あるいはパワーアップ中に
JTAG ピンにノイズがあると、デバイスは未定義状態または未定義モードになる
場合があります。アルテラでは、抵抗を通して TCK ピンを Low に、TMS ピンを
High に接続することを推奨しています。
VCCINT がパワーアップされると、JTAG 回路がアクティブになります。TMS およ
び TCK ピンが VCCIO に接続され、VCCIO がパワーアップされていない場合、JTAG
信号はフローティング状態のままです。TCK ピンに遷移があると、JTAG ステー
ト・マシンが不定状態になり、VCCIO が最終的にパワーアップされたときに誤動
作が生じる可能性があります。パワーアップ時に JTAG ステート・マシンをディ
セーブルするには、TCK ピンを Low にプルして、TCK 上に偶発的に立ち上がり
エッジが発生しないようにします。
JTAG/ コンフィギュレーション・チェイン接続
デバイスの JTAG ピンをダウンロード・ケーブルのヘッダに正しく接続します。
チェイン内に複数のデバイスがある場合、1 つのデバイスの TDO ピンをチェイン
内の次のデバイスの TDI ピンに接続します。
すべての I/O 入力は 4.1 V の最大 AC 電圧を維持する必要があります。2.5 V、
3.0 V、または 3.3 V の VCCIO を使用する場合、JTAG ピンには電圧オーバーシュー
トを防止するための内部 PCI クランプ・ダイオードがないため、ダウンロード・
ケーブルの VCC を、VCCA からの 2.5 V 電源でパワーアップしなければなりませ
ん。1.2 V、1.5 V、または 1.8 V のデバイス VCCIO を使用する場合、ダウンロード・
ケーブルの VCC を、VCCIO からの電源でパワーアップすることができます。
Altera Corporation
2007 年 8 月
23
Cyclone III デザイン・ガイドライン
JTAG コンフィギュレーション・チェインについて詳しくは、
「Cyclone III デバイ
ス・ハンドブック Volume 1」の「Cyclone III デバイスのコンフィギュレーショ
ン」の章を参照してください。AS、AP、PS、FPP など、他のコンフィギュレー
ション手法では、チェイン内の FPGA デバイスをカスケード接続することもでき
ます。
マルチ・ドライブ・マルチ VCCIO(レベル・シフタ)
ターゲット・ボードの 10 ピン・ヘッダからアルテラのダウンロード・ケーブルに
供給される動作電圧により、ダウンロード・ケーブルの I/O 電圧レベルが決まり
ます。すべての Cyclone III デバイスの JTAG ピンは、バンク 1 に存在し、それら
の I/O 規格のサポートは、バンク 1 の VCCIO 設定によって制御されます。
ダウンロード・ケーブルはデバイスの JTAG ピンにインタフェースするため、ダ
ウンロード・ケーブルの I/O 電圧と JTAG ピンの電圧が仕様に準拠していること
を確認します。表 6 に、各ダウンロード・ケーブルでサポートされる I/O 電圧を
示します。
表 6.
ダウンロード・ケーブルの I/O 電圧
ダウンロード・
ケーブル
I/O 電圧
2.5 V VCCA (1)
1.8 V VCCIO (2)
1.5 V VCCIO (2)
USB-BlasterTM
√
√
—
ByteBlasterTM II
√
√
√
ByteBlasterMVTM
√
—
—
MasterBlasterTM
√
—
—
表 6 の注 :
(1)
ダウンロード・ケーブルを Cyclone III デバイスにインタフェースする場合は、デバイスへの
すべての I/O 入力は 4.1 V の最大 AC 電圧を維持する必要があります。アルテラでは、
Cyclone III デバイスで 2.5 V、3.0 V、または 3.3 V の VCCIO を使用する場合は、ダウンロー
ド・ケーブルを 2.5 V の VCCA でパワーアップすることを推奨しています。
(2)
1.2 V、1.5 V、または 1.8 V のデバイス VCCIO を使用する場合、ダウンロード・ケーブルの
VCC を、VCCIO からの電源でパワーアップすることができます。ただし、アルテラのダウン
ロード・ケーブルは 1.2 V のターゲットの供給電圧をサポートしていません。
アルテラ・ダウンロード・ケーブルを使用した JTAG コンフィギュレーションに
ついて詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III
デバイスのコンフィギュレーション」の章、および該当するダウンロード・ケー
ブル・ユーザガイドを参照してください。
24
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
VCCIO が異なるデバイスが含まれる JTAG チェインでは、VCCIO レベルがより高い
デバイスから VCCIO レベルが同じまたはそれ以下のデバイスをドライブする必要
があります。すべての I/O 入力は 4.1 V の最大 AC 電圧を維持する必要がありま
す。2.5 V、3.0 V、または 3.3 V の VCCIO を使用する場合に電圧オーバーシュート
を防止するには、ダウンロード・ケーブルの VCC を、VCCA からの 2.5 V 電源でパ
ワーアップする必要があります。1.2 V、1.5 V、または 1.8 V のデバイス VCCIO を
使用する場合、ダウンロード・ケーブルの VCC を、VCCIO からの電源でパワーアッ
プすることができます。ただし、アルテラのダウンロード・ケーブルは、1.2 V の
ターゲット供給電圧をサポートしていません。このデバイス配置では、チェイン
の終端に 1 個のレベル・シフタのみ必要です。この配置が不可能な場合は、レベ
ル・シフタをチェインに追加する必要があります。図 2 に、異なる VCCIO を持つ
デバイスを含む JTAG チェインを示します。
Altera Corporation
2007 年 8 月
25
Cyclone III デザイン・ガイドライン
図 2.
JTAG チェイン内の異なる VCCIO を持つデバイス
Power TDI from
2.5 V VCCA
Must never exceed
overshoot of 4.1 V
TDI
Download
cable
header
TDO
3.3 V
VCCIO
3.0 V
VCCIO
2.5 V
VCCIO
Level
Shifter
1.5 V
VCCIO
1.8 V
VCCIO
Shift TDO to level
acceptable by tester
if necessary
JTAG 信号のバッファリング
JTAG シグナル・インテグリティは、JTAG チェインをバッファする必要性を判断
します。TCK 信号は、JTAG クロックであり、他の JTAG 信号と比べて最速のス
イッチング信号なので、特に注意してください。アルテラではコネクタで信号を
バッファすることを推奨しています。これはケーブルやボード・コネクタは伝送
ラインの品質を劣化させる傾向があり、
信号にノイズが発生させやすいためです。
コネクタでの最初のバッファの後、チェインが長くなったり信号がボード・コネ
クタを通過する必要がある場合は、バッファを追加してください。
3 個またはそれ以上のデバイスをケーブルがドライブする必要があるときは、信
号が劣化しないようにケーブル・コネクタで信号をバッファします。信号をバッ
ファするかどうかは、ボード・レイアウト、負荷、ボード上のコネクタ、ジャン
パ、およびスイッチによっても異なります。JTAG 信号のインダクタンスまたは
キャパシタンスに影響を与える要素が追加されると、チェインにバッファが追加
される可能性が高くなります。
並列にドライブされる TCK 信号と TMS 信号の場合は、各バッファが 8 つを超え
る負荷をドライブしないようにします。パスにジャンパまたはスイッチが追加さ
れると、負荷の数が減少します。
未使用 JTAG ピンの接続
JTAG インタフェースを使用しない場合は、Cyclone III デバイスの JTAG ピンが
フローティング状態(未接続)のままではなく、安定したレベルに接続されるこ
とを確認してください。JTAG コンフィギュレーションは、他のすべてのコンフィ
ギュレーション手法より優先されるため、これらのピンをコンフィギュレーショ
ン中にフローティング状態のままにしたり、トグルしないようにする必要があり
ます。
26
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
MSEL コンフィギュレーション・モード・ピン
コンフィギュレーション手法を選択するには、Cyclone III デバイスの MSEL ピン
を High または Low にドライブします。MSEL ピンは、それらのピンが存在する
バンクの VCCINT 電源で駆動されます。MSEL[3..0] ピンには、常にアクティブ
な 5 kΩ 内部プルダウン抵抗があります。パワー・オン・リセット(POR)およ
びリコンフィギュレーション中、
MSEL ピンがロジック Low またはロジック High
と判定されるには、それぞれ LVTTL VIL レベルまたは VIH レベルであることが必
要です。不正なコンフィギュレーション手法の検出の問題を回避するために、
MSEL
ピンを VCCA および GND にプルアップ抵抗またはプルダウン抵抗なしで接続し
てください。あるいは、テストまたはデバッグ中にコンフィギュレーション・モー
ドを切り替えるために、各ピンを 0 Ω 抵抗で、VCCA または GND のいずれかに接
続できるようにボードを設定します。MSEL ピンをマイクロプロセッサや他のデ
バイスでドライブしてはなりません。MSEL ピンをフローティング状態のままに
しないでください。
コンフィギュレーションについて詳しくは、「Cyclone III デバイス・ハンドブッ
ク Volume 1」の「Cyclone III デバイスのコンフィギュレーション」の章を参照
してください。また、コンフィギュレーション問題のデバッグを支援するのに使
用できるトラブルシュータへのリンクを含むコンフィギュレーション・センタも
参照してください。JTAG プログラミング問題をデバッグするための参考情報に
ついては、JTAG Configuration & ISP Troubleshooter を参照してください。FPGA
の コン フ ィギ ュ レー シ ョン 問 題を デ バッ グ する に は、 FPGA Configuration
Troubleshooter を参照してください。
Altera Corporation
2007 年 8 月
27
Cyclone III デザイン・ガイドライン
コンフィギュレーション・デバイス
アルテラのコンフィギュレーション・デバイス(EPCS4、EPCS16、EPCS64 およ
び EPCS128)は、Cyclone III デバイスの AS コンフィギュレーション手法で使用
されます。
シリアル・コンフィギュレーション・デバイスについて詳しくは、
「コンフィギュ
レーション・ハンドブック Volume 2」の「シリアル・コンフィギュレーション・
デバイス(EPCS1、EPCS4、EPCS16、EPCS64 および EPCS128)データシート」
を参照してください。
EPCS 接続
シリアル・コンフィギュレーション・デバイスの 4 ピン・インタフェースは、シ
リアル・クロック入力(DCLK)、シリアル・データ出力(DATA)、AS データ入力
(ASDI)、およびアクティブ Low のチップ・セレクト(nCS)で構成されていま
す。この 4 ピン・インタフェースは、Cyclone III デバイスの DCLK、DATA[0]、
DATA[1]、および FLASH_nCE ピンにそれぞれ接続します。AS コンフィギュレー
ション手法では、Cyclone III デバイスの FLASH_nCE ピンは nCEO ピンとして機
能し、DATA[1] ピンは ASDO ピンとして機能します。
シングル・デバイス AS コンフィギュレーション手法で、シリアル・コンフィギュ
レーション・デバイスを Cyclone III デバイスに接続する場合は、DATA[0] に接
続するシリアル・コンフィギュレーション・デバイスの近端で 25 Ω 直列抵抗を
接続しなければなりません。シングル・デバイス AS コンフィギュレーションで
は、シリアル・コンフィギュレーション・デバイスから Cyclone III デバイスまで
のボード・トレースの長さは 10 インチ以内とします。
AS コンフィギュレーション手法の接続について詳しくは、
「Cyclone III デバイ
ス・ハンドブック Volume 1」の「Cyclone III デバイスのコンフィギュレーショ
ン」の章を参照してください。
Cyclone III デバイスの EPCS サポート
Cyclone III デバイスでは、アクティブ・マスタ・クロック周波数は標準 30 MHz、
最大 40 MHz で動作します。Cyclone III デバイスは、最大 40 MHz をサポートす
るシリアル・コンフィギュレーション・デバイスとのみ連携して動作します。
0.15 µm プロセス・ジオメトリで製造された EPCS4 の既存の製品は、最大 40 MHz
の Cyclone III デバイスの AS コンフィギュレーションをサポートします。
ただし、
0.18 µm プロセス・ジオメトリで製造された EPCS4 の製品は、最大 20 MHz まで
しかサポートしていないため、Cyclone III デバイスの AS コンフィギュレーショ
ンをサポートしません。EPCS16 および EPCS64 シリアル・コンフィギュレーショ
ン・デバイスは影響を受けません。
28
Altera Corporation
2007 年 8 月
ボード・デザインの検討事項
0.15 µm プロセス・ジオメトリと 0.18 µm プロセス・ジオメトリの EPCS4 シリア
ル・コンフィギュレーション・デバイスを差異化する製品のトレーサビリティお
よび移行日について詳しくは、アルテラ・ウェブサイト(www.altera.co.jp)の
「PCN 0514 Manufacturing Changes on EPCS Family process change notification」
を参照してください。
フラッシュ・ピンおよびその他のピンの接続
AP コンフィギュレーション手法のフラッシュ・ピン接続については、
「Cyclone III
デバイス・ハンドブック Volume 1」の「Cyclone III デバイスのコンフィギュレー
ション」の章を参照してください。
AP のフラッシュ
AP コンフィギュレーション手法では、汎用パラレル・フラッシュがコンフィギュ
レーション・メモリとして使用されます。
Cyclone III デバイスの AP コンフィギュ
レーション・コントローラは、Intel StrataFlash® エンベデッド・メモリ(P30 お
よび P33)フラッシュ・ファミリにインタフェースするよう設計されています。
シリアル・コンフィギュレーション・デバイスとは異なり、AP コンフィギュレー
ション手法でサポートされる P30 および P33 フラッシュ・ファミリは、マイクロ
プロセッサとインタフェースするよう設計されています。ユーザ・モードでもア
クセスできる業界標準マイクロプロセッサ・フラッシュからコンフィギュレーショ
ンできるため、AP コンフィギュレーション手法では同じフラッシュ・メモリ上
でコンフィギュレーション・データとユーザ・データ(マイクロプロセッサ・ブー
ト・コード)を結合することができます。
Intel P30 および P33 フラッシュ・ファミリは、フラッシュからのデータの読み出
しに 40 MHz の DCLK 周波数で、連続同期バースト・リード・モードをサポート
します。サポートされるスピード・グレードおよびパッケージ・オプションにつ
いては、対応するフラッシュのデータシートを参照する必要があります。例えば、
Intel P30 および Intel P33 ファミリは 40 MHz のスピード・グレードのみサポー
トしますが、TSOP パッケージでは 40 MHz をサポートしていません。したがっ
て、P30 および P33 FPGA パッケージは、AP コンフィギュレーション手法では
サポートされますが、TSOP パッケージはサポートされません。
アクティブ・パラレル・コンフィギュレーション手法およびサポートされるフラッ
シュについて詳しくは、「Cyclone III デバイス・ハンドブック Volume 1」の
「Cyclone III デバイスのコンフィギュレーション」の章を参照してください。
Altera Corporation
2007 年 8 月
29
Cyclone III デザイン・ガイドライン
デザイン
および
コンパイル
この項では、デザイン・プロセス中に検討する必要のある項目について説明しま
す。これらの項目には、デザイン入力の検討事項と推奨事項、消費電力の検討事
項、Cyclone III I/O ピンと PLL に関する情報、タイミングの検討事項、デザイン
でのシミュレーションの実行に関する情報が含まれます。
デザイン・エントリ
Quartus II ソフトウェアにより、回路 / ブロック図またはハードウェア記述言語
(HDL)コーディングによるデザインの作成が可能になります。サポートされて
いる一般的に使用される HDL 形式は、Verilog と VHDL です。単純なデザイン
の場合、回路図またはブロック図を使用するとデザインの作成作業が容易になり
ます。しかし、ステート・マシンを備えたデザインなど、より複雑なデザインの
場合は、HDL コーディングによって必要な柔軟性が得られ、場合によってはデザ
インの効率が向上することもあります。
デザインに HDL をデザイン入力として使用する場合、コーディング・スタイル
に注意する必要があります。HDL コーディングは、デザインに対して達成される
ロジック利用率と性能についての結果の品質に大きな影響を与えます。効率的な
コーディングは、合成ツールがデザインを合成するときのパフォーマンス向上に
役立ちます。
HDL コーディング・スタイルについて詳しくは、「Quartus II ハンドブック
Volume 1」の「Recommended HDL Coding Styles」の章を参照してください。
Quartus II ソフトウェアは、ユーザが作成するメガファンクションのシンボル・
ファイルまたは HDL ファイルを生成できます。ユーザはデザイン入力方法に関
係なく、メガファンクションをデザインに統合することが可能です。また、HDL
で記述されたデザインの特定のブロックに対するシンボル・ファイルを生成する
こともできます。それによって、デザインに HDL と回路図入力を混在させるこ
とができます。また、メモリなどの特定のデバイス・リソースを HDL によって
推測することも可能です。
サードパーティ EDA ツールを使用した HDL デザイン入力
Quartus II ソフトウェアの他に、サードパーティ EDA 合成ツールを使用して、一
般的なハードウェア記述言語(HDL)で記述されたデザインを合成することもで
きます。EDA ツールにより、デザインのネットリストが生成されます。このネッ
トリストを Quartus II Fitter で使用して、配置配線手順を実行することができま
す。Quartus II Fitter 用のネットリストを生成できる EDA ツールには、Synplicity
社の Synplify および SynplifyPro ソフトウェア、Synopsys 社の Design Compiler、
および Mentor Graphics® 社の Precision RTL Synthesis ソフトウェア、および
LeonardoSpectrum™ ソフトウェアが含まれます。EDA ツールは、通常 .edf また
は .vqm 形式のデザイン・ネットリスト・ファイルを生成します。
30
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
サードパーティの合成ツールと Quartus II ソフトウェアの使用について詳しく
は、
「Quartus II ハンドブック Volume 1」
の「合成」セクションを参照してください。
SOPC Builder
SOPC Builder システム生成ツールは、プロセッサ、ペリフェラル、およびメモリ
をベースとしたシステムの作成に有用です。SOPC Builder では、System-On-aProgrammable-Chip(SOPC)をはるかに短い時間で構築できます。これは、シ
ステムのすべてのコンポーネントに対してデザインを作成する必要がないためで
す。SOPC システムはスタンドアロン・システムでもよく、あるいはカスタム・
ロジック・デザインに統合することもできます。SOPC Builder は、Quartus II ソ
フトウェアに付属しています。
SOPC Builder および SOPC Builder を使用した SOPC システムの構築方法につい
て詳しくは、アルテラ・ウェブサイトの www.altera.co.jp/products/software/
products/sopc/sop-index.html を参照してください。
DSP Builder
アルテラの DSP Builder は、The MathWorks の MATLAB および Simulink シス
テム・レベル・デザイン・ツールのアルゴリズム開発、シミュレーション、およ
び検証機能を Quartus II ソフトウェアなどの VHDL および Verilog HDL デザイ
ン・フローと組み合わせることによって、高水準アルゴリズムとハードウェア記
述言語(HDL)開発ツールを統合します。
既存の MATLAB ファンクションや Simulink ブロックとアルテラの DSP Builder
提供ブロックやアルテラの IP(Intellectual Property)である MegaCore® ファン
クションを組み合わせて、DSP アルゴリズム開発とシステム・レベル設計や実装
を実現することができます。
DSP Builder および DSP Builder を使用した DSP システムの構築方法について詳し
くは、アルテラ・ウェブサイトの www.altera.co.jp/products/software/products/
dsp/dsp-builder.html を参照してください。
IP (Intellectual Property)
アルテラおよびアルテラのサードパーティ IP パートナは、広範な IP コアを提供
しています。完全にパラメータ設定可能で性能が最適化されたこれらの IP コア
は、十分にテストされ機能が実証されているので、これらの IP コアをデザインに
使用して、設計およびテストに要する時間を節約することができます。これらの
IP コアは評価用に提供されており、ライセンスを購入する前に機能とタイミング
を検証することができます。
Altera Corporation
2007 年 8 月
31
Cyclone III デザイン・ガイドライン
Nios II エンベデッド・プロセッサを備えたシステムに対しては、プロセッサ用の
C/C++ コードを記述することができます。これは、ハードウェア記述言語よりも
C/C++プログラミング言語を使い慣れているシステム開発者にとって特に有用で
す。
アルテラおよびアルテラのサードパーティ IP パートナから提供されている IP コ
アについて詳しくは、www.altera.co.jp/products/ip/ipm-index.html を参照して
ください。
デザインの推奨事項
デザインが意図したとおりに機能することを保証するには、適切なデザイン手法
(特にクロックに関連するもの)が不可欠です。
同期デザイン
同期デザインでは、クロック信号が信号遷移をトリガします。クロックのすべて
のアクティブ・エッジで、レジスタのデータ入力がサンプリングされて、出力に
転送されます。
図 3 に示すように、1 つのクロック・ソースを使用してデザインのレジスタをク
ロックします。2 個のカスケード接続されたレジスタが異なるクロック・ソース
またはクロック・エッジでトリガされた場合、2 番目のレジスタでセットアップ
時間の違反が発生して、2 番目のレジスタが最初のレジスタからのメタステーブ
ルを解決するための十分な時間が得られず、その結果、2 番目のレジスタが不正
な値をクロックする危険性があります。
図 3.
同期デザイン
D
Q
D
Q
clock
デザインからの組み合わせロジックの出力がデザインの他の部分に供給される場
合、図 4 に示すように、信号がレジスタを通過するようにします。これは、組み
合わせロジックの出力をクロック信号または非同期リセット信号として使用する
場合に適用されます。組み合わせロジックを介した伝播遅延により、信号は多く
の遷移を経て新しい値に確定される可能性があります。これは、組み合わせ出力
の変化によって、不安定な期間が発生する場合があることを意味します。
32
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
レジスタの入力はクロックの各アクティブ・エッジでのみサンプリングされ、デ
ザイン(例えば、図 4 に示す組み合わせロジック 2)に転送されるので、レジス
タのデータ入力で起こる遷移は、次のアクティブ・クロックのエッジまで、レジ
スタ出力またはデザインのその他の部分の入力に影響を与えません。レジスタの
セットアップ時間およびホールド時間に違反しない限り、レジスタは、グリッチ
や他のロジックからの不安定な入力信号を効率よく分離します。
図 4.
組み合わせ出力信号のラッチ
Combinational
Logic 1
D
Q
Combinational
Logic 2
clock
デバイスへの入力信号をラッチすること、およびすべてのグリッチをフィルタす
ることを推奨します。Cyclone III の I/O は、この目的のための入力レジスタを備
えています。入力信号用の入力レジスタを使用することにより、LE レジスタを使
用する場合と比較して、セットアップ時間がより高速になります。これは Fast
Input Register アサインメントと併せて実行できます。
また、LCELL プリミティブを使用してデザイン内の特定信号の遅延を増加させる
など、デザインをデバイスのアーキテクチャ内の遅延パスに依存させると、温度、
電圧、プロセス変更、または配置配線の変更などの要因がデバイス内のロジック・
パスのタイミングに影響を及ぼす可能性があるため、行うべきではありません。
特定のパスのタイミングを変更すると、不要な機能の変化を引き起こし、デザイ
ンの機能に影響を与える可能性があります。同期化により、不要な機能の変化が
排除されます。
デザインの同期化について詳しくは、
「Quartus II ハンドブック Volume 1」の「ア
ルテラ・デバイスのデザイン推奨事項」の章または Quartus II Help を参照して
ください。
クロック
クロックは、デザインのタイミング精度、性能、および信頼性に大きな影響を及
ぼすので重要です。クロックに関連する問題は、デザインにおいて機能およびタ
イミング問題を引き起こす可能性があります。設計段階では、クロックに関係す
る次の項に注意してください。
Altera Corporation
2007 年 8 月
33
Cyclone III デザイン・ガイドライン
グローバル・クロック・ピンおよびクロック・ネットワーク
デザインへのクロック信号の入力には、専用クロック・ピンまたはグローバル・
クロック配線を使用します。専用クロック・ピンはクロック・ネットワークを直
接ドライブし、通常の I/O ピンを使用する場合と比較して、スキューが確実に低
減されます。クロック・スキューが大きいと、ホールド・タイム違反が起こる可
能性があります。クロック・ネットワークは Cyclone III デバイス全体をドライブ
するため、グローバル・クロックを使用して M9K メモリやロジック・アレイ・
ブロックなどのデバイス内のすべての機能をドライブできます。クロック・ネッ
トワークを使用すると、ファンアウトの大きい信号の遅延が予測可能でより安定
したものになります。また、クロック・ピンとクロック・ネットワークを使用し
て、非同期リセットなどのコントロール信号をドライブすることも可能です。
グローバル・クロック・ピンおよびクロック・ネットワークについて詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」の「クロック・ネットワークお
よび PLL」の章を参照してください。
内部生成クロック
組み合わせロジックの出力は回路の入力に依存するので、この出力にはグリッチ
が発生します。入力信号は、組み合わせロジック回路に別々に到着して、グリッ
チを引き起こす可能性があります。また、入力信号にグリッチが存在する場合も
ありますが、組み合わせロジック回路はこれらのグリッチをフィルタしません。
この組み合わせロジックの出力信号を他の回路のクロックとして使用する場合、
これらのグリッチが機能上の問題を引き起こす可能性があります。
内部で生成されるクロックよりも高い周波数のクロック信号がある場合は、組み
合わせ回路の入力信号と、クロックとして使用される回路からの出力信号を必ず
ラッチしてください(図 5)
。組み合わせ回路の入力信号をラッチすることで、回
路への信号の到着がクロックによって制御され、入力信号ですべてのグリッチが
フィルタされます。回路からの出力信号をラッチすると、回路で発生するすべて
のグリッチをフィルタすることができます。
図 5.
入力および出力信号のラッチ
Input
Signal
Clock Signal of
Higher Frequency
Input
Signal
Combinational
Clock Generation
Circuitry
Generated
Clock Signal
Clock Signal of
Higher Frequency
34
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
クロック分周
高い周波数クロックから低い周波数クロックを得るには、PLL を使用してクロッ
クを分周します。PLL は予測可能な出力遅延を備えており、出力信号の位相を変
更して遅延を補正することもできます。カスケード接続されたレジスタを使用し
てクロックを分周することは、結果的にクロックに遅延を発生させます。これは
リップル・キャリー・レジスタ・チェインにより実装されますが、チェインを介
して遅延が伝播され、入力クロックと出力クロックの間、および生成される異な
る出力クロック間に位相シフトが生じます。また、遅延はレジスタの配置にも依
存します。
反転クロック
1 個の LE で実装された NOT ゲートを使用する代わりに、PLL を使用して反転ク
ロックを生成します。PLL により、出力信号の位相シフトを設定して、入力信号
と出力信号の間の遅延を補正することができます。
多重化クロック
ユーザ・デザインによっては、異なるクロック・ソースの選択が必要です。専用
のクロック・コントロール・ブロック、または Cyclone III デバイスの PLL クロッ
ク・スイッチオーバ機能を使用してクロック入力を多重化します。クロック・コ
ントロール・ブロックにより、クロック・ピンまたはクロック・ネットワークの
ソースとしての PLL 出力のいずれかから、最大 4 つの異なるクロック・ソースを
選択することが可能です。altclkctrl メガファンクションにより、2 本のクロック
入力ピンと 2 つの PLL 出力からクロック・ソースをダイナミックに選択できます。
PLL クロック・スイッチオーバ機能では、クロック入力ピンまたは別の PLL から
の出力クロックのいずれかから、2 つのクロック・ソースをダイナミックに選択
することも可能です。
Cyclone III のクロック・コントロール・ブロックおよび PLL クロック・スイッチ
オーバ機能について詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」
の「クロック・ネットワークおよび PLL」の章を参照してください。
クロック・コントロール・ブロック用の altclkctrl メガファンクションの使用方法
については、
「altclkctrl Megafunction User Guide」を参照してください。
Cyclone III PLL 用の altpll メガファンクションの使用方法については、「altpll
Megafunction User Guide」を参照してください。
ゲート付きクロック
ゲート付きクロックにより、ユーザはクロック信号をオフにすることができます。
ただし、Cyclone III デバイスのクロックをオフにする方法としては、クロック・
コントロール・ブロックの使用が推奨されます。クロック・コントロール・ブロッ
クにより、クロック・ネットワークをパワーダウンすることができます。altclkctrl
メガファンクションを使用して、クロック・コントロール・ブロックをインスタ
ンス化します。
Altera Corporation
2007 年 8 月
35
Cyclone III デザイン・ガイドライン
Cyclone III クロック・コントロール・ブロックについて詳しくは、「クロック・
ネットワークおよび PLL」の章「Cyclone III デバイス・ハンドブック Volume 1」
、
ク ロ ッ ク・コ ン ト ロ ー ル・ブ ロ ッ ク の 使 用 方 法 に つ い て は、「altclkctrl
Megafunction User Guide」を参照してください。
クロックをオフにする目的が、クロックするレジスタを停止してレジスタ出力の
変化を防止することである場合は、図 6 に示すように、クロックをオフにする代
わりに、レジスタへの入力をコントロールすることができます。クロック信号が
トグルし続けている間、イネーブル信号はレジスタの入力をコントロールします。
これにより、レジスタ出力は同じクロックを使用するその他のレジスタ出力に同
期されます。レジスタへのクロックをゲートすると、クロックに余分な遅延が生
じ、レジスタ出力が他の信号と同期されないことがあります。
図 6.
同期クロック・イネーブル
D
Data
Q
Enable
ロジック・リソースを使用してゲート付きクロックを実装する必要がある場合は、
クロックをイネーブルまたはディセーブルするゲーティング信号をラッチして、
ゲーティング信号に生じる可能性があるグリッチをフィルタします。そうしない
と、ゲーティング信号からのグリッチがクロック信号に伝播することがあります。
また、ソースでクロック信号をゲートしても、同じクロック信号でクロックされ
るデザイン内の異なるブロック間のクロック遅延差が最小化されます。
チップ・ワイドのリセット
Cyclone III デバイスは、M9K ブロックのレジスタを含め、デバイス内のすべて
のレジスタをクリアするチップ・ワイドのリセットをサポートします。
このリセッ
トはレジスタに関連するすべてのコントロール信号より優先されるため、デバイ
スをいつでも再初期化することができます。
Quartus II ソフトウェアからチップ・ワイドのリセットをイネーブルにするには、
Assignments メニューの Settings をクリックします。Device の下の Device &
Pin Options をクリックします。次に、General ウィンドウの Enable device-wide
reset (DEV_CLRn)をオンにします。デザインをコンパイルする前に、この機
能をイネーブルにします。チップ・ワイドのリセット・オプションがオンの場合、
DEV_CLRn ピンを Low に保持すると、すべてのレジスタがリセットされます。こ
の機能がオフの場合、DEV_CLRn ピンは通常のユーザ I/O ピンとして機能します。
36
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
レジスタ・パワーアップ・レベル
Cyclone III のレジスタのパワーアップ・レベルが High または Low になるよう選
択することができます。デフォルトでは、デバイスがパワーアップしたときに、
デバイス内のすべてのレジスタがクリアされ、ラッチされた出力信号が Low にド
ライブされます。レジスタがパワーアップ時に High になるよう設定すると、
Cyclone III デバイスの電源投入時に別のデバイスのアクティブ Low 入力がアク
ティブになることはありません。レジスタがパワーアップ時に High になる機能
は、Cyclone III デバイスへの電源投入時のシステム・リセット信号としても使用
可能です。レジスタがパワーアップ時に High になるように設定されている場合、
レジスタ出力は非同期クリア信号がアサートされるか、Low データ信号がクロッ
ク・インされるまで High に保持されます。非同期プリセット信号を使用して、
デバイスがパワーアップされた後にレジスタ出力が High に保持されるようにす
ることができます。デザインをコンパイルする前に、Quartus II デザインのレジ
スタがパワーアップ時に High になるように設定します。
これを Quartus II ソフトウェアで設定するには、Assignment Editor に進み、図 7
に示すように、レジスタのパワーアップ・レベル・アサインメントを High に設
定します。
図 7.
レジスタ・パワーアップ・レベル
デザイン・アシスタント
Quartus II デザイン・アシスタントは、デザインのコンパイル中にアルテラ推奨
のデザイン・ガイドラインまたはデザイン・ルールに基づいて、デザインの信頼
性を解析します。デザイン・アシスタントは、クロック、リセット、タイミング・
クロージャ、および非同期デザイン構造などの領域に関するルールをチェックし
ます。デザイン・アシスタントでチェックしたい領域を選択することができ、デ
ザイン・アシスタントは指定された設定に基づいてデザインの違反をレポートし
ます。HardCopy ルールは、Cyclone III デバイスをターゲットとするデザインに
は適用されません。
デザイン・アシスタントをオンにするには、Assignments メニューの Settings を
クリックします。Design Assistant の下のデザイン・ルールを選択します。図 8
に、デザイン・アシスタントがチェックする領域を示します。
Altera Corporation
2007 年 8 月
37
Cyclone III デザイン・ガイドライン
図 8.
デザイン・アシスタントのルール
デザイン・アシスタントについて詳しくは、
「Quartus II ハンドブック Volume 1」
の「アルテラ・デバイスのデザイン推奨事項」の章を参照してください。
インクリメンタル・コンパイル
インクリメンタル・コンパイルは、通常ボトムアップまたはトップダウン・デザ
インに使用されるより小さなパーティションに分割されているデザインに適して
います。インクリメンタル・コンパイルは、デザインで変更されていないパーティ
ションのコンパイル結果と性能を保持しながら、変更されているパーティション
にのみ的を絞ることによって、コンパイル時間を短縮します。また、残りのパー
ティションに影響を及ぼすことなく、デザインの特定のパーティションに対して
最適化を実行することもできます。
消費電力の最適化
この項では、デザインの消費電力を低減するのに役立つ、Quartus II ソフトウェ
アの機能とデザイン手法について説明します。
38
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
Quartus II の消費電力の最適化機能
Quartus II ソフトウェアはパワー・ドリブン・コンパイルを提供して、デバイス
のダイナミック消費電力を完全に最適化します。パワー・ドリブン・コンパイル
は、解析および合成レベル、およびフィッタ・レベルで実行されるパワー・ドリ
ブン・シンセシスとパワー・ドリブン配置配線を使用して、デザインの全消費電
力を低減することに重点を置いています。デザインによっては、消費電力が最適
化された合成とフィッティングを使用して、ダイナミック消費電力を平均で最大
16% 低減できます。アルテラは消費電力を最小限に抑えるために、両方のオプ
ションをアクティブにすることを推奨しています。ただし、消費電力の最適化よ
りもデザインのタイミング制約要件を優先させる必要があります。
パワー・ドリブン・コンパイルについて詳しくは、「Quartus II ハンドブック
Volume 2」の「消費電力の最適化」の章を参照してください。
Quartus II ソフトウェアには、プロジェクトの設定およびアサインメントに基づ
く、デザインの消費電力要件を満足するための一連の推奨事項を通じてユーザを
ガイドする、Power Optimization Advisor があります。デザインをコンパイルし
た後、PowerPlay Power Analyzer ツールを実行して、デザインの消費電力を求め
ます。この情報に基づいて、Power Optimization Advisor を実行して消費電力を
節約するための推奨事項を実装できます。各推奨事項には、説明すなわち効果と
適切な設定を行うために必要な措置の概要が含まれています。推奨事項は、設定
を適用する順序を示すために、複数のステージに分かれています。
Power Optimization Advisor に つ いて 詳 しく は、「Quartus II ハ ン ドブ ッ ク
Volume 2」の「消費電力の最適化」の章および Quartus II Help を参照してくだ
さい。
デザイン・スペース・エクスプローラ(DSE)は、Quartus II ソフトウェアに含
まれているデザイン最適化ユーティリティです。消費電力の最適化をターゲット
とするデザインに対して、最適な Quartus II ソフトウェアのオプションを探し、
レポートするのに使用できます。
DSE について詳しくは、「Quartus II ハンドブック Volume 2」の「デザイン・ス
ペース・エクスプローラ」の章を参照してください。
低消費電力デザイン手法
この項では、デザインの全体的な消費電力に影響を与えるデザイン手法のガイド
ラインを示します。これらの手法の結果は、デザインによって異なる可能性があ
ります。
Altera Corporation
2007 年 8 月
39
Cyclone III デザイン・ガイドライン
クロック消費電力管理
クロック配線の消費電力は Quartus II ソフトウェアで自動的に最適化されます。
Quartus II ソフトウェアは、ダウンストリームのレジスタに供給する必要がある
クロック・ネットワーク部のみをイネーブルにします。あるいは、クロック・コ
ントロール・ブロックを使用してクロック・イネーブル信号を実装することもで
きます。クロック・ネットワークがパワーダウンすると、そのクロック・ネット
ワークで供給されるすべてのロジックはトグルしないため、デバイスの全体的な
消費電力が減少します。
クロック・コントロール・ブロックの使用方法について詳しくは、「altclkctrl
Megafunction User Guide」を参照してください。
メモリの消費電力の低減
メモリの消費電力を低減する鍵は、メモリ・クロッキング・イベント数を低減す
ることです。これは、クロック・ネットワーク上のクロック・コントロール・ブ
ロックを使用して、またはメモリ・ポート上のクロック・イネーブル信号をメモ
リ単位で使用することによって実現できます。クロック・イネーブル信号は、必
要な場合にのみメモリをイネーブルにし、それ以外の時間はメモリをシャット・
ダウンして、メモリ全体の消費電力を低減します。メモリ・ブロック・ファンク
ションを生成するときは、Quartus II MegaWizard Plug-In Manager を使用し、
Clock enable signal オプションを選択することによってイネーブル信号を作成で
きます。
パイプライン化とリタイミング
デザインに多数のグリッチがあると、高速スイッチング動作時において消費電力
が増加します。長い組み合わせパスにフリップ・フロップを挿入してパイプライ
ン化すると、デザインのグリッチを低減できます。フリップ・フロップによって
グリッチが組み合わせパスを伝播しなくなるため、組み合わせロジックでの消費
電力が減少します。しかし、デザイン内のグリッチが多くない場合は、不要なレ
ジスタが追加されるため、パイプライン化によって消費電力が増加する可能性が
あります。
アーキテクチャの最適化
特定のデバイスのアーキテクチャ機能を使用して、消費電力を低減します。例え
ば、Cyclone III デバイスで使用可能な専用 DSP ブロックを LE の代わりに使用し
て、演算関連ファンクションを実行します。また、LE レジスタからシフト・レジ
スタを構築する代わりに、RAM ベースの FIFO バッファから大きなシフト・レジ
スタを構築します。
40
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
I/O の検討事項
Cyclone III デバイスは、I/O の柔軟性強化と機能向上により、システム統合を増
強しています。FPGA デバイスの I/O 機能、ボード・レイアウト・ガイドライン、
およびシグナル・インテグリティの問題は、ピン位置の決定や、各デザイン・ピ
ンに対するその他のタイプのアサインメントに大きく影響します。以下のツール
を使用し、この項で説明する検討事項を考慮に入れることによって、シグナル・
インテグリティの問題を回避しながら、I/O リソースを性能とコストについて最
適化することができます。
I/O ツール
I/O デザイン・フローには、ピン関連アサインメントの作成、およびピン配置ガ
イドラインに照合した検証が含まれます。Quartus II ソフトウェアの Pin Planner
ツールおよび Assignment Editor ツールは、ピン関連アサインメントの作成およ
び編集を通じてユーザを支援します。I/O アサインメントの解析は、ピン・アサ
インメントの適用性をチェックするのに役立ちます。以下の項では、ピン関連ア
サインメントの作成と編集に使用されるツールについて説明します。
Pin Planner
Pin Planner はピン関連アサインメントの作成と編集に使用されます。Pin Planner
Package View により、ピン番号ではなくデバイス・パッケージ・ビューを使用し
て、ピン位置およびその他のアサインメントを作成します。Pin Planner を使用す
ると、I/O バンク、VREF グループ、および差動ピンの組み合わせを視覚的に識別
できます。Package View でのピンの視覚的な表示は、ピン・ロケーション・アサ
インメントを作成する際に、ボード・レイアウトでの配線混雑による問題を最小
化するのに役立ちます。
Pin Planner は、シリコン・ダイの周り順にパッドを表示する Pad View ウィンド
ウで補完されます。パッケージ・ピンは、シリコン・ダイの最上部メタル層の周
辺部にあるパッドに接続されます。ピン配置ルールによってはパッド配置の制約
を規定しているものもあるので、ピンが割り当てられたパッド位置に注意してく
ださい。デザインにおけるインタフェースの良好なシグナル・インテグリティを
維持するために、Pad Viewウィンドウを使用してピン配置の決定をガイドします。
Pin Planner ツールの Pin Migration View は、プロジェクト用に 1 つまたは複数
のマイグレーション・デバイスが選択されている場合に、マイグレーション・デ
バイスの機能を変更するピンを表示します。Pin Migration View は、マイグレー
ション・デバイス間に存在する可能性があるピンの違いを識別するのに役立ちます。
Pin Planner ツールの Package View、Pad View、および Pin Migration View の使
用について詳しくは、「Quartus II ハンドブック Volume 2」の「I/O 管理」の章
を参照してください。
デザイン・ファイルがない場合でも、以下のステップを使用して、デザイン・サ
イクルの早期段階で Pin Planner で I/O をプランしてください。
Altera Corporation
2007 年 8 月
41
Cyclone III デザイン・ガイドライン
1.
Pin Planner にインタフェース(メガファンクションまたは IP MegaCore)
を追加します。
2.
インタフェースのすべての外部ピンに対して I/O ピン・アサインメントを作
成します。
3.
必要なトップレベル・ラッパ・ファイルを作成します。
4.
Start I/O Assignment Analysis コマンドでアサインメントを検証します。
I/O アサインメント解析用の I/O ピンを確保して、ピンのタイプ(入力、出力、
または双方向)を決定します。
I/O ピンの予約方法については、「Quartus II ハンドブック Volume 2」の「I/O
管理」の章を参照してください。
Assignment Editor
Pin Planner がターゲット・デバイスの直感的なグラフィカル表現を提供するのに
対し、Assignment Editor は、すべてのピン関連アサインメントの作成と変更を
可能にする、スプレッドシートに似たインタフェースを提供します。
ピン関連アサインメント
選択可能な I/O 機能により、Cyclone III デバイスの柔軟性が向上し、多数の低コ
スト・アプリケーションにおいて他のデバイスに接続できます。各種 I/O 関連機
能の統合により、Cyclone III デバイスを使用したアプリケーションのコストがさ
らに削減されます。注目すべき機能には、ドライブ強度コントロール、スルー・
レート・コントロール、オープン・ドレイン、バス・ホールド、PCI クランプ・
ダイオード、ウィーク・プルアップ、直列 On-Chip Termination、およびプログ
ラマブル・プリエンファシスを備えた専用の出力バッファが含まれます。以下の
項では、これらの機能のいくつかを使用する場合に伴う検討事項について説明し
ます。
各 I/O 機能について詳しくは、
「Cyclone III デバイス・ハンドブック Volume 1」
の「Cyclone III デバイスの I/O 機能」の章を参照してください。
ドライブ強度およびスルー・レート・コントロール
各 I/O 規格は、さまざまなプログラマブル・ドライブ強度をサポートします。I/O
の性能ターゲットに適合するように、適切なドライブ強度の設定を選択します。
ドライブ強度が高すぎると、I/O 性能が向上するだけでなく、インタフェースの
ノイズも増大することに注意してください。出力バッファ・ドライブ強度が、I/O
規格の電圧スレッショルド・パラメータに違反する過剰なオーバーシュートやア
ンダーシュートを生じない範囲で、十分に高いことを確認してください。同時に、
設定が低すぎて階段状の応答にならないようにする必要があります。階段状の応
答は、エッジ・レートを大幅に高め、ピンがクロック・ソースとして使用される
場合に不正クロッキングの原因になります。
42
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
Cyclone III IBIS モデルでシミュレーションを実行して、ドライブ強度
の設定が目的の性能と受信側の入力仕様に適合しているかを判断して
ください。
Cyclone III デバイスは、すべての入力で 4.1 V の最大 AC 電圧を順守します。デ
バイスの信頼性を確保するために、Cyclone III レシーバでの最大電圧オーバー
シュートが仕様を超えてはなりません。詳細については、「AN 447 : Cyclone III
デバイスと 3.3/3.0/2.5 V LVTTL/LVCMOS I/O システムのインタフェース」を
参照してください。
ピンが同時に切り替わる可能性がある大きなデータ・バスが使用される場合、ア
ルテラはスルー・レート・コントロールをオンにして、クロストークやグランド・
バウンスなどの同時スイッチング出力(SSO)の影響を低減することを推奨して
います。スルー・レート・コントロールは、ドライブ強度が 8 mA 以上のシング
ル・エンド I/O 規格でのみ使用可能です。
直列 On-Chip Termination
Cyclone III デバイスの直列 On-Chip Termination (OCT)は、キャリブレーショ
ン付きとキャリブレーションなしの 2 つの方法で実装することができます。選択
の基準は、主にドライバ・インピーダンス精度に対する追加外部コンポーネント
のコストです。キャリブレーションなしの OCT は、ドライバ出力機能を使用し
て、終端のインピーダンスを伝送線路のインピーダンスにマッチングさせます。
より高いインピーダンス・マッチング精度が必要な場合は、電圧および温度変動
を考慮したキャリブレーション付き OCT を実装します。キャリブレーション・プ
ロセスは、コンフィギュレーションの終了時に開始され、ユーザ・モード動作の
前に完了します。精度を高めながら、25 Ω ±1% または 50 Ω ±1% の 2 本の外部抵
抗をキャリブレーション・ブロック用の RUP ピンと RDN ピンのペアに接続する必
要があります。キャリブレーション・ブロックはデバイスの各サイドで使用でき
ます。推奨される 25 Ω または 50 Ω 以外のインピーダンス値へのキャリブレー
ションも可能であり、この値はバッファ・インピーダンスの範囲によってのみ制
限されます。
サポートお よび実装について は、「Cyclone III デ バイス・ハ ンドブック」の
「Cyclone III デバイスの I/O 機能」の章の「On-Chip Termination のサポート」の
項を参照してください。
プログラマブル・プリエンファシスを備えた専用の差動出力バッファ
Cyclone III デバイスは、左側と右側の I/O バンクに専用の差動出力バッファを提
供します。これらのバッファは、外部抵抗なしで LVDS 信号を最大 840 Mbps で
送信することができます。同様に、専用のトランスミッタ・バッファを用いて外
部抵抗なしで、RSDS、mini-LVDS、および PPDS を異なる速度で送信すること
ができます。レシーバでは差動終端抵抗のみ必要です。トップおよびボトム I/O
バンクは差動 I/O 規格の信号を送信できますが、トランスミッタに追加抵抗ネッ
トワークが必要です。Quartus II ソフトウェアの altlvds メガファンクションを使
用して、LVDS 用シリアライザおよびデシリアライザ(SERDES)を実装するこ
とができます。Cyclone III デバイスは専用の SERDES 回路を備えていないので、
SERDES はコア・ロジックに実装されます。
Altera Corporation
2007 年 8 月
43
Cyclone III デザイン・ガイドライン
サポートおよび実装について詳しくは、「Cyclone III デバイス・ハンドブック
Volume 1」の「高速差動インタフェース」の章を参照してください。
遠端のレシーバでのデータ・アイ開口部を最大にするために、プログラマブル・
プリエンファシスは専用の差動出力バッファでサポートされています。長い配線
パターンを使用する高速インタフェースでは通常、伝送媒体で表皮効果や誘電損
失に起因する高周波信号の減衰が生じます。プログラマブル・プリエンファシス
は、データ・ストリームの各遷移で高周波成分を増幅することによって減衰を低
減します。Quartus II ソフトウェアでこれをイネーブルにするには、Assignment
Editor で、ピンに対する Programmable Pre-emphasis アサインメントを On に設
定します。
PLL の検討事項
PLL の設計後
PLL の設計後、ボードを設計する前に、以下のことを検討する必要があります。
PLL の選択
Cyclone III デバイスには、4 つの同じ PLL があります(ただし、EP3C5 と EP3C10
には同じ PLL が 2 つしかありません)。特定の PLL を使用するか、あるいは
Quartus II ソフトウェアに最適な PLL を選択させるかを選択できます。最初のオ
プションでは、適切な専用入力および出力クロック・ピンが使用可能な PLL を選
択しなければなりません。PLL の入力クロックは、専用の入力クロック・ピンま
たは別の PLL 出力のいずれかでドライブしなければなりません。PLL の入力ク
ロックは内部ロジックからはドライブできません。PLL の出力クロックは、最適
な配線のための専用クロック出力ピン(c0 のみに適用)
、ユーザ I/O、またはグ
ローバル・クロック(GCLK)に接続する必要があります。
PLL および対応するピンの位置については、該当するデバイス・ピンアウト、お
よび「Cyclone III デバイス・ハンドブック」の「Cyclone III デバイスのクロッ
ク・ネットワーク および PLL」の章を参照してください。
ピン・アサインメント
以下に、PLL の入力および出力ポートに対して Quartus II ソフトウェアで推奨さ
れるピン・アサインメントを示します。
■
inclk[1,0] – 専用クロック入力ピン(CLK[15..0])
■
clkswitch、areset、pfdena、scandata、scanclk、configupdate、
scanclkena、phasecounterselect[2..0] 、phaseupdown 、
phasestep – ユーザ I/O またはロジック・アレイ信号
44
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
■
c[4..0] – 専用 PLL クロック出力ピン
(c0 のみ)
またはユーザ I/O またはロ
ジック・アレイ信号(c0-c4)
■
clkbad[1,0]、locked、activeclock、scandone、scandataout、
phasedone – ユーザ I/O またはロジック・アレイ信号
正しいピンについては、アルテラ・ウェブサイト(www.altera.co.jp)の資料ペー
ジの「デバイス・ピンアウト」を参照してください。
タイミング解析
タイミング解析を実行して、タイミング制約が満たされていることを確認する必
要があります。2 個の PLL をカスケード接続する場合は、
クロック不確実性
(Clock
Uncertainty)アサインメントを使用して、PLL のカスケード接続によるクロッ
ク・ジッタをモデル化することができます。
タイミング解析について詳しくは、「Quartus II ハンドブック Volume 3」を参照
してください。
Clock Uncertainty アサインメントについて詳しくは、
「Quartus II ハンドブック」
の「Quartus II クラシック・タイミング・アナライザ」の章の「Clock Uncertainty」
の項を参照してください。
シミュレーション
altpll メガファンクションは、動作およびタイミング・シミュレーションをサポー
トします。
シミュレーションのサポートと方法について詳しくは、
「Quartus II ハンドブック
Volume 3」を参照してください。
コンフィギュレーション・ソフトウェアの設定
この項では、コンフィギュレーション・ファイルまたはプログラミング・ファイ
ルを生成するためにコンパイル前に Quartus II ソフトウェアで設定できるいくつ
かのコンフィギュレーション・オプションについて説明します。これらの設定お
よびピンがボードおよびシステム・デザインに影響を与えます。
オプションのコンフィギュレーション・ピン
Device and Pin Options ダイアログ・ボックスの General タブで、以下のオプ
ションのコンフィギュレーション・ピンをイネーブルにすることができます。
Altera Corporation
2007 年 8 月
45
Cyclone III デザイン・ガイドライン
CLKUSR
Quartus II ソフトウェアの Enable user-supplied start-up clock(CLKUSR)オプ
ションにより、内部オシレータまたは CLKUSR ピンに供給される外部クロックの
どちらのクロック・ソースを初期化に使用するかを選択することができます。
INIT_DONE
INIT_DONE ピンをモニタして、Cyclone III デバイスが初期化を完了してユーザ・
モードになっているかどうかをチェックすることができます。INIT_DONE ピン
はオプションのピンであり、Quartus II ソフトウェアの Enable INIT_DONE
output オプションでオンにすることができます。INIT_DONE ピンはオープン・
ドレイン出力で、VCC への外部プルアップを必要とします。
オート・リスタート・コンフィギュレーション
Quartus II ソフトウェアで auto-restart configuration after error オプションをイ
ネーブルにすることができます。コンフィギュレーション・エラーが発生すると、
Cyclone IIIデバイスはnSTATUSをLowにドライブします。これにより、
Cyclone III
デバイスは内部でリセットされます。Cyclone III デバイスは、リセット・タイム
アウト期間を過ぎると nSTATUS ピンを解放します。次に、nSTATUS ピンはプル
アップ抵抗によって VCC にプルアップされます(リコンフィギュレーションを開
始できることを示します)
。
コンフィギュレーション・ファイル・サイズの見積り
Cyclone III デバイスは、圧縮されたコンフィギュレーション・ビットストリーム
を受信して、このデータをリアルタイムで復元することができるため、アクティ
ブ・シリアルおよびパッシブ・シリアル方式で必要なメモリおよびコンフィギュ
レーション時間を低減します。圧縮されていないロウ・バイナリ・ファイル(.rbf)
のサイズは、Cyclone III デバイスの圧縮されていないコンフィギュレーション・
ファイルのサイズとほぼ同じです。複数のデバイス・コンフィギュレーションに
必要なストレージ容量を算出するには、各デバイスのファイル・サイズを加算し
てください。
Cyclone III デバイスの圧縮されていないロウ・バイナリ・ファイルのサイズにつ
いては、
「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイ
スのコンフィギュレーション」の章を参照してください。
ロウ・バイナリ・ファイルのサイズのデータは、デザインをコンパイルする前の
ファイル・サイズの見積りにのみ使用してください。16 進(.hex)フォーマット
や表形式テキスト・ファイル(.ttf)フォーマットなど、コンフィギュレーショ
ン・ファイル形式ごとにファイル・サイズが異なります。ただし、Quartus II ソ
フトウェアの特定のバージョンでは、同じデバイスを対象としたデザインの非圧
縮コンフィギュレーション・ファイルのサイズは同じになります。圧縮を使用し
た場合、圧縮率はデザインに依存するため、ファイル・サイズはコンパイルする
たびに変わる可能性があります。
46
Altera Corporation
2007 年 8 月
デザインおよびコンパイル
プログラミング・ファイルの変換
Cyclone III のデータをコンフィギュレーション・デバイスに格納するために、デ
フォルトの SOF データを異なるファイル形式に変換し、コンフィギュレーショ
ン・デバイスにプログラムすることができます。Device and Pin Options ダイア
ログ・ボックスで、コンパイル中に追加プログラミング・ファイルを生成するよ
うにソフトウェアを設定できます。SOF を変換するには、File メニューの Convert
Programming Files をクリックします。Quartus II ソフトウェアは、POF、Hexout、
RBF、TTF、RPD、または JIC フォーマットへのデータ変換をサポートします。コ
ンフィギュレーション・デバイスをプログラムするために POF および JIC ファイ
ルは Quartus II Programmer で使用され、Hexout、RBF、TTF、および RPD ファ
イルは他のプログラマで使用されます。
マルチ・デバイス・コンフィギュレーション・チェインを使用するときは、Convert
Programming Files ダイアログ・ボックスで、各デバイスの SOF を 1 つのコン
フィギュレーション・ファイルに結合する必要があります。コンフィギュレーショ
ン・ファイルを生成するときには、コンフィギュレーション・ファイルとボード
上のデバイスの順序が一致することを確認してください。
デバイスのコンフィギュレーション・オプションの設定またはコンフィギュレー
ション・ファイルの生成について詳しくは、「コンフィギュレーション・ハンド
ブック Volume 2」の「ソフトウェアの設定」セクションを参照してください。
プログラミング・ファイル形式およびプログラマの使用について詳しくは、
「Quartus II ハンドブック Volume 3」の「Quartus II Programmer」の章を参照し
てください。
ピン配置の検証
ピン関連アサインメントの作成後に、そのアサインメントを Cyclone III デバイス
に固有のルールに照合して検証する必要があります。この項では、検証およびピ
ン配置に関する検討事項を説明します。
I/O アサインメントの解析
Start I/O Assignment Analysis コマンドにより、デザインのコンパイル前、コン
パイル中、またはコンパイル後に、I/O アサインメントの適用性をチェックする
ことができます。デザイン・ファイルが使用可能な場合は、このコマンドを使用
してデザインの I/O ピンと周囲のロジックに対して徹底的な適用性チェックを実
行することができます。これらのチェックには、適切なリファレンス電圧ピンの
使用、有効なピン配置アサインメント、および許容 I/O 規格が含まれます。ピン
関連アサインメントを追加または変更するたびに解析を実行してください。
Start I/O Assignment Analysis コマンドおよびそのデザイン・フローについて詳
しくは、「Quartus II ハンドブック Volume 2」の「I/O 管理」の章を参照してく
ださい。
Altera Corporation
2007 年 8 月
47
Cyclone III デザイン・ガイドライン
DC のガイドライン
出力ピンからの大きな定常電流がソースまたはシンクされると、エレクトロマイ
グレーションのためにデバイスが損傷する可能性があります。エレクトロマイグ
レーションでは、導電性金属を流れる多量の電流によって、導電性金属の原子の
移動が生じます。High 出力のピンをグランドに接続するか、Low 出力のピンを
直接 VCC に接続する例もあります。Cyclone III I/O ピンがシンクおよびソースで
きる最大 DC 電流は、それぞれ 25 mA と 40 mA です。特定のピンを High また
は Low にプルする必要がある場合は、外部抵抗を介して接続します。
さらに、連続する出力パッド・セットの全電流シンクまたはソースに対する制限
があります。これはパッドの位置と関係があるので、Quartus II ソフトウェアを
使用し、ピンの最大 DC 電流を供給してこの違反をチェックします。Quartus II
ソ フ ト ウ ェ ア で こ れ を 設 定 す る に は、Assignment Editor に 進 み、ピ ン の
Electromigration Current アサインメントに最大 DC 電流を入力します。
Quartus II
ソフトウェアで DC の制約を表示するには、Assignments メニューの Device を
クリックします。Device & Pin Options をクリックし、Pin Placement タブを選
択します。Electromigration ウィンドウに制約がリストされます。
電流制限の仕様については、
「Cyclone III デバイス・ハンドブック」の「Cyclone III
デバイスの I/O 機能」の章の「パッド配置および DC のガイドライン」の項を参
照してください。
検証
この項では、タイミング、消費電力、およびシミュレーションにおけるデザイン
の検証に関する情報を提供します。
タイミングの検討事項
デザインがハードウェアで正しく動作することを保証するために、タイミングを
理解することが不可欠です。
TimeQuest 対クラシック・タイミング・アナライザ
Quartus II ソフトウェアは、TimeQuest タイミング・アナライザとクラシック・
タイミング・アナライザの 2 つの強力なタイミング解析ツールを備えています。
これらのタイミング・アナライザは、Cyclone III デバイス・ファミリをサポート
しています。
新しいデバイス・ファミリに対しては、クラシック・タイミング・アナライザよ
りも新しい TimeQuest タイミング・アナライザの方が推奨されます。TimeQuest
タイミング・アナライザは、業界標準の Synopsys Design Constraints(SDC)
フォーマットのタイミング制約をサポートし、インタラクティブなタイミング・
レポート・スタイルの使いやすい GUI を備えています。
48
Altera Corporation
2007 年 8 月
検証
TimeQuest タイミング・アナライザは、より効率的な仕様および微調整コント
ロールを提供するため、複雑なタイミング解析に適しており、また高速ソース・
シンクロナス・インタフェースおよびクロック多重化デザイン構造を制約するの
に理想的です。DDR/DDR2 外部メモリ・インタフェースのデザインのタイミン
グ解析には、TimeQuest タイミング・アナライザが必要です。
TimeQuest タイミング・アナライザおよびクラシック・タイミング・アナライザ
について詳しくは、
「Quartus II ハンドブック Volume 3」の「Quartus II TimeQuest
タイミング・アナライザ」および「Quartus II クラシック・タイミング・アナラ
イザ」の章を参照してください。
早期タイミング見積り
Quartus II の Early Timing Estimation で、デザインのタイミングを見積ることが
できます。Early Timing Estimation は、デザインのフル・コンパイルを実行する
ことなく、暫定タイミング情報を提供します。コンパイル時間を節約するために、
フィッタは完全な最適化を実行しません。したがって、タイミング情報は見積り
にすぎません。
Realistic、Optimistic、または Pessimistic の Early Timing Estimation レベルを設
定できます。一般に、Realistic(現実的)設定が使用される場合、遅延見積りは、
完全フィットで得られる遅延の 10% 以内です。Early Timing Estimate は、早期の
配置配線遅延に基づいて、完全なタイミング・レポートを生成します。
デザイン・タイミングのチェック
デザインが動作することを保証するために、タイミング・レポートをチェックし
て、タイミング違反がないことを確認します。内部タイミングと I/O タイミング
を満足することが重要です。タイミング・レポートの fMAX は、デザインが動作
可能な最大周波数を示します。Cyclone III デバイスがボード上の他のデバイスと
正しくインタフェースすることを確認するために、タイミング・レポートの tSU、
tCO、tH、および tPD の値をチェックしてください。例えば、Cyclone III デバイス
が他のデバイスからデータを受信する場合、データが Cyclone III デバイスのレジ
スタにクロックされているとき、tSU と tH に違反していないことを確認します。
tSU または tH に違反すると、レジスタ出力が準安定状態(メタステーブル)にな
ることがあります。メタステーブル出力は短時間にわたって不正になり、それに
よってデザイン機能に影響を及ぼします。
Cyclone III デバイスがレジスタでラッチされたデータを別のデバイスに送信する
ときは、Cyclone III デバイスの tCO をチェックして、外部デバイスのデータ到着
時間を推定します。
TimeQuest タイミング・アナライザおよびクラシック・タイミング・アナライザ
について詳しくは、
「Quartus II ハンドブック Volume 3」の「Quartus II TimeQuest
タイミング・アナライザ」および「Quartus II クラシック・タイミング・アナラ
イザ」の章を参照してください。
Altera Corporation
2007 年 8 月
49
Cyclone III デザイン・ガイドライン
メタスタビリティについて詳しくは、
「AN 42 : アルテラ・デバイスのメタスタビ
リティ」を参照してください。
I/O タイミング解析
Cyclone III デバイスがボード上の外部デバイスにインタフェースするときにタイ
ミング要求を満足するよう、TimeQuest タイミング・アナライザまたはクラシッ
ク・タイミング・アナライザで I/O 解析を実行します。外部デバイスのレジスタ
から Cyclone IIIデバイスの指定された入力ピンまたは双方向ピンまでの指定され
たクロック・ソースを基準とする信号の最大または最小遅延が分かっている場合
は、Input Delay アサインメントを使用します。
Cyclone III デバイスからのレジスタ付き出力については、Cyclone III デバイスの
レジスタ付き出力から外部デバイスのレジスタ付き入力までの指定されたクロッ
ク・ソースを基準とする信号の最大または最小遅延に対して、Output Delay アサ
インメントを作成できます。
スキュー管理
スキューとは、2 つの異なる送信先における信号の到着時間の差のことです。同
期デザインの場合、クロック信号とデータ信号のパス長が異なるため、クロック・
スキューとデータ・スキューが生じます。高速信号では、信号の時間間隔が短い
ためスキューがより重要になります。これらの高速信号用にクロック・ネットワー
クを使用すると、クロックおよびデータ・スキューが低減されます。
Quartus II の Maximum Clock Arrival Skew アサインメントを使用して、クロッ
ク信号と各種デスティネーション・レジスタ間の許容最大クロック到着スキュー
を指定します。データ信号については、Maximum Data Arrival Skew アサインメ
ントを使用して、各種デスティネーション・レジスタまたはピンに対する許容最
大データ到着スキューを指定します。これらのアサインメントが使用される場合、
Quartus II ソフトウェアは最長クロック・パスまたはデータ・パスと最短クロッ
ク・パスまたはデータ・パスの間のタイミング差を算出し、フィッタは要求を満
たすよう試みます。
その他のタイミング解析および最適化機能
Quartus II ソフトウェアは、タイミング解析および性能最適化のためのその他の
機能も提供します。適切な合成およびフィッタ設定でタイミング・ドリブン・コ
ンパイルを実行して、タイミングを最適化できます。また、Quartus II ソフトウェ
アのデザイン・スペース・エクスプローラ、LogicLock、およびその他の機能を
使用して、デザイン性能を向上させることもできます。
「Quartus II ハンドブック」の「Quartus II インテグレーテッド・シンセシス」お
よび「面積とタイミングの最適化」の章では、Quartus II ソフトウェアでの各種
タイミングの最適化設定とタイミング最適化手法について説明しています。
50
Altera Corporation
2007 年 8 月
検証
PowerPlay Power Analyzer
デザインが完成したら、QuartusII ソフトウェアで PowerPlay Power Analyzer
ツールを使用して、デザインの消費電力を正確に計算して、熱バジェットおよび
電源バジェットに違反していないことを確認します。PowerPlay Power Analyzer
ツールは、デザインを合成して、ターゲット・デバイスにフィットさせることを
要求します。デザイン・リソース、ターゲット・デバイスでのデザインの配置配
線方法、各 I/O セルに割り当てられる I/O 規格などの情報が提供されることに
よって、PowerPlay Power Analyzer ツールは、正確な電力の見積りを提供するこ
とができます。
PowerPlay Power Analyzer ツールを使用するプロセスは、入力データのソースの
指定、動作条件の指定、および PowerPlay Power Analyzer ツールの実行の 3 つ
の部分で構成されます。入力データは、コンパイルされたデザインのシグナル・
アクティビティ・データ(トグル・レートおよびスタティック確率)で構成され
ます。シグナル・アクティビティ・データは、シミュレーション結果、Assignment
Editor でのユーザ・アサインメント、ユーザ定義のデフォルト・トグル・レート、
およびベクタなし見積りから得ることができます。
動作条件には、デバイスの電力特性、周囲温度およびジャンクション温度、冷却
ソリューション、およびボードの熱モデルが含まれます。これらはすべてQuartus II
ソフトウェアで設定できます。PowerPlay Power Analyzer ツールは、ダイナミッ
ク、スタティック、および I/O 熱消費電力、電圧源から消費される電流、解析に
使用されるシグナル・アクティビティの集計、そしてシグナル・アクティビティ
のためのデータ・ソースの総合的な品質を反映する信頼性指標を計算します。
シグナル・アクティビティ・ファイル(SAF)およびその作成方法については、
「Quartus II ハンドブック Volume 3」の「Quartus II Simulator」の章を参照して
ください。
PowerPlay Power Analyzer ツールについて詳しくは、
「Quartus II ハンドブック
Volume 3」の「PowerPlay による電力解析」の章を参照してください。
シミュレーション
シミュレーションを実行して、デザインが正しく動作することを検証します。複
数のモジュールで構成されるデザインについては、シミュレーションによって各
モジュールが結合される前に機能的に動作することが確認されます。より低いレ
ベルでデザインをデバッグすると、デバッグ時間が節約されます。シミュレーショ
ンによって、ピンまたはレジスタでラッチされた信号をモニタできます。
Altera Corporation
2007 年 8 月
51
Cyclone III デザイン・ガイドライン
さまざまなシミュレーション・ツールを使用して、Cyclone III デザインでシミュ
レーションを実行することができます。
一般に使用されるサードパーティ・シミュ
レーション・ツールには、Mentor Graphics 社の ModelSim® や Synopsys 社の VCS
および Cadence 社の NC-Sim などがあります。Quartus II シミュレータに加え、
ModelSim-Altera Edition および ModelSim-Altera Web Edition も使用できます。
ModelSim-Altera Edition および ModelSim-Altera Web Edition は、Cyclone III
ファミリをサポートします。
これらのサードパーティ・シミュレーション・ツールは、RTL の機能シミュレー
ション、合成後のシミュレーション、およびゲート・レベル・シミュレーション
をサポートします。RTL の機能シミュレーションは合成および配置配線前のデザ
インの機能を検証するので、ゲート・レベル・シミュレーションまたは合成後の
シミュレーションの前に RTL の機能シミュレーションを実行します。
合成後シミュレーションは、合成が実行された後のデザインの機能を検証します。
Quartus II ソフトウェアで合成後のネットリストを作成し、このネットリストを
使用してサードパーティ・シミュレーション・ツールで合成後シミュレーション
を実行できます。合成後のデザインが検証されたら、Quartus II Fitter を使用し
て、ターゲットの Cyclone III デバイスにおけるデザインの配置配線に進むことが
できます。Quartus II ソフトウェアの EDA Netlist Writer を使用して、特定のサー
ドパーティ・シミュレーション・ツール用のシミュレーション・ネットリストを
生成します。
ゲート・レベルのタイミング・シミュレーションは、ワースト・ケースのタイミ
ング遅延が計算された後のデザインの動作を検証する、配置配線後のシミュレー
ションです。
同様に、Quartus II シミュレータは機能シミュレーションとタイミング・シミュ
レーションの両方をサポートします。デザイン・フローの初めに機能シミュレー
ションを実行して、デザインの機能動作または論理動作をチェックします。デザ
インをコンパイルする必要はなく、タイミング情報が含まれていないデザインの
機能シミュレーション・ネットリストを生成して、機能シミュレーションを実行
するだけです。
タイミング・シミュレーションは、デザインをコンパイルするときにタイミング・
アナライザで生成されたタイミング・ネットリストを使用します。タイミング・
シミュレーションは、異なるデバイス・ブロックの遅延と配置配線情報を考慮す
るので、機能シミュレーションよりも正確です。デザインがターゲット・デバイ
スで確実に動作するように、トップレベル・デザインでデザイン・フローの最後
にタイミング・シミュレーションを実行します。
シミュレーション・ツールを使用したデザインのシミュレーションについて詳し
くは、
「Quartus II ハンドブック Volume 3」の「シミュレーション」セクション
を参照してください。
52
Altera Corporation
2007 年 8 月
デザインのデバッグ
デザインの
デバッグ
Quartus II ソフトウェアは、デザイン段階でデザインのデバッグを支援するため
の多数のデバッグ・ツールを備えています。
SignalTap II
Quartus II ソフトウェアの SignalTap II エンベデッド・ロジック・アナライザは、
FPGA デザインのリアルタイム信号動作をキャプチャおよび表示するシステム・
レベルのデバッグ・ツールです。SignalTap II エンベデッド・ロジック・アナラ
イザは、高いデータ収集レートを備え、Cyclone III デザインで 200 MHz 以上の
高周波数信号をモニタするのに適しています。
SignalTap II ロ ジ ッ ク・ア ナ ラ イ ザ(.stp)フ ァ イ ル を 作 成 す る か、ま た は
SignalTap II ロジック・アナライザ・メガファンクションをインスタンス化する
ことによって、SignalTap II エンベデッド・ロジック・アナライザを使用するこ
とができます。アナライザを実行するには、データ収集を制御するクロック信号
を指定する必要があります。1 個の Cyclone III デバイスで異なるクロック・ドメ
インを持つ異なるデザインをモニタするには、デバイスでそれぞれがモニタして
いるデザインのクロック信号でクロックされる、
複数のアナライザを実行できます。
SignalTap II エンベデッド ・ロジック・アナライザは、デバイスの JTAG ピンを
使用しており、アルテラのダウンロード・ケーブルを使用してデバイスにインタ
フェースできます。すなわち、JTAG コンフィギュレーションのセットアップを
SignalTap II のデバッグに使用できます。1 つの JTAG チェイン内の複数デバイス
を同時にデバッグすることも可能です。モニタするチェイン内の各モジュールに
は、STP ファイルがなければなりません。
SignalTap II エンベデッド・ロジック・アナライザは、インクリメンタル・コン
パイルをサポートします。このため、SignalTap II ロジック・アナライザの設定
に変更を加えるたびに、フル・コンパイルを実行する必要がないため、コンパイ
ル時間が短縮されます。SignalTap II エンベデッド・ロジック・アナライザを使
用するとき、Cyclone III デバイスの性能への影響を最小限に抑えるために、デザ
インをバック・アノテーションして、
インクリメンタル・コンパイルを使用します。
SignalTap II エンベデッド・ロジック・アナライザを使用してデバッグを行う方
法について詳しくは、
「Quartus II ハンドブック Volume 3」の「SignalTap II エン
ベデッド・ロジック・アナライザを使用したデザインのデバッグ」の章を参照し
てください。
SignalProbe
Quartus II ソフトウェアの SignalProbe 機能を使用して、モニタする内部信号を
Cyclone III デバイスの未使用 I/O ピンに配線することができます。これにより、
どの内部信号でもモニタするために外部に配線できるため、デバッグ・プロセス
が容易になります。SignalProbe 機能を使用しても、Quartus II ソフトウェアは既
存のデザインのリソースの配置と配線を保持するため、デザインの動作と性能に
は影響を与えません。
Altera Corporation
2007 年 8 月
53
Cyclone III デザイン・ガイドライン
SignalProbe 機能を使用してデバッグを行う方法について詳しくは、「Quartus II
ハンドブック Volume 3」の「Quick Design Debugging Using SignalProbe」の章
を参照してください。
イン・システム・ソースおよびプローブ
Quartus II ソフトウェアの SignalTap II エンベデッド・ロジック・アナライザと
SignalProbe 機能により、デザインの内部信号または出力信号をチェックできま
すが、デバイスに入力信号を供給する必要があります。ボードのプロトタイプ作
成段階で、Cyclone III デバイスに入力信号を供給する外部コンポーネントを簡単
に用意できない場合があります。したがって、Cyclone III デバイスのデザインを
チェックまたはデバッグしたい場合は、Cyclone III デバイスに正しい入力信号を
手動で供給する必要があります。
Quartus II ソフトウェアは、ユーザがデザインに入力信号を供給し、内部信号お
よび出力信号をプローブできるようにするイン・システム・ソースおよびプロー
ブ 機 能 を 備 え て い ま す。イ ン・シ ス テ ム・ソ ー ス お よ び プ ロ ー ブ 機 能 は、
altsource_probe メガファンクションおよびランタイム時に altsource_probe メガ
ファンクション・インスタンスを制御可能なイン・システム・ソースおよびプロー
ブ・エディタで構成されています。各 altsource_probe メガファンクション・イ
ンスタンスは、ソース出力ポートおよびプローブ入力ポートを提供します。ここ
で、ソース・ポートは選択された信号をドライブし、プローブ・ポートは選択さ
れた信号をサンプリングします。イン・システム・ソースおよびプローブ・エディ
タでデバイスに書き込むソース・データを手動で変更することができます。
Quartus II ソフトウェアでのイン・システム・ソースおよびプローブ・エディタ
は、USB Blaster や ByteBlaster II ダウンロード・ケーブルなどのアルテラのダウ
ンロード・ケーブルを通じてデバイスと通信します。
イン・システム・ソースおよびプローブ機能を使用してデバッグを行う方法につ
いて詳しくは、
「Quartus II ハンドブック Volume 3」の「Design Debugging Using
In-System Sources and Probes」の章を参照してください。
その他のデバッグ機能
Quartus II ソフトウェアの他のデバッグ機能には、デザインの内部信号を解析す
るために外部ロジック・アナライザに送信可能にするロジック・アナライザ・イ
ンタフェース、JTAG により Cyclone III デバイスの M9K メモリへのリードおよ
びライト・アクセスを提供する In-System Memory Content Editor、およびその
周辺にユーザ独自のシステム・レベルのデバッグ基盤を構築可能なsld_virtual_jtag
メガファンクションなどがあります。
ロジック・アナライザ・インタフェース機能を使用してデバッグを行う方法につ
いて詳しくは、「Quartus II ハンドブック Volume 3」の「外部ロジック・アナラ
イザを使用したイン・システム・デバッグ」の章を参照してください。
54
Altera Corporation
2007 年 8 月
テスト作業
In-System Memory Content Editor を使用してオンチップ・メモリにアクセスす
る方法について詳しくは、「Quartus II ハンドブック Volume 3」の「In-System
Updating of Memory and Constants」の章を参照してください。
デバッグへの sld_virtual_jtag メガファンクションの使用方法について詳しくは、
「sld_virtual_jtag Megafunction User Guide」を参照してください。
テスト作業
バウンダリ・スキャン・テスト
生産環境でのデバイスに対する最も一般的なボード・レベルのテストの 1 つがバ
ウンダリ・スキャン・テストです。Cyclone III デバイスは IEEE 1149.1(JTAG)
バウンダリ・スキャン・テストをフルにサポートします。バウンダリ・スキャン・
テストでは、物理的なテスト・プローブを使用せずに、デバイスの通常動作中に
ボード・レベルでピンの接続をテストすることができます。バウンダリ・スキャ
ン・テストを実行するには、デバイスのバウンダリ・スキャン記述言語(BSDL)
ファイルを持つ必要があります。
コンフィギュレーション済み Cyclone III デバイスでバウンダリ・スキャン・テス
トを実行するには、
アルテラのウェブサイトにある BSDL ファイルを使用します。
コンフィギュレーション後のデバイスの場合は、デザインに応じて BSDL ファイ
ルを修正する必要があります。アルテラは、コンフィギュレーション後のデバイ
ス用の BSDL ファイルを再生成するために BSDLCustomizer ツールを提供してい
ます。BSDLCustomizer は、Quartus II ソフトウェアおよびアルテラ・ウェブサ
イトから入手可能なコンフィギュレーション済みデバイスの BSDL ファイルで生
成されるデザインの .pin ファイルを使用して、ポート定義とバウンダリ・スキャ
ン・セル・グループ属性が変更された別の BSDL ファイルを生成するする Tcl ス
クリプトです。
バウンダリ・スキャン・テスタのベンダには、ASSET InterTech、Corelis、Goepel
Electronic、JTAG Technologies などがあります。
その他の
検討事項
信頼性
半導体デバイスを扱う際は、デバイスの信頼性を維持するために、いくつかの基
本ルールに注意してください。
イン・システム・ソースおよびプローブ半導体デバイスを扱うときに
は、デバイスの即時機能障害や I/O 性能の低下、あるいは長期的な信
頼性低下を引き起こす可能性がある静電気放電(ESD)に注意してくだ
さい。
デバイスを ESD が発生しない環境で保管したり、グランド・ストラッ
プを着用するなど、デバイスを取り扱う際は注意してください。
Altera Corporation
2007 年 8 月
55
Cyclone III デザイン・ガイドライン
信頼性の高いデバイス動作を達成するために、
「Cyclone III デバイス・ハンドブッ
ク Volume 2」の「Cyclone III デバイス・データシート : DC およびスイッチング
特性」の章に記載するとおり、デバイスは必ず推奨動作条件内で動作させてくだ
さい。デバイスを絶対最大定格で長期間動作させると、デバイスが損傷して正し
く動作しなくなる可能性があります。
FPGA スタータ・キット
デザイン・プロセスを簡略化し、製品の迅速な市場投入を支援するために、
Cyclone III FPGA のスタータ・キットをテストおよびデバッグ・プラットフォー
ムとして使用することができます。スタータ・キットは使いやすく、ソフトウェ
ア、リファレンス・デザイン、ケーブル、およびプログラミング・ハードウェア
が含まれています。
Cyclone III スタータ・キットについて詳しくは、Cyclone III FPGA スタータ開発
キットを参照してください。
まとめ
このデザイン・ガイドラインは、Cyclone III FPGA で設計するときに FPGA の設
計者が知っていなければならないCyclone IIIデバイスの使い方のさまざまな側面
をカバーします。また、このガイドラインによりデザイン・フローも簡単になり
ます。正しいツールと適切なデザイン手法を使用すれば、Cyclone III デバイスで
簡単にデザインを設計し、時間を節約できます。
参考資料
このアプリケーション・ノートでは、以下のドキュメントを参照しています。
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイス・
ファミリの概要」の章
■ 「Cyclone III FPGA 用 PowerPlay Early Power Estimator ユーザガイド」
■ 「Quartus II ハンドブック Volume 2」の「消費電力の最適化」の章
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスの
I/O 機能」の章
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「外部メモリ・インタ
フェース」の章
■ 「アルテラ・ウェブサイトの資料ページ」の「デバイス・ピンアウト」
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスの
コンフィギュレーション」の章
■ 「コンフィギュレーション・ハンドブック Volume 2」の「シリアル・コン
フィギュレーション・デバイス(EPCS1、EPCS4、EPCS16、EPCS64、およ
び EPCS128)データシート」の章
■ 「AN 386 : Using the Parallel Flash Loader with the Quartus II Software」
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスの
リモート・システム・アップグレード」の章
■ 「altremote_update Megafunction User Guide」
56
Altera Corporation
2007 年 8 月
参考資料
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスの
クロック・ネットワークおよび PLL」の章
■ 「Cyclone III デバイス・ハンドブック Volume 2」の「Cyclone III デバイス・
データシート : DC & スイッチング特性」の章
■ 「AN 447 : Cyclone III デバイスと 3.3 V/3.0 V/2.5 V LVTTL/LVCMOS I/O シ
ステムのインタフェース」
■ 「Quartus II ハンドブック Volume 2」の「I/O 管理」の章
■ 「AN 224 : 高速ボード・レイアウト・ガイドライン」
■ 「AN 315 : 高速 FPGA のプリント基板の設計ガイドライン」
■ 「Quartus II ハンドブック Volume 3」の「サードパーティ・シミュレーショ
ン・ツールでのアルテラ IP のシミュレーション」の章
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III デバイスの
ホット・ソケットおよびパワー・オン・リセット」の章
■ 「Quartus II ハンドブック Volume 1」の「Recommended HDL Coding Styles」
の章
■ 「Quartus II ハンドブック Volume 1」の「アルテラ・デバイスのデザイン推
奨事項」
■ 「altclkctrl Megafunction User Guide」
■ 「altpll Megafunction User Guide」
■ 「Quartus II ハンドブック Volume 2」の「デザイン・スペース・エクスプロー
ラ」の章
■ 「Cyclone III デバイス・ハンドブック Volume 1」の「Cyclone III の高速差動
インタフェース」の章
■ 「コンフィギュレーション ・ハンドブック」
■ 「Quartus II ハンドブック Volume 3」の「Quartus II Programmer」の章
■ 「Quartus II ハンドブック Volume 3」の「Quartus II TimeQuest Timing
Analyzer」の章
■
「Quartus II ハンドブック Volume 3」
の
「Quartus II Classic Timing Analyzer」
の章
■
「AN 42 : アルテラ・デバイスのメタスタビリティ」
■ 「Quartus II ハンドブック Volume 1」
の「Quartus II Integrated Synthesis」
の章
■ 「Quartus II ハンドブック Volume 2」
の「Area and Timing Optimization」
の章
■ 「Quartus II ハンドブック Volume 3」の「Quartus II Simulator」の章
■ 「Quartus II ハンドブック Volume 3」の「PowerPlay による電力解析」の章
■ 「Quartus II ハンドブック Volume 3」の「SignalTap II エンベデッド・ロジッ
ク・アナライザを使用したデザインのデバッグ」の章
■ 「Quartus II ハンドブック Volume 3」の「Quick Design Debugging Using
SignalProbe」の章
■ 「Quartus II ハンドブック Volume 3」の「Design Debugging Using In-System
Sources and Probes」の章
■ 「Quartus II ハンドブック Volume 3」の「外部ロジック・アナライザを使用
したイン・システム・デバッグ」の章
■ 「Quartus II ハンドブック Volume 3」
の「In-System Updating of Memory and
Constants」の章
■ 「sld_virtual_jtag Megafunction User Guide」
Altera Corporation
2007 年 8 月
57
改訂履歴
表 7 に、本資料の改訂履歴を示します。
改訂履歴
表 7.
改訂履歴
日付 & ドキュメント・
バージョン
2007 年 8 月 v1.0
101 Innovation Drive
San Jose, CA 95134
www.altera.com
Literature Services:
[email protected]
変更内容
初版
概要
—
Copyright © 2007 Altera Corporation. All rights reserved. Altera, The Programmable Solutions Company, the stylized
Altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service
marks are, unless noted otherwise, the trademarks and service marks of Altera Corporation in the U.S. and other
countries. All other product or service names are the property of their respective holders. Altera products are protected
under numerous U.S. and foreign patents and pending applications, maskwork rights, and copyrights. Altera warrants
performance of its semiconductor products to current specifications in accordance with Altera's standard warranty, but
reserves the right to make changes to any products and services at any time without notice. Altera assumes no
responsibility or liability arising out of the application or use of any information, product, or service described herein
except as expressly agreed to in writing by Altera Corporation. Altera customers are advised to
obtain the latest version of device specifications before relying on any published information and
before placing orders for products or services.
デザイン・チェックリスト
デザイン・
チェックリスト
このチェックリストは、本資料で説明したガイドラインの要約を提供します。こ
のチェックリストを使用して、デザインの各ステージでガイドラインに従ってい
ることを確認してください。
プロジェクト名 :
日付 :
1 ページの「デバイスの選択」
Done
N/A
(確認済)(該当なし)
1
…
…
2
…
…
ロジック / メモリ / マルチプライヤの集積度、PLL の I/O ピン数、パッケージの種
類、および将来の開発のための予備リソースなどに基づいて、デバイスを選択。
バーティカル・デバイス・マイグレーションを検討。スピード・グレードおよび選
択可能なコア電圧の可用性を検討。将来低速グレードのデバイスを使用する計画が
ある場合は、十分なタイミング・マージンを確保。
4 ページの「早期システム・プランニング」
Done
N/A
3
…
…
冷却ソリューションと電源をプランするために、Early Power Estimator スプレッ
ドシートを使用して消費電力と放熱性を見積る。
4
…
…
より低い I/O キャパシタンス、電圧 I/O 規格、および高周波信号のための抵抗終端
I/O 規格を使用して、I/O 消費電力を低減。
5
…
…
デザインに適切なI/O規格(シングル・エンド、電圧リファレンス、
または差動)
を選択。
6
…
…
同じ VCCIO および VREF を共有する I/O ピンを同じ I/O バンク内に配置。
7
…
…
Cyclone III デバイス・パッケージ、コンフィギュレーションに使用可能なリソー
ス、およびシステムで要求されるコンフィギュレーション時間に基づいてコンフィ
ギュレーション手法を選択。
8
…
…
AS、AP、および PS コンフィギュレーション手法の場合は、高速または標準 POR
時間を選択可能。
9
…
…
AS および PS コンフィギュレーション手法でのコンフィギュレーション・ファイ
ルのサイズを低減するために、圧縮機能を使用。
10
…
…
Cyclone III PLL をクロック管理に使用。
11
…
…
PLL入力、出力、およびVCO周波数がデータシートの仕様を満足していることを確認。
12
…
…
1 個の PLL を使用したときに、m、n、c カウンタまたは VCO 周波数で目的の周波
数が得られない場合は、PLL をカスケード接続して必要な周波数を取得。
Altera Corporation
2007 年 8 月
59
Cyclone III デザイン・ガイドライン
13
…
…
14
…
…
デザインに基づいて 4 つの使用可能な PLL 補正モードの 1 つを使用。
15
…
…
Cyclone III デバイスをリコンフィギュレーションすることなく、ユーザ・モードで
PLL 設定をダイナミックに変更する必要がある場合は、PLL リコンフィギュレー
ション機能を使用。
16
…
…
デザインに必要な areset、 locked または pfdena コントロール信号を使用。
17
…
…
オンチップ・デバッグ用 LE、メモリ、I/O などの追加リソースを確保して JTAG ピ
ンを配線。
バックアップ入力クロックが必要な場合、またはユーザ・モードで入力クロック・
ソースを変更する場合は、PLL のクロック・スイッチオーバ機能を使用。
16 ページの「ボード・デザインの検討事項」
Done
N/A
18
…
…
Cyclone III デバイスを 3.3 V/3.0 V/2.5 V LVTTL/LVCMOS I/O システムにインタ
フェースするときに、正しいハードウェア設定を使用。
19
…
…
ピン配置の制約をチェックするために Quartus II ソフトウェアを使用。
20
…
…
21
…
…
22
…
…
デバイスの未使用ピンをピンの動作に応じてボードに接続。
23
…
…
信号を適切に終端。
24
…
…
IBIS または HSPICE シミュレーションをボード・レベルで実行。
25
…
…
電源プレーンのノイズを最小化。
26
…
…
パワーアップ要件とパワーアップ時におけるCyclone IIIデバイスのI/O動作を検討。
27
…
…
28
…
…
60
同時にスイッチングするピンから入力ピンを分離。可能であれば、ピンの同時ス
イッチングを回避。
以下の方法を使用して、ボードへの同時スイッチング・ノイズの影響を最小化。
● 同時にスイッチングする I/O を別の I/O バンクに振り分け。
● 未使用 I/O ピンを VCC またはグランドに設定。
● スイッチング・ピンの低速スルー・レート機能をオンにする。
● スイッチング・ピンに低ドライブ強度を使用。
● ボードにデカップリング・コンデンサを追加。
● スイッチング・ピンに適切な終端方法を使用。
使用するコンフィギュレーション手法に基づいて、所定のコンフィギュレーション
信号に正しい直列抵抗を追加。
CycloneIII デバイスをマルチ・デバイス・コンフィギュレーションでカスケード接
続するときは、コンフィギュレーション信号用のリピータ・バッファを使用。
Altera Corporation
2007 年 8 月
デザイン・チェックリスト
29
…
…
DCLK 信号または TCK 信号がクリーンなことを確認。
30
…
…
コンフィギュレーション・ピンを推奨値の抵抗を通じて High または Low に接続。
31
…
…
コンフィギュレーション・チェインのデバイスが正しく接続されていることを確認。
32
…
…
コンフィギュレーション・チェイン内に異なる VCCIO レベルのデバイスがある場合
は、コンフィギュレーション用の入力ピンが許容電圧レベルの信号でドライブされ
ることを確認。入力信号の電圧レベルがこれらの入力ピンの許容範囲にない場合
は、レベル・シフタを使用。
33
…
…
ダウンロード・ケーブルで 4 個以上のデバイスをドライブしなければならない場
合は、ボード・コネクタでコンフィギュレーション信号をバッファ。
34
…
…
コンフィギュレーション・ピンに入る信号が 4.1 V 以上オーバーシュートしないよ
う、設定に応じて直列抵抗とバッファを使用。
35
…
…
JTAG ピンを未接続のままにしないこと。
36
…
…
使用するコンフィギュレーション手法に基づいて、 MSEL ピンを VCCA またはグラ
ンドに直接接続。
EPCS4 シリアル・コンフィギュレーション・デバイスで Cyclone III デバイスをコ
ンフィギュレーションするときには、0.15 µm プロセス・テクノロジで製造された
EPCS4 デバイスを使用。これらの EPCS4 デバイスは最大 40 MHz のクロック周
波数をサポート。
37
…
…
AP コンフィギュレーションの場合、40 MHz クロックをサポート可能な Intel P30
および P33 ファミリからフラッシュ・メモリを選択。
38
…
…
コンフィギュレーション・デバイスまたはフラッシュ・メモリの他のピンのピン接
続をチェック。
30 ページの「デザインおよびコンパイル」
Done
N/A
39
…
…
デザインの複雑さに基づいて、回路図または HDL によるデザイン・エントリのト
レードオフを検討。
40
…
…
Quartus II ソフトウェア以外に、サードパーティ EDA ツール、SOPC Builder、DSP
Builder、または IP コアによるデザインの構築を検討。
41
…
…
デザイン・エントリに HDL を使用する場合は、推奨コーディング・スタイルを使用。
42
…
…
サードパーティ合成ツールを使用してデザインを合成する場合は、Quartus II Fitter
用の合成ツールで生成されるネットリストを使用して、配置配線手順を実施。
43
…
…
同期デザインを使用。
44
…
…
組み合わせロジックの出力と入力をラッチしてグリッチを除去。
Altera Corporation
2007 年 8 月
61
Cyclone III デザイン・ガイドライン
45
…
…
46
…
…
47
…
…
48
…
…
49
…
…
50
…
…
51
…
…
52
…
…
Quartus II Pin Planner を使用してピン・アサインメントを実施。
53
…
…
Pin Planner Package View を使用して、ピン、I/O バンク、VREF グループ、および
異なるピン・ペアの位置をビジュアルに識別。
54
…
…
Pin Planner で Pin Migration View を使用して、マイグレーション・デバイス間に
存在する可能性があるピンの違いを識別。
55
…
…
56
…
…
Cyclone III シリーズの直列 On-Chip Termination 機能を I/O インピーダンス・マッ
チングに、終端を特定の I/O 規格に使用してボード・スペースを節約。
57
…
…
PLL カスケード接続に起因するクロック・ジッタをモデル化するために、クロック
の不確実性(Clock Uncertainty)アサインメントを使用。
58
…
…
59
…
…
追加抵抗なしで差動 I/O 規格を実装するために、専用の差動出力バッファを使用。
60
…
…
デザインで使用するクロック・ピンの位置に基づいて、使用したい PLL の位置を
決定するか、またはクロック・ピンに対するユーザのピン・アサインメントに基づ
いて、Quartus II ソフトウェアに自動的に PLL の位置を決定させる。
61
…
…
altpll メガファンクションおよび altpll_reconfig メガファンクションのポートを推奨
ピンに割り当てる。
62
…
…
クロックの不確実性(Clock Uncertainty)を使用して PLL モデルのジッタのタイ
ミング解析をチェック。
62
デザインのクロックに注意。クロック・ピン、グローバル・クロック・ネットワー
ク、クロック・コントロール・ブロック、および PLL をクロック信号に使用。
レジスタをクリアするためにチップ・ワイド・リセットを使用。
パワーアップ時にレジスタをHighにする必要がある場合は、レジスタのパワーアッ
プ・レベルを設定。
デザインの信頼性をチェックするために Quartus II Design Assistant を使用。
ボトムアップまたはトップダウン・デザインのコンパイル時間を短縮するためにイ
ンクリメンタル・コンパイルを使用。
Design Space Explorer、パワー・ドリブン・コンパイル、ゲート・レベル・レジ
スタのリタイミング、面積最小化の合成、Power Optimization Advisor など、さま
ざまな Quartus II ソフトウェア設定を利用して消費電力を最適化。
クロック消費電力管理、メモリ省電力化、パイプライン処理およびリタイミング、
アーキテクチャ最適化など、消費電力を最適化するデザイン手法に注意。
信号ノイズの低減またはピンからの階段状出力を防止、および信号のオーバーシュー
トまたはアンダーシュートを防止するために、出力ピンまたは双方向ピン上で正し
いドライブ強度およびスルー・レートを使用する。
送信時の高周波信号の減衰を低減するために、高周波信号にプログラマブル・プリ
エンファシスを使用。
Altera Corporation
2007 年 8 月
デザイン・チェックリスト
63
…
…
PLL デザインに対してタイミングまたは機能シミュレーションを実行して機能を
チェック。
64
…
…
コンフィギュレーション完了時に初期化をコントロールするために、 CLKUSR ピ
ンを使用。
65
…
…
コンフィギュレーション後の初期化プロセスの完了を示すために、INIT_DONE ピ
ンを使用。
66
…
…
コンフィギュレーション中にエラーが発生した場合に Cyclone III デバイスのリコ
ンフィギュレーションを強制するために、auto-restart configuration after error オプ
ションを使用。
67
…
…
68
…
…
ストレージ要件を軽減しコンフィギュレーション時間を短縮するために、Cyclone
III デバイスのコンフィギュレーションに圧縮コンフィギュレーション・ファイル
を使用。
コンフィギュレーション・データに必要なストレージ・スペース量を見積るため
に、RBF ファイルを使用。
48 ページの「検証」
Done
N/A
69
…
…
Quartus II ソフトウェアで I/O アサインメント解析を実行。Quartus II ソフトウェ
アは、制約に対する I/O パッドの位置もチェック。
70
…
…
I/O ピンで推奨仕様を超える電流をシンクまたはソースしない。Quartus II ソフト
ウェアで制限を設定することも可能。
71
…
…
タイミング解析を実行するために、TimeQuest タイミング・アナライザをクラシッ
ク・タイミング・アナライザより優先して使用。
72
…
…
フル・コンパイル実行前にタイミングの見積りが必要な場合は、Early Timing
Estimation を実行。
73
…
…
タイミング・レポートをチェックして、SU、tH、tCO、tPD、または fMAX の違反がな
いかを確認。
74
…
…
入力および出力遅延を指定するために、Quartus II アサインメントを使用。
75
…
…
データおよびクロック・スキューを指定するために、Quartus IIアサインメントを使用。
76
…
…
77
…
…
デザインでの消費電力の見積りを実行するためにPowerPlay Power Analyzerを使用。
78
…
…
Quartus II シミュレータまたは他のサードパーティ・シミュレーション・ツールを
使用してタイミングまたは機能シミュレーションを実行し、デザインが正しく動作
していることを確認。
Altera Corporation
2007 年 8 月
合成およびフィッタ設定、DSE、LogicLock によるタイミング・ドリブン・コンパ
イルなど、他の Quartus II ソフトウェア機能を性能最適化に利用。
63
Cyclone III デザイン・ガイドライン
53 ページの「デザインのデバッグ」
Done
N/A
79
…
…
80
…
…
81
…
…
82
…
…
内部または出力信号をチェックするために、SignalTap II エンベデッド・ロジック・
アナライザを使用。
既存デザインのリソースの配置および配線に影響を与えずに、内部信号を出力ピン
に配線することによって、内部信号をモニタするための SignalProbe 機能を使用。
デバッグのために入力信号をデザインに供給するために、イン・システム・ソース
およびプローブ機能を使用。
デバッグ時のコンパイル時間を短縮するためにインクリメンタル・コンパイルを使用。
55 ページの「テスト作業」
Done
N/A
83
…
…
84
…
…
ボードのピン接続をチェックするためにバウンダリ・スキャン・テストを実行。
デザインに基づいて BSDL ファイルを再生成するために、BSDLCustomizer ツール
を使用。
55 ページの「その他の検討事項」
Done
N/A
85
…
…
デバイスを取り扱う際は ESD に注意する。
86
…
…
推奨動作条件下でデバイスを動作させる。
87
…
…
64
Cyclone III デバイスの各種機能をテストするために、Cyclone III FPGA スタータ開
発キットを使用。
Altera Corporation
2007 年 8 月