(57)【特許請求の範囲】
【請求項１】
メモリへのデータの書込みまたはメモリからのデータの読出しをデータストローブ信号を用いて制御するメモリ制御回路であって、
データを入力する第１の入力バッファと、
データストローブ信号を入力する第２の入力バッファと、
前記第２の入力バッファの出力に接続され、前記第２の入力バッファから入力されたデータストローブ信号を第１の遅延量だけ遅延する第１の遅延回路と、
前記第２の入力バッファの出力に接続され、前記第２の入力バッファから入力されたデータストローブ信号を第１の遅延量よりも大きい第２の遅延量だけ遅延する第２の遅延回路と、
第１の遅延回路によって遅延された第１の遅延信号と第２の遅延回路によって遅延された第２の遅延信号をそれぞれ入力するアンド回路を含み、当該アンド回路の出力信号に基づき前記第２の入力バッファに入力されたデータストローブ信号の立ち上がりエッジまたは立ち下がりエッジに同期した立下りエッジまたは立ち上がりエッジを有する第３の遅延信号を生成する生成回路と、
前記第１の遅延信号に応答して入力された第１のデータを取り込む第１の回路と、
前記第３の遅延信号に応答して入力された第２のデータを取り込む第２の回路と、
前記第１の回路に接続され、前記第３の遅延信号に応答して前記第１の回路の出力データを取り込む第３の回路とを有し、
前記第２の回路および前記第３の回路の出力は、内部クロックに同期して動作される回路に提供される、メモリ制御回路。
【請求項２】
前記第１ないし第３の回路は、それぞれフリップフロックにより構成される、請求項１に記載のメモリ制御回路。
【請求項３】
前記第１の遅延量は、前記入力されたデータストローブ信号に対して位相差が１／４であり、前記第２の遅延量は、前記入力されたデータストローブ信号に対して位相差が１／４より大きく１／２以下である、請求項１または２に記載のメモリ制御回路。
【請求項４】
前記第１の回路は、第１の遅延信号の立ち上がりエッジまたは立ち下がりエッジに応答して第１のデータを取り込み、前記第２の回路は、第３の遅延信号の立ち上がりエッジまたは立ち下りエッジに応答して第２のデータを取り込む、請求項１ないし３いずれか１つに記載のメモリ制御回路。
【請求項５】
メモリ制御回路はさらに、差動データストローブ信号を入力し、前記入力されたデータストローブ信号を出力する差動回路を含む、請求項１ないし４いずれか１つに記載のメモリ制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ制御回路に関し、特に、データストローブ信号を用いてメモリへのデータの読み書きを制御するメモリ制御回路に関する。
【背景技術】
【０００２】
パーソナルコンピュータ、ナビゲーション装置等の電子デバイスにおいて、高速にデータの読み書きを行い、かつ大量のデータを保持するメモリとしてＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）が用いられている。ＳＤＲＡＭは、クロック信号に同期してデータの読み出しまたは読み書きが可能であり、クロック周波数を大きくすることで高速動作が可能となる。また、ＳＤＲＡＭは、連続的にデータの読み出しまたは書き込みが可能なバーストモードを備えている。
【０００３】
ＳＤＲＡＭをさらに高速化させたものにＤＤＲ(Double Data Rate)ＳＤＲＡＭがある。ＤＤＲＳＤＲＡＭは、クロック信号の立ち上がりエッジと立下りエッジの双方に応答してデータの読み書きを行うため、その動作はＳＤＲＡＭの２倍となる。
【０００４】
図４は、ＤＤＲＳＤＡＭ１０とメモリ制御回路２０の接続例を示す図である。ＤＤＲＳＤＲＡＭ１０とメモリ制御回路２０は、データ（ＤＱ）の送受を行うデータバス３０、データストローブ信号ＤＱＳ（以下、ＤＱＳ信号という）の送受を行うＤＱＳ信号線３２、クロック信号を送信するクロック信号線３４、アドレス信号を送信するアドレス信号バス３６等によって接続される。さらに、メモリ制御回路２０は、読み出し（リード）または書込み（ライト）を指示するコマンド信号をＤＤＲＳＤＲＡＭ１０へ供給する。
【０００５】
図５（ａ）は、メモリからデータを読み出すとき（リード）のタイミングチャート、図５（ｂ）はメモリにデータを書き込むとき（ライト）のタイミングチャートである。データを読み出すとき、メモリ制御回路２０は、リードコマンドおよびアドレス信号を出力し、これに応答して、ＤＤＲＳＤＲＡＭ１０は、ＤＱＳ信号およびアドレス指定されたデータをメモリ制御回路１０へ出力する。このとき、ＤＱＳ信号とデータは同相で出力されるため、メモリ制御回路２０は、ＤＱＳ信号を遅延させ、ＤＱＳ信号の立ち上がりエッジおよび立ち下りエッジに同期してデータをフリップフロップまたはラッチに取り込む。
【０００６】
また、データを書き込むとき、メモリ制御回路２０はライトコマンド、アドレス信号、ＤＱＳ信号およびデータＤＱをＤＤＲＳＤＲＡＭ１０へ出力する。このとき、ＤＱＳ信号は、データより遅延されて出力される。ＤＤＲＳＤＲＡＭ１０は、ＤＱＳ信号の立ち上がりエッジおよび立ち下りエッジに同期してデータをメモリ素子に書き込む。
【０００７】
ＤＱＳ信号は、データの読み書きに応じて双方向通信されるものであり、またメモリへのアクセスがないときには、ハイインピーダンス状態におかれている。ＤＱＳ信号によるデータの読み書き動作を保証するため、ＤＱＳ信号には、メモリへのアクセス開始時にプリアンブルと呼ばれるローレベルの期間Ｐ１と、終了時にポストアンブルと呼ばれるローレベルの期間Ｐ２が含まれる。特許文献１は、このようなＤＤＲＳＤＲＡＭへのデータの読み書きを制御するメモリ制御回路を開示している。
【０００８】
【特許文献１】特開２００６−４０３１８号
【発明の開示】
【発明が解決しようとする課題】
【０００９】
メモリ制御回路のデータを取り込む回路は、図６（ａ）に示すように、データを入力する入力バッファ４０と、入力バッファ４２から入力されたＤＱＳ信号を遅延する遅延回路４４と、遅延されたＤＱＳ信号を反転するインバータ４６と、遅延回路４４によって遅延されたＤＱＳ信号の立ち上がりエッジに応答してデータを取り込むフリップフロップ４８と、反転されたＤＱＳ信号の立ち上がりエッジに応答してデータを取り込むフリップフロップ５０、５２とを含んでいる。
【００１０】
図６（ｂ）に各部のタイミングチャートを示す。メモリ制御回路からのリードコマンドに応答して、ＤＤＲＳＤＲＡＭ１０は、ＤＱＳ信号をプリアンブルＰ１の期間だけローレベルにした後、ＤＱＳ信号とデータ（ＤＱ）を同相で出力する。メモリ制御回路は、入力バッファ４０、４２においてデータおよびＤＱＳ信号を入力する。入力バッファ４２は、ＤＱＳ信号を所定のしきい値でハイレベルとローレベルを検出し、波形成形したＤＱＳ信号を出力する。遅延回路４４は、入力バッファ４２からのＤＱＳ信号を１／４位相だけ遅延させ、これにより、ＤＱＳ信号の立ち上がりおよび立下りエッジがデータ期間の中央に一致される。フリップフロップ４８は、遅延されたＤＱＳ信号の立ち上がりエッジに応答してデータＤ１を取り込み、フリップフロップ５０は、反転されたＤＱＳ信号の立ち上がりエッジ（遅延されたＤＱＳ信号の立ち下がりエッジのタイミングに等しい）に応答してデータＤ２を取り込む。
【００１１】
ところで、ＤＱＳ信号は、メモリへのアクセスが行われないとき、ハイインピーダンス状態にあり、メモリへのアクセス開始時に、ハイインピーダンスからローレベルに遷移し、アクセス終了時に、ローレベルからハイインピーダンス状態に遷移する。ＤＱＳ信号は、ハイインピーダンス状態にあるとき、電源電圧Ｖｄｄに近い値にプルアップされるが、この状態は不定であり、特にポストアンブル後の遷移時にＤＱＳ信号がオーバーシュートやノイズにより変動され易い。例えば、ポストアンブルＰ２後に、不所望なオーバーシュートＳが発生すると、遅延されたＤＱＳ信号に不所望な波形Ｓ１が生成され、それがフリップフロップ４８、５０、５２に入力され、誤ったデータの取り込みが行われ、それが内部回路へ伝播されてしまうという課題がある。
【００１２】
特許文献１は、この課題を解決するために、ＤＱＳ信号を遅延する２種類の遅延回路を設け、一方の遅延回路から出力されるＤＱＳ信号の立ち上がりエッジに応答してフリップフロップにでデータを取り込み、他方の遅延回路から出力されるＤＱＳ信号（イネーブル信号）を、ＤＱＳ信号の立ち下がりエッジに応答してデータを取り込むフリップフロップのイネーブル端子に接続している。しかしながら、特許文献１による解決方法は、イネーブル端子によって動作を制御されるフリップフロップを必要としなければならず、既存のフリップフロップやラッチを利用することができない。
【００１３】
また、ＤＤＲＳＤＲＡＭは、シングルエンドのＤＱＳ信号のみならず差動ＤＱＳ信号を出力するものもあり、メモリ制御回路は、このような差動ＤＱＳ信号に対処することが要求されている。
【００１４】
本発明は、このような従来の課題を解決し、できるだけ既存の回路を利用しつつ、データストローブ信号の不定な状態が内部回路へ伝播されることを防止するメモリ制御回路を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明に係るメモリ制御回路は、メモリへのデータの書込みまたはメモリからのデータの読出しをデータストローブ信号を用いて制御するものであって、入力されたデータストローブ信号を第１の遅延量だけ遅延する第１の遅延回路と、入力されたデータストローブ信号を第１の遅延量よりも大きい第２の遅延量だけ遅延する第２の遅延回路と、第１の遅延回路によって遅延された第１の遅延信号と第２の遅延回路によって遅延された第２の遅延信号に基づき前記入力されたデータストローブ信号の立ち上がりエッジまたは立ち下がりエッジに同期した立下りエッジまたは立ち上がりエッジを有する第３の遅延信号を生成する生成回路と、前記第１の遅延信号に応答して入力された第１のデータを取り込む第１の回路と、前記第３の遅延信号に応答して入力された第２のデータを取り込む第２の回路とを有する。
【００１６】
好ましくは生成回路は、前記第１の遅延信号と前記第２の遅延信号を入力するアンド回路を含む。好ましくは、第１の遅延量は、前記入力されたデータストローブ信号に対して位相差が１／４であり、第２の遅延量は、前記入力されたデータストローブ信号に対して位相差が１／４より大きく１／２以下である。好ましくは、第１の回路は、第１の遅延信号の立ち上がりエッジまたは立ち下りにエッジ応答して第１のデータを取り込み、前記第２の回路は、前記第３の遅延信号の立ち上がりまたは立ち下りエッジに応答して第２のデータを取り込む。好ましくは、メモリ制御回路はさらに、差動データストローブ信号を入力し、前記入力されたデータストローブ信号を出力する差動回路を含む。第１および第２の回路は、例えばフリップフロップまたはラッチである。
【発明の効果】
【００１７】
本発明によれば、データストローブ信号を異なる遅延量で遅延し、両者から入力されたデータストローブ信号の立ち上がりエッジまたは立ち下りエッジに同期した立ち上がりエッジまたは立ち下がりエッジを有する第３の遅延信号を生成してデータの取り込みを行うことで、データストローブ信号がハイインピーダンス状態の不定になったとしても、それに伴う誤動作を防止することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明を実施するための最良の形態を図面を参照して詳細に説明する。ここでは、ＤＤＲＳＤＲＡＭを例に用い、これをメモリと称する。
【実施例】
【００１９】
図１は、本発明の実施例に係るメモリ制御回路のデータ取り込み部の回路構成を示す図である。メモリ制御回路１００は、ＤＱＳ信号のクロックによって動作されるＤＱＳ回路領域１１０と、内部クロックＨＣＬＫによって動作される内部回路領域１２０とを含む。
【００２０】
ＤＱＳ回路領域１１０は、メモリからのデータの読出し時にメモリからデータを受け取る入力バッファ２００、ＤＱＳ信号を受け取る入力バッファ２１０、入力バッファ２１０によって受け取られたＤＱＳ信号を第１の遅延量で遅延し第１の遅延信号ＤＱＳ１を出力する第１の遅延回路２２０と、入力バッファ２１０によって受け取られたＤＱＳ信号を第１の遅延量よりも大きい第２の遅延量で遅延し第２の遅延信号ＤＱＳ２を出力する第２の遅延回路２３０と、第１および第２の遅延信号を入力するアンド回路２４０と、アンド回路２４０の出力を反転した第３の遅延信号ＤＱＳ３を出力するインバータ２５０と、入力バッファ２００によって受け取られたデータを第１の遅延信号ＤＱＳ１の立ち上がりエッジに応答して取り込むフリップフロップ２６０と、フリップフロップ２６０の出力を第３の遅延信号ＤＱＳ３の立ち上がりエッジに応答して取り込むフリップフロップ２７０と、入力バッファ２００によって受け取られたデータを第３の遅延信号ＤＱＳ３の立ち上がりエッジに応答して取り込むフリップフロップ２８０とを含んでいる。
【００２１】
内部回路領域１２０は、フリップフロップ２７０からの出力を内部クロックＨＣＬＫの立ち上がりエッジで取り込むフリップフロップ３００と、フリップフロップ２８０の出力を内部クロックＨＣＬＫの立ち下がりエッジで取り込むフリップフロップ３１０とを含んでいる。
【００２２】
次に、図２に示すタイミングチャートを参照して各部の動作を説明する。メモリからデータを読み出すときすなわちリード時、メモリ制御回路は、メモリにリードコマンドを送信する。これに応答して、メモリは、時刻ｔ１でハイインピーダンス状態にあるＤＱＳ信号をローレベルのプリアンブルＰ１に遷移させ、時刻ｔ２からＤＱＳ信号とデータの出力を開始する。このとき、ＤＱＳ信号とデータは同相である。
【００２３】
メモリ制御回路１００は、図２(ａ)および（ｂ）に示すように、データおよびＤＱＳ信号を入力バッファ２００、２１０に入力される。ＤＱＳ信号は、入力バッファ２１０にてしきい値電圧と比較され、図２（ｃ）に示すようにハイレベル（ＶＩＨ）またはローレベル（ＶＩＬ）のパルス波形となる。
【００２４】
次に、ＤＱＳ信号は、第１の遅延回路２２０に入力され、図２（ｄ）に示すように時刻ｔ２、すなわちＤＱＳ信号の立ち上がりエッジから第１の遅延量ｔｄ１だけ遅延される。好ましくは、第１の遅延量ｔｄ１は、ＤＱＳ信号の１／４位相である。第１の遅延回路２２０は、第１の遅延量だけ遅延された第１の遅延信号ＤＳＱ１をアンド回路２４０およびフリップフロップ２６０へ出力する。
【００２５】
さらにＤＱＳ信号は、図２（ｅ）に示すように時刻ｔ２から第２の遅延量ｔｄ２だけ遅延される。好ましくは、第２の遅延量ｔｄ２は、ＤＱＳ信号の１／４位相より大きく１／２位相以下である。第２の遅延回路２３０は、第２の遅延量だけ遅延された第２の遅延信号ＤＱＳ２をアンド回路２４０のもう一方の入力に出力する。
【００２６】
アンド回路２４０は、第１および第２の遅延信号ＤＱＳ１、ＤＱＳ２を入力し、その論理関をインバータ２５０に出力する。インバータ２５０は、これを反転出力し、図２（ｆ）に示すような第３の遅延信号ＤＱＳ３を出力する。第３の遅延信号ＤＱＳ３の立ち下がりエッジは、第２の遅延信号ＤＱＳ２の立ち上がりエッジに等しく、第３の遅延信号ＤＱＳ３の立ち上がりエッジは、第１の遅延信号ＤＱＳの立ち下りエッジに等しい。また、第３の遅延信号ＤＱＳ３の立ち下がりエッジから立ち上がりエッジまでのローレベルの期間ｔｄ３は、ｔｄ３＝ｔｄ２−ｔｄ１となる。
【００２７】
時刻ｔ３のとき、第１の遅延回路により遅延された第１の遅延信号ＤＱＳ１の立ち上がりエッジに応答してフリップフロップ２６０は、入力バッファ２００に保持されたデータＤ１を取り込む。
【００２８】
時刻ｔ４のとき、第３の遅延信号ＤＱＳ３の立ち上がりエッジに応答してフリップフロップ２８０は、入力バッファ２００に保持されたデータＤ２を取り込む。またこれと同じタイミングで、フリップフロップ２７０は、フリップフロップ２６０から出力されたデータを取り込む。
【００２９】
時刻ｔ５のとき、第１の遅延信号ＤＱＳ１の立ち上がりエッジに応答してフリップフロップ２６０は次に転送されたデータＤ３を取り込む。
【００３０】
時刻ｔ６のとき、メモリは、リード動作を終了するためＤＱＳ信号をローレベルのポストアンブルＰ２遷移させ、時刻ｔ７のとき、ＤＱＳ信号をローレベルからハイインピーダンス状態に遷移させる。このとき、ＤＱＳ信号にノイズやオーバーシュートＳが生じると、入力バッファ２１０において、不所望なパルス波形Ｓ１が形成される（図２（ｃ）を参照）。これにより、第１および第２の遅延回路２２０、２３０によって遅延された第１および第２の遅延信号ＤＱＳ１、ＤＱＳ２にも不所望なパルス波形Ｓ１が伝播される（図２（ｄ）および（ｅ）を参照）。しかし、第１および第２の遅延信号ＤＱＳ１、ＤＱＳ２は、アンド回路２４０によってゲートされ、不所望なパルス波形Ｓ１が取り除かれる。従って、第３の遅延信号ＤＱＳ３には、不所望なパルス波形Ｓ１が伝播されず、フリップフロップ２７０、２８０がポストアンブル後の不定な状態において誤ってデータを取り込むことが防止される。この結果、メモリ制御回路１００は、メモリからデータを正確に読み出すことができる。
【００３１】
なお上記例は、アンド回路の出力をインバータ２５０により反転して第３の遅延信号ＤＱＳ３を生成するようにしたが、アンド回路２４０の出力を第３の遅延信号ＤＱＳ３としてもよい。この場合、フリップフロップ２７０、２８０は、第３の遅延信号ＤＱＳの立ち下りエッジに応答してデータを取り込めばよい。さらに、フリップフロップ２６０、２７０、２８０は、立ち上がりエッジまたは立ち下がりエッジのいずれに応答してデータの取り込みを行うようにしてもよく、また、フリップフロップの代わりにラッチを用いても良い。遅延回路２２０、２３０は、ＤＬＬ等を用いて構成することができる。
【００３２】
次に、本発明の第２の実施例について説明する。図３は、本発明の第２の実施例に係るメモリ制御回路のＤＱＳ回路領域の構成を示す図であり、図１と同一のものには同一番号を付しその説明を省略する。第２の実施例では、ＤＤＲＳＤＲＡＭとメモリ制御回路との間で双方向通信されるＤＱＳ信号に差動信号を用いる。ＤＱＳ差動信号は、より高速でのデータ転送を可能にするものであり、ＤＱＳ信号とこれを反転した／ＤＱＳ信号とを含む。
【００３３】
図３に示すようにＤＱＳ回路領域１１０は、ＤＱＳ信号を入力するバッファ２１０と、ＤＱＳ信号を反転した／ＤＱＳ信号を入力する入力バッファ２１２と、入力バッファ２１０、２１２によって受け取られたＤＱＳ差動信号からＤＱＳ信号を生成する差動回路２９０を含んでいる。なお、入力バッファ２１０、２１２が差動回路２９０を包含してもよい。差動回路２９０は、ＤＱＳ信号を第１の遅延回路２２０および第２の遅延回路２３０へ出力し、以後の動作は、第１の実施例のときと同様に、遅延されたＤＱＳ信号の立ち上がりエッジと立下りエッジに同期してデータの取り込みが行われる。第２の実施例のメモリ制御回路によれば、ＤＱＳ差動信号を出力するメモリに対応することができる。
【００３４】
以上、本発明の好ましい実施の形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。上記実施例では、
メモリにＤＤＲＳＤＲＡＭを用いたが、これ以外にも同期型のＳＲＡＭ、フラッシュメモリを用いるようにしてもよい。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施例に係るメモリ制御回路のデータ取り込み部の内部回路を示す図である。
【図２】図１に示すメモリ制御回路の各部のタイミングチャートを示す図である。
【図３】本発明の第２の実施例に係るメモリ制御回路のデータの取り込み部の内部回路を示す図である。
【図４】ＤＤＲＳＤＲＡＭとメモリ制御回路との接続例を示す図である。
【図５】ＤＤＲＳＤＲＡＭのデータの読み書き動作を説明するためのタイミングチャートであり、図５(ａ)はリード時、図５（ｂ）はライト時である。
【図６】図６（ａ）は従来のメモリ制御回路の構成を示し、図６（ｂ）はそのタイミングチャートである。
【符号の説明】
【００３６】
１００：メモリ制御回路              １１０：ＤＱＳ回路領域
１２０：内部クロック領域          ２００、２１０：入力バッファ
２２０：第１の遅延回路            ２３０：第２の遅延回路
２４０：アンド回路                ２５０：インバータ
２６０、２７０、２８０、３００、３１０：フリップフロップ
２９０：差動回路
【図１】
0005191218.tif 000002
【図２】
0005191218.tif 000003
【図３】
0005191218.tif 000004
【図４】
0005191218.tif 000005
【図５】
0005191218.tif 000006
【図６】
0005191218.tif 000007