JP2000305965A - クロックツリーシンセシス方法及び装置 - Google Patents

クロックツリーシンセシス方法及び装置

Info

Publication number
JP2000305965A
JP2000305965A JP11113138A JP11313899A JP2000305965A JP 2000305965 A JP2000305965 A JP 2000305965A JP 11113138 A JP11113138 A JP 11113138A JP 11313899 A JP11313899 A JP 11313899A JP 2000305965 A JP2000305965 A JP 2000305965A
Authority
JP
Japan
Prior art keywords
soft macro
buffer
cts
chip
macro
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.)
Pending
Application number
JP11113138A
Other languages
English (en)
Inventor
Toshimi Motooka
俊美 元岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP11113138A priority Critical patent/JP2000305965A/ja
Publication of JP2000305965A publication Critical patent/JP2000305965A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】ソフトマクロ内部のF/Fに供給されるクロッ
クラインを共通化し、LSIチップ内部に実装されるソ
フトマクロが保有する固有のスキュースペックを満足さ
せるCTS方法の提供。 【解決手段】回路接続情報に従ってチップ内にチップC
TSバッファを均等配置するととも各回路ブロックの配
置及び配線を行い、配線処理データに基づきソフトマク
ロの外形情報を算出し、該ソフトマクロ外形情報を用い
てチップ上に配線された配線データとソフトマクロ内部
に配置されているチップCTSバッファとの削除を行
い、ソフトマクロ内に、予め用意されたソフトマクロ専
用CTSバッファの中から前ソフトマクロスキュー仕様
に対応させて選択されたソフトマクロ専用CTSバッフ
ァを配置し、ソフトマクロ内の専用CTSバッファの配
置が完了した後に、チップ内のCTSバッファの再配置
処理を行い、その際、チップCTSバッファと前記ソフ
トマクロのクロックラインの接続はソフトマクロ仮想ク
ロック端子を用いて行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体集積回路の
設計方法及び装置に関し、特にクロックツリーシンセシ
ス方法に関する。
【0002】
【従来の技術】例えばSOC(System On Chip;シス
テムオンチップ)に代表される、大規模LSIの開発過
程における、LSIチップ内に供給されるクロック供給
ラインに発生するクロック遅延差分(以後「クロックス
キュー」という)を低減させるための手法として、クロ
ックツリーシンセシス方法(Clock Tree Synthesys:
「CTS」という)が用いられている。すなわち同期回
路を例えば最小サイクルで動作させるには、LSIチッ
プ内の全てのクロック使用回路にクロック信号を同一時
間で伝搬させることが必要とされており、このCTS
は、クロックスキューを最小化するため、クロック配線
網内にバッファ回路を最適化させて挿入し、ツリー状レ
イアウトを構成するものである。
【0003】まず従来のCTSについてその概略を説明
しておく。CTSを行うためには、回路ネットリスト内
のクロックラインに、ダミーCTSバッファを一つ設
け、クロックラインによりすべてのフリップフロップ
(F/F)を接続する。
【0004】図6は、従来のCTSの処理工程を説明す
るためのフローチャートである。図6を参照すると、ま
ず回路ネットリスト読み込み処理で、設計された回路ネ
ットリスト情報の読み込み処理を行う(ステップ50
1)。
【0005】次に、CTSにより合成されるCTSバッ
ファのLSIチップ配置情報決定に利用されるLSIチ
ップサイズ情報の設定を、チップエリア設定処理にて行
う(ステップ502)。
【0006】CTSバッファのLSIチップ上の配置位
置に関しては、ハードマクロ等を代表とする配置不可能
領域を除き、LSIチップ上にて、CTSバッファが均
等間隔となるように配置される(ステップ503)。
【0007】次に回路ネットリストブロック配置処理に
おいて、回路ネットリスト内のブロックの配置を行う
(ステップ504)。
【0008】最後に、配線処理において、回路ネットリ
スト情報に従い、レイアウト配線処理を行う(ステップ
505)。
【0009】この配線処理においては、図7に示すよう
に、外部クロック入力端子63からフリップフロップ
(F/F)のクロック端子までの間に接続されるCTS
バッファの段数が、すべてのフリップフロップについて
等しくなるように配線される(図7ではインバータ4
段)。
【0010】またフリップフロップ(F/F)のクロッ
ク端子に接続される最終段のCTSバッファについて
は、レイアウト配置上、フリップフロップ(F/F)に
クロック端子に最も近い位置にあるCTSバッファと接
続される。
【0011】この結果、回路ネットリスト情報内に、ソ
フトマクロを有している場合には、たとえソフトマクロ
内のフリップフロップ(F/F)に関するクロック供給
ラインを、回路ネットリスト上にて共通化を行おうとし
てもクロックラインの共通化として(例えば図4に示す
回路ネットリストが参照される)、レイアウト完了後の
LSIチップ上では、クロック供給ラインが異なる事態
が発生する。例えば図7を参照すると、ソフトマクロ1
0内のフリップフロップF/F1とF/F2のクロック
端子へは、それぞれ、バッファINV8、INV10の
出力に接続されたライン61、62からクロックが供給
される。このため、図8(b)、図8(c)に示すよう
に、ソフトマクロ内のフリップフロップF/F1とF/
F2のクロック端子間でクロックスキュー(ソフトマク
ロ内クロックスキュー)が生じる。
【0012】このように、ソフトマクロ内部のフリップ
フロップF/Fに供給されるクロックラインを同一もの
とする等の制御は不可能であった。
【0013】次にCTSの作用について説明する。
【0014】CTSは、回路ネットリスト情報内のダミ
ーCTSバッファに接続されるすべてのフリップフロッ
プに供給されるクロックを、外部端子より入力されるク
ロック波形に対し、一定遅延以内(「チップCTSスペ
ック」という;図8参照)に収めるもので、フリップフ
ロップに供給されるクロックスキューを一定時間以内に
収める。
【0015】このチップCTSスペックは、LSIチッ
プ規模の増大に伴い増大しており、例えば10nsを超え
るスペックとなる状況も発生している。
【0016】またSOC(シリコン・オン・チップ)等
に用いられるソフトマクロについてみると、ソフトマク
ロ自身で単一の機能を実現しており、このためソフトマ
クロ自体で、固有のクロックスキュースペック(「固有
スキュースペック」という)を有している。
【0017】この固有スキュースペックについては、多
くの場合、チップCTSスペックに比べると、その値は
小さなものとされており(通常1ns以下)、当然のこと
ながら、高精度が要求されることになる。
【0018】
【発明が解決しようとする課題】上述したように、従来
のCTSにおいては、ソフトマクロ内、ソフトマクロ外
を問わず、各フリップフロップ(F/F)に対して無条
件で、フリップフロップのクロック端子を、該フリップ
フロップの近傍に配置されているクロックバッファに接
続してしまうため、ソフトマクロ内に存在する複数のフ
リップフリップ(F/F)間において、高精度のスキュ
ースペックが要求されているにもかかわらず、チップC
TSスペックを満足できる程度の結線しか実現できなか
った。
【0019】このため、ソフトマクロ内に存在する複数
のフリップフリップ(F/F)間のクロックスキュー
が、ソフトマクロの固有スキュースペックを超え、LS
Iの誤動作を引き起こす原因ともなっていた。
【0020】この問題に対処すべく、大規模LSI開発
内にソフトマクロを利用する場合において、固有スキュ
ースペックを満足させるために創案された手法が、PL
L(Phaes Locked Loop;位相同期ループ)回路を用
いた階層化設計手法である。
【0021】この階層化設計手法は、LSIチップ上を
機能別に分類し、その機能別分類マクロ内におけるクロ
ックスキューの解消のためにPLL回路を用いてクロッ
ク位相同期を行うようにしたものであり、クロックスキ
ューを解消し、固有スキュースペックを満足させるとと
もに、外部クロック入力と機能マクロ間のクロック供給
ラインに発生するクロックスキューについては、CTS
手法を利用することでクロックスキューを低減するとい
うものである。
【0022】図9は、階層化設計手法により設計された
LSIチップを模式的に示す図である。図9に示すよう
に、ソフトマクロ(機能マクロ)70〜72はいずれも
PLL回路を備えており、ソフトマクロに入力されるク
ロック信号はPLL回路に入力され、PLL回路の出力
は、クロックバッファを介して複数のフリップフロップ
のクロック入力端子に分配され(各パスのクロックバッ
ファの段数は等しい)、フリップフロップ(F/F)の
クロック入力端子に供給されるクロック信号がPLL回
路に入力され、ソフトマクロへ入力されるクロック信号
との位相合わせが行われる。
【0023】しかしながら、こ階層化設計手法において
は、LSI設計回路内で機能別分類(機能別に分類され
たマクロを「機能マクロ」という)を、回路ネットリス
ト情報上にて行わなければならず、回路設計における複
雑さを発生させるばかりか、機能マクロ内の固有マクロ
スペック解消に利用されるPLL回路を、機能マクロ毎
に具備することが必要とされ、設計回路規模、消費電力
を増大させる、という問題点を有している。
【0024】また、機能マクロ毎のレイアウト工程を別
途必要とするため、設計フロー上の複雑化を発生させる
のみでなく、機能マクロ間の接続を行う設計階層(チッ
プ設計階層)においては、機能マクロ上の通過配線が不
可能となるためにレイアウト設計上の困難さを生じると
いう問題点も有している。
【0025】したがって本発明は、上記問題点に鑑みて
なされたものであって、その目的は、ソフトマクロ内部
のフリップフロップに供給されるクロックラインを共通
化することを可能とする方法及び装置を提供することに
ある。
【0026】また本発明の他の目的は、従来法では不可
能とされていた、LSIチップ内部に実装されるソフト
マクロが保有する固有のスキュースペックを満足させる
方法及び装置を提供することにある。これ以外の本発明
の目的、特徴等は以下の説明で容易に明らかとされるで
あろう。
【0027】
【課題を解決するための手段】前記目的を達成する本発
明は、(a)入力された回路接続情報に従ってチップ内
に遅延均等用バッファを配置するととも各回路ブロック
の配置及び概略配線を行なうステップと、(b)前記チ
ップの配置配線データに基づきソフトマクロの外形情報
を算出し、前記ソフトマクロ外形情報を用いて、前記チ
ップ上に配線された配線データと前記ソフトマクロ内部
に配置されている前記遅延均等用バッファとの削除を行
うステップと、(c)前記ソフトマクロ外形に仮想クロ
ック端子を設定するステップと、(d)前記ソフトマク
ロ外形情報を用いて、前記ソフトマクロ内に、予め用意
されたソフトマクロ専用の遅延均等用バッファの中から
前記ソフトマクロスキュー仕様に対応させて選択された
遅延均等用バッファを配置するステップと、(e)前記
ソフトマクロ内の専用遅延均等用バッファの配置が完了
した後に、前記チップ内の前記ソフトマクロ以外の領域
に遅延均等用バッファを再配置し、前記ソフトマクロ内
の専用の遅延均等用バッファと、前記ソフトマクロ外の
遅延均等用バッファとのクロックラインの接続は、前記
ソフトマクロ仮想クロック端子を用いて行うステップ
と、を含み、前記ソフトマクロ内部のフリップフロップ
(F/F)に供給されるクロック配線を共通化可能とし
たことを特徴とする。
【0028】また本発明は、半導体集積回路の自動設計
装置において、入力された回路接続情報に従ってチップ
内に遅延均等用バッファをCTS法で均等配置するとと
もに各ブロックの配置及び配線を行なう手段と、前記チ
ップの配置・配線データに基づきソフトマクロの外形情
報を算出し前記ソフトマクロ外形情報に基づき前記チッ
プ上に配線された配線と前記ソフトマクロ内部に配置さ
れている前記遅延均等用バッファとを削除する手段と、
前記ソフトマクロ外形情報を用いて、前記ソフトマクロ
内に、予め用意されたソフトマクロ専用の遅延均等用バ
ッファの中から前記ソフトマクロスキュー仕様に対応さ
せて選択された遅延均等用バッファをCTS法に従って
均等配置する手段と、前記チップ内の前記ソフトマクロ
以外の領域に遅延均等用バッファをCTS法に従って再
配置する手段と、を備える。
【0029】
【発明の実施の形態】本発明の実施の形態について説明
する。本発明は、クロックツリーシンセシス手法におい
て、ネットリストにてLSIチップ内部に取り込まれる
機能マクロ(「ソフトマクロ」ともいう)内でCTSバ
ッファを分離させ、ソフトマクロ専用の複数のCTSバ
ッファを選択可能とするとともに、ソフトマクロ内部の
フリップフロップ(F/F)に供給されるクロック配線
を共通化することを可能とし、ソフトマクロの要求する
固有のクロックスキューを満足させるようにしたもので
ある。
【0030】本発明は、(a)回路接続情報を入力する
ステップと、(b)遅延均等用バッファ(「CTSバッ
ファ」という)のバッファ名及び遅延時間を規定したソ
フトマクロCTSバッファ情報を入力し、ソフトマクロ
に要求されるクロックスキュー仕様から、前記ソフトマ
クロスキュー仕様を利用して、ソフトマクロで用いるC
TSバッファを選択するステップと、(c)前記回路接
続情報に従ってチップ内にCTSバッファを配置するス
テップと、(d)前記回路接続情報に従って前記チップ
内にブロックを配置・配線するステップと、(e)ステ
ップ(d)の配置配線結果データに基づきソフトマクロ
の外形情報を算出するステップと、(f)前記ソフトマ
クロ外形情報を利用して、完了したチップ上の配線デー
タ、及びソフトマクロ内部に配置されているCTSバッ
ファの削除を行うとともに、チップ内でCTSバッファ
の配置禁止領域を設定するステップと、(g)前記ソフ
トマクロ外形情報に対して、仮想クロック端子の生成を
行うステップと、(h)前記ソフトマクロ外形情報を利
用して、前記ソフトマクロ内に前記選択されたCTSバ
ッファを配置し、その際、前記ソフトマクロのクロック
供給ラインの開始点は、前記ソフトマクロ仮想クロック
端子を用いるステップと、(i)前記ソフトマクロ内の
CTSバッファの配置が完了した後に、チップ内のCT
Sバッファの再配置処理を行い、その際、CTSバッフ
ァとソフトマクロのクロックラインの接続は、前記ソフ
トマクロ仮想クロック端子を用いて行うステップと、
(j)回路ブックの再配置・配線処理を行い、再配線処
理が完了した後のLSIチップデータを利用して前記ソ
フトマクロ内のCTSバッファの遅延値を算出し、前記
算出された遅延値に相当する遅延素子をCTSバッファ
のネットに挿入するステップと、を含む。
【0031】本発明は、半導体集積回路の自動設計装置
において、入力された回路接続情報に基づきチップ内の
クロックラインに遅延均等用バッファをCTS法に従っ
て配置するとともに回路ブロックの配置及び配線を行な
う手段(図1の101、105、106)と、配置・配
線データに基づきソフトマクロの外形情報を算出し、前
記ソフトマクロ外形情報に基づき前記チップ上に配線さ
れた配線と前記ソフトマクロ内部に配置されている前記
遅延均等用バッファとを削除する手段(図2の109−
111)と、前記ソフトマクロ外形に仮想クロック端子
を設定する手段(図2の113)と、前記ソフトマクロ
外形情報を用いて、前記ソフトマクロ内に、予め用意さ
れたソフトマクロ専用の遅延均等用バッファの中から前
記ソフトマクロスキュー仕様に対応させて選択された遅
延均等用バッファをCTS法に従って配置する手段(図
2の114)と、前記チップ内の前記ソフトマクロ以外
の領域に遅延均等用バッファをCTS法に従って再配置
・配線し、前記ソフトマクロ内の専用の遅延均等用バッ
ファと、前記ソフトマクロ外の遅延均等用バッファとの
クロックラインを接続する手段(図2の115、11
6)と、を備える。また本発明においては、回路ブロッ
クの再配置配線が終了した後のデータに基づき、ソフト
マクロ内の遅延均等用バッファの遅延値を算出し、該遅
延値に相当する素子を遅延均等バッファのネットに挿入
する手段(図2の117、118)を備える。
【0032】
【実施例】本発明の実施例について図面を参照して説明
する。図1及び図2は、本発明の一実施例の構成及び処
理手順を示す図である。図1及び図2を参照すると、本
発明は、CTS合成を行う回路ネットリストの読み込み
処理を行う回路ネットリスト読み込み処理101と、C
TS合成の際に必要となるLSIチップサイズの設定を
行うチップエリア設定処理102と、ネットリストによ
りLSIチップに搭載されるソフトマクロのスキュース
ペックの読み込みを行うソフトマクロスキュースペック
読み込み処理103と、ソフトマクロ内に利用するCT
Sバッファの選択を行うソフトマクロCTSバッファ選
択処理104と、チップCTSバッファの合成処理を行
うチップCTSバッファ配置処理105と、回路ネット
リスト定義ブロックの配置を行う回路ネットリストブロ
ック配置処理106と、ネットリストブロック間の配線
処理を行う配線処理107と、を備えている。
【0033】そして、ソフトマクロが存在する場合にお
いて、ソフトマクロ外形情報の算出を行うソフトマクロ
外形情報算出処理109と、配線処理の完了したLSI
チップデータより配線データの削除を行う配線データ削
除処理110と、配置済みとなったLSIチップ上のC
TSバッファの削除を行うソフトマクロ外形情報内CT
Sバッファ削除処理111と、チップCTSバッファの
配置禁止領域の設定を行うチップCTSバッファ配置禁
止領域設定処理112と、ソフトマクロ外形上に仮想ク
ロック端子を発生させるソフトマクロ仮想クロック端子
生成処理113と、ソフトマクロ内CTSバッファの合
成を行うソフトマクロCTS配置処理114と、一度C
TS合成が完了したLSIチップデータについてCTS
再合成を行うチップCTS再配置処理115と、CTS
再配置処理が完了した後に、LSIチップの配線処理を
行う再配線処理116と、ソフトマクロ内CTSネット
の配線遅延の算出を行うソフトマクロCTSネット遅延
算出処理117と、ソフトマクロCTSネット算出処理
にて算出された遅延値に相当する遅延素子を前記チップ
CTS再配置処理により合成されたCTSネットに挿入
するチップCTSネット遅延挿入処理118とを備え、
またマクロフラグを参照してソフトマクロの有無を判断
する判断処理108を備え、ソフトマクロが存在しない
状態で、CTS処理の高速化を同時に実現するため、マ
クロフラグが0の場合、ソフトマクロ外形情報算出処理
以降、前記チップCTSネット遅延挿入処理をスキップ
させる条件分岐により構成されている。上記各処理は、
計算機支援設計(CAD)システム、設計自動化(ED
A)システムを構成するワークステーション等コンピュ
ータ上で実行されるプログラムによりその機能を実現す
るようにしてもよい。この場合、該プログラムを記録し
た記録媒体から該プログラムをコンピュータに読み出
し、主記憶にロードして実行することで、本発明を実施
することができる。
【0034】図3は、本発明の一実施例におけるソフト
マクロCTSバッファ定義ファイルの一例を示す図であ
る。図4は、本発明の一実施例を説明するための図であ
り、CTS合成を行う回路ネットリスト図である。図5
は、本発明の一実施例を説明するための図であり、本発
明により合成されるCTSを含むLSIチップの回路構
成を模式的に示す図である。
【0035】ソフトマクロCTSバッファ定義ファイル
は、図3に示すように、各バッファ名(タイプ)とその
伝搬遅延時間の仕様が規定されている。
【0036】以下、本発明の一実施例の処理・動作につ
いて、図1乃至図5を参照して説明する。まず、回路ネ
ットリスト読み込み処理(ステップ101)において、
回路ネットリスト情報10の読み込みを行う。図4は、
読み込まれる回路ネットリストを模式的に示している。
図4に示すネットリストでは、ソフトマクロ20内のフ
リップフロップF/F1、F/F2とソフトマクロ外の
フリップフロップF/F1〜F/F4へのクロック供給
ラインが共通化される仕様とされている。
【0037】その後、チップエリア情報読み込み処理
(ステップ102)において、CTS合成を行うLSI
チップサイズの設定を行う。
【0038】その後、ソフトマクロスキュースペック読
み込み処理(ステップ103)において、ソフトマクロ
に要求されるクロックスキュースペック11の読み込み
を行う。この読み込まれるスキュースペックについて
は、数値データ(例えば「100ps」)等からなる。
【0039】また、ソフトマクロスキュースペック読み
込み処理(ステップ103)において、回路ネットリス
ト内にソフトマクロの有無判断を行うため、数値データ
が未定義もしくは「0ps」である場合には、ソフトマク
ロの有無を示すマクロフラグに“0”をセットする。
【0040】この後、読み込まれたソフトマクロスキュ
ースペックを利用し、ソフトマクロCTSバッファ選択
処理(ステップ104)において、ソフトマクロCTS
バッファ定義ファイル12を参照して、ソフトマクロス
キュースペックに応じた遅延時間のCTSバッファを選
択することで、ソフトマクロ内にて利用するCTSバッ
ファの選択を完了する。
【0041】その後、LSIチップ内でチップCTSバ
ッファ配置処理(ステップ105)を行う。このチップ
CTSバッファ配置処理(ステップ105)において配
置されるチップCTSバッファは、従来法のCTSバッ
ファの配置と同様にして、LSIチップ内に均等配置さ
れる。
【0042】チップCTSバッファ配置処理(ステップ
105)が完了した後、回路ネットリストに存在するブ
ロックの配置処理を行い(ステップ106)、配線処理
を行う(ステップ107)。
【0043】その後、マクロフラグの値を参照して、ソ
フトマクロの有無の判断を行う(ステップ108)。
【0044】ここでは、ソフトマクロが存在しているた
め、ステップ108でNOの判定を行い、次のステップで
あるソフトマクロ外形情報算出処理(ステップ109)
に移る。一方、ソフトマクロが存在しない場合には処理
を終了する。
【0045】次にステップ107で配線処理が終了した
チップデータを利用し、ソフトマクロの外形情報の算出
を行う(ステップ109)。
【0046】ステップ109のソフトマクロ外形情報算
出処理が終了した後のチップデータを利用して、配線デ
ータ削除処理(ステップ110)では、ステップ107
にて完了したLSIチップ上の配線データの削除を行
う。
【0047】次に、ステップ109にて算出されたソフ
トマクロ外形情報を利用して、ソフトマクロ外形情報内
CTSバッファ削除処理(ステップ111)にて、ソフ
トマクロ内部に配置されているチップCTSバッファの
削除を行う。
【0048】次にステップ107にて作成された、ソフ
トマクロ外形情報を利用して、チップCTSバッファ配
置禁止領域設定処理(ステップ112)において、LS
Iチップ内のCTSバッファの配置禁止領域の設定を行
う。
【0049】次に、ステップ9にて算出されたソフトマ
クロ外形情報に対して、仮想クロック端子の生成を行う
(ステップ113)。
【0050】ステップ113まで終了したのち、ソフト
マクロ内部のCTSバッファの配置処理を行う(ステッ
プ114)。このソフトマクロ内のCTSバッファの配
置処理を行うために必要となるソフトマクロエリア情報
については、ステップ109にて算出されたソフトマク
ロ外形情報を利用する。
【0051】また、ソフトマクロ内に配置を行うCTS
バッファ種類に関しては、ステップ114にて選択され
たCTSバッファを利用する。
【0052】また、クロック供給ラインの開始点(CT
Sバッファのネットリスト上のスタート点)に関して
は、ステップ113により生成された、ソフトマクロ仮
想クロック端子を利用する。
【0053】これにより、ソフトマクロCTS合成処理
を専用のCTSバッファを利用し、かつソフトマクロ内
部のF/Fに対するクロック供給ラインを共通化する事
が可能となり、ソフトマクロの有する固有ソフトマクロ
スキュースペックを満足する事が可能となる。
【0054】ソフトマクロCTSの合成が完了した後
に、チップ内のCTSバッファの再配置処理を行う(ス
テップ115)。
【0055】このチップCTS再配置処理については、
ステップ112で作成されたチップCTSバッファ配置
禁止領域の設定により、ソフトマクロ内部に対するチッ
プCTSバッファの配置は行われない。
【0056】また、チップCTSバッファとソフトマク
ロのクロックラインの接続に関しては、ステップ113
で設定されたソフトマクロ仮想クロック端子に接続を行
う。
【0057】ここまでの工程により、ソフトマクロCT
S合成処理ならびチップCTS合成処理が完了し、再度
LSIチップ内すべての再配線処理(ステップ116)
を行う。
【0058】再配線処理が完了した後のLSIチップデ
ータを利用し、ソフトマクロCTS遅延の算出を行う
(ステップ117)。
【0059】その後、ステップ117にて算出された遅
延値に相当する遅延素子をチップCTSネットに挿入を
行う(ステップ118)ことにより完了する。
【0060】この遅延素子の挿入により、ソフトマクロ
CTSバッファの個別配置により発生する遅延差分が吸
収される。
【0061】
【発明の効果】以上説明したように、本発明によれば、
ソフトマクロ内部のCTSバッファの配置処理と、チッ
プCTSバッファの配置処理を、それぞれ種類の異なる
CTSバッファを利用して、分離して実行する構成とし
たことにより、ソフトマクロ内部のフリップフロップに
供給されるクロックラインを共通化することを可能とす
る、という効果を奏する。
【0062】また本発明によれば、ソフトマクロ内のC
TSバッファで保証するクロックスキューをソフトマク
ロ毎に個別に設定することができるため、従来法では不
可能とされていた、LSIチップ内部に実装されるソフ
トマクロが保有する固有のスキュースペックを満足させ
ることを容易に実現可能とする、という効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例の構成及び処理を説明するた
めの図(その1)である。
【図2】本発明の一実施例の構成及び処理を説明するた
めの図(その2)である。
【図3】本発明の一実施例を説明するための図であり、
ソフトマクロCTSバッファ定義ファイルの一例を示す
図である。
【図4】本発明の一実施例を説明するための図であり、
入力となる回路ネットリストの一例を示す図である。
【図5】本発明の一実施例を説明するための図であり、
作成されるLSIチップの構成を模式的に示す図であ
る。
【図6】従来のCTS方法の処理手順を示すフローチャ
ートである。
【図7】従来のCTS方法により作成されるLSIチッ
プの構成を模式的に示す図である。
【図8】従来のCTS方法により作成されたLSIチッ
プにおけるタイミングチャートを示す図である。
【図9】従来の階層化設計手法により作成されるLSI
チップの構成を模式的に示す図である。
【符号の説明】
10 回路ネットリスト 11 ソフトマクロスキュースペック 12 ソフトマクロCTSバッファ定義ファイル 20 ソフトマクロ 22 ダミーCTSバッファ 40 ソフトマクロ 41、42 遅延素子 43 外部クロック端子 60 ソフトマクロ 61、62 クロックライン 63 外部クロック端子 70、71 機能マクロ 72 ソフトマクロ 73 外部クロック端子 101 回路ネットリスト読み込み処理 102 チップエリア設定処理 103 ソフトマクロスキュースペック読み込み処理 104 ソフトマクロCTSバッファ選択処理 105 チップCTS合成処理 106 回路ネットリストブロック配置処理 107 配線処理 109 ソフトマクロ外形情報算出処理 110 配線データ削除処理 111 ソフトマクロ外形情報内CTSバッファ削除処
理 112 チップCTSバッファ配置禁止領域設定処理 113 ソフトマクロ仮想クロック端子生成処理 114 ソフトマクロCTS合成処理 115 チップCTS再合成処理 116 再配線処理 117 ソフトマクロCTSネット遅延算出処理 118 チップCTSネット遅延挿入処理
フロントページの続き Fターム(参考) 5B046 AA08 BA03 BA05 5F064 AA04 BB19 BB26 DD02 DD04 DD10 DD14 DD25 EE02 EE03 EE05 EE47 EE54 HH06 HH11

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】半導体集積回路の自動配置配線装置におい
    て、 入力された回路接続情報に従ってチップ内のクロックラ
    インに遅延均等用バッファをCTS(クロックツリーシ
    ンセシス)法で均等配置するとともに回路ブロックの配
    置及び配線を行なう手段と、 前記配置・配線処理結果データに基づき、ソフトマクロ
    の外形情報を算出し、前記ソフトマクロの外形情報に基
    づき、前記チップ上に配線された配線と前記ソフトマク
    ロ内部に配置されている前記遅延均等用バッファとを削
    除する手段と、 前記ソフトマクロの外形情報を用いて、前記ソフトマク
    ロ内に、予め用意されているソフトマクロ専用の遅延均
    等用バッファの中から前記ソフトマクロスキュー仕様に
    対応させて選択された遅延均等用バッファをCTS法に
    従って均等配置する手段と、 前記チップ内の前記ソフトマクロ以外の領域に遅延均等
    用バッファをCTS法に従って再配置する手段と、 を備えたことを特徴とする自動配置配線装置。
  2. 【請求項2】(a)入力された回路接続情報に従ってチ
    ップ内に遅延均等用バッファを配置するととも回路ブロ
    ックの配置及び配線を行なうステップと、 (b)前記チップの配置・配線データに基づき、ソフト
    マクロの外形情報を算出し、前記ソフトマクロ外形情報
    を用いて、前記チップ上に配線された配線データと前記
    ソフトマクロ内部の領域に配置されている前記遅延均等
    用バッファの削除を行うステップと、 (c)前記ソフトマクロの外形に仮想クロック端子を設
    定するステップと、 (d)前記ソフトマクロの外形情報を用いて、前記ソフ
    トマクロ内に、予め用意されたソフトマクロ専用の遅延
    均等用バッファの中から前記ソフトマクロスキュー仕様
    に対応させて選択された遅延均等用バッファを配置する
    ステップと、 (e)前記ソフトマクロ内の専用遅延均等用バッファの
    配置が完了した後に、前記チップ内の前記ソフトマクロ
    以外の領域に遅延均等用バッファを再配置し、前記ソフ
    トマクロ内の専用の遅延均等用バッファと、前記ソフト
    マクロ外の遅延均等用バッファとのクロックラインの接
    続は、前記ソフトマクロの仮想クロック端子を用いて行
    うステップと、 を含み、前記ソフトマクロ内部のクロック使用回路に供
    給されるクロック配線を共通化可能としたことを特徴と
    するクロックツリーシンセシス方法。
  3. 【請求項3】(f)前記再配線処理が完了した後のLS
    Iチップデータを利用して前記ソフトマクロ内の遅延均
    等用バッファの遅延を算出し、前記算出された遅延値に
    相当する遅延素子を遅延均等用バッファのネットに挿入
    するステップを含むことを特徴とする請求項2記載のク
    ロックツリーシンセシス方法。
  4. 【請求項4】(a)回路接続情報を入力するステップ
    と、 (b)遅延均等用バッファ(「CTSバッファ」とい
    う)のバッファ名及び遅延時間を規定したソフトマクロ
    CTSバッファ情報を入力し、ソフトマクロに要求され
    るクロックスキュー仕様から、前記ソフトマクロスキュ
    ー仕様を利用して、ソフトマクロで用いるCTSバッフ
    ァを選択するステップと、 (c)前記回路接続情報に従ってチップ内にCTSバッ
    ファを配置するステップと、 (d)前記回路接続情報に従って前記チップ内にブロッ
    クを配置・配線するステップと、 (e)ステップ(d)の配置配線結果データに基づき、
    ソフトマクロの外形情報を算出するステップと、 (f)前記ソフトマクロの外形情報を利用して、完了し
    たチップ上の配線データ、及びソフトマクロ内部に配置
    されているCTSバッファの削除を行うとともに、チッ
    プ内でCTSバッファの配置禁止領域を設定するステッ
    プと、 (g)前記ソフトマクロの外形情報に対して、仮想クロ
    ック端子の生成を行うステップと、 (h)前記ソフトマクロの外形情報を利用して、前記ソ
    フトマクロ内に前記選択されたCTSバッファを配置
    し、その際、前記ソフトマクロのクロック供給ラインの
    開始点は、前記ソフトマクロ仮想クロック端子を用いる
    ステップと、 (i)前記ソフトマクロ内のCTSバッファの配置が完
    了した後に、チップ内のCTSバッファの再配置処理を
    行い、その際、CTSバッファとソフトマクロのクロッ
    クラインの接続は、前記ソフトマクロ仮想クロック端子
    を用いて行うステップと、 (j)回路ブックの再配置・配線処理を行い、再配線処
    理が完了した後のLSIチップデータを利用して前記ソ
    フトマクロ内のCTSバッファの遅延値を算出し、前記
    算出された遅延値に相当する遅延素子をCTSバッファ
    のネットに挿入するステップと、 を含む、ことを特徴とするクロックツリーシンセシス方
    法。
  5. 【請求項5】(a)回路接続情報を入力する処理、 (b)遅延均等用バッファ(「CTSバッファ」とい
    う)のバッファ名及び遅延時間を規定したソフトマクロ
    CTSバッファ情報を入力し、ソフトマクロに要求され
    るクロックスキュー仕様から、前記ソフトマクロスキュ
    ー仕様を利用して、ソフトマクロで用いるCTSバッフ
    ァを選択する処理と、 (c)前記回路接続情報に従ってチップ内にチップCT
    Sバッファを配置する処理と、 (d)前記回路接続情報に従ってチップ内にブロックを
    配置・配線する処理と、 (e)前記配置・配線処理結果データに基づきソフトマ
    クロの外形情報を算出する処理と、 (f)前記ソフトマクロの外形情報を利用して、完了し
    たチップ上の配線データ、ソフトマクロ内に配置されて
    いるチップCTSバッファの削除を行うとともに、チッ
    プ内でチップCTSバッファの配置禁止領域を設定する
    処理と、 (g)前記ソフトマクロの外形情報に対して仮想クロッ
    ク端子の生成を行う処理と、 (h)前記ソフトマクロの外形情報を利用して、ソフト
    マクロ内において選択されたCTSバッファを配置し、
    その際、前記ソフトマクロのクロック供給ラインの開始
    点は、前記ソフトマクロ仮想クロック端子を用いる処理
    と、 (i)前記ソフトマクロ内のCTSバッファの配置が完
    了した後に、チップ内のCTSバッファの再配置処理を
    行い、その際、チップCTSバッファとソフトマクロの
    クロックラインの接続は、前記ソフトマクロ仮想クロッ
    ク端子を用いて行う処理と、 (j)回路ブロックの再配置及び再配線を行うステップ
    と、 (k)再配線処理が完了した後のLSIチップデータを
    利用し前記ソフトマクロ内のCTSバッファの遅延値を
    算出し、前記算出された遅延値に相当する遅延素子をチ
    ップCTSバッファのネットに挿入する処理と、 の前記(a)乃至(j)の各処理を設計自動化システム
    を構成するコンピュータ上で実行させるためのプログラ
    ムを記録した記録媒体。
