(57)【要約】アドレスレコーダを提供する。アドレスデコーダは、複数のデコーダ回路を備える。各デコーダ回路は、ｎ−１個の入力を有する第１論理回路を含む第１ステージを有し、ｎ−１個の入力は、各デコーダ回路に送られるｎ個の入力のサブセットである。各デコーダ回路は、第２論理回路および第３論理回路を含む第２ステージを更に有する。第２論理回路と第３論理回路の両方は、第１論理回路によって供給される出力を受け取る。また、第２論理回路は、ｎビットの別の１つを受け取り、第３論理回路はその補数を受け取る。第２論理回路と第３論理回路は、それぞれ第２出力と第３出力を供給する。アドレスデコーダは、デコーダ回路の１つの第２出力または第３出力の一方をアサートし、他のデコーダ回路の第２出力または第３出力の両方をディアサートすることによって、複数のアドレス選択出力の１つをアサートするように構成されている。
2009517980.tif 000002
【特許請求の範囲】
【請求項１】
ｎビットアドレスをデコードするように構成されたアドレスデコーダ（１００）であって、
それぞれがアドレススライスを表している複数のデコーダ回路（２００）を備え、前記デコーダ回路の各々は、
ｎ−１個の入力を有し、第１出力信号を供給するように構成された第１論理回路を含む第１ステージと、
前記第１出力信号を受け取るように結合された入力を有する第２論理回路、および前記第１出力信号を受け取るように結合された入力を有する第３論理回路を含む第２ステージとを有し、前記第２論理回路は、前記ｎ−１ビットの１つを受け取るように更に結合され、前記第３論理回路は、前記ｎ−１ビットの前記１つの補数を受け取るように更に結合され、前記第２論理回路は、第２出力信号を供給するように構成され、前記第３論理回路は、第３出力信号を供給するように構成されており、
前記アドレスデコーダは、前記複数のデコーダ回路の１つの前記第２出力または前記第３出力信号の一方をアサートすることによって、複数のアドレス選択出力の１つをアサートするように構成され、前記アドレス選択出力は、前記ｎビットアドレスに対応しているアドレスデコーダ。
【請求項２】
前記アドレスデコーダは、２ｎ個の入力信号を受け取るように接続され、前記２ｎ個の入力信号の半分はアドレス信号であり、前記２ｎの入力の半分は前記アドレス信号の補数である、請求項１に記載のアドレスデコーダ。
【請求項３】
前記複数のデコーダ回路の各々は、アドレス信号と相補アドレス信号との組み合わせを受け取るように結合されている、請求項２に記載のアドレスデコーダ。
【請求項４】
前記複数のデコーダ回路の特定の１つが受け取るアドレス信号と相補アドレス信号との前記組み合わせは、当該デコーダ回路が表している前記アドレススライスによって決まる、請求項３に記載のアドレスデコーダ。
【請求項５】
前記アドレスデコーダは、前記アドレスデコーダが前記ｎビットアドレスを受け取る前に、第１ノードでプリチャージ動作を実行することによって、前記複数のデコーダ回路のそれぞれの前記第１出力信号をアサートするように構成されている、請求項１に記載のアドレスデコーダ。
【請求項６】
アドレスのデコード方法であって、
半分がｎビットアドレスのアドレス信号を表しており、半分が前記アドレス信号の補数を表している２ｎビットを、アドレスデコーダ（１００）に送るステップと、
複数のビットスライスの各々の、ｎビット中のｎ−１ビットの組み合わせに対して、第１出力信号を供給する第１論理関数を実行するステップであって、前記ｎ−１ビットの組み合わせは、前記複数のビットスライスのそれぞれについて、前記複数のビットスライスのほかのビットスライスに対して一意であるステップと、
前記第１出力信号および前記ｎビットの１つに対して実行され、第２出力信号を生成する第２論理関数を、前記複数のビットスライスの各々に実行するステップと、
前記第１出力信号および前記ｎビットの前記１つの補数に対して実行され、第３出力信号を生成する第３論理関数を、前記複数のビットスライスの各々に実行するステップと、
前記複数のビットスライスの１つに対して、前記第２出力信号または前記第３出力信号の一方をアサートすることによって、前記ｎビットアドレスに対応するアドレス選択出力を供給するステップと、を含む方法。
【請求項７】
前記第１論理関数からの出力が第１回路ノードに送られ、前記第１出力の反転が第２回路ノードに送られ、前記第１出力の前記反転が、第３ノードまたは第４ノードの一方に送られる、請求項６に記載の方法。
【請求項８】
前記アドレスデコーダに前記２ｎビットを送る前に、前記第１ノードでプリチャージ動作を実行することによって、前記複数のビットスライスのそれぞれについて前記第１出力信号をアサートするステップをさらに含む、請求項７に記載の方法。
【請求項９】
前記アドレスデコーダが前記２ｎビットを受け取ると、前記１つのデコーダ回路以外の前記第１出力信号をディアサートするステップをさらに含む、請求項８に記載の方法。
【請求項１０】
前記アドレスデコーダに前記２ｎビットを送る前に、前記複数のビットスライスのそれぞれに対して、前記第３回路ノードおよび第４回路ノードの各々にプリチャージ関数を実行するステップをさらに含む、請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理回路に関し、より詳細には、デコーダ回路に関する。
【背景技術】
【０００２】
メモリアレイは、アドレスを供給することで、特定のロケーションでアクセスされる。それぞれのアドレスは特定のビット数を有する。多数のロケーションが含まれる大規模メモリアレイでは、多くのアドレスビット数が必要となる。このため、広いアドレス空間を有する大規模メモリアレイでは、アドレスをデコードするために多くの論理が必要となる。技術の進歩により、メモリ空間に対する要求が高まるのに伴い、アドレス空間が広がり、このため必要なアドレスデコーダの論理数が増えている。
【０００３】
多くの場合、アドレスデコーダが大きくなると、論理の多さがメモリアクセス速度のボトルネックとなる。更に、広いアドレス空間に必要な論理を追加すると、かなりの回路面積や、電力、その他のリソースが消費されかねない。速度の向上と演算リソースの追加（広いメモリも含む）に対する要求は、回路面積および消費電力と相反する。このため、回路面積や、消費電力、動作速度を求める高い要求に関連する問題が、大きなアドレス空間をデコードすることに対する要求によって悪化している。
【発明の開示】
【０００４】
アドレスデコーダと、アドレスのデコード方法とが開示される。一実施形態では、アドレスデコーダは、それぞれがアドレススライスを表している複数のデコーダ回路を有する。各デコーダ回路は、ｎ−１個の入力を有する第１論理回路を含む第１ステージを有し、前記ｎ−１個の入力は、各デコーダ回路に送られるｎ個の入力の一部である。各デコーダ回路は、第２論理回路および第３論理回路を含む第２ステージを更に有する。第２論理回路と第３論理回路は、いずれも、前記第１論理回路が供給する出力信号を受け取る。また、前記第２論理回路は、前記ｎ−１ビットに含まれない前記ｎビットの別の１つを受け取り、前記第３論理回路はその補数を受け取る。前記第２論理回路と前記第３論理回路は、それぞれ第２出力信号と第３出力信号を供給する。前記アドレスデコーダは、前記デコーダ回路の１つの前記第２出力または前記第３出力信号の一方をアサートすることによって、複数のアドレス選択出力の１つをアサートするように構成されている。
【０００５】
アドレスのデコード方法は、半分がｎビットアドレスのアドレス信号を表しており、半分が前記アドレス信号の補数を表している２ｎビットを、アドレスデコーダに送るステップを含む。複数のビットスライスの各々のｎ−１ビットの組み合わせに対して第１論理関数が実行され、前記組み合わせは、各ビットスライスのそれぞれについて、別のビットスライスに対して一意である。前記第１論理関数は、第１出力信号を生成する。前記第１出力信号、および前記ｎ−１ビットに含まれない前記ｎビットの１ビットに第２論理関数が実行され、前記第１出力および前記１ビットの補数に第３論理関数が実行される。一実施形態では、前記１ビットは、最下位アドレスビットであってもよく、前記ｎ−１ビットは、アドレス信号および／またはその補数を含む信号の組み合わせの残りの最上位ビットである。前記第２論理回路と前記第３論理回路は、それぞれ第２出力信号と第３出力信号を生成する。前記アドレスデコーダは、前記複数のビットスライスの１つに対して、前記第２出力信号または第３出力信号の一方のアサートとしてアドレス選択出力を提供し、前記残りのビットスライスの各々では、第２出力信号と第３出力信号の両方がディアサートされる。
【０００６】
以下の詳細な説明を読み、添付図面を参照することにより、本発明のほかの態様が明らかとなるであろう。
【０００７】
本発明は、様々に変形されたり、代替形態を取り得るが、その特定の実施形態は、例として図面に図示され、かつ本明細書に詳細に記載される。しかし、図面およびその詳細な説明は、本発明を開示された特定の形状に限定するようには意図されてはおらず、逆に、本発明は、特許請求の範囲によって規定される本発明の趣旨および範囲に入るあらゆる変更、均等物および代替物を網羅するものであることが理解されるべきである。
【発明を実施するための最良の形態】
【０００８】
図１は、アドレスデコーダの一実施形態を示す論理図である。図の実施形態では、アドレスデコーダ１００は、複数のデコーダ回路２００を備える。複数のデコーダ回路のそれぞれは、２ステージデコーダであり、アドレスビットのスライスに関連している。本実施形態では、デコードされるアドレスは、４アドレスビットを含む。しかし、この２ステージデコーダは、ステージを追加することなく、任意のサイズのアドレス空間に拡張することができる。
【０００９】
デコードされるアドレスは、ｎビットアドレスである。アドレスデコーダは、２ｎビットの入力を受け取るように接続されており、この２ｎビットには、ｎ個のアドレスビットと、ｎ個のアドレスビットのそれぞれの補数が含まれる。各デコーダ回路２００は、２ｎ個の入力ビットを、アドレスビットのスライスに対応する組み合わせで受け取るように接続されている。このため、デコーダ回路２００の特定の１つが受け取るビットの組み合わせは、他のデコーダ回路が受け取るビットの組み合わせに対して一意である。各デコーダ回路２００が受け取るビットには、アドレス信号と、このアドレス信号の補数との組み合わせが含まれる。各デコーダ回路は、少なくとも１つの真のアドレス信号と、少なくとも１つの相補アドレス信号とを受け取るように接続されている。
【００１０】
各デコーダ回路２００が受け取るビットは、群に分割されている。第１群は、ｎ−１であり、ビット各デコーダ回路２００の第１ステージへの入力群として受信される。受信される各ビットは、当該ビットが真のアドレス信号の場合でも、その補数の場合でも、アドレス中のビット位置に対応している。各デコーダ回路２００の第１ステージは、論理関数を実装しており、本例の場合は、図に示すゲートによってＮＯＲ関数が実装されている。デコーダ回路２００のそれぞれに示すＮＯＲゲートは、ｎ−１個の入力信号を受け取り、第１論理関数（本実施形態では論理ＮＯＲ）を実行するように接続されている。第１の論理ゲートによって実行される論理関数により第１出力が生成され、これがノードＮ１に送られる。
【００１１】
各デコーダ回路２００によって受け取られる、分割されたビットの第２群には、真のアドレス信号とその補数とが含まれており、第１ビット群に含まれないビット位置に対応している。図の実施形態では、アドレスビットの最下位ビットとその補数が第２ステージに供給される。しかし、第２ステージに供給されるアドレス信号とその補数の特定のビット位置は、アドレス内の最上位から最下位までの、どのビット位置に対応していてもよい。概して、アドレスデコーダ１００の第１ステージと第２ステージが受け取るビットは、特定の設計に合わせてどのような組み合わせに分割してもよく、第２ステージが受け取る特定のビットとその補数が、最下位アドレスビットに必ずしも対応していなくてもよい。
【００１２】
各デコーダ回路２００の第２ステージは、並列に動作するように構成された第２論理ゲートと第３論理ゲートを有し、本例では、第２論理ゲートと第３論理ゲートのそれぞれの出力に接続された反転器も有する。本実施形態では論理ゲートはＮＡＮＤゲートである。本実施形態で実行される第２論理関数と第３論理関数には、ＮＡＮＤゲートとそれぞれに接続された反転器との組み合わせによって実行される論理関数が含まれる。各ＮＡＮＤゲートはノードＮ１に送られた第１出力を受け取るように接続されている。ＮＡＮＤゲートの一方は、真のアドレス信号（本実施形態ではＡ０）を受け取るように接続され、ＮＡＮＤゲートのもう一方は、アドレス信号の補数（本例ではＡ０Ｘ）を受け取るように接続されている。一方のＮＡＮＤゲートの出力はノードＮ３に送られ、もう一方のＮＡＮＤゲートの出力はノードＮ４に送られる。各デコーダ回路２００は、ノードＮ３またはノードＮ４の信号を反転させることによって提供される一対の出力を有し、選択されているアドレススライスに対応する特定のデコーダ回路である。
【００１３】
アドレスデコーダ１００の機能の例をここに記載する。選択されているアドレスが、スライス２に関連するデコーダ回路の出力の一方である出力０５に対応しているとする。このアドレスは、図中の例では１６のうちの５番目のアドレスであり、ビット形式で“０１０１”で表現されるアドレスを有する。このアドレスが、その補数（１０１０）と共にアドレスデコーダ１００に送られる。スライス２に対応するデコーダ回路２００の第１ステージのＮＯＲゲートは、Ａ３、Ａ２ＸおよびＡ１を受信するように接続されている。０１０１の入力アドレスによれば、Ａ３、Ａ２ＸおよびＡ１の値は全て論理ゼロであり（Ａ３＝０、Ａ２＝１であるためＡ２Ｘ＝０、Ａ１＝０）、このためノードＮ１が論理ハイにアサートされる。他のスライスに関連するそれぞれのデコーダ回路２００では、スライス２に関連するデコーダ回路と受け取る入力信号の組み合わせが異なるため、ノードＮ１が論理０となる。
【００１４】
出力０５に関連するＮＡＮＤゲートは、ノードＮ１上の信号と、Ａ０に対応するアドレス信号を入力として受け取るように接続されている。出力０４に関連するＮＡＮＤゲートも、ノードＮ１上の信号と、アドレス信号Ａ０の補数であるＡ０Ｘを受け取るように接続されている。ノード出力０５に関連するＮＡＮＤゲートに供給される入力信号の組み合わせにより、ノードＮ３が論理０となる。出力０４に関連するＮＡＮＤゲートに供給される入力信号の組み合わせにより、ノードＮ４が論理１となる。ノードＮ４上の論理１は、このノードに接続された反転器により、出力０４で論理０となる。一方、ノードＮ３上の論理０は、それぞれに接続されている反転器により、出力０５で論理１となり、このため、出力０５が、０１０１の入力アドレスに対応する選択されているアドレス出力である。
【００１５】
一般に、本実施形態における所定のスライスに関連するデコーダ回路２００の出力を、以下の論理式によって迅速に求めることができる。任意のデコーダ回路の奇数番号の出力では、ノードＮ３の値＝Ｎ１  ＮＡＮＤ  Ａ０であり、このため、その対応する出力は、Ｎ３の補数であるＮ３Ｘに等しい。同様に、任意のデコーダ回路の偶数番号の出力では、ノードＮ４の値＝Ｎ１  ＮＡＮＤ  Ａ０Ｘであり、このため、その対応する出力は、Ｎ４の補数であるＮ４Ｘに等しい。ノードＮ１が、所定のアドレスの１つのビットスライスに対してのみ論理ハイとなるため、選択されているスライスと値Ａ０を求めることにより、アドレスを迅速に求めることができる。
【００１６】
各アドレススライスが、２以下のデコードステージで処理される図１に示すような回路構成を使用することにより、アドレス空間のサイズを問わず、高速なデコードが得られる。図の実施形態は、アドレススライスを追加して、Ｎ１出力を供給するＮＯＲゲート（あるいは別の実施形態では、実装可能な他の論理関数）に対する入力アドレスビット数を増やすだけで、任意のサイズのアドレス空間に拡張することができる。このため、非常に広いアドレス空間であっても、本明細書で説明した基本的な回路構成を使用することで、デコード操作を２ステージで実行することが可能となる。更に、遅延ステージが１つ（つまり第２ステージ）しかないため、アドレス空間のサイズに関わらず、遅延量が等しくなるような回路構成である。このため、アドレス空間のサイズに関わらず、アドレスのデコード時の遅延が実質的に等しくなり、この点は、アドレス空間が大きくなると遅延が大きくほかのタイプのアドレスデコーダとは対照的である。
【００１７】
図２は、アドレスデコーダに使用される回路の一実施形態の模式図である。デコーダ回路２００は、上で説明したアドレスデコーダ１００に使用することができる回路の一実施形態である。図の実施形態では、デコーダ回路は、複数の入力トランジスタＡ１〜ＡＮを備える。これらのトランジスタのそれぞれのゲート端子への入力は、図１に示した各デコーダ回路の第１ステージへのｎ−１個の入力の１つに対応している。これらの入力トランジスタは、結線ＮＯＲ構成に構成されており、このため、これらのトランジスタの任意の１つのゲート端子に論理ハイ電圧が印加されると、ノードＮ１が論理ロー電圧となる。
【００１８】
デコーダ回路２００は、パスゲート（passgate）構成で接続された入力トランジスタ対も備える。トランジスタＱ０のチャネルが、ノードＮ２（反転器Ｉ１によりノードＮ１の補数となる）とノードＮ３間に接続され、トランジスタＱ０ＸのチャネルがノードＮ１とノードＮ４間に接続されている。これらのトランジスタの一方のゲート端子に論理ハイが印加されると、ノードＮ２上の論理値が、接続されているもう一方のノードに送られる。これらの２つのトランジスタへの入力値は互いの補数であるため、所定の時間に、これらのトランジスタの一方のみが作動している。
【００１９】
２つの出力ノードの両方が、ノードＮ３とＮ４上の論理ハイを保持するように構成されたキーパー回路に接続されている。キーパーは、反転器の出力を変更して、これによりクローバー電流を最小化するために、ノードＮ３およびＮ４を大幅に引き下げることができる弱いキーパー回路であってもよい。
【００２０】
デコーダ回路２００は、アドレスを受け取る前に、プリチャージ動作をするように構成されている。本実施形態では、ノードＮ１、Ｎ３およびＮ４がプリチャージされる。このプリチャージ動作により、これらのノードがそれぞれ論理ハイ電圧となり、回路の出力Ｏ１，Ｏ２の両方が論理ロー電圧に下がる。このため、アドレスの受信時には、アドレスデコーダにある各デコーダ回路２００のＮ１ノードは論理ハイ（このため、Ｎ２は論理ロー）になっている。アドレスを受信すると、Ｎ１ノードは、入力Ａ１〜ＡＮの少なくとも１つが論理ハイであるために、選択されているスライスに関連するデコーダ回路２００以外は、放電されて論理ローとなる。しかし、選択されているビットスライスに関連するデコーダ回路２００はハイに保持されるため、Ｎ２はローに保持され、このため、アドレスを受信すると、ノードＮ３またはＮ４の一方にノードＮ２のローが迅速に送られる。したがって、より高速なデコード動作が可能となる。要するに、プリチャージ動作が各デコーダ回路２００のノードＮ１をハイに引き上げ、その後、第１ステージに供給されるｎ−１ビットを受信すると、選択されているビットスライスに関連するデコーダ回路２００以外のＮ１がローに下がる。
【００２１】
第１ステージがｎ−１ビットを受け取る前に、各デコーダ回路２００のＮ１ノードをハイに引き上げることは、実質的には投機的デコードとなる。すなわち、アドレスデコーダ１００のデコーダ回路２００がアドレスビットを受け取る前に、各アドレススライス（選択しようとしているアドレスに関連するアドレススライスを含む）のノードＮ１上の電圧が、既に論理ハイ状態にされている。動作のこの時点で、各アドレススライスのノードＮ１上の電圧が論理ハイ状態であるため、ノードＮ２上の電圧は論理ロー状態であるが、ノードＮ３およびＮ４は、（プリチャージ動作により）論理ハイ状態である。上で説明したように、ｎ−１個のアドレスビットを受け取った結果、選択されているビットスライスに関連するＮ１ノード以外の全てのデコーダ回路のＮ１ノードが、論理ロー状態に下がる。選択されているアドレススライスに関連するデコーダ回路２００ではＮ１がハイに保持されるため、ノードＮ２はローである。このため、分割されたアドレスビットの第二群（本例ではＡ０およびＡ０Ｘ）を受け取ると、ノードＮ２のローが、選択されているアドレススライスのＮ３またはＮ４の一方に伝えられ、これにより、アドレスデコーダ１００に供給されたアドレスに関連する出力がアサートされる。
【００２２】
次に、回路の動作を図３を参照して以下で説明する。この図は、デコーダ回路２００の真のデコード動作を示すタイミング図である。ここに示すタイミング図は、ビットＡ０が論理１の値を有し、更に、デコーダ回路が選択されているビットスライスに対応しているとする。クロック信号の立ち上がりエッジが受信され、僅かな遅延ののちに、デコーダ回路２００でプリチャージ動作が開始される。プリチャージ動作は、プリチャージ入力（ＰＣＨ）に低電圧を駆動することで開始され、これにより、それぞれの接続されたトランジスタがオンとなり、ノードＮ１、Ｎ３およびＮ４が論理ハイ状態（すなわち論理ハイ電圧）に引き上げられる。プリチャージ動作前に、Ｎ１が既に論理ハイ状態となっている場合もあるが、ここに示す例では、初期状態がロー状態であるという点に留意すべきである。
【００２３】
プリチャージ動作後、短い遅延ののちに、アドレスデコーダに、アドレスビットとその補数とが送られる。デコーダ回路２００は、それぞれのビットＡ１〜ＡＮを受け取る。これらは、第１ステージに送られたｎ−１ビットに対応しており、デコーダ回路が、選択されているビットスライスに関連しているため、全てローである。各入力Ａ１〜ＡＮがローであるため、ノードＮ１は論理ハイ電圧に保持される（このため、Ｎ２は論理ロー電圧に保持される）。別の短い遅延ののちに、トランジスタＱ０への入力でビットＡ０が受信され、これにより、このトランジスタがオンとなる。トランジスタＱ０がオンになると、ノードＮ２上の論理ローの伝達が許可されて、これによりノードＮ３がローに引き下げられる（Ｎ４は、プリチャージと、図２に示すキーパー回路によりハイに保持される）。Ｎ３がローでＮ４がハイであるため、出力Ｏ１がアサートされ、出力Ｏ２はディアサート状態に保持される。
【００２４】
この回路の動作は図４に更に詳しく示されている。この図は、デコーダ回路２００の偽（false）デコード動作を示すタイミング図である。クロックの立ち上がりエッジとプリチャージ動作後に、デコーダ回路２００がビットＡ１〜ＡＮを受け取る。この場合、回路は、選択されているアドレススライスに関連しておらず、このためビットＡ１〜ＡＮの少なくとも１つが論理ハイである。これらのビットの少なくとも１つが論理ハイであるため、トランジスタＱ１〜ＱＮの少なくとも１つがオンになる。これらのトランジスタの１つがオンになったため、ノードＮ１がローに引き下げられ、このため、ノードＮ２が反転器Ｉ１によってハイに駆動される。ノードＮ２がハイの場合、Ｑ０またはＱ０Ｘがオンかどうかに関わらず、ノードＮ３とＮ４がハイに保持される。この例では、Ａ０がハイであるため、一部の実施形態でノードＮ３に僅かなグリッチが発生することがある。しかし、このグリッチは、出力経路に反転器を設けることで、容易にフィルタ除去することができる。
【００２５】
特定の実施形態を参照して本発明を説明したが、これらの実施形態は例示であり、本発明の範囲がこれに制限されないことが理解されよう。記載した実施形態のどのような変形、変更、追加および改良も可能である。これらの変形、変更、追加および改良は、特許請求の範囲に詳述されている発明の範囲に含まれる。
【図面の簡単な説明】
【００２６】
【図１】アドレスデコーダの一実施形態を示す論理図。
【図２】アドレスデコーダに使用される回路の一実施形態の模式図。
【図３】真のデコードの場合に、アドレスデコーダに使用される回路の一実施形態の真のデコード操作を示すタイミング図。
【図４】偽のデコードの場合に、アドレスデコーダに使用される回路の一実施形態の偽のデコード操作を示すタイミング図。
【図１】
2009517980.tif 000003
【図２】
2009517980.tif 000004
【図３】
2009517980.tif 000005
【図４】
2009517980.tif 000006
【国際調査報告】
2009517980.tif 000007
2009517980.tif 000008