(57)【要約】【課題】本発明は、少なくとも１つのメモリバンク（２１、２２、２３、２４）を含み、少なくとも１つのチャネル（６、７、８）経由でＩＣと通信する外部ＤＲＡＭ（２）を使用する該ＩＣのためのメモリコントローラに関する。【解決手段】本発明によると、メモリコントローラ（１）は、コマンドに対して静的に割り当てられた優先度と、チャネルに対して動的に割り当てられる優先度に基づきメモリバンクコマンド伝送の優先度を割り当てるコマンドスケジューラ（３）を備えている。【選択図】図３
2007514221.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのメモリバンク（２１、２２、２３、２４）を有し、少なくとも１つのチャネル（６、７、８）経由でＩＣと通信する外部ＤＲＡＭ（２）と、該ＩＣとの通信方法において、
メモリバンクコマンド伝送の優先度は、コマンドに対して静的に割り当てられた優先度と、チャネルに対して動的に割り当てられる優先度に基づき割り当てられること、
を特徴とする方法。
【請求項２】
静的に優先度が割り当てられるコマンドは、最も高い優先度である“バースト終了”コマンド、２番目に高い優先度である“読み出し”又は“書き込み”コマンド、３番目に高い優先度である“アクティベート”コマンド、及び、最も低い優先度である“プリチャージ”コマンドを含むこと、
を特徴とする請求項１に記載の方法。
【請求項３】
動的に優先度が割り当てられるチャネルは、コマンド送信後、最も低い優先度が割り当てられるチャネルを含むこと、
を特徴とする請求項１又は２に記載の方法。
【請求項４】
動的に優先度が割り当てられるチャネルは、現在のクロックサイクルにおいて最も高い優先度でなく、他のチャネル（６、７、８）がコマンドを送信したとき、次のクロックサイクルにおいて最も高い優先度が割り当てられるチャネル（６、７、８）を含むこと、
を特徴とする請求項１から３のいずれか１項に記載の方法。
【請求項５】
動的に優先度が割り当てられるチャネルは、コマンドを送信したときのみ最も高い優先度を失うチャネル（６、７、８）を含むこと、
を特徴とする請求項１から４のいずれか１項に記載の方法。
【請求項６】
チャネル（６、７、８）は、外部ＤＲＡＭ（２）の物理的に異なる記憶領域にアクセスすること、
を特徴とする請求項１からの５のいずれか１項に記載の方法。
【請求項７】
チャネル（６、７、８）は、外部ＤＲＡＭ（２）の共通して使用する記憶領域に対して、連続するアクセス操作を行わないこと、
を特徴とする請求項１からの５のいずれか１項に記載の方法。
【請求項８】
少なくとも１つのチャネル（６、７、８）がいくつかのメモリバンク（２１、２２、２３、２４）にアクセスできるように、ネットワーク（５）が設けられていること、
を特徴とする請求項１から７のいずれか１項に記載の方法。
【請求項９】
１つのメモリバンク（２１、２２、２３、２４）への２つのアクセス操作の間には、他のメモリバンク（２１、２２、２３、２４）へのアクセス操作を持つこと、
を特徴とする請求項１から８のいずれか１項に記載の方法。
【請求項１０】
１つのメモリバンク（２１、２２、２３、２４）への２つの連続するアクセス操作は、メモリバンク（２１、２２、２３、２４）の同じロウに対して行われる場合に許可されること、
を特徴とする請求項１から９のいずれか１項に記載の方法。
【請求項１１】
メモリバンク（２１、２２、２３、２４）の状態は、対応するステートマシン（４１、４２、４３、４４）により示されること、
を特徴とする請求項１から１０のいずれか１項に記載の方法。
【請求項１２】
複数のＤＲＡＭモジュールが使用され、モジュール選択のため、チップイネーブル信号が送信されること、
を特徴とする請求項１から１１のいずれか１項に記載の方法。
【請求項１３】
少なくとも１つのメモリバンク（２１、２２、２３、２４）を有し、少なくとも１つのチャネル（６、７、８）経由でＩＣと通信する外部ＤＲＡＭ（２）を使用する該ＩＣのためのメモリコントローラにおいて、
コマンドに対して静的に割り当てられた優先度と、チャネルに対して動的に割り当てられる優先度に基づきメモリバンクコマンド伝送の優先度を割り当てるコマンドスケジューラを有することを特徴とするメモリコントローラ。
【請求項１４】
記録媒体の記録再生装置であって、
請求項１から１２のいずれか１項に記載の方法を使用する、又は、請求項１３に記載のメモリコントローラ（１）を有すること、
を特徴とする記録再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部ＤＲＡＭを使用するＩＣのためのメモリコントローラ、特に、コマンドスケジューラを有するメモリコントローラに関する。
【背景技術】
【０００２】
ドイツにおける、あらかじめ映像が記録された記録媒体の売上げ統計によると、ＤＶＤの売上げが、去年初めてビデオカセットを上回っている。近い将来、ＤＶＤビデオ記録器が、アナログビデオ記録器に取って代わることが予想される。特に、現在急速に広まっているデジタルテレビ受信（ＤＶＢ）が、デジタル記録の需要を呼び起こすことが予想される。この状況において、ＭＰＥＧ−４の様な、最新の圧縮方法を使用しても、平均して、２つのシネマフィルムのみしか書き込み可能なＤＶＤに保存できないことが認識されている。高精細テレビ（ＨＤＴＶ）の進展に伴い、大容量の新しい光記録媒体の開発が推進されている。この種の光記録媒体の例として５４ギガバイトの容量を持つブルーレイディスクがある。将来の光記録媒体用ドライブは、少なくともブルーレイディスク、ＤＶＤ及びＣＤのフォーマットの記録再生をサポートすることが好ましい。このため、前記フォーマットを扱う光ドライブを制御するＩＣが望まれている。ＤＶＢ受信機といった、画像処理分野においても高性能なＩＣが望まれている。
【０００３】
最終消費者向けデジタル機器のコスト削減のため、モノリシックＩＣによる解決法（ワンチップソリューション）が、可能な限り使用されている。これは、システムの開発期間を短縮するため、専用ハードウェアに代えて、組み込みＣＰＵ及び／又はＤＳＰが使用されていることを意味する。これらプロセッサからの命令及びデータを保存するため、そして、ビデオ又はドライブからのデータストリームをバッファリングするため、数メガバイトの大容量メモリが必要とされている。メモリコストを低く抑えるため、ＤＲＡＭ（ダイナミックＲＡＭ）が、通常、ＳＲＡＭ（スタテッィクＲＡＭ）の代わりに使用されている。好ましくは、ＳＤＲＡＭ（同期ＤＲＡＭ）や、例えば、ＤＤＲ−ＲＡＭ（ダブルデータレートＲＡＭ）、ＥＳＤＲＡＭ（拡張ＳＤＲＡＭ）、ＳＬＤＲＡＭ（同期リンクＤＲＡＭ）、ＲＤＲＡＭ（ランバスＤＲＡＭ）といった他のＤＲＡＭが使用される。以下においては、ＤＲＡＭは一般的な意味で、ＳＤＲＡＭは具体的な意味で使用する。しかしながら、本発明は、ＳＤＲＡＭに限定されない。
【０００４】
組み込みＤＲＡＭは比較的コストが高くなり、組み込みＤＲＡＭをサポートするＩＣはあまりない。このため、外部ＤＲＡＭが、通常、使用される。ＩＣ開発のコストを削減するため、特に、ＩＣの物理サイズを小さくするために、使用するピン数は制限される。この制限のため、しばしば、ＤＲＡＭへの外部データバスが、内部データバスより狭帯域になることがある。これは、ボトルネックの結果になる。加えて、ＤＲＡＭは、多種のデータを保存するために使用される。つまり、ＣＰＵ、ＤＳＰ、リアルタイムデータにより共用される。これは、ボトルネックを悪化させる。
【０００５】
典型的なＳＤＲＡＭモジュールは、４つの独立したメモリバンクを有している。各メモリバンクは、カラムで構成されるロウを含んでいる。特定のデータを指定するために、まず、適切なメモリバンクの適切なロウがアクティベート（“ａｃｔｉｖａｔｅ”）される。２から４クロックサイクル必要な、アクティベートに続き、データ転送が、読み出し又は書き込みコマンドと、所望のカラムアドレスを送信することにより開始される。オープン状態であるロウをディアクティベートし、次のアクティベートコマンドに対してメモリバンクを備えるために、データ転送後、メモリバンクは“プリチャージ”される。システムは次のクロックサイクルで送信されるアドレスを知っているため、“プリチャージ”とは、メモリアドレスがアクセスのために既に準備されていることを意味している。
【０００６】
通常、単一の読み出し又は書き込みコマンドを使用して、複数のデータの読み出し又は書き込みを行う、バースト転送が使用される。アクセスは、所定の位置（カラム）で開始され、プログラムされた位置まで続けられる。新しいバーストが開始されたとき、コマンドバスは空きとなり、他のメモリバンクのアクティベートや、プリチャージに使用される。
【０００７】
メモリバンクは、この様に、コマンドラインの共用はするが、相互に独立して制御される。よって、各クロックサイクルにて１つのコマンドのみが送信される。
【０００８】
ピン数と物理サイズを小さくするには、ＤＲＡＭモジュールへの外部データバスのスループットを最大にする必要がある。上記ＳＤＲＡＭにて説明した、ＤＲＡＭに対する問題は、ロウのアクティベートと、メモリバンクのプリチャージに複数のクロックサイクルが必要なことである。これは、データ転送間に数クロックサイクルの待ち時間が生じる結果となる。読み出し又は書き込みバースト長によって、この待ち時間は、データ転送に使用したクロックサイクルより大きなクロックサイクルになってしまう。図１（ａ）は、４クロックサイクルに渡る２つのバースト書込の例を示している。バースト書込間にデータ転送が行われない７クロックサイクルが存在している。待ち時間をなくすためには、バースト書込又は読出の進行中に、次のデータ転送の準備を行う必要がある。図１（ｂ）は、同じく、４クロックサイクルに渡る２つのバースト書込の例を示している。待ち時間は、他のデータ転送の影に隠れている。
【０００９】
ＤＲＡＭモジュールへのより広帯域なデータバスを使用することによる、或いは、外部データバスの負荷を削減するために組み込み型ＳＲＡＭを使用することによるボトルネックの除去は、よく知られた方法である。両解決法は、比較的、実装コストが高くなる。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
したがって、本発明は、低コストで実現可能であり、かつ、待ち時間を削減して高いデータスループットを実現するメモリコントローラを提供することを目的とする。
【課題を解決するための手段】
【００１１】
以下では単一ＤＲＡＭモジュールを例にして本発明の説明を行う。しかし、同一データ及びコマンドバスに接続することで、複数のメモリモジュールに対しても適用可能である。この場合、チップイネーブル信号が、所定のモジュールを選択するために使用される。
【００１２】
１つ以上のＤＲＡＭモジュールを、各種のアプリケーションに使用するため、種々のプロセッサや、リアルタイムデータストリームのための記憶領域を物理的に分離することが必要である。これは、それぞれが、１つ以上の対応するＤＲＡＭメモリバンクを持つことを意味する。この条件は、共通して使用するメモリバンクに連続するアクセス操作が生じないようにするのであれば免除することができる。
【００１３】
本発明によると、ＩＣと、少なくとも２つのメモリバンクを有し、該ＩＣと少なくとも１つのチャネルで通信する外部ＤＲＡＭとの通信方法であって、コマンドに静的に割り当てた優先度と、チャネルに動的に割り当てる優先度に基づき、メモリバンクコマンド送信の優先度を付与することを含んでいる。
【００１４】
本発明の利点は、ＤＲＡＭメモリバンクの状態が、対応するステートマシンにより示されることにある。これは、総てのメモリバンクを他のメモリバンクと独立して制御することを可能にする。各アクセス操作において、ステートマシンは、転送種別（読み出し又は書き込み）、ロウ番号及びカラム番号を受信する。時間調整の特別な規則に基づき、コマンドをコマンドスケジューラに送信することで、メモリバンクを制御する。この場合、各チャネルは、対応するメモリバンクを制御するステートマシンに接続されている。もし、チャネルが複数のメモリバンクにアクセスする場合、ネットワークが設けられる。コマンドスケジューラは、同じメモリバンクが連続して複数回指定されないことを確実にする。１つのメモリバンクへの２つのアクセスの間、他のメモリバンクへのアクセスが常にもたらされる。しかしながら、メモリバンク内の同じロウに対してであれば、１つのメモリバンクへの２つの連続するアクセス操作は許可され、アクティベーション又はプリチャージによる待ち時間は生じない。優先度の割当ては、ＤＲＡＭデータバスの最適な利用が達成されるように、新しいバーストの開始能力に基づき、待ちコマンドを並べ替える。これは、読み出し又は書き込みコマンドが、読み出し又は書き込みコマンドの前提条件であるアクティベーションコマンドに次いで、高い優先度を持つことを意味している。プリチャージコマンドは、現在の転送に対するものではないため、最も低い優先度が割り与えられる。プリチャージコマンドは、連続転送にのみ必要であり、よって、遅延さすことができる。もし、総てのバースト長が、４以上のクロックサイクルを持つならば、コマンドラインの負荷は、低い優先度のコマンドを、遅延なしに送信するのに十分小さい。待ちコマンドの順序を規定するため、コマンドを分析し、グループ化し、可能な限り早いデータ転送の開始のため、その能力に応じて並べ替える必要がある。
【００１５】
【表１】
2007514221.tif 000003
本発明は、ＤＲＡＭモジュールの帯域を、物理的な最大値付近まで高める。大きな負荷のとき、アクティベートとプリチャージによって遅延は隠れ、アクセスタイムは短くなる。本発明のメモリコントローラにより、あるチャネルでの低遅延でのアクセス操作と、他のチャネルでの高いデータスループットとを同時に達成することができる。
【００１６】
本発明の他の特徴によれば、少なくとも２つのメモリバンクを有し、少なくとも１つのチャネルでＩＣと通信する外部ＤＲＡＭを使用する、該ＩＣのためのメモリコントローラであって、コマンドに静的に割り当てた優先度と、チャネルに動的に割り当てる優先度に基づき、メモリバンクコマンド送信の優先度を付与するコマンドスケジューラを含んでいる。
【００１７】
好ましくは、光記録媒体の記録再生装置は、本発明のメモリコントローラを有し、或いは、本発明のＩＣと外部ＤＲＡＭ間の通信方法を使用する。
【発明を実施するための最良の形態】
【００１８】
本発明のより良い理解のために、以下では図１から図５を用いて、本発明の詳細な説明を行う。この場合、同一の構成要素には同一の符号を付与する。本発明は、以下に示す実施形態に限定されない。本発明の特徴は、本発明の範囲から逸脱しない限りにおいて結合又は修正され得るものである。
【００１９】
図２は、本発明のメモリコントローラのブロック図であり、図２においては、３チャネル、つまり、ＣＰＵと接続するＡＭＢＡバス８と、リアルタイムデータストリームのための入力チャネル６及び出力チャネル７と、を持つシステムのＳＤＲＡＭコントローラ１を例として使用している。ＳＤＲＡＭモジュール２の各メモリバンク２１、２２、２３、２４は、メモリバンク制御ユニット４内に、それぞれがメモリバンク２１、２２、２３、２４の状態を表し、待ち時間の監視と正確な状態遷移に責任を持つステートマシン４１、４２、４３、４４を有している。これらステートマシン４１、４２、４３、４４は、メモリバンク２１、２２、２３、２４のためのコマンドを、外部コマンドとデータバスの割当てを監視するコマンドスケジューラ３（コマンドバススケジューラ）に送信する。各クロックサイクルで、コマンドスケジューラ３は、ＤＲＡＭモジュール２の優先順位により選択されたコマンドを出力する。ステートマシン４１、４２、４３、４４は、転送順位を３つのチャネル（入力６、ＡＭＢＡ８、出力７）から直接取得し、それらは、メモリバンクスケジューリングユニット５によって、アドレスと、適切なメモリバンク２１、２２、２３、２４の優先順位とに基づき転送されたものである。メモリバンクスケジューリングユニット５は、総てのチャネル６、７、８が、総てのメモリバンク２１、２２、２３、２４にアクセスできるようにネットワークを含んでいる。記憶媒体への読出アクセスの間、入力チャネル６は、ＥＣＣ（誤り訂正符号）ユニット（図示せず）からデータを受取、出力チャネル７は、ＡＴＡＰＩブロック（図示せず）にデータを転送する。両チャネル６、７は、データフローの中断を防ぐためＦＩＦＯ（図示せず）を有している。記録媒体への書込アクセスの間、入力チャネル６は、ＡＴＡＰＩブロックからデータを受信し、出力チャネル７は、それらをＥＣＣユニットに転送する。ＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｒｃｈｉｔｅｃｔｕｒｅ）チャネル８は、付加的にレジスタファイル３４（図３）へのアクセスを許可されたＡＭＢＡスレーブを含んでいる。ＡＭＢＡスレーブは、ＡＭＢＡバスのブロックタイムを削減するために読出キャッシュと書込キャッシュ（図示せず）を含んでいる。４つのＳＤＲＡＭメモリバンク２１、２２、２３、２４のそれぞれの内部状態は、別々のステートマシンで示されているので、ステートマシン４１、４２、４３、４４へのアクセスにおいては、上流のスケジューリングアルゴリズムよって扱われない３つのチャネル６、７、８による競合が生じるかもしれない。しかしながら、この競合状態をめったに生じなくさせることは可能である。このため、セクタデータのリアルタイムデータストリームは、ＤＲＡＭアクセス操作に対して優先される。
【００２０】
図３は、コマンドスケジューラ３のより詳細なブロック図である。４つのメモリバンク２１、２２、２３、２４を管理するステートマシン４１、４２、４３、４４からのコマンドは、コマンド分析器３１で分析される。この場合、５つの可能なコマンド、“アクティベート”、“読み出し”、“書き込み”、“プリチャージ”、“バースト終了”の少なくとも１つが存在するか否かが調べられる。存在する場合、最初に出現したものがスケジューラ３２に送信される。このように、待ち状態のコマンドが存在するか否かのみが関係し、メモリバンク２１、２２、２３、２４や、現在関係しているチャネル６、７、８は重要ではない。
【００２１】
スケジューラ３２は、スケジューラ３２の特定の動作パラメータを有しているレジスタファイル３４にアクセスする。スケジューラ３２は、まず、グローバルコマンドの存在を検査する。ＤＲＡＭの動作パラメータを含むモードレジスタをプログラムするコマンドが、グローバルリフレッシュ又はグローバルプリチャージのために存在するなら、それは直接実行される。メモリバンク制御ユニット４は、グローバルコマンドが、メモリバンク２１、２２、２３、２４がアイドル状態時のみに生じるようにしているため、更なる検査をここでは必要としない。
【００２２】
もし、送信されたグローバルコマンドがＮＯＰ（Ｎｏ  Ｏｐｅｒａｔｉｏｎ）であるなら、メモリバンクコマンドをＤＲＡＭモジュール２に送信することができる。メモリバンクコマンドは、静的に割り当てられたコマンドの優先度と、優先度割当ユニット３３により動的に割り当てられるチャネル６、７、８の優先度に基づき送信される。この場合、コマンドの優先度が、チャネル６、７、８の優先度より高い。これは、まずコマンド種別が選択され、このコマンドの送信を望む複数のチャネル６、７、８が存在する場合、コマンド送信を許可されるチャネル６、７、８が選択されることを意味する。
【００２３】
コマンドのうち、バーストを終了するためのバースト終了コマンドは、最も高い優先度を持っている。新しいバーストを開始し、それらをできるだけ速く送信することがデータバスの適切な使用レベルの前提となる読み出し及び書き込みコマンドは、２番目に高い優先度を持っている。次に低い優先度は、ロウのオープンに使用されるアクティベートコマンドに付与されている。ロウのオープンは、バースト開始の前提であるので、アクティベートコマンドの優先度は、プリチャージコマンドより高く、プリチャージコマンドは、バースト終了後、待機中であるアクセスが無い場合に実行され、全体のパフォーマンスに影響を与えないため最も低い優先度となっている。
【００２４】
チャネル６、７、８への動的な優先度の割当ては、図４に示す有限ステートマシン、つまり、状態遷移図でのアルゴリズムに影響される。図示しているアルゴリズムは、ＡＭＢＡ−ＡＨＢ（Ａｄｖａｎｃｅｄ  Ｈｉｇｈ−ｐｅｒｆｏｒｍａｎｃｅ  ＢＵＳ）経由でのＣＰＵのアクセス操作及び２つのチャネル（入力及び出力）でのリアルタイムデータストリームを制御する。状態は、優先順位を表示している。この場合、一番上にあるチャネルが最も高い優先度であり、一番下にあるチャネルが最も低い優先度である。状態遷移は、最終的にバースト読み出し又は書き込みを開始できるチャネルを表している。フラッシュコントローラのための付加的なチャネル、例えば、ファームウェアを送信するためのチャネル等は、他のチャネルとは競合しないので含めていない。
【００２５】
図示するように、３つのチャネル総てがアクティブのとき、入力→ＡＭＢＡ→出力→ＡＭＢＡの列が常に観察される。もし、最も高い優先度のチャネルが、現在アクティブで無い、或いは、そのコマンドの優先度が低すぎることにより、コマンドを送信できないなら、コマンドを最終的に送信したチャネルは、次のクロックサイクルにおいて最も低い優先度を与えられる。同時に、もしＡＭＢＡチャネル８が現在のクロックサイクルにおいて最も高い優先度ではなく、別のチャネルが送信した場合、次のクロックサイクルにおいて最も高い優先度が割り当てられる。一旦、ＡＭＢＡチャネル８が最も高い優先度を獲得した場合、ＡＭＢＡチャネル８がコマンド送信するまで最も高い優先度を維持する。これは、ＡＲＭのための最低遅延を可能にする。図示している状態図において、ＡＭＢＡチャネル８には、入力チャネル６や出力チャネル７経由のバースト後、常に最も高い優先度が割り当てられるので、ＣＰＵアクセス操作の短い遅延時間を保証している。更に、状態遷移は、データバスの公平な使用と、メモリバンク２１、２２、２３、２４への交互のアクセス操作を行う。アルゴリズムは、高優先度でのＣＰＵアクセス操作のために設計され、リアルタイムデータストリームのデータスループットの低遅延が同時に保障される。データスループットは、ＤＲＡＭ２との入力チャネル６及び出力チャネル７経由でのデータ転送において、読み出し及び書き込みバースト長によって規定される。
【００２６】
コマンド送信を許可するチャネルの決定について、図５のフロー図を用いて以下に説明する。もし、メモリバンクのＦＳＭ（有限ステートマシン）がバーストを終了するとき、これは最も高い優先度を持つ。その結果、バースト終了（ＢＳＴ）が、開始（９）の後、分析（１０）の間に見つけられたなら、進行中のバーストは中止される。これは２つの方法、第１の方法はバースト終了コマンドの単なる転送（１２）により、第２の方法は新しいバースト（１４）の開始により行われる。バースト終了の送信前に、検査（１１）が、送信待ちの読み出し又は書き込みコマンドが存在するか否かを判定するために実行される。もし存在するなら、このコマンドが、バースト終了に代えて送信（１４）される。分析の間、少なくとも１つの読み出し又は書き込みコマンドが存在するかが単に検査される。このため、読み出し又は書き込みコマンド送信（１４）前に、動的にチャネルに割り当てられた優先度が、読み出し又は書き込みコマンドを持つ最も優先度の高いチャネルがどれであるかを検査するために使用される。このチャネルがコマンドの送信を許可される。チャネルの選択は、優先度割当に伝わり、このように、次のクロックサイクルでの新しい優先度状態に変化する。読み出し又は書き込みコマンドによるバースト終了コマンドの置換に対する唯一の制限は、バースト読み出しがバースト書き込みにより終了できないことであり、これは、メモリコントローラ１及びＤＲＡＭモジュール２が同時にデータバスを駆動できないことによる。しかしながら、ＤＲＡＭ出力のホールド時間は一定で、クロック周波数に依存しないので、より低いクロック周波数が使用されるとき、この制限を省略することができる。
【００２７】
もし、バースト終了コマンドが存在しない場合、読み出し又は書き込みコマンドの存在が検査（１３）され、もしそれらが存在する場合、コマンドが割り当てられた優先度に基づき送信（１４）される。もし、読み出し及び書き込みコマンドのどちらもが存在しない場合、アクティベートコマンドが検査（１５）される。アクティベートコマンドが待ち状態である場合、それは送信（１６）される。もし、アクティベートコマンドが存在しない場合、プリチャージコマンドが検査（１７）される。存在する総てのプリチャージコマンドは送信（１８）される。総てのチャネル６、７、８及び総てのメモリバンク２１、２２、２３、２４がコマンド送信を望んでいない場合、ＮＯＰ（Ｎｏ  Ｏｐｅｒａｔｉｏｎ）が送信される。コマンドがＤＲＡＭモジュール２へ送信された場合、このコマンドを出力したメモリバンクのＦＳＭは、信号により通知を受け、次のクロックサイクルにて新しい状態へと変化する。
【００２８】
ＤＲＡＭモジュール２のセットアップ及びホールド時間を守るために、ＤＲＡＭモジュール２はコマンド送信時、好ましくは、反転したシステムクロックで動作する。書き込みアクセス操作のためのコマンド及びデータは、半クロックサイクルと、入出力ドライバでの信号伝達時間と、回路ボード上の伝達時間を加算した遅延を持ち、ＤＲＡＭモジュール２により受け取られる。
【図面の簡単な説明】
【００２９】
【図１】４クロックサイクルに渡る２つのバースト書込の２つの例を示す図である。
【図２】本発明によるメモリコントローラのブロック図である。
【図３】コマンドスケジューラのブロック図である。
【図４】優先度割当の状態遷移図である。
【図５】コマンドスケジューラのフロー図である。
【符号の説明】
【００３０】
１  ＳＤＲＡＭコントローラ
２  ＳＤＲＡＭモジュール
３  コマンドスケジューラ
４  メモリバンク制御ユニット
５  メモリバンクスケジューリングユニット
６  入力チャネル
７  出力チャネル
８  ＡＭＢＡバス
２１、２２、２３、２４  メモリバンク
３１  コマンド分析器
３２  スケジューラ
３３  優先度割当ユニット
３４  レジスタファイル
４１、４２、４３、４４  ステートマシン
【図１】
2007514221.tif 000004
【図２】
2007514221.tif 000005
【図３】
2007514221.tif 000006
【図４】
2007514221.tif 000007
【図５】
2007514221.tif 000008
【手続補正書】
【提出日】平成18年8月9日(2006.8.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
少なくとも１つのメモリバンク（２１、２２、２３、２４）を有し、２つ以上のチャネル（６、７、８）経由でＩＣと通信する外部ＤＲＡＭ（２）と、該ＩＣとの通信方法において、
メモリバンクコマンド伝送の優先度は、コマンドに対して静的に割り当てられた優先度と、チャネルに対して動的に割り当てられる優先度に基づき割り当てられること、
を特徴とする方法。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１３
【補正方法】変更
【補正の内容】
【請求項１３】
少なくとも１つのメモリバンク（２１、２２、２３、２４）を有し、２つ以上のチャネル（６、７、８）経由でＩＣと通信する外部ＤＲＡＭ（２）を使用する該ＩＣのためのメモリコントローラにおいて、
コマンドに対して静的に割り当てられた優先度と、チャネルに対して動的に割り当てられる優先度に基づきメモリバンクコマンド伝送の優先度を割り当てるコマンドスケジューラを有することを特徴とするメモリコントローラ。
【国際調査報告】
2007514221.tif 000009
2007514221.tif 000010