(57)【特許請求の範囲】
【請求項１】
パラレルインターフェースを備えるメモリアーキテクチャであって、
前記パラレルインターフェースの複数のパラレルピンを備えるメモリと、シリアルダイレクトアクセス（ＳＤＡ）回路とを備え、
前記ＳＤＡ回路は、
イネーブルビットを受信するためのイネーブルピンであって、前記ＳＤＡ回路はこのイネーブルビットが第一の論理値であることに応答してイネーブルにされ、このイネーブルビットが第二の論理値であることに応答してディセーブルにされる、イネーブルピンと、
シリアルビットの各々が前記パラレルピンの１つに関連付けられるように、前記ＳＤＡ回路がイネーブルのときにこれらの複数のシリアルビットを順次中継するためのシリアルピンと、
第２シリアルピンと、
前記ＳＤＡ回路がイネーブルのときに、前記シリアルビットと関連付けられ、テストの結果を前記第２シリアルピンに出力する、前記メモリの組み込みテストを行うための自動テストモジュールとを備え、
前記ＳＤＡ回路は、前記イネーブルビットが第二の論理値であるときに、前記複数のパラレルピンのパラレルビットを前記パラレルインターフェースを介して中継するように設定され、前記シリアルピン及び前記第２シリアルピンは同じパッドに連結されている、メモリアーキテクチャ。
【請求項２】
前記パラレルピンは所定数のアドレスピンを備えており、前記アドレスピンの各々はアドレスビットを受信し、前記アドレスピンによって同時に受信される前記アドレスビットが前記メモリにアクセスするための第１アドレスを形成し、また、前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールは前記第１アドレスを自動的に更新して、前記メモリにアクセスするための第２アドレスを提供する、請求項１に記載のメモリアーキテクチャ。
【請求項３】
前記パラレルピンは第２所定数のデータピンをさらに備えており、前記データピンの各々はデータビットを受信し、前記データピンによって同時に受信される前記データビットが前記メモリの第１データを形成し、また、前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールはさらに前記第１データに応答して第２データを自動的に提供して、前記第２データを前記メモリの前記第２アドレスにプログラミングする、請求項２に記載のメモリアーキテクチャ。
【請求項４】
前記自動テストモジュールが前記第２データを提供するとき、前記自動テストモジュールは前記第１データに関する論理演算を行って、前記第２データを取得する、請求項３に記載のメモリアーキテクチャ。
【請求項５】
前記自動テストモジュールが前記第２データを提供するとき、前記第２データは前記第１データと同一である、請求項３に記載のメモリアーキテクチャ。
【請求項６】
前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールはさらに前記メモリの前記第２アドレスから第２データを読み込んで、前記第２データを所定のデータと比較して比較結果を、前記テストの結果として生成する、請求項２に記載のメモリアーキテクチャ。
【請求項７】
前記シリアルピンおよび前記イネーブルピンはそれぞれ別々のパッドに連結されている、請求項１に記載のメモリアーキテクチャ。
【請求項８】
複数のパラレルピンを備える回路ブロック用のシリアルダイレクトアクセス（ＳＤＡ）回路であって、
イネーブルビットを受信するためのイネーブルピンであって、このイネーブルビットが第一の論理値であることに応答して前記ＳＤＡ回路が選択的にイネーブルにされ、このイネーブルビットが第二の論理値であることに応答してディセーブルにされる、イネーブルピンと、
シリアルビットの各々が前記パラレルピンの１つに関連付けられるように、前記ＳＤＡ回路がイネーブルのときにこれらの複数のシリアルビットを順次中継するためのシリアルピンと、
第２シリアルピンと、
前記ＳＤＡ回路がイネーブルのときに、前記シリアルビットと関連付けられ、テストの結果を前記第２シリアルピンに出力する、前記回路ブロックの組み込みテストを行うための自動テストモジュールと、
前記イネーブルビットが第二の論理値であるときに、前記複数のパラレルピンのパラレルビットを中継するように設定されているパラレルインターフェースと、を備え、
前記シリアルピン及び前記第２シリアルピンは同じパッドに連結されているシリアルダイレクトアクセス（ＳＤＡ）回路。
【請求項９】
前記パラレルピンは所定数のアドレスピンを備えており、前記アドレスピンの各々が１つのアドレスビットを受信して、前記アドレスピンによって同時に受信される前記アドレスビットが前記回路ブロックにアクセスするための第１アドレスを形成し、また、前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールは前記第１アドレスを自動的に更新して、前記回路ブロックにアクセスするための第２アドレスを提供する、請求項８に記載のＳＤＡ回路。
【請求項１０】
前記パラレルピンは第２所定数のデータピンを備えており、前記データピンの各々が１つのデータビットを受信して、前記データピンが同時に受信する前記データビットが前記回路ブロック用の第１データを形成し、また、前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールはさらに前記第１データに応答して第２データを提供し、前記第２データを前記回路ブロックの前記第２アドレスに入力する、請求項９に記載のＳＤＡ回路。    
【請求項１１】
前記自動テストモジュールが前記第２データを提供するとき、前記自動テストモジュールは前記第１データに関する論理演算を行って、前記第２データを取得する、請求項１０に記載のＳＤＡ回路。
【請求項１２】
前記自動テストモジュールが前記組込みテストを行うとき、前記自動テストモジュールはさらに前記回路ブロックの前記第２アドレスから第２データを受信して、前記第２データを所定のデータと比較して比較結果を、前記テストの結果として生成する、請求項９に記載のＳＤＡ回路。
【請求項１３】
前記シリアルピンおよび前記イネーブルピンはそれぞれ別々のパッドに連結されている、請求項８に記載のＳＤＡ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリアーキテクチャおよび関連シリアルダイレクトアクセス（ＳＤＡ）回路に関し、より具体的には、同時測定をサポートするためにシリアルアクセスおよび組込みテスト機能を提供するメモリアーキテクチャおよび関連ＳＤＡ回路に関するものである。
【背景技術】
【０００２】
シリコンダイに形成される集積回路は、現代の技術のもっとも重要なハードウェア基礎の一つとなってきている。一般に、ダイはシリコン知的財産（ＩＰ）ともなり得る複数の回路ブロックを含む。例えば、中央処理装置およびマイクロコントロールユニットは一般に採用される論理回路ブロックである。また、ダイに統合できる不揮発性および／または揮発性の埋め込み型メモリは、現代のダイで不可欠な回路ブロックになってきている。
【０００３】
ダイの回路ブロックは互いに通信する必要がある。通信の最適効率のために、回路ブロックの各々には、他の回路ブロック（複数の回路ブロック）に連結されている多ピンのパラレルインターフェースを装備している。例えば、メモリのパラレルインターフェースは多数のアドレスピンと、多数のデータピンとを含む。アドレスピンの各々はアドレスの一部（バイナリビットなど）を同時に受信できるので、メモリにアクセスするための完全なアドレスはアドレスピンがそれぞれ受信する部分を集約することによって取得される。
【０００４】
メモリのアドレスにデータをプログラミングする（書き込む）ために、パラレルインターフェースの各データピンがデータの一部（バイナリビットなど）を同時に受信するので、完全なデータが集約されて、アドレスによって割り当てられているメモリ位置にプログラミングされる（書き込まれる）。
メモリのアドレスからデータを読み込むために、データピンの各々はデータの一部を同時に出力するので、アドレスに格納されている完全なデータが取得されて、メモリのパラレルインターフェースを介して出力される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
回路ブロックのパラレルインターフェースは通信効率を高めるが、回路ブロックの機能テストをそのパラレルインターフェースを介して行うのは難しい。シリコンウェハのダイをテストするために、プローブカードを装備しているテスタが使用される。各プローブカードは多数のプローブを有し、各プローブはダイのパッドに接触できるので、信号および／または電力をダイに供給する、および／またはダイから受信することができる。
【０００６】
ピンは、信号を中継および経路決定するためのダイ内の内部導電路でしかないため、ピンがパッドに接続されていない限り、プローブはピンに接触することはできない。つまり、ダイの回路ブロックがパラレルインターフェースのパラレルピンを介してテストされる場合、パラレルピンの各々はダイの個々のパッドに接続されている必要がある。
パラレルインターフェースのピン用のパッドを配列することは、各パッド、例えば静電放電（ＥＳＤ）保護を施されているパッドがダイのかなりのレイアウト面積を占めるため、非常にコストが高い。
【０００７】
さらに、パラレルインターフェースを介したテストはテスト効率を制限する。プローブカードは有限数のプローブしか有していないため、ダイあたりにつき検査する必要のあるパッドが増えるほど、プローブカードによって同時にテストできるダイは少なくなる。
そのため、本発明の目的は、メモリ（例えば、埋め込み型フラッシュメモリ）とＳＤＡ回路とを含み、パラレルインターフェースを備えるメモリアーキテクチャを提供することである。
【０００８】
本発明の他の目的は、多数のパラレルピンのパラレルインターフェースを含む回路ブロック用のＳＤＡ回路を提供することである。
【課題を解決するための手段】
【０００９】
本発明におけるメモリアーキテクチャのメモリはパラレルインターフェースの複数のパラレルピンを含む。ＳＤＡ回路はイネーブルピンと、シリアルピンと、自動テストモジュールとを含む。イネーブルピンはイネーブルビットを受信するように構成されており、ＳＤＡ回路がイネーブルビットに応答して選択的にイネーブルおよびディセーブルにされる。シリアルピンはＳＤＡ回路がイネーブルのときに複数のシリアルビットを順次中継（入力および／または出力）するように構成されているので、シリアルビットの各々はパラレルピンの１つと関連付けられている。例えば、各シリアルビットは関連パラレルピンに入力でき、および／または各シリアルビットは関連パラレルピンによって出力される。自動テストモジュールは、ＳＤＡ回路がイネーブルのときにシリアルビットに関連付けられているメモリの組込みテストを行うように構成されている。例えば、自動テストモジュールは、ＳＤＡ回路がイネーブルのときにシリアルビットに応答して組込みテストを行うことができる。
【００１０】
本発明によれば、パラレルピンはＳＤＡ回路のより少ないピンを介してシリアルにアクセスできるため、メモリのテスト効率が改善される。ダイあたりで検査するパッドが少なくなるほど、１枚のプローブカードでテストできるダイが増える。このように、同時測定がサポートされて、最適化される。
ある実施形態では、パラレルピンは所定数のアドレスピンを含み、アドレスピンの各々が１つのアドレスビットを受信して、アドレスピンによって同時に受信されるアドレスビットがメモリにアクセスするための第１アドレスを形成する。自動テストモジュールが組込みテストを行うとき、自動テストモジュールは第１アドレスを自動的に更新して、メモリにアクセスするための第２アドレスを提供する。
【００１１】
ある実施形態では、組込みテストは自動プログラムテストである。パラレルピンは第２所定数のデータピンをさらに備え、データピンの各々は１つのデータビットを受信し、データピンによって同時に受信されるデータビットはメモリの第１データを形成する。自動テストモジュールが組込み自動プログラムテストを行うとき、自動テストモジュールは第１データに応答してさらに自動的に第２データを提供する。例えば、第２データは第１データと同一とすることができる。あるいは、自動テストモジュールは第１データに関する論理演算を行って第２データを取得することができ、例えば、第１データの各ビットを反転して、第２データを取得する。そのため、自動テストモジュールはメモリの第１アドレスおよび第２アドレスに第１データおよび第２データをそれぞれさらにプログラミングする（書き込む）。
【００１２】
つまり、シリアルに入力されるアドレスにプログラミングされる１つのシリアルに入力されるデータのみに応答して、ＳＤＡ回路はデータおよびアドレスをそれ以上入力することなく、他のアドレス（または複数のアドレス）に自動的にさらに多くのデータをプログラミングできる。したがって、テストするダイよりもはるかに遅く動作するテスタがメモリを埋めるのにそれ以上のアドレスおよびさらに多くのデータを送り込まなくてもよいため、テスト効率が高まる。
【００１３】
ある実施形態では、組込みテストは自動読み込みテストである。自動テストモジュールが組込み型自動読み込みテストを行うとき、自動テストモジュールはメモリの第１アドレスおよび第２アドレスから第１データおよび第２データをそれぞれさらに読み込んで、第１データおよび第２データを所定のデータと比較して比較結果を生成し、ＳＤＡ回路の第２シリアルピンを介して比較結果を出力する。ある実施形態では、シリアルピンおよび第２シリアルピンはともに同じパッドに連結されて、パッドを共有する。
【００１４】
つまり、読み込まれる１つのシリアルに入力されるアドレスのみに応答して、ＳＤＡ回路はアドレスをそれ以上入力することなく、他のアドレス（または複数のアドレス）から自動的にさらに多くのデータを読み込むことができる。したがって、テスタがメモリの他の部分を読み込むためにそれ以上のアドレスを送り込まなくてもよいため、テスト効率が高まる。ある実施形態では、ＳＤＡ回路は自動的に読み込んだデータをテスタにシリアルに出力して、メモリの機能を検証できる。別の実施形態では、ＳＤＡ回路は、読み込んだデータが期待される内容と一致するかどうかを自動的に検証（比較）し、その結果を第２シリアルピンを介してテスタに出力するので、テスタは、すべての読み込みデータの代わりに、検証（比較）結果をシリアルに受信するだけでよいため、テスト効率は一層改善される。
【００１５】
ある実施形態では、シリアルピンおよびイネーブルピンはそれぞれ別々のパッドに連結されている。
本発明のＳＤＡ回路はイネーブルピンと、シリアルピンと、自動テストモジュールとを含む。イネーブルピンはイネーブルビットを受信するように構成されており、ＳＤＡ回路はイネーブルビットに応答して選択的にイネーブルおよびディセーブルにされる。シリアルピンは、ＳＤＡ回路がイネーブルのときに複数のシリアルビットを順次中継するように構成されているので、シリアルビットの各々がパラレルピンの１つに関連付けられている。自動テストモジュールは、シリアルビットに関連付けられている回路ブロックの組込みテストを行うように構成されている。例えば、自動テストモジュールはＳＤＡ回路がイネーブルのときに、シリアルビットに応答して組込みテストを行うことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明のある実施形態による回路ブロックのアーキテクチャを示すブロック図である。
【図２】図１に図示する回路ブロックをテストするためのステージのシーケンスを示す図である。
【図３】図２に図示するシーケンスの詳細を示す図である。
【図４】図２に図示するシーケンスの詳細を示す図である。
【図５】図２に図示するシーケンスの詳細を示す図である。
【図６】図２に図示するシーケンスの詳細を示す図である。
【図７】図２に図示するシーケンスの詳細を示す図である。
【発明を実施するための形態】
【００１７】
本発明の多数の目的、特徴および利点は、添付の図面と合わせて考慮して、以下の本発明の実施形態の詳細な説明を読むと容易に明らかになるであろう。しかし、本明細書で採用する図面は説明のためのものであり、制限と見なしてはならない。
本発明のある実施形態による回路ブロックのアーキテクチャ１００を図１に示す。回路ブロックのアーキテクチャ１００は、ＳＤＡ回路１０と回路ブロック２０とを含む。
【００１８】
ある実施形態では、回路ブロック２０はメモリ、例えば、フラッシュメモリであるため、回路ブロックのアーキテクチャ１００はメモリアーキテクチャである。回路ブロック２０は、回路ブロック２０のパラレル制御およびアクセスのための複数のパラレルピンを含む。例えば、回路ブロック２０は、パラレルアドレス入力ピンＰＡ［０］からＰＡ［Ｎ］と、それ以上のアドレス指定のためのパラレルピンＰＩＦＲＥＮおよびＰＦＵＳＥと、パラレルデータ入力ピンＰＤＩＮ［０］からＰＤＩＮ［Ｎｉｎ］と、パラレルデータ出力ピンＰＤＯＵＴ［０］からＰＤＯＵＴ［Ｎｏｕｔ］と、ピンＰＰＲＯＧ，ＰＭＡＳＩ，ＰＷＥ，ＰＥＲＡＳＥ，ＰＮＶＳＴＲ，ＰＴＭ［０］からＰＴＭ［Ｎｔ］およびＰＣＥ等などのパラレル制御ビットを受信するためのいくつかのパラレル制御ピンとを含むことができる。回路ブロック２０はピンＶＤＤ，ＶＤＤ２およびＶＳＳから供給電圧も取得できる。
【００１９】
他方で、回路ブロック２０をシリアル制御し、回路ブロック２０にアクセスするために、ＳＤＡ回路１０はピンＳＤＡ，ＳＣＬＫ，ＳＤＯＵＴ，ＳＤＩＮ，ＳＯＥならびにオプションピンＳＭＥＡＳＯＵＴおよびＳＩＥを含む。
データを回路ブロック２０のアドレスにプログラミング（入力、書き込み、レジスタまたは格納）するために、パラレルピンＰＡ［０］からＰＡ［Ｎ］の各々はアドレスの一部（例、バイナリアドレスビット）を同時に受信するので、ピンＰＡ［０］からＰＡ［Ｎ］に受信される部分を集約することによって完全なアドレス（例、（Ｎ＋１）ビットのアドレス）を提供することができる。
【００２０】
また、パラレルピンＰＤＩＮ［０］からＰＤＩＮ［Ｎｉｎ］の各々もデータの一部（例、バイナリデータビット）を同期して受信するので、続いてデータ（例、（Ｎｉｎ＋１）ビットのデータ）を回路ブロック２０のアドレスにプログラミングできる。
ある実施形態では、回路ブロック２０はデータを格納するための３つのブロック、例えば、メインブロック、情報ブロックおよびヒューズブロックを含み、ピンＰＩＦＲＥＮおよびＰＦＵＳＥの各々が、情報ブロックがイネーブルかどうかおよびヒューズブロックがイネーブルかどうか、つまり、アドレスが情報ブロックに属しているかどうかおよびアドレスがヒューズブロックに属しているかどうかをそれぞれ示すバイナリビットを受信する。
【００２１】
回路ブロック２０のアドレスからデータを読み込む（または受信する）ために、パラレルピンＰＡ［０］からＰＡ［Ｎ］の各々はアドレスの一部を同時に受信するため、アドレスのデータを読み込むことができる。したがって、パラレルピンＰＤＯＵＴ［０］からＰＤＯＵＴ［Ｎｏｕｔ］の各々がデータ（例、（Ｎｏｕｔ＋１）ビットのデータ）の一部（例、バイナリデータビット）を同期して出力する。
【００２２】
ピンＰＰＲＯＧ，ＰＭＡＳＩ，ＰＥＲＡＳＥ，ＰＮＶＳＴＲおよびＰＣＥの各々は、プログラミングがイネーブルかどうか、チップ消去がイネーブルかどうか、消去がイネーブルかどうか、不揮発性がイネーブルかどうか、およびチップがイネーブルかどうかをそれぞれ判定するためのステータス（例、バイナリ制御ビット）を同時に受信する。ピンＰＷＥはプログラムおよび消去用のパルスピンである。ピンＰＴＭ［０］からＰＴＭ［Ｎｔ］はテストモードピンである。
【００２３】
ＳＤＡ回路１０は、パラレルアドレスピン（例、ピンＰＡ［０］からＰＡ［Ｎ］）、パラレルデータピン（例、ピンＰＤＩＮ［０］からＰＤＩＮ［Ｎｉｎ］およびピンＰＤＯＵＴ［０］からＰＤＯＵＴ［Ｎｏｕｔ］）およびパラレル制御ピン（例、ピンＰＰＲＯＧ，ＰＭＡＳＩ，ＰＷＥ，ＰＥＲＡＳＥ，ＰＮＶＳＴＲ，ＰＴＭ［０］からＰＴＭ［Ｎｔ］およびＰＣＥ等）のパラレルインターフェースに加えて、回路ブロック２０をテストするためのシリアルインターフェースを実装する。シリアルインターフェースはピンＳＤＡ，ＳＣＬＫ，ＳＤＩＮ，ＳＤＯＵＴおよびＳＯＥ、ならびにオプションピンＳＭＥＡＳＯＵＴおよびＳＩＥを含む。
【００２４】
ピンＳＤＡはイネーブルビットを受信するためのイネーブルピンであるため、ＳＤＡ回路１０はイネーブルビットに応答して選択的にイネーブルおよびディセーブルにされる。ＳＤＡ回路１０がディセーブルのとき、回路ブロック２０は通常の機能を行い、パラレルインターフェースを介して他の回路ブロック（複数の回路ブロック）（図示せず）と通信する。ＳＤＡ回路１０がイネーブルのとき、回路ブロックのアーキテクチャ１００はテストモードに入り、したがって回路ブロック２０はテスタのテストを受けて、ＳＤＡ回路１０のシリアルインターフェースを介して制御およびアクセスされる。
【００２５】
ＳＤＡ回路１０がイネーブルのとき、アドレスの一部はピンＳＤＩＮによって順次受信され、続いてパラレルアドレスピンＰＡ［０］からＰＡ［Ｎ］にそれぞれ送信（dispatch）される。シリアル入力ピンであるピンＳＤＩＮはアドレスのデータの部分をシリアルに受信するので、データはパラレルピンＰＤＩＮ［０］からＰＤＩＮ［Ｎｉｎ］を介して回路ブロック２０にプログラミングできる。他方で、ピンＳＤＯＵＴはシリアル出力ピンであり、回路ブロック２０のピンＰＤＯＵＴ［０］からＰＤＯＵＴ［Ｎｏｕｔ］から読み込まれるデータの部分を順次出力する。ピンＳＣＬＫは、ＳＤＡ回路１０がイネーブルのとき、シリアルアクセスのクロックを受信する。
【００２６】
ＳＤＡ回路１０がイネーブルのとき、ピンＳＯＥおよびＳＩＥの各々は、データ出力がイネーブルかどうか、およびデータ入力がイネーブルかどうかをそれぞれ示すステータス（例、バイナリビット）を出力する。データ入力およびデータ出力はシリアルアクセスに関して互いに排他的であるため、ピンＳＩＥは省くことができ、ピンＳＤＩＮおよびＳＤＯＵＴがパッドＩＯ＿ＰＡＤ（図１には図示せず）を共有できる。また、ピンＳＯＥをパッドＩＯ＿ＰＡＤに装着して、パッドＩＯ＿ＰＡＤがピンＳＤＩＮの入力をしているか、またはピンＳＤＯＵＴの出力をしているかを示すこともできる。
【００２７】
ピンＳＭＥＡＳＯＵＴはアナログ入出力用の双方向ピンである。したがって回路ブロック２０がテスト中のとき、回路ブロック２０の電流をピンＳＭＥＡＳＯＵＴを介して測定できる。かかるアナログ測定が必要ない場合、ピンＳＭＥＡＳＯＵＴは省くことができる。
ある実施形態では、ピンＳＤＡは他のピンと共有していない個別のパッドを占める。しかし、シリアルインターフェースの残りのピンのすべては、ＳＤＡ回路１０がイネーブルのとき使用されない他のピンとパッドを共有できる。かかる構成では、テスタで検査するダイのパッド数を最小限にでき、同じプローブカードでテストするダイの数を最大化できる。ピンＳＤＡのパッドはＳＤＡ回路１０をディセーブルにするレベルに弱く結びつけ、続いてＳＤＡ回路１０をイネーブルにするために別のレベルに駆動することができる。あるいは、ピンＳＤＡのパッドは境界を区切るオプションによって制御できる。
【００２８】
シリアルインターフェースを介して外部のシリアル制御およびアクセス（例、テスタから）を受信することに加えて、ＳＤＡ回路１０は、ＳＤＡ回路１０がイネーブルのとき、組込みテスト、例えば、自動プログラムテストおよび自動読み込みテストを行う自動テストモジュール１６も含む。
自動プログラムテストの場合、ＳＤＡ回路１０は、テスタから、シリアルインターフェースを介して開始アドレスおよび開始アドレス用の開始データを受信する。開始データを回路ブロック２０の開始アドレスにプログラミングすることに加えて、自動テストモジュール１６は回路ブロック２０にアクセスするための一連の後続アドレスを提供するために開始アドレスを自動的に更新もする。開始データに応答して、自動テストモジュールはさらに、後続アドレス用の一連の後続データを自動的に提供するので、これら後続データはそれぞれ回路ブロック２０の後続アドレスにプログラミングされる。つまり、１つのシリアルに入力されたデータおよび１つのシリアルに入力されたアドレスのみに応答して、ＳＤＡ回路１０はデータおよびアドレスをそれ以上入力することなく、さらに多くのデータを他のアドレスに自動的にプログラミングできる。こうして、テスタは回路ブロック２０のアドレスを埋めるのにさらに多くのアドレスおよびさらに多くのデータを送り込まなくてもよいため、テスト効率が高まる。
【００２９】
自動プログラムテストのある実施形態において、自動生成される後続データは、テスタから受信される開始データと同一にすることができる。あるいは、自動テストモジュール１６は前のデータに関する論理演算を行って、連続データを取得することができ、例えば、前のデータの各ビットを反転して連続データとして相補的データを取得する。ある実施形態では、自動テストモジュール１６は回路ブロック２０の開始アドレスから最終アドレスまでの範囲の一連のアドレスを提供し、したがって開始アドレスから最終アドレスまでのアドレスがプログラミングされる。ある実施形態では、自動テストモジュール１６は回路ブロック２０の開始アドレスから始まって最終アドレスまでいき、最終アドレスから開始アドレスに戻る一連のアドレスを提供する。そのため、回路ブロック２０のすべてのアドレスをプログラミングできる。
【００３０】
自動読み込みテストの場合、ＳＤＡ回路１０はテスタからシリアルインターフェースを介して開始アドレスを受信する。回路ブロック２０の開始アドレスからデータを読み込むことに加えて、自動テストモジュール１６は回路ブロック２０にアクセスするための一連の後続アドレスを提供するために開始アドレスを自動的に更新もするため、一連の後続データは回路ブロック２０の後続アドレスから読み込まれる。つまり、１つのシリアルに入力したアドレスのみに応答して、ＳＤＡ回路１０はアドレスをそれ以上入力することなく、他のアドレスからさらに多くのデータを自動的に読み込むことができる。そのため、テスタがさらに多くのアドレスを送り込まなくてもよいため、テスト効率は高まる。
【００３１】
自動読み込みテストのある実施形態において、ＳＤＡ回路１０は自動的に読み込まれた一連のデータをテスタにシリアルに出力して、回路ブロック２０の機能を検証することができる。自動読み込みテストの別の実施形態では、ＳＤＡ回路１０の自動テストモジュール１６は、読み込まれたデータが期待される内容と一致するかどうかを自動的に検証（比較）して、その結果をシリアルインターフェースを介してテスタに出力するので、テスタは、読み込まれるすべてのデータの代わりに、検証（比較）結果をシリアルに受信するだけでよいため、テストの効率が一層改善される。
【００３２】
本発明のある実施形態によるＳＤＡ回路１０の動作を、図２を参照して説明する。回路ブロック２０のテストは、それぞれ電源投入状態、コマンド状態、アドレス状態、データ入力状態、実行状態、停止状態および終了状態である状態３０，３２，３４，３６，３８，４０および４２によって実現できる。テストを開始するために、ピンＶＤＤおよびＶＤＤ２に適正な供給電圧が印加される。供給電圧が安定すると、パッドＳＤＡ＿ＰＡＤの信号がレベルＬからレベルＨに駆動されるので、パッドＳＤＡ＿ＰＡＤに連結されているピンＳＤＡはＳＤＡ回路１０をイネーブルにするビットを受信する。ＳＤＡ回路１０がイネーブルになると、回路ブロックアーキテクチャ１００は電源投入状態３０に入って、回路ブロック２０にアクセスおよびテストをする準備をさせる。
【００３３】
電源投入状態３０が終了すると、状態３２，３４，３６，３８，４０および４２の１以上のラウンドによってテストを行うことができる。状態３２から４２の各ラウンド中、ＳＤＡ回路１０の内部信号ＳＤＡＭＯはレベルＨに維持され、ピンＳＣＬＫに連結されているパッドＳＣＬＫ＿ＰＡＤはトグルされる。テストが完了した後、パッドＳＤＡ＿ＰＡＤの信号はレベルＬに戻され、信号ＳＤＡＭＯはレベルＬに戻り、したがってＳＤＡ回路１０はディセーブルにされる。ＳＤＡ回路１０が完全にディセーブルになった後、ピンＶＤＤおよびＶＤＤ２に供給される電圧を下げて、節電のためにＳＤＡ回路１０の電源を切断することができる。
【００３４】
本発明のある実施形態による電源投入状態３０を、図３を参照して説明する。ＳＤＡ回路１０は電源投入状態３０では、ピンＳＤＡのＬからＨへの遷移と、信号ＳＤＡＭＯのＬからＨへの遷移との間で動作する。
電源投入状態３０の間、信号ＰＰＷＲＤＮＢ＿ＳＤＡはレベルＬからレベルＨに遷移して、回路ブロック２０の電源切断モードをディセーブルにし、その後信号ＰＴＲＩＭ＿ＳＤＡもレベルＬからレベルＨに遷移して、回路ブロック２０のトリミングをイネーブルにする。信号ＰＰＷＲＤＮＢ＿ＳＤＡおよびＰＴＲＩＭ＿ＳＤＡはテストが終了するまで、つまりピンＳＤＡのＨからＬへの遷移まで、レベルＨに維持される。ピンＳＭＥＡＳＯＵＴは電源投入状態３０の間ずっとレベルＬに維持されている。
【００３５】
電源投入状態３０の間にピンＳＣＬＫがトグルされると、ピンＳＤＡのイネーブルの後でその第２のＬからＨへの遷移がＳＤＡ回路１０をそのレジスタのすべてをリセットするようにトリガする。ピンＳＤＩＮを介して、テスタは２つのパルス（ダミーサイクル）を使用して、ＳＤＡ回路１０に入力情報があることを通知することができる。続いて、バイナリ設定ビットＱ０，Ｑ１，Ｑ２，Ｑ３およびＱ４などのいくつかのステータスがピンＳＤＩＮを介してＳＤＡ回路１０に送信される。これらのステータスは、テストをどのように行うかを制御するＳＤＡオプション設定を指定するために使用する。例えば、ビットＱ０はプログラムアドレスをどのように自動的に更新する（増分する）かを選択し、ビットＱ１は自動プログラム中に自動的に提供される一連のデータを反転の論理演算により生成するかどうかを選択し、ビットＱ２は自動テストモジュール１６が自動読み込みテスト中にデータ比較を行うかどうかを選択し、ビットＱ３は組込みテストが自動プログラムかまたは自動読み込みかを判定し、ビットＱ４はテスト中に何ビット（例、８ビットまたは３２ビット）のデータにアクセスするかを選択する。信号ＳＤＡＭＯのＬからＨへの遷移の後、回路ブロック２０はアクセス準備が完了し、ＳＤＡ回路１０はＳＤＡ動作、つまり状態３２から４２のラウンド（複数のラウンド）を続ける。
【００３６】
アドレス状態３４、コマンド状態３２およびデータ入力状態３６をそれぞれ示す図４、図５および図６を参照されたい。図４に図示するように、アドレス状態３４の間、ピンＳＣＬＫをトグルすると、ピンＳＤＩＮによって回路ブロック２０の完全なアドレスを形成するアドレスビットＡ［０］からＡ［Ｎ］を順次受信できるので、ビットＡ［０］からＡ［Ｎ］はそれぞれピンＰＡ［０］からＰＡ［Ｎ］（図１）に送り込むことができる。ピンＳＣＬＫが２つの連続パルスを受信した後、さらに２つのビットＡｆおよびＡｉもピンＳＤＩＮを介して受信され、ＳＤＡ回路１０によってそれぞれピンＰＦＵＳＥおよびＰＩＦＲＥＮに送り込まれる。アドレス状態３４の間、ピンＳＤＡはテスタによってレベルＨに維持され、ピンＳＤＯＵＴ，ＳＩＥおよびＳＯＥはＳＤＡ回路１０によってそれぞれレベルＬ，ＨおよびＬに維持され、ピンＳＭＥＡＳＯＵＴは高インピーダンスに維持される。
【００３７】
図５に図示するように、コマンド状態３２の間、ダミービットＤＭＹおよび制御ビットＣ［０］からＣ［Ｎｃ］などのビットは、ピンＳＣＬＫのサイクルに応答してピンＳＤＩＮによって順次受信できるので、制御ビットＣ［０］からＣ［Ｎｃ］はそれぞれ、例えば、ピンＰＰＲＯＧ，ＰＭＡＳＩ，ＰＷＥ，ＰＥＲＡＳＥ，ＰＮＶＳＴＲ，ＰＴＭ［０］からＰＴＭ［Ｎｔ］およびＰＣＥ（図１）に送り込むことができる。コマンド状態３２の間、ピンＳＤＡはレベルＨに維持され、ピンＳＤＯＵＴ，ＳＩＥおよびＳＯＥはそれぞれレベルＬ，ＨおよびＬに維持され、ピンＳＭＥＡＳＯＵＴは高インピーダンスのままである。
【００３８】
図６に図示するように、データ入力状態３６の間、データビットＤ［０］からＤ［Ｎｘ］の各々はピンＳＣＬＫのトグルサイクルに応答してピンＳＤＩＮによってシリアルに受信できるので、データビットＤ［０］からＤ［Ｎｘ］はそれぞれピンＰＤＩＮ［０］からＰＤＩＮ［Ｎｉｎ］（図１）に送り込むことができる。ここで数値Ｎｘは数値Ｎｉｎ以下であり、数値Ｎｘの値は電源投入状態３０（図３）のビットＱ４に依存する。データ入力状態３６の間、ピンＳＤＡはレベルＨに維持され、ピンＳＤＯＵＴ，ＳＩＥおよびＳＯＥはそれぞれレベルＬ，ＨおよびＬに維持され、ピンＳＭＥＡＳＯＵＴは高インピーダンスのままである。
【００３９】
実行状態３８の間、ピンＳＣＬＫはトグルされたままであるため、回路ブロック２０は制御ビットＣ［０］からＣ［Ｎｃ］（図５）が指定するコマンドを実行でき、および／または自動テストモジュール１６がトリガされて、設定ビットＱ０からＱ４（図３）のＳＤＡオプション設定に従って選択および設定される組込みテストを自動的に行うことができる。続いて、実行されたコマンドおよび／または行われた組込みテストの結果は、データ出力状態３５の間にＳＤＡ回路１０によって出力できる。データ出力状態３５、停止状態４０および終了状態４２を示す図７を参照されたい。
【００４０】
図７に図示するように、データ出力状態３５の間、ピンＳＩＥはピンＳＣＬＫのダミーサイクルの後でレベルＨからレベルＬに遷移し、ピンＳＯＥは同期してレベルＬからレベルＨに遷移するので、テスタにＳＤＡ回路１０が出力情報を送信することが通知される。ピンＳＣＬＫのダミーサイクルの後、続いて、ピンＳＣＬＫが受信する後続サイクルに応答して、ピンＳＤＯＵＴを介して出力ビットＤ［０］からＤ［Ｎｙ］を順次出力できる。ビットＤ［０］からＤ［Ｎｙ］の完全な伝送の後、ＳＤＡ回路１０はピンＳＩＥをレベルＬからレベルＨに遷移し、またピンＳＯＥをレベルＨからレベルＬに遷移するので、データ出力状態３５が終了する。
【００４１】
続いて、テスタは停止状態４０および終了状態４２の間にピンＳＣＬＫを介して所定数のダミーサイクル（例、図７に図示する２つのダミーサイクル）を送信して、状態３２から４２の全体ラウンドを確実に終了させる。データ出力状態３５、停止状態４０および終了状態４２の間、ピンＳＤＡはレベルＨに維持され、ピンＳＭＥＡＳＯＵＴは高インピーダンスのままである。
【００４２】
ある実施形態では、ＳＤＡ回路１０によってシリアルに伝送される出力ビットＤ［０］からＤ［Ｎｙ］は自動的に読み込まれるデータとすることができるので、テスタは読み込まれたデータが期待される内容と一致するかどうかを比較することによって回路ブロック２０の機能を検証できる。別の実施形態では、ＳＤＡ回路１０は読み込まれるデータが期待される内容と一致するかどうかを自動的に検証（比較）して、検証（比較）結果をピンＳＤＯＵＴのシリアル出力ビットＤ［０］からＤ［Ｎｙ］によってテスタに出力する。
【００４３】
まとめると、回路ブロックのテスト中、本発明はパラレルアクセスのピンよりも少ないパッドを備える回路ブロックにシリアルダイレクトアクセスを提供し、したがって同時測定を支持し、最適化できる。本発明はシリアルダイレクトアクセスとともに自動組込みテスト機能も埋め込んでいるので、テスト効率を一層改善できる。
本発明は現在もっとも実用的で好適な実施形態と考えられるものに関して説明してきたが、本発明は開示される実施形態に制限する必要はないことは理解されるべきである。そうではなく、あらゆる修正および類似の構造を包含するようにもっとも広義な解釈が認められる添付の請求項の精神および範囲内に含まれる様々な修正および類似の構成をカバーすることが意図されている。
【図１】
0005529221.tif 000002
【図２】
0005529221.tif 000003
【図３】
0005529221.tif 000004
【図４】
0005529221.tif 000005
【図５】
0005529221.tif 000006
【図６】
0005529221.tif 000007
【図７】
0005529221.tif 000008