(57)【要約】  メモリデバイスとの間の読み出しオペレーションのタイミングをとるためのシステムおよび方法が提供される。メモリデバイスとの間でタイミング読み出しオペレーションを行うシステムは、メモリデバイスからタイミング信号を受信するゲーティング回路を含む。ゲーティング回路はさらに、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号としてタイミング信号を通す。ゲーティングウィンドウは、制御信号に基づいてゲーティング回路が生成する。システムはさらに、メモリコントローラからの読み出し要求を受信した後で制御信号を生成するタイミング制御回路を含む。タイミング制御回路は、さらに、メモリデバイスからのタイミング信号の時間的ばらつきを吸収するよう制御信号を調節する。【選択図】図１
2014517422.tif 000002
【特許請求の範囲】
【請求項１】
メモリデバイスとの間の読み出しオペレーションのタイミングをとるシステムであって、
制御信号に基づいてゲーティングウィンドウを生成して、前記メモリデバイスからタイミング信号を受信して、前記ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として前記タイミング信号を通す、ゲーティング回路と、
メモリコントローラからの読み出し要求を受信した後で前記制御信号を生成し、前記メモリデバイスからの前記タイミング信号の時間的ばらつきを吸収するべく前記制御信号を調節するタイミング制御回路と
を備える、システム。
【請求項２】
フィードバック回路をさらに備え、
前記フィードバック回路は、
前記タイミング制御回路と、
前記フィルタリングされたタイミング信号と前記制御信号とを入力として受信して、前記タイミング制御回路に位相検知出力値を送信する、位相検知回路と
を有する、請求項１に記載のシステム。
【請求項３】
前記フィードバック回路は、前記タイミング信号の立ち上がりエッジまたは立ち下がりエッジのタイミングを追跡することで、前記制御信号のタイミングを自動的に調節する閉ループの自己調節システムである、請求項２に記載のシステム。
【請求項４】
前記タイミング信号の前記立ち上がりエッジまたは前記立ち下がりエッジに前記制御信号のタイミングが位置合わせされるよう、前記制御信号の前記タイミングが調節される、請求項３に記載のシステム。
【請求項５】
前記タイミング信号はＤＱＳストローブ信号である、請求項１から４のいずれか一項に記載のシステム。
【請求項６】
前記制御信号は、前記ゲーティングウィンドウをそれぞれ開かせ、閉じさせる開信号または閉信号であり、
前記ゲーティングウィンドウは、前記フィルタリングされたタイミング信号における前記ＤＱＳストローブ信号のトライステート領域を削除する、請求項５に記載のシステム。
【請求項７】
前記タイミング制御回路は、
前記読み出し要求を受信した後に前記制御信号を生成する信号生成器と、
カウンタが保持している遅延値に基づいて前記制御信号のタイミングを制御する遅延モジュールと
を有し、
前記カウンタは、前記位相検知回路から受信した前記位相検知出力値に基づいて、前記遅延値をインクリメントまたはデクリメントする、請求項２に記載のシステム。
【請求項８】
前記位相検知回路は、Ｄタイプのフリップフロップを含む、請求項２に記載のシステム。
【請求項９】
前記ゲーティング回路は、
前記制御信号を受信して、前記制御信号のタイミングに基づいて前記ゲーティングウィンドウを出力するＤタイプのフリップフロップと、
前記ゲーティングウィンドウと前記タイミング信号とを入力として受信して、前記フィルタリングされたタイミング信号を出力する「ＡＮＤ」ゲートと
を有する、請求項１から８のいずれか一項に記載のシステム。
【請求項１０】
前記タイミング信号の前記時間的ばらつきは、前記システムの温度もしくは電圧の変化またはクロックのジッタに基づいている、請求項１から９のいずれか一項に記載のシステム。
【請求項１１】
前記信号生成器は、パルス生成器であり、
前記制御信号は、パルス信号である、請求項７に記載のシステム。
【請求項１２】
メモリデバイスとの間の読み出しオペレーションのタイミングをとる方法であって、
ゲーティング回路で、前記メモリデバイスからのタイミング信号を受信する段階と、
メモリコントローラから読み出し要求を受信した後に、タイミング制御回路で制御信号を生成して、前記タイミング制御回路が、前記タイミング信号の時間的ばらつきを吸収するべく前記制御信号を調節する段階と、
前記ゲーティング回路で前記制御信号に基づいて生成されるゲーティングウィンドウ中に、フィルタリングされたタイミング信号として前記タイミング信号を通す段階と
を備える、方法。
【請求項１３】
位相検知回路で、前記フィルタリングされたタイミング信号と前記制御信号とを入力として受信する段階と、
前記入力に基づいて、前記位相検知回路からの位相検知出力値を前記タイミング制御回路に送信する段階と
をさらに備え、
前記位相検知回路および前記タイミング制御回路は、フィードバック回路に含まれる、請求項１２に記載の方法。
【請求項１４】
前記タイミング信号の立ち上がりエッジまたは立ち下がりエッジのタイミングを追跡することで、前記フィードバック回路で、前記制御信号のタイミングを調節する段階をさらに備え、
前記フィードバック回路は、閉ループの自己調節システムを含む、請求項１３に記載の方法。
【請求項１５】
前記調節する段階は、
前記タイミング信号の前記立ち上がりエッジまたは前記立ち下がりエッジに前記制御信号のタイミングを位置合わせする段階を有する、請求項１４に記載の方法。
【請求項１６】
前記タイミング信号はＤＱＳストローブ信号である、請求項１２から１５のいずれか一項に記載の方法。
【請求項１７】
前記制御信号は、前記ゲーティングウィンドウをそれぞれ開かせ、閉じさせる開信号および閉信号であり、
前記ゲーティングウィンドウは、前記フィルタリングされたタイミング信号の前記ＤＱＳストローブ信号のトライステート領域を削除する、請求項１６に記載の方法。
【請求項１８】
前記タイミング制御回路の信号生成部で、前記読み出し要求を受信すると、前記制御信号を生成する段階と、
前記位相検知回路から受信した前記位相検知出力値に基づいて、カウンタが保持している遅延値をインクリメントまたはデクリメントする段階と、
前記遅延値に基づいて、前記タイミング制御回路の遅延モジュール部が前記制御信号のタイミングを制御する段階と
をさらに備える、請求項１３に記載の方法。
【請求項１９】
前記位相検知回路は、Ｄタイプのフリップフロップを含む、請求項１３に記載の方法。
【請求項２０】
前記ゲーティング回路のＤタイプのフリップフロップ部で前記制御信号を受信して、前記フリップフロップ部が、前記制御信号のタイミングに基づいて前記ゲーティングウィンドウを出力する段階と、
前記ゲーティング回路の「ＡＮＤ」ゲート部で「ＡＮＤ」演算を実行して、前記フィルタリングされたタイミング信号を出力する段階であって、前記「ＡＮＤ」ゲート部は、前記「ＡＮＤ」演算のための入力として前記タイミング信号と前記ゲーティングウィンドウとを受信する段階と
をさらに備える、請求項１２から１９のいずれか一項に記載の方法。
【請求項２１】
前記タイミング信号の前記時間的ばらつきは、前記メモリデバイスの温度または電圧の変化またはクロックのジッタに基づいている、請求項１２から２０のいずれか一項に記載の方法。
【請求項２２】
前記信号生成部は、パルス生成器であり、
前記制御信号は、パルス信号である、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照情報］
本願は、「Gateon Open Detect and Track」なる名称の２０１１年６月１４日出願の米国仮特許出願第61/496,965号と、「Gateon Window Close Detect and Track」なる名称の２０１１年９月２８日出願の米国仮特許出願第61/540,142号の優先権を主張しており、両方の文献の開示の全体を、参照により本明細書に組み込む。
【０００２】
ここに記載する技術は、概してメモリコントローラに係り、より詳しくは、タイミングシグナルをゲーティングして、メモリデバイスとの間の読み出しオペレーションを実行する自己調節システムに係る。
【背景技術】
【０００３】
ＳＤＲＡＭ（同期ＤＲＡＭ）は、コンピューティングデバイスで利用されるランダムアクセスメモリ（ＲＡＭ）の一種である。ＳＤＲＡＭは、シングルデータレート（ＳＤＲ）ＳＤＲＡＭとダブルデータレート（ＤＤＲ）ＳＤＲＡＭの両方を含んでいる。ＳＤＲ  ＳＤＲＡＭは、各タイミング信号期間において、タイミング信号の立ち上がりエッジと同期させてデータを転送する。これに比べて、ＤＤＲ  ＳＤＲＡＭは、タイミング信号の立ち上がりエッジおよび立ち下がりエッジの両方においてデータを転送することで、ＳＤＲ  ＳＤＲＡＭの帯域幅の略２倍を達成することができる。
【０００４】
ＳＤＲＡＭメモリモジュールからメモリコントローラにデータを転送するためには、メモリコントローラは、メモリモジュールに対して読み出し要求を発行することで読み出しオペレーションを開始することができる。一定の期間が経過すると、メモリモジュールは、メモリコントローラに、データ信号をタイミング信号とともに送信することで（たとえばＤＱデータ信号とＤＱＳデータストローブ信号とを送信する）応答することができる。システムによっては、メモリコントローラで受け取られる前のタイミング信号にフィルタリングが行われて、タイミング信号の不要な領域および／または信号ノイズが除去される。タイミング信号を受けると、メモリコントローラはデータ信号を読み出して、データを、タイミング信号の立ち上がりエッジおよび／または立ち下がりエッジにおいてレジスタに保持することで、データを格納してよい。
【０００５】
システムに生じうるクロックのジッタおよび／または温度または電圧の変化によって、メモリモジュールからの応答が、様々な量の時間かかる場合がある。フィルタリングが、メモリコントローラで受信される前のタイミング信号に実行される場合には、メモリモジュールの応答が変化しうるこの性質が問題になる場合がある。たとえば、読み出し要求の後の静的な所定の時間間隔で動作するフィルタリング素子は、タイミング信号の変化しうる性質を補うことができず、フィルタリングが不正確になる場合がある。不正確なフィルタリングによって、データの読み出しオペレーションも誤ったものとなり、メモリコントローラにおけるシステムパフォーマンスの低下および／またはデータの破損といった様々な問題が生じうる。
【０００６】
上述した記載は、この技術分野の関連技術の概略を述べたものであり、含まれている情報のいずれも、本特許出願に対する従来技術であると自認したということを示すものではないので、留意されたい。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本開示は、メモリデバイスとの間の読み出しオペレーションのタイミングをとる（timing）ためのシステムおよび方法に関する。一実施形態では、メモリデバイスとの間の読み出しオペレーションのタイミングをとるためのシステムは、メモリデバイスからタイミング信号を受信するゲーティング回路を含む。ゲーティング回路はさらに、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、タイミング信号を通すよう構成されている。ゲーティングウィンドウは、制御信号に基づいてゲーティング回路が生成する。システムはさらに、メモリコントローラからの読み出し要求を受けた後で、制御信号を生成する。タイミング制御回路は、さらに、メモリデバイスからのタイミング信号の時間的ばらつきを吸収するように（to account for）、制御信号を調節する。一実施形態では、タイミング信号の時間的ばらつきは、システムの温度または電圧の変化またはクロックジッタに基づいている。別の実施形態では、タイミング信号がＤＱＳストローブ信号であり、ゲーティングウィンドウは、フィルタリングされたタイミング信号におけるＤＱＳストローブ信号のトライステート領域を削除する。制御信号は、ゲーティングウィンドウをそれぞれ開または閉状態とさせる開信号または閉信号である。
【０００８】
一実施形態では、システムはさらにフィードバック回路を含む。フィードバック回路は、タイミング制御回路と、フィルタリングされたタイミング信号と制御信号とを入力として受け、位相検知出力値をタイミング制御回路に送信する位相検知回路とを含む。一実施形態では、位相検知回路はＤタイプのフリップフロップを含む。別の実施形態では、フィードバック回路は、タイミング信号の立ち上がりエッジまたは立ち下りエッジのタイミングを追跡することで、制御信号のタイミングを自動的に調節する、閉ループの自己調節システムである。制御信号のタイミングは、タイミング信号の立ち上がりエッジまたは立ち下がりエッジに、制御信号のタイミングを位置合わせするよう調節される。
【０００９】
一実施形態では、タイミング制御回路は、読み出し要求を受けた後で制御信号を生成する信号生成器と、カウンタが保持する遅延値に基づいて制御信号のタイミングを制御する遅延モジュールとを含む。カウンタは、位相検知回路から受信した位相検知出力値に基づいて、遅延をインクリメントまたはデクリメントさせる。一実施形態では、信号生成器は、パルス生成器であり、制御信号はパルス信号である。
【００１０】
別の実施形態では、ゲーティング回路が、制御信号を受け、制御信号のタイミングに基づいてゲーティングウィンドウを出力するＤタイプのフリップフロップを含む。ゲーティング回路はさらに、ゲーティングウィンドウとタイミング信号とを入力として受け、フィルタリングされたタイミング信号を出力する「ＡＮＤ」ゲートを含む。
【００１１】
本開示は、メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法にも関している。方法は、メモリデバイスからのタイミング信号をゲーティング回路で受けることを含む。方法はさらに、メモリコントローラからの読み出し要求を受けた後に、タイミング制御回路で制御信号を生成することを含む。タイミング制御回路は、タイミング信号の時間的ばらつきを吸収するように（to account for）、制御信号を調節する。方法はさらに、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、タイミング信号を通すことも含む。ゲーティングウィンドウは、制御信号に基づいてゲーティング回路が生成する。
【図面の簡単な説明】
【００１２】
【図１】メモリコントローラとＳＤＲＡＭメモリモジュールとの間で実行される読み出しオペレーションを示すブロック図である。
【００１３】
【図２】メモリコントローラとＳＤＲＡＭメモリモジュールとの間の読み出しオペレーションを実行するために利用される信号を示す。
【００１４】
【図３】メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための、自己調節する、閉ループのフィードバックシステムを示すブロック図である。
【００１５】
【図４】メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための自己調節する、閉ループのフィードバックシステムが利用する信号の例を示す。
【００１６】
【図５】ゲーティングウィンドウを開くために、タイミング信号の第１の立ち上がりエッジを追跡する回路の回路図である。
【００１７】
【図６】タイミング信号の第１の立ち上がりエッジを追跡するために、回路の第１および第２の繰り返しの例で利用される信号を示す。
【００１８】
【図７】ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路を示す回路図である。
【００１９】
【図８】ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路で利用される信号を示す。
【００２０】
【図９】１つのクロックサイクル全体の幅をもつ制御信号パルスを利用する回路の信号タイミング図である。
【００２１】
【図１０Ａ】早い制御信号および遅い制御信号により生じる問題を示す信号タイミング図である。
【図１０Ｂ】早い制御信号および遅い制御信号により生じる問題を示す信号タイミング図である。
【００２２】
【図１１】メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法を示すフローチャートである。
【発明を実施するための形態】
【００２３】
図１は、メモリコントローラ１０２とＳＤＲＡＭメモリモジュール１０６との間で実行される読み出しオペレーションを示すブロック図である。読み出しオペレーションは、メモリコントローラ１０２が読み出し要求１０４をメモリモジュール１０６に送信して、メモリの特定のアドレスからデータを読み出すよう要求することで開始されてよい。たとえばメモリコントローラ１０２は、マイクロコントローラまたはシステムオンチップ（ＳＯＣ）を含んでよい。メモリコントローラ１０６は、データ信号バス１０８およびタイミング信号１１０を両方とも出力することで、読み出し要求１０４に応答してよい。データ信号バス１０８およびタイミング信号１１０は、たとえばＤＱ信号およびＤＱＳデータストローブ信号をそれぞれ含んでいてよい。タイミング信号１１０は、メモリコントローラ１０２に対して、データ信号１０８が受信される準備が整っていることを伝え、メモリコントローラ１０２に、データ信号１０８の特定のタイミングを伝えるために利用される。
【００２４】
図２は、メモリコントローラとＳＤＲＡＭメモリモジュールとの間の読み出しオペレーションを実行するために利用される信号を示す。図２に示すように、タイミング信号２０２は、トライステート領域２０４と、プリアンブル領域２０６と、データ転送領域２０８と、ポストアンブル領域２１０という４つの別個の領域を含んでよい。メモリモジュールが読み出し要求２１２を受信する前に、タイミング信号２０２は、トライステート領域２０４と称されている、インピーダンスの高い状態にある。トライステート領域２０４で動作している間、タイミング信号２０２は、論理レベルが高くも低くもない中間値にある。読み出し信号２１２を受信すると、タイミング信号２０２は、論理レベルの低いプリアンブル領域２０６へとシフトする（これは、データ転送領域２０８から約１クロックサイクル前にある）。データ信号２１６内のデータパケット２１４を、メモリモジュール１０６とメモリコントローラ１０２との間で転送するべく、タイミング信号２０２がデータ転送領域２０８に入る。この領域で動作している間、タイミング信号２０２は、論理レベルのハイと論理レベルのローとの間で切り替わる（toggle）。メモリコントローラ１０２は、この切り替わるタイミング信号２０２を参照信号として利用して、タイミング信号２０２の立ち上がりエッジおよび／または立ち下がりエッジにあるデータ信号２１６から読み出すことができる。データ転送領域２０８の後であって、後続するトライステート領域に再度入る前に、タイミング信号２０２は、論理レベルの低いポストアンブル領域２１０に入る。ポストアンブル領域２１０からトライステート領域への遷移は、データ転送領域２０８内の有効なデータの最後のエッジから半クロックサイクル分後に生じてよい。
【００２５】
図１に戻り、フィルタリング回路１１２を利用して、より信頼性のある読み出しオペレーションを実行することができる。タイミング信号１１０を、直接メモリモジュール１０６からメモリコントローラ１０２に送信するのではなく、タイミング信号１１０を、フィルタリング回路１１２内をルーティングさせることで、信号ノイズを削除したり、および／または、誤ったデータの読み出しオペレーションにつながりかねないタイミング信号１１０の部分を除去したりすることができる。読み出し要求１０４を受信すると、フィルタリング回路１１２は、タイミング信号１１０のフィルタとして機能するゲーティングウィンドウを生成してよい。フィルタリング回路１１２の開状態のゲーティングウィンドウを通ることが許された、フィルタリングされたタイミング信号１１４は、メモリコントローラ１０２によって受信されてよい。
【００２６】
図２に示すように、ゲーティングウィンドウ２１８は、タイミング信号２０２がプリアンブル領域２０６にある間は開いており、データ転送領域２０８の最後の立ち下がりエッジの後に閉じてよい。ゲーティングウィンドウ２１８は、タイミング信号２０２からノイズをフィルタリングで除去するため、および／または、タイミング信号２０２のトライステート領域２０４がメモリコントローラから読み取られないようにするために利用されてよい。したがい、図２に示すフィルタリングされたタイミング信号２２０は、タイミング信号２０２のデータ転送領域２０８のみを含む、または、論理レベルの低い状態にとどまって、データ送信の前または後に存在するトライステート領域を除去してよい。フィルタリングされたタイミング信号２２０のトライステート領域を除去することで、トライステート領域２０４がメモリコントローラにより読み取ることが許可されている場合、たとえば、トライステート領域２０４を偽のタイミング信号エッジと解釈することにより生じるグリッチ（glitch）が生じなくなる。
【００２７】
図３は、メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための、自己調節する、閉ループのフィードバックシステムを示すブロック図である。図１を参照して上述したように、一般的に読み出しオペレーションは、メモリコントローラからメモリモジュールへの読み出し要求３０２の送信を含み、メモリモジュールの応答が、データ信号およびタイミング信号３０４（たとえばＤＱおよびＤＱＳデータストローブ信号）を含む。図１を参照して上述したように、メモリコントローラに入る前に、タイミング信号３０４の特定の領域をフィルタリングにより除去すると望ましいと思われる。このフィルタリングを実行するために、ゲーティング回路３０６を利用する。ゲーティング回路３０６は、メモリモジュールからタイミング信号３０４を受信して、ゲーティングウィンドウ中にフィルタリングされたタイミング信号３０８としてタイミング信号３０４を通す。フィルタリングされたタイミング信号３０８は、メモリコントローラにより受信されてよい（不図示）。
【００２８】
図４は、メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための自己調節する、閉ループのフィードバックシステムが利用する信号の例を示す。メモリモジュールから送信されるタイミング信号４０２は、図２のタイミング信号２０２を参照して上述した４つの領域（トライステート、プリアンブル、データ転送、ポストアンブル）を含んでいる。図３のゲーティング回路３０６を通過した、フィルタリングされたタイミング信号４０４は、トライステート領域が除去されていることを除いて、元のタイミング信号４０２に類似したものであってよい。ゲーティング回路３０６のフィルタリング処理は、ゲーティングウィンドウ４０６により実行され、これにより、タイミング信号４０２は、ゲーティングウィンドウ４０６が高い、開状態にあるときだけ、フィルタリングされたタイミング信号４０４としてゲーティング回路３０６を通過することができる。トライステート領域を、フィルタリングされたタイミング信号４０４から確実に除去するために、ゲーティングウィンドウ４０６は、タイミング信号４０２のプリアンブル領域にある間は開いており、タイミング信号４０２の最後の立ち下がりエッジの後には閉じるようにしてよい（図４参照）。
【００２９】
クロックジッタおよびシステムの温度および電圧の変化は、タイミング信号４０２に時間的ばらつきを生じさせうる。したがい、ゲーティングウィンドウ４０６を開いたり閉じたりするために静的タイミング法を利用すると、タイミング信号４０２のフィルタリングが不正確になる場合がある。たとえば、読み出し要求の後の所定の時点に開閉するよう構成されているゲーティングウィンドウ４０６でフィルタリングしたタイミング信号４０４が、トライステート領域の部分を含んでしまったり、フィルタリングしたタイミング信号４０４の有効な立ち上がりエッジおよび立ち下りエッジがクリッピングされてしまったりする場合がある。
【００３０】
クロックジッタおよびシステムの温度および電圧の変化を吸収するように、閉ループの、自己調節フィードバックシステムを利用して、タイミング信号３０４の時間的ばらつきを追跡することができる。図３に示すように、フィードバックシステムは、タイミング制御回路３１０と、位相検知回路３１２とからなる。タイミング制御回路３１０は、メモリコントローラから読み出し要求３０２を受信した後で、制御信号３１４を生成する。制御信号３１４は、ゲーティング回路３０６に送られ、ここで、ゲーティング回路３０６のゲーティングウィンドウ４０６を開閉するために利用される。タイミング信号３０４の時間的ばらつきに関してフィードバックシステムから受信した情報に基づいて、タイミング制御回路３１０は、制御信号３１４の伝播を遅らせて、時間的ばらつきを吸収することができる。図４に示すように、制御信号４０８は、ゲーティングウィンドウ４０６の開閉を命令するために利用される１以上のパルス４１０を含んでよい。
【００３１】
図３のフィードバックシステムをイネーブルするために、タイミング制御回路３１０は、位相検知回路３１２に制御信号３１４を送信する。位相検知回路３１２は、制御信号３１４と、フィルタリングされたタイミング信号３０８とを、入力として受信して、フィルタリングされたタイミング信号３０８を参照して制御信号３１４のタイミングに基づいて、位相検知出力値３１６を生成する。このように、位相検知出力値３１６は、フィルタリングされたタイミング信号３０８に比して、制御信号３１４が早すぎるかまたは遅すぎるかを示す。位相検知出力値３１６は、タイミング制御回路３１０により受信されて、後の読み出し要求の結果として発行される制御信号のタイミングを調節するために利用されてよい。
【００３２】
たとえば第１の読み出し要求を受信すると、タイミング制御回路３１０は、第１の制御信号を生成して、この第１の制御信号は、ゲーティング回路３０６と位相検知回路３１２とに送信される。ゲーティング回路３０６は、第１の制御信号を利用してゲーティングウィンドウ４０６を生成して、タイミング信号４０２を、フィルタリングされたタイミング信号４０４として、開状態のゲーティングウィンドウ４０６に通す。位相検知回路３１２は、第１の制御信号とフィルタリングされたタイミング信号３０８とを両方とも受信して、たとえば、フィルタリングされたタイミング信号３０８に比して、第１の制御信号が早すぎるかを判断してよい。位相検知出力値３１６はタイミング制御回路３１０に送られ、タイミング制御回路３１０に、次に生成された制御信号の伝播を遅らせるよう命令する。第２の読み出し要求を受信すると、タイミング制御回路３１０は、位相検知出力値３１６の命令通りに、第２の制御信号の伝播を遅らせる。遅延値によって第２の制御信号が遅くなりすぎる場合には、位相検知出力値３１６は、タイミング制御回路３１０に、次の繰り返しでは、これより小さい遅延値を利用するよう命令する。より小さい遅延値によって、後続する制御信号が早くなりすぎた場合には、タイミング制御回路３１０は、再度、次に生成される制御信号の伝播を遅らせてよい。このように、フィードバックループは、制御信号３１４のタイミングを自動的に調節して、タイミング信号３０４の時間的ばらつきを吸収する自己調節システムを含んでいる。
【００３３】
図５は、ゲーティングウィンドウを開くために、タイミング信号の第１の立ち上がりエッジを追跡する回路の回路図である。具体的には、図５の回路は、タイミング信号５０４のプリアンブル領域の中央付近でゲーティングウィンドウ５０２を開いて、タイミング信号５０４のトライステート領域をフィルタリングする。上述したように、メモリコントローラは、読み出し要求５０６をメモリモジュールに送信することで読み出しオペレーションを開始させる。図５に示すように、読み出し要求５０６は、タイミング制御回路５０８にも送られる（具体的には、タイミング制御回路５０８のパルス生成器５１０に）。パルス生成器５１０は、読み出し要求５０６を受けてパルス信号５１１を生成して、パルス信号５１１を遅延モジュール５１２に送信する。遅延モジュール５１２はパルス信号５１１を受信して、一定の時間が経つと、遅延されたパルス信号５１１を含む制御信号５１４を出力する。一定の遅延時間は、カウンタ５１６が保持している遅延値により決定される。制御信号５１４は、ゲーティング回路５１８および位相検知回路５２０の両方に送信される。図５の例では、制御信号５１４は、ゲーティング回路５１８で受信される前に、「ＮＯＴ」ゲート５２２を通過させられる。
【００３４】
ゲーティング回路５１８は、制御信号５１４を受けると、ゲーティングウィンドウ５０２を開いて、最終的には、ゲーティングウィンドウ５０２をフィルタとして利用して、フィルタリングされたタイミング信号５２４を出力する。ゲーティング回路５１８は、第１のＤタイプのフリップフロップ５２６の「セット」ピンで制御信号５１４を受信してよい。セットピンでの制御信号５１４の受信によって、第１のフリップフロップ５２６のゲーティングウィンドウの出力５０２が、論理的に低いレベルから論理的に高いレベルに切り替えられる。制御信号５１４を利用してゲーティングウィンドウ５０２を開閉することは、図４のゲーティングウィンドウ４０６からもわかる。
【００３５】
図６は、タイミング信号の第１の立ち上がりエッジを追跡するために、回路の第１および第２の繰り返しの例で利用される信号を示す。図示されているように、たとえば図６の第１の繰り返し６０１では、ゲーティングウィンドウ６０２の立ち上がりエッジのタイミングが、制御信号６０６の立ち上がりエッジのタイミングに調節（key）されている。さらに、制御信号６０６の立ち上がりエッジのタイミングを制御することで、ゲーティングウィンドウ６０２が、好ましくは、タイミング信号６１０のプリアンブル領域６０３の中央付近で論理レベルの高い箇所に切り替えられる。
【００３６】
図５を参照すると、ゲーティングウィンドウ５０２は、ゲーティング回路５１８の「ＡＮＤ」ゲート５２８に送信され、ここでは、ゲーティングウィンドウ５０２とタイミング信号５０４との間に「ＡＮＤ」演算が実行される。「ＡＮＤ」ゲート５２８の出力は、フィルタリングされたタイミング信号５２４を含み、フィルタリングされたタイミング信号５２４はメモリコントローラに送信されてもよい（不図示）。フィルタリングされたタイミング信号５２４（図２および図４参照）は、トライステート領域が除去されたタイミング信号５０４を含んでよい。
【００３７】
上述したように、タイミング制御回路５０８は、制御信号５１４を位相検知回路５２０にも送信するが、位相検知回路５２０は、第２のＤタイプのフリップフロップ５３０を含んでいてよい。位相検知回路５２０は、制御信号５１４とフィルタリングされたタイミング信号５２４とを入力として受信して、位相検知出力値５３２を出力する。位相検知出力値５３２は、制御信号５１４の立ち下がりエッジが、フィルタリングされたタイミング信号５２４の第１の立ち上がりエッジを参照して早いか遅いかを示す。図６に示すように、制御信号６０６の早い立ち下りエッジは、低い位相検知出力値６１４を生じさせ、制御信号６０８の遅い立ち下りエッジは、高い位相検知出力値６１６を生じさせてよい。
【００３８】
位相検知出力値５３２は、タイミング制御回路５０８のカウンタ５１６に送られ、タイミング制御回路５０８と位相検知回路５２０とを含む閉ループのフィードバック回路が作成される。位相検知出力値５３２が高いか低いかに基づいて、カウンタ５１６が保持している遅延値をインクリメントしたりデクリメントさせたりする。図５および図６の例では、低い位相検知出力値５３２は、カウンタ５１６が保持している遅延値をインクリメントさせ、高い位相検知の出力値５３２は、カウンタ５１６が保持している遅延値をデクリメントさせる。
【００３９】
このフィードバックのメカニズムでは、タイミング制御回路５０８が、タイミング信号５０４の第１の立ち上がりエッジを追跡するように制御信号５１４の伝播を遅らせる。このことを示すために、図６は、図５の回路の処理の第１の繰り返し６０１および第２の繰り返し６２０の例を示す。第１の繰り返し６０１では、第１の制御信号６０６の立ち下がりエッジが、タイミング信号６１０の第１の立ち上がりエッジと比して早く、これにより、位相検知出力６１４が低くなり、カウンタの遅延値がインクリメントされる。第２の繰り返し６２０では、インクリメントされた遅延値によって、第２の制御信号６０８が遅れ、高い位相検知出力値６１６が生じ、遅延値がデクリメントされる。閉ループのフィードバック回路が、制御信号の立ち下がりエッジを、タイミング信号の第１の立ち上がりエッジに十分近くなるようタイミング調節した場合には、位相検知出力値が、読み出し要求を受けるたびに、ハイおよびローの間で揺れる（oscillate）。このようにロックされ、揺れるよう動作しているときは、制御信号の立ち上がりエッジが、タイミング信号のプリアンブル領域の中央付近にとどまり、理想の時点の付近でゲーティングウィンドウを開かせる手助けをする。回路が自己調節システムなので、回路は、クロックのジッタおよび／または温度または電圧の変化に起因したタイミング信号５０４の時間的変化を自動的に補う。さらに、自己調節システムは、ゲーティングウィンドウを制御するために高速のクロックを利用する必要がなく、複数のクロックドメインが利用されている場合に生じうる同期の問題がなくなる。
【００４０】
図７は、ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路を示す回路図である。具体的には、図７の回路は、タイミング信号７０４の最後の立ち下がりエッジの後にゲーティングウィンドウ７０２を閉じて、タイミング信号７０４の後続するトライステート領域をフィルタリングして除く。図７の回路は、図５の回路と同様の動作をして、両方の回路が、閉ループフィードバックシステムを利用することで、タイミング信号のエッジを追跡する。
【００４１】
図７では、読み出しオペレーションを開始するために利用される読み出し要求７０６が、タイミング制御回路７１０のパルス生成器７０８に送られる。パルス生成器７０８は、読み出し要求７０６を受信するとパルス信号７１２を生成して、第１の遅延モジュール７１４にパルス信号７１２を送信する。第１の遅延モジュール７１４はパルス信号７１２を受信して、一定の時間が経つと、遅延されたパルス信号７１２を含む制御信号７１６を出力する。一定の遅延時間は、カウンタ７１８が保持している遅延値により決定される。制御信号７１６は、ゲーティング回路７２０と位相検知回路７２２との両方に送信される。図７の例では、制御信号７１６は、ゲーティング回路７２０で受信される前に、「ＮＯＴ」ゲート７２４を通過させられる。
【００４２】
図７のゲーティング回路７２０は、前に開いたゲーティングウィンドウ７０２を閉じるよう構成されている。たとえば、図５の回路はゲーティングウィンドウ７０２を開くために利用することができたが、図７の回路は、読み出しオペレーションの最後にゲーティングウィンドウ７０２を閉じるために利用されてよい。図７では、ゲーティング回路７２０が、第１のＤタイプのフリップフロップ７２６の入力ピンで制御信号７１６を受信することができる。第１のＤタイプのフリップフロップ７２６は、クロックピンで、フィルタリングされたタイミング信号７２８を受信してもよい。
【００４３】
図８は、ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路で利用される信号を示す。図８に示すように、制御信号８０２がタイミング信号８０４の最後の立ち下がりエッジ８０３と同時に（contemporaneously）生じる場合、ゲーティングウィンドウ８０６が論理レベル高から論理レベル低に切り替えられてよい。このようにして、ゲーティングウィンドウ８０６の立ち下がりエッジのタイミングが、タイミング信号８０４の最後の立ち下がりエッジ８０３のタイミングに調節され、ゲーティングウィンドウ８０６が、タイミング信号８０４の後のトライステート領域８０７をフィルタリングにより除くことができる。
【００４４】
図７を参照すると、ゲーティングウィンドウ７０２がゲーティング回路７２０の「ＡＮＤ」ゲート７３０に送信され、ゲーティングウィンドウ７０２とタイミング信号７０４の間に「ＡＮＤ」演算が実行される。「ＡＮＤ」ゲート７３０の出力は、フィルタリングされたタイミング信号７２８を含み、これは、メモリコントローラ（不図示）に送信されてよい。
【００４５】
制御信号７１６もタイミング制御回路７１０から位相検知回路７２２に送信され、位相検知回路７２２は、第２の遅延モジュール７３２と第２のＤタイプのフリップフロップ７３４とを含んでいてよい。第２のフリップフロップ７３４は、フィルタリングされたタイミング信号７２８とタイムシフトされた制御信号７３６とを第２の遅延モジュール７３２から入力として受信するよう構成されている。図８に示すように、第２の遅延モジュール７３２は、タイムシフトされた制御信号８０８を作成して、タイムシフトされた制御信号８０８がタイミング信号８０４の最後の立ち下がりエッジ８０３と時間的に位置合わせされるようにするために利用されてよい。第２の遅延モジュール７３２が実行するタイムシフト８１０によって、第２のフリップフロップ７３４が位相検知処理を実行することができ、これにより第２のフリップフロップ７３４の位相検知出力値７３８が、タイムシフトされた制御信号７３６の立ち上がりエッジが、タイミング信号７０４の最後の立ち下がりエッジより早いか遅いかを示す。図７および図８の例では、制御信号パルス８０２の幅が１／２クロック周期であり、タイムシフト８１０の幅が１／４クロック周期である。タイムシフトされた制御信号７３６が遅い場合に、位相検知出力値７３８はローで、タイムシフトされた制御信号７３６が早い場合に、位相検知出力値７３８はハイであってよい。
【００４６】
位相検知出力値７３８は、タイミング制御回路７１０のカウンタ７１８に送られ、閉ループフィードバック回路を作成する。図５に示したように、カウンタ７１８が保持する遅延値は、位相検知出力値７３８が低いか高いかに応じて、インクリメントされたりデクリメントされたりする。このフィードバックメカニズムにより、タイミング制御回路７１０は制御信号７１６の伝播を遅らせて、タイミング信号７０４の最後の立ち下がりエッジを追跡する。閉ループのフィードバック回路が、タイムシフトされた制御信号７３６の立ち上がりエッジを、フィルタリングされたタイミング信号７２８の最後の立ち下がりエッジに十分近くなるようタイミング調節した場合には、位相検知出力値７３８が、読み出し要求を受けるたびに、ハイおよびローの間で揺れる。このようにロックされ、揺れるよう動作しているときは、タイミング信号８０４の最後の立ち下がりエッジ８０３が、制御信号パルス８０２の中央付近に生じ、ゲーティングウィンドウ８０６を閉じさせる手助けをすることができる。
【００４７】
図９は、１つのクロックサイクル全体の幅をもつ制御信号パルスを利用する回路の信号タイミング図である。図８を参照して上述したように、ゲーティングウィンドウ９０２を閉じるためには、タイミング信号９０４の最後の立ち下がりエッジ９０３が、制御信号パルス９０６と同時期に生じる必要があると思われる。図８では、制御信号パルス８０２の幅が１／２クロック周期であり、タイミング信号８０４の最後の立ち下がりエッジ８０３を追跡するために、タイムシフトされた制御信号８０８が、１／４クロックサイクル分シフトされていた。これに対して、図９では、これより幅の広い制御信号パルス９０６が、１つのクロックサイクル全体の幅をもっており、タイムシフトされた制御信号９０８は、１クロックサイクル９１０の１／２分、タイムシフトされている。幅の広い制御信号パルス９０６は、ジッタの高い環境で利用されると、制御信号パルス９０６がタイミング信号９０４の最後の立ち下がりエッジ９０３中に生じるよう手助けすることができる。しかし、制御信号パルス９０６の幅を広くしすぎると、制御信号パルス９０６が、最後の立ち下がりエッジではないタイミング信号９０４の立ち下がりエッジと同時に生じる場合に、ゲーティングウィンドウ９０２を早期に閉じてしまう場合がある。
【００４８】
図１０Ａおよび図１０Ｂは、早い制御信号及び遅い制御信号により生じる問題を示す信号タイミング図である。図１０Ａの信号タイミング図は、開いた制御信号を利用してゲーティングウィンドウを開くことに関している。図５および図６を参照して上述したように、ゲーティングウィンドウを開くために利用された制御信号の立ち上がりエッジは、理想的には、タイミング信号のプリアンブル領域の中央付近に生じるとよい。図１０Ａに示すように、制御信号１００２が早く開くと、ゲーティングウィンドウ１００４をトライステート領域中に開かせ、タイミング信号１００６のトライステート領域をメモリコントローラに入力してしまう場合がある。こうなると、メモリコントローラで偽のタイミング信号のエッジを生じさせるグリッチ（glitch）が生じてしまう。また逆に、制御信号１００８が遅く開くと、ゲーティングウィンドウ１０１０がタイミング信号１０１２の最初の立ち上がりエッジの後に開き、メモリコントローラに入るタイミング信号１０１２をクリップしてしまい、メモリコントローラが、入力データ信号の正確な読み出しに失敗する。
【００４９】
図１０Ｂの信号タイミング図は、ゲーティングウィンドウを閉じるために閉制御信号を利用することに関する。図７および図８を参照して上述した通り、ゲーティングウィンドウを閉じる制御信号は、タイミング信号の最後の立ち下がりエッジと同時に生じ、最後の立ち下がりエッジが制御信号パルスの中央付近で生じると理想的である。図１０Ｂに示すように、閉制御信号パルスがタイミング信号１０１４、１０１６の最後の立ち下がりエッジと位置合わせされていないと（閉制御信号が早すぎたり１０１８、遅すぎたり１０２０するといった理由で）、ゲーティングウィンドウ１０２２、１０２４が閉じられなくなる。したがい、制御信号のインスタンスが早い場合１０１８も、遅い場合１０２０も、ゲーティングウィンドウ１０２２、１０２４は、開いたままにしておくと、タイミング信号１０１４、１０１６のトライステート領域がメモリコントローラに入る可能性がある。
【００５０】
図１１は、メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法を示すフローチャートである。１１０２で、ゲーティング回路がメモリデバイスからタイミング信号を受信する。１１０４で、タイミング制御回路は、メモリコントローラから読み出し要求を受信した後で、制御信号を生成する。タイミング制御回路は、制御信号を調節して、タイミング信号の時間的ばらつきを吸収させる。１１０６で、タイミング信号が、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、ゲーティング回路を通過する。ゲーティング回路は、制御信号に基づいて、ゲーティングウィンドウを生成する。
【００５１】
ここに開示する技術は、メモリデバイスとの間の読み出しオペレーションを実行することに関して詳述される。さらに、この技術は、メモリデバイスに関しないが、タイミング信号を利用して応答ノードから要求ノードにデータを転送する他のハードウェアに適用することもできる。
【００５２】
本開示は、具体的案実施形態を参照して詳述されてきたが、当業者には実施形態の精神および範囲において様々な変更例および変形例が自明である。従い、本開示は、添付請求項およびその均等物の範囲内に収まっていればすべての変形例および変更例を含むことが意図されている。
【００５３】
本記載および以下の請求項全体において、「a」「an」等の不定冠詞および「the」等の定冠詞は、文脈でそうではないことが明らかな場合を除いて複数形も含むことを意図している。さらに本記載および以下の請求項全体において、「in(の中、で、に等)」という言い回しがある場合、文脈でそうではないことが明らかな場合を除いて、「in」も「on（の上で、の上に）」の場合もある。さらに本記載および以下の請求項全体において、「each(各、それぞれ)」という言い回しは、文脈でそうではないことが明らかである場合を除いて、「いかなるものも全て（each and every）」という意味である。最後に、本記載および以下の請求項全体において、「and(および、と、並びに)」といった言い回しは、文脈からそうではないことが明らかである場合を除いて、接続的（conjunctive）に利用される場合と離接的接続詞的（disjunctive）に利用される場合とが、入れ替え可能に利用されてよく、「exclusive of（を除く）」という言い回しは、離接的接続詞的な意味である場合を示すために利用されてよい。
【図１】
2014517422.tif 000003
【図２】
2014517422.tif 000004
【図３】
2014517422.tif 000005
【図４】
2014517422.tif 000006
【図５】
2014517422.tif 000007
【図６】
2014517422.tif 000008
【図７】
2014517422.tif 000009
【図８】
2014517422.tif 000010
【図９】
2014517422.tif 000011
【図１０Ａ】
2014517422.tif 000012
【図１０Ｂ】
2014517422.tif 000013
【図１１】
2014517422.tif 000014
【国際調査報告】
2014517422.tif 000015
2014517422.tif 000016
2014517422.tif 000017