JP11113138A 1999-04-21 1999-04-21 クロックツリーシンセシス方法及び装置 Pending JP2000305965A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11113138A JP2000305965A (ja) 1999-04-21 1999-04-21 クロックツリーシンセシス方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11113138A JP2000305965A (ja) 1999-04-21 1999-04-21 クロックツリーシンセシス方法及び装置

Publications (1)

Publication Number Publication Date
JP2000305965A true JP2000305965A (ja) 2000-11-02

Family

ID=14604535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11113138A Pending JP2000305965A (ja) 1999-04-21 1999-04-21 クロックツリーシンセシス方法及び装置

Country Status (1)

Country Link
JP (1) JP2000305965A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111934684A (zh) * 2020-07-31 2020-11-13 新华三半导体技术有限公司 一种缓冲器、时钟网格电路和信号驱动方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111934684A (zh) * 2020-07-31 2020-11-13 新华三半导体技术有限公司 一种缓冲器、时钟网格电路和信号驱动方法
CN111934684B (zh) * 2020-07-31 2022-12-20 新华三半导体技术有限公司 一种缓冲器、时钟网格电路和信号驱动方法

Similar Documents

Publication Publication Date Title
US7017132B2 (en) Methodology to optimize hierarchical clock skew by clock delay compensation
US7519927B1 (en) Wiring methods to reduce metal variation effects on launch-capture clock pairs in order to minimize cycle-time overlap violations
US7207024B2 (en) Automatic insertion of clocked elements into an electronic design to improve system performance
US20090113365A1 (en) Automated digital circuit design tool that reduces or eliminates adverse timing constraints due to an inherent clock signal skew, and applications thereof
JP2001357090A (ja) 論理合成方法及び論理合成装置
JP2006343151A (ja) スキャンテスト回路及びその配置方法
JP2011065320A (ja) レイアウト方法、レイアウト装置及びレイアウトプログラム
JP4437741B2 (ja) 半導体集積回路の設計装置、半導体集積回路および半導体集積回路の設計プログラム
JP2004303022A (ja) プリプロセッサ、集積回路の設計システム及び集積回路の設計方法
US20180246997A1 (en) Design method, design program, and design apparatus
JP2007072995A (ja) レイアウト装置、自動配置配線方法および半導体集積回路製造方法
JP5440094B2 (ja) 回路設計装置及び方法
US11301611B2 (en) Deterministic clustering and packing method for random logic on programmable integrated circuits
US6532584B1 (en) Circuit synthesis method
JP2000305965A (ja) クロックツリーシンセシス方法及び装置
JP2005136286A (ja) 半導体集積回路の設計方法、及びその装置
JP2006338090A (ja) 半導体集積回路の設計方法および設計装置
JP4886559B2 (ja) 半導体設計支援装置、半導体設計支援方法および半導体設計支援プログラム
JP4587754B2 (ja) クロック合成方法、半導体装置及びプログラム
JP6317603B2 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP6325846B2 (ja) 半導体集積回路のフロアプラン作成方法
JP2005339200A (ja) 半導体集積回路のクロックツリーレイアウト方法
JP2972719B2 (ja) 半導体集積回路装置及びその配置方法
JP2001243262A (ja) 半導体集積回路のレイアウト変更方法及びレイアウト変更支援装置及びレイアウト変更支援プログラムが記録された記録媒体
JP2005302062A (ja) 大規模回路のレイアウト方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020430