(57)【要約】【課題】データストローブ信号の遅延変動による不安定動作を解消する。【解決手段】制御回路１４は、メモリのデータリードに係るリード要求信号Ｒｅａｄ＿ＲＱとリード要求に係るバースト長情報信号ＢＬとを入力し、リード要求信号Ｒｅａｄ＿ＲＱがアクティブとなった場合にデータストローブ信号ＤＱＳをプルアップするようにプルアップ回路１１を制御する。データストローブ信号ＤＱＳがＨレベルからＬレベルに遷移したことを捉えてマスク信号Ｅｎａｂｌｅをマスク解除状態とする。データストローブ信号ＤＱＳが所定の遷移を繰り返したことをバースト長情報信号ＢＬを元に判断してマスク信号Ｅｎａｂｌｅをマスク状態とする。この遷移を繰り返したことでデータストローブ信号ＤＱＳにおけるポストアンブルが開始され、ポストアンブル期間が終了した後に、データストローブ信号ＤＱＳをＨレベルにプルアップする。【選択図】図１
2008103013.tif 000002
【特許請求の範囲】
【請求項１】
メモリから出力されるデータストローブ信号を入力する入力端子をプルアップするプルアップ回路と、
前記データストローブ信号の信号レベルを所定の参照電圧と比較する比較回路と、
前記比較回路の比較結果となる出力信号をマスク信号でマスク可能とするマスク回路と、
前記マスク回路の出力信号を遅延し、前記メモリから出力されるデータを取り込むタイミングを持ったストローブ信号を生成する遅延回路と、
前記メモリからのデータリードを要求するリード要求信号と該リード要求に係るバースト長を表すバースト長情報信号とを入力し、該リード要求信号がアクティブとなった場合に前記データストローブ信号を第１のレベルにプルアップするように前記プルアップ回路を制御し、前記データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えて前記マスク信号をマスク解除状態とし、前記データストローブ信号が所定の遷移を繰り返したことを前記バースト長情報信号を元に判断して前記マスク信号をマスク状態とするように制御する制御回路と、
を備えることを特徴とするメモリリード制御回路。
【請求項２】
前記データストローブ信号が前記所定の遷移を繰り返したことで前記データストローブ信号におけるポストアンブルが開始され、前記制御回路は、該ポストアンブル期間が終了した後に、前記データストローブ信号を第１のレベルにプルアップする制御を終了することを特徴とする請求項１記載のメモリリード制御回路。
【請求項３】
前記入力端子をプルダウンするプルダウン回路をさらに備え、
前記制御回路は、前記データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えて前記プルダウン回路を動作させ、前記データストローブ信号を第１のレベルにプルアップする制御を終了すると同時に前記プルダウン回路を非動作となるように制御することを特徴とする請求項２記載のメモリリード制御回路。
【請求項４】
前記制御回路は、前記リード要求信号に所定の間隔で続けて新たなリード要求信号が入力された場合に、前記マスク信号をマスク状態とするように制御した後に所定の間隔で再度前記マスク信号をマスク解除状態とすることを特徴とする請求項１〜３のいずれか一に記載のメモリリード制御回路。
【請求項５】
前記所定の間隔は、前記制御回路が動作する際の基準クロック信号における１クロックサイクルに相当することを特徴とする請求項４記載のメモリリード制御回路。
【請求項６】
メモリから出力されるデータストローブ信号を入力する入力端子をプルアップするプルアップ回路と、前記データストローブ信号の信号レベルを所定の参照電圧と比較する比較回路と、前記比較回路の比較結果となる出力信号をマスク信号でマスク可能とするマスク回路と、前記マスク回路の出力信号を遅延し、前記メモリから出力されるデータを取り込むタイミングを持ったストローブ信号を生成する遅延回路と、を備えるメモリリード制御回路を制御する方法であって、
前記メモリからのデータリードを要求するリード要求信号がアクティブとなった場合に前記データストローブ信号を第１のレベルにプルアップするように制御するステップと、
前記データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えるステップと、
前記第２のレベルに遷移した場合に、前記マスク信号をマスク解除状態とするステップと、
入力されるバースト長情報信号を元に前記データストローブ信号が所定の遷移を繰り返したことを判断するステップと、
前記データストローブ信号が前記所定の遷移を繰り返した場合に前記マスク信号をマスク状態とするように制御するステップと、
を含むことを特徴とするメモリリード制御方法。
【請求項７】
前記データストローブ信号が前記所定の遷移を繰り返したことで前記データストローブ信号におけるポストアンブルが開始され、該ポストアンブル期間が終了した後に、前記データストローブ信号を第１のレベルにプルアップする制御を終了するステップをさらに含むことを特徴とする請求項６記載のメモリリード制御方法。
【請求項８】
前記データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えて前記入力端子をプルダウンするプルダウン回路を動作させるステップと、
前記データストローブ信号を第１のレベルにプルアップする制御を終了するステップと同時に前記プルダウン回路を非動作となるように制御するステップと、
をさらに含むことを特徴とする請求項７記載のメモリリード制御方法。
【請求項９】
前記リード要求信号に所定の間隔で続けて新たなリード要求信号が入力されたか否かを判断するステップと、
前記リード要求信号に所定の間隔で続けて新たなリード要求信号が入力された場合には、前記マスク信号をマスク状態とするように制御するステップの後の所定の間隔経過時に、前記データストローブ信号が第２のレベルにあるか否かを判断するステップと、
前記データストローブ信号が第２のレベルにある場合には前記マスク信号を再度マスク解除状態とするステップと、
をさらに含むことを特徴とする請求項６〜８のいずれか一に記載のメモリリード制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリリード制御回路およびその制御方法に関し、特に、ＤＤＲ  ＳＤＲＡＭ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）からデータを読み出すためのリード制御回路とその制御方法に関する。
【背景技術】
【０００２】
ＤＤＲ  ＳＤＲＡＭは、回路間の同期を取るためのクロック信号の立ち上がり時と立ち下がり時の両方でデータの読み書きを行うことができる高速なデータ転送機能を持ったＳＤＲＡＭである。ＤＤＲ  ＳＤＲＡＭは、外部クロックの２倍の周波数でデータの入出力を行うため、ＳＤＲ  ＳＤＲＡＭ（Ｓｉｎｇｌｅ  Ｄａｔａ  Ｒａｔｅ  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）よりも確定データの幅が狭くなる。メモリからコントローラまでの配線長が異なると、データがレシーバに届くまでの時間（フライトタイム）に差が生じ、レシーバがデータを取り込むタイミングを決定することが困難になる。そこでＤＤＲ  ＳＤＲＡＭでは、レシーバにデータを転送するタイミングを知らせるために、データストローブ信号（ＤＱＳ）を用いている。ＤＱＳは、双方向のストローブ信号であって、リード／ライト動作時にデータ入出力の動作基準クロックとして機能する。リード動作では、ＤＱＳのエッジとリードデータのエッジは一致するので、ＤＤＲ  ＳＤＲＡＭからリードデータを受け取る場合、受け取ったＤＱＳをリードデータの中央まで、内部で遅らせるようにする。
【０００３】
ＤＤＲ  ＳＤＲＡＭがアクティブ状態のときにリード・コマンド（ＲＥＡＤ）を受け取ると、データストローブ信号ＤＱＳは、ハイインピーダンス（中間レベル）からローレベルに変化する。このローレベルの期間がプリアンブルである。プリアンブルは最初のデータが出力される約１クロック前に生ずる。プリアンブルに続いて、データストローブ信号ＤＱＳは、データがデータ入出力端子（ＤＱ）上に有効データがある期間、クロック信号と同一の周波数でトグルする。最後のデータが転送された後のローレベルの期間がポストアンブルである。ポストアンブルは最後のデータのエッジから約１／２クロックの間生ずる。
【０００４】
データストローブ信号ＤＱＳは、ハイインピーダンス状態からプリアンブルに遷移し、また、ポストアンブルからハイインピーダンス（中間レベル）状態に移行する。この中間レベルがメモリ・インタフェース内部に不定レベルの信号となって伝播すると、リードデータがデータ同期部でラッチされる前にデータ取込み部のリードデータが破壊されてしまう虞がある。そこで、このようなデータが不定となることを回避するために、ストローブ信号の入力側に不定レベルが伝播しないようにするための技術が知られている（例えば特許文献１、２参照）。
【０００５】
図５は、特許文献１において記載されるデータストローブ受信機の構成を示すブロック図である。図５において、データストローブ受信機は、データストローブ信号ＤＱＳと基準電圧１１７（１ｓｔＶｒｅｆ）とを比較する入力比較器１２０を備える。また、基準電圧１１７に対して比較レベルを高く、または低く設定される電圧基準１３２（２ｎｄＶｒｅｆ）をデータストローブ信号ＤＱＳと比較する比較器１３５を備える。初期状態では、データストローブ信号ＤＱＳは中間レベル（ハイインピーダンス）であるため、比較器１３５の出力１４０（ＤＱＳ＿Ｄｅｔｅｃｔ）は、ローレベルを出力する。出力１４０は、フリップフロップ１４５のＰｒｅｓｅｔに接続されており、初期状態ではローレベルが入力されているため、Ｐｒｅｓｅｔはインアクティブである。フリップフロップ１４５の出力Ｑは、最初にＣｌｅａｒ信号によってリセットされているため、ローレベルとなっている。また、比較器１２０の出力は、遅延要素１２５に入力される。遅延要素１２５は、入力信号を９０度（位相）遅延させることが可能であって、Ｅｎａｂｌｅ信号がハイレベルの期間だけ入力を９０度遅延させた９０度遅延信号ＤＱＳ＿９０をＦＩＦＯ１１０に出力し、Ｅｎａｂｌｅ信号がローレベルの期間は入力にかかわらず、９０度遅延信号ＤＱＳ＿９０をローレベルとする。初期状態ではＥｎａｂｌｅ信号がローレベルであるため９０度遅延信号ＤＱＳ＿９０はローレベルである。
【０００６】
データ転送が開始されると、データストローブ信号ＤＱＳが中間レベルからローレベルへ遷移するが、この状態でもデータストローブ信号ＤＱＳの信号レベルは、２ｎｄＶｒｅｆの電位より低いため、ＤＱＳ＿Ｄｅｔｅｃｔはローレベルのままであり、Ｅｎａｂｌｅもローレベルのままである。その後、データストローブ信号ＤＱＳがハイレベルへ遷移すると、比較器１３５はハイレベルを検出し、ＤＱＳ＿Ｄｅｔｅｃｔがハイレベルへ遷移する。このとき、フリップフロップ１４５は、Ｐｒｅｓｅｔ状態となるため、Ｅｎａｂｌｅ信号はハイレベルとなる。したがって、９０度遅延信号ＤＱＳ＿９０の出力が開始される。９０度遅延信号ＤＱＳ＿９０は、インバータ１５５で反転され、反転信号がフリップフロップ１４５のクロックへ接続されており、９０度遅延信号ＤＱＳ＿９０のローレベルへの遷移でフリップフロップ１４５のデータ入力（ローレベル）がラッチされる。これによって、遅延要素１２５のＥｎａｂｌｅがローレベルとなる。再度、データストローブ信号ＤＱＳがハイレベルに遷移すると、再び、ＤＱＳ＿ＤｅｔｅｃｔがハイレベルになりＥｎａｂｌｅがハイレベルとなる。したがって、９０度遅延信号ＤＱＳ＿９０への出力が可能となる。以降はこの動作が繰り返される。ＦＩＦＯ１１０は、データ信号ＤＱを比較器１０５で電圧基準１０２（３ｒｄＶｒｅｆ）と比較した結果に対して、９０度遅延信号ＤＱＳ＿９０の遷移毎に取り込むように動作する。リードアクセス終了時は、データストローブ信号ＤＱＳがポストアンブル後に中間レベル（ＨｉＺ）状態に遷移するが、中間レベルは２ｎｄＶｒｅｆよりも低いレベルであるため、この遷移は無視される。
【０００７】
図７は、特許文献２において記載されるメモリインタフェース制御回路の構成を示すブロック図である。図７において、可変遅延回路２０４は、バッファ２０２でバッファリングされたデータストローブ信号ＤＱＳに対し、クロックの半周期ほど位相をずらす制御を行う。マスク生成回路２０５は、可変遅延回路２０３によって遅延が調整された基本マスク信号ＳＤＦと可変遅延回路２０４によって遅延が調整されたデータストローブ信号ＤＱＳＬとからマスク信号ＤＱＥを生成する。論理積回路２０６は、マスク生成回路２０５で生成されたマスク信号ＤＱＥとデータストローブ信号ＤＱＳＬとの論理積を取ることにより、データストローブ信号ＤＱＳＬからグリッジノイズを削除したデータストローブ信号ＤＱＳＰを生成する。ＦＩＦＯ回路２１１は、バッファ２０１でバッファリングされたデータ信号ＤＱに対し、データストローブ信号ＤＱＳＰの遷移毎に取り込みを行って出力信号ＤＯＵＴを出力するように動作する。制御回路２１３は、遅延調整前の基本マスク信号ＳＤＥを生成する機能、可変遅延回路２０３を制御する機能、可変遅延回路２０４を制御する機能を有すると共に、ＤＤＲ２−ＳＤＲＡＭへのキャリブレーション用パターン生成機能を有し、装置初期化時にこのパターンを持つ出力信号ＤＯＵＴを期待値としてＰＡＳＳ／ＦＡＩＬ判定を行い、最適な遅延時間が実現されるように遅延回路２０３、２０４の遅延時間のキャリブレーションを行う。
【０００８】
【特許文献１】特開２００３−２２３７８６号公報
【特許文献２】特開２００５−２７６３９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところで、特許文献１に記載のデータストローブ受信機では、データストローブ信号ＤＱＳの中間レベルを検知しないように、２ｎｄＶｒｅｆをリファレンス電圧とする比較器を搭載する必要がある。したがって、チップ内部に比較器を搭載することによってチップ面積が増大してしまう。また、２ｎｄＶｒｅｆを供給するためのチップ内の回路もしくは外部供給のための部品が増え、コスト高となる。さらに、２ｎｄＶｒｅｆは、中間レベルとハイレベルもしくはローレベルとの間に設定されるが、実際の波形には、図６に示す範囲Ｖ１、Ｖ２の様にどちらのレベルにもノイズや反射による波形の乱れが想定される。そのため、両者のどちらにもかからないレベルに２ｎｄＶｒｅｆを調整することができる範囲は、非常に狭く、調整が困難となる虞がある。
【００１０】
一方、特許文献２に記載のメモリインタフェース制御回路では、マスク生成回路２０５から出力されるマスク信号ＤＱＥによってデータストローブ信号ＤＱＳＬがマスクされるが、マスク信号ＤＱＥの遅延を可変遅延回路２０３によって制御する必要がある。この場合、可変遅延回路２０３の遅延を最適値に制御するには、ＤＤＲ−ＳＤＲＡＭへのキャリブレーションが必要になるため、キャリブレーションのための制御回路２１３が必要になる。また、キャリブレーションに要する処理時間が発生する。さらに、このキャリブレーションを装置の初期化時に実行することになっているが、実使用では動作中の環境変動（電圧変動、温度変動）などによって最適な遅延は、一定でない可能性がある。これを回避するために定期的にキャリブレーションを実行すると、メモリアクセスのパフォーマンスが低下してしまう。
【課題を解決するための手段】
【００１１】
本発明の１つのアスペクトに係るメモリリード制御回路は、メモリから出力されるデータストローブ信号を入力する入力端子をプルアップするプルアップ回路と、データストローブ信号の信号レベルを所定の参照電圧と比較する比較回路と、比較回路の比較結果となる出力信号をマスク信号でマスク可能とするマスク回路と、マスク回路の出力信号を遅延し、メモリから出力されるデータを取り込むタイミングを持ったストローブ信号を生成する遅延回路と、メモリからのデータリードを要求するリード要求信号と該リード要求に係るバースト長を表すバースト長情報信号とを入力し、該リード要求信号がアクティブとなった場合にデータストローブ信号を第１のレベルにプルアップするようにプルアップ回路を制御し、データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えてマスク信号をマスク解除状態とし、データストローブ信号が所定の遷移を繰り返したことをバースト長情報信号を元に判断してマスク信号をマスク状態とするように制御する制御回路と、を備える。
【００１２】
本発明の他のアスペクトに係るメモリリード制御回路の制御方法は、メモリから出力されるデータストローブ信号を入力する入力端子をプルアップするプルアップ回路と、データストローブ信号の信号レベルを所定の参照電圧と比較する比較回路と、比較回路の比較結果となる出力信号をマスク信号でマスク可能とするマスク回路と、マスク回路の出力信号を遅延し、メモリから出力されるデータを取り込むタイミングを持ったストローブ信号を生成する遅延回路と、を備えるメモリリード制御回路を制御する方法である。この方法は、メモリからのデータリードを要求するリード要求信号がアクティブとなった場合にデータストローブ信号を第１のレベルにプルアップするように制御するステップと、データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えるステップと、第２のレベルに遷移した場合に、マスク信号をマスク解除状態とするステップと、入力されるバースト長情報信号を元にデータストローブ信号が所定の遷移を繰り返したことを判断するステップと、データストローブ信号が所定の遷移を繰り返した場合にマスク信号をマスク状態とするように制御するステップと、を含む。
【発明の効果】
【００１３】
本発明によれば、リード要求信号とバースト長情報とを元に、データストローブ信号のプルアップを制御し、データストローブ信号のマスク制御を行うので、タイミング設計が容易となり、データストローブ信号の遅延変動によるシステムの不安定動作を解消することができる。
【発明を実施するための最良の形態】
【００１４】
本発明の実施形態に係るメモリリード制御回路は、メモリから出力されるデータストローブ信号（図１のＤＱＳ）を入力する入力端子（図１の１０）をプルアップするプルアップ回路（図１の１１）および入力端子をプルダウンするプルダウン回路（図１の１２）と、データストローブ信号の信号レベルを所定の参照電圧（図１のＶｒｅｆ）と比較する比較回路（図１の１３）と、比較回路の比較結果となる出力信号をマスク信号（図１のＥｎａｂｌｅ）でマスク可能とするマスク回路（図１の１５）と、マスク回路の出力信号を遅延し、メモリから出力されるデータを取り込むタイミングを持ったストローブ信号（図１のＤＱＳ９０）を生成する遅延回路（図１の１６）と、制御回路（図１の１４）とを備える。
【００１５】
制御回路は、メモリからのデータリードを要求するリード要求信号（図１のＲｅａｄ＿ＲＱ）とリード要求に係るバースト長を表すバースト長情報信号（図１のＢＬ）とを入力し、リード要求信号がアクティブとなった場合にデータストローブ信号を第１のレベル（例えばハイレベル）にプルアップするようにプルアップ回路を制御し、データストローブ信号が第１のレベルから第２のレベル（例えばローレベル）に遷移したことを捉えてマスク信号をマスク解除状態とし、データストローブ信号がリードタイミングを表す所定の遷移を繰り返したことをバースト長情報信号を元に判断してマスク信号をマスク状態とするように制御する。
【００１６】
また、データストローブ信号が所定の遷移を繰り返したことでデータストローブ信号におけるポストアンブルが開始され、制御回路は、ポストアンブル期間が終了した後に、データストローブ信号を第１のレベルにプルアップする制御を終了してもよい。
【００１７】
さらに、制御回路は、データストローブ信号が第１のレベルから第２のレベルに遷移したことを捉えてプルダウン回路を動作させ、データストローブ信号を第１のレベルにプルアップする制御を終了すると同時にプルダウン回路を非動作となるように制御してもよい。
【００１８】
また、制御回路は、リード要求信号に所定の間隔で続けて新たなリード要求信号が入力された場合に、マスク信号をマスク状態とするように制御した後に所定の間隔で再度マスク信号をマスク解除状態とするようにしてもよい。ここで所定の間隔は、制御回路が動作する際の基準クロック信号における１クロックサイクルに相当してもよい。
【００１９】
制御回路は、以上のように動作し、リード待ち状態でデータストローブ信号（ＤＱＳ）をプルアップ状態にする。これにより、データストローブ信号（ＤＱＳ）のプリアンブル開始時のハイインピーダンス状態（中間レベル）→ローレベルへの遷移が、ハイレベル→ローレベルとなる。したがって、この遷移のタイミング検出が容易となる。また、プリアンブル開始時にデータストローブ信号（ＤＱＳ）のマスクを解除し、データストローブ信号（ＤＱＳ）の最後の立下りでマスクを開始する制御を行う。これにより、グリッチのないデータストローブ信号（ＤＱＳ９０）を生成可能とした上で、従来例のような２ｎｄＶｒｅｆの調整は不要であるため、安定した動作が実現可能となる。以下、実施例に即し、図面を参照して詳細に説明する。
【実施例１】
【００２０】
図１は、本発明の第１の実施例に係るメモリリード制御回路の構成を示すブロック図である。図１において、メモリリード制御回路は、入力端子１０、プルアップ回路１１、プルダウン回路１２、比較回路１３、制御回路１４、ＡＮＤ回路１５、遅延回路１６を備える。プルアップ回路１１は、プルアップ制御信号ＰＵＰＥＮによって開閉が制御されるスイッチ素子ＳＷ１と抵抗素子Ｒ１との直列接続回路であって、一端が電源ＶＤＤＱに接続され、他端がデータストローブ信号ＤＱＳの入力端子１０に接続される。また、プルダウン回路１２は、プルダウン制御信号ＰＤＮＥＮによって開閉が制御されるスイッチ素子ＳＷ２と抵抗素子Ｒ２との直列接続回路であって、一端が接地され、他端がデータストローブ信号ＤＱＳの入力端子１０に接続される。
【００２１】
比較回路１３は、入力バッファとして機能し、一の入力端が入力端子１０に接続され、データストローブ信号ＤＱＳの信号レベルと他の入力端の参照電圧Ｖｒｅｆとを比較し、比較結果である信号ＤＱＳＩを制御回路１４、ＡＮＤ回路１５に出力する。ＡＮＤ回路１５は、一の入力端に信号ＤＱＳＩが入力され、他の入力端に制御回路１４から出力されるマスク信号Ｅｎａｂｌｅが入力され、マスク信号ＥｎａｂｌｅがＨレベルである場合に信号ＤＱＳＩが信号ＤＱＳＩＮとして出力され（マスク解除状態）、マスク信号ＥｎａｂｌｅがＬレベルである場合に信号ＤＱＳＩＮはＬレベルに保たれる（マスク状態）。ＡＮＤ回路１５の出力である信号ＤＱＳＩＮは、制御回路１４、遅延回路１６に出力される。遅延回路１６は、マスク解除状態にある信号ＤＱＳＩＮに対してクロック信号ＣＬＫの位相９０度分に相当する時間遅延を与え、メモリから出力されるデータを取り込むタイミングを持ったストローブ信号ＤＱＳ９０を生成する。ストローブ信号ＤＱＳ９０によってデータ信号を取り込む回路は、従来と同様であるので説明を省略する。
【００２２】
制御回路１４は、信号ＤＱＳＩ、信号ＤＱＳＩＮ、メモリからのデータリードを要求するリード要求信号Ｒｅａｄ＿ＲＱ、リード要求に係るバースト長を表すバースト長情報信号ＢＬ、クロック信号ＣＬＫを入力する。制御回路１４は、リード要求信号Ｒｅａｄ＿ＲＱがアクティブ（Ｈレベル）となった場合にデータストローブ信号ＤＱＳを電源ＶＤＤＱのレベル（Ｈレベル）に向けてプルアップするようにプルアップ制御信号ＰＵＰＥＮをプルアップ回路１１に出力する。その後、メモリのリード動作が開始され、データストローブ信号ＤＱＳのプリアンブルがメモリから出力されると、データストローブ信号ＤＱＳが電源ＶＤＤＱのレベル（Ｈレベル）から接地レベル（Ｌレベル）に遷移する。この遷移を捉えてマスク信号ＥｎａｂｌｅをＨレベルに変化させる。これによって、ＡＮＤ回路１５は、信号ＤＱＳＩを信号ＤＱＳＩＮとして出力する（マスク解除状態）。その後、データストローブ信号ＤＱＳがデータリードタイミングに係る所定の遷移を繰り返したこと（エッジ数）をバースト長情報信号ＢＬを元に判断し、マスク信号ＥｎａｂｌｅをＬレベルとするように制御する（マスク状態）。
【００２３】
次に、メモリリード制御回路の動作タイミングについて説明する。図２は、本発明の第１の実施例に係るメモリリード制御回路の動作タイミングを表すタイミングチャートである。図２において、初期状態（Ｔ０のサイクル）では、制御回路１４の出力であるマスク信号ＥｎａｂｌｅがＬレベルに設定されており、ＡＮＤ回路１５によってデータストローブ信号ＤＱＳの遅延回路１６への出力がマスクされた状態である（ＤＱＳマスク期間ｔ１）。
【００２４】
制御回路１４は、リード待ち状態において、リード要求信号Ｒｅａｄ＿ＲＱがＴ１のサイクルでＨレベルに変化すると、タイミングｔ２（サイクルＴ２の開始時）でプルアップ制御信号ＰＵＰＥＮをＨレベルとして出力し、プルアップ回路１１をオン（アクティブ）状態にする。中間レベルにあったデータストローブ信号ＤＱＳは、プルアップされることでＨレベルとなる（プルアップ期間ｔ３の開始）。
【００２５】
その後、メモリのリード動作が開始されると、データストローブ信号ＤＱＳは、プリアンブルによってタイミングｔ４でＬレベルに遷移する（プリアンブル期間ｔ５の開始）。制御回路１４は、タイミングｔ４でデータストローブ信号ＤＱＳのＨレベルからＬレベルへの遷移を検出すると、マスク信号ＥｎａｂｌｅをＨレベルにしてデータストローブ信号ＤＱＳのマスク状態を解除し（ＤＱＳマスク期間ｔ１の終了）、遅延回路１６に向かってデータストローブ信号ＤＱＳの入力を開始する。また、同じタイミングｔ４でプルダウン制御信号ＰＤＮＥＮをＨレベルにすることで、プルアップ回路１１とプルダウン回路１２の両方がアクティブ状態となり、通常のＶＴＴ（ＶＤＤＱ／２）レベルの終端状態を開始する。
【００２６】
制御回路１４は、リードのバースト長分のデータストローブ信号ＤＱＳのエッジを内部でカウントし終えると、ポストアンブル期間ｔ６となったと判断し、タイミングｔ７でデータストローブ信号ＤＱＳの（立下り）エッジに同期してマスク信号ＥｎａｂｌｅをＬレベルにする（ＤＱＳマスク期間ｔ８の開始）。リードにおけるバースト長は、２のｎ倍（ｎは自然数）であるため、制御回路１４は、データストローブ信号ＤＱＳの立下りのみをカウントするようにしてもよい。例えば、バースト長４の場合は、２回目のデータストローブ信号ＤＱＳの立下りでマスク信号ＥｎａｂｌｅをＬレベルにすればよい。これにより、タイミングｔ７以降のデータストローブ信号ＤＱＳは、遅延回路１６へ伝播せず、再びマスク状態となる（ＤＱＳマスク期間ｔ８）。したがって、データストローブ信号ＤＱＳのポストアンブル期間ｔ６以後の中間レベルもしくはグリッチを遅延回路１６から内部に伝播しないため、リードデータが不適切なタイミングで読み込まれることを防ぐことができる。
【００２７】
メモリリード制御回路は、以上のように動作し、リード開始時にデータストローブ信号ＤＱＳがＨレベルからＬレベルに変化する遷移を検出したタイミングでマスク解除する。また、マスク開始も、バースト長をデータストローブ信号ＤＱＳのエッジでカウントしてデータストローブ信号ＤＱＳ自身に同期したタイミングであるため、データストローブ信号ＤＱＳの中間レベルとなる不確定なレベルの影響を確実に除外することが可能である。さらに、メモリ・インタフェース内部におけるクロック信号ＣＬＫからみた信号の遅れや、電圧・温度変動、ボード配線遅延等の諸条件によるばらつきの影響を受けることなく動作することが可能である。
【００２８】
通常、メモリ・インタフェースから見たリード時のデータストローブ信号ＤＱＳの入力タイミングは、理想的なタイミングよりも以下のような様々な要因で遅れる。
（１）メモリへ供給するクロックの遅延、
（２）ＰＣＢ上のクロック、データストローブ信号ＤＱＳの伝送遅延、
（３）メモリが出力するデータストローブ信号ＤＱＳの遅延、
（４）インタフェース回路内の内部遅延
上記（１）〜（４）の遅延が、インタフェース内部から見た基準（クロック信号）から遅れて、さらにそれぞれが諸条件によりばらつきをもっている。したがって、データストローブ信号ＤＱＳの有効な期間（中間レベルではない）だけを取り込むことは困難である。そこで、本実施例のメモリリード制御回路のように、データストローブ信号ＤＱＳ自身を基準に制御することで、これらの遅延変動によるシステムの不安定動作を解消することができる。
【実施例２】
【００２９】
本発明の第２の実施例に係るメモリリード制御回路の構成は、図１と同一である。ただし、制御回路１４の動作の一部が実施例１とは異なる。図３は、本発明の第２の実施例に係る制御回路の動作を表すフローチャートである。図３において、ステップＳ１で前のリードサイクルあるいはライトサイクルが終了しているとする。
【００３０】
ステップＳ２において、次のアクセスがリードサイクルか否かを判定し、リード要求信号Ｒｅａｄ＿ＲＱがＨレベルに変化した場合、ステップ３でデータストローブ信号ＤＱＳをプルアップ状態とする。
【００３１】
ステップＳ４において、次のリードサイクルまでの間隔が最小の１サイクル（クロック信号ＣＬＫ１周期相当）であるか、２サイクル以上であるか、すなわちリード要求信号Ｒｅａｄ＿ＲＱがクロック信号ＣＬＫ１周期分空けて再度リード要求信号Ｒｅａｄ＿ＲＱが到来するか否かを判定する。リードサイクルまでの間隔が２サイクル以上である場合、実施例１で説明したと同様に動作し、ステップＳ６でのプリアンブルの到来待ち、ステップＳ７でのマスク解除、ステップＳ８でのマスク解除後の動作が行われる。
【００３２】
リードサイクルまでの間隔が１サイクルの場合には、ステップＳ５において、ポストアンブル開始後の１クロック後のデータストローブ信号ＤＱＳがＬレベルかＨレベルかを判定する。ＨレベルであればステップＳ６に進む。Ｌレベルであれば、次のリードサイクルにおけるプリアンブルであるので、ステップＳ７でのマスク解除を行う。
【００３３】
次に、このように動作する制御回路１４における動作タイミングについて説明する。図４は、本発明の第２の実施例に係るメモリリード制御回路の動作タイミングを表すタイミングチャートである。図４では、リード動作の間隔もしくはライト→リードの間隔が最小の１クロックの間隔になり、データストローブ信号ＤＱＳのポストアンブルとプリアンブルとが連続する場合の動作タイミングを表す。サイクルＴ５までは、リード要求信号Ｒｅａｄ＿ＲＱが２個続いて到来することを除き図２と同じであり、説明を省略する。
【００３４】
図４において、最初のリード動作のバーストの最後のデータストローブ信号ＤＱＳの立下りエッジ（タイミングｔ７でマスク信号ＥｎａｂｌｅのＬレベルへの変化、すなわちポストアンブルの開始）から見て、２つめのクロック信号ＣＬＫのエッジのタイミングｔ１１でデータストローブ信号ＤＱＳのレベルを検出する。検出されたレベルが、Ｌレベルであれば、リードのプリアンブルが開始されていると判断してマスク信号ＥｎａｂｌｅをＨレベルに制御する。その後、データストローブ信号ＤＱＳにおけるバーストカウント動作以降を図２と同様の動作とする。一方、検出されたレベルが、Ｈレベルであれば、プルアップ状態であり、リードのプリアンブルが開始されていないため、図１のＴ２サイクル以降の動作と同様にデータストローブ信号ＤＱＳのプリアンブルを検出する動作から始める。
【００３５】
図４ではデータストローブ信号ＤＱＳのポストアンブルとプリアンブルの境界となるＡ点でデータストローブ信号ＤＱＳにグリッチが発生する。しかし、マスク信号ＥｎａｂｌｅがＬレベル状態のため、このグリッチは、遅延回路１６から内部へ伝播せず、誤動作を防止することが可能となる。
【００３６】
リード動作間隔が最短の１クロックの間隔の場合に、もし、タイミングｔ１１でデータストローブ信号ＤＱＳのレベルを検出してマスク信号Ｅｎａｂｌｅを制御するようにしないとすれば、Ｂ点に示すようにマスク信号Ｅｎａｂｌｅが誤動作状態となる。この場合、グリッチを含んだデータストローブ信号ＤＱＳが遅延回路１６に供給されてしまう虞がある。すなわち、実施例１では、リード動作の間隔が十分ある場合では有効であるが、リード動作間隔が最短の１クロックの間隔になり、データストローブ信号ＤＱＳのプリアンブルを検出するためのプルアップ期間を確保できない場合に誤動作する可能性がある。これに対し、実施例２の制御方法によれば、リード動作間隔が最短の１クロックの間隔であっても誤動作を回避することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の第１の実施例に係るメモリリード制御回路の構成を示すブロック図である。
【図２】本発明の第１の実施例に係るメモリリード制御回路の動作タイミングを表すタイミングチャートである。
【図３】本発明の第２の実施例に係る制御回路の動作を表すフローチャートである。
【図４】本発明の第２の実施例に係るメモリリード制御回路の動作タイミングを表すタイミングチャートである。
【図５】特許文献１において記載されるデータストローブ受信機の構成を示すブロック図である。
【図６】ノイズレベルを模式的に示す図である。
【図７】特許文献２において記載されるメモリインタフェース制御回路の構成を示すブロック図である。
【符号の説明】
【００３８】
１０  入力端子
１１  プルアップ回路
１２  プルダウン回路
１３  比較回路
１４  制御回路
１５  ＡＮＤ回路
１６  遅延回路
ＢＬ  バースト長情報信号
ＣＬＫ  クロック信号
ＤＱＳ  データストローブ信号
ＤＱＳＩ、ＤＱＳＩＮ  信号
ＤＱＳ９０  ストローブ信号
Ｅｎａｂｌｅ  マスク信号
ＰＤＮＥＮ  プルダウン制御信号
ＰＵＰＥＮ  プルアップ制御信号
Ｒ１、Ｒ２  抵抗素子
Ｒｅａｄ＿ＲＱ  リード要求信号
ＳＷ１、ＳＷ２  スイッチ素子
Ｖｒｅｆ  参照電圧
ＶＤＤＱ  電源
【図１】
2008103013.tif 000003
【図２】
2008103013.tif 000004
【図３】
2008103013.tif 000005
【図４】
2008103013.tif 000006
【図５】
2008103013.tif 000007
【図６】
2008103013.tif 000008
【図７】
2008103013.tif 000009