JP2004279310A - 半導体集積回路 - Google Patents
半導体集積回路 Download PDFInfo
- Publication number
- JP2004279310A JP2004279310A JP2003073516A JP2003073516A JP2004279310A JP 2004279310 A JP2004279310 A JP 2004279310A JP 2003073516 A JP2003073516 A JP 2003073516A JP 2003073516 A JP2003073516 A JP 2003073516A JP 2004279310 A JP2004279310 A JP 2004279310A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- signal
- logic
- test
- address
- 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
Abstract
【課題】メモリを備える場合であっても、スキャンテスト方式により、メモリ周辺のロジックのテストや、メモリとロジックとの間の経路のテストを簡単に行うことができる半導体集積回路を提供する。
【解決手段】テスト回路では、テスト動作時に、所定のアドレスに固定されたアドレス信号が、第2のマルチプレクサからメモリに対して供給され、クロック信号に同期して、第2のマルチプレクサから出力されるアドレス信号によって指定されるメモリのアドレスにデータが書き込まれるように制御する制御信号が、第3のマルチプレクサからメモリに対して供給され、第3のマルチプレクサから出力される制御信号によって、第2のマルチプレクサから出力されるアドレス信号によって指定されるメモリのアドレスの各データビットがフリップフロップとして使用され、第1のマルチプレクサとフリップフロップとして使用される各データビットとによってスキャンチェーンが構成される。
【選択図】図1
【解決手段】テスト回路では、テスト動作時に、所定のアドレスに固定されたアドレス信号が、第2のマルチプレクサからメモリに対して供給され、クロック信号に同期して、第2のマルチプレクサから出力されるアドレス信号によって指定されるメモリのアドレスにデータが書き込まれるように制御する制御信号が、第3のマルチプレクサからメモリに対して供給され、第3のマルチプレクサから出力される制御信号によって、第2のマルチプレクサから出力されるアドレス信号によって指定されるメモリのアドレスの各データビットがフリップフロップとして使用され、第1のマルチプレクサとフリップフロップとして使用される各データビットとによってスキャンチェーンが構成される。
【選択図】図1
Description
【0001】
【発明の属する技術分野】
本発明は、メモリを備える半導体集積回路において、メモリ周辺のロジック(組合せ論理回路)のテストを容易化する技術に関するものである。
【0002】
【従来の技術】
半導体集積回路のロジック部分のテスト方式として、スキャンテスト方式が多く採用されている。スキャンテスト方式を採用する半導体集積回路では、ロジックの内部状態を所定の状態に設定するための制御機能と、ロジックの内部状態を観測するための観測機能を備えたスキャンチェーンが必要となる。これらのスキャンチェーンでは、テスト動作時に、複数のスキャンセルがチェーン状に接続されるように構成される。
【0003】
図2は、従来の半導体集積回路の一例の構成概略図である。同図に示す半導体集積回路24は、テスト回路12と、ロジック14と、メモリ18と、ロジック20と、テスト回路22とを備えている。
【0004】
テスト回路12は、6個のスキャンセルSC01〜SC06を備えている。それぞれのスキャンセルSC01〜SC06は、マルチプレクサMUX01〜MUX06と、フリップフロップF01〜F06とを備えている。
【0005】
マルチプレクサMUX01〜MUX06の入力端子0には通常動作時に使用される信号が入力され、その入力端子1にはテスト動作時に使用される信号、すなわちスキャンイン信号SCANIN1およびフリップフロップF01〜F05の出力信号IN1〜IN5がそれぞれ入力されている。また、マルチプレクサMUX01〜MUX06の出力信号はそれぞれ対応するフリップフロップF01〜F06に入力され、フリップフロップF01〜F06の出力信号IN1〜IN6は全てロジック14に入力されている。また、フリップフロップF06の出力信号IN6はスキャンアウト信号SCANOUT1として出力されている。
【0006】
なお、図示省略しているが、マルチプレクサMUX01〜MUX10の選択入力端子には、通常動作とテスト動作を切り替えるスキャンテスト信号が共通に入力されている。また、フリップフロップF01〜F10のクロック入力端子には、メモリ18と同じクロック信号CLKが入力されている。
【0007】
ロジック14は、半導体集積回路24の内部に存在する組合せ論理回路を概念的に表したものである。ロジック14の出力信号、すなわちデータ入力信号DI[3:0]と、アドレス信号ADDR[3:0]と、チップセレクト信号CSNおよびライト信号WRN等の制御信号とは全てメモリ18に入力されている。
【0008】
メモリ18では、チップセレクト信号CSNおよびライト信号WRNが共に‘L(=0)’とされた時に、クロック信号CLKに同期して、アドレス信号ADDR[3:0]で指定されるアドレスにデータ入力信号DI[3:0]が書き込まれる。また、メモリ18に書き込まれたデータ入力信号DI[3:0]はそのままデータ出力信号DO[3:0]としてメモリ18から出力される。メモリ18から出力されるデータ出力信号DO[3:0]は全てロジック20に入力されている。
【0009】
ロジック20も半導体集積回路24の内部に存在する組合せ論理回路を概念的に表したものである。ロジック20の出力信号は、それぞれマルチプレクサMUX07〜MUX10の入力端子0に入力されている。
【0010】
テスト回路22は、4個のスキャンセルSC07〜SC10を備えている。それぞれのスキャンセルSC07〜SC10は、マルチプレクサMUX07〜MUX10と、フリップフロップF07〜F10とを備えている。テスト回路22は、4個のスキャンセルSC07〜SC10を備えている点と、スキャンイン信号SCANIN2およびスキャンアウト信号SCANOUT2を用いる点を除いて、テスト回路12と同様の構造である。
【0011】
通常動作時には、スキャンテスト信号が‘L(=0)’とされる。これにより、マルチプレクサMUX01〜MUX10からは、その入力端子0に入力されている信号が出力される。この場合、テスト回路12の各々のスキャンセルSC01〜SC10は、通常のフリップフロップと同様に動作する。
【0012】
すなわち、マルチプレクサMUX01〜MUX06の出力信号は、クロック信号CLKに同期してそれぞれ対応するフリップフロップF01〜F06に保持されると共に出力される。フリップフロップF01〜F06の出力信号IN1〜IN6は全てロジック14に入力され、ロジック14は信号IN1〜IN6に応じて動作する。ロジック14の出力信号は全てメモリ18に入力され、メモリ18はロジック14の出力信号に応じて動作する。メモリ18の出力信号は全てロジック20に入力され、ロジック20はメモリ18の出力信号に応じて動作する。ロジック20の出力信号は、マルチプレクサMUX07〜MUX10を介してそれぞれ対応するフリップフロップF07〜F10に入力され、クロック信号CLKに同期して保持されると共に出力される。
【0013】
テスト動作時は、まず、スキャンテスト信号が‘H(=1)’とされる。これにより、マルチプレクサMUX01〜MUX10からは、その入力端子1に入力されている信号が出力される。この場合、テスト回路12では、スキャンセルSC01〜SC06がチェーン状に接続され、制御用のスキャンチェーンが構成される。同様に、テスト回路22では、スキャンセルSC07〜SC10がチェーン状に接続され、観測用のスキャンチェーンが構成される。
【0014】
テスト回路12では、クロック信号CLKに同期して、スキャンイン信号SCANIN1として所定のデータがシフト入力され、フリップフロップF01〜F06に順次設定される。ロジック14は、フリップフロップF01〜F06に設定されたデータに応じて動作する。以下同様に、メモリ18はロジック14の出力信号に応じて動作し、ロジック20はメモリ18の出力信号に応じて動作する。
【0015】
ロジック20の出力信号が確定した後、一旦スキャンテスト信号が‘L’とされる。これにより、ロジック20の出力信号は、マルチプレクサMUX07〜MUX10を介してそれぞれ対応するフリップフロップF07〜F10に入力され、クロック信号CLKに同期して保持される。続いて、再びスキャンテスト信号が‘H’とされる。これにより、フリップフロップF07〜F10に保持されたデータは、クロック信号CLKに同期して、スキャンアウト信号SCANOUT2として順次シフト出力される。
【0016】
スキャンテスト方式を採用する半導体集積回路24において、もしメモリ18が単純な組合せ回路であれば、制御用のスキャンチェーンを構成するテスト回路12のフリップフロップF01〜F06に所定のデータを設定してロジック14、メモリ18およびロジック20を動作させ、ロジック20の出力信号を観測用のスキャンチェーンを構成するテスト回路22のフリップフロップF07〜F10に取り込んで順次出力することができる。この出力信号を確認することによって、半導体集積回路24の良否を簡単に判定することができる。
【0017】
しかし、半導体集積回路24のように、内部にメモリ18のようなテスト動作時に制御出来ない順序マクロセルを備えている場合、その周辺のロジック14,20はシャドーロジックと呼ばれ、スキャンテスト方式を採用してテストを行うことができない。これに対し、従来は、シャドーロジックのテストを容易化するために、例えばバイパス回路やバウンダリスキャン回路が用いられている。
【0018】
図3は、従来の半導体集積回路の別の例の構成概略図である。同図に示す半導体集積回路26は、図2に示す半導体集積回路24において、メモリ18の周辺にバイパス回路28を適用したものである。
【0019】
バイパス回路28は、4個のマルチプレクサMUX11〜MUX14を備えている。それぞれのマルチプレクサMUX11〜MUX14の入力端子0には通常動作時に使用される信号、すなわちメモリ18のデータ出力信号DO[3:0]がそれぞれ入力され、入力端子1にはテスト動作時に使用される信号、すなわちロジック14からメモリ18のデータ入力端子DI[3:0]に入力される信号が入力されている。また、全てのマルチプレクサMUX11〜MUX14の選択入力端子には、スキャンテスト信号SCAN_TESTが共通に入力されている。
【0020】
通常動作時には、スキャンテスト信号が‘L’とされ、マルチプレクサMUX11〜MUX14からは、メモリ18の出力信号が出力される。この場合、バイパス回路28がない場合と同様に動作する。
【0021】
テスト動作時には、スキャンテスト信号が‘H’とされ、マルチプレクサMUX11〜MUX14からは、ロジック14から供給されるデータ入力信号DI[3:0]が出力される。この場合、ロジック14の出力信号は、メモリ18をバイパスしてロジック20に直接入力される。従って、ロジック14とロジック20を1つの大きな組合せ論理回路と見なすことができ、スキャンテスト方式を採用してテストを容易化することができる。
【0022】
しかし、バイパス回路28では、マルチプレクサMUX11〜MUX14によってメモリ18の出力信号が遅延され、メモリ18後段のロジック20の回路性能に悪影響を与えるという問題があった。
【0023】
また、ロジック14とロジック20を併せた大きなロジックとなるため、自動テストパターン生成ツールのCPU(中央演算装置)消費時間が長くなったり、生成されるテストパターンが長くなるという弊害もあった。また、テスト時には、メモリ18が直接アクセスされないため、前段のロジック14からメモリ18の各入力端子まで、およびメモリ18の各出力端子から後段のロジック20までの経路のテストを別途行う必要があるという問題があった。
【0024】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点を解消し、メモリを備える場合であっても、スキャンテスト方式により、メモリ周辺のロジックのテストや、メモリとロジックとの間の経路のテストを簡単に行うことができる半導体集積回路を提供することにある。
【0025】
【課題を解決するための手段】
上記目的を達成するために、本発明は、ロジックと、制御信号の制御により、クロック信号に同期して、アドレス信号で指定されるアドレスにデータ入力信号が書き込まれ、この書き込まれたデータ入力信号がそのままデータ出力信号として出力されるメモリと、これらのロジックとメモリとの間に配置されたテスト回路とを備え、
前記テスト回路は、前記データ入力信号、前記アドレス信号および前記制御信号に各々対応して設けられた第1、第2および第3のマルチプレクサを備え、
通常動作時には、前記ロジックから出力されるデータ入力信号、アドレス信号および制御信号が、前記第1、第2および第3のマルチプレクサから前記メモリに対してそれぞれ供給され、
テスト動作時には、所定のアドレスに固定されたアドレス信号が、前記第2のマルチプレクサから前記メモリに対して供給され、前記クロック信号に同期して、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスにデータが書き込まれるように制御する制御信号が、前記第3のマルチプレクサから前記メモリに対して供給され、前記第3のマルチプレクサから出力される制御信号によって、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスの各データビットがフリップフロップとして使用され、前記第1のマルチプレクサと前記フリップフロップとして使用される各データビットとによってスキャンチェーンが構成されることを特徴とする半導体集積回路を提供するものである。
【0026】
ここで、前記テスト回路および前記メモリは一体型にレイアウトされ、ハードマクロ化されている場合も本発明の対象となる。
【0027】
【発明の実施の形態】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の半導体集積回路を詳細に説明する。
【0028】
図1は、本発明の半導体集積回路の一実施形態の構成概略図である。同図に示す半導体集積回路10は、図2に示す従来の半導体集積回路24において、さらにテスト回路16を備えるものである。以下、同一の構成要素には同一の符号を付し、その詳細な説明は省略する。すなわち、半導体集積回路10は、テスト回路12と、ロジック14と、テスト回路16と、メモリ18と、ロジック20と、テスト回路22とを備えている。
【0029】
テスト回路16は、ロジック14の出力信号、すなわちデータ入力信号DI[3:0]と、アドレス信号ADDR[3:0]と、チップセレクト信号CSNおよびライト信号WRN等の制御信号とに各々対応するマルチプレクサMUX15〜MUX20を備えている。なお、マルチプレクサMUX19,MUX20は、それぞれ4個および2個のマルチプレクサが必要であるが、図面の煩雑さを避けるために、それぞれ1つのマルチプレクサで示してある。
【0030】
マルチプレクサMUX15〜MUX20の入力端子0にはロジック14の出力信号がそれぞれ入力されている。マルチプレクサMUX15の入力端子1にはスキャンイン信号SCANIN3が入力され、マルチプレクサMUX16〜MUX18の入力端子1にはメモリ18のデータ出力信号DO[3:1]がそれぞれ入力されている。マルチプレクサMUX19、MUX20の入力端子1はいずれもグランドに接続されている。
【0031】
また、マルチプレクサMUX15〜MUX18の選択入力端子にはスキャンイネーブル信号SCAN_ENが共通に入力され、マルチプレクサMUX19,MUX20の選択入力端子にはスキャンテスト信号SCAN_TESTが共通に入力されている。
【0032】
また、マルチプレクサMUX15〜MUX20の出力信号は、メモリ18のデータ入力信号DI[3:0]の入力端子、アドレス信号ADDR[3:0]の入力端子、チップセレクト信号CSNおよびライト信号WRN等の制御信号の入力端子にそれぞれ入力されている。また、メモリ18のデータ出力信号DO[0]は、スキャンアウト信号SCANOUT3として出力されている。
【0033】
以下、半導体集積回路10の動作を説明する。
【0034】
通常動作時には、スキャンテスト信号SCAN_TESTおよびスキャンイネーブル信号SCAN_ENが共に‘L’とされ、マルチプレクサMUX15〜MUX20からは、その入力端子0に入力されている信号、すなわちデータ入力信号DI[3:0]、アドレス信号ADDR[3:0]、チップセレクト信号CSNおよびライト信号WRN等の制御信号が出力される。この場合、半導体集積回路10は、図2に示す従来の半導体集積回路24と同様に動作する。
【0035】
テスト動作時には、スキャンテスト信号SCAN_TESTが‘H’とされ、マルチプレクサMUX19,MUX20からは、その入力端子1に入力されている信号、すなわち‘L’(グランド電位)が出力される。これにより、メモリ18に入力されるアドレス信号ADDR[3:0]は‘0000(2進数)’に固定され、チップセレクト信号CSNおよびライト信号WRN等の制御信号は共にイネーブル状態に固定される。
【0036】
この場合、メモリ18では、クロック信号CLKに同期して、そのデータ入力信号DI[3:0]の入力端子に入力される信号が、アドレス=‘0000(2進数)’に書き込まれる。また、メモリのアドレス=‘0000(2進数)’に書き込まれたデータは、そのデータ出力信号DO[3:0]の出力端子からそのまま出力される。すなわち、メモリ18はフリップフロップと同様に動作し、テスト回路16とメモリ18によってスキャンチェーンが構成される。
【0037】
テスト回路16とメモリ18によって構成されるスキャンチェーンは、例えばロジック14の出力信号を観測するための観測用のスキャンチェーンとして使用することもできるし、ロジック20に対する入力信号を所定の状態に設定するための制御用のスキャンチェーンとしても使用することができる。なお、テスト回路16とメモリ18によって構成されるスキャンチェーンの動作は、スキャンテスト信号がスキャンイネーブル信号SCAN_ENとなっている点を除いてテスト回路12,22と同様であるから、ここでは繰り返しの説明は省略する。
【0038】
テスト回路16とメモリ18によって構成されるスキャンチェーンは、図1に示すように、単独のスキャンチェーンとして使用してもよいし、あるいは他のスキャンチェーンと組み合わせて使用してもよい。
【0039】
半導体集積回路10では、図3に示すバイパス回路28と違ってメモリ18の出力信号が遅延されるということがないので、メモリ18後段のロジック20の回路性能に悪影響を与えることはない。
【0040】
また、ロジック14とロジック20を個別にスキャンテスト方式でテストすることができるため、自動テストパターン生成ツールのCPU消費時間が長くなったり、生成されるテストパターンが長くなるという弊害も発生しない。また、テスト時には、メモリ18が直接アクセスされるため、前段のロジック14からメモリ18の各入力端子まで、およびメモリ18の各出力端子から後段のロジック20までの経路のテストを同時に行うことができる。
【0041】
なお、図1に示す半導体集積回路10では、テスト動作時には、アドレス信号ADDR[3:0]、チップセレクト信号CSN、およびライト信号WRNが‘L’に固定され、ロジック14からメモリ18の各入力端子までの間の経路のテストが行われない。しかし、これらの信号は、例えばXOR回路を用いてデータ入力信号DI[3:0]と論理をとることによって、データ入力信号DI[3:0]とこれらの信号とを時分割にテストすることが可能である。
【0042】
メモリ18は、クロック信号CLKに同期してデータが書き込まれ、書き込まれたデータがそのまま出力されるタイプのものが必要である。すなわち、フリップフロップのように使用することができるタイプのメモリが必要である。
【0043】
しかし、クロック同期型ではないメモリであっても、テスト動作時に、チップセレクト信号CSNやライト信号WRN等の制御信号としてクロック信号CLKを入力することによって、すなわちクロック信号を制御信号として使用することによって、クロック同期型のメモリとして使用することが可能である。また、アウトプットイネーブル信号OE等によって出力が制御されるタイプのメモリでは、常時アウトプットイネーブル信号OEをイネーブル状態として使用することが可能である。
【0044】
また、図1に示すテスト回路16とメモリ18を一体型にレイアウトし、ハードマクロ化してもよい。図1に示す半導体集積回路10では、メモリ18のマクロセルを迂回させて、メモリ18のデータ出力信号DO[3:1]をそれぞれマルチプレクサMUX16〜MUX18に接続しているが、一体型にレイアウトする場合、メモリ18のマクロセル上を通過させて接続すれば、配線長を短くして回路性能を向上させることができる。
【0045】
また、メモリ18のアドレス数や、データのビット数等は何ら制限されない。また、MUX19は、メモリ18をどのアドレスに固定するように設定されてもよいし、MUX20は、クロック信号CLKに同期して、データ入力信号DI[3:0]が、アドレス信号ADDR[3:0]によって指定されるアドレスに書き込まれるような状態に設定されていればよい。
【0046】
本発明は、基本的に以上のようなものである。
以上、本発明の半導体集積回路について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0047】
【発明の効果】
以上詳細に説明した様に、本発明の半導体集積回路では、テスト回路により、テスト動作時に、メモリに供給されるアドレス信号が所定のアドレスに固定され、クロック信号に同期してメモリの固定のアドレスにデータが書き込まれるように制御され、メモリの固定のアドレスの各データビットがフリップフロップとして使用されてスキャンチェーンが構成される。
これにより、本発明の半導体集積回路によれば、従来の各種方式に比べオーバーヘッドの少ない回路構成で、メモリ周辺のロジックのテストをスキャンテスト方式で行うことができる。また、メモリの出力信号が遅延されることがないので、後段のロジックの回路性能が低下するのを防ぐことができる。また、メモリの前段のロジックと後段のロジックをまとめず個別にテストできるため、自動テストパターン生成ツールのCPU消費時間や、生成されるテストパターンのパターン長を削減し、テストコストを削減することができる。また、テスト時には、メモリが直接アクセスされるため、ロジックとメモリとの間の経路のテストも同時に行うことができる。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の一実施形態の構成概略図である。
【図2】従来の半導体集積回路の一例の構成概略図である。
【図3】従来の半導体集積回路の別の例の構成概略図である。
【符号の説明】
10,24,26 半導体集積回路
12,16,22 テスト回路
14,20 ロジック
18 メモリ
28 バイパス回路
SC01〜SC10 スキャンセル
MUX01〜MUX20 マルチプレクサ
F01〜F10 フリップフロップ
【発明の属する技術分野】
本発明は、メモリを備える半導体集積回路において、メモリ周辺のロジック(組合せ論理回路)のテストを容易化する技術に関するものである。
【0002】
【従来の技術】
半導体集積回路のロジック部分のテスト方式として、スキャンテスト方式が多く採用されている。スキャンテスト方式を採用する半導体集積回路では、ロジックの内部状態を所定の状態に設定するための制御機能と、ロジックの内部状態を観測するための観測機能を備えたスキャンチェーンが必要となる。これらのスキャンチェーンでは、テスト動作時に、複数のスキャンセルがチェーン状に接続されるように構成される。
【0003】
図2は、従来の半導体集積回路の一例の構成概略図である。同図に示す半導体集積回路24は、テスト回路12と、ロジック14と、メモリ18と、ロジック20と、テスト回路22とを備えている。
【0004】
テスト回路12は、6個のスキャンセルSC01〜SC06を備えている。それぞれのスキャンセルSC01〜SC06は、マルチプレクサMUX01〜MUX06と、フリップフロップF01〜F06とを備えている。
【0005】
マルチプレクサMUX01〜MUX06の入力端子0には通常動作時に使用される信号が入力され、その入力端子1にはテスト動作時に使用される信号、すなわちスキャンイン信号SCANIN1およびフリップフロップF01〜F05の出力信号IN1〜IN5がそれぞれ入力されている。また、マルチプレクサMUX01〜MUX06の出力信号はそれぞれ対応するフリップフロップF01〜F06に入力され、フリップフロップF01〜F06の出力信号IN1〜IN6は全てロジック14に入力されている。また、フリップフロップF06の出力信号IN6はスキャンアウト信号SCANOUT1として出力されている。
【0006】
なお、図示省略しているが、マルチプレクサMUX01〜MUX10の選択入力端子には、通常動作とテスト動作を切り替えるスキャンテスト信号が共通に入力されている。また、フリップフロップF01〜F10のクロック入力端子には、メモリ18と同じクロック信号CLKが入力されている。
【0007】
ロジック14は、半導体集積回路24の内部に存在する組合せ論理回路を概念的に表したものである。ロジック14の出力信号、すなわちデータ入力信号DI[3:0]と、アドレス信号ADDR[3:0]と、チップセレクト信号CSNおよびライト信号WRN等の制御信号とは全てメモリ18に入力されている。
【0008】
メモリ18では、チップセレクト信号CSNおよびライト信号WRNが共に‘L(=0)’とされた時に、クロック信号CLKに同期して、アドレス信号ADDR[3:0]で指定されるアドレスにデータ入力信号DI[3:0]が書き込まれる。また、メモリ18に書き込まれたデータ入力信号DI[3:0]はそのままデータ出力信号DO[3:0]としてメモリ18から出力される。メモリ18から出力されるデータ出力信号DO[3:0]は全てロジック20に入力されている。
【0009】
ロジック20も半導体集積回路24の内部に存在する組合せ論理回路を概念的に表したものである。ロジック20の出力信号は、それぞれマルチプレクサMUX07〜MUX10の入力端子0に入力されている。
【0010】
テスト回路22は、4個のスキャンセルSC07〜SC10を備えている。それぞれのスキャンセルSC07〜SC10は、マルチプレクサMUX07〜MUX10と、フリップフロップF07〜F10とを備えている。テスト回路22は、4個のスキャンセルSC07〜SC10を備えている点と、スキャンイン信号SCANIN2およびスキャンアウト信号SCANOUT2を用いる点を除いて、テスト回路12と同様の構造である。
【0011】
通常動作時には、スキャンテスト信号が‘L(=0)’とされる。これにより、マルチプレクサMUX01〜MUX10からは、その入力端子0に入力されている信号が出力される。この場合、テスト回路12の各々のスキャンセルSC01〜SC10は、通常のフリップフロップと同様に動作する。
【0012】
すなわち、マルチプレクサMUX01〜MUX06の出力信号は、クロック信号CLKに同期してそれぞれ対応するフリップフロップF01〜F06に保持されると共に出力される。フリップフロップF01〜F06の出力信号IN1〜IN6は全てロジック14に入力され、ロジック14は信号IN1〜IN6に応じて動作する。ロジック14の出力信号は全てメモリ18に入力され、メモリ18はロジック14の出力信号に応じて動作する。メモリ18の出力信号は全てロジック20に入力され、ロジック20はメモリ18の出力信号に応じて動作する。ロジック20の出力信号は、マルチプレクサMUX07〜MUX10を介してそれぞれ対応するフリップフロップF07〜F10に入力され、クロック信号CLKに同期して保持されると共に出力される。
【0013】
テスト動作時は、まず、スキャンテスト信号が‘H(=1)’とされる。これにより、マルチプレクサMUX01〜MUX10からは、その入力端子1に入力されている信号が出力される。この場合、テスト回路12では、スキャンセルSC01〜SC06がチェーン状に接続され、制御用のスキャンチェーンが構成される。同様に、テスト回路22では、スキャンセルSC07〜SC10がチェーン状に接続され、観測用のスキャンチェーンが構成される。
【0014】
テスト回路12では、クロック信号CLKに同期して、スキャンイン信号SCANIN1として所定のデータがシフト入力され、フリップフロップF01〜F06に順次設定される。ロジック14は、フリップフロップF01〜F06に設定されたデータに応じて動作する。以下同様に、メモリ18はロジック14の出力信号に応じて動作し、ロジック20はメモリ18の出力信号に応じて動作する。
【0015】
ロジック20の出力信号が確定した後、一旦スキャンテスト信号が‘L’とされる。これにより、ロジック20の出力信号は、マルチプレクサMUX07〜MUX10を介してそれぞれ対応するフリップフロップF07〜F10に入力され、クロック信号CLKに同期して保持される。続いて、再びスキャンテスト信号が‘H’とされる。これにより、フリップフロップF07〜F10に保持されたデータは、クロック信号CLKに同期して、スキャンアウト信号SCANOUT2として順次シフト出力される。
【0016】
スキャンテスト方式を採用する半導体集積回路24において、もしメモリ18が単純な組合せ回路であれば、制御用のスキャンチェーンを構成するテスト回路12のフリップフロップF01〜F06に所定のデータを設定してロジック14、メモリ18およびロジック20を動作させ、ロジック20の出力信号を観測用のスキャンチェーンを構成するテスト回路22のフリップフロップF07〜F10に取り込んで順次出力することができる。この出力信号を確認することによって、半導体集積回路24の良否を簡単に判定することができる。
【0017】
しかし、半導体集積回路24のように、内部にメモリ18のようなテスト動作時に制御出来ない順序マクロセルを備えている場合、その周辺のロジック14,20はシャドーロジックと呼ばれ、スキャンテスト方式を採用してテストを行うことができない。これに対し、従来は、シャドーロジックのテストを容易化するために、例えばバイパス回路やバウンダリスキャン回路が用いられている。
【0018】
図3は、従来の半導体集積回路の別の例の構成概略図である。同図に示す半導体集積回路26は、図2に示す半導体集積回路24において、メモリ18の周辺にバイパス回路28を適用したものである。
【0019】
バイパス回路28は、4個のマルチプレクサMUX11〜MUX14を備えている。それぞれのマルチプレクサMUX11〜MUX14の入力端子0には通常動作時に使用される信号、すなわちメモリ18のデータ出力信号DO[3:0]がそれぞれ入力され、入力端子1にはテスト動作時に使用される信号、すなわちロジック14からメモリ18のデータ入力端子DI[3:0]に入力される信号が入力されている。また、全てのマルチプレクサMUX11〜MUX14の選択入力端子には、スキャンテスト信号SCAN_TESTが共通に入力されている。
【0020】
通常動作時には、スキャンテスト信号が‘L’とされ、マルチプレクサMUX11〜MUX14からは、メモリ18の出力信号が出力される。この場合、バイパス回路28がない場合と同様に動作する。
【0021】
テスト動作時には、スキャンテスト信号が‘H’とされ、マルチプレクサMUX11〜MUX14からは、ロジック14から供給されるデータ入力信号DI[3:0]が出力される。この場合、ロジック14の出力信号は、メモリ18をバイパスしてロジック20に直接入力される。従って、ロジック14とロジック20を1つの大きな組合せ論理回路と見なすことができ、スキャンテスト方式を採用してテストを容易化することができる。
【0022】
しかし、バイパス回路28では、マルチプレクサMUX11〜MUX14によってメモリ18の出力信号が遅延され、メモリ18後段のロジック20の回路性能に悪影響を与えるという問題があった。
【0023】
また、ロジック14とロジック20を併せた大きなロジックとなるため、自動テストパターン生成ツールのCPU(中央演算装置)消費時間が長くなったり、生成されるテストパターンが長くなるという弊害もあった。また、テスト時には、メモリ18が直接アクセスされないため、前段のロジック14からメモリ18の各入力端子まで、およびメモリ18の各出力端子から後段のロジック20までの経路のテストを別途行う必要があるという問題があった。
【0024】
【発明が解決しようとする課題】
本発明の目的は、前記従来技術に基づく問題点を解消し、メモリを備える場合であっても、スキャンテスト方式により、メモリ周辺のロジックのテストや、メモリとロジックとの間の経路のテストを簡単に行うことができる半導体集積回路を提供することにある。
【0025】
【課題を解決するための手段】
上記目的を達成するために、本発明は、ロジックと、制御信号の制御により、クロック信号に同期して、アドレス信号で指定されるアドレスにデータ入力信号が書き込まれ、この書き込まれたデータ入力信号がそのままデータ出力信号として出力されるメモリと、これらのロジックとメモリとの間に配置されたテスト回路とを備え、
前記テスト回路は、前記データ入力信号、前記アドレス信号および前記制御信号に各々対応して設けられた第1、第2および第3のマルチプレクサを備え、
通常動作時には、前記ロジックから出力されるデータ入力信号、アドレス信号および制御信号が、前記第1、第2および第3のマルチプレクサから前記メモリに対してそれぞれ供給され、
テスト動作時には、所定のアドレスに固定されたアドレス信号が、前記第2のマルチプレクサから前記メモリに対して供給され、前記クロック信号に同期して、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスにデータが書き込まれるように制御する制御信号が、前記第3のマルチプレクサから前記メモリに対して供給され、前記第3のマルチプレクサから出力される制御信号によって、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスの各データビットがフリップフロップとして使用され、前記第1のマルチプレクサと前記フリップフロップとして使用される各データビットとによってスキャンチェーンが構成されることを特徴とする半導体集積回路を提供するものである。
【0026】
ここで、前記テスト回路および前記メモリは一体型にレイアウトされ、ハードマクロ化されている場合も本発明の対象となる。
【0027】
【発明の実施の形態】
以下に、添付の図面に示す好適実施形態に基づいて、本発明の半導体集積回路を詳細に説明する。
【0028】
図1は、本発明の半導体集積回路の一実施形態の構成概略図である。同図に示す半導体集積回路10は、図2に示す従来の半導体集積回路24において、さらにテスト回路16を備えるものである。以下、同一の構成要素には同一の符号を付し、その詳細な説明は省略する。すなわち、半導体集積回路10は、テスト回路12と、ロジック14と、テスト回路16と、メモリ18と、ロジック20と、テスト回路22とを備えている。
【0029】
テスト回路16は、ロジック14の出力信号、すなわちデータ入力信号DI[3:0]と、アドレス信号ADDR[3:0]と、チップセレクト信号CSNおよびライト信号WRN等の制御信号とに各々対応するマルチプレクサMUX15〜MUX20を備えている。なお、マルチプレクサMUX19,MUX20は、それぞれ4個および2個のマルチプレクサが必要であるが、図面の煩雑さを避けるために、それぞれ1つのマルチプレクサで示してある。
【0030】
マルチプレクサMUX15〜MUX20の入力端子0にはロジック14の出力信号がそれぞれ入力されている。マルチプレクサMUX15の入力端子1にはスキャンイン信号SCANIN3が入力され、マルチプレクサMUX16〜MUX18の入力端子1にはメモリ18のデータ出力信号DO[3:1]がそれぞれ入力されている。マルチプレクサMUX19、MUX20の入力端子1はいずれもグランドに接続されている。
【0031】
また、マルチプレクサMUX15〜MUX18の選択入力端子にはスキャンイネーブル信号SCAN_ENが共通に入力され、マルチプレクサMUX19,MUX20の選択入力端子にはスキャンテスト信号SCAN_TESTが共通に入力されている。
【0032】
また、マルチプレクサMUX15〜MUX20の出力信号は、メモリ18のデータ入力信号DI[3:0]の入力端子、アドレス信号ADDR[3:0]の入力端子、チップセレクト信号CSNおよびライト信号WRN等の制御信号の入力端子にそれぞれ入力されている。また、メモリ18のデータ出力信号DO[0]は、スキャンアウト信号SCANOUT3として出力されている。
【0033】
以下、半導体集積回路10の動作を説明する。
【0034】
通常動作時には、スキャンテスト信号SCAN_TESTおよびスキャンイネーブル信号SCAN_ENが共に‘L’とされ、マルチプレクサMUX15〜MUX20からは、その入力端子0に入力されている信号、すなわちデータ入力信号DI[3:0]、アドレス信号ADDR[3:0]、チップセレクト信号CSNおよびライト信号WRN等の制御信号が出力される。この場合、半導体集積回路10は、図2に示す従来の半導体集積回路24と同様に動作する。
【0035】
テスト動作時には、スキャンテスト信号SCAN_TESTが‘H’とされ、マルチプレクサMUX19,MUX20からは、その入力端子1に入力されている信号、すなわち‘L’(グランド電位)が出力される。これにより、メモリ18に入力されるアドレス信号ADDR[3:0]は‘0000(2進数)’に固定され、チップセレクト信号CSNおよびライト信号WRN等の制御信号は共にイネーブル状態に固定される。
【0036】
この場合、メモリ18では、クロック信号CLKに同期して、そのデータ入力信号DI[3:0]の入力端子に入力される信号が、アドレス=‘0000(2進数)’に書き込まれる。また、メモリのアドレス=‘0000(2進数)’に書き込まれたデータは、そのデータ出力信号DO[3:0]の出力端子からそのまま出力される。すなわち、メモリ18はフリップフロップと同様に動作し、テスト回路16とメモリ18によってスキャンチェーンが構成される。
【0037】
テスト回路16とメモリ18によって構成されるスキャンチェーンは、例えばロジック14の出力信号を観測するための観測用のスキャンチェーンとして使用することもできるし、ロジック20に対する入力信号を所定の状態に設定するための制御用のスキャンチェーンとしても使用することができる。なお、テスト回路16とメモリ18によって構成されるスキャンチェーンの動作は、スキャンテスト信号がスキャンイネーブル信号SCAN_ENとなっている点を除いてテスト回路12,22と同様であるから、ここでは繰り返しの説明は省略する。
【0038】
テスト回路16とメモリ18によって構成されるスキャンチェーンは、図1に示すように、単独のスキャンチェーンとして使用してもよいし、あるいは他のスキャンチェーンと組み合わせて使用してもよい。
【0039】
半導体集積回路10では、図3に示すバイパス回路28と違ってメモリ18の出力信号が遅延されるということがないので、メモリ18後段のロジック20の回路性能に悪影響を与えることはない。
【0040】
また、ロジック14とロジック20を個別にスキャンテスト方式でテストすることができるため、自動テストパターン生成ツールのCPU消費時間が長くなったり、生成されるテストパターンが長くなるという弊害も発生しない。また、テスト時には、メモリ18が直接アクセスされるため、前段のロジック14からメモリ18の各入力端子まで、およびメモリ18の各出力端子から後段のロジック20までの経路のテストを同時に行うことができる。
【0041】
なお、図1に示す半導体集積回路10では、テスト動作時には、アドレス信号ADDR[3:0]、チップセレクト信号CSN、およびライト信号WRNが‘L’に固定され、ロジック14からメモリ18の各入力端子までの間の経路のテストが行われない。しかし、これらの信号は、例えばXOR回路を用いてデータ入力信号DI[3:0]と論理をとることによって、データ入力信号DI[3:0]とこれらの信号とを時分割にテストすることが可能である。
【0042】
メモリ18は、クロック信号CLKに同期してデータが書き込まれ、書き込まれたデータがそのまま出力されるタイプのものが必要である。すなわち、フリップフロップのように使用することができるタイプのメモリが必要である。
【0043】
しかし、クロック同期型ではないメモリであっても、テスト動作時に、チップセレクト信号CSNやライト信号WRN等の制御信号としてクロック信号CLKを入力することによって、すなわちクロック信号を制御信号として使用することによって、クロック同期型のメモリとして使用することが可能である。また、アウトプットイネーブル信号OE等によって出力が制御されるタイプのメモリでは、常時アウトプットイネーブル信号OEをイネーブル状態として使用することが可能である。
【0044】
また、図1に示すテスト回路16とメモリ18を一体型にレイアウトし、ハードマクロ化してもよい。図1に示す半導体集積回路10では、メモリ18のマクロセルを迂回させて、メモリ18のデータ出力信号DO[3:1]をそれぞれマルチプレクサMUX16〜MUX18に接続しているが、一体型にレイアウトする場合、メモリ18のマクロセル上を通過させて接続すれば、配線長を短くして回路性能を向上させることができる。
【0045】
また、メモリ18のアドレス数や、データのビット数等は何ら制限されない。また、MUX19は、メモリ18をどのアドレスに固定するように設定されてもよいし、MUX20は、クロック信号CLKに同期して、データ入力信号DI[3:0]が、アドレス信号ADDR[3:0]によって指定されるアドレスに書き込まれるような状態に設定されていればよい。
【0046】
本発明は、基本的に以上のようなものである。
以上、本発明の半導体集積回路について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのはもちろんである。
【0047】
【発明の効果】
以上詳細に説明した様に、本発明の半導体集積回路では、テスト回路により、テスト動作時に、メモリに供給されるアドレス信号が所定のアドレスに固定され、クロック信号に同期してメモリの固定のアドレスにデータが書き込まれるように制御され、メモリの固定のアドレスの各データビットがフリップフロップとして使用されてスキャンチェーンが構成される。
これにより、本発明の半導体集積回路によれば、従来の各種方式に比べオーバーヘッドの少ない回路構成で、メモリ周辺のロジックのテストをスキャンテスト方式で行うことができる。また、メモリの出力信号が遅延されることがないので、後段のロジックの回路性能が低下するのを防ぐことができる。また、メモリの前段のロジックと後段のロジックをまとめず個別にテストできるため、自動テストパターン生成ツールのCPU消費時間や、生成されるテストパターンのパターン長を削減し、テストコストを削減することができる。また、テスト時には、メモリが直接アクセスされるため、ロジックとメモリとの間の経路のテストも同時に行うことができる。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の一実施形態の構成概略図である。
【図2】従来の半導体集積回路の一例の構成概略図である。
【図3】従来の半導体集積回路の別の例の構成概略図である。
【符号の説明】
10,24,26 半導体集積回路
12,16,22 テスト回路
14,20 ロジック
18 メモリ
28 バイパス回路
SC01〜SC10 スキャンセル
MUX01〜MUX20 マルチプレクサ
F01〜F10 フリップフロップ
Claims (1)
- ロジックと、制御信号の制御により、クロック信号に同期して、アドレス信号で指定されるアドレスにデータ入力信号が書き込まれ、この書き込まれたデータ入力信号がそのままデータ出力信号として出力されるメモリと、これらのロジックとメモリとの間に配置されたテスト回路とを備え、
前記テスト回路は、前記データ入力信号、前記アドレス信号および前記制御信号に各々対応して設けられた第1、第2および第3のマルチプレクサを備え、
通常動作時には、前記ロジックから出力されるデータ入力信号、アドレス信号および制御信号が、前記第1、第2および第3のマルチプレクサから前記メモリに対してそれぞれ供給され、
テスト動作時には、所定のアドレスに固定されたアドレス信号が、前記第2のマルチプレクサから前記メモリに対して供給され、前記クロック信号に同期して、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスにデータが書き込まれるように制御する制御信号が、前記第3のマルチプレクサから前記メモリに対して供給され、前記第3のマルチプレクサから出力される制御信号によって、前記第2のマルチプレクサから出力されるアドレス信号によって指定される前記メモリのアドレスの各データビットがフリップフロップとして使用され、前記第1のマルチプレクサと前記フリップフロップとして使用される各データビットとによってスキャンチェーンが構成されることを特徴とする半導体集積回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003073516A JP2004279310A (ja) | 2003-03-18 | 2003-03-18 | 半導体集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003073516A JP2004279310A (ja) | 2003-03-18 | 2003-03-18 | 半導体集積回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004279310A true JP2004279310A (ja) | 2004-10-07 |
Family
ID=33289397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003073516A Pending JP2004279310A (ja) | 2003-03-18 | 2003-03-18 | 半導体集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004279310A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006337289A (ja) * | 2005-06-06 | 2006-12-14 | Renesas Technology Corp | 半導体集積回路装置とそのテスト方法 |
JP2007271346A (ja) * | 2006-03-30 | 2007-10-18 | Ricoh Co Ltd | 半導体集積回路 |
JP2007292603A (ja) * | 2006-04-25 | 2007-11-08 | Advantest Corp | 試験装置および試験方法 |
-
2003
- 2003-03-18 JP JP2003073516A patent/JP2004279310A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006337289A (ja) * | 2005-06-06 | 2006-12-14 | Renesas Technology Corp | 半導体集積回路装置とそのテスト方法 |
JP4707053B2 (ja) * | 2005-06-06 | 2011-06-22 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
JP2007271346A (ja) * | 2006-03-30 | 2007-10-18 | Ricoh Co Ltd | 半導体集積回路 |
JP4682077B2 (ja) * | 2006-03-30 | 2011-05-11 | 株式会社リコー | 半導体集積回路 |
JP2007292603A (ja) * | 2006-04-25 | 2007-11-08 | Advantest Corp | 試験装置および試験方法 |
JP4679428B2 (ja) * | 2006-04-25 | 2011-04-27 | 株式会社アドバンテスト | 試験装置および試験方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7617425B2 (en) | Method for at-speed testing of memory interface using scan | |
EP1651971B1 (en) | Test standard interfaces and architectures | |
US7103814B2 (en) | Testing logic and embedded memory in parallel | |
KR101118407B1 (ko) | 테스트 액세스 아키텍처 및 모듈 테스트 방법 | |
US6370661B1 (en) | Apparatus for testing memory in a microprocessor | |
US20140229780A1 (en) | Ieee 1149.1 and p1500 test interfaces combined circuits and processes | |
US20130275824A1 (en) | Scan-based capture and shift of interface functional signal values in conjunction with built-in self-test | |
US20140101501A1 (en) | Scan test circuitry configured to prevent violation of multiplexer select signal constraints during scan testing | |
US6862704B1 (en) | Apparatus and method for testing memory in a microprocessor | |
US20130311843A1 (en) | Scan controller configured to control signal values applied to signal lines of circuit core input interface | |
US8924801B2 (en) | At-speed scan testing of interface functional logic of an embedded memory or other circuit core | |
US20040250165A1 (en) | Semiconductor memory device permitting boundary scan test | |
US20030046625A1 (en) | Method and apparatus for efficient control of multiple tap controllers | |
TWI435095B (zh) | 具有延遲測試能力之掃描鏈單元 | |
US6341092B1 (en) | Designing memory for testability to support scan capability in an asic design | |
JP2004279310A (ja) | 半導体集積回路 | |
EP0933644B1 (en) | Device scan testing | |
KR20000069753A (ko) | 코어 테스트 제어 | |
JP3291706B2 (ja) | 論理回路の高速動作検証方法、及び、論理回路 | |
JPS59211146A (ja) | スキヤンイン方法 | |
KR100769041B1 (ko) | 테스트를 위한 집적회로 장치 | |
US20220187370A1 (en) | Circuits And Methods For Configurable Scan Chains | |
US20030149926A1 (en) | Single scan chain in hierarchiacally bisted designs | |
US7765448B2 (en) | Clock signal distributing circuit, information processing device and clock signal distributing method | |
JP2005115578A (ja) | 半導体集積回路およびその設計方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090409 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090414 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090804 |