(57)【特許請求の範囲】
【請求項１】
クロック信号のパルス数をカウントし、当該カウント数をビットシフトすることにより所定倍に変換して出力するカウンタと、
前記カウンタの出力値と、基準アドレス信号とに基づいて試験対象の半導体メモリに対するアドレス信号を演算出力する演算回路と、を備え、
前記カウンタは、所定数を記憶する記憶部を備え、前記カウント数をビットシフトするとともに、前記記憶部に記憶された所定数を加算して出力することを特徴とするアドレス発生回路。
【請求項２】
前記記憶部に記憶された所定数が異なる、請求項１記載のアドレス発生回路を複数段備え、共通のクロック信号に基づいて、異なるアドレス信号を同時に発生することを特徴とするアドレス発生装置。
【請求項３】
前記同時に発生した異なるアドレス信号を、順次切り替えて出力することにより、連続的に異なるアドレス信号を出力する切替出力回路を備えたことを特徴とする請求項２記載のアドレス発生装置。
【請求項４】
基準アドレス信号と、カウンタによるクロックパルスのカウント数とに基づいて、試験対象の半導体メモリに対するアドレス信号を発生するアドレス発生方法であって、
前記カウント数をビットシフトする乗算工程と、
ビットシフトされたカウント数に所定数を加算する加算工程と、
前記加算工程による加算結果と、前記基準アドレス信号とに基づいて、所定の演算を行って前記試験対象の半導体メモリに対するアドレス信号を演算する演算工程と、
を含むことを特徴とするアドレス発生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体メモリの試験装置におけるアドレス発生回路、アドレス発生装置およびアドレス発生方法に関する。
【０００２】
【従来の技術】
当アドレス発生回路は、半導体メモリの試験評価において、高速にリード（読み出し）またはライト（書き込み）するメモリセルのアドレス信号を、一定の算法に基づいて発生するための回路であり、従来使用されている回路を、図６を参照して説明する。
【０００３】
図６は、従来のアドレス発生回路１００の一例を表す図である。
同図において、アドレス発生回路１００は、カウンタ１０およびＡＬＵ（演算論理ユニット）２０により構成される。
【０００４】
カウンタ１０は、外部から入力されるクロックパルスのパルス数を、＋１づつカウントし、ＡＬＵ２０にカウント数を出力する。
【０００５】
ＡＬＵ２０は、カウンタ１０からカウント数が入力されると、入力されたカウント数と外部から入力される基準アドレスとに基づいて所定の演算を行い、演算した結果をアドレスとして出力する。このアドレスが、評価対象となる半導体メモリに対するアドレスとなる。クロックパルスが入力される度、カウンタ１０はクロックパルスのカウントを行い、カウント数の出力をするため、ＡＬＵ２０は、その度に演算を行い、次々とアドレスを出力する。
【０００６】
すなわち、アドレス発生回路１００は、クロックパルスの入力に応じて、基準アドレスに対する演算を行い、次々とアドレスを発生する。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来のアドレス発生回路１００においては、カウンタ１０はクロックパルスのパルス数を、＋１づつカウントするだけであるため、基準アドレスに対して一定のアドレスしか発生できなかった。また、複数段のアドレス発生回路１００を使用し、クロックパルスと基準アドレス信号を共通にした場合においては、それぞれのアドレス発生回路１００から発生されるアドレスは同一のものとなり、異なるアドレスを同時に発生させることは困難であった。
【０００８】
本発明の課題は、基準アドレスに対して複数種類のアドレスを発生できるアドレス発生回路を提供することであり、さらに、このアドレス発生回路を複数段使用することにより、異なるアドレスを容易に発生させることができるアドレス発生装置、およびアドレス発生方法を提供することである。
【０００９】
【課題を解決するための手段】
請求項１記載のアドレス発生回路は、クロック信号のパルス数をカウントし、当該カウント数をビットシフトすることにより所定倍に変換して出力するカウンタ（例えば、図１のマルチプレックスカウンタ３０）と、前記カウンタの出力値と、基準アドレス信号とに基づいて試験対象の半導体メモリに対するアドレス信号を演算出力する演算回路（例えば、図１のＡＬＵ２０）と、を備え、前記カウンタは、所定数を記憶する記憶部（例えば図２のレジスタ３２）を備え、前記カウント数をビットシフトするとともに、前記記憶部に記憶された所定数を加算して出力することを特徴とする。
【００１０】
この請求項１記載の発明によれば、カウンタは、クロック信号のパルス数をカウントし、カウント数をビットシフトすることにより所定倍に変換して出力するので、ビットシフトする数を変化することにより、複数種類のカウント数を出力することができる。また、カウント数を所定倍に変換することにより、カウントアップ数を変化させることができる。
【００１１】
また、演算回路は、カウンタの出力値、すなわち、カウンタによって所定倍に変換されたカウント数と、基準アドレス信号とに基づいて、試験対象の半導体メモリに対するアドレス信号の演算出力を行うため、複数種類のアドレスを出力することができる。
【００１３】
また、例えば、ビットシフトされたカウント数に生じる下位の空きビットに、所定数を加算して出力することができる。したがって、この所定数を加算することによって、一のカウント数から様々な値を発生することが可能となる。なお、記憶部に記憶されている所定数とは、固定値に限る意味ではなく、例えば、外部信号等によって、必要に応じて適宜変更可能なように構成してもよい。
【００１４】
請求項２記載の発明のアドレス発生装置は、前記記憶部に記憶された所定数の異なる、請求項１記載のアドレス発生回路を複数段備え、共通のクロック信号に基づいて、異なるアドレス信号を同時に発生することを特徴とする。
【００１５】
この請求項２記載の発明によれば、各アドレス発生回路の記憶部に記憶された所定数がそれぞれ異なるので、各アドレス発生回路のカウンタは、それぞれ異なるカウント数を出力する。そのため、共通のクロック信号を用いることによって、異なるアドレス信号を同時に発生することができる。
【００１６】
さらに請求項３記載の発明のように、請求項２記載のアドレス発生装置において、前記同時に発生したアドレス信号を、順次切り替えて出力することにより連続的に異なるアドレス信号を出力する切替出力回路（例えば、図５のマルチプレクサ３００）を備えるように構成してもよい。
【００１７】
この請求項３記載の発明によれば、切替出力回路は、同時に発生した複数の異なるアドレス信号を、直列信号のアドレス信号として出力することができるので、異なるアドレスを連続的に発生することができる。また、アドレス発生回路の段数の変化に応じて、切替出力回路がアドレス信号を切り替えて出力する速度を変化させることにより、異なるアドレスを連続的に、かつ容易に発生することができる。また、そのような場合には、アドレス発生回路に対しては何ら変更を要せず、切替出力回路を高速に動作させることができれば良いため、アドレス発生回路を安価に実現することができる。
【００１８】
請求項４記載の発明のアドレス発生方法は、基準アドレス信号と、カウンタによるクロックパルスのカウント数とに基づいて、試験対象の半導体メモリに対するアドレス信号を発生するアドレス発生方法であって、前記カウント数をビットシフトする乗算工程と、前記ビットシフトされたカウント数に所定数を加算する加算工程と、前記加算工程による加算結果と、前記基準アドレス信号とに基づいて、所定の演算を行って前記試験対象の半導体メモリに対するアドレス信号を演算する演算工程と、を含むことを特徴とする。
【００１９】
この請求項４記載の発明によれば、例えば、ビットシフトされたカウント数に生じる下位の空きビットに、所定数を加算して出力することができる。したがって、一のカウント数から様々な値を発生することが可能となる。
【００２０】
【発明の実施の形態】
以下、図１〜図５を参照して本発明に係る実施の形態を詳細に説明する。
図１は、本発明の実施の形態における、アドレス発生回路２００の構成の例を表す図である。同図において、図６の従来のアドレス発生回路１００と共通の部分であるＡＬＵについては、同じ符号２０を付してある。
【００２１】
アドレス発生回路２００は、マルチプレックスカウンタ３０およびＡＬＵ２０により構成される。
【００２２】
ＡＬＵ２０は、入力された基準アドレスと、マルチプレックスカウンタ３０から入力されるカウンタ出力とに基づいて所定の演算を行い、演算結果をアドレスとして出力するものであり、従来の図６に示すＡＬＵ２０と同一の機能を有するものである。
【００２３】
図２は、マルチプレックスカウンタ３０の内部構成を表す図である。同図において、マルチプレックスカウンタ３０は、カウンタ３１、レジスタ３２、ビットシフト回路３３および加算器３４により構成される。
【００２４】
カウンタ３１は、入力されるクロックパルスのパルス数を、＋１づつカウントし、ビットシフト回路３３にカウント数を出力する。また、このカウンタ３１に外部からモード信号が入力されると、これまでカウントしたカウント数をクリアし、新たにカウントを開始する。
【００２５】
ビットシフト回路３３は、カウンタ３１から入力されるカウント数をシフトし、シフトした結果を加算器３４に出力する。なお、この時のシフトするビット数は、あらかじめ設定されている。
【００２６】
レジスタ３２は、加算器３４によって加算される値が格納されている。
【００２７】
加算器３４は、ビットシフト回路３３からシフトされたカウント数が入力されると、その入力されたカウント数と、レジスタ３２に格納されている値とを加算し、カウンタ出力として出力する。
【００２８】
したがって、ビットシフト回路３３が、カウンタ３１から入力されたカウント数をｍビットシフトすると、カウント数の下位ｍビットが空くことになる。そして、この空きビットには、加算器３４により、レジスタ３２に格納されている値が加算される。すなわち、この空きビットには、２＾ｍ（＾はべき乗を示す。）種類の値を入力することができる。つまり、マルチプレックスカウンタ３０は、２＾ｍ種類のカウンタ出力を行うことができる。また、カウント数をｍビットシフトすることにより、カウント数を２＾ｍ倍することができる。つまり、クロックパルスによって＋１づつカウントアップするのではなく、＋２＾ｍづつカウントアップすることができる。このカウントアップする数を、カウントアップ数という。
【００２９】
図３は、上記のような構成と動作を特徴とするアドレス発生回路２００を、ｎ（ｎは自然数）段使用して構成したアドレス発生装置５００を表す図である。各アドレス発生回路２００（２００−１、２００−２、…、２００−ｎ）は、それぞれのマルチプレックスカウンタ３０（３０−１、３０−２、…、３０−ｎ）内のレジスタ３２に格納されている値が異なるだけであり、それ以外の構成は全て同じ構成となっている。各アドレス発生回路２００には、共通の基準アドレスおよびクロックパルスが入力される。
【００３０】
すなわち、各アドレス発生回路２００のレジスタ３２内には、それぞれ異なる値が格納されているため、各アドレス発生回路２００内の加算器３４からは、それぞれ異なる値が出力される。このことにより、各マルチプレックスカウンタ３０のカウンタ出力はそれぞれ異なる。また、ＡＬＵ２０は、カウンタ出力と基準アドレスとに基づいて演算を行ってアドレスを出力するので、カウンタ出力が異なると、アドレス出力もそれぞれ異なることとなる。したがって、それぞれのアドレス発生回路２００は、異なるアドレスを発生する。
【００３１】
各アドレス発生回路２００は、発生するアドレスを、マルチプレクサ３００に出力する。
【００３２】
マルチプレクサ３００は、並列に入力される複数のアドレスを、順次切り替えることによって直列信号のアドレス出力とする回路である。マルチプレクサ３００は、アドレス発生回路２００に入力されるクロックパルスの１／ｎの周期でアドレスの切り替えを行うことにより、直列信号のアドレス切替出力を行う。
【００３３】
また、使用するアドレス発生回路２００の段数ｎが変化しても、マルチプレクサ３００がアドレス切替出力を行う周期を変化させることにより、一連のアドレスを発生することができる。すなわち、多数段のアドレス発生回路２００を用意し、そのアドレス発生回路２００の段数に応じた速度で切り替えを行うことにより、一連のアドレスを容易に発生することができる。
【００３４】
次に、アドレス発生回路２００の動作を説明する。
図４は、入力されたカウンタ数をシフトさせるビットシフト数と、その場合のカウンタ出力との対応を表す表であり、また、アドレス発生回路２００を２段および４段使用した場合における、クロックパルスの入力に応じて出力されるカウンタ出力の種類を表した図である。
【００３５】
まず、ビットシフト回路３３が、入力されたカウント数を１ビットシフトする場合においての例を説明する。
【００３６】
アドレス発生回路２００に基準アドレスが入力されると、マルチプレックスカウンタ３０内のカウンタ３１は、カウント数‘００’をビットシフト回路３３に出力する。
【００３７】
ビットシフト回路３３は、入力されたカウント数‘００’を１ビットシフトし、すると、シフトされたカウント数は‘００＊’となり、下位１ビットが空く。ビットシフト回路３３は、このシフトしたカウント数を加算器３４に出力し、加算器３４は、入力されたカウント数と、レジスタ３２に格納された値とを加算する。
【００３８】
すると、このシフトされて空いた下位１ビット‘＊’には、レジスタ３２に格納されている値が入力されることになる。すなわち、‘０’または‘１’が入力され、カウンタ出力は、‘０００’または‘００１’となる（１回目）。
【００３９】
次いで、カウント数‘００’から、次のクロックパルスがアドレス発生回路２００に入力されると（２回目）、カウンタ３１は、カウント数を＋１し、ビットシフト回路３３に‘０１’を出力する。そして、ビットシフト回路３３は、入力されたカウント数‘０１’を１ビットシフトする。そして、このシフトしたカウント数を加算器３４に出力し、加算器３４は、入力されたカウント数と、レジスタ３２に格納されている値とを加算し、カウンタ出力として出力する。この時、レジスタ３２に格納されている値は変化しないため、カウンタ出力は、それぞれ‘０１０’または‘０１１’となる。
【００４０】
３回目以降も同様に、クロックパルスがアドレス発生回路２００に入力される度に、カウンタ３１はカウント数を＋１した後ビットシフト回路３３に出力し、ビットシフト回路３３および加算器３４は、同様の動作を行う。
【００４１】
以上のように、カウント数（０、１、２、３、…）が入力されると、加算器３４は、
パターンＡ：（０、２、４、６、…）
パターンＢ：（１、３、５、７、…）
の、２（＝２＾１）種類のパターンの内のいずれかのカウンタ出力を行う。つまり、２種類のカウンタ出力を行うことができるので、アドレス発生回路２００を２段使用するアドレス発生装置５００においては、カウント数の１ビットシフトを行えばよい。この場合のカウントアップ数は、＋２（＝２＾１）となる。
【００４２】
また、ビットシフト回路３３が、入力されたカウント数を２ビットシフトする場合においても、同様に説明できる。
【００４３】
アドレス発生回路２００に基準アドレスが入力されると、マルチプレックスカウンタ３０内のカウンタ３１は、カウント数‘００’をビットシフト回路３３に出力する。
【００４４】
ビットシフト回路３３は、入力されたカウント数‘００’を２ビットシフトし、すると、シフトされたカウント数は‘００＊＊’となり、下位２ビットが空く。このシフトされたカウント数を加算器３４に出力し、加算器３４は、入力されたカウント数と、レジスタ３２に格納された値とを加算する。すると、このシフトされて空いた下位２ビット‘＊＊’には、レジスタ３２に格納されている値が入力されることになる。すなわち、‘００’、‘０１’、‘１０’または‘１１’が入力され、カウンタ出力は、‘００００’、‘０００１’、‘００１０’または‘００１１’となる。（１回目）。
【００４５】
次いで、カウント数‘００’から、次のクロックパルスがアドレス発生回路２００に入力されると（２回目）、カウンタ３１は、カウント数を＋１し、ビットシフト回路３３に ‘０１’を出力する。そして、ビットシフト回路３３は、入力されたカウント数‘０１’を２ビットシフトする。この時、レジスタ３２に格納されている値は変化しないため、カウンタ出力は、それぞれ‘０１００’、‘０１０１’、‘０１１０’または‘０１１１’となる。
【００４６】
３回目以降も同様に、クロックパルスがアドレス発生回路２００に入力される度に、カウンタ３１はカウント数を＋１した後ビットシフト回路３３に出力し、ビットシフト回路３３および加算器３４は、同様の動作を行う。
【００４７】
以上のように、カウント数（０、１、２、３、…）が入力されると、加算器３４は、
パターンＡ：（０、４、８、１２、…）
パターンＢ：（１、５、９、１３、…）
パターンＣ：（２、６、１０、１４、…）
パターンＤ：（３、７、１１、１５、…）
の、４（＝２＾２）種類のパターンの内のいずれかのカウンタ出力を行う。つまり、４種類のカウンタ出力を行うことができるので、アドレス発生回路２００を４段使用するアドレス発生装置５００においては、カウント数の２ビットシフトを行えばよい。この場合のカウンタアップ数は、＋４（＝２＾２）となる。
【００４８】
さらに、ビットシフト回路３３が、入力されたカウント数を３ビット以上のシフトを行う場合でも、同様な動作を行い、カウンタ出力を行う。
【００４９】
また、ビットシフト回路３３が、入力されたカウンタ数のシフトを行わない場合、加算器３４は、入力されたカウンタ数をそのままカウンタ出力として出力し、この場合、カウントアップ数は＋１のままである。
【００５０】
以上のように、ビットシフト回路３３が入力されたカウント数をｍビットシフトすると、シフトされたカウント数の下位ｍビットが空く。そして加算器３４は、シフトされたカウント数とレジスタに格納された値を加算することにより、空いた下位ｍビットに、２＾ｍ種類の値を入力することができる。そのため、マルチプレックスカウンタ３０は、２＾ｍ種類のカウンタ出力を行うことができ、また、カウントアップ数は、＋２＾ｍとなる。図４は、カウント数をシフトさせたビット数と、カウントアップ数との対応を表す表である。
【００５１】
各アドレス発生回路２００において、マルチプレックスカウンタ３０がカウンタ出力を行うと、ＡＬＵ２０は、入力されたカウンタ出力および基準アドレスとに基づいて所定の演算を行い、それぞれ異なるアドレスを発生する。そして、各アドレス発生回路２００は、発生するアドレスをマルチプレクサ３００に入力し、マルチプレクサ３００は、並列に入力される複数のアドレスを順次切り替えることによって、直列信号のアドレス切替出力を行う。
【００５２】
以上のように、複数段のアドレス発生回路２００を使用したアドレス発生装置５００において、各アドレス発生回路２００内のレジスタ３２に格納されている値が異なるので、各アドレス発生回路２００が発生するアドレスは異なり、各アドレス発生回路２００が出力するアドレスを、マルチプレクサ３００は、順次切り替えを行い、一連のアドレスを発生する。
【００５３】
また、使用したアドレス発生回路２００の段数に応じて、マルチプレクサ３００がアドレス出力を行う周期を変化させることにより、一連のアドレスを容易に発生することができる。
【００５４】
なお、本実施の形態において、モード信号は、カウンタ３１に入力され、カウント数をクリアすることとして説明したが、さらにレジスタ３２にも入力することとして、このモード信号により、レジスタ３２に格納されている値を変更するように構成してもよい。
【００５５】
【発明の効果】
請求項１記載の発明によれば、カウンタは、クロック信号のパルス数をカウントし、カウント数をビットシフトすることにより所定倍に変換して出力するので、ビットシフトする数を変化することにより、複数種類のカウント数を出力することができる。また、カウント数を所定倍に変換することにより、カウントアップ数を変化させることができる。
【００５６】
演算回路は、カウンタの出力値、すなわち、カウンタによって所定倍に変換されたカウント数と、基準アドレス信号とに基づいて、試験対象の半導体メモリに対するアドレス信号の演算出力を行うため、複数種類のアドレスを出力することができる。
【００５７】
また、例えば、ビットシフトされたカウント数に生じる下位の空きビットに、所定数を加算して出力することができる。したがって、一のカウント数から様々な値を発生することが可能となる。
【００５８】
請求項２記載の発明によれば、各アドレス発生回路の記憶部に記憶された所定数がそれぞれ異なるので、各アドレス発生回路のカウンタは、それぞれ異なるカウント数を出力する。そのため、共通のクロック信号を用いることによって、異なるアドレス信号を同時に発生することができる。
【００５９】
請求項３記載の発明によれば、請求項２記載の発明の効果に加え、切替出力回路は、同時に発生した複数の異なるアドレス信号を、直列信号のアドレス信号として出力することができるので、異なるアドレスを連続的に発生することができる。また、アドレス発生回路の段数の変化に応じて、切替出力回路がアドレス信号を切り替えて出力する速度を変化させることにより、異なるアドレスを連続的に、かつ容易に発生することができる。また、そのような場合には、アドレス発生回路に対しては何ら変更を要せず、切替出力回路を高速に動作させることができれば良いため、アドレス発生回路を安価に実現することができる。
【００６０】
請求項４記載の発明によれば、例えば、ビットシフトされたカウント数に生じる、下位の空きビットに、所定数を加算して出力することができる。したがって、一のカウント数から様々な値を発生することが可能となる。
【図面の簡単な説明】
【図１】本実施の形態におけるアドレス発生回路２００の例を表す図である。
【図２】マルチプレックスカウンタ３０の内部構成を表す図である。
【図３】アドレス発生回路２００を複数使用して構成したアドレス発生装置５００を表す図である。
【図４】カウント数をシフトさせた場合のビットシフト数と、カウンタ出力の対応を表す図である。
【図５】カウント数をシフトさせた場合のビットシフト数と、カウントアップ数の対応を表す図である。
【図６】従来のアドレス発生回路１００の一例を表す図である。
【符号の説明】
１００、２００  アドレス発生回路
１０  カウンタ
２０  演算論理ユニット（ＡＬＵ）
３０  マルチプレックスカウンタ
３１  カウンタ
３２  レジスタ
３３  ビットシフト回路
３４  加算器
３００  マルチプレクサ
５００  アドレス発生装置
【図１】
0004140156.tif 000002
【図２】
0004140156.tif 000003
【図３】
0004140156.tif 000004
【図４】
0004140156.tif 000005
【図５】
0004140156.tif 000006
【図６】
0004140156.tif 000007