JP2006058242A - 集積回路 - Google Patents
集積回路 Download PDFInfo
- Publication number
- JP2006058242A JP2006058242A JP2004242779A JP2004242779A JP2006058242A JP 2006058242 A JP2006058242 A JP 2006058242A JP 2004242779 A JP2004242779 A JP 2004242779A JP 2004242779 A JP2004242779 A JP 2004242779A JP 2006058242 A JP2006058242 A JP 2006058242A
- Authority
- JP
- Japan
- Prior art keywords
- scan
- bist
- circuit
- signal
- input
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318594—Timing aspects
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
【課題】
実動作のクロック周波数でのメモリブロックのテストを短時間で効率よく実行することができる集積回路を提供する。
【解決手段】
集積回路1は、RAMマクロ2を含むメモリブロック10と、複数のスキャンフリップフロップ(FF)を有する第1及び第2のスキャン回路7、8と、シリアルアクセスメモリBIST回路3とを有する。スキャン回路7は、メモリブロック10へデータを出力可能な入力側スキャンFF群9Aを有し、スキャン回路8は、メモリブロック10からデータを受け取り可能な出力側スキャンFF群9Bを有する。第1のテストモードでは通常のスキャンテストが行われ、第2のテストモードでは、シリアルアクセスメモリBIST回路3からBIST信号がシリアルに出力される。セレクタ4はこのBIST信号を選択し、入力側スキャンFF群9Aに出力し、メモリブロック10のテストを実行する。
【選択図】 図1
実動作のクロック周波数でのメモリブロックのテストを短時間で効率よく実行することができる集積回路を提供する。
【解決手段】
集積回路1は、RAMマクロ2を含むメモリブロック10と、複数のスキャンフリップフロップ(FF)を有する第1及び第2のスキャン回路7、8と、シリアルアクセスメモリBIST回路3とを有する。スキャン回路7は、メモリブロック10へデータを出力可能な入力側スキャンFF群9Aを有し、スキャン回路8は、メモリブロック10からデータを受け取り可能な出力側スキャンFF群9Bを有する。第1のテストモードでは通常のスキャンテストが行われ、第2のテストモードでは、シリアルアクセスメモリBIST回路3からBIST信号がシリアルに出力される。セレクタ4はこのBIST信号を選択し、入力側スキャンFF群9Aに出力し、メモリブロック10のテストを実行する。
【選択図】 図1
Description
本発明は、メモリマクロを搭載した集積回路に関し、特にスキャンテスト及びメモリマクロに対するBIST(Built−In Self Test)を実行可能な集積回路に関する。
大規模なディジタル論理回路のテスト技術として、複数のスキャンフリップフロップを直列に接続したスキャンチェーンを設け、当該スキャンチェーンにテストデータをシフトさせることにより論理回路モジュールのテストを行うスキャンパス方式のテスト技術が知られている。
例えば特許文献1にはスキャンチェーンを用いて論理回路モジュールをテストする基本的なスキャンテスト技術、及び外部からスキャンチェーンの途中にスキャンパタンを入力したり、スキャンチェーンの途中から出力を外部へ出したりすることによりテストを効率化する技術について記載されている。
また、このようなスキャンテストとBISTとを組み合せた技術が特許文献2に記載されている。スキャンテストとBISTとを組み合せることで、スキャンテストにより高速な実動作クロック周波数での動作の可否を確認することができると共に、BISTを用いてRAM(Random Access Memory)マクロ(RAM本体)2の各アドレスの書き込み及び読み出し動作テストを行うことができる。
図8は、スキャンテストとBISTとを組み合せ可能な従来の集積回路の一例を示すブロック図である。図8に示すように、集積回路101は、メモリブロック110と、スキャン回路107、108と、パラレルアクセスメモリBIST回路103とを有する。
メモリブロック110は、RAMマクロ102と、RAMマクロ102の入力側に設けられた入力側組み合せ回路105と、RAMマクロ102の出力側に設けられた出力側組み合せ回路106と、パラレルアクセスBIST信号か、入力側組み合わせ回路105からのテスト信号かを選択してRAMマクロ102に出力するためのセレクタ群111とを有する。
RAMマクロ102は、データが格納されるメモリセルと、メモリセルへのデータの書き込み又は読み出しを制御する書き込み/読み出し制御部とを有し、書き込み時には書き込み先のアドレス、書き込み用データ及び書き込み制御信号が入力され、また、読み出し時には、読み出し先のアドレス及び読み出し制御信号が入力されることで、個別にデータの書き込み又は読み出しが可能なものである。
また、スキャン回路107、108は、複数のスキャンフリップフロップ109が直列に接続されたスキャンチェーンからなり、スキャンテストのためのテスト信号を前段のスキャンフリップフロップ109から後段のスキャンフリップフロップへシフト可能な回路である。パラレルアクセスメモリBIST103は、RAMマクロ102にBIST信号をパラレルに供給する。
この集積回路101は、スキャン回路107、108による、組み合せ回路105、106とは異なる図示されていない組み合せ回路をテストする第1のテストモードと、スキャン回路107、108を使用してRAMマクロ102のテストを行う第2のテストモードと、パラレルアクセスメモリBIST回路によるBISTを実行する第3のテストモードとを有する。
これらのテストを選択して実行するため、RAMマクロ102が有する複数の入力に対して設けられた複数のセレクタから構成されるセレクタ群111を備える。セレクタ群111は、第2のテストモードと第3のテストモードとで選択信号SELにより切り替え制御され、第2のテストモードでは、組み合せ回路105からのテスト信号を選択してRAMマクロ102に入力し、第3のテストモードでは、BIST回路により生成されたBIST信号をRAMマクロ102に入力する。
スキャン回路107は、スキャンテストのためのテスト信号を供給するためのスキャン入力端子(SCIN)121と、その結果を出力するためのスキャン出力端子(SCOUT)122とを有し、また、スキャンチェーンを構成する複数のスキャンフリップフロップ109を有する。これら複数のスキャンフリップフロップ109のうち、所定のスキャンフリップフロップ109は、入力側組み合わせ回路105に接続される。またスキャン回路108も同様にスキャン入力端子(SCIN)131、スキャン出力端子(SCOUT)132を有し、所定のスキャンフリップフロップ109は出力側組み合わせ回路106に接続される。
スキャン回路107、108を構成するスキャンフリップフロップ109は、スキャンテストの際は、テスト信号をシフト動作により前段のスキャンフリップフロップ109から後段のスキャンフリップフロップ109に順次シフトさせる。
パラレルアクセスメモリBIST回路103は、第3のテストモードでRAMマクロ102に対するBIST信号を生成し、セレクタ群111を介してRAMマクロ102にBIST信号をパラレルに出力する。BIST信号がRAMマクロ102からデータを読み出す読み出し命令を含む場合は、パラレルアクセスメモリBIST回路103から読み出された結果信号としてのテストデータをパラレルに受け取る。そして、このパラレルアクセスメモリBIST回路103は、読み出されたデータと期待値とを一致判定し、その一致判定結果を出力する。
次に、このように構成された集積回路101におけるテスト動作について説明する。上述したように、集積回路101は、第1〜第3のテストモードを有し、第1のテストモードでは、スキャンチェーンにテストデータをシフトさせることにより組み合せ回路105、106とは異なる図示しない組み合せ回路のテストを実行する。
第2のテストモードでは、セレクタ群111の選択信号入力SELには、例えば論理「0」が入力され、セレクタ群111の各セレクタは組合せ回路105から受け取ったデータをRAMマクロ102に出力するように設定される。
スキャンフリップフロップ109は、スキャンモードコントロール信号(以下、SMC信号と称す)の論理によってシフトモードか、キャプチャモードかを切り替え制御される。先ず、シフトモードで保持しているデータを後段のスキャンフリップフロップ109へ出力し、所望のスキャンフリップフロップ109にデータをセットする。キャプチャモードでは、組み合わせ回路105にデータを出力し、RAMマクロ102にテストデータを書き込む。
同様にして、RAMマクロ102に書き込まれたテストデータを読み出す。読み出されたテストデータは、組み合せ回路106を介して結果信号とされ、スキャン出力端子(SCOUT)132を介して集積回路外部に出力され。この結果信号と期待値とを照合し、一致する場合には、組み合わせ回路105、RAMマクロ102及び組み合わせ回路106を含むメモリブロック110のうちテストしたアドレスについては書き込み/読み出し動作が集積回路101の実動作周波数において正常に行われたと判断される。
また、第3のテストモードにおいては、セレクタ群111の選択信号入力SELには、例えば論理「1」が入力されセレクタ群111の各セレクタはパラレルアクセスメモリBIST回路103からのBIST信号をRAMマクロ102に出力するように設定される。
パラレルアクセスメモリBIST回路103を用いたRAMマクロ102の動作テストでは、パラレルアクセスメモリBIST回路103により、テストデータの書き込み時には、書き込みアドレス、書き込みデータ(テストデータ)及び書き込み制御信号からなるBIST信号を生成し、テストデータの読み出し時には、読み出しアドレス及び読み出し制御信号からなるBIST信号を生成し、これらのBIST信号をRAMマクロ102へセレクタ群111を介して入力し、RAMマクロ102のテストを実行する。
パラレルアクセスメモリBIST回路103を内蔵することにより、アドレス及びテストデータを集積回路101の内部で発生させ、期待値との比較も集積回路101の内部で行うことができる。またスキャン回路により集積回路101の実動作周波数のクロックを用いてメモリブロック110のテストを実行することができる。
特開2000−9806号公報
特開2004−206751号公報
しかしながら、特許文献2に記載された技術においては、パラレルアクセスメモリBIST回路を内蔵し、RAMマクロ102に対しの書き込み/読み出し用BIST信号を入力可能であるため、RAMマクロ単体の動作については全てのアドレスについてテスト可能となるものの、RAMマクロの前後に組み合わせ回路を含むメモリブロック110の動作を実動作のクロック周波数でテストするためには、一のアドレスのテスト毎に外部端子からスキャンチェーンを通じてスキャン回路107、スキャン回路108に所定の書き込み用コマンド又は読み出し用コマンドとなるデータを設定しなければならないため、長大なスキャンパタンが必要であった。よって、メモリブロックの多数のアドレスに対してスキャンテストをする場合にはテスト時間が長大となり実用的ではない。従って、実製品への適用においてはごく一部のアドレスについてテストするのみにとどめざるを得ず、故障検出率において妥協せざるを得ないという問題点がある。すなわち、RAMマクロ102とその前後に設けられた組み合わせ回路107、108とを含むメモリブロック110における経路のテストについては、長大なスキャンパタン及びテスト時間を要するため実用的な時間ではごく一部のアドレスについてしか実行することができない。
本発明は、このような問題点を解決するためになされたものであり、実動作のクロック周波数でのメモリブロックのテストを短時間で効率よく実行することができる集積回路を提供することを目的とする。
上述した目的を達成するために、本発明にかかる集積回路は、メモリマクロを含むメモリブロックと、スキャンパスを構成する複数のスキャンセルを有するスキャン回路と、BIST信号を生成し、当該BIST信号により前記メモリブロックをテストした結果信号を受け取り期待値と一致するか否かを判定するBIST回路とを有し、前記複数のスキャンセルは、前記メモリブロックへデータを出力可能な入力側スキャンセル群と、前記メモリブロックからデータを受け取り可能な出力側スキャンセル群とを有し、前記入力側スキャンセル群の各スキャンセルは、第1のテストモードでは前段のスキャンセルからのスキャンテスト信号を受け取り、第2のテストモードでは前記BIST信号を受け取り、前記出力側スキャンセル群の各スキャンセルは、第1のテストモードでは前段のスキャンセルからスキャンテスト信号を受け取り、第2のテストモードでは前記メモリブロックから前記結果信号を受け取ることを特徴とする。
本発明においては、入力側スキャンセル群がBIST回路からBIST信号を受け取り、メモリマクロに対してBISTを実行するため、実動作周波数でメモリマクロのテストを短時間で実行可能となる。
また前記メモリブロックは、前記入力側スキャンセル群と前記メモリマクロとの間及び/又は前記メモリマクロと前記出力側スキャンセル群との間に設けられる組み合わせ回路を更に有することができ、メモリマクロの入力側又は出力側に組み合わせ回路を有する場合であってもBIST信号を使用して実動作周波数でメモリブロックのテストを実行することができる。
更に、前記スキャン回路において前記入力側スキャンセル群より前段に挿入されるセレクタを有し、前記BIST回路は、前記第2のテストモードでは前記BIST信号をシリアルに出力し、前記セレクタは、前記第1のテストモードでは前段のスキャンセルから送られる前記スキャンテスト信号を選択して後段のスキャンセルに出力し、前記第2のテストモードでは前記BIST信号を選択して後段のスキャンセルに出力することができ、BIST信号をシリアル出力し、入力側スキャンセル群の前段にセレクタを設けてこれを選択入力させることで、入力側スキャンセル群を介してメモリブロックにBIST信号を供給することができる。
更にまた、前記入力側スキャンセル群と前記メモリマクロとの間に第1の組み合わせ回路を有し、前記セレクタは、前記第2のテストモードでは、前記入力側スキャンセル群に前記BIST信号を出力することができ、セレクタを入力側スキャンセル群の入力に接続する位置に配置すれば、短時間でBIST信号をセットすることができる。
また、前記BIST回路は、前記出力側スキャンセル群の出力と接続され、前記出力側スキャンセル群のシフト動作により前記結果信号を受け取ることができ、出力側スキャンセル群の出力に接続することで、短時間で結果信号を受け取ることができる。
更に、前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有することができる。
更にまた、前記第2のテストモードは、前記入力側スキャンセル群が実動作周波数のクロックに同期して前記BIST信号を前記メモリブロックに出力し、前記出力側スキャンセル群が実動作周波数のクロックに同期して前記メモリブロックから前記結果信号を受け取ることができる。
この場合、前記スキャン回路は、前記メモリマクロにテストデータを書き込むための書き込み用BIST信号を前記入力側スキャンセル群に一旦格納し、実動作周波数のクロックに同期して前記メモリマクロへデータの書き込みを行い、前記メモリマクロからデータを読み出す読み出し用BIST信号を一旦格納し、前記実動作周波数のクロックに同期して前記メモリマクロからデータを読み出し、前記メモリマクロから読み出されたデータを一旦格納し、シフト動作により前記BIST回路に送ることができる。
また、前記メモリマクロの入力側に設けられる第2のセレクタを有し、前記BIST回路は、前記入力側スキャンセル群に出力する第1のBIST信号及び前記メモリマクロに出力する第2のBIST信号を生成し、前記第2のセレクタは、前記第2のテストモードでは前記入力側スキャンセル群からのデータを選択して前記メモリマクロに出力し、第3のテストモードでは前記第2のBIST信号を選択して前記メモリマクロに出力することができ、第2のBIST信号によりメモリマクロ単体のテストを実行することができる。
更に、前記入力側スキャンセル群に第1のBIST信号を出力する第1のBIST回路と、前記メモリマクロに第2のBIST信号を出力する第2のBIST回路と、前記メモリマクロの入力側に設けられる第2のセレクタを有し、前記第2のセレクタは、前記第2のテストモードでは前記入力側スキャンセル群からのデータを選択して前記メモリマクロに出力し、第3のテストモードでは前記第2のBIST回路からのデータを選択して前記メモリマクロに出力するものとしてもよい。
更にまた、前記第2のセレクタは、メモリマクロの入力端子に対応して設けられたn個(nは整数)のセレクタ群からなり、前記第2のBIST回路から前記第2のBIST信号をパラレルに受け取ることができ、メモリマクロ単体のテストを短時間で実行可能となる。
本発明によれば、集積回路がRAMマクロの前後又はそのいずれか一方に組み合わせ回路が設けられたメモリブロックを内蔵する場合においても実動作のクロック周波数でのメモリブロックのテストを短時間で効率よく実行することができる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、RAMマクロを搭載した集積回路に適用したものである。
実施の形態1.
図1は、本発明の実施の形態1にかかる集積回路を示すブロック図である。図1に示すように、集積回路1は、メモリブロック10と、シリアルアクセスメモリBIST回路3と、第1のスキャン回路7と、第2のスキャン回路8とを有する
図1は、本発明の実施の形態1にかかる集積回路を示すブロック図である。図1に示すように、集積回路1は、メモリブロック10と、シリアルアクセスメモリBIST回路3と、第1のスキャン回路7と、第2のスキャン回路8とを有する
メモリブロック10は、メモリマクロの1例であるRAMマクロ2に加え、RAMマクロ2の周辺に設けられた1又は複数の組み合わせ回路を有する。本実施の形態におけるメモリブロック10は、第1のスキャン回路7とRAMマクロ2の入力側との間に設けられる第1の組み合わせ回路5及びRAMマクロ2の出力側と第2のスキャン回路8との間に設けられる第2の組み合わせ回路6を有するものとする。
本実施の形態における集積回路1は、通常動作モードに加えて、第1のテストモードと、第2のテストモードとを有し、第1のテストモードでは第1のスキャン回路7、第2のスキャン回路8により、集積回路1内の組み合せ回路5、6とは異なる図示しない組み合わせ回路のスキャンテストが実行される。また、第2のテストモードでは、シリアルアクセスメモリBIST回路3によりメモリブロック10に対するBISTが実行される。
第1のスキャン回路7及び第2のスキャン回路8は、複数のスキャンフリップフロップ(スキャンセル)を直列に接続してスキャンパスを構成するスキャンチェーンからなる。第1のテストモードにおいて、第1のスキャン回路7には、スキャン入力端子(SCIN)21を介してスキャンテスト用のテスト信号(スキャンテストパターン)が入力される。テスト結果はスキャン出力端子(SCOUT)22を介して出力される。また、第2のスキャン回路8にも同様に、スキャン入力端子(SCIN)31を介してテスト信号が入力され、スキャン出力端子(SCOUT)32を介して出力され、これを観測することでスキャンテストを実行する。
なお、本実施の形態においては、入力側の第1のスキャン回路7と、出力側の第2のスキャン回路8とは異なるスキャンチェーンとして説明するが、スキャン入力端子21からスキャン出力端子31まで1つのスキャンチェーンとして設けられたものであってもよいことは勿論である。
また、第1のスキャン回路7を構成する複数のスキャンフリップフロップ9には、組み合わせ回路5に接続されるスキャンフリップフロップから構成される入力側スキャンフリップフロップ群9Aが含まれる。また、第2のスキャン回路8を構成する複数のスキャンフリップフロップには、組み合わせ回路6と接続されるスキャンフリップフロップから構成される出力側スキャンフリップフロップ群9Bが含まれる。ここで、スキャン回路7を構成するスキャンフリップフロップ9のうち、入力側スキャンフリップフロップ群9Aを構成するスキャンフリップフロップを他と区別するためスキャンフリップフロップ9aということとする。また、スキャン回路8においても、複数のスキャンフリップフロップ9のうち、出力側スキャンフリップフロップ群9Bを構成するスキャンフリップフロップを他と区別するためスキャンフリップフロップ9bということとする。図1に示す例では、入力側スキャンフリップフロップ群9Aは、4つのスキャンフリップフロップ9aを有し、出力側スキャンフリップフロップ群9Bは、4つのスキャンフリップフロップ9bを有する。
そして、本実施の形態における集積回路1には、第1のスキャン回路7のスキャンチェーンの途中であって入力側スキャンフリップフロップ9Aより前段にセレクタ4が設けられている。セレクタ4には、制御信号として第1の選択信号SELAが入力され、その入力にはスキャン入力信号及びシリアルアクセスBIST信号が入力される。第1の選択信号SELAは、第1のテストモードと第2のテストモードとで論理レベルが異なる信号である。また、スキャン入力信号は、前段のスキャンフリップフロップ9から入力される。また、シリアルアクセスBIST信号は、シリアルアクセスメモリBIST回路3にて生成されたRAMマクロ2をテストするテスト信号である。
このセレクタ4は、第1の選択信号SELAの論理レベルに応じて上記スキャン入力信号又はシリアルアクセスBIST信号を選択出力する。すなわち、セレクタ4には、第1のテストモードでは、論理レベルが例えば「0」の第1の選択信号SELAが入力され、前段のスキャンフリップフロップ9から送られるスキャン入力信号を選択して後段の入力用スキャンフリップフロップ群を構成するスキャンフリップフロップ9aに出力する。また、第2のテストモードでは、論理レベルが例えば「1」の第1の選択信号SELAが入力され、シリアルアクセスメモリBIST回路3からのシリアルアクセスBIST信号を選択して同じくスキャンフリップフロップ9aに出力する。
ここで、シリアルアクセスBIST信号を入力側スキャンフリップフロップ9Aに短時間でセットするために、セレクタ4は、スキャンフリップフロップ9と、入力側スキャンフリップフロップ群9Aとの間に設けられることが好ましい。
次に、第1のスキャン回路7及び第2のスキャン回路8のスキャンチェーンについて説明する。図2は、スキャンチェーンの一部分の詳細を示す図である。スキャンフリップフロップ9、9a、9bは、通常のスキャンフリップフロップと同様に構成されたものである。スキャンフリップフロップ9、9a、9bは、クロック入力端子CK、データ入力端子D、スキャン入力端子SI、スキャン出力端子SO、出力端子Q、及びスキャンモードコントロール(SMC)端子を有し、シフトモードとキャプチャモードとを有する。
クロック入力端子CKには、クロックが入力される。データ入力端子Dには、通常動作の際にデータが入力される。スキャン入力端子SIには、シフトモードの際にテスト信号が入力される。スキャン出力端子SO及び出力端子Qは、キャプチャモードで保持しているデータをクロックCKのタイミングで出力する。SMC信号は、保持しているデータをスキャン出力端子SOから出力するシフトモード又は出力端子Qから出力するキャプチャモードを選択制御する信号である。なお、SMC信号は、通常動作モードではキャプチャモードと同一の論理レベルとなる。
各スキャンフリップフロップ9、9a、9bは、そのスキャン入力端子SIが前段のスキャンフリップフロップ9のスキャンアウト端子SOに接続され、スキャンアウト端子SOが後段のスキャンフリップフロップ9のスキャン入力端子SIに接続されている。
また、スキャンフリップフロップ9aは、データ出力端子Qが第1の組み合わせ回路5に接続され、スキャンフリップフロップ9bは、データ入力端子Dが第2の組み合わせ回路6と接続されている。スキャンフリップフロップ9、9a、9bは、シフトモードでは、前段のスキャンフリップフロップから後段のスキャンフリップフロップにデータをシフトさせる。一方、キャプチャモードでは、スキャンフリップフロップ9aは、データ出力端子Qから取り込んだデータを第1の組み合せ回路5に出力し、スキャンフリップフロップ9bは、データ入力端子Dから、第2の組み合わせ回路6からのデータが入力される。
シリアルアクセスメモリBIST回路3は、セレクタ4に接続され、入力側スキャンフリップフロップ群9AにBIST信号をシリアルに供給する。また、シリアルアクセスメモリBIST回路3は、第2のスキャン回路8の出力側スキャンフリップフロップ群9Bの出力又はそれより後段のスキャンフリップフロップ9の出力に接続される。そして、出力側スキャンフリップフロップ群からメモリブロック10からの結果信号を受け取る。ここで、シリアルアクセスメモリBIST回路3は、結果信号をより短時間で受け取るために、第2のスキャン回路8のスキャンチェーンのうち、出力側スキャンフリップフロップ群9Bの最後段のスキャンフリップフロップ9bの出力と接続されることが好ましいが、出力側スキャンフリップフロップ群9Bに入力された結果信号を受け取れる位置であればよく、例えば出力側スキャンフリップフロップ群9Bの後段のスキャンフリップフロップ9の出力をシリアルアクセスメモリBIST回路3に入力するように構成してもよい。
このように構成された集積回路1は、第1のテストモードでは、公知のスキャンテストが実行される。つまり、スキャン回路7及びスキャン回路8は、集積回路1のスキャン入力端子21とスキャン出力端子22との間に設けられるスキャンチェーンの一部として用いられる。
また、第2のテストモードでは、シリアルアクセス回路3がRAMマクロ2のテスト対象のアドレスへの書き込み命令となるBIST信号を生成して出力する。このBIST信号はセレクタ4にて入力側スキャンフリップフロップ群9Aへ選択出力される。そして、このBIST信号が組み合わせ回路5を介してRAMマクロ2へ出力され、RAMマクロ2のテストアドレスへテストデータが書き込まれる。次に、シリアルアクセスメモリBIST回路3は、上記テストアドレスと同一アドレスからの読み出し命令となるBIST信号を生成して出力する。このBIST信号もセレクタ4にて入力側スキャンフリップフロップ群9Aへ選択出力される。そして、BIST信号が組み合わせ回路5を介してRAMマクロ2に出力され、これによりRAMマクロ2を制御して上記テストアドレスからテストデータの読み出しを行う。読み出されたテストデータは組み合わせ回路6に出力され、論理演算され結果信号とさる。この結果信号は、出力側スキャンフリップフロップ群9Bに出力され、第2のスキャン回路8からシリアルアクセスメモリBIST回路3にシリアルに転送される。シリアルアクセスメモリBIST回路3は、読み出されたテストデータに基づいて出力側の組み合わせ回路6で論理演算された結果信号と、期待値とを比較して一致するか否かを判定する。
ここで第2のテストモードでは、スキャンフリップフロップ9、9a、9bは、入力側スキャンフリップフロップ群9AにBIST信号をセットするまでの間及び出力側スキャンフリップフロップ群9Bが受け取った結果信号をシリアルアクセスメモリBIST回路3に送る間は、上述したシフトモードとされ、スキャンフリップフロップをクロックに同期させてシフト動作させる。なお、シフトモードでは、クロックCKの周波数は、集積回路の実動作周波数とは異なる周波数としてもよい。
また、入力側スキャンフリップフロップ群9AにセットされたBIST信号を出力する間、RAMマクロ2からテストデータを読み出す間は、上述したキャプチャモードとされ、実動作周波数で取り込んだBIST信号を出力又は結果信号を取り込む動作を実行する。
次に、第2のテストモードにおけるシリアルアクセスメモリBIST回路3によるテスト方法について、図3及び図4を用いて詳細に説明する。図3は、集積回路1の第2のテストモードにおけるテスト方法を示すフローチャートである。また、図4は、第2のテストモードにおいて、スキャンフリップフロップ9a、9bに入力されるSMC信号、クロックCKを示す波形図である。図4(a)に示すように、第2のテストモード時には、セレクタ4に例えば論理が「1」の第1の選択信号SELAが入力され、シリアルアクセスメモリBIST回路3からのBIST信号を選択するよう設定される(ステップS11)。
先ず、シリアルアクセスメモリBIST回路3は、書き込み命令となるBIST信号を生成する。この書き込み命令となるBIST信号は、シリアルアクセスメモリBIST回路3からシリアルに出力され、セレクタ4がこのBIST信号をスキャン回路7内の入力側スキャンフリップフロップ群9Aに選択出力する(ステップS12)。入力側スキャンフリップフロップ群9Aは、クロックに同期して初段のスキャンフリップフロップ9aから次段のスキャンフリップフロップ9aへと順次BIST信号をシフト転送する。このシフトモードにおいては、図4(a)に示すように、そのクロックを実動作時のクロック周波数よりも例えば低い周波数にしてもよい。
なお、スキャンフリップフロップ9、9a、9bは、上述したように通常のスキャンフリップフロップと同様であり、図4(a)に示すように、SMC信号を、例えば論理「1」としてシフトモードとすることにより、クロックCKに同期してシフト動作する。こうしてスキャン回路7に所定数のクロックパルスを供給することにより書き込み命令のBIST信号が入力側スキャンフリップフロップ群9Aに格納される。
次に、図4(a)に示すようにSMC信号を、例えば論理「0」としてキャプチャモードに変更する。その後、集積回路1のクロックCKを実動作周波数で2クロックパルス供給する。最初のパルスの立ち上がりに同期して入力側スキャンフリップフロップ群9Aから書き込み命令用BIST信号が組み合せ回路5に出力される。このBIST信号は、組み合わせ回路5内で論理演算されて書き込みアドレス、書き込みデータ(テストデータ)及び書き込み制御信号からなる書き込み用コマンドに変換されRAMマクロ2に供給され、テストデータの書き込みが行われる(ステップS13)。
次に、図4(b)に示すように、SMC信号を再びシフトモードとし、シリアルアクセスメモリBIST回路3が読み出し命令を生成する。この読み出し命令はシリアルアクセスBIST信号としてステップS12と同様、シリアルに出力され、セレクタ4がこれを選択出力しスキャン回路7内の入力側スキャンフリップフロップ群9Aに転送される(ステップS14)。
次に、図4(b)に示すように、SMC信号を再びキャプチャモードに変更する。そして、集積回路1にクロックCKを実動作周波数で3クロックパルス供給する。最初のクロックパルスの立ち上がりに同期して入力側スキャンフリップフロップ群9Aから読み出し命令用BIST信号が組み合せ回路5に出力される。このBIST信号は、組み合わせ回路5内で論理演算されて読み出しアドレス及び読み出し制御信号からなる読み出し用コマンドに変換されてRAMマクロ2に供給される。次のクロックパルスの立ち上がりに同期して、ステップS13にて書き込まれたテストデータの読み出しが行われる。読み出されたテストデータは、組み合わせ回路6へ出力され、この組み合せ回路6にて論理演算がなされ、メモリブロック10のテスト結果信号として3発目のクロックパルスの立ち下がりまでにスキャン回路8内の出力側スキャンフリップフロップ群9Bを構成するスキャンフリップフロップ9bに格納される(ステップS15)。
次に、図4(b)に示すように、SMC信号を再びシフトモードとし、クロックCKを供給することにより、メモリブロック10から読み出されたテストデータが第2の組み合わせ回路6にて論理演算された結果信号が、スキャンフリップフロップ9bを順次シフトしてシリアルアクセスメモリBIST回路3へシリアルに送信される(ステップS16)。
シリアルアクセスメモリBIST回路3は受け取った結果信号を期待値と比較し、一致しているか否かを判定する。一致している場合には一致判定信号を所定の論理レベル(例えば論理1)として出力する(ステップS17)。ここで、判定信号は、例えば外部へ出力するようにしてもよく、又は一致しなかった場合にそのアドレスを集積回路1内に設けた図示しないレジスタに格納するようにしてもよい。
シリアルアクセスメモリBIST回路3は、予め設定されたすべてのテストアドレスについてテストが完了したか否かを判断し、設定されたテストアドレスが全てテストされた場合にはシリアクセスBISTによるテストを終了する。この際、テストの終了を集積回路1の外部へ告知するようにしてもよい。テストアドレスのうち未テストのアドレスが有る場合には次のテストアドレスに対してステップS12以降が実行される(ステップS18)。
以上に述べたように、本実施の形態においては、シリアルアクセスメモリBIST回路3がRAMマクロ2に対する書き込み又は読み出し用コマンドとなるシリアルにBIST信号を生成している。このシリアルのBIST信号は、スキャン回路7の途中に設けられたセレクタ4により、スキャンフリップフロップ群9Aに選択出力可能となっている。この入力側スキャンフリップフロップ群9AがシリアルアクセスBIST信号を一旦格納した後、組み合せ回路5を介してBIST信号を出力する。これにより、メモリブロック10内のRAMマクロ2へテストデータを書き込む動作を実動作周波数のクロックに同期して実行することができる。
また、RAMマクロ2に対する読み出し命令となるシリアルアクセスBIST信号を同じく入力側スキャンフリップフロップ群に一旦格納した後、組み合せ回路5を介してメモリブロック10内のRAMマクロ2にBIST信号を出力するので、RAMマクロ2から書き込んだテストデータを読み出す動作を実動作周波数のクロックに同期して行うことができる。
そして、出力側スキャンフリップフロップ群9Bは、一旦格納した結果信号を、順次次段のスキャンフリップフロップへシフトさせてシリアルアクセスメモリBIST回路3に送り、シリアルアクセスメモリBIST回路3にて期待値との一致判定を行うことで、メモリブロック10がRAMマクロ2の前後に組み合わせ回路を有する場合においても、集積回路1が実動作周波数で正常に動作するか否かのテスト(transaction test)を実行することができる。
すなわち、従来のテスト方法では、RAMマクロ周辺の組み合わせ回路をシステム動作周波数でテストするにはスキャン回路7、8を使用して長大なスキャンパタンが必要であり、外部から長大なスキャンパタンを長時間かけて入力してスキャンフリップフロップ9aの設定を行わなければならなかったため、テスト時間も長大となり、故障検出率を上げることが困難であった。これに対し、本実施の形態においては、シリアルアクセスメモリBIST回路3からのBIST信号を、セレクタ4を介して入力側スキャンフリップフロップ群9Aに入力、設定することができる。すなわち、スキャンチェーンの途中にセレクタ4を設けることにより、スキャンフリップフロップ群9Aにメモリブロック10をテストするためのデータを、スキャン入力端子21を介してではなく、スキャンチェーンの途中から入力することができるため、入力側スキャンフリップフロップ群9Aに対して、メモリブロック10をテストするためのデータを極めて短時間で入力、設定することができる。これにより、メモリブロック10に含まれる、RAMマクロ2周辺に設けられた組み合せ回路5、6において、セットアップタイムやホールドタイムの制約が満たされているかを高速システム動作周波数(実動作周波数)でテストすることができる。
また、シリアルアクセスメモリBIST回路3により、RAMマクロ2への書き込み命令/読み出し命令となるBIST信号の生成、及び期待値との一致判定等を自動的に行うので、組み合わせ回路5、6の故障検出を含む実動作のクロック周波数でのメモリブロック10の動作テストを短時間で効率よく行うことができる。
更に、BIST信号を使用するため、長大なテストベクタも不要であり、セレクタ4を入力スキャンフリップフロップ群9Aの直前に挿入することで、テスト時間を従来に比較して飛躍的に短縮することができる。
なお、本実施の形態においては、メモリブロック10のRAMマクロの前段及び後段に組み合せ回路を有するものとして説明したが、前段又は後段の一方のみに組み合わせ回路を有する場合、又は入力側スキャンフリップフロップ9AとRAMマクロ2の入力とが接続され、RAMマクロ2の出力と出力側スキャンフリップフロップ9Bとが接続されているような場合においても本発明を適用することができ、同様にメモリブロック10の実動作周波数での動作テストを高効率化することができる。
実施の形態2.
図5は、本発明の実施の形態2にかかる集積回路を示すブロック図である。本実施の形態における集積回路41は、図1の構成に加えてパラレルアクセスメモリBIST回路13及びセレクタ群14とを更に備え、第1及び第2のテストモードに加え、図8に示す従来の集積回路101と同様、パラレルアクセスメモリBIST回路によるRAMマクロ2単体の動作テストを行う第3のテストモードを設けたものである。なお、図5に示す実施の形態2において、図1に示す実施の形態1と同一の構成要素には同一の符号を付しその詳細な説明は省略する。
図5は、本発明の実施の形態2にかかる集積回路を示すブロック図である。本実施の形態における集積回路41は、図1の構成に加えてパラレルアクセスメモリBIST回路13及びセレクタ群14とを更に備え、第1及び第2のテストモードに加え、図8に示す従来の集積回路101と同様、パラレルアクセスメモリBIST回路によるRAMマクロ2単体の動作テストを行う第3のテストモードを設けたものである。なお、図5に示す実施の形態2において、図1に示す実施の形態1と同一の構成要素には同一の符号を付しその詳細な説明は省略する。
図5において、セレクタ群14はRAMマクロ2のn(nは正整数)個の入力端子に対応して設けられたn個のセレクタからなり、第2の選択信号SELBにより、第2のテストモードと第3のテストモードとで選択出力する信号を切り替える。すなわち、第2のテストモードでは、第2の選択信号SELBを例えば論理「0」に設定することにより、第1のスキャン回路7から出力されるBIST信号が組み合せ回路5にて論理演算されたn個の信号を選択してRAMマクロ2へ出力し、第3のテストモードでは第2の選択信号SELBを論理「1」に設定することにより、n個のパラレルアクセスBIST信号を前記RAMマクロ2へ出力する。
パラレルアクセスメモリBIST回路13は第3のテストモードではパラレルアクセスBIST信号を生成してセレクタ群14にパラレル出力する。セレクタ群14はこれをRAMマクロ2に選択出力して、指定のアドレスにテストデータを書込み、これを読み出させる。パラレルアクセスメモリBIST回路13は、読み出されたテストデータのパラレル出力を受け取り、それぞれの期待値と照合して一致判定する。
ここで、パラレルアクセスメモリBIST回路13にて生成されるパラレルアクセスBIST信号は、書き込み時では書き込みアドレス、書き込みデータ(テストデータ)、書き込み制御信号からなる書き込み用コマンドであり、読み出し時では読み出しアドレス、読み出し制御信号からなる読み出し用コマンドである。
一方、実施の形態1と同様のシリアルアクセスメモリBIST回路3にて生成されるシリアルBIST信号は、組み合わせ回路5にて論理演算されて書き込み/読み出し用コマンドとされるBIST信号である。また、シリアルアクセスメモリBIST回路3には、読み出されたテストデータが組み合わせ回路6にて論理演算されたものが結果信号として入力されるため、テストデータが論理演算された値を期待値とし、結果信号と一致判定される。
本実施例における第1のテストモード及び第2のテストモードでの動作は上述の実施の形態1の動作と同様である。また、第3のテストモードの動作は図8に示す従来の集積回路101におけるパラレルアクセスメモリBIST回路によるRAMマクロの動作テストと同様である。
すなわち、パラレルアクセスメモリBIST回路13を用いたRAMマクロ2の動作テストでは、パラレルアクセスメモリBIST回路13により書き込みアドレス、書き込みデータ(テストデータ)及び書き込み制御信号からなるBIST信号を所定の手順により生成する。
このBIST信号がクロックCKに同期してパラレルアクセスメモリBIST回路13からセレクタ群14の各セレクタを介してRAMマクロ2にパラレル入力されRAMマクロ2の書き込みアドレスにテストデータの書き込みが行われる。
その後、書き込んだテストデータを読み出し、読み出したテストデータと期待値との一致判定を行う。このために、パラレルアクセスメモリBIST回路3により、再び所定の手順にて読み出しアドレス及び読み出し制御信号からなるBIST信号を生成する。そして、クロックに同期してセレクタ群14の各セレクタを解してRAMマクロ2に入力する。これによりRAMマクロ2から、指定された読み出しアドレスのテストデータが読み出され、パラレルアクセスメモリBIST回路13へパラレル出力される。
読み出されたテストデータはパラレルアクセスメモリBIST回路13内で期待値と照合され、一致する場合にはパラレルアクセスメモリBIST回路13はRAMマクロ102における書き込み/読み出し動作が正常に行われたと判断する。
本実施の形態においては、第2のテストモードと第3のテストモードとを使い分けることでメモリブロック10のテストを更に効率よく行うことができる。例えば、第3のテストモードにて、パラレルアクセスメモリBIST回路13によりRAMマクロ2の全アドレスの書き込み/読み出し動作テストを行い、第2のテストモードにて、シリアルアクセスメモリBIST回路3により組み合わせ回路5、組み合わせ回路6の論理演算動作及びメモリブロック10全体におけるクリティカルパスの実動作クロック周波数でのテストを行うことで、実施の形態1と比較して故障検出率を殆ど低下させずに更に効率よく短時間でテストすることが可能となる。
また、パラレルアクセスメモリBIST回路13は、乱数発生器を用いてアドレス及びデータを生成することができる他、例えばアドレスを最小のアドレスから昇順に生成又は最大のアドレスから降順に生成してもよい。また、その他の予め定められたアルゴリズムに従ってアドレスを生成するようにしてもよく、更に複数のアドレス生成パタンから選択できるようにしてもよい。
また、データ生成についても、例えばマーチングテストに適したように生成してもよく、チェッカーボードテストに適したように生成してもよい。又は、その他の予め定められたアルゴリズムに従ってデータを生成するようにしてもよく、更に複数のデータ生成パタンから選択できるようにしてもよい。
また、パラレルアクセスメモリBIST回路により、RAMマクロ2の一のアドレス毎にテストデータを書き込み、読み出し、期待値との一致判定を行うように構成してもよく、全てのテストアドレスに対して書き込んだ後に一のアドレス毎に読み出し、期待値との一致判定を行うようにしてもよい。又はいずれかを選択できるようにしてもよい。
実施の形態3.
次に、本発明の実施の形態3について説明する。上述の実施の形態1及び実施の形態2における第2のテストモードでは、入力側スキャンフリップフロップ群9Aを介してBIST信号を供給し、出力側スキャンフリップフロップ群9Bを介して結果信号を受け取ることでメモリブロックの実動作周波数でのテストを実現する。ここで、メモリブロック10の実動作周波数でのテストは、入力側スキャンフリップフロップ群9A及び出力側スキャンフリップフロップ群9Bを介してテスト信号をやり取りすることができれば可能である。そこで、本実施の形態においては、実施の形態1及び実施の形態2において設けたシリアルアクセスメモリBIST回路3の代わりにパラレルアクセスメモリBIST回路33を設け、入力側スキャンフリップフロップ群9Aに対してBIST信号をパラレルに供給するものである。
次に、本発明の実施の形態3について説明する。上述の実施の形態1及び実施の形態2における第2のテストモードでは、入力側スキャンフリップフロップ群9Aを介してBIST信号を供給し、出力側スキャンフリップフロップ群9Bを介して結果信号を受け取ることでメモリブロックの実動作周波数でのテストを実現する。ここで、メモリブロック10の実動作周波数でのテストは、入力側スキャンフリップフロップ群9A及び出力側スキャンフリップフロップ群9Bを介してテスト信号をやり取りすることができれば可能である。そこで、本実施の形態においては、実施の形態1及び実施の形態2において設けたシリアルアクセスメモリBIST回路3の代わりにパラレルアクセスメモリBIST回路33を設け、入力側スキャンフリップフロップ群9Aに対してBIST信号をパラレルに供給するものである。
図6は、本発明の実施の形態3にかかる集積回路51を示すブロック図である。なお、図6に示す本実施の形態において、図1に示す実施の形態1と同一構成要素には同一の符号を付しその詳細な説明は省略する。集積回路51は、BIST信号をパラレルに出力するパラレルアクセスメモリBIST回路33を有する。そして、入力側スキャンフリップフロップ群9Aにおいて、このパラレルBIST信号を選択して組合せ回路5へ出力するため、各スキャンフリップフロップ9aの前段にセレクタ34を有している。すなわち、セレクタ34は、第1の選択信号SELAにより、第1のテストモードでは、前段のスキャンフリップフロップ9又はスキャンフリップフロップ9aからのスキャンテスト信号を後段のスキャンフリップフロップ9aに選択出力する。一方、第2のテストモードでは、前段のスキャンフリップフロップ9又はスキャンフリップフロップ9aからのBIST信号をスキャンフリップフロップ9aに選択出力する。
図7は、本実施の形態にかかるスキャンチェーンの一部分の詳細を示す図である。前段のスキャンフリップフロップ9aの出力と後段のスキャンフリップフロップ9aの入力との間にそれぞれセレクタ34を有する。スキャンフリップフロップ9aは、セレクタ34からBIST信号又はスキャンテスト信号を切り替えて出力する。
また、出力側スキャンフリップフロップ群9Bからは、組み合わせ回路6から受け取った結果信号がパラレルアクセスメモリBIST回路33へパラレルに出力される。
なお、各スキャンフリップフロップ9bの出力にセレクタを設け、第1のテストモードでは、前段のスキャンフリップフロップ9又はスキャンフリップフロップ9bからのスキャンテスト信号を後段のスキャンフリップフロップ9b又はスキャンフリップフロップ9に選択出力し、第2のテストモードでは、前段のスキャンフリップフロップ9bからの結果信号をパラレルアクセスメモリBIST回路33に選択出力するようにしてもよい。また、本実施の形態においては、2つの入力から一を選択して出力するセレクタ34を有するものとしたが、パラレルアクセスメモリBIST回路33からのBIST信号をパラレルに受け取って、各スキャンフリップフロップ9aに同時に出力するセレクタを設けてもよい。
この集積回路51は、実施の形態1におけるシリアルアクセスメモリBIST回路3をパラレルアクセスメモリBIST回路33に置き換えたものであって、BIST信号がパラレルで出力され、結果信号をパラレルで受け取ること以外は、実施の形態1と同様に動作する。すなわち、スキャンフリップフロップ9aは、第1のテストモードでは、受け取ったスキャンテスト信号を後段のスキャンフリップフロップ9aにシフト転送する。第2のテストモードでは、実動作周波数のクロック信号に同期して組み合わせ回路5にBIST信号を出力する。BIST信号が組み合わせ回路5にて所定の論理演算がなされ、書き込み又は読み出し用コマンドとされ、RAMマクロ2のテストを実行する。読み出し用コマンドの場合は、組み合わせ回路6を介してスキャンフリップフロップ9bに結果信号が出力され、これがパラレルアクセスメモリBIST回路33にパラレルに出力され、期待値と一致判定される。
本実施の形態においては、実施の形態1と同様の効果を奏すると共に、BIST信号を入力側スキャンフリップフロップ群9Aにパラレルで出力するため、メモリブロック2の実動作周波数でのテストを実施の形態1に比して更に短時間で行うことができる。
また、本実施の形態においては、パラレルアクセスメモリBIST回路33からBIST信号をパラレルで出力し、結果信号をパラレルで受け取るものとしたが、例えばパラレルでBIST信号を出力し、シリアルで結果信号を受け取るようにしてもよい。また、実施の形態2の如く、組み合わせ回路5とRAMマクロ2との間にセレクタ群を設け、RAMマクロ2単体のBISTを行うパラレルアクセスメモリBIST回路を設け、第3のテストモードとして実行可能に構成してもよい。これにより、RAMマクロ2単体のBISTを高速に実行し、また、メモリブロック2に対し、実動作周波数でのテストが可能となる。更に、これらのテストを組み合せることで、RAMマクロ2の故障であるか、組み合わせ回路5、6の故障であるかを発見することも可能である。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、本実施の形態においては、メモリブロックのメモリマクロは、RAMマクロとして説明したが、このRAMマクロはSRAMマクロ、DRAMマクロ、不揮発性RAMマクロの何れであってもよい。また、読み出し専用のROM等であってもよい。
また、本実施の形態において、スキャンフリップフロップは、シフトモードではクロック端子から実動作よりも周波数の低いスキャンクロックが入力され、キャプチャモードでは上記クロック端子から実動作周波数のクロックが入力するように構成されているものとしたが、スキャンフリップフロップがスキャンクロック端子と通常動作用のクロック端子を有し、シフトモードではスキャンクロック端子からクロックを受けて動作し、キャプチャモードでは通常動作用のクロック端子からクロックを受けて動作するものに代替することも可能である。
更に、スキャンフリップフロップは、図2、図7においてスキャンアウト端子SOとデータ出力端子Qとを1個の端子で兼用してもよい。
更にまた、図5においてシリアルアクセスメモリBIST回路3がパラレルアクセスメモリBIST回路13を兼用し、外部からのテストモード信号により、テスト機能を切り換えるようにしてもよい。例えば、出力部にパラレルシリアル変換回路を備えると共に入力部にシリアルパラレル変換回路を備え、外部からのテストモードの指定によりパラレル信号で出力するかシリアル信号で出力するかを切り換え可能なBIST回路として構成する。
この場合、第2のテストモードでは、BIST回路は書き込み/読み出し用コマンドとなるパラレルなBIST信号を生成し、パラレルシリアル変換回路により、上述したシリアルアクセスBIST信号に相当するシリアル信号に変換し、変換したシリアルなBIST信号を入力側スキャンフリップフロップ群に接続されたセレクタへ出力するようにすればよい。また、メモリブロック10から組み合せ回路を介してシリアルに転送される結果信号を、シリアルパラレル変換回路を経由させることで、パラレルアクセスBIST信号に相当するパラレル信号に変換してから期待値と比較すればよい。
そして、第3のテストモードでは、BIST回路は書き込み/読み出し情報を示すパラレル信号をメモリブロック10内のRAMマクロ2へ直接に出力し、RAMマクロ2の出力データをパラレルに受け取り期待値と比較すればよい。
また、例えば、集積回路が複数のRAMマクロを有する場合などにおいては、シリアルアクセスメモリBIST回路3とパラレルアクセスメモリBSIT回路33とを組み合せて使用するようにしてもよい。
3 シリアルアクセスメモリBIST回路 4,34 セレクタ
5,6 組み合せ回路 7,8 スキャン回路
9,9a,9b スキャンフリップフロップ
9A 入力側スキャンフリップフロップ群
9B 出力側スキャンフリップフロップ群
10 メモリブロック 13 パラレルアクセスメモリBIST回路
14 セレクタ群 21,31 スキャン入力端子
22,32 スキャン出力端子 33 パラレルアクセスBIST回路
5,6 組み合せ回路 7,8 スキャン回路
9,9a,9b スキャンフリップフロップ
9A 入力側スキャンフリップフロップ群
9B 出力側スキャンフリップフロップ群
10 メモリブロック 13 パラレルアクセスメモリBIST回路
14 セレクタ群 21,31 スキャン入力端子
22,32 スキャン出力端子 33 パラレルアクセスBIST回路
Claims (12)
- メモリマクロを含むメモリブロックと、
スキャンパスを構成する複数のスキャンセルを有するスキャン回路と、
BIST信号を生成し、当該BIST信号により前記メモリブロックをテストした結果信号を受け取り期待値と一致するか否かを判定するBIST回路とを有し、
前記複数のスキャンセルは、前記メモリブロックへデータを出力可能な入力側スキャンセル群と、前記メモリブロックからデータを受け取り可能な出力側スキャンセル群とを有し、
前記入力側スキャンセル群の各スキャンセルは、第1のテストモードでは前段のスキャンセルからのスキャンテスト信号を受け取り、第2のテストモードでは前記BIST信号を受け取り、
前記出力側スキャンセル群の各スキャンセルは、第1のテストモードでは前段のスキャンセルからスキャンテスト信号を受け取り、第2のテストモードでは前記メモリブロックから前記結果信号を受け取る
ことを特徴とする集積回路。 - 前記メモリブロックは、前記入力側スキャンセル群と前記メモリマクロとの間及び/又は前記メモリマクロと前記出力側スキャンセル群との間に設けられる組み合わせ回路を更に有する
ことを特徴とする請求項1記載の集積回路。 - 前記スキャン回路において前記入力側スキャンセル群より前段に挿入されるセレクタを有し、
前記BIST回路は、前記第2のテストモードでは前記BIST信号をシリアルに出力し、
前記セレクタは、前記第1のテストモードでは前段のスキャンセルから送られる前記スキャンテスト信号を選択して後段のスキャンセルに出力し、前記第2のテストモードでは前記BIST信号を選択して後段のスキャンセルに出力する
ことを特徴とする請求項1記載の集積回路。 - 前記入力側スキャンセル群と前記メモリマクロとの間に第1の組み合わせ回路を有し、
前記セレクタは、前記第2のテストモードでは、前記入力側スキャンセル群に前記BIST信号を出力する
ことを特徴とする請求項3記載の集積回路。 - 前記出力側スキャンセル群と前記メモリマクロとの間に第2の組み合わせ回路を有することを特徴とする請求項3又は4記載の集積回路。
- 前記BIST回路は、前記出力側スキャンセル群の出力と接続され、前記出力側スキャンセル群のシフト動作により前記結果信号を受け取る
ことを特徴とする請求項3記載の集積回路。 - 前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有する
ことを特徴とする請求項1記載の集積回路。 - 前記第2のテストモードは、前記入力側スキャンセル群が実動作周波数のクロックに同期して前記BIST信号を前記メモリブロックに出力し、前記出力側スキャンセル群が実動作周波数のクロックに同期して前記メモリブロックから前記結果信号を受け取る
ことを特徴とする請求項3記載の集積回路。 - 前記スキャン回路は、前記メモリマクロにテストデータを書き込むための書き込み用BIST信号を前記入力側スキャンセル群に一旦格納し、実動作周波数のクロックに同期して前記メモリマクロへデータの書き込みを行い、前記メモリマクロからデータを読み出す読み出し用BIST信号を一旦格納し、前記実動作周波数のクロックに同期して前記メモリマクロからデータを読み出し、前記メモリマクロから読み出されたデータを一旦格納し、シフト動作により前記BIST回路に送る
ことを特徴とする請求項8記載の集積回路。 - 前記メモリマクロの入力側に設けられる第2のセレクタを有し、
前記BIST回路は、前記入力側スキャンセル群に出力する第1のBIST信号及び前記メモリマクロに出力する第2のBIST信号を生成し、
前記第2のセレクタは、前記第2のテストモードでは前記入力側スキャンセル群からのデータを選択して前記メモリマクロに出力し、第3のテストモードでは前記第2のBIST信号を選択して前記メモリマクロに出力する
ことを特徴とする請求項1記載の集積回路。 - 前記入力側スキャンセル群に第1のBIST信号を出力する第1のBIST回路と、
前記メモリマクロに第2のBIST信号を出力する第2のBIST回路と、
前記メモリマクロの入力側に設けられる第2のセレクタを有し、
前記第2のセレクタは、前記第2のテストモードでは前記入力側スキャンセル群からのデータを選択して前記メモリマクロに出力し、第3のテストモードでは前記第2のBIST回路からのデータを選択して前記メモリマクロに出力する
ことを特徴とする請求項1記載の集積回路。 - 前記第2のセレクタは、メモリマクロの入力端子に対応して設けられたn個のセレクタ群からなり、前記第2のBIST回路から前記第2のBIST信号をパラレルに受け取る
ことを特徴とする請求項10又は請求項11記載の集積回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004242779A JP2006058242A (ja) | 2004-08-23 | 2004-08-23 | 集積回路 |
US11/208,617 US20060041807A1 (en) | 2004-08-23 | 2005-08-23 | Integrated circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004242779A JP2006058242A (ja) | 2004-08-23 | 2004-08-23 | 集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006058242A true JP2006058242A (ja) | 2006-03-02 |
Family
ID=35910930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004242779A Pending JP2006058242A (ja) | 2004-08-23 | 2004-08-23 | 集積回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20060041807A1 (ja) |
JP (1) | JP2006058242A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009301676A (ja) * | 2008-06-17 | 2009-12-24 | Fujitsu Ltd | 半導体装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4693526B2 (ja) * | 2005-07-06 | 2011-06-01 | 株式会社東芝 | 半導体集積回路、および、半導体集積回路のテスト方法 |
JP2008058098A (ja) * | 2006-08-30 | 2008-03-13 | Oki Electric Ind Co Ltd | 半導体集積回路 |
US7779316B2 (en) * | 2007-12-05 | 2010-08-17 | Oracle America, Inc. | Method of testing memory array at operational speed using scan |
US9003255B2 (en) | 2011-07-01 | 2015-04-07 | Stmicroelectronics International N.V. | Automatic test-pattern generation for memory-shadow-logic testing |
US10249380B2 (en) * | 2017-01-27 | 2019-04-02 | Qualcomm Incorporated | Embedded memory testing with storage borrowing |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568437A (en) * | 1995-06-20 | 1996-10-22 | Vlsi Technology, Inc. | Built-in self test for integrated circuits having read/write memory |
KR100442699B1 (ko) * | 2002-07-19 | 2004-08-02 | 삼성전자주식회사 | 인접 수동소자 칩이 전기적으로 연결된 웨이퍼, 수동소자및 이를 이용한 반도체 패키지 |
WO2004073041A2 (en) * | 2003-02-13 | 2004-08-26 | Mentor Graphics Corporation | Testing embedded memories in an integrated circuit |
-
2004
- 2004-08-23 JP JP2004242779A patent/JP2006058242A/ja active Pending
-
2005
- 2005-08-23 US US11/208,617 patent/US20060041807A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009301676A (ja) * | 2008-06-17 | 2009-12-24 | Fujitsu Ltd | 半導体装置 |
Also Published As
Publication number | Publication date |
---|---|
US20060041807A1 (en) | 2006-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7721174B2 (en) | Full-speed BIST controller for testing embedded synchronous memories | |
US8145964B2 (en) | Scan test circuit and scan test control method | |
US7254762B2 (en) | Semiconductor integrated circuit | |
KR100597771B1 (ko) | 메모리용 테스트 회로 | |
US20060041807A1 (en) | Integrated circuit | |
US7484154B2 (en) | Semiconductor integrated circuit, method for testing semiconductor integrated circuit, and computer readable medium for the same | |
JP2007205933A (ja) | 半導体集積回路 | |
US20060053356A1 (en) | Integrated circuit | |
US7315479B2 (en) | Redundant memory incorporating serially-connected relief information storage | |
JP2001297598A (ja) | 半導体集積回路装置、及び半導体集積回路装置の自己テスト方法 | |
US6327683B1 (en) | Device scan testing | |
JP2003346498A (ja) | Bist回路 | |
US7155649B2 (en) | Scan test control method and scan test circuit | |
JPH0587890A (ja) | 半導体集積回路 | |
JP5158087B2 (ja) | 半導体集積回路装置および半導体集積回路装置の試験方法 | |
JP4724774B2 (ja) | 半導体回路装置、メモリテスト回路及び半導体回路装置の試験方法 | |
US20050289421A1 (en) | Semiconductor chip | |
JP2002139557A (ja) | 半導体装置 | |
JP2024138860A (ja) | 半導体集積回路及び半導体集積回路のテスト方法 | |
JPH11111924A (ja) | マクロテスト回路 | |
JP2021148628A (ja) | 半導体装置 | |
KR100261439B1 (ko) | 다중 바운더리 스캔회로 | |
JP2924521B2 (ja) | 並列パタン圧縮器 | |
JP2006258703A (ja) | 半導体集積回路のテスト回路及びテスト方法 | |
JPH06148290A (ja) | バウンダリスキャンレジスタ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070713 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091110 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100309 |