JP2000055986A - 半導体集積回路の設計方法 - Google Patents

半導体集積回路の設計方法

Info

Publication number
JP2000055986A
JP2000055986A JP10224342A JP22434298A JP2000055986A JP 2000055986 A JP2000055986 A JP 2000055986A JP 10224342 A JP10224342 A JP 10224342A JP 22434298 A JP22434298 A JP 22434298A JP 2000055986 A JP2000055986 A JP 2000055986A
Authority
JP
Japan
Prior art keywords
scan
malfunction
connection
wiring length
group
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
JP10224342A
Other languages
English (en)
Inventor
Keiichi Kurokawa
圭一 黒川
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10224342A priority Critical patent/JP2000055986A/ja
Publication of JP2000055986A publication Critical patent/JP2000055986A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 クロックスキュー等による誤動作を防止し、
かつスキャンチェーンを短く接続して小レイアウト面積
を実現する。 【解決手段】 クロックツリー構成に基づいてスキャン
レジスタを階層的にグループ化し、クロック入力端子か
ら各クロックツリーバッファまでのクロック信号伝播時
間とクロック入力端子から各スキャンレジスタまでのク
ロック信号伝播時間を求め、スキャンレジスタグループ
毎にクロックスキューを求め、クロックスキュー情報に
基づいてスキャンレジスタグループ毎に配線長最短か誤
動作防止かの属性を設定し、誤動作防止属性が設定され
たスキャンレジスタグループに対して誤動作防止を目的
としてスキャンチェーンを接続し、配線長最短の属性が
設定されたスキャンレジスタグループに対して配置情報
を用いて配線長最短でスキャンチェーンを接続するもの
である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、スキャン方式に
より回路の故障検査を効率的に行う半導体集積回路の設
計方法に関するものである。
【0002】
【従来の技術】従来から行われているスキャンチェーン
接続方法としては、大別して以下の3つの方法がある。 (1) 第1の方法としては、論理回路を構成する各論
理素子に付けられた固有名のアルファベット順などの単
純な順序で、スキャンチェーンを接続する方法である。 (2) 第2の方法としては、例えば、特開平4−96
252号公報に開示されているように、回路の配置配線
時に、各マクロセルの配置情報に基づいて、スキャンチ
ェーンを短く接続する方法である。 (3) 第3の方法としては、例えば、特開平8−31
3595号公報に開示されているように、各スキャンレ
ジスタ(以下SRと記載)までのクロック信号伝播時間
の大きい方から順に、スキャンチェーンを接続し、ホー
ルドタイムエラーによる誤動作を防止する方法である。
【0003】
【発明が解決しようとする課題】しかしながら、前記従
来技術(1)および(3)の方法を用いた場合、レイア
ウト上のSR間距離をまったく考慮していないので、ス
キャンチェーン配線が複雑になり、その結果、レイアウ
ト面積が大きくなる。一方、前記従来技術(2)の方法
を用いた場合は、クロックスキューやスキャン信号の伝
播時間が考慮されていないために、ホールドタイムエラ
ーによるミスラッチが起こり、回路の誤動作を発生させ
る。
【0004】この発明の半導体集積回路の設計方法は、
従来技術の課題を解決するものであり、クロックスキュ
ー等による誤動作を防止し、かつスキャンチェーンを短
く接続して小レイアウト面積を実現することを目的とす
る。
【0005】
【課題を解決するための手段】請求項1記載の半導体集
積回路の設計方法は、スキャンレジスタをグループ化
し、グループ毎に、クロックスキュー情報に基づいて、
配線長最短スキャンチェーン接続手法と、誤動作防止ス
キャンチェーン接続手法を切り替えて、スキャンチェー
ンを接続することを特徴とするものである。
【0006】請求項1記載の半導体集積回路の設計方法
によると、クロックスキュー情報に基づいて、グループ
化されたスキャンレジスタグループ毎に、配線長最短ス
キャンチェーン接続手法と誤動作防止スキャンチェーン
接続手法を切り替えることで、誤動作発生を考慮しなく
てもよいスキャンレジスタグループのスキャン配線長を
短くすることができ、レイアウト面積を削減できる。
【0007】請求項2記載の半導体集積回路の設計方法
は、クロックツリー構成に基づいてスキャンレジスタを
階層的にグループ化するグループ化工程と、クロック入
力端子から各クロックツリーバッファまでのクロック信
号伝播時間とクロック入力端子から各スキャンレジスタ
までのクロック信号伝播時間を求める伝播時間計算工程
と、スキャンレジスタグループ毎にクロックスキューを
求めるクロックスキュー計算工程と、クロックスキュー
情報に基づいてスキャンレジスタグループ毎に配線長最
短か誤動作防止かの属性を設定する属性設定工程と、誤
動作防止属性が設定されたスキャンレジスタグループに
対して誤動作防止を目的としてスキャンチェーンを接続
する誤動作防止接続工程と、配線長最短の属性が設定さ
れたスキャンレジスタグループに対して配置情報を用い
て配線長最短でスキャンチェーンを接続する配線長最短
接続工程とを含むものである。
【0008】請求項2記載の半導体集積回路の設計方法
によると、グループ化工程で、クロックツリー構成に基
づいて、スキャンレジスタを階層的にグループ化し、伝
播時間計算工程,クロックスキュー計算工程,属性設定
工程により、スキャンレジスタグループ毎の属性を設定
し、誤動作防止を目的としてスキャンチェーンを接続す
る誤動作防止接続工程と、配置情報を用いて配線長最短
でスキャンチェーンを接続する配線長最短接続工程の2
種類のスキャン接続方法を、スキャンレジスタグループ
毎に切り替えることで、クロックスキューが大きくて誤
動作が発生し易いスキャンレジスタグループ以外は、ス
キャン配線長を短くすることができ、レイアウト面積を
削減できる。
【0009】請求項3記載の半導体集積回路の設計方法
は、請求項2の配線長最短接続工程において、スキャン
レジスタグループの下位階層全てに配線長最短属性が設
定されている場合、階層を無視して最下層まで同時に配
線長最短でスキャンチェーンを接続する全階層配線長最
短接続工程を実行することを特徴とするものである。請
求項3記載の半導体集積回路の設計方法によると、請求
項2の作用に加え、スキャンレジスタグループの下位階
層全てに配線長最短属性が設定されている場合、スキャ
ンレジスタ階層を無視して、1度に多くのスキャンレジ
スタを対象にして、配線長最短のスキャンチェーン接続
を行うので、より配線長が短いスキャンチェーンを発生
することができ、レイアウト面積もより一層削減するこ
とができる。
【0010】請求項4記載の半導体集積回路の設計方法
は、請求項2の誤動作防止接続工程が、配線長最短でス
キャンチェーンをループ接続する配線長最短ループ接続
工程と、2接続以上で誤動作が発生するかを判定する誤
動作判定工程と、誤動作判定工程で2接続以上誤動作が
発生しており、誤動作が発生しているスキャン接続を駆
動しているスキャンレジスタが複数の出力端子を有する
場合は、駆動する負荷容量の最も大きい出力端子にスキ
ャン接続を変更する出力端子変更工程と、出力端子変更
工程実施後に、再度2接続以上で誤動作が発生するかを
判定する再誤動作判定工程と、再誤動作判定工程で2接
続以上の誤動作が発生している場合は、接続した全ての
スキャンチェーンを削除するスキャン消去工程と、誤動
作判定工程あるいは再誤動作判定工程で2接続以上の誤
動作が発生していない場合は、誤動作が発生しているス
キャン接続または誤動作に最も近いスキャン接続を削除
するスキャンカット工程と、スキャン消去工程でスキャ
ンチェーンを削除した場合は、予想クロック信号伝播時
間の遅い方から順にスキャン接続をおこなうスキャン遅
延順接続工程とを含み、スキャンレジスタグループ毎に
スキャン接続することを特徴とするものである。
【0011】請求項4記載の半導体集積回路の設計方法
によると、請求項2の作用に加え、誤動作を完全に防止
するスキャン遅延順接続工程を実行する前に、スキャン
配線を駆動しているスキャンレジスタの出力ピン選択を
考慮しながら、スキャン配線長が短くなるスキャン接続
を試すことで、そのスキャン接続で誤動作が起こらなけ
れば、スキャン遅延順接続工程でスキャン接続すること
により、短いスキャン配線長を実現できるので、レイア
ウト面積をより一層削減することができる。
【0012】
【発明の実施の形態】第1の実施の形態 この発明の第1の実施の形態を図1ないし図8に基づい
て説明する。図1は半導体集積回路の設計方法のフロー
チャートを示しており、クロックツリー構成に基づいて
SRを階層的にグループ化してSRグループを作成する
ステップS11(グループ化工程)と、クロックツリー中
のクロックツリーバッファ毎、およびSR毎に予想クロ
ック信号伝播時間を設定するステップS12(伝播時間計
算工程)と、SRグループ毎に予想クロックスキューを
設定するステップS13(クロックスキュー計算工程)
と、SRグループに設定された予想クロックスキュー値
がある一定の値を超えている場合はタイミング優先を、
超えていない場合は面積優先の属性をSRグループ毎に
設定するステップS14(属性設定工程)と、タイミング
優先の属性を設定された全てのSRグループに対して、
そのSRグループに属するSRグループで予想クロック
信号到達時間が遅いグループから順にスキャンチェーン
接続を行うステップS15(誤動作防止接続工程)と、面
積優先の属性を設定された全てのSRグループに対し
て、上位SRグループから順に配線長が最短になるよう
にスキャンチェーン接続を行うステップS16(配線長最
短接続工程)とから構成されている。
【0013】図2は、図1中のステップS15を詳細に説
明するためのフローチャートであり、検索するSRグル
ープを最下位層レベルに初期設定するステップS21と、
現在設定されている階層レベルにタイミング重視の属性
が付いたSRグループで未選択なグループが存在するか
を判定し、存在する場合はステップS23へ進み、存在し
ない場合はステップS26へ進むステップS22と、現在設
定されている階層レベルでタイミング重視の属性が付い
た未選択なSRグループを1つ選択するステップS
23と、選択されたSRグループに属するSRグループ、
あるいはSRへの予想クロック信号伝播時間の遅いもの
から順にスキャンチェーン接続順序を割り振るステップ
24と、割り振られたスキャンチェーン接続順序に基づ
いてスキャンチェーンを接続するステップS25と、現在
設定されている階層レベルが最上位階層かどうかを判定
し、最上位階層でない場合はステップS27へ進み、最上
位階層である場合は処理を終了するステップS26と、階
層レベルを1つ上げたものに設定するステップS27とか
ら構成されている。
【0014】図3は、図1中のステップS16を詳細に説
明するためのフローチャートであり、検索するSRグル
ープを最上位層レベルに初期設定するステップS31と、
現在設定されている階層レベルに面積重視の属性が付い
たSRグループで未選択なグループが存在するかを判定
し、存在する場合はステップS33へ進み、存在しない場
合はステップS35へ進むステップS32と、現在設定され
ている階層レベルで面積重視の属性が付いた未選択なS
Rグループを1つ選択するステップS33と、選択された
SRグループに属するSRグループあるいはSRを配線
長が最短になるようにスキャンチェーンを接続するステ
ップS34と、現在設定されている階層レベルが最下位階
層かどうかを判定し、最下位階層でない場合はステップ
36へ進み、最下位階層である場合は処理を終了するス
テップS35と、階層レベルを1つ下げたものに設定する
ステップS36とから構成されている。
【0015】図4は、クロックツリーバッファが入った
スキャンチェーン未接続の論理回路のセル配置が完了し
たレイアウトブロック図であり、ブロック枠401と、
第1クロックのSRが配置されている領域402と、第
2クロックのSRが配置されている領域403と、スキ
ャン入力端子404と、スキャン出力端子405と、第
1クロック入力端子406と、第2クロック入力端子4
07と、クロック配線408と、クロックツリーバッフ
ァ409と、スキャンレジスタ410とから構成されて
いる。異なる2つのクロックはブロックの外部で接続さ
れており、ブロック内部では未接続となっている。な
お、図中の矢印は、クロック信号の伝播方向を示してい
る。
【0016】この論理回路では、異なる2つのクロック
系統に対しても1つのスキャンチェーンで接続する必要
があると仮定する。したがって、スキャン入力端子40
4とスキャン出力端子405がそれぞれ1つずつしか存
在しない。次に、図4のレイアウトブロック図を用い
て、図1の処理に沿って説明する。まず、ステップS11
で、クロックツリーの構成に基づいて階層的にSRグル
ープを作成する。図5は階層的なグループ化が完了した
様子を示した図であり、501〜511は作成されたS
Rグループを示し、SRグループ501の下位階層にS
Rグループ502,507が存在し、SRグループ50
2の下位階層にSRグループ503〜506が存在し、
SRグループ507の下位階層にSRグループ508〜
511が存在している。
【0017】次に、ステップS12で、クロックツリーを
構成している各クロックツリーバッファ、および各SR
での予想クロック信号伝播時間を推定する。クロック信
号伝播時間の推定時に用いるクロック配線長は、実際の
配線処理を実行することで求めてもよく、あるいはマン
ハッタン長に基づいた推定配線長を用いてもよい。次
に、ステップS13で、各SRグループ内に属するSRの
最大予想クロック信号伝播時間と最小予想クロック信号
伝播時間との差を、そのSRグループの予想クロックス
キューとして設定する。SRグループが階層的に構築さ
れているので、上位階層のSRグループほど予想クロッ
クスキュー値が大きくなる。ここでは、最下位層のSR
グループは、予想クロックスキュー値がゼロであると仮
定する。この仮定は、最終段のクロックツリーバッファ
に接続された配線は、抵抗成分が無視できる程度である
場合に当てはまる。
【0018】次に、ステップS14で、各SRグループが
ある一定のクロックスキュー値を超えているかどうかを
判断し、超えている場合はそのSRグループに対してタ
イミング重視の属性を設定し、超えていない場合はその
SRグループに対して面積重視の属性を設定する。図5
において、SRグループ503〜506,508〜51
1は面積重視の属性が設定され、その他のSRグループ
501,502はタイミング重視の属性が設定されたと
仮定する。
【0019】次に、ステップS15で、タイミング重視の
属性が設定されたSRグループに対してスキャンチェー
ンを接続する。ステップS15の処理は、図2のフローチ
ャートを用いて説明する。まず、ステップS21で、階層
レベルを最下層に設定する。次に、ステップS22で、現
在の階層で未選択なタイミング重視の属性が付いたSR
グループが存在するかを判定する。ステップS14(図
1)での仮定では、最下位層はタイミング重視属性の付
いたSRグループが存在しないので、ステップS26へ進
む。
【0020】次に、ステップS26で、現在設定されてい
る階層レベルが最下層であると判定され、ステップS27
へ進む。次に、ステップS27で、階層を1つ上げて階層
レベルを設定し、ステップS22へ戻る。次に、ステップ
22で、現在の階層で未選択なタイミング重視の属性が
付いたSRグループが存在するので、ステップS23へ進
む。
【0021】次に、ステップS23で、未選択なタイミン
グ重視の属性が付いたSRグループ502(図5)を選
択する。次に、ステップS24で、選択したSRグループ
502に属する下位階層SRグループ間のスキャンチェ
ーンを、予想クロック信号伝播時間の遅いものからスキ
ャンチェーン接続順序を決定する。ここでは、予想クロ
ック信号伝播時間がSRグループ504<SRグループ
503<SRグループ505<SRグループ506の順
で遅くなると仮定し、スキャンチェーン接続順序をSR
グループ506,SRグループ505,SRグループ5
03,SRグループ504とする。
【0022】次に、ステップS25で、ステップS24にて
決定した順序にしたがって、スキャンチェーンを接続す
る。ここの例では、接続順序がSRグループレベルで決
定されている。そのような場合は、接続の際にSRグル
ープ内に存在するSRを選択する必要があり、図6に示
すように、スキャンチェーンの配線長が短くなるように
SRの選択を行うこととする。
【0023】次に、ステップS22に戻り、現在の階層で
未選択なタイミング重視属性が付いたSRグループが存
在しなくなったので、ステップS26へ進む。次に、ステ
ップS26で、現在設定されている階層レベルが最上層で
ないので、ステップS27へ進む。次に、ステップS
27で、階層を1つ上げて最上位階層に設定し、ステップ
22へ戻る。
【0024】次に、ステップS22,S23で、未選択なタ
イミング重視の属性が付いたSRグループ501(図
5)を選択する。次に、ステップS24で、選択したSR
グループ501に属する下位階層SRグループ間のスキ
ャンチェーンを、SRの予想クロック信号伝播時間の遅
いものからスキャンチェーン接続順序を決定する。下位
階層SRグループ502では、入力SRグループ50
6、出力SRグループ504と決定しているが、もう一
方の下位階層SRグループ507では、入出力SRグル
ープが決定していない。このような場合は、予想クロッ
ク信号伝播時間が遅いSRグループから速いSRグルー
プへのスキャンチェーン接続の全組み合わせ中で、最も
スキャンチェーン配線長が短くなる組み合わせを選択す
ることとする。
【0025】次に、ステップS25で、ステップS24にお
いて決定した順序にしたがって、スキャンチェーンを接
続する。以上のような処理を繰り返して行うことで、タ
イミング重視の属性が付いたSRグループのスキャンチ
ェーン接続を行いステップS15(図1)の処理を終了す
る。
【0026】図7は、ステップS15の処理が終了した段
階のスキャンチェーン接続の状況を示した図である。図
中の矢印は、接続されたスキャンチェーンの信号伝達方
向を示している。このように、予想クロック信号伝播時
間が遅いSRグループから順にスキャンチェーンを接続
することで、ホールドタイムエラーによるミスラッチは
完全に防止できる。
【0027】次に、ステップS16(図1)で、面積重視
の属性が設定されたSRグループに対して、スキャンチ
ェーンを接続する。ステップS16の処理は、図3のフロ
ーチャートを用いて説明する。まず、ステップS31で、
階層レベルを最上層に設定する。次に、ステップS
32で、現在の階層レベルで未選択な面積重視の属性が付
いたSRグループが存在するかを判定する。今回の例で
は存在しないので、ステップS35へ進む。
【0028】次に、ステップS35で、現在設定されてい
る階層レベルが最上層であるので、ステップS36へ進
む。次に、ステップS36で、階層を1つ下げて階層レベ
ルを設定し、ステップS32へ戻る。次に、ステップS32
で、現在の階層で未選択な面積重視の属性が付いたSR
グループが存在するので、ステップS33へ進む。
【0029】次に、ステップS33で、未選択な面積重視
の属性が付いたSRグループを選択する。次に、ステッ
プS34で、選択したSRグループに属する下位SRグル
ープを、配線長が最短になるようにスキャンチェーンを
接続し、ステップS32へ戻る。以上のような処理を繰り
返して行うことで、面積重視のSRグループのスキャン
チェーン接続を行い、ステップS16の処理を終了する。
【0030】図8は、ステップS16の処理が終了し、全
てのスキャンチェーンが接続された図を示している。図
中の矢印は、図7と同様、スキャンチェーンの信号伝達
方向を示している。このように構成された半導体集積回
路の設計方法によると、予想クロックスキュー値が一定
値を超えているときは、スキャン信号のホールドタイム
エラーによるミスラッチを考慮したスキャンチェーン接
続方法を用い、一定値を超えていない場合は、配線長が
最短になるスキャンチェーン接続方法を用いるので、ホ
ールドタイムエラーが起こらない範囲で、スキャンチェ
ーン配線の長さを短くすることができ、ホールドタイム
制約を満足したレイアウトの面積削減を実現できる。
【0031】第2の実施の形態この発明の第2の実施の
形態を図9および図10に基づいて説明する。図9は、
第1の実施の形態の図1に示すステップS16(配線長最
短接続工程)を、この第2の実施の形態で実現したフロ
ーチャートであり、第1の実施の形態の図3に示すステ
ップS31,S32,S33,S35,S36と同様のステップ
と、選択されたSRグループに属する全てのSRを対象
として配線長が最短になるようにスキャンチェーンを接
続するステップS91(全階層配線長最短接続工程)とで
構成されている。
【0032】次に、処理フローについて説明する。ま
ず、第1の実施の形態の図1に示すステップS11からス
テップS15については同様の処理を行い、図7に示した
スキャンチェーン接続状態を得る。ステップS16の処理
は、図9に示したフローチャートで行う。図9の処理フ
ローは、第1の実施の形態の図3とほぼ同様であり、第
1の実施の形態と異なる点は、面積重視の属性が付いた
SRグループのスキャンチェーンを接続する場合に、ス
テップS34(図3)の代わりにステップS91(図9)を
用いて、そのSRグループに属する全てのSRに対して
配線長が最短になるようにスキャンチェーンを接続する
ところにある。通常、1度に対象にするSRが多いほ
ど、最適な解(配線長の短い最適なスキャン接続順序)
が得られ易いので、階層的にスキャンチェーンを接続し
ていく方法に比べて、階層を無視して一気にスキャンチ
ェーンを接続する方法の方が、短い配線長でSRを接続
することができる。
【0033】図10は、図9の処理フローに沿ってステ
ップS91の処理を行った結果のスキャンチェーン接続状
態を示している。このように構成された半導体集積回路
の設計方法によると、SRグループ階層を無視して、面
積重視属性が付いた全てのSRを一度に対象にすること
で、階層的に処理する場合と比較して、より短い配線長
でスキャンチェーンを接続することが可能となり、レイ
アウト面積をさらに削減できる。
【0034】第3の実施の形態この発明の第3の実施の
形態を図11ないし図17に基づいて説明する。図11
は、第1の実施の形態の図1に示すステップS15(誤動
作防止接続工程)を、この第3の実施の形態で実現した
フローチャートであり、第1の実施の形態の図2に示す
ステップS21,S22,S23,S24,S25,S26,S27
同様のステップと、SRの出力ピンを選択して配線長最
短でスキャンチェーン接続を試みるステップS111 と、
スキャンチェーンが接続されているかを確認するステッ
プS112 とで構成されている。
【0035】図12は、ステップS111 を詳細に説明す
るフローチャートであり、配線長が最短になるようにS
Rグループをループ状にスキャンチェーン接続するステ
ップS121 (配線長最短ループ接続工程)と、スキャン
配線でホールドタイムエラーが起こっているかを判定
し、2配線以上起こっている場合はステップS123 へ進
み、1配線以下しか起こっていなければステップS126
へ進むステップS122 (誤動作判定工程)と、ホールド
タイムエラーを起こしているスキャン接続を駆動してい
るSRが複数の出力ピンを持つ場合は、配線負荷が大き
い方の出力ピンを選択して再接続するステップS
123 (出力端子変更工程)と、スキャン信号でホールド
タイムエラーが起こっているかを判定し、2配線以上起
こっている場合はステップS125 へ進み、1配線以下し
か起こっていなければステップS126 へ進むステップS
124 (再誤動作判定工程)と、接続されたスキャンチェ
ーンを削除するステップS125 (スキャン消去工程)
と、ホールドタイムエラーを判定した結果、エラーを起
こしているスキャン接続、あるいは、最も余裕度の小さ
いスキャン接続を削除するステップS126 (スキャンカ
ット工程)とから構成されている。
【0036】次に、処理フローについて説明する。ステ
ップS11からステップS14までは、第1の実施の形態と
同様の処理を行い、図5の状態まで作成する。ステップ
15は、図11に示した処理フローを用いて説明する。
1度目の処理ループは、第1の実施形態の説明と同様
に、ステップS21,ステップS22,ステップS26,ステ
ップS27と処理が進む。
【0037】2度目の処理ループも、ステップS21,ス
テップS23までは、第1の実施の形態の説明と同様に処
理が進み、SRグループ502(図13)が選択され
る。ステップS111 の処理は図12のフローチャートで
説明する。ステップS121 で、SRグループ502に属
する下位階層SRグループ503〜506(図13)を
ループ接続した場合に、配線長が最短になるように、S
Rグループのスキャンチェーンを接続する。この例のよ
うに、接続順序がSRグループレベルで決定されている
場合は、図13に示すように、スキャンチェーンの配線
長が短くなるようにSRの選択を行うこととする。
【0038】ステップS122 で、接続したスキャンチェ
ーンでホールドタイムエラーが2接続以上発生している
か確認する。下記の数式1のSが負になった場合にホー
ルドタイムエラーであるとする。
【0039】
【数1】
【0040】数式1において、Sはタイミング余裕度、
Dは予想スキャン信号到達時間、Csは予想クロックス
キュー値、HmはSRのホールドタイムマージンを示し
ている。予想スキャン信号到達時間Dは、マンハッタン
長等で推定したスキャン配線寄生成分と、SRの遅延ラ
イブラリにより求めることができる。なお、スキャン配
線長は、実際の配線処理を実施して求めてもよい。
【0041】ここでは、2接続以上ホールドタイムエラ
ーが起こっているとして、ステップS123 へ進む。ステ
ップS123 で、エラーを起こしているスキャン接続を駆
動しているSRが、図17に示したような複数の出力ピ
ンQ,NQを持ったSR601,602の場合は、接続
された負荷容量(配線容量とそれに繋がる入力ピン容量
の和)が大きい方605の出力ピンNQを選択して、ス
キャン配線607を接続する。これにより、スキャン信
号の伝播時間が遅くなり、ホールドタイムエラーによる
ミスラッチを防止できる可能性がでる。
【0042】スキャンチェーン接続により通常信号の伝
播時間(602から603)が遅れ、セットアップタイ
ムエラーによるミスラッチが起こる危険があるが、スキ
ャン配線長が短いことが原因でホールドタイムエラーが
発生しているために、通常信号の配線605長と比較し
て、スキャン配線607長は十分短く、通常信号の遅れ
はほとんど発生しない。
【0043】なお、図17中の601,602は複数
(この場合はQ,NQの2つ)の出力ピンを持ったS
R、603,604は論理素子、605,606は通常
信号配線、607はスキャン配線を示している。ステッ
プS124 において、ステップS122 と同様に、接続した
スキャンチェーンでホールドタイムエラーが2接続以上
発生しているか確認する。ここでは、エラーなしとして
ステップS126 へ進む。
【0044】ステップS126 で、ホールドタイムエラー
を起こしているスキャン配線がないので、タイミング余
裕度を数式1で求めて、タイミング余裕度が最も小さい
スキャン配線を1つ選択して、そのスキャン配線を削除
する。ここでは、SRグループ505とSRグループ5
04間のスキャン配線が対象となったと仮定し、そのス
キャン配線を削除する。
【0045】以上の処理で、ステップS111 が終了し、
ステップS112 へ進む。ステップS112 では、スキャン
チェーンが接続されているので、ステップS22へ戻る。
ステップS22に戻り、現在の階層で未選択なタイミング
重視属性が付いたSRグループが存在しなくなったの
で、ステップS26へ進む。
【0046】ステップS26で、現在設定されている階層
レベルが最上層でないので、ステップS27へ進む。ステ
ップS27で、階層を1つ上げて最上位階層に設定し、ス
テップS22へ戻る。ステップS22で、未選択なタイミン
グ重視の属性が付いたSRグループ501を選択する。
【0047】ステップS111 の処理は、前回と同様に、
図12の処理フローを用いて説明する。ステップS121
で、選択されているSRグループ501が、最上位階層
である場合は、下位階層SRグループ502,507
と、スキャン入力端子404と、スキャン出力端子40
5を最短接続する必要がある。したがって、スキャン出
力端子405からスキャン入力端子404へ架空の接続
があり、その接続はホールドタイムエラーが発生してい
るとして処理を進める。図14は、接続が完了した状態
を示しており、図中の矢印はスキャン接続の方向を示し
ている。
【0048】ステップS122 で、接続したスキャンチェ
ーンでホールドタイムエラーが2接続以上発生している
か確認する。ここでは、架空配線(405から404へ
の配線)以外にも、エラーを起こしているスキャン接続
があると仮定し、ステップS 123 へ進む。ステップS
123 で、前回と同様に、SRの出力ピンの再選択を行
う。
【0049】ステップS124 で、ステップS122 と同様
に、接続したスキャンチェーンでホールドタイムエラー
が2接続以上発生しているか確認する。ここでは、架空
配線(405から404への配線)以外にも、エラーを
起こしているスキャン接続があると仮定し、ステップS
125 へ進む。ステップS125 で、接続したスキャン配線
をすべて削除する。
【0050】以上の処理で、ステップS111 が終了し、
ステップS112 へ進む。ステップS112 で、スキャンチ
ェーンが接続されていないので、ステップS24へ進む。
第1の実施形態と同様方法で、ステップS24,ステップ
25(スキャン遅延順接続工程)を実行し、図15に示
した結果を得る。図中の矢印は、スキャン接続の方向を
示している。
【0051】以上ここまでの説明で、ステップS15の処
理が完了する。続いて、ステップS16は、第1の実施形
態と同様に処理を行い、すべてのスキャンチェーンが接
続される。図16は、ステップS16を第2の実施形態で
実行した全てのスキャンチェーンを接続した図を示して
いる。図中の矢印は、スキャンチェーンの信号伝達方向
を示している。
【0052】このように構成された半導体集積回路の設
計方法によると、スキャンチェーンに接続するSRの出
力ピンを選択することで、タイミング重視の属性が付い
たSRグループに対しても、スキャンチェーン長を短く
配線することが可能となり、レイアウト面積をより一層
削減できる。
【0053】
【発明の効果】この発明の半導体集積回路の設計方法に
よれば、クロックツリー情報により階層的にグループ化
されたスキャンレジスタグループ毎に、クロックスキュ
ー値に基づいて、配線長最短スキャンチェーン接続手法
と、誤動作防止スキャンチェーン接続手法を切り替える
ことで、誤動作発生を考慮する必要がないスキャンレジ
スタグループのスキャン配線長を短くすることができ、
レイアウト面積を削減することができる。
【0054】また、配線長最短スキャンチェーン接続方
法において、スキャンレジスタグループの下位階層全て
に配線長最短属性が設定されている場合は、階層を無視
して、最下層まで同時に配線長最短でスキャンチェーン
を接続することで、より短いスキャンチェーンを発生す
ることができるので、レイアウト面積をより一層削減す
ることができる。
【0055】また、誤動作防止スキャンチェーン接続手
法において、スキャン配線を駆動しているスキャンレジ
スタの出力ピン選択を考慮しながら、スキャン配線長が
短くなるスキャン接続を試すことで、そのスキャン接続
で誤動作が起こらなければ、スキャン遅延順接続工程で
のスキャン接続することにより、短いスキャン配線長を
実現できるので、レイアウト面積をより一層削減するこ
とができる。
【図面の簡単な説明】
【図1】この発明の第1の実施の形態における半導体集
積回路の設計方法を示すフローチャートである。
【図2】この発明の第1の実施の形態の半導体集積回路
の設計方法における誤動作防止でのスキャンチェーン接
続処理を示すフローチャートである。
【図3】この発明の第1の実施の形態の半導体集積回路
の設計方法における配線長最短でのスキャンチェーン接
続処理を示すフローチャートである。
【図4】この発明の第1の実施の形態の半導体集積回路
の設計方法においてクロックツリーバッファが入ったス
キャンチェーン未接続の論理回路のセル配置を示す図で
ある。
【図5】この発明の第1の実施の形態の半導体集積回路
の設計方法を用いて得られるスキャンレジスタの階層グ
ループ化を示す図である。
【図6】この発明の第1の実施の形態の半導体集積回路
の設計方法を用いて得られる誤動作防止スキャンチェー
ン接続処理の途中を示す図である。
【図7】この発明の第1の実施の形態の半導体集積回路
の設計方法を用いて得られる誤動作防止スキャンチェー
ン接続処理の終了後を示す図である。
【図8】この発明の第1の実施の形態の半導体集積回路
の設計方法を用いて得られる全スキャンチェーン接続完
了後を示す図である。
【図9】この発明の第2の実施の形態の半導体集積回路
の設計方法における配線長最短でのスキャンチェーン接
続処理を示すフローチャートである。
【図10】この発明の第2の実施の形態の半導体集積回
路の設計方法を用いて得られる全スキャンチェーン接続
完了後を示す図である。
【図11】この発明の第3の実施の形態の半導体集積回
路の設計方法における誤動作防止でのスキャンチェーン
接続処理を示すフローチャートである。
【図12】図11のステップS111 を詳細に説明するフ
ローチャートである。
【図13】この発明の第3の実施の形態における半導体
集積回路の設計方法を用いて得られる誤動作防止スキャ
ンチェーン接続処理の第1段階を示す図である。
【図14】この発明の第3の実施の形態における半導体
集積回路の設計方法を用いて得られる誤動作防止スキャ
ンチェーン接続処理の第2段階を示す図である。
【図15】この発明の第3の実施の形態における半導体
集積回路の設計方法を用いて得られる誤動作防止スキャ
ンチェーン接続処理の終了後を示す図である。
【図16】この発明の第3の実施の形態における半導体
集積回路の設計方法を用いて得られる全スキャンチェー
ン接続完了後を示す図である。
【図17】この発明の第3の実施の形態における複数の
出力ピンを持ったスキャンレジスタの場合のスキャン接
続方法を示した図である。
【符号の説明】
401 ブロック枠 402 第1クロックスキャンレジスタが配置された領
域 403 第2クロックスキャンレジスタが配置された領
域 404 スキャン入力端子 405 スキャン出力端子 406 第1クロック入力端子 407 第2クロック入力端子 408 クロック配線 409 クロックツリーバッファ 410 スキャンレジスタ 501〜511 スキャンレジスタグループ 601,602 スキャンレジスタ 603,604 論理素子 605,606 通常信号配線 607 スキャン配線

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 スキャンレジスタをグループ化し、前記
    グループ毎に、クロックスキュー情報に基づいて、配線
    長最短スキャンチェーン接続手法と、誤動作防止スキャ
    ンチェーン接続手法を切り替えて、スキャンチェーンを
    接続することを特徴とする半導体集積回路の設計方法。
  2. 【請求項2】 クロックツリー構成に基づいてスキャン
    レジスタを階層的にグループ化するグループ化工程と、
    クロック入力端子から各クロックツリーバッファまでの
    クロック信号伝播時間とクロック入力端子から各スキャ
    ンレジスタまでのクロック信号伝播時間を求める伝播時
    間計算工程と、前記スキャンレジスタグループ毎にクロ
    ックスキューを求めるクロックスキュー計算工程と、前
    記クロックスキュー情報に基づいて前記スキャンレジス
    タグループ毎に配線長最短か誤動作防止かの属性を設定
    する属性設定工程と、誤動作防止属性が設定されたスキ
    ャンレジスタグループに対して誤動作防止を目的として
    スキャンチェーンを接続する誤動作防止接続工程と、配
    線長最短の属性が設定されたスキャンレジスタグループ
    に対して配置情報を用いて配線長最短でスキャンチェー
    ンを接続する配線長最短接続工程とを含む半導体集積回
    路の設計方法。
  3. 【請求項3】 配線長最短接続工程において、スキャン
    レジスタグループの下位階層全てに配線長最短属性が設
    定されている場合、階層を無視して最下層まで同時に配
    線長最短でスキャンチェーンを接続する全階層配線長最
    短接続工程を実行することを特徴とする請求項2記載の
    半導体集積回路の設計方法。
  4. 【請求項4】 誤動作防止接続工程は、配線長最短でス
    キャンチェーンをループ接続する配線長最短ループ接続
    工程と、2接続以上で誤動作が発生するかを判定する誤
    動作判定工程と、前記誤動作判定工程で2接続以上誤動
    作が発生しており、誤動作が発生しているスキャン接続
    を駆動しているスキャンレジスタが複数の出力端子を有
    する場合は、駆動する負荷容量の最も大きい出力端子に
    スキャン接続を変更する出力端子変更工程と、前記出力
    端子変更工程実施後に、再度2接続以上で誤動作が発生
    するかを判定する再誤動作判定工程と、前記再誤動作判
    定工程で2接続以上の誤動作が発生している場合は、接
    続した全てのスキャンチェーンを削除するスキャン消去
    工程と、前記誤動作判定工程あるいは前記再誤動作判定
    工程で2接続以上の誤動作が発生していない場合は、誤
    動作が発生しているスキャン接続または誤動作に最も近
    いスキャン接続を削除するスキャンカット工程と、前記
    スキャン消去工程でスキャンチェーンを削除した場合
    は、予想クロック信号伝播時間の遅い方から順にスキャ
    ン接続をおこなうスキャン遅延順接続工程とを含み、ス
    キャンレジスタグループ毎にスキャン接続することを特
    徴とする請求項2記載の半導体集積回路の設計方法。
