JP3677422B2 - Integrated circuit and design method thereof - Google Patents

Integrated circuit and design method thereof Download PDF

Info

Publication number
JP3677422B2
JP3677422B2 JP37044399A JP37044399A JP3677422B2 JP 3677422 B2 JP3677422 B2 JP 3677422B2 JP 37044399 A JP37044399 A JP 37044399A JP 37044399 A JP37044399 A JP 37044399A JP 3677422 B2 JP3677422 B2 JP 3677422B2
Authority
JP
Japan
Prior art keywords
input
output
operand
scan mode
integrated circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP37044399A
Other languages
Japanese (ja)
Other versions
JP2001183424A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP37044399A priority Critical patent/JP3677422B2/en
Publication of JP2001183424A publication Critical patent/JP2001183424A/en
Application granted granted Critical
Publication of JP3677422B2 publication Critical patent/JP3677422B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は集積回路及びその設計方法であって、特にスキャン手法を用いて集積回路を設計する方法及びその方法を用いて設計された集積回路に関する。
【0002】
【従来の技術】
近年、スタンダードセル(以下、SCという)を用いて論理合成/自動配置配線を行い所望の回路を実現することが行われている。これは、一定の機能を有するSCを予めライブラリに登録しておき、仕様が決定されそのロジック構成が機能記述言語で記述された所望の回路を複数のSCを組み合わせて論理合成を行ってネットリストを作成し、このリストを用いて自動配置配線を行うことで、回路パターンを実現するという手法である。
【0003】
この手法は、機能記述言語で記述した機能を回路パターンまで自動生成することが可能であるため、設計の期間短縮及び設計自由度の向上に有効である。よって、SCを用いた論理合成/自動配置配線の手法は、ASIC(Application Specific IC)に限らず、高性能なカスタム設計を必要とするマイクロプロセッサにも部分的に応用されている。
【0004】
さらにこの手法は、テスト容易化のためスキャン手法を適用することにより、製品出荷時におけるテストパターンをATPG(Auto Test Pattern Generator )を用いて自動生成することが可能であり、高い故障検出率を実現することができる。
【0005】
ここでスキャン手法とは、回路をフリップフロップ(以下、F/Fという)から成る順序回路とF/Fを含まない論理回路から成る組み合わせ回路とに大別し、F/Fを直列に接続して1つのシフトレジスタとし、外部から所望の値を入力して組み合わせ回路に伝搬して動作させ、動作結果をシフトレジスタから順次取り出して検査する手法である。スキャンF/Fの間に挟まれた論理回路は、その部分だけ規模の小さい回路として切り出して検査対象とすることができる。よって、ATPGを用いて故障検出可能な入力の組み合わせを容易に解析することが可能となる。
【0006】
ところが、メモリや高速演算器等のように特定の固定された機能を有する回路においては、SCの組み合わせにより実現するのではなく、人手により回路及びレイアウト設計を行うことで、素子面積の最小化及び動作の高速化を達成させる手法が用いられている。このような回路は、MB(Macro Block)として予め設 計しておいたもの、あるいは他社からIP(Intellectual Property)として購 入したものを用いる場合が多い。
【0007】
このようなMB又はIPはそれ単体で装置として用いられるのではなく、その周囲に用途に応じた回路を配置して組み合わせた状態で用いられる。しかし、MB又はIPの周囲にどのような回路が配置されるかは設計時点において不明である。そこで、通常はMB又はIP単体で故障検出が可能なように、回路内部にスキャンF/FやBIST(Build-In Self Test)といったテスト容易化設計が行われている。
【0008】
よって、SCを用いて論理合成/自動配置配線を行った回路はスキャン手法によりテスト容易化が可能であり、またMB又はIP単体はテスト手法が確立されているのでテストの容易化が可能である。
【0009】
【発明が解決しようとする課題】
しかし、SCにより合成した回路とMB又はIPとを組み合わせた従来の装置には、次のような問題があった。
【0010】
図6に示されたように、SCを組み合わせたSCブロックSCB2と、MB又はIPから成るカスタムブロックCB2とが配置されている。SCブロックSCB2内において、F/Fがスキャン接続されており、装置外部に設けられたスキャン入力端子SITから所望のデータの入力設定及びテスト結果の出力が可能である。また、カスタムブロックCB2内のテストは、設計時に確立された手法に従って実施することができる。
【0011】
ところが、カスタムブロックCB2と組み合わせたことにより、SCブロックSCB2内にはスキャン設計によって故障検出が可能な領域AR2と、可能でない領域AR3とが存在する。この領域AR3は、カスタムブロックCB2とSCブロックSCB2との境界領域に相当し、スキャンにより入力の制御及び出力の観測をトレースすることができないため、故障検出が不可能である。
【0012】
図6に示されたように、カスタムブロックCB2内に含まれるF/Fを用いてスキャン設計を行う手法も考えられる。ところが、このような設計を行うとカスタムブロックCB2の面積が増大し、また動作周波数の低下も招くこととなりやすい。このため、カスタムブロックCB2を用いる意義が失われることとなる。
【0013】
本発明は上記事情に鑑み、スキャン手法を用いることが可能なSCブロックと、MB又はIPから成るカスタムブロックとを組み合わせた場合のブロック間の境界領域のテストを容易化することが可能な集積回路の設計方法及びこの手法を用いて設計された集積回路を提供することを目的とする。
【0015】
【課題を解決するための手段】
本発明の集積回路の設計方法は、通常動作モードにおいて、入力オペランド及び入力オペコードを入力され、前記入力オペコードにより指定される所定処理を行い、出力オペランド及び出力オペコードの少なくともいずれか一方を出力する集積回路にスキャン手法を適用する集積回路の設計方法であって、
スキャンモードが設定された場合、前記入力オペコードにより指定される前記所定処理に係わらず、予め固定された、前記所定処理より簡易な処理を前記入力オペランドに行い、
前記処理を行い得られた結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力することを特徴とする。
【0017】
また本発明の集積回路は、通常動作モードにおいて、入力オペランド及び入力オペコードを入力され、前記入力オペコードにより指定される所定処理を行い、出力オペランド及び出力オペコードの少なくともいずれか一方を出力する集積回路にスキャン手法が適用された集積回路であって、
前記集積回路は前記所定処理を行う手段に加えて、
スキャンモードを設定するスキャンモード設定手段と、
前記スキャンモード設定手段により前記スキャンモードが設定された場合、前記入力オペコードにより指定される前記所定処理に係わらず、予め固定された、前記所定処理より簡易な処理を前記入力オペランドに行う処理手段と、
前記処理手段が前記処理を行い得られた結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力する手段とをさらに備えることを特徴とする。
【0018】
ここで、前記集積回路は演算器であってもよく、この場合は前記スキャンモード設定手段は、スキャンモード設定信号を入力されるスキャンモード設定信号入力端子であり、前記処理手段は、前記スキャンモード設定信号が入力されると、固定された前記処理を前記入力オペランドに行うものであり、前記出力手段は、前記処理手段が処理した結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力するものであってもよい。
【0019】
あるいは、前記集積回路は書込及び読出可能なメモリであってもよく、この場合は通常動作において前記入力オペランドは書込データであり、前記入力オペコードはアドレスと、書込又は読出を指定する制御信号とを含み、前記出力オペランドは読出データであり、前記スキャンモード設定手段は、スキャンモード設定信号を入力されるスキャンモード設定信号入力端子であり、前記処理手段は、前記スキャンモード設定信号が入力されると、前記制御信号に基づいて、前記入力オペランド又は前記入力オペランドのいずれかを選択してバイパスするものであり、前記出力手段は、前記処理手段がバイパスしたものを前記出力オペランドとして出力するものであってもよい。
【0020】
【発明の実施の形態】
以下、本発明の一実施の形態について図面を参照して説明する。
【0021】
本実施の形態は、スキャン設計が行われたSCブロックと、IP又はMBから成るカスタムブロックとを組み合わせた集積回路におけるテスト容易化を図る設計方法及びこの方法により設計された集積回路に適用されるものであり、集積回路の構成を図1に示す。
【0022】
設計方法としては、カスタムブロックCB1内に、通常動作モードからスキャンモードに切り替えを行うスキャンモード設定信号入力端子を新規に設ける。そして、スキャンモード設定信号がこの端子に入力された場合、カスタムブロックCB1に入力された信号を、通常動作よりも簡易な論理動作を行って出力させるバイパス経路を、カスタムブロックCB1に付加する。
【0023】
これにより、カスタムブロックCB1がスキャンモードでは単純な論理構成を有する機能ブロックに置き換わる。このため、SCブロックSCB1に対してATPGを用いてテストパターンの自動生成を行う時に、カスタムブロックCB1とSCブロックSCB1とを併せて行うことが可能となる。この結果、従来はスキャンにより故障検出が不可能であったブロック間の境界領域(図6における領域AR3)の故障検出が可能となり、回路全体の故障検出率を向上させることができる。
【0024】
ここで、スキャンモードで動作する構成の一例としては、例えば図1に示されたように、SCブロックSCB1からカスタムブロックCB1への二つの入力経路L11及びL12が排他的論理和(以下、EXORという )ゲートEXに接続されており、その出力が出力経路L13よりSCブロックSCB1に入力される。スキャンモードでは、カスタムブロックCB1に入力された信号に対してこのような簡易な論理演算を行ってその出力をSCブロックSCB1に戻す。これにより、カスタムブロックCB1に残っている過去の履歴に影響されることなく、入力データに直接対応した出力を取り出して観測することが可能となる。よって、ATPGによりテストパターンを自動生成しテストを容易することができる。
【0025】
次に、カスタムブロックCB1に付加されるスキャンモードの概念を一般化したものについて、図2を用いて説明する。
【0026】
通常動作において、演算の対象となるn(nは1以上の整数)個の入力データを入力オペランドIND1〜INDn、演算の種類を指定するp(pは1以上の整数)個の入力データを入力オペコードINC1〜INCpとする。入力オペランドIND1〜INDnに対し、入力オペコードINC1〜INCpにより指定された演算が行われる。これにより、演算結果としてm(mは1以上の整数)個のデータが出力オペランドOUTD1〜OUTDm(mは1以上の整数)として出力され、さらに演算フラグ等を示すq(qは1以上の整数)個の出力オペコードが出力される。
【0027】
上記通常動作に対し、スキャンモード設定信号SMSが入力されると、入力オペコードINC1〜INCnで指定される演算の種類が無視され、スキャンモード専用の予め固定された演算に切り替わる。この演算内容は任意に設定することができるが、上記EX−OR演算のように通常動作と同等あるいはより簡易な論理動作であり、且つ高い故障検出率が可能な演算であることが望ましい。
【0028】
カスタムブロックCB1の具体的な例として、演算器に対する設計方法及びその構成について図3を用いて説明する。演算器ALUに、二つの入力オペランドINDA及びINDBが入力される。演算オペコードOOCが入力されて演算の種類が指定され、演算を行った結果が出力オペランドOUTDとして出力され、キャリー発生等の演算結果を示すフラグが演算フラグOFとして出力される。
【0029】
このような一般的に用いられている演算器ALUに、スキャンモードに設定するスキャンモード設定信号SMSを入力する端子と、この信号SMSが入力されたときに演算オペコードOOCを無視して固定された演算を行う手段と、この固定演算を行った結果を出力オペランドOUTDとして出力する手段と、この演算結果を示す演算フラグOFを出力する手段とを付加する。
【0030】
通常動作では、演算オペコードOOCにより指定される演算には例えば算術演算の加算、減算、乗算、除算や、論理演算のAND,OR,EXOR等の複数種類の演算が含まれる。これに対し、スキャンモードに設定されたときは、例えば論理演算のEXOR等の一種類の演算に固定される。一般には演算器ALUにEXORの演算手段が含まれているので、新たに付加することなく流用することができる。
【0031】
また、演算フラグOFの生成に関しても、スキャンモードでは演算オペコードOOCに対して圧縮回路CCを用いて出力データのビット数を減らして演算フラグOFを出力する。例えば、演算オペコードOOCが3ビットで構成されている場合、4ビットの入力を圧縮回路CCに入力してEXOR等の演算を行い、1ビットの演算フラグOFを出力する。
【0032】
スキャンモードにおける固定演算として上述したようにEXORを用いる場合は、二つの入力オペランドINDA及びINDBの入力から演算に至る経路の故障検出が可能である。
【0033】
これに対し、入力オペランドINDBの値にかかわらず「1」に固定し、入力オペランドINDAと「1」とを乗算する演算を用いることも考えられる。この場合は演算内容はより簡易なものとなるが、入力オペランドINDBの入力経路における故障検出を行うことはできない。
【0034】
カスタムブロックCB1の他の具体的な例として、書込及び読出が可能なメモリに対する設計方法及びその構成について、図4を用いて説明する。メモリMCAに、入力オペコードとしてアドレスAD、読出又は書込を指定するリードライト信号R/W、動作を活性化させるイネーブル信号ENCが入力され、書込データとして入力オペランドINDが入力される。そして、書込が指定されたときは、アドレスADにより指定されたアドレスに書込データが書き込まれ、読出が指定されたときは、アドレスADにより選択されたアドレスに書き込まれているデータが出力オペランドOUTDとして読み出される。
【0035】
上記構成を有する通常のメモリに対し、スキャンモードに設定するスキャンモード設定信号SMSを入力する端子と、この信号SMSが入力されるとアドレスADを無視してアドレスを「0」番地に固定する手段と、入力オペランドINDとして入力された書き込みデータをバイパスして出力オペランドOUTDとして出力する手段とを付加する。
【0036】
これにより、スキャンモード設定信号SMSが入力されると、アドレスADの如何にかかわらず、またこれまでに書き込まれているデータの履歴とは無関係に、入力オペランドINDが出力オペランドOUTDとして出力される。よって過去のデータに影響されることなく入出力関係が単純化され、故障検出が可能となる。
【0037】
また、入力オペランドINDのみならず、入力されたアドレスADを出力オペランドOUTDとして出力することにより、アドレスADの入力経路の故障検出も可能である。この場合は、入力オペランドINDとアドレスADとのいずれか一方を切り換えて出力する制御手段が必要となるが、例えばリードライト信号R/Wを制御用に用いてもよい。
【0038】
このように、本実施の形態に従ってメモリにスキャンモードの構成を付加することにより、入力と出力との論理関係を単純化しATPGによるテストパターンの自動生成が可能となる。
【0039】
上記演算器ALUやメモリMCAでは、出力オペランドが存在する。しかし、カスタムブロックCBには必ずしも出力オペランドが存在せず、演算フラグのみが存在する場合もあり、このようなものに対しても本実施の形態に従いスキャンモードを付加することも可能である。
【0040】
この場合の一例として一致検出器を図5に示す。少なくとも二つの入力オペランドINDAとINDBとが一致検出器DTに入力され、例えばEXOR演算等により一致又は不一致が判断される。演算結果は、演算フラグOFとして出力される。
【0041】
このような一致検出器DTに、本実施の形態に従って同等又はスキャンモード設定信号SMSを入力する手段と、この信号が入力された場合により単純化された演算を行う手段と、その演算結果を出力する手段とを付加する。これにより、スキャンモード設定信号が入力されると、入力オペランドINDAとINDBとの間で所定の演算が行われ、演算フラグOFとして出力される。演算内容としては、通常動作と同様にEXOR演算を行ってもよい。あるいは、一方の入力オペランドINDAのみを使用し、他の入力オペランドINDBはその値にかかわらず例えば「1」の値に固定して演算を行ってもよい。
【0042】
上述したように、本実施の形態に従ってスキャンモードを付加する設計を行ったカスタムブロックCB1をSCブロックSCB1と組み合わせることで、カスタムブロックCB1の入出力の論理関係が単純化されるので、両ブロック間の境界領域においてもスキャン手法を用いて故障検出が可能となる。これにより、詳細な回路仕様を設計者が認識することなく、ATPGを用いて自動的にテストパターンを発生させることができる。
【0043】
また、本実施の形態による設計方法に従ってスキャンモードを付加させる場合、カスタムブロックに通常備わっている制御系を利用して固定された単純な論理演算により出力を行うという最小限の機能を付加することにより実現が可能である。よって、スキャンモードの付加がもたらず回路規模への増大や動作速度の低下といった影響を最小限に抑えることができる。
【0044】
上述した実施の形態は一例であり、本発明を限定するものではない。例えば、カスタムブロックとして図3、図4に示された演算器ALUやメモリMCAの構成は一例であり、これに限定されず様々な変形が可能である。
【0045】
【発明の効果】
以上説明したように、本発明の集積回路の設計方法及びこの方法により設計された集積回路によれば、スキャンモードにおける入出力の論理が通常動作より簡易化されることにより、ATPG等を用いてテストパターンを自動的に発生しテストを容易化することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態による集積回路の構成を示したブロック図。
【図2】同集積回路に含まれるカスタムブロックの構成を示したブロック図。
【図3】同カスタムブロックの一例として演算器の構成を示したブロック図。
【図4】同カスタムブロックの一例としてメモリの構成を示したブロック図。
【図5】同カスタムブロックの一例として一致検出器の構成を示したブロック図。
【図6】従来の集積回路の構成を示したブロック図。
【符号の説明】
SCB1 スタンダードセルブロック
CB1 カスタムブロック
F/F スキャンフリップフロップ
SIT 外部入出力端子
AR1 領域(スキャン設計により故障検出可能な領域)
IND1〜INDn、INDA、INDB、IND 入力オペランド
OUTD1〜OUTDm、OUTD 出力オペランド
INC1〜INCp 入力オペコード
OUTC1〜OUTq 出力オペコード
SMS スキャンモード設定信号
OOC 演算オぺコード
OF 演算フラグ
CC 圧縮回路
AD アドレス
R/W リードライト信号
ENC イネーブル信号
DT 一致検出器
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an integrated circuit and a design method thereof, and more particularly to a method of designing an integrated circuit using a scanning technique and an integrated circuit designed using the method.
[0002]
[Prior art]
In recent years, a desired circuit is realized by performing logic synthesis / automatic placement and routing using a standard cell (hereinafter referred to as SC). This is because an SC having a certain function is registered in advance in a library, a desired circuit whose specification is determined and its logic configuration is described in a function description language is synthesized by combining a plurality of SCs, and a netlist. And a circuit pattern is realized by performing automatic placement and routing using this list.
[0003]
Since this method can automatically generate a function described in a function description language up to a circuit pattern, it is effective in shortening the design period and improving the degree of design freedom. Therefore, the logic synthesis / automatic placement and routing technique using SC is not limited to ASIC (Application Specific IC), but is also partially applied to microprocessors that require high-performance custom design.
[0004]
In addition, this method can automatically generate test patterns at the time of product shipment using ATPG (Auto Test Pattern Generator) by applying a scan method for ease of testing, realizing a high failure detection rate. can do.
[0005]
Here, the scanning method is roughly divided into a sequential circuit composed of flip-flops (hereinafter referred to as F / F) and a combinational circuit composed of logic circuits not including F / F, and the F / Fs are connected in series. In this method, a desired value is input from the outside, propagated to a combinational circuit and operated, and operation results are sequentially extracted from the shift register and inspected. The logic circuit sandwiched between the scan F / Fs can be cut out as a circuit having a small scale as a circuit to be inspected. Therefore, it is possible to easily analyze combinations of inputs that can be detected using the ATPG.
[0006]
However, in a circuit having a specific fixed function, such as a memory or a high-speed arithmetic unit, it is not realized by a combination of SCs. A technique for achieving high-speed operation is used. Such circuits are often designed in advance as MB (Macro Block) or purchased from other companies as IP (Intellectual Property).
[0007]
Such MB or IP is not used alone as a device, but is used in a state in which a circuit according to the application is arranged and combined around it. However, what kind of circuit is arranged around the MB or IP is unknown at the time of design. In view of this, design for facilitating tests such as scan F / F and BIST (Build-In Self Test) is usually performed in the circuit so that failure detection is possible with MB or IP alone.
[0008]
Therefore, a circuit for which logic synthesis / automatic placement and routing is performed using SC can be easily tested by a scanning method, and testing can be facilitated for MB or IP alone because a testing method has been established. .
[0009]
[Problems to be solved by the invention]
However, the conventional apparatus combining the circuit synthesized by SC and MB or IP has the following problems.
[0010]
As shown in FIG. 6, an SC block SCB2 combining SCs and a custom block CB2 made of MB or IP are arranged. In the SC block SCB2, the F / F is scan-connected, and desired data input setting and test result output can be performed from a scan input terminal SIT provided outside the apparatus. The test in the custom block CB2 can be performed according to a technique established at the time of design.
[0011]
However, by combining with the custom block CB2, the SC block SCB2 includes an area AR2 where failure detection is possible by scan design and an area AR3 where this is not possible. This area AR3 corresponds to a boundary area between the custom block CB2 and the SC block SCB2, and it is impossible to detect a failure because it is impossible to trace input control and output observation by scanning.
[0012]
As shown in FIG. 6, a method of performing scan design using the F / F included in the custom block CB2 is also conceivable. However, when such a design is performed, the area of the custom block CB2 increases and the operating frequency tends to decrease. For this reason, the significance of using the custom block CB2 is lost.
[0013]
In view of the above circumstances, the present invention is an integrated circuit capable of facilitating a test of a boundary region between blocks when an SC block capable of using a scanning method and a custom block made of MB or IP are combined. It is an object of the present invention to provide an integrated circuit designed by using this design method and this method.
[0015]
[Means for Solving the Problems]
The integrated circuit design method of the present invention is an integrated circuit that receives an input operand and an input opcode in a normal operation mode, performs a predetermined process specified by the input opcode, and outputs at least one of the output operand and the output opcode. An integrated circuit design method that applies a scanning technique to a circuit,
When the scan mode is set, regardless of the predetermined process specified by the input opcode, a process that is fixed in advance and simpler than the predetermined process is performed on the input operand.
A result obtained by performing the processing is output as at least one of the output operand and the output opcode.
[0017]
The integrated circuit of the present invention is an integrated circuit that receives an input operand and an input opcode in a normal operation mode, performs a predetermined process specified by the input opcode, and outputs at least one of the output operand and the output opcode. An integrated circuit to which a scanning technique is applied,
In addition to the means for performing the predetermined processing, the integrated circuit includes:
Scan mode setting means for setting the scan mode;
Processing means for performing processing that is fixed in advance and simpler than the predetermined processing on the input operand regardless of the predetermined processing specified by the input opcode when the scan mode is set by the scan mode setting means; ,
And a means for outputting the result obtained by the processing by the processing means as at least one of the output operand and the output opcode.
[0018]
Here, the integrated circuit may be an arithmetic unit. In this case, the scan mode setting means is a scan mode setting signal input terminal to which a scan mode setting signal is input, and the processing means is the scan mode. When a setting signal is input, the fixed processing is performed on the input operand, and the output means outputs the result processed by the processing means as at least one of the output operand and the output opcode. You may do.
[0019]
Alternatively, the integrated circuit may be a writable and readable memory. In this case, in normal operation, the input operand is write data, and the input opcode is an address and a control for designating writing or reading. The output operand is read data, the scan mode setting means is a scan mode setting signal input terminal to which a scan mode setting signal is input, and the processing means is input with the scan mode setting signal. Then, based on the control signal, either the input operand or the input operand is selected and bypassed, and the output means outputs the output operand that has been bypassed by the processing means. It may be a thing.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0021]
The present embodiment is applied to a design method for facilitating a test in an integrated circuit combining an SC block for which scan design has been performed and a custom block made of IP or MB, and an integrated circuit designed by this method. FIG. 1 shows the configuration of an integrated circuit.
[0022]
As a design method, a scan mode setting signal input terminal for switching from the normal operation mode to the scan mode is newly provided in the custom block CB1. When a scan mode setting signal is input to this terminal, a bypass path is added to the custom block CB1 for outputting the signal input to the custom block CB1 by performing a logical operation simpler than the normal operation.
[0023]
Thus, the custom block CB1 is replaced with a functional block having a simple logical configuration in the scan mode. Therefore, when the test pattern is automatically generated for the SC block SCB1 using ATPG, the custom block CB1 and the SC block SCB1 can be performed together. As a result, it is possible to detect a failure in the boundary area between the blocks (area AR3 in FIG. 6), which conventionally cannot be detected by scanning, and to improve the failure detection rate of the entire circuit.
[0024]
Here, as an example of the configuration that operates in the scan mode, for example, as shown in FIG. 1, two input paths L11 and L12 from the SC block SCB1 to the custom block CB1 are exclusive OR (hereinafter referred to as EXOR). ) It is connected to the gate EX, and its output is input to the SC block SCB1 from the output path L13. In the scan mode, such a simple logical operation is performed on the signal input to the custom block CB1, and the output is returned to the SC block SCB1. Thereby, it is possible to take out and observe the output directly corresponding to the input data without being affected by the past history remaining in the custom block CB1. Therefore, the test pattern can be automatically generated by ATPG to facilitate the test.
[0025]
Next, a generalized concept of the scan mode added to the custom block CB1 will be described with reference to FIG.
[0026]
In normal operation, input operands IND1 to INDn are input n (n is an integer equal to or greater than 1) input data, and p (p is an integer equal to or greater than 1) input data specifying the type of operation is input. The operation codes INC1 to INCp are used. The operations specified by the input opcodes INC1 to INCp are performed on the input operands IND1 to INDn. As a result, m (m is an integer greater than or equal to 1) data is output as output operands OUTD1 to OUTDm (m is an integer greater than or equal to 1), and q (q is an integer greater than or equal to 1) indicating an operation flag or the like ) Output opcodes are output.
[0027]
In contrast to the normal operation, when the scan mode setting signal SMS is input, the type of calculation designated by the input opcodes INC1 to INCn is ignored, and the operation is switched to a fixed calculation dedicated to the scan mode. Although the content of this calculation can be set arbitrarily, it is desirable that the operation is a logical operation that is equivalent to or simpler than the normal operation, such as the EX-OR operation, and that allows a high failure detection rate.
[0028]
As a specific example of the custom block CB1, a design method for an arithmetic unit and its configuration will be described with reference to FIG. Two input operands INDA and INDB are input to the arithmetic unit ALU. The operation opcode OOC is input to specify the type of operation, the result of the operation is output as the output operand OUTD, and a flag indicating the operation result such as the occurrence of carry is output as the operation flag OF.
[0029]
A terminal for inputting a scan mode setting signal SMS for setting the scan mode to such a commonly used arithmetic unit ALU and the operation opcode OOC when the signal SMS is input are fixed and ignored. Means for performing an operation, means for outputting the result of the fixed operation as an output operand OUTD, and means for outputting an operation flag OF indicating the result of the operation are added.
[0030]
In normal operation, the operation specified by the operation opcode OOC includes, for example, a plurality of types of operations such as addition, subtraction, multiplication, and division of arithmetic operations and AND, OR, and EXOR of logical operations. On the other hand, when the scan mode is set, it is fixed to one type of operation such as logical operation EXOR. In general, since the arithmetic unit ALU includes an EXOR arithmetic means, it can be used without being newly added.
[0031]
Further, regarding the generation of the operation flag OF, in the scan mode, the operation flag OOF is output by reducing the number of bits of the output data using the compression circuit CC for the operation opcode OOC. For example, when the operation opcode OOC is composed of 3 bits, a 4-bit input is input to the compression circuit CC, an operation such as EXOR is performed, and a 1-bit operation flag OF is output.
[0032]
As described above, when EXOR is used as the fixed operation in the scan mode, it is possible to detect a failure in the path from the input of the two input operands INDA and INDB to the operation.
[0033]
On the other hand, it is conceivable to use an operation in which the input operand INDA is fixed to “1” regardless of the value of the input operand INDB and the input operand INDA is multiplied by “1”. In this case, the calculation content is simpler, but failure detection in the input path of the input operand INDB cannot be performed.
[0034]
As another specific example of the custom block CB1, a design method and a configuration of a writable and readable memory will be described with reference to FIG. The memory MCA receives an address AD as an input opcode, a read / write signal R / W designating reading or writing, an enable signal ENC for activating the operation, and an input operand IND as write data. When writing is specified, the write data is written to the address specified by the address AD, and when reading is specified, the data written to the address selected by the address AD is the output operand. Read as OUTD.
[0035]
A terminal for inputting a scan mode setting signal SMS for setting the scan mode to a normal memory having the above-described configuration, and means for ignoring the address AD and fixing the address to the address “0” when this signal SMS is input And means for bypassing the write data input as the input operand IND and outputting it as the output operand OUTD.
[0036]
Thus, when the scan mode setting signal SMS is input, the input operand IND is output as the output operand OUTD regardless of the address AD and regardless of the history of data written so far. Therefore, the input / output relationship is simplified without being affected by past data, and failure detection becomes possible.
[0037]
Further, not only the input operand IND but also the input address AD is output as the output operand OUTD, so that it is possible to detect a failure in the input path of the address AD. In this case, control means for switching and outputting either the input operand IND or the address AD is required. For example, the read / write signal R / W may be used for control.
[0038]
As described above, by adding the scan mode configuration to the memory according to the present embodiment, the logical relationship between the input and the output can be simplified and the test pattern can be automatically generated by the ATPG.
[0039]
The arithmetic unit ALU and the memory MCA have output operands. However, the custom block CB does not necessarily have an output operand but may only have an operation flag. A scan mode can be added to such a block according to the present embodiment.
[0040]
As an example of this case, a coincidence detector is shown in FIG. At least two input operands INDA and INDB are input to the coincidence detector DT, and coincidence or disagreement is determined by, for example, EXOR operation or the like. The calculation result is output as a calculation flag OF.
[0041]
According to the present embodiment, the coincidence detector DT is supplied with means for inputting the equivalent or scan mode setting signal SMS, means for performing simplified calculation when this signal is input, and outputting the calculation result. And a means to do. Thus, when a scan mode setting signal is input, a predetermined calculation is performed between the input operands INDA and INDB, and the calculation flag OF is output. As the calculation contents, an EXOR calculation may be performed as in the normal operation. Alternatively, the operation may be performed by using only one input operand INDA and fixing the other input operand INDB to a value of “1”, for example, regardless of its value.
[0042]
As described above, by combining the custom block CB1 designed to add the scan mode according to the present embodiment with the SC block SCB1, the logical relationship between the inputs and outputs of the custom block CB1 is simplified. Even in the boundary region, failure detection can be performed using the scanning method. Thereby, a test pattern can be automatically generated using ATPG without the designer recognizing detailed circuit specifications.
[0043]
In addition, when a scan mode is added according to the design method according to the present embodiment, a minimum function of performing output by a simple logical operation fixed using a control system normally provided in a custom block is added. Can be realized. Therefore, the addition of the scan mode is not brought about, and the influence such as an increase in circuit scale and a decrease in operation speed can be minimized.
[0044]
The above-described embodiment is an example and does not limit the present invention. For example, the configurations of the arithmetic unit ALU and the memory MCA shown in FIG. 3 and FIG. 4 as a custom block are merely examples, and the present invention is not limited to this, and various modifications are possible.
[0045]
【The invention's effect】
As described above, according to the integrated circuit design method of the present invention and the integrated circuit designed by this method, the input / output logic in the scan mode is simplified from the normal operation, so that the ATPG or the like is used. Test patterns can be automatically generated to facilitate testing.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an integrated circuit according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a custom block included in the integrated circuit.
FIG. 3 is a block diagram showing the configuration of a computing unit as an example of the custom block.
FIG. 4 is a block diagram showing a configuration of a memory as an example of the custom block.
FIG. 5 is a block diagram showing a configuration of a coincidence detector as an example of the custom block.
FIG. 6 is a block diagram showing a configuration of a conventional integrated circuit.
[Explanation of symbols]
SCB1 Standard cell block CB1 Custom block F / F Scan flip-flop SIT External input / output terminal AR1 area (area where failure can be detected by scan design)
IND1 to INDn, INDA, INDB, IND Input operand OUTD1 to OUTDm, OUTD Output operand INC1 to INCp Input opcode OUTC1 to OUTq Output opcode SMS Scan mode setting signal OOC Operation opcode OF Operation flag CC Compression circuit AD Address R / W Read Write signal ENC Enable signal DT Match detector

Claims (4)

通常動作モードにおいて、入力オペランド及び入力オペコードを入力され、前記入力オペコードにより指定される所定処理を行い、出力オペランド及び出力オペコードの少なくともいずれか一方を出力する集積回路にスキャン手法を適用する集積回路の設計方法であって、
スキャンモードが設定された場合、前記入力オペコードにより指定される前記所定処理に係わらず、予め固定された、前記所定処理より簡易な処理を前記入力オペランドに行い、
前記処理を行い得られた結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力することを特徴とする集積回路の設計方法。
An integrated circuit that applies a scan technique to an integrated circuit that receives an input operand and an input opcode in a normal operation mode, performs a predetermined process specified by the input opcode, and outputs at least one of the output operand and the output opcode. A design method,
When the scan mode is set, regardless of the predetermined process specified by the input opcode, a process that is fixed in advance and simpler than the predetermined process is performed on the input operand.
A method for designing an integrated circuit, wherein the result obtained by performing the processing is output as at least one of the output operand and the output opcode.
通常動作モードにおいて、入力オペランド及び入力オペコードを入力され、前記入力オペコードにより指定される所定処理を行い、出力オペランド及び出力オペコードの少なくともいずれか一方を出力する集積回路にスキャン手法が適用された集積回路であって、
前記集積回路は前記所定処理を行う手段に加えて、
スキャンモードを設定するスキャンモード設定手段と、
前記スキャンモード設定手段により前記スキャンモードが設定された場合、前記入力オペコードにより指定される前記所定処理に係わらず、予め固定された、前記所定処理より簡易な処理を前記入力オペランドに行う処理手段と、
前記処理手段が前記処理を行い得られた結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力する手段とをさらに備えることを特徴とする集積回路。
An integrated circuit in which a scanning technique is applied to an integrated circuit that receives an input operand and an input opcode in a normal operation mode, performs a predetermined process specified by the input opcode, and outputs at least one of the output operand and the output opcode Because
In addition to the means for performing the predetermined processing, the integrated circuit includes:
Scan mode setting means for setting the scan mode;
Processing means for performing processing that is fixed in advance and simpler than the predetermined processing on the input operand regardless of the predetermined processing specified by the input opcode when the scan mode is set by the scan mode setting means; ,
An integrated circuit, further comprising: means for outputting a result obtained by the processing by the processing means as at least one of the output operand and the output opcode.
前記集積回路は演算器であり、
前記スキャンモード設定手段は、スキャンモード設定信号を入力されるスキャンモード設定信号入力端子であり、
前記処理手段は、前記スキャンモード設定信号が入力されると、固定された前記処理を前記入力オペランドに行うものであり、
前記出力手段は、前記処理手段が処理した結果を、前記出力オペランド及び出力オペコードの少なくともいずれか一方として出力するものであることを特徴とする請求項2記載の集積回路。
The integrated circuit is an arithmetic unit;
The scan mode setting means is a scan mode setting signal input terminal to which a scan mode setting signal is input,
The processing means performs the fixed processing on the input operand when the scan mode setting signal is input;
3. The integrated circuit according to claim 2, wherein the output means outputs the result processed by the processing means as at least one of the output operand and the output opcode.
前記集積回路は書込及び読出可能なメモリであり、
通常動作において、前記入力オペランドは書込データであり、前記入力オペコードはアドレスと、書込又は読出を指定する制御信号とを含み、前記出力オペランドは読出データであり、
前記スキャンモード設定手段は、スキャンモード設定信号を入力されるスキャンモード設定信号入力端子であり、
前記処理手段は、前記スキャンモード設定信号が入力されると、前記制御信号に基づいて、前記入力オペランド又は前記入力オペランドのいずれかを選択してバイパスするものであり、
前記出力手段は、前記処理手段がバイパスしたものを前記出力オペランドとして出力するものであることを特徴とする請求項2記載の集積回路。
The integrated circuit is a writable and readable memory;
In normal operation, the input operand is write data, the input opcode includes an address and a control signal designating write or read, and the output operand is read data,
The scan mode setting means is a scan mode setting signal input terminal to which a scan mode setting signal is input,
When the scan mode setting signal is input, the processing means selects and bypasses either the input operand or the input operand based on the control signal,
3. The integrated circuit according to claim 2, wherein the output means outputs the output operand as bypassed by the processing means.
JP37044399A 1999-12-27 1999-12-27 Integrated circuit and design method thereof Expired - Fee Related JP3677422B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP37044399A JP3677422B2 (en) 1999-12-27 1999-12-27 Integrated circuit and design method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP37044399A JP3677422B2 (en) 1999-12-27 1999-12-27 Integrated circuit and design method thereof

Publications (2)

Publication Number Publication Date
JP2001183424A JP2001183424A (en) 2001-07-06
JP3677422B2 true JP3677422B2 (en) 2005-08-03

Family

ID=18496926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP37044399A Expired - Fee Related JP3677422B2 (en) 1999-12-27 1999-12-27 Integrated circuit and design method thereof

Country Status (1)

Country Link
JP (1) JP3677422B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003344500A (en) 2002-05-29 2003-12-03 Nec Electronics Corp Macro test circuit
JP3632691B2 (en) 2003-01-30 2005-03-23 セイコーエプソン株式会社 Test circuit, integrated circuit, and test method
JP4530703B2 (en) * 2004-03-31 2010-08-25 川崎マイクロエレクトロニクス株式会社 Semiconductor integrated circuit

Also Published As

Publication number Publication date
JP2001183424A (en) 2001-07-06

Similar Documents

Publication Publication Date Title
Cheng et al. Delay testing for non-robust untestable circuits
US7076748B2 (en) Identification and implementation of clock gating in the design of integrated circuits
US7441164B2 (en) Memory bypass with support for path delay test
JP3677422B2 (en) Integrated circuit and design method thereof
Abdelfattah et al. Transparent structural online test for reconfigurable systems
Schölzel et al. Systematic generation of diagnostic software-based self-test routines for processor components
Singh et al. Instruction-based delay fault self-testing of processor cores
Ghosh et al. A BIST scheme for RTL controller-data paths based on symbolic testability analysis
Kambe et al. Efficient template generation for instruction-based self-test of processor cores
US20030097347A1 (en) Designing of logic circuit for testability
CN113609804B (en) Case generation method and device, test method and testability design method
Takeuchi et al. A Controller Augmentation Method to Improve Transition Fault Coverage for RTL Data-Paths
Fujita et al. Post-silicon patching for verification/debugging with high-level models and programmable logic
Nyberg et al. Closing the gap between speed and configurability of multi-bit fault emulation environments for security and safety–critical designs
Jasnetski et al. New fault models and self-test generation for microprocessors using high-level decision diagrams
Suryasarman et al. Rsbst: an accelerated automated software-based self-test synthesis for processor testing
Murali et al. Implementation of reconfigurable circuit with watch-points in the hardware
Lee et al. Design for Test
JPH0731225B2 (en) Semiconductor integrated circuit device
JP2008209210A (en) Test pattern automatic generation method and program
Yang et al. Extraction error diagnosis and correction in high-performance designs
Voyiatzis et al. An effective two-pattern test generator for Arithmetic BIST
Safinia et al. Taking advantage of high level functional information to refine timing analysis and timing information
Swetha Priya et al. Estimation of SoC Testability at Early RTL Stage
Margala et al. Design verification and DFT for an embedded reconfigurable low-power multiplier in system-on-chip applications

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050509

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees