JP2004139201A - Method and system for delay optimization of semiconductor integrated circuit - Google Patents

Method and system for delay optimization of semiconductor integrated circuit Download PDF

Info

Publication number
JP2004139201A
JP2004139201A JP2002301241A JP2002301241A JP2004139201A JP 2004139201 A JP2004139201 A JP 2004139201A JP 2002301241 A JP2002301241 A JP 2002301241A JP 2002301241 A JP2002301241 A JP 2002301241A JP 2004139201 A JP2004139201 A JP 2004139201A
Authority
JP
Japan
Prior art keywords
operation mode
delay
hold
flip
path
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.)
Withdrawn
Application number
JP2002301241A
Other languages
Japanese (ja)
Inventor
Yukito Kawabe
川辺 幸仁
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002301241A priority Critical patent/JP2004139201A/en
Publication of JP2004139201A publication Critical patent/JP2004139201A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To largely shorten a delay optimization processing time regarding a delay optimizing method of a semiconductor integrated circuit optimizing delay of passes among flip-flops so that passes among flip-flops in the semiconductor integrated circuit designed with a scan pass method do not violate hold in both of a normal motion mode and a test operation mode. <P>SOLUTION: When a hold violating value in the test operation mode is greater than that in the normal operation mode, delay optimization is performed by calculating hold margin constraints, in which a difference between the hold violating value in the test operation mode and the hold violating value in the normal operation mode becomes a margin value, as an additional constraint. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化する半導体集積回路の遅延最適化方法および装置に関する。
【0002】
【従来の技術】
半導体集積回路をテスト容易化設計手法の1つであるスキャンパス方式で設計する場合、テスト動作モード時におけるフリップフロップへのテストクロックの供給は、クロック制御の容易性や、全フリップフロップを同一タイミングで動作させる必要性などから、クロック入力ピンを介してチップ外部から行い、かつ、通常動作モード時に使用するクロックパス上に存在するPLL回路や分周回路などのようにクロックの周期を変更する回路をバイパスする経路を設けて行うように設計されることが多い(例えば、特許文献1参照)。
【0003】
このようにして設計された半導体集積回路では、テスト(スキャンテスト)は、▲1▼スキャンモードにしてフリップフロップへのテストデータの設定、▲2▼スキャンモードを解除してフリップフロップへの1サイクル分のクロックの印加、▲3▼スキャンモードにしてフリップフロップの値をチップ外部にスキャンアウトして観測という手順で実行されるが、▲2▼の工程では、テストクロックによってフリップフロップ間の組合せ回路が動作することになるため、通常動作モードおよびテスト動作モードの2つの動作モードにおいて、フリップフロップ間のパスのセットアップ条件とホールド条件を満たすように回路を設計する必要がある。
【0004】
ところで、回路設計時に論理合成ツールなどの遅延最適化ツールで回路の遅延最適化を行う場合、現在一般的に使用されている主要な遅延最適化ツールでは、遅延最適化実行時には各フリップフロップへのクロックパスを一意に定めておく必要がある。すなわち、通常動作モード時のクロックパスか、又は、テスト動作モード時のクロックパスに定めておく必要がある。このため、遅延最適化処理を1回実行するだけでは、テスト動作モードでのセットアップ条件およびホールド条件と通常動作モードでのセットアップ条件およびホールド条件とを同時に満足させるような遅延最適化を行うことができない。
【0005】
ここで、セットアップ条件については、チップ外部からテストクロックを与える場合は、テストクロックの周波数は、通常動作モード時に使用するクロックの周波数より十分に低い場合がかなり多く、そのような場合には、通常動作モードでのセットアップ条件を満足させるような遅延最適化を実行すれば、テスト動作モードでのセットアップ条件を満足させるような遅延最適化は不要になる。
【0006】
しかし、ホールド条件については、通常動作モード時とテスト動作モード時とでは、クロックパス上のPLL回路や分周回路などをバイパスしない場合とバイパスした場合の遅延差だけクロックの遅延が異なることになるため、どちらか一方の動作モードで遅延最適化を行なっただけでは、もう一方の動作モードでのホールド条件を満たせるとは限らない。
【0007】
したがって、また、どちらか一方の動作モードで遅延最適化を行なった後、クロックの遅延制約を切り替えて、もう一方の動作モードで遅延最適化を行なうという方法を採用したとしても、後から実行する遅延最適化で行なわれる回路変更(遅延回路の挿入など)によって、先に遅延最適化を実行した方の動作モードで再びホールド違反が発生するという場合が起こり得る。
【0008】
そこで、従来では、スキャンパス方式で設計した半導体集積回路の遅延最適化を行う場合において、複数の動作モードに対応する遅延制約を同時に扱うことができない遅延最適化ツールを使用する場合には、動作モードを切り替えて遅延最適化を交互に何度か実行するといった自動遅延最適化の繰り返しによって、ある程度のホールド違反を解消し、それでも取り切れないホールド違反部分については、個別に人手で対処するという方法により行っていた。
【0009】
【特許文献1】
特開平9−5397号公報
【0010】
【発明が解決しようとする課題】
このように、従来の半導体集積回路の遅延最適化方法では、自動遅延最適化処理を何度か実行する必要があり、また、それでも遅延最適化が収束するとは限らないため、遅延最適化に多大の時間を要する場合があるという問題点があった。
【0011】
本発明は、かかる点に鑑み、スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化する半導体集積回路の遅延最適化方法および装置であって、遅延最適化処理時間の大幅な短縮化を図ることができるようにした半導体集積回路の遅延最適化方法および装置を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明は、スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化する場合、テスト動作モードでのホールド違反値が通常動作モードでのホールド違反値よりも大きい場合、テスト動作モードでのホールド違反値と通常動作モードでのホールド違反値との差分をホールドマージン制約としてフリップフロップ間のパスの遅延を最適化するというものである。
【0013】
本発明によれば、スキャンパス方式で設計した半導体集積回路について、遅延最適化処理を1回実行するだけで、通常動作モードおよびテスト動作モードの両モードにおいてホールド条件を満たすことができるフリップフロップ間のパスの遅延最適化を図ることができる。
【0014】
【発明の実施の形態】
図1は本発明の半導体集積回路の遅延最適化装置の一実施形態の概念図である。図1中、1はスキャンパス方式で設計した半導体集積回路の回路データを格納する回路データ格納手段、2は通常動作モード時の遅延制約を格納する通常動作モード遅延制約格納手段、3はテスト動作モード時の遅延制約を格納するテスト動作モード遅延制約格納手段である。
【0015】
4は回路データ格納手段1に格納されている回路データと、通常動作モード遅延制約格納手段2に格納されている通常動作モード時の遅延制約と、テスト動作モード遅延制約格納手段3に格納されているテスト動作モード時の遅延制約に基づいて、フリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化する場合の基準となるホールドマージン制約を追加制約として作成する追加制約作成手段である。
【0016】
5は回路データ格納手段1に格納されている回路データと通常動作モード遅延制約格納手段2に格納されている通常動作モード時の遅延制約に基づいて、通常動作モードでのフリップフロップ間のパスのホールド違反情報(ホールド違反値、パスの両端のフリップフロップのインスタンス名)を取得する通常動作モード・ホールド違反情報取得手段である。
【0017】
なお、本発明の半導体集積回路の遅延最適化装置の一実施形態では、フリップフロップ間のパスは、始点となるフリップフロップに供給されるクロックと終点となるフリップフロップに供給されるクロックとの間のパスと把握される。この結果、始点となるフリップフロップに供給されるクロックと終点となるフリップフロップに供給されるクロックを決定すれば、2つの動作モードでのホールド違反値の差は、その2つのクロック間のどのパスについても同一となる。
【0018】
6は回路データ格納手段1に格納されている回路データとテスト動作モード遅延制約格納手段3に格納されているテスト動作モード時の遅延制約に基づいて、通常動作モード・ホールド違反情報取得手段5によって有効なホールド違反情報を取得することができた全パスについて、パスの両端のフリップフロップのインスタンス名を使ってテスト動作モードでのホールド違反値を取得するテスト動作モード・ホールド違反値取得手段である。
【0019】
7は有効なホールド違反情報を取得することができた全パスについて、通常動作モードでのホールド違反値(通常動作モード・ホールド違反情報取得手段5により取得したホールド違反値)とテスト動作モードでのホールド違反値(テスト動作モード・ホールド違反値取得手段6により取得したホールド違反値)を比較し、テスト動作モードでのホールド違反値が通常動作モードでのホールド違反値よりも大きい場合、テスト動作モードでのホールド違反値と通常動作モードでのホールド違反値との差分をマージン値としたホールドマージン制約を追加制約として算出するホールドマージン制約算出手段である。
【0020】
8は追加制約作成手段4が作成した追加制約(ホールドマージン制約)を格納する追加制約格納手段、9は回路データ格納手段1に格納されている回路データと、通常動作モード遅延制約格納手段2に格納されている通常動作モード遅延制約と、追加制約格納手段8に格納されている追加制約に基づいて、遅延最適化済み回路データを自動作成する自動遅延最適化手段、10は自動遅延最適化手段9が作成した遅延最適化済み回路データを格納する遅延最適化済み回路データ格納手段である。
【0021】
図2は本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)を示す流れ図、図3〜図6は本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順の具体例を示す回路図であり、図3は回路データ格納手段1に格納されている回路データに基づく半導体集積回路の回路図である。
【0022】
図3中、11はクロック入力ピン、12はクロック入力ピン11から入力するクロックを逓倍するPLL回路、13はクロック入力ピン11から入力するクロック又はPLL回路12が出力するクロックを選択するセレクタである。セレクタ13は、テストモード信号=“0”の時は、PLL回路12が出力するクロックを選択し、テストモード信号=“1”の時は、クロック入力ピン11から入力するクロックを選択する。
【0023】
14はセレクタ13が出力するクロックを分周する分周回路、15はセレクタ13が出力するクロック又は分周回路14が出力するクロックを選択するセレクタである。セレクタ15は、テストモード信号=“0”の時は、分周回路14が出力するクロックを選択し、テストモード信号=“1”の時は、セレクタ13が出力するクロックを選択する。
【0024】
16はセレクタ15が出力するクロックを分周する分周回路、17はセレクタ15が出力するクロック又は分周回路16が出力するクロックを選択するセレクタである。セレクタ17は、テストモード信号=“0”の時は、分周回路16が出力するクロックを選択し、テストモード信号=“1”の時は、セレクタ15が出力するクロックを選択する。
【0025】
18A、18B、18Cはフリップフロップ(スキャン・フリップフロップ)、19A、19B、19Cはセレクタ17、15、13が出力するクロックCLK_A、CLK_B、CLK_Cをそれぞれフリップフロップ18A、18B、18Cに供給するクロックバッファである。
【0026】
ここで、テストモード信号は、通常動作モード時には“0”とされ、テスト動作モード時には“1”とされる。したがって、図3に示す半導体集積回路は、通常動作モード時には図4に示す回路と等価となり、テスト動作モード時には図5に示す回路と等価となる。なお、フリップフロップ18A、18B間、フリップフロップ18B、18C間、フリップフロップ18C、18A間にそれぞれ存在する組合せ回路は、図示を省略している。
【0027】
また、クロックバッファ19A、19B、19Cは、それぞれ、ツリー構造とされた複数のクロックバッファを説明の都合上、まとめて記載したものであり、クロックバッファ19A、19B、19Cが出力するクロックCLK_A、CLK_B、CLK_Cは、それぞれ、フリップフロップ18A、18B、18Cのほか、図示しないフリップフロップに供給されるように構成されている。
【0028】
また、本例では、PLL回路12および分周回路14、16の遅延時間を共に1ns、クロックバッファ19A、19B、19Cの遅延時間をそれぞれ0.5ns、1ns、1.5nsとし、それ以外のパスの遅延はないものとする。また、フリップフロップ18A、18B、18Cのホールド時間(クロックの立ち上がりエッジが到着してから直前のフリップフロップによってD入力が変化するまでの許容最小時間)は0nsとする。
【0029】
本発明の半導体集積回路の遅延最適化装置の一実施形態によって遅延最適化が行われる場合には、まず、回路データ格納手段1に格納されている回路データおよび通常動作モード遅延制約格納手段2に格納されている通常動作モード時の遅延制約が追加制約作成手段4に読み込まれ、設計された半導体集積回路に対して、通常動作モードの遅延制約が設定される(ステップS1)。
【0030】
なお、通常動作モード時の遅延制約の設定は、クロック定義(クロック波形の指定、クロックを印加するピンの指定、クロックのマージンの指定)やクロック経路の指定などによって行われる。図3に示す半導体集積回路では、例えば、PLL回路12が2000ps周期のクロックを出力し、分周回路14がPLL回路12の出力を1/2に分周して4000ps周期のクロックを出力し、分周回路16が分周回路14の出力を1/2に分周して8000ps周期のクロックを出力するものである場合には、PLL回路12の出力ピンに、2000ps周期のクロック(0psで立ち上がり、1000psで立ち下り、2000psで再び立ち上がるクロック)が定義される。
【0031】
また、分周回路14の出力ピンに、PLL回路12の出力ピンに定義されたクロックの1番目、3番目、5番目の信号遷移を使って新たに4000ps周期のクロック(0psで立ち上がり、2000psで立ち下り、4000psで再び立ち上がるクロック)が定義される。
【0032】
また、分周回路16の出力ピンに、PLL回路12の出力ピンに定義されたクロックの1番目、5番目、9番目の信号遷移を使って新たに8000ps周期のクロック(0psで立ち上がり、4000psで立ち下り、8000psで立ち上がるクロック)が定義される。
【0033】
また、セレクタ13、15、17の選択信号入力ピンにそれぞれ“0”が設定される(テストモード信号=“0”とされる)。このようにして、図3に示す半導体集積回路は、通常動作モードに設定され、図4に示す回路と等価とされる。この場合、クロック入力ピン11からフリップフロップ19A、19B、19Cまでのクロックパスの遅延時間はそれぞれ3.5ns、3.0ns、2.5nsとなる。
【0034】
次に、通常動作モード時にフリップフロップに供給される全クロックのうちの2つのクロックの全ての組合せについて、それら2つのクロックを始点、終点とするパスのホールド違反情報(ホールド違反値、両端のフリップフロップのインスタンス名)を取得する(ステップS2)。
【0035】
図3に示す半導体集積回路では、フリップフロップ18A、18B、18Cのホールド時間は0nsとされているので、各クロック対におけるホールド違反値は、クロック入力ピン11とパスの終点のフリップフロップとの間のクロック遅延時間をTt、クロック入力ピン11とパスの始点のフリップフロップとの間のクロック遅延時間をTsとすると、Tt−Tsで求めることができる。
【0036】
したがって、図3に示す半導体集積回路では、フリップフロップ18X(但し、X=A、B、C)からフリップフロップ18Y(但し、Y=A、B、C)へのパスを(CLK_X → CLK_Y)と表示すると、各クロック対におけるホールド違反値は、数1に示すようになる。
【0037】
【数1】

Figure 2004139201
【0038】
すなわち、通常動作モードでのホールド違反値は、図4に示すように、フリップフロップ18Aからフリップフロップ18Bへのパス20Aでは−0.5nsとなり(0.5ns緩い)、フリップフロップ18Bからフリップフロップ18Cへのパス20Bでは−0.5nsとなり(0.5ns緩い)、フリップフロップ18Cからフリップフロップ18Aへのパス20Cでは1nsとなる(1ns厳しい)。
【0039】
次に、テスト動作モード遅延制約格納手段3に格納されているテスト動作モード時のホールド遅延制約が追加制約作成手段4に読み込まれ、設計された半導体集積回路に対してテスト動作モード時の遅延制約が設定され、ステップS2の処理で有効なホールド違反情報を取得したパスのテスト動作モードでのホールド違反値が取得される(ステップS3)。
【0040】
図3に示す半導体集積回路の場合、テスト動作モード時の遅延制約の設定は、クロック入力ピン11に、例えば、20ns周期のクロック(0nsで立ち上がり、10nsで立ち下り、20nsで再び立ち上がるクロック)が定義され、また、セレクタ13、15、17の選択制御信号入力ピンにそれぞれ“1”が設定される(テストモード信号=“1”とされる)。
【0041】
この場合、クロック入力ピン11からフリップフロップ18A、18B、18Cまでのクロックパスの遅延時間は、図5に示すように、それぞれ、0.5ns、1ns、1.5nsとなる。この結果、各クロック対におけるホールド違反値は、数2に示すようになる。
【0042】
【数2】
Figure 2004139201
【0043】
次に、パスを有する各クロック対について、ステップS2で取得したホールド違反値(通常動作モードでのホールド違反値)とステップS3で取得したホールド違反値(テスト動作モードでのホールド違反値)を比較し、ステップS3で取得したホールド違反値がステップS2で取得したホールド違反値よりも大きい場合、ステップS3で取得したホールド違反値とステップS2で取得したホールド違反値との差分をマージン値としたホールドマージン制約が追加制約として算出される(ステップS4)。
【0044】
図3に示す半導体集積回路では、テスト動作モードでのホールド違反値が通常動作モードでのホールド違反値よりも大きいのは、フリップフロップ18Aからフリップフロップ18Bへのパス20A(CLK_A → CLK_B)と、フリップフロップ18Bからフリップフロップ18Cへのパス20B(CLK_B → CLK_C)の2つであり、ホールド違反値の差分は、数3に示すようになる。
【0045】
【数3】
Figure 2004139201
【0046】
ここに、フリップフロップ18Aからフリップフロップ18Bへのパス20A(CLK_A → CLK_B)に対する1nsのホールドマージンと、フリップフロップ18Bからフリップフロップ18Cへのパス20B(CLK_B → CLK_C)に対する1nsのホールドマージンが追加制約となり、これら追加制約は追加制約格納手段8に格納される。
【0047】
次に、回路データ格納手段1に格納されている回路データと、通常動作モード遅延制約格納手段2に格納されている通常動作モードでの遅延制約と、追加制約格納手段8に格納されている追加制約(ホールドマージン制約)に基づいて、自動遅延最適化手段9において、設計した半導体集積回路について自動遅延最適化が行われる(ステップS5)。
【0048】
図3に示す半導体集積回路の場合、パス20Aでは、通常動作モードでのホールド違反値(−0.5ns)<テスト動作モードでのホールド違反値(0.5ns)であるから、[追加のホールドマージン制約(1ns)−テスト動作モードでのホールド違反値(0.5ns)]=0.5nsとなり、パス20Aには、図6に示すように、遅延時間を0.5nsとする遅延回路21Aが挿入されることになる。
【0049】
また、パス20Bにおいても、通常動作モードでのホールド違反値(−0.5ns)<テスト動作モードでのホールド違反値(0.5ns)=0.5nsであるから、[追加のホールドマージン制約(1ns)−テスト動作モードでのホールド違反値(0.5ns)]=0.5nsとなり、パス20Bには、遅延時間を0.5nsとする遅延回路21Bが挿入されることになる。
【0050】
これに対して、パス20Cでは、通常動作モードでのホールド違反値(1ns)>テスト動作モードでのホールド違反値(−1ns)であるから、パス20Cには、遅延時間を通常動作モードでのホールド違反値である1nsとする遅延回路21Cが挿入されることになる。
【0051】
この結果、パス20A、20B、20Cの通常動作モードでのホールド違反値は、数4に示すようになり、通常動作モードでのホールド条件を満足する遅延最適化が行われていることになる。
【0052】
【数4】
Figure 2004139201
【0053】
また、パス20A、20B、20Cのテスト動作モードでのホールド違反値は、数5に示すようになり、テスト動作モードでのホールド条件を満足する遅延最適化が行われていることになる。
【0054】
【数5】
Figure 2004139201
【0055】
このように、本発明の半導体集積回路の遅延最適化装置の一実施形態によれば、追加制約作成手段4を設け、スキャンパス方式で設計した半導体集積回路について、フリップフロップ間のパスの通常動作モードでのホールド違反値とテスト動作モードでのホールド違反値を算出し、これらを比較して、テスト動作モードでのホールド違反値が通常動作モードでのホールド違反値よりも大きい場合には、テスト動作モードでのホールド違反値と通常動作モードでのホールド違反値との差分をマージン値とするホールドマージン制約を追加制約として算出するとしている。
【0056】
したがって、スキャンパス方式で設計した半導体集積回路について、自動遅延最適化手段9で遅延最適化処理を1回実行するだけで、通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化することができ、遅延最適化処理時間の大幅な短縮化を図ることができる。
【0057】
なお、追加制約作成手段4および自動遅延最適化手段9はソフトウエアで構成することができ、すなわち、図2に示すステップS1〜S5の遅延最適化処理手順はコンピュータを各手順を実行するための手段として機能させるプログラムを使用することによってコンピュータに実行させることができ、このようにする場合には、本発明の半導体集積回路の遅延最適化方法の一実施形態は、複数の動作モードに対応する遅延制約を同時に扱うことができない従来の遅延最適化ツールを利用して実行することができる。
【0058】
【発明の効果】
以上のように、本発明によれば、スキャンパス方式で設計した半導体集積回路について、遅延最適化処理を1回実行するだけで、通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないようにフリップフロップ間のパスの遅延を最適化することができ、遅延最適化処理時間の大幅な短縮化を図ることができる。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の遅延最適化装置の一実施形態の概念図である。
【図2】本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)を示す流れ図である。
【図3】本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)の具体例を示す回路図である。
【図4】本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)の具体例を示す回路図である。
【図5】本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)の具体例を示す回路図である。
【図6】本発明の半導体集積回路の遅延最適化装置の一実施形態で行われる遅延最適化処理手順(本発明の半導体集積回路の遅延最適化方法の一実施形態)の具体例を示す回路図である。
【符号の説明】
1…回路データ格納手段
2…通常動作モード遅延制約格納手段
3…テスト動作モード遅延制約格納手段
4…追加制約作成手段
5…通常動作モード・ホールド違反情報取得手段
6…テスト動作モード・ホールド違反値取得手段
7…ホールドマージン制約算出手段
8…追加制約格納手段
9…自動遅延最適化手段
10…遅延最適化済み回路データ格納手段
11…クロック入力ピン
12…PLL回路
13…セレクタ
14…分周回路
15…セレクタ
16…分周回路
17…セレクタ
18A、18B、18C…フリップフロップ
19A、19B、19C…クロックバッファ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a semiconductor device that optimizes a delay of a path between flip-flops so that a path between flip-flops in a semiconductor integrated circuit designed by a scan path method does not cause a hold violation in both a normal operation mode and a test operation mode. The present invention relates to an integrated circuit delay optimization method and apparatus.
[0002]
[Prior art]
When designing a semiconductor integrated circuit by the scan path method, which is one of the design methods for testability, the supply of a test clock to the flip-flops in the test operation mode requires the ease of clock control and the same timing for all flip-flops. Because of the necessity of operating on a clock circuit, a circuit that changes the clock cycle, such as a PLL circuit or a frequency divider, which is provided from outside the chip via a clock input pin and exists on a clock path used in the normal operation mode It is often designed to provide a path that bypasses (for example, see Patent Document 1).
[0003]
In the semiconductor integrated circuit designed in this way, the test (scan test) consists of (1) setting the test data to the flip-flop in the scan mode, and (2) releasing the scan mode to perform one cycle to the flip-flop. The clock is applied, (3) the scan mode is set, the flip-flop value is scanned out of the chip, and the observation is performed. In the step (2), the combinational circuit between the flip-flops is operated by the test clock. Therefore, it is necessary to design a circuit so as to satisfy a setup condition and a hold condition of a path between flip-flops in two operation modes of a normal operation mode and a test operation mode.
[0004]
By the way, when performing circuit delay optimization with a delay optimization tool such as a logic synthesis tool at the time of circuit design, the main delay optimization tools that are currently generally used require that each flip-flop be used when performing delay optimization. It is necessary to uniquely define a clock path. That is, it is necessary to set the clock path in the normal operation mode or the clock path in the test operation mode. For this reason, by executing the delay optimization processing only once, it is possible to perform delay optimization that simultaneously satisfies the setup condition and the hold condition in the test operation mode and the setup condition and the hold condition in the normal operation mode. Can not.
[0005]
Here, with regard to the setup conditions, when a test clock is supplied from outside the chip, the frequency of the test clock is often sufficiently lower than the frequency of the clock used in the normal operation mode. If the delay optimization that satisfies the setup condition in the operation mode is executed, the delay optimization that satisfies the setup condition in the test operation mode becomes unnecessary.
[0006]
However, regarding the hold condition, the clock delay differs between the normal operation mode and the test operation mode by the delay difference between when the PLL circuit and the frequency divider circuit on the clock path are not bypassed and when the clock circuit is bypassed. Therefore, simply performing the delay optimization in one of the operation modes does not necessarily satisfy the hold condition in the other operation mode.
[0007]
Therefore, even if the delay optimization is performed in one of the operation modes, the delay constraint of the clock is switched, and the delay optimization is performed in the other operation mode, the method is executed later. Due to a circuit change performed by the delay optimization (such as insertion of a delay circuit), a case may occur in which the hold violation occurs again in the operation mode in which the delay optimization is performed first.
[0008]
Therefore, conventionally, when delay optimization of a semiconductor integrated circuit designed by the scan path method is performed, if a delay optimization tool that cannot simultaneously handle delay constraints corresponding to a plurality of operation modes is used, the A method of eliminating some hold violations by repeating automatic delay optimization, such as switching modes and performing delay optimization alternately several times, and manually handling hold violations that cannot be removed even individually Was going by.
[0009]
[Patent Document 1]
JP-A-9-5397
[Problems to be solved by the invention]
As described above, in the conventional delay optimization method for a semiconductor integrated circuit, it is necessary to execute the automatic delay optimization processing several times, and even though the delay optimization does not always converge, the delay optimization is very difficult. There is a problem that time may be required.
[0011]
In view of the above, the present invention provides a delay between paths between flip-flops so that a path between flip-flops in a semiconductor integrated circuit designed by a scan path method does not cause a hold violation in both the normal operation mode and the test operation mode. To provide a method and an apparatus for optimizing delay of a semiconductor integrated circuit, wherein the method and apparatus for optimizing the delay can significantly reduce the delay optimizing processing time. With the goal.
[0012]
[Means for Solving the Problems]
The present invention is directed to a case where a delay between paths between flip-flops is optimized so that a path between flip-flops in a semiconductor integrated circuit designed by a scan path method does not cause a hold violation in both a normal operation mode and a test operation mode. If the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, the difference between the hold violation value in the test operation mode and the hold violation value in the normal operation mode is used as a flip-flop as a hold margin constraint. This is to optimize the delay of the path between them.
[0013]
According to the present invention, a semiconductor integrated circuit designed by the scan path method can satisfy the hold condition in both the normal operation mode and the test operation mode by executing the delay optimization process only once. Of the path can be optimized.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a conceptual diagram of an embodiment of a delay optimizing device for a semiconductor integrated circuit according to the present invention. In FIG. 1, reference numeral 1 denotes circuit data storage means for storing circuit data of a semiconductor integrated circuit designed by a scan path method, 2 denotes a normal operation mode delay constraint storage means for storing delay constraints in a normal operation mode, and 3 denotes a test operation. This is a test operation mode delay constraint storage means for storing a delay constraint in a mode.
[0015]
Reference numeral 4 denotes circuit data stored in the circuit data storage means 1, delay constraints in the normal operation mode stored in the normal operation mode delay constraint storage means 2, and test operation mode delay constraint storage means 3. Criteria for optimizing the delay of the path between flip-flops so that the path between flip-flops does not cause a hold violation in both the normal operation mode and the test operation mode based on the delay constraint in the test operation mode. This is an additional constraint creating means for creating a hold margin constraint as an additional constraint.
[0016]
Reference numeral 5 denotes a path between flip-flops in the normal operation mode based on the circuit data stored in the circuit data storage means 1 and the delay constraint in the normal operation mode stored in the normal operation mode delay constraint storage means 2. This is a normal operation mode / hold violation information acquisition unit that acquires hold violation information (hold violation value, instance names of flip-flops at both ends of the path).
[0017]
In one embodiment of the delay optimizing device for a semiconductor integrated circuit of the present invention, a path between flip-flops is set between a clock supplied to a flip-flop serving as a start point and a clock supplied to a flip-flop serving as an end point. Is understood as a path. As a result, if the clock supplied to the flip-flop serving as the start point and the clock supplied to the flip-flop serving as the end point are determined, the difference between the hold violation values in the two operation modes is determined by the path between the two clocks. Is also the same.
[0018]
Reference numeral 6 denotes a normal operation mode / hold violation information acquiring unit 5 based on the circuit data stored in the circuit data storage unit 1 and the delay constraint in the test operation mode stored in the test operation mode delay constraint storage unit 3. Test operation mode / hold violation value acquisition means for acquiring the hold violation value in the test operation mode using the instance names of the flip-flops at both ends of the path for all paths for which valid hold violation information can be acquired. .
[0019]
Reference numeral 7 denotes a hold violation value in the normal operation mode (a hold violation value acquired by the normal operation mode / hold violation information acquisition means 5) and a test violation in the test operation mode for all paths for which valid hold violation information can be obtained. The hold violation values (the hold violation values acquired by the test operation mode / hold violation value acquisition means 6) are compared, and if the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, the test operation mode Is a hold margin constraint calculating means for calculating a hold margin constraint using a difference between the hold violation value in the above and the hold violation value in the normal operation mode as a margin value as an additional constraint.
[0020]
Reference numeral 8 denotes an additional constraint storage unit for storing the additional constraint (hold margin constraint) created by the additional constraint creation unit 4, and 9 denotes the circuit data stored in the circuit data storage unit 1 and the normal operation mode delay constraint storage unit 2. Automatic delay optimizing means for automatically creating delay-optimized circuit data based on the stored normal operation mode delay constraint and the additional constraint stored in the additional constraint storage means 8; Reference numeral 9 denotes delay-optimized circuit data storage means for storing the delay-optimized circuit data created.
[0021]
FIG. 2 is a flowchart showing a delay optimization processing procedure (an embodiment of the semiconductor integrated circuit delay optimization method of the present invention) performed by one embodiment of the semiconductor integrated circuit delay optimizing apparatus of the present invention, and FIGS. FIG. 6 is a circuit diagram showing a specific example of a delay optimization processing procedure performed in one embodiment of the delay optimization device for a semiconductor integrated circuit according to the present invention, and FIG. FIG. 3 is a circuit diagram of a semiconductor integrated circuit based on data.
[0022]
3, reference numeral 11 denotes a clock input pin, 12 denotes a PLL circuit for multiplying a clock input from the clock input pin 11, and 13 denotes a selector for selecting a clock input from the clock input pin 11 or a clock output from the PLL circuit 12. . The selector 13 selects a clock output from the PLL circuit 12 when the test mode signal = "0", and selects a clock input from the clock input pin 11 when the test mode signal = "1".
[0023]
Reference numeral 14 denotes a frequency divider that divides the frequency of the clock output from the selector 13, and 15 denotes a selector that selects the clock output from the selector 13 or the clock output from the frequency divider 14. The selector 15 selects the clock output from the frequency dividing circuit 14 when the test mode signal = "0", and selects the clock output from the selector 13 when the test mode signal = "1".
[0024]
Reference numeral 16 denotes a frequency dividing circuit for dividing the clock output from the selector 15, and reference numeral 17 denotes a selector for selecting the clock output from the selector 15 or the clock output from the frequency dividing circuit 16. The selector 17 selects the clock output from the frequency dividing circuit 16 when the test mode signal = "0", and selects the clock output from the selector 15 when the test mode signal = "1".
[0025]
18A, 18B, and 18C are flip-flops (scan flip-flops), and 19A, 19B, and 19C are clock buffers that supply the clocks CLK_A, CLK_B, and CLK_C output from the selectors 17, 15, and 13 to the flip-flops 18A, 18B, and 18C, respectively. It is.
[0026]
Here, the test mode signal is set to “0” in the normal operation mode, and is set to “1” in the test operation mode. Therefore, the semiconductor integrated circuit shown in FIG. 3 is equivalent to the circuit shown in FIG. 4 in the normal operation mode, and is equivalent to the circuit shown in FIG. 5 in the test operation mode. It should be noted that the combination circuits existing between the flip-flops 18A and 18B, between the flip-flops 18B and 18C, and between the flip-flops 18C and 18A are not shown.
[0027]
The clock buffers 19A, 19B, and 19C collectively describe a plurality of clock buffers having a tree structure for convenience of description, and the clocks CLK_A and CLK_B output from the clock buffers 19A, 19B, and 19C, respectively. , CLK_C are supplied to flip-flops (not shown) in addition to the flip-flops 18A, 18B, and 18C, respectively.
[0028]
In this example, the delay times of the PLL circuit 12 and the frequency divider circuits 14 and 16 are both 1 ns, the delay times of the clock buffers 19A, 19B and 19C are 0.5 ns, 1 ns and 1.5 ns, respectively. No delay. The hold time of the flip-flops 18A, 18B, and 18C (the minimum allowable time from when the rising edge of the clock arrives until the D input changes by the immediately preceding flip-flop) is 0 ns.
[0029]
When delay optimization is performed by one embodiment of the delay optimization device for a semiconductor integrated circuit of the present invention, first, the circuit data stored in the circuit data storage means 1 and the normal operation mode delay constraint storage means 2 are stored in the circuit data storage means 1. The stored delay constraint in the normal operation mode is read by the additional constraint creating means 4, and the delay constraint in the normal operation mode is set for the designed semiconductor integrated circuit (step S1).
[0030]
The setting of the delay constraint in the normal operation mode is performed by clock definition (designation of a clock waveform, designation of a pin to which a clock is applied, designation of a clock margin), designation of a clock path, and the like. In the semiconductor integrated circuit shown in FIG. 3, for example, the PLL circuit 12 outputs a clock having a period of 2000 ps, the frequency divider 14 divides the output of the PLL circuit 12 by 1/2, and outputs a clock having a period of 4000 ps. When the frequency dividing circuit 16 divides the output of the frequency dividing circuit 14 by 1/2 and outputs a clock of 8000 ps cycle, a clock of 2000 ps cycle (rising at 0 ps) is applied to the output pin of the PLL circuit 12. , Falling at 1000 ps and rising again at 2000 ps).
[0031]
Further, a clock having a period of 4000 ps is newly added to the output pin of the frequency dividing circuit 14 using the first, third, and fifth signal transitions of the clock defined for the output pin of the PLL circuit 12 (rising at 0 ps, 2000 ps). A falling clock which rises again at 4000 ps) is defined.
[0032]
Also, a new 8000 ps clock (rising at 0 ps, rising at 4000 ps, using the first, fifth, and ninth signal transitions of the clock defined at the output pin of the PLL circuit 12) is output to the output pin of the frequency dividing circuit 16. A falling clock rising at 8000 ps) is defined.
[0033]
Further, “0” is set to the selection signal input pins of the selectors 13, 15, and 17 (test mode signal = “0”). Thus, the semiconductor integrated circuit shown in FIG. 3 is set to the normal operation mode, and is equivalent to the circuit shown in FIG. In this case, the delay times of the clock paths from the clock input pin 11 to the flip-flops 19A, 19B, and 19C are 3.5 ns, 3.0 ns, and 2.5 ns, respectively.
[0034]
Next, for all combinations of two clocks among all the clocks supplied to the flip-flop in the normal operation mode, hold violation information (hold violation value, flip-flops at both ends) of the path starting and ending with the two clocks (Step S2).
[0035]
In the semiconductor integrated circuit shown in FIG. 3, the hold time of the flip-flops 18A, 18B, and 18C is 0 ns, so that the hold violation value of each clock pair is between the clock input pin 11 and the flip-flop at the end point of the path. Is Tt, and Ts is the clock delay time between the clock input pin 11 and the flip-flop at the starting point of the path, Tt−Ts.
[0036]
Therefore, in the semiconductor integrated circuit shown in FIG. 3, the path from the flip-flop 18X (where X = A, B, C) to the flip-flop 18Y (where Y = A, B, C) is (CLK_X → CLK_Y). When displayed, the hold violation value for each clock pair is as shown in Equation 1.
[0037]
(Equation 1)
Figure 2004139201
[0038]
That is, as shown in FIG. 4, the hold violation value in the normal operation mode is -0.5 ns (0.5 ns less) on the path 20A from the flip-flop 18A to the flip-flop 18B, and the flip-flop 18C The path 20B to the path 20B is -0.5 ns (0.5 ns is loose), and the path 20C from the flip-flop 18C to the flip-flop 18A is 1 ns (1 ns severe).
[0039]
Next, the hold delay constraint in the test operation mode stored in the test operation mode delay constraint storage means 3 is read into the additional constraint creation means 4, and the delay constraint in the test operation mode is applied to the designed semiconductor integrated circuit. Is set, and the hold violation value in the test operation mode of the path for which the valid hold violation information has been acquired in the processing of step S2 is acquired (step S3).
[0040]
In the case of the semiconductor integrated circuit shown in FIG. 3, the delay constraint in the test operation mode is set by, for example, applying a clock having a cycle of 20 ns (a clock rising at 0 ns, falling at 10 ns, and rising again at 20 ns) to the clock input pin 11. In addition, "1" is set to each of the selection control signal input pins of the selectors 13, 15, and 17 (the test mode signal is set to "1").
[0041]
In this case, the delay times of the clock paths from the clock input pin 11 to the flip-flops 18A, 18B and 18C are 0.5 ns, 1 ns and 1.5 ns, respectively, as shown in FIG. As a result, the hold violation value for each clock pair is as shown in Equation 2.
[0042]
(Equation 2)
Figure 2004139201
[0043]
Next, the hold violation value (hold violation value in the normal operation mode) acquired in step S2 and the hold violation value (hold violation value in the test operation mode) acquired in step S3 are compared for each clock pair having a path. If the hold violation value obtained in step S3 is larger than the hold violation value obtained in step S2, the hold using the difference between the hold violation value obtained in step S3 and the hold violation value obtained in step S2 as a margin value. A margin constraint is calculated as an additional constraint (step S4).
[0044]
In the semiconductor integrated circuit shown in FIG. 3, the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode because of the path 20A (CLK_A → CLK_B) from the flip-flop 18A to the flip-flop 18B, There are two paths 20B (CLK_B → CLK_C) from the flip-flop 18B to the flip-flop 18C, and the difference between the hold violation values is as shown in Expression 3.
[0045]
[Equation 3]
Figure 2004139201
[0046]
Here, a 1 ns hold margin for the path 20A (CLK_A → CLK_B) from the flip-flop 18A to the flip-flop 18B and a 1 ns hold margin for the path 20B (CLK_B → CLK_C) from the flip-flop 18B to the flip-flop 18C are additionally restricted. And these additional constraints are stored in the additional constraint storage means 8.
[0047]
Next, the circuit data stored in the circuit data storage 1, the delay constraint in the normal operation mode stored in the normal operation mode delay constraint storage 2, and the additional data stored in the additional constraint storage 8. Based on the constraint (hold margin constraint), automatic delay optimization is performed on the designed semiconductor integrated circuit by the automatic delay optimization means 9 (step S5).
[0048]
In the case of the semiconductor integrated circuit shown in FIG. 3, in path 20A, the hold violation value in the normal operation mode (−0.5 ns) <the hold violation value in the test operation mode (0.5 ns). Margin constraint (1 ns) -hold violation value (0.5 ns) in test operation mode] = 0.5 ns, and a delay circuit 21A having a delay time of 0.5 ns is provided in path 20A as shown in FIG. Will be inserted.
[0049]
Also in the path 20B, the hold violation value in the normal operation mode (−0.5 ns) <the hold violation value in the test operation mode (0.5 ns) = 0.5 ns. 1 ns) -hold violation value in test operation mode (0.5 ns)] = 0.5 ns, and a delay circuit 21B having a delay time of 0.5 ns is inserted into path 20B.
[0050]
On the other hand, in the path 20C, the hold violation value in the normal operation mode (1 ns)> the hold violation value in the test operation mode (-1 ns). A delay circuit 21C having a hold violation value of 1 ns is inserted.
[0051]
As a result, the hold violation values in the normal operation mode of the paths 20A, 20B, and 20C are as shown in Expression 4, and the delay optimization that satisfies the hold conditions in the normal operation mode is performed.
[0052]
(Equation 4)
Figure 2004139201
[0053]
The hold violation value in the test operation mode for the paths 20A, 20B, and 20C is as shown in Expression 5, which means that the delay optimization that satisfies the hold condition in the test operation mode has been performed.
[0054]
(Equation 5)
Figure 2004139201
[0055]
As described above, according to the embodiment of the delay optimizing apparatus for a semiconductor integrated circuit according to the present invention, the additional constraint creating means 4 is provided, and the semiconductor integrated circuit designed by the scan path method performs the normal operation of the path between the flip-flops. Calculate the hold violation value in the test operation mode and the hold violation value in the test operation mode, compare them, and if the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, It is stated that a hold margin constraint using a difference between the hold violation value in the operation mode and the hold violation value in the normal operation mode as a margin value is calculated as an additional constraint.
[0056]
Therefore, for the semiconductor integrated circuit designed by the scan path method, the automatic delay optimizing means 9 executes the delay optimizing process only once, so that the flip-flop can be used so as not to cause a hold violation in both the normal operation mode and the test operation mode. It is possible to optimize the delay of the path between the loops, and it is possible to significantly reduce the delay optimization processing time.
[0057]
Note that the additional constraint creating means 4 and the automatic delay optimizing means 9 can be configured by software, that is, the delay optimizing processing procedures of steps S1 to S5 shown in FIG. The computer can be executed by using a program functioning as a means. In such a case, one embodiment of the method for optimizing delay of a semiconductor integrated circuit of the present invention supports a plurality of operation modes. It can be implemented using conventional delay optimization tools that cannot handle delay constraints simultaneously.
[0058]
【The invention's effect】
As described above, according to the present invention, with respect to a semiconductor integrated circuit designed by the scan path method, the delay optimization processing is performed only once so that the hold violation is not caused in both the normal operation mode and the test operation mode. In addition, the delay of the path between flip-flops can be optimized, and the delay optimization processing time can be significantly reduced.
[Brief description of the drawings]
FIG. 1 is a conceptual diagram of one embodiment of a delay optimization device for a semiconductor integrated circuit according to the present invention.
FIG. 2 is a flowchart showing a delay optimization processing procedure (one embodiment of a semiconductor integrated circuit delay optimization method of the present invention) performed by one embodiment of the semiconductor integrated circuit delay optimizing apparatus of the present invention.
FIG. 3 is a circuit showing a specific example of a delay optimization processing procedure (an embodiment of a semiconductor integrated circuit delay optimization method of the present invention) performed by an embodiment of the semiconductor integrated circuit delay optimizing apparatus of the present invention; FIG.
FIG. 4 is a circuit showing a specific example of a delay optimization processing procedure (an embodiment of a semiconductor integrated circuit delay optimization method of the present invention) performed by an embodiment of the semiconductor integrated circuit delay optimizing apparatus of the present invention; FIG.
FIG. 5 is a circuit showing a specific example of a delay optimization processing procedure (one embodiment of a delay optimization method for a semiconductor integrated circuit according to the present invention) performed by an embodiment of the delay optimization device for a semiconductor integrated circuit of the present invention; FIG.
FIG. 6 is a circuit showing a specific example of a delay optimization processing procedure (an embodiment of a semiconductor integrated circuit delay optimization method of the present invention) performed by an embodiment of the semiconductor integrated circuit delay optimizing apparatus of the present invention; FIG.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Circuit data storage means 2 ... Normal operation mode delay constraint storage means 3 ... Test operation mode delay constraint storage means 4 ... Additional constraint creation means 5 ... Normal operation mode / hold violation information acquisition means 6 ... Test operation mode / hold violation value Acquisition unit 7 Hold margin constraint calculation unit 8 Additional constraint storage unit 9 Automatic delay optimization unit 10 Delay-optimized circuit data storage unit 11 Clock input pin 12 PLL circuit 13 Selector 14 Frequency divider circuit 15 ... Selector 16... Frequency dividing circuit 17... Selectors 18 A, 18 B and 18 C.

