JP5668457B2 - 回路設計方法、プログラム及び半導体集積回路 - Google Patents
回路設計方法、プログラム及び半導体集積回路 Download PDFInfo
- Publication number
- JP5668457B2 JP5668457B2 JP2010282349A JP2010282349A JP5668457B2 JP 5668457 B2 JP5668457 B2 JP 5668457B2 JP 2010282349 A JP2010282349 A JP 2010282349A JP 2010282349 A JP2010282349 A JP 2010282349A JP 5668457 B2 JP5668457 B2 JP 5668457B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- test
- hierarchy
- block
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
Description
(第1の実施の形態)
図1は、第1の実施の形態の回路設計方法の一例を示す図である。
階層設計(ステップS1)では、論理合成によって得られたネットリストが、特定の複数の回路ブロックに分割されて、各階層の回路ブロックごとに設計が行われる。本実施の形態の回路設計方法では、図1に示されるような、テスト設計が行われる。
また、選択部6は、自身の階層の試験回路モデル4,5を経由した試験データ(試験回路モデル4,5の試験結果)か、自身の階層の試験回路モデル4,5を経由しない試験データの何れかを選択して出力する。選択部11は、自身の階層の試験回路モデル9,10を経由した試験データ(試験回路モデル9,10の試験結果)か、自身の階層の試験回路モデル9,10を経由しない試験データの何れかを選択して出力する。
下位階層の論理検証時(ステップS2)、下位階層の回路ブロックの選択部6は、自身の階層の試験回路モデル4,5を経由した試験データ、すなわち、試験対象回路モデル2,3の試験結果を選択して出力する。これにより、図2に示されている下位階層の論理検証を独立に行うことができる。
トップ階層の論理検証時(ステップS3)には、トップ階層の回路ブロックの選択部11は、自身の階層の試験回路モデル9,10を経由した試験データ、すなわち、試験対象回路モデル7,8の試験結果を選択して出力する。また、下位階層の選択部6は、自身の階層の試験回路モデル4,5を経由しない試験データを選択して出力する。これにより、トップ階層での試験データ(試験結果)が、選択部6から出力され、トップ階層の論理検証を独立に行うことができる。
(第2の実施の形態)
図4は、本実施の形態の回路設計方法を実行するコンピュータのハードウェア例を示す図である。
図5は、階層設計の一例の流れを示すフローチャートである。
ここでは、一例として、以下のような、半導体集積回路を階層設計するものとする。
なお、以下では、試験対象の機能マクロとしてRAMを示すが、これに限定されない。
図6に示す半導体集積回路40において、下位階層の回路ブロックは、試験対象となるRAM41,42,43、ラッパー回路44,45,46、制御部47,48、階層制御回路49を有している。
ラッパー回路44〜46は、RAM41〜43に対応して設けられ、あるテストパターンに対するRAM41〜43からの読み出し値と、そのテストパターンに対するRAM41〜43からの期待値(制御部47,48から供給される)との比較などを行う。
階層制御回路49は、セレクタ49a、フリップフロップ49b,49cを有している。
ラッパー回路53〜55は、RAM50〜52に対応して設けられ、あるテストパターンに対するRAM50〜52からの読み出し値と、そのテストパターンに対するRAM50〜52からの期待値(制御部56,57から供給される)との比較などを行う。
階層制御回路58は、セレクタ58a、フリップフロップ58b,58cを有している。
上記のような半導体集積回路40を階層設計する場合、図5のフローチャートのステップS10の下位階層のテスト設計では、まず、テスト合成が行われ、図6に示したような試験回路の機能を有した下位階層の回路ブロックが生成される(ステップS11)。また、このとき、コンピュータ20は、トップ階層での論理検証の際に用いる下位階層の回路ブロックとして、以下のような検証用モデル33を生成する。
ここでは、図6に示した下位階層の回路ブロックの、RAM41〜43、ラッパー回路44〜46、制御部47,48を削除して、階層制御回路49を残した検証用モデル33の例を示している。
下位階層のテスト設計では、次に、EDAツールの1つであるATPG(Automatic Test Pattern generator)によって、図6に示した下位階層の回路ブロックに対するテストパターンが自動生成される(ステップS12)。
図8は、下位階層の論理検証時の回路ブロックの一例を示す図である。
そして、コンピュータ20は、生成されたテストパターンを用いてトップ階層の論理検証(仮配置シミュレーション)を行う(ステップS23)。このとき、論理検証済の下位階層の検証用モデル33が組み込まれて、論理検証が行われる。
図9では、トップ階層に、図7に示した下位階層の検証用モデル33を組み込んだ例が示されている。
以上のような階層設計によれば、図7、図9に検証用モデル33として示したように、トップ階層の論理検証時に組み込む論理検証済の下位階層の回路ブロックの論理数を削減している。トップ階層の論理検証時、セレクタ49aは、トップ階層からの試験データを選択するので、下位階層の回路ブロックから、RAM41〜43、ラッパー回路44〜46、制御部47,48を削除しても、トップ階層の検証結果に影響を与えない。
図10は、RAMが増加した場合の半導体集積回路の一例を示す図である。
(制御部とラッパー回路の詳細)
図11は、制御部とラッパー回路の一例を示す図である。
ラッパー回路53,54は、期待値比較部53a,54a、フリップフロップ53b,54b、セレクタ53c,54cを有している。
制御回路56aと、2つのラッパー回路53,54の期待値比較部53a,54aは、図11に示すようにセレクタ53c,54cを介してシリアル接続されており、スキャンパス構造をもっている。
フリップフロップ56cは、入力される試験データをクロック信号に同期してセレクタ56dに供給する。セレクタ56dは、ラッパー回路54の出力信号か、フリップフロップ56cに保持された試験データの何れかを、制御回路56aからの選択信号に応じて選択して出力する。
ところで、前述の図6の例では、簡単のため、制御部47,48,56,57、ラッパー回路44〜46,53〜55のシリアル接続によるパス(スキャンパス)の本数を1本としているが、複数あってもよい。
図12では、図6などで示したRAM、制御部及びラッパー回路を1つの回路ブロック(test/RAM)で示している。
AND回路82は、端子91から入力されるクロックドメイン選択信号と、test/RAM71からの出力信号とのAND論理を出力する。AND回路83は、端子91から入力されるクロックドメイン選択信号と、端子94から入力される試験データとのAND論理を出力する。
階層制御回路90は、セレクタ90a,90b、フリップフロップ90c,90d,90eを有している。
AND回路108は、MTC116から供給されるクロックドメイン選択信号と、シリアルに接続されたtest/RAM100〜102の最後段のtest/RAM102からの出力信号とのAND論理を出力する。AND回路109は、MTC116から供給されるクロックドメイン選択信号と、シリアルに接続されたtest/RAM103,104の最後段のtest/RAM104からの出力信号とのAND論理を出力する。
OR回路112は、AND回路108,110のOR論理を出力する。OR回路113は、AND回路109,111のOR論理を出力する。
セレクタ114aは、端子117からフリップフロップ114cを介して供給される選択信号に応じてOR回路113からの出力信号か、端子120から供給される試験データの何れかを選択して出力する。セレクタ114bは、端子117からフリップフロップ114cを介して供給される選択信号に応じてOR回路112からの出力信号か、端子121から供給される試験データの何れかを選択して出力する。
MTC116は、TAPC115の制御のもと、3種のクロックドメインに対応した3種のクロックドメイン選択信号を出力する。図12に示す例では、あるクロックドメインに対応したクロックドメイン選択信号が“1”のときそのクロックドメインが選択され、“0”のときは選択されない。
MTC116は、TAPC115の制御のもと、AND回路84,85に供給するクロックドメイン選択信号を“1”として、その他のAND回路82,83,86,87,108〜111に供給するクロックドメイン選択信号を“0”とする。
図13は、トップ階層の論理検証時の論理検証モデルの一例を示す図である。
なお、検証用モデル130は、階層制御回路90以外の全ての配線、論理などを削除するようにしてもよい。
MTC116は、TAPC115の制御のもと、AND回路108,109に供給するクロックドメイン選択信号を“1”として、AND回路110,111に供給するクロックドメイン選択信号を“0”とする。
図14は、下位階層の回路ブロックが更に下位階層の回路ブロックを含む場合の半導体集積回路の一例を示す図である。
階層制御回路152は、セレクタ152a,152b、フリップフロップ152c,152d,152eを有している。
test/RAM72〜77の試験時の動作については前述しているので省略する。
test/RAM143〜145のクロックドメインの試験を行う場合、AND回路146,147の出力信号は“0”に固定されるため、OR回路150,151からは、AND回路148,149の出力信号に応じた値が出力される。すなわち、OR回路150,151からは、test/RAM143〜145での試験結果に応じた値が出力される。
図15は、パワードメインが異なる回路ブロックが存在する場合の半導体集積回路の一例を示す図である。
階層制御回路182は、セレクタ182a,182b、フリップフロップ182c,182d,182eを有している。
フリップフロップ182cは、端子188から供給される選択信号を、端子187から供給されるクロック信号に同期して取り込み、セレクタ182a,182bに供給するとともに、端子189に供給する。なお、端子187は、トップ階層の回路ブロックの端子119に直接接続されており、端子188は、トップ階層の回路ブロックの端子117に直接接続されている。
PMU192は、TAPC115の制御のもと、セレクタ193,194に、パワードメインPD1,PD2のどちらからの試験結果を出力させるか指定する選択信号を供給する。
以上説明した複数の実施の形態に関し、さらに以下の付記を開示する。
階層設計データの各階層の回路ブロックに含まれる試験回路モデルを、階層内及び階層間でシリアル接続し、自身の階層の前記試験回路モデルを経由した試験データか、前記自身の階層の前記試験回路モデルを経由しない試験データの何れかを選択して出力する選択部を各階層に設けることを特徴とする回路設計方法。
論理数を削減した前記第1の階層の回路ブロックに含まれる前記選択部に前記第1の階層の前記試験回路モデルを経由しない試験データを出力させて、前記第2の階層の回路ブロックの論理検証を行うことを特徴とする付記1記載の回路設計方法。
前記試験対象回路モデル及び前記試験回路モデルを削除した前記第1の階層の回路ブロックに含まれる前記選択部に、前記試験回路モデルを経由しない試験データを出力させて、前記第2の階層の回路ブロックの論理検証を行うことを特徴とする付記1または2に記載の回路設計方法。
(付記6) 階層設計データの各階層の回路ブロックに含まれる試験回路モデルを、階層内及び階層間でシリアル接続し、
自身の階層の前記試験回路モデルを経由した試験データか、前記自身の階層の前記試験回路モデルを経由しない試験データの何れかを選択して出力する選択部を各階層に設ける処理をコンピュータに実行させるプログラム。
前記各階層の回路ブロックに設けられ、自身の階層の前記試験回路を経由した試験データか、前記自身の階層の前記試験回路を経由しない試験データの何れかを選択して出力する選択部と、
を有することを特徴とする半導体集積回路。
2,3,7,8 試験対象回路モデル
4,5,9,10 試験回路モデル
6,11 選択部
Claims (6)
- コンピュータによって実行される回路設計方法であって、
第1の階層の第1の回路ブロックに含まれる第1の試験回路モデルと、前記第1の回路ブロックを含む第2の階層の第2の回路ブロックに含まれる第2の試験回路モデルを、前記第1の階層内、前記第2の階層内及び前記第1の階層と前記第2の階層間でシリアル接続し、
前記第1の試験回路モデルを経由した第1の試験データか、前記第1の試験回路モデルを経由しない第2の試験データの何れかを選択して出力する第1の選択部を前記第1の回路ブロックに設け、前記第2の試験回路モデルを経由した第3の試験データか、前記第2の試験回路モデルを経由しない第4の試験データの何れかを選択して出力する第2の選択部を前記第2の回路ブロックに設けることを特徴とする回路設計方法。 - 前記第2の回路ブロックの論理検証時に、論理検証済みの前記第1の回路ブロックを、前記第1の選択部以外の論理数を削減して前記第2の回路ブロックに組み込み、
論理数を削減した前記第1の回路ブロックに含まれる前記第1の選択部に前記第2の試験データを出力させて、前記第2の回路ブロックの論理検証を行うことを特徴とする請求項1記載の回路設計方法。 - 前記第2の回路ブロックの論理検証時に、論理検証済みの前記第1の回路ブロックから、第1の試験対象回路モデル及び前記第1の試験回路モデルを削除して前記第2の回路ブロックに組み込み、
前記第1の試験対象回路モデル及び前記第1の試験回路モデルを削除した前記第1の回路ブロックに含まれる前記第1の選択部に、前記第2の試験データを出力させて、前記第2の回路ブロックの論理検証を行うことを特徴とする請求項1または2に記載の回路設計方法。 - 同じクロックドメインの複数の試験対象回路モデルを試験する複数の、前記第1の試験回路モデルまたは前記第2の試験回路モデルを、複数本のパスでシリアル接続することを特徴とする請求項1乃至3の何れか一項に記載の回路設計方法。
- 第1の階層の第1の回路ブロックに含まれる第1の試験回路モデルと、前記第1の回路ブロックを含む第2の階層の第2の回路ブロックに含まれる第2の試験回路モデルを、前記第1の階層内、前記第2の階層内及び前記第1の階層と前記第2の階層間でシリアル接続し、
前記第1の試験回路モデルを経由した第1の試験データか、前記第1の試験回路モデルを経由しない第2の試験データの何れかを選択して出力する第1の選択部を前記第1の回路ブロックに設け、前記第2の試験回路モデルを経由した第3の試験データか、前記第2の試験回路モデルを経由しない第4の試験データの何れかを選択して出力する第2の選択部を前記第2の回路ブロックに設ける処理をコンピュータに実行させるプログラム。 - 第1の階層の第1の回路ブロックに含まれる第1の試験回路と、
前記第1の回路ブロックを含む第2の階層の第2の回路ブロックに含まれる第2の試験回路と、
前記第1の回路ブロックに設けられ、前記第1の試験回路を経由した第1の試験データか、前記第1の試験回路を経由しない第2の試験データの何れかを選択して出力する第1の選択部と、
前記第2の回路ブロックに設けられ、前記第2の試験回路を経由した第3の試験データか、前記第2の試験回路を経由しない第4の試験データの何れかを選択して出力する第2の選択部と、を有し、
前記第1の試験回路と前記第2の試験回路は、前記第1の階層内、前記第2の階層内及び前記第1の階層と前記第2の階層間でシリアル接続されている、
ことを特徴とする半導体集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010282349A JP5668457B2 (ja) | 2010-12-17 | 2010-12-17 | 回路設計方法、プログラム及び半導体集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010282349A JP5668457B2 (ja) | 2010-12-17 | 2010-12-17 | 回路設計方法、プログラム及び半導体集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012128819A JP2012128819A (ja) | 2012-07-05 |
JP5668457B2 true JP5668457B2 (ja) | 2015-02-12 |
Family
ID=46645727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010282349A Expired - Fee Related JP5668457B2 (ja) | 2010-12-17 | 2010-12-17 | 回路設計方法、プログラム及び半導体集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5668457B2 (ja) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6456961B1 (en) * | 1999-04-30 | 2002-09-24 | Srinivas Patil | Method and apparatus for creating testable circuit designs having embedded cores |
JP2004258791A (ja) * | 2003-02-24 | 2004-09-16 | Renesas Technology Corp | 半導体集積回路のスキャンパス設計方法 |
JP2005346326A (ja) * | 2004-06-02 | 2005-12-15 | Sony Corp | マクロ回路設計装置、マクロ回路設計方法、マクロ回路、lsi設計装置、lsi設計方法、記録媒体、およびプログラム |
-
2010
- 2010-12-17 JP JP2010282349A patent/JP5668457B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012128819A (ja) | 2012-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8136082B2 (en) | Method for testing integrated circuits | |
US8458629B2 (en) | Decision modules in integrated circuit design | |
US7562321B2 (en) | Method and apparatus for structured ASIC test point insertion | |
US20050268258A1 (en) | Rule-based design consultant and method for integrated circuit design | |
US8051400B2 (en) | Modifying integrated circuit layout | |
US6862717B2 (en) | Method and program product for designing hierarchical circuit for quiescent current testing | |
US10235485B1 (en) | Partial reconfiguration debugging using hybrid models | |
US7856608B2 (en) | Method and apparatus for generating current source noise model for creating semiconductor device model used in power supply noise analysis | |
CN112069763A (zh) | 修正电路的方法 | |
JP2010257164A (ja) | 半導体集積回路装置の設計方法およびプログラム | |
US11256839B1 (en) | IP block scan chain construction | |
US7840924B2 (en) | Apparatus, method, and program for verifying logic circuit operating with multiple clock signals | |
JP5668457B2 (ja) | 回路設計方法、プログラム及び半導体集積回路 | |
JP2009517759A (ja) | Ic設計方法およびic設計ツール | |
US7086017B1 (en) | Method of post-implementation simulation of a HDL design | |
Doerre et al. | The IBM ASIC/SoC methodology—A recipe for first-time success | |
JP6316311B2 (ja) | パターンベースの電源グランド(pg)ルーティングおよびビア生成 | |
JP7069608B2 (ja) | 半導体設計支援装置、半導体設計支援方法及びプログラム | |
JP5799645B2 (ja) | 電源電圧設定方法及び電源電圧設定プログラム | |
JP5146369B2 (ja) | 回路設計プログラム、回路設計方法および回路設計装置 | |
JP5899781B2 (ja) | 設計支援装置、設計支援方法および設計支援プログラム | |
März et al. | Rerouting and guided-repair strategies to resolve lithography hotspots | |
JP2003345851A (ja) | 論理検証方法及びプログラム | |
JP5625241B2 (ja) | 半導体装置及びその試験方法 | |
JPWO2010101029A1 (ja) | 半導体集積回路設計装置、半導体集積回路設計方法、及び半導体集積回路設計プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140312 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140616 |
|
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: 20141118 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141201 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5668457 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |