ASICでは新たなアプローチが必要に
スタンダード・セル方式ASICを設計している技術者は、論理機能の設計を常に優先してきた。配置や配線といった作業は後回しだった。LSI設計は、機能設計から始まる。電子機器が備える機能を作り出すためである。
この点では、LSI設計ツールも同様である。少なくともデジタル論理LSIでは、論理的な振る舞いを扱うツールが、物理特性を扱うツールよりも上流に存在する。その良い例が論理合成ツールである。ツールの出力を改良するには、設計者は制約条件を指定することによって回路の物理特性にも配慮する必要がある。しかし、設計者がRTL記述で表現した機能と等価なブール論理が、ツールを駆動していることに変わりはない。
こういった論理設計優先のアプローチは、180nmという微細な製造技術が登場するまでは設計者を十分に満足させてきた。この時点でLSI設計ツール・ベンダーは物理合成ツールを開発し、市場に投入した。しかしこのツールは、論理合成の出力を単に操作しただけだった。現在は、物理合成ツールだけでは要求を満たせない。
130nmの製造プロセス技術を駆使したLSIの設計では、設計者は利用可能な回路面積の60%程度しか使用していないという統計がある。理論的には1億ゲートをチップに配置できる。ただし、それらのゲートを正しく接続することは極めて難しい。さらに微細な90nmプロセスでは、設計数が少ないために統計的なデータが存在していないものの、ゲート利用率について130nmプロセスよりも高い値を期待できる理由はない。実際には、ゲート利用率はさらに低くなるだろう。
設計者はすぐに、2.5億もの論理ゲートをチップに配置できるようになる。ただし電源配線とクロック配線、信号配線に合計で9層以上の金属配線層を必要とするだろう。また数1000もの入出力ピンを扱うために、フリップチップ・パッケージが広く普及することになる。
130nm以下の製造技術によるLSIの設計では、チップのプロトタイプを入手し、回路の性能に影響を与える寄生効果を実際に測定する必要がある。数多くの物理変数を考慮しなくてはならないので、相互接続の取り扱いは極めて難しくなる。設計者は2つ以上の論理セルを接続する信号配線の動特性を扱わなければならない。また、数種類の製造技術を扱う必要がある。
それにもかかわらず、設計者が半導体ベンダーから入手できるライブラリーは論理セルしかない。増え続ける複雑なルール・セットに従いつつ、その場その場でセル同士を接続する必要がある。
こうなると設計者はシステム・レベルの設計段階でも、問題解決作業に取り組まねばならない。現在は設計工程の中で、検証作業が大きな時間と負担を占めている。しかし間もなく、配置と配線が設計工程で最もコストのかかる工程となるだろう。
相互接続をセル化する
ただし、アプローチは1つではない。さまざまなアプローチを試せるだけの十分な回路面積がチップには存在している。例えば不規則な構造よりも、規則的な構造を作成する方が容易である。メモリーLSIとPLD(プログラマブル・ロジック・デバイス)はその代表だ。
そこで半導体ベンダーは、可能な限り規則的な構造に近づけたASICを開発すべきである。チップに未使用領域を作成して設計者に利用させるのではなく、グリッド領域を作成して設計者に利用させる。グリッド領域は、チップのどの位置に機能ブロックを配置し、どのようにして機能ブロックを相互接続するかを定める。機能だけでなく、相互接続もブロック化し、セル・ライブラリーとして入手できるようにするのだ。
こうなると半導体ベンダーは、平行配線のセルや、さまざまな配線長の相互接続セルなどを用意するかもしれない。バスのセルでは、配線ピッチが異なる複数のセルが登場しよう。電源分配グリッドやクロック分配グリッド、信号分配グリッドがマトリクス状に配置され、チップをFPGAに似た規則的な構造に変える。
こういったアーキテクチャーだと設計者は、プラットフォーム設計を修正して適用できる。機能ユニットをいくつかのブロックに集約し、ブロックを集めてプラットフォームを形成する。それから固定されたグリッドを利用して、設計者はブロックを動的に移動させつつレイアウトしていく。
相互接続は、相互接続セルを使うことによってのみ、実現できる。このため物理合成ツールは、セル・ライブラリーが定義した相互接続ルールを自動的に順守することになる。プロセス・ルールは、隣接する相互接続セル間の間隔を強制的に確保することによって、信号配線間の干渉を避ける。
ブロックの配置場所は、相互接続の要求仕様と利用可能な各種の分配グリッドによって決まる。すべての配置は、利用可能な相互接続グリッドの集合を形成する。その集合は大きな領域となるものの、大きさは有限である。カスタムの相互接続が存在していないからだ。最終的な回路は通常、チップの利用可能な回路領域よりもはるかに小さな面積となる。従って相互接続の制約条件は問題とならない。
この方式が実用化されれば、電子機器の開発工程ではシステム・レベル設計の重要性が高まるだろう。半導体ベンダーは、アーキテクチャー・レベルの相互接続ライブラリーを用意しなければならない。このライブラリーは電源や遅延時間などの要件を備えており、ゲート・レベルで利用できる。設計者は、トランザクション・ベースのシミュレーターを使い、設計工程の早い段階でチップのタイミングを評価できるようになる。そしてブロック間の接続ごとに、遅延時間や消費電力を割り当てる。一方でブロック内の信号伝送には、固定の遅延時間を使用する。
回路ブロックのビヘイビア・モデルと各接続の伝搬遅延時間をLSIのアーキテクチャー設計に利用することで、時間領域での振る舞いを全体的に把握できるようになる。シミュレーションの実行時間は既存の方式よりも短くて済む。また、既存のシミュレーション言語を使って実行できる。
アーキテクチャー設計が重要に
今回の新しいアプローチを使用すると、アーキテクチャー・レベルの設計における相互接続が重要になる。アーキテクチャー設計者が機能をグループ化したり、ブロックの配置を修正したりすることによって、回路設計に影響を与えるからだ。
新しいアプローチを利用すれば、アーキテクチャーの選択がチップの機能に与える影響を設計者にフィードバックできる。従ってアーキテクチャー・レベルで配置配線問題に対処できるようになるだろう。高位レベルの配線モデルを利用すれば、論理設計の前段階で、2次的な寄生効果を取り除ける。
アーキテクチャー・レベルでの決定を早期に解析できれば、コストのかかる再設計を減らせる。設計がRTLの段階に進んでしまったり、さらに悪いことにはゲート・レベルになって問題が大きくなりすぎて管理できなくなったりという事態を回避できる。
|
| ▲本文へ戻る |