特許第6057438号(P6057438)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マーベル ワールド トレード リミテッドの特許一覧

<>
  • 特許6057438-システムおよび方法 図000002
  • 特許6057438-システムおよび方法 図000003
  • 特許6057438-システムおよび方法 図000004
  • 特許6057438-システムおよび方法 図000005
  • 特許6057438-システムおよび方法 図000006
  • 特許6057438-システムおよび方法 図000007
  • 特許6057438-システムおよび方法 図000008
  • 特許6057438-システムおよび方法 図000009
  • 特許6057438-システムおよび方法 図000010
  • 特許6057438-システムおよび方法 図000011
  • 特許6057438-システムおよび方法 図000012
  • 特許6057438-システムおよび方法 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6057438
(24)【登録日】2016年12月16日
(45)【発行日】2017年1月11日
(54)【発明の名称】システムおよび方法
(51)【国際特許分類】
   G06F 12/00 20060101AFI20161226BHJP
【FI】
   G06F12/00 564D
   G06F12/00 597C
   G06F12/00 597D
【請求項の数】20
【全頁数】17
(21)【出願番号】特願2014-515863(P2014-515863)
(86)(22)【出願日】2012年6月4日
(65)【公表番号】特表2014-517422(P2014-517422A)
(43)【公表日】2014年7月17日
(86)【国際出願番号】US2012040710
(87)【国際公開番号】WO2012173807
(87)【国際公開日】20121220
【審査請求日】2015年5月29日
(31)【優先権主張番号】61/496,965
(32)【優先日】2011年6月14日
(33)【優先権主張国】US
(31)【優先権主張番号】61/540,142
(32)【優先日】2011年9月28日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】502188642
【氏名又は名称】マーベル ワールド トレード リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】スワンソン、ロス
【審査官】 塚田 肇
(56)【参考文献】
【文献】 特開2005−276396(JP,A)
【文献】 特開2005−292947(JP,A)
【文献】 特開2002−158566(JP,A)
【文献】 特開2009−009621(JP,A)
【文献】 特開2008−293279(JP,A)
【文献】 特開2008−103013(JP,A)
【文献】 米国特許第7911857(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00
(57)【特許請求の範囲】
【請求項1】
メモリデバイスとの間の読み出しオペレーションのタイミングをとるシステムであって、
制御信号に基づいてゲーティングウィンドウを生成して、前記メモリデバイスからタイミング信号を受信して、前記ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として前記タイミング信号を通す、ゲーティング回路と、
フィードバック回路と
を備え、
前記フィードバック回路は、
メモリコントローラからの読み出し要求を受信した後で前記制御信号を生成し、前記メモリデバイスからの前記タイミング信号の時間的ばらつきを吸収するべく前記制御信号を調節するタイミング制御回路と
前記フィルタリングされたタイミング信号と前記制御信号とを入力として受信して、前記タイミング制御回路に位相検知出力値を送信する、位相検知回路と
を有する
ステム。
【請求項2】
前記フィードバック回路は、前記タイミング信号の立ち上がりエッジまたは立ち下がりエッジのタイミングを追跡することで、前記制御信号のタイミングを自動的に調節する閉ループの自己調節システムである、請求項に記載のシステム。
【請求項3】
前記タイミング信号の前記立ち上がりエッジまたは前記立ち下がりエッジに前記制御信号のタイミングが位置合わせされるよう、前記制御信号の前記タイミングが調節される、請求項に記載のシステム。
【請求項4】
前記タイミング信号はDQSストローブ信号である、請求項1からのいずれか一項に記載のシステム。
【請求項5】
前記制御信号は、前記ゲーティングウィンドウをそれぞれ開かせ、閉じさせる開信号または閉信号であり、
前記ゲーティングウィンドウは、前記フィルタリングされたタイミング信号における前記DQSストローブ信号のトライステート領域を削除する、請求項に記載のシステム。
【請求項6】
前記タイミング制御回路は、
前記読み出し要求を受信した後に前記制御信号を生成する信号生成器と、
カウンタが保持している遅延値に基づいて前記制御信号のタイミングを制御する遅延モジュールと
を有し、
前記カウンタは、前記位相検知回路から受信した前記位相検知出力値に基づいて、前記遅延値をインクリメントまたはデクリメントする、請求項に記載のシステム。
【請求項7】
前記位相検知回路は、Dタイプのフリップフロップを含む、請求項に記載のシステム。
【請求項8】
前記ゲーティング回路は、
前記制御信号を受信して、前記制御信号のタイミングに基づいて前記ゲーティングウィンドウを出力するDタイプのフリップフロップと、
前記ゲーティングウィンドウと前記タイミング信号とを入力として受信して、前記フィルタリングされたタイミング信号を出力する「AND」ゲートと
を有する、請求項1からのいずれか一項に記載のシステム。
【請求項9】
前記タイミング信号の前記時間的ばらつきは、前記システムの温度もしくは電圧の変化またはクロックのジッタに基づいている、請求項1からのいずれか一項に記載のシステム。
【請求項10】
前記信号生成器は、パルス生成器であり、
前記制御信号は、パルス信号である、請求項に記載のシステム。
【請求項11】
メモリデバイスとの間の読み出しオペレーションのタイミングをとる方法であって、
ゲーティング回路で、前記メモリデバイスからのタイミング信号を受信する段階と、
メモリコントローラから読み出し要求を受信した後に、タイミング制御回路で制御信号を生成して、前記タイミング制御回路が、前記タイミング信号の時間的ばらつきを吸収するべく前記制御信号を調節する段階と、
前記ゲーティング回路で前記制御信号に基づいて生成されるゲーティングウィンドウ中に、フィルタリングされたタイミング信号として前記タイミング信号を通す段階と
位相検知回路で、前記フィルタリングされたタイミング信号と前記制御信号とを入力として受信する段階と、
前記入力に基づいて、前記位相検知回路からの位相検知出力値を前記タイミング制御回路に送信する段階と
を備え、
前記位相検知回路および前記タイミング制御回路は、フィードバック回路に含まれる
法。
【請求項12】
前記タイミング信号の立ち上がりエッジまたは立ち下がりエッジのタイミングを追跡することで、前記フィードバック回路で、前記制御信号のタイミングを調節する段階をさらに備え、
前記フィードバック回路は、閉ループの自己調節システムを含む、請求項11に記載の方法。
【請求項13】
前記調節する段階は、
前記タイミング信号の前記立ち上がりエッジまたは前記立ち下がりエッジに前記制御信号のタイミングを位置合わせする段階を有する、請求項12に記載の方法。
【請求項14】
前記タイミング信号はDQSストローブ信号である、請求項11から13のいずれか一項に記載の方法。
【請求項15】
前記制御信号は、前記ゲーティングウィンドウをそれぞれ開かせ、閉じさせる開信号および閉信号であり、
前記ゲーティングウィンドウは、前記フィルタリングされたタイミング信号の前記DQSストローブ信号のトライステート領域を削除する、請求項14に記載の方法。
【請求項16】
前記タイミング制御回路の信号生成部で、前記読み出し要求を受信すると、前記制御信号を生成する段階と、
前記位相検知回路から受信した前記位相検知出力値に基づいて、カウンタが保持している遅延値をインクリメントまたはデクリメントする段階と、
前記遅延値に基づいて、前記タイミング制御回路の遅延モジュール部が前記制御信号のタイミングを制御する段階と
をさらに備える、請求項11に記載の方法。
【請求項17】
前記位相検知回路は、Dタイプのフリップフロップを含む、請求項11に記載の方法。
【請求項18】
前記ゲーティング回路のDタイプのフリップフロップ部で前記制御信号を受信して、前記フリップフロップ部が、前記制御信号のタイミングに基づいて前記ゲーティングウィンドウを出力する段階と、
前記ゲーティング回路の「AND」ゲート部で「AND」演算を実行して、前記フィルタリングされたタイミング信号を出力する段階であって、前記「AND」ゲート部は、前記「AND」演算のための入力として前記タイミング信号と前記ゲーティングウィンドウとを受信する段階と
をさらに備える、請求項11から17のいずれか一項に記載の方法。
【請求項19】
前記タイミング信号の前記時間的ばらつきは、前記メモリデバイスの温度または電圧の変化またはクロックのジッタに基づいている、請求項11から18のいずれか一項に記載の方法。
【請求項20】
前記信号生成部は、パルス生成器であり、
前記制御信号は、パルス信号である、請求項16に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照情報]
本願は、「Gateon Open Detect and Track」なる名称の2011年6月14日出願の米国仮特許出願第61/496,965号と、「Gateon Window Close Detect and Track」なる名称の2011年9月28日出願の米国仮特許出願第61/540,142号の優先権を主張しており、両方の文献の開示の全体を、参照により本明細書に組み込む。
【0002】
ここに記載する技術は、概してメモリコントローラに係り、より詳しくは、タイミングシグナルをゲーティングして、メモリデバイスとの間の読み出しオペレーションを実行する自己調節システムに係る。
【背景技術】
【0003】
SDRAM(同期DRAM)は、コンピューティングデバイスで利用されるランダムアクセスメモリ(RAM)の一種である。SDRAMは、シングルデータレート(SDR)SDRAMとダブルデータレート(DDR)SDRAMの両方を含んでいる。SDR SDRAMは、各タイミング信号期間において、タイミング信号の立ち上がりエッジと同期させてデータを転送する。これに比べて、DDR SDRAMは、タイミング信号の立ち上がりエッジおよび立ち下がりエッジの両方においてデータを転送することで、SDR SDRAMの帯域幅の略2倍を達成することができる。
【0004】
SDRAMメモリモジュールからメモリコントローラにデータを転送するためには、メモリコントローラは、メモリモジュールに対して読み出し要求を発行することで読み出しオペレーションを開始することができる。一定の期間が経過すると、メモリモジュールは、メモリコントローラに、データ信号をタイミング信号とともに送信することで(たとえばDQデータ信号とDQSデータストローブ信号とを送信する)応答することができる。システムによっては、メモリコントローラで受け取られる前のタイミング信号にフィルタリングが行われて、タイミング信号の不要な領域および/または信号ノイズが除去される。タイミング信号を受けると、メモリコントローラはデータ信号を読み出して、データを、タイミング信号の立ち上がりエッジおよび/または立ち下がりエッジにおいてレジスタに保持することで、データを格納してよい。
【0005】
システムに生じうるクロックのジッタおよび/または温度または電圧の変化によって、メモリモジュールからの応答が、様々な量の時間かかる場合がある。フィルタリングが、メモリコントローラで受信される前のタイミング信号に実行される場合には、メモリモジュールの応答が変化しうるこの性質が問題になる場合がある。たとえば、読み出し要求の後の静的な所定の時間間隔で動作するフィルタリング素子は、タイミング信号の変化しうる性質を補うことができず、フィルタリングが不正確になる場合がある。不正確なフィルタリングによって、データの読み出しオペレーションも誤ったものとなり、メモリコントローラにおけるシステムパフォーマンスの低下および/またはデータの破損といった様々な問題が生じうる。
【0006】
上述した記載は、この技術分野の関連技術の概略を述べたものであり、含まれている情報のいずれも、本特許出願に対する従来技術であると自認したということを示すものではないので、留意されたい。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本開示は、メモリデバイスとの間の読み出しオペレーションのタイミングをとる(timing)ためのシステムおよび方法に関する。一実施形態では、メモリデバイスとの間の読み出しオペレーションのタイミングをとるためのシステムは、メモリデバイスからタイミング信号を受信するゲーティング回路を含む。ゲーティング回路はさらに、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、タイミング信号を通すよう構成されている。ゲーティングウィンドウは、制御信号に基づいてゲーティング回路が生成する。システムはさらに、メモリコントローラからの読み出し要求を受けた後で、制御信号を生成する。タイミング制御回路は、さらに、メモリデバイスからのタイミング信号の時間的ばらつきを吸収するように(to account for)、制御信号を調節する。一実施形態では、タイミング信号の時間的ばらつきは、システムの温度または電圧の変化またはクロックジッタに基づいている。別の実施形態では、タイミング信号がDQSストローブ信号であり、ゲーティングウィンドウは、フィルタリングされたタイミング信号におけるDQSストローブ信号のトライステート領域を削除する。制御信号は、ゲーティングウィンドウをそれぞれ開または閉状態とさせる開信号または閉信号である。
【0008】
一実施形態では、システムはさらにフィードバック回路を含む。フィードバック回路は、タイミング制御回路と、フィルタリングされたタイミング信号と制御信号とを入力として受け、位相検知出力値をタイミング制御回路に送信する位相検知回路とを含む。一実施形態では、位相検知回路はDタイプのフリップフロップを含む。別の実施形態では、フィードバック回路は、タイミング信号の立ち上がりエッジまたは立ち下りエッジのタイミングを追跡することで、制御信号のタイミングを自動的に調節する、閉ループの自己調節システムである。制御信号のタイミングは、タイミング信号の立ち上がりエッジまたは立ち下がりエッジに、制御信号のタイミングを位置合わせするよう調節される。
【0009】
一実施形態では、タイミング制御回路は、読み出し要求を受けた後で制御信号を生成する信号生成器と、カウンタが保持する遅延値に基づいて制御信号のタイミングを制御する遅延モジュールとを含む。カウンタは、位相検知回路から受信した位相検知出力値に基づいて、遅延をインクリメントまたはデクリメントさせる。一実施形態では、信号生成器は、パルス生成器であり、制御信号はパルス信号である。
【0010】
別の実施形態では、ゲーティング回路が、制御信号を受け、制御信号のタイミングに基づいてゲーティングウィンドウを出力するDタイプのフリップフロップを含む。ゲーティング回路はさらに、ゲーティングウィンドウとタイミング信号とを入力として受け、フィルタリングされたタイミング信号を出力する「AND」ゲートを含む。
【0011】
本開示は、メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法にも関している。方法は、メモリデバイスからのタイミング信号をゲーティング回路で受けることを含む。方法はさらに、メモリコントローラからの読み出し要求を受けた後に、タイミング制御回路で制御信号を生成することを含む。タイミング制御回路は、タイミング信号の時間的ばらつきを吸収するように(to account for)、制御信号を調節する。方法はさらに、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、タイミング信号を通すことも含む。ゲーティングウィンドウは、制御信号に基づいてゲーティング回路が生成する。
【図面の簡単な説明】
【0012】
図1】メモリコントローラとSDRAMメモリモジュールとの間で実行される読み出しオペレーションを示すブロック図である。
【0013】
図2】メモリコントローラとSDRAMメモリモジュールとの間の読み出しオペレーションを実行するために利用される信号を示す。
【0014】
図3】メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための、自己調節する、閉ループのフィードバックシステムを示すブロック図である。
【0015】
図4】メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための自己調節する、閉ループのフィードバックシステムが利用する信号の例を示す。
【0016】
図5】ゲーティングウィンドウを開くために、タイミング信号の第1の立ち上がりエッジを追跡する回路の回路図である。
【0017】
図6】タイミング信号の第1の立ち上がりエッジを追跡するために、回路の第1および第2の繰り返しの例で利用される信号を示す。
【0018】
図7】ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路を示す回路図である。
【0019】
図8】ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路で利用される信号を示す。
【0020】
図9】1つのクロックサイクル全体の幅をもつ制御信号パルスを利用する回路の信号タイミング図である。
【0021】
図10A】早い制御信号および遅い制御信号により生じる問題を示す信号タイミング図である。
図10B】早い制御信号および遅い制御信号により生じる問題を示す信号タイミング図である。
【0022】
図11】メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法を示すフローチャートである。
【発明を実施するための形態】
【0023】
図1は、メモリコントローラ102とSDRAMメモリモジュール106との間で実行される読み出しオペレーションを示すブロック図である。読み出しオペレーションは、メモリコントローラ102が読み出し要求104をメモリモジュール106に送信して、メモリの特定のアドレスからデータを読み出すよう要求することで開始されてよい。たとえばメモリコントローラ102は、マイクロコントローラまたはシステムオンチップ(SOC)を含んでよい。メモリコントローラ106は、データ信号バス108およびタイミング信号110を両方とも出力することで、読み出し要求104に応答してよい。データ信号バス108およびタイミング信号110は、たとえばDQ信号およびDQSデータストローブ信号をそれぞれ含んでいてよい。タイミング信号110は、メモリコントローラ102に対して、データ信号108が受信される準備が整っていることを伝え、メモリコントローラ102に、データ信号108の特定のタイミングを伝えるために利用される。
【0024】
図2は、メモリコントローラとSDRAMメモリモジュールとの間の読み出しオペレーションを実行するために利用される信号を示す。図2に示すように、タイミング信号202は、トライステート領域204と、プリアンブル領域206と、データ転送領域208と、ポストアンブル領域210という4つの別個の領域を含んでよい。メモリモジュールが読み出し要求212を受信する前に、タイミング信号202は、トライステート領域204と称されている、インピーダンスの高い状態にある。トライステート領域204で動作している間、タイミング信号202は、論理レベルが高くも低くもない中間値にある。読み出し信号212を受信すると、タイミング信号202は、論理レベルの低いプリアンブル領域206へとシフトする(これは、データ転送領域208から約1クロックサイクル前にある)。データ信号216内のデータパケット214を、メモリモジュール106とメモリコントローラ102との間で転送するべく、タイミング信号202がデータ転送領域208に入る。この領域で動作している間、タイミング信号202は、論理レベルのハイと論理レベルのローとの間で切り替わる(toggle)。メモリコントローラ102は、この切り替わるタイミング信号202を参照信号として利用して、タイミング信号202の立ち上がりエッジおよび/または立ち下がりエッジにあるデータ信号216から読み出すことができる。データ転送領域208の後であって、後続するトライステート領域に再度入る前に、タイミング信号202は、論理レベルの低いポストアンブル領域210に入る。ポストアンブル領域210からトライステート領域への遷移は、データ転送領域208内の有効なデータの最後のエッジから半クロックサイクル分後に生じてよい。
【0025】
図1に戻り、フィルタリング回路112を利用して、より信頼性のある読み出しオペレーションを実行することができる。タイミング信号110を、直接メモリモジュール106からメモリコントローラ102に送信するのではなく、タイミング信号110を、フィルタリング回路112内をルーティングさせることで、信号ノイズを削除したり、および/または、誤ったデータの読み出しオペレーションにつながりかねないタイミング信号110の部分を除去したりすることができる。読み出し要求104を受信すると、フィルタリング回路112は、タイミング信号110のフィルタとして機能するゲーティングウィンドウを生成してよい。フィルタリング回路112の開状態のゲーティングウィンドウを通ることが許された、フィルタリングされたタイミング信号114は、メモリコントローラ102によって受信されてよい。
【0026】
図2に示すように、ゲーティングウィンドウ218は、タイミング信号202がプリアンブル領域206にある間は開いており、データ転送領域208の最後の立ち下がりエッジの後に閉じてよい。ゲーティングウィンドウ218は、タイミング信号202からノイズをフィルタリングで除去するため、および/または、タイミング信号202のトライステート領域204がメモリコントローラから読み取られないようにするために利用されてよい。したがい、図2に示すフィルタリングされたタイミング信号220は、タイミング信号202のデータ転送領域208のみを含む、または、論理レベルの低い状態にとどまって、データ送信の前または後に存在するトライステート領域を除去してよい。フィルタリングされたタイミング信号220のトライステート領域を除去することで、トライステート領域204がメモリコントローラにより読み取ることが許可されている場合、たとえば、トライステート領域204を偽のタイミング信号エッジと解釈することにより生じるグリッチ(glitch)が生じなくなる。
【0027】
図3は、メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための、自己調節する、閉ループのフィードバックシステムを示すブロック図である。図1を参照して上述したように、一般的に読み出しオペレーションは、メモリコントローラからメモリモジュールへの読み出し要求302の送信を含み、メモリモジュールの応答が、データ信号およびタイミング信号304(たとえばDQおよびDQSデータストローブ信号)を含む。図1を参照して上述したように、メモリコントローラに入る前に、タイミング信号304の特定の領域をフィルタリングにより除去すると望ましいと思われる。このフィルタリングを実行するために、ゲーティング回路306を利用する。ゲーティング回路306は、メモリモジュールからタイミング信号304を受信して、ゲーティングウィンドウ中にフィルタリングされたタイミング信号308としてタイミング信号304を通す。フィルタリングされたタイミング信号308は、メモリコントローラにより受信されてよい(不図示)。
【0028】
図4は、メモリコントローラとメモリモジュールとの間の読み出しオペレーションのタイミングをとるための自己調節する、閉ループのフィードバックシステムが利用する信号の例を示す。メモリモジュールから送信されるタイミング信号402は、図2のタイミング信号202を参照して上述した4つの領域(トライステート、プリアンブル、データ転送、ポストアンブル)を含んでいる。図3のゲーティング回路306を通過した、フィルタリングされたタイミング信号404は、トライステート領域が除去されていることを除いて、元のタイミング信号402に類似したものであってよい。ゲーティング回路306のフィルタリング処理は、ゲーティングウィンドウ406により実行され、これにより、タイミング信号402は、ゲーティングウィンドウ406が高い、開状態にあるときだけ、フィルタリングされたタイミング信号404としてゲーティング回路306を通過することができる。トライステート領域を、フィルタリングされたタイミング信号404から確実に除去するために、ゲーティングウィンドウ406は、タイミング信号402のプリアンブル領域にある間は開いており、タイミング信号402の最後の立ち下がりエッジの後には閉じるようにしてよい(図4参照)。
【0029】
クロックジッタおよびシステムの温度および電圧の変化は、タイミング信号402に時間的ばらつきを生じさせうる。したがい、ゲーティングウィンドウ406を開いたり閉じたりするために静的タイミング法を利用すると、タイミング信号402のフィルタリングが不正確になる場合がある。たとえば、読み出し要求の後の所定の時点に開閉するよう構成されているゲーティングウィンドウ406でフィルタリングしたタイミング信号404が、トライステート領域の部分を含んでしまったり、フィルタリングしたタイミング信号404の有効な立ち上がりエッジおよび立ち下りエッジがクリッピングされてしまったりする場合がある。
【0030】
クロックジッタおよびシステムの温度および電圧の変化を吸収するように、閉ループの、自己調節フィードバックシステムを利用して、タイミング信号304の時間的ばらつきを追跡することができる。図3に示すように、フィードバックシステムは、タイミング制御回路310と、位相検知回路312とからなる。タイミング制御回路310は、メモリコントローラから読み出し要求302を受信した後で、制御信号314を生成する。制御信号314は、ゲーティング回路306に送られ、ここで、ゲーティング回路306のゲーティングウィンドウ406を開閉するために利用される。タイミング信号304の時間的ばらつきに関してフィードバックシステムから受信した情報に基づいて、タイミング制御回路310は、制御信号314の伝播を遅らせて、時間的ばらつきを吸収することができる。図4に示すように、制御信号408は、ゲーティングウィンドウ406の開閉を命令するために利用される1以上のパルス410を含んでよい。
【0031】
図3のフィードバックシステムをイネーブルするために、タイミング制御回路310は、位相検知回路312に制御信号314を送信する。位相検知回路312は、制御信号314と、フィルタリングされたタイミング信号308とを、入力として受信して、フィルタリングされたタイミング信号308を参照して制御信号314のタイミングに基づいて、位相検知出力値316を生成する。このように、位相検知出力値316は、フィルタリングされたタイミング信号308に比して、制御信号314が早すぎるかまたは遅すぎるかを示す。位相検知出力値316は、タイミング制御回路310により受信されて、後の読み出し要求の結果として発行される制御信号のタイミングを調節するために利用されてよい。
【0032】
たとえば第1の読み出し要求を受信すると、タイミング制御回路310は、第1の制御信号を生成して、この第1の制御信号は、ゲーティング回路306と位相検知回路312とに送信される。ゲーティング回路306は、第1の制御信号を利用してゲーティングウィンドウ406を生成して、タイミング信号402を、フィルタリングされたタイミング信号404として、開状態のゲーティングウィンドウ406に通す。位相検知回路312は、第1の制御信号とフィルタリングされたタイミング信号308とを両方とも受信して、たとえば、フィルタリングされたタイミング信号308に比して、第1の制御信号が早すぎるかを判断してよい。位相検知出力値316はタイミング制御回路310に送られ、タイミング制御回路310に、次に生成された制御信号の伝播を遅らせるよう命令する。第2の読み出し要求を受信すると、タイミング制御回路310は、位相検知出力値316の命令通りに、第2の制御信号の伝播を遅らせる。遅延値によって第2の制御信号が遅くなりすぎる場合には、位相検知出力値316は、タイミング制御回路310に、次の繰り返しでは、これより小さい遅延値を利用するよう命令する。より小さい遅延値によって、後続する制御信号が早くなりすぎた場合には、タイミング制御回路310は、再度、次に生成される制御信号の伝播を遅らせてよい。このように、フィードバックループは、制御信号314のタイミングを自動的に調節して、タイミング信号304の時間的ばらつきを吸収する自己調節システムを含んでいる。
【0033】
図5は、ゲーティングウィンドウを開くために、タイミング信号の第1の立ち上がりエッジを追跡する回路の回路図である。具体的には、図5の回路は、タイミング信号504のプリアンブル領域の中央付近でゲーティングウィンドウ502を開いて、タイミング信号504のトライステート領域をフィルタリングする。上述したように、メモリコントローラは、読み出し要求506をメモリモジュールに送信することで読み出しオペレーションを開始させる。図5に示すように、読み出し要求506は、タイミング制御回路508にも送られる(具体的には、タイミング制御回路508のパルス生成器510に)。パルス生成器510は、読み出し要求506を受けてパルス信号511を生成して、パルス信号511を遅延モジュール512に送信する。遅延モジュール512はパルス信号511を受信して、一定の時間が経つと、遅延されたパルス信号511を含む制御信号514を出力する。一定の遅延時間は、カウンタ516が保持している遅延値により決定される。制御信号514は、ゲーティング回路518および位相検知回路520の両方に送信される。図5の例では、制御信号514は、ゲーティング回路518で受信される前に、「NOT」ゲート522を通過させられる。
【0034】
ゲーティング回路518は、制御信号514を受けると、ゲーティングウィンドウ502を開いて、最終的には、ゲーティングウィンドウ502をフィルタとして利用して、フィルタリングされたタイミング信号524を出力する。ゲーティング回路518は、第1のDタイプのフリップフロップ526の「セット」ピンで制御信号514を受信してよい。セットピンでの制御信号514の受信によって、第1のフリップフロップ526のゲーティングウィンドウの出力502が、論理的に低いレベルから論理的に高いレベルに切り替えられる。制御信号514を利用してゲーティングウィンドウ502を開閉することは、図4のゲーティングウィンドウ406からもわかる。
【0035】
図6は、タイミング信号の第1の立ち上がりエッジを追跡するために、回路の第1および第2の繰り返しの例で利用される信号を示す。図示されているように、たとえば図6の第1の繰り返し601では、ゲーティングウィンドウ602の立ち上がりエッジのタイミングが、制御信号606の立ち上がりエッジのタイミングに調節(key)されている。さらに、制御信号606の立ち上がりエッジのタイミングを制御することで、ゲーティングウィンドウ602が、好ましくは、タイミング信号610のプリアンブル領域603の中央付近で論理レベルの高い箇所に切り替えられる。
【0036】
図5を参照すると、ゲーティングウィンドウ502は、ゲーティング回路518の「AND」ゲート528に送信され、ここでは、ゲーティングウィンドウ502とタイミング信号504との間に「AND」演算が実行される。「AND」ゲート528の出力は、フィルタリングされたタイミング信号524を含み、フィルタリングされたタイミング信号524はメモリコントローラに送信されてもよい(不図示)。フィルタリングされたタイミング信号524(図2および図4参照)は、トライステート領域が除去されたタイミング信号504を含んでよい。
【0037】
上述したように、タイミング制御回路508は、制御信号514を位相検知回路520にも送信するが、位相検知回路520は、第2のDタイプのフリップフロップ530を含んでいてよい。位相検知回路520は、制御信号514とフィルタリングされたタイミング信号524とを入力として受信して、位相検知出力値532を出力する。位相検知出力値532は、制御信号514の立ち下がりエッジが、フィルタリングされたタイミング信号524の第1の立ち上がりエッジを参照して早いか遅いかを示す。図6に示すように、制御信号606の早い立ち下りエッジは、低い位相検知出力値614を生じさせ、制御信号608の遅い立ち下りエッジは、高い位相検知出力値616を生じさせてよい。
【0038】
位相検知出力値532は、タイミング制御回路508のカウンタ516に送られ、タイミング制御回路508と位相検知回路520とを含む閉ループのフィードバック回路が作成される。位相検知出力値532が高いか低いかに基づいて、カウンタ516が保持している遅延値をインクリメントしたりデクリメントさせたりする。図5および図6の例では、低い位相検知出力値532は、カウンタ516が保持している遅延値をインクリメントさせ、高い位相検知の出力値532は、カウンタ516が保持している遅延値をデクリメントさせる。
【0039】
このフィードバックのメカニズムでは、タイミング制御回路508が、タイミング信号504の第1の立ち上がりエッジを追跡するように制御信号514の伝播を遅らせる。このことを示すために、図6は、図5の回路の処理の第1の繰り返し601および第2の繰り返し620の例を示す。第1の繰り返し601では、第1の制御信号606の立ち下がりエッジが、タイミング信号610の第1の立ち上がりエッジと比して早く、これにより、位相検知出力614が低くなり、カウンタの遅延値がインクリメントされる。第2の繰り返し620では、インクリメントされた遅延値によって、第2の制御信号608が遅れ、高い位相検知出力値616が生じ、遅延値がデクリメントされる。閉ループのフィードバック回路が、制御信号の立ち下がりエッジを、タイミング信号の第1の立ち上がりエッジに十分近くなるようタイミング調節した場合には、位相検知出力値が、読み出し要求を受けるたびに、ハイおよびローの間で揺れる(oscillate)。このようにロックされ、揺れるよう動作しているときは、制御信号の立ち上がりエッジが、タイミング信号のプリアンブル領域の中央付近にとどまり、理想の時点の付近でゲーティングウィンドウを開かせる手助けをする。回路が自己調節システムなので、回路は、クロックのジッタおよび/または温度または電圧の変化に起因したタイミング信号504の時間的変化を自動的に補う。さらに、自己調節システムは、ゲーティングウィンドウを制御するために高速のクロックを利用する必要がなく、複数のクロックドメインが利用されている場合に生じうる同期の問題がなくなる。
【0040】
図7は、ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路を示す回路図である。具体的には、図7の回路は、タイミング信号704の最後の立ち下がりエッジの後にゲーティングウィンドウ702を閉じて、タイミング信号704の後続するトライステート領域をフィルタリングして除く。図7の回路は、図5の回路と同様の動作をして、両方の回路が、閉ループフィードバックシステムを利用することで、タイミング信号のエッジを追跡する。
【0041】
図7では、読み出しオペレーションを開始するために利用される読み出し要求706が、タイミング制御回路710のパルス生成器708に送られる。パルス生成器708は、読み出し要求706を受信するとパルス信号712を生成して、第1の遅延モジュール714にパルス信号712を送信する。第1の遅延モジュール714はパルス信号712を受信して、一定の時間が経つと、遅延されたパルス信号712を含む制御信号716を出力する。一定の遅延時間は、カウンタ718が保持している遅延値により決定される。制御信号716は、ゲーティング回路720と位相検知回路722との両方に送信される。図7の例では、制御信号716は、ゲーティング回路720で受信される前に、「NOT」ゲート724を通過させられる。
【0042】
図7のゲーティング回路720は、前に開いたゲーティングウィンドウ702を閉じるよう構成されている。たとえば、図5の回路はゲーティングウィンドウ702を開くために利用することができたが、図7の回路は、読み出しオペレーションの最後にゲーティングウィンドウ702を閉じるために利用されてよい。図7では、ゲーティング回路720が、第1のDタイプのフリップフロップ726の入力ピンで制御信号716を受信することができる。第1のDタイプのフリップフロップ726は、クロックピンで、フィルタリングされたタイミング信号728を受信してもよい。
【0043】
図8は、ゲーティングウィンドウを閉じるために、タイミング信号の最後の立ち下がりエッジを追跡する回路で利用される信号を示す。図8に示すように、制御信号802がタイミング信号804の最後の立ち下がりエッジ803と同時に(contemporaneously)生じる場合、ゲーティングウィンドウ806が論理レベル高から論理レベル低に切り替えられてよい。このようにして、ゲーティングウィンドウ806の立ち下がりエッジのタイミングが、タイミング信号804の最後の立ち下がりエッジ803のタイミングに調節され、ゲーティングウィンドウ806が、タイミング信号804の後のトライステート領域807をフィルタリングにより除くことができる。
【0044】
図7を参照すると、ゲーティングウィンドウ702がゲーティング回路720の「AND」ゲート730に送信され、ゲーティングウィンドウ702とタイミング信号704の間に「AND」演算が実行される。「AND」ゲート730の出力は、フィルタリングされたタイミング信号728を含み、これは、メモリコントローラ(不図示)に送信されてよい。
【0045】
制御信号716もタイミング制御回路710から位相検知回路722に送信され、位相検知回路722は、第2の遅延モジュール732と第2のDタイプのフリップフロップ734とを含んでいてよい。第2のフリップフロップ734は、フィルタリングされたタイミング信号728とタイムシフトされた制御信号736とを第2の遅延モジュール732から入力として受信するよう構成されている。図8に示すように、第2の遅延モジュール732は、タイムシフトされた制御信号808を作成して、タイムシフトされた制御信号808がタイミング信号804の最後の立ち下がりエッジ803と時間的に位置合わせされるようにするために利用されてよい。第2の遅延モジュール732が実行するタイムシフト810によって、第2のフリップフロップ734が位相検知処理を実行することができ、これにより第2のフリップフロップ734の位相検知出力値738が、タイムシフトされた制御信号736の立ち上がりエッジが、タイミング信号704の最後の立ち下がりエッジより早いか遅いかを示す。図7および図8の例では、制御信号パルス802の幅が1/2クロック周期であり、タイムシフト810の幅が1/4クロック周期である。タイムシフトされた制御信号736が遅い場合に、位相検知出力値738はローで、タイムシフトされた制御信号736が早い場合に、位相検知出力値738はハイであってよい。
【0046】
位相検知出力値738は、タイミング制御回路710のカウンタ718に送られ、閉ループフィードバック回路を作成する。図5に示したように、カウンタ718が保持する遅延値は、位相検知出力値738が低いか高いかに応じて、インクリメントされたりデクリメントされたりする。このフィードバックメカニズムにより、タイミング制御回路710は制御信号716の伝播を遅らせて、タイミング信号704の最後の立ち下がりエッジを追跡する。閉ループのフィードバック回路が、タイムシフトされた制御信号736の立ち上がりエッジを、フィルタリングされたタイミング信号728の最後の立ち下がりエッジに十分近くなるようタイミング調節した場合には、位相検知出力値738が、読み出し要求を受けるたびに、ハイおよびローの間で揺れる。このようにロックされ、揺れるよう動作しているときは、タイミング信号804の最後の立ち下がりエッジ803が、制御信号パルス802の中央付近に生じ、ゲーティングウィンドウ806を閉じさせる手助けをすることができる。
【0047】
図9は、1つのクロックサイクル全体の幅をもつ制御信号パルスを利用する回路の信号タイミング図である。図8を参照して上述したように、ゲーティングウィンドウ902を閉じるためには、タイミング信号904の最後の立ち下がりエッジ903が、制御信号パルス906と同時期に生じる必要があると思われる。図8では、制御信号パルス802の幅が1/2クロック周期であり、タイミング信号804の最後の立ち下がりエッジ803を追跡するために、タイムシフトされた制御信号808が、1/4クロックサイクル分シフトされていた。これに対して、図9では、これより幅の広い制御信号パルス906が、1つのクロックサイクル全体の幅をもっており、タイムシフトされた制御信号908は、1クロックサイクル910の1/2分、タイムシフトされている。幅の広い制御信号パルス906は、ジッタの高い環境で利用されると、制御信号パルス906がタイミング信号904の最後の立ち下がりエッジ903中に生じるよう手助けすることができる。しかし、制御信号パルス906の幅を広くしすぎると、制御信号パルス906が、最後の立ち下がりエッジではないタイミング信号904の立ち下がりエッジと同時に生じる場合に、ゲーティングウィンドウ902を早期に閉じてしまう場合がある。
【0048】
図10Aおよび図10Bは、早い制御信号及び遅い制御信号により生じる問題を示す信号タイミング図である。図10Aの信号タイミング図は、開いた制御信号を利用してゲーティングウィンドウを開くことに関している。図5および図6を参照して上述したように、ゲーティングウィンドウを開くために利用された制御信号の立ち上がりエッジは、理想的には、タイミング信号のプリアンブル領域の中央付近に生じるとよい。図10Aに示すように、制御信号1002が早く開くと、ゲーティングウィンドウ1004をトライステート領域中に開かせ、タイミング信号1006のトライステート領域をメモリコントローラに入力してしまう場合がある。こうなると、メモリコントローラで偽のタイミング信号のエッジを生じさせるグリッチ(glitch)が生じてしまう。また逆に、制御信号1008が遅く開くと、ゲーティングウィンドウ1010がタイミング信号1012の最初の立ち上がりエッジの後に開き、メモリコントローラに入るタイミング信号1012をクリップしてしまい、メモリコントローラが、入力データ信号の正確な読み出しに失敗する。
【0049】
図10Bの信号タイミング図は、ゲーティングウィンドウを閉じるために閉制御信号を利用することに関する。図7および図8を参照して上述した通り、ゲーティングウィンドウを閉じる制御信号は、タイミング信号の最後の立ち下がりエッジと同時に生じ、最後の立ち下がりエッジが制御信号パルスの中央付近で生じると理想的である。図10Bに示すように、閉制御信号パルスがタイミング信号1014、1016の最後の立ち下がりエッジと位置合わせされていないと(閉制御信号が早すぎたり1018、遅すぎたり1020するといった理由で)、ゲーティングウィンドウ1022、1024が閉じられなくなる。したがい、制御信号のインスタンスが早い場合1018も、遅い場合1020も、ゲーティングウィンドウ1022、1024は、開いたままにしておくと、タイミング信号1014、1016のトライステート領域がメモリコントローラに入る可能性がある。
【0050】
図11は、メモリデバイスとの間の読み出しオペレーションのタイミングをとるための方法を示すフローチャートである。1102で、ゲーティング回路がメモリデバイスからタイミング信号を受信する。1104で、タイミング制御回路は、メモリコントローラから読み出し要求を受信した後で、制御信号を生成する。タイミング制御回路は、制御信号を調節して、タイミング信号の時間的ばらつきを吸収させる。1106で、タイミング信号が、ゲーティングウィンドウ中に、フィルタリングされたタイミング信号として、ゲーティング回路を通過する。ゲーティング回路は、制御信号に基づいて、ゲーティングウィンドウを生成する。
【0051】
ここに開示する技術は、メモリデバイスとの間の読み出しオペレーションを実行することに関して詳述される。さらに、この技術は、メモリデバイスに関しないが、タイミング信号を利用して応答ノードから要求ノードにデータを転送する他のハードウェアに適用することもできる。
【0052】
本開示は、具体的案実施形態を参照して詳述されてきたが、当業者には実施形態の精神および範囲において様々な変更例および変形例が自明である。従い、本開示は、添付請求項およびその均等物の範囲内に収まっていればすべての変形例および変更例を含むことが意図されている。
【0053】
本記載および以下の請求項全体において、「a」「an」等の不定冠詞および「the」等の定冠詞は、文脈でそうではないことが明らかな場合を除いて複数形も含むことを意図している。さらに本記載および以下の請求項全体において、「in(の中、で、に等)」という言い回しがある場合、文脈でそうではないことが明らかな場合を除いて、「in」も「on(の上で、の上に)」の場合もある。さらに本記載および以下の請求項全体において、「each(各、それぞれ)」という言い回しは、文脈でそうではないことが明らかである場合を除いて、「いかなるものも全て(each and every)」という意味である。最後に、本記載および以下の請求項全体において、「and(および、と、並びに)」といった言い回しは、文脈からそうではないことが明らかである場合を除いて、接続的(conjunctive)に利用される場合と離接的接続詞的(disjunctive)に利用される場合とが、入れ替え可能に利用されてよく、「exclusive of(を除く)」という言い回しは、離接的接続詞的な意味である場合を示すために利用されてよい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図11