JPH081948B2 - 半導体集積回路の製造方法 - Google Patents
半導体集積回路の製造方法Info
- Publication number
- JPH081948B2 JPH081948B2 JP5047237A JP4723793A JPH081948B2 JP H081948 B2 JPH081948 B2 JP H081948B2 JP 5047237 A JP5047237 A JP 5047237A JP 4723793 A JP4723793 A JP 4723793A JP H081948 B2 JPH081948 B2 JP H081948B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- wiring
- pattern
- macro
- symbols
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【0001】
【産業上の利用分野】本発明は、半導体集積回路の製造
方法に関し、特に複数の基本論理ブロックから構成され
るマクロブロックを用いる半導体集積回路の製造方法に
関する。
方法に関し、特に複数の基本論理ブロックから構成され
るマクロブロックを用いる半導体集積回路の製造方法に
関する。
【0002】
【従来の技術】半導体集積回路を設計する際の手法の1
つとしてゲートアレイ法が知られている。これは、汎用
性のある機能ブロックを予めマクロブロックとして登録
しておき、回路設計者が半導体集積回路の設計に当たっ
て必要とするマクロブロックを呼び出しそれらを組み合
わせて回路を構成する方式である。この手法を用いるこ
とにより、設計が効率的に行えるようになり、また基本
論理ブロックレベルで設計する場合に比べて設計ミスを
大幅に削減することができる。
つとしてゲートアレイ法が知られている。これは、汎用
性のある機能ブロックを予めマクロブロックとして登録
しておき、回路設計者が半導体集積回路の設計に当たっ
て必要とするマクロブロックを呼び出しそれらを組み合
わせて回路を構成する方式である。この手法を用いるこ
とにより、設計が効率的に行えるようになり、また基本
論理ブロックレベルで設計する場合に比べて設計ミスを
大幅に削減することができる。
【0003】マクロブロックとしては、レイアウト設計
まで行われスイッチング特性や負荷特性等の基本特性が
用意されているハードマクロと、論理機能が定義されて
いるのみでレイアウトは回路設計終了後にコンピュータ
にて行うソフトマクロとが知られている。従来、ハード
マクロは、入出力バッファのような小規模で汎用性の高
いブロックのみに適用され、中、大規模の論理回路はソ
フトマクロとして提供されることが多かったが、半導体
集積回路の大規模化につれ最近では中、大規模の論理回
路をもハードマクロ化する傾向が強まってきている。
まで行われスイッチング特性や負荷特性等の基本特性が
用意されているハードマクロと、論理機能が定義されて
いるのみでレイアウトは回路設計終了後にコンピュータ
にて行うソフトマクロとが知られている。従来、ハード
マクロは、入出力バッファのような小規模で汎用性の高
いブロックのみに適用され、中、大規模の論理回路はソ
フトマクロとして提供されることが多かったが、半導体
集積回路の大規模化につれ最近では中、大規模の論理回
路をもハードマクロ化する傾向が強まってきている。
【0004】図11は、ソフトマクロ化されたブロック
を用いて設計しようとしている回路のブロック図であ
る。201〜206は回路の入力端子、207〜210
は回路の出力端子、220および221はマクロブロッ
ク、222は基本論理ブロック、230〜235はマク
ロブロックの入力端子、240〜245はマクロブロッ
クの出力端子である。図12は、図11におけるマクロ
ブロック220および221の構成を示すブロック図で
ある。図12において、250〜252は入力端子、2
60〜262は出力端子、270〜275は基本論理ブ
ロックである。
を用いて設計しようとしている回路のブロック図であ
る。201〜206は回路の入力端子、207〜210
は回路の出力端子、220および221はマクロブロッ
ク、222は基本論理ブロック、230〜235はマク
ロブロックの入力端子、240〜245はマクロブロッ
クの出力端子である。図12は、図11におけるマクロ
ブロック220および221の構成を示すブロック図で
ある。図12において、250〜252は入力端子、2
60〜262は出力端子、270〜275は基本論理ブ
ロックである。
【0005】ここで、図11に示すようにマクロブロッ
ク221の出力端子245が不使用となった場合、つま
り図12における出力端子262が不使用となった場
合、出力端子262に接続されている基本論理ゲート2
73の出力端子が不使用となるので、これを削除し、さ
らにこの結果基本論理ゲート274の出力端子が不使用
となるのでこれを削除する。そしてこの結果からネット
リストを再構成し、レイアウト設計を行う。このよう
に、ソフトマクロ化されたマクロブロックでは、ブロッ
ク内の回路を固定することなく、回路設計後にマクロブ
ロック内の不要な基本論理ゲートを削除して全体回路を
再構成するようにすることにより、類似のマクロブロッ
クの回路を共通化し、端子の使用状況に応じて回路の部
分的利用を実行するようにして、予めライブラリに登録
しておくマクロブロックの種類を削減することが行われ
ている(例えば、特開昭59−61944号公報)。
ク221の出力端子245が不使用となった場合、つま
り図12における出力端子262が不使用となった場
合、出力端子262に接続されている基本論理ゲート2
73の出力端子が不使用となるので、これを削除し、さ
らにこの結果基本論理ゲート274の出力端子が不使用
となるのでこれを削除する。そしてこの結果からネット
リストを再構成し、レイアウト設計を行う。このよう
に、ソフトマクロ化されたマクロブロックでは、ブロッ
ク内の回路を固定することなく、回路設計後にマクロブ
ロック内の不要な基本論理ゲートを削除して全体回路を
再構成するようにすることにより、類似のマクロブロッ
クの回路を共通化し、端子の使用状況に応じて回路の部
分的利用を実行するようにして、予めライブラリに登録
しておくマクロブロックの種類を削減することが行われ
ている(例えば、特開昭59−61944号公報)。
【0006】
【発明が解決しようとする課題】上述した従来の製造方
法では、ネットリストの段階で端子の使用状況に応じて
マクロブロック内回路の不要ブロックを削除し、その結
果からネットリストを再構成し、ここで作成されたネッ
トリストを基にレイアウト設計を行っていたが、レイア
ウト設計では、例えば最適な形状を決定したり、あるい
はマクロブロックの入出力端子に直接接続される構成ブ
ロックをマクロブロックの辺に近い場所に強制配置した
りするレイアウト上の工夫が必要である。また、半導体
集積回路の高速化に伴って回路内の遅延を考慮して設計
する必要があり、特に配線による遅延が無視できないた
め、クリティカルパスについては配線遅延まで考慮して
配置・配線を行わなければならない。
法では、ネットリストの段階で端子の使用状況に応じて
マクロブロック内回路の不要ブロックを削除し、その結
果からネットリストを再構成し、ここで作成されたネッ
トリストを基にレイアウト設計を行っていたが、レイア
ウト設計では、例えば最適な形状を決定したり、あるい
はマクロブロックの入出力端子に直接接続される構成ブ
ロックをマクロブロックの辺に近い場所に強制配置した
りするレイアウト上の工夫が必要である。また、半導体
集積回路の高速化に伴って回路内の遅延を考慮して設計
する必要があり、特に配線による遅延が無視できないた
め、クリティカルパスについては配線遅延まで考慮して
配置・配線を行わなければならない。
【0007】ところが、従来の製造方法では、マクロブ
ロックの中身を展開してからレイアウトを行うので、マ
クロブロックの構成ブロックがまとまって配置されると
は限らず、またマクロ内での遅延やタイミングをブロッ
ク内のみに限定して考慮することが不可能で、回路全体
の中で他の回路との関連において考慮することが必要と
なるため、回路設計段階ではマクロブロックの伝達遅延
時間が未確定のままであり、タイミング設計が困難とな
る。そのため、回路全体の遅延についてのレイアウト前
の見積もりの誤差が大きくなり、場合によってはレイア
ウトをやり直さなければならないことも起こる。従っ
て、従来例におけるレイアウト工程は、満足する結果を
得るまでには非常に多くの工数を要するものであった。
ロックの中身を展開してからレイアウトを行うので、マ
クロブロックの構成ブロックがまとまって配置されると
は限らず、またマクロ内での遅延やタイミングをブロッ
ク内のみに限定して考慮することが不可能で、回路全体
の中で他の回路との関連において考慮することが必要と
なるため、回路設計段階ではマクロブロックの伝達遅延
時間が未確定のままであり、タイミング設計が困難とな
る。そのため、回路全体の遅延についてのレイアウト前
の見積もりの誤差が大きくなり、場合によってはレイア
ウトをやり直さなければならないことも起こる。従っ
て、従来例におけるレイアウト工程は、満足する結果を
得るまでには非常に多くの工数を要するものであった。
【0008】ここで、上記問題点を例を挙げてより具体
的に説明する。図12において、ブロック270および
271はラッチ、端子280、282は信号入力端子、
端子281、283はクロック入力端子、ネット29
0、291はデータ信号線、ネット292、293はク
ロック信号線とする。このマクロブロックは、展開され
た後にレイアウトされるのでブロック270、271は
必ずしも近傍に配置されるとは限らない。そのため例え
ば端子251から端子281までの配線長に比べて端子
250から端子280までの配線長が非常に大きくなる
こともあり、この場合ブロック270はデータを正しく
ラッチできない可能性がある。同様のことはブロック2
71にも起こり得るが、これらの状況はブロック27
0、271間の距離やネット290、291、292の
配線長によって異なってくる。つまり、回路設計段階で
はこのマクロブロックが正しく動作する保障はなく、レ
イアウトが完了してみなければその判断もできない。レ
イアウト後に動作しないことが判明した場合には再びレ
イアウトをやり直す必要が生じ、この場合工数も大幅に
増大する。
的に説明する。図12において、ブロック270および
271はラッチ、端子280、282は信号入力端子、
端子281、283はクロック入力端子、ネット29
0、291はデータ信号線、ネット292、293はク
ロック信号線とする。このマクロブロックは、展開され
た後にレイアウトされるのでブロック270、271は
必ずしも近傍に配置されるとは限らない。そのため例え
ば端子251から端子281までの配線長に比べて端子
250から端子280までの配線長が非常に大きくなる
こともあり、この場合ブロック270はデータを正しく
ラッチできない可能性がある。同様のことはブロック2
71にも起こり得るが、これらの状況はブロック27
0、271間の距離やネット290、291、292の
配線長によって異なってくる。つまり、回路設計段階で
はこのマクロブロックが正しく動作する保障はなく、レ
イアウトが完了してみなければその判断もできない。レ
イアウト後に動作しないことが判明した場合には再びレ
イアウトをやり直す必要が生じ、この場合工数も大幅に
増大する。
【0009】一方、レイアウト設計まで完了した後に回
路設計に使用される、ハードマクロ化されたブロックで
は、ブロック内部の遅延が考慮された設計が予め施され
ており、例えばネット290、291、292の配線長
のばらつきが少なくするような工夫が予めなされてい
る。しかもレイアウトまで完了しているため、遅延を含
めたマクロの特性が明確になされており、仕様に従って
回路設計を行う限りマクロブロック部分の動作は保障さ
れている。
路設計に使用される、ハードマクロ化されたブロックで
は、ブロック内部の遅延が考慮された設計が予め施され
ており、例えばネット290、291、292の配線長
のばらつきが少なくするような工夫が予めなされてい
る。しかもレイアウトまで完了しているため、遅延を含
めたマクロの特性が明確になされており、仕様に従って
回路設計を行う限りマクロブロック部分の動作は保障さ
れている。
【0010】しかしながら、従来のハードマクロでは、
不使用端子の有無に係わらずのレイアウトパターンは同
一であり、例えばマクロブロックのある端子が不使用と
なり、その結果マクロブロック内のある構成ブロック
(基本論理ブロック)が不要になったとしても、その構
成ブロック部分のレイアウトパターンはそのまま残され
ていた。そのため、マクロブロックの機能の一部しか利
用していない場合であっても、そのマクロブロックを使
用した上位マクロのレイアウト設計を行う際に、そのマ
クロブロック上を通過する配線の配線性が向上すること
はない。また、使用しない配線、構成ブロックのために
他の回路の浮遊容量が増加して高速動作が阻害されると
いう問題点があり、さらに不要ブロックも相変わらず動
作しているのでその分無駄に電力を消費していた。
不使用端子の有無に係わらずのレイアウトパターンは同
一であり、例えばマクロブロックのある端子が不使用と
なり、その結果マクロブロック内のある構成ブロック
(基本論理ブロック)が不要になったとしても、その構
成ブロック部分のレイアウトパターンはそのまま残され
ていた。そのため、マクロブロックの機能の一部しか利
用していない場合であっても、そのマクロブロックを使
用した上位マクロのレイアウト設計を行う際に、そのマ
クロブロック上を通過する配線の配線性が向上すること
はない。また、使用しない配線、構成ブロックのために
他の回路の浮遊容量が増加して高速動作が阻害されると
いう問題点があり、さらに不要ブロックも相変わらず動
作しているのでその分無駄に電力を消費していた。
【0011】よって、本発明の目的とするところは、第
1に、ソフトマクロから不要となったブロックを削除す
ることによって生じる上述の不都合を回避することであ
り、第2に、ハードマクロから不要ブロックを削除する
ようにし、もって、設計・評価が容易で、高速性に優
れ、かつ低消費電力の半導体集積回路を実現できる製造
方法を提供することである。
1に、ソフトマクロから不要となったブロックを削除す
ることによって生じる上述の不都合を回避することであ
り、第2に、ハードマクロから不要ブロックを削除する
ようにし、もって、設計・評価が容易で、高速性に優
れ、かつ低消費電力の半導体集積回路を実現できる製造
方法を提供することである。
【0012】
【課題を解決するための手段】上述の目的を達成するた
め、本発明によれば、複数の構成ブロック(基本論理ブ
ロック)を有しレイアウトパターンの確定しているマク
ロブロックを用いて回路を構成し、その結果不使用とな
るマクロブロックの出力端子を抽出し、不使用となった
出力端子とのみ関連する配線線分および構成ブロックの
パターンをマクロブロックから削除し、残された配線お
よび構成ブロックのパターンを有するマクロブロックを
用いて回路を作成することを特徴とする半導体集積回路
の製造方法が提供される。
め、本発明によれば、複数の構成ブロック(基本論理ブ
ロック)を有しレイアウトパターンの確定しているマク
ロブロックを用いて回路を構成し、その結果不使用とな
るマクロブロックの出力端子を抽出し、不使用となった
出力端子とのみ関連する配線線分および構成ブロックの
パターンをマクロブロックから削除し、残された配線お
よび構成ブロックのパターンを有するマクロブロックを
用いて回路を作成することを特徴とする半導体集積回路
の製造方法が提供される。
【0013】配線線分および構成ブロックのパターンを
マクロブロックから削除するより具体的手段は、不使用
となった出力端子と連なる配線のうち不使用となる部分
のパターンを除去し、出力端子の全てが不使用となった
配線パターンに接続されている構成ブロックのパターン
を削除し、この削除の結果さらに不必要となる配線パタ
ーンを削除し、以下同様の過程を削除するパターンがな
くなるまで繰り返すことであり、また、配線を分岐点で
分割される配線線分に分け、マクロブロックの出力端子
にそれぞれ異なる記号を付与し、出力端子に連なる配線
線分には出力端子の有する記号を付与し、構成ブロック
には該ブロックの出力端子に連なる配線線分の持つ記号
をすべて付与し、構成ブロックの入力端子に連なる配線
線分には該構成ブロックの持つ記号を付与し、分岐点に
おいては入力側配線線分には出力側配線線分の持つ記号
をすべて付与して、すべての配線線分および構成ブロッ
クに記号を付与した後、不使用となった出力端子に付与
された記号のみを持つ配線線分および構成ブロックのパ
ターンを削除することによって達成される。
マクロブロックから削除するより具体的手段は、不使用
となった出力端子と連なる配線のうち不使用となる部分
のパターンを除去し、出力端子の全てが不使用となった
配線パターンに接続されている構成ブロックのパターン
を削除し、この削除の結果さらに不必要となる配線パタ
ーンを削除し、以下同様の過程を削除するパターンがな
くなるまで繰り返すことであり、また、配線を分岐点で
分割される配線線分に分け、マクロブロックの出力端子
にそれぞれ異なる記号を付与し、出力端子に連なる配線
線分には出力端子の有する記号を付与し、構成ブロック
には該ブロックの出力端子に連なる配線線分の持つ記号
をすべて付与し、構成ブロックの入力端子に連なる配線
線分には該構成ブロックの持つ記号を付与し、分岐点に
おいては入力側配線線分には出力側配線線分の持つ記号
をすべて付与して、すべての配線線分および構成ブロッ
クに記号を付与した後、不使用となった出力端子に付与
された記号のみを持つ配線線分および構成ブロックのパ
ターンを削除することによって達成される。
【0014】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1は、本発明の実施例で対象とするハー
ドマクロ化されたマクロブロックのブロック図である。
同図において、1はマクロブロック、2〜6は、マクロ
ブロック1を構成する構成ブロックであって、それぞれ
基本論理ブロックで構成されている。10〜12は、マ
クロブロック1の入力端子、13〜17は、マクロブロ
ック1の出力端子、20〜28は、マクロブロック1内
で構成ブロック間を接続するネット、30〜33は配線
線分の分岐点、40〜43、47〜50は、構成ブロッ
クの入力端子、44〜46、51〜53は、構成ブロッ
クの出力端子である。
て説明する。図1は、本発明の実施例で対象とするハー
ドマクロ化されたマクロブロックのブロック図である。
同図において、1はマクロブロック、2〜6は、マクロ
ブロック1を構成する構成ブロックであって、それぞれ
基本論理ブロックで構成されている。10〜12は、マ
クロブロック1の入力端子、13〜17は、マクロブロ
ック1の出力端子、20〜28は、マクロブロック1内
で構成ブロック間を接続するネット、30〜33は配線
線分の分岐点、40〜43、47〜50は、構成ブロッ
クの入力端子、44〜46、51〜53は、構成ブロッ
クの出力端子である。
【0015】本発明の第1の実施例を説明するために、
マクロブロック1を使用して回路設計を行った結果、出
力端子13、14が不使用となったものとする。この場
合、まず、出力端子13に接続されたネット21の内出
力端子13と分岐点32との間の部分と、出力端子14
に接続されたネット26を削除する。次に、ネット26
が削除されたことにより出力端子がすべて不使用となっ
た構成ブロック4を削除する。次に、構成ブロック4が
削除されたことにより不要となった、ネット21内の構
成ブロック4と分岐点31との間の部分を削除する。以
上の処理の結果を図2に示す。
マクロブロック1を使用して回路設計を行った結果、出
力端子13、14が不使用となったものとする。この場
合、まず、出力端子13に接続されたネット21の内出
力端子13と分岐点32との間の部分と、出力端子14
に接続されたネット26を削除する。次に、ネット26
が削除されたことにより出力端子がすべて不使用となっ
た構成ブロック4を削除する。次に、構成ブロック4が
削除されたことにより不要となった、ネット21内の構
成ブロック4と分岐点31との間の部分を削除する。以
上の処理の結果を図2に示す。
【0016】以上のように、本発明に従って、ネット
の、不使用となった出力端子とのみ関係する部分、およ
び出力端子のすべてが不使用となった出力端子とのみ関
係している構成ブロックを削除したことにより以下の効
果を享受することができる。 ネット21の容量は、削除された配線線分の容量と、
構成ブロック4の入力端子47の入力容量との和の分だ
け少なくなっている。ネットの端子間の信号伝搬速度
は、容量が小さければそれだけ速くなるので、信号が出
力端子44から入力端子48に到達する時間は、パター
ンを削除する前に比べて短縮される。すなわち、本発明
により、回路の高速化を実現することができ、また各構
成ブロックの動作上のタイミングや遅延のマージンを大
きくすることができ、回路動作の信頼性の向上を図るこ
とができる。
の、不使用となった出力端子とのみ関係する部分、およ
び出力端子のすべてが不使用となった出力端子とのみ関
係している構成ブロックを削除したことにより以下の効
果を享受することができる。 ネット21の容量は、削除された配線線分の容量と、
構成ブロック4の入力端子47の入力容量との和の分だ
け少なくなっている。ネットの端子間の信号伝搬速度
は、容量が小さければそれだけ速くなるので、信号が出
力端子44から入力端子48に到達する時間は、パター
ンを削除する前に比べて短縮される。すなわち、本発明
により、回路の高速化を実現することができ、また各構
成ブロックの動作上のタイミングや遅延のマージンを大
きくすることができ、回路動作の信頼性の向上を図るこ
とができる。
【0017】構成ブロック4を削除したことにより、
消費電力の低減化を図ることができる。 不要パターンの削除されたマクロブロックを使って上
位マクロのレイアウトを設計する場合に、このマクロ上
を通過する配線の配線性を向上させることができる。ま
た、マクロブロック内の配線とマクロ上の配線との間の
容量を削減することができる。 総パターン数が削減されたことにより、製造上の信頼
性の向上も図ることができる。
消費電力の低減化を図ることができる。 不要パターンの削除されたマクロブロックを使って上
位マクロのレイアウトを設計する場合に、このマクロ上
を通過する配線の配線性を向上させることができる。ま
た、マクロブロック内の配線とマクロ上の配線との間の
容量を削減することができる。 総パターン数が削減されたことにより、製造上の信頼
性の向上も図ることができる。
【0018】なお、パターン削減処理後のマクロブロッ
クの特性評価については、削除されずに残った配線パタ
ーンの情報を使って配線長を含めた遅延計算を行うこと
により容易に実行することができる。また、このマクロ
ブロックをライブラリに登録する場合、各配線とライブ
ラリ中の禁止情報との対応関係を予め付けておけば、削
除した配線に対応する禁止情報をライブラリから削除す
ることにより新登録データを容易に再作成することがで
きる。なお、半導体集積回路がゲートアレイタイプの場
合、この削除された構成ブロック部分は空きセルとな
り、このマクロブロックを使った上位ブロックのレイア
ウト設計において他のブロックが使用するかあるいは使
用されずの残ることになる。使用されずに残った場合、
そこに使用されない下地のトランジスタが残ることにな
るので、ラッチアップ耐性を高めるために、不使用トラ
ンジスタの入力クランプの処理を追加することが望まし
い。
クの特性評価については、削除されずに残った配線パタ
ーンの情報を使って配線長を含めた遅延計算を行うこと
により容易に実行することができる。また、このマクロ
ブロックをライブラリに登録する場合、各配線とライブ
ラリ中の禁止情報との対応関係を予め付けておけば、削
除した配線に対応する禁止情報をライブラリから削除す
ることにより新登録データを容易に再作成することがで
きる。なお、半導体集積回路がゲートアレイタイプの場
合、この削除された構成ブロック部分は空きセルとな
り、このマクロブロックを使った上位ブロックのレイア
ウト設計において他のブロックが使用するかあるいは使
用されずの残ることになる。使用されずに残った場合、
そこに使用されない下地のトランジスタが残ることにな
るので、ラッチアップ耐性を高めるために、不使用トラ
ンジスタの入力クランプの処理を追加することが望まし
い。
【0019】次に、図3乃至図7を参照して本発明の第
2の実施例について説明する。図3は、本実施例を実施
するための前処理の結果、図4、図5、図6は、本実施
例を実施した結果の例、図7は、本実施例によるチップ
の設計手順を示す流れ図である。
2の実施例について説明する。図3は、本実施例を実施
するための前処理の結果、図4、図5、図6は、本実施
例を実施した結果の例、図7は、本実施例によるチップ
の設計手順を示す流れ図である。
【0020】図1に示すようなハードマクロ化されたマ
クロブロックのレイアウトがある場合、まず各ネットの
配線データを配線の分岐点で分割する。例えば、ネット
20には配線分岐点30があるのでデータをここで分割
し、端子11〜分岐点30、分岐点30〜端子41、分
岐点30〜端子43の3つに分けて保持する。同様に、
ネット21には分岐点31、32があるので端子13〜
分岐点32、分岐点32〜端子48、分岐点32〜分岐
点31、分岐点31〜端子44、分岐点31〜端子47
の5つのデータに分割し、ネット24には分岐点33が
あるので、端子45〜分岐点33、分岐点33〜端子5
0、分岐点33〜端子17の3つのデータに分割し、そ
れぞれ保持する。
クロブロックのレイアウトがある場合、まず各ネットの
配線データを配線の分岐点で分割する。例えば、ネット
20には配線分岐点30があるのでデータをここで分割
し、端子11〜分岐点30、分岐点30〜端子41、分
岐点30〜端子43の3つに分けて保持する。同様に、
ネット21には分岐点31、32があるので端子13〜
分岐点32、分岐点32〜端子48、分岐点32〜分岐
点31、分岐点31〜端子44、分岐点31〜端子47
の5つのデータに分割し、ネット24には分岐点33が
あるので、端子45〜分岐点33、分岐点33〜端子5
0、分岐点33〜端子17の3つのデータに分割し、そ
れぞれ保持する。
【0021】次に、各出力端子に一意に定まる記号を付
与する。例えば、端子13〜17に対してa〜eの記号
を付ける。次に、以下の規則にしたがって出力端子から
信号の入力側に向かって順に配線および構成ブロックに
記号を付与していく。 (1)記号は上で分割した配線線分毎に付与する。 (2)出力端子に与えられた記号は、そこに接続された
配線線分にそのまま伝えてこれに同じ記号を付与する。 (3)分岐点に対してそれより入力側にある配線線分に
は、分岐点より出力側にある配線線分に付与された記号
の論理和となる記号の組を付与する。 (4)構成ブロックには、その出力端子に接続された配
線線分に付与された記号の論理和となる記号の組を付与
する。 (5)構成ブロックの入力端子に接続された配線線分に
は、構成ブロックに付与された記号を付与する。 ここで記号の組は、例えば(a、b)のように表すもの
とする。また、例えば(a、b)と(b、c)との論理
和は(a、b、c)となる。このように記号を付与した
結果を図3に示す。
与する。例えば、端子13〜17に対してa〜eの記号
を付ける。次に、以下の規則にしたがって出力端子から
信号の入力側に向かって順に配線および構成ブロックに
記号を付与していく。 (1)記号は上で分割した配線線分毎に付与する。 (2)出力端子に与えられた記号は、そこに接続された
配線線分にそのまま伝えてこれに同じ記号を付与する。 (3)分岐点に対してそれより入力側にある配線線分に
は、分岐点より出力側にある配線線分に付与された記号
の論理和となる記号の組を付与する。 (4)構成ブロックには、その出力端子に接続された配
線線分に付与された記号の論理和となる記号の組を付与
する。 (5)構成ブロックの入力端子に接続された配線線分に
は、構成ブロックに付与された記号を付与する。 ここで記号の組は、例えば(a、b)のように表すもの
とする。また、例えば(a、b)と(b、c)との論理
和は(a、b、c)となる。このように記号を付与した
結果を図3に示す。
【0022】次に、不使用端子の組Uを求める。例えば
不使用端子がa、bの場合、U=(a、b)である。こ
こで上で各配線線分・構成ブロックに付与した記号Uと
比較し、記号あるいはその組がUに包含される配線線
分、構成ブロックを削除する。これにより、不使用端子
に接続されたパターンの内不要な部分をすべて削除する
ことができる。
不使用端子がa、bの場合、U=(a、b)である。こ
こで上で各配線線分・構成ブロックに付与した記号Uと
比較し、記号あるいはその組がUに包含される配線線
分、構成ブロックを削除する。これにより、不使用端子
に接続されたパターンの内不要な部分をすべて削除する
ことができる。
【0023】U=(a、b)として処理した結果を図4
に、U=(d)として処理した結果を図5に、また、U
=(a、c)として処理した結果を図6に示す。U=
(a、b)の場合、記号a、b、記号の組(a、b)が
付与されたものがこれに含まれるので、記号aが付与さ
れた出力端子13〜分岐点32間の配線線分、記号bが
付与された入力端子47〜分岐点31間の配線線分、お
よび記号bの付与された構成ブロック4を削除する。
に、U=(d)として処理した結果を図5に、また、U
=(a、c)として処理した結果を図6に示す。U=
(a、b)の場合、記号a、b、記号の組(a、b)が
付与されたものがこれに含まれるので、記号aが付与さ
れた出力端子13〜分岐点32間の配線線分、記号bが
付与された入力端子47〜分岐点31間の配線線分、お
よび記号bの付与された構成ブロック4を削除する。
【0024】以上のような処理を行って半導体集積回路
チップの回路設計を行う場合の手順を図7に示す。回路
図作成後、回路に含まれるマクロブロックの未使用端子
を抽出する。次いで、この情報から上述のパターン削除
処理を行う。なお、図3に示すように記号を付加すると
ころまでは予め回路設計前に行っておくことができる。
次に、処理の結果を基にマクロブロックの伝達遅延値の
再計算を行い、さらにレイアウトライブラリへの登録デ
ータの再作成を行う。次に、求めた伝達遅延値を基にレ
イアウト前の検証を行い、問題がなければレイアウトを
実行する。
チップの回路設計を行う場合の手順を図7に示す。回路
図作成後、回路に含まれるマクロブロックの未使用端子
を抽出する。次いで、この情報から上述のパターン削除
処理を行う。なお、図3に示すように記号を付加すると
ころまでは予め回路設計前に行っておくことができる。
次に、処理の結果を基にマクロブロックの伝達遅延値の
再計算を行い、さらにレイアウトライブラリへの登録デ
ータの再作成を行う。次に、求めた伝達遅延値を基にレ
イアウト前の検証を行い、問題がなければレイアウトを
実行する。
【0025】第2の実施例で行ったように、マクロブロ
ックの出力端子のそれぞれに特有の記号を付与し、マク
ロブロック内の配線線分および基本論理ブロックに上記
の規則に従って記号を付与しておくと、マクロブロック
内の状況が明らかとなり、マクロブロックの管理が容易
となる。また、この記号を予め付与して保持しておくこ
とにより、このマクロブロックを使って他の回路を設計
する場合に、配線線分、基本論理ブロックの削除作業を
速やかに実行できるようになるため、回路設計の期間を
短縮することができるようになる。
ックの出力端子のそれぞれに特有の記号を付与し、マク
ロブロック内の配線線分および基本論理ブロックに上記
の規則に従って記号を付与しておくと、マクロブロック
内の状況が明らかとなり、マクロブロックの管理が容易
となる。また、この記号を予め付与して保持しておくこ
とにより、このマクロブロックを使って他の回路を設計
する場合に、配線線分、基本論理ブロックの削除作業を
速やかに実行できるようになるため、回路設計の期間を
短縮することができるようになる。
【0026】図8は、本発明の第3の実施例で対象とす
るハードマクロ化されたマクロブロックのブロック図、
図9の(a)、(b)は、対象となっているマクロブロ
ックと他のマクロブロックを搭載した半導体集積回路の
ブロック図である。本実施例では、予めマクロブロック
のレイアウトに冗長な端子およびそれに接続された冗長
な配線パターンを持たせておき、レイアウト完了後に不
使用端子に接続されたパターンを削除する。
るハードマクロ化されたマクロブロックのブロック図、
図9の(a)、(b)は、対象となっているマクロブロ
ックと他のマクロブロックを搭載した半導体集積回路の
ブロック図である。本実施例では、予めマクロブロック
のレイアウトに冗長な端子およびそれに接続された冗長
な配線パターンを持たせておき、レイアウト完了後に不
使用端子に接続されたパターンを削除する。
【0027】図8に示されるように、マクロブロック6
0内のある一つの構成ブロック61の出力端子72から
マクロブロックの出力端子70、71まで配線が施され
ている。出力端子70、71は普通はどちらか一方が使
われるのであるが、マクロブロックの左右辺に設けられ
ているのは上位ブロックのレイアウト設計での配線性を
良くするためである。
0内のある一つの構成ブロック61の出力端子72から
マクロブロックの出力端子70、71まで配線が施され
ている。出力端子70、71は普通はどちらか一方が使
われるのであるが、マクロブロックの左右辺に設けられ
ているのは上位ブロックのレイアウト設計での配線性を
良くするためである。
【0028】端子の使い分けの例を図9の(a)、
(b)に示す。同図において、上述のマクロブロック6
0が他のマクロブロック90とともに上位ブロック上に
配置されている。ネット80は、ブロック90の入力端
子91とブロック60の出力端子70または71との間
を接続する。図9の(a)に示すように、ブロック90
がブロック60の左側にある場合、上位ブロックのレイ
アウト設計では出力端子70を使用することにより、出
力端子71を使用する場合に比べて効率的なレイアウト
を行うことができる。逆に、図9の(b)に示されるよ
うに、ブロック90がブロック60の右側にある場合、
出力端子71を使用することにより効率的なレイアウト
を行うことができる。
(b)に示す。同図において、上述のマクロブロック6
0が他のマクロブロック90とともに上位ブロック上に
配置されている。ネット80は、ブロック90の入力端
子91とブロック60の出力端子70または71との間
を接続する。図9の(a)に示すように、ブロック90
がブロック60の左側にある場合、上位ブロックのレイ
アウト設計では出力端子70を使用することにより、出
力端子71を使用する場合に比べて効率的なレイアウト
を行うことができる。逆に、図9の(b)に示されるよ
うに、ブロック90がブロック60の右側にある場合、
出力端子71を使用することにより効率的なレイアウト
を行うことができる。
【0029】図9の(a)に示す例では、ネット74の
内出力端子71〜分岐点73間の配線線分は不要とな
り、図9の(b)に示す例では、出力端子70〜分岐点
73間の配線線分が不要となる。出力端子70、71の
何れかが使用されて上位ブロックのレイアウトが完了し
た後、不使用出力端子に接続された不要なパターンを削
除する。不使用出力端子に接続されたパターンの削除方
法は、本発明の第2の実施例に示した方法と同じであ
る。
内出力端子71〜分岐点73間の配線線分は不要とな
り、図9の(b)に示す例では、出力端子70〜分岐点
73間の配線線分が不要となる。出力端子70、71の
何れかが使用されて上位ブロックのレイアウトが完了し
た後、不使用出力端子に接続された不要なパターンを削
除する。不使用出力端子に接続されたパターンの削除方
法は、本発明の第2の実施例に示した方法と同じであ
る。
【0030】図10は、以上のような処理を行って半導
体集積回路チップを設計する場合の手順を示す流れ図で
ある。回路図作成後レイアウト前の検証を行い、問題が
なければレイアウト設計を行う。レイアウト後マクロブ
ロックの不使用出力端子を抽出し、この情報から次にパ
ターン削除処理を行う。次に、処理の結果を基にマクロ
ブロックの伝達遅延時間の再計算を行い、求めた伝達遅
延時間を基に次にレイアウト後の検証(バックアノテー
ション)を行う。以上説明したように、この実施例で
は、ハードマクロの出力端子および配線に冗長性を持た
せることにより上位ブロックのレイアウトの配線性の向
上を図りつつマクロの動作の高速化および信頼性の向上
を図ることができる。
体集積回路チップを設計する場合の手順を示す流れ図で
ある。回路図作成後レイアウト前の検証を行い、問題が
なければレイアウト設計を行う。レイアウト後マクロブ
ロックの不使用出力端子を抽出し、この情報から次にパ
ターン削除処理を行う。次に、処理の結果を基にマクロ
ブロックの伝達遅延時間の再計算を行い、求めた伝達遅
延時間を基に次にレイアウト後の検証(バックアノテー
ション)を行う。以上説明したように、この実施例で
は、ハードマクロの出力端子および配線に冗長性を持た
せることにより上位ブロックのレイアウトの配線性の向
上を図りつつマクロの動作の高速化および信頼性の向上
を図ることができる。
【0031】
【発明の効果】以上説明したように、本発明は、ハード
マクロ化されたマクロブロックを用いて上位ブロックを
設計した際に、不使用となったマクロブロックの出力端
子に係る不要パターンを削除するものであるので、本発
明によれば、マクロブロックの特性を損なうことなく、
また設計効率や設計の容易性を犠牲にすることなくマク
ロブロックおよびマクロブロックを用いた回路の動作高
速化を実現することができ、タイミングマージンを拡大
させて回路動作の信頼性を向上させることができる。ま
た、マクロブロックを用いた上位ブロックのレイアウト
設計での配線性の向上を図ることができるほかマクロブ
ロック−上位ブロック間の配線容量の削減を図ることが
できる。さらに、不使用の基本論理ブロックの動作を停
止せしめて無駄な消費電力を低減化することができる。
マクロ化されたマクロブロックを用いて上位ブロックを
設計した際に、不使用となったマクロブロックの出力端
子に係る不要パターンを削除するものであるので、本発
明によれば、マクロブロックの特性を損なうことなく、
また設計効率や設計の容易性を犠牲にすることなくマク
ロブロックおよびマクロブロックを用いた回路の動作高
速化を実現することができ、タイミングマージンを拡大
させて回路動作の信頼性を向上させることができる。ま
た、マクロブロックを用いた上位ブロックのレイアウト
設計での配線性の向上を図ることができるほかマクロブ
ロック−上位ブロック間の配線容量の削減を図ることが
できる。さらに、不使用の基本論理ブロックの動作を停
止せしめて無駄な消費電力を低減化することができる。
【図1】本発明の実施例を説明するためのハードマクロ
化されたマクロブロックのブロック図。
化されたマクロブロックのブロック図。
【図2】本発明の第1の実施例の実施結果を示すマクロ
ブロックのブロック図。
ブロックのブロック図。
【図3】本発明の第2の実施例を説明するためのマクロ
ブロックのブロック図。
ブロックのブロック図。
【図4】本発明の第2の実施例の実施結果を示すマクロ
ブロックのブロック図。
ブロックのブロック図。
【図5】本発明の第2の実施例の実施結果を示すマクロ
ブロックのブロック図。
ブロックのブロック図。
【図6】本発明の第2の実施例の実施結果を示すマクロ
ブロックのブロック図。
ブロックのブロック図。
【図7】本発明の第2の実施例による半導体集積回路の
設計手順を示す流れ図。
設計手順を示す流れ図。
【図8】本発明の第3の実施例を説明するためのマクロ
ブロックのブロック図。
ブロックのブロック図。
【図9】本発明の第3の実施例を説明するための上位ブ
ロックのブロック図。
ロックのブロック図。
【図10】本発明の第3の実施例による半導体集積回路
の設計手順を示す流れ図。
の設計手順を示す流れ図。
【図11】従来の方法で設計しようとしている回路のブ
ロック図。
ロック図。
【図12】図11内のマクロブロックの構成を示すブロ
ック図。
ック図。
1 マクロブロック 2〜6 マクロブロック1の構成ブロック 10〜12 マクロブロック1の入力端子 13〜17 マクロブロック1の出力端子 20〜28 マクロブロック1内で構成ブロック間を接
続するネット 30〜33 配線線分の分岐点 40〜43 構成ブロックの入力端子 44〜46 構成ブロックの出力端子 47〜50 構成ブロックの入力端子 51〜53 構成ブロックの出力端子 60 マクロブロック 61 マクロブロック60の構成ブロック 70〜71 マクロブロック60の出力端子 72 構成ブロック61の出力端子 73 配線線分の分岐点 74 マクロブロック60内のネット 80 マクロブロック60とマクロブロック90との間
を接続するネット 90 マクロブロック60と接続関係にあるブロック 91 マクロブロック90の入力端子 201〜206 回路の入力端子 207〜210 回路の出力端子 220、221 回路内のマクロブロック 222 回路内の基本論理ブロック 230〜235 マクロブロックの入力端子 240〜245 マクロブロックの出力端子 250〜252 マクロブロックの入力端子 260〜262 マクロブロックの出力端子 270〜275 マクロブロック内の構成ブロック 280、281 マクロブロック270の入力端子 282、283 マクロブロック271の入力端子 284 マクロブロック270の出力端子 285 マクロブロック271の出力端子 290〜292 入力端子に接続されたネット
続するネット 30〜33 配線線分の分岐点 40〜43 構成ブロックの入力端子 44〜46 構成ブロックの出力端子 47〜50 構成ブロックの入力端子 51〜53 構成ブロックの出力端子 60 マクロブロック 61 マクロブロック60の構成ブロック 70〜71 マクロブロック60の出力端子 72 構成ブロック61の出力端子 73 配線線分の分岐点 74 マクロブロック60内のネット 80 マクロブロック60とマクロブロック90との間
を接続するネット 90 マクロブロック60と接続関係にあるブロック 91 マクロブロック90の入力端子 201〜206 回路の入力端子 207〜210 回路の出力端子 220、221 回路内のマクロブロック 222 回路内の基本論理ブロック 230〜235 マクロブロックの入力端子 240〜245 マクロブロックの出力端子 250〜252 マクロブロックの入力端子 260〜262 マクロブロックの出力端子 270〜275 マクロブロック内の構成ブロック 280、281 マクロブロック270の入力端子 282、283 マクロブロック271の入力端子 284 マクロブロック270の出力端子 285 マクロブロック271の出力端子 290〜292 入力端子に接続されたネット
Claims (4)
- 【請求項1】 複数の構成ブロックを有しレイアウトパ
ターンの確定しているマクロブロックを用いて回路を構
成し、その結果不使用となるマクロブロックの出力端子
を抽出し、不使用となった出力端子とのみ関連する配線
線分および構成ブロックのパターンをマクロブロックか
ら削除し、残された配線および構成ブロックのパターン
を有するマクロブロックを用いて回路を作成することを
特徴とする半導体集積回路の製造方法。 - 【請求項2】 不使用となった出力端子と連なる配線の
うち不使用となる部分のパターンを除去し、出力端子の
全てが不使用となった配線パターンに接続されている構
成ブロックのパターンを削除し、この削除の結果さらに
不必要となる配線パターンを削除し、以下同様の過程を
削除するパターンがなくなるまで繰り返すことを特徴と
する請求項1記載の半導体集積回路の製造方法。 - 【請求項3】 配線を分岐点で分割される配線線分に分
け、マクロブロックの出力端子にそれぞれ異なる記号を
付与し、出力端子に連なる配線線分には出力端子の有す
る記号を付与し、構成ブロックには該ブロックの出力端
子に連なる配線線分の持つ記号をすべて付与し、構成ブ
ロックの入力端子に連なる配線線分には該構成ブロック
の持つ記号を付与し、分岐点においては入力側配線線分
には出力側配線線分の持つ記号をすべて付与して、すべ
ての配線線分および構成ブロックに記号を付与した後、
不使用となった出力端子に付与された記号のみを持つ配
線線分および構成ブロックのパターンを削除することを
特徴とする請求項1記載の半導体集積回路の製造方法。 - 【請求項4】 前記マクロブロックが、冗長の出力端子
とこれに接続された冗長の配線パターンとを有している
ことを特徴とする請求項1記載の半導体集積回路の製造
方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5047237A JPH081948B2 (ja) | 1993-02-12 | 1993-02-12 | 半導体集積回路の製造方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5047237A JPH081948B2 (ja) | 1993-02-12 | 1993-02-12 | 半導体集積回路の製造方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06244387A JPH06244387A (ja) | 1994-09-02 |
JPH081948B2 true JPH081948B2 (ja) | 1996-01-10 |
Family
ID=12769609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5047237A Expired - Lifetime JPH081948B2 (ja) | 1993-02-12 | 1993-02-12 | 半導体集積回路の製造方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH081948B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1167923A (ja) | 1997-08-25 | 1999-03-09 | Nec Corp | 半導体集積回路とその配線配置方法、および該方法を記録した記録媒体 |
JP3225929B2 (ja) | 1998-10-07 | 2001-11-05 | 日本電気株式会社 | 集積回路レイアウト設計装置及びそれに用いる電源削除方法並びにその制御プログラムを記録した記録媒体 |
JP5359142B2 (ja) * | 2008-09-18 | 2013-12-04 | 富士通株式会社 | 伝送装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH077825B2 (ja) * | 1981-08-13 | 1995-01-30 | 富士通株式会社 | ゲートアレイの製造方法 |
JPH04140885A (ja) * | 1990-10-01 | 1992-05-14 | Nec Ic Microcomput Syst Ltd | 回路図エディタ |
JPH04167181A (ja) * | 1990-10-31 | 1992-06-15 | Nec Corp | Lsiブロックの配置改良方式 |
-
1993
- 1993-02-12 JP JP5047237A patent/JPH081948B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH06244387A (ja) | 1994-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7337100B1 (en) | Physical resynthesis of a logic design | |
JP3119646B2 (ja) | 再コンフュギュレーション可能なハードウェアシステムの評価装置及び演算処理方法 | |
US7895551B2 (en) | Generation of standard cell library components with increased signal routing resources | |
JP2995963B2 (ja) | 階層的回路データベース最適化装置及び階層的回路データベース最適化方法 | |
CN101317179A (zh) | 并入soc分层设计的定时约束 | |
Chang et al. | Postlayout logic restructuring using alternative wires | |
JP4131651B2 (ja) | スキャン機能を有する集積回路のレイアウト方法 | |
WO1999009497A1 (fr) | Procede d'extraction de caracteristiques de synchronisation de circuits a transistors, support de stockage stockant une bibliotheque de caracteristiques de synchronisation, procede de conception de lsi et procede d'extraction par grille | |
JP2005518002A (ja) | 階層的な集積回路設計および解析システムにおけるサブモジュールの設計の表示 | |
CN117892681A (zh) | 修复电压降的方法、电子设备、存储介质和程序产品 | |
JPH0778189A (ja) | Lsiの論理合成方式 | |
US7380231B2 (en) | Wire spreading through geotopological layout | |
Choy et al. | Incremental layout placement modification algorithms | |
JPH081948B2 (ja) | 半導体集積回路の製造方法 | |
US6990647B2 (en) | Variable stage ratio buffer insertion for noise optimization in a logic network | |
Albrecht et al. | On the skew-bounded minimum-buffer routing tree problem | |
Neumann et al. | Cell replication and redundancy elimination during placement for cycle time optimization | |
US7823112B1 (en) | Method, software and system for ensuring timing between clocked components in a circuit | |
Shirota et al. | A new rip-up and reroute algorithm for very large scale gate arrays | |
US8769461B1 (en) | Replicating a driver of a net in a circuit design | |
Zhukov et al. | The iterative SAT based approach to detailed routing for reconfigurable system-on-a-chip | |
JPH11259555A (ja) | マクロの設計方法 | |
Benini et al. | Glitch power minimization by gate freezing | |
JPH07249062A (ja) | 論理回路の生成方法 | |
JP2930087B2 (ja) | 論理設計支援システム |