Claims (3)

スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないように前記フリップフロップ間のパスの遅延を最適化する半導体集積回路の遅延最適化方法であって、
前記テスト動作モードでのホールド違反値が前記通常動作モードでのホールド違反値よりも大きい場合、前記テスト動作モードでのホールド違反値と前記通常動作モードでのホールド違反値との差分をホールドマージン制約として前記フリップフロップ間のパスの遅延を最適化する工程を有することを特徴とする半導体集積回路の遅延最適化方法。
A semiconductor integrated circuit for optimizing a delay of a path between flip-flops in a semiconductor integrated circuit designed by a scan path method so that a path between flip-flops does not cause a hold violation in both a normal operation mode and a test operation mode. A delay optimization method,
When the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, the difference between the hold violation value in the test operation mode and the hold violation value in the normal operation mode is defined as a hold margin constraint. A step of optimizing a delay of a path between the flip-flops.
スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないように前記フリップフロップ間のパスの遅延を最適化する半導体集積回路の遅延最適化装置であって、
前記テスト動作モードでのホールド違反値が前記通常動作モードでのホールド違反値よりも大きい場合、前記テスト動作モードでのホールド違反値と前記通常動作モードでのホールド違反値との差分をホールドマージン制約として前記フリップフロップ間のパスの遅延を最適化する工程を有することを特徴とする半導体集積回路の遅延最適化装置。
A semiconductor integrated circuit for optimizing a delay of a path between flip-flops in a semiconductor integrated circuit designed by a scan path method so that a path between flip-flops does not cause a hold violation in both a normal operation mode and a test operation mode. A delay optimizer,
When the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, the difference between the hold violation value in the test operation mode and the hold violation value in the normal operation mode is defined as a hold margin constraint. A step of optimizing a delay of a path between the flip-flops.
スキャンパス方式で設計した半導体集積回路内のフリップフロップ間のパスが通常動作モードおよびテスト動作モードの両モードにおいてホールド違反とならないように前記フリップフロップ間のパスの遅延を最適化する場合の基準となる前記フリップフロップ間のパスのホールドマージン制約をコンピュータに作成させるプログラムであって、
前記コンピュータを、前記テスト動作モードでのホールド違反値が前記通常動作モードでのホールド違反値よりも大きい場合、前記テスト動作モードでのホールド違反値と前記通常動作モードでのホールド違反値との差分を前記フリップフロップ間のパスのホールドマージン制約として作成する手段として機能させることを特徴とするプログラム。
A criterion for optimizing the delay of the path between flip-flops so that the path between flip-flops in the semiconductor integrated circuit designed by the scan path method does not cause a hold violation in both the normal operation mode and the test operation mode. A program for causing a computer to create a hold margin constraint of a path between the flip-flops,
When the hold violation value in the test operation mode is larger than the hold violation value in the normal operation mode, the computer determines a difference between the hold violation value in the test operation mode and the hold violation value in the normal operation mode. As a means for creating a hold margin constraint of a path between the flip-flops.
JP2002301241A 2002-10-16 2002-10-16 Method and system for delay optimization of semiconductor integrated circuit Withdrawn JP2004139201A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002301241A JP2004139201A (en) 2002-10-16 2002-10-16 Method and system for delay optimization of semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002301241A JP2004139201A (en) 2002-10-16 2002-10-16 Method and system for delay optimization of semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JP2004139201A true JP2004139201A (en) 2004-05-13

