JP3011591B2 - 半導体集積回路の誤動作の判定方法 - Google Patents

半導体集積回路の誤動作の判定方法

Info

Publication number
JP3011591B2
JP3011591B2 JP5283569A JP28356993A JP3011591B2 JP 3011591 B2 JP3011591 B2 JP 3011591B2 JP 5283569 A JP5283569 A JP 5283569A JP 28356993 A JP28356993 A JP 28356993A JP 3011591 B2 JP3011591 B2 JP 3011591B2
Authority
JP
Japan
Prior art keywords
flip
circuit
clock
flops
malfunction
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
Application number
JP5283569A
Other languages
English (en)
Other versions
JPH07141412A (ja
Inventor
敦 黒川
隆夫 名野
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP5283569A priority Critical patent/JP3011591B2/ja
Publication of JPH07141412A publication Critical patent/JPH07141412A/ja
Application granted granted Critical
Publication of JP3011591B2 publication Critical patent/JP3011591B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、半導体集積回路の誤動
作の判定方法に関する。近年、半導体集積回路の大規模
化に伴い、フリップフロップに供給されるクロック間の
時間のずれによって生ずる回路の誤動作が問題になって
いる。本発明は、パターンレイアウトの作成後に、半導
体集積回路が誤動作するか否かを判定する方法を提供す
ることを目的とする。
【0002】
【従来の技術】近年の大規模半導体集積回路において
は、データ圧縮等を行うデータ処理LSIに代表される
ような、数百〜数千個のフリップフロップを含むものが
ある。この種の大規模半導体集積回路では、配線面積を
抑えるため、2層アルミ配線技術を適用してこれらフリ
ップフロップにクロック信号を供給するクロックライン
の集積化を図っている。しかし、一方でクロックスキュ
ーと呼ばれるクロック間の時間のずれによって生ずる回
路の誤動作が問題になっている。
【0003】以下で、このクロックスキュ−による回路
の誤動作を図7乃至図9を参照しながら具体的に説明す
る。今、図7に示す回路において、DFF1とDFF2
に供給されるクロックCLKのずれは全くないはずであ
る。ところが、図に示す回路をLSI化すると、図8に
示す如く、配線の寄生抵抗Rと寄生容量Cが存在するよ
うになり、このためクロックCLK1,CLK2の間に
時間のずれを生じる。この時間のずれが、クロックスキ
ューと呼ばれるものである。
【0004】次に、図9に示すタイミング図を参照しな
がら、クロックスキューによる誤動作の問題を説明す
る。 (1)クロックスキューが無い時(正常動作) DFF1の入力(IN1)の変化は、時刻t1で出力O
1の変化となる。そして、O1の変化は、時刻t2でD
FF2に取り込まれ、時刻t3でDFF2の出力O2と
して出力される。 (2)クロックスキュ−があるとき(誤動作) DFF1の出力O1が、時刻t1’より早くDFF2の
入力IN2へ到達してしまうと(本来ならば時刻t2で
DFF2へ取り込まれるはずであるが)、クロックスキ
ュー(t1〜t1')の間にDFF2に取り込まれ、時刻
t1’で出力O2として出てしまう。つまり、信号がつ
つ抜けになってしまう。これが、クロックスキューによ
る誤動作である。なお上記の誤動作は、クロックスキュ
ーの値が小さいか、あるいはDFF1の信号がO1から
IN2へ伝達される時間がクロックスキュー値よりも大
であれば発生しない。
【0005】従来、パターンレイアウト後に上記のクロ
ックスキューをチェックする方法としては、タイミング
検証に関する以下の方法がある。 バック・アノテーション法(Back Annotation法) 本方法は、配線の容量を各ノード毎に算出して、論理シ
ュミュレータへ戻して、論理シミュレーションを実行す
る方法である。しかしながら、同一ノードに接続された
セルについては、同時に信号が到達するとして扱ってい
るので、クロックスキューのような同一ノード上で生ず
る伝搬遅延時間差を識別することはできないという欠点
があった。 必要な回路を抽出する方法 本方法は、レイアウトパターンから必要な回路を抜き出
して、回路シミュレーションを実行する方法である。し
かしながら、必要な回路を抜き出す労力が大きいこと、
回路シミュレーションの条件設定(入力パルスや各ノー
ドの初期電位設定等)が複雑になる欠点があった。さら
に、かかる回路シミュレーションは数時間という長い実
行時間であるとともに、発散により解が得られない場合
がある。 スイッチレベルのシミュレーションによる方法 本方法は、レイアウトパターンからトランジスタレベル
で抽出し、スイッチレベルのシミュレーションを実行す
る方法である。本方法は、トランジスタを単純なスイッ
チに置き換えているので高速に計算できるが、条件設定
(入力パルスび条件や各ノードの初期電位設定等)が複
雑であるとともに、回路シミュレーションに比べて、計
算精度が悪いという欠点があった。
【0006】
【発明が解決しようとする課題】現在の大規模集積回路
のタイミング誤動作の原因のほとんどがクロックスキュ
ーによるものである。従って、パターンレイアウト後に
このクロックスキューによる誤動作を判定できればよ
い。しかしながら、上述したように、従来方法でこれを
行おうとすると、シミュレーションの実行時間が非常に
長かったり、条件設定が複雑である等の不都合があっ
た。本発明は、かかる従来方法の課題に鑑みて創作され
たものであり、迅速かつ正確に、半導体集積回路の誤動
作を判定する方法を提供することを目的としている。
【0007】
【課題を解決するための手段】本発明は、クロックライ
ンと前記クロックラインを駆動するクロックドライバー
と前記クロックラインに接続された複数のフリップフロ
ップを含む半導体集積回路の誤動作の判定方法におい
て、パターンレイアウト情報に基づき前記クロックライ
ンおよびクロックドライバーから成る等価回路を構成
し、前記等価回路に基づいて回路シミュレーションを実
行することによりクロックスキュー値を求め、前記クロ
ックスキュー値および回路接続情報に基づいて最も誤動
作しやすい条件のフリップフロップを検索し、前記フリ
ップフロップを前記等価回路に接続した後に回路シミュ
レーションを再度実行することにより、前記フリップフ
ロップが誤動作するか否かを判定することを特徴として
いる。
【0008】
【作用】上述の手段によれば、クロックラインおよびク
ロックドライバーから成る比較的簡単な等価回路でクロ
ックスキュー値を求めておき、その結果を利用して見つ
けた最も厳しい条件の2つのフリップフロップを上記等
価回路に配置して、回路シミュレーションを再度実行す
るという方法を採用しているので、従来方法と比べて全
体の処理時間が10分程度と短く(従来は数時間を要し
た)、また計算精度も優れている。
【0009】
【実施例】以下、本発明の一実施例について詳細に説明
する。図1は、本発明の一実施例の処理の流れを示すフ
ロー図である。図中1は、パターンレイアウト情報1で
あって、クロックラインと前記クロックラインを駆動す
るクロックドライバーと前記クロックラインに接続され
た複数のフリップフロップを含む半導体集積回路のパタ
ーンレイアウト情報を有する。
【0010】そのパターンレイアウト情報1からクロッ
クラインのレイアウト情報を抽出する(図中2)。そし
て、そのレイアウト情報に基づいて、クロックラインお
よびクロックドライバーから成る等価回路を構成する。
この等価回路は、クロックラインをCR回路で置き換
え、さらにフリップフロップの入力容量を付加したもの
である。次に、回路シミュレータに入力するプロセスパ
ラメータ情報6に基づいて、回路シミュレーションを実
行し(図中4)、各フリップフロップのクロック端子に
おけるクロックスキュー値を求める(図中5)。この回
路シミューションは、CR回路網を解くだけなので高速
に実行できる。
【0011】一方、図中6は、各フリップフロップの相
互の接続情報およびフリップフロップとクロックライン
との接続情報を有する回路接続情報である。この回路接
続情報6に基づいて、クロックラインに接続するフリッ
プフロップを信号の伝搬する順に順序付けを行う(図中
7)。そして、信号を直接伝搬する関係にある2つのフ
リップフロップ(2つのフリップフロップが直列に接続
されているもの)のうち、最も誤動作が起こりやすい条
件のものを検索する(図中8)。この検索は、2つのフ
リップフロップ間のクロックスキュー値およびQ出力と
D入力間の遅延時間(CR時定数)とで判断する。すな
わち、クロックスキュー値が大きい程、またQ出力とD
入力間の遅延時間が短い程、誤動作が起こりやすいと判
断する。なお、信号が直接伝搬する関係にないフリップ
フロップは、誤動作に関係しないので無視している。次
に、このようにして検索した2つのフリップフロップを
上記の等価回路に接続し、回路シミュレーションを実行
する(図中9)。この回路シミュレーションは、CR回
路網に2つのフリップフロップを付け加えただけのもの
を解いているので、高速に実行される。
【0012】そして、回路シミュレーションの結果の判
定を行う(図中10)。すなわち、フリップフロップが
正常に動作すれば、他のすべてのフリップフロップも正
常動作するとみなせるので、処理を終了する(図中1
1)。フリップフロップが誤動作した場合には、パター
ンレイアウトを変更(クロックドライバーのサイズ、ク
ロックラインの幅等)する(図中12)。そして、図中
4の回路シミュレーションに戻り、正常動作するまで図
中4乃至図中10に示す処理を繰り返す。
【0013】このように、本発明によれば、まずCR回
路に置き換えたクロックラインおよびクロックドライバ
−による等価回路でクロックスキュー値を高速に求めて
おき、その結果を利用して見つけた最も厳しい条件の2
つのフリップフロップを上記等価回路に配置して、回路
シミュレーションを再度実行するという方法を採用して
いるので、従来方法と比べて全体の処理時間が10分程
度と短く(従来は数時間を要した)、また計算精度も優
れている。
【0014】以下で、上記の各処理の具体例を説明す
る。 (1)パターンレイアウト情報の抽出例(図1の図中2
に対応する) ここでは、パターンレイアウト情報1から、図2に示す
ようなクロックラインのレイアウト情報を抽出してい
る。クロックラインは、幹線21とその幹線21から分
岐した複数の支線22とから成り、幹線21の一端に
は、駆動用のクロックドライバー23が接続され、各支
線22に複数のフリップフロップ24が接続されてい
る。ここで、クロックの伝搬遅延を小さくするために幹
線21の幅は、支線22の幅より大きくしている。
【0015】(2)クロックラインの等価回路の構成例 図2に示したクロックラインのレイアウト情報に基づい
て、幹線21および支線22をCR回路(25)に置き
換え、さらにフリップフロップ24のクロック端子の入
力容量を付加することにより、図3に示すような等価回
路を構成している。CR回路(25)は、計算精度を考
慮して、3π型CR回路(π型CR回路を3段直列に接
続したもの)で構成している。
【0016】(3)フリップフロップの順序付け(図1
の図中7に対応) 回路接続情報6に基づいて、図4に示すように、クロッ
クラインに接続するフリップフロップを信号の伝搬する
順に順序付けを行う。 (4)最も誤動作が起こりやすい条件の2つのフリップ
フロップ(FF)の検索(図1の図中8) 2つのフリップフロップ間のクロックスキュー値および
Q出力とD入力間の遅延時間(CR時定数)とから判断
している。Q出力とD入力間に全くCR時定数数が存在
しない場合を仮定しているが、図5に示すようにQ出力
とD入力間にインバータ(INV)等がある場合には、
これによる遅延時間を考慮する。 (4)2つのFFを接続した等価回路の構成 上記の検索によって見つかった2つのフリップフロップ
(FF1,FF2)を図3に示した等価回路に接続し、
図6に示すような等価回路を構成する。Q出力とD入力
間には、実際のパターンに基づいたCR回路を挿入して
いる。そして、この等価回路に基づいて回路シミュレー
ションを実行し、フリップフロップFF2のQ出力波形
を見て誤動作するか否かを判定する。
【0017】
【発明の効果】以上説明したように、本発明によれば、
パターンレイアウト情報からクロックラインによる等価
回路を構成し、その等価回路に基づいて回路シミュレー
ションを実行してクロックスキュー値を求め、その結果
を利用して見つけた最も厳しい条件の2つのフリップフ
ロップを上記等価回路に配置して、回路シミュレーショ
ンを再度実行するという方法を採用しているので、従来
方法では全体の処理に数時間を要していたが、本発明に
よれば10分程度に短縮され、また計算精度も優れてい
る。これにより、パターンレイアウト作成後に、迅速か
つ正確に、半導体集積回路の誤動作を判定することが可
能となる。
【図面の簡単な説明】
【図1】本発明の一実施例に係る処理の流れを示すフロ
ー図である。
【図2】本発明の一実施例に係るクロックラインのレイ
アウト情報を示す図である。
【図3】本発明の一実施例に係る等価回路図である。
【図4】本発明の一実施例に係るフリップフロップの順
序付けを説明する図である。
【図5】本発明の一実施例に係るフリップフロップの回
路図である。
【図6】本発明の一実施例に係る2つのフリップフロッ
プを接続した等価回路図である。
【図7】クロックスキューの問題を説明するための回路
図である。
【図8】クロックスキューの問題を説明するための回路
図である。
【図9】クロックスキューの問題を説明するためのタイ
ミング図である。
【符号の説明】
1 パターンレイアウト情報 2 パターンレイアウト情報の抽出 3 プロセスパラメータ情報 4 回路シミュレーション 5 クロックスキュー値 6 回路接続情報 7 フリップフロップの順序付け 8 フリップフロップの検索 9 回路シミュレーション 10 結果判定 11 終了 12 パターンレイアウトの条件変更 21 幹線 22 支線 23 クロックドライバー 24 フリップフロップ 25 CR回路 26 フリップフロップの入力容量 CLK1,CLK2 クロック DFF1,DFF2 Dフリップフロップ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI H01L 21/82 T G01R 31/28 F (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 H01L 21/82 G01R 31/28

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 クロックラインと前記クロックラインを
    駆動するクロックドライバーと前記クロックラインに接
    続された複数のフリップフロップを含む半導体集積回路
    の誤動作の判定方法において、 パターンレイアウト情報に基づき前記クロックラインお
    よびクロックドライバーから成る等価回路を構成し、前
    記等価回路に基づいて回路シミュレーションを実行する
    ことによりクロックスキュー値を求め、 前記クロックスキュー値および前記複数のフリップフロ
    ップの接続情報に基づいて最も誤動作しやすい条件のフ
    リップフロップを検索し、 前記フリップフロップを前記等価回路に接続した後に回
    路シミュレーションを再度実行することにより、前記フ
    リップフロップが誤動作するか否かを判定することを特
    徴とする半導体集積回路の誤動作の判定方法。
JP5283569A 1993-11-12 1993-11-12 半導体集積回路の誤動作の判定方法 Expired - Fee Related JP3011591B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5283569A JP3011591B2 (ja) 1993-11-12 1993-11-12 半導体集積回路の誤動作の判定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5283569A JP3011591B2 (ja) 1993-11-12 1993-11-12 半導体集積回路の誤動作の判定方法

Publications (2)

Publication Number Publication Date
JPH07141412A JPH07141412A (ja) 1995-06-02
JP3011591B2 true JP3011591B2 (ja) 2000-02-21

Family

ID=17667229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5283569A Expired - Fee Related JP3011591B2 (ja) 1993-11-12 1993-11-12 半導体集積回路の誤動作の判定方法

Country Status (1)

Country Link
JP (1) JP3011591B2 (ja)

Also Published As

Publication number Publication date
JPH07141412A (ja) 1995-06-02

Similar Documents

Publication Publication Date Title
US6286126B1 (en) Methods, apparatus and computer program products for performing post-layout verification of microelectronic circuits using best and worst case delay models for nets therein
US6543041B1 (en) Method and apparatus for reducing signal integrity and reliability problems in ICS through netlist changes during placement
US6964028B2 (en) Method of simultaneously displaying schematic and timing data
US6654938B2 (en) Delay characteristic analyzing method and delay characteristic analyzing system for a custom LSI
US6557150B1 (en) Method of extracting timing characteristics of transistor circuits, storage medium storing timing characteristic library, LSI designing method, and gate extraction method
US20220065926A1 (en) Observation point injection for integrated circuit testing
CN114841104A (zh) 时序优化电路和方法、芯片及电子设备
JP2996213B2 (ja) テスト容易化設計方法および装置、情報記憶媒体、集積回路装置
US6071003A (en) Method and apparatus for locating critical speed paths in integrated circuits using a clock driver circuit with variable delay
US20040060019A1 (en) Method and apparatus for hierarchical clock tree analysis
US9449127B1 (en) System for verifying timing constraints of IC design
US20050223345A1 (en) Circuit design assistant system, circuit design method, and program product for circuit design
JP2001035925A (ja) 半導体集積回路の設計方法
JP3011591B2 (ja) 半導体集積回路の誤動作の判定方法
US20220327269A1 (en) Computing device and method for detecting clock domain crossing violation in design of memory device
JP3272915B2 (ja) スタティックタイミング解析装置
US6170072B1 (en) Logic circuit verification apparatus and method for semiconductor integrated circuit
US6925625B2 (en) Method and apparatus for grouping flip-flops by timing
US20020013688A1 (en) Back annotation apparatus for carrying out a simulation based on the extraction result in regard to parasitic elements
JP2000222452A (ja) 論理合成最適化方法及びその装置
US6606733B2 (en) Method and system for finding static NAND and NOR gates within a circuit and identifying the constituent FETs each gate
JP2002259488A (ja) クロックスキュー検証方法
US20030066000A1 (en) Failure propagation path estimate system
JP2633539B2 (ja) 論理集積回路のテストデータ作成方式
US20240037306A1 (en) Static timing analysis method and static timing analysis system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees