(57)【特許請求の範囲】
【請求項１】
メモリアーキテクチャにおいて、
ａ）上位および下位の階層平面（Ｈ１，Ｈ２）と、
ｂ）前記下位の階層平面（Ｈ１）に個々のメモリセルを有する少なくとも１つの第１のメモリブロック（ＳＢ１）が設けられており、
前記下位の階層平面（Ｈ１）は、メモリセルからデータワードを読み出すための、またはメモリセルへデータワードを書き込むための第１のデコーダ装置（ＷＬＤ，ＢＬＤ）と、アドレス選択回路（ＡＡＳ）と、ポート選択バッファ回路（ＰＡＰ）と、複数のアドレスポート（Ａ１１〜ＡＮ１）およびＩ／Ｏポート（Ｄ１〜ＤＮ）を有しており、
前記アドレス選択回路（ＡＡＳ）は、複数のアドレスポート（Ａ１１〜ＡＮ１）を介してアドレスワードを受け取り、該受け取ったアドレスワードに基づき前記第１のデコーダ装置（ＷＬＤ，ＢＬＤ）は、メモリセルからデータワードを読み出し、またはメモリセルへデータワードを書き込み、
前記ポート選択バッファ回路（ＰＡＰ）は、読み出されたデータワードまたは書き込まれるデータワードを、前記下位の階層平面（Ｈ１）における複数のＩ／Ｏポート（Ｄ１〜ＤＮ）のうちの１つに割り当て、
ｃ）前記上位の階層平面（Ｈ２）に複数の第２のメモリブロック（ＳＢ２）が設けられており、該第２のメモリブロック（ＳＢ２）には、前記下位の階層平面（Ｈ１）におけるそれぞれ少なくとも１つの第１のメモリブロック（ＳＢ１）と、前記下位の階層平面（Ｈ１）における前記第１のデコーダ装置（ＷＬＤ，ＢＬＤ）とアドレス選択回路（ＡＡＳ）とポート選択バッファ回路（ＰＡＰ）が含まれており、
ｄ）前記上位の階層平面（Ｈ２）に第２のデコーダ装置（ＲＡＧ，ＳＡＧ）が設けられており、該第２のデコーダ装置（ＲＡＧ，ＳＡＧ）は、前記上位の階層平面（Ｈ２）における複数の第２のメモリブロック（ＳＢ２）のうち１つのメモリブロックからデータワードを読み出し、または該メモリブロックへデータワードを書き込み、
ｅ）前記上位の階層平面（Ｈ２）に入／出力バッファ回路（ＩＯＰ）が設けられており、該入／出力バッファ回路（ＩＯＰ）は、前記下位の階層平面（Ｈ１）から読み出されたデータワードを、該入／出力バッファ回路（ＩＯＰ）の対応するＩ／Ｏポート（Ｄ１〜ＤＮ）へ送出し、または前記下位の階層平面（Ｈ１）へ書き込まれるデータワードを、該入／出力バッファ回路（ＩＯＰ）の対応するＩ／Ｏポート（Ｄ１〜ＤＮ）から受け取り、該入／出力バッファ回路（ＩＯＰ）の複数のＩ／Ｏポート（Ｄ１〜ＤＮ）はメモリアーキテクチャの複数のＩ／Ｏポート（Ｄ１〜ＤＮ）を成しており、
ｆ）前記上位の階層平面（Ｈ２）にアクセスコンフリクト評価回路（ＺＫＡＳ）が設けられており、該アクセスコンフリクト評価回路（ＺＫＡＳ）は、該アクセスコンフリクト評価回路（ＺＫＡＳ）へ供給されるアドレスワードを、前記下位の階層平面（Ｈ１）におけるメモリブロック（ＳＢ１）の同一のメモリセルへのアクセスによるアクセスコンフリクトについて検査し、アクセスコンフリクトが発生したとき、該アクセスコンフリクト評価回路（ＺＫＡＳ）は、アクセスコンフリクトの発生したメモリセルに係わる第２のメモリブロック（ＳＢ２）へのアクセスに対し、メモリアーキテクチャのただ１つのＩ／Ｏポート（Ｄ１〜ＤＮ）だけを許可することを特徴とする、
メモリアーキテクチャ。
【請求項２】
最下位階層平面（Ｈ１）におけるメモリブロック（ＳＢ１）は１ポートメモリセルから成る、請求項１記載のメモリアーキテクチャ。
【請求項３】
前記下位の階層平面（Ｈ１）における第１のデコーダ装置はワードラインデコーダ（ＷＬＤ）とビットラインデコーダ（ＢＬＤ）を有する、請求項１または２記載のメモリアーキテクチャ。
【請求項４】
前記アクセスコンフリクト評価回路（ＺＫＡＳ）は、優先順位付けアルゴリズムに従いＩ／Ｏポート（Ｄ１〜ＤＮ）の優先順序付けをそれらの重要性に応じて行う、請求項１から３のいずれか１項記載のメモリアーキテクチャ。
【請求項５】
前記複数の階層平面（Ｈ１，Ｈ２）のうち少なくとも１つの階層平面におけるメモリブロック（ＳＢ１，ＳＢ２）はマトリクス状に、第１の個数のマトリクス行と第２の個数のマトリクス列をもつメモリブロックマトリクス（ＳＢＭ１，ＳＢＭ２）として配置されている、請求項１〜４のいずれか１項記載のメモリアーキテクチャ。
【請求項６】
前記上位の階層平面（Ｈ２）はメモリブロックマトリクス（ＳＢＭ２）を有しており、前記上位の階層平面（Ｈ２）における第２のデコーダ装置は、該メモリブロックマトリクス（ＳＢＭ２）のメモリブロック（ＳＢ２）を選択するために行選択ジェネレータ（ＲＡＧ）と列選択ジェネレータ（ＡＧ）を有する、請求項５記載のメモリアーキテクチャ。
【請求項７】
前記の第１の個数および／または第２の個数は２の倍数である、請求項５または６記載のメモリアーキテクチャ。
【請求項８】
前記複数の階層平面（Ｈ１，Ｈ２）のうち少なくとも１つの階層平面におけるメモリブロック（ＳＢ１，ＳＢ２）はクロスバースイッチによるネットワーク構成として配置されている、請求項１〜７のいずれか１項記載のメモリアーキテクチャ。
【請求項９】
前記複数の階層平面（Ｈ１，Ｈ２）のうち少なくとも１つの階層平面におけるメモリブロック（ＳＢ１，ＳＢ２）は、いわゆるバンキング技術に従って動作する、請求項１〜８のいずれか１項記載のメモリアーキテクチャ。
【請求項１０】
ロジックコンポーネントにおいて用いられる、請求項１〜９のいずれか１項記載のメモリアーキテクチャ。
【請求項１１】
ＥＥＰＲＯＭメモリセルにおいて用いられる、請求項１０記載のメモリアーキテクチャ。
【請求項１２】
ダイナミックまたはスタティックなメモリコンポーネントにおいて用いられる、請求項１〜９のいずれか１項記載のメモリアーキテクチャ。
【請求項１３】
ダイナミックＤＲＡＭメモリセルにおいて用いられる、請求項１２記載のメモリアーキテクチャ。
【請求項１４】
スタティックＳＲＡＭメモリセルにおいて用いられる、請求項１２記載のメモリアーキテクチャ。
【請求項１５】
ＲＯＭメモリにおいて用いられる、請求項１〜１４のいずれか１項記載のメモリアーキテクチャ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はメモリアーキテクチャに関し、詳細には、複数のメモリセルから成り多重階層平面をもつメモリアーキテクチャに関する。
【０００２】
【従来の技術】
将来の超小形電子回路によって、１０12〜１０15の範囲のトランジスタ数をもつ複雑なシステムが実現されることになる。そのような複雑なシステムたとえば並列プロセッサシステム、人工知能システムやマルチメディアシステムなどは通常、データを処理するために共働する多数のサブシステムを有している。したがって、それらの将来のシステムを効率的かつ実践的に実現するための重要な課題は、処理すべきデータの記憶ならびにそれらのデータ処理プログラムということになる。各サブシステムによって時間的に並行しかつ高い帯域幅でアクセス可能なメモリを利用できるならば、性能のよいシステムを確実に実現することができる。外部端子として複数のポートをもち外部のコンポーネントから時間的に並行してアクセスできるようなメモリは、一般にマルチポートメモリと称する。
【０００３】
その際、経済的な理由から殊に重要となる境界条件は当然ながら、チップ上でできるかぎり僅かな面積しか費やさないことである。さらに別の境界条件として挙げられるのは、メモリセルないしポートに対しできるかぎり少ないアクセスタイムしか必要としないことや、メモリシステム全体の電力損失ができるかぎり僅かでなければならないことである。
【０００４】
L.A.Glasser & D.W.Dobberpohl, "The Design and Analysis of VLSI-Circuits", Addison-Wesley, ISBN 0-201-12580-3, p.388-390 には、上述のようなマルチポートメモリについて記載されている。この文献に示されているマルチポートメモリによれば、所望の個数の外部ポートが個々のメモリセルごとに実装されている。したがって個々のメモリセル各々は、かなり大きなチップ面積を占有している。しかもこの場合、各ポートごとのデコーディングのためにかなりの複雑さも加わり、その結果、完全なマルチポートメモリは結局は極度に面積を費やすものとなる。このため、マルチポートメモリのこのような最も簡単な実現形態は、面積に関して最も不利でありつまりは最も高価な解決策でもある。
【０００５】
K.Guttag, R.J.Gove, J.R. van Aken, "A Single Chip Multiprocessor for Multimedia: The MVP", IEEE Computer Graphics & Appl, vol.12, 1992, p.53-64から、別のマルチポートメモリが公知である。上述の問題点はここではいわゆるクロスバーディストリビュータにより解決している。このディストリビュータの入力側には所望の外部ポートが設けられており、出力側において複数の慣用のメモリブロックが１ポートメモリセルと接続されている。このやり方は１ポートメモリセルで済ます点では有利であるが、交換ネットワークと呼ばれることの多いクロスバーディストリビュータは、実際にはやはり著しく多くのチップ面積を必要とするし、配線が長いことから電力損失も高まってしまう。また、非常にたくさんのメモリブロックは接続できないので、不首尾に終わるアクセス数つまり同じ時間に２つ以上のポートが１つの特定のメモリブロックをアクセスする回数が、かなり多くなってしまう。
【０００６】
また、この文献から別の課題設定のために階層構造をもつメモリアーキテクチャを使用することが公知である。ここで設定された課題のうち最も重要なことはこれまで、ただ１つの慣用の外部ポートを介した実効アクセスタイムを縮めることであった。実効アクセスタイムの短縮は原則的にゆっくりであるダイナミックメモリ（ＤＲＡＭ）において殊に有用であり、これは現在標準的に組み込まれているマイクロプロセッサのクロック速度に対し過度に大きな差が生じないようにすることを目的としている。１つのメモリアレイにおけるアクセスタイムは実質的に、ワードライン上のデータ信号の走行時間とメモリ容量の再充電によって定まる。階層状の装置構成によりプリント配線板の実効長が短くなり、このことでアクセスタイムも相応に低減する。
【０００７】
バンキング技術に従って動作するメモリアレイは、ある意味ではこのような階層構造をもつメモリである。バンキング技術の場合、データバスを介したデータ伝送はメモリアクセスよりも著しく速い、ということを利用している。したがって基本的に、複数のメモリブロックからデータをパラレルに読み出して高速なレジスタ内でバッファリングし、データバスを介して高速で外部へ送出させることができる。しかしながら、バンキング技術を利用するためにきわめて重要なことは、シーケンシャルに要求されるデータが高い確率でそれぞれ異なるブロック内に存在している、ということである。このことが該当しなければ、アクセス要求を拒否しなければならない。したがってバンキングにおける主要な構成部分は、格納データを個々のメモリブロックへ分配するための詳述されたアルゴリズムである。実践において、バンキングにおけるメモリブロック数はかなり少ない個数のメモリブロックに制限されており、一般に３２個のメモリブロックに制限されている。しかもこの場合、個々のメモリブロックへのアクセスタイムはおそい。
【０００８】
ヨーロッパ特許出願 EP 0 393 434 B1 から、やはりメモリ階層構造を利用したメモリアーキテクチャが公知である。そこには多重平面階層構造のメモリについて記載されており、これはただ１つの慣用の外部ポートを有する。この場合、クリティカルな導体経路における信号走行時間はメモリを複数の階層平面に分割することによって短くできる、ということを利用している。たしかにこれによれば、階層状のメモリ分配によりクリティカルな経路部分の負荷が避けられる。さもないと、ワードラインおよびビットラインの区間において寄生容量と抵抗が著しく高いことに起因して、過度に長い信号変化時間が生じ、つまりは外部ポートに対する過度に長いアクセスタイムが生じてしまう。
【０００９】
階層構造をもつ１ポートメモリアーキテクチャに関するその他の詳細な点、特徴、利点ならびに効果については、ヨーロッパ特許出願 EP 0393 434 B1 を参照されたい。この文献は本出願の参考文献とする。
【００１０】
【発明が解決しようとする課題】
これらの従来技術から出発して発明の課題は、複数の外部ポートを有する多重平面階層構造のメモリアーキテクチャを提供することにある。
【００１１】
【課題を解決するための手段】
本発明によればこの課題は、
ａ）上位および下位の階層平面（Ｈ１，Ｈ２）と、
ｂ）前記下位の階層平面（Ｈ１）に個々のメモリセルを有する少なくとも１つの第１のメモリブロック（ＳＢ１）が設けられており、
前記下位の階層平面（Ｈ１）は、メモリセルからデータワードを読み出すための、またはメモリセルへデータワードを書き込むための第１のデコーダ装置（ＷＬＤ，ＢＬＤ）と、アドレス選択回路（ＡＡＳ）と、ポート選択バッファ回路（ＰＡＰ）と、複数のアドレスポート（Ａ１１〜ＡＮ１）およびＩ／Ｏポート（Ｄ１〜ＤＮ）を有しており、
前記アドレス選択回路（ＡＡＳ）は、複数のアドレスポート（Ａ１１〜ＡＮ１）を介してアドレスワードを受け取り、該受け取ったアドレスワードに基づき前記第１のデコーダ装置（ＷＬＤ，ＢＬＤ）は、メモリセルからデータワードを読み出し、またはメモリセルへデータワードを書き込み、
前記ポート選択バッファ回路（ＰＡＰ）は、読み出されたデータワードまたは書き込まれるデータワードを、前記下位の階層平面（Ｈ１）における複数のＩ／Ｏポート（Ｄ１〜ＤＮ）のうちの１つに割り当て、
ｃ）前記上位の階層平面（Ｈ２）に複数の第２のメモリブロック（ＳＢ２）が設けられており、該第２のメモリブロック（ＳＢ２）には、前記下位の階層平面（Ｈ１）におけるそれぞれ少なくとも１つの第１のメモリブロック（ＳＢ１）と、前記下位の階層平面（Ｈ１）における前記第１のデコーダ装置（ＷＬＤ，ＢＬＤ）とアドレス選択回路（ＡＡＳ）とポート選択バッファ回路（ＰＡＰ）が含まれており、
ｄ）前記上位の階層平面（Ｈ２）に第２のデコーダ装置（ＲＡＧ，ＳＡＧ）が設けられており、該第２のデコーダ装置（ＲＡＧ，ＳＡＧ）は、前記上位の階層平面（Ｈ２）における複数の第２のメモリブロック（ＳＢ２）のうち１つのメモリブロックからデータワードを読み出し、または該メモリブロックへデータワードを書き込み、
ｅ）前記上位の階層平面（Ｈ２）に入／出力バッファ回路（ＩＯＰ）が設けられており、該入／出力バッファ回路（ＩＯＰ）は、前記下位の階層平面（Ｈ１）から読み出されたデータワードを、該入／出力バッファ回路（ＩＯＰ）の対応するＩ／Ｏポート（Ｄ１〜ＤＮ）へ送出し、または前記下位の階層平面（Ｈ１）へ書き込まれるデータワードを、該入／出力バッファ回路（ＩＯＰ）の対応するＩ／Ｏポート（Ｄ１〜ＤＮ）から受け取り、該入／出力バッファ回路（ＩＯＰ）の複数のＩ／Ｏポート（Ｄ１〜ＤＮ）はメモリアーキテクチャの複数のＩ／Ｏポート（Ｄ１〜ＤＮ）を成しており、
ｆ）前記上位の階層平面（Ｈ２）にアクセスコンフリクト評価回路（ＺＫＡＳ）が設けられており、該アクセスコンフリクト評価回路（ＺＫＡＳ）は、該アクセスコンフリクト評価回路（ＺＫＡＳ）へ供給されるアドレスワードを、前記下位の階層平面（Ｈ１）におけるメモリブロック（ＳＢ１）の同一のメモリセルへのアクセスによるアクセスコンフリクトについて検査し、アクセスコンフリクトが発生したとき、該アクセスコンフリクト評価回路（ＺＫＡＳ）は、アクセスコンフリクトの発生したメモリセルに係わる第２のメモリブロック（ＳＢ２）へのアクセスに対し、メモリアーキテクチャのただ１つのＩ／Ｏポート（Ｄ１〜ＤＮ）だけを許可することにより解決される。
【００１２】
【発明の実施の形態】
このように多重階層平面をもつ本発明によるメモリアーキテクチャは複数の外部接続ポートを有しており、これらのポートは同時に完全に並行して制御可能である。
【００１３】
これら階層平面の各々は複数のそれぞれ異なるメモリブロックを有している。この場合、最下位階層平面におけるメモリブロックは複数のメモリセルによって構成されている。最下位階層平面がただ１つのメモリセルから成るように構成することも考えられる。通常はたいていの要求に対し、２つの階層平面を使用すれば十分である。しかしその場合には、最下位階層平面におけるメモリブロックは少なくとも複数のメモリセルから構成されることになる。
【００１４】
有利には本発明によるマルチポートメモリアーキテクチャによれば、最下位階層平面において１ポートメモリセルを用いることができる。もちろん、２ポートメモリセルやマルチポートメモリセルの使用も考えられることはいうまでもない。しかし、１ポートメモリセルの使用は面積最適化の点で、殊に電気的導体路（ワードラインおよびビットライン）に関して格別に有利であることが明らかになっている。ＳＲＡＭデザインデータに基づくと、マルチポートメモリセルを使用した場合に比べ、ポート数に応じて２ポートの場合の約３０％〜１６ポートの場合の約７０％まで面積の節約度合いを高めることができる。したがってこの種のスタティックな１ポートメモリセル（ＳＲＡＭメモリセル）の使用は、コスト的にもきわめて有利であることは明らかである。
【００１５】
この場合、種々の階層平面におけるメモリブロックの配置構成をそれぞれ様々なやり方で形成できる。殊に有利であるのは、１つの階層平面におけるメモリブロックをマトリクス状に配置することである。また、このメモリマトリクスの行と列の個数を２の倍数にすると殊に有利である。
【００１６】
しかし、階層平面におけるメモリブロックを交換ネットワーク構成やバンク技術等として配置することも考えられる。その際、種々の階層平面内部におけるそれぞれ異なるメモリブロックの配置構成は、システム設計の自由にまかされている。種々の階層平面においてそれぞれ異なるメモリブロック配置構成を用いることも考えられる。
【００１７】
システムインテグレーションにおいて適用することのほかに、本発明を面積に関して好適なマルチポートメモリチップのためにも利用できることはいうまでもない。本発明は特別なメモリ形態に限定されるものではなく、あらゆる形態の不揮発性メモリやスタティックメモリおよびダイナミックメモリならびに基礎とするメモリ技術に適用することができる。殊に有利には、本発明はスタティックメモリ（ＳＲＡＭ）およびダイナミックメモリ（ＤＲＡＭ）に適用されるが、たとえばロジックメモリやあらゆる形態のプログラミング可能な固定値メモリ（ＰＲＯＭ，ＥＰＲＯＭ，ＥＥＰＲＯＭ）において有利であることは明らかである。しかも本発明によるメモリアーキテクチャは、慣用のＲＯＭメモリにおいても有用である。ＲＯＭメモリはプロセッサコンポーネントにおいて有利であり、その際、階層構造アーキテクチャの適用はスペースに関してとても魅力的である。
【００１８】
また、種々の平面においてそれぞれ異なる技術を適用することも考えられる。たとえばいわゆる「埋め込み形」メモリに関して、最下位平面ではメモリ技術として製造し、それよりも上の階層平面ではロジック技術として製造することもできる。したがって、適用されるメモリアーキテクチャは、使用される技術とはまったく無関係である。本発明はダイナミックメモリアレイ（ＤＲＡＭ）において殊に有利である。それというのも、この場合には実効ライン長が著しいことからメモリセルの容量を比較的小さく設計できるからである。
【００１９】
メモリを複数の階層平面に配置するにもかかわらず、ポートごとのアクセスタイムは劣化しない。この場合、逆方向の発展作用が生じる。たとえば付加的なマルチプレクサなどのような付加的なゲートによって、付加的な遅延時間が発生することでたしかにアクセスタイムは劣化するが、個々のメモリブロックの寸法つまりはそれらの導体路もいっそう小さく形成され、このことはやはりアクセスタイムの減少を意味する。そのうえクリティカルな導体パッドにおいて寄生容量や抵抗が小さくなることから、アクセスタイムがさらに改善される。
【００２０】
ポートごとおよびアクセスごとに上方の階層平面におけるただ１つのメモリブロックだけがそのつど活性化され、使用されていない残りのメモリブロックはいわば遮断されることになるから、メモリアーキテクチャ全体における電力損失が小さくなる。このように、使用されていない残りのメモリブロックはいわば遮断状態におかれる。
【００２１】
しかも従来技術によるマルチポートメモリアーキテクチャはその設計に関して、実質的に行デコーダ回路と列デコーダ回路から成るいわゆるラスタ回路により制約されている。著しく多くの接続ポートの場合には殊に、デコーダ回路の制御ラインをその中に含まれているドライバによってっももはや対応するメモリセルへ導くことはできない。つまりこの種のマルチポートメモリアーキテクチャの接続ポート数は、設計によって制約されている。有利には本発明によれば、マルチポートメモリアーキテクチャの設計を所定のスペース要求に整合させることが可能となる。その際、種々のラスタ回路を複数の階層平面に配分することができる。しかもこの場合、マルチポートメモリアーキテクチャの接続ポートをそれぞれ異なる階層平面に配分することも可能である。このようにすることで、所定の多重階層平面によって任意の設計自由度が得られるようになる。
【００２２】
従属請求項には本発明の有利な実施形態が示されている。
【００２３】
次に、図面に示された実施例に基づき本発明について詳細に説明する。
【００２４】
【実施例】
図１には、スタティック１ポートメモリセル（ａ）が、この実例では２つの外部ポートを有するスタティックマルチポートメモリセル（ｂ）と比較されて示されている。
【００２５】
図１のａ）における１ポートメモリセルは、２つの選択トランジスタＡＴ１，ＡＴ２および２つのインバータＩ１，Ｉ２を有している。この場合、第１の選択トランジスタＡＴ１は情報の書き込み／読み出し用データラインＢ１と第１のインバータＩ１の入力側との間に接続されており、ここで第２のインバータＩ２は第１のインバータＩ１に対し並列にフィードバック接続されている。
【００２６】
【外１】
0004392876.tif 000002
【００２７】
選択トランジスタＡＴ１，ＡＴ２の制御端子は、付加的にワードラインＷＬ１と接続されている。ワードラインＷＬ１を介して、選択トランジスタＡＴ１，ＡＴ２を導通状態あるいは阻止状態になるよう制御できる。
【００２８】
図１のｂ）にはマルチポートメモリセルを有しており、これはこの実例では２つのポートを有している。このようないわゆる２ポートメモリセルは、図１のａ）に示した１ポートメモリセルと同じように構成されている。この２ポートメモリセルは付加的にさらに２つの別の選択トランジスタＡＴ３，ＡＴ４を有しており、これは選択トランジスタＡＴ１，ＡＴ２と同様、メモリセルの２つのインバータＩ１，Ｉ２と接続されている。
【００２９】
【外２】
0004392876.tif 000003
【００３０】
【外３】
0004392876.tif 000004
【００３１】
それ相応の個数の出力ポートを備えたマルチポートメモリセルには、図１によるメモリセルから出発してそれ相応の個数の選択トランジスタやラインが設けられる。したがって１つのメモリセルにおけるポート数が増えるにつれて、冒頭で述べたように配線も複雑になる。それゆえ面積を費やすという点からすれば、１ポートメモリセルは面積に関して最も好適な形態である。
【００３２】
本発明によるメモリアーキテクチャはメモリ内部において２平面の階層構造を使用しており、これは各メモリセルに実装されたただ１つのポートからマルチポートメモリの外部ポートへの移行を実現するためである。図２には、多重平面階層構造を有する本発明によるこのようなメモリアーキテクチャの基本原理図が描かれている。この実施例では、２つの階層平面とＮ個の出力ポートが示されている。
【００３３】
多重平面階層構造をもつ本発明によるメモリアーキテクチャは、この実施例では２つの階層平面Ｈ１，Ｈ２を有している。本発明によるメモリアーキテクチャを実現するために、２つの階層平面よりも多くの階層平面を用いることも考えられる。ここでは第１の階層平面には参照符号Ｈ１が付されており、他方、第２の階層平面には参照符号Ｈ２が付されている。さらに以下では、第１の階層平面Ｈ１におけるエレメントには添字１を設ける一方、第２の階層平面Ｈ２におけるエレメントには添字２を設けた。
【００３４】
みやすくするため、すべての階層平面Ｈ１，Ｈ２には配線ここでは殊にワードラインとビットラインは書き込まれていない。
【００３５】
さて、この実施例の場合、両方の階層平面Ｈ１，Ｈ２は同じ構造であり、それぞれ１つのメモリブロックマトリクスと、個々のメモリブロックを所期のように読み出す選択手段と、次に高い階層平面へのインタフェースとを有しており、この実例では選択手段は行デコーダおよび列デコーダとして構成されている。
【００３６】
当然ながら、異なる階層平面において各メモリブロックをそれぞれ異なるやり方で配置させることも考えられる。つまりたとえば、一方の階層平面ではメモリブロックを交換ネットワーク配置で配置する一方、他方の階層平面ではメモリブロックをたとえば周知のメモリブロックマトリクスとして配置させることも考えられる。したがって、それぞれ異なる階層平面Ｈ１，Ｈ２を必ずしも互いに同じように配置しなくてもよい。それゆえ個々の階層平面におけるメモリブロックの配置を、適用事例ないしユーザの要求に整合させることができ、そのようにすることでメモリアーキテクチャにおける設計の自由度が広がる。
【００３７】
第１の階層平面Ｈ１は第１のメモリブロックマトリクスＳＢＭ１を有している。さらに第１の階層平面Ｈ１は、ワードラインデコーダＷＬＤとビットラインデコーダＢＬＤとポート選択バッファ回路ＰＡＰとアドレス選択回路ＡＡＳを有している。
【００３８】
第１の階層平面Ｈ１のメモリブロックマトリクスＳＢＭ１はこの実施例の場合、Ｍ１＝２m1個の異なるメモリブロックＳＢ１を有しており、それらはマトリクス状に配置されている。この実施例では、メモリブロックマトリクスＳＢＭ１は２m1-r1個の列と２r1個の行を有している。したがってメモリブロックマトリクスＳＢＭ１の行と列の個数は２の倍数である。必ずこのようにしなければいけないというわけではないが、この種のメモリブロックマトリクスにおいては有利である。
【００３９】
第１の階層平面Ｈ１のメモリブロックＳＢ１は、それぞれ異なるメモリセルによって構成されている。この実施例では、第１の階層平面におけるメモリセルはただ１つの書き込み／読み出しポートを備えた１ポートメモリセルである。もちろん、既述のメモリセルが相応の個数の書き込み／読み出しポートを備えたいわゆるマルチポートメモリセルであるように構成することも考えられる。しかし冒頭の説明や図１の関連で述べたように、最下位階層の平面Ｈ１において１ポートメモリセルを使用するのは殊に有利である。とはいうものの、最下位階層平面Ｈ１においてたとえばアクセスタイムや設計上の面積最適化など特定の要求のために、上述のようなマルチポートメモリセルを使用するのが好適になる場合もある。これはたとえば、上の方の階層平面のうちの１つに僅かな個数のメモリブロックしか設けられていない場合にアクセスがコンフリクトする確率を少なくする目的で有利となる可能性もある。
【００４０】
なお、第１の階層平面Ｈ１におけるメモリセルは任意の不揮発性メモリセル（たとえばＥＥＰＲＯＭメモリセル）、スタティックメモリセル（たとえばＳＲＡＭメモリセル）あるいはダイナミックメモリセル（たとえばＤＲＡＭメモリセル）として構成することができる。メモリブロックの周辺回路は、選択した種類のメモリセルに合わせて構成できることはいうまでもない。
【００４１】
最下位階層平面Ｈ１において単一または複数のメモリセルを選択するために、ビットラインデコーダＢＬＤならびにワードラインデコーダＷＬＤが設けられている。この実施例の場合、ビットラインデコーダＢＬＤはｍ１−ｒ１個のアドレスビットを有しており、ワードラインデコーダＷＬＤはｒ１個のアドレスビットを有している。さらに第１の階層平面Ｈ１はアドレス選択回路ＡＡＳを有しており、これらはＮ個の種々のアドレスＡ１１〜ＡＮ１によって制御される。これらのアドレスの各々はｍ１アドレスビットの幅をもつ。
【００４２】
また、第１の階層平面Ｈ１はポート選択バッファ回路ＰＡＰも有しており、これにはＮ個の種々の出力ポートＤ１〜ＤＮが設けられている。
【００４３】
第１の階層平面Ｈ１におけるメモリ装置の動作は読み出し過程の場合、以下のようにして行われる：アドレス選択回路ＡＡＳにより、アドレスポートＡ１１〜ＡＮ１を介してアドレスワードが入力結合される。入力結合されたこのアドレスワードに基づき、ワードラインデコーダＷＬＤとビットラインデコーダＢＬＤはメモリブロックマトリクスＳＢＭ１内の個々のメモリセルを、データワードを読み出すことができるよう制御する。このデータワードはポート選択バッファ回路ＰＡＰへ供給される。ポート選択バッファ回路ＰＡＰはこのデータワードを、出力ポートＤ１〜ＤＮのうちの１つへ割り当てる。書き込み過程に関しては、このサイクルが同じように逆方向で進行する。
【００４４】
図２に示されているように、このメモリアーキテクチャはさらに第２の階層平面Ｈ２を有している。第２の階層平面Ｈ２は、第２のメモリブロックマトリクスＳＢＭ２、行選択ジェネレータＲＡＧ、列選択ジェネレータＳＡＧ、ならびに入／出力バッファ回路ＩＯＰを有している。この実施例の場合、第２の階層平面Ｈ２においてメモリブロックＳＢ２はやはりメモリブロックマトリクスとして構成されている。
【００４５】
第２の階層平面Ｈ２における第２のメモリブロックマトリクスＳＢＭ２の構造は、第１の階層平面Ｈ１の構造と同じである。この場合、メモリブロックの別の配置構成たとえば交換ネットワークやいわゆるバンク技術で配置されたメモリブロックも考えられるのはいうまでもない。この実施例の場合、メモリブロックマトリクスＳＢＭ２は２m2-r2個の異なる列と２r2個の異なる行を有している。また、第１のメモリブロックマトリクスＳＢＭ１の場合と同様、第２のメモリブロックマトリクスＳＢＭ２の場合も行ないしは列の個数は２の倍数であり、その際、一般的な個数の行列も考えられる。
【００４６】
さらに第２の階層平面Ｈ２は、第２のメモリマトリクスＳＢＭ２における種々の行を選択するための行選択ジェネレータＲＡＧと種々の列を選択するための列列選択ジェネレータＳＡＧを有している。したがって行選択ジェネレータＲＡＧは、それぞれ異なるｒ２個のアドレスビットをもつＮ個の種々のポートを有する。同様に列選択ジェネレータＳＡＧも、それぞれｍ２−ｒ２個のアドレスビットをもつＮ個の種々のポートを有している。
【００４７】
第２の階層平面Ｈ２におけるメモリブロックＳＢ２の選択は、いわゆる入／出力バッファ回路ＩＯＰ（Ｉ／Ｏバッファ回路）を介して行われる。Ｉ／Ｏバッファ回路ＩＯＰは、やはりＮ個の異なる出力ポートＤ１〜ＤＮを有する。したがってこれらの出力ポートは、マルチポートメモリアーキテクチャの出力ポートを成している。
【００４８】
当然ながら、１つまたは複数の階層平面Ｈ１，Ｈ２がそれぞれただ１つのメモリブロックだけから成るように構成することも考えられる。この場合、最下位階層平面Ｈ１では、メモリブロックマトリックスＳＢＭ１はただ１つのメモリブロックＳＢ１に低減され、つまりはただ１つのメモリセルに低減されることになる。
【００４９】
本発明によれば、第２の階層平面Ｈ２におけるメモリブロックＳＢ２はそれぞれ、メモリブロックＳＢ１と第１の階層平面Ｈ１における個々の周辺ユニットによって構成されている。
【００５０】
メモリアーキテクチャが多数の階層平面によって構成されている場合、メモリの構造は以下のようになる：最下位階層平面Ｈ１では、メモリブロックＳＢ１は少なくとも１つのメモリセルによって構成される。それらのメモリセルのための周辺ユニットたとえばワードラインデコーダＷＬＤ、ビットラインデコーダＢＬＳ、ポート選択バッファ回路ＰＡＰ、アドレス選択回路ＡＡＳは、個々の階層平面におけるメモリブロックの個々の配置構成に整合されている。その上の各階層平面は、すぐ下の階層平面におけるメモリブロックによって構成されている。これに加えて最上位階層は、メモリアーキテクチャの相応の出力ポートを備えたＩ／Ｏバッファ回路ＩＯＰを有している。個数Ｎの種々異なる出力ポートＤ１〜ＤＮは、マルチポートメモリアーキテクチャのポートである。
【００５１】
第２の階層平面Ｈ２は、Ｍ２＝２m2個の異なるメモリブロックＳＢ２から成り、この場合、個々のメモリブロックＳＢ２は各々、Ｍ１＝２m1個の種々のメモリセルを有している。したがってメモリアーキテクチャにおけるメモリセルの総数はＭ＝Ｍ１ * Ｍ２＝２m となり、ここでｍ＝ｍ１＋２である。
【００５２】
さらに本発明によれば階層平面Ｈ２には、アクセスコンフリクトを処理する回路が設けられている。このいわゆるアクセスコンフリクト評価回路は殊にマルチポートメモリアーキテクチャにおいて、たとえば２つまたはそれ以上のポートにより同一のメモリブロックがアクセスされるような場合にはどうしても必要である。
【００５３】
この場合、アクセス選択の優先順位を付けなければならない。アクセスコンフリクト評価回路ＺＫＡＳは慣用のＮポートメモリアーキテクチャの場合にはすべて、つまり単一のＮポートメモリセルの場合であっても必要であり、それというのも、少なくとも１つの書き込みアクセスにおいて同一のメモリセルへの２つまたはそれ以上のポートによるアクセスは許可されず、コンフリクトとなるからである。
【００５４】
次に、最も重要な部分回路の機能について詳しく説明する。ここではまずはじめに、Ｎポートを介してアクセス中のＮポートメモリアーキテクチャの機能について簡単に説明する。このアーキテクチャにおいて構成されるたいていの回路に対し、従来技術による一般に周知の使用された解決手段が存在する。
【００５５】
行選択ジェネレータＲＡＧと列選択ジェネレータＳＡＧは、Ｎ個のポートのために第２の階層平面の個々のｍ２個のアドレスビットから、行選択信号と列選択信号を生成する。これと同時にアクセスコンフリクト評価回路ＺＫＡＳは、１つまたは複数のコンフリクト状況について第２の階層平面Ｈ２におけるアドレスビットを検査する。アクセスコンフリクト検査が終了し、アクセスコンフリクトが発生した場合には、所定の優先順位付けアルゴリズムに従いそのつど１つのポートがアクセス権限ありとして選択されてはじめて、相応のメモリブロックＳＢ２が活性化される。これにより、第２の階層平面Ｈ２においてポートごとにそのつどただ１つのメモリブロックＳＢ２だけが活性化される。
【００５６】
Ｎポートメモリアーキテクチャの場合、たとえばＮポートメモリセルの場合、アクセスコンフリクトはこれまでシーケンシャルに解決されていた。しかしながらこのようなシーケンシャルなアクセスコンフリクトの解決は、Ｎポートメモリアーキテクチャの場合には不利であることがわかった。その理由は、複数のアクセスコンフリクトが発生したときには殊に、メモリアーキテクチャ全体における性能が著しく下がってしまうからである。
【００５７】
このような理由から、アクセスコンフリクトが時間的に完全に並行して処理されるようにすると有利である。アクセスコンフリクトのこの種の並列処理はたとえば、そのつど１つのポートをアクセス権限ありとして選択する優先順位付けアルゴリズムによって行うことができる。この優先順位付けアルゴリズムのためにたとえば、その重要性に応じたポートの簡単なクラス分けを行うことができる。この場合、コンフリクトが発生したときには常に、最も重要なポートがアクセス権限を獲得する。そしてステータス信号を用いることによって、目下のアクセスが成功したか拒否されたかが各ポートごとに外部へ通報される。
【００５８】
第１の階層平面Ｈ１において、ただ１つのポートのｍ１アドレスビットだけがワードラインデコーダＷＬＤおよびビットラインデコーダＢＬＤへ供給される。このためメモリブロックＳＢ１の活性化信号は、活性化すべきポートに関する情報だけしか含まない。この情報は、所属のポートのアドレスビットを対応するデコーダへ向けて切り替えるためにアドレス選択回路ＡＡＳによって利用される。この場合、ポート選択バッファ回路ＰＡＰにより同時に、ビットラインデコーダＢＬＤの出力側がポートに属するデータラインと接続される。さらにビットラインデコーダＢＬＤは、集積評価回路ならびに読み出し信号増幅用のドライバ手段も有している。
【００５９】
３つの回路すなわちポート選択バッファ回路ＰＡＰ、アドレス選択回路ＡＡＳならびにアクセスコンフリクト評価回路ＺＫＡＳは、慣用の回路技術における公知の手法に従って実現することができる。最初の２つの回路の場合、つまりポート選択バッファ回路ＰＡＰとアドレス選択回路ＡＡＳの場合、簡単なマルチプレクサ回路ないしデマルチプレクサ回路が用いられる。
【００６０】
アクセスコンフリクト評価回路ＺＫＡＳは当然ながら、基礎とする優先順位付けアルゴリズムに依存する。殊に完全に並行したアクセスコンフリクトを解消する場合には、ここではＥＸＯＲゲートを介したアドレスビットの比較に基づいて回路を構成することができる。この場合、基礎とする優先順位付けアルゴリズムによって、対応するポートイネーブル信号を発生させるためにＥＸＯＲゲートの出力側がどのように結合されるかが決定される。
【００６１】
図２ではみやすくするため、ポートごとに１ビットのワード幅とした。上述のメモリアーキテクチャ内部におけるワード幅を任意の値とすることができるのはいうまでもない。この場合、従来技術の手法に従って変形が行われる。
【００６２】
１つの実施形態として、多重階層構造をもつ本発明によるマルチポートメモリアーキテクチャの発展形態を実現するために、アクセスタイムを短くする従来技術によるあらゆる公知の技術を利用することも当然ながら可能である。とはいうものの図２には、異なる複数の階層平面におけるメモリブロックのための最も簡単な階層構造が示されている。しかしそれらの階層平面の各々において付加的に、たとえばキャッシングやバンクなどアクセスタイムを短くする公知技術のうちの１つを内部的に組み込むこともできる。
【図面の簡単な説明】
【図１】スタティック１ポートメモリセル（ａ）をスタティックマルチポートメモリセル（ｂ）と対比して示す図である。
【図２】多重階層平面を備えた本発明によるマルチポートメモリアーキテクチャの実例を示す図である。
【符号の説明】
Ｈ１，Ｈ２  階層平面
ＳＢＭ１，ＳＢＭ２  メモリブロックマトリクス
ＳＢ１，ＳＢ２  メモリブロック
ＡＡＳ  アドレス選択回路
ＷＬＤ  ワードラインデコーダ
ＢＬＤ  ビットラインデコーダ
ＰＡＰ  ポート選択バッファ回路
ＲＡＧ  行選択ジェネレータ
ＳＡＧ  列選択ジェネレータ
ＩＯＰ  Ｉ／Ｏバッファ回路
【図１】
0004392876.tif 000005
【図２】
0004392876.tif 000006