(57)【要約】  バッファされるコマンドおよびアドレスバスに結合されているメモリ制御装置と、パイプライン遅延を有するパイプライン化データバスとが、集積回路に提供される。メモリ制御装置は、書き込み待ち時間期間要件を有する外部メモリに対する書き込みおよび読み取り動作を制御するように構成されている。メモリ制御装置は、書き込み待ち時間期間よりも短い修正された書き込み待ち時間期間の満了に応答して、書き込みデータをパイプライン化データバスに発するようにさらに構成されている。【選択図】図１Ａ
2018532193.tif 000002
【特許請求の範囲】
【請求項１】
集積回路において、
バッファされるコマンドおよびアドレス（ＣＡ）バスと、
パイプライン遅延を有するパイプライン化データ（ＤＱ）書き込みバスと、
最初の時間において、バッファされるＣＡバスに書き込みコマンド信号を駆動するように構成されているメモリ制御装置とを具備し、
前記メモリ制御装置は、外部メモリに対する書き込み待ち時間要件とパイプライン遅延との間の遅延差期間を決定し、前記遅延差期間の満了において、前記パイプライン化ＤＱ書き込みバスにＤＱ信号を駆動するようにさらに構成されている集積回路。
【請求項２】
複数のＤＱエンドポイントをさらに具備し、
前記パイプライン化ＤＱ書き込みバスは、前記複数のＤＱエンドポイントに対応する複数のパイプライン化ＤＱ書き込みバスを備え、
各パイプライン化ＤＱ書き込みバスは、前記メモリ制御装置と前記対応するＤＱエンドポイントとの間に結合され、
前記ＤＱ信号は、前記複数のＤＱエンドポイントに対応する複数のＤＱ信号を備え、
各ＤＱエンドポイントは、外部メモリに前記対応するＤＱ信号を駆動するように構成されている請求項１記載の集積回路。
【請求項３】
前記外部メモリは、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）である請求項２記載の集積回路。
【請求項４】
前記ＤＱエンドポイントと前記メモリ制御装置との間に結合されているバッファされるＤＱ読み取りバスをさらに具備する請求項２記載の集積回路。
【請求項５】
前記バッファされるＣＡバスは、非デフォルトルーティングルールにしたがってルーティングされる複数の金属層トレースに結合されている複数のバッファを備える請求項１記載の集積回路。
【請求項６】
メモリクロック信号を提供するように構成されているクロックソースをさらに具備し、
前記メモリ制御装置は、前記メモリクロック信号の第１のサイクルに応答して、前記最初の時間に、前記バッファされるＣＡバスに前記書き込みコマンドを駆動するように構成され、
前記メモリ制御装置は、前記メモリクロック信号の第２のサイクルに応答して、前記遅延差期間の満了において、前記パイプライン化ＤＱ書き込みバスに前記ＤＱ信号を駆動するようにさらに構成されている請求項１記載の集積回路。
【請求項７】
前記パイプライン化ＤＱ書き込みバスは、複数の第１のレジスタと複数の第２のレジスタとを備え、
前記第１のレジスタは、前記メモリクロック信号の立ち上がりエッジによってクロックされるように構成され、
前記第２のレジスタは、前記メモリクロック信号の立ち下がりエッジによってクロックされるように構成されている請求項６記載の集積回路。
【請求項８】
前記パイプライン化ＤＱ書き込みバスは、複数のレジスタと複数の対応するマルチプレクサとを備え、
各マルチプレクサは、前記対応するレジスタからの出力信号に対して、および、前記対応するレジスタをバイパスするバイパスパスに対して、選択するように構成され、
前記メモリ制御装置は、前記マルチプレクサによる前記選択を制御して、前記パイプライン遅延を調節するように構成されている請求項６記載の集積回路。
【請求項９】
前記パイプライン遅延は、メモリクロックサイクルの整数Ｐに等しく、前記書き込み待ち時間要件は、前記メモリクロックサイクルの整数ＷＬに等しく、前記遅延差期間は、ＷＬとＰとの差に等しい請求項６記載の集積回路。
【請求項１０】
前記メモリ制御装置は、メモリクロックでクロックされることに応答して、前記遅延差期間を測定するように構成されているＤＱタイマを備える請求項６記載の集積回路。
【請求項１１】
前記メモリ制御装置は、前記書き込み待ち時間要件における変化に応答して、前記パイプライン化ＤＱ書き込みバスに対するパイプライン遅延を調節するように構成されている請求項１記載の集積回路。
【請求項１２】
方法において、
最初の時間において、メモリ制御装置から、バッファされるコマンドバスを通して、第１の入力／出力（Ｉ／Ｏ）エンドポイントに、コマンド信号を駆動することと、
外部メモリに対する書き込み待ち時間要件とパイプライン化データバスを通してのパイプライン遅延との間の差に等しい遅延を決定することと、
前記最初の時間からの前記遅延の満了において、前記メモリ制御装置から、前記パイプライン化データバスを通して、第２のＩ／Ｏエンドポイントに、データ信号を駆動することとを含む方法。
【請求項１３】
前記メモリ制御装置から、前記第２のＩ／Ｏエンドポイントに、クロック信号を駆動することをさらに含み、
前記方法は、前記クロック信号に応答して、前記第２のＩ／Ｏエンドポイントにおいて、前記データ信号をラッチすることをさらに含む請求項１２記載の方法。
【請求項１４】
前記第２のＩ／Ｏエンドポイントから、前記外部メモリに、前記ラッチされたデータ信号を送信して、前記書き込み待ち時間要件を満たすことをさらに含む請求項１３記載の方法。
【請求項１５】
前記コマンド信号を駆動することは、書き込みコマンド信号を駆動することを含む請求項１２記載の方法。
【請求項１６】
前記最初の時間おいて、前記書き込みコマンド信号を駆動することは、クロック信号の第１のサイクルに応答する請求項１５記載の方法。
【請求項１６】
前記書き込み待ち時間要件における変化に応答して、前記パイプライン遅延を変更することをさらに含む請求項１２記載の方法。
【請求項１７】
前記パイプライン遅延を変更することは、前記パイプライン化データバス内の複数のマルチプレクサを制御することを含む請求項１６記載の方法。
【請求項１８】
集積回路において、
メモリ制御装置と、
パイプライン遅延なく、前記メモリ制御装置から、コマンドおよびアドレス（ＣＡ）エンドポイントに、書き込みコマンド信号を伝搬する第１の手段と、
パイプライン遅延を有して、前記メモリ制御装置から、書き込みデータ（ＤＱ）エンドポイントに、ＤＱ信号を伝搬する第２の手段とを具備し、
前記メモリ制御装置は、外部メモリに対する書き込み待ち時間期間とパイプライン遅延との間の遅延差期間を決定し、前記遅延差期間の満了の際に、前記ＤＱ信号を伝搬する手段に前記ＤＱ信号を駆動する第３の手段を備える集積回路。
【請求項１９】
前記第３の手段は、メモリクロック信号のサイクルに応答して、前記遅延差期間を測定するように構成されている請求項１８記載の集積回路。
【請求項２０】
前記第２の手段は、前記パイプライン遅延を有して、前記メモリ制御装置から、対応する複数のＤＱエンドポイントに、複数のＤＱ信号を伝搬するように構成されている請求項１８記載の集積回路。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
［０００１］
本出願は、２０１５年９月２２日に出願された、米国特許出願第１４／８６１，１１４号の利益を主張する。
【技術分野】
【０００２】
［０００２］
本出願は、メモリに関連し、より詳細には、メモリ制御装置と、複数の分散されたエンドポイントへのそのルーティングとに関連する。
【背景】
【０００３】
［０００３］
外部ダイナミックランダムアクセスメモリ（ＤＲＡＭ）のためのメモリ制御装置は、例えば、電子素子技術連合評議会（ＪＥＤＥＣ）標準規格の下で必要とされる、ある厳密なタイミング関係を満たさなければならない。例えば、メモリ制御装置は、ＤＲＡＭに書き込まれる書き込みデータ（ＤＱ）と対応するコマンドおよびアドレス（ＣＡ）信号との間の書き込み待ち時間（ＷＬ）要件を満たさなければならない。言い換えると、ＤＲＡＭが書き込みコマンドを受信するのと同じメモリクロックサイクルにおいて、ＤＲＡＭは書き込みデータを受信できない。代わりに、書き込みコマンドの提示後、書き込みデータは、クロックサイクルの書き込み待ち時間数において提示される。書き込み待ち時間を実施することに関して、メモリ制御装置デジタルコアは、エンドポイントまたはエンドポイント回路としても呼ばれることがある入力／出力（Ｉ／Ｏ）回路を通して、対応するＤＲＡＭにインタフェースする。
【０００４】
［０００４］
パーソナルコンピュータ（ＰＣ）に対するようなアプリケーションにおいて、メモリ制御装置とそのエンドポイントとの間のルーティングは比較的単純である。これに関連して、ＰＣマイクロプロセッサ集積回路は、ネットワーキング、グラフィック処理等に対して必要とされるような、さまざまな他の集積回路もサポートするマザーボード上に据え付けられる。一連のダイナミックランダムアクセスメモリ（ＤＲＡＭ）集積回路もマザーボード上に据え付けられ、マザーボードメモリスロットを通してアクセスされる。ＤＲＡＭのためのメモリ制御装置は、典型的には、マイクロプロセッサバスとＤＲＡＭとの間を結合するメモリ制御装置集積回路内に配置される。ＰＣメモリ制御装置とそのエンドポイントは、メモリ制御装置集積回路内で相対的に同じ場所に配置され、これは、適切な信号品位により、エンドポイントへのＣＡ信号およびＤＱ信号のルーティングを簡略化する。メモリ制御装置が、代わりにマイクロプロセッサと統合される場合、メモリ制御装置とエンドポイントとの間のルーティング問題が緩和されるように、メモリ制御装置は、依然として対応するエンドポイントと相対的に同じ場所に配置されてもよい。
【０００５】
［０００５］
しかしながら、メモリ制御装置設計は、パッケージオンパッケージ（ＰｏＰ）ＬＰＤＤＲ  ＤＲＡＭコンフィギュレーションが多くの製品に対して使用される、急成長するスマートフォン／ウェアラブル市場に対して開発されたようなシステムオンチップ（ＳｏＣ）集積回路とは非常に異なる。このようなＰｏＰにおいて、異なるＤＲＡＭピンが、ＳｏＣの異なる側からアクセスされる必要があるかもしれない。ＳｏＣ中のメモリ制御装置は、したがって、エンドポイントから比較的遠くに配置されている。したがって、エンドポイント（Ｉ／Ｏ回路）は、ＳｏＣダイの周辺に配置されている。対照的に、メモリ制御装置からさまざまなエンドポイントへのバスに対するトレース長をより容易に一致させることができるように、メモリ制御装置は、ＳｏＣダイ内のより中央に配置される。したがって、ＳｏＣメモリ制御装置からのＣＡ信号およびＤＱ信号は、ＳｏＣメモリ制御装置からエンドポイントへの対応するバスを通して比較的長い伝搬パスを横断しなければならない。金属トレースのみが、ＳｏＣダイに渡るこれらの比較的長い伝搬パスを形成するように使用される場合、ＣＡ信号およびＤＱ信号は、著しい伝搬損失、遅延、および雑音を受けるだろう。したがって、メモリ制御装置からエンドポイントへのＣＡバスおよびＤＱバスに複数のバッファを挿入することが従来である。バッファは、ＣＡ信号およびＤＱ信号をブーストし、したがって、損失および雑音を取り扱う。さらに、金属トレースに沿った伝搬遅延は、そのキャパシタンスと抵抗の積に比例する。伝搬パス長が伸長するにつれて、これらの要因の両方が直線的に増加する傾向があり、伝搬遅延は二次的にパス長に比例する。したがって、バッファされるバス上の連続するバッファ間のより短いパスは、さもなければ、バッファされるバスと同じ長さを有するバッファされていないパスに渡って生じるであろう、伝搬遅延を減少させる。バスは、厳しいタイミング要件を有する高周波信号を伝えることから、金属トレースは、伝搬遅延、信号劣化、およびクロストークを最小化させるために、典型的に、非デフォルトルーティング（ＮＤＲ）ルールにしたがう。ＮＤＲルールは、クロストークおよび関連する問題を緩和するために、より大きなワイヤ幅、より大きな間隔、信号ワイヤと並行して走る遮蔽ワイヤを条件として指定する。従来のＳｏ
Ｃにおけるメモリ制御装置とそのエンドポイントとの間の結果として生じるＮＤＲルーティングは、かなりのエリア使用を必要とし、他の信号のルーティングを困難にする。
【０００６】
［０００６］
バッファバスおよびＮＤＲルーティングの使用への代替として、ＣＡバスおよびＤＱバスは、一連のレジスタを使用して、それぞれパイプライン化されてもよい。パイプライン化パスに対して結果として生じるルーティングは、もはや、ＮＤＲルールにしたがう必要なく、したがって、バッファリングされるルーティングアプローチと比較して、よりコンパクトである。しかしながら、レジスタは、各パスにかなりのパイプライン遅延を加える。例えば、ＣＡバスおよびＤＱバスが８個のレジスタによりそれぞれパイプライン化される場合、メモリ制御装置からエンドポイントにＣＡ信号またはＤＱ信号を駆動するために４つのクロックサイクルを必要とするかもしれない（半分のレジスタが立ち上がりエッジによってクロックされ、半分が立ち下がりエッジによってクロックされると仮定する）。しかしながら、ＣＡバスは、読み取りおよび書き込みコマンドの両方を伝える。したがって、ＳｏＣプロセッサおよび他の実行エンジンは、それが読み取りコマンドを発行するたびに、望ましくないパイプライン遅延を受ける。読み取りデータに対して増大した遅延は、ＳｏＣ中のさまざまな実行エンジンの性能に悪影響を与えることがある。その後、ＳｏＣ設計者は、扱いにくいバッファされるＣＡバスおよびＤＱバスのエリア要求、または、パイプライン化されたＣＡバスおよびＤＱバスの増大した遅延との間で選択するように強いられる。
【０００７】
［０００７］
したがって、ＰｏＰパッケージにおいて使用されるような、システムオンチップアプリケーションのための改良されたメモリ制御装置アーキテクチャに対する技術的な必要性がある。
【概要】
【０００８】
［０００８］
増大した遅延に悩まされることなく、密度を向上させるために、バッファされるコマンドおよびアドレス（ＣＡ）バスを通してＣＡ書き込み信号を駆動し、パプライン化データ（ＤＱ）バスを通してＤＱ信号を駆動する、メモリ制御装置が集積回路に提供される。バッファされるＣＡバスは、パイプライン化されないことから、書き込み信号がメモリ制御装置から発せられるときと同じメモリクロックサイクルでＣＡエンドポイント回路において受信されるだろう。対照的に、パイプライン化ＤＱバスは、クロック信号のＰサイクルに対応するパイプライン遅延を有するので、メモリ制御装置によってそれが発せられた後のＰクロックサイクルで、ＤＱ信号は、ＤＱエンドポイント回路で受信されるだろう（Ｐは正の整数）。次に、ＤＱエンドポイント回路は、受信したＤＱ信号を、書き込み待ち時間（ＷＬ）クロックサイクルと等しいＷＬ期間要件を有する外部メモリに発するだろう（ＷＬも正の整数である）。書き込み待ち時間期間要件を外部メモリにおいて確実に満たすために、メモリ制御装置は、書き込みコマンドが発せられた後の修正された書き込み待ち時間期間にＤＱ信号を発するように構成され、修正された書き込み待ち時間期間は、（ＷＬ−Ｐ）クロックサイクルと等しい。
【０００９】
［０００９］
結果として得られる集積回路は比較的コンパクトである。さらに、集積回路中のプロセッサは、パイプライン化アーキテクチャの遅延に悩まされることなく、読み取りおよび書き込みコマンドを発行できる。以下に続く詳細な説明を通して、これらおよび他の有利な特徴がより良く認識されるだろう。
【図面の簡単な説明】
【００１０】
【図１Ａ】［００１０］  図１Ａは、本開示の態様にしたがって、バッファされるＣＡバスとパイプライン化ＤＱバスとを駆動するように構成されているメモリ制御装置を含むＳｏＣのダイヤグラムである。
【図１Ｂ】［００１１］  図１Ｂは、本開示の態様にしたがって、バッファされるＣＡバスと適応パイプライン遅延を有するＤＱバスとを駆動するように構成されているメモリ制御装置を含むＳｏＣのダイヤグラムである。
【図２】［００１２］  図２は、本開示の態様にしたがって、バッファされるＣＡバスとパイプライン化ＤＱバスとを駆動して、外部ＤＲＡＭを駆動するように構成されているメモリ制御装置を有するＳｏＣを含むシステムのダイヤグラムである。
【図３】［００１３］  図３は、図２のシステムのための書き込みコマンドおよび書き込みデータに対するタイミングダイヤグラムである。
【図４】［００１４］  図４は、本開示の態様にしたがう動作の例示的な方法に対するフローチャートである。      ［００１５］  本開示のさまざまな態様およびこれらの利点は、以下の詳細な説明を参照することにより、最も理解される。同様の参照番号は、図のうちの１つ以上中に図示される同様の番号を識別するために使用されていると認識すべきである。
【詳細な説明】
【００１１】
［００１６］
密度および動作速度を増加させるために、メモリ制御装置とそのエンドポイントとの間のコマンドおよびアドレス（ＣＡ）バスがバッファリングされる一方で、メモリ制御装置とそのエンドポイントとの間のデータ（ＤＱ）バスは、レジスタによりパイプライン化される、メモリ制御装置が提供される。比較的多数のパイプライン化されたＤＱパスに対してバッファされるＣＡバスが１つだけであってもよいことから、バッファされるＣＡバスに対する金属トレースの任意の非デフォルトルーティングルール（ＮＤＲ）ルーティングからのエリア要求は、最小である。さらに、バッファされるＣＡバスは、メモリ動作スピードを増加させる。ＤＱバス上で伝えられるデータ信号は、各ＤＱバス中のパイプラインレジスタの数に対応するクロックサイクルだけ遅延される一方で、ＣＡ信号は、何らかのパイプライン化によって妨げられないことから、メモリ制御装置内のＣＡ信号の発生とＤＱ信号の発生との間の書き込み待ち時間は切り離される。特に、ここで開示されるメモリ制御装置は、外部メモリによって必要とされる書き込み待ち時間よりも短い修正された書き込み待ち時間に関してこれらのＤＱ信号を発する。
【００１２】
［００１７］
メモリ制御装置１０１を含む例示的なシステムオンチップ（ＳｏＣ）１００が、図１Ａ中に示されている。メモリ制御装置１０１は、複数のバッファ１０５を含むバッファされるＣＡバス１１０を通してＣＡ信号を駆動する。（エンドポイント回路としても示されることがある）ＣＡエンドポイント１３０は、バッファされるＣＡバス１１０上でＣＡ信号を受信し、これらを（図示していない）外部ＤＲＡＭに送信する前に、これらの物理レイヤ（ＰＨＹ）処理を実行する。バッファされるＣＡバス１１０は、ＣＡ信号がマルチビットワードである、単一のワイヤとして簡略化された形態で示されていることが理解されるだろう。このように、バッファされるＣＡバス１１０は、（図示していない）複数の金属トレースを備え、複数の金属トレースは、ＣＡワードの幅に依存する。例えば、ＣＡワードが８ビットワードである場合、バッファされるＣＡバス１１０は、８個の金属トレースを備える。一般的に、ＣＡワードがｎビットワードである場合、バッファされるＣＡバス１１０は、ｎ個の金属トレースを備え、ｎは複数の正の整数である。したがって、各バッファ１０５は、複数の金属層トレースに対応する複数のバッファを表す。金属層トレースは、非デフォルトルーティングルールにしたがってルーティングされ、シールドされてもよい。バッファされるＣＡバス１１０のためのこのようなシールドされたＮＤＲルーティングはまた、「スーパーバッファ」インプリメンテーションとして示されることもある。１つのインプリメンテーションでは、ＣＡバス１１０は、パイプライン遅延なく、メモリ制御装置１０１から、ＣＡエンドポイント１３０に、書き込みコマンド信号を伝搬する手段を備えると考えてもよい。
【００１３】
［００１８］
さらに、メモリ制御装置１０１は、対応する複数のＤＱエンドポイント１４５によって受け入れられる複数のパイプライン化データ（ＤＱ）バス１２５を駆動する。各パイプライン化ＤＱバス１２５は、メモリ制御装置１０１によってＤＱエンドポイント１４５に分配されるメモリ書き込みクロックによってクロックされる複数のパイプラインレジスタを含む。対応するクロックパスおよびクロックソースは、実例を明確にするために示されていない。各ＤＱバス１２５は、パイプライン遅延を有して、メモリ制御装置１０１から、ＤＱエンドポイント１４５に、ＤＱ信号を伝搬する手段を備えると考えてもよい。パイプラインレジスタは、立ち上がりエッジクロックレジスタ１１５および立ち下がりエッジクロックレジスタ１２０として代替させてもよい。したがって、レジスタ１１５と１２０の連続するペア間の遅延は、メモリクロック信号の半分のサイクルに対応する。したがって、各パイプラインＤＱバス１２５に渡るクロックサイクルにおける総遅延は、レジスタ１１５と１２０のペアによって形成されるいくつのパイプラインステージが含まれるかに依存する。例えば、６個のレジスタ１１５（したがって、６個のレジスタ１２０）が各パイプライン化ＤＱバス１２５中に含まれる場合、ＤＱ信号がメモリ制御装置１０１から対応するＤＱエンドポイント１４５に伝搬するためのクロックサイクルにおける総パイプライン遅延は、６クロックサイクルになる。代替インプリメンテーションでは、パイプライン化ＤＱバス１２５は、ちょうど１つの（立ち上がりまたは立ち下がり）クロックエッジに応答してもよく、したがって、そのレジスタは、すべて立ち上がりエッジトリガされるか、または、すべて立ち下がりエッジトリガされる。ここでさらに説明するように、メモリ制御装置１０１は、修正されたまたは擬似書き込み待ち時間に関してＤＱデータ信号を発することに関してこのパイプライン遅延時間を使用するように構成されている。例えば、パイプライン遅延が６クロックサイクルである一方、所望の書き込み待ち時間が８クロックサイクルである場合、メモリ制御装置１０１は、対応する書き込みコマンドを発した後の２クロックサイクルで、ＤＱ信号を発してもよい。より一般的には、パイプライン遅延は、変数Ｐによって表すことができる一方で、外部メモリによって必要とされる書き込み
待ち時間は、変数ＷＬとして表されてもよい（両方の遅延は、クロックサイクルのいくつかの整数である）。したがって、メモリ制御装置は、対応する書き込み待ち時間を発した後の、クロックサイクルにおける書き込み待ち時間とパイプライン遅延との間の差（ＷＬ−Ｐ）により、ＤＱ信号を発してもよい。書き込みコマンドは、バッファされるＣＡバス１１０上でパイプライン遅延を受けないので、それが発されたときと同じクロックサイクルでＣＡエンドポイント１３０に到着する。対照的に、ＤＱ信号は、パイプライン遅延によって遅延される。ＤＱ信号は、書き込みコマンドの後のＷＬ−Ｐクロックサイクルで発せられたことから、したがって、ＤＱ信号は、ＣＡ書き込みコマンドを出した後のクロックサイクルにおけるＷＬ−Ｐ＋Ｐ＝ＷＬの遅延で、そのＤＱエンドポイント１４５に到着する。したがって、ＣＡ書き込みコマンドに対するパイプライン化の欠如にもかかわらず、所望の書き込み待ち時間が維持される。
【００１４】
［００１９］
ＪＥＤＥＣ仕様によって指定されるようなＤＲＡＭに対して必要とされる書き込み待ち時間は、クロックレートに依存するかもしれないことに留意されたい。動作のモードに依存して、クロックレートを変更してもよい。例えば、高性能の動作のモードで使用されるレートと比較して、低電力の動作のモードでは、クロックレートは低下されてもよい。その点で、ＪＥＤＥＣ仕様は、９８８ＭＨｚのクロックレートにおいて８クロックサイクルの書き込み待ち時間を必要とするが、４００ＭＨｚのクロックレートでちょうど３クロックサイクルになるように、必要とされる書き込み待ち時間を減少させる。したがって、クロックレートにおいて結果として生じる変化は、結果として、各ＤＱバス１２５に対するパイプライン遅延よりも短く変更された書き込み待ち時間となる。例えば、パイプライン遅延が６クロックサイクルであるが、書き込み待ち時間に対する新しい値は３クロックサイクルであった場合、メモリ制御装置１０１は、対応するＣＡ書き込みコマンドを発したのと同じクロックサイクルでＤＱデータ信号を発する場合でさえ、必要とされる書き込み待ち時間を満たすことができない。
【００１５】
［００２０］
動作のモードに関してのような書き込み待ち時間の何らかの変化に対処するために、システム１００中の各パイプライン化ＤＱバス１２５は、図１Ｂ中に示されているように、適応パイプライン化ＤＱバス１４０によって置き換えられ、ＳｏＣ１７０における適応的なパイプライン遅延を提供してもよい。メモリ制御装置１７５と対応するＤＱエンドポイント１４５との間に結合される適応パイプライン化ＤＱバス１４０が、実例を明確にするために、１つだけ図１Ｂ中に示されている。同様に、バッファされるＣＡ１１０バスは、追加の実例を明確にするために、図１Ｂ中には示されていない。適応パイプライン化ＤＱバス１４０は、パイプライン化ＤＱバス１２５に関して説明したものと類似して、立ち上がりエッジクロックレジスタ１１５と立ち下がりエッジクロックレジスタ１２０とのペアによって形成されるパイプラインステージを含む。適応パイプライン遅延を提供するために、適応パイプライン化ＤＱバス１４０中の各レジスタ１１５は、対応するマルチプレクサ１５０によってバイパスされてもよい。したがって、各レジスタ１１５へのＤＱ入力は、レジスタを越えて、バイパスパス１６０上で、対応するマルチプレクサ１５０に分路してもよい。同様に、各レジスタ１２０は、対応するバイパスパス１６０を通して、対応するマルチプレクサ１５０にバイパスされてもよい。マルチプレクサ１５０が、そのバイパスパス１６０入力に対して選択するように制御される場合、対応するレジスタ１２０または１１５はバイパスされてもよい。逆に、マルチプレクサがその対応するレジスタ１２０または１１５からのＱ出力を選択する場合、パイプライン遅延の半サイクルが、それにしたがってＤＱバス１４０に追加される。適応パイプライン化ＤＱバス１４０が、書き込み待ち時間の所定の値に対して適切なパイプライン遅延を有するように、メモリ制御装置１７５は、対応する制御信号１５５を通してマルチプレクサ１５０を制御するように構成されている。
【００１６】
［００２１］
対応するパイプライン化ＤＱバス１２５または１４０上で伝えられる各ＤＱ信号は、ちょうど、対応するＣＡ書き込みコマンドのように、複数ビットワードであることに留意されたい。したがって、各パイプライン化ＤＱバス１２５または１４０は、それらが伝えるＤＱ信号のビットの幅に対応する複数の金属層トレースを備えていてもよい。これらの個々のトレースは、実例を明確にするために示されていない。したがって、レジスタ１１５および１２０は、対応するＤＱ信号の各個別ビットに対して複数のこのようなレジスタを備えている。
【００１７】
［００２２］
ＳｏＣ１００のより詳細な図は、８クロックサイクルの書き込み待ち時間（ＷＬ）期間要件を有する外部ＤＲＡＭ２２０と組み合わせて図２中に示されている。このＷＬ要件が与えられると、ＤＲＡＭ２２０は、ＣＡエンドポイント１３０から対応するＣＡ書き込みコマンドを受信した後の８クロックサイクルで、ＤＱエンドポイント１４５から、所定の書き込み動作に対するＤＱ信号を受信しなければならない。メモリ制御装置１０１が、必要とされる書き込み待ち時間と各ＤＱバス１２５に渡るパイプライン遅延との間の遅延差期間に対処することから、ＤＱバス１２５のパイプライン化とＣＡバス１１０に対するパイプライン化の欠如とにかかわらず、この書き込み待ち時間は満たされる。ＳｏＣ１００において、各パイプライン化ＤＱバス１２５が、１２の半サイクルパイプラインステージ（図１Ａに関して説明したレジスタ１１５および１２０）を含むので、パイプライン遅延（Ｐ）は６クロックサイクルである。代替インプリメンテーションに対するパイプライン遅延は、６クロックサイクルのこの例よりも長くても短くてもよいことが理解されるであろう。メモリ制御装置１０１は、必要とされる書き込み待ち時間（ＷＬ）に関して従来の方法で、往復遅延のようなコマンド遅延を計測するためのコマンドタイマ２０５を含む、タイミングおよびコマンド発生回路２００において、書き込みコマンド（および読み取りコマンドのような他のコマンド）を発生させる。コマンドがＣＡエンドポイント１３０において受信され、それにしたがってＤＲＡＭ２２０に駆動されるように、タイミングおよびコマンド発生回路２００は、発生させたＣＡ書き込みコマンドをバッファされるＣＡバス１１０上に駆動する。タイミングおよびコマンド発生回路２００は、必要なＣＡ発生およびタイミング機能を実行するように構成されている有限状態機械を実現するように、複数の論理ゲートを備えていてもよい。
【００１８】
［００２３］
ＤＱ発生回路２１０は、書き込み待ち時間とパイプライン遅延との間の遅延差を計算するように構成されており、この例では、２つのクロックサイクルである。書き込みコマンドを発することに続く書き込み待ち時間期間の満了において、従来のメモリ制御装置がどのようにそのＤＱ信号を発するのかに類似して、この遅延差は、ＤＱ発生回路が遅延差期間の満了に応答して、ＤＱ信号を発する「修正された書き込み待ち時間期間」であると考えてもよい。タイミングおよびコマンド発生回路２００が書き込みコマンドを発した後の２クロックサイクルで、ＤＱ発生回路２１０が、対応するＤＱ信号を発するように、ＤＱタイマ２１５は、この２クロックサイクル差をそれにしたがって測定するように構成されている。ＤＱ発生回路２１０は、例えば、必要なＤＱ発生およびタイミング機能を実行するように構成されている有限状態機械を実現するために、複数の論理ゲートを備えていてもよい。ＣＡ発生間の書き込み待ち時間（この例では、８クロックサイクル）と、ＤＱ発生に関する修正された書き込み待ち時間（この例では、２クロックサイクル）は、したがって、切り離される。ＤＱバス１２５はパイプライン化されているが、ＤＱエンドポイント１４５からメモリ制御装置１０１への読み取りデータバスは、読み取り待ち時間を最小化するようにバッファされてもよいことに留意されたい。ＤＱ発生回路２１０は、外部メモリに対する書き込み待ち時間期間とパイプライン遅延との間の遅延差期間を決定し、遅延差期間が満了すると、ＤＱ信号をＤＱ信号ＤＱバス１２５に駆動する手段を備えていると考えてもよい。
【００１９】
［００２４］
ＣＡ書き込みコマンドと書き込みデータ（ＤＱ）とを発する間に結果として生じる待ち時間が、連続するクロックサイクル０から１１に対して図３中に表形式で示されている。クロックサイクル０では、ＣＡ書き込みコマンド（Ｗ）が、メモリ制御装置から発され、対応するＣＡエンドポイント（ＰＨＹ（ＩＮ））で受信される。その後、図２に関して説明したように、書き込みデータ（Ｗ０）が、クロックサイクル２でメモリ制御装置から発せられる。対応するＤＱバス上のパイプライン遅延により、書き込みデータＷ０は、クロックサイクル８まで、対応するエンドポイントで受信されないので、８クロックサイクルの所望の書き込み待ち時間が満たされる。
【００２０】
［００２５］
動作の方法を、図４中に示すフローチャートに関して説明する。方法は、最初の時間において、メモリ制御装置から、バッファされるコマンドバスを通して、第１の入力／出力（Ｉ／Ｏ）エンドポイントに、コマンド信号を駆動する動作４００を含んでいる。メモリ制御装置１１０から、バッファされるＣＡバス１１０を通して、ＣＡエンドポイント１３０に、ＣＡ書き込みコマンドを発することは、動作４００の例である。方法は、外部メモリに対する書き込み待ち時間要件と、パイプライン化データバスを通してのパイプライン遅延との間の差に等しい遅延差を決定する動作４０５をさらに含んでいる。ＤＱ発生回路２１０中の遅延差（ＷＬ−Ｐ）の計算は、動作４０５の例である。最後に、方法は、最初の時間に後続する遅延差の満了に応答し、メモリ制御装置から、パイプライン化データバスを通して、第２のＩ／Ｏエンドポイントに、データ信号を駆動することを含む動作４１０を含む。書き込みコマンドを発することに続く修正された書き込み待ち時間期間（ＷＬ−Ｐ）の満了の際に、ＤＱ発生回路２１０によりＤＱ信号を発することは、動作４１０の例である。
【００２１】
［０００１］
今では当業者が認識するように、手近な特定のアプリケーションに依存して、その精神および範囲から逸脱することなく、多くの修正、置換、バリエーションを、本開示の、マテリアル、装置、コンフィギュレーション、および、デバイスの使用の方法においてすることができる。この観点から、いくつかの単なる例にすぎないので、ここで図示し、説明した特定のインプリメンテーションの範囲に、本開示の範囲を限定すべきではなく、むしろ、以下に添付した特許請求の範囲とその機能的均等物の範囲に十分に相応させるべきである。
【図１Ａ】
2018532193.tif 000003
【図１Ｂ】
2018532193.tif 000004
【図２】
2018532193.tif 000005
【図３】
2018532193.tif 000006
【図４】
2018532193.tif 000007
【国際調査報告】
2018532193.tif 000008
2018532193.tif 000009
2018532193.tif 000010