Family

ID=32449635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002301241A Withdrawn JP2004139201A (en) 2002-10-16 2002-10-16 Method and system for delay optimization of semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP2004139201A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008134100A (en) * 2006-11-27 2008-06-12 Nec Electronics Corp Scan clock distribution system and semiconductor integrated circuit device
JP2008216220A (en) * 2007-03-08 2008-09-18 Sanyo Electric Co Ltd Semiconductor integrated circuit and scanning test method
JP2011034243A (en) * 2009-07-30 2011-02-17 Fujitsu Semiconductor Ltd Generation method for semiconductor integrated circuit, and recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008134100A (en) * 2006-11-27 2008-06-12 Nec Electronics Corp Scan clock distribution system and semiconductor integrated circuit device
JP2008216220A (en) * 2007-03-08 2008-09-18 Sanyo Electric Co Ltd Semiconductor integrated circuit and scanning test method
JP2011034243A (en) * 2009-07-30 2011-02-17 Fujitsu Semiconductor Ltd Generation method for semiconductor integrated circuit, and recording medium

Similar Documents

Publication Publication Date Title
US7240266B2 (en) Clock control circuit for test that facilitates an at speed structural test
JP4874963B2 (en) Synchronization between low and high frequency digital signals
JP2009222644A (en) Semiconductor integrated circuit, and design automating system
WO2002063313A2 (en) Method for scan testing of digital circuit, digital circuit and program product
JP2008122159A (en) Semiconductor integrated circuit
US10157250B1 (en) Speculative circuit design component graphical user interface
US6826731B2 (en) Method of designing semiconductor integrated circuit device
US7299392B2 (en) Semiconductor integrated circuit device and method of design of semiconductor integrated circuit device
US8042074B2 (en) Circuit design device, circuit design program, and circuit design method
US7062736B2 (en) Timing constraint generator
US8145963B2 (en) Semiconductor integrated circuit device and delay fault testing method thereof
US7331028B2 (en) Engineering change order scenario manager
TWI279698B (en) Preprocessor, IC design system and IC design method
JP2004139201A (en) Method and system for delay optimization of semiconductor integrated circuit
US20100146349A1 (en) Semiconductor integrated circuit including logic circuit having scan path and test circuit for conducting scan path test
US6654939B2 (en) Method of designing logic circuit, and computer product
JP2003523520A (en) LSSD interface
JP4275636B2 (en) Verification support device, verification support method, verification support program, and recording medium
KR100984049B1 (en) System for application business managementing and method therefor
JP2679622B2 (en) Clock phase control circuit
US10977404B1 (en) Dynamic scan chain and method
JP2006085595A (en) Clock synthesizing method, semiconductor device and program
JP2015028424A (en) Semiconductor integrated circuit, design program for semiconductor integrated circuit, and design method for semiconductor integrated circuit
JP3852335B2 (en) Scan path processing system, scan path processing method, and scan path processing program
JP2012189451A (en) Method for designing scan test circuit for semiconductor integrated circuit, scan test circuit and scan test method

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110