(57)【要約】【課題】デュアルポートメモリに対してライトクロック信号やリードクロック信号の位相差の変動を容易にテストできるようにする。【解決手段】位相調整回路は、算出回路と、位相差制御回路と、遅延クロック生成回路ととからなる。算出回路は、直列に接続される複数の遅延バッファを備え、入力されるクロック信号が前記複数の遅延バッファを伝搬するときに、前記クロック信号の周期に応じた遅延バッファ数を算出する。遅延クロック生成回路は、直列に接続される複数の遅延バッファを備え、算出回路に入力される前記クロック信号を入力し、複数の遅延バッファを伝搬させて、前記クロック信号を位相遅延量だけ位相を遅延して、遅延クロック信号を出力する。位相差制御回路は、算出回路により算出された遅延バッファ数を基に、遅延バッファ数を越えない位相遅延量を設定して、遅延クロック生成回路に出力する。【選択図】図１
2008070317.tif 000002
【特許請求の範囲】
【請求項１】
直列に接続される複数の遅延バッファを備え、入力されるクロック信号が前記複数の遅延バッファを伝搬するときに、前記クロック信号の周期に応じた遅延バッファ数を算出する算出回路と、
直列に接続される複数の遅延バッファを備え、前記算出回路に入力される前記クロック信号を入力し、前記複数の遅延バッファを伝搬させて、前記クロック信号を位相遅延量だけ位相を遅延して、遅延クロック信号を出力する遅延クロック生成回路と
前記算出回路により算出された前記遅延バッファ数を基に、遅延バッファ数を越えない前記位相遅延量を設定して、前記遅延クロック生成回路に出力する位相差制御回路と、
からなる位相調整回路。
【請求項２】
請求項１記載の位相調整回路において、
前記位相差制御回路は、さらに、外部から位相差を制御するための位相差制御信号を入力可能であり、
前記遅延バッファ数および前記位相差制御信号に対応して、前記遅延クロック生成回路から出力されるべき複数の遅延クロック信号の間の位相差を設定し、前記複数の遅延クロック信号に対応する前記位相遅延量を順次生成して、前記遅延クロック生成回路に出力することを特徴とする位相調整回路。
【請求項３】
請求項１または２記載の位相調整回路において、
前記位相差制御回路は、さらに、外部から位相調整信号を入力可能であり、前記位相調整信号に対応して前記遅延クロック信号の位相を変化させて前記遅延クロック信号を出力することを特徴とする、位相調整回路。
【請求項４】
２つのポートを持つデュアルポートメモリのためのテスト装置であって、
請求項１〜３のいずれかに記載された位相調整回路であって、ライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記位相遅延量だけ遅延して出力する位相調整回路と、
前記位相調整回路から前記位相遅延量だけ遅延されたクロック信号を入力し、かつ、第２のライトクロック信号またはリードクロック信号を入力し、前記デュアルポートメモリの前記２つのポートにそれぞれアクセスするための２つのクロック信号を生成する組込自己テスト回路と
からなるテスト装置。
【請求項５】
２つのポートを持つデュアルポートメモリのためのテスト装置であって、
請求項１〜３のいずれかに記載された第１の位相調整回路であって、第１のライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記遅延クロック信号を第１の遅延クロック信号として出力する第１の位相調整回路と、
請求項１〜３のいずれかに記載された第２の位相調整回路であって、第２のライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記遅延クロック信号を第２の遅延クロック信号として出力する第２の位相調整回路と、
前記第１の位相調整回路から前記第１の遅延クロック信号を入力し、かつ、前記第２の位相調整回路から前記第２の遅延クロック信号を入力し、前記デュアルポートメモリの２つのポートにアクセスするための２つのクロック信号を生成する組込自己テスト回路と
からなるテスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＳＩ、ＳＲＡＭなどの半導体装置のテストに関する。
【背景技術】
【０００２】
デュアルポートメモリは、データを読み書きするための２つのポートを備える。これにより、ふたつのポートから別々に読み書きできる。デュアルポートメモリのテストにおいては、２つのポートにそれぞれクロック信号や制御信号を入力してテストを行う。
【０００３】
特開平７−７３６９９号公報、特開２００４−１３９８０号公報などに記載されている従来のデュアルポートメモリのテスト方法によれば、テスト内容として、外部から入力するメモリへのライトのクロック信号と、リードのクロック信号自体をそれぞれ調整することで、各位相関係におけるメモリテストをそれぞれ実施している。なお、特開平７−７３６９９号公報や特開２００４−１３９８０号公報には、異常なアクセスを避けるための手法が記載されている。
【０００４】
なお、特開２００６−１２３６３号公報に記載されているストローブ信号遅延装置は、遅延素子（ＤＬＬ）を用いるデータ受信デバイスのインタフェース部分において、遅延素子により補正されるストローブ信号の、フリップフロップまでの遅延値とその変動量を無くすことを目的としている。そのため、遅延素子を使用してストローブ信号を位相を遅延して出力する。そして、遅延された位相を検出して、遅延素子の遅延量を制御している。なお、メモリのテストについては記載されていない。
【０００５】
【特許文献１】特開平７−７３６９９号公報
【特許文献２】特開２００４−１３９８０号公報
【特許文献３】特開２００６−１２３６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
昨今の微細化プロセスにより、メモリ動作において、リーク、ノイズ等の影響によるメモリ動作不具合が懸念されている。特にデュアルポートメモリに関しては、ライトクロックとリードクロックの同時動作が発生することから、同時動作によるによるクロストークや、ノイズ発生の影響でデュアルポートメモリが正常に動作しない可能性が懸念されている。
【０００７】
特開平７−７３６９９号公報、特開２００４−１３９８０号公報などに記載されている従来のデュアルポートメモリのテスト方法によれば、メモリテストにおいて、外部から入力するメモリへのライトクロック信号とリードクロック信号自体をそれぞれ調整している。このため、各クロック位相関係におけるデュアルポートメモリ試験を実施する場合、テストパターン作成に大きく工期が発生し、テスト時間も増大してしまう。
【０００８】
本発明の目的は、デュアルポートメモリに対してライトクロック信号やリードクロック信号の位相差の変動を容易にテストできるようにすることである。
【課題を解決するための手段】
【０００９】
本発明に係る位相調整回路は、算出回路と、位相差制御回路と、遅延クロック生成回路ととからなる。算出回路は、直列に接続される複数の遅延バッファを備え、入力されるクロック信号が前記複数の遅延バッファを伝搬するときに、前記クロック信号の周期に応じた遅延バッファ数を算出する。遅延クロック生成回路は、直列に接続される複数の遅延バッファを備え、前記算出回路に入力される前記クロック信号を入力し、前記複数の遅延バッファを伝搬させて、前記クロック信号を位相遅延量だけ位相を遅延して、遅延クロック信号を出力する。前記位相差制御回路は、前記算出回路により算出された前記遅延バッファ数を基に、遅延バッファ数を越えない前記位相遅延量を設定して、前記遅延クロック生成回路に出力する。
【００１０】
前記位相調整回路において、好ましくは、前記位相差制御回路は、さらに、外部から位相差を制御するための位相差制御信号を入力可能である。そして、前記遅延バッファ数および前記位相差制御信号に対応して、前記遅延クロック生成回路から出力されるべき複数の遅延クロック信号の間の位相差を設定し、前記複数の遅延クロック信号に対応する前記位相遅延量を順次生成して、前記遅延クロック生成回路に出力する。
【００１１】
前記位相調整回路において、好ましくは、前記位相差制御回路は、さらに、外部から位相調整信号を入力可能であり、この位相調整信号に対応して遅延クロック信号の位相を変化させて遅延クロック信号を出力する。
【００１２】
本発明に係る２つのポートを持つデュアルポートメモリのための第１のテスト装置は、前記位相調整回路と組込自己テスト回路とからなる。前記位相調整回路は、ライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記位相遅延量だけ遅延して出力する。前記組込自己テスト回路は、前記位相調整回路から前記位相遅延量だけ遅延されたクロック信号を入力し、かつ、第２のライトクロック信号またはリードクロック信号を入力し、前記デュアルポートメモリの前記２つのポートにそれぞれアクセスするための２つのクロック信号を生成する。
【００１３】
本発明に係る２つのポートを持つデュアルポートメモリのための第２のテスト装置は、第１と第２の前記位相調整回路と組込自己テスト回路とからなる。第１の位相調整回路は、第１のライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記遅延クロック信号を第１の遅延クロック信号として出力する。第２の位相調整回路は、第２のライトクロック信号またはリードクロック信号を前記クロック信号として入力し、前記遅延クロック信号を第２の遅延クロック信号として出力する。前記組込自己テスト回路は、前記第１の位相調整回路から前記第１の遅延クロック信号を入力し、かつ、前記第２の位相調整回路から前記第２の遅延クロック信号を入力し、前記デュアルポートメモリの２つのポートにアクセスするための２つのクロック信号を生成する。
【発明の効果】
【００１４】
デュアルポートメモリに対してライトクロックやリードクロックの位相差の変動に対するテストを容易に自動的に実施できる。細かい単位でのクロック位相調整でのテストが容易であるため、テストの精度も向上する。ライトクロック信号とリードクロック信号の位相を自動的にずらしながらテストできるため、テストパターン作成の手間とテストパターン量が大きく削減され、テスト時間も短縮される。これより、コスト・納期の面でも大きな効果が得られる。
【発明を実施するための最良の形態】
【００１５】
以下、添付の図面を参照して発明の実施の形態を説明する。
【００１６】
本発明では、デュアルポートメモリのテストにおいて、ライトクロックやリードクロックの位相関係を位相調整回路内部で制御できるようにする。
【００１７】
図１に示す位相調整回路１０は、デュアルポートメモリのテストに用いられ、メモリアクセスのためのライトクロック信号またはリードクロック信号（以下、単にクロック信号ともいう）および位相分割制御信号を入力して、位相（タイミング）が調整されたクロック信号を出力する。位相調整回路１０は、ＤＬＬ回路１２、位相差制御回路１４および遅延クロック選択回路１６からなる。
【００１８】
ＤＬＬ回路１２は、所定数（たとえば９段）遅延バッファを備え、外部から入力されるクロック信号を、遅延バッファを伝播させて、入力クロックの１周期が遅延バッファのいくつ分に相当するかを算出する機能を持つ。一方、遅延クロック選択回路１６においてもＤＬＬ回路１２の内部と同等の遅延バッファを備える。ＤＬＬ回路１２において、メモリアクセスクロックの１周期分の遅延バッファ数を算出できるので、クロック１周期分のうちのどのくらいのクロック遅延を付加できるかが分かり、それを基に、遅延クロック選択回路１６にて、遅延バッファにおいて必要な遅延位相量だけ遅延されたクロック信号を選択して、遅延クロック信号として出力できる。
【００１９】
図２は、ＤＬＬ回路１２の構成を示す。ＤＬＬ回路１２は、所定数（たとえば９段）の直列に接続される遅延バッファ３０と選択回路３２からなる遅延素子３４と、位相比較器３６と、遅延制御回路３８からなる。遅延バッファ３０と位相比較器３６には、外部からクロック信号が入力される。クロック信号は、各遅延バッファ３０を通るごとに遅延され、これにより１０段階で遅延されたクロック信号が発生される。これらの１０段階で遅延されたクロック信号は選択回路３２に入力される。遅延制御回路３８は選択器３２にクロック選択信号を順次出力し、これに対応して、選択器３２は、位相遅延量の順に、遅延されたクロック信号を選択して、位相比較器３６に送り、位相比較器は、その位相比較の結果を遅延制御回路３８に送る。遅延制御回路３８は、位相比較結果より、遅延バッファ数、すなわち、入力クロックの１周期が遅延バッファのいくつ分に相当するかを算出し、位相差制御回路１４に送る。
【００２０】
図１に戻って説明すると、位相差制御回路１４は、ＤＬＬ回路１２の出力信号（すなわち、クロックの周期に応じた遅延バッファ数）と、外部からの遅延設定値とを入力して、遅延クロック選択信号を遅延クロック選択回路１６に出力する。
【００２１】
遅延クロック選択回路１６は、所定数（たとえば９個）の直列に接続される遅延バッファ１８と、選択回路２０を含む。遅延クロック選択回路１６には、位相調整回路１０に入力されるのと同じクロック信号が入力される。クロック信号は、各遅延バッファ１６を通るごとに遅延され、これにより１０段階で遅延されたクロック信号が発生される。選択回路２０には、１０段階で遅延されたクロック信号が入力される。選択回路２０は、位相差制御回路１４から遅延設定値を遅延クロック選択信号として受け取り、それに対応する遅延クロック信号を選択して出力する。すなわち、位相差制御回路１４が出力する遅延クロック選択信号は、クロック信号の位相遅延量に対応しているので、遅延クロック選択回路１６では、この遅延クロック選択信号に対応してクロック信号を遅延させる。
【００２２】
図１に示す位相調整回路１０を、図３のように、組込自己テスト(ＢＩＳＴ)回路２２と共に組み込むことによって、デュアルポートメモリ２４のためのテストが行うテスト装置を組み立てる。テスト回路２６、ＢＩＳＴ回路２２およびデュアルポートメモリ２４は、１つのＰＣＢボード２８に配置される。デュアルポートメモリ２４は、２つのポートを持つメモリである。テスト回路２６は、図１に示した位相調整回路１０のほかに、もう１つのライトクロック信号またはリードクロック信号を直接にＢＩＳＴ回路２２に出力するための入出力部を備える。位相調整回路１０は、上に説明したように、遅延されたライトクロック信号またはリードクロック信号をＢＩＳＴ回路２２に出力する。ＢＩＳＴ回路２２は、入力された２つのクロック信号を基に、デュアルポートメモリ２４にアクセスするためのクロック信号を生成して、デュアルポートメモリ２４の２つのポートに出力する。ＢＩＳＴ回路２２は、テスト自動化のために用いられ、テストデータを自動的に生成してメモリにアクセスできる。
【００２３】
図４は、ＢＩＳＴ回路２２の構成を示す。ＢＩＳＴコントローラ４０は、開始信号を受け取ると、テスト対象回路（デュアルポートメモリ２４）に与えるテストパターンを発生し、メモリ２４の２つのポートに出力する。そして、比較器およびテスト結果圧縮回路４２は、テスト対象回路２４からの出力パターンを期待出力パターンと比較し、その結果を圧縮して出力する。この組込自己テスト回路２２の構成は通常の組込自己テスト回路と同様なので、その詳細な説明は省略する。
【００２４】
このテスト装置の特徴は、自動的に位相差をずらしてテスト対象回路のテストが行えることである。位相差制御回路１４は、自動的に位相差をずらすように位相遅延量を設定する。たとえば、位相遅延量は、０からＤＬＬ回路１２で算出された遅延バッファ数まで順次自動的に増加する。これにより、デュアルポートメモリのテストを、クロック信号の位相関係を自動的にずらして繰り返し実施できる。このため、位相調整回路１０は、デュアルポートメモリのテストをするための、テストパターン作成の手間と、テストパターン量が大きく削減され、テスト時間も短縮される。これにより、テストのコスト・納期の面でも大きな効果が得られる。
【００２５】
好ましくは、位相差制御回路１４は、外部から遅延設定値を受け取る。遅延設定値は、遅延クロック選択回路１６において遅延量を選択するために用いる。たとえば、遅延設定値は、図４に示される位相分割制御信号である。たとえば除算器を用いて遅延バッファ数を位相分割制御信号で除算して、その商に基づいて遅延量を設定する。たとえば、クロックの周期である遅延バッファ数が１０である場合に、位相分割制御信号が５であれば、クロックの周期が５分割される。このとき、位相差制御回路１４は、５つのサブ周期に対応する位相遅延量を選択して、出力する。なお、遅延設定値は、位相分割数でなくてもよい。たとえば、選択回路に入力される複数のクロック信号から所定の位相間隔で選択するようにしてもよい。この場合、位相間隔を入力するようにする。たとえば、位相間隔が２であると、それらの複数のクロック信号から２つおきに選択する。
【００２６】
分割数を用いる場合、たとえば、遅延クロック選択回路１６にて、選択回路２０への入力クロックが１０本の遅延クロック選択信号であることを想定する。ここで、位相分割制御信号（分割数）により、入力クロックの１周期分をどれだけ分割して位相差をずらすか、また、ずらしたクロックにてメモリテストをするかを任意に決めることができる。これにより、分割数を設定するだけで、クロック位相を自動的に調整しながら、メモリのテストを実施できる。
【００２７】
図５に示すように、遅延バッファ数（１周期）が１０であって、分割数に１０を設定したならば、第１の入力クロックから順に設定していく。ここで、図６に示すように、第１の入力クロックを設定後にメモリテストを実施し、次に第２の入力クロックを設定後にメモリテストを実施し、次に第３の入力クロックを設定後にメモリテストを実施し、・・・、最後に第１０の入力クロックを設定後にメモリテストを実施する。これにより、クロックの１０の位相差においてメモリテストを実施する。また、図７に示すように、遅延バッファ数が１０であって、分割数に５を設定した場合、第１の入力クロックを設定後にメモリテストを実施し、その後第３の入力クロックを設定後にメモリテストを実施し、その後第５の入力クロックを設定後にメモリテストを実施し、・・・、最後に第９の入力クロックを設定後にメモリテストを実施する。こうして、自動的に位相差をずらして計５回のメモリテストを実施する。
【００２８】
また、図８に示すように、位相差制御回路１４に、さらに、位相遅延量を入力クロックに対して相対的に特定の値だけずらすため外部位相調整信号を入力するようにしてもよい。位相差制御回路１４は、位相調整信号に対応して遅延クロック信号の位相を変化させて遅延クロック信号を出力する。たとえば、１以上の遅延素子を直列に接続しておき、設定された外部位相調整信号に応じて、クロックの位相を遅延させる。これにより、外部のクロックの位相を変えることなく、特定のクロック位相にてデュアルポートメモリにアクセスできる。なお、遅延素子は、位相差制御回路１４に設けてもよいし、遅延クロック選択回路２０の出力側に設けてもよい。こうして、特定のクロック位相におけるメモリテストが可能になる。このように、特定のクロック位相を指定できるようにすると、デバッグ効率が向上する。また、細かい単位でのクロック位相調整でのテストが容易であるため、テスト精度も向上する。
【００２９】
また、通常は、ＰＣＢボードにチップを取り付けてしまうと、クロック位相を調整することは、手間のかかる作業である。しかし、外部位相調整信号を用いても外部においてクロック位相を制御できるため、チップ外部のクロックの位相を調整することなく、内部クロック位相関係を調整しテストできる。
【００３０】
また、ＢＩＳＴ回路２２は、テスト回路２６が生成した位相調整クロックを基にクロック信号を生成して、デュアルポートメモリ２４へアクセスする。メモリ２４へのアクセスにはＢＩＳＴ回路２２を使用するので、ＢＩＳＴ回路２２によりテストデータを自動的に生成してメモリアクセスを行えるが、さらにこれに加え、テスト回路２６によりクロック位相も自動的にずらしながらのテストが可能になる。
【００３１】
図９に示すテスト回路２６'では、リードクロックとライトクロックのそれぞれのための２つの位相調整回路１０を内蔵する。テスト回路２６'、ＢＩＳＴ回路２２およびデュアルポートメモリ２４は、１つのＰＣＢボード２８’に配置される。リードクロックとライトクロックのそれぞれに位相調整回路１０を用いるので、両クロックの位相を同時に遅延させながらデュアルポートメモリ２４のテストを実施できる。
【図面の簡単な説明】
【００３２】
【図１】位相調整回路の回路図
【図２】ＤＬＬの回路図
【図３】タイミング調整付きデュアルポートメモリテスト装置の回路図
【図４】ＢＳＴ回路のブロック図
【図５】選択信号１０のＤＬＬで分割信号が１０を示すブロック図
【図６】選択信号１０のＤＬＬで分割信号が１０の場合の波形図
【図７】選択信号１０のＤＬＬで分割信号が５の場合の波形図
【図８】タイミング調整付きデュアルポート回路図
【図９】リードクロックおよびライトクロックのためのタイミング調整付きデュアルポート装置の回路図
【符号の説明】
【００３３】
１０  位相調整回路、    １２  ＤＬＬ回路、    １４  位相差制御回路、    １６  遅延クロック選択回路、    １８  遅延バッファ、    ２０  選択回路、    ２２  組込自己テスト回路、    ２４  デュアルポートメモリ、    ２６  テスト回路。
【図１】
2008070317.tif 000003
【図２】
2008070317.tif 000004
【図３】
2008070317.tif 000005
【図４】
2008070317.tif 000006
【図５】
2008070317.tif 000007
【図６】
2008070317.tif 000008
【図７】
2008070317.tif 000009
【図８】
2008070317.tif 000010
【図９】
2008070317.tif 000011