JP2016025275A - 集積回路及び集積回路の試験方法 - Google Patents
集積回路及び集積回路の試験方法 Download PDFInfo
- Publication number
- JP2016025275A JP2016025275A JP2014149812A JP2014149812A JP2016025275A JP 2016025275 A JP2016025275 A JP 2016025275A JP 2014149812 A JP2014149812 A JP 2014149812A JP 2014149812 A JP2014149812 A JP 2014149812A JP 2016025275 A JP2016025275 A JP 2016025275A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- data
- signal
- delay
- delay time
- 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
Landscapes
- Tests Of Electronic Circuits (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】タイミングエラーを容易に救済することができる集積回路を提供することを課題とする。【解決手段】集積回路は、第1のロジック回路内のパスのデータ又はクロック信号を遅延する第1の遅延回路(108)と、第1のロジック回路に第1のテストデータを入力した場合の第1のロジック回路の出力データと第1の期待値とを比較する第1の期待値比較回路(105)と、交流信号を生成する自励発振回路(103)と、自励発振回路により生成された交流信号の基準交流信号に対する周波数の高低を比較する信号比較回路(103)と、第1のロジック回路の出力データが第1の期待値と異なる場合、信号比較回路の比較結果を記憶する第1の記憶回路(104)とを有し、第1の遅延回路は、第1の記憶回路に記憶されている信号比較回路の比較結果に応じて、データ又はクロック信号の遅延時間を変更する。【選択図】図1
Description
本発明は、集積回路及び集積回路の試験方法に関する。
外部入力端子からフリップフロップのクロック入力端子までのクロック信号の遅延値を変えるための可変遅延器を備えた半導体集積回路が知られている(特許文献1参照)。クロックツリーを構成する複数のクロックの信号線上にそれぞれ可変遅延器が設けられる。可変遅延器は、それぞれ制御信号で遅延値を等間隔で変更することを可能とする。タイミングエラーが生じた任意のクロックの信号線上の可変遅延器の遅延値を変化させることで、製造後の半導体集積回路上に存在するセットアップエラーまたはホールドエラーを救済し、所期の動作を保証する。
半導体集積回路のタイミングエラーが発生した場合には、可変遅延器の遅延値を変化させることにより、タイミングエラーを救済可能である。しかし、タイミングエラーを救済するには、可変遅延器の遅延値をどのように変化させるのかを決定することが困難であり、煩雑であり、長時間を要する。
本発明の目的は、タイミングエラーを容易に救済することができる集積回路及び集積回路の試験方法を提供することである。
集積回路は、データを処理する第1のロジック回路と、前記第1のロジック回路内のパスのデータ又はクロック信号を遅延する第1の遅延回路と、前記第1のロジック回路に第1のテストデータを入力した場合の前記第1のロジック回路の出力データと第1の期待値とを比較する第1の期待値比較回路と、交流信号を生成する自励発振回路と、前記自励発振回路により生成された交流信号の基準交流信号に対する周波数の高低を比較する信号比較回路と、前記第1のロジック回路の出力データが前記第1の期待値と異なる場合、前記信号比較回路の比較結果を記憶する第1の記憶回路とを有し、前記第1の遅延回路は、前記第1の記憶回路に記憶されている前記信号比較回路の比較結果に応じて、前記データ又はクロック信号の遅延時間を変更する。
周波数の高低の比較結果に応じて遅延時間を変更することにより、タイミングエラーを容易に救済することができる。
図1は、本実施形態による集積回路の構成例を示す図である。集積回路は、BIST(Built-In Self Test)回路101及びロジック回路106を有する。BIST回路101は、パターン発生回路102、検出回路103、記憶回路104及び期待値比較回路105を有する。ロジック回路106は、セル107、遅延回路108及びセル109を有する。
パターン発生回路102は、ロジック回路106にテストデータを出力する。ロジック回路106は、パターン発生回路102からテストデータを入力し、入力したデータの論理処理を行い、期待値比較回路105にデータを出力する。具体的には、セル107は、パターン発生回路102からテストデータを入力し、遅延回路108を介して、データをセル109に出力する。セル109は、データを期待値比較回路105に出力する。期待値比較回路105は、ロジック回路106にテストデータを入力した場合のロジック回路106の出力データと期待値とを比較する。この期待値は、ロジック回路106が正常な場合に、ロジック回路106がテストデータを入力した場合にロジック回路106が出力する正常なデータである。期待値比較回路105は、上記のロジック回路106の出力データと期待値が同じである場合には、テスト合格を示す信号を記憶回路104に出力し、上記のロジック回路106の出力データと期待値が異なる場合には、テスト失敗を示す信号を記憶回路104に出力する。
検出回路103は、交流信号を生成する自励発振回路を有する。BIST回路101及びロジック回路106は、同一の集積回路(半導体チップ)内に形成される。そのため、自励発振回路内のトランジスタは、セル107及び108内のトランジスタと同様の特性を有する。自励発振回路により生成された交流信号が基準交流信号に対して周波数が高い場合には、ロジック回路106内のデータタイミングが早すぎて、タイミングエラーになり易い。これに対し、自励発振回路により生成された交流信号が基準交流信号に対して周波数が低い場合には、ロジック回路106内のデータタイミングが遅すぎて、タイミングエラーになり易い。検出回路103は、自励発振回路により生成された交流信号の基準交流信号に対する周波数の高低を比較し、その比較結果を記憶回路104に出力する。
記憶回路104は、期待値比較回路105からテスト合格の信号を入力した場合には、遅延回路108の遅延時間を変更しない。これに対し、記憶回路104は、期待値比較回路105からテスト失敗の信号を入力した場合、検出回路103の自励発振回路により生成された交流信号の周波数が基準交流信号の周波数より高い場合には、遅延回路108の遅延時間を長くする。また、記憶回路104は、期待値比較回路105からテスト失敗の信号を入力した場合、検出回路103の自励発振回路により生成された交流信号の周波数が基準交流信号の周波数より低い場合には、遅延回路108の遅延時間を短くする。上記のように、遅延回路108の遅延時間を変更することにより、タイミングエラーを解消させることができる。
図2は、図1のロジック回路106及び期待値比較回路105の構成例を示す図である。集積回路は、例えば、3個のロジック回路106a,106b,106c及び3個の期待値比較回路105a,105b,105cを有する。ロジック回路106a,106b,106cは図1のロジック回路106に対応し、期待値比較回路105a,105b,105cは図1の期待値比較回路105に対応する。なお、期待値比較回路105a,105b,105cは、BIST回路101に対して、中に設けてもよいし、外に設けてもよい。
第1のロジック回路106aは、セル107a、第1の遅延回路108a及びセル109aを有する。セル107aは図1のセル107に対応し、第1の遅延回路108aは図1の遅延回路108に対応し、セル109aは図1のセル109に対応する。セル107aは、D型フリップフロップであり、BIST回路101から第1のテストデータを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。第1の遅延回路108aは、セル107aの出力端子Dのデータを遅延し、その遅延したデータをセル109aの入力端子Dに出力する。セル109aは、D型フリップフロップであり、第1の遅延回路108aの出力データを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。
第2のロジック回路106bは、セル107b、第2の遅延回路108b及びセル109bを有する。セル107bは図1のセル107に対応し、第2の遅延回路108bは図1の遅延回路108に対応し、セル109bは図1のセル109に対応する。セル107bは、D型フリップフロップであり、BIST回路101から第2のテストデータを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。第2の遅延回路108bは、セル107bの出力端子Dのデータを遅延し、その遅延したデータをセル109bの入力端子Dに出力する。セル109bは、D型フリップフロップであり、第2の遅延回路108bの出力データを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。
第3のロジック回路106cは、セル107c、第3の遅延回路108c及びセル109cを有する。セル107cは図1のセル107に対応し、第3の遅延回路108cは図1の遅延回路108に対応し、セル109cは図1のセル109に対応する。セル107cは、D型フリップフロップであり、BIST回路101から第3のテストデータを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。第3の遅延回路108cは、セル107cの出力端子Dのデータを遅延し、その遅延したデータをセル109cの入力端子Dに出力する。セル109cは、D型フリップフロップであり、第3の遅延回路108cの出力データを入力端子Dに入力し、BIST回路101からクロック信号をクロック端子CKに入力し、出力端子Dからデータを出力する。
第1の期待値比較回路105aは、インバータ201,202、論理積(AND)回路203,204及び論理和(OR)回路205を有する。インバータ201は、BIST回路101が出力する第1の期待値の論理反転データを出力する。インバータ202は、セル109aの出力端子Qの出力データの論理反転データを出力する。論理積回路203は、セル109aの出力端子Qの出力データ及びBIST回路101が出力する第1の期待値の論理積データを出力する。論理積回路204は、インバータ201及び202の出力データの論理積データを出力する。論理和回路205は、論理積回路203及び204の出力データの論理和データを比較結果データY1として出力する。
第1の期待値比較回路105aは、第1のロジック回路106aから「0」のデータを入力し、BIST回路101から「0」のデータを入力すると、論理積回路204が「1」のデータを出力し、比較結果データY1が「1」になる。また、第1の期待値比較回路105aは、第1のロジック回路106aから「1」のデータを入力し、BIST回路101から「1」のデータを入力すると、論理積回路203が「1」のデータを出力し、比較結果データY1が「1」になる。また、それ以外の場合には、比較結果データY1が「0」になる。すなわち、第1の期待値比較回路105aは、第1のロジック回路106aの出力データとBIST回路101から入力する第1の期待値とが同じ場合には、「1」の比較結果データY1を出力し、第1のロジック回路106aの出力データとBIST回路101から入力する第1の期待値とが異なる場合には、「0」の比較結果データY1を出力する。
第2の期待値比較回路105bは、第1の期待値比較回路105aと同じ構成を有する。第2の期待値比較回路105bは、第2のロジック回路106bの出力データとBIST回路101から入力する第2の期待値とが同じ場合には、「1」の比較結果データY2を出力し、第2のロジック回路106bの出力データとBIST回路101から入力する第2の期待値とが異なる場合には、「0」の比較結果データY2を出力する。
第3の期待値比較回路105cは、第1の期待値比較回路105aと同じ構成を有する。第3の期待値比較回路105cは、第3のロジック回路106cの出力データとBIST回路101から入力する第3の期待値とが同じ場合には、「1」の比較結果データY3を出力し、第3のロジック回路106cの出力データとBIST回路101から入力する第3の期待値とが異なる場合には、「0」の比較結果データY3を出力する。
図3(A)は、図1の検出回路103の構成例を示す図である。検出回路103は、自励発振回路301及び信号比較回路303を有する。自励発振回路301は、例えばリング発振回路であり、複数のインバータ302のリング回路を有する。自励発振回路301は、スタートパルス信号(初期値)を入力端子Aに入力すると、自励発振により交流信号を生成し、交流信号Bを出力する。信号比較回路303は、自励発振回路301により生成された交流信号Bの基準交流信号Cに対する周波数の高低を比較し、比較結果データXを出力する。自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い場合には、比較結果データXが「1」になる。これに対し、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い場合には、比較結果データXが「0」になる。
図3(B)は、図3(A)の信号比較回路303の構成例を示す回路図である。図3(C)は、交流信号Bの周波数が基準交流信号Cの周波数より高い場合のタイミングチャートである。図3(D)は、交流信号Bの周波数が基準交流信号Cの周波数以下の場合のタイミングチャートである。なお、信号は、ハイレベルが「1」を示し、ローレベルが「0」を示す。
論理積回路311は、交流信号B及び基準交流信号Cの論理積信号Dを出力する。交流信号B及び基準交流信号Cは、例えばクロック信号である。トライステートインバータ312は、基準交流信号Cがハイレベルの場合には、論理積信号Dの論理反転データを出力し、基準交流信号Cがローレベルの場合には、出力がハイインピーダンス状態になる。インバータ313は、トライステートインバータ312の出力データの論理反転データを比較結果データXとして出力する。インバータ314は、入力端子がインバータ313の出力端子に接続され、出力端子がインバータ313の入力端子に接続される。
図3(C)に示すように、交流信号Bの周波数が基準交流信号Cの周波数より高い場合には、比較結果データXが「1」になる。また、図3(D)に示すように、交流信号Bの周波数が基準交流信号Cの周波数以下の場合には、比較結果データXが「0」になる。
図4は、図1の記憶回路104の構成例を示す回路図である。記憶回路104は、第1の記憶回路、第2の記憶回路及び第3の記憶回路を有する。図4の記憶回路は、第nの記憶回路の構成例を示す。第1の記憶回路は、図2の第1の期待値比較回路105aから比較結果データY1を入力する。第2の記憶回路は、図2の第2の期待値比較回路105bから比較結果データY2を入力する。第3の記憶回路は、図2の第3の期待値比較回路105cから比較結果データY3を入力する。すなわち、第nの記憶回路は、図2の第nの期待値比較回路から比較結果データYnを入力する。ここで、nは、例えば1、2又は3である。
電気ヒューズ回路402は、バッファ411、電気ヒューズ412及びnチャネル電界効果トランジスタ413,414を有する。電気ヒューズ回路403は、インバータ421、電気ヒューズ422及びnチャネル電界効果トランジスタ423,424を有する。データA2は、電気ヒューズ412の切断/未切断状態に応じたデータである。データA3は、電気ヒューズ422の切断/未切断状態に応じたデータである。
トライステート回路401は、比較結果データYnがハイレベルの場合には、テスト合格であるので、出力がハイインピーダンス状態になり、トランジスタ413及び423がオフし、電気ヒューズ412及び422が未切断状態になる。その結果、信号A2及びA3は、ローレベルになり、否定論理和回路404は、ハイレベルのデータFNを出力する。データFHは、データA2と同じローレベルになる。また、データFLは、データA3と同じローレベルになる。
また、トライステート回路401は、比較結果データYnがローレベルの場合には、テスト失敗であるので、比較結果データXをデータA1として出力する。比較結果データYnがローレベルであり、比較結果データXがハイレベルである場合、トランジスタ413がオンになり、トランジスタ423がオフになる。その結果、電気ヒューズ412に高電圧VBが印加され、電気ヒューズ412が切断状態となり、データA2がハイレベルになる。電気ヒューズ422は、未切断状態になり、データA3がローレベルになる。データFHは、データA2と同じハイレベルになる。データFLは、データA3と同じローレベルになる。データFNは、ローレベルになる。
また、比較結果データYnがローレベルであり、比較結果データXがローレベルである場合、トランジスタ413がオフになり、トランジスタ423がオンになる。その結果、電気ヒューズ422に高電圧VBが印加され、電気ヒューズ422が切断状態となり、データA3がハイレベルになる。電気ヒューズ412は、未切断状態になり、データA2がローレベルになる。データFHは、データA2と同じローレベルになる。データFLは、データA3と同じハイレベルになる。データFNは、ローレベルになる。
以上のように、比較結果データYnがハイレベルであり、テスト合格である場合には、データFH及びFLがローレベルになり、データFNがハイレベルになる。
また、比較結果データYnがローレベルであり、テスト失敗である場合、比較結果データXがハイレベルである場合にはデータFHがハイレベルであり、データFN及びFLがローレベルである。
また、比較結果データYnがローレベルであり、テスト失敗である場合、比較結果データXがローレベルである場合にはデータFLがハイレベルであり、データFH及びFNがローレベルである。
図5(A)は、図2の第1のロジック回路106aの構成例を示す回路図である。第1のロジック回路106aは、セル107a,109a及び第1の遅延回路108aを有する。セル107aは、入力端子DにデータDDを入力し、クロック端子CKにクロック信号CK1を入力し、出力端子QからデータD1を出力する。
第1の遅延回路108aは、トライステート回路501〜503及びバッファ504〜506を有する。データFNがハイレベルであり、データFH及びFLがローレベルである場合、トライステート回路502は、データD1をそのまま出力し、トライステート回路501及び503の出力はハイインピーダンス状態になる。バッファ506は、データD1を所定の遅延時間で遅延したデータD2をセル109aに出力する。この場合、データD2は、データD1に対して、1個のバッファ506分の遅延時間を有する。この場合のデータD2は、図5(B)及び(C)のデータD2bとして示す。BIST回路101が第1のテストデータを第1のロジック回路106aの出力する場合には、図4の電気ヒューズ412及び422は未切断状態であり、データFNがハイレベルになり、データD2bがセル109aに出力される。そして、比較結果データY1がハイレベルになり、テスト合格である場合には、データFNのハイレベルが維持され、テスト後もデータD2bがセル109aに出力される。
図5(B)は、データFHがハイレベルであり、データFN及びFLがローレベルである場合のタイミングチャートを示す。この場合、トライステート回路501は、データD1をそのまま出力し、トライステート回路502及び503の出力はハイインピーダンス状態になる。バッファ504及び505は、データD1を所定の遅延時間で遅延したデータD2をセル109aに出力する。この場合、データD2は、データD1に対して、2個のバッファ504及び505分の遅延時間を有する。この場合のデータD2は、図5(B)のデータD2aとして示す。データD2aは、2個のバッファ504及び505を通過したデータである。これに対し、データD2bは、上記のように、1個のバッファ506を通過したデータである。データD2aは、データD2bに対して、遅延時間が長い。比較結果データY1がローレベルになり、テスト失敗の場合、比較結果データXがハイレベルの場合には、自励発振回路301の交流信号Bの周波数が基準交流信号Cの周波数より高いので、2個のバッファ504及び505を通過したデータD2aがセル109aに出力される。データD2aは、データD2bより遅延時間が長いので、タイミングエラーを解消することができる。
図5(C)は、データFLがハイレベルであり、データFH及びFNがローレベルである場合のタイミングチャートを示す。この場合、トライステート回路503は、データD1をそのまま出力し、トライステート回路501及び502の出力はハイインピーダンス状態になる。トライステート回路503の出力データは、バッファを介さずに、データD2としてセル109aに出力される。この場合、データD2は、データD1に対して、バッファの遅延時間がない。この場合のデータD2は、図5(C)のデータD2cとして示す。データD2cは、バッファを通過しないデータである。これに対し、データD2bは、上記のように、1個のバッファ506を通過したデータである。データD2cは、データD2bに対して、遅延時間が短い。比較結果データY1がローレベルになり、テスト失敗の場合、比較結果データXがローレベルの場合には、自励発振回路301の交流信号Bの周波数が基準交流信号Cの周波数以下であるので、バッファを通過しないデータD2cがセル109aに出力される。データD2cは、データD2bより遅延時間が短いので、タイミングエラーを解消することができる。
以上のように、第1の遅延回路108aは、第1のロジック回路106aに第1のテストデータが入力された場合には、第1の遅延時間でデータD1を遅延する。第1の期待値比較回路105aは、第1のロジック回路106aに第1のテストデータを入力した場合の第1のロジック回路106aの出力データと第1の期待値とを比較する。信号比較回路303は、自励発振回路301により生成された交流信号Bの基準交流信号Cに対する周波数の高低を比較する。第1の記憶回路104は、第1のロジック回路106aの出力データが第1の期待値と異なる場合、信号比較回路303の比較結果データXを記憶する。第1の遅延回路108aは、第1の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、データD1の遅延時間を変更する。具体的には、第1の遅延回路108aは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第1の記憶回路104に記憶されている場合には、データD1の遅延時間を第1の遅延時間より長くする。また、第1の遅延回路108aは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第1の記憶回路104に記憶されている場合には、データD1の遅延時間を第1の遅延時間より短くする。また、第1の記憶回路104は、第1のロジック回路106aの出力データが第1の期待値と同じ場合には、初期値の記憶を維持する。第1の遅延回路108aは、第1の記憶回路104に初期値が記憶されている場合には、データD1の遅延時間を変更しない。
なお、上記では、第1のロジック回路106aの例を説明したが、第2のロジック回路106b及び第3のロジック回路106cも同様である。
第2の遅延回路108bは、第2のロジック回路106bに第2のテストデータが入力された場合には、第2の遅延時間でデータD1を遅延する。第2の期待値比較回路105bは、第2のロジック回路106bに第2のテストデータを入力した場合の第2のロジック回路106bの出力データと第2の期待値とを比較する。第2の記憶回路104は、第2のロジック回路106bの出力データが第2の期待値と異なる場合、信号比較回路303の比較結果データXを記憶する。第2の遅延回路108bは、第2の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、データD1の遅延時間を変更する。具体的には、第2の遅延回路108bは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第2の記憶回路104に記憶されている場合には、データD1の遅延時間を第2の遅延時間より長くする。また、第2の遅延回路108bは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第2の記憶回路104に記憶されている場合には、データD1の遅延時間を第2の遅延時間より短くする。また、第2の記憶回路104は、第2のロジック回路106bの出力データが第2の期待値と同じ場合には、初期値の記憶を維持する。第2の遅延回路108bは、第2の記憶回路104に初期値が記憶されている場合には、データD1の遅延時間を変更しない。
第3の遅延回路108cは、第3のロジック回路106cに第3のテストデータが入力された場合には、第3の遅延時間でデータD1を遅延する。第3の期待値比較回路105cは、第3のロジック回路106cに第3のテストデータを入力した場合の第3のロジック回路106cの出力データと第3の期待値とを比較する。第3の記憶回路104は、第3のロジック回路106cの出力データが第3の期待値と異なる場合、信号比較回路303の比較結果データXを記憶する。第3の遅延回路108cは、第3の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、データD1の遅延時間を変更する。具体的には、第3の遅延回路108cは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第3の記憶回路104に記憶されている場合には、データD1の遅延時間を第3の遅延時間より長くする。また、第3の遅延回路108cは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第3の記憶回路104に記憶されている場合には、データD1の遅延時間を第3の遅延時間より短くする。また、第3の記憶回路104は、第3のロジック回路106cの出力データが第3の期待値と同じ場合には、初期値の記憶を維持する。第3の遅延回路108cは、第3の記憶回路104に初期値が記憶されている場合には、データD1の遅延時間を変更しない。
なお、上記では、遅延回路108a〜108cは、データD1を遅延する場合を例に説明したが、クロック信号CK1を遅延してもよい。以下、図6(A)〜(C)を参照しながら、その詳細を説明する。
図6(A)は、第1のロジック回路106aの他の構成例を示す回路図である。以下、図6(A)が図5(A)と異なる点を説明する。セル107aは、入力端子DにデータDDを入力し、クロック端子CKにクロック信号CK1を入力し、出力端子QからデータD1を出力する。第1の遅延回路108aは、クロック信号CK1を遅延してクロック信号CK2を出力する。セル109aは、入力端子DにデータD1を入力し、クロック端子CKにクロック信号CK2を入力し、出力端子Qからデータを出力する。
図6(A)の第1の遅延回路108aは、図5(A)の第1の遅延回路108aと同様の構成を有する。ただし、トライステート回路501はデータFLにより制御され、トライステート回路503はデータFHにより制御される。データFNがハイレベルであり、データFH及びFLがローレベルである場合、トライステート回路502は、クロック信号CK1をそのまま出力し、トライステート回路501及び503の出力はハイインピーダンス状態になる。バッファ506は、クロック信号CK1を所定の遅延時間で遅延したクロック信号CK2をセル109aに出力する。この場合、クロック信号CK2は、クロック信号CK1に対して、1個のバッファ506分の遅延時間を有する。この場合のクロック信号CK2は、図6(B)及び(C)のクロック信号CK2bとして示す。BIST回路101が第1のテストデータを第1のロジック回路106aの出力する場合には、図4の電気ヒューズ412及び422は未切断状態であり、データFNがハイレベルになり、クロック信号CK2bがセル109aに出力される。そして、比較結果データY1がハイレベルになり、テスト合格である場合には、データFNのハイレベルが維持され、テスト後もクロック信号CK2bがセル109aに出力される。
図6(B)は、データFLがハイレベルであり、データFH及びFNがローレベルである場合のタイミングチャートを示す。この場合、トライステート回路501は、クロック信号CK1をそのまま出力し、トライステート回路502及び503の出力はハイインピーダンス状態になる。バッファ504及び505は、クロック信号CK1を所定の遅延時間で遅延したクロック信号CK2をセル109aに出力する。この場合、クロック信号CK2は、クロック信号CK1に対して、2個のバッファ504及び505分の遅延時間を有する。この場合のクロック信号CK2は、図6(B)のクロック信号CK2aとして示す。クロック信号CK2aは、2個のバッファ504及び505を通過したクロック信号である。これに対し、クロック信号CK2bは、上記のように、1個のバッファ506を通過したクロック信号である。クロック信号CK2aは、クロック信号CK2bに対して、遅延時間が長い。比較結果データY1がローレベルになり、テスト失敗の場合、比較結果データXがローレベルの場合には、自励発振回路301の交流信号Bの周波数が基準交流信号Cの周波数以下であるので、2個のバッファ504及び505を通過したクロック信号CK2aがセル109aに出力される。クロック信号CK2aは、クロック信号CK2bより遅延時間が長いので、タイミングエラーを解消することができる。
図5(C)は、データFHがハイレベルであり、データFN及びFLがローレベルである場合のタイミングチャートを示す。この場合、トライステート回路503は、クロック信号CK1をそのまま出力し、トライステート回路501及び502の出力はハイインピーダンス状態になる。トライステート回路503の出力クロック信号は、バッファを介さずに、クロック信号CK2としてセル109aに出力される。この場合、クロック信号CK2は、クロック信号CK1に対して、バッファの遅延時間がない。この場合のクロック信号CK2は、図6(C)のクロック信号CK2cとして示す。クロック信号CK2cは、バッファを通過しないクロック信号である。これに対し、クロック信号CK2bは、上記のように、1個のバッファ506を通過したクロック信号である。クロック信号CK2cは、クロック信号CK2bに対して、遅延時間が短い。比較結果データY1がローレベルになり、テスト失敗の場合、比較結果データXがハイレベルの場合には、自励発振回路301の交流信号Bの周波数が基準交流信号Cの周波数より高いので、バッファを通過しないクロック信号CK2cがセル109aに出力される。クロック信号CK2cは、クロック信号CK2bより遅延時間が短いので、タイミングエラーを解消することができる。
以上のように、第1の遅延回路108aは、第1のロジック回路106aに第1のテストデータが入力された場合には、第1の遅延時間でクロック信号CK1を遅延する。第1の遅延回路108aは、第1の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、クロック信号CK1の遅延時間を変更する。具体的には、第1の遅延回路108aは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第1の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第1の遅延時間より短くする。また、第1の遅延回路108aは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第1の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第1の遅延時間より長くする。また、第1の記憶回路104は、第1のロジック回路106aの出力データが第1の期待値と同じ場合には、初期値の記憶を維持する。第1の遅延回路108aは、第1の記憶回路104に初期値が記憶されている場合には、クロック信号CK1の遅延時間を変更しない。
なお、上記では、第1のロジック回路106aの例を説明したが、第2のロジック回路106b及び第3のロジック回路106cも同様である。
第2の遅延回路108bは、第2のロジック回路106bに第2のテストデータが入力された場合には、第2の遅延時間でクロック信号CK1を遅延する。第2の遅延回路108bは、第2の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、クロック信号CK1の遅延時間を変更する。具体的には、第2の遅延回路108bは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第2の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第2の遅延時間より短くする。また、第2の遅延回路108bは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第2の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第2の遅延時間より長くする。また、第2の記憶回路104は、第2のロジック回路106bの出力データが第2の期待値と同じ場合には、初期値の記憶を維持する。第2の遅延回路108bは、第2の記憶回路104に初期値が記憶されている場合には、クロック信号CK1の遅延時間を変更しない。
第3の遅延回路108cは、第3のロジック回路106cに第3のテストデータが入力された場合には、第3の遅延時間でクロック信号CK1を遅延する。第3の遅延回路108cは、第3の記憶回路104に記憶されている信号比較回路303の比較結果データXに応じて、クロック信号CK1の遅延時間を変更する。具体的には、第3の遅延回路108cは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が高い情報が第3の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第3の遅延時間より短くする。また、第3の遅延回路108cは、自励発振回路301により生成された交流信号Bが基準交流信号Cに対して周波数が低い情報が第3の記憶回路104に記憶されている場合には、クロック信号CK1の遅延時間を第3の遅延時間より長くする。また、第3の記憶回路104は、第3のロジック回路106cの出力データが第3の期待値と同じ場合には、初期値の記憶を維持する。第3の遅延回路108cは、第3の記憶回路104に初期値が記憶されている場合には、クロック信号CK1の遅延時間を変更しない。
図7は、集積回路の試験方法を示すフローチャートである。半導体ウェハ試験が開始すると、ステップS701に進む。以下、遅延回路108a〜108cがデータD1を遅延させる例を説明するが、クロック信号CK1を遅延させる場合も同様である。
ステップS701では、BIST回路101は、テストパターンデータを生成し、第1のテストデータを第1のロジック回路106aに出力し、第2のテストデータを第2のロジック回路106bに出力し、第3のテストデータを第3のロジック回路106cに出力する。この際、第1〜第3の記憶回路104の電気ヒューズ412及び422は未切断状態であり、データFNがハイレベルであり、データFH及びFLがローレベルである。第1〜第3の遅延回路108a〜108cは、1個のバッファ506を通過したデータD2bを出力する。その後、ステップS702及びS705に進む。
ステップS702では、ロジック回路試験のため、第1の期待値比較回路105aは、第1のロジック回路106aの出力データと第1の期待値とを比較し、比較結果データY1を出力する。第2の期待値比較回路105bは、第2のロジック回路106bの出力データと第2の期待値とを比較し、比較結果データY2を出力する。第3の期待値比較回路105cは、第3のロジック回路106cの出力データと第3の期待値とを比較し、比較結果データY3を出力する。
次に、ステップS703では、すべての比較結果データY1〜Y3がハイレベルである場合には、テスト合格であるので、ステップS704に進む。比較結果データY1〜Y3の中にローレベルのデータがある場合には、テスト失敗であるので、ステップS706に進む。ステップS704では、集積回路は良品と判定され、半導体ウェハ試験が終了する。
ステップS705では、自励発振回路(リング発振回路)301は、スタートパルス信号を入力し、自励発振により交流信号Bを生成する。信号比較回路303は、交流信号B及び基準交流信号Cの周波数を比較する。信号比較回路303は、交流信号Bの周波数が基準交流信号Cの周波数より高い場合には、ハイレベルの比較結果データXを出力し、高くない場合には、ローレベルの比較結果データXを出力する。その後、ステップS706に進む。
ステップS706では、第1の記憶回路104は、第1の期待値比較回路105aにより出力される比較結果データY1がローレベルである場合には、信号比較回路303により出力される比較結果データXに応じて電気ヒューズ412又は422を切断する。比較結果データXがハイレベルである場合には、データFHがハイレベルになり、第1の遅延回路108aは、2個のバッファ504及び505を通過したデータD2aを出力する。比較結果データXがローレベルである場合には、データFLがハイレベルになり、第1の遅延回路108aは、バッファを通過しないデータD2cを出力する。
第2の記憶回路104は、第2の期待値比較回路105bにより出力される比較結果データY2がローレベルである場合には、信号比較回路303により出力される比較結果データXに応じて電気ヒューズ412又は422を切断する。比較結果データXがハイレベルである場合には、データFHがハイレベルになり、第2の遅延回路108bは、2個のバッファ504及び505を通過したデータD2aを出力する。比較結果データXがローレベルである場合には、データFLがハイレベルになり、第2の遅延回路108bは、バッファを通過しないデータD2cを出力する。
第3の記憶回路104は、第3の期待値比較回路105cにより出力される比較結果データY3がローレベルである場合には、信号比較回路303により出力される比較結果データXに応じて電気ヒューズ412又は422を切断する。比較結果データXがハイレベルである場合には、データFHがハイレベルになり、第3の遅延回路108cは、2個のバッファ504及び505を通過したデータD2aを出力する。比較結果データXがローレベルである場合には、データFLがハイレベルになり、第3の遅延回路108cは、バッファを通過しないデータD2cを出力する。
次に、ステップS707では、BIST回路101は、再び、第1のテストデータを第1のロジック回路106aに出力し、第2のテストデータを第2のロジック回路106bに出力し、第3のテストデータを第3のロジック回路106cに出力する。第1の期待値比較回路105aは、第1のロジック回路106aの出力データと第1の期待値とを比較し、比較結果データY1を出力する。第2の期待値比較回路105bは、第2のロジック回路106bの出力データと第2の期待値とを比較し、比較結果データY2を出力する。第3の期待値比較回路105cは、第3のロジック回路106cの出力データと第3の期待値とを比較し、比較結果データY3を出力する。
次に、ステップS708では、すべての比較結果データY1〜Y3がハイレベルである場合には、テスト合格であるので、ステップS709に進む。比較結果データY1〜Y3の中にローレベルのデータがある場合には、テスト失敗であるので、ステップS710に進む。ステップS709では、集積回路は良品と判定され、半導体ウェハ試験が終了する。
ステップS710では、比較結果データY1〜Y3の中のローレベルのデータに対応する記憶回路104の電気ヒューズ412及び422の両方が未切断である場合には、リペア可能であると判断し、ステップS706に戻り、上記の処理を繰り返す。それ以外の場合には、リペア不可と判断し、ステップS711に進む。ステップS711では、集積回路は不良品と判定され、半導体ウェハ試験が終了する。
以上のように、ロジック回路試験時にタイミングエラーが検出された際には、予め搭載した遅延回路108a〜108cの遅延時間を自動調整することにより、セットアップ/ホールドエラーを救済することができる。具体的には、自励発振回路301により生成される交流信号Bの周波数の高低の比較結果に応じて遅延時間を変更することにより、タイミングエラーを容易に救済することができる。また、記憶回路104内の電気ヒューズをロジック回路106毎及び半導体チップ毎で切断箇所を変えることにより、遅延時間の調整をロジック回路106毎及び半導体チップ毎に設定できる。そのため、外部からロジック回路106毎及び半導体チップ毎に遅延時間を制御する必要がなくなる。また、遅延時間制御用の外部端子を無くすことができる。
半導体ウェハ試験には、室温25℃の試験と高温又は低温の試験とがある。室温25℃の試験ではテスト合格になったとして、高温又は低温の試験ではテスト失敗と判定されてしまうことがある。その場合、本実施形態によれば、遅延回路108a〜108cの遅延時間を自動調整することにより、タイミングエラーを解消し、良品の集積回路にすることができる。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
101 BIST回路
102 パターン発生回路
103 検出回路
104 記憶回路
105 期待値比較回路
106 ロジック回路
107 セル
108 遅延回路
109 セル
102 パターン発生回路
103 検出回路
104 記憶回路
105 期待値比較回路
106 ロジック回路
107 セル
108 遅延回路
109 セル
Claims (6)
- データを処理する第1のロジック回路と、
前記第1のロジック回路内のパスのデータ又はクロック信号を遅延する第1の遅延回路と、
前記第1のロジック回路に第1のテストデータを入力した場合の前記第1のロジック回路の出力データと第1の期待値とを比較する第1の期待値比較回路と、
交流信号を生成する自励発振回路と、
前記自励発振回路により生成された交流信号の基準交流信号に対する周波数の高低を比較する信号比較回路と、
前記第1のロジック回路の出力データが前記第1の期待値と異なる場合、前記信号比較回路の比較結果を記憶する第1の記憶回路とを有し、
前記第1の遅延回路は、前記第1の記憶回路に記憶されている前記信号比較回路の比較結果に応じて、前記データ又はクロック信号の遅延時間を変更することを特徴とする集積回路。 - 前記第1の遅延回路は、前記第1のロジック回路に前記第1のテストデータが入力された場合には、第1の遅延時間で前記データを遅延し、
前記第1の遅延回路は、
前記自励発振回路により生成された交流信号が基準交流信号に対して周波数が高い情報が前記第1の記憶回路に記憶されている場合には、前記データの遅延時間を前記第1の遅延時間より長くし、
前記自励発振回路により生成された交流信号が基準交流信号に対して周波数が低い情報が前記第1の記憶回路に記憶されている場合には、前記データの遅延時間を前記第1の遅延時間より短くすることを特徴とする請求項1記載の集積回路。 - 前記第1の遅延回路は、前記第1のロジック回路に前記第1のテストデータが入力された場合には、第1の遅延時間で前記クロック信号を遅延し、
前記第1の遅延回路は、
前記自励発振回路により生成された交流信号が基準交流信号に対して周波数が高い情報が前記第1の記憶回路に記憶されている場合には、前記クロック信号の遅延時間を前記第1の遅延時間より短くし、
前記自励発振回路により生成された交流信号が基準交流信号に対して周波数が低い情報が前記第1の記憶回路に記憶されている場合には、前記クロック信号の遅延時間を前記第1の遅延時間より長くすることを特徴とする請求項1記載の集積回路。 - 前記第1の記憶回路は、前記第1のロジック回路の出力データが前記第1の期待値と同じ場合には、初期値の記憶を維持し、
前記第1の遅延回路は、前記第1の記憶回路に初期値が記憶されている場合には、前記データ又はクロック信号の遅延時間を変更しないことを特徴とする請求項1〜3のいずれか1項に記載の集積回路。 - さらに、データを処理する第2のロジック回路と、
前記第2のロジック回路内のパスのデータ又はクロック信号を遅延する第2の遅延回路と、
前記第2のロジック回路に第2のテストデータを入力した場合の前記第2のロジック回路の出力データと第2の期待値とを比較する第2の期待値比較回路と、
前記第2のロジック回路の出力データが前記第2の期待値と異なる場合、前記信号比較回路の比較結果を記憶する第2の記憶回路とを有し、
前記第2の遅延回路は、前記第2の記憶回路に記憶されている前記信号比較回路の比較結果に応じて、前記データ又はクロック信号の遅延時間を変更することを特徴とする請求項1〜4のいずれか1項に記載の集積回路。 - データを処理する第1のロジック回路と、
前記第1のロジック回路内のパスのデータ又はクロック信号を遅延する第1の遅延回路と、
交流信号を生成する自励発振回路とを有する集積回路の試験方法であって、
前記第1のロジック回路に第1のテストデータを入力した場合の前記第1のロジック回路の出力データと第1の期待値とを比較し、
前記自励発振回路により生成された交流信号の基準交流信号に対する周波数の高低を比較し、
前記第1のロジック回路の出力データが前記第1の期待値と異なる場合、前記信号比較回路の比較結果を第1の記憶回路に記憶し、
前記第1の記憶回路に記憶されている前記信号比較回路の比較結果に応じて、前記第1の遅延回路の遅延時間を変更することを特徴とする集積回路の試験方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014149812A JP2016025275A (ja) | 2014-07-23 | 2014-07-23 | 集積回路及び集積回路の試験方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014149812A JP2016025275A (ja) | 2014-07-23 | 2014-07-23 | 集積回路及び集積回路の試験方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016025275A true JP2016025275A (ja) | 2016-02-08 |
Family
ID=55271776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014149812A Pending JP2016025275A (ja) | 2014-07-23 | 2014-07-23 | 集積回路及び集積回路の試験方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016025275A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018083893A1 (ja) * | 2016-11-07 | 2018-05-11 | ソニー株式会社 | 半導体集積回路、および、半導体集積回路の制御方法 |
JP2023509925A (ja) * | 2020-10-28 | 2023-03-10 | チャンシン メモリー テクノロジーズ インコーポレイテッド | クロック発生回路、メモリ及びクロックデューティ比校正方法 |
-
2014
- 2014-07-23 JP JP2014149812A patent/JP2016025275A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018083893A1 (ja) * | 2016-11-07 | 2018-05-11 | ソニー株式会社 | 半導体集積回路、および、半導体集積回路の制御方法 |
US11099600B2 (en) | 2016-11-07 | 2021-08-24 | Sony Corporation | Semiconductor integrated circuit and method for controlling semiconductor integrated circuit |
JP2023509925A (ja) * | 2020-10-28 | 2023-03-10 | チャンシン メモリー テクノロジーズ インコーポレイテッド | クロック発生回路、メモリ及びクロックデューティ比校正方法 |
JP7387902B2 (ja) | 2020-10-28 | 2023-11-28 | チャンシン メモリー テクノロジーズ インコーポレイテッド | クロック発生回路、メモリ及びクロックデューティ比校正方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100513806B1 (ko) | 반도체 장치 | |
US9208898B2 (en) | Semiconductor device and operating method of semiconductor device | |
US9025410B2 (en) | Semiconductor memory devices and semiconductor system having parameters, and methods of testing the same | |
KR101711263B1 (ko) | 가변 지연 라인 유닛을 갖는 지연 라인 회로 | |
JP2007124196A (ja) | Dll回路及びその試験方法 | |
JP6209978B2 (ja) | メモリコントローラ,情報処理装置及び基準電圧調整方法 | |
JP2017103629A (ja) | 遅延回路、dll回路および遅延回路の故障救済方法 | |
TWI639845B (zh) | 半導體測試裝置 | |
US10422832B2 (en) | Sequential circuit, scan chain circuit including the same and integrated circuit including the same | |
US8358555B2 (en) | Fuse circuit and control method thereof | |
JP2016025275A (ja) | 集積回路及び集積回路の試験方法 | |
US9659667B2 (en) | Circuit for reading one time programmable memory | |
US11411553B1 (en) | System of free running oscillators for digital system clocking immune to process, voltage and temperature (PVT) variations | |
KR101868700B1 (ko) | 클록 데이터 복원 회로용 위상 검출기 | |
KR100791075B1 (ko) | 파워 업 리셋 회로 및 이를 구비한 반도체 장치 | |
JP4191185B2 (ja) | 半導体集積回路 | |
JP2009081188A (ja) | 半導体装置 | |
JP6237310B2 (ja) | 半導体集積回路 | |
JP2015012350A (ja) | 半導体装置 | |
US9153303B2 (en) | Methods and apparatuses for alternate clock selection | |
US8344782B2 (en) | Method and apparatus to limit circuit delay dependence on voltage for single phase transition | |
US9007115B2 (en) | Integrated circuit | |
US12123911B1 (en) | Integrated circuit with timing correction circuitry | |
KR100257521B1 (ko) | 반도체 메모리 장치의 신호 지연 회로 | |
KR100892646B1 (ko) | 반도체 메모리 장치의 로컬 스큐 감지회로 |