(57)【特許請求の範囲】
【請求項１】
複数個のＲＡＭと、前記複数個のＲＡＭのアクセスポートに接続されたポート拡張部とを有するマルチポートメモリであって、
前記ポート拡張部は、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列アクセス可能な２ポートを持つ２ポートＲＡＭであり、
前記入力回路は、前記２ポートＲＡＭの数に夫々等しい数のリードアドレス入力回路、ライトアドレス入力回路及びライトデータ入力回路を有し、
前記ライトアドレス入力回路はライトアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、一つの内部クロック信号に同期して、個々のリードアドレス入力回路のアドレス信号を対応する２ポートＲＡＭの一方のポートに並列に供給してリード動作を可能にすると共に一つのライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを前記全ての２ポートＲＡＭの他方のポートに並列に供給して前記全ての２ポートＲＡＭに対する並列ライト動作を可能にし、他の内部クロック信号に同期して、他のライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに並列に供給して前記全ての２ポートＲＡＭに対する並列ライト動作を可能にするものであるマルチポートメモリ。
【請求項２】
複数個のＲＡＭと、前記複数個のＲＡＭのアクセスポートに接続されたポート拡張部とを有するマルチポートメモリであって、
前記ポート拡張部は、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭであり、
前記入力回路は、前記２ポートＲＡＭの夫々のポートに対応してアドレス入力回路、ライトデータ入力回路及びリード・ライト信号入力回路を有し、
前記アドレス入力回路はアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記リード・ライト信号入力回路はリード・ライト信号のラッチ回路を有し、
前記タイミング発生回路は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ内部クロック信号を生成し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、第１内部クロック信号に同期して、リード動作が指示されたアドレス入力回路のアドレス信号を対応する２ポートＲＡＭのポートに並列に供給してリード動作を可能にし、第１乃至第ｎ内部クロック信号に順次同期して、ライト動作が指示されたアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに供給してライト動作を可能にするものであるマルチポートメモリ。
【請求項３】
複数個のＲＡＭと、前記複数個のＲＡＭのアクセスポートに接続されたポート拡張部とを有するマルチポートメモリであって、
前記ポート拡張部は、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭであり、
前記入力回路は、夫々２ｎ個のリードアドレス入力回路、ライトアドレス入力回路及びライトデータ入力回路を有し、
前記ライトアドレス入力回路はライトアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記タイミング発生回路は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ＋１番目の内部クロック信号を生成し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、第１内部クロック信号に同期して、リードアドレス入力回路のアドレス信号を２ポートＲＡＭに並列に供給して全てのＲＡＭで別々のデータの並列リード動作を可能にし、第２乃至第ｎ＋１番目の内部クロック信号に順次同期して、ライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを順番に全ての２ポートＲＡＭに供給して全てのＲＡＭに同一データの順次ライト動作を可能にするものであるマルチポートメモリ。
【請求項４】
前記ＲＡＭはクロック信号に同期してメモリサイクルが規定され、前記タイミング発生回路は前記内部クロック信号を相互にノンオーバーラップのクロック信号とし、それらノンオーバーラップの内部クロック信号の論理和信号を前記夫々のＲＡＭにイネーブルクロック信号として与えるものである請求項１乃至３の何れか１項に記載のマルチポートメモリ。
【請求項５】
外部クロック信号で規定されるサイクル期間において、論理回路は、ＲＡＭに対するリード動作をライト動作に優先させるものである請求項１乃至４の何れか1項に記載のマルチポートメモリ。
【請求項６】
１個の半導体チップに形成さて成るものである請求項１乃至５の何れか１項に記載のマルチポートメモリ。
【請求項７】
アクセス制御回路、ポート拡張回路、及び複数個のＲＡＭを有するデータ処理システムであって、
前記ポート拡張回路は、前記アクセス制御回路に接続され、且つ前記複数個のＲＡＭのアクセスポートに接続され、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものであり、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な制御クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記制御クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列アクセス可能な２ポートを持つ２ポートＲＡＭであり、
前記入力回路は、前記２ポートＲＡＭの数に夫々等しい数のリードアドレス入力回路、ライトアドレス入力回路、ライトデータ入力回路を有し、
前記ライトアドレス入力回路はライトアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、一つの内部クロック信号に同期して、個々のリードアドレス入力回路のアドレス信号を対応する２ポートＲＡＭの一方のポートに並列に供給してリード動作を可能にすると共に一つのライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを前記全ての２ポートＲＡＭの他方のポートに並列に供給して前記全ての２ポートＲＡＭに対する並列ライト動作を可能にし、他の内部クロック信号に同期して、他のライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに並列に供給して前記全ての２ポートＲＡＭに対する並列ライト動作を可能にするものであるデータ処理システム。
【請求項８】
アクセス制御回路、ポート拡張回路、及び複数個のＲＡＭを有するデータ処理システムであって、
前記ポート拡張回路は、前記アクセス制御回路に接続され、且つ前記複数個のＲＡＭのアクセスポートに接続され、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものであり、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な制御クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記制御クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭであり、
前記入力回路は、前記２ポートＲＡＭの夫々のポートに対応してアドレス入力回路、ライトデータ入力回路及びリード・ライト信号入力回路を有し、
前記アドレス入力回路はアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記リード・ライト信号入力回路はリード・ライト信号のラッチ回路を有し、
前記タイミング発生回路は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ内部クロック信号を生成し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、第１内部クロック信号に同期して、リード動作が指示されたアドレス入力回路のアドレス信号を対応する２ポートＲＡＭのポートに並列に供給してリード動作を可能にし、第１乃至第ｎ内部クロック信号に順次同期して、ライト動作が指示されたアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに供給してライト動作を可能にするものであるデータ処理システム。
【請求項９】
アクセス制御回路、ポート拡張回路、及び複数個のＲＡＭを有するデータ処理システムであって、
前記ポート拡張回路は、前記アクセス制御回路に接続され、且つ前記複数個のＲＡＭのアクセスポートに接続され、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものであり、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な制御クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記制御クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路と、を有し、
前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭであり、
前記入力回路は、夫々２ｎ個のリードアドレス入力回路、ライトアドレス入力回路及びライトデータ入力回路を有し、
前記ライトアドレス入力回路はライトアドレスのラッチ回路を有し、
前記ライトデータ入力回路はライトデータのラッチ回路を有し、
前記タイミング発生回路は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ＋１番目の内部クロック信号を生成し、
前記論理回路は、外部から供給されるクロック信号の１サイクル毎に、第１内部クロック信号に同期して、リードアドレス入力回路のアドレス信号を２ポートＲＡＭに並列に供給して全てのＲＡＭで別々のデータの並列リード動作を可能にし、第２乃至第ｎ＋１番目の内部クロック信号に順次同期して、ライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを順番に全ての２ポートＲＡＭに供給して全てのＲＡＭに同一データの順次ライト動作を可能にするものであるデータ処理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数個のＲＡＭを見掛上単一のマルチポートメモリとして利用可能にする技術に関し、例えばマルチポートメモリ、更には、マイクロコンピュータ若しくはマイクロプロセッサなどと称されるデータプロセッサ等に適用して有効な技術に関するものである。
【０００２】
【従来の技術】
本発明者は半導体メモリのマルチポート化について検討した。例えば理論上完全に並列アクセス可能なマルチポートメモリのメモリセルには、データ入出力端子とメモリセルの選択端子とがポート数分だけ設けられている。したがって、ビット線及びワード線が複数組設けられ、メモリセルの選択トランジスタが各ビット線及びワード線のペア毎に設けられている。このため、必要なポート数に応じてワード線やビット線の数を増やすとメモリチップの面積が著しく増大し、また、ビット線相互間のクロストーク等によって誤動作を生ずる虞が増し、単一のメモリにおけるポート数の増加には自ずと制限が有る。
【０００３】
そこで、複数個のＲＡＭを用いて見掛け上マルチポートＲＡＭを構成することができる。このような技術に関しては特開平１−２５１３８７号公報に記載が有る。例えば、並列的にアクセス可能なライトポートとリードポートを持つ２ポートＲＡＭを２個用いて見掛上１個の３ポートＲＡＭを構成する場合、データ書き込みに際して２個の２ポートＲＡＭには同一データを書き込まなければならないから、２個の２ポートＲＡＭのライトポートは共通接続して１ポートとする。同様に上記２ポートＲＡＭをｎ（３以上の整数）個用いて見掛上ｎ＋１のポートを持つマルチポートメモリを構成する場合にも、ｎ個の２ポートＲＡＭのライトポートは共通接続しなければならない。このようなマルチポートＲＡＭは、書込みに関しては異なるデータを並列ライトアクセスすることはできないが、読み出しに関してはｎ個のポートに対してｎ個の異なるデータを並列リードアクセスできる。しかしながら、必要なポート数に応じて並列動作されるメモリチップの数が増えるため、電力消費量が大きくなうと言う問題点が有る。
【０００４】
また、本発明者はマルチポート化に関する発明を先に出願している（特開平７-８４９８７号）。これによれば、メモリのアクセスポートに、アドレスやデータを並列・直列変換して外部とのインタフェースを行う速度変換回路を設け、外部からのアクセス速度に対して内部のメモリアクセス速度を例えば２倍にし、シングルポーチＲＡＭを見掛上デュアルポートＲＡＭとしてアクセス可能にする。この構成ではメモリの数を増やさなくても、速度変換回路の論理構成によって、一つのポートに対する見掛上のマルチポート数を増やすこと、例えば４ポート、８ポートというように見掛上のポート数を増やすことができる。
【０００５】
【発明が解決しようとする課題】
上記速度変換回路を用いた場合にはＲＡＭを直列的に動作させて見掛上のマルチポート数を増やすから、並列動作させるべきＲＡＭの数を減らすことができ、従来に比べて低消費電力に寄与することができる。しかしながら、メモリの数を増やすことなく見掛上のマルチポート数を増やすと、メモリに対する実際のアクセスが直列的に行なわれている関係で、見掛上増えた全てのリードポートから読み出されるデータが全て確定する時間は、見掛上のマルチポート数が増えるほど遅くなるという問題点のあることが本発明者によって明らかにされた。
【０００６】
本発明の目的は、低消費電力に寄与できると共に、見掛上のマルチポート数を増やしても見掛上の並列リードアクセスの遅れを改善できるマルチポートメモリを提供することにある。
【０００７】
本発明の別の目的は、汎用メモリチップを用いて単一のマルチポートメモリを実現可能にすると共に、実現されたマルチポートメモリに関しては、低消費電力で、しかも、見掛上のマルチポート数を増やしても見掛上の並列リードアクセスの遅れを改善できるデータプロセッサを提供することにある。
【０００８】
本発明のその他の目的は、多ポートメモリを用いるデータ処理システムのコスト並びに電力消費量を低減することにある。
【０００９】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【００１０】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１１】
〔１〕マルチポートメモリは、複数個のＲＡＭと、前記複数個のＲＡＭのアクセスポートに接続されたポート拡張部（１２，２２，３２，４２）とを有する。前記ポート拡張部は、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路とを有する。このポート拡張部は、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものである。
【００１２】
上記によれば、個々のＲＡＭを直列的に動作させて見掛上のマルチポート数を増やすから、並列動作させるべきＲＡＭの数を減らすことができ、従来に比べて低消費電力に寄与することができる。しかも、ＲＡＭを複数個用いているので、個々のＲＡＭがシングルポートの場合でも、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。ＲＡＭがマルチポートを持つ場合も同じである。一方、ライトアクセスに関しては、個々のＲＡＭが同一データを保持しなければならないから、各ＲＡＭにおいて並列ライトアクセス可能なポート数分だけライトアクセスの実質的な並列化が行なわれる。
【００１３】
本発明の第１の具体的な態様では、図１に例示されるように、前記夫々のＲＡＭは、データ入出力端子と選択端子とを１組有するメモリセルを内蔵したシングルポートＲＡＭ（１０，１１）である。このとき、前記入力回路（１３）は、前記シングルポートＲＡＭの数に夫々等しい数のリードアドレス入力回路（１３０，１３１）、ライトアドレス入力回路（１３２，１３３）、ライトデータ入力回路（１３４，１３５）を有する。前記ライトアドレス入力回路はライトアドレスのラッチ回路（１３６，１３７）を有し、前記ライトデータ入力回路はライトデータのラッチ回路（１３８，１３９）を有する。前記論理回路（１５）は、外部から供給されるクロック信号（ＣＫ）の１サイクル毎に、一つの内部クロック信号（φ１）に同期して、個々のリードアドレス入力回路のアドレス信号を対応するシングルポートＲＡＭに並列に供給してリード動作を可能にし、他の内部クロック信号（φ２、φ３）に順次同期して、ライトアドレス及びライトデータ入力回路毎のラッチ回路にラッチされたライトアドレス及びライトデータをシングルポートＲＡＭに並列に供給して複数回直列的にライト動作を可能にするものである。
【００１４】
本発明の第２の具体的な態様では、図７に例示されるように、前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列アクセス可能な２ポートを持つ２ポートＲＡＭ（２０，２１）である。このとき、前記入力回路（２３）は、前記２ポートＲＡＭの数に夫々等しい数のリードアドレス入力回路（２３０，２３１）、ライトアドレス入力回路（２３２，２３３）及びライトデータ入力回路（２３４，２３５）を有する。前記ライトアドレス入力回路はライトアドレスのラッチ回路（２３６）を有し、前記ライトデータ入力回路はライトデータのラッチ回路（２３８）を有する。前記論理回路（２５）は、外部から供給されるクロック信号（ＣＫ）の１サイクル毎に、一つの内部クロック信号（φ１）に同期して、個々のリードアドレス入力回路のアドレス信号を対応する２ポートＲＡＭの一方のポートに並列に供給してリード動作を可能にすると共に、一つのライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを前記全ての２ポートＲＡＭの他方のポートに並列に供給してライト動作を可能にし、他の内部クロック信号（φ２）に同期して、他のライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに並列に供給してライト動作を可能にするものである。
【００１５】
本発明の第３の具体的な態様では、図１０に例示されるように、前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭ（３０，３１）である。このとき、前記入力回路（３３）は、前記２ポートＲＡＭの夫々のポートに対応してアドレス入力回路（３３０Ａ〜３３３Ａ）、ライトデータ入力回路（３３０Ｄ〜３３３Ｄ）及びリード・ライト信号入力回路（３３０Ｃ〜３３３Ｃ）を有する。前記アドレス入力回路はアドレスのラッチ回路（３３０ＡＬ〜３３３ＡＬ）を有し、前記ライトデータ入力回路はライトデータのラッチ回路（３３０ＤＬ〜３３３ＤＬ）を有し、前記リード・ライト信号入力回路はリード・ライト信号のラッチ回路（３３０ＣＬ〜３３３Ｌ）を有する。前記タイミング発生部（３４）は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ内部クロック信号（φ１、φ２）を生成する。前記論理回路（３５）は、外部から供給されるクロック信号（ＣＫ）の１サイクル毎に、第１内部クロック信号（φ１）に同期して、リード動作が指示されたアドレス入力回路のアドレス信号を対応する２ポートＲＡＭのポートに並列に供給してリード動作を可能にし、第１乃至第ｎ内部クロック信号（φ２）に順次同期して、ライト動作が指示されたアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを全ての２ポートＲＡＭに供給してライト動作を可能にするものである。
【００１６】
本発明の第４の具体的な態様では、図１４に例示されるように、前記夫々のＲＡＭは、データ入出力端子と選択端子とを２組有するメモリセルを内蔵し外部より並列的にアクセス可能な２ポートを持つｎ個の２ポートＲＡＭ（４０，４１）である。このとき、前記入力回路（４３）は、夫々２ｎ個のリードアドレス入力回路（４３０Ｒ〜４３３Ｒ）、ライトアドレス入力回路（４３０Ｗ〜４３３Ｗ）及びライトデータ入力回路（４３０Ｄ〜４３３Ｄ）を有する。前記ライトアドレス入力回路はライトアドレスのラッチ回路（４３０ＷＬ〜４３３ＷＬ）を有し、前記ライトデータ入力回路はライトデータのラッチ回路（４３０ＤＬ〜４３３ＤＬ）を有し、前記タイミング発生部（４４）は、前記内部クロック信号として相互にノンオーバーラップの第１乃至第ｎ＋１番目の内部クロック信号（φ１、φ２、φ３）を生成する。前記論理回路（４５）は、外部から供給されるクロック信号（ＣＫ）の１サイクル毎に、第１内部クロック信号（φ１）に同期して、リードアドレス入力回路のアドレス信号を２ポートＲＡＭに並列に供給して全てのＲＡＭで別々のデータの並列リード動作を可能にし、第２乃至第ｎ＋１番目の内部クロック信号（φ２、φ３）に順次同期して、ライトアドレス及びライトデータ入力回路のラッチ回路にラッチされたライトアドレス及びライトデータを順番に全ての２ポートＲＡＭに供給して全てのＲＡＭに同一データの順次ライト動作を可能にするものである。
【００１７】
前記ＲＡＭはクロック信号に同期してメモリサイクルが規定されるものであるとき、前記タイミング発生回路は前記内部クロック信号を相互にノンオーバラップのクロック信号とし、それらノンオーバラップの内部クロック信号の論理和信号を前記夫々のＲＡＭにイネーブルクロック信号として与えることができる。
【００１８】
前記ＲＡＭがダイナミックＲＡＭやスタティックＲＡＭのように、読み出し動作の開始前にビット線レベルを所定レベルにプリチャージしなければならないＲＡＭを想定したとき、外部クロック信号で規定されるサイクル期間において、論理回路は、ＲＡＭに対するリード動作をライト動作に優先させる事が望ましい。書込み動作では書き込みアンプでビット線をドライブすればよく、プリチャージ動作は必要ない。書込み動作をリード動作の前に行うと、読み出し動作の前にビット線プリチャージ動作を行わなければならない。したがって、リード動作をライト動作に優先させれば、リード動作とライト動作が連続される見掛け上のマルチポートアクセス時間を短縮することができる。
【００１９】
上記マルチポートメモリは１個の半導体チップに形成することができる。ＲＡＭに汎用ＲＡＭチップを用い、ポート拡張部をＴＴＬ回路で構成することも可能である。
【００２０】
〔２〕データプロセッサ（５）は、ＣＰＵ（５０）とポート拡張回路（５２）とが半導体チップに形成されて成る。前記ポート拡張回路は、内部バスを介してＣＰＵに接続され、且つ前記半導体チップの外部に設けられる複数個のＲＡＭ（６０〜６２）のアクセスポートに接続され、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものであり、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路（５２１）と、データプロセッサの同期クロック信号（ＣＫ）の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な制御クロック信号を生成するタイミング発生回路（５２０）と、前記入力回路のアクセス制御情報を前記制御クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路（５２２）と、を有して成る。
【００２１】
外部インタフェース回路として前記ポート拡張回路を備えたデータプロセッサを用いれば、ＤＲＡＭやＳＤＲＡＭなどのシングルポート又はデュアルポートの汎用ＲＡＭチップを用いて、見掛け上必要な数のリードポートを備えたマルチポートメモリを容易に実現できる。そのようにして実現されるマルチポートメモリは機能上、上記マルチポートメモリと同一機能を発揮する。
【００２２】
〔３〕データ処理システムは、アクセス制御回路（６０）、ポート拡張回路（６１）、及び複数個のＲＡＭ（６３）を有する。前記ポート拡張回路は、前記アクセス制御回路に接続され、且つ前記複数個のＲＡＭのアクセスポートに接続され、前記複数個のＲＡＭを見掛上単一のマルチポートメモリとしてアクセス可能にするものであり、前記複数個のＲＡＭをメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、外部から供給されるクロック信号の１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な制御クロック信号を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記制御クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路とを有して成る。
【００２３】
これによれば、ポート拡張回路とＲＡＭにより、上記同様、見掛け上必要な数のリードポートを備えたマルチポートメモリが実現される。よって、多ポートメモリを用いるデータ処理システムのコスト並びに電力消費量を低減することができる。
【００２４】
【発明の実施の形態】
《第１のマルチポートメモリ》
図１にはマルチポートメモリの第１の例として、２個のシングルポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリが示される。同図に示されるマルチポートメモリ１は、２個のＲＡＭ１０，１１と各々のＲＡＭ１０，１１のアクセスポートに接続されたポート拡張部１２とを有する。
【００２５】
前記夫々のＲＡＭ１０，１１は相互に同一回路構成を有し、データ入出力端子と選択端子とを１組有するメモリセルを内蔵した所謂シングルポートＲＡＭである。ＲＡＭ１０，１１が例えばＳＲＡＭであれば、メモリセルは例えば公知のスタティックラッチ形態で構成することができる。
【００２６】
ＲＡＭ１０，１１において、ｃｋはクロック（イネーブルクロック）入力端子、ＡＩＰはアドレス入力端子群、ＤＩＰはデータ入力端子群、ＤＯＰはデータ出力端子群、Ｒ／Ｗはリード・ライト信号入力端子であり、それらは、一つのアクセスポート（シングルポート）を構成する。データ入力端子群ＤＩＰとデータ出力端子群ＤＯＰは便宜上分けられているに過ぎず、並列アクセス可能なデュアルポートを構成するものではない。
【００２７】
前記ポート拡張部１２は、前記ＲＡＭ１０，１１をメモリサイクル毎に並列動作させるためのアクセス制御情報ＡＤ，ＤＩを複数メモリサイクル分まとめて入力可能とする入力回路１３と、外部から供給されるクロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号φ１、φ２、φ３、φｃを生成するタイミング発生回路（ＴＧ）１４と、前記入力回路１３のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭに並列的に供給可能な論理回路１５と、を有する。特に制限されないが、マルチポートメモリ１は１個の半導体チップに形成されているが、ＲＡＭ１０，１１とポート拡張部１２とを別々の半導体チップに構成することも可能である。
【００２８】
前記入力回路１３は、前記ＲＡＭ１０，１１（シングルポートＲＡＭ１０，１１とも称する）の数（＝２）に夫々等しい数の、リードアドレス入力回路１３０、１３１と、ライトアドレス入力回路１３２，１３３と、ライトデータ入力回路１３４，１３５とを有する。アドレス入力回路１３０〜１３３の夫々のアドレス入力ビット数はＲＡＭ１０，１１のアドレス入力端子群ＡＩＰのビット数に等しくされ、また、ライトデータ入力回路１３４，１３５のビット数も夫々前記ＲＡＭ１０，１１のデータ入力端子群ＤＩＰのビット数に等しくされている。
【００２９】
図１のマルチポートメモリ１では、ＲＡＭ１０，１１の出力端子群ＤＯＰと共にリードアドレス入力回路１３０、１３１が２個のリードアクセスポートを構成し、ライトアドレス入力回路１３２及びライトデータ入力回路１３４が１個のライトアクセスポートを構成し、ライトアドレス入力回路１３３及びライトデータ入力回路１３５がもう１個のライトアクセスポートを構成する。マルチポートメモリ１は見掛上、２個のライトポートと２個のリードポートを有する合計４ポートのＲＡＭを構成する。
【００３０】
前記リードアドレス入力回路１３０、１３１は、特に制限されないが、図示を省略するアドレス入力バッファを有し、信号線を介してリードアドレスＡＤ（Ｒａ），ＡＤ（Ｒｂ）が供給される。ライトアドレス入力回路１３２，１３３は、特に制限されないが、図示を省略するアドレス入力バッファを有し、信号線を介してライトアドレスＡＤ（Ｗｃ），ＡＤ（Ｗｄ）が供給される。図示を省略するアドレス入力バッファの次段には、ライトアドレスのラッチ回路１３６，１３７が設けられている。ライトデータ入力回路１３４，１３５は、特に制限されないが、図示を省略するデータ入力バッファを有し、信号線を介してライトデータＤＩ（Ｗｃ），ＤＩ（Ｗｄ）が供給される。図示を省略するデータ入力バッファの次段には、ライトデータのラッチ回路１３８が、１３９が設けられている。ＲＡＭ１０，１１のアクセス動作は直列的に行われるので、予め並列的に供給されたライトアドレス及びライトデータをライト動作の開始まで保持するのに、前記ラッチ回路１３６〜１３９が設けられている。
【００３１】
前記タイミング発生回路１４は、図２に例示されるように、外部から供給されるクロック信号ＣＫの１サイクルに、ノンオーバーラップ３相の内部クロック信号φ１、φ２、φ３を生成すると共に、クロック信号φ１の立ち上がエッジに同期して立ち上がり前記クロック信号φ３の立ち下がりに同期して立ち下がるクロック信号φｃを出力する。前記クロック信号φ１〜φ３、φｃはクロック信号ＣＫと同信号ＣＫを遅延させた信号との論理積（負論理積）信号を基本とし、遅延時間を夫々相違させることによって形成することができる。前記ラッチ回路１３６〜１３９はクロック信号φｃのハイレベル期間にラッチ状態にされる。前記ラッチ回路１３６〜１３９をクロック信号φｃの立ち上がりエッジに同期してラッチ動作させてもよい。この場合には、クロック信号φｃはφ１で代替可能である。
【００３２】
論理回路１５は、クロック信号ＣＫの１サイクルから、クロック信号φ１、φ２、φ３に同期してＲＡＭ１０，１１のメモリサイクルを直列的に３サイクル生成する。具体的にはクロック信号φ１、φ２、φ３を入力する論理和ゲート１５０の出力φ１２３をＲＡＭ１０，１１のイネーブルクロック信号としてクロック入力端子ｃｋに供給する。これによってＲＡＭ１０，１１は信号φ１２３の立ち上がりエッジに同期してメモリサイクルを開始する。その時のＲＡＭ１０，１１の動作形態は論理和ゲート１５１の出力信号によって決定される。即ち、論理和ゲート１５１はクロック信号φ２、φ３の反転信号が供給されるから、信号φ１のハイレベルに同期するメモリサイクルはリードアクセス、信号φ２、φ３のハイレベルに同期するメモリサイクルはライトアクセスが指示される。信号φ１のハイレベルに同期するリードアクセスでは、論理積ゲート１５２，１５３と論理和ゲート１５４，１５５を介してリードアドレスＡＤ（Ｒａ）、ＡＤ（Ｒｂ）がＲＡＭ１０，１１のアドレス入力端子群ＡＩＰ、ＡＩＰに入力され、データＤＯ（Ｒａ）、ＤＯ（Ｒｂ）が並列出力される。信号φ２のハイレベルに同期するライトアクセスでは、論理積ゲート１５６，１５７と論理和ゲート１５８，１５９，１５４，１５５を介してライトアドレスＡＤ（Ｗｃ）及びライトデータＤＩ（Ｗｃ）が２個のＲＡＭ１０，１１に並列的に供給され、同一データの書込みが行なわれる。信号φ３のハイレベルに同期するライトアクセスでは、論理積ゲート１６０，１６１と論理和ゲート１５８，１５９，１５４，１５５を介してライトアドレスＡＤ（Ｗｄ）及びライトデータＤＩ（Ｗｄ）が２個のＲＡＭ１０，１１に並列的に供給され、同一データの書込みが行なわれる。
【００３３】
図２にはマルチポートメモリ１の動作タイミングが示されている。上述の説明から明らかなように、クロック信号φ１に同期する最初のメモリサイクルは、夫々異なるリードアドレスＡＤ（Ｒａ），ＡＤ（Ｒｂ）によるＲＡＭ１０，１１に対する並列的なリードサイクルである。これによってＲＡＭ１０，１１から別々のデータＤＯ（Ｒａ），ＤＯ（Ｒｂ）が並列的に読み出される。クロック信号φ２に同期する次のメモリサイクルは、ライトアドレスＡＤ（Ｗｃ）による双方のＲＡＭ１０，１１に対する並列的な同一ライトサイクルである。これによって双方のＲＡＭ１０，１１には夫々同一のライトアドレスＡＤ（Ｗｃ）に同一データＤＩ（Ｗｃ）が書き込まれる。クロック信号φ３に同期する最後のメモリサイクルは、ライトアドレスＡＤ（Ｗｄ）による双方のＲＡＭ１０，１１に対する並列的な同一ライトサイクルである。これによって双方のＲＡＭ１０，１１には夫々同一のライトアドレスＡＤ（Ｗｄ）に同一データＤＩ（Ｗｄ）が書き込まれる。２個のＲＡＭ１０，１１は夫々別々にリードポートを有するから、ライトアクセスに関し、個々のＲＡＭ１０，１１は同一データを保持しなければならない。
【００３４】
図３には前記RAM１０，１１の一例が示される。メモリアレイ１００は、リード・ライト可能なメモリセルＭＣがマトリクス配置され、メモリセルＭＣの選択端子が対応する行のワード線ＷＬに結合され、そのデータ入出力端子が対応する列のビット線ＢＬに結合される。ビット線ＢＬは実際には相補信号線である。メモリセルＭＣを選択するためのアドレス信号はアドレス入力端子群ＡＩＰからアドレス入力回路１０１に供給され、これがデコーダ１０２にて解読されることにより、ワード線選択信号とデータ線選択信号が形成される。ワード線選択信号はワードドライバ１０３に供給され、選択されるべきワード線がそれによって選択レベルに駆動される。データ線選択信号はカラムスイッチ回路１０４に供給され、それによって選択されるべきデータ線をコモンデータ線１０５に導通させる。コモンデータ線１０５はリード・ライト制御回路１０６に結合される。リード・ライト制御回路１０６は上記コモンデータ線１０５に導通されたメモリセルＭＣに対して読み出しを行うか書き込みを行うかを選択する。その動作はリード・ライト信号Ｒ／Ｗによって指示される。外部からの書き込みデータはデータ入力端子群ＤＩＰからデータ入力回路１０７に供給され、所定のタイミングを以ってリード・ライト制御回路１０６に供給される。メモリセルＭＣからコモンデータ線１５に読み出されたデータは所定のタイミングでリード・ライト制御回路１０６を介してセンスアンプ１０８に供給され、これによって増幅された読出しデータはその後段のデータ出力回路１０９から所定のタイミングでデータ出力端子群ＤＯＰに出力される。１１０はＲＡＭ１０（１１）のタイミング発生回路であり、クロック信号ｃｋに同期して内部の各種動作タイミング信号を発生する。クロック信号はＲＡＭ１０（１１）のイネーブルクロック信号とされ、例えば、その立ち上がりエッジ変化に同期して１メモリの内部動作を制御を活性化する。
【００３５】
上記マルチポートメモリ１によれば以下の作用効果を得ることができる。即ち、２個のシングルポートＲＡＭ１０，１１を用いて見掛上４ポートのマルチポートＲＡＭを実現できる。即ち、２個のＲＡＭ１０，１１を直列的に動作させて見掛上のポート数を４個としている。上記と同一機能を実現するために４個の２ポートＲＡＭを並列動作させる構成（図４の比較例に示される）を採用する必要はない。したがって、並列動作させるべきＲＡＭの数を少なくすることができ、従来に比べて低消費電力に寄与することができる。
【００３６】
しかも、ＲＡＭを複数個用いているので、個々のＲＡＭがシングルポートの場合でも、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。比較例として図５にはシングルポートＲＡＭに並列・直列変換回路を用いて擬似的に構成した２ポートＲＡＭが示され、図６にはその動作タイミングが示されている。この並列・直列変換回路を変更すれば擬似的に４ポートＲＡＭも実現できるが、その場合であっても、リード動作も含めて全てのアクセス動作は直列的とならざるを得ないから、図５の比較例の構成では擬似的なマルチポート数を増やすほどリードアクセスは遅れざるを得ない。
【００３７】
また、前記ＲＡＭ１０，１１は、読み出し動作の開始前にビット線レベルを所定レベルにプリチャージされる必要がある。このとき、外部クロック信号ＣＫで規定されるサイクル期間において、論理回路１５は、ＲＡＭ１０，１１に対するリード動作をライト動作に優先させる論理構成になっている。書込み動作では書き込みアンプでビット線をドライブすればよく、プリチャージ動作は必要ない。書込み動作をリード動作の前に行うと、読み出し動作の前にビット線プリチャージ動作を行わなければならない。したがって、リード動作をライト動作に優先させれば、リード動作とライト動作が連続される見掛け上のマルチポートアクセス時間を短縮することができる。
【００３８】
上記マルチポートメモリは１個の半導体チップに形成されているが、ＲＡＭ１０，１１に汎用ＲＡＭチップを用い、ポート拡張部１２をＴＴＬ回路等で構成することも可能である。このような場合、ポート拡張部１２の入力回路１３には入力バッファを設けなくてもよい。
【００３９】
《第２のマルチポートメモリ》
図７にはマルチポートメモリの第２の例として、２個の２ポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリが示される。同図に示されるマルチポートメモリ２は、２個のＲＡＭ２０，２１と各々のＲＡＭ２０，２１のアクセスポートに接続されたポート拡張部２２とを有する。
【００４０】
前記夫々のＲＡＭ２０，２１は相互に同一回路構成を有し、データ入出力端子と選択端子とを各々２組有するメモリセルを内蔵した所謂デュアルポートＲＡＭである。ＲＡＭ２０，２１が例えばＳＲＡＭであれば、メモリセルは例えば公知のスタティックラッチの入出力ノードに対して選択トランジスタを２組設けて構成することができる。
【００４１】
ＲＡＭ２０，２１は、特に制限されないが、ライトポートとリードポートとによってデュアルポートを構成する。ライトポートは、ライトアクセス用アドレス入力端子群ＡＩＰｗ、データ入力端子群ＤＩＰ、ライトイネーブル信号入力端子ＷＥを有する。リードポートはリードアクセス用アドレス入力端子群ＡＩＰｒ、データ出力端子群ＤＯＰ、リードイネーブル信号入力端子ＲＥを有する。ｃｋはクロック（イネーブルクロック）入力端子であり、ＲＡＭ２０，２１はクロック入力端子ｃｋの立ち上がりエッジに同期して内部メモリ動作を開始し、前記リードポートとライトポートを、完全並列で入出力動作させることができる。
【００４２】
前記ポート拡張部２２は、前記ＲＡＭ２０，２１をメモリサイクル毎に並列動作させるためのアクセス制御情報ＡＤ，ＤＩを複数メモリサイクル分まとめて入力可能とする入力回路２３と、外部から供給されるクロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号φ１、φ２、φｃを生成するタイミング発生回路（ＴＧ）２４と、前記入力回路２３のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭ２０，２１に並列的に供給可能な論理回路２５と、を有する。特に制限されないが、マルチポートメモリ１は１個の半導体チップに形成されているが、ＲＡＭ２０，２１とポート拡張部２２とを別々の半導体チップに構成することも可能である。
【００４３】
前記入力回路２３は、前記ＲＡＭ２０，２１（２ポートＲＡＭ２０，２１とも称する）の数（＝２）に夫々等しい数の、リードアドレス入力回路２３０、２３１と、ライトアドレス入力回路２３２，２３３と、ライトデータ入力回路２３４，２３５とを有する。アドレス入力回路２３０〜２３３の夫々のアドレス入力ビット数はＲＡＭ２０，２１のアドレス入力端子群ＡＩＰｗ（ＡＩＰｒ）のビット数に等しくされ、また、ライトデータ入力回路２３４，２３５のビット数も夫々前記ＲＡＭ２０，２１のデータ入力端子群ＤＩＰのビット数に等しくされている。
【００４４】
図７のマルチポートメモリ２では、ＲＡＭ２０，２１の出力端子群ＤＯＰと共にリードアドレス入力回路２３０、２３１が夫々１個づつリードアクセスポートを構成し、ライトアドレス入力回路２３２及びライトデータ入力回路２３４が１個のライトアクセスポートを構成し、ライトアドレス入力回路２３３及びライトデータ入力回路２３５がもう１個のライトアクセスポートを構成する。マルチポートメモリ２は見掛上、２個のライトポートと２個のリードポートを有する合計４ポートのＲＡＭを構成する。図１との相違点は、ＲＡＭ２０，２１が完全デュアルポートを持ち、リード動作とライト動作を完全に並列できることである。
【００４５】
前記リードアドレス入力回路２３０、２３１は、特に制限されないが、図示を省略するアドレス入力バッファを有し、信号線を介してリードアドレスＡＤ（Ｒａ），ＡＤ（Ｒｂ）が供給される。ライトアドレス入力回路２３２，２３３は、特に制限されないが、図示を省略するアドレス入力バッファを有し、信号線を介してライトアドレスＡＤ（Ｗｃ），ＡＤ（Ｗｄ）が供給される。図示を省略する一方のアドレス入力バッファの次段には、ライトアドレスのラッチ回路２３６が設けられている。ライトデータ入力回路２３４，２３５は、特に制限されないが、図示を省略するデータ入力バッファを有し、信号線を介してライトデータＤＩ（Ｗｃ），ＤＩ（Ｗｄ）が供給される。図示を省略する一方のデータ入力バッファの次段には、ライトデータのラッチ回路２３８が設けられている。メモリ２は２個のＲＡＭ２０，２１に夫々異なるリードポートを割り当てているから、何れのＲＡＭ２０，２１からも同一データを読み出せることを保証するため、双方のＲＡＭ２０，２１には同一アドレスに同一データを格納しておかなければならない。したがって、２個のＲＡＭ２０，２１に同一データを書き込む動作を直列的に行う場合、予め並列的に供給された２組のライトアドレス及びライトデータの内の一方を、後のライト動作の開始まで保持するために、前記ラッチ回路１３６〜１３９が設けられている。
【００４６】
前記タイミング発生回路２４は、図８に例示されるように、外部から供給されるクロック信号ＣＫの１サイクルに、ノンオーバーラップ２相の内部クロック信号φ１、φ２を生成すると共に、クロック信号φ１の立ち上がエッジに同期して立ち上がり前記クロック信号φ２の立ち下がりに同期して立ち下がるクロック信号φｃを出力する。前記クロック信号φ１，φ２、φｃは、図９に例示されるように、クロック信号ＣＫと同信号ＣＫを遅延させた信号との負論理積（論理積）信号を基本とし、遅延時間を夫々相違させることによって形成することができる。前記ラッチ回路２３６，２３８はクロック信号φｃのハイレベル期間にラッチ状態にされる。前記ラッチ回路２３６，２３８をクロック信号φｃの立ち上がりエッジに同期してラッチ動作させてもよい。この場合には、クロック信号φｃはφ１で代替可能である。
【００４７】
論理回路２５は、クロック信号ＣＫの１サイクルからクロック信号φ１、φ２に同期してＲＡＭ２０，２１のメモリサイクルを直列的に２サイクル生成する。具体的にはクロック信号φ１、φ２を入力する論理和ゲート２５０の出力φ１２をＲＡＭ２０，２１のイネーブルクロック信号としてクロック入力端子ｃｋに供給する。これによってＲＡＭ２０，２１は信号φ１２の立ち上がりエッジに同期してメモリサイクルを開始する。その時のＲＡＭ２０，２１の動作形態は、論理和ゲート２５０の出力信号によってライト動作の可否を決定し、前記クロック信号φ１によってリード動作の可否を決定する。即ち、信号φ１のハイレベルに同期するメモリサイクルはリードアクセスとライトアクセスが指示され、信号φ２のハイレベルに同期するメモリサイクルはライトアクセスが指示される。信号φ１のハイレベルに同期するリードアクセスでは、論理積ゲート２５２，２５３を介してリードアドレスＡＤ（Ｒａ）、ＡＤ（Ｒｂ）がＲＡＭ２０，２１のアドレス入力端子群ＡＩＰ、ＡＩＰに入力され、データＤＯ（Ｒａ）、ＤＯ（Ｒｂ）が並列出力される。また、これに並行する、信号φ１同期のライトアクセスでは、論理積ゲート２５４，２５５と論理和ゲート２５６，２５７を介してライトアドレスＡＤ（Ｗｃ）及びライトデータＤＩ（Ｗｃ）が２個のＲＡＭ２０，２１に並列的に供給され、同一データの書込みが行なわれる。信号φ２のハイレベルに同期するライトアクセスでは、論理積ゲート２５８，２５９と論理和ゲート２５６，２５７を介してライトアドレスＡＤ（Ｗｄ）及びライトデータＤＩ（Ｗｄ）が２個のＲＡＭ２０，２１に並列的に供給され、同一データの書込みが行なわれる。
【００４８】
図８にはマルチポートメモリ２の動作タイミングが示されている。上述の説明から明らかなように、クロック信号φ１に同期する最初のメモリサイクルは、相互に並列的に行われるリードアクセスサイクルと第１ライトアクセスサイクルである。リードアクセスサイクルは、夫々異なるリードアドレスＡＤ（Ｒａ），ＡＤ（Ｒｂ）によるＲＡＭ２０，２１に対する並列的なリードサイクルである。これによってＲＡＭ２０，２１から別々のデータＤＯ（Ｒａ），ＤＯ（Ｒｂ）が並列的に読み出される。前記第１ライトアクセスサイクルは、ライトアドレスＡＤ（Ｗｃ）による双方のＲＡＭ２０，２１に対する並列的な同一ライトサイクルである。これによって双方のＲＡＭ２０，２１には夫々同一のライトアドレスＡＤ（Ｗｃ）に同一データＤＩ（Ｗｃ）が書き込まれる。クロック信号φ２に同期するメモリサイクルは、ライトアドレスＡＤ（Ｗｄ）による双方のＲＡＭ２０，２１に対する並列的な同一ライトサイクルである。これによって双方のＲＡＭ２０，２１には夫々同一のライトアドレスＡＤ（Ｗｄ）に同一データＤＩ（Ｗｄ）が書き込まれる。
【００４９】
上記マルチポートメモリ２によれば以下の作用効果を得る。マルチポートメモリ２は、２個のデュアルポートＲＡＭ２０，２１を用いて見掛上４ポートのマルチポートＲＡＭを実現でき、４個の２ポートＲＡＭを並列動作させる構成を採用する必要はないから、並列動作させるべきＲＡＭの数を少なくすることができ、従来に比べて低消費電力に寄与することができる。しかも、ＲＡＭを複数個用いているので、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。また、前記ＲＡＭ２０，２１は、リード動作をライト動作に優先させるので、リード動作とライト動作が連続される見掛け上のマルチポートアクセス時間を短縮することができる。上記マルチポートメモリは１個の半導体チップに形成されているが、ＲＡＭ２０，２１に汎用ＲＡＭチップを用い、ポート拡張部２２をＴＴＬ回路等で構成することも可能である。このような場合、ポート拡張部２２の入力回路２３には入力バッファを設けなくてもよい。
【００５０】
《第３のマルチポートメモリ》
図１０にはマルチポートメモリの第３の例として、２個の２ポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリが示される。前記マルチポートメモリ２との相違点は各ポートに対するリードアクセスとライトアクセスを外部から任意に指定できることである。
【００５１】
同図に示されるマルチポートメモリ３は、２個のＲＡＭ３０，３１と各々のＲＡＭ３０，３１のアクセスポートに接続されたポート拡張部３２とを有する。
【００５２】
前記夫々のＲＡＭ３０，３１は相互に同一回路構成を有し、データ入出力端子と選択端子とを各々２組有するメモリセルを内蔵した所謂デュアルポートＲＡＭである。ＲＡＭ３０，３１が例えばＳＲＡＭであれば、メモリセルは例えば公知のスタティックラッチの入出力ノードに対して選択トランジスタを２組設けて構成することができる。
【００５３】
ＲＡＭ３０，３１は、特に制限されないが、リードアクセスとライトアクセスを任意に行うことができるポートを夫々２個づつ有する。各ポートは、アドレス入力端子群ＡＩＰ、データ入力端子群ＤＩＰ、データ出力端子群ＤＯＰ、ライトイネーブル端子ＷＥ、及びリードイネーブル端子ＲＥを一単位として有する。ｃｋはクロック（イネーブルクロック）入力端子であり、ＲＡＭ３０，３１はクロック入力端子ｃｋの立ち上がりエッジに同期して内部メモリ動作を開始し、完全並列で２個のアクセスポートを夫々動作させることができる。
【００５４】
前記ポート拡張部３２は、前記ＲＡＭ３０，３１をメモリサイクル毎に並列動作させるためのアクセス制御情報ＡＤ，ＤＩ，Ｒ／Ｗを複数メモリサイクル分まとめて入力可能とする入力回路３３と、外部から供給されるクロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号φ１、φ２、φｃを生成するタイミング発生回路（ＴＧ）３４と、前記入力回路３３のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭ３０，３１に並列的に供給可能な論理回路３５と、を有する。特に制限されないが、マルチポートメモリ１は１個の半導体チップに形成されているが、ＲＡＭ３０，３１とポート拡張部３２とを別々の半導体チップに構成することも可能である。
【００５５】
前記入力回路３３は、前記ＲＡＭ３０，３１（２ポートＲＡＭ３０，３１とも称する）の夫々のポートに対応して、アドレス入力回路３３０Ａ〜３３３Ａと、ライトデータ入力回路３３０Ｄ〜３３３Ｄと、リード・ライト信号入力回路３３０Ｃ〜３３３Ｃとを有する。アドレス入力回路３３０Ａ〜３３３Ａの夫々のアドレス入力ビット数はＲＡＭ３０，３１のアドレス入力端子群ＡＩＰのビット数に等しくされ、また、ライトデータ入力回路３３０Ｄ〜３３３Ｄのビット数も夫々前記ＲＡＭ３０，３１のデータ入力端子群ＤＩＰのビット数に等しくされている。
【００５６】
図１０のマルチポートメモリ３は、アドレス入力回路３３０Ａ、ライトデータ入力回路３３０Ｄ、リード・ライト信号入力回路３３０Ｃ及びデータ出力端子群ＤＯＰによって第１のポートを構成する。アドレス入力回路３３１Ａ、ライトデータ入力回路３３１Ｄ、リード・ライト信号入力回路３３１Ｃ及びデータ出力端子群ＤＯＰによって第２のポートを構成する。アドレス入力回路３３２Ａ、ライトデータ入力回路３３２Ｄ、リード・ライト信号入力回路３３２Ｃ及びデータ出力端子群ＤＯＰによって第３のポートを構成する。アドレス入力回路３３３Ａ、ライトデータ入力回路３３３Ｄ、リード・ライト信号入力回路３３３Ｃ及びデータ出力端子群ＤＯＰによって第４のポートを構成する。このように、マルチポートメモリ３は見掛上、リード・ライト可能な４個のアクセスポートを持つ、４ポートのＲＡＭを構成する。
【００５７】
前記アドレス入力回路３３０Ａ〜３３３Ａは、特に制限されないが、図示を省略するアドレス入力バッファを有し、それらには信号線を介してアドレス信号ＡＤ（１）〜ＡＤ（４）が供給され、供給されたアドレス信号をラッチするラッチ回路３３０ＡＬ〜３３３ＡＬを有する。ライトデータ入力回路３３０Ｄ〜３３３Ｄは、特に制限されないが、図示を省略するデータ入力バッファを有し、それらには信号線を介してライトデータＤＩ（１）〜ＤＩ（４）が供給され、供給されたライトデータ信号をラッチするラッチ回路３３０ＤＬ〜３３３ＤＬを有する。リード・ライト信号入力回路３３０Ｃ〜３３３Ｃは、特に制限されないが、図示を省略する制御信号入力バッファを有し、それらには信号線を介してリード・ライト信号Ｒ／Ｗ（１）〜Ｒ／Ｗ（４）が供給され、供給されたリード・ライト信号をラッチするラッチ回路３３０ＣＬ〜３３３ＣＬを有する。メモリ３は２個のＲＡＭ３０，３１に夫々異なるリードポートを割り当てているから、何れのＲＡＭ３０，３１からも同一データを読み出せることを保証するため、双方のＲＡＭ３０，３１には同一アドレスに同一データを格納しておかなければならない。したがって、２個のＲＡＭ３０，３１に同一データを書き込む動作を直列的に行う場合、予め並列的に供給された２組のライトアドレス及びライトデータ等の内の一方を、後のライト動作の開始まで保持するために、前記ラッチ回路３３０ＡＬ〜３３３ＡＬ、３３０ＤＬ〜３３３ＤＬ、３３０ＣＬ〜３３３ＣＬが設けられている。
【００５８】
前記タイミング発生回路３４は、図１１に例示されるように、外部から供給されるクロック信号ＣＫの１サイクルに、ノンオーバーラップ２相の内部クロック信号φ１、φ２を生成すると共に、クロック信号φ１の立ち上がエッジに同期して立ち上がり前記クロック信号φ２の立ち下がりに同期して立ち下がるクロック信号φｃを出力する。前記クロック信号φ１，φ２、φｃは、クロック信号ＣＫと同信号ＣＫを遅延させた信号との負論理積（論理積）信号を基本とし、遅延時間を夫々相違させることによって形成することができる。前記ラッチ回路３３０ＡＬ〜３３３ＡＬ、３３０ＤＬ〜３３３ＤＬ、３３０ＣＬ〜３３３ＣＬはクロック信号φｃのハイレベル期間にラッチ状態にされる。前記ラッチ回路３３０ＡＬ〜３３３ＡＬ、３３０ＤＬ〜３３３ＤＬ、３３０ＣＬ〜３３３ＣＬをクロック信号φｃの立ち上がりエッジに同期してラッチ動作させてもよい。この場合には、クロック信号φｃはφ１で代替可能である。
【００５９】
論理回路３５は、クロック信号ＣＫの１サイクルからクロック信号φ１、φ２に同期してＲＡＭ２０，２１のメモリサイクルを直列的に２サイクル生成する。具体的にはクロック信号φ１、φ２を入力する論理和ゲート３５０の出力φ１２をＲＡＭ３０，３１のイネーブルクロック信号としてクロック入力端子ｃｋに供給する。これによってＲＡＭ３０，３１は信号φ１２の立ち上がりエッジに同期してメモリサイクルを開始する。
【００６０】
その時のＲＡＭ３０，３１の動作形態は、図１１に示される通りとされる。すなわち、ＲＡＭ３０，３１のリードサイクル（ＲＥ＝“１”で指示される）はクロック信号φ1に同期する前半のメモリサイクルで選択可能にされ、ライトサイクル（ＷＥ＝“１”で指示される）はクロック信号φ1、φ２の双方のメモリサイクルで選択可能にされる。実際にそれが選択されるか否かは信号Ｒ／Ｗ（１）〜Ｒ／Ｗ（４）によって制御される。また、並列的に供給されるアドレス信号ＡＤ（１）〜ＡＤ（４）は2個のＲＡＭ３０，３１のアクセスポートに対して次のように供給される。φ１同期のメモリサイクルでは、ＲＡＭ３０の2ポートにはＡＤ（１），ＡＤ（２）が割り当てられ、ＲＡＭ３１の2ポートにはＡＤ（３），ＡＤ（４）が割り当てられる。φ２同期のメモリサイクルでは、ＲＡＭ３０の2ポートにはＡＤ（３），ＡＤ（４）が供給され、ＲＡＭ３１の2ポートにはＡＤ（１），ＡＤ（２）が与えられる。したがって、信号Ｒ／Ｗ１〜Ｒ／Ｗ４によって4ポートの全てにリード動作が指示されると、図１１に例示されるようにφ１同期のメモリサイクルでＲＡＭ３０，３１の各ポートに別々のアドレス信号ＡＤ（１）〜Ｄ（４）が供給され、ＲＡＭ３０，３１の合計4個のポートから所望のリードデータが並列的に出力される。ライトアクセスでは双方のＲＡＭ３０，３１の同一アドレスに同一データを保持させなければならないから、φ１同期のメモリサイクルでＲＡＭ３０、３１に与えられたアドレス信号と書き込みデータは、必ずφ２同期のメモリサイクルで前記とは異なるＲＡＭ３１，３０に与えられる。例えば、アドレス信号ＡＤ（１）、ＡＤ（２）に対するライトアクセスが指示された場合、φ１同期のメモリサイクルではＲＡＭ３０にアドレス信号ＡＤ（１）、ＡＤ（２）とライトデータＤＩ（１），ＤＩ（２）が与えられ、φ２同期のメモリサイクルではＲＡＭ３１にアドレス信号ＡＤ（１）、ＡＤ（２）とライトデータＤＩ（１），ＤＩ（２）が与えられ、これによって双方のＲＡＭ３１，３０の同一アドレスに同一データが書き込まれる。
【００６１】
図１１にはマルチポートメモリ３の動作タイミングが示されている。上述の説明から明らかなように、アドレス信号ＡＤ（１）〜ＡＤ（４）の全てに対してリード動作が指示されている場合にはクロック信号φ１に同期するメモリサイクルではＲＡＭ３０，３１に対して４ポート独立のリード動作が並列的に行われる。
【００６２】
アドレス信号ＡＤ（１）に対してリード動作が指示され、アドレス信号ＡＤ（２）〜ＡＤ（４）に対してライト動作が指示されている場合、クロック信号φ１に同期するメモリサイクルでは、ＲＡＭ３０の一つのポートにはアドレス信号ＡＤ（１）によるリード動作が行われ、ＲＡＭ３０の他方のポートにはアドレスＡＤ（２）による書き込み動作が行われ、ＲＡＭ３１に対する双方のポートにはアドレス信号ＡＤ（３）、ＡＤ（４）による書き込みが並列に行われる。次のクロック信号φ２に同期するメモリサイクルでは、ＲＡＭ３０の双方のポートにはアドレス信号ＡＤ（３）、ＡＤ（４）によるライト動作が並列に行われ、ＲＡＭ３１の一方のポートにはアドレスＡＤ（２）による書き込み動作が行われる。
【００６３】
アドレス信号ＡＤ（１）、ＡＤ（２）に対してリード動作が指示され、アドレス信号ＡＤ（３）、ＡＤ（４）に対してライト動作が指示されている場合、クロック信号φ１に同期するメモリサイクルでは、ＲＡＭ３０の双方のポートにはアドレス信号ＡＤ（１）、ＡＤ（２）によるリード動作が行われ、ＲＡＭ３１に対する双方のポートにはアドレス信号ＡＤ（３）、ＡＤ（４）による書き込みが並列に行われる。次のクロック信号φ２に同期するメモリサイクルでは、ＲＡＭ３０の双方のポートにはアドレス信号ＡＤ（３）、ＡＤ（４）によるライト動作が並列に行われ、ＲＡＭ３１に対するアクセスは行われない。
【００６４】
図１２には前記ＲＡＭ３０のメモリセル及びカラム系回路の一例が示される。メモリセルはｐチャンネルＭＯＳトランジスタＭＰ１、ＭＰ２とｎチャンネルＭＯＳトランジスタＭＮ１，ＭＮ２とから成るスタティックラッチを有する。スタティックラッチの入出力ノード（記憶ノード）は、ｎチャンネル型の選択ＭＯＳトランジスタＭＮ３Ａ，ＭＮ３Ｂを介して相補ビット線ＢＬ１ｔ，ＢＬ１ｂに接続され、ｎチャンネル型の選択ＭＯＳトランジスタＭＮ４Ａ，ＭＮ４Ｂを介して相補ビット線ＢＬ２ｔ，ＢＬ２ｂに接続される。前記ＭＯＳトランジスタＭＮ３Ａ，ＭＮ３Ｂのゲートはワード線ＷＬ２に接続され、前記ＭＯＳトランジスタＭＮ４Ａ，ＭＮ４Ｂのゲートはワード線ＷＬ１に接続されている。
【００６５】
前記相補ビット線ＢＬ１ｔ，ＢＬ１ｂは代表的に示されたｐチャンネル型のカラムスイッチＭＯＳトランジスタＭＰ１４，ＭＰ１５を経てコモンデータ線ＣＤｔ，ＣＤｂに接続される。コモンデータ線ＣＤｔ，ＣＤｂはセンスアンプＳＡに接続され、センスアンプＳＡの出力ＤＯｉｔ，ＤＯｉｂが外部に出力可能にされる。カラムスイッチＭＯＳトランジスタＭＰ１４，ＭＰ１５は図示を省略するカラムアドレスデコーダによるデコード信号の１つであるカラムリードセレクト信号ＹＳｉｒによってスイッチ制御される。
【００６６】
ｐチャンネル型のＭＯＳトランジスタＭＰ１０，ＭＰ１１はビット線プリチャージと共にデータ書き込みにも利用される。ＤＩｉｔ，ＤＩｉｂは書き込みデータが伝達される相補書き込み信号線である。前記ＭＯＳトランジスタＭＰ１０，ＭＰ１１のゲートにはナンドゲートＮＡＮＤ１、ＮＡＮＤ２の出力が結合される。ナンドゲートＮＡＮＤ１，ＮＡＮＤ２の一方の入力端子には前記カラムリードセレクト信号ＹＳｉｒの反転信号が供給され、また、ナンドゲートＮＡＮＤ１，ＮＡＮＤ２の他方の入力端子にはカラムライト非選択状態（ＹＳｉｗ＝ローレベル）においてオン動作されるｐチャンネルＭＯＳトランジスタＭＰ１２，ＭＰ１３が接続され、これにより、カラムリード非選択状態（ＹＳｉｒ＝ローレベル）及びカラムライト非選択状態ではＭＯＳトランジスタＭＰ１０，ＭＰ１１がオン状態にされ、ビット線ＢＬ１ｔ，ＢＬ１ｂのプリチャージが行われる。
【００６７】
リードアクセスにおけるカラムリード選択状態、即ちカラムリードセレクト信号ＹＳｉｒが選択レベル（ＹＳｉｒ＝ハイレベル）にされると、プリチャージ動作が停止される。
【００６８】
ライトアクセスにおけるカラムライト選択状態、即ちカラムライトセレクト信号ＹＳｉｗが選択レベル（ＹＳｉｒ＝ハイレベル）にされる場合には、前記プルアップＭＯＳトランジスタＭＰ１２，ＭＰ１３がカットオフされる。更に、書き込み信号線ＤＩｉｔ，ＤＩｉｂの相補信号の状態に応じて、ＭＯＳトランジスタＭＮ１０，ＭＮ１１の一方がオン状態にされ、また、ＭＯＳトランジスタＭＮ１２，ＭＮ１３の一方がオン動作される。ＭＯＳトランジスタＭＰ１０，ＭＰ１１の一方がオン状態にされると一方のビット線が電源電圧Ｖｄｄに向けてドライブされ、ＭＯＳトランジスタＭＮ１２，ＭＮ１３の一方がオン動作されると他方のビット線が接地電圧Ｖｓｓに向けてドライブされる。これによって、相補ビット線ＢＬｔ，ＢＬｂが書き込みデータに従って駆動される。
【００６９】
図１３には図１２の回路におけるリードアクセスとライトアクセスの動作タイミング図の一例が示される。前記ＲＡＭ３０，３１は、読み出し動作の開始前にビット線レベルを所定レベルにプリチャージされる必要がある。このとき、外部クロック信号ＣＫで規定されるサイクル期間において、論理回路１５は、ＲＡＭ３０，３１に対するリード動作をライト動作に優先させる論理構成になっている。書込み動作では書き込みアンプでビット線をドライブすればよく、プリチャージ動作は必要ない。書込み動作をリード動作の前に行うと、読み出し動作の前にビット線プリチャージ動作を行わなければならない。したがって、リード動作をライト動作に優先させれば、リード動作とライト動作の間隔時間を最小限とすることができる。
【００７０】
上記マルチポートメモリ３によれば以下の作用効果を得る。マルチポートメモリ３は、２個のデュアルポートＲＡＭ３０，３１を用いて見掛上４ポートのマルチポートＲＡＭを実現でき、４個の２ポートＲＡＭを並列動作させる構成を採用する必要はないから、並列動作させるべきＲＡＭの数を少なくすることができ、従来に比べて低消費電力に寄与することができる。しかも、ＲＡＭを複数個用いているので、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。また、前記ＲＡＭ３０，３１は、リード動作をライト動作に優先させるので、リード動作とライト動作が連続される見掛け上のマルチポートアクセス時間を短縮することができる。上記マルチポートメモリは１個の半導体チップに形成されているが、ＲＡＭ３０，３１に汎用ＲＡＭチップを用い、ポート拡張部３２をＴＴＬ回路等で構成することも可能である。このような場合、ポート拡張部３２の入力回路３３には入力バッファを設けなくてもよい。
【００７１】
《第４のマルチポートメモリ》
図１４にはマルチポートメモリの第４の例として、２個の２ポートＲＡＭを用いて見掛け上８ポートＲＡＭとして機能されるマルチポートメモリが示される。
【００７２】
同図に示されるマルチポートメモリ４は、２個のＲＡＭ４０，４１と各々のＲＡＭ４０，４１のアクセスポートに接続されたポート拡張部４２とを有する。
【００７３】
前記夫々のＲＡＭ４０，４１は相互に同一回路構成を有し、データ入出力端子と選択端子とを各々２組有するメモリセルを内蔵した所謂デュアルポートＲＡＭである。ＲＡＭ４０，４１が例えばＳＲＡＭであれば、メモリセルは例えば公知のスタティックラッチの入出力ノードに対して選択トランジスタを２組設けて構成することができる。具体的な回路構成は図１２と同一にすることができる。
【００７４】
ＲＡＭ４０，４１は、特に制限されないが、リードアクセスとライトアクセスを任意に行うことができるポートＰＯＲＴ１、ＰＯＲＴ２を有する。各ポートＰＯＲＴ１、ＰＯＲＴ２は、アドレス入力端子群ＡＩＰ、データ入力端子群ＤＩＰ、データ出力端子群ＤＯＰ、リード・ライト端子Ｒ／Ｗを一単位として有する。ｃｋはクロック（イネーブルクロック）入力端子であり、ＲＡＭ４０，４１はクロック入力端子ｃｋの立ち上がりエッジに同期して内部メモリ動作を開始し、完全並列で２個のアクセスポートＰＯＲＴ１、ＰＯＲＴ２を夫々動作させることができる。
【００７５】
前記ポート拡張部４２は、前記ＲＡＭ４０，４１をメモリサイクル毎に並列動作させるためのアクセス制御情報ＡＤ，ＤＩを複数メモリサイクル分まとめて入力可能とする入力回路４３と、外部から供給されるクロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な内部クロック信号φ１、φ２、φ３、φｃを生成するタイミング発生回路（ＴＧ）４４と、前記入力回路４３のアクセス制御情報を前記内部クロック信号に同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭ４０，４１に並列的に供給可能な論理回路４５と、を有する。特に制限されないが、マルチポートメモリ４は１個の半導体チップに形成されているが、ＲＡＭ４０，４１とポート拡張部４２とを別々の半導体チップに構成することも可能である。
【００７６】
前記入力回路４３は、前記各ＲＡＭ４０，４１（２ポートＲＡＭ４０，４１とも称する）のポート数の２倍である４個づつ、リードアドレス入力回路４３０Ｒ〜３３３Ｒ、ライトアドレス入力回路４３０Ｗ〜４３３Ｗ、及びライトデータ入力回路４３０Ｄ〜４３３Ｄを有する。前記アドレス入力回路４３０Ｒ〜４３３Ｒ、４３０Ｗ〜４３３Ｗの夫々のアドレス入力ビット数はＲＡＭ４０，４１のアドレス入力端子群ＡＩＰのビット数に等しくされ、また、ライトデータ入力回路４３０Ｄ〜４３３Ｄのビット数も夫々前記ＲＡＭ４０，４１のデータ入力端子群ＤＩＰのビット数に等しくされている。
【００７７】
図１４のマルチポートメモリ４は、リードアドレス入力回路４３０Ｒ〜４３３Ｒの一つと一つのデータ出力端子群ＤＯＰとによってリードポートを構成し合計４個のリードポートを有する。また、マルチポートメモリ４は、ライトアドレス入力回路４３０Ｗ〜４３３Ｗの一つとライトデータ入力回路４３０Ｄ〜４３３Ｄの一つとによってライトポートを構成し合計４個のライトポートを有する。このように、マルチポートメモリ４は見掛上、４個のリードポートと４個のライトポートを持つ、８ポートのＲＡＭを構成する。
【００７８】
前記リードアドレス入力回路４３０Ｒ〜４３３Ｒは、特に制限されないが、図示を省略するアドレス入力バッファを有し、それらには信号線を介してアドレス信号ＡＤ（Ｒ１）〜ＡＤ（Ｒ４）が供給される。前記ライトアドレス入力回路４３０Ｗ〜４３３Ｗは、特に制限されないが、図示を省略するアドレス入力バッファを有し、それらには信号線を介してライトアドレス信号ＡＤ（Ｗ１）〜ＡＤ（Ｗ４）が供給され、供給されたライトアドレス信号をラッチするラッチ回路４３０ＷＬ〜４３３ＷＬを有する。前記ライトデータ入力回路４３０Ｄ〜４３３Ｄは、特に制限されないが、図示を省略するデータ入力バッファを有し、それらには信号線を介してライトデータＤＩ（Ｗ１）〜ＤＩ（Ｗ４）が供給され、供給されたライトデータ信号をラッチするラッチ回路４３０ＤＬ〜４３３ＤＬを有する。メモリ４は２個のＲＡＭ４０，４１に夫々異なるリードポートを割り当てているから、何れのＲＡＭ４０，４１からも同一データを読み出せることを保証するため、双方のＲＡＭ４０，４１には同一アドレスに同一データを格納しておかなければならない。したがって、２個のＲＡＭ４０，４１に同一データを書き込む動作を直列的に行う場合、予め並列的に供給された４組のライトアドレスＡＤ（Ｗ１）〜ＡＤ（Ｗ４）及びライトデータＤＩ（Ｗ１）〜ＤＩ（Ｗ４）を、後のライト動作の開始まで保持するために、前記ラッチ回路４３０ＡＬ〜４３３ＡＬ、４３０ＤＬ〜４３３ＤＬが設けられている。
【００７９】
前記タイミング発生回路４４は、図１５に例示されるように、外部から供給されるクロック信号ＣＫの１サイクルに、ノンオーバーラップ３相の内部クロック信号φ１、φ２、φ３を生成すると共に、クロック信号φ１の立ち上がエッジに同期して立ち上がり前記クロック信号φ３の立ち下がりに同期して立ち下がるクロック信号φｃを出力する。前記クロック信号φ１，φ２、φ３、φｃは、クロック信号ＣＫと同信号ＣＫを遅延させた信号との負論理積（論理積）信号を基本とし、遅延時間を夫々相違させることによって形成することができる。前記ラッチ回路４３０ＷＬ〜４３３ＷＬ、４３０ＤＬ〜４３３ＤＬはクロック信号φｃのハイレベル期間にラッチ状態にされる。前記ラッチ回路４３０ＷＬ〜４３３ＷＬ、４３０ＤＬ〜４３３ＤＬをクロック信号φｃの立ち上がりエッジに同期してラッチ動作させてもよい。この場合には、クロック信号φｃはφ１で代替可能である。
【００８０】
論理回路４５は、クロック信号ＣＫの１サイクルからクロック信号φ１、φ２、φ３に同期してＲＡＭ４０，４１のメモリサイクルを直列的に３サイクル生成する。具体的にはクロック信号φ１、φ２、φ３を入力する論理和ゲート４５０の出力クロック信号φ１２３をＲＡＭ４０，４１のイネーブルクロック信号としてクロック入力端子ｃｋに供給する。これによってＲＡＭ４０，４１は信号φ１２３の立ち上がりエッジに同期してメモリサイクルを開始する。その時のＲＡＭ４０，４１の動作形態は論理和ゲート４５１の出力信号によって決定される。即ち、論理和ゲート４５１はクロック信号φ２、φ３の反転信号が供給されるから、信号φ１のハイレベルに同期するメモリサイクルにはリードアクセスを、信号φ２、φ３のハイレベルに同期するメモリサイクルにはライトアクセスを指示する。
【００８１】
信号φ１のハイレベルに同期するリードアクセスにおいて、ＲＡＭ４０では、論理積ゲート４５２，４５３と論理和ゲート４５４，４５５を介してリードアドレスＡＤ（Ｒ１）、ＡＤ（Ｒ２）がＲＡＭ４０のアドレス入力端子群ＡＩＰ、ＡＩＰに入力され、データＤＯ（Ｒ１）、ＤＯ（Ｒ２）が並列出力される。同様に、信号φ１のハイレベルに同期するリードアクセスにおいて、ＲＡＭ４１では、論理積ゲート４５６，４５７と論理和ゲート４５８，４５９を介してリードアドレスＡＤ（Ｒ３）、ＡＤ（Ｒ４）がＲＡＭ４１のアドレス入力端子群ＡＩＰ、ＡＩＰに入力され、データＤＯ（Ｒ３）、ＤＯ（Ｒ４）が並列出力される。
【００８２】
信号φ２のハイレベルに同期するライトアクセスにおいて、ＲＡＭ４０，４１の夫々のポートＰＯＲＴ１には、書き込みアドレスＡＤ（Ｗ１）と書き込みデータＤＩ（Ｗ１）がラッチ回路４３０ＷＬ，４３０ＤＬから、論理積ゲート４６０，４６１、論理和ゲート４５４，４５８，４６４，４７０を介して供給され、ＲＡＭ４０，４１の夫々のポートＰＯＲＴ２には、書き込みアドレスＡＤ（Ｗ２）と書き込みデータＤＩ（Ｗ２）がラッチ回路４３１ＷＬ，４３１ＤＬから、論理積ゲート４６２，４６３、論理和ゲート４５５，４５９，４６５，４７１を介して供給され、これによって、ＲＡＭ４０とＲＡＭ４１とには双方のデータＤＩ（Ｗ１），ＤＩ（Ｗ２）が並列に書き込まれる。
【００８３】
信号φ３のハイレベルに同期するライトアクセスにおいて、ＲＡＭ４０，４１の夫々のポートＰＯＲＴ１には、書き込みアドレスＡＤ（Ｗ３）と書き込みデータＤＩ（Ｗ３）がラッチ回路４３２ＷＬ，４３２ＤＬから、論理積ゲート４６６，４６７、論理和ゲート４５４，４５８，４６４，４７０を介して供給され、ＲＡＭ４０，４１の夫々のポートＰＯＲＴ２には、書き込みアドレスＡＤ（Ｗ４）と書き込みデータＤＩ（Ｗ４）がラッチ回路４３３ＷＬ，４３３ＤＬから、論理積ゲート４６８，４６９、論理和ゲート４５５，４５９，４６５，４７１を介して供給され、これによって、ＲＡＭ４０とＲＡＭ４１とには双方のデータＤＩ（Ｗ３），ＤＩ（Ｗ４）が並列に書き込まれる。
【００８４】
図１５にはマルチポートメモリ４の動作タイミングが示されている。図１６にはφ１〜φ３に同期する各メモリサイクルにおけるＲＡＭ４０，４１の各ポートの入出力状態が示される。上述の説明から明らかなように、クロック信号φ１に同期する最初のメモリサイクルは、夫々異なるリードアドレスＡＤ（Ｒ１）〜ＡＤ（Ｒ４）によるＲＡＭ４０，４１の４つのポートに対する並列的なリードサイクルである。これによってＲＡＭ４０，４１から別々のデータＤＯ（Ｒ１）〜ＤＯ（Ｒ４）が並列的に読み出される。クロック信号φ２に同期する次のメモリサイクルは、夫々のＲＡＭ４０，４１が持つ２ポートＰＯＲＴ１，ＰＯＲＴ２に対するアドレスＡＤ（Ｗ１）、ＡＤ（Ｗ２）によるデータＤＩ（Ｗ１），ＤＩ（Ｗ２）の並列ライトサイクルとされる。これによってＲＡＭ４０及びＲＡＭ４１の同一ライトアドレスＡＤ（Ｗ１）、ＡＤ（Ｗ２）には同一データＤＩ（Ｗ１），ＤＩ（Ｗ２）が書き込まれる。クロック信号φ３に同期する次のメモリサイクルは、夫々のＲＡＭ４０，４１が持つ２ポートＰＯＲＴ１，ＰＯＲＴ２に対するアドレスＡＤ（Ｗ３）、ＡＤ（Ｗ４）によるデータＤＩ（Ｗ３），ＤＩ（Ｗ４）の並列ライトサイクルとされる。これによってＲＡＭ４０及びＲＡＭ４１の同一ライトアドレスＡＤ（Ｗ３）、ＡＤ（Ｗ４）には同一データＤＩ（Ｗ３），ＤＩ（Ｗ４）が書き込まれる。
【００８５】
上記マルチポートメモリ４によれば以下の作用効果を得る。マルチポートメモリ４は、２個のデュアルポートＲＡＭ４０，４１を用いて見掛上８ポートのマルチポートＲＡＭを実現でき、４個の２ポートＲＡＭを並列動作させる構成を採用する必要はないから、並列動作させるべきＲＡＭの数を少なくすることができ、従来に比べて低消費電力に寄与することができる。しかも、ＲＡＭを複数個用いているので、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。また、前記ＲＡＭ４０，４１は、リード動作をライト動作に優先させるので、リード動作とライト動作が連続される見掛け上のマルチポートアクセス時間を短縮することができる。上記マルチポートメモリは１個の半導体チップに形成されているが、ＲＡＭ４０，４１に汎用ＲＡＭチップを用い、ポート拡張部４２をＴＴＬ回路等で構成することも可能である。このような場合、ポート拡張部４２の入力回路４３には入力バッファを設けなくてもよい。
【００８６】
《データプロセッサ》
図１７にはデータプロセッサの一例が示される。同図に示されるデータプロセッサ５は、特に制限されないが、半導体チップに、ＣＰＵ５０と共にポート拡張回路５２、ＲＯＭ５１、その他の入出力回路（Ｉ／Ｏ）５３、及びクロックパルスジェネレータ（ＣＰＧ）５６等を備えて構成される。５４で示されるものは、アドレス、データ及び制御信号等の内部バスである。５５で示されるものは、アドレス、データ及び制御信号等の外部バスである。
【００８７】
ポート拡張回路５２は、前記ポート拡張回路１５、２５，３５，４５と同様の回路構成を有する。即ち、ポート拡張回路５２は、バス５４を介してＣＰＵ５０に接続され、且つ外部に設けられる複数個のＲＡＭチップ６０〜６２のアクセスポートに接続され、前記複数個のＲＡＭチップ６０〜６２を見掛上単一のマルチポートメモリとしてアクセス可能にするものである。ポート拡張回路５２は、前記複数個のＲＡＭチップ６０〜６２をメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路５２１と、データプロセッサ５の同期クロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な前記制御クロック信号φ１、φ２等を生成するタイミング発生回路（ＴＧ）５２０と、前記入力回路５２１のアクセス制御情報を前記制御クロック信号φ、φ２などに同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭチップ６０〜６２に並列的に供給可能な論理回路５２２とを有して成る。前記同期クロック信号ＣＫは、ＰＬＬなどを用いて構成されたＣＰＧ５６から出力される。
【００８８】
データプロセッサ５は、図示を省略する実装ボードのような回路基板に搭載され、同じく当該回路基板に搭載された複数個のＲＡＭチップ６０〜６２が前記ポート拡張回路５２に接続され、それらＲＡＭチップ６０〜６２はデータプロセッサ５によってアクセス制御される。外部インタフェース回路として前記ポート拡張回路５２を備えたデータプロセッサ５を用いれば、ＤＲＡＭやＳＤＲＡＭなどのシングルポート又はデュアルポートの汎用ＲＡＭチップを用いて、見掛け上必要な数のリードポートを備えたマルチポートメモリを容易に実現できる。そのようにして実現されるマルチポートメモリは機能上、上記マルチポートメモリ１，２，３，４と同一機能を発揮する。更に、多ポートメモリを用いるデータ処理システムの電力消費量を低減することができる。
【００８９】
前記ＲＡＭチップ６０〜６２を半導体チップに搭載してデータプロセッサを構成することも可能である。このとき、前記ＲＡＭチップ６０〜６２は、それと実質的に同一のマスクパターンを用いて、換言すれば、同一のレイアウトパターン設計データライブラリを用いて、共通の半導体チップに形成される。
【００９０】
図１７の構成に対してＲＡＭチップを半導体チップ上に搭載した回路はデータプロセッサに限定されず、データバッファとして多ポートＲＡＭを備えた通信制御用若しくはプロトコル制御用のコントローラなどの半導体集積回路に適用することも可能である。
【００９１】
《データ処理システム》
図１８にはポート拡張回路を用いて多ポートメモリを構成したデータ処理システムの一例が示される。同図に示されるデータ処理システムは、特に制限されないが、マイクロプロセッサ６２、グラフィックコントローラ６０、ポート拡張回路６１、複数個のＲＡＭチップ６３、及び表示装置６４を備えて構成される。６５で示されるものは、アドレス、データ及び制御信号等のバスである。
【００９２】
前記ＲＡＭチップ６３には汎用シングルポート又はデュアルポートのＲＡＭチップを用いることができ、それらはポート拡張回路６１によって多ポートメモリとして機能できるようにされ、フレームバッファメモリ６６として利用される。
【００９３】
グラフィックコントローラ６０は描画プロセッサ６００、表示プロセッサ６０２、及び制御部６０１を有し、ＭＰＵ６２からのコマンド及び表示データなどを制御部６０１が受け取る。制御部６０１は、受け取ったコマンドの解読結果に従って、描画プロセッサ６００を制御して、ＲＡＭチップ６３に描画アドレスと描画データを出力させる。また、制御部６０１は、受け取ったコマンドの解読結果に従って、表示プロセッサ６０２を制御して、ＲＡＭチップ６３に描画された表示データを表示装置６４に出力させる。表示装置はＲＡＭチップ６３から供給される表示フレームの表示データに従ってラスタスキャン方式でディスプレイを表示駆動する。
【００９４】
ポート拡張回路６１は、前述のポート拡張回路１５、２５，３５，４５と同様の回路構成を有する。即ち、ポート拡張回路６１は、グラフィックコントローラ６０に接続され、且つ複数個のＲＡＭチップ６３のアクセスポートに接続され、前記複数個のＲＡＭチップ６３を見掛上単一のマルチポートメモリとしてアクセス可能にするものである。ポート拡張回路６１は、前記複数個のＲＡＭチップ６３をメモリサイクル毎に並列動作させるためのアクセス制御情報を複数メモリサイクル分まとめて入力可能とする入力回路と、グラフィックコントローラ６０の同期クロック信号ＣＫの１サイクルの期間に前記メモリサイクルを直列的に複数回規定可能な前記制御クロック信号φ１、φ２等を生成するタイミング発生回路と、前記入力回路のアクセス制御情報を前記制御クロック信号φ、φ２などに同期する直列的なメモリサイクル毎に分けて順次複数個のＲＡＭチップ６３に並列的に供給可能な論理回路とを有して成る。このポート拡張回路６１は、半導体集積回路化されたもの、或いはＴＴＬ回路などで構成されたものを利用することができる。尚、フレームバッファに対する描画のためのライトアクセスと表示ためのリードアクセスが専ら非同期で行なわれる場合は、ポート拡張回路６１には図１０で説明しポート拡張回路３２を採用することが望ましい。ポート拡張回路３２はポートのリード・ライトを任意に指定できるからである。
【００９５】
図１８に示されるデータ処理システムにおいて、ポート拡張回路６１を用いれば、ＤＲＡＭやＳＤＲＡＭなどのシングルポート又はデュアルポートの汎用ＲＡＭチップを用いて、見掛け上必要な数のリードポートを備えたマルチポートメモリを容易に実現できる。そのようにして実現されるマルチポートメモリは機能上、上記マルチポートメモリ１，２，３，４と同一機能を発揮する。したがって、ディスプレイサイズに応じたフレームバッファをＤＲＡＭやＳＤＲＡＭなどのシングルポート又はデュアルポートの汎用ＲＡＭチップを用いて容易に実現できる。更に、多ポートメモリを用いるデータ処理システムの電力消費量を低減することができる。
【００９６】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００９７】
例えば、バスマスタモジュールはＣＰＵ，マイクロプロセッサ、グラフィックコントローラに限定されず、プロトコルコントローラ、ダイレクトメモリアクセスコントローラなどであってもよい。また、前述のＲＡＭチップ及びＲＡＭモジュールは、シングルポートＲＡＭであっても、データ入力端子とデータ出力端子を別々の外部端子としているが、並列アクセスされる端子でなければ、共通のデータ入出力端子として構成してもよい。
【００９８】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である多ポートメモリ、データプロセッサ、表示システムなどに適用した場合について説明したが、それらは、パーソナルコンピュータやワークステーションなどのコンピュータシステム等に広く適用することができる。
【００９９】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【０１００】
すなわち、個々のＲＡＭを直列的に動作させて見掛上のマルチポート数を増やすから、並列動作させるべきＲＡＭの数を減らすことができ、従来に比べて低消費電力に寄与することができる。しかも、ＲＡＭを複数個用いているので、個々のＲＡＭがシングルポートの場合でも、リードアクセスに関しては個々のＲＡＭを実質的に並列アクセスすることができ、外部からの見掛上の並列リードアクセスの遅れを改善できる。
【０１０１】
外部インタフェース回路として前記ポート拡張回路を備えたデータプロセッサを用いれば、ＤＲＡＭやＳＤＲＡＭなどのシングルポート又はデュアルポートの汎用ＲＡＭチップを用いて、見掛け上必要な数のリードポートを備えたマルチポートメモリを容易に実現できる。
【０１０２】
ポート拡張回路を用いてデータ処理システムを構成すれば、多ポートメモリを用いるデータ処理システムのコスト並びに電力消費量を低減することができる。
【図面の簡単な説明】
【図１】マルチポートメモリの第１の例として２個のシングルポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリを示すブロック図である。
【図２】図１のマルチポートメモリの動作タイミングの一例を示すタイミング図である。
【図３】マルチポートメモリに用いるＲＡＭの一例を示すブロック図である。
【図４】２個の２ポートＲＡＭによって構成した比較例に係るマルチポートＲＡＭのブロック図である。
【図５】シングルポートＲＡＭに並列・直列変換回路を用いて擬似的に構成した比較例に係るマルチポートＲＡＭのブロック図である。
【図６】図５のマルチポートＲＡＭの動作タイミングの一例を示すタイミング図である。
【図７】マルチポートメモリの第２の例として２個の２ポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリを示すブロック図である。
【図８】図７のマルチポートメモリの動作タイミングを示すタイミング図である。
【図９】タイミング発生回路の一例を示す論理回路図である。
【図１０】マルチポートメモリの第３の例として２個の２ポートＲＡＭを用いて見掛け上４ポートＲＡＭとして機能されるマルチポートメモリを示すブロック図である。
【図１１】図１０のマルチポートメモリの動作タイミングを示すタイミング図である。
【図１２】ＲＡＭのメモリセル及びカラム系回路の一例を示す回路図である。
【図１３】図１２の回路におけるリードアクセスとライトアクセスの動作タイミングの一例を示すタイミング図である。
【図１４】マルチポートメモリの第４の例として２個の２ポートＲＡＭを用いて見掛け上８ポートＲＡＭとして機能されるマルチポートメモリを示すブロック図である。
【図１５】図１４のマルチポートメモリの動作タイミングを示すタイミング図である。
【図１６】図１５のマルチポートメモリのφ１〜φ３に同期する各メモリサイクルにおけるＲＡＭの各ポートの入出力状態を示す動作説明図である。
【図１７】データプロセッサの一例を示すブロック図である。
【図１８】ポート拡張回路を用いた多ポートメモリをフレームバッファメモリとして利用するデータ処理システムの一例を示すブロック図である。
【符号の説明】
１  マルチポートメモリ
１０，１１  ＲＡＭ
ｃｋ  クロック入力端子
ＡＩＰ  アドレス入力端子群
ＤＩＰ  データ入力端子群
ＤＯＰ  データ出力端子群
Ｒ／Ｗ  リード・ライト信号入力端子
１２  ポート拡張回路
１３  入力回路
１３０，１３１  リードアドレス入力回路
１３２，１３３  ライトアドレス入力回路
１３４，１３５  ライトデータ入力回路
１３６〜１３９  ラッチ回路
１４  タイミング発生回路
φ１、φ２、φ３  内部クロック信号
１５  論理回路
φ１２３  イネーブルクロック信号
２  マルチポートメモリ
２０，２１  ＲＡＭ
ｃｋ  クロック入力端子
ＡＩＰｗ  ライトアドレス入力端子群
ＡＩＰｒ  リードアドレス入力端子群
ＤＩＰ  データ入力端子群
ＷＥ  ライトイネーブル端子
ＲＥ  リードイネーブル端子
２２  ポート拡張回路
２３  入力回路
２４  タイミング発生回路
２５  論理回路
３  マルチポートメモリ
３０，３１  ＲＡＭ
３２  ポート拡張回路
３３  入力回路
３４  タイミング発生回路
３５  論理回路
４  マルチポートメモリ
４０，４１  ＲＡＭ
４２  ポート拡張回路
４３  入力回路
４４  タイミング発生回路
４５  論理回路
【図１】
0003871813.tif 000002
【図２】
0003871813.tif 000003
【図３】
0003871813.tif 000004
【図４】
0003871813.tif 000005
【図５】
0003871813.tif 000006
【図６】
0003871813.tif 000007
【図７】
0003871813.tif 000008
【図８】
0003871813.tif 000009
【図９】
0003871813.tif 000010
【図１０】
0003871813.tif 000011
【図１１】
0003871813.tif 000012
【図１２】
0003871813.tif 000013
【図１３】
0003871813.tif 000014
【図１４】
0003871813.tif 000015
【図１５】
0003871813.tif 000016
【図１６】
0003871813.tif 000017
【図１７】
0003871813.tif 000018
【図１８】
0003871813.tif 000019