JP5515757B2 - スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法 - Google Patents

スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法 Download PDF

Info

Publication number
JP5515757B2
JP5515757B2 JP2010006177A JP2010006177A JP5515757B2 JP 5515757 B2 JP5515757 B2 JP 5515757B2 JP 2010006177 A JP2010006177 A JP 2010006177A JP 2010006177 A JP2010006177 A JP 2010006177A JP 5515757 B2 JP5515757 B2 JP 5515757B2
Authority
JP
Japan
Prior art keywords
scan
flop
information
scan flip
flip
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.)
Active
Application number
JP2010006177A
Other languages
English (en)
Other versions
JP2011145893A (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2010006177A priority Critical patent/JP5515757B2/ja
Publication of JP2011145893A publication Critical patent/JP2011145893A/ja
Application granted granted Critical
Publication of JP5515757B2 publication Critical patent/JP5515757B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は、スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法に関する。
大規模な集積回路(例えばLSI等)のレイアウト設計においては、LSIレイアウト完了後に論理バグや機能追加の要因でフリップフロップを追加するような事態が存在する。その際スキャンイン、スキャンアウト等のスキャン機能をもたないフリップフロップ(ノーマルフリップフロップ)を追加すると、それらノーマルフリップフロップ周囲の論理回路がスキャンパスには繋がらないため、そのフリップフロップ周辺の回路が活性化されずLSIの故障検出率が低下してしまう。そのためスキャン機能をもったフリップフロップ(スキャンフリップフロップ)を論理回路に追加し既存のスキャンパスに接続することが望ましい。しかし、レイアウト完了後の設計データに対し、スキャンフリップフロップを追加することは容易ではない。
スキャンパスは、それ自身の特徴として、パス中の全てのフリップフロップが一筆書き状に接続されていれば良く、その接続順については特に制約されない。そのため、ノーマルフリップフロップからスキャンフリップフロップへの変換、および、スキャンパスの接続(シフトレジスタとして構成すべくスキャンフリップフロップ同士を直列に接続)はLSIレイアウト前の論理設計工程で論理合成ツールにより自動で決定され、設計者がその接続順を意識することはない。
加えて、LSIレイアウト中においてはスキャンパスの自動付け替え処理(自動配置処理により確定したフリップフロップの配置位置を参照し、スキャンパスの総配線長が短くなるような接続順の付け替え)が一般的に行われている。さらに付け替えを行ってもスキャンパスの配線長が長くセットアップエラーを起こすような場合の対処として、特許文献1のような技術がある。この特許文献1では、セットアップエラーを起こしている箇所に対してスキャンパスを切断し新たなスキャン用フリップフロップをダミーとして新たに挿入する等の処置が施される。
特開2003−196334号公報
上述したような処置が施されたデータに対しに新たにスキャンフリップフロップを追加するためには、レイアウトツールで出力されるスキャンパス接続順の情報やレイアウト後のネットリスト、LSIの配置配線情報等を参照して、設計者がセットアップエラーやホールドエラーを起こさないように、ネットリストを直接人手で修正する。その修正において、スキャンフリップフロップを挿入するか、もしくは論理合成やレイアウトをやり直す必要があり、設計工数の増大や設計の後戻りが発生していた。
尚、そのような事態を回避すべく、ある程度の論理変更を見越してダミーのスキャンフリップフロップを予め複数用意しておき、それらをスキャンパスに繋げてLSI内の空き領域に配置し、論理変更時に使用することも一般に行われている。しかし、LSI中のどの論理回路をどのように修正するかを事前に予想することは困難であるため、結果として所望の機能、性能(動作周波数)を満足する位置にダミーのフリップフロップが配置されているとは限らず、必ずしも有効に活用されない場合がある。
本発明の目的は、LSIのレイアウト完了後に論理変更などでフリップフロップが追加された場合に、セットアップエラーやホールドエラーを起こさないよう、追加されたフリップフロップを既存のスキャンパスに自動で接続することにより、設計工数の増大や設計の後戻りを防ぐことである。
本発明の一態様は、LSIレイアウトの既存スキャンパスに、追加スキャンフリップフロップを追加するスキャンフリップフロップ追加システムであって、前記既存スキャンパスの始点と終点間の複数のスキャンフリップフロップの接続情報を含む論理接続情報と、前記追加スキャンフリップフロップと前記論理接続情報で使用される前記複数のスキャンフリップフロップのレイアウト、及び、前記複数のスキャンフリップフロップのそれぞれのスキャンイン端子、スキャンアウト端子とを接続するネットの情報を含むレイアウト情報と、ネットの単位配線長当たりの遅延時間を計算するためのパラメータの情報を含む遅延ライブラリ情報と、ネットの遅延を制約する遅延制約情報と、を入力する情報入力手段と、前記論理接続情報、レイアウト情報、遅延ライブラリ情報、遅延制約情報を参照し、前記追加スキャンフリップフロップについて、前記既存スキャンパスへの挿入先を決定する追加先決定手段と、前記追加先決定手段により決定された内容に従って追加された、前記追加スキャンフリップフロップを、前記既存スキャンパスに挿入するように前記論理接続情報を更新する論理接続情報更新手段と、前記論理接続情報更新手段により更新された論理接続情報を参照し、接続が変更されたスキャンイン端子、スキャンアウト端子間の配線を行い、前記レイアウト情報を更新する再配線手段と、前記論理接続情報更新手段により更新された論理接続情報と、前記再配線手段により更新された前記レイアウト情報を出力する情報出力手段と、を有するスキャンフリップフロップ追加システムである。
本発明の他の態様は、LSIレイアウトの既存スキャンパスに、追加スキャンフリップフロップを追加するスキャンフリップフロップ追加方法であって、前記既存スキャンパスの始点と終点間の複数のスキャンフリップフロップの接続情報を含む論理接続情報と、前記追加スキャンフリップフロップと前記論理接続情報で使用される前記複数のスキャンフリップフロップのレイアウト、及び、前記複数のスキャンフリップフロップのそれぞれのスキャンイン端子、スキャンアウト端子とを接続するネットの情報を含むレイアウト情報と、ネットの単位配線長当たりの遅延時間を計算するためのパラメータの情報を含む遅延ライブラリ情報と、ネットの遅延を制約する遅延制約情報と、を入力し、前記論理接続情報、レイアウト情報、遅延ライブラリ情報、遅延制約情報を参照し、前記追加スキャンフリップフロップについて、前記既存スキャンパスへの挿入先を決定し、その追加された前記追加スキャンフリップフロップを、前記既存スキャンパスに挿入するように前記論理接続情報を更新し、その更新された論理接続情報を参照し、接続が変更されたスキャンイン端子、スキャンアウト端子間の配線を行い、前記レイアウト情報を更新し、その更新された論理接続情報及び前記レイアウト情報を出力するスキャンフリップフロップ追加方法である。
本発明によれば、LSIのレイアウト完了後に論理変更などでフリップフロップが追加された場合に、セットアップエラーやホールドエラーを起こさないよう、追加されたフリップフロップを既存のスキャンパスに自動で接続することにより、設計工数の増大や設計の後戻りを防ぐことができる。
実施の形態にかかるスキャンフリップフロップ追加システムのブロック図である。 実施の形態にかかる情報入力部が入力する論理接続情報を説明する模式図である。 実施の形態にかかる情報入力部が入力するレイアウト情報を説明する模式図である。 実施の形態にかかる情報入力部が入力する遅延ライブラリ情報の一例を示す表である。 実施の形態にかかるネットの配線長の一例を示す表である。 実施の形態にかかる遅延制約情報の一例を示す表である。 実施の形態にかかるスキャンフリップフロップ追加先決定部の動作を説明するフローチャートである。 実施の形態にかかるスキャンフリップフロップ追加先決定部の動作を説明する模式図である。 実施の形態にかかるスキャンフリップフロップ追加先決定部の動作を説明する模式図である。 実施の形態にかかるスキャンフリップフロップ追加先決定部の動作を説明する模式図である。 実施の形態にかかるスキャンフリップフロップ追加先決定部の動作を説明する模式図である。 実施の形態にかかる論理接続情報更新部の動作を説明する模式図である。 実施の形態にかかるスキャンパス再配線部の動作を説明する模式図である。 実施の形態にかかるスキャンフリップフロップ追加システムの動作フローチャートである。 実施の形態にかかるスキャンフリップフロップ追加システムを実現するハードウエア構成の一例である。
発明の実施の形態
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。図1に本実施の形態にかかるスキャンフリップフロップ追加システム100の構成を示すブロック図を示す。
図1に示すように、スキャンフリップフロップ追加システム100は、情報入力部101と、スキャンフリップフロップ追加先決定部102と、論理接続情報更新部103と、スキャンパス再配線部104と、情報出力部105とを有する。
情報入力部101は、LSIレイアウトや遅延計算等を行う際に必要な情報である、論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204等を入力する。
スキャンフリップフロップ追加先決定部102は、情報入力部101により入力された論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204を参照し、追加されたフリップフロップについて、既存のスキャンパスへの挿入先を決定する。また、その決定においては、接続先のフリップフロップ間の遅延時間がセットアップエラーやホールドエラーを起こさないような挿入先を選択する。
論理接続情報更新部103は、スキャンフリップフロップ追加先決定部102により決定された内容に従って、追加されたフリップフロップを既存のスキャンパスに挿入するように論理接続情報201を更新する。
スキャンパス再配線部104は、論理接続情報更新部103により更新された論理接続情報201を参照し、接続が変更されたスキャンイン端子SI−スキャンアウト端子SO間の再配線を行い、レイアウト情報202を更新する。
情報出力部105は、論理接続情報更新部103により更新された論理接続情報201と、スキャンパス再配線部104により更新されたレイアウト情報202を出力する。
以下に、本実施の形態にかかる動作について説明する。まず、情報入力部101は、LSIレイアウトや遅延計算等を行う際に必要な情報である、論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204を入力し、各情報を格納する。
ここで、図2に情報入力部101で入力した論理接続情報201を示す。論理接続情報201は、図2に示すように、スキャンイン外部端子SIを始点、スキャンアウト外部端子SOを終点として、その間にスキャンフリップフロップA〜Gが順に接続された構成の情報を有している。図2に示すように、スキャンフリップフロップA〜Gは、それぞれ前段スキャンフリップフロップのスキャンアウト端子と自分のスキャンイン端子、自分のスキャンアウト端子と次段スキャンフリップフロップのスキャンイン端子を接続している。
但し、スキャンフリップフロップAのスキャンイン端子はスキャンイン外部端子SIが接続され、スキャンフリップフロップGのスキャンアウト端子はスキャンアウト外部端子SOに接続されている。
ここで、スキャンフリップフロップHは、レイアウト設計が完了した後に追加されるフリップフロップである。このため、スキャンフリップフロップHのスキャンイン端子、スキャンアウト端子への接続はまだされていない状態である。
なお、スキャンフリップフロップA〜Gのそれぞれのスキャンイン端子を、SIA〜SIGとし、スキャンフリップフロップA〜Gのそれぞれのスキャンアウト端子を、SOA〜SOGとする。また、追加されるスキャンフリップフロップHのスキャンイン端子をSIH、スキャンアウト端子をSOHとする。
図3に情報入力部101でLSIのレイアウト情報202を示す。レイアウト情報202は、図3に示すように、LSIの外周にスキャンイン外部端子SIとスキャンアウト外部端子SOが配置され、LSIの内部領域にスキャンフリップフロップA〜Hが配置されている。また、それぞれのスキャンフリップフロップのスキャンイン端子とスキャンアウト端子を繋ぐネットN1〜N8までが配線されている。なお、図2同様、スキャンフリップフロップHのスキャンイン端子SIHとスキャンアウト端子SOHへは未だ配線されていない状態である。
尚、実際のLSIレイアウトにおいてはスキャンパス以外のセル(トランジスタ)や端子、それら端子への接続ならびに配線も存在しているが、ここでは説明の簡略化のため省略している。
図4に情報入力部101で入力した遅延ライブラリ情報203を示す。遅延ライブラリ情報203は、図4に示すように、単位配線長当たりの配線抵抗RL、配線容量CLおよび配線遅延時間の計算式など遅延計算を行う際に必要なパラメータが含まれる。LSI回路中の信号が伝播する遅延時間については回路を構成するセル(トランジスタ)およびそれらを繋ぐ配線の抵抗および容量(キャパシタンス)によって決定される。
計算方法については計算時間と計算精度の差異などで異なる手法が存在している。例としては特開2002−222863および特開2003−288379などで示されるElmore遅延モデルを用いた方法や特開2003−288379で示されるモーメントマッチング法などがある。但し、ここでは説明を簡単にするために、図4で示すような配線抵抗と配線容量の積で計算できるものとする。また、フリップフロップなどのセル内部にも配線抵抗、容量となる成分が存在しているが無視する。
また、図5に各スキャンフリップフロップ間に接続されるネットの配線長を示す。これはレイアウト完了後に確定する情報である。
図3、図4、図5を用いて、スキャンフリップフロップE〜Fまでの遅延計算例を説明する。例えば、図3におけるスキャンフリップフロップEとスキャンフリップフロップFの間を接続するネットN6の配線長は図5を参照して「8」である。図4によりネットN6の配線抵抗は0.5×8=4、配線容量は1×8=8と計算され、遅延時間は2×4×8=64と求めることができる。
図6に情報入力部101で入力した遅延制約情報204を示す。ここで、同期式LSIを所定のクロック周波数で動作させるためには、信号があるフリップフロップの出力ピンから出発して、次段のフリップフロップの入力ピンに到達するまでの時間が、クロック周期を基準とした一定の時間内に収まっている必要がある。到達時間が遅いものをセットアップエラー、速過ぎるものをホールドエラーと呼ぶ。
遅延制約情報204にはセットアップ時間の制限値、ホールド時間の制限値が格納されており、例えば、それぞれ100、10と定義されている。これはフリップフロップの入力ピンに到達するまでの時間が100以上であればセットアップエラー、10未満であればホールドエラーであることを示している。
次に、スキャンフリップフロップ追加先決定部102は、上述した情報入力部101により入力された、論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204を参照し、追加されたフリップフロップについて、既存のスキャンパスへの挿入先を決定する。その決定においては、接続先のフリップフロップ間の遅延時間がセットアップエラーやホールドエラーを起こさないような挿入先を選択する。
図7にスキャンフリップフロップ追加先決定部102の詳細な手順(フローチャート)を示す。
まず、ステップS101において、追加されたスキャンフリップフロップから一定距離内に配置されているスキャンフリップフロップを抽出する。この抽出例を図8に示す。ここでは追加されたスキャンフリップフロップHから一定距離(点線で示す円の半径)内のスキャンフリップフロップBとFが抽出される。
次に、ステップS102において、ステップS101で抽出されたスキャンフリップフロップのうち、追加されたスキャンフリップフロップHに近いものから選択する。ここではスキャンフリップフロップHに一番近いスキャンフリップフロップとしてスキャンフリップフロップBがまず選択される。
次に、ステップS104において、追加されたスキャンフリップフロップのスキャンイン端子と、ステップS102で選択されたフリップフロップのスキャンアウト端子との間を繋いだ場合における遅延時間を見積もる。ここでは、追加されたスキャンフリップフロップHのスキャンイン端子SIHと、ステップS102で選択されたフリップフロップBのスキャンアウト端子SOBとの間を繋いだ場合における遅延時間を見積もっている。
具体的には、まず、既存のスキャンイン端子−スキャンアウト端子間に接続されている配線のみを無視した形で端子間を仮配線してその距離を求める。そして、次に前述の遅延計算方法を用いて求めた距離から遅延時間の算出を行う。
例えば、図9に例を示すと、スキャンフリップフロップBのスキャンアウト端子SOBからスキャンフリップフロップHのスキャンイン端子SIHまでを仮配線する。ここでは長さ「3」で配線されている。この場合の遅延時間は2×0.5×3×1×3=9と求めることができる。
しかし、図6に示す遅延制約情報204により、この値「9」はホールドエラーであるため、ステップS102に戻り、スキャンフリップフロップBの次に近いスキャンフリップフロップFが選択される。
次に、ステップS104において、スキャンフリップフロップHのスキャンイン端子SIHとスキャンフリップフロップFのスキャンイン端子SOF間の遅延を見積もる。上述した場合と同様、既存のスキャンイン端子−スキャンアウト端子間に接続されている配線のみを無視した形で端子間を仮配線してその距離を求める。図10に例を示すと、ここでは長さ「8」で配線されており、この場合の遅延時間は2×0.5×8×1×8=64と求めることができる。この値はセットアップエラーでもホールドエラーでもないので、ステップS107に進む。仮に、ステップS104で見積もった値が、ステップS106で、セットアップエラーであると判断されると、END2に移行し終了する。
次に、ステップS107では、論理接続情報201を参照し、ステップS102で選択されたスキャンフリップフロップのスキャンアウト側に接続されているフリップフロップを選択する。本例ではスキャンフリップフロップGが選択される。
次にステップS108では、追加されたスキャンフリップフロップのスキャンアウト端子と前記ステップS107で選択されたスキャンフリップフロップのスキャンイン端子間の遅延時間を見積もる。手法としてはステップS104と同様、スキャンフリップフロップGのスキャンイン端子SIGと追加されたスキャンフリップフロップHのスキャンアウト端子SOHとの間を仮配線しての遅延値を見積もる。
図11に例を示すと、ここでは長さ「8」で配線されており、この場合の遅延時間は2×0.5×8×1×8=64と求めることができる。この値はセットアップエラーでもホールドエラーでもないので、END1に移動し処理を終了する。以上により、スキャンフリップフロップHをスキャンフリップフロップFとGの間に挿入するものとして決定される。仮に、ステップS108で見積もった値が、ステップS110で、セットアップエラーであると判断されると、END2に移行し終了する。
END2で終了する場合は、セットアップエラーを起こさないスキャンフリップフロップがレイアウト中に存在しないことになる。そのためこの場合は全体処理を終了し、例えば特開2003−196334 に示すような、セットアップエラーを起こしている箇所に対してスキャンパスを切断し新たなスキャン用フリップフロップをダミーとして新たに挿入する等の処理が別途必要となる。
また、ステップS103で、ステップS101もしくはS107により抽出されたスキャンフリップフロップを全て選択していると判断された場合、END3に移行し終了する。END3で終了する場合は、ホールドエラーを起こさないフリップフロップが範囲内に存在しないことになるので、ステップS101の探索範囲を広げる形で再度、スキャンフリップフロップ追加先決定部102のフローを実施することになる。
次に、論理接続情報更新部103は、前述のスキャンフリップフロップ追加先決定部102により決定された内容に従って追加されたスキャンフリップフロップを、既存のスキャンパスに挿入するように論理接続情報201を更新する。本例ではスキャンフリップフロップHをスキャンフリップフロップFとGの間に挿入するものとして決定されているので、その内容に従って論理接続情報201を更新する。
その更新後の論理接続情報を図12に示す。図12に示すように、スキャンフリップフロップFとGの間にネットN9、N10を介してスキャンフリップフロップHが挿入されている。
次に、スキャンパス再配線部104は、論理接続情報更新部103により更新された論理接続情報201を参照し、接続が変更されたスキャンイン端子−スキャンアウト端子間の配線を行い、レイアウト情報202を更新する。本例では新たな接続であるネットN9、N10を配線する。最配線された状態のレイアウト情報202を図13に示す。
次に、情報出力部105は、論理接続情報更新部103により更新された論理接続情報201と、スキャンパス再配線部104により更新されたレイアウト情報202を出力する。
ここで、上述したスキャンフリップフロップ追加システム100の全体の処理フローを図14に示す。但し、このフローに示す各ステップ(S201〜S205)は、上述した情報入力部101、スキャンフリップフロップ追加先決定部102、論理接続情報更新部103、スキャンパス再配線部104、情報出力部105の処理動作に対応しているため、ここでは簡単に説明する。
図14に示すように、まず、ステップS201において、論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204を入力し、各情報を格納する。次に、ステップS202において、ステップS201で、入力された論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204を参照し、追加されたフリップフロップについて、既存のスキャンパスへの挿入先を決定する。
次に、ステップS203において、ステップS202で決定された内容に従って、追加されたフリップフロップを既存のスキャンパスに挿入するように論理接続情報201を更新する。次に、ステップS204において、ステップS203で更新された論理接続情報201を参照し、接続が変更されたスキャンイン端子SI−スキャンアウト端子SO間の再配線を行い、レイアウト情報202を更新する。次に、ステップS205において、ステップS203で更新された論理接続情報201と、ステップS204で更新されたレイアウト情報202を出力する。
以上説明したような、実施の形態により、LSIのレイアウト完了後に論理変更などでスキャンフリップフロップが追加された場合において、セットアップエラーやホールドエラーを起こさないよう、追加されたフリップフロップを既存のスキャンパスに自動で接続することができ、設計工数の増大や設計の後戻りを防ぐことができる。
なお、本発明は上記実施の形態に限られたものでなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述したスキャンフリップフロップ追加システム100は、図15に示すようなPC等のコンピュータ300で実現してもよい。以下、このようなコンピュータ300で、スキャンフリップフロップ追加システム100を構成した例を簡単に説明する。図15に示すようにコンピュータ300は、CPU301と、主メモリ302と、HDD303と、ROM304と、入出力装置305と、バス306とを有する。
上述した論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204等の各情報は、コンピュータ300のHDD303や、ネットワーク内のデータベース307等に保存されている。そして、CPU301は、HDD303もしくはROM304に格納されているスキャンフリップフロップ追加システム100を実現するためのプログラム(以下、処理プログラムと称す)を呼び出し、主メモリ302に展開する。
上述した情報入力部101、スキャンフリップフロップ追加先決定部102、論理接続情報更新部103、スキャンパス再配線部104、情報出力部105は、この処理プログラム内でモジュール化されている。そして、CPU301により各モジュールプログラムが処理され、上述した各動作を行う。なお、このコンピュータ300を制御するオペレーティングシステムが各各モジュールプログラムを制御するようにしてもよい。
例えば、情報入力部101として動作するプログラムは、論理接続情報201、レイアウト情報202、遅延ライブラリ情報203、遅延制約情報204等の各情報をHDD303もしくはネットワーク内のデータベース307等から呼び出し、主メモリ302にデータとして記憶させる。そして、スキャンフリップフロップ追加先決定部102、論理接続情報更新部103、スキャンパス再配線部104として動作するプログラムにより、上述した処理動作を行い、情報出力部105として動作するプログラムによりHDD304や、入出力装置305を経由して表示装置(不図示)等に出力される。
また、情報入力部101、スキャンフリップフロップ追加先決定部102、論理接続情報更新部103、スキャンパス再配線部104、情報出力部105をプログラムではなく、専用のハードウエアで実現してもよい。その際、情報入力部101、スキャンフリップフロップ追加先決定部102、論理接続情報更新部103、スキャンパス再配線部104、情報出力部105の各動作を制御する制御部を備えるようにしてもよい。
100 スキャンフリップフロップ追加システム
101 情報入力部
102 スキャンフリップフロップ追加先決定部
103 論理接続情報更新部
104 スキャンパス再配線部
105 情報出力部
201 論理接続情報
202 レイアウト情報
203 遅延ライブラリ情報
204 遅延制約情報

Claims (2)

  1. LSIレイアウトの既存スキャンパスに、追加スキャンフリップフロップを追加するスキャンフリップフロップ追加システムであって、
    前記既存スキャンパスの始点と終点間の複数のスキャンフリップフロップの接続情報を含む論理接続情報と、
    前記追加スキャンフリップフロップと前記論理接続情報で使用される前記複数のスキャンフリップフロップのレイアウト、及び、前記複数のスキャンフリップフロップのそれぞれのスキャンイン端子、スキャンアウト端子とを接続するネットの情報を含むレイアウト情報と、
    ネットの単位配線長当たりの遅延時間を計算するためのパラメータの情報を含む遅延ライブラリ情報と、
    ネットの遅延を制約する遅延制約情報と、を入力する情報入力手段と、
    前記レイアウト情報から、前記既存スキャンパスの複数のスキャンフリップフロップのうち前記追加スキャンフリップフロップから所定距離以内にある第1のスキャンフリップフロップを抽出し、
    前記追加スキャンフリップフロップのスキャンイン端子と前記第1のスキャンフリップフロップのスキャンアウト端子間のネットの第1の遅延値を前記遅延ライブラリ情報から見積もり、
    前記見積もった第1の遅延値が前記遅延制約情報で制約されない場合、前記論理接続情報から前記第1のスキャンフリップフロップの次段に設定されている第2のスキャンフリップフロップを抽出し、
    前記第2のスキャンフリップフロップのスキャンイン端子と前記追加スキャンフリップフロップのスキャンアウト端子間のネットの第2の遅延値を前記遅延ライブラリ情報から見積もり、
    前記見積もった第2の遅延値が前記遅延制約情報で制約されない場合、前記追加スキャンフリップフロップの挿入先を前記第1のスキャンフリップフロップと前記第2のスキャンフリップフロップの間と決定する追加先決定手段と、
    前記追加先決定手段により決定された内容に従って追加された、前記追加スキャンフリップフロップを、前記既存スキャンパスに挿入するように前記論理接続情報を更新する論理接続情報更新手段と、
    前記論理接続情報更新手段により更新された論理接続情報を参照し、接続が変更されたスキャンイン端子、スキャンアウト端子間の配線を行い、前記レイアウト情報を更新する再配線手段と、
    前記論理接続情報更新手段により更新された論理接続情報と、前記再配線手段により更新された前記レイアウト情報を出力する情報出力手段と、を有する
    スキャンフリップフロップ追加システム。
  2. LSIレイアウトの既存スキャンパスに、追加スキャンフリップフロップを追加する、コンピュータによって実行されるスキャンフリップフロップ追加方法であって、
    前記既存スキャンパスの始点と終点間の複数のスキャンフリップフロップの接続情報を含む論理接続情報と、
    前記追加スキャンフリップフロップと前記論理接続情報で使用される前記複数のスキャンフリップフロップのレイアウト、及び、前記複数のスキャンフリップフロップのそれぞれのスキャンイン端子、スキャンアウト端子とを接続するネットの情報を含むレイアウト情報と、
    ネットの単位配線長当たりの遅延時間を計算するためのパラメータの情報を含む遅延ライブラリ情報と、
    ネットの遅延を制約する遅延制約情報と、を入力し、
    前記レイアウト情報から、前記既存スキャンパスの複数のスキャンフリップフロップのうち前記追加スキャンフリップフロップから所定距離以内にある第1のスキャンフリップフロップを抽出し、
    前記追加スキャンフリップフロップのスキャンイン端子と前記第1のスキャンフリップフロップのスキャンアウト端子間のネットの第1の遅延値を前記遅延ライブラリ情報から見積もり、
    前記見積もった第1の遅延値が前記遅延制約情報で制約されない場合、前記論理接続情報から前記第1のスキャンフリップフロップの次段に設定されている第2のスキャンフリップフロップを抽出し、
    前記第2のスキャンフリップフロップのスキャンイン端子と前記追加スキャンフリップフロップのスキャンアウト端子間のネットの第2の遅延値を前記遅延ライブラリ情報から見積もり、
    前記見積もった第2の遅延値が前記遅延制約情報で制約されない場合、前記追加スキャンフリップフロップの挿入先を前記第1のスキャンフリップフロップと前記第2のスキャンフリップフロップの間と決定し、
    その追加された前記追加スキャンフリップフロップを、前記既存スキャンパスに挿入するように前記論理接続情報を更新し、
    その更新された論理接続情報を参照し、接続が変更されたスキャンイン端子、スキャンアウト端子間の配線を行い、前記レイアウト情報を更新し、
    その更新された論理接続情報及び前記レイアウト情報を出力する
    スキャンフリップフロップ追加方法。
JP2010006177A 2010-01-14 2010-01-14 スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法 Active JP5515757B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010006177A JP5515757B2 (ja) 2010-01-14 2010-01-14 スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010006177A JP5515757B2 (ja) 2010-01-14 2010-01-14 スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法

Publications (2)

Publication Number Publication Date
JP2011145893A JP2011145893A (ja) 2011-07-28
JP5515757B2 true JP5515757B2 (ja) 2014-06-11

Family

ID=44460687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010006177A Active JP5515757B2 (ja) 2010-01-14 2010-01-14 スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法

Country Status (1)

Country Link
JP (1) JP5515757B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022819A (ja) * 1999-07-13 2001-01-26 Nec Eng Ltd 半導体集積回路のスキャンパス配線設計方法
JP2003014818A (ja) * 2001-07-02 2003-01-15 Matsushita Electric Ind Co Ltd スキャンテスト回路、及びスキャンテスト回路の作成方法
JP2003163273A (ja) * 2001-11-29 2003-06-06 Nec Microsystems Ltd 半導体集積回路及びその修正方法
JP3852335B2 (ja) * 2001-12-26 2006-11-29 日本電気株式会社 スキャンパス処理システム、スキャンパス処理方法、および、スキャンパス処理プログラム
JP2003256488A (ja) * 2002-03-05 2003-09-12 Ricoh Co Ltd Lsiレイアウト方法、プログラムおよび記録媒体
JP4561992B2 (ja) * 2005-07-29 2010-10-13 日本電気株式会社 半導体集積回路設計装置および半導体集積回路設計方法
JP2009038072A (ja) * 2007-07-31 2009-02-19 Nec Electronics Corp 半導体集積回路及びその開発方法

Also Published As

Publication number Publication date
JP2011145893A (ja) 2011-07-28

Similar Documents

Publication Publication Date Title
US8196076B2 (en) Optimal flow in designing a circuit operable in multiple timing modes
US10437946B1 (en) Using implemented core sources for simulation
US10635846B2 (en) Timing error analysis method and information processing apparatus
US8281269B2 (en) Method of semiconductor integrated circuit device and program
US8656337B2 (en) Optimization method and device for netlist used in logic circuit design for semiconductor integrated circuit
JP5444985B2 (ja) 情報処理装置
CN107784185B (zh) 一种门级网表中伪路径的提取方法、装置及终端设备
JP4736822B2 (ja) 半導体集積回路の設計支援装置、設計支援方法および設計支援プログラム
US8074198B2 (en) Apparatus and method for circuit layout using longest path and shortest path search elements
JP5515757B2 (ja) スキャンフリップフロップ追加システム及びスキャンフリップフロップ追加方法
JP5440094B2 (ja) 回路設計装置及び方法
JP2005136286A (ja) 半導体集積回路の設計方法、及びその装置
JP2007072995A (ja) レイアウト装置、自動配置配線方法および半導体集積回路製造方法
JP4886559B2 (ja) 半導体設計支援装置、半導体設計支援方法および半導体設計支援プログラム
JP2005293349A (ja) 回路設計支援システム、設計方法及びプログラム
US7086015B2 (en) Method of optimizing RTL code for multiplex structures
US7284217B2 (en) Method of LSI designing and a computer program for designing LSIS
US20090222784A1 (en) Design method estimating signal delay time with netlist in light of terminal line in macro, and program
Mihal A difference logic formulation and SMT solver for timing-driven placement
JP4673689B2 (ja) 論理合成方法及び論理合成装置
JP6394278B2 (ja) 有限状態機械の設計検証装置、設計検証方法、及び設計検証プログラム
WO2010100830A1 (ja) 半導体装置、回路修正方法、設計支援装置及び設計支援プログラムが格納された記録媒体
JP2009004700A (ja) スペアセルの挿入/配置方法
JP5531479B2 (ja) 回路設計方法、及び回路設計プログラム
JP6325846B2 (ja) 半導体集積回路のフロアプラン作成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130723

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130918

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: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140317

R150 Certificate of patent or registration of utility model

Ref document number: 5515757

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150