(57)【特許請求の範囲】
【請求項１】
選択信号で第１ポートが選択されたときに、該第１ポートに与えられるアドレス信号、入力データ、動作許可信号及び読み書き制御信号を選択し、該選択信号で第２ポートが選択されたときには、該第２ポートに与えられるアドレス信号、入力データ、動作許可信号及び読み書き制御信号を選択してメモリ回路に与える選択回路と、
前記メモリ回路から読み出される出力データを第１出力クロック信号に従って保持して前記第１ポートに出力する第１出力バッファと、
前記メモリ回路から読み出される出力データを第２出力クロック信号に従って保持して前記第２ポートに出力する第２出力バッファと、
前記第１ポートに与えられる第１クロック信号と前記第２ポートに与えられる第２クロック信号に基づいて、前記選択信号、前記第１出力クロック信号、前記第２出力クロック信号、及び前記メモリ回路に対するメモリクロック信号を生成する制御回路とを備えた半導体記憶装置において、
前記制御回路は、
前記第１クロック信号の立ち上がりまたは立ち下がりを基準タイミングとして、該基準タイミングから第１時間の経過後第２時間が経過するまでの期間は前記第１ポートを選択し、それ以外の期間は前記第２ポートを選択する前記選択信号、該選択信号によって第１ポートが選択されている期間中に出力される所定パルス幅の第１遅延クロック信号並びに前記第１出力クロック信号、該基準タイミングから該第２時間の経過後第３時間が経過するまでの間出力される第１遅延信号、該第１遅延信号が出力されている間に出力される所定パルス幅の第２遅延クロック信号、及び該基準タイミングから該第２時間が経過するまでの間活性化される衝突監視信号を生成する第１の位相調整部と、
前記第２クロック信号の立ち上がりまたは立ち下がりから一定時間出力される第２遅延信号、及び該第２遅延信号が出力されている間に出力される所定パルス幅の第３遅延クロック信号を生成する第２の位相調整部と、
前記衝突監視信号が活性化されている期間に前記第２遅延信号が出力されたときに、該第２遅延信号の出力開始から前記第１遅延信号の出力が停止されるまでの間出力される衝突検出信号、及び該衝突検出信号と該第１遅延信号が出力されている間出力される調停信号を生成する位相比較部と、
前記調停信号が出力されているときは前記第２遅延クロック信号を選択し、該調停信号が出力されていないときは前記衝突検出信号でマスクされた前記第３遅延クロック信号を選択して前記第２出力クロック信号として出力する第１セレクタと、前記選択信号で第１ポートが選択されたときは前記第１遅延クロック信号を選択し、該選択信号で第２ポートが選択されたときには該第２出力クロック信号を選択して前記メモリクロック信号として出力する第２セレクタとを備えた選択部とを、
備えたことを特徴とする半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば画像表示用のバッファメモリとして用いられ、ＣＰＵ（中央演算処理装置）と表示装置から非同期にアクセスされる半導体記憶装置に関するものである。
【背景技術】
【０００２】
従来、有機ＥＬ（エレクトロニック・ルミネセンス）や、ＴＦＴ−ＬＣＤ（薄膜トランジスタ液晶表示器）等を駆動するドライバコントローラでは、下記のような理由で、画像処理用メモリとしてデュアルポート・メモリが使用されている。
（１）  ドライバコントローラへの画像データの書き込みと表示データの読み出しが同時に実施される。
（２）  携帯電話等の携帯機器向けは消費電力を少なくすることが必要であり、非同期アクセスや低速クロックを用いて画像処理用メモリへアクセスする。即ち、高速クロックを使用できない。
（３）  ＣＰＵ系のクロックと画像処理系のクロック速度が異なり、タイミングの変換が必要である。
【０００３】
下記特許文献１には、簡単な構成で複雑な調停手段を持たずに、多くのポート数を確保し、かつ消費電力を抑えることを目的としたマルチポートメモリ装置が記載されている。
【０００４】
このマルチポートメモリ装置では、シーケンス動作の１周期内における系統毎のＤＲＡＭ（ダイナミック・ランダム・アクセス・メモリ）へのアクセスタイミングとアクセス順を固定とし、２組のシリアル−パラレル変換回路で書き込み要求タイミングに同期してシリアル−パラレル変換を行い、変換された信号を各シリアル−パラレル変換回路に対応するライトバッファに一時記憶するようにしている。
【０００５】
また、ＤＲＡＭから読み出されたデータを２組のリードバッファに一時記憶し、各リードバッファに対応するパラレル−シリアル変換回路でシリアルデータに変換し、読み出し要求タイミングに合致するように遅延調整回路で遅延させて出力するように構成している。更に、このマルチポートメモリ装置では、動作クロックを系統毎に別々に供給し、停止中の系統には動作クロックの供給を停止するようにしている。
【０００６】
一方、下記特許文献２には、回路規模を縮小しつつ、使い勝手の良い多ポート機能を実現することを目的とした半導体記憶装置が記載されている。
【０００７】
この半導体記憶装置では、１ポートのＲＡＭ（ランダム・アクセス・メモリ）に対して、第１入力ポートに供給されるクロック信号に対応した第１のクロック信号と、それより遅れたタイミングで第２のクロック信号を形成し、第２入力ポートから供給されるクロック信号により第３のクロック信号を形成し、この第３のクロック信号に対応して第２入力ポートのアドレス端子とデータ入力端子から入力されたアドレス信号とデータをそれぞれ第１と第２のラッチ回路に保持させるポート拡張回路を設けている。そして、第１のクロック信号に対応して第１入力ポートのアドレス端子を通して入力されたアドレス信号を、ＲＡＭのアドレス端子に供給し、選択されたメモリセルからの読み出し信号をデータ出力端子から送出させ、第２のクロック信号に対応して第１のラッチ回路に保持されたアドレス信号と第２のラッチ回路に保持された書き込みデータをＲＡＭのアドレス端子とデータ入力端子に供給して書き込み動作を行わせるようにしている。
【０００８】
【特許文献１】特開２００２−１０８６９０号公報
【特許文献２】特開２００１−１０１８６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、前記特許文献１に記載されたマルチポートメモリ装置は、系統毎にシリアル−パラレル変換回路やパラレル−シリアル変換回路及び遅延調整回路が必要であり、回路の簡素化をあまり期待することはできない。一方、前記特許文献２に記載された半導体記憶装置は、第１ポートが読み出し専用、第２ポートが書き込み専用に限定されており、完全な２ポート構成となっていない。
【００１０】
本発明は、汎用的な１ポートのＲＡＭに簡素化した制御回路を付加することによって完全な２ポート化を行った半導体記憶装置を提供することを目的としている。
【課題を解決するための手段】
【００１１】
本発明は、選択信号で第１ポートが選択されたときに、該第１ポートに与えられるアドレス信号、入力データ、動作許可信号及び読み書き制御信号を選択し、該選択信号で第２ポートが選択されたときには、該第２ポートに与えられるアドレス信号、入力データ、動作許可信号及び読み書き制御信号を選択してメモリ回路に与える選択回路と、前記メモリ回路から読み出される出力データを第１出力クロック信号に従って保持して前記第１ポートに出力する第１出力バッファと、前記メモリ回路から読み出される出力データを第２出力クロック信号に従って保持して前記第２ポートに出力する第２出力バッファと、前記第１ポートに与えられる第１クロック信号と前記第２ポートに与えられる第２クロック信号に基づいて、前記選択信号、前記第１出力クロック信号、前記第２出力クロック信号、及び前記メモリ回路に対するメモリクロック信号を生成する制御回路とを備えた半導体記憶装置において、制御回路を次のように構成している。
【００１２】
即ち、この制御回路は、次のような第１の位相調整部と、第２の位相調整部と、位相比較部と、選択部とを備えたことを特徴としている。
【００１３】
第１の位相調整部は、前記第１クロック信号の立ち上がりまたは立ち下がりを基準タイミングとして、該基準タイミングから第１時間の経過後第２時間が経過するまでの期間は前記第１ポートを選択し、それ以外の期間は前記第２ポートを選択する前記選択信号、該選択信号によって第１ポートが選択されている期間中に出力される所定パルス幅の第１遅延クロック信号並びに前記第１出力クロック信号、該基準タイミングから該第２時間の経過後第３時間が経過するまでの間出力される第１遅延信号、該第１遅延信号が出力されている間に出力される所定パルス幅の第２遅延クロック信号、及び該基準タイミングから該第２時間が経過するまでの間活性化される衝突監視信号を生成するものである。
【００１４】
第２の位相調整部は、前記第２クロック信号の立ち上がりまたは立ち下がりから一定時間出力される第２遅延信号、及び該第２遅延信号が出力されている間に出力される所定パルス幅の第３遅延クロック信号を生成するものである。
【００１５】
位相比較部は、前記衝突監視信号が活性化されている期間に前記第２遅延信号が出力されたときに、該第２遅延信号の出力開始から前記第１遅延信号の出力が停止されるまでの間出力される衝突検出信号、及び該衝突検出信号と該第１遅延信号が出力されている間出力される調停信号を生成するものである。
【００１６】
選択部は、前記調停信号が出力されているときは前記第２遅延クロック信号を選択し、該調停信号が出力されていないときは前記衝突検出信号でマスクされた前記第３遅延クロック信号を選択して前記第２出力クロック信号として出力する第１セレクタと、前記選択信号で第１ポートが選択されたときは前記第１遅延クロック信号を選択し、該選択信号で第２ポートが選択されたときには該第２出力クロック信号を選択して前記メモリクロック信号として出力する第２セレクタを備えている。
【発明の効果】
【００１７】
本発明では、第１ポートから与えられる第１クロック信号を基準タイミングとして、この基準タイミングから第１時間の経過後第２時間が経過するまでの期間で第１ポートを選択し、それ以外の期間で第２ポートを選択する選択信号と、この選択信号で第１ポートが選択されている期間に第１ポート用の第１遅延クロック信号及び第１出力クロック信号と、この基準タイミングから第２時間の経過後第３時間が経過するまでの間に出力される第２ポート用の第２遅延クロック信号と、基準タイミングから第２時間が経過するまでの間出力される衝突監視信号を生成する第１の位相調整部を有している。これにより、衝突監視信号が出力されている期間中に第２ポートから第２クロック信号が与えられた時には、この衝突監視信号が出力されている間は第２クロック信号をマスクし、衝突監視信号が停止した後に、第２遅延クロック信号を第２ポート用のクロック信号として出力することができる。これにより、簡素化した制御回路を付加することで、非同期に与えられる第１ポートと第２ポートからのアクセス要求を調停し、汎用的な１ポートのＲＡＭを完全な２ポートのＲＡＭとして使用することができるという効果がある。
【発明を実施するための最良の形態】
【００１８】
この発明の前記並びにその他の目的と新規な特徴は、次の好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
【実施例１】
【００１９】
図１は、本発明の実施例を示す半導体記憶装置の概略の構成図である。
この半導体記憶装置は、一般的な１ポート・メモリ１を２ポート・メモリとして使用するもので、ＡポートとＢポートの入力信号を切り替えて１ポート・メモリ１に与える選択回路２、この１ポート・メモリ１から読み出される出力データＯＵＴを保持してＡポートとＢポートに出力する出力バッファ３Ａ，３Ｂ、及びＡポートとＢポートの切り替えを制御する制御回路４で構成されている。
【００２０】
１ポート・メモリ１は、動作許可信号ＣＥで選択されて読み書き制御信号ＷＥで書き込み動作が指定されたときに、アドレス信号ＡＤで指定された記憶領域にメモリクロック信号ＭＣＫのタイミングに従って入力データＩＮを書き込むものである。またこの１ポート・メモリ１は、動作許可信号ＣＥで選択されて読み書き制御信号ＷＥで読み出し動作が指定されたときには、アドレス信号ＡＤで指定された記憶領域のデータをメモリクロック信号ＭＣＫのタイミングに従って読み出し、出力データＯＵＴとして出力するように構成されている。
【００２１】
選択回路２は、Ａポートに与えられるアドレス信号ＡＤＡ、入力データＩＮＡ、動作許可信号ＣＥＡ及び読み書き制御信号ＷＥＡと、Ｂポートに与えられるアドレス信号ＡＤＢ、入力データＩＮＢ、動作許可信号ＣＥＢ及び読み書き制御信号ＷＥＢを、選択信号ＳＥＬに従って切り替え、アドレス信号ＡＤ、入力データＩＮ、動作許可信号ＣＥ及び読み書き制御信号ＷＥとして１ポート・メモリ１に出力するものである。
【００２２】
出力バッファ３Ａ，３Ｂは、例えばＦＦ（フリップ・フロップ）で構成され、１ポート・メモリ１から出力される出力データＯＵＴを、それぞれ出力クロック信号ＣＡＯ，ＣＢＯのタイミングに従って保持し、保持したデータをそれぞれＡポートの出力データＯＵＴＡ及びＢポートの出力データＯＵＴＢとして出力するものである。
【００２３】
また、制御回路４は、Ａポートのクロック信号ＣＫＡとＢポートのクロック信号ＣＫＢに基づいて、ＡポートとＢポートの動作が競合しないように調停し、１ポート・メモリ１に対するメモリクロック信号ＭＣＫ、選択回路２に対する選択信号ＳＥＬ、及び出力バッファ３Ａ，３Ｂに対する出力クロック信号ＣＡＯ，ＣＢＯを生成するものである。
【００２４】
図２は、図１中の制御回路４の構成例を示す回路図である。なお、この制御回路４では、Ａポートのクロック信号ＣＫＡの周波数は、Ｂポートのクロック信号ＣＫＢの周波数と同等またはそれよりも高く、かつＡポートはＢポートよりも優先度が高いものとする。
【００２５】
制御回路４は、Ａポートのクロック信号ＣＫＡの位相を調整する位相調整部１０、Ｂポートのクロック信号ＣＫＢの位相を調整する位相調整部４０、これらのクロック信号ＣＫＡ，ＣＫＢの位相を比較して競合を検出する位相比較部５０、及び競合が生じないよう調停してメモリクロック信号ＭＣＫや出力クロック信号ＣＢＯを出力する選択部６０で構成されている。
【００２６】
位相調整部１０は、Ａポートから与えられる（例えば、周期１５０ｎｓの）クロック信号ＣＫＡを第１時間（例えば、２０ｎｓ）遅延させ、信号ＤＬ１としてノードＮ１に出力する遅延素子（Ｄ）１１を有している。ノードＮ１には、インバータ１２を介して２入力のＡＮＤ（論理積ゲート）１３の一方の入力端子が接続され、このＡＮＤ１３の他方の入力端子にはクロック信号ＣＫＡが与えられている。これにより、ＡＮＤ１３の出力側から、基準タイミングであるクロック信号ＣＫＡの立ち上がりから、遅延素子１１の遅延時間（第１時間）だけレベル“Ｈ”となる信号ＡＰが出力され、ＦＦ１４のクロック端子に与えられる。
【００２７】
ノードＮ１には、信号ＤＬ１を更に（例えば、２０ｎｓ）遅延させた信号ＤＬ２を、ノードＮ２に出力する遅延素子１５が接続されている。ノードＮ２には、（例えば、４ｎｓの）遅延素子１６とインバータ１７を介して２入力のＡＮＤ１８の一方の入力端子が接続されると共に、このＡＮＤ１８の他方の入力端子が接続されている。これにより、ＡＮＤ１８の出力側から、遅延信号ＤＬ２の立ち上がりから遅延素子１６による一定時間だけ“Ｈ”となる信号ＣＬＲ１が出力される。ＡＮＤ１８の出力側は、ＦＦ１４のリセット端子Ｒに接続されている。ＦＦ１４のデータ端子Ｄは“Ｈ”に固定接続され、このＦＦ１４の出力端子Ｑから、クロック信号ＣＫＡの立ち上がりから遅延素子１１，１５の合計の遅延時間である第２時間の間、活性化されて“Ｈ”となる衝突監視信号ＷＩＮが出力されるようになっている。
【００２８】
また、ノードＮ２には、インバータ１９を介して２入力のＡＮＤ２０の一方の入力端子が接続され、このＡＮＤ２０の他方の入力端子はノードＮ１に接続されている。これにより、ＡＮＤ２０の出力側であるノードＮ３に、信号ＤＬ１の立ち上がりから遅延素子１５の遅延時間だけ“Ｈ”となる選択信号ＳＥＬが出力され、この選択信号ＳＥＬが、セレクタ回路６０と図１中の選択回路２に与えられるようになっている。
【００２９】
ノードＮ３には、（例えば、６ｎｓの）遅延素子２１を介して２入力のＡＮＤ２２の一方の入力端子と、このＡＮＤ２２の他方の入力端子が接続されている。これにより、ＡＮＤ２２の出力側から、選択信号ＳＥＬが“Ｈ”になってから、遅延素子２１による遅延時間だけ遅れて“Ｈ”となり、この選択信号ＳＥＬと同時にレベル“Ｌ”となる遅延クロック信号ＣＡＤ１が出力される。
【００３０】
なお、遅延素子２１の遅延時間は、選択信号ＳＥＬで選択回路２がＡポートに切り替えられた後、１ポート・メモリ１がこのＡポートから与えられるアドレス信号ＡＤＡ等によって正常に動作できるように設定されるまでの動作マージンを確保するための時間である。また、遅延クロック信号ＣＡＤ１は、選択部６０に与えられると共に、出力クロック信号ＣＡＯとして図１中の出力バッファ３Ａに与えられている。
【００３１】
更に、ノードＮ２には、信号ＤＬ２を（例えば、２０ｎｓ）遅延させた信号ＤＬ３をノードＮ４に出力する遅延素子２３が接続されている。ノードＮ４には、インバータ２４を介して２入力のＡＮＤ２５の一方の入力端子が接続され、このＡＮＤ２５の他方の入力端子が、ノードＮ２に接続されている。これにより、ＡＮＤ２５の出力側のノードＮ５に、信号ＤＬ２の立ち上がりから遅延素子２３による遅延時間だけ“Ｈ”となる遅延信号ＤＬＹが出力される。
【００３２】
ノードＮ５には、（例えば、６ｎｓの）遅延素子２６を介して２入力のＡＮＤ２７の一方の入力端子と、このＡＮＤ２７の他方の入力端子が接続されている。これにより、ＡＮＤ２７の出力側から、遅延信号ＤＬＹが“Ｈ”になってから、遅延素子２６による遅延時間遅れて“Ｈ”となり、この遅延信号ＤＬＹと同時に“Ｌ”になる遅延クロック信号ＣＡＤ２が出力される。この遅延クロック信号ＣＡＤ２は、ＡポートとＢポートのクロック信号ＣＫＡ，ＣＫＢが競合したときに、Ｂポートの動作を一時的に抑止した後で、このＢポートのクロック信号として使用するものである。なお、遅延素子２６の遅延時間は、選択信号ＳＥＬで選択回路２がＢポートに切り替えられた後、１ポート・メモリ１がこのＢポートから与えられるアドレス信号ＡＤＢ等によって正常に動作できるように設定されるまでの動作マージンを確保するための時間である。
【００３３】
更に、ノードＮ４には、（例えば、４ｎｓの）遅延素子２８とインバータ２９を介して２入力のＡＮＤ２９の一方の入力端子が接続されると共に、このＡＮＤ２９の他方の入力端子が接続されている。これにより、ＡＮＤ２９の出力側から、信号ＤＬ３の立ち上がりから遅延素子２８による遅延時間だけ“Ｈ”となる信号ＣＬＲ２が出力される。信号ＣＬＲ２は、位相比較部５０に与えられている。
【００３４】
位相調整部４０は、Ｂポートから与えられるクロック信号ＣＫＢを（例えば、２０ｎｓ）遅延させる遅延素子４１と、このクロック信号ＣＫＢを反転させるインバータ４２を有している。遅延素子４１とインバータ４２の出力側は、２入力のＡＮＤ４３の入力側に接続され、このＡＮＤ４３の出力側から、クロック信号ＣＫＢが“Ｌ”になったときに、遅延素子４１による遅延時間だけ“Ｈ”となる遅延信号ＣＢＤ１が出力される。
【００３５】
更に、遅延信号ＣＢＤ１は、（例えば、６ｎｓの）遅延素子４４を介して２入力のＡＮＤ４５の一方の入力端子に与えられると共に、このＡＮＤ４５の他方の入力端子に与えられ、このＡＮＤ４５の出力側から遅延クロック信号ＣＢＤ２が出力される。遅延クロック信号ＣＢＤ２は、遅延信号ＣＢＤ１が“Ｈ”になってから、遅延素子４４による遅延時間だけ遅れて“Ｈ”となり、この遅延信号ＣＢＤ１と同時に“Ｌ”となる信号である。なお、遅延素子４４の遅延時間は、選択信号ＳＥＬで選択回路２がＢポートに切り替えられた後、１ポート・メモリ１がこのＢポートから与えられるアドレス信号ＡＤＢ等によって正常に動作できるように設定されるまでの動作マージンを確保するための時間である。
【００３６】
位相比較部５０は、位相調整部１０で生成された衝突監視信号ＷＩＮがデータ端子Ｄに与えられるＦＦ５１を有しており、このＦＦ５１のクロック端子に位相調整部１０で生成された遅延信号ＣＢＤ１が与えられている。ＦＦ５１のリセット端子Ｒには、位相調整部１０から信号ＣＬＲ２が与えられ、このＦＦ５１の出力端子Ｑから、衝突監視信号ＷＩＮが“Ｈ”の期間に遅延信号ＣＢＤ１が立ち上がった場合にのみ“Ｈ”となり、信号ＣＬＲ２でリセットされて“Ｌ”となる衝突検出信号ＣＯＬが出力されるようになっている。ＦＦ５１の出力端子Ｑには、２入力のＡＮＤ５２の一方の入力端子が接続され、このＡＮＤ５２の他方の入力端子には位相調整部１０からの遅延信号ＤＬＹが与えられている。これにより、ＡＮＤ５２から、衝突監視信号ＷＩＮが“Ｈ”の期間に遅延信号ＣＢＤ１が立ち上がった場合にのみ、遅延信号ＤＬＹと同じタイミングで“Ｈ”となる調停信号ＡＲＢが出力される。
【００３７】
選択部６０は、位相比較部５０の衝突検出信号ＣＯＬを反転するインバータ６１を有している。インバータ６１の出力側は２入力のＡＮＤ６２の一方の入力端子に接続され、このＡＮＤ６２の他方の入力端子には、位相調整部４０で生成された遅延クロック信号ＣＢＤ２が与えられている。即ち、衝突検出信号ＣＯＬが出力されている間、遅延クロック信号ＣＢＤ２はマスクされるようになっている。ＡＮＤ６２の出力端子は、セレクタ６３の入力端子Ｌに接続され、このセレクタ６３の入力端子Ｈには、位相調整部１０で生成された遅延クロック信号ＣＡＤ２が与えられている。セレクタ６３は、位相比較部５０から制御端子に与えられる調停信号ＡＲＢが“Ｌ”のときに入力端子Ｌを選択し、この調停信号ＡＲＢが“Ｈ”のときには入力端子Ｈを選択して、選択した入力端子の信号を出力クロック信号ＣＢＯとして出力するものである。出力クロック信号ＣＢＯは、セレクタ６４の入力端子Ｌに与えられると共に、図１中の出力バッファ３Ｂに与えられるようになっている。
【００３８】
セレクタ６４の入力端子Ｈには、位相調整部１０で生成された遅延クロック信号ＣＡＤ１が与えられている。セレクタ６４は、位相調整部１０から制御端子に与えられる選択信号ＳＥＬが“Ｌ”のときに入力端子Ｌを選択し、この選択信号ＳＥＬが“Ｈ”のときには入力端子Ｈを選択して、選択した入力端子の信号をメモリクロック信号ＭＣＫとして、図１中の１ポート・メモリ１へ出力するものである。
【００３９】
図３及び図４は、図１中の制御回路４の動作を示す信号波形図であり、図３はＡポートとＢポートの競合がない場合を示し、図４はＡポートとＢポートの競合がある場合を示しる。以下、これらの図３及び図４を参照しつつ、図２の制御回路４を中心として図１の動作を説明する。
【００４０】
図３及び図４に示すように、ポートＡに与えられたクロック信号ＣＫＡは、図２の位相制御部１０の縦続接続された遅延素子１１，１５，２３によって順次遅延させられる。時刻Ｔ０において、ポートＡのクロック信号ＣＫＡが立ち上がると、この時刻Ｔ０を基準タイミングとして、第１時間が経過した時刻Ｔ１にノードＮ１の信号ＤＬ１が立ち上がり、第２時間が経過した時刻Ｔ２にノードＮ２の信号ＤＬ２が立ち上がり、第３時間が経過した時刻Ｔ３にノードＮ４の信号ＤＬ３が立ち上がる。
【００４１】
従って、時刻Ｔ０から時刻Ｔ１の間、ＡＮＤ１３から出力される信号ＡＰが“Ｈ”となり、その後、時刻Ｔ１から時刻Ｔ２の間、ＡＮＤ２０から出力される選択信号ＳＥＬが“Ｈ”となり、更にその後、時刻Ｔ２から時刻Ｔ３の間、ＡＮＤ２５から出力される遅延信号ＤＬＹが“Ｈ”となる。また、時刻Ｔ２，Ｔ３において、ＡＮＤ１８，３０からパルス幅の狭い信号ＣＬＲ１，ＣＬＲ２が順次出力される。
【００４２】
これにより、時刻Ｔ１の選択信号ＳＥＬの立ち上がりから遅延素子２１の遅延時間だけ遅れてＡＮＤ２２から出力される遅延クロック信号ＣＡＤ１が“Ｈ”となり、時刻Ｔ２の遅延信号ＤＬＹの立ち上がりから遅延素子２６の遅延時間だけ遅れてＡＮＤ２７から出力される遅延クロック信号ＣＡＤ２が“Ｈ”となる。また、時刻Ｔ０から時刻Ｔ２までの間、ＦＦ１４から出力される衝突監視信号ＷＩＮが“Ｈ”となる。
【００４３】
図３に示すように、衝突監視信号ＷＩＮが“Ｈ”となっている期間に、Ｂポートのクロック信号ＣＫＢに立ち上がりや立ち下がりの変化がない場合、時刻Ｔ０から時刻Ｔ２の期間に位相調整部４０から出力される遅延信号ＣＢＤ１と遅延クロック信号ＣＢＤ２は、共に“Ｌ”である。従って、位相比較部５０から出力される衝突検出信号ＣＯＬと調停信号ＡＲＢも、共に“Ｌ”となる。これにより、選択部６０のセレクタ６３では、遅延クロック信号ＣＢＤ２が選択され、出力クロック信号ＣＢＯとしてセレクタ６４と出力バッファ３Ｂに出力される。
【００４４】
時刻Ｔ１から時刻Ｔ２の間、選択信号ＳＥＬが“Ｈ”になると、選択回路２によってＡポートのアドレス信号ＡＤＡ、入力データＩＮＡ、動作許可信号ＣＥＡ及び読み書き制御信号ＷＥＡが選択され、１ポート・メモリ１にアドレス信号ＡＤ、入力データＩＮ、動作許可信号ＣＥ及び読み書き制御信号ＷＥとして与えられる。また、選択部６０のセレクタ６４では、遅延クロック信号ＣＡＤ１が選択されてメモリクロック信号ＭＣＫとして１ポート・メモリ１に与えられる。更に、遅延クロック信号ＣＡＤ１は、出力クロック信号ＣＡＯとして出力バッファ３Ａに与えられる。
【００４５】
これにより、１ポート・メモリ１は、選択信号ＳＥＬが“Ｈ”となっている時刻Ｔ１から時刻Ｔ２の期間、Ａポートから与えられるアドレス信号ＡＤＡ、動作許可信号ＣＥＡ、読み書き制御信号ＷＥＡ及びクロック信号ＣＫＡに基づいて書き込み及び読み出しの動作が行われる。
【００４６】
また、時刻Ｔ１から時刻Ｔ２までの期間以外の、選択信号ＳＥＬが“Ｌ”となっている期間は、この選択信号ＳＥＬに従って、選択回路２でＢポートのアドレス信号ＡＤＢ、入力データＩＮＢ、動作許可信号ＣＥＢ及び読み書き制御信号ＷＥＢが選択され、１ポート・メモリ１にアドレス信号ＡＤ、入力データＩＮ、動作許可信号ＣＥ及び読み書き制御信号ＷＥとして与えられる。また、選択部６０のセレクタ６３，６４では、図３の時刻Ｔ１０から時刻Ｔ１１に示すように、クロック信号ＣＫＢの立ち下りのタイミングに基づいて生成された遅延クロック信号ＣＢＤ２が選択され、メモリクロック信号ＭＣＫとして１ポート・メモリ１に与えられる。従って、１ポート・メモリ１は、選択信号ＳＥＬが“Ｌ”の期間は、Ｂポートから与えられるアドレス信号ＡＤＢ、動作許可信号ＣＥＢ、読み書き制御信号ＷＥＢ及びクロック信号ＣＫＢに基づいて書き込み及び読み出しの動作が行われる。
【００４７】
一方、図４に示すように、衝突監視信号ＷＩＮが“Ｈ”となっている期間中（時刻Ｔ１ａ）に、Ｂポートのクロック信号ＣＫＢが立ち下がると、この時刻Ｔ１ａから時刻Ｔ２ａまでの間、位相調整部４０のＡＮＤ４３から出力される遅延信号ＣＢＤ１が“Ｈ”となり、遅延素子４４の遅延時間だけ遅れてＡＮＤ４５から出力される遅延クロック信号ＣＢＤ２が“Ｈ”となる。従って、位相比較部５０のＦＦ５１から出力される衝突検出信号ＣＯＬは、時刻Ｔ１ａから時刻Ｔ３までの間“Ｈ”となり、更に、ＡＮＤ５２から出力される調停信号ＡＲＢは、時刻Ｔ２から時刻Ｔ３までの間“Ｈ”となる。
【００４８】
これにより、選択部６０では、選択信号ＳＥＬが“Ｈ”となってＡポートを選択している時刻Ｔ１から時刻Ｔ２の期間に、セレクタ６４によって遅延クロック信号ＣＡＤ１が選択されてメモリクロック信号ＭＣＫとして出力される。また、この時刻Ｔ１から時刻Ｔ２の期間には、インバータ６１によって反転された衝突検出信号ＣＯＬで遅延クロック信号ＣＢＤ２がマスクされるので、出力バッファ３Ｂに対する出力クロック信号ＣＢＯの出力も停止される。そして、時刻Ｔ２になり、選択信号ＳＥＬが“Ｌ”となってＢポートを選択すると、この時刻Ｔ２から時刻Ｔ３の間に生成される遅延クロック信号ＣＡＤ２が、セレクタ６３で選択されて出力クロック信号ＣＢＯとして出力バッファ３Ｂに出力されると共に、この出力クロック信号ＣＢＯ（即ち、遅延クロック信号ＣＡＤ２）がセレクタ６４で選択されてメモリクロック信号ＭＣＫとして１ポート・メモリ１に与えられる。
【００４９】
以上のように、本実施例の半導体記憶装置は、Ａポートから与えられるクロック信号ＣＫＡの立ち上がりを基準タイミングとして、この基準タイミングから第１時間の経過後第２時間が経過するまでの期間でＡポートを選択し、それ以外の期間ではＢポートを選択する選択信号ＳＥＬと、この選択信号ＳＥＬでＡポートが選択されている期間にＡポート用の遅延クロック信号ＣＡＤ１及び出力クロック信号ＣＡＯと、この基準タイミングから第２時間の経過後第３時間が経過するまでの間に出力されるＢポート用の遅延クロック信号ＣＡＤ２と、基準タイミングから第２時間が経過するまでの間出力される衝突監視信号ＷＩＮを生成する位相調整部１０を有している。これにより、衝突監視信号ＷＩＮが出力されている期間中にＢポートからクロック信号ＣＫＢが与えられた時には、この衝突監視信号ＷＩＮが出力されている間はクロック信号ＣＫＢに基づいて生成される遅延クロック信号ＣＢＤ２をマスクし、この衝突監視信号ＷＩＮが停止した後に、遅延クロック信号ＣＡＤ２をＢポート用のクロック信号として出力することができる。これにより、簡素化した制御回路４を付加することで、ＡポートとＢポートから非同期に与えられるアクセス要求を調停し、汎用的な１ポート・メモリ１を完全な２ポートのＲＡＭとして使用することができるという利点がある。
【００５０】
更に、この制御回路４では高速クロックを使用しないので、消費電力の増加を抑えることができるという利点がある。
【００５１】
なお、本発明は、上記実施例に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
（ａ）  制御回路４の回路構成は一例であって、同様の機能を有する回路に置き換えることができる。例えば、位相調整部１０のインバータ１２及びＡＮＤ１３を削除し、クロック信号ＣＫＡをＦＦ１４のクロック端子に直接与えるようにしても、同様の動作が可能である。
（ｂ）  位相調整部１０では、Ａポートのクロック信号ＣＫＡの立ち上がりのタイミングを基準タイミングとしているが、立ち下がりのタイミングを用いても良い。また、位相調整部４０では、Ｂポートのクロック信号ＣＫＢの立ち下がりのタイミングに基づいて遅延クロック信号ＣＢＤ２を生成しているが、立ち上がりタイミングを用いても良い。
（ｃ）  実施例中で例示した遅延素子１１等の遅延時間は一例であり、実際に適用する１ポート・メモリ１が正常に動作することのできるタイミングを確保するような値に設定する必要がある。
【図面の簡単な説明】
【００５２】
【図１】本発明の実施例を示す半導体記憶装置の概略の構成図である。
【図２】図１中の制御回路４の構成例を示す回路図である。
【図３】図１中の制御回路４の動作（その１）を示す信号波形図である。
【図４】図１中の制御回路４の動作（その２）を示す信号波形図である。
【符号の説明】
【００５３】
１    １ポート・メモリ
２    選択回路
３Ａ，３Ｂ    出力バッファ
４    制御回路
１０，４０    位相制御部
５０    位相比較部
６０    選択部
【図１】
0004425243.tif 000002
【図２】
0004425243.tif 000003
【図３】
0004425243.tif 000004
【図４】
0004425243.tif 000005