(57)【特許請求の範囲】
【請求項１】
データを保持可能な記憶部と、
一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備え、
前記試験部は、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、
前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備え、
前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスを生成するとともに、前記第２生成部に前記期待値を生成させる期待値生成信号を生成することを特徴とする、集積回路。
【請求項２】
前記第１書込アドレス及び前記第１書込データは、前記第２書込アドレス及び前記第２書込データを用いる書き込みの直前の書き込みに用いられたアドレス及びデータであることを特徴とする、請求項１記載の集積回路。
【請求項３】
前記第１生成部は、前記同時読出が実行可能であると判断した場合に、前記第１保持部に保持された前記第１書込アドレスを前記第１読出アドレスとして、前記記憶部に出力するとともに、前記期待値生成信号を前記第２生成部に出力し、
前記第２生成部は、前記期待値生成信号に応じて、前記第１保持部に保持された前記第１書込データを前記期待値として、比較部に出力することを特徴とする、請求項１又は請求項２記載の集積回路。
【請求項４】
前記試験部は、
前記第２書込データを保持する第２保持部をさらに備え、
前記第２生成部は、前記第１生成部において前記同時読出が実行可能ではないと判断された場合に、前記第２保持部に保持された前記第２書込データに基づいて、前記記憶部の前記第１読出アドレスから読み出された前記第１読出データとの比較に用いる期待値を生成することを特徴とする、請求項３記載の集積回路。
【請求項５】
前記第１生成部は、前記同時読出が実行可能であるか否かの判断結果に応じて、前記第１保持部に保持された前記第１書込データと、前記第２保持部に保持された前記第２書込データと、のいずれか一方を選択する前記期待値生成信号を生成し、
前記第２生成部は、
前記期待値を前記期待値生成信号に応じて選択する選択部として機能することを特徴とする、請求項４記載の集積回路。
【請求項６】
前記試験部に対して前記試験情報を供給する試験制御部をさらに備えることを特徴とする、請求項１〜５のいずれか１項記載の集積回路。
【請求項７】
一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて、データを保持可能な記憶部に対する書込及び読出試験を行なう試験回路であって、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、
前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備え、
前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスを生成するとともに、前記第２生成部に前記期待値を生成させる期待値生成信号を生成することを特徴とする、試験回路。
【請求項８】
前記第１保持部は、前記第１書込アドレスに対して前記第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データの有効性を示す有効情報を更に保持し、
前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号並びに前記有効情報に基づいて判断することを特徴とする請求項７に記載の試験回路。
【請求項９】
請求項７又は８に記載の試験回路と、
前記試験回路に対して前記試験情報を供給する試験制御部と、
前記試験制御部に対して、前記試験情報の生成に用いる設定情報を供給するとともに、前記試験回路から試験結果を読み出す試験情報供給部と、を備えることを特徴とする、試験装置。
【請求項１０】
データを保持可能な記憶部と、一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備える集積回路における試験方法であって、
前記試験部において、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを第１保持部に保持し、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１保持部に保持された前記第１書込アドレスに基づいて生成するとともに、前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を生成させるための期待値生成信号を生成し、
前記期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する、ことを特徴とする、試験方法。
【請求項１１】
前記第１保持部は、前記第１書込アドレスに対して前記第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データの有効性を示す有効情報を更に保持し、
前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号並びに前記有効情報に基づいて判断することを特徴とする請求項１〜６のいずれか１項記載の集積回路。
【請求項１２】
前記第１保持部は、前記第１書込アドレスに対して前記第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データの有効性を示す有効情報を更に保持し、
前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号並びに前記有効情報に基づいて判断することを特徴とする請求項１０に記載の試験方法。
【請求項１３】
前記第１生成部は、前記第１生成部において前記同時読出が実行可能ではないと判断された場合に、前記第２書込アドレスを読出アドレスとして、前記記憶部に出力することを特徴とする、請求項３記載の集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、集積回路，試験回路，試験装置，及び試験方法に関する。
【背景技術】
【０００２】
今日のＬＳＩ（Large Scale Integration）においては、ＬＳＩの単体試験としてＬＳＩに内蔵されるＲＡＭ（Random Access Memory）の試験を行なうために、内蔵型自己診断回路（built-in self-test回路；以下、ＢＩＳＴ回路という）が多く使用されている。
ＢＩＳＴ回路を内蔵するＬＳＩは、ＲＡＭを試験するためのアドレス及びデータ並びに制御信号をＬＳＩ外部からの最小限の設定によって発生させる試験制御回路を備える。ＢＩＳＴ回路を内蔵するＬＳＩは、試験制御回路及びＢＩＳＴ回路によりＲＡＭの試験を自動で行ない、ＢＩＳＴ回路にＲＡＭの試験結果を格納することができ、ＢＩＳＴ回路に格納された試験結果を外部から読み出すことによって、ＲＡＭの良否判定を行なうことができる。
【０００３】
このように、ＬＳＩ単体試験において試験制御回路及びＢＩＳＴ回路を用いることにより、ＬＳＩの外部から全ての試験パタンをＲＡＭに与えて結果を読み出す方法に比べ、試験時間及びＬＳＩに与えるパタン数の大幅な縮小を図ることができる。
ところで、ＣＰＵ（Central Processing Unit）等のＬＳＩに内蔵されるＲＡＭでは、１ＲＷ−ＲＡＭ（1 Read-Write-RAM）が使用されることが多い。１ＲＷ−ＲＡＭは、ＲＡＭへのアクセスのための１組のアドレス及びデータを用いて、これらのアドレス及びデータをリード動作及びライト動作で共用するものであり、リード動作とライト動作とを同時に行なうことはできない。
【０００４】
近年、１ＲＷ−ＲＡＭに加えて１Ｒ１Ｗ−ＲＡＭ（1 Read-1 Write-RAM）がＣＰＵに内蔵されるようになっている。１Ｒ１Ｗ−ＲＡＭは、ＲＡＭのアドレス及びデータをリード動作用及びライト動作用に独立して２組用いることができるものであり、リード動作とライト動作とを同時に行なうことができる。
図６は、ＲＡＭ−ＢＩＳＴを用いた１ＲＷ−ＲＡＭ回路２００を備える集積回路１００の構成例を示す図であり、図７は、ＲＡＭ−ＢＩＳＴを用いた１Ｒ１Ｗ−ＲＡＭ回路２１０を備える集積回路１１０の構成例を示す図である。
【０００５】
なお、図６及び図７においては、試験に用いるアドレス及びデータの信号のみを図示し、試験制御回路８００及び８１０から、ＲＡＭ３００及び３１０へのライト動作又は／及びリード動作の制御信号、並びに、結果レジスタ４７０ｂへの制御信号の図示を省略している。また、試験制御回路８００及び８１０の設定を行なうＬＳＩテスタや、ＬＳＩテスタと試験制御回路８００及び８１０との間の信号の図示を省略している。
【０００６】
図６に例示するように、試験制御回路８００は、１ＲＷ−ＲＡＭ回路２００に対して、１組のアドレス及びデータを出力する。出力されたアドレス及びデータは、１ＲＷ−ＲＡＭ回路２００において、ライト動作ではライトアドレス及びライトデータとして用いられ、リード動作ではリードアドレス及びリードデータを検証する期待値として用いられる。
一方、図７に例示するように、試験制御回路８１０は、１Ｒ１Ｗ−ＲＡＭ回路２１０に対して、ライト動作用及びリード動作用に２組のアドレス及びデータを出力する。ライトアドレス及びライトデータは、ライト動作のライトアドレス及びライトデータとして用いられ、リードアドレス及びリードデータは、リード動作のリードアドレス及び読出期待値として用いられる。
【０００７】
このように、図７に示す集積回路１１０は、試験制御回路８１０によりライト動作用及びリード動作用のアドレス及びデータが独立して用意されるため、１Ｒ１Ｗ−ＲＡＭの固有動作である、書き込み及び読み出しの同時動作の試験を行なうことができる。
なお、図６及び図７において、リード動作が行なわれた場合、１ＲＷ−ＲＡＭ３００及び１Ｒ１Ｗ−ＲＡＭ３１０から読み出されたデータは、比較器４７０ａにおいて期待値と比較され、比較結果が結果レジスタ４７０ｂに格納される。
【０００８】
次に、図６に示す集積回路１００について具体的に説明する。
図８は、１ＲＷ−ＲＡＭ回路２００を備える集積回路１００の詳細な構成例を示す図であり、図９は、１ＲＷ−ＲＡＭ回路２００の動作例を説明するフローチャートである。
また、図１０は、１ＲＷ−ＲＡＭ用の試験制御回路８００のｍａｒｃｈ試験の動作例を説明するフローチャートであり、図１１は、ｍａｒｃｈ試験における１ＲＷ−ＲＡＭ回路２００の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。
【０００９】
なお、図１１（ａ）において、縦軸は１ＲＷ−ＲＡＭ３００のアドレスを示し、横軸は時刻を示す。また、“Ｗ０”及び“Ｗ１”はそれぞれ０データ及び１データの書き込み、“Ｒ０”及び“Ｒ１”はそれぞれ０データ及び１データの読み出しを示す。さらに、図１１（ｂ）のタイミングチャートにおける（１）〜（７）の各番号は、図８における対応する信号又はレジスタの状態を示す。
【００１０】
ＬＳＩは、複数の１ＲＷ−ＲＡＭを内蔵することが多く、例えば、図８に示すように、集積回路１００は、ｎ個（ｎは１以上の整数）の１ＲＷ−ＲＡＭ回路２００−１〜２００−ｎと、試験制御回路の一例としての１ＲＷ−ＲＡＭ用パターンジェネレータ（ＰＧ；Pattern Generator）８００とを備える。以下、任意の１ＲＷ−ＲＡＭ回路を示すときには単に１ＲＷ−ＲＡＭ回路２００という。
【００１１】
集積回路１００においては、１つの１ＲＷ−ＲＡＭ用ＰＧ（以下、単にＰＧという）８００が複数の１ＲＷ−ＲＡＭ回路２００と接続され、ＰＧ８００から各１ＲＷ−ＲＡＭ回路２００に試験情報が出力される。
１ＲＷ−ＲＡＭ回路２００は、試験対象の１ＲＷ−ＲＡＭ３００と、１ＲＷ−ＲＡＭ３００に付加されたＢＩＳＴ回路４００Ａとを備える。
【００１２】
ここで、図８に例示する１ＲＷ−ＲＡＭ３００は、１０２４ワード×７２ビットの構成とし、１０ビットのアドレス端子“ＡＤ”、１ビットのライトイネーブル端子“ＷＥ”、７２ビットのデータ入力端子及びデータ出力端子を備える。
また、１ＲＷ−ＲＡＭ３００におけるライト動作及びリード動作は、試験制御回路８００からアドレス信号、ライトイネーブル信号及びデータ信号の各入力信号が与えられてから１クロックを必要とするものとする。
【００１３】
１ＲＷ−ＲＡＭ３００は、上述の如く、入力されるアドレスをライト動作及びリード動作で共用するＲＡＭであり、“ＡＤ”端子に入力されるアドレス、つまり信号により選択されるセルに対して、“ＷＥ”端子に入力される信号が“Ｈ”の場合は書き込みを、“Ｌ”の場合は読み出しを行なう。従って、上述したように、１ＲＷ−ＲＡＭ３００は、書き込み及び読み出しを同時に行なうことができない。
【００１４】
ＰＧ８００は、試験情報として、“address”信号、“data”信号、“we”信号及び“le”信号を生成し、１ＲＷ−ＲＡＭ回路２００に供給する。
“address”信号は、１ＲＷ−ＲＡＭ３００の特定のメモリセルを選択するアドレス信号であり、“data”信号は、メモリセルへ書き込むライトデータ兼メモリセルから読み出されたデータと比較するための期待値である。また、“we”信号は、ライト動作を活性化するライトイネーブル信号であり、“le”信号は、１ＲＷ−ＲＡＭ３００からのリードデータと期待値との比較処理を制御するロードイネーブル信号である。
【００１５】
ＢＩＳＴ回路４００Ａは、ＰＧ８００から供給される試験情報を格納するレジスタ４１０〜４６０及びＤＲＣＶ（Data Receiver）４７０を備える。
ＤＲＣＶ４７０は、図６に例示する比較器４７０ａ及び結果レジスタ４７０ｂを備える。比較器４７０ａは、１ＲＷ−ＲＡＭ３００から読み出されたデータとＷＤ＿ｄｅｌａｙｅｄ４５０に格納された期待値とを比較し、結果レジスタ４７０ｂは、比較器４７０ａによる比較結果を格納するものである。
【００１６】
以下、図９を参照しながら、１ＲＷ−ＲＡＭ回路２００の動作例について説明する。
はじめに、ＰＧ８００により、試験情報が生成されて１ＲＷ−ＲＡＭ回路２００に供給され、“we”信号が＋ＷＥ４１０に、“address”信号がＡＤ４２０に、“data”信号がＷＤ４３０に、“le”信号が＋ＬＥ４４０に、それぞれ格納される（ステップＳ１１０）。
【００１７】
次に、ＢＩＳＴ回路４００Ａにおいて、ＷＤ４３０からの出力である“WD”信号がＷＤ＿ｄｅｌａｙｅｄ４５０に、＋ＬＥ４４０からの出力である“+LE”信号が＋ＬＥ＿ｄｅｌａｙｅｄ４６０に、それぞれ格納される（ステップＳ１２０）。
また、ＢＩＳＴ回路４００Ａにおいて、＋ＷＥ４１０からの出力である“+WE”信号が“Ｈ”、例えば“１”であるか否かが判断される（ステップＳ１３０）。“Ｈ”である場合には（ステップＳ１３０のＹｅｓルート）、ＡＤ４２０に格納されたデータ、つまりＡＤ４２０からの出力である“AD”信号によって選択される１ＲＷ−ＲＡＭ３００のセルに対して、ＷＤ４３０からの“WD”信号が書き込まれる（ステップＳ１４０）。一方、“Ｌ”、例えば“０”である場合には（ステップＳ１３０のＮｏルート）、ＡＤ４２０からの“AD”信号によって選択される１ＲＷ−ＲＡＭ３００のセルに対して、読み出しが行なわれる（ステップＳ１５０）。
【００１８】
次いで、ＢＩＳＴ回路４００Ａにおいて、＋ＬＥ＿ｄｅｌａｙｅｄ４６０からの出力である“+en”信号の値が“Ｈ”であるか否かが判断される（ステップＳ１６０）。“Ｈ”である場合には（ステップＳ１６０のＹｅｓルート）、１ＲＷ−ＲＡＭ３００からのリードデータである“Read_data”信号とＷＤ＿ｄｅｌａｙｅｄ４５０からの出力である“WD_delayed”信号つまり期待値とがＤＲＣＶ４７０において比較され、結果が保存される（ステップＳ１７０）。一方、“Ｌ”である場合には（ステップＳ１６０のＮｏルート）、ステップＳ１７０の処理が抑止される。
【００１９】
なお、＋ＷＥ４１０からの“+WE”信号が“Ｈ”の場合には、＋ＬＥ４４０からの“+LE”信号が“Ｈ”となることがないように、外部、例えばＰＧ８００において制御される。
ここで、ステップＳ１２０の処理は、ステップＳ１５０で１ＲＷ−ＲＡＭ３００のセルに対して読み出しが行なわれた場合に、ＰＧ８００から供給される期待値と、１ＲＷ−ＲＡＭ３００からの“Read_data”信号とのタイミングを合わせるためのものである。
【００２０】
すなわち、ＷＤ＿ｄｅｌａｙｅｄ４５０は、ステップＳ１７０においてＤＲＣＶ４７０による比較処理のために、ＷＤ４３０からの“WD”信号を１ＲＷ−ＲＡＭ３００のリード動作に必要な１クロック分だけ遅延させるレジスタである。同様に、＋ＬＥ＿ｄｅｌａｙｅｄ４６０は、ＤＲＣＶ４７０による比較結果の格納タイミングを合わせるために、＋ＬＥ４４０からの“+LE”信号を１クロック分だけ遅延させるレジスタである。
【００２１】
以上の処理により、１ＲＷ−ＲＡＭ３００に対してＰＧ８００から与えられた試験情報に応じたライト動作又はリード動作を行なうことができる。
次に、図１０及び図１１を参照しながら、ＰＧ８００及び１ＲＷ−ＲＡＭ回路２００における、ＲＡＭの機能試験の１つであるｍａｒｃｈ試験の動作例を説明する。
はじめに、図１０において、昇順で１ＲＷ−ＲＡＭ３００の全アドレスに０データを書き込み、初期化を行なう（ステップＡ１〜Ａ４；図１１の時刻ｔ１０〜ｔ１１）。
【００２２】
具体的には、ＰＧ８００により、試験情報として“address=０番地”、“data=L”、“we=H”及び“le=L”が設定され（ステップＡ１）、１ＲＷ−ＲＡＭ３００、つまり１ＲＷ−ＲＡＭ回路２００に供給される（ステップＡ２）。そして、ＰＧ８００により、“address”が最終番地、例えば“1023”であるか否かが判断され（ステップＡ３）、最終番地でなければ（ステップＡ３のＮｏルート）、“address”が１増加されて（ステップＡ４）、ステップＡ２に移行する。
【００２３】
一方、最終番地であれば（ステップＡ３のＹｅｓルート）、初期化によって書き込まれた０データを読み出して１データを書き込む処理を、昇順で全アドレスについて行なう（ステップＡ５〜Ａ１１；図１１の時刻ｔ１１〜ｔ１２）。
具体的には、ＰＧ８００により、試験情報として“address=０番地（0）”（ステップＡ５）、“data=L”、“we=L”及び“le=H”が設定され（ステップＡ６）、１ＲＷ−ＲＡＭ３００に供給される（ステップＡ７）。次いで、ＰＧ８００により、試験情報として“data=H”、“we=H”及び“le=L”が設定され（ステップＡ８）、１ＲＷ−ＲＡＭ３００に供給される（ステップＡ９）。そして、ＰＧ８００により、“address”が最終番地であるか否かが判断され（ステップＡ１０）、最終番地でなければ（ステップＡ１０のＮｏルート）、“address”が１増加されて（ステップＡ１１）、ステップＡ６に移行する。
【００２４】
一方、最終番地であれば（ステップＡ１０のＹｅｓルート）、ステップＡ５〜Ａ１１において書き込まれた１データを読み出して０データを書き込む処理を、降順で全アドレスについて行なう（ステップＡ１２〜Ａ１８；図１１の時刻ｔ１２〜ｔ１３）。
具体的には、ＰＧ８００により、試験情報として“address=最終番地”（ステップＡ１２）、“data=H”、“we=L”及び“le=H”が設定され（ステップＡ１３）、１ＲＷ−ＲＡＭ３００に供給される（ステップＡ１４）。次いで、ＰＧ８００により、試験情報として“data=L”、“we=H”及び“le=L”が設定され（ステップＡ１５）、１ＲＷ−ＲＡＭ３００に供給される（ステップＡ１６）。そして、ＰＧ８００により、“address”が０番地であるか否かが判断され（ステップＡ１７）、０番地でなければ（ステップＡ１７のＮｏルート）、“address”を１減少させて（ステップＡ１８）、ステップＡ１３に移行する。
【００２５】
一方、０番地であれば（ステップＡ１７のＹｅｓルート）、ステップＡ１２〜Ａ１８において書き込まれた０データを読み出す処理を、降順で全アドレスについて行なう（ステップＡ１９〜Ａ２２；図１１の時刻ｔ１３〜ｔ１４）。
具体的には、ＰＧ８００により、試験情報として“address=最終番地”、“data=L”、“we=L”及び“le=H”が設定され（ステップＡ１９）、１ＲＷ−ＲＡＭ３００に供給される（ステップＡ２０）。そして、ＰＧ８００により、“address”が０番地であるか否かが判断され（ステップＡ２１）、０番地でなければ（ステップＡ２１のＮｏルート）、“address”を１減少させて（ステップＡ２２）、ステップＡ２０に移行する。一方、０番地であれば（ステップＡ２１のＹｅｓルート）、処理が終了する。
【００２６】
以上により、１ＲＷ−ＲＡＭ３００に対して０及び１データの書き込み及び読み出しを昇順及び降順で実施するｍａｒｃｈ試験を行なうことができる。
次に、図７に示す集積回路１１０について具体的に説明する。
図１２は、１Ｒ１Ｗ−ＲＡＭ回路２１０を備える集積回路１１０の詳細な構成例を示す図であり、図１３は、１Ｒ１Ｗ−ＲＡＭ回路２１０の動作例を説明するフローチャートである。
【００２７】
また、図１４及び図１５は、１Ｒ１Ｗ−ＲＡＭ用の試験制御回路８１０のｍａｒｃｈ試験の動作例を説明するフローチャートであり、図１６は、ｍａｒｃｈ試験における１Ｒ１Ｗ−ＲＡＭ回路２１０の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。
なお、図１６（ａ）において、縦軸は１Ｒ１Ｗ−ＲＡＭ３１０のアドレスを示し、横軸は時刻を示す。また、“Ｗ０”及び“Ｗ１”はそれぞれ０データ及び１データの書き込み、“Ｒ０”及び“Ｒ１”はそれぞれ０データ及び１データの読み出しを示す。さらに、図１６（ｂ）のタイミングチャートにおける（１）〜（１０）の各番号は、図１２における対応する信号又はレジスタの状態を示す。
【００２８】
図１２に例示するように、集積回路１１０は、ｎ個の１Ｒ１Ｗ−ＲＡＭ回路２１０−１〜２１０−ｎと、試験制御回路の一例としての１Ｒ１Ｗ−ＲＡＭ用ＰＧ（以下、単にＰＧという）８１０とを備える。以下、任意の１Ｒ１Ｗ−ＲＡＭ回路を示すときには単に１Ｒ１Ｗ−ＲＡＭ回路２１０という。
集積回路１１０においては、１つのＰＧ８１０が複数の１Ｒ１Ｗ−ＲＡＭ回路２１０に接続され、ＰＧ８１０から各１Ｒ１Ｗ−ＲＡＭ回路２１０に試験情報が出力される。
【００２９】
１Ｒ１Ｗ−ＲＡＭ回路２１０は、試験対象の１Ｒ１Ｗ−ＲＡＭ３１０と、１Ｒ１Ｗ−ＲＡＭ３１０に付加されたＢＩＳＴ回路４００Ｂとを備える。
上述したように、図１２に例示する１Ｒ１Ｗ−ＲＡＭ３１０は、１ＲＷ−ＲＡＭ３００と異なり、ライト動作とリード動作とを同時に行なうことができるＲＡＭであり、１０ビットのライトアドレス端子“ＷＡ”及びリードアドレス端子“ＲＡ”の２種類のアドレス入力端子を備える。また、１Ｒ１Ｗ−ＲＡＭ３１０は、１ビットのライト動作制御用のライトイネーブル端子“ＷＥ”及びリード動作制御用のリードイネーブル端子“ＲＥ”、７２ビットのデータ入力端子及びデータ出力端子を備える。
【００３０】
１Ｒ１Ｗ−ＲＡＭ３１０は、“ＷＥ”端子に入力される信号が“Ｈ”の場合は、ライト用アドレスで選択されるセルに書き込みを行ない、“ＲＥ”端子に入力される信号が“Ｈ”の場合は、リード用アドレスで選択されるセルから読み出しを行なう。なお、“ＷＡ”端子及び“ＲＡ”端子に入力されるアドレスは、１Ｒ１Ｗ−ＲＡＭ３１０の回路保護の観点から、異なるアドレスに限られる。
【００３１】
なお、１Ｒ１Ｗ−ＲＡＭ３１０におけるライト動作及びリード動作は、試験制御回路８１０からライト又はリードアドレス信号、ライト又はリードイネーブル信号、データ信号の各入力信号が与えられてから１クロックを必要とするものとする。
また、図１２に例示する１Ｒ１Ｗ−ＲＡＭ３１０は、図８に例示する１ＲＷ−ＲＡＭ３００と同様に１０２４ワード×７２ビットの構成とする。
【００３２】
ここで、１Ｒ１Ｗ−ＲＡＭ３１０の機能確認の試験においては、書き込みと読み出しとを同時に行ない正常に動作できるかを確認することになる。すなわち、ライト用及びリード用の２種類のアドレス信号と、ライト用及びリード用つまり期待値用の２種類のデータ信号と、ライト動作及びリード動作制御用の２種類の制御信号とが必要となる。
１Ｒ１Ｗ−ＲＡＭ３１０用のＰＧ８１０は、試験情報として、“write address”信号、“read address”信号、“write data”信号、“read data”信号、“we”信号、“re”信号及び“le”信号を生成し、１Ｒ１Ｗ−ＲＡＭ回路２１０に供給する。
【００３３】
“write address”信号及び“read address”信号は、１Ｒ１Ｗ−ＲＡＭ３１０の特定のメモリセルをそれぞれ選択するライトアドレス信号及びリードアドレス信号であり、“write data”信号は、メモリセルへ書き込むライトデータである。また、“read data”信号は、メモリセルから読み出されたデータと比較するための期待値であり、“re”信号は、リード動作を活性化するリードイネーブル信号である。なお、“we”信号及び“le”信号は、図８に例示するＰＧ８００から出力される信号と同様である。
【００３４】
ＢＩＳＴ回路４００Ｂは、ＰＧ８１０から供給される試験情報を格納するレジスタ４１０、４１５、４２０、４２５、４３０、４３５、４４０、４５０及び４６０及び図８に例示するものと同様のＤＲＣＶ４７０を備える。
以下、図１３を参照しながら、１Ｒ１Ｗ−ＲＡＭ回路２１０の動作例について説明する。
【００３５】
はじめに、ＰＧ８１０により、試験情報が生成されて１Ｒ１Ｗ−ＲＡＭ回路２１０に供給され、“write address”信号がＷＡ４２０に、“write data”信号がＷＤ４３０に、“we”信号が＋ＷＥ４１０に、“read address”信号がＲＡ４２５に、“read data”信号がＲＤ４３５に、“re”信号が＋ＲＥ４１５に、“le”信号が＋ＬＥ４４０に、それぞれ格納される（ステップＳ２１０）。
【００３６】
次に、ＢＩＳＴ回路４００Ｂにおいて、ＲＤ４３５からの出力である“RD”信号がＲＤ＿ｄｅｌａｙｅｄ４５０に、＋ＬＥ４４０からの“+LE”信号が＋ＬＥ＿ｄｅｌａｙｅｄ４６０に、それぞれ格納される（ステップＳ２２０）。
また、ＢＩＳＴ回路４００Ｂにおいて、＋ＲＥ４１５からの出力である“+RE”信号が“Ｈ”、例えば“１”であるか否かが判断される（ステップＳ２３０）。“Ｈ”である場合には（ステップＳ２３０のＹｅｓルート）、＋ＷＥ４１０からの“+WE”信号が“Ｈ”であるか否かが判断される（ステップＳ２４０）。
【００３７】
＋ＷＥ４１０からの“+WE”信号が“Ｈ”である場合には（ステップＳ２４０のＹｅｓルート）、ＷＡ４２０からの“WA”信号によって選択される１Ｒ１Ｗ−ＲＡＭ３１０のセルに対して、ＷＤ４３０からの“WD”信号が書き込まれる。また、“WD”信号の書き込みと同時に、ＲＡ４２５からの出力である“RA”信号によって選択される１Ｒ１Ｗ−ＲＡＭ３１０のセルに対して、読み出しが行なわれる（ステップＳ２５０）。
【００３８】
次いで、ＢＩＳＴ回路４００Ｂにおいて、＋ＬＥ＿ｄｅｌａｙｅｄ４６０からの出力である“+en”信号の値が“Ｈ”であるか否かが判断される（ステップＳ２６０）。“Ｈ”である場合には（ステップＳ２６０のＹｅｓルート）、１Ｒ１Ｗ−ＲＡＭ３１０からのリードデータである“Read_data”信号とＲＤ＿ｄｅｌａｙｅｄ４５０からの“RD_delayed”信号つまり期待値とがＤＲＣＶ４７０において比較され、結果が保存される（ステップＳ２７０）。一方、“Ｌ”である場合には（ステップＳ２６０のＮｏルート）、ステップＳ２７０の処理が抑止される。
【００３９】
一方、ステップＳ２４０において、＋ＷＥ４１０からの“+WE”信号が“Ｌ”、例えば“０”である場合には（ステップＳ２４０のＮｏルート）、ＲＡ４２５からの“RA”信号によって選択される１Ｒ１Ｗ−ＲＡＭ３１０のセルに対して、読み出しが行なわれ（ステップＳ２８０）、ステップＳ２６０の処理に移行する。
また、ステップＳ２３０において、＋ＲＥ４１５からの“+RE”信号が“Ｌ”である場合には（ステップＳ２３０のＮｏルート）、＋ＷＥ４１０からの“+WE”信号が“Ｈ”であるか否かが判断される（ステップＳ２９０）。“Ｈ”である場合には（ステップＳ２９０のＹｅｓルート）、ＷＡ４２０からの“WA”信号によって選択される１Ｒ１Ｗ−ＲＡＭ３１０のセルに対して、ＷＤ４３０からの“WD”信号が書き込まれ（ステップＳ３００）、ステップＳ２６０の処理に移行する。一方、“Ｌ”である場合には（ステップＳ２９０のＮｏルート）、ステップＳ３００の処理が抑止され、ステップＳ２６０の処理に移行する。
【００４０】
ここで、ステップＳ２２０の処理は、ステップＳ２５０又はステップＳ２８０において１Ｒ１Ｗ−ＲＡＭ３１０のセルに対して読み出しが行なわれた場合に、ＰＧ８１０から供給される期待値と、１Ｒ１Ｗ−ＲＡＭ３１０からの“Read_data”とのタイミングを合わせるためのものである。
すなわち、ＲＤ＿ｄｅｌａｙｅｄ４５０は、ステップＳ２７０においてＤＲＣＶ４７０による比較処理のために、ＲＤ４３５からの“RD”信号を１Ｒ１Ｗ−ＲＡＭ３１０のリード動作に必要な１クロック分だけ遅延させるレジスタである。同様に、＋ＬＥ＿ｄｅｌａｙｅｄ４６０は、ＤＲＣＶ４７０による比較結果の格納タイミングを合わせるために、＋ＬＥ４４０からの“+LE”信号を１クロック分だけ遅延させるレジスタである。
【００４１】
以上の処理により、１Ｒ１Ｗ−ＲＡＭ３１０に対してＰＧ８１０から与えられた試験情報に応じたライト動作又は／及びリード動作を行なうことができる。
次に、図１４〜図１６を参照しながら、ＰＧ８１０及び１Ｒ１Ｗ−ＲＡＭ回路２１０のｍａｒｃｈ試験の動作例を説明する。
はじめに、図１４において、昇順で１Ｒ１Ｗ−ＲＡＭ３１０の全アドレスに０データを書き込み、初期化を行なうとともに、同時リードを行なう（ステップＢ１〜Ｂ４；図１６の時刻ｔ２０〜ｔ２１）。
【００４２】
具体的には、ＰＧ８１０により、試験情報として“write address=０番地（0）”、“write data=L”、“we=H”、“read address=０番地”、“read data=L”、“re=L”及び“le=L”が設定され（ステップＢ１）、１Ｒ１Ｗ−ＲＡＭ３１０、つまり１Ｒ１Ｗ−ＲＡＭ回路２１０に供給される（ステップＢ２）。そして、ＰＧ８１０により、“write address”が最終番地、例えば“1023”であるか否かが判断される（ステップＢ３）。最終番地でなければ（ステップＢ３のＮｏルート）、“write address”が１増加され、“read address=write address-1”、“re=H”及び“le=H”が設定されて（ステップＢ４）、ステップＢ２に移行する。
【００４３】
すなわち、ステップＢ１〜Ｂ４において、ライトと同時にリード試験を行なうために、“write address=１番地”への書き込みの際に“read address=write address-1”、つまり０番地からの読み出しが行なわれ、この同時リードは、“read address”が最終番地−１になるまで行なわれる。
一方、最終番地であれば（ステップＢ３のＹｅｓルート）、初期化によって書き込まれた０データを読み出して１データを書き込む処理を、昇順で全アドレスについて行なう（ステップＢ５〜Ｂ１４；図１６の時刻ｔ２１〜ｔ２２）。
【００４４】
具体的には、ＰＧ８１０により、試験情報として“write address=０番地”、“read address=０番地”、“write data=H”、“re=H”、“le=H”（ステップＢ５）、“we=L”及び“read data=L”が設定され（ステップＢ６）、１Ｒ１Ｗ−ＲＡＭ３１０に供給される（ステップＢ７）。そして、ＰＧ８１０により、“we=H”が設定され（ステップＢ８）、“write address”が０番地であるか否かが判断される（ステップＢ９）。０番地でなければ（ステップＢ９のＮｏルート）、“read data=H”及び“read address=write address-1”が設定され（ステップＢ１０）、１Ｒ１Ｗ−ＲＡＭ３１０に供給される（ステップＢ１２）。一方、０番地であれば（ステップＢ９のＹｅｓルート）、“read data=L”及び“read address=最終番地”が設定され（ステップＢ１１）、ステップＢ１２に移行する。
【００４５】
ステップＢ１２が実行されると、ＰＧ８１０により、“write address”が最終番地であるか否かが判断される（ステップＢ１３）。最終番地でなければ（ステップＢ１３のＮｏルート）、“write address”が１増加され、“read address=write address”が設定されて（ステップＢ１４）、ステップＢ６に移行する。一方、最終番地であれば（ステップＢ１３のＹｅｓルート）、図１５のＸに移行する。
【００４６】
すなわち、ステップＢ５〜Ｂ１４において、同時リード試験を行なうために、“write address=０番地”のときには“read address=最終番地”、それ以外のときには“read address=write address-1”からの読み出しが行なわれ、この同時リードは、“read address”が最終番地−１になるまで行なわれる。
図１５のＸに移行すると、ステップＢ５〜Ｂ１４において書き込まれた１データを読み出して０データを書き込む処理を、降順で全アドレスについて行なう（ステップＢ１５〜Ｂ２４；図１６の時刻ｔ２２〜ｔ２３）。
【００４７】
具体的には、ＰＧ８１０により、試験情報として“write address=最終番地”、“read address=最終番地”、“write data=L”、“re=H”、“le=H”（ステップＢ１５）、“we=L”及び“read data=H”が設定され（ステップＢ１６）、１Ｒ１Ｗ−ＲＡＭ３１０に供給される（ステップＢ１７）。そして、ＰＧ８１０により、“we=H”が設定され（ステップＢ１８）、“write address”が最終番地であるか否かが判断される（ステップＢ１９）。最終番地でなければ（ステップＢ１９のＮｏルート）、“read data=L”及び“read address=write address+1”が設定され（ステップＢ２０）、１Ｒ１Ｗ−ＲＡＭ３１０に供給される（ステップＢ２２）。一方、最終番地であれば（ステップＢ１９のＹｅｓルート）、“read data=H”及び“read address=０番地”が設定され（ステップＢ２１）、ステップＢ２２に移行する。
【００４８】
ステップＢ２２が実行されると、ＰＧ８１０により、“write address”が０番地であるか否かが判断される（ステップＢ２３）。０番地でなければ（ステップＢ２３のＮｏルート）、“write address”を１減少させ、“read address=write address”が設定されて（ステップＢ２４）、ステップＢ１６に移行する。
すなわち、ステップＢ１５〜Ｂ２４において、同時リード試験を行なうために、“write address=最終番地”のときには“read address=０番地”、それ以外のときには“read address=write address=+1”からの読み出しが行なわれ、この同時リードは、“read address”が１になるまで行なわれる。
【００４９】
一方、０番地であれば（ステップＢ２３のＹｅｓルート）、ステップＢ１５〜Ｂ２４において書き込まれた０データを読み出す処理を、降順で全アドレスについて行なう（ステップＢ２５〜Ｂ２８；図１６の時刻ｔ２３〜ｔ２４）。
具体的には、ＰＧ８１０により、試験情報として“read address=最終番地”、“read data=L”、“re=H”及び“le=H”が設定され（ステップＢ２５）、１Ｒ１Ｗ−ＲＡＭ３１０に供給される（ステップＢ２６）。そして、ＰＧ８１０により、“read address”が０番地であるか否かが判断され（ステップＢ２７）、０番地でなければ（ステップＢ２７のＮｏルート）、“read address”を１減少させて（ステップＢ２８）、ステップＢ２６に移行する。一方、０番地であれば（ステップＢ２７のＹｅｓルート）、処理が終了する。
【００５０】
なお、ステップＢ２５〜Ｂ２８においては、書き込みが行なわれないため、同時リード試験は行なわれない。
以上により、１Ｒ１Ｗ−ＲＡＭ３１０に対して０及び１データの書き込み及び読み出し、並びに、書き込みの際の同時リード試験を昇順及び降順で実施するｍａｒｃｈ試験を行なうことができる。
【００５１】
なお、関連する技術として、複数の物理的に別個のメモリがそれぞれ論理ブロックを有し、論理ブロックの各々が、状態マシンから供給される共通の入力を受信して、メモリを特定的にテストするテスト信号を生成する技術がある。
また、関連する他の技術として、第１動作モードにおいて、半導体メモリへのデータの書き込みを制御する回路と、半導体メモリからのデータの読み出しを制御する回路とが、互いに非同期のクロック信号によって動作する一方、第２動作モードにおいては、互いに同期したクロック信号によって動作する技術がある。
【先行技術文献】
【特許文献】
【００５２】
【特許文献１】特開平１０−４０７００号公報
【特許文献２】特開２００５−２３５２５９号公報
【発明の概要】
【発明が解決しようとする課題】
【００５３】
図７及び図１２に例示するように、１Ｒ１Ｗ−ＲＡＭのＢＩＳＴを行なうためには、試験制御回路から供給されるアドレス、データ及び制御信号がそれぞれ２組要求される。
また、１Ｒ１Ｗ−ＲＡＭの機能試験において、１Ｒ１Ｗ−ＲＡＭ固有の動作であるライト及びリードの同時動作を実行させることになるため、１ＲＷ−ＲＡＭ用の試験制御回路を使用する場合には試験制御回路への機能追加が必要となる。また、集積回路内に１ＲＷ−ＲＡＭと１Ｒ１Ｗ−ＲＡＭとが混在する場合にはそれぞれのＲＡＭに専用の試験制御回路を用意する必要がある。
【００５４】
さらに、試験制御回路から集積回路内の各１Ｒ１Ｗ−ＲＡＭへ分配される信号線の本数が、１ＲＷ−ＲＡＭに比べ２倍になるため、信号分配に用いられる配線やバッファ等の物量も２倍となる。
また、論理ブロックを個々のメモリごとに備える上述した関連技術では、２ポートＲＡＭに対して試験を行なう場合、第２のポートに対するアドレスを、第１のポートに対して生成されるアドレスビットの１つをローカル論理回路内で反転して生成する。しかし、この手法では、第１及び第２のポートに対するアドレスにおいてアドレス交差が発生するため、期待データに対して変更を加える必要があり、論理回路の回路規模が増大したり製造コストが増加することになる。
【００５５】
このように、１Ｒ１Ｗ−ＲＡＭ（記憶部）と、１Ｒ１Ｗ−ＲＡＭの試験を行なうＢＩＳＴ回路（試験部）とを備える集積回路においては、１ＲＷ−ＲＡＭとＢＩＳＴ回路とを備える集積回路と比して、回路規模が増大したり製造コストが増加するという課題がある。
上述の点に鑑み、本件の目的の１つは、記憶部と記憶部の試験を行なう試験部とを備える集積回路の回路規模の増大又は製造コストの増加を抑止することである。
【００５６】
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の１つとして位置付けることができる。
【課題を解決するための手段】
【００５７】
本件の集積回路は、データを保持可能な記憶部と、一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備え、前記試験部は、前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備え、前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスを生成するとともに、前記第２生成部に前記期待値を生成させる期待値生成信号を生成するものである。
【００５８】
また、本件の試験回路は、一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて、データを保持可能な記憶部に対する書込及び読出試験を行なう試験回路であって、前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備え、前記第１生成部は、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスを生成するとともに、前記第２生成部に前記期待値を生成させる期待値生成信号を生成するものである。
【００５９】
さらに、本件の試験装置は、上記試験回路と、前記試験回路に対して前記試験情報を供給する試験制御部と、前記試験制御部に対して、前記試験情報の生成に用いる設定情報を供給するとともに、前記試験回路から試験結果を読み出す試験情報供給部と、を備えるものである。
また、本件の試験方法は、データを保持可能な記憶部と、一組のアドレス及びデータ、並びに、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号を含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備える集積回路における試験方法であって、前記試験部において、前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを第１保持部に保持し、前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記同時読出が実行可能か否かを、前記第１書込アドレスと前記第２書込アドレスとの比較結果及び前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１保持部に保持された前記第１書込アドレスに基づいて生成するとともに、前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を生成させるための期待値生成信号を生成し、前記期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成するものである。
【発明の効果】
【００６０】
開示の技術によれば、記憶部と記憶部の試験を行なう試験部とを備える集積回路の回路規模の増大又は製造コストの増加を抑止することができる。
【図面の簡単な説明】
【００６１】
【図１】一実施形態としての集積回路の構成例を示す図である。
【図２】本実施形態に係る集積回路の詳細な構成例を示す図である。
【図３】本実施形態に係る試験装置の構成例を示す図である。
【図４】本実施形態に係る１Ｒ１Ｗ−ＲＡＭ回路の動作例を説明するフローチャートである。
【図５】本実施形態に係るｍａｒｃｈ試験における１Ｒ１Ｗ−ＲＡＭ回路の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。
【図６】１ＲＷ−ＲＡＭ回路を備える集積回路の構成例を示す図である。
【図７】１Ｒ１Ｗ−ＲＡＭ回路を備える集積回路の構成例を示す図である。
【図８】１ＲＷ−ＲＡＭ回路を備える集積回路の詳細な構成例を示す図である。
【図９】１ＲＷ−ＲＡＭ回路の動作例を説明するフローチャートである。
【図１０】１ＲＷ−ＲＡＭ用の試験制御回路のｍａｒｃｈ試験の動作例を説明するフローチャートである。
【図１１】ｍａｒｃｈ試験における１ＲＷ−ＲＡＭ回路の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。
【図１２】１Ｒ１Ｗ−ＲＡＭ回路を備える集積回路の詳細な構成例を示す図である。
【図１３】１Ｒ１Ｗ−ＲＡＭ回路の動作例を説明するフローチャートである。
【図１４】１Ｒ１Ｗ−ＲＡＭ用の試験制御回路のｍａｒｃｈ試験の動作例を説明するフローチャートである。
【図１５】１Ｒ１Ｗ−ＲＡＭ用の試験制御回路のｍａｒｃｈ試験の動作例を説明するフローチャートである。
【図１６】ｍａｒｃｈ試験における１Ｒ１Ｗ−ＲＡＭ回路の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。
【発明を実施するための形態】
【００６２】
以下、図面を参照して実施の形態を説明する。
〔１〕一実施形態
〔１−１〕集積回路の構成例
図１は、一実施形態としての集積回路１の構成例を示す図であり、図２は、集積回路１の詳細な構成例を示す図である。なお、図２において、図１に示す符号と同一の符号は、図１を参照しながら後述する各構成と同一又は略同一であるため、その詳細を省略する。
【００６３】
図１に例示するように、集積回路１は、ｎ個のＲＡＭ回路２−１〜２−ｎと、試験制御回路の一例としての１ＲＷ−ＲＡＭ用ＰＧ（以下、単にＰＧという）８とを備えるＬＳＩである。以下、任意のＲＡＭ回路を示すときには単にＲＡＭ回路２という。
集積回路１においては、１つのＰＧ８が複数のＲＡＭ回路２と接続され、ＰＧ８から各ＲＡＭ回路２に試験情報が出力される。
【００６４】
本実施形態に係る集積回路１は、１Ｒ１Ｗ−ＲＡＭ回路２が備える後述するＢＩＳＴ回路４により、１ＲＷ−ＲＡＭ用ＰＧ８から出力される試験情報に基づいて、１Ｒ１Ｗ−ＲＡＭ用の試験情報を生成することができ、１Ｒ１Ｗ−ＲＡＭ３に対するライト動作とともに、同時リード（同時読出）の試験を行なうことができる。
なお、本実施形態の一例としての集積回路１は、ＲＡＭ回路２−１〜２−ｎにおいて、１ＲＷ−ＲＡＭ（記憶部）を備える１ＲＷ−ＲＡＭ回路と１Ｒ１Ｗ−ＲＡＭ（記憶部）３を備える１Ｒ１Ｗ−ＲＡＭ回路とが混在しても良い。
【００６５】
従って、集積回路１によれば、１ＲＷ−ＲＡＭ用のＰＧ８及び信号配線を用いて、各ＲＡＭ回路２のうちの１Ｒ１Ｗ−ＲＡＭ回路２それぞれにおいて、１Ｒ１Ｗ−ＲＡＭ３のＢＩＳＴを実行することができる。これにより、１ＲＷ−ＲＡＭ用のＰＧ８に機能追加をすることなく、又、集積回路１内に分配される配線数を増加させずに、１Ｒ１Ｗ−ＲＡＭの機能試験を実現することができる。
【００６６】
以下、図１に例示する１Ｒ１Ｗ−ＲＡＭ回路２−１について説明する。なお、以下、特に断らない限り、１Ｒ１Ｗ−ＲＡＭ回路２−１を単にＲＡＭ回路２という。
ＲＡＭ回路２は、図１に例示するように、データを保持可能な試験対象の１Ｒ１Ｗ−ＲＡＭ３と、１Ｒ１Ｗ−ＲＡＭ３に対応して付加されたＢＩＳＴ回路４を備える。
１Ｒ１Ｗ−ＲＡＭ（第１記憶部）３は、図１２に例示する１Ｒ１Ｗ−ＲＡＭ３１０と同様の構成である。
【００６７】
すなわち、１Ｒ１Ｗ−ＲＡＭ３は、ライト動作とリード動作とを同時に行なうことができるＲＡＭであり、ライトアドレス端子“ＷＡ”及びリードアドレス端子“ＲＡ”の２種類のアドレス入力端子を備える。また、１Ｒ１Ｗ−ＲＡＭ３は、ライト動作制御用のライトイネーブル端子“ＷＥ”及びリード動作制御用のリードイネーブル端子“ＬＥ”、データ入力端子及びデータ出力端子を備える。
【００６８】
また、１Ｒ１Ｗ−ＲＡＭ３は、“ＷＥ”端子に入力される信号が“Ｈ”の場合は、ライト用アドレスで選択されるセルに書き込みを行ない、“ＲＥ”端子に入力される信号が“Ｈ”の場合は、リード用アドレスで選択されるセルから読み出しを行なう。１Ｒ１Ｗ−ＲＡＭ３から読み出されたデータは、リードデータ（第１読出データ）である“Read_data”信号として、後述するＤＲＣＶ４７に入力される。
【００６９】
なお、“ＷＡ”端子及び“ＲＡ”端子に入力されるアドレスは、１Ｒ１Ｗ−ＲＡＭ３の回路保護の観点から、異なるアドレスに限られる。
また、１Ｒ１Ｗ−ＲＡＭ３は、例えば、図２に示すように、１０２４ワード×７２ビットの構成とし、“ＷＡ”端子及び“ＲＡ”端子はそれぞれ１０ビット、“ＷＥ”端子及び“ＲＥ”端子はそれぞれ１ビット（本）、データ入力端子及びデータ出力端子はそれぞれ７２ビットである。
【００７０】
なお、図２に例示する１Ｒ１Ｗ−ＲＡＭ３におけるライト動作及びリード動作は、後述する“address”信号、“data”信号及び“we”信号の各入力信号が与えられてから１クロックかかるものとする。
ＰＧ８は、図８に例示するＰＧ８００と同様の構成である。
すなわち、ＰＧ８は、試験情報として、“address”信号、“data”信号、“we”信号及び“le”信号を生成し、ＲＡＭ回路２に供給する。
【００７１】
“address”信号は、１Ｒ１Ｗ−ＲＡＭ３の特定のメモリセルを選択するアドレス信号であり、ライトアドレス又はリードアドレスとして用いられる。また、“data”信号は、メモリセルへ書き込むライトデータ（書込データ）、又は、メモリセルから読み出されたデータと比較するための期待値（検証用データ）である。さらに、“we”信号は、ライト動作を活性化するライトイネーブル信号（書込制御信号）であり、１Ｒ１Ｗ−ＲＡＭ３に対して書き込みを行なうか否かを示す信号である。また、“le”信号は、１Ｒ１Ｗ−ＲＡＭ３から読み出された“Read_data”信号と期待値との比較及び比較結果の格納等の比較処理を制御するロードイネーブル信号（比較制御信号）である。
【００７２】
なお、ＰＧ８は、例えば、図２に示すように、１０ビットの“address”信号及び７２ビットの“data”信号を、それぞれ各１Ｒ１Ｗ−ＲＡＭ回路２にパラレル転送する。
ＢＩＳＴ回路（試験回路，試験部）４は、１組のアドレス及びデータを含む試験情報を供給され、試験情報に基づいて１Ｒ１Ｗ−ＲＡＭ３に対する書込及び読出試験をＢＩＳＴによって行なうものである。
【００７３】
ＢＩＳＴ回路４は、ＰＧ８から供給される試験情報を格納するレジスタ４１〜４６、ＤＲＣＶ４７、アドレス／データ保持回路５、リードアドレス／制御信号生成回路６、及び、選択部７を備える。
＋ＷＥ４１は、ＰＧ８からの“we”信号を保持するレジスタであり、＋ＷＥ４１から出力される“+WE”信号は、１Ｒ１Ｗ−ＲＡＭ３の“ＷＥ”端子、アドレス／データ保持回路５及びリードアドレス／制御信号生成回路６に入力される。
【００７４】
ＷＡ４２は、ＰＧ８からの“address”信号を保持するレジスタであり、ＷＡ４２から出力される“WA”信号は、１Ｒ１Ｗ−ＲＡＭ３の“ＷＡ”端子、アドレス／データ保持回路５及びリードアドレス／制御信号生成回路６に入力される。
ＷＤ４３は、ＰＧ８からの“data”信号を保持するレジスタであり、ＷＤ４３から出力される“WD”信号は、１Ｒ１Ｗ−ＲＡＭ３のデータ入力端子、ＷＤ＿ｄｅｌａｙｅｄ４５及びアドレス／データ保持回路５に入力される。
【００７５】
＋ＬＥ４４は、ＰＧ８からの“le”信号を保持するレジスタであり、＋ＬＥ４４から出力される“+LE”信号は、リードアドレス／制御信号生成回路６に入力される。
ＷＤ＿ｄｅｌａｙｅｄ（第２保持部）４５は、ＷＤ４３から出力された“WD”信号を保持するレジスタであり、ＷＤ＿ｄｅｌａｙｅｄ４５から出力される“WD_delayed”信号は、１Ｒ１Ｗ−ＲＡＭ３から読み出される“Read_data”信号と比較される期待値の候補として、選択部７に入力される。
【００７６】
＋ＬＥ２＿ｄｅｌａｙｅｄ４６は、ＰＧ８からの試験信号に基づいてリードアドレス／制御信号生成回路６により生成された後述する“le2”信号を保持するレジスタであり、＋ＬＥ２＿ｄｅｌａｙｅｄ４６から出力される“+LE2_delayed”信号は、ＤＲＣＶ４７に入力される。
ここで、ＷＤ＿ｄｅｌａｙｅｄ４５は、１Ｒ１Ｗ−ＲＡＭ３のセルに対して読み出しが行なわれた場合に、ＰＧ８から供給される期待値と、１Ｒ１Ｗ−ＲＡＭ３からの“Read_data”信号とのタイミングを合わせるためのものである。
【００７７】
すなわち、ＲＤ＿ｄｅｌａｙｅｄ４５は、ＤＲＣＶ４７による比較処理のために、ＷＤ４３からの“WD”信号を１Ｒ１Ｗ−ＲＡＭ３のリード動作に必要な１クロック分だけ遅延させるレジスタである。同様に、＋ＬＥ＿ｄｅｌａｙｅｄ４６は、ＤＲＣＶ４７による比較結果の格納タイミングを合わせるために、＋ＬＥ４４からの“+LE”信号を１クロック分だけ遅延させるレジスタである。
【００７８】
ＤＲＣＶ（データ受信部，比較部；以下、データ受信部という）４７は、１Ｒ１Ｗ−ＲＡＭ３のリードアドレス（第１読出アドレス）から読み出されたリードデータ（第１読出データ）である“Read_data”信号と、後述する選択部７から出力された検証用データとしての期待値とを比較し、比較結果を格納するものである。なお、データ受信部４７は、例えば、“Read_data”信号と期待値とを比較する比較器４７ａと、比較器４７ａによる比較結果を格納する結果レジスタ４７ｂとを備える（図３参照）。
【００７９】
また、データ受信部４７は、＋ＬＥ２＿ｄｅｌａｙｅｄ４６から出力される“+LE2_delayed”信号（制御信号）に応じて、例えば“+LE2_dalayed”信号が有効を示す“Ｈ”である場合に、比較及び比較結果の格納を行なう。
なお、例えば、図２に示すＢＩＳＴ回路４のように、＋ＷＥ４１、＋ＬＥ４４及び＋ＬＥ２＿ｄｅｌａｙｅｄ４６はそれぞれ１ビットのレジスタであり、ＷＡ４２は１０ビットのレジスタであり、ＷＤ４３、ＷＤ＿ｄｅｌａｙｅｄ４５及びデータ受信部４７はそれぞれ７２ビットのレジスタである。
【００８０】
アドレス／データ保持回路（第１保持部）５は、試験情報に基づき１Ｒ１Ｗ−ＲＡＭ３のライトアドレス（第１書込アドレス）に対してライトデータ（第１書込データ）の書き込みが行なわれた場合に当該ライトアドレス及びライトデータを保持するものである。なお、以下、アドレス／データ保持回路５を単に保持回路５という。
なお、保持回路５は、“+WE”信号、“WA”信号及び“WD”信号を入力信号とするとともに、保持するライトアドレスである“WA_bak”信号及び“+WA_valid”信号をリードアドレス／制御信号生成回路６に、出力信号として出力する。また、保持回路５は、保持するライトデータである“WD_bak”信号を、１Ｒ１Ｗ−ＲＡＭ３から読み出される“Read_data”信号と比較される期待値の候補として、選択部７に出力する。
【００８１】
保持回路５は、“+WE”信号が有効を示す“Ｈ”例えば“１”である場合、つまりライト動作の場合に、ＷＡ４２及びＷＤ４３から出力されるライトアドレス及びライトデータを保持するとともに、有効情報を示すフラグに有効を示す“Ｈ”を設定する。
なお、有効情報とは、ＢＩＳＴ回路４による試験の開始後に供給されたライトアドレスが保持されたか否かを示す情報であり、フラグに設定された値は、“+WA_valid”信号として保持回路５から出力される。この有効情報は、ＢＩＳＴが実行されてから一度でも“+WE”信号が“Ｈ”になったとき、すなわちライト動作を行なったときに、“Ｈ”となる情報である。例えば、有効情報は、ＢＩＳＴが実行される際に無効を示す“Ｌ”、例えば“０”が設定されることにより初期化され、初回のライトデータの書き込みにおいて“Ｈ”が設定されると、ＰＧ８からのＢＩＳＴに係る一連の試験情報の出力が完了するまでは、保持回路５によって“Ｈ”が維持される。
【００８２】
また、保持回路５は、具体的には、“+WE”信号が有効を示す場合に、当該“+WE”信号と同時に供給されたアドレスである“WA”信号（第２書込アドレス）及びデータである“WD”信号（第２書込データ）を、次回の同時リードの実行の際に用いられる“WA_bak”信号（次回の第１書込アドレス）及び“WD_bak”信号（次回の第１書込データ）として保持する。
【００８３】
すなわち、“WA_bak”信号は、一工程前（直前）にＰＧ８から供給された“WA”信号を保存した値、つまり今回のライトアドレスを用いる書き込みの直前の書き込みに用いられたアドレスである。
また、“WD_bak”信号は、一工程前にＰＧ８から供給された“WD”信号を保存した値、つまり今回のライトデータを用いる書き込みの直前の書き込みに用いられたデータである。
【００８４】
ここで、一工程とは、後述する図４に例示するフローチャートのＳｔａｒｔからＥｎｄまでの一連の処理をいう。つまり、一工程とは、ＰＧ８から出力された試験情報について、１Ｒ１Ｗ−ＲＡＭ３に対するライト動作又は／及びリード動作が行なわれて、少なくともライト動作が行なわれた場合にはステップＳ７の処理が行なわれ、リード動作のみが行なわれた場合にはステップＳ１１が実行されるまでの処理である。
【００８５】
ＢＩＳＴにおいては、ＰＧ８から、例えば１クロックごとにＢＩＳＴの試験内容に応じた試験情報が順次ＲＡＭ回路２に供給される。
従って、ＲＡＭ回路２では、例えば１クロックごとに供給される試験情報に対して、順次、次段のレジスタ又は１Ｒ１Ｗ−ＲＡＭ３等へのシフト、ライト動作若しくはリード動作等の処理、又は、比較等が行なわれる。
【００８６】
このように、保持回路５は、直近のライト動作で使用したライトアドレス及びライトデータを保持し、且つ、保持したデータの有効性を示す有効情報“WA_valid”信号を保持する。
ここで、保持回路５は、例えば、図２に示すように、ＷＤ＿ｔｍｐ５１、ＷＤ＿ｂａｋ５２及びライトアドレス保持部５３を備える。
【００８７】
ＷＤ＿ｔｍｐ５１は、＋ＷＥ４１から出力された“+WE”信号が“Ｈ”の場合に、ＷＤ４３から出力された“data”信号を取り込み保持する７２ビットのレジスタであり、“+WE”信号が入力される“＋ｅｎ”端子を備える。また、ＷＤ＿ｔｍｐ５１から出力される“WD_tmp”信号は、ＷＤ＿ｂａｋ５２に入力される。
ＷＤ＿ｂａｋ５２は、ＷＤ＿ｔｍｐ５１から出力された“WD_tmp”信号を保持する７２ビットのレジスタであり、ＷＤ＿ｂａｋ５２から出力される“WD_bak”信号は、選択部７に入力される。つまり、ＷＤ＿ｂａｋ５２は、ＷＤ＿ｔｍｐ５１の出力信号を常に保持するものであり、ＷＤ＿ｂａｋ５２から出力される“WD_bak”信号は、ＷＤ＿ｔｍｐ５１からの“WD_tmp”信号から１クロック遅れた信号となる。これは、上述の如く１Ｒ１Ｗ−ＲＡＭ３のリード動作に１クロックかかるために、期待値として用いられる“WD_bak”信号についても、タイミングを合わせて１クロック遅らせるためである。
【００８８】
ライトアドレス保持部５３は、ＷＡ＿ｂａｋ５３ａ及びＷＡ＿ｖａｌｉｄ５３ｂと、 “+WE”信号が入力される“＋ｅｎ”端子とを備えるレジスタである。
ＷＡ＿ｂａｋ５３ａは、＋ＷＥ４１から出力された“+WE”信号が“Ｈ”の場合に、ＷＡ４２から出力された“WA”信号を取り込み保持する１０ビットのレジスタであり、ＷＡ＿ｂａｋ５３ａから出力される“WA_bak”信号は、リードアドレス／制御信号生成回路６に入力される。
【００８９】
ＷＡ＿ｖａｌｉｄ５３ｂは、＋ＷＥ４１から出力された“+WE”信号が“Ｈ”の場合に、当該“+WE”信号、つまり“Ｈ”を取り込み、有効情報として保持する１ビットのレジスタであり、ＷＡ＿ｖａｌｉｄ５３ｂから出力される“+WA_valid”信号は、リードアドレス／制御信号生成回路６に入力される。
リードアドレス／制御信号生成回路（第１生成部）６は、試験情報に基づく１Ｒ１Ｗ−ＲＡＭ３のライトアドレス（第２書込アドレス）に対するライトデータ（第２書込データ）の書き込みと同時に１Ｒ１Ｗ−ＲＡＭ３のリードアドレス（第１読出アドレス）からリードデータを読み出す同時リード（同時読出）に用いるリードアドレスを、保持回路５に保持されたライトアドレス（第１書込アドレス）に基づいて生成するものである。なお、以下、リードアドレス／制御信号生成回路６を単に生成回路６という。
【００９０】
生成回路６は、保持回路５からの“WA_bak”信号及び“+WA_valid”信号と、“WA”信号、“+WE”信号及び“+LE”信号とを入力信号とする。また、生成回路６は、出力信号として、リードアドレス（読出アドレス）である“RA”信号及びリード動作を活性化するリードイネーブル“+RE”信号を、１Ｒ１Ｗ−ＲＡＭ３の“ＲＡ”端子及び“ＲＥ”端子にそれぞれ出力する。さらに、生成回路６は、出力信号として、期待値セレクト信号“+SEL”を選択部７に、１Ｒ１Ｗ−ＲＡＭ３の同時リード動作に対応したロードイネーブル“+LE2”信号を＋ＬＥ２＿ｄｅｌａｙｅｄ４６に、それぞれ出力する。
【００９１】
ここで、１Ｒ１Ｗ−ＲＡＭ３の機能確認の試験においては、書き込みと読み出しとを同時に行ない正常に動作できるかを確認することになる。しかしながら、上述の如く１ＲＷ−ＲＡＭ用のＰＧ８は、アドレス及びデータ並びに制御信号を１組しか出力しない。
そこで、本実施形態に係るＢＩＳＴ回路４は、試験情報に基づいて、書き込みと同時に読み出しを行なうためのライト用及びリード用の、２種類のアドレス信号、データ信号及び制御信号を出力するようになっている。
【００９２】
具体的には、生成回路６は、入力信号及び以下の同時リード条件に基づいて、１Ｒ１Ｗ−ＲＡＭ３に対するライト動作とともにリード動作を行なう同時リードが実行可能か否かの判断を行ない、実行可能と判断された場合に、同時リードを行なうための情報を生成する。ここで、同時リード条件は、
（“+WA_valid=H”）且つ（“WA_bak≠WA”）且つ（“+WE=H”）
となる。
【００９３】
すなわち、生成回路６は、“+WE”信号及び“+WA_valid”信号がいずれも有効を示し、且つ、“WA”信号（第２書込アドレス）と保持回路５に保持された“WA_bak”信号（第１書込アドレス）とが異なる場合に、同時リードが実行可能であると判断する。
なお、上述のごとく、１Ｒ１Ｗ−ＲＡＭ３には、同一アドレスに対してライト及びリードを同時には行なうことができないという制約があるので、同時リード条件の第２の条件（“WA_bak≠WA”）を規定している。
【００９４】
また、本実施形態に係る同時リードは、ＰＧ８からの試験情報において書き込みが指示された場合に、この書き込みと同時に読み出しを行なうものであるため、集積回路１において同時リードを実行するためには、前提として書き込みが指示されたことが要求される。従って、同時リード条件の第３の条件（“+WE=H”）を規定している。
生成回路６から出力される各出力信号は、それぞれ、同時リード条件が可能か否かに応じて以下のような状態となる。
【００９５】
“RA”信号は、同時リードが可能な場合には保持回路５に保持されている“WA_bak”信号となり、それ以外のリード動作の場合にはＰＧ８から供給されＷＡ４２に保持されている“WA”信号となる。
すなわち、本実施形態に係る生成回路６は、同時リードを実行する際のリードアドレス（第１読出アドレス）として、“WA_bak”信号、つまり、今回の同時リードに係るライトアドレス（第２書込アドレス）を用いる書き込みの直前の書き込みに用いられたアドレス（第１書込アドレス）を生成（使用）する。具体的には、生成回路６は、同時リードを実行する場合には、“WA_bak”信号を“RA”信号として１Ｒ１Ｗ−ＲＡＭ３に供給する。
【００９６】
換言すれば、ＲＡＭ回路２において同時リードが実行可能されるためには、１Ｒ１Ｗ−ＲＡＭ３に対して以前に書き込みが実行されていることが要求される。そこで、同時リード条件の第１の条件（“+WA_valid=H”）を規定している。
一方、生成回路６は、同時リード条件の第３の条件（“+WE=H”）が満たされていない場合、例えば、同時リードではない通常のリードを行なう場合には、“WA”信号（第２書込アドレス）に基づいて“RA”信号を生成（使用）する。具体的には、生成回路６は、同時リードを実行しない場合には、“WA”信号を“RA”信号として１Ｒ１Ｗ−ＲＡＭ３に供給する。
【００９７】
“+RE”信号は、同時リードが可能な場合、又は、ＰＧ８からリード動作指示があった場合、つまり“+LE=H”である場合に、“+RE=H”となる。
“+SEL”信号（選択信号，期待値生成信号）は、選択部７に期待値を選択（生成）させる信号であり、保持回路５に保持された“WD_bak”信号と、ＷＤ＿ｄｅｌａｙｅｄ４５に保持された“WD_delayed”信号と、のいずれか一方を選択する信号である。“+SEL”信号は、同時リードが実行可能であるか否かの判断結果に応じて状態が変わるものであり、同時リードが実行可能であると判断された場合に、保持回路５に保持されている“WD_bak”信号を期待値として使用することを示す状態“+SEL=H”となる。一方、同時リードが実行不可能であると判断された場合にはＰＧ８から供給されＷＤ＿ｄｅｌａｙｅｄ４５に保持されている“WD_delayed”信号を期待値として使用することを示す状態“+SEL=L”となる。
【００９８】
“+LE2”信号は、同時リード動作に対応した“+LE”信号であり、データ比較部４７を制御する信号である。“+LE2”信号は、ＰＧ８からリード動作指示があった場合（“+LE=H”である場合）、又は、同時リードが可能な場合に、“+LE2=H”となる。
ここで、生成回路６は、例えば、図２に示すように、比較器６１、ＡＮＤ回路６２、セレクタ６３、＋ＳＥＬ６４及びＯＲ回路６５を備える。
【００９９】
比較器６１は、保持回路５からの“WA_bak”信号と“WA”信号との比較を行なうものであり、両者の信号が不一致の場合に、ＡＮＤ回路６２に“Ｈ”を出力する。
ＡＮＤ回路６２は、比較器６１の出力と、“+WE”信号と、保持回路５からの“+WA_valid”信号とをＡＮＤ演算する３入力の回路であり、３入力全てが“Ｈ”である場合に、出力信号である同時read信号を“Ｈ”に設定する。なお、同時read信号は、セレクタ６３、＋ＳＥＬ６４及びＯＲ回路６５にそれぞれ入力される。
【０１００】
セレクタ６３は、“WA”信号と、保持回路５からの“WA_bak”信号と、同時read信号とを入力信号とし、同時read信号が“Ｈ”である場合に“WA_bak”信号を、同時read信号が“Ｌ”である場合には“WA”信号を選択して、“RA”信号として出力する。“RA”信号は、１Ｒ１Ｗ−ＲＡＭ３の“ＲＡ”端子にリードアドレスとして入力される。
ＯＲ回路６５は、同時read信号と“+LE”信号とをＯＲ演算する回路であり、いずれか一方の入力信号が“Ｈ”である場合に、“Ｈ”の出力信号を出力する。ＯＲ回路６５からの出力信号は、“+RE”信号として１Ｒ１Ｗ−ＲＡＭ３の“ＲＥ”端子に入力されるとともに、“+LE2”信号として＋ＬＥ２＿ｄｅｌａｙｅｄ４６に入力される。
【０１０１】
＋ＳＥＬ６４は、入力される同時read信号を保持する１ビットのレジスタであり、＋ＳＥＬ６４から出力される“+SEL”信号は、同時read信号を１クロック遅らせた信号として生成され、選択部７に入力される。これは、上述の如く１Ｒ１Ｗ−ＲＡＭ３のリード動作に１クロックかかるために、期待値選択信号である“+SEL”信号についても、タイミングを合わせて１クロック遅らせるためである。
【０１０２】
選択部（第２生成部）７は、同時リードが可能な場合、１Ｒ１Ｗ−ＲＡＭ３のリードアドレス（第１読出アドレス）から読み出されるリードデータ（第１読出データ）の期待値を、保持回路５に保持された“WD_bak”信号に基づいて生成するものである。
具体的には、選択部７は、検証用データとしての期待値を、生成回路６から出力された選択信号（期待値生成信号）“+SEL”に基づいて選択（生成）するものであり、保持回路５からの“WD_bak”信号と、ＷＤ＿ｄｅｌａｙｅｄ４５からの“WD_delayed”信号と、生成回路６からの“+SEL”信号とを入力信号とする。
【０１０３】
また、選択部７は、生成回路６から出力された選択信号“+SEL”に従って、“+SEL=H”の場合に“WA_bak”信号を、“+SEL=L”の場合には“WD_delayed”を期待値として選択し、選択した期待値を“EXP”信号としてデータ受信部４７に出力する。
なお、選択部７としての機能は、例えば、図２に示すように、セレクタによって実現される。
【０１０４】
以上のように、本実施形態に係る集積回路１のＢＩＳＴ回路４は、生成回路６において同時リードが実行可能であると判断された場合には、供給されたアドレス及びデータをライトアドレス及びライトデータとして１Ｒ１Ｗ−ＲＡＭ３に供給すると同時に、生成回路６により生成されたリードアドレスを１Ｒ１Ｗ−ＲＡＭ３へ供給する。
また、ＢＩＳＴ回路４は、１Ｒ１Ｗ−ＲＡＭ３のリードアドレスから読み出されたリードデータと選択部７により選択（生成）された期待値とを比較する。
【０１０５】
さらに、ＢＩＳＴ回路４は、同時リードの実行に係るライトアドレス及びライトデータとして、ＰＧ８から供給される試験情報“WA”信号及び“WD”信号を用いる。一方、ＢＩＳＴ回路４は、同時リードの実行に係るリードアドレス及び期待値として、直前に書き込みを行なったライトアドレス及びライトデータである、保持回路５に保持された“WA_bak”信号及び“WD_bak”信号を用いることになる。
【０１０６】
なお、同時リードの実行に係るリードアドレス及び期待値として、直近のライト動作に係るアドレス（“WA_bak”信号）及びデータ（“WD_bak”信号）を用いているが、これは、直近であればそれ以降にライト動作が行なわれておらず、書き込んだデータが１Ｒ１Ｗ−ＲＡＭ３内に保持されていることが保証されているためである。従って、より確実に同時リードを実行することができる。
【０１０７】
なお、上述したＢＩＳＴ回路４の構成は、１Ｒ１Ｗ−ＲＡＭ回路３を備える１Ｒ１Ｗ−ＲＡＭ回路２におけるものである。集積回路１において、１ＲＷ−ＲＡＭ回路を備える１ＲＷ−ＲＡＭ回路２が混在する場合、１ＲＷ−ＲＡＭ回路２に備えられるＢＩＳＴ回路４は、図８に例示するＢＩＳＴ回路４００Ａに置き換えることができる。
すなわち、上述の如く、集積回路１は、書き込み及び読み出しが同時に実行可能である少なくとも一つの１Ｒ１Ｗ−ＲＡＭ（第１記憶部）３を含む複数のＲＡＭ３と、複数のＲＡＭ３に対応して備えられた複数のＢＩＳＴ回路４とを備える。
【０１０８】
そして、複数のＢＩＳＴ回路４のうちの１Ｒ１Ｗ−ＲＡＭ３に対応して設けられるＢＩＳＴ回路４が、上述した同時リードを実行する。従って、集積回路１において、１ＲＷ−ＲＡＭと１Ｒ１Ｗ−ＲＡＭとが混在した状態でも、１つのＰＧ８によってそれぞれのＲＡＭに対するＢＩＳＴ等の試験を行なうことができる。
〔１−２〕試験装置の構成例
ＬＳＩの測定には、ＬＳＩテスタと呼ばれる測定装置が用いられる。
【０１０９】
図３は、本実施形態に係る試験装置１０の構成例を示す図である。
なお、図３においては、集積回路１の構成の一部を省略している。また、図３において、集積回路１及びＬＳＩテスタ９には電源やクロック等、試験に用いられる他の信号も供給されるが、これらの図示を省略している。
試験装置１０は、図１及び図２に示す上述した集積回路１と、ＬＳＩテスタ９とを備える。
【０１１０】
ＬＳＩテスタ（試験情報供給部）９は、集積回路１と接続され、集積回路１のＰＧ８に対して試験情報の生成に用いる設定値（設定情報）を供給するとともに、各１Ｒ１Ｗ−ＲＡＭ回路２のデータ受信部４７に格納された比較結果、つまり試験結果をそれぞれ読み出すものである。
ＬＳＩテスタ９は、テスタプログラム９１、試験データ保持部９２、設定値供給部９３及び読出値比較部９４を備える。
【０１１１】
試験データ保持部９２は、ＰＧ８からＲＡＭ回路２に供給される試験情報を生成するための試験データを保持するものであり、ＨＤＤ（Hard Disk Drive）等の磁気ディスク装置やＳＳＤ（Solid State Drive）等の半導体ドライブ装置等の記憶装置により構成される。
例えば、試験データ保持部９２は、試験データとして、ＰＧ８において生成される試験情報のうちのデータ“data”信号を保持し、これを設定値供給部９３及び読出値比較部９４に出力する。
【０１１２】
設定値供給部９３は、試験データ保持部９２からの試験データに基づいて、ＰＧ８に対して設定値を供給するものである。
読出値比較部９４は、各１Ｒ１Ｗ−ＲＡＭ回路２の結果レジスタ４７ｂに格納された試験結果としての比較結果を読み出して、試験データ保持部９２からの試験データと比較を行なうことにより、試験結果が元のデータパターンである試験データと一致するか、つまり正しい値であるか否かを判断するものである。
【０１１３】
テスタプログラム９１は、記憶装置や図示しないＲＯＭ（Read Only Memory）等に格納され、設定値供給部９３によるＰＧ８への設定値の出力や、読出値比較部９４による結果レジスタ４７ｂからの試験結果の取得及び比較を制御するプログラムである。なお、ＬＳＩテスタ９１は、ＣＰＵやＭＰＵ（Micro Processing Unit）等の図示しないプロセッサを備え、テスタプログラム９１としての動作は、プロセッサがテスタプログラム９１を実行することにより、実現される。
【０１１４】
なお、集積回路１は、上述したＬＳＩテスタ９により測定が行なわれるように設計されており、ＬＳＩテスタ９からの設定値をＰＧ８に設定するとともに、結果レジスタ４７ｂに保持された比較結果を出力することができる。
〔１−３〕集積回路の動作例
次に、上述の如く構成された本実施形態に係る集積回路１におけるＢＩＳＴ動作の一例を説明する。
【０１１５】
図４は、本実施形態に係る１Ｒ１Ｗ−ＲＡＭ回路２の動作例を説明するフローチャートである。
図５は、本実施形態に係るｍａｒｃｈ試験における１Ｒ１Ｗ−ＲＡＭ回路２の動作例を説明する図であって、（ａ）はパタンシーケンスを示す図、（ｂ）はタイミングチャートを示す図である。なお、図５は、ｍａｒｃｈ試験における、１Ｒ１Ｗ−ＲＡＭ回路２の図４に示す動作を、１ＲＷ−ＲＡＭ用のＰＧ８が図１０に示す手順で試験情報を生成した場合のパタンシーケンス及びタイミングチャートを示したものである。
【０１１６】
なお、図５（ａ）において、縦軸は１Ｒ１Ｗ−ＲＡＭ３のアドレスを示し、横軸は時刻を示す。また、“Ｗ０”及び“Ｗ１”はそれぞれ０データ及び１データの書き込み、“Ｒ０”及び“Ｒ１”はそれぞれ０データ及び１データの読み出しを示す。さらに、“ｒ０”及び“ｒ１”はそれぞれ保持回路５及び生成回路６により生成されたリードアドレスからの０データ及び１データの同時読み出し（同時リード）を示す。
【０１１７】
また、図５（ｂ）のタイミングチャートにおける（１）〜（１５）の各番号は、図１及び図２における対応する信号又はレジスタの状態を示す。なお、図５では、１Ｒ１Ｗ−ＲＡＭ３の最終アドレスを“1023”としている。
以下、図４を参照しながら、１Ｒ１Ｗ−ＲＡＭ回路２のＢＩＳＴ動作の一例について説明する。
【０１１８】
はじめに、ＰＧ８により、ＢＩＳＴのための試験情報が生成されて１Ｒ１Ｗ−ＲＡＭ回路２に供給され、“we”信号が＋ＷＥ４１に、“address”信号がＷＡ４２に、“data”信号がＷＤ４３に、“le”信号が＋ＬＥ４４に、それぞれ格納される（ステップＳ１）。
次に、ＢＩＳＴ回路４において、ＷＤ４３のデータがＷＤ＿ｄｅｌａｙｅｄ４５に格納される（ステップＳ２）。
【０１１９】
そして、生成回路６において、＋ＷＥレジスタ４１からの“+WE”信号が“Ｈ”、例えば“１”であるか否かが判断される（ステップＳ３；同時リード条件の第３の条件）。
“+WE”信号が“Ｈ”である場合には（ステップＳ３のＹｅｓルート）、生成回路６により、＋ＷＡ＿Ｖａｌｉｄ５３ｂからの“+WA_valid”信号が“Ｈ”であり、且つ、ＷＡ＿ｂａｋ５３ａからの“WA_bak”信号がＷＡ４２からの“WA”信号と一致しないか否かが判断される（ステップＳ４；同時リード条件の第１及び第２の条件）。
【０１２０】
ステップＳ４の条件を満たす場合には（ステップＳ４のＹｅｓルート）、生成回路６において同時リードが実行可能であると判断され、ＢＩＳＴ回路４により、“WA”信号のアドレスで選択される１Ｒ１Ｗ−ＲＡＭ３のセルへのＷＤ４３からの“WD”信号のデータが書き込まれる。また、同時に、ＢＩＳＴ回路４において、生成回路６によりリードアドレスである“RA”信号として生成された“WA_bak”信号のアドレスで選択される１Ｒ１Ｗ−ＲＡＭ３のセルから“Read_data”信号がリードデータとして読み出される（ステップＳ５）。
【０１２１】
そして、データ受信部４７により、期待値としての“WD_bak”信号のデータと、１Ｒ１Ｗ−ＲＡＭ３から読み出された“Read_data”信号のデータとが比較され、結果が保存される（ステップＳ６）。
また、保持回路５により、“WA”信号が“WA_bak”信号として保存され、“WD”信号が“WD_bak”信号として保存され、“+WA_valid”信号として“Ｈ”が設定され（ステップＳ７）、処理が終了する。なお、“+WA_valid”信号は、一度“Ｈ”が設定されるとＢＩＳＴが終了するまで“Ｈ”が維持されるため、“+WA_valid”信号の設定は、ＢＩＳＴの初回書き込みの際にのみ行なわれても良い。
【０１２２】
一方、ステップＳ４の条件を満たさない場合（ステップＳ４のＮｏルート）、つまり、“+WA_valid”信号が“Ｈ”若しくは“WA”信号と“WA_bak”信号とが一致する場合には、ステップＳ８において通常のライト動作が行なわれる。
すなわち、ＢＩＳＴ回路４により、“WA”信号のアドレスで選択される１Ｒ１Ｗ−ＲＡＭ３のセルへの“WD”信号のデータが書き込まれる（ステップＳ８）。そして、ステップＳ７の処理に移行する。
【０１２３】
また、ステップＳ３において、“+WE”信号が“Ｈ”ではない場合には（ステップＳ３のＮｏルート）、ステップＳ９及びＳ１０において通常のリード動作が行なわれる。
すなわち、生成回路６により、“+LE”信号が“Ｈ”であるか否かが判断される（ステップＳ９）。
“+LE”信号が“Ｈ”である場合には（ステップＳ９のＹｅｓルート）、生成回路６によりリードアドレスである“RA”信号として生成された“WA”信号が出力され、ＢＩＳＴ回路４により、“RA”信号のアドレスで選択される１Ｒ１Ｗ−ＲＡＭ３のセルから“Read_data”信号の読み出しが行なわれる（ステップＳ１０）。
【０１２４】
そして、データ受信部４７により、期待値としての“WD_delayed”信号のデータと、１Ｒ１Ｗ−ＲＡＭ３から読み出された“Read_data”信号のデータとが比較され、結果が保存されて（ステップＳ１１）、処理が終了する。
一方、ステップＳ９において“+LE”信号が“Ｈ”ではない場合には（ステップＳ９のＮｏルート）、処理が終了する。
【０１２５】
以上の処理により、本実施形態に係る１Ｒ１Ｗ−ＲＡＭ回路２は、１Ｒ１Ｗ−ＲＡＭ３に対してＰＧ８から与えられた試験情報に応じたライト動作又は／及びリード動作を行なうことができる。
なお、図４に例示するステップＳ３（及びＳ４）の処理は、主に生成回路６による処理となる。
【０１２６】
また、図４に例示するステップＳ６及びＳ１１の処理では、選択部７において、生成回路６から供給された“+SEL”信号に応じて、期待値として使用するデータを“WD_bak”信号又は“WD_delayed”信号から選択する処理が行なわれる。
さらに、図４に例示する保持回路５によるステップＳ７の処理は、直前のライト動作に用いられたアドレス及びデータ等を保存する処理であり、ここで保存されたアドレス及びデータ等は、次回以降のクロックによってステップＳ４〜Ｓ６の処理を実行する一工程において、“WA_bak”信号及び“WD_bak”信号として使用される。
【０１２７】
上述したように、ＰＧ８から１Ｒ１Ｗ−ＲＡＭ回路２に供給される試験情報は図８及び図１０に示すＰＧ８００から供給される試験情報と同様である。しかしながら、本実施形態に係る集積回路１においては、１Ｒ１Ｗ−ＲＡＭ回路２側に追加の回路として保持回路５、生成回路６及び比較部７を付加しているため、ライト及びリードの同時動作の試験を行なうことが可能である。
【０１２８】
例えば、本実施形態に係る１Ｒ１Ｗ−ＲＡＭ回路２は、ｍａｒｃｈ試験において、１ＲＷ−ＲＡＭ用のＰＧ８が図１０に示す手順で試験情報を生成した場合に、図５に例示する動作を行なうことができる。
以下、図１０及び図５を参照しながら、ＰＧ８及び１Ｒ１Ｗ−ＲＡＭ回路２のｍａｒｃｈ試験の動作例を説明するが、既述の説明と重複する記載は省略する。
【０１２９】
はじめに、図１０において、昇順で１Ｒ１Ｗ−ＲＡＭ３の全アドレスに０データを書き込み、初期化を行なう（ステップＡ１〜Ａ４；図５の時刻ｔ０〜ｔ１）。
具体的には、ＰＧ８により、試験情報として“address=０番地”、“data=L”、“we=H”及び“le=L”が設定され（ステップＡ１）、１Ｒ１Ｗ−ＲＡＭ３、つまりＲＡＭ回路２に供給される（ステップＡ２）。そして、ＰＧ８により、“address”が最終番地、例えば“1023”であるか否かが判断され（ステップＡ３）、最終番地でなければ（ステップＡ３のＮｏルート）、“address”が１増加されて（ステップＡ４）、ステップＡ２に移行する。
【０１３０】
一方、最終番地であれば（ステップＡ３のＹｅｓルート）、初期化によって書き込まれた０データを読み出して１データを書き込む処理を、昇順で全アドレスについて行なう（ステップＡ５〜Ａ１１；図５の時刻ｔ１〜ｔ２）。
具体的には、ＰＧ８により、試験情報として“address=０番地（0）”（ステップＡ５）、“data=L”、“we=L”及び“le=H”が設定され（ステップＡ６）、１Ｒ１Ｗ−ＲＡＭ３に供給される（ステップＡ７）。次いで、ＰＧ８により、試験情報として“data=H”、“we=H”及び“le=L”が設定され（ステップＡ８）、１Ｒ１Ｗ−ＲＡＭ３に供給される（ステップＡ９）。そして、ＰＧ８により、“address”が最終番地であるか否かが判断され（ステップＡ１０）、最終番地でなければ（ステップＡ１０のＮｏルート）、“address”が１増加されて（ステップＡ１１）、ステップＡ６に移行する。
【０１３１】
一方、最終番地であれば（ステップＡ１０のＹｅｓルート）、ステップＡ５〜Ａ１１において書き込まれた１データを読み出して０データを書き込む処理を、降順で全アドレスについて行なう（ステップＡ１２〜Ａ１８；図５の時刻ｔ２〜ｔ３）。
具体的には、ＰＧ８により、試験情報として“address=最終番地”（ステップＡ１２）、“data=H”、“we=L”及び“le=H”が設定され（ステップＡ１３）、１Ｒ１Ｗ−ＲＡＭ３に供給される（ステップＡ１４）。次いで、ＰＧ８により、試験情報として“data=L”、“we=H”及び“le=L”が設定され（ステップＡ１５）、１Ｒ１Ｗ−ＲＡＭ３に供給される（ステップＡ１６）。そして、ＰＧ８により、“address”が０番地であるか否かが判断され（ステップＡ１７）、０番地でなければ（ステップＡ１７のＮｏルート）、“address”を１減少させて（ステップＡ１８）、ステップＡ１３に移行する。
【０１３２】
一方、０番地であれば（ステップＡ１７のＹｅｓルート）、ステップＡ１２〜Ａ１８において書き込まれた０データを読み出す処理を、降順で全アドレスについて行なう（ステップＡ１９〜Ａ２２；図５の時刻ｔ３〜ｔ４）。
具体的には、ＰＧ８により、試験情報として“address=最終番地”、“data=L”、“we=L”及び“le=H”が設定され（ステップＡ１９）、１Ｒ１Ｗ−ＲＡＭ３に供給される（ステップＡ２０）。そして、ＰＧ８により、“address”が０番地であるか否かが判断され（ステップＡ２１）、０番地でなければ（ステップＡ２１のＮｏルート）、“address”を１減少させて（ステップＡ２２）、ステップＡ２０に移行する。一方、０番地であれば（ステップＡ２１のＹｅｓルート）、処理が終了する。
【０１３３】
以上により、１Ｒ１Ｗ−ＲＡＭ３に対して０及び１データの書き込み及び読み出し、並びに、書き込みの際の同時リード試験を昇順及び降順で実施するｍａｒｃｈ試験を行なうことができる。
ここで、図５（ａ）及び（ｂ）におけるタイミングｔ２から２番目のクロックにおいて、ライト動作が行なわれるアドレス（最終アドレス）と、タイミングｔ２の直前のクロックにおいてライト動作が行なわれるアドレス（最終アドレス）とが一致している。
【０１３４】
すなわち、ｍａｒｃｈ試験においてＰＧ８から供給される“address”信号が昇順から降順に切り替わる折り返しのタイミングｔ２の後の最初のライト動作では、直前に書き込みを行なった“WA_bak”信号と、書き込みを行なう“WA”信号とが一致してしまう。この場合、タイミングｔ２の後の最初のライト動作で生成回路６による同時リード条件の第２の条件“WA_bak≠WA”が不成立となり、同時リードを行なうことができない。例えば、図５においては、最終アドレスに対する１データの同時リード（ｒ１）を行なうことができない。
【０１３５】
しかしながら、タイミングｔ２から４番目のクロックにおいて、最終アドレス−１に対するライト動作とともに最終アドレスからの０データの同時リード（ｒ０）を行なっているため、最終アドレスからの１データの同時リード（ｒ１）が行なえない点は、機能試験としては許容できる範囲のものである。
なお、最終アドレスからの１データの同時リード（ｒ１）を試験する場合には、図５（ａ）に示すシーケンスが逆シーケンスとなるように、図１０におけるＰＧ８から供給される“address”信号を変更して試験を行なうことにより、対応可能である。なお、逆シーケンスにより試験を行なう場合に、最終アドレスからの１データの同時リード（ｒ１）を試験するためには、少なくとも図５におけるｔ１〜ｔ２の区間について試験が行なわれれば良い。
【０１３６】
或いは、図１０におけるＰＧ８から供給される“data”信号の値について、“Ｈ”と“Ｌ”とを入れ替えて試験を行なうことによっても対応可能である。なお、“data”信号の値について、“Ｈ”と“Ｌ”とを入れ替える場合に、最終アドレスからの１データの同時リード（ｒ１）を試験するためには、少なくとも図５におけるｔ２〜ｔ３の区間について試験が行なわれれば良い。
【０１３７】
このように、本実施形態に係る集積回路１によれば、図８に例示する１ＲＷ−ＲＡＭ３００用のＢＩＳＴ回路４００Ａに、２組目のアドレス、データ及び制御信号を生成する回路、つまり保持回路５、生成回路６及び選択部７を付加することになる。これにより、１ＲＷ−ＲＡＭ３００用のＰＧ８（８００）及び他の信号配線を用いて、１Ｒ１Ｗ−ＲＡＭ３のＢＩＳＴを実行することができる。
【０１３８】
従って、１ＲＷ−ＲＡＭ用ＰＧ８への機能追加又は１ＲＷ−ＲＡＭ及び１Ｒ１Ｗ−ＲＡＭそれぞれのＲＡＭに専用のＰＧを用意することなく、且つ、集積回路１内に分配される配線数の増加を抑えて、１Ｒ１Ｗ−ＲＡＭ３の機能試験を実現することができる。
また、アドレス及びデータ並びにライト及びリードの制御信号が一組で済むため、試験情報を集積回路１内の各ＲＡＭ回路２へ分配するために使用される配線やレジスタ数の増加を抑止することができる。
【０１３９】
ここで、試験情報の分配に必要な物量を概算してみる。近年の集積回路、例えばＣＰＵでは、キャッシュ容量の増加やマルチコアによるコア数の増加により、内蔵されるＲＡＭ個数が百〜数百個程度となっている。また、チップサイズの拡大により、ＰＧから各ＲＡＭへの配線距離が長くなっているため、ＰＧからＲＡＭまでの信号分配にかかる分配サイクルは、数〜十サイクル程度となる。
【０１４０】
図８に例示する集積回路１００のサイズにおいて、１ＲＷ−ＲＡＭ回路２００でＢＩＳＴの制御信号（試験情報）を１サイクル分保持するために用いられるレジスタ数は、
７２ビット（ＷＤ４３０）＋１０ビット（ＡＤ４２０）＋１ビット（＋ＷＥ４１０）＋１ビット（＋ＬＥ４４０）＝８４ビット
である。
【０１４１】
１ＲＷ−ＲＡＭ３００が５００個（ｎ＝５００）の場合、仮に１ＲＷ−ＲＡＭ３００に平均５サイクルの分配サイクルが必要であるとすると、
８４ビット（レジスタ数）×５００（個）×５（サイクル）＝２１０，０００
のレジスタが必要となる。
ここで、５００個の１ＲＷ−ＲＡＭ３００の半数が１Ｒ１Ｗ−ＲＡＭ３（３１０）に置き代わる場合を考える。
【０１４２】
図１２に例示する集積回路１１０の場合、１ＲＷ−ＲＡＭ３００から増加するレジスタ数は、
７２ビット（ＲＤ４３５）＋１０ビット（ＲＡ４２５）＋１ビット（＋ＲＥ４１５）＝８３ビット
であり、１Ｒ１Ｗ−ＲＡＭ３１０が、１ＲＷ−ＲＡＭ３００と同様に平均５サイクルの分配サイクルが必要であるとすると、
８３ビット（レジスタ数）×２５０（個）×５＝１０３，７５０
のレジスタが増加することになる。
【０１４３】
また、このレジスタの増加数に加えて、ＰＧの機能追加又は増設に係る信号線等の物量が発生する。
これに対し、本実施形態に係る集積回路１では、ＰＧ８からＲＡＭ回路２までの信号分配の物量は増加せず、ＢＩＳＴ回路４内のレジスタが増加する。この増加量は、図２に示す例においては、
７２ビット（ＷＤ＿ｔｍｐ５１）＋７２ビット（ＷＤ＿ｂａｋ５２）＋１０ビット（ＷＡ＿ｂａｋ５３ａ）＋１ビット（ＷＡ＿ｖａｌｉｄ５３ｂ）＋１ビット（＋ＳＥＬ６４）＝１５６ビット
であり、１Ｒ１Ｗ−ＲＡＭ３が２５０個の場合、
１５６ビット（レジスタ数）×２５０（個）＝３９，０００
となる。
【０１４４】
以上のように、本実施形態に係る集積回路１によれば、物量の増加数は、図１２に例示する集積回路１１０に対して、３８％の増加で済むこととなる。
なお、図１２に例示する集積回路１１０における物量の増加数は、分配サイクルに比例するため、今後、集積回路のチップ面積の増加に伴い分配サイクルが増加すると、本実施形態に係る集積回路１を使用する利点がより顕著となる。
【０１４５】
また、本実施形態に係る集積回路１によれば、供給される１組の試験情報に基づいて、保持回路５により“WA_bak”信号が保持される。そして、生成回路６により、１Ｒ１Ｗ−ＲＡＭ３に対する同時リードに用いる“RA”信号が、保持回路５に保持された“WA_bak”信号に基づいて生成され、選択部７により、同時リードにより読み出されたリードデータの期待値が、保持回路５に保持された“WD_bak”信号に基づいて生成される。従って、１組の試験情報に基づいて同時リードを行なうことができ、上述したように、記憶部３と記憶部３の試験を行なう試験部４とを備える集積回路１の回路規模の増大又は製造コストの増加を抑止することができる。
【０１４６】
また、アドレス交差が発生することがなく、期待値に対して変更を加える必要もないため、論理ブロックを個々のメモリごとに備える上述した関連技術と比して、論理回路の回路規模や製造コストを低減させることができる。
さらに、本実施形態に係る集積回路１によれば、生成回路６により、同時リードが実行可能か否かが、“+WE”信号、“+WA_valid”信号、並びに、“WA”信号及び“WA_bak”信号に基づいて判断される。これにより、図５及び図１６に示すように、１ＲＷ−ＲＡＭ用のＰＧ８を用いて、１Ｒ１Ｗ−ＲＡＭ用のＰＧ８１０を用いた試験とほぼ同様の試験を行なうことができる。また、ライト及びリード動作が同じアドレスに対して行なわれることを抑止することができる。
【０１４７】
また、本実施形態に係る集積回路１によれば、選択部７により、生成回路６において同時リードが実行可能であるか否かの判断結果に応じて、“WD_bak”信号と、“WD_delayed”信号）と、のいずれか一方が期待値として選択される。また、データ受信部４７における比較処理を制御する“+LE2”（“+LE2_delayed”）信号が、“+LE”信号が有効を示す場合、又は、同時リードが実行可能であると判断された場合に有効を示すことになる。従って、１Ｒ１Ｗ−ＲＡＭ３から読み出された“Read_data”信号と期待値との比較を行なうデータ受信部４７は、一つだけ備えられれば良い。また、図８に示す集積回路１００に対して、保持回路５、生成回路６及び選択部７を付加すれば済むため、集積回路１の回路規模の増大又は製造コストの増加を抑止することができる。
【０１４８】
さらに、本実施形態に係る集積回路１によれば、ＬＳＩテスタ９から１ＲＷ−ＲＡＭ用のＰＧ８に係る１系統の設定値を供給されれば良いため、試験装置１０全体としての回路規模の増大又は製造コストの増加を抑止することができる。
〔２〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、かかる特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
【０１４９】
例えば、図５において、ＰＧ８及び１Ｒ１Ｗ−ＲＡＭ回路２のｍａｒｃｈ試験の動作例を説明したが、これに限定されるものではなく、ＰＧ８は、１ＲＷ−ＲＡＭ用の他の種々の試験パタンを１Ｒ１Ｗ−ＲＡＭ回路２に対して供給することができる。
また、ＰＧ８は、集積回路１内に備えられるものとして説明したが、これに限定されるものではなく、例えばＬＳＩテスタ９に備えられても良い。
【０１５０】
さらに、ＷＤ＿ｄｅｌａｙｅｄ４５は保持回路５内に、＋ＬＥ２＿ｄｅｌａｙｅｄ４６は生成回路６内に、それぞれ備えられても良く、選択部７と、データ受信部４７とは、併合して一つの回路として備えられても良い。
〔３〕付記
以上の実施形態に関し、更に以下の付記を開示する。
【０１５１】
（付記１）
データを保持可能な記憶部と、
一組のアドレス及びデータを含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備え、
前記試験部は、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、
前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備えることを特徴とする、集積回路。
【０１５２】
（付記２）
前記試験部は、供給されたアドレス及びデータを前記第２書込アドレス及び前記第２書込データとして前記記憶部に供給すると同時に、前記第１生成部により生成された前記第１読出アドレスを前記記憶部へ供給し、前記記憶部の前記第１読出アドレスから読み出された前記第１読出データと前記第２生成部により生成された前記期待値とを比較することを特徴とする、付記１記載の集積回路。
【０１５３】
（付記３）
前記第１書込アドレス及び前記第１書込データは、前記第２書込アドレス及び前記第２書込データを用いる書き込みの直前の書き込みに用いられたアドレス及びデータであることを特徴とする、付記１又は付記２記載の集積回路。
（付記４）
前記試験情報は、前記記憶部に対して書き込みを行なうか否かを示す書込制御信号をさらに含み、
前記第１生成部は、前記同時読出が実行可能か否かを、前記書込制御信号に基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスを生成するとともに、前記第２生成部に前記期待値を生成させる期待値生成信号を生成することを特徴とする、付記１〜３のいずれか１項記載の集積回路。
【０１５４】
（付記５）
前記第１生成部は、前記同時読出が実行可能か否かを、前記第２書込アドレスと前記第１保持部に保持された前記第１書込アドレスとに基づいて判断し、実行可能であると判断した場合に、前記第１読出アドレスと前記期待値生成信号とを生成することを特徴とする、付記４記載の集積回路。
【０１５５】
（付記６）
前記第１保持部は、前記試験部による試験の開始後に供給された書込アドレスが保持されたか否かを示す有効情報を保持し、
前記第１生成部は、前記書込制御信号及び前記有効情報がいずれも有効を示し、且つ、前記第２書込アドレスと前記第１保持部に保持された前記第１書込アドレスとが異なる場合に、前記同時読出が実行可能であると判断することを特徴とする、付記５記載の集積回路。
【０１５６】
（付記７）
前記第１生成部は、前記同時読出が実行可能であると判断した場合に、前記第１保持部に保持された前記第１書込アドレスを前記第１読出アドレスとして、前記試験部に出力するとともに、前記期待値生成信号を前記第２生成部に出力し、
前記第２生成部は、前記期待値生成信号に応じて、前記第１保持部に保持された前記第１書込データを前記期待値として、前記試験部に出力することを特徴とする、付記４〜６のいずれか１項記載の集積回路。
【０１５７】
（付記８）
前記第１保持部は、前記書込制御信号が有効を示す場合に、当該書込制御信号と同時に供給されたアドレス及びデータを、次回の同時読出の実行の際に用いられる第１書込アドレス及び第１書込データとして保持することを特徴とする、付記７記載の集積回路。
（付記９）
前記試験部は、
前記第２書込データを保持する第２保持部をさらに備え、
前記第２生成部は、前記第１生成部において前記同時読出が実行可能ではないと判断された場合に、前記第２保持部に保持された前記第２書込データに基づいて、前記記憶部の前記第１読出アドレスから読み出された前記第１読出データとの比較に用いる期待値を生成することを特徴とする、付記７又は付記８記載の集積回路。
【０１５８】
（付記１０）
前記第１生成部は、前記同時読出が実行可能であるか否かの判断結果に応じて、前記第１保持部に保持された前記第１書込データと、前記第２保持部に保持された前記第２書込データと、のいずれか一方を選択する前記期待値生成信号を生成し、
前記第２生成部は、
前記期待値を前記期待値生成信号に応じて選択する選択部として機能することを特徴とする、付記９記載の集積回路。
【０１５９】
（付記１１）
前記試験部は、
前記記憶部の前記第１読出アドレスから読み出された前記第１読出データと、前記第２生成部により選択された前記期待値とを比較する比較部をさらに備えることを特徴とする、付記１０記載の集積回路。
【０１６０】
（付記１２）
前記試験情報は、前記比較部における前記記憶部からの前記第１読出データと前記期待値との比較処理を制御する比較制御信号をさらに含み、
前記第１生成部は、前記比較制御信号が有効を示す場合、又は、前記同時読出が実行可能であると判断した場合に、前記比較部を制御する制御信号を有効として生成するとともに、
前記比較部は、前記制御信号が有効を示す場合に、前記第１読出データと前記期待値とを比較することを特徴とする、付記１１記載の集積回路。
【０１６１】
（付記１３）
前記第１生成部は、前記同時読出が実行可能ではないと判断した場合に、前記第２書込アドレスに基づいて前記第１読出アドレスを生成することを特徴とする、付記１２記載の集積回路。
（付記１４）
前記試験部に対して前記試験情報を供給する試験制御部をさらに備えることを特徴とする、付記１〜１３のいずれか１項記載の集積回路。
【０１６２】
（付記１５）
書き込み及び読み出しが同時に実行可能である少なくとも一つの第１記憶部を含む複数の前記記憶部と、
前記複数の記憶部に対応して備えられた複数の前記試験部とを備え、
前記複数の試験部のうちの前記第１記憶部に対応して設けられる前記試験部が、前記同時読出を実行することを特徴とする、付記１〜１４のいずれか１項記載の集積回路。
【０１６３】
（付記１６）
一組のアドレス及びデータを含む試験情報を供給され、前記試験情報に基づいて、データを保持可能な記憶部に対する書込及び読出試験を行なう試験回路であって、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを保持する第１保持部と、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成する第１生成部と、
前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する第２生成部と、を備えることを特徴とする、試験回路。
【０１６４】
（付記１７）
付記１６記載の試験回路と、
前記試験回路に対して前記試験情報を供給する試験制御部と、
前記試験制御部に対して、前記試験情報の生成に用いる設定情報を供給するとともに、前記試験回路から試験結果を読み出す試験情報供給部と、を備えることを特徴とする、試験装置。
【０１６５】
（付記１８）
データを保持可能な記憶部と、一組のアドレス及びデータを含む試験情報を供給され、前記試験情報に基づいて前記記憶部に対する書込及び読出試験を行なう試験部と、を備える集積回路における試験方法であって、
前記試験部において、
前記試験情報に基づき前記記憶部の第１書込アドレスに対して第１書込データの書き込みが行なわれた場合に前記第１書込アドレスと前記第１書込データとを第１保持部に保持し、
前記試験情報に基づく前記記憶部の第２書込アドレスに対する第２書込データの書き込みと同時に前記記憶部の第１読出アドレスから第１読出データを読み出す同時読出に用いる前記第１読出アドレスを、前記第１保持部に保持された前記第１書込アドレスに基づいて生成するとともに、
前記記憶部の前記第１読出アドレスから前記同時読出により読み出される前記第１読出データの期待値を、前記第１保持部に保持された前記第１書込データに基づいて生成する、ことを特徴とする、試験方法。
【０１６６】
（付記１９）
前記試験部において、
供給されたアドレス及びデータを前記第２書込アドレス及び前記第２書込データとして前記記憶部に供給すると同時に、生成された前記第１読出アドレスを前記記憶部へ供給し、
前記記憶部の前記第１読出アドレスから読み出された前記第１読出データと生成された前記期待値とを比較することを特徴とする、付記１８記載の試験方法。
【０１６７】
（付記２０）
前記第１書込アドレス及び前記第１書込データは、前記第２書込アドレス及び第２書込データを用いる書き込みの直前の書き込みに用いられたアドレス及びデータであることを特徴とする、付記１８又は付記１９記載の試験方法。
【符号の説明】
【０１６８】
１，１００，１１０    ＬＳＩ（集積回路）
１０    試験装置
２，２−１〜２−ｎ    １Ｒ１Ｗ−ＲＡＭ回路（ＲＡＭ回路）
２１０，２１０−１〜２１０−ｎ    １Ｒ１Ｗ−ＲＡＭ回路
２００，２００−１〜２００−ｎ    １ＲＷ−ＲＡＭ回路
３    １Ｒ１Ｗ−ＲＡＭ（記憶部）
３１０    １Ｒ１Ｗ−ＲＡＭ
３００    １ＲＷ−ＲＡＭ
４    ＢＩＳＴ回路（試験回路，試験部）
４００Ａ，４００Ｂ    ＢＩＳＴ回路
４１，４１０    ＋ＷＥレジスタ
４１５    ＋ＲＥレジスタ
４２    ＷＡレジスタ
４２０    ＡＤレジスタ，ＷＡレジスタ
４２５    ＲＡレジスタ
４３，４３０    ＷＤレジスタ
４３５    ＲＤレジスタ
４４，４４０    ＋ＬＥレジスタ
４５    ＷＤ＿ｄｅｌａｙｅｄレジスタ（第２保持部）
４５０        ＷＤ＿ｄｅｌａｙｅｄレジスタ
４６    ＋ＬＥ２＿ｄｅｌａｙｅｄレジスタ
４６０    ＋ＬＥ＿ｄｅｌａｙｅｄレジスタ
４７    ＤＲＣＶ（データ受信部，比較部）
４７ａ，４７０ａ    比較器
４７ｂ，４７０ｂ    結果レジスタ
４７０    ＤＲＣＶ
５    アドレス／データ保持回路（保持回路，第１保持部）
５１    ＷＤ＿ｔｍｐレジスタ
５２    ＷＤ＿ｂａｋレジスタ
５３    ライトアドレス保持部
５３ａ    ＷＡ＿ｂａｋレジスタ
５３ｂ    ＷＡ＿ｖａｌｉｄレジスタ
６    リードアドレス／制御信号生成回路（生成回路，第１生成部）
６１    比較器
６２    ＡＮＤ回路
６３    セレクタ
６４    ＋ＳＥＬレジスタ
６５    ＯＲ回路
７    セレクタ（選択部，第２生成部）
８    １ＲＷ−ＲＡＭ用ＰＧ，試験制御回路（試験制御部）
８００    １ＲＷ−ＲＡＭ用ＰＧ，試験制御回路
８１０    １Ｒ１Ｗ−ＲＡＭ用ＰＧ，試験制御回路
９    ＬＳＩテスタ（試験情報供給部）
９１    テスタプログラム
９２    試験データ保持部
９３    設定値供給部
９４    読出値比較部
【図１】
0005982781.tif 000002
【図２】
0005982781.tif 000003
【図３】
0005982781.tif 000004
【図４】
0005982781.tif 000005
【図５】
0005982781.tif 000006
【図６】
0005982781.tif 000007
【図７】
0005982781.tif 000008
【図８】
0005982781.tif 000009
【図９】
0005982781.tif 000010
【図１０】
0005982781.tif 000011
【図１１】
0005982781.tif 000012
【図１２】
0005982781.tif 000013
【図１３】
0005982781.tif 000014
【図１４】
0005982781.tif 000015
【図１５】
0005982781.tif 000016
【図１６】
0005982781.tif 000017