(57)【要約】【課題】セキュリティ回路を備える半導体メモリに対して実行する全体機能テストのテストコストを低減させることを課題とする。【解決手段】メモリ専用テスタ３０のバッファには、入力パターンデータＩＰと出力期待値データＥＰとが格納されている。読み出された入力パターンデータＩＰに含まれるアドレスは、半導体メモリ１０に転送され、セキュリティ回路１１においてデスクランブル処理される。デスクランブル処理されたアドレスは、アドレス変換回路１２においてメモリコア１３のチェックパターンＣＰが格納された領域を指定するアドレスに変換される。メモリコア１３から出力されたデータ（チェックパターンＣＰ）は、セキュリティ回路１１でスクランブル処理され、メモリ専用テスタ３０に転送される。メモリ専用テスタ３０では、期待値データＥＰ１と読み出されたデータとの間で比較処理が行われる。【選択図】図２
2006147024.tif 000002
【特許請求の範囲】
【請求項１】
記憶領域の一部の所定領域に半導体メモリの全体機能テストを実行するためのチェックパターンが格納されたメモリコア部と、
前記半導体メモリが入力するアドレスに施されたセキュリティ処理を解除する手段および前記メモリコア部から出力されたデータにセキュリティ処理を施す手段を含むセキュリティ処理部と、
前記セキュリティ処理部から出力されたアドレスを、前記メモリコア部の前記所定領域を指定するように変換し、変換後のアドレスを前記メモリコア部に出力するアドレス変換部と、
を備え、
前記半導体メモリの全体機能テストを実行する際には、前記半導体メモリが入力するアドレスを前記セキュリティ処理部で処理した後、前記アドレス変換部においてアドレス変換して、前記チェックパターンを読み出し、さらに、読み出された前記チェックパターンを前記セキュリティ処理部において処理した後、出力することを特徴とする半導体メモリ。
【請求項２】
請求項１に記載の半導体メモリにおいて、
前記メモリコア部の前記所定領域以外の記憶領域に格納されるコンテンツデータの内容に関わらず、前記チェックパターンとして共通のデータが用いられることを特徴とする半導体メモリ。
【請求項３】
請求項１に記載の半導体メモリにおいて、さらに、
前記半導体メモリが入力するアドレスを、前記セキュリティ処理部をバイパスさせて転送させる第１のバイパス手段と、
前記半導体メモリが入力するアドレスを、前記アドレス変換部をバイパスさせて転送させる第２のバイパス手段と、
前記メモリコア部から出力されたデータを、前記セキュリティ処理部をバイパスさせて転送させる第３のバイパス手段と、
を備え、
前記メモリコア部を分離テストする際には、前記半導体メモリが入力するアドレスを前記第１のバイパス手段および第２のバイパス手段を経由させて前記メモリコア部に供給し、前記メモリコア部から読み出されたデータを前記第３のバイパス手段を経由させて出力することを特徴とする半導体メモリ。
【請求項４】
半導体メモリに出力するアドレスに予めセキュリティ処理が施された入力パターンデータと、前記半導体メモリから出力されたデータを比較処理するための出力期待値データとが、前記半導体メモリの全体機能テストを実行するためのデータとしてメモリテスタの記憶手段に格納される工程と、
前記メモリテスタの前記記憶手段から前記入力パターンデータが読み出され、前記半導体メモリにセキュリティ処理が施されたアドレスが供給される工程と、
前記半導体メモリが備えるセキュリティ処理部において、入力されたアドレスのセキュリティ処理が解除される工程と、
前記半導体メモリが備えるアドレス変換部において、アドレスが所定領域のアドレスに変換される工程と、
前記半導体メモリが備えるメモリコア部の前記所定領域から全体機能テスト用に格納されているチェックパターンが読み出される工程と、
前記セキュリティ処理部において、読み出されたチェックパターンにセキュリティ処理が施される工程と、
前記メモリテスタにおいて、前記出力期待値データとセキュリティ処理が施されたチェックパターンとが比較される工程と、
を備えることを特徴とする半導体メモリのテスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ機能を内蔵する半導体メモリのテスト技術に関する。
【背景技術】
【０００２】
マスクＲＯＭや一部の不揮発性メモリのように、ユーザーの注文に応じて製造時に予めコンテンツが格納される半導体メモリが存在する。また、コンテンツ格納用半導体メモリには、格納されているコンテンツが不正に読み出されることを防止するために、さまざまなセキュリティ機能を備えるものがある。代表的なセキュリティ機能として、入力されるアドレス信号を所定のキー情報を用いてExOR回路によりデスクランブルする機能や、出力されるデータ信号を所定のキー情報を用いてExOR回路によりスクランブルする機能などがある。
【０００３】
このようなセキュリティ機能を備えたコンテンツ格納用半導体メモリを出荷テストする場合、セキュリティ機能をＯＮにした状態でメモリからの全域読み出しを行い、全体機能をテストすることが理想ではある。しかし、従来のメモリ専用テスタを用いて、このように複雑な動作テストを行うことは非常にテストコストがかかるため、一般的には、メモリコアのテスト（メモリコア分離テスト）と全体機能のテストを別々に行っている。
【０００４】
メモリコア分離テストは、従来の半導体メモリ（セキュリティ機能のない半導体メモリ）に対して行っていたテストと同等であり、メモリの全域を読み出すテストである。メモリコア分離テストは、半導体メモリの信頼性の観点からも省略することができないが、一般的に、このようなテストは、メモリ専用テスタが得意とする分野であり、テストコストを圧迫しない。
【０００５】
一方、全体機能テストは、従来のセキュリティ機能のない半導体メモリに対しては行っていないテストであり、全体機能テストのテスト効率を上げることは、セキュリティ機能を備えたコンテンツ格納用半導体メモリのトータルコストを低減する上でも重要な課題となっている。
【０００６】
全体機能テストを実行するためには、メモリに格納されるコンテンツに応じてテストパターンも変更する必要がある。特に多コンテンツ少量生産の場合、各コンテンツに応じたテストパターンを事前に用意しておく必要があり、また、各コンテンツに合わせてテストパターンを差し替える必要があり、そのことがテストコストの増大につながっていた。
【０００７】
図５に示すように、コンテンツ格納用半導体メモリ１１０は、外部よりアドレス（adrs）を入力し、メモリコア１１３からアドレスに対応するデータ（data）が出力される。アドレスバスとデータバスとは、物理的に別のバスを使用するものもあるが、バスを共通化し、アドレス入力サイクルとデータ出力サイクルを時分割で切り替えて動作するタイプのものもある。
【０００８】
これに対して、セキュリティ機能を内蔵した半導体メモリの例を図６に示す。このコンテンツ格納用半導体メモリ１１０は、セキュリティ回路１１１を備えている。セキュリティ回路１１１は、入力したアドレスをキー情報を用いてデスクランブルする回路１１１ａと、出力するデータをキー情報を用いてスクランブルする回路１１１ｂとを備えている。外部より入力されるアドレス（adrs）は予めスクランブルされており、回路１１１ａによりアドレスがキー情報を用いてデスクランブルされ、デスクランブルされたアドレスがメモリコア１１３に供給される。メモリコア１１３からはアドレスに対応するデータ（data）が出力され、回路１１１ｂでキー情報を用いてスクランブルされ外部に出力される。
【０００９】
そして、セキュリティ機能を内蔵したコンテンツ格納用半導体メモリには、出荷テストを容易にするために、図７に示すようにセキュリティ回路をバイパスする回路を備えているものが存在する。これにより、メモリコア分離テストを実行可能としている。つまり、メモリコア分離テストモードにおいては、図に示すように、セキュリティ回路１１１をバイパスするようにアドレスが入力され、メモリコア１１３からデータの読み出しが行われる。そして、メモリコア１１３から読み出されたデータは、セキュリティ回路１１１をバイパスして外部に出力されるのである。
【００１０】
図８は、メモリ専用テスタ１３０を用いてメモリコア分離テストを行う仕組みを説明する図である。メモリ専用テスタ１３０は、アドレス生成回路１３１を用いて、先頭アドレスから最終アドレスまで順次アドレスを自動的に生成し、アドレスをコンテンツ格納用半導体メモリ１１０に出力する。コンテンツ格納用半導体メモリ１１０は、メモリコア分離テストモードにおいては、セキュリティ回路１１１がバイパスされるよう制御されており、メモリコア１１３からデータの読み出しが行われる。そして、期待値比較回路１３３において、半導体メモリから出力されたデータと、バッファ１３５に格納されている出力期待値データとが順次比較され、テストが実行されるのである。メモリコア分離テストにおいては、メモリコア１１３に格納されるデータとバッファ１３５に格納される出力期待値データとは同一のものとなる。また、この出力期待値データはコンテンツに応じて差し替える必要がある。
【００１１】
図９は、メモリ専用テスタ１３０を用いて全体機能テストを行う仕組みを説明する図である。全体機能テストにおいては、コンテンツ格納用半導体メモリ１１０への入力アドレスをスクランブルする必要があり、メモリ専用テスタ１３０のアドレス自動生成機能を使うことができない。このため、スクランブルされたアドレスデータ（入力パターンデータ）を、あらかじめバッファ１３５に格納しておく必要がある。メモリ専用テスタ１３０はバッファ１３５から入力パターンデータを順次読み出しながらコンテンツ格納用半導体メモリ１１０にスクランブルされたアドレスを出力する。
【００１２】
コンテンツ格納用半導体メモリ１１０では、スクランブルされたアドレスをデスクランブル回路１１１ａにおいてキー情報を用いてデスクランブルし、メモリコア１１３に供給する。メモリコア１１３から読み出されたデータは、スクランブル回路１１１ｂでキー情報を用いてスクランブルされた後、出力される。メモリ専用テスタ１３０では、期待値比較回路１３３において、出力されたデータとバッファ１３５に格納されている出力期待値データとが順次比較され、テストが実行される。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
セキュリティ機能を備えたコンテンツ格納用半導体メモリに対しても、上述したような方法により、メモリコア分離テストと全体機能テストを実行することで、半導体メモリの出荷テストを行うことが可能である。
【００１４】
しかし、上記の全体機能テスト方法は、半導体メモリに格納されるコンテンツに応じて、バッファに格納する入力パターンデータと出力期待値データのセットも変更しなければならないという問題がある。メモリコア分離テストにおいても、バッファに格納する出力期待値データをコンテンツに応じて変更する必要があるが、これは、メモリの信頼性を確保する上からも省略することは難しい。
【００１５】
したがって、セキュリティ機能を備えたコンテンツ格納用半導体メモリに対して、メモリコア分離テストおよび全体機能テストを実行するためには、それぞれのテストに対してコンテンツに応じたテストパターンデータを用意しなければならないため、テストコストが高くなるという問題があった。
【００１６】
メモリテスタのバッファサイズが大きい場合、全体機能テスト用のテストパターンとメモリコア分離テスト用のテストパターンとを領域分割して格納しておくことが可能である。この場合であれば、テスト対象となる半導体メモリの品種に応じて、１回のパターン差し替えで対応が可能である。しかし、バッファの容量に制約があるため、両方のテストパターンをバッファに格納できない場合が多く、一般的には、
（１）１台のメモリテスタを使用し、複数回のテストパターンの差し替えを行う。
（２）複数台のメモリテスタを使用する。
という方法がとられる。そして、（１）、（２）いずれの場合にも、全体機能テストおよびメモリコア分離テストの両方の出力期待値データをコンテンツに応じて差し替える必要があるため、テストパターンの生成労力を低減させたいという課題がある。また、（２）の場合には、（１）の場合と比較して、テストパターンの差し替え回数が少ないというメリットがあるため、全体機能テストのテストパターンの生成負担を低減させることができれば、テストコストを大幅に低減させられるという期待がある。
【００１７】
また、セキュリティの強度を高める方法として、メモリコア１１３に格納されているコンテンツに応じてデスクランブル回路１１１ａに与えるキー情報を変化させるという手段が考えられる。このような方法を想定した場合、メモリコア１１３に格納されるコンテンツに応じて、出力期待値データのみならず、入力パターンデータも変更しなければならないこととなる。この場合には、さらに、テストパターンの生成労力が増すとともに、テストパターンの差し替え処理が煩雑となる。
【００１８】
そこで、本発明は前記問題点に鑑み、セキュリティ機能を内蔵した半導体メモリの全体テストのテストコストを低減させることを目的とする。
【課題を解決するための手段】
【００１９】
上記課題を解決するため、請求項１記載の発明は、記憶領域の一部の所定領域に半導体メモリの全体機能テストを実行するためのチェックパターンが格納されたメモリコア部と、前記半導体メモリが入力するアドレスに施されたセキュリティ処理を解除する手段および前記メモリコア部から出力されたデータにセキュリティ処理を施す手段を含むセキュリティ処理部と、前記セキュリティ処理部から出力されたアドレスを、前記メモリコア部の前記所定領域を指定するように変換し、変換後のアドレスを前記メモリコア部に出力するアドレス変換部と、を備え、前記半導体メモリの全体機能テストを実行する際には、前記半導体メモリが入力するアドレスを前記セキュリティ処理部で処理した後、前記アドレス変換部においてアドレス変換して、前記チェックパターンを読み出し、さらに、読み出された前記チェックパターンを前記セキュリティ処理部において処理した後、出力することを特徴とする。
【００２０】
請求項２記載の発明は、請求項１に記載の半導体メモリにおいて、前記メモリコア部の前記所定領域以外の記憶領域に格納されるコンテンツデータの内容に関わらず、前記チェックパターンとして共通のデータが用いられることを特徴とする。
【００２１】
請求項３記載の発明は、請求項１に記載の半導体メモリにおいて、さらに、前記半導体メモリが入力するアドレスを、前記セキュリティ処理部をバイパスさせて転送させる第１のバイパス手段と、前記半導体メモリが入力するアドレスを、前記アドレス変換部をバイパスさせて転送させる第２のバイパス手段と、前記メモリコア部から出力されたデータを、前記セキュリティ処理部をバイパスさせて転送させる第３のバイパス手段と、を備え、前記メモリコア部を分離テストする際には、前記半導体メモリが入力するアドレスを前記第１のバイパス手段および第２のバイパス手段を経由させて前記メモリコア部に供給し、前記メモリコア部から読み出されたデータを前記第３のバイパス手段を経由させて出力することを特徴とする。
【００２２】
請求項４記載の発明は、半導体メモリに出力するアドレスに予めセキュリティ処理が施された入力パターンデータと、前記半導体メモリから出力されたデータを比較処理するための出力期待値データとが、前記半導体メモリの全体機能テストを実行するためのデータとしてメモリテスタの記憶手段に格納される工程と、前記メモリテスタの前記記憶手段から前記入力パターンデータが読み出され、前記半導体メモリにセキュリティ処理が施されたアドレスが供給される工程と、前記半導体メモリが備えるセキュリティ処理部において、入力されたアドレスのセキュリティ処理が解除される工程と、前記半導体メモリが備えるアドレス変換部において、アドレスが所定領域のアドレスに変換される工程と、前記半導体メモリが備えるメモリコア部の前記所定領域から全体機能テスト用に格納されているチェックパターンが読み出される工程と、前記セキュリティ処理部において、読み出されたチェックパターンにセキュリティ処理が施される工程と、前記メモリテスタにおいて、前記出力期待値データとセキュリティ処理が施されたチェックパターンとが比較される工程と、を備えることを特徴とする。
【発明の効果】
【００２３】
本発明においては、全体機能テストを実行する際には、アドレス変換手段を用いてアドレスをチェックパターンが格納された領域を指定するように変換する。これにより、半導体メモリに格納されるコンテンツが異なっても、全体機能テストの際に、同じテストパターンを用いることが可能であり、テストパターンの差し替えが不要となり、テストコストを低減させることが可能である。
【００２４】
また、本発明の半導体メモリは、セキュリティ手段とアドレス変換手段をバイパスさせる手段を備えるので、一般的なメモリ専用テスタを用いてメモリコア分離テストも容易に実行させることが可能である。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照しつつ本発明の実施の形態について説明する。図１は、本発明の実施の形態に係る半導体メモリ１０の回路ブロック図である。半導体メモリ１０は、セキュリティ回路１１、アドレス変換回路１２、メモリコア１３を備えている。本実施の形態において、半導体メモリ１０はマスクＲＯＭであり、半導体メモリ１０が出荷される際には、既に、メモリコア１３にコンテンツデータＣＴが格納されている。コンテンツデータＣＴとは、プログラム他各種のデータを含む。たとえば、コンテンツデータＣＴとしてゲームプログラムが格納されることにより、半導体メモリ１０は、ゲームカートリッジとして利用される。
【００２６】
半導体メモリ１０は、入力端子２１および出力端子２２を備えている。入力端子２１には、アドレスバス２３が接続されている。そして、アドレスバス２３は、セキュリティ回路１１のアドレス入力側に設けられた切替回路１５に接続されている。切替回路１５において、アドレスバス２３は２方向に分岐され、一方は、セキュリティ回路１１に接続され、他方は、セキュリティ回路１１をバイパスし、再び、セキュリティ回路１１の下流側のアドレスバス２３と合流する。
【００２７】
さらに、アドレスバス２３は、アドレス変換回路１２のアドレス入力側に設けられた切替回路１６に接続されている。そして、切替回路１６において、アドレスバス２３は２方向に分岐され、一方は、アドレス変換回路１２に接続され、他方は、アドレス変換回路１２をバイパスし、再び、アドレス変換回路１２の下流側のアドレスバス２３と合流する。そして、アドレス変換回路１２の下流側のアドレスバス２３は、メモリコア１３に接続されている。このような構成により、アドレスバス２３を介してアドレスがメモリコア１３に供給される。
【００２８】
また、メモリコア１３にはデータバス２４が接続されている。このデータバス２４は、セキュリティ回路１１のデータ入力側に設けられた切替回路１７に接続され、２方向に分岐している。分岐した一方のデータバス２４は、セキュリティ回路１１に接続され、他方は、セキュリティ回路１１をバイパスし、再びセキュリティ回路１１のデータ出力側のデータバス２４と合流する。そして、合流したデータバス２３は、出力端子２２に接続されている。このような構成により、データバス２４を介してデータが外部に出力される。
【００２９】
次に、以上のような構成の半導体メモリ１０を出荷テストする方法について説明する。図２は、メモリ専用テスタ３０を用いて半導体メモリ１０の全体機能テストを行う方法を示す図である。全体機能テストとは、少なくともメモリコア１３およびセキュリティ回路１１を含めた半導体メモリ１０の全体機能を評価することを目的としたテストである。
【００３０】
メモリ専用テスタ３０は、アドレス生成回路３１、アドレス出力回路３２、期待値比較回路３３およびバッファ３５を備えている。バッファ３５には、この半導体メモリ１０を全体機能テストするために予め用意された入力パターンデータＩＰと出力期待値データＥＰ１とが格納されている。
【００３１】
入力パターンデータＩＰは、半導体メモリ１０に供給するアドレスを予めスクランブル処理したデータである。入力パターンデータＩＰには、このようなスクランブル処理されたアドレスが複数種類含まれている。ただし、アドレスに対して施されているスクランブル処理は、セキュリティ回路１１における演算回路１１ａにおいてデスクランブル処理可能なものである。たとえば、本実施の形態においては、演算回路１１ａは、排他的論理和の演算回路であり、演算回路１１ａにおいては、入力したアドレスとデスクランブル値との間で排他的論理和が演算されるわけであるが、このデスクランブル値と同じ値をスクランブル値とし、このスクランブル値とアドレスとの間で排他的論理和を演算した結果を入力パターンデータＩＰとすればよい。
【００３２】
また、出力期待値データＥＰ１は、メモリコア１３から出力されるデータをスクランブル処理した後のデータである。ただし、データに対して施されているスクランブル処理は、セキュリティ回路１１における演算回路１１ｂにおいて施されるスクランブル処理と同じものである。たとえば、本実施の形態においては、演算回路１１ｂは、排他的論理和の演算回路であり、演算回路１１ｂにおいては、メモリコア１３から出力されたデータとスクランブル値との間で排他的論理和が演算されるわけであるが、この演算結果を出力期待値データＥＰ１とすればよい。
【００３３】
全体機能テストの動作について説明する。まず、アドレス出力回路３２が、バッファ３５から入力パターンデータＩＰを読み込み、順次スクランブル処理されたアドレスを半導体メモリ１０に供給する。つまり、入力パターンデータＩＰに含まれている複数種類のスクランブル処理されたアドレスが、１アドレスずつ順次半導体メモリ１０に供給される。なお、この全体機能テストでは、アドレス生成回路３１は用いられない。
【００３４】
全体機能テストモードにおいては、半導体メモリ１０は、入力したアドレスがセキュリティ回路１１に入力されるように制御される。つまり、切替回路１５は、入力信号をセキュリティ回路１１側に出力するように制御される。これにより、メモリ専用テスタ３０から供給されたアドレスは、セキュリティ回路１１に入力される。そして、セキュリティ回路１１に入力されたアドレスは、演算回路１１ａにおいてデスクランブル処理される。ここで、上述したように、入力パターンデータＩＰは、演算回路１１ａにおいてデスクランブル処理可能となるようにスクランブル処理が施されているので、演算回路１１ａは、正しくアドレスをデスクランブルすることが可能である。
【００３５】
また、全体機能テストモードにおいては、半導体メモリ１０は、アドレスがアドレス変換回路１２に入力されるように制御される。つまり、切替回路１６は、入力信号をアドレス変換回路１２側に出力するように制御される。これにより、デスクランブル処理されたアドレスは、アドレス変換回路１２に入力される。アドレス変換回路１２は、入力したアドレスを特定のアドレス領域の信号に変換する回路である。
【００３６】
図３は、アドレス変換回路１２が実行するアドレス変換処理の一例を示す図である。たとえば、メモリコア１３が、バイトオーダーでアドレス領域０＿００００ｈ〜Ｆ＿ＦＦＦＦｈを持つマスクＲＯＭ、すなわち、１Ｍバイトの記憶領域を持つマスクＲＯＭであるとする。つまり、アドレスは２０ビットで表現される。そして、このメモリコア１３のアドレス領域Ｅ＿００００ｈ〜Ｆ＿ＦＦＦＦｈは、全体機能テストのチェックパターンＣＰが格納される領域として設定されている。この場合、アドレス変換回路１２は、入力するアドレスの領域（０＿００００ｈ〜Ｆ＿ＦＦＦＦｈ）を、チェックパターンＣＰが格納された領域（Ｅ＿００００ｈ〜Ｆ＿ＦＦＦＦｈ）に変換するのである。具体的には、アドレス変換回路１２は、入力したアドレスの上位３ビットを‘１１１’に固定するのである。これによりメモリ専用テスタ３０から供給されたアドレスはチェックパターンＣＰの格納領域のみを指定するように変換される。
【００３７】
アドレス変換回路１２から出力されたアドレスは、メモリコア１３に供給される。ここで、アドレス変換回路１２から出力されるアドレス領域に格納されているチェックパターンＣＰは、全体機能テスト用に用意されたデータである。したがって、メモリ専用テスタ３０のバッファ３５に格納する出力期待値データＥＰ１は、このチェックパターンＣＰをスクランブル処理した値である。なお、チェックパターンＣＰが格納される領域は、メモリコア１３の一部の領域であって、コンテンツデータＣＴが格納される領域とは異なる領域である。
【００３８】
このように、本実施の形態においては、メモリコア１３の特定領域にチェックパターンＣＰを格納し、全体機能テストモードにおいては、アドレス変換回路１２により入力したアドレスを変換し、チェックパターンＣＰを固定的に読み出すように制御するのである。
【００３９】
メモリコア１３から出力されたデータ（チェックパターンＣＰ）は、データバス２４を経由してセキュリティ回路１１側に転送される。ここで、全体機能テストモードにおいては、半導体メモリ１０は、データがセキュリティ回路１１に入力されるように制御される。つまり、切替回路１７は、入力信号をセキュリティ回路１１側に出力するように制御される。これにより、メモリコア１３から出力されたデータ（チェックパターンＣＰ）は、演算回路１１ｂにおいてスクランブル処理される。
【００４０】
スクランブル処理されたデータ（チェックパターンＣＰ）は、データバス２４、出力端子２２を介してメモリ専用テスタ３０に転送される。メモリ専用テスタ３０では、期待値比較回路３３が、バッファ３５に格納されている出力期待値データＥＰ１と半導体メモリ１０から入力したスクランブル処理後のデータとを比較する。そして、この比較処理により、全体機能テストを実行することが可能となる。すなわち、出力期待値データＥＰ１と半導体メモリ１０から入力したデータとが一致すれば、半導体メモリ１０の全体機能は正常であると判定することが可能である。
【００４１】
以上の処理により、セキュリティ回路１１、メモリコア１３、セキュリティ回路１１の入出力端子、メモリコア１３の入出力端子、セキュリティ回路１１とメモリコア１３とを接続するアドレスバス２３およびデータバス２４を含めた半導体メモリ１０の全体機能テストを実行することが可能である。
【００４２】
そして、メモリコア１３に格納するチェックパターンＣＰは、メモリコア１３に格納されるコンテンツデータＣＴの内容に関わらず、共通なチェックパターンＣＰを用いるようにする。つまり、半導体メモリ１０の品種に関わらず、チェックパターンＣＰとして同じデータを用いるのである。これにより、メモリ専用テスタ３０のバッファ３５に格納する出力期待値データＥＰ１を共通化させることが可能である。これにより、様々なコンテンツが格納された、異なる種類の半導体メモリの全体機能テストを行うためにも、メモリ専用テスタの期待値バッファの中身を差し替えなくても良いので、テストコストの削減が可能である。
【００４３】
次に、メモリコア分離テストについて説明する。メモリコア分離テストとは、メモリコア１３に格納されているデータが正しいか否かを評価することを目的としたテストである。図４は、メモリコア分離テストの動作を説明する図である。メモリコア分離テストを行う際には、メモリ専用テスタ３０は、アドレス生成回路３１により半導体メモリ１０に供給するアドレスを自動生成する。具体的には、メモリコア１３の先頭アドレスから最終アドレスまでを指定した全てのアドレスを自動生成する。なお、メモリコア分離テストを実行する場合には，アドレス自動生成機能を利用するので、バッファ３５は、入力パターンデータを保持している必要はない。一方、メモリコア分離テストでは、メモリコア１３の全域読み出しテストが行われるので、メモリコア１３に格納されているコンテンツデータＣＴと同じデータが出力期待値データＥＰ２としてバッファ３５に格納されている。なお、チェックパターンＣＰを全域読み出しテストの対象とするか否かは任意である。
【００４４】
アドレス出力回路３２は、自動生成されたアドレスを、順次半導体メモリ１０に供給する。メモリコア分離テストモードにおいては、半導体メモリ１０は、入力したアドレスがセキュリティ回路１１をバイパスするように制御される。つまり、切替回路１５は、入力信号をバイパス回路側に出力するように制御される。また、メモリコア分離テストモードにおいては、半導体メモリ１０は、入力したアドレスがアドレス変換回路１２をバイパスするように制御される。つまり、切替回路１６は、入力信号をバイパス回路側に出力するように制御される。これにより、入力端子１５から入力したアドレスは、そのままメモリコア１３に供給され、メモリコア１３からは指定されたアドレスに格納されたコンテンツデータＣＴが出力される。
【００４５】
メモリコア１３から出力されたコンテンツデータＣＴは、セキュリティ回路１１側に出力される。メモリコア分離テストモードにおいては、半導体メモリ１０は、入力したデータがセキュリティ回路１１をバイパスするように制御される。つまり、切替回路１７は、入力信号をバイパス回路側に出力するように制御される。これにより、メモリコア１３から出力されたコンテンツデータＣＴは、そのまま出力端子２２を介してメモリ専用テスタ３０に出力される。
【００４６】
メモリ専用テスタ３０では、期待値比較回路３３が、バッファ３５に格納されている出力期待値データＥＰ２と半導体メモリ１０から入力したコンテンツデータＣＴとを比較する。そして、この比較処理により、メモリコア分離テストを実行することが可能となる。すなわち、出力期待値データＥＰ２とコンテンツデータＣＴとが一致すれば、メモリコア１３は正常であると判定することが可能である。
【００４７】
最後に、半導体メモリ１０の通常モードの動作について説明する。通常モードとはテストモードではなく、外部の情報処理装置が半導体メモリ１０のデータにアクセスするモードである。
【００４８】
通常モードの場合、図示せぬ情報処理装置から半導体メモリ１０にスクランブル処理されたアドレスが供給される。通常モードにおいて、半導体メモリ１０が入力したアドレスはセキュリティ回路１１に入力される。つまり、切替回路１５は、入力信号をセキュリティ回路１１に出力するように制御される。また、通常モードにおいて、半導体メモリ１０が入力したアドレスはアドレス変換回路１２をバイパスするように制御される。つまり、切替回路１６は、入力信号をバイパス回路側に出力するように制御される。これにより、入力端子１５から入力したアドレスは、演算回路１１ａにおいてデスクランブル処理された後、メモリコア１３に供給され、メモリコア１３からは指定されたアドレスに格納されたコンテンツデータＣＴが出力される。
【００４９】
メモリコア１３から出力されたコンテンツデータＣＴは、セキュリティ回路１１側に出力される。通常モードにおいて、メモリコア１３から出力されたデータはセキュリティ回路１１に入力される。つまり、切替回路１７は、入力信号をセキュリティ回路１１に出力するように制御される。これにより、メモリコア１３から出力されたコンテンツデータＣＴは、演算回路１１ｂにおいてスクランブル処理され、出力端子２２を介して情報処理装置に転送される。このように、本実施の形態の半導体メモリ１０は、アドレス変換回路１２をバイパスさせることによって、通常モードの動作を実行可能としている。
【００５０】
以上説明したように、本実施の形態に係る半導体メモリ１０は、全体機能テストモード時には、アドレス変換回路１２によって入力したアドレスを変換し、チェックパターンＣＰを固定的に読み出す。したがって、異なる品種の半導体メモリであっても、このチェックパターンＣＰとして共通のデータを用いることにより、出力期待値データＥＰ１を共通化させることが可能である。つまり、様々なコンテンツが格納される複数の品種の半導体メモリについて、全体機能テストを行うためにも、テストに用いる入力パターンデータＩＰと出力期待値データＥＰのセットとして同一のセットを利用することが可能である。
【００５１】
また、本実施の形態の半導体メモリ１０は、セキュリティ回路１１とアドレス変換回路１２をバイパスさせるための切替回路を備えているので、セキュリティ回路１１とアドレス変換回路１２をバイパスさせることで、従来と同様のメモリコア分離テストを容易に実施することが可能である。
【００５２】
さらに、上記「発明が解決しようとする課題」において説明したように、メモリコア分離テストと全体機能テストとを別々のメモリテスタで実行させる場合、全体機能テストを行うメモリテスタにおいては、テストパターンを固定化させることができるので、テストパターンの生成労力と差し替え労力を大幅に低減させることが可能である。また、メモリコア分離テストと全体機能テストとを単一のメモリテスタを用いて実行する場合においても、テストパターンの生成労力を低減させることが可能である。
【００５３】
また、上記「発明が解決しようとする課題」において、コンテンツの内容に応じてデスクランブル処理のキー情報が変化するような半導体メモリを想定した場合、入力パターンデータと出力期待値データの両方をコンテンツに応じて差し替えなければならないことを説明した。しかし、本実施の形態において、全体機能テストにおけるデスクランブル処理のキー情報（デスクランブル値）を、チェックパターンＣＰ内に格納するようにし、全体機能テスト時には、アドレス変換回路をＯＮとして、最初にチェックパターンＣＰ内にあるキー情報を固定的に読み取るようにする。そして、デスクランブル処理のキー情報を最初に更新するのである。このようにすれば、コンテンツに応じてキー情報が変化するような半導体メモリであっても、全体テストモード時には、チェックパターンＣＰ内に格納される共通のキー情報を利用することで、入力パターンデータＩＰを固定させることができる。したがって、本実施の形態の半導体メモリは、コンテンツに応じてデスクランブル値が変化するような半導体メモリ、言い換えると、アドレスに施されたセキュリティ処理を解除する方法がコンテンツに応じて変化するような半導体メモリに対しても、入力パターンデータＩＰを共通化させることができるので、より一層効果を奏する。
【００５４】
なお、チェックパターンＣＰとしては、予め充分に検討されたデータパターンを用いるとよい。たとえば、なるべく多くのバスや回路を網羅的に利用するようなデータパターンを用いることが好ましい。また、半導体メモリに固有の問題点、発生し易い問題点などがある場合には、それら問題点が出現する回路等を網羅的に利用するようなデータパターンを用いることが好ましい。また、入力パターンデータＩＰとして用いるアドレスの組み合わせ数（パターン数）は、特に限定されないが、複数存在するアドレスバスを網羅的に利用するような組み合わせのアドレスを用いることが好ましい。
【００５５】
また、本実施の形態において、セキュリティ回路１１は、排他的論理和を用いたスクランブル処理およびデスクランブル処理を用いて、転送されるデータの保護を行うように構成されているが、データの機密保護方法は特にこれに限定されるものではない。セキュリティ手段としては、アドレスあるいはデータの機密保護を図るためのあらゆる手段を適用可能である。たとえば、セキュリティ回路１１は、ＲＳＡなどの暗号を利用したセキュリティ機能を備えるものであってもよい。この場合においても、メモリコア分離テストモードにおいては、セキュリティ回路１１（ＲＳＡセキュリティ手段）およびアドレス変換回路１２をバイパスさせてメモリ全域テストを行うようにし、全体機能テストモードにおいては、アドレスおよびデータがセキュリティ回路１１（ＲＳＡセキュリティ手段）において処理されるようにするとともに、アドレス変換回路１２において、入力したアドレスをチェックパターンＣＰの格納領域を指定するように変換すればよい。
【００５６】
また、本実施の形態においては、セキュリティ回路１１は、アドレスおよびデータに対してセキュリティ処理を施すようにしているが、本発明は、アドレスあるいはデータの一方にセキュリティ処理を施す半導体メモリに対しても適用可能である。この場合にも、メモリコア分離テストモードにおいては、セキュリティ回路１１およびアドレス変換回路１２をバイパスさせてメモリ全域テストを行う。一方、全体機能テストモードにおいては、アドレスあるいはデータのうちセキュリティ処理が施される対象をセキュリティ回路１１において処理されるようにするとともに、アドレス変換回路１２において、入力したアドレスをチェックパターンＣＰの格納領域を指定するように変換すればよい。
【００５７】
上記の実施の形態において、アドレス変換回路１２は、アドレスの上位３ビットを“１１１”でマスクするという方法を一例として説明した。しかし、このようなアドレス変換方法は、上位３ビットの情報が失われる。このため、上位３ビットのエラーを検出できないという問題点はある。
【００５８】
そこで、アドレス変換の別の方法として、まず、アドレスの上位３ビットを、当該アドレスに加算し、加算処理後のアドレスの上位３ビットをマスクするという方法が考えられる。この方法であれば、マスク処理後のアドレスにも上位３ビットの情報が含まれるので、アドレス変換処理が若干複雑になるが、セキュリティ回路１１のテストという観点からは好ましい。つまり、アドレスの上位３ビットにエラーが生じていた場合、チェックパターンＣＰから読み出されるデータが変化するため、エラーを検出できることとなるからである。
【００５９】
なお、半導体メモリ１０は、マスクＲＯＭに限定されることはなく、本発明は、一般的な半導体メモリに対して適用可能である。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態にかかる半導体メモリの回路ブロック図である。
【図２】メモリ専用テスタを用いて実施の形態にかかる半導体メモリの全体機能テストを行う場合の動作状態を示す図である。
【図３】アドレス変換処理の一例を示す図である。
【図４】メモリ専用テスタを用いて実施の形態にかかる半導体メモリのメモリコア分離テストを行う場合の動作状態を示す図である。
【図５】半導体メモリの一般的な入出力関係を示す図である。
【図６】セキュリティ回路が設けられた半導体メモリの一般的な入出力関係を示す図である。
【図７】セキュリティ回路が設けられた半導体メモリにおけるメモリコア分離テストを行う場合の一般的な動作状態を示す図である。
【図８】メモリ専用テスタを用いてセキュリティ回路が設けられた半導体メモリにおけるメモリコア分離テストを行う場合の一般的な動作状態を示す図である。
【図９】メモリ専用テスタを用いてセキュリティ回路が設けられた半導体メモリにおける全体機能テストを行う場合の一般的な動作状態を示す図である。
【符号の説明】
【００６１】
１０    半導体メモリ
１１    セキュリティ回路
１２    アドレス変換回路
１３    メモリコア
１５〜１７    切替回路
２１    入力端子
２２    出力端子
２３    アドレスバス
２４    データバス
【図１】
2006147024.tif 000003
【図２】
2006147024.tif 000004
【図３】
2006147024.tif 000005
【図４】
2006147024.tif 000006
【図５】
2006147024.tif 000007
【図６】
2006147024.tif 000008
【図７】
2006147024.tif 000009
【図８】
2006147024.tif 000010
【図９】
2006147024.tif 000011