JP10224342A 1998-08-07 1998-08-07 半導体集積回路の設計方法 Pending JP2000055986A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10224342A JP2000055986A (ja) 1998-08-07 1998-08-07 半導体集積回路の設計方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10224342A JP2000055986A (ja) 1998-08-07 1998-08-07 半導体集積回路の設計方法

Publications (1)

Publication Number Publication Date
JP2000055986A true JP2000055986A (ja) 2000-02-25

Family

ID=16812265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10224342A Pending JP2000055986A (ja) 1998-08-07 1998-08-07 半導体集積回路の設計方法

Country Status (1)

Country Link
JP (1) JP2000055986A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6877120B2 (en) 2001-08-08 2005-04-05 Fujitsu Limited Method of acquiring scan chain reorder information, and computer product
JP2008085596A (ja) * 2006-09-27 2008-04-10 Nec Electronics Corp クロック分配回路とテスト方法
US8434042B2 (en) 2008-12-26 2013-04-30 Renesas Electronics Corporation Method and software for designing semiconductor integrated circuit including observation circuit for detecting circuit failure
CN114239475A (zh) * 2021-12-17 2022-03-25 郑州信大华芯信息科技有限公司 低频数模混合模块时钟结构及扫描链设计方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6877120B2 (en) 2001-08-08 2005-04-05 Fujitsu Limited Method of acquiring scan chain reorder information, and computer product
JP2008085596A (ja) * 2006-09-27 2008-04-10 Nec Electronics Corp クロック分配回路とテスト方法
US8434042B2 (en) 2008-12-26 2013-04-30 Renesas Electronics Corporation Method and software for designing semiconductor integrated circuit including observation circuit for detecting circuit failure
CN114239475A (zh) * 2021-12-17 2022-03-25 郑州信大华芯信息科技有限公司 低频数模混合模块时钟结构及扫描链设计方法

