第4回補足資料・レイアウト設計の進め方の例

一口にLSIレベルのレイアウト設計と言っても、色んな流儀があると思うので、こうやってやるものなんです!と定義するのは難しいです。

私がこのプロジェクトで携わったレイアウト設計を例にして、一つの例チップの概略図を見ながらをご紹介します。


最小ダイサイズ見積もり


机上で、電源を含めたI/Oをチップ4辺に仮想的に配置。これで、I/Oを隙間無く並べた、このLSI仕様における最小のダイサイズが決まります。I/Oを減らさない限りこのサイズより小さくはできません。サイズの下限を押さえておくのです。

コアエリアの面積見積もり


搭載する全てのハードマクロの面積、ソフトマクロの回路規模と同じマクロセルライブラリーを使った場合の平均的な実装密度からコアエリアの面積見積もりをします。

フロアプラン


配置配線ツールでネットリスト情報を読み込みます。そして、コアエリアの面積見積もりで出たサイズからダイサイズの仮決めをします。つまり配置配線ツールにダイサイズの数値を入力します。ダイサイズは製品の収益に関わる重要な数値なので、あくまでも設計者が自分で計算して自分で入力するべきです。

配置配線ツールでは、ネットリスト情報を読み込んだ時点で、大きさがわかっている要素は、すべて大きさを持った箱として扱うことができるようになるので、チップ上に配置するハードマクロ類等を配置していきます。

ソフトマクロに関しては、ツールが既知の回路規模から仮想的な大きさの箱を出してくれるので、それで配置します。ソフトマクロ部の形状については、縦横比の設定をしてあげることで、形状の調整がある程度できたような記憶があります。

さらに、ソフトマクロの中の特定のブロックと特定のブロックを近い場所に配置したいとか、特定の配線を短くしたいと言った配置制限もこの段階でツールにパラメーターとして与えます。

配置配線


ここまで来たら、

  1. ソフトマクロ部のブロック内の配置配線
  2. チップレベルのブロックの配置配線(I/O含む)

の順番で配置配線ツールが配置配線を実施します。配線できない、配置できないといったエラーも当たり前のように出るので、その際は配置をいじったり、最悪ダイサイズを拡大するなどして、未配線がなくなるまで調整と配置配線を繰り返します。

未配線0となった段階で配置配線工程は終了で、結線チェックのツールを走らせて、各素子、各ブロックの結線関係が論理記述とレイアウトとで一致していることを確認します。

未結線が0となっても、それはどこかとどこかがつながっている、というだけであって、結線を間違えている可能性が0ではありませんので。