連載
» 2007年11月30日 00時00分 公開

FPGAの動作スピードを改善するポイントとは?FPGA開発テクニック、チューニングの心得(4)(2/2 ページ)

[島田順二(アルティマ),@IT MONOist]
前のページへ 1|2       

 それでは、「Chip Planner」と「Technology Map Viewer」で、実際に配置を確認してみましょう。

 まずは、「Chip Planner」です。「Chip Planner」は、デバイスの構成要素(ロジック・エレメント、メモリ、DSPブロック、I/Oピンなど)の使用状況を視覚的に確認できる機能です。「Chip Planner」を起動すると、1本の線が引かれ、その間に数字が表示されている図12のような画面が表示されます。これは選択したパスの前段のDFF(図1のDFF1)から後段のDFF(図1のDFF2)の配置位置と、その遅延値を表示しています(選択したパスにより、表示形式は異なります)。



図12 Chip Plannerの画面

 Chip Plannerにより、デバイスのどの辺りに配置されているのか? また配置されているDFF間の距離はどの程度なのか? を視覚的に確認できます。

 続いて、「Technology Map Viewer」で確認してみましょう。

 「Technology Map Viewer」は、選択したパスが作成した論理回路のどのような論理ブロックを経て接続されているのかを視覚的に確認する機能です。「Technology Map Viewer」を起動すると、いくつかの緑色の枠で囲まれた論理ブロックと赤く選択されたブロック(これが選択したパス)が表示されます(図13)

図13 Technology Map Viewerの画面 (画像をクリックすると拡大します)

 緑色の枠の数が多いほど、“深い論理回路の構成をしている”ことが分かります。

 以上のようにTimeQuestを用いることによって、タイミング検証によるパスの遅延値の確認や「Chip Planner」「Technology Map Viewer」などで検証パスの配置状況を視覚的に確認できます。

 では、これら検証パスの状況が分かったところで、どのような改善策を施せばよいのかを実際に見ていきましょう。

動作スピード改善の第一歩

 ここまでいろいろな検証項目を確認してきましたが、動作スピードを改善する第一歩として、最初に設定していただきたい項目があります。それは、「Optimization Technique」の設定です。

 この設定は、Quartus IIのメニューから[Assignment]−[Settings]−[Analysis & Synthesis Settings]で行えます(図14)

図14 「Optimization Technique」の画面

 「Optimization Technique」は、全体の論理回路をどのような優先順位で論理合成するのかを「Speed」「Balanced」「Area」の3種類から選択します。

 それぞれの設定の特長は以下のとおりです。

  • Speed:回路のスピードを優先した論理合成。ロジック・リソース使用量が増加する傾向にある
  • Balanced:「Speed」と「Area」のどちらもバランスよく満たすデフォルト設定
  • Area:チップ面積最小化の論理合成(面積最適化)を行う。面積最適化によりスピードが改善される可能性もある

 動作スピードを改善したい場合は、「Speed」を選択してください。

 スピードの改善具合は回路の構成により変化しますので大きく改善される場合もありますし、そうでない場合もあります(注)

:この設定を施すと、スピードを必要としない回路を含め、回路全体に対してQuartus IIは配置を工夫しながら満遍なくスピードを上げようとします。

 この設定により、要求しているスピードを満たせばよいのですが、満たさなかった場合は個別の動作スピード設定が必要となります。

 今回は、同期パスを例にタイミング検証の基本的な考えと「TimeQuest」を中心としたQuartsu IIによる確認方法を紹介しました。次回は引き続き「動作スピードを改善するポイントは?」をテーマに、“個別の動作スピードの設定”について詳しく解説します。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.