Similar Documents

Publication Publication Date Title
JP2003162556A (ja) 集積回路のホールドタイムエラー修正方法及びその修正プログラム
US7197736B2 (en) Adaptive power routing and shield sharing to reduce shield count
US5402356A (en) Buffer circuit design using back track searching of site trees
JP2882359B2 (ja) レイアウト設計装置
JP2002259477A (ja) 半導体回路設計変更方法
US6766504B1 (en) Interconnect routing using logic levels
US6090150A (en) Method of designing clock wiring and apparatus for implementing the same
US7148135B2 (en) Method of designing low-power semiconductor integrated circuit
JPH1062494A (ja) 順序回路の故障箇所推定方法
JP4015807B2 (ja) タイミングドリブンレイアウト手法
JP2000055986A (ja) 半導体集積回路の設計方法
US6499125B1 (en) Method for inserting test circuit and method for converting test data
US7146590B1 (en) Congestion estimation for programmable logic devices
US6925624B2 (en) Circuit modification method
US6560761B1 (en) Method of datapath cell placement for bitwise and non-bitwise integrated circuit designs
JP4778339B2 (ja) 自動配置方法、装置、及びプログラム
JP2967762B2 (ja) 回路のレイアウト方法
JP7139551B2 (ja) 半導体集積回路の設計装置及びその設計用プログラム
JP3251250B2 (ja) クロックスキュー低減方法及びクロックスキュー低減方法を記録したコンピュータ読み取り可能な記録媒体
JP3017038B2 (ja) 半導体集積回路の設計方式
JP3370259B2 (ja) マスクレイアウト設計方法
JP3230234B2 (ja) 半導体集積回路の遅延調整方法、遅延調整用回路ブロックおよび記録媒体。
JP2993488B2 (ja) 集積回路の設計方法、集積回路及び記憶媒体
JP2000231583A (ja) 論理合成方法及び装置
JPH10254920A (ja) 論理回路の遅延最適化装置