JP4512934B2 - 論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 - Google Patents
論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP4512934B2 JP4512934B2 JP2001114709A JP2001114709A JP4512934B2 JP 4512934 B2 JP4512934 B2 JP 4512934B2 JP 2001114709 A JP2001114709 A JP 2001114709A JP 2001114709 A JP2001114709 A JP 2001114709A JP 4512934 B2 JP4512934 B2 JP 4512934B2
- Authority
- JP
- Japan
- Prior art keywords
- scan
- circuit
- flop
- flip
- logic circuit
- 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 - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318583—Design for test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、論理設計された集積回路、特にコンピュータで自動レイアウトすることが可能なゲートアレイ(SOGを含む)を用いたASICに対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
半導体集積回路の高集積化及び高機能化に伴い、回路規模が増大して故障検出用テストパターン数が膨大になる。より少ないテストパターン数で高い故障検出率を得るために、半導体集積回路ではスキャンパス方式が採用されている。
【0003】
この方式では、図3に示すような集積回路10を論理設計した場合に、組み合わせ回路11に接続されたフリップフロップ12〜15を図5に示すように、通常動作モードとスキャンモードとを有するスキャンフリップフロップ12A〜15Aで置換してこれらを縦続接続することにより、スキャン回路を形成する。スキャンフリップフロップ12A〜15Aは互いに同一構成であり、例えば図6に示すように構成されている。図5では回路構成を簡単化して示しているが、実際にはスキャンフリップフロップが集積回路10A内に多数散在している。このため、スキャン回路がシフトレジスタとして機能するスキャンモードである場合、タイミングエラーが生じやすい。
【0004】
静的タイミング解析では、集積回路10Aをレイアウト設計し、配線の容量及び抵抗を計算し、セル及びセル間の信号伝播遅延時間を求め、タイミングエラーが発生するかどうかを計算により判定する。あるスキャンフリップフロップでタイミングエラーが発生すると判定された場合には、エラーを解消するためにその前段のスキャンフリップフロップのセルが例えば図6に示すようなLUL(ロックアップラッチ)付スキャンフリップフロップ13Bのセルで置換される。
【0005】
ところが、集積回路10Aが最適レイアウト設計されていることと、通常のスキャンフリップフロップよりもLUL付スキャンフリップフロップの方がセル面積が広いことから、セル置換により隣のセルとオーバラップする可能性が大きい。このため、セルの移動及びクロック配線の引き直しをする必要が発生し、これにより新たなタイミングエラーを引き起こす可能性がある。タイミングエラーが発生するとレイアウト設計をやり直す必要があり、その度にタイミング検証及びタイミング調整を行わなければならず、開発期間が増大する原因となる。
【0006】
この問題は、スキャン回路を最初からLUL付スキャンフリップフロップのみで構成することにより解決される。
【0007】
しかし、この場合、回路面積が増大するのみでなく、消費電力が増大するという新たな問題が生ずる。
【0008】
【発明が解決しようとする課題】
特にASICでは短納期化が要求されており、集積回路の開発期間短縮化を図る必要がある。また、携帯電子機器に用いられる集積回路は、電池長寿命化のために消費電力の低減化を図る必要がある。
【0009】
本発明の目的は、このような事情に鑑み、トレードオフの関係にある開発期間の短縮化と低消費電力化の両方を達成することが可能な、論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体を提供することにある。
【0010】
【課題を解決するための手段及びその作用効果】
本発明による論理設計された集積回路のレイアウト設計及びタイミング調整方法の一態様では、
(a)論理設計された第1論理回路に対し、該第1論理回路に含まれる複数のフリップフロップの各々を、第1スキャンフリップフロップのスキャンアウト部にさらにラッチ回路が付加された第2スキャンフリップフロップで置換し、さらに該複数の第2スキャンフリップフロップを縦続接続して第1スキャン回路を形成することにより、第2論理回路を生成し、
(b)該第2論理回路をレイアウト設計し、
(c)第2論理回路に対し、該第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第3論理回路の静的タイミング解析を行い、その結果に基づきタイミング調整する。
【0011】
第1スキャンフリップフロップよりも第2スキャンフリップフロップの方がセル面積が広いので、この構成によれば、タイミング調整によりセルの移動やクロック配線の引き直しをする必要がなく、これにより、タイミング調整とレイアウト変更の繰り返し回数が低減され、集積回路の開発期間を短縮することができる。
【0012】
また、タイミング調整のために必要な部分のみ第2スキャンフリップフロップを用いているので、集積回路の消費電力を低減することができる。
【0013】
したがって、従来ではトレードオフの関係にあった開発期間の短縮化と低消費電力化の両方を達成することができる。
【0014】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【0015】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。
【0016】
図1は、本発明の一実施形態の、論理設計された集積回路に対するレイアウト設計及びタイミング調整装置のハードウェア構成を示す概略ブロック図である。
【0017】
この集積回路は、コンピュータ1による自動レイアウトが可能なものであり、例えばゲートアレイを用いたASICである。
【0018】
この装置のハードウエア構成は一般的なコンピュータシステムであり、コンピュータ1に、入力データ及び処理プログラムが格納された記憶装置2と、処理結果であるレイアウトが格納される記憶装置3と、操作者がコンピュータ1に対し指示を与えるための入力装置4と、指示内容や処理進行状況などを表示する表示装置5とが接続されている。
【0019】
この入力データは、例えば図3に示すような論理設計された集積回路10のデータ(ネットリストを含む、以下同様)と、セルデータ(セル遅延時間を含む、以下同様)と、レイアウトに基づきゲート間信号伝播遅延時間を計算するのに用いられる配線抵抗率及び配線間容量計算式中の係数値(遅延パラメータ値)を含む。このセルデータは、スキャン回路を構成するセルとこれに接続されるセルのデータであり、図6に示すようなスキャンフリップフロップ13A及び図7に示すようなLUL付スキャンフリップフロップ13Bのセルと、タイミング調整用バッファゲートのセルと、スキャン回路に接続された組み合わせ回路11内のセルのデータを含む。記憶装置2及び3にそれぞれ格納された論理集積回路及びレイアウトのデータは、後述のように更新される。
【0020】
ここで、図6に示すスキャンフリップフロップ13Aについて概説する。
【0021】
スキャンフリップフロップ13Aは、マスタースレーブ型であって、公知の構成であり、スキャンモードSMに応じデータ入力端Dとスキャンイン端SIの信号の一方を選択して出力するセレクタ20と、この出力が供給されるマスターラッチ回路21と、回路21の出力が供給されるスレーブラッチ回路22とを備えている。図6中、23〜28はPMOSトランジスタとNMOSトランジスタとが並列接続された転送ゲートであり、30〜40はCMOSインバータである。
【0022】
上記構成において、スキャンモードSMが高レベルのときには転送ゲート23及び24がそれぞれオン及びオフになってスキャンイン端SIの信号が選択され、スキャンモードSMが低レベルのときには転送ゲート23及び24がそれぞれオフ及びオンになってデータ入力端Dの信号が選択される。
【0023】
クロック入力端Cが低レベルのときには、転送ゲート25〜28がそれぞれオン、オフ、オフ、及びオンになり、スレーブラッチ回路22がデータを保持した状態でセレクタ20の出力がマスターラッチ回路21に取り込まれる。次にクロック入力端Cが高レベルに遷移すると、転送ゲート25〜28がそれぞれ前記と逆の状態になって、マスターラッチ回路21が入力データをラッチすると共にスレーブラッチ回路22がマスターラッチ回路21の出力を取り込む。データ出力端Q及びスキャンアウト端SOの論値値は、インバータ32のそれと同一であり、データ出力端*Qの論理値はデータ出力端Qのそれを反転したものである。
【0024】
図7のLUL付スキャンフリップフロップ13Bは、図6のインバータ40をLULラッチ回路41で置換した構成であり、LULラッチ回路41は、転送ゲート42及び43と、インバータ44及び45とを備えている。転送ゲート42及び43のオン/オフはそれぞれスレーブラッチ回路22の転送ゲート27及び28のそれと逆であり、スレーブラッチ回路22がデータを保持している時にはLULラッチ回路41はスレーブラッチ回路22の出力を取り込み、スレーブラッチ回路22が入力を取り込んでいる時にはLULラッチ回路41はデータを保持する。これにより、スキャンアウト端SOの信号はデータ出力端Qの信号よりクロックの半周期だけ遅れる。
【0025】
図2は、上記プログラムによる処理の内容を示す概略フローチャートである。
【0026】
コンピュータ1は、入力装置4からの指示に基づき記憶装置2に格納されたプログラムをロードしてこれを実行することにより、以下の処理を行う。
【0027】
(S1)論理設計された回路のデータを記憶装置2から読み込む。この回路は、例えば図3に示すような集積回路10であり、組み合わせ回路11と、フリップフロップ12〜15からなる順序回路とを有する。図3では簡単化のために両回路を分離して示しているが、実際には多数のフリップフロップが集積回路10内に散在している。
【0028】
(S2)フリップフロップ12〜15をそれぞれ図4に示すようにLUL付スキャンフリップフロップ12B〜15Bで置換し、さらに、LUL付スキャンフリップフロップ12B〜15Bをそれぞれのスキャンイン端SI及びスキャンアウト端SOに関し縦続接続することにより、スキャン回路を形成する。このスキャン回路では、初段のLUL付スキャンフリップフロップ12Bのスキャンイン端SIが集積回路10Bのスキャンイン入力端子SINに接続され、最終段のLUL付スキャンフリップフロップ15Bのスキャンアウト端SOがバッファゲート16を介して集積回路10Bのスキャンアウト出力端子SOUTに接続されている。また、LUL付スキャンフリップフロップ12B〜15BのスキャンモードSMが集積回路10Bのスキャンモード入力端子*SMに接続されている。LUL付スキャンフリップフロップ12B〜15Bは互いに同一構成である。
【0029】
記憶装置2に格納されている論理回路のデータを、この論理回路に対し該スキャン回路が形成されたものに変更することにより、論理回路のデータで更新する。
【0030】
(S3)図4の集積回路10Bをレイアウト設計し、その結果を記憶装置3に格納する。
【0031】
これにより、通常のスキャンフリップフロップよりもサイズが大きいLUL付スキャンフリップフロップ12B〜15Bの配置領域が確保されるので、以下に述べるようにLUL付スキャンフリップフロップ12B〜15Bをそれぞれスキャンフリップフロップ12A〜15Aで置換し、タイミング調整の必要に応じその一部をLUL付スキャンフリップフロップ12Bで置換しても、後述のステップS13においてセルの移動やクロック配線の引き直しをする必要がなくなる。
【0032】
(S4)LUL付スキャンフリップフロップ12B〜15Bをそれぞれ図5に示すようにスキャンフリップフロップ12A〜15Aで置換したスキャン回路について、スキャンモードSMが低レベルである時(スキャンモード時)のセル及びセル間信号伝播遅延時間を含むスタンダードディレイフォーマット(SDF)ファイルを作成する。この置換は、記憶装置2に格納されている論理回路に反映される。この場合、セル名が変わるが、セルの入出力ピンの数及び名称は変わらない。セル遅延時間は、記憶装置2に格納さているスキャンフリップフロップのセルデータに含まれているものを読み出すことにより得られる。ゲート間遅延時間は、記憶装置2に格納されている論理回路のネットリストと、そのネットに対応した、ステップS3のレイアウト上のネットの形状及び寸法と、記憶装置2に格納されている上記遅延パラメータ値とから求められる。レイアウトをセル置換後のものに更新しないのは、更新の影響が小さく、また、後述のステップS12でレイアウト変更を伴うタイミング調整を行うからである。
【0033】
(S5)図5のスキャン回路のスキャンモード時における静的タイミング解析を、スタティックタイミングアナライザ(STAルーチン)で行う。
【0034】
(S6)この静的タイミング解析によりタイミングエラーが発生した場合にはステップS7へ進み、そうでない場合にはステップS9へ進む。タイミングエラーは通常、発生する。
【0035】
図8は、図5のスキャンフリップフロップ14Aでタイミングエラーが生ずる場合を示すタイミングチャートであり、スキャンフリップフロップ13Aのクロック入力端C、スキャンイン端SI及びスキャンアウト端SOでのクロック信号CLK1、スキャンデータ信号S1及びS2と、スキャンフリップフロップ14Aのクロック入力端C及びスキャンイン端SIでのクロック信号CLK2及びスキャンデータ信号S2aを示す。
【0036】
クロック信号CLK1の立ち上がりでスキャンデータ信号S1がS2として保持される。クロック信号CLK2はクロック信号CLK1よりΔtだけ遅延している。スキャンデータ信号S2aもS2に対し遅延している。実際の回路では、プロセスのばらつきや温度変動などによりスキャンデータ信号S2aの遅延量がばらつくので(Δtもばらつくが、簡単化のために図8ではこれが一定であるとしている)、タイミングエラーが発生するかどうかの判断で考慮される。
【0037】
例えばスキャンフリップフロップ13Aがクロック信号CLK1の立ち上がりで2値D1を保持するとき、スキャンフリップフロップ14Aはクロック信号CLK2の立ち上がりでスキャンデータ信号S2aの2値D0を保持する必要がある。しかし、図8の場合にはこれを保持できない場合があるので、スキャンフリップフロップ14Aにおいてタイミングエラー(ホールドエラー)が発生したと判定される。
【0038】
(S7)タイミングエラーが発生したスキャンフリップフロップ14Aの前段のスキャンフリップフロップ13Aを、LUL付スキャンフリップフロップ13Bで置換することにより、タイミング調整する。この置換は、ステップS4と同様に、記憶装置2に格納されている論理回路に対してのみ反映(回路変更)され、レイアウトには反映されない。
【0039】
図9は、図5のスキャンフリップフロップ13AをLUL付スキャンフリップフロップ13Bで置換した集積回路10Cを示す。
【0040】
図10は、この置換により図9のスキャンフリップフロップ14Aでのタイミングエラーが解消した場合を示すタイミングチャートであり、LUL付スキャンフリップフロップ13Bのクロック入力端C、スキャンイン端SI及びスキャンアウト端SOでのクロック信号CLK1、スキャンデータ信号S1及びS2bと、スキャンフリップフロップ14Aのクロック入力端C及びスキャンイン端SIでのクロック信号CLK2及びスキャンデータ信号S2cを示す。
【0041】
LUL付スキャンフリップフロップ13Bは、上述のようにクロック信号CLK1の立ち下がりでデータをLULラッチ回路41に保持するので、スキャンデータ信号S2bは図8の信号S2よりも半周期遅れ、これにより、スキャンフリップフロップ14Aはクロック信号CLK2の立ち上がりでスキャンデータ信号S2cを保持することができ、タイミングエラーが解消する。
【0042】
(S8)ステップS7で変更された後の順序回路(図9のスキャンフリップフロップ12A、13B、14A及び15A)及びこれに接続されたセルに関し、ステップS4と同様にしてSDFファイルを作成する。
【0043】
(S9)この順序回路に関し、スキャンモード入力端子*SMが高レベル(通常動作モード)である場合について静的タイミング解析を行う。
【0044】
(S10)ステップS7で回路が変更されているので、この順序回路に関し、スキャンモードである場合について新たなタイミングエラーが発生する可能性がある。そこで、このスキャン回路に関し、スキャンモード時の静的タイミング解析を行う。
【0045】
(S11)ステップS9及びS10でタイミングエラーがなければ処理を終了し、あればステップS12へ進む。
【0046】
(S12)ステップS9又はS10でタイミングエラーが生じた場合には、バッファゲートを付加して信号を遅延させることによりタイミング調整する。図11は、ステップS9及びS10でのタイミングエラーに対しそれぞれバッファゲート17及び18を付加した場合を示す。バッファゲート17及び18はいずれも偶数個のインバータを縦続接続したものである。既にステップS7でLUL付スキャンフリップフロップ13Bを用いてタイミング調整が行われているので、ここでのスキャンモード時のタイミング調整は微調整であり、タイミング調整が必要な場合はバッファゲートの付加で充分である。
【0047】
(S13)この回路変更に対応して、記憶装置2に格納されているバッファセルを用い、レイアウトを変更する。ステップS8〜S13のループの初回では、ステップS4及びステップS7での回路変更に対しても、記憶装置2に格納されているスキャンフリップフロップ及びLUL付スキャンフリップフロップのセルを用いてレイアウトを変更する。次に、ステップS8へ戻る。
【0048】
本実施形態によれば、図4に示すようにLUL付スキャンフリップフロップでスキャン回路を形成してレイアウト設計した後に該LUL付スキャンフリップフロップを通常のスキャンフリップフロップで置換して図5に示す回路に変換し、この回路に対し静的タイミング解析を行い、エラーが生じた場合に、対応するスキャンフリップフロップをLUL付スキャンフリップフロップで置換しているので、この置換によりセルの移動やクロック配線の引き直しをする必要がなく、これにより、ステップS8〜S13での繰り返し回数が低減され、集積回路の開発期間を短縮することができる。
【0049】
また、必要な部分のみLUL付スキャンフリップフロップを用いているので、集積回路の消費電力を低減することができる。
【0050】
さらに、ステップS4及びS7では回路変更をレイアウトに反映させず、ステップS13において反映させるので、回路変更毎にレイアウトを変更する場合よりも処理時間を短縮することができる。
【0051】
なお、本発明には外にも種々の変形例が含まれる。
【0052】
例えば、図2のステップS4及びS7において回路変更をレイアウトに反映させる構成であってもよい。
【0053】
また、図2のステップ7において、
(LUL付スキャンフリップフロップのセル面積)−(通常のスキャンフリップフロップのセル面積)≧(タイミングエラー解消可能な1以上のバッファセルの合計面積)であれば、LUL付スキャンフリップフロップの替わりにバッファセルを付加してタイミング調整を行ってもよい。
【0054】
さらに、本実施形態では集積回路がゲートアレイを用いて形成される場合を説明したが、本発明は、コンピュータによる自動レイアウトが可能なスタンダードセル方式の集積回路やフルカスタム集積回路に対しても適用可能である。
【図面の簡単な説明】
【図1】本発明の一実施形態の、論理設計された集積回路に対するレイアウト設計及びタイミング調整装置のハードウェア構成を示す概略ブロック図である。
【図2】プログラムによる処理手順を示す概略フローチャートである。
【図3】図2のステップS1の説明図である。
【図4】図2のステップS2の説明図である。
【図5】図2のステップS4の説明図である。
【図6】スキャンフリップフロップの回路図である。
【図7】ロックアップラッチ付スキャンフリップフロップの回路図である。
【図8】図5のスキャンフリップフロップ14Aでタイミングエラーが生ずる場合を示すタイミングチャートである。
【図9】図2のステップS7の説明図である。
【図10】図9のスキャン回路でタイミングエラーが解消した場合を示すタイミングチャートである。
【図11】図2のステップS12の説明図である。
【符号の説明】
1 コンピュータ
2、3 記憶装置
4 入力装置
5 表示装置
10、10A〜10D 集積回路
11 組み合わせ回路
12〜15 フリップフロップ
12A、13A、14A、15A スキャンフリップフロップ
12B、13B、14B、15B LUL付スキャンフリップフロップ
16〜18 バッファゲート
20 セレクタ
21 マスターラッチ回路
22 スレーブラッチ回路
23〜28、42、43 転送ゲート
30〜39、44、45 インバータ
C クロック入力端
D データ入力端
SI スキャンイン端
SO スキャンアウト端
*SM スキャンモード入力端子
SIN スキャンイン入力端子
SOUT スキャンアウト出力端子
CLK クロック入力端子
Claims (10)
- コンピュータが、
(a)論理設計された第1論理回路に対し、該第1論理回路に含まれる複数のフリップフロップの各々を、第1スキャンフリップフロップのスキャンアウト部にさらにラッチ回路が付加された第2スキャンフリップフロップで置換し、さらに該複数の第2スキャンフリップフロップを縦続接続して第1スキャン回路を形成することにより、第2論理回路を生成し、
(b)該第2論理回路をレイアウト設計し、
(c)該レイアウト設計後の第2論理回路に対し、該第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第3論理回路の静的タイミング解析を行い、その結果に基づき該第3論理回路に対しタイミング調整を行う、
ことを特徴とする論理設計された集積回路のレイアウト設計及びタイミング調整方法。 - 上記ステップ(c)では、該コンピュータが、
(c1)上記第2論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、上記第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第2スキャン回路の、スキャンモード時のセル間の第1信号伝播遅延時間を求め、
(c2)該第1信号伝播遅延時間及び該第1スキャンフリップフロップのセル遅延時間に基づいて、該第2スキャン回路のスキャンモード時の静的タイミング解析を行い、
(c3)該静的タイミング解析により第1スキャンフリップフロップでタイミングエラーが発生した場合には、該エラーが発生した第1スキャンフリップフロップの前段の第1スキャンフリップフロップを第2スキャンフリップフロップで置換して該第2スキャン回路を第3スキャン回路に変更することによりタイミング調整する、
ことを特徴とする請求項1記載の方法。 - 上記ステップ(c)ではさらに、該コンピュータが、
(c4)上記第3論理回路に対し上記第2スキャン回路を上記第3スキャン回路で置換した第4論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、該第2スキャン回路のセル及び該第2スキャン回路に接続されたセルを含むセル群に関するセル間の第2信号伝播遅延時間を求め、該第2信号伝播遅延時間及び該セル群の各セルのセル遅延時間に基づいて、該第3スキャン回路が通常動作モードである場合及びスキャンモードである場合の静的タイミング解析を行い、
(c5)該第4論理回路の静的タイミング解析により該第3スキャン回路でタイミングエラーが発生した場合には、エラーが発生した第1又は第2スキャンフリップフロップとその前段の第1又は第2スキャンフリップフロップとの間にバッファセルを挿入することによりタイミング調整を行う、
ことを特徴とする請求項2記載の方法。 - 論理設計された第1論理回路のデータと、第1スキャンフリップフロップ及び該第1スキャンフリップフロップのスキャンアウト部にラッチ回路が付加されている第2スキャンフリップフロップのデータと、プログラムとが格納される記憶装置と、
該プログラムに従って動作するコンピュータとを有し、該コンピュータは該データを読み出し該プログラムに従って、
(a)該第1論理回路に対し、該第1論理回路に含まれる複数のフリップフロップの各々を、該第2スキャンフリップフロップで置換し、さらに該複数の第2スキャンフリップフロップを縦続接続して第1スキャン回路を形成することにより、第2論理回路を生成し、
(b)該第2論理回路をレイアウト設計し、
(c)該レイアウト設計後の第2論理回路に対し、該第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第3論理回路の静的タイミング解析を行い、その結果に基づき該第3論理回路に対しタイミング調整を行い、
(d)該タイミング調整の結果を出力する、
ことを特徴とする論理設計された集積回路のレイアウト設計及びタイミング調整装置。 - 上記コンピュータは上記プログラムに従って、上記ステップ(c)において、
(c1)上記第2論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、上記第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第2スキャン回路の、スキャンモード時のセル間の第1信号伝播遅延時間を求め、
(c2)該第1信号伝播遅延時間及び該第1スキャンフリップフロップのセル遅延時間に基づいて、該第2スキャン回路のスキャンモード時の静的タイミング解析を行い、
(c3)該静的タイミング解析により第1スキャンフリップフロップでタイミングエラーが発生した場合には、該エラーが発生した第1スキャンフリップフロップの前段の第1スキャンフリップフロップを第2スキャンフリップフロップで置換して該第2スキャン回路を第3スキャン回路に変更することによりタイミング調整する、
ことを特徴とする請求項4記載の装置。 - 上記コンピュータは上記プログラムに従って、上記ステップ(c)においてさらに、
(c4)上記第3論理回路に対し上記第2スキャン回路を上記第3スキャン回路で置換した第4論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、該第2スキャン回路のセル及び該第2スキャン回路に接続されたセルを含むセル群に関するセル間の第2信号伝播遅延時間を求め、該第2信号伝播遅延時間及び該セル群の各セルのセル遅延時間に基づいて、該第3スキャン回路が通常動作モードである場合及びスキャンモードである場合の静的タイミング解析を行い、
(c5)該第4論理回路の静的タイミング解析により該第3スキャン回路でタイミングエラーが発生した場合には、エラーが発生した第1又は第2スキャンフリップフロップとその前段の第1又は第2スキャンフリップフロップとの間にバッファセルを挿入することによりタイミング調整を行う、
ことを特徴とする請求項5記載の装置。 - コンピュータに対し、
(a)論理設計された第1論理回路のデータと、第1スキャンフリップフロップ及び該第1スキャンフリップフロップのスキャンアウト部にラッチ回路が付加されている第2スキャンフリップフロップのデータと、プログラムとが格納された記憶装置から、これらのデータを読み出させ、
(b)該第1論理回路に対し、該第1論理回路に含まれる複数のフリップフロップの各々を、該第2スキャンフリップフロップで置換し、さらに該複数の第2スキャンフリップフロップを縦続接続して第1スキャン回路を形成することにより、第2論理回路を生成させ、
(c)該第2論理回路をレイアウト設計させ、
(d)該レイアウト設計後の第2論理回路に対し該第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第3論理回路の静的タイミング解析を行わせ、その結果に基づき該第3論理回路に対しタイミング調整を行わせ、
(e)該タイミング調整の結果を出力させる、
ことを特徴とするプログラム。 - 上記プログラムは上記コンピュータに対し、上記ステップ(d)において、
(d1)上記第2論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、上記第1スキャン回路の各第2スキャンフリップフロップを第1スキャンフリップフロップで置換して得られる第2スキャン回路の、スキャンモード時のセル間の第1信号伝播遅延時間を求めさせ、
(d2)該第1信号伝播遅延時間及び該第1スキャンフリップフロップのセル遅延時間に基づいて、該第2スキャン回路のスキャンモード時の静的タイミング解析を行わせ、
(d3)該静的タイミング解析により第1スキャンフリップフロップでタイミングエラーが発生した場合には、該エラーが発生した第1スキャンフリップフロップの前段の第1スキャンフリップフロップを第2スキャンフリップフロップで置換して該第2スキャン回路を第3スキャン回路に変更することによりタイミング調整させる、
ことを特徴とする請求項7記載のプログラム。 - 上記プログラムは上記コンピュータに対し、上記ステップ(d)においてさらに、
(d4)上記第3論理回路に対し上記第2スキャン回路を上記第3スキャン回路で置換した第4論理回路のネットリストと上記レイアウト設計により得られたレイアウトとに基づいて、該第2スキャン回路のセル及び該第2スキャン回路に接続されたセルを含むセル群に関するセル間の第2信号伝播遅延時間を求めさせ、該第2信号伝播遅延時間及び該セル群の各セルのセル遅延時間に基づいて、該第3スキャン回路が通常動作モードである場合及びスキャンモードである場合の静的タイミング解析を行わせ、
(d5)該第4論理回路の静的タイミング解析により該第3スキャン回路でタイミングエラーが発生した場合には、エラーが発生した第1又は第2スキャンフリップフロップとその前段の第1又は第2スキャンフリップフロップとの間にバッファセルを挿入することによりタイミング調整を行わせる、
ことを特徴とする請求項8記載のプログラム。 - 請求項7乃至9のいずれか1つに記載のプログラムが記録されていることを特徴とするコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001114709A JP4512934B2 (ja) | 2001-04-13 | 2001-04-13 | 論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 |
US10/033,938 US6687890B2 (en) | 2001-04-13 | 2002-01-03 | Method for layout design and timing adjustment of logically designed integrated circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001114709A JP4512934B2 (ja) | 2001-04-13 | 2001-04-13 | 論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002312410A JP2002312410A (ja) | 2002-10-25 |
JP4512934B2 true JP4512934B2 (ja) | 2010-07-28 |
Family
ID=18965725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001114709A Expired - Fee Related JP4512934B2 (ja) | 2001-04-13 | 2001-04-13 | 論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6687890B2 (ja) |
JP (1) | JP4512934B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6591407B1 (en) * | 2000-03-01 | 2003-07-08 | Sequence Design, Inc. | Method and apparatus for interconnect-driven optimization of integrated circuit design |
JP2003006253A (ja) * | 2001-06-20 | 2003-01-10 | Mitsubishi Electric Corp | ロジック回路設計方法およびその方法をコンピュータに実行させるプログラム |
US6766274B2 (en) * | 2001-08-06 | 2004-07-20 | Texas Instruments Incorporated | Determining the failure rate of an integrated circuit |
JP2005149313A (ja) * | 2003-11-18 | 2005-06-09 | Toshiba Corp | 半導体集積回路の設計方法および半導体集積回路 |
JP4471794B2 (ja) | 2004-09-17 | 2010-06-02 | 富士通マイクロエレクトロニクス株式会社 | タイミング解析装置、タイミング解析方法、タイミング解析プログラムおよび記録媒体 |
US7146551B2 (en) * | 2005-01-20 | 2006-12-05 | Hewlett-Packard Development Company, L.P. | Method and system of modifying data in functional latches of a logic unit during scan chain testing thereof |
DE602005022230D1 (de) * | 2005-03-23 | 2010-08-19 | Freescale Semiconductor Inc | Verfahren zur race-verhinderung und einrichtung mit race-verhinderungsfähigkeiten |
WO2012124117A1 (ja) * | 2011-03-17 | 2012-09-20 | 富士通株式会社 | タイミングエラー除去方法、設計支援装置、及びプログラム |
JP2015106594A (ja) * | 2013-11-28 | 2015-06-08 | 富士通株式会社 | 診断装置、診断装置の制御方法、および診断装置の制御プログラム |
US10726189B2 (en) | 2018-07-23 | 2020-07-28 | Sandisk Technologies Llc | Less-pessimistic static timing analysis for synchronous circuits |
TWI722360B (zh) * | 2018-11-13 | 2021-03-21 | 大陸商創意電子(南京)有限公司 | 測試系統與測試方法 |
KR102691279B1 (ko) | 2019-10-16 | 2024-08-01 | 삼성전자주식회사 | 반도체 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1050848A (ja) * | 1996-08-02 | 1998-02-20 | Oki Electric Ind Co Ltd | 集積回路の配置配線設計方法 |
JP2000148809A (ja) * | 1998-11-05 | 2000-05-30 | Nec Ic Microcomput Syst Ltd | スキャンテスト方法及びスキャンテスト装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5059819A (en) * | 1986-12-26 | 1991-10-22 | Hitachi, Ltd. | Integrated logic circuit |
US5257223A (en) * | 1991-11-13 | 1993-10-26 | Hewlett-Packard Company | Flip-flop circuit with controllable copying between slave and scan latches |
JPH07262254A (ja) | 1994-03-18 | 1995-10-13 | Fujitsu Ltd | 半導体集積回路の設計支援装置 |
US5717700A (en) * | 1995-12-04 | 1998-02-10 | Motorola, Inc. | Method for creating a high speed scan-interconnected set of flip-flop elements in an integrated circuit to enable faster scan-based testing |
US5812561A (en) * | 1996-09-03 | 1998-09-22 | Motorola, Inc. | Scan based testing of an integrated circuit for compliance with timing specifications |
JPH10242809A (ja) * | 1997-02-26 | 1998-09-11 | Nec Corp | スキャン用フリップフロップ回路 |
US6389566B1 (en) * | 1998-06-02 | 2002-05-14 | S3 Incorporated | Edge-triggered scan flip-flop and one-pass scan synthesis methodology |
-
2001
- 2001-04-13 JP JP2001114709A patent/JP4512934B2/ja not_active Expired - Fee Related
-
2002
- 2002-01-03 US US10/033,938 patent/US6687890B2/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1050848A (ja) * | 1996-08-02 | 1998-02-20 | Oki Electric Ind Co Ltd | 集積回路の配置配線設計方法 |
JP2000148809A (ja) * | 1998-11-05 | 2000-05-30 | Nec Ic Microcomput Syst Ltd | スキャンテスト方法及びスキャンテスト装置 |
Also Published As
Publication number | Publication date |
---|---|
US20020157074A1 (en) | 2002-10-24 |
JP2002312410A (ja) | 2002-10-25 |
US6687890B2 (en) | 2004-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5878055A (en) | Method and apparatus for verifying a single phase clocking system including testing for latch early mode | |
US5870411A (en) | Method and system for testing self-timed circuitry | |
WO2002063313A2 (en) | Method for scan testing of digital circuit, digital circuit and program product | |
JP4512934B2 (ja) | 論理設計された集積回路に対するレイアウト設計及びタイミング調整の方法及び装置並びにこの方法を実行するためのプログラム及びこのプログラムが記録されたコンピュータ読み取り可能な記録媒体 | |
US11500018B2 (en) | Asynchronous circuits and test methods | |
JP2004260093A (ja) | 半導体集積回路装置と設計自動化装置及び方法並びにプログラム | |
US7944237B2 (en) | Adjustable hold flip flop and method for adjusting hold requirements | |
JPH05273311A (ja) | 論理集積回路 | |
EP0330841B1 (en) | Logic circuit with a test function | |
US7584393B2 (en) | Scan test circuit and method of arranging the same | |
US10658062B2 (en) | Simultaneous scan chain initialization with disparate latches | |
JP5651058B2 (ja) | スキャンフリップフロップ回路、スキャンテスト回路及びその制御方法 | |
WO2004042786A2 (en) | High-frequency scan testability with low-speed testers | |
JPH08201484A (ja) | 半導体集積回路装置 | |
US5912900A (en) | Method and system for testing self-timed circuitry | |
WO2024148502A1 (en) | Circuitry for staggering capture clocks in testing electronic circuits with multiple clock domains | |
EP4435445A1 (en) | Integrated circuit and operating method thereof | |
Nemati et al. | Asynchronous test hardware for null convention logic | |
JPH0261569A (ja) | シリアルシフトレジスタ | |
JP3430056B2 (ja) | ディレイテスト容易化回路を内蔵した集積回路および集積回路のパスディレイテスト方法 | |
JP4186559B2 (ja) | スキャンフリップフロップ | |
JP2004294213A (ja) | スキャン機能付フリップフロップ回路およびスキャンテスト回路ならびにスキャンテスト回路配線方法 | |
JP3563280B2 (ja) | クロック制御方法および装置 | |
JP2004037264A (ja) | スキャン機能付きフリップフロップ回路およびスキャンテスト回路 | |
JPH06186308A (ja) | 論理回路テスト方法及びテスト入力回路及びテスト出力回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080121 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080728 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100226 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100427 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100427 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130521 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140521 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |