JP2006073917A - 集積回路 - Google Patents
集積回路 Download PDFInfo
- Publication number
- JP2006073917A JP2006073917A JP2004258024A JP2004258024A JP2006073917A JP 2006073917 A JP2006073917 A JP 2006073917A JP 2004258024 A JP2004258024 A JP 2004258024A JP 2004258024 A JP2004258024 A JP 2004258024A JP 2006073917 A JP2006073917 A JP 2006073917A
- Authority
- JP
- Japan
- Prior art keywords
- bist
- scan
- circuit
- signal
- test
- 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/318544—Scanning methods, algorithms and patterns
-
- 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/318536—Scan chain arrangements, e.g. connections, test bus, analog signals
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (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の各アドレスの書き込み及び読み出し動作テストを行うことができる。
図9は、スキャンテストとBISTとを組み合せ可能な従来の集積回路の一例を示すブロック図である。図9に示すように、集積回路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のテストを実行する。
パラレルアクセスメモリ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回路から前記BIST信号をパラレルに受け取り、前記出力側スキャンセル群の各スキャンセルは、前記第1のテストモードでは前段のスキャンセルからスキャンテスト信号を受け取り、前記第2のテストモードでは前記メモリブロックから前記結果信号を受け取ることを特徴とする。
本発明においては、入力側スキャンセル群がBIST回路からBIST信号を受け取り、メモリマクロに対してBISTを実行するため、スキャン回路を流用することによってスキャンセルを新たに設ける必要がなく、BIST回路の設置による回路規模の増大を抑制することができ、実動作周波数でメモリマクロのテストを短時間で実行可能となる。
また、前記メモリブロックは、前記入力側スキャンセル群と前記メモリマクロとの間及び/又は前記メモリマクロと前記出力側スキャンセル群との間に設けられる組み合わせ回路を更に有することができ、メモリマクロの入力側又は出力側に組み合わせ回路を有する場合であってもBIST信号を使用して実動作周波数でメモリブロックのテストを実行することができる。
更に、前記第2のテストモードで前記BIST信号を選択して前記入力側スキャンセル群の各スキャンセルに出力する第1のセレクタを有することができ、BIST信号をパラレルに受け取り入力側スキャンセル群に選択出力し、入力側スキャンセル群を介してメモリブロックにBIST信号を供給することができる。
この場合、前記第1のセレクタは、前記入力側スキャンセル群の各スキャンセルの前段にそれぞれ設けられたm個(mは整数)のセレクタ群であって、各m個のセレクタは、前記第1のテストモードでは前段のスキャンセルから送られる前記スキャンテスト信号を選択して後段のスキャンセルに出力し、前記第2のテストモードでは前記BIST回路により生成された前記BIST信号を選択して後段のスキャンセルに出力することができる。
また、前記BIST回路は、前記出力側スキャンセル群から前記結果信号をパラレルに受け取ることができ、結果信号をパラレルに受け取ることでテスト時間を短縮化することができる。
更に、前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有することができる。
更にまた、前記第2のテストモードは、前記入力側スキャンセル群が実動作周波数のクロックに同期して前記BIST信号を前記メモリブロックに出力し、前記出力側スキャンセル群が実動作周波数のクロックに同期して前記メモリブロックから前記結果信号を受け取ることができる。
また、前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有し、前記第1のスキャン回路は、メモリマクロにテストデータを書き込むための書き込み用BIST信号を前記入力側スキャンセル群に一旦格納し、実動作周波数のクロックに同期して前記メモリマクロへ前記書き込み用BIST信号を出力し、前記メモリマクロから前記テストデータを読み出す読み出し用BIST信号を一旦格納し、前記実動作周波数のクロックに同期して前記読み出し用BIST信号を前記メモリマクロへ出力し、前記第2のスキャン回路は、実動作周波数のクロックに同期して前記メモリマクロから読み出された前記テストデータを一旦格納し、前記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信号をパラレルに受け取ることができ、メモリマクロ単体のテストを短時間で実行可能となる。
本発明によれば、集積回路が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には、入力側スキャンフリップフロップ9Aの各スキャンフリップフロップ9aに対してそれぞれ設けられたm個(mは整数)、本実施の形態においてはm=4のセレクタ4からなるセレクタ群が第1のセレクタとして設けられている。各セレクタ4には、制御信号として第1の選択信号SELAが入力され、その入力にはスキャン入力信号及びパラレルアクセス用のBIST信号が入力される。第1の選択信号SELAは、第1のテストモードと第2のテストモードとで論理レベルが異なる信号である。また、スキャン入力信号は、前段のスキャンフリップフロップ9又は9aから入力される。また、BIST信号は、パラレルアクセスメモリBIST回路3にて生成されたRAMマクロ2をテストするテスト信号である。
各セレクタ4は、第1の選択信号SELAの論理レベルに応じて上記スキャン入力信号又はBIST信号を選択出力する。すなわち、各セレクタ4には、第1のテストモードでは、論理レベルが例えば「0」の第1の選択信号SELAが入力され、前段のスキャンフリップフロップ9又は9aから送られるスキャン入力信号を選択して後段のスキャンフリップフロップ9aに出力する。また、第2のテストモードでは、論理レベルが例えば「1」の第1の選択信号SELAが入力され、パラレルアクセスメモリBIST回路3からのBIST信号を選択して対応するスキャンフリップフロップ9aに出力する。
次に、第1のスキャン回路7の入力側スキャンフリップフロップ群9Aを構成するスキャンフリップフロップ9aについて説明する。図2は、入力側スキャンフリップフロップ群9Aの一部分の詳細を示す図である。スキャンフリップフロップ9aは、通常のスキャンフリップフロップと同様に構成されたものである。すなわち、スキャンフリップフロップ9aは、クロック入力端子CK、データ入力端子D、スキャン入力/BIST入力端子SI/B、スキャン出力端子SO、出力端子Q、及びスキャンモードコントロール(SMC)端子を有し、シフトモードとキャプチャモードとを有する。また、出力側スキャンフリップフロップ9Bを構成するスキャンフリップフロップ9bもスキャンフリップフロップ9aと同様の構成を有する。
クロック入力端子CKには、クロックが入力される。データ入力端子Dには、通常動作の際にデータが入力される。スキャン入力/BIST入力端子SI/Bには、第1のテストモードであって、シフトモードのときには、セレクタ4からテスト信号が入力され、第2のテストモードではセレクタ4からBIST信号が入力される。スキャン出力端子SO及び出力端子Qは、キャプチャモードにおいて保持しているデータをクロックCKのタイミングで出力する。SMC信号は、保持しているデータをスキャン出力端子SOから出力するシフトモード又は出力端子Qから出力するキャプチャモードを選択制御する信号である。なお、SMC信号は、通常動作モードではキャプチャモードと同一の論理レベルとなる。
セレクタ4は、その出力が各スキャンフリップフロップ9aのスキャン入力/BIST入力端子SI/Bに接続され、一方の入力がスキャンフリップフロップ9aのスキャンアウト端子SOと接続され、他方の入力がパラレルアクセスメモリBIST回路3と接続されている。
また、スキャンフリップフロップ9aは、データ出力端子Qが第1の組み合わせ回路5に接続され、スキャンフリップフロップ9bは、データ入力端子Dが第2の組み合わせ回路6と接続されている。スキャンフリップフロップ9、9a、9bは、シフトモードでは、前段のスキャンフリップフロップから後段のスキャンフリップフロップにデータをシフトさせる。一方、キャプチャモードでは、スキャンフリップフロップ9aは、取り込んだデータをデータ出力端子Qから第1の組み合せ回路5に出力し、スキャンフリップフロップ9bは、データ入力端子Dから、第2の組み合わせ回路6からのデータが入力される。
パラレルアクセスメモリBIST回路3は、各セレクタ4と接続され、この各セレクタ4を介して入力側スキャンフリップフロップ群9AにBIST信号をパラレルに供給する。また、パラレルアクセスメモリBIST回路3は、第2のスキャン回路8の出力側スキャンフリップフロップ群9Bから、メモリブロック10からの結果信号をパラレルで受け取る。なお、パラレルアクセスメモリBIST回路3は、第2のスキャン回路8のスキャンチェーンのうち、出力側スキャンフリップフロップ群9Bの出力又はそれより後段のスキャンフリップフロップ9の出力と接続し、結果信号をスキャンフリップフロップのシフト動作により、パラレルアクセスメモリBIST回路3へシリアルに入力するように構成してもよい。この場合は、パラレルアクセスBIST回路3にシリアル信号をパラレル信号に変換する変換器などを設ければよい。
このように構成された集積回路1は、第1のテストモードでは、公知のスキャンテストが実行される。つまり、スキャン回路7、スキャン回路8は、集積回路1のスキャン入力端子21とスキャン出力端子22との間、スキャン入力端子31とスキャン出力端子32との間に設けられるスキャンチェーンの一部として用いられる。
また、第2のテストモードでは、パラレルアクセスメモリBIST回路3がRAMマクロ2のテスト対象のアドレスへの書き込み命令となるBIST信号を生成して出力する。このBIST信号はセレクタ4を介して入力側スキャンフリップフロップ群9Aの各スキャンフリップフロップ9aにパラレルに選択出力される。そして、このBIST信号が組み合わせ回路5を介してRAMマクロ2へ出力され、RAMマクロ2のテストアドレスへテストデータが書き込まれる。次に、パラレルアクセスメモリBIST回路3は、上記テストアドレスと同一アドレスからの読み出し命令となるBIST信号を生成して出力する。このBIST信号もセレクタ4にて入力側スキャンフリップフロップ群9Aへ選択出力される。そして、BIST信号が組み合わせ回路5を介してRAMマクロ2に出力され、これによりRAMマクロ2を制御して上記テストアドレスからテストデータの読み出しを行う。読み出されたテストデータは組み合わせ回路6に出力され、論理演算され結果信号とされる。この結果信号は、第2のスキャン回路8から出力側スキャンフリップフロップ9Bに出力され、出力側スキャンフリップフロップ9BからパラレルアクセスメモリBIST回路3へパラレルに転送される。パラレルアクセスメモリBIST回路3は、読み出されたテストデータが出力側の組み合わせ回路6で論理演算された結果信号と、期待値とを比較して一致するか否かを判定する。
ここで、第2のテストモードでは、入力側スキャンフリップフロップ群9AにセットされたBIST信号を出力する間、RAMマクロ2からテストデータを読み出す間は、上述したキャプチャモードとされ、実動作周波数で取り込んだBIST信号を出力又は結果信号を取り込む動作を実行する。
次に、第2のテストモードにおけるパラレルアクセスメモリBIST回路3によるテスト方法について、図3及び図4を用いて詳細に説明する。図3は、集積回路1の第2のテストモードにおけるテスト方法を示すフローチャートである。また、図4は、第2のテストモードにおいて、スキャンフリップフロップ9aに入力されるSMC信号、クロックCKを示す波形図である。第2のテストモード時には、セレクタ4に例えば論理が「1」の第1の選択信号SELAが入力され、パラレルアクセスメモリBIST回路3からのBIST信号を選択するよう設定される(ステップS11)。
先ず、パラレルアクセスメモリBIST回路3は、書き込み命令となるBIST信号を生成する。この書き込み命令となるBIST信号は、パラレルアクセスメモリBIST回路3からパラレルに出力され、各セレクタ4がスキャン回路7内の入力側スキャンフリップフロップ群9AにこのBIST信号を選択出力する(ステップS12)。ここで第2のテストモードでは、スキャンフリップフロップ9aは、入力側スキャンフリップフロップ群9AにBIST信号をセットするまでの間は、図4(a)に示すように、SMC信号を例えば論理「1」として上述したシフトモードとする。スキャンフリップフロップ9aのスキャン入力/BIST入力端子SI/Bからセレクタ4を介してBIST信号供給されるためである。なお、シフトモードでは、クロックCKの周波数は、集積回路の実動作周波数とは異なる周波数としてもよい。このシフトモードでは、クロックCKに同期してパラレルアクセスメモリBIST回路3からBIST信号が出力され、スキャン回路7の入力側スキャンフリップフロップ群9Aに書き込み命令のBIST信号が格納される。
次に、図4(a)に示すようにSMC信号を、例えば論理「0」としてキャプチャモードとする。その後、集積回路1のクロックCKを実動作周波数で2クロックパルス供給する。最初のパルスの立ち上がりに同期して入力側スキャンフリップフロップ群9Aから書き込み命令用BIST信号が組み合せ回路5に出力される。このBIST信号は、組み合わせ回路5内で論理演算されて書き込みアドレス、書き込みデータ(テストデータ)及び書き込み制御信号からなる書き込み用コマンドに変換されRAMマクロ2に供給され、テストデータの書き込みが行われる(ステップS13)。
次に、パラレルアクセスメモリBIST回路3が読み出し命令を生成する。この際入力側スキャンフリップフロップ群9Aは図4(b)に示すように、シフトモードとされる。そして、パラレルアクセスメモリBIST回路3にて生成された読み出し命令はBIST信号としてステップS12と同様、クロックCKに同期してパラレルに出力され、セレクタ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)。
次に、出力側スキャンフリップフロップ9Bの各スキャンフリップフロップ9bにクロックCKを供給することにより、メモリブロック10から読み出されたテストデータが第2の組み合わせ回路6にて論理演算された結果信号が、スキャンフリップフロップ9bを順次シフトしてパラレルアクセスメモリBIST回路3へパラレルに送信される(ステップS16)。
パラレルアクセスメモリBIST回路3は受け取った結果信号を期待値と比較し、一致しているか否かを判定する。一致している場合には一致判定信号を所定の論理レベル(例えば論理1)として出力する(ステップS17)。ここで、判定信号は、例えば外部へ出力するようにしてもよく、又は一致しなかった場合にそのアドレスを集積回路1内に設けた図示しないレジスタに格納するようにしてもよい。
パラレルアクセスメモリBIST回路3は、予め設定されたすべてのテストアドレスについてテストが完了したか否かを判断し、設定されたテストアドレスが全てテストされた場合にはシリアクセスBISTによるテストを終了する。この際、テストの終了を集積回路1の外部へ告知するようにしてもよい。テストアドレスのうち未テストのアドレスが有る場合には次のテストアドレスに対してステップS12以降が実行される(ステップS18)。なお、図4に示すSMC信号及びクロックCKは、入力側スキャンフリップフロップ群9Aに供給される信号として説明したが、これを出力側スキャンフリップフロップ9Bへ供給する信号と共用することも可能である。この場合、図4(b)において、SMC信号をキャプチャモードとしてクロックCKを実動作周波数で3クロックパルス供給した後、キャプチャモードとしたまま、第2の組み合わせ回路6からの結果信号を出力するためのクロックCKを供給すればよい。この結果信号を出力するためのクロックCKの周波数は、集積回路の実動作周波数とは異なる周波数としてもよい。
以上に述べたように、本実施の形態においては、パラレルアクセスメモリBIST回路3がRAMマクロ2に対する書き込み又は読み出し用コマンドとなるパラレルにBIST信号を生成している。このパラレルのBIST信号は、スキャンフリップフロップ群9Aを構成する各スキャンフリップフロップ9aに対してそれぞれ設けられた各セレクタ4により、各スキャンフリップフロップ9aに選択出力可能となっている。そして、入力側スキャンフリップフロップ群9AがBIST信号を一旦格納した後、組み合せ回路5を介してBIST信号を出力する。これにより、メモリブロック10内のRAMマクロ2へテストデータを書き込む動作を実動作周波数のクロックに同期して実行することができると共に、スキャンフリップフロップを流用することによってフリップフロップを新たに設ける必要がなく、BIST回路の設置による回路規模の増大を抑制することができる。
また、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にパラレル入力、設定することができる。すなわち、入力側スキャンフリップフロップ群9Aの各スキャンフリップフロップ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の実動作周波数での動作テストを高効率化することができる。
また、パラレルアクセスメモリBIST回路3は、乱数発生器を用いてアドレス及びデータを生成することができる他、例えばアドレスを最小のアドレスから昇順に生成又は最大のアドレスから降順に生成してもよい。また、その他の予め定められたアルゴリズムに従ってアドレスを生成するようにしてもよく、更に複数のアドレス生成パタンから選択できるようにしてもよい。
また、データ生成についても、例えばマーチングテストに適したように生成してもよく、チェッカーボードテストに適したように生成してもよい。又は、その他の予め定められたアルゴリズムに従ってデータを生成するようにしてもよく、更に複数のデータ生成パタンから選択できるようにしてもよい。
また、パラレルアクセスメモリBIST回路3により、RAMマクロ2の一のアドレス毎にテストデータを書き込み、読み出し、期待値との一致判定を行うように構成してもよく、全てのテストアドレスに対して書き込んだ後に一のアドレス毎に読み出し、期待値との一致判定を行うようにしてもよい。又はいずれかを選択できるようにしてもよい。
更に、本実施の形態においては、書き込み又は読み出し用のコマンドを入力するために1クロック、RAMマクロ2にアクセス又はアクセスしてテストデータを書き込みするために1クロック、RAMマクロ2からデータを読み出すために1クロックとして説明したが、RAMマクロ2がDRAMなどであって、書き込み又は読み出し制御用のコマンドを入力するために1クロック以上を必要とする場合は、入力側スキャンフリップフロップ群9Aの各スキャンフリップフロップ9aの出力に、必要な個数のフリップフロップを設けておき、これらを使用してRAMマクロ2に対して書き込み用又は読み出し用のコマンドを出力するようにしてもよい。
次に、本実施の形態における変形例について説明する。図5は、図1に示す実施の形態21の変形例を示す集積回路41を示すブロック図である。なお、図5に示す本変形例及び後述する図7、図8に示す他の実施の形態において、図1に示す実施の形態1と同一の構成要素には同一の符号を付してその詳細な説明は省略する。
図5に示すように、本変形例の集積回路41は、複数のセレクタ4の替わりに、複数のセレクタ44を有する。セレクタ44も、セレクタ4と同様、入力側スキャンフリップフロップ群9Aを構成する各スキャンフリップフロップ9aに対して設けられる。ここで、各セレクタ44の出力は、各スキャンフリップフロップ9aのデータ入力端子Dと接続されている。各セレクタ44の一方の入力にはパラレルアクセスメモリBIST回路43からBIST信号がパラレルに供給され、他方の入力には、通常モードにおいてデータが入力される。このセレクタ44には、テストモードと通常モードとを切り替え制御する選択信号SELCが入力され、第2のテストモードでは、BIST信号を選択してスキャンフリップフロップ9aに出力する。また、スキャンフリップフロップ9aは、第2のテストモードの間は、図6に示すようにキャプチャモードとされる。
そして、入力側スキャンフリップフロップ群9Aの各スキャンフリップフロップ9aは、最初の1クロックパルスの立ち上がりに同期してセレクタ44を介して入力されるBIST信号を格納する(図6(a)の期間t1)。そして、2クロックパルス目の立ち上がりに同期して入力側スキャンフリップフロップ群9Aから書き込み命令用BIST信号が組み合せ回路5に出力され、組み合わせ回路5内で論理演算され書き込み用コマンドに変換されRAMマクロ2に供給され、テストデータの書き込みが行われる(図6(a)の期間t2)。
その後、書き込んだテストデータをRAMマクロ2から読み出す。この場合、図6(b)に示すように、SMC信号をキャプチャモードとしたまま、集積回路1にクロックCKを実動作周波数で5クロックパルス供給する。最初のクロックパルスの立ち上がりに同期してセレクタ44を介して入力されたBIST信号をスキャンフリップフロップ9aに格納する(図6(b)の期間t3)。そして、2発目のクロックパルス目の立ち上がりに同期して、入力側スキャンフリップフロップ群9Aから読み出し命令用BIST信号が組み合せ回路5に出力される。このBIST信号は、組み合わせ回路5内で論理演算され読み出し用コマンドに変換されてRAMマクロ2に供給される。次いで、次のクロックパルスの立ち上がりに同期して、上述のようにして書き込まれたテストデータの読み出しが行われる。読み出されたテストデータは、組み合わせ回路6へ出力され、この組み合せ回路6にて論理演算がなされ、メモリブロック10のテスト結果信号として4発目のクロックパルスの立ち下がりまでにスキャン回路8内の出力側スキャンフリップフロップ群9Bを構成するスキャンフリップフロップ9bに格納される(図6(b)の期間t4)。そして、5発目のクロックパルスの立ち上がりに同期して、取り込んだ結果信号をパラレルアクセスBIST回路3に出力する(図6(b)の期間t5)。なお、上述したように、図6(a)に示すクロックCKの1発目、図6(b)に示すクロックCKの1発目及び5発目のクロックCKは、実動作周波数とは異なる周波数のクロックパルスCKであってもよい。
このように構成された本変形例においても上述の実施の形態と同様の効果を奏し、入力側スキャンフリップフロップ群9Aに直接BIST信号をパラレルに入力し設定することができるので、メモリブロック10の実動作周波数でのテストを高速化することができる。
実施の形態2.
図7は、本発明の実施の形態2にかかる集積回路を示すブロック図である。本実施の形態における集積回路51は、図1の構成に加えて、第2のBIST回路としてのパラレルアクセスメモリBIST回路53及びセレクタ群54とを更に備え、第1及び第2のテストモードに加え、図9に示す従来の集積回路101と同様、パラレルアクセスメモリBIST回路によるRAMマクロ2単体の動作テストを行う第3のテストモードを設けたものである。
図7は、本発明の実施の形態2にかかる集積回路を示すブロック図である。本実施の形態における集積回路51は、図1の構成に加えて、第2のBIST回路としてのパラレルアクセスメモリBIST回路53及びセレクタ群54とを更に備え、第1及び第2のテストモードに加え、図9に示す従来の集積回路101と同様、パラレルアクセスメモリBIST回路によるRAMマクロ2単体の動作テストを行う第3のテストモードを設けたものである。
図7において、セレクタ群54はRAMマクロ2のn(nは正整数)個の入力端子に対応して設けられたn個のセレクタからなり、第2の選択信号SELBにより、第2のテストモードと第3のテストモードとで選択出力する信号を切り替える。すなわち、第2のテストモードでは、第2の選択信号SELBを例えば論理「0」に設定することにより、第1のスキャン回路7から出力されるBIST信号が組み合せ回路5にて論理演算されたn個の信号を選択してRAMマクロ2へ出力する。第3のテストモードでは第2の選択信号SELBを論理「1」に設定することにより、パラレルアクセスメモリBIST53にて生成されたn個のBIST信号を前記RAMマクロ2へ出力する。
パラレルアクセスメモリBIST回路53は第3のテストモードではBIST信号を生成してセレクタ群54にパラレル出力する。セレクタ群54はこれをRAMマクロ2に選択出力して、指定のアドレスにテストデータを書込み、これを読み出させる。パラレルアクセスメモリBIST回路53は、読み出されたテストデータのパラレル出力を受け取り、それぞれの期待値と照合して一致判定する。
ここで、パラレルアクセスメモリBIST回路53にて生成されるBIST信号は、書き込み時では書き込みアドレス、書き込みデータ(テストデータ)、書き込み制御信号からなる書き込み用コマンドであり、読み出し時では読み出しアドレス、読み出し制御信号からなる読み出し用コマンドである。
一方、実施の形態1と同様のパラレルアクセスメモリBIST回路3にて生成されるBIST信号は、組み合わせ回路5にて論理演算されて書き込み/読み出し用コマンドとされるBIST信号である。また、パラレルアクセスメモリBIST回路3には、読み出されたテストデータが組み合わせ回路6にて論理演算されたものが結果信号として入力されるため、テストデータが論理演算された値を期待値とし、結果信号と一致判定される。
本実施例における第1のテストモード及び第2のテストモードでの動作は上述の実施の形態1の動作と同様である。また、第3のテストモードの動作は図9に示す従来の集積回路101におけるパラレルアクセスメモリBIST回路によるRAMマクロの動作テストと同様である。
すなわち、パラレルアクセスメモリBIST回路53を用いたRAMマクロ2の動作テストでは、パラレルアクセスメモリBIST回路53により書き込みアドレス、書き込みデータ(テストデータ)及び書き込み制御信号からなるBIST信号を所定の手順により生成する。
このBIST信号がクロックCKに同期してパラレルアクセスメモリBIST回路53からセレクタ群54の各セレクタを介してRAMマクロ2にパラレル入力されRAMマクロ2の書き込みアドレスにテストデータの書き込みが行われる。
その後、書き込んだテストデータを読み出し、読み出したテストデータと期待値との一致判定を行う。このために、パラレルアクセスメモリBIST回路3により、再び所定の手順にて読み出しアドレス及び読み出し制御信号からなるBIST信号を生成する。そして、クロックに同期してセレクタ群54の各セレクタを介してRAMマクロ2に入力する。これによりRAMマクロ2から、指定された読み出しアドレスのテストデータが読み出され、パラレルアクセスメモリBIST回路53へパラレル出力される。
読み出されたテストデータはパラレルアクセスメモリBIST回路53内で期待値と照合され、一致する場合にはパラレルアクセスメモリBIST回路53はRAMマクロ102における書き込み/読み出し動作が正常に行われたと判断する。
本実施の形態においては、第2のテストモードと第3のテストモードとを使い分けることでメモリブロック10のテストを更に効率よく行うことができる。例えば、第3のテストモードにて、パラレルアクセスメモリBIST回路53によりRAMマクロ2の全アドレスの書き込み/読み出し動作テストを行い、第2のテストモードにて、パラレルアクセスメモリBIST回路3により組み合わせ回路5、組み合わせ回路6の論理演算動作及びメモリブロック10全体におけるクリティカルパスの実動作クロック周波数でのテストを行うことで、実施の形態1と比較して故障検出率を殆ど低下させずに更に効率よく短時間でテストすることが可能となる。
実施の形態3.
次に、本発明の実施の形態3について説明する。上述の実施の形態1及び実施の形態2における第2のテストモードでは、入力側スキャンフリップフロップ群9Aを介してBIST信号を供給し、出力側スキャンフリップフロップ群9Bを介して結果信号を受け取ることでメモリブロックの実動作周波数でのテストを実現する。ここで、メモリブロック10の実動作周波数でのテストは、入力側スキャンフリップフロップ群9A及び出力側スキャンフリップフロップ群9Bを介してテスト信号をやり取りすることができれば可能である。そこで、本実施の形態においては、実施の形態1及び実施の形態2において設けたパラレルアクセスメモリBIST回路3の代わりにシリアルアクセスメモリBIST回路63を設け、入力側スキャンフリップフロップ群9Aに対してBIST信号をシリアルに供給するものである。
次に、本発明の実施の形態3について説明する。上述の実施の形態1及び実施の形態2における第2のテストモードでは、入力側スキャンフリップフロップ群9Aを介してBIST信号を供給し、出力側スキャンフリップフロップ群9Bを介して結果信号を受け取ることでメモリブロックの実動作周波数でのテストを実現する。ここで、メモリブロック10の実動作周波数でのテストは、入力側スキャンフリップフロップ群9A及び出力側スキャンフリップフロップ群9Bを介してテスト信号をやり取りすることができれば可能である。そこで、本実施の形態においては、実施の形態1及び実施の形態2において設けたパラレルアクセスメモリBIST回路3の代わりにシリアルアクセスメモリBIST回路63を設け、入力側スキャンフリップフロップ群9Aに対してBIST信号をシリアルに供給するものである。
図8は、本発明の実施の形態3にかかる集積回路61を示すブロック図である。集積回路61は、BIST信号をシリアルに出力するシリアルアクセスメモリBIST回路63を有する。そして、入力側スキャンフリップフロップ群9Aの前段以前に、このBIST信号を選択して入力側スキャンフリップフロップ群9Aへ選択出力するためのセレクタ64を有している。すなわち、セレクタ64は、第1の選択信号SELAにより、第1のテストモードでは、前段のスキャンフリップフロップ9からのスキャンテスト信号を後段のスキャンフリップフロップ9又は9aに選択出力する。一方、第2のテストモードでは、シリアルアクセスメモリBIST回路63からのBIST信号をスキャンフリップフロップ9又は9aに選択出力する。
この集積回路61は、実施の形態1におけるパラレルアクセスメモリBIST回路3をシリアルアクセスメモリBIST回路63に置き換えたものであって、BIST信号がシリアルで出力され、結果信号をシリアルで受け取ること以外は、実施の形態1と同様に動作する。すなわち、スキャンフリップフロップ9aは、第1のテストモードでは、受け取ったスキャンテスト信号を後段のスキャンフリップフロップ9aにシフト転送する。第2のテストモードでは、実動作周波数のクロック信号に同期して組み合わせ回路5にBIST信号を出力する。BIST信号が組み合わせ回路5にて所定の論理演算がなされ、書き込み又は読み出し用コマンドとされ、RAMマクロ2のテストを実行する。読み出し用コマンドの場合は、組み合わせ回路6を介してスキャンフリップフロップ9bに結果信号が出力され、これがシリアルアクセスメモリBIST回路63へシリアルに転送され、期待値と一致判定される。
本実施の形態においては、実施の形態1と同様の効果を奏し、スキャンチェーンの途中にセレクタ64を設けることにより、スキャンフリップフロップ群9Aにメモリブロック10をテストするためのデータを、スキャン入力端子21を介してではなく、スキャンチェーンの途中から入力することができるため、入力側スキャンフリップフロップ群9Aに対して、メモリブロック10をテストするためのデータを極めて短時間で入力、設定することができる。
また、実施の形態2の如く、組み合わせ回路5とRAMマクロ2との間にセレクタ群を設け、RAMマクロ2単体のBISTを行うパラレルアクセスメモリBIST回路を設け、第3のテストモードとして実行可能に構成してもよい。これにより、RAMマクロ2単体のBISTを高速に実行し、また、メモリブロック2に対し、実動作周波数でのテストが可能となる。更に、これらのテストを組み合せることで、RAMマクロ2の故障であるか、組み合わせ回路5、6の故障であるかを発見することも可能である。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、本実施の形態においては、メモリブロックのメモリマクロは、RAMマクロとして説明したが、このRAMマクロはSRAMマクロ、DRAMマクロ、不揮発性RAMマクロの何れであってもよい。また、読み出し専用のROM等であってもよい。
また、本実施の形態において、スキャンフリップフロップは、シフトモードではクロック端子から実動作よりも周波数の低いスキャンクロックが入力され、キャプチャモードでは上記クロック端子から実動作周波数のクロックが入力するように構成されているものとしたが、スキャンフリップフロップがスキャンクロック端子と通常動作用のクロック端子を有し、シフトモードではスキャンクロック端子からクロックを受けて動作し、キャプチャモードでは通常動作用のクロック端子からクロックを受けて動作するものに代替することも可能である。
更に、スキャンフリップフロップは、図2においてスキャンアウト端子SOとデータ出力端子Qとを1個の端子で兼用してもよい。
更にまた、図7に示すパラレルアクセスメモリBIST回路3とパラレルアクセスメモリBIST回路53とを兼用し、外部からのテストモード信号により、テスト機能を切り換えるようにしてもよい。この場合、外部からのテストモードの指定により書き込み/読み出し用コマンドのパラレルBIST信号を出力するか、組み合せ回路5にて論理演算されて書き込み/読み出し用コマンドとなるパラレルBIST信号で出力するかを切り換え可能なBIST回路として構成すればよい。
また、例えば、集積回路が複数のRAMマクロを有する場合などにおいては、パラレルアクセスメモリBIST回路3とシリアルアクセスメモリBIST回路63とを組み合せて使用するようにしてもよい。
3,43 パラレルアクセスメモリBIST回路
4,44,64 セレクタ
5,6 組み合せ回路 7,8 スキャン回路
9,9a,9b スキャンフリップフロップ
9A 入力側スキャンフリップフロップ群
9B 出力側スキャンフリップフロップ群
10 メモリブロック
22,32 スキャン出力端子 21,31 スキャン入力端子
53 パラレルアクセスメモリBIST回路
54 セレクタ群
63 シリアルアクセスBIST回路
4,44,64 セレクタ
5,6 組み合せ回路 7,8 スキャン回路
9,9a,9b スキャンフリップフロップ
9A 入力側スキャンフリップフロップ群
9B 出力側スキャンフリップフロップ群
10 メモリブロック
22,32 スキャン出力端子 21,31 スキャン入力端子
53 パラレルアクセスメモリBIST回路
54 セレクタ群
63 シリアルアクセスBIST回路
Claims (11)
- メモリマクロを含むメモリブロックと、
スキャンパスを構成する複数のスキャンセルを有するスキャン回路と、
BIST信号を生成し、当該BIST信号により前記メモリブロックをテストした結果信号を受け取り期待値と一致するか否かを判定するBIST回路とを有し、
前記複数のスキャンセルは、前記メモリブロックへデータを出力可能な入力側スキャンセル群と、前記メモリブロックからデータを受け取り可能な出力側スキャンセル群とを有し、
前記入力側スキャンセル群の各スキャンセルは、第1のテストモードでは前段のスキャンセルからのスキャンテスト信号を受け取り、第2のテストモードでは前記BIST回路から前記BIST信号をパラレルに受け取り、
前記出力側スキャンセル群の各スキャンセルは、前記第1のテストモードでは前段のスキャンセルからスキャンテスト信号を受け取り、前記第2のテストモードでは前記メモリブロックから前記結果信号を受け取る
ことを特徴とする集積回路。 - 前記メモリブロックは、前記入力側スキャンセル群と前記メモリマクロとの間及び/又は前記メモリマクロと前記出力側スキャンセル群との間に設けられる組み合わせ回路を更に有する
ことを特徴とする請求項1記載の集積回路。 - 前記第2のテストモードで前記BIST信号を選択して前記入力側スキャンセル群の各スキャンセルに出力する第1のセレクタを有する
ことを特徴とする請求項1又は2に記載の集積回路。 - 前記第1のセレクタは、前記入力側スキャンセル群の各スキャンセルの前段にそれぞれ設けられたm個のセレクタ群であって、各m個のセレクタは、前記第1のテストモードでは前段のスキャンセルから送られる前記スキャンテスト信号を選択して後段のスキャンセルに出力し、前記第2のテストモードでは前記BIST回路により生成された前記BIST信号を選択して後段のスキャンセルに出力する
ことを特徴とする請求項3記載の集積回路。 - 前記BIST回路は、前記出力側スキャンセル群から前記結果信号をパラレルに受け取る
ことを特徴とする請求項1又は2に記載の集積回路。 - 前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有する
ことを特徴とする請求項1又は2に記載の集積回路。 - 前記第2のテストモードは、前記入力側スキャンセル群が実動作周波数のクロックに同期して前記BIST信号を前記メモリブロックに出力し、前記出力側スキャンセル群が実動作周波数のクロックに同期して前記メモリブロックから前記結果信号を受け取る
ことを特徴とする請求項1記載の集積回路。 - 前記スキャン回路は、前記入力側スキャンセル群を有する第1のスキャン回路と、前記出力側スキャンセル群を有する第2のスキャン回路とを有し、
前記第1のスキャン回路は、メモリマクロにテストデータを書き込むための書き込み用BIST信号を前記入力側スキャンセル群に一旦格納し、実動作周波数のクロックに同期して前記メモリマクロへ前記書き込み用BIST信号を出力し、前記メモリマクロから前記テストデータを読み出す読み出し用BIST信号を一旦格納し、前記実動作周波数のクロックに同期して前記読み出し用BIST信号を前記メモリマクロへ出力し、
前記第2のスキャン回路は、実動作周波数のクロックに同期して前記メモリマクロから読み出された前記テストデータを一旦格納し、前記BIST回路へパラレルに出力する
ことを特徴とする請求項7記載の集積回路。 - 前記メモリマクロの入力側に設けられる第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信号をパラレルに受け取る
ことを特徴とする請求項9又は請求項10記載の集積回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004258024A JP2006073917A (ja) | 2004-09-06 | 2004-09-06 | 集積回路 |
US11/213,766 US20060053356A1 (en) | 2004-09-06 | 2005-08-30 | Integrated circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004258024A JP2006073917A (ja) | 2004-09-06 | 2004-09-06 | 集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006073917A true JP2006073917A (ja) | 2006-03-16 |
Family
ID=35997560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004258024A Pending JP2006073917A (ja) | 2004-09-06 | 2004-09-06 | 集積回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20060053356A1 (ja) |
JP (1) | JP2006073917A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106019119A (zh) * | 2015-03-27 | 2016-10-12 | 株式会社巨晶片 | 半导体集成电路的试验电路及使用其的试验方法 |
JPWO2016203505A1 (ja) * | 2015-06-18 | 2017-09-28 | ルネサスエレクトロニクス株式会社 | 半導体装置及び診断テスト方法 |
US10650905B2 (en) | 2017-12-21 | 2020-05-12 | Canon Kabushiki Kaisha | Inspection apparatus, image sensing apparatus, electronic equipment, and transportation equipment |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118972A (ja) * | 2009-12-02 | 2011-06-16 | Renesas Electronics Corp | 半導体集積回路のテスト方法及び半導体集積回路 |
US9003255B2 (en) | 2011-07-01 | 2015-04-07 | Stmicroelectronics International N.V. | Automatic test-pattern generation for memory-shadow-logic testing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63108747A (ja) * | 1986-10-27 | 1988-05-13 | Nec Corp | ゲ−トアレイ集積回路 |
JP2001297598A (ja) * | 2000-04-11 | 2001-10-26 | Toshiba Corp | 半導体集積回路装置、及び半導体集積回路装置の自己テスト方法 |
JP2004206751A (ja) * | 2002-12-24 | 2004-07-22 | Matsushita Electric Ind Co Ltd | 半導体装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002202348A (ja) * | 2000-12-28 | 2002-07-19 | Nec Microsystems Ltd | 論理集積回路のテスト回路およびその方法 |
EP1231608A1 (en) * | 2001-02-07 | 2002-08-14 | STMicroelectronics Limited | Built-in test circuit and method for an integrated circuit |
KR100442699B1 (ko) * | 2002-07-19 | 2004-08-02 | 삼성전자주식회사 | 인접 수동소자 칩이 전기적으로 연결된 웨이퍼, 수동소자및 이를 이용한 반도체 패키지 |
-
2004
- 2004-09-06 JP JP2004258024A patent/JP2006073917A/ja active Pending
-
2005
- 2005-08-30 US US11/213,766 patent/US20060053356A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63108747A (ja) * | 1986-10-27 | 1988-05-13 | Nec Corp | ゲ−トアレイ集積回路 |
JP2001297598A (ja) * | 2000-04-11 | 2001-10-26 | Toshiba Corp | 半導体集積回路装置、及び半導体集積回路装置の自己テスト方法 |
JP2004206751A (ja) * | 2002-12-24 | 2004-07-22 | Matsushita Electric Ind Co Ltd | 半導体装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106019119A (zh) * | 2015-03-27 | 2016-10-12 | 株式会社巨晶片 | 半导体集成电路的试验电路及使用其的试验方法 |
JP2016186428A (ja) * | 2015-03-27 | 2016-10-27 | 株式会社メガチップス | 半導体集積回路の試験回路及びこれを用いた試験方法 |
JPWO2016203505A1 (ja) * | 2015-06-18 | 2017-09-28 | ルネサスエレクトロニクス株式会社 | 半導体装置及び診断テスト方法 |
CN107430167A (zh) * | 2015-06-18 | 2017-12-01 | 瑞萨电子株式会社 | 半导体装置和诊断测试方法 |
US10281525B2 (en) | 2015-06-18 | 2019-05-07 | Renesas Electronics Corporation | Semiconductor device and diagnostic test method for both single-point and latent faults using first and second scan tests |
US10650905B2 (en) | 2017-12-21 | 2020-05-12 | Canon Kabushiki Kaisha | Inspection apparatus, image sensing apparatus, electronic equipment, and transportation equipment |
Also Published As
Publication number | Publication date |
---|---|
US20060053356A1 (en) | 2006-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8145964B2 (en) | Scan test circuit and scan test control method | |
US7254762B2 (en) | Semiconductor integrated circuit | |
KR100597771B1 (ko) | 메모리용 테스트 회로 | |
JP2009270832A (ja) | 論理回路 | |
US20110060952A1 (en) | Semiconductor integrated circuit | |
JP2007205933A (ja) | 半導体集積回路 | |
US7484154B2 (en) | Semiconductor integrated circuit, method for testing semiconductor integrated circuit, and computer readable medium for the same | |
US20060041807A1 (en) | Integrated circuit | |
US7380183B2 (en) | Semiconductor circuit apparatus and scan test method for semiconductor circuit | |
US20060053356A1 (en) | Integrated circuit | |
JP2009216619A (ja) | 半導体集積回路装置 | |
JPH10111346A (ja) | 半導体集積回路のスキャン試験方法 | |
US7213184B2 (en) | Testing of modules operating with different characteristics of control signals using scan based techniques | |
JP2001297598A (ja) | 半導体集積回路装置、及び半導体集積回路装置の自己テスト方法 | |
US7155649B2 (en) | Scan test control method and scan test circuit | |
US6629277B1 (en) | LSSD interface | |
JP4919768B2 (ja) | 集積回路装置 | |
EP0933644A1 (en) | Device scan testing | |
JP4724774B2 (ja) | 半導体回路装置、メモリテスト回路及び半導体回路装置の試験方法 | |
JP5158087B2 (ja) | 半導体集積回路装置および半導体集積回路装置の試験方法 | |
JP2002139557A (ja) | 半導体装置 | |
JP2005283207A (ja) | 半導体集積回路装置 | |
JPH11111924A (ja) | マクロテスト回路 | |
JP2004294424A (ja) | スキャンテスト制御方法、及びスキャンテスト回路 | |
KR100261439B1 (ko) | 다중 바운더리 스캔회로 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070814 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110106 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110531 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111004 |