JP2002342159A - メモリコントローラ - Google Patents

メモリコントローラ

Info

Publication number
JP2002342159A
JP2002342159A JP2001151223A JP2001151223A JP2002342159A JP 2002342159 A JP2002342159 A JP 2002342159A JP 2001151223 A JP2001151223 A JP 2001151223A JP 2001151223 A JP2001151223 A JP 2001151223A JP 2002342159 A JP2002342159 A JP 2002342159A
Authority
JP
Japan
Prior art keywords
access
bank
page
memory
accessed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001151223A
Other languages
English (en)
Other versions
JP3918145B2 (ja
Inventor
Yuichiro Morita
雄一朗 守田
Manabu Jo
学 城
Yasuhiro Nakatsuka
康弘 中塚
Tetsuya Shimomura
哲也 下村
Yutaka Okada
豊 岡田
Kazushige Yamagishi
一繁 山岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2001151223A priority Critical patent/JP3918145B2/ja
Priority to US09/962,257 priority patent/US6745279B2/en
Publication of JP2002342159A publication Critical patent/JP2002342159A/ja
Priority to US10/824,504 priority patent/US20040193779A1/en
Application granted granted Critical
Publication of JP3918145B2 publication Critical patent/JP3918145B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement

Abstract

(57)【要約】 【課題】 ダイナミックランダムアクセスメモリに対す
るアクセスを効率良く行うこと。 【解決手段】 デバイスからメモリコントローラ1に対
してアクセス要求が出力されたときに、メモリコントロ
ーラ1は、アクセス要求を基にメモリサイクルa0でバ
ンクb0のうちロウアドレスra0で指定されたページ
をアクティブ化し、その後、バンクb0のページに対す
るリードアクセスが行われる前に、次のアクセス対象と
なるバンク1に対して先行プリチャージを実行し、バン
クb0のリードアクセスの後、描画処理により、バンク
0からバンクb1にアクセスするためにページミスヒッ
トが発生したときに、プリチャージを実行することなく
直ちにバンクb1に対するアクティブ化を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、メモリコントロー
ラに係り、特に、画像データなどを記憶するダイナミッ
ク・ランダムアクセスメモリ(DRAM)をアクセスす
るに好適なメモリコントローラに関する。
【0002】
【従来の技術】近年、パーソナルコンピュータなどの急
激な普及に伴い、パーソナルコンピュータの主記憶メモ
リとして使用されているDRAM(Dynamic R
andom Access Memory)の供給量が
増大するとともに価格が下がり、これによりパーソナル
コンピュータ以外の電子機器にもDRAMが採用されて
いる。このDRAMには、インタフェースのクロックに
同期して連続した書き込みや読み出し(以下、バースト
転送)を高速化したシンクロナスDRAM(以下、SD
RAM)や、SDRAMのバースト転送をクロック信号
の立上りと立ち下がりの両エッジに同期して実行するこ
とにより、バースト転送を2倍に高速化したダブルデー
タレートSDRAM(以下、DDR−SDRAM)やラ
ムバスDRAM(以下、RDRAM)などがある。これ
らDRAMのうち特に、SDRAMは安価で大容量のメ
モリを構成できるため、利用する機器は増加している。
またディスプレイに表示する画像データを一時的に保持
するフレームメモリとして、これまで使用されてきた高
価な専用メモリ(VRAM)の代わりに、SDRAMを
使用するようになってきている。なお、SDRAMの規
格は、JEDEC規格21−Cで定められている。
【0003】CDRAMの画像データをアクセスするデ
バイスとしては、例えば、画像データを読み出してディ
スプレイに転送する表示処理装置や、任意の図形を描画
するために、それらの図形データを生成して画像データ
として書き込む描画処理装置がある。またSDRAMに
データを記憶するに際しては、ビデオ入力装置によって
生成された画像データを書き込むこともできる。さら
に、SDRAMを構成するに際しては、画像データを記
憶するフレームメモリとメインメモリとを統合して一つ
のメモリにしたユニファイドメモリをSDRAMで実現
することもできる。SDRAMをユニファイドメモリと
して構成した場合、ユニファイドメモリに対しては、画
像データのアクセスの他に、プロセッサによる命令コー
ドや各種データのアクセスが実行されるため、メモリア
クセスを効率良く行う必要がある。
【0004】画像データをフレームメモリに記憶するに
際して、フレームメモリには、画像データをデータ記憶
エリアに保持するために、水平方向および垂直方向に有
限な二次元のアドレス空間が割り当てられている。画像
データは、ディスプレイ装置の表示画面(表示画素)に
対応して、水平方向および垂直方向に配列された状態で
保持される。表示画面に対応する各画素の画像データは
それぞれ数ビットないし数十ビットで構成されており、
1画素の画像データのビット長はデータの形式によって
決定される。
【0005】またフレームメモリとしてのSDRAMに
画像データを記憶するに際しては、データ記憶エリアを
複数のバンク、例えば、4バンクに分割するとともに、
各バンクを複数のページに分割し、各ページにロウアド
レスが割り当てられている。このように構成されたフレ
ームメモリに対してアドレスを設定するに際しては、リ
ニアアドレスマッピングとタイルアドレスマッピングが
採用されている。
【0006】リニアアドレスマッピングは、水平方向の
画素データの並びをラインとしたときに、水平方向に配
列された画素データ(表示画面の画素のうち水平方向に
並んだ画素に対応した画像データ)に対して、水平方向
に連続したアドレスを割り当てて、1ライン内の表示画
素に対して全て同一のロウアドレス、すなわち同一ペー
ジのロウアドレスを割り当てる方式である。この場合、
各ラインの画素データは、それぞれ同一バンクであるが
別のロウアドレスが割り当てられるか、もしくは別のバ
ンクのロウアドレスが割り当てられる。すなわち各ライ
ンの画素データにライン毎に異なるページが割り当てら
れている。
【0007】一方、タイルアドレスマッピングは、例え
ば、水平方向に32バイト、垂直方向に16ラインの方
形(以下、タイル)内の画素データに対して連続したア
ドレスを割り当てるとともに、1タイル内の画素データ
に対しては全て同一のロウアドレス、すなわち同一ペー
ジを割り当てる方式である。この場合、各タイルの画素
データ(画像データ)はそれぞれ同一バンクであるが別
のロウアドレスが割り当てられるかもしくは別のバンク
のロウアドレスが割り当てられる。すなわち各タイルの
画素データにはタイル毎に異なるページが割り当てられ
ている。
【0008】ところで、SDRAMは、データを保持す
るためにリフレッシュ動作が必要であり、SDRAMを
アクセスするに際しては、アクセス対象のページをロウ
アドレスで指定し、指定されたページに属する全てのデ
ータをセンスアンプに転送して増幅するアクティブ化を
行い、その後アクティブ化されたデータのうちカラムア
ドレスで指定されたデータに対してのみリードまたはラ
イトによるアクセスを実行するようになっている。この
場合、同一ページのデータに対しては連続したアクセス
を行うことができる。しかし、ページが異なるときに
は、センスアンプにある全てのデータを元のページに戻
すプリチャージを行い、その後アクセス対象のページに
属する全てのデータをセンスアンプに転送して増幅する
アクティブ化を実行することが必要である。
【0009】すなわち、同じページに属するデータをア
クセスするときには連続したアクセスが可能であるある
ため、アクセス効率を高めることができる。しかし、異
なるページにアクセスするときにはページミスヒットと
なり、アクセス対象のページに対してプリチャージを行
った後、アクティブ化を行い、その後アクセス対象のペ
ージにアクセスする処理が必要であり、メモリアクセス
の効率が低下することになる。このため、SDRAMを
アクセスするに際しては、ページミスヒットの発生を少
なくすることが望ましく、SDRAMにアドレスマッピ
ングを設定するに際しては、装置の機能に合わせる必要
がある。
【0010】すなわち、表示処理装置に用いるSDRA
Mに対してリニアアドレスマッピングを適用した場合、
表示処理装置は、ライン方向に左側から右側または右側
から左側のいずれか一方向に連続してアクセスするた
め、1ラインをアクセスする間はページミスヒットが生
じることはなく、ページミスヒットの発生を抑制するこ
とができる。しかし、表示処理装置に用いるSDRAM
に対してタイルアドレスマッピングを適用した場合、ペ
ージミスヒットの発生が多くなる。これは、表示処理装
置においては、アクセスを開始するアドレスが任意であ
って、表示する画像のスクロールや複数の表示画像面
(以下、プレーンと称する。)の境界が任意の位置に設
定されることに起因している。このため、タイルアドレ
スマッピングを用いたSDRAMに対して表示処理装置
からアクセスを行うと、ライン方向に連続した画素デー
タをアクセスするときにはタイル境界(タイルとタイル
との境界)を跨いてアクセスすることになるので、タイ
ル境界を跨ぐ毎にページミスヒットが発生し、メモリア
クセスの効率が低下する。
【0011】これに対して、リニアアドレスマッピング
を用いたSDRAMに対して描画処理装置からアクセス
した場合、水平方向の描画であれば連続アクセスが可能
であってページミスヒットの発生を少なくすることはで
きるが、水平方向や斜め方向の描画であれば、各サイク
ルごとに異なるページにアクセスすることになるので、
描画サイクルごとにページミスヒットが発生し、メモリ
アクセスの効率が低下する。
【0012】すなわち、描画処理装置は、与えられた描
画命令コードにしたがって任意の図形を生成し、生成し
た図形に関する画像データをSDRAMの二次元のアド
レス空間に書き込むようになっており、しかも描画する
図形は任意の角度の直線や曲線で構成されているため、
アクセス対象のアドレスは水平方向に連続であったり、
垂直方向に連続であったり、あるいは斜め方向に連続あ
ったりする。このため、描画処理装置に用いるSDRA
Mにタイルアドレスマッピングを設定すれば、水平方
向、垂直方向、斜め方向のいずれの方向にアクセスする
ときでも、タイル境界を超えるときにのみページミスヒ
ットが発生するので、リニアアドレスマッピングを用い
たときよりもページミスヒットの発生を少なくすること
ができる。従って、描画処理のためには、タイルアドレ
スマッピングが好ましく、フレームメモリをSDRAM
で実現する多くの機器にはタイルアドレスマッピング方
式が採用されている。
【0013】また、表示処理装置による画像データの読
み出しは一種のリアルタイム性が要求されている。すな
わち、画像データの読み出しがある一定の期間内に完了
しなければディスプレイ装置に表示される画像にちらつ
きが生じる。このような画像のちらつきを防止するため
には、SDRAMのページミスヒットの発生を抑制する
ことにより、画像データのアクセス効率の向上を図る他
に、SDRAMへのアクセスの調停が重要になる。特
に、ユニファイドメモリ構成では描画処理装置によるア
クセスとプロセッサなど他のデバイスからのアクセスと
の競合が頻発するため、アクセス競合による画像データ
のアクセス遅延をいかに抑えるかが重要となる。
【0014】そこで、フレームメモリとしてのSDRA
Mを効率良くアクセスするに際して、特開平8−255
107号公報に記載されているように、アクセス対象の
アドレスと前回アクセスしたアドレスとを比較してペー
ジヒットの判定を行い、ページミスヒットが発生したと
きにはバンクのプリチャージと新しいページのアクティ
ブ化を実行した後に、ライトもしくはリードを実行し、
ページヒットしたときにはバンクのプリチャージやアク
ティブ化を行うことなく直ちにライトもしくはリードを
実行し、さらに、SDRAMの連続的なアクセスを実行
できるように、所定単位で順次増分するアドレスカウン
タを備え、且つ、同一ページを連続的にアクセスしてい
る途中で異なるページをアクセスする場合には、異なる
ページにアクセスする直前にアクセスを中断し、表示処
理装置による画像データの読み出しを効率良く行うよう
にしたものが提案されている。
【0015】
【発明が解決しようとする課題】しかし、従来技術にお
いては、SDRAMのページヒットを判定するに際し
て、アクセス対象のアドレスと前回アクセスしたアドレ
スとを単に比較しているので、アクセス効率を高めるに
も、SDRAMの特徴である複数バンクによるインタリ
ーブアクセス(2または4つのバンクのうち各バンクの
ページを個別にアクティブ化することを利用し、アクセ
スを複数のバンクに分散し、アクセス効率を高めるアク
セス方法)を活用することができない。
【0016】また、表示処理装置による画像データの読
み出しにおいて、同一ページのデータに対して連続的な
アクセスを行っている途中で異なるページにアクセスす
るときにはアクセスを中断してページミスヒットの発生
を防止しているが、その後、後続のアクセスを実行する
ときには結局ページミスヒットが発生することになり、
バンクに対するプリチャージとアクティブ化は避けられ
ない。
【0017】さらに、従来技術においては、複数のアク
セスが競合するときに、表示処理装置によるアクセスの
リアルタイム性を考慮して調停することは考慮されてい
ない。
【0018】本発明の課題は、ダイナミックランダムア
クセスメモリに対するアクセスを効率良く行うことがで
きるメモリコントローラを提供することにある。
【0019】
【課題を解決するための手段】前記課題を解決するため
に、本発明は、データ記憶エリアが複数のバンクに分割
されているとともに各バンクが複数のページに分割され
ているダイナミックランダムアクセスメモリに対するア
クセス要求を受けたときに、前記アクセス要求を基にア
クセス対象のページをアクティブ化し、前記アクティブ
化されたページに対してアクセスを実行するに先だっ
て、その後アクセス対象となるページに対して先行プリ
チャージを実行するメモリ制御手段を備えてなるメモリ
コントローラを構成したものである。
【0020】前記メモリコントローラを構成するに際し
ては、メモリ制御手段として、ダイナミックランダムア
クセスメモリに対するアクセス要求を受けたときに、前
記アクセス要求をもとにアクセス対象のページをアクテ
ィブ化し、前記アクティブ化されたページに対してアク
セスを実行するに先立って、その後または次にアクセス
対象となるバンクまたはページに対して先行プリチャー
ジを実行する機能を備えたもので構成することもでき
る。
【0021】さらに、前記各メモリコントローラを構成
するに際しては、ダイナミックランダムアクセスメモリ
としては、データ記憶エリアが複数のバンクに分割され
ているとともに各バンクが複数のページに分割され、各
ページが相隣接するページとは異なるバンクに割付けら
れているものを対象とすることもできる。
【0022】また、メモリコントローラをダイナミック
ランダムアクセスメモリと少なくとも一つ以上の処理装
置に接続したり、あるいはメモリコントローラをダイナ
ミックアクセスメモリと複数の処理装置にそれぞれ接続
構成を採用することもできる。この場合、メモリコント
ローラとしては、以下の機能を有するもので構成するこ
とができる。
【0023】(1)ダイナミックランダムアクセスメモ
リに対するアクセス要求を受けたときに、前記アクセス
要求をもとにアクセス対象のバンクのページをアクティ
ブ化し、前記アクティブ化されたページに対してアクセ
スを実行するに先立って、その後アクセス対象となるバ
ンクのページに対して先行プリチャージを実行するメモ
リ制御手段を備えてなる。
【0024】(2)ダイナミックランダムアクセスメモ
リに対するアクセス要求を受けたときに、前記アクセス
要求を基にアクセス対象のバンクのページをアクティブ
化し、前記アクティブ化されたページに対してアクセス
を実行するに先だって、次にアクセス対象となるバンク
のページに対して先行プリチャージを実行するメモリ制
御手段を備えてなる。
【0025】(3)ダイナミックランダムアクセスメモ
リに対するアクセス要求を受けたときに、前記アクセス
要求を基にアクセス対象のバンクのページをアクティブ
化し、この直後に次にアクセス対象となるバンクのペー
ジに対して先行プリチャージを実行し、その後前記アク
ティブ化されたページに対してリードまたはライトによ
るアクセスを実行するメモリ制御手段を備えてなる。
【0026】(4)ダイナミックランダムアクセスメモ
リに対するアクセス要求を受けたときに、前記アクセス
要求を基にアクセス対象のバンクのページをアクティブ
化し、この直後に次にアクセス対象となるバンクのペー
ジに対して先行プリチャージを実行し、その後前記アク
ティブ化されたページに対してリードまたはライトによ
るアクセスを実行するメモリ制御手段を備えてなる。
【0027】(5)ダイナミックランダムアクセスメモ
リに対するアクセス要求を受けたときに、前記アクセス
要求を基にアクセス対象のバンクのページをアクティブ
化し、この直後に次にアクセス対象となるバンクのペー
ジに対して先行プリチャージを実行し、その後前記アク
ティブ化されたページに対してリードまたはライトによ
るアクセスを実行するメモリ制御手段を備えてなる。
【0028】前記メモリコントローラのうち複数の処理
装置に接続されたメモリコントローラを構成するに際し
ては、以下の要素を付加することができる。
【0029】(1)前記複数の処理装置から出力される
アクセス要求のうちいずれか一つのアクセス要求を選択
して前記メモリ制御手段に出力するアクセス調停手段を
備え、前記アクセス調停手段は、前記選択したアクセス
要求によるアクセスが前記メモリ制御手段により実行さ
れているときに、前記選択したアクセス要求よりも優先
度の高いアクセス要求が新たに入力されたときには前記
選択したアクセス要求によるアクセスの中断を前記メモ
リ制御手段に指令するとともに、前記新たに入力された
アクセス要求によるアクセスを前記メモリ制御手段に指
令してなる。
【0030】また、本発明は、データ記憶エリアが複数
のバンクに分割されているとともに各バンクが複数のペ
ージに分割され、各ページが相隣接するページとは異な
るバンクに割り付けられているダイナミックランダムア
クセスメモリと複数の処理装置にそれぞれ接続されて、
前記ダイナミックランダムアクセスメモリおよび前記複
数の処理装置とデータの授受を行うメモリコントローラ
において、前記複数の処理装置から出力されるアクセス
要求のうちいずれか一つのアクセス要求を優先度に応じ
て選択して出力するアクセス調停手段と、前記アクセス
調停手段の選択よるアクセス要求を受け前記アクセス要
求を基にアクセス対象のバンクのページに対してアクセ
スを行うメモリ制御手段とを備え、前記アクセス調停手
段は、前記選択したアクセス要求によるアクセスが前記
メモリ制御手段により実行されているときに、前記選択
したアクセス要求よりも優先度の高いアクセス要求が新
たに入力されたときには前記選択したアクセス要求によ
るアクセスの中断を前記メモリ制御手段に指令するとと
もに、前記新たに入力されたアクセス要求によるアクセ
スを前記メモリ制御手段に指令してなることを特徴とす
るメモリコントローラを構成したものである。
【0031】また、本発明は、データ記憶エリアが複数
のバンクに分割されているとともに各バンクが複数のペ
ージに分割され、各ページが相隣接するページとは異な
るバンクに割り付けられているダイナミックランダムア
クセスメモリと複数の処理装置にそれぞれ接続されて、
前記ダイナミックランダムアクセスメモリおよび前記複
数の処理装置とデータの授受を行うメモリコントローラ
において、前記複数の処理装置から出力されるアクセス
要求のうちいずれか一つのアクセス要求を優先度に応じ
て選択して出力するアクセス調停手段と、前記アクセス
調停手段の選択よるアクセス要求を受け前記アクセス要
求を基にアクセス対象のバンクのページに対してアクセ
スを行うメモリ制御手段と、アクセス対象のバンクがア
クティブ化されているか否かを判定するバンクアクティ
ブ化判定手段と、アクセス対象のページがアクティブ状
態にあるか否かを判定するページヒット判定手段と、前
記アクセス対象のバンクがアクティブ化されてから前記
アクセス対象のバンクに対するプリチャージの実行が可
能な最小サイクルが経過したか否かを判定するアクティ
ブ−プリチャージ間最小サイクル判定手段と、前記アク
セス対象のバンクがプリチャージされてから前記アクセ
ス対象のバンクに対するアクティブ化の実行が可能な最
小サイクルが経過したか否かを判定するプリチャージ−
アクティブ間最小サイクル判定手段とを備え、前記メモ
リ制御手段は、前記バンクアクティブ化判定手段により
アクセス対象のバンクがアクティブ化されていないと判
定されたときには、前記プリチャージ−アクティブ間最
小サイクル判定手段から肯定の判定結果が出力されたこ
とを条件にアクセス対象のページをアクティブ化すると
ともに、アクティブ化した後ライトまたはリードによる
アクセスを実行し、前記バンクアクティブ化判定手段に
よりアクセス対象のバンクがアクティブ化されていると
判定されたときに、前記ページヒット判定手段により肯
定の判定結果が得られたときには、直ちにライトまたは
リードによるアクセスを実行し、前記バンクアクティブ
化判定手段によりアクセス対象のバンクがアクティブ化
されていると判定されたときに、前記ページヒット判定
手段により否定の判定結果が得られたときには、前記ア
クティブ−プリチャージ間最小サイクル判定手段から肯
定の判定結果が出力されたことを条件に、アクセス対象
のバンクをプリチャージし、次にアクセス対象のページ
に対してアクティブ化を実行した後にライトまたはリー
ドによるアクセスを実行してなることを特徴とするメモ
リコントローラを構成したものである。
【0032】前記した手段によれば、アクセス対象のペ
ージをアクティブ化した後、アクティブ化されたページ
に対してアクセスを実行するに先立って、その後あるい
は次にアクセス対象となるバンクまたはページに対して
先行プリチャージを行っているため、その後あるいは次
にアクセス対象となるバンクまたはページに対してアク
セスを行うときにプリチャージを行うことなく、アクテ
ィブ化を行った後、リードまたはライトのアクセスを行
うことができ、ページミスヒットによって異なるページ
にアクセスするときでも、プリチャージをした後、アク
ティブ化するまでの時間が不要となり、むだ時間を短縮
することができ、効率良くアクセスすることができる。
このため、単位時間当たりのアクセス可能なデータ量を
増加することができ、バンド幅の向上に寄与することが
できる。
【0033】また、ある処理装置からのアクセス要求を
選択してアクセスを実行しているといに、優先度の高い
アクセス要求、例えば、リアルタイム性の高いアクセス
要求が新たに入力され、複数の処理装置(デバイス)か
らのアクセス要求が競合したときには、選択したアクセ
ス要求によるアクセスを中断し、新たに入力されたアク
セス要求によるアクセスを実行するようにしているた
め、複数のアクセス要求が競合したときでも、優先度の
高いアクセス要求(リアル性の高いアクセス要求)を優
先して実行することができ、アクセス競合による画像デ
ータのアクセス遅延を抑制することができる。
【0034】また、先行プリチャージを行わないときに
は、ダイナミックランダムアクセスメモリの状態を管理
し、メモリの状態に応じアクセスを実行するようにして
いるため、メモリの状態に合わせてメモリに対して確実
にアクセスを実行することができる。さらに、先行プリ
チャージを実行しないときには、アクティブフラグとロ
ウアドレスバッファRASカウンタおよびRPカウンタ
の情報を参照し、ページミスヒットが発生した場合に
は、アクティブ/プリチャージ間最小サイクルおよびプ
リチャージ−アクティブ間最小サイクルを満たす範囲で
最短のタイミングでプリチャージとアクティブ化を実行
することができる。
【0035】
【発明の実施の形態】以下、本発明の一実施形態を図面
に基づいて説明する。図1は本発明に係るメモリコント
ローラを画像処理システムに適用したときのシステム構
成図である。図1において、画像処理システムは、例え
ば、パーソナルコンピュータに内蔵されるグラフィック
スカードや自動車に搭載されるカーナビゲーションシス
テムに該当し、メモリコントローラ1とともに、複数の
処理装置と単一のメモリを備えて構成されている。
【0036】複数の処理装置は、例えば、シーケンス処
理やデータ処理を実行するプロセッサ(以下、CPUと
称する。)2、二次元や三次元の図形描画処理を実行す
る描画処理装置(以下、RUと称する。)3、ディスプ
レイ装置81に表示画像データを転送する表示処理装置
(以下、DUと称する。)4、ビデオカメラ装置82か
らビデオ画像データを取り込むビデオ処理装置(以下、
BUと称する。)5、外部記憶装置83や通信装置84
などの周辺装置とのデータ転送を制御する入出力制御装
置(以下、IOUと称する。)6から構成されており、
各処理装置共通のメモリ7はSDRAMで構成されてい
る。なお、メモリ7としては、SDRAMよりも高速ア
クセスが可能なダブルデータレート(DDR)DRAM
を用いることも可能である。
【0037】メモリ(ダイナミックランダムアクセスメ
モリ)7は、例えば、データ記憶エリアが複数のバンク
に分割されているとともに、各バンクが複数のページに
分割され、各ページが相隣接するページとは異なるバン
クに割付けられている。そしてメモリ7の各ページに
は、CPU2で処理される命令コードやデータ、RU3
で処理される描画命令コードや描画データ、DU4から
読み出される表示画像データ、VU5から書き込まれる
ビデオ画像データなどが記憶される。また命令コードや
データはIOU6によって周辺装置から書き込まれたり
読み出されたりするようになっている。
【0038】システムの構成としては、メモリコントロ
ーラ1と、RU3、DU4、VU5、IOU6をそれぞ
れ統合して1つのLSIで実現することもできる。また
これらにCPU2を加えて1つのLSIで実現すること
もできる。さらにメモリ7を加えて1つのLSIで実現
することもできる。なお、メモリアクセス元となるCP
U2、RU3、DU4、VU5、IOU6などの処理装
置を以下説明のためにデバイスと称することにする。
【0039】メモリコントローラ1は、各デバイスから
アクセス要求を受けたときに、いずれか1つのアクセス
要求を選択するための調停を行い、アクセス要求を基に
コマンドを生成し、このコマンドにしたがってメモリ7
に対して読み出しや書き込みの処理(アクセス)を実行
するようになっている。具体的には、メモリコントロー
ラ1は、アクセス調停部10、メモリ制御部11、バン
ク管理およびアドレス生成部12、マルチプレクス(以
下、MUXと称する。)14、データ制御部15を備え
て構成されている。
【0040】アクセス調停部10は、各デバイスからの
アクセス要求を受け、複数のデバイスからのアクセス要
求が競合したときには、予め定められたれた優先度に基
づいてメモリアクセスの順番を決定するように構成され
ている。メモリ制御部11は、アクセス調停部10によ
って決定されたデバイスからのアクセス要求を基にコマ
ンドを生成し、このコマンドに基づいた制御信号にした
がってメモリ7の読み出しおよび書き込みを制御するよ
うになっている。この場合、メモリ7は、SDRAMを
前提としているので、この制御はSDRAMの読み出し
および書き込みシーケンスにしたがって行われる。バン
ク管理およびアドレス生成部12は、メモリ制御部11
からコマンドを受け、このコマンドにしたがってメモリ
7の状態を管理するとともに、アクセス調停部10によ
って選択されたデバイスからのアクセス要求を基にアク
セス対象となるバンクおよびページを選択するために、
バンクアドレス、ロウアドレス、カラムアドレスを生成
するとともに、メモリ7に対するアクセスを最適化する
のに必要となる情報を保持し、この保持した情報をメモ
リ制御部11に出力するようになっている。MUX14
はアクセス調停部10が選択したデバイスのアドレスや
データを選択し、選択したデータをバンク管理およびア
ドレス生成部12などに出力するようになっている。デ
ータ制御部15はメモリ7に書き込むためのデータやメ
モリ7から読み出されたデータを一時的に保持するよう
に構成されている。
【0041】メモリ7のアドレス空間には、描画デー
タ、表示画像データおよびビデオ画像データを保持する
ために、それぞれ水平方向および垂直方向に有限な二次
元のアドレス空間が割り当てられている。描画データ、
表示画像データおよびビデオ画像データはそれぞれ数ビ
ットないし数十ビットで1画素を表すデータとして構成
されており、これらのデータがメモリ7に記憶されると
きには、ディスプレイ装置の画面上に画像が表示される
ときのように、水平方向および垂直方向に沿って整列さ
れ、1画素データのビット長はデータの形式によって決
まる。
【0042】メモリ7に描画データ、表示画像データお
よびビデオ画像データを記憶するに際しては、リニアア
ドレスマッピング方式またはタイルアドレスマッピング
方式を採用することができる。メモリ7を、例えば、4
つのバンク(バンクアドレス0〜3)に分割し、各バン
クのページをn個に分割し、リニアアドレスマッピング
方式を採用したときには、図2に示すように、各ライン
がページに割り当てられ、各ラインには水平方向に連続
したアドレスが割り当てられ、1ライン内の画素データ
は同一のロウアドレス、すなわち同一ページに割り当て
られる。ただし各ラインにはそれぞれ同一バンクの別の
ロウアドレスもしくは別のバンクのロウアドレスが割り
当てられる。すなわち各ラインには異なるページが割り
当てられる。なお、この場合、カラムアドレス(0〜5
11)は画面の各画素に対応したアドレスとなる。
【0043】一方、メモリ7を4つのバンクに分割し、
タイルアドレスマッピング方式を採用したときには、図
3に示すように、ページは、水平方向に32バイト、垂
直方向に16ラインの方形(以下、タイルと称する。)
に対応して設定され、各タイル内では連続したアドレス
(0〜511)が割り当てられ、各タイル内の画素デー
タは全て同一のロウアドレス、すなわち同一ページに割
り当てられる。ただし、各タイルはそれぞれ同一バンク
であるが別のロウアドレス、もしくは別のバンクのロウ
アドレスが割り当てられる。すなわち各ページは相隣接
するタイルとは個となるページが割り当てられることに
なる。
【0044】ここで、リニアアドレスマッピング方式ま
たはタイルアドレスマッピング方式のいずれかを採用す
るに際しては、各デバイスの機能を考慮する必要があ
る。
【0045】例えば、RU3は、描画命令コードにした
がって任意の図形を生成し、メモリ7の二次元のアドレ
ス空間に書き込むようになっており、描画する図形は任
意の角度の直線や曲線で構成されているため、アクセス
対象のアドレスは水平方向に連続だったり、垂直方向に
連続であったり、あるいは斜め方向に連続であったりす
る。このため、リニアアドレスマッピングでは、水平方
向の描画であれば連続したアクセスは可能であるが、垂
直方向や斜め方向の描画であれば、サイクルごとにメモ
リ7の異なるページにアクセスすることとなり、サイク
ルごとにページミスヒットが発生し、メモリアクセス効
率が低下することになる。
【0046】一方、図3に示すタイルアドレスマッピン
グ方式を用いたときには、水平方向、垂直方向および斜
め方向のいずれの方向にアクセスするときでもタイル境
界を超えたときのにみページミスヒットが発生すること
になる。したがって、描画処理のためには、図3のタイ
ルアドレスマッピングを用いることが好ましい。
【0047】また、DU4によるメモリ7からの表示画
像データの読み出しおよびVU5によるメモリ7へのビ
デオ画像データの書き込みは一定の規則性を持ってい
る。すなわち両者はいずれもライン方向に、しかも左側
から右側または右側から左側のいずれか1方向に連続し
てアクセスするようになっている。しかし、アクセスを
開始するアドレスは任意である。これは、表示画像のス
クロールやDU4、またはVU5の内部での転送データ
バッファの制御などに起因している。このため、DU4
とVU5に対してタイルアドレスマッピングを採用した
ときには、タイル境界を跨ぐライン方向に連続したアク
セスが要求されたときには、タイル境界を跨ぐごとにペ
ージミスヒットが発生するので、ページミスヒット時に
おけるアクセスを効率良く行わなければ、メモリアクセ
ス効率が低下することになる。
【0048】また、DU4による表示画像データの読み
出しやVU5のビデオ画像データの書き込みは一種のリ
アルタイム性が要求される。すなわち、表示画像データ
の読み出しがある一定の期間内に完了しなければ、ディ
スプレイ装置に表示される画像にはちらつきが生じる。
一方、ビデオ画像データの書き込みがある一定の期間内
に完了しなければディスプレイ装置に表示されるビデオ
画像が一時的に静止してしまう。このため、メモリ7に
アクセスするにも、ページミスヒットの影響を抑制する
ことによって、表示画像データやビデオ画像データのア
クセス効率の向上を図る他に、各デバイスからのアクセ
ス要求を調停することが重要となる。
【0049】特に、メモリ7を各デバイスの共有メモリ
としてユニファイドメモリ構成としたときには、各デバ
イスからのアクセス要求の競合が頻発するため、アクセ
ス競合による表示画像データやビデオ画像データのアク
セス遅延をいかに抑えるかが重要なポイントとなる。
【0050】このため、本実施形態におけるメモリコン
トローラ1は、ページミスヒットの影響を抑制するため
の処理を行うとともに複数のデバイスからのアクセスが
競合したときに、表示画像データやビデオ画像データの
アクセス遅延を抑制するための処理を行うようになって
おり、メモリコントローラ1には、図4に示すように各
デバイスからインタフェースを介して各種の信号が入力
されている。メモリコントローラ1と各デバイスはそれ
ぞれ独立したインタフェースで接続されているが、各イ
ンタフェースの仕様は同一である。インタフェースは次
の信号で実現されており、i(i=a,・・・e)は各
デバイスの識別子である。
【0051】アクセス調停部10には、図4に示すよう
に、各デバイスからレディ信号(RDYi)、ライト/
リード識別信号WRi、最終サイクル識別信号ENDi
が入力されており、アクセス調停部10から各デバイス
に対してはアクノリッジ信号(ACKi)が出力される
ようになっている。MUX14には各デバイスからバイ
トイネーブル信号BEi〔3:0〕、アクセス先アドレ
スADRi〔25:2〕、ライトデータWDTi〔3
1:0〕が入力されている。一方、メモリ制御部11か
ら各デバイスに対してはリードデータストローブ信号R
STBiが出力され、データ制御部15から各デバイス
にはリードデータRDTi〔31:0〕が出力されるよ
うになっている。さらに、メモリコントローラ1とメモ
リ7はSSDRAMインタフェイスを介して接続されて
おり、メモリ制御部11からメモリ7に対して、コマン
ドを指定するための制御信号として、チップセレクト信
号CS#、ロウアドレスストローブ信号RAS#、カラ
ムアドレスストローボ信号CAS#、ライトイネーブル
信号WE#が出力されているとともに、特定のデータを
マスクするためのデータマスク信号DQM〔3:0〕が
出力されている。また、バンク管理およびアドレス生成
部12からメモリ7に対しては、アクセス対象のバンク
およびページを選択するために、バンクアドレスBA
〔1:0〕、ロウ/カラムアドレスA〔12:0〕が出
力されており、データ制御部15とメモリ7との間では
リード/ライトデータDQ〔31:0〕の授受が行われ
るようになっている。なお、#は負論理の信号であるこ
とを示している。また本実施形態では、説明に必要な最
小限の信号のみを示している。
【0052】各デバイスからメモリコントローラ1に対
してメモリリードアクセスおよびメモリライトアクセス
を示す信号をアクセス要求として出力するに際しては、
図21に示すように、クロックに同期して出力されるよ
うになっている。この場合、メモリアクセスはデータ幅
と同じ4バイト単位で実行され、4バイトメモリアクセ
スを実行するサイクルをアクセスサイクルと呼ぶ。アク
セスサイクルは最短で1クロックサイクルであるが、他
のデバイスとの競合が生じたとき、あるいはメモリ7の
バンクアクティブまたはプリチャージにより2クロック
サイクル以上要する場合もある。また、メモリアクセス
アドレスの送受(ライトアクセスの場合にはライトデー
タとバイトイネーブルも含む)とリードデータの送受は
独立して実行される。このため、リードデータの返送を
待つことなく、次のアクセス要求を受け付けることがで
きる。また各デバイスはメモリアクセスを要求するとき
に、レディ信号RDYiをアサート(ハイレベル=
“1”の信号)にするとともに、最初のアクセスアドレ
スADRiを出力する。アクセスの長さが4バイト以下
である場合には最初のアクセスサイクルが最後のアクセ
スサイクルとなるので、レディ信号RDYiとともに、
最終サイクル識別信号ENDiもアサートする。そして
ライトアクセスの場合には、レディ信号RDYiをアサ
ートするとともに、ライト/リード識別信号WRiをア
サートし、且つ最初のライトデータWDTiとバイトイ
ネーブルBEiを出力する。一方、リードアクセスの場
合には、レディ信号RDYiをアサートするとともに、
ライト/リード識別信号WRiをネゲート(ロウレベル
=“0”の信号)にする。なお、リードアクセスの場合
にはライトデータWDTiとバイトイネーブル信号BE
iを出力する必要はない。
【0053】メモリコントローラ1は、各デバイスから
のレディ信号RDYiがアサートされたことを検知して
調停を行い、複数のデバイスのうち1つのデバイスから
のアクセスを選択してそのアクセス先アドレスADRi
を取り込む。そして、リード/ライト識別信号WRiが
アサートされているときには、ライトデータWDTiと
バイトイネーブル信号BEiも取り込む。そして、選択
したデバイスに対してアクノリッジ信号ACKiをアサ
ートする。アクノリッジ信号ACKiのアサートは最短
でレディ信号RDYiのアサート開始と同一クロックサ
イクル内で行われるが、上述したように、他のデバイス
との競合やメモリ7のバンクアクティブまたはプリチャ
ージによりアクノリッジ信号ACKiのアサートが1ク
ロックサイクル以上遅れる場合もある。このような場
合、デバイスは各信号の出力状態をアクノリッジ信号A
CKiがアサートされるまで保持する。デバイスアクノ
リッジ信号ACKiがアサートされたときには、次のク
ロックサイクルにレディ信号RDYiをアサートした状
態で、次のアクセスアドレスADRiを出力する(A
1)。WRi、WDTi、BEiも同様である。アクセ
スアドレスADRiは前のアドレス値と連続してなくて
も良い。また最終アクセスサイクルであれば最終サイク
ル識別信号ENDiもアサートする。
【0054】メモリコントローラ1は最終サイクル識別
信号ENDiがアサートされている最終アクセスサイク
ルを受け付ける(アクノリッジ信号ACKiをアサート
する。)とともに、他のデバイスのレディ信号RDYi
のアサートを検知したときには調停を行い、次のクロッ
クサイクルにはこのアクセスサイクルを受け付けること
が可能である。最終アクセスサイクルが受け付けられた
デバイスは、この調停の対象には入らない。ただし、引
き続きレディ信号RDYiをアサートして次のアクセス
を要求することは可能である。
【0055】またメモリコントローラ1は、基本的に1
つのデバイスのアクセスを選択したときには最終サイク
ル識別信号ENDiがアサートされるまで同一デバイス
のアクセスのみを受け付ける。そしてメモリコントロー
ラ1があるデバイスのアクセスを選択してから最終サイ
クル識別信号ENDiがアサートされた最終アクセスサ
イクルを受け付ける(アクノリッジ信号ACKiをアサ
ートする。)までの期間をトランザクションと呼ぶ。1
トランザクションの間に実行する複数のアクセスサイク
ルのアドレスはそれぞれ任意であり、1トランザクショ
ンの期間に複数のページに跨るアドレスにアクセスする
ことは可能である。なお、各デバイスは1トランザクシ
ョンの間にレディ信号RDYiをネゲートしてメモリア
クセスを一時的に停止することも可能であり、また、1
トランザクションの間にリードアクセスとライトアクセ
スを混在して要求することも可能であるが、メモリアク
セスの効率を悪化させるので、このような要求を行うと
きには、最終サイクル識別信号ENDiをアサートして
トランザクションを一旦終了することが望ましい。
【0056】次に、アクセス調停部10の具体的内容を
図5ないし図10を用いて説明する。アクセス調停部1
0は、図5に示すように、モードレジスタ部100、デ
バイス選択部101、カウンタ102を備えて構成され
ており、レジスタバスREGBUSが各デバイスに接続
されている。
【0057】モードレジスタ部100は、メモリアクセ
ス調停における優先度や、メモリ7のカラムレイテンシ
(SDRAMのリードコマンド発行からリードデータ出
力までのクロックサイクル数)、プリチャージモードな
どを設定するレジスタである。このモードレジスタ部1
00には、レジスタバスREGBUSを経由してカラム
レイテンシや優先度などに関するデータが設定されるよ
うになっている。
【0058】例えば、図6に示すように、モードレジス
タ部100には、各デバイスのメモリアクセスの優先度
PRi〔2:0〕が設定され、カラムレイテンシCL2
が設定され、各デバイスからの要求に対して先行プリチ
ャージを実行するか否かを示すプリチャージモードPD
iが設定されるようになっている。カラムレイテンシに
ついては2サイクルか3サイクルかが設定され、CL2
が0であればカラムレイテンシは3サイクルであり、C
L2が1であればカラムレイテンシは2サイクルであ
る。またPDiが0であれば、このデバイスに対する先
行プリチャージは実行せず、PDiが1のときには、こ
のデバイスからの要求に対しては先行プリチャージを実
行することを示している。
【0059】また優先度PRi〔2:0〕=「000」〜
「111」については、図7に示すように、PRi〔2:
0〕の値が小さい程、優先度は高くなる。そして複数の
デバイスが同一の優先度に設定された場合、それらのデ
バイスの間ではラウンドロビンでアクセスが調停され
る。すなわち、ラウンロビンでは、調停を実行するタイ
ミングを基準として、このタイミングに最も近いときに
アクセスを受け付けられたデバイスが同一優先度のデバ
イス間では最下位の優先度となる。なお、優先度が「0
00」場合には、特権モードと呼び、特権モードに設定
されたデバイスがメモリアクセスを要求した場合、実行
中の他のデバイスのトランザクションを中断して(本ト
ランザクションが特権モードで実行している場合は中断
しない)、特権モードのデバイスのトランザクションを
実行し、且つ、後述するカウンタ102からのABOR
T(中断)信号は無視される。
【0060】デバイス選択部101は、各デバイスから
のレディ信号RDYiのアサートを検知したときには、
レディRDYをアサートし、モードレジスタ部100に
設定された優先度にしたがって1つのデバイスを選択
し、そのデバイスを識別する信号を保持するとともに、
その番号をDEVSEL〔3:0〕として出力し、選択
したデバイスのライト/リード識別信号WRiをWRと
して出力し、モードレジスタ部100の選択したデバイ
スの先行プリチャージPDiが1に設定されていれば、
先行プリチャージPDEVをアサートする。RDYのア
サートおよびDEVSEL〔3:0〕、WR、PDiの
出力は、選択したデバイスのRDYiアサート期間中継
続される。
【0061】またデバイス選択部101は、メモリ制御
部11からのアクノリッジ信号ACKのアサートを検知
すると、選択したデバイスに対してアクノリッジ信号A
CKiをアサートし、選択したデバイスが同一サイクル
に最終サイクル識別信号ENDiをアサートしているな
らば、トランザクションの完了と判断し、カウンタ10
2にEND信号を1クロックサイクルアサートするとと
もに、次のクロックサイクルからアクセスの調停を再開
する。
【0062】カウンタ102は、最終サイクル識別信号
END信号のアサートによりカウント値をクリアし、ア
クノリッジ信号ACK信号がアサートされている間、ク
ロックサイクルに同期してカウント値を順次インクリメ
ントし、カウント値が所定の設定値と一致したときにA
BORT信号をアサートするようになっている。すなわ
ち、カウンタ102は、あるトランザクションにおける
アクセスサイクル数をカウントするカウンタである。そ
してあるデバイスによるトランザクションのアクセスサ
イクル数が極端に長い場合、他のデバイスのメモリアク
セスに支障が生じてしまうため、1トランザクションの
アクセスサイクル数に上限を設け、カウンタ102によ
ってアクセスサイクル数が上限に達したことが検知され
たときには、メモリコントローラ1側で一旦トランザク
ションを中断し(これをアボートと呼ぶ。)、他のデバ
イスのメモリアクセスを受け付けるようにしている。1
トランザクションのアクセスサイクル数の上限はレジス
タバスREGBUSを経由してカウンタ102に任意の
値で設定することが可能である。
【0063】デバイス選択部101はカウンタ102の
ABORT信号のアサートを検知すると、トランザクシ
ョンの中断と判断してカウンタ102にEND信号を1
クロックサイクルの間アサートするとともに、次のクロ
ックルサイクルからアクセスの調停を再開する。なお、
デバイスからはアボートによってメモリアクセスが中断
されたことは認識されず、単にメモリコントローラ1の
アクノリッジACKiのアサートが遅れているように見
えるため、レディ信号RDYiのアサートを継続する。
このように、メモリコントロール1は、アボートによっ
て中断したトランザクションの後続を次のトランザクシ
ョンの終了直後またはそれ以降に優先度に基づいて選択
して実行することになる。
【0064】次に、アクセス調停部10の動作を図8な
いし図10にしたがって説明する。図8では、デバイス
aはライトアクセスで、アクセスサイクル数は2を示し
ており、デバイスbはリードアクセスでアクセスサイク
ル数は1、優先度はデバイスaの方がデバイスbよりも
高いときを示している。またDEVSEL〔3:0〕の
値はデバイスaが0001、デバイスbは0010とす
る。
【0065】まず、図8において、クロックサイクルT
0においてデバイスaとデバイスbが同時にレディ信号
RDYiをアサートすると、アクセス選択部11は優先
度に基づいてデバイスaを選択する。メモリ制御部11
はクロックサイクルT2にデバイスaの最初のアクセス
サイクルに対するアクノリッACKをアサートし、クロ
ックサイクルT3に次のアクセスサイクルに対するアク
ノリッジACKをアサートする。さらにクロックサイク
ルT3で最終サイクル識別信号ENDaがアサートされ
た後は、クロックサイクルT4からデバイスbが選択さ
れ、リードアクセスが実行され、クロックサイクルT8
ではデバイスbの最初で最後のアクセスサイクルに対す
るアクノリッジACKがアサートされる。
【0066】一方、デバイスaのトランザクションがア
ボートによって中断されるときには、図9に示すよう
に、デバイスaのトランザクションはクロックサイクル
T0から開始されているが、クロックサイクルT3でA
BORTがアサートされるため、トランザクションが中
断され、次のクロックサイクルT4ではデバイスbのト
ランザクションが実行される。このとき、デバイスbの
トランザクションはアクセスサイクル数が1であるた
め、クロックサイクルT4で終了し、次のクロックサイ
クルT5からはデバイスaのトランザクションが再開さ
れる。
【0067】また、デバイスaのトランザクションが実
行されているときに、特権モードのデバイスbからメモ
リアクセスが要求されたときには、図10に示すよう
に、デバイスaのトランザクションはクロックサイクル
T0から開始されているが、クロックサイクルT3で特
権モードのデバイスbからのレディ信号RDYiがアサ
ートされるため、デバイスaのトランザクションが中断
され、次のクロックサイクルT4ではデバイスbのトラ
ンザクションが実行される。デバイスbのトランザクシ
ョンはアクセスサイクル数が1であるため、デバイスb
のトランザクションはクロックサイクルT4で終了し、
次のクロックサイクルT5からはデバイスaのトランザ
クションが再開される。
【0068】次に、バンク管理およびアドレス生成部1
2の構成を図11に示す。バンク管理およびアドレス生
成部12は、アドレス生成部120、バンク状態管理部
121、バンクアドレスラッチ140、ロウ/カラムア
ドレスラッチ141で構成されている。アドレス生成部
120とバンク状態管理部121には、メモリ制御部1
1の生成による各種のコマンドが入力されており、アド
レス生成部120にはアクセスアドレスADR〔25:
2〕、モード信号CONF〔3:0〕が入力されてい
る。
【0069】アクティブコマンドATCISSは、メモ
リ制御部11からメモリ7に対して、アクティブコマン
ドを発行したことを示す信号として入力され、プリチャ
ージコマンドPREISSはメモリ制御部11からメモ
リ7に対して、プリチャージコマンドが発行されたこと
を示す信号として入力され、先行プリチャージコマンド
PPREISSはメモリ制御部11からメモリ7に対し
て、先行プリチャージモードにおける先行的なプリチャ
ージコマンドを発行したことを示す信号として入力され
ている。また全バンクプリチャージコマンドPALLI
SSはメモリ制御部11からメモリ7に対して、全ての
バンクに対してプリチャージを実行するためのプリチャ
ージコマンドが発行されたことを示す信号として入力さ
れ、モードレジスタセットコマンドMRSISSはモー
ドレジスタセットコマンドが発行されたことを示す信号
として入力されている。
【0070】アドレス生成部120は、MUX14によ
って選択されたデバイスのアドレスを示すアクセスアド
レスADR〔25:2〕と、メモリ7の構成(メモリ容
量)を示すモード信号CONF〔3:0〕と、各種のコ
マンドを基に、バンクアドレスBADR〔1:0〕、ロ
ウアドレスRA〔12:0〕、ロウアドレスまたはカラ
ムアドレスMADR〔12:0〕を生成して出力するよ
うになっている。MADR〔12:0〕がロウアドレス
またはカラムアドレスのうちどちらを出力するかは発行
するコマンドの種類によって決まる。なお、4バンクの
うち1バンクを選択するためのBA〔1:0〕=「00」
〜「11」はバンクアドレスBADR〔1:0〕をラッチ
140でラッチした信号であり、ロウ/カラムアドレス
A〔12:0〕はMADR〔12:0〕をラッチ141
でラッチした信号である。すなわちアドレス生成部12
0はメモリ制御手段の1要素として、アクセス要求を基
にメモリ7のバンクのうちアクセス対象のバンクとペー
ジおよびページの中の特定のデータを選択するためのバ
ンクアドレスBA〔1:0〕、ロウ/カラムアドレスA
〔12:0〕を出力するようになっている。
【0071】バンク状態管理部121は、メモリ制御部
11から発行された各種のコマンドを基にメモリ7の各
バンクの状態を保持し、メモリ7へのアクセスを最適に
行うための情報をメモリ制御部11に提供するようにな
っている。すなわち、バンク状態管理部121は、以下
のバンク状態情報をバンク別に保持するようになってい
る。
【0072】(1)アクティブ状態か非アクティブ状態
か。
【0073】(2)アクティブ状態のカラムアドレス。
【0074】(3)アクティブ−プリチャージ間最小サ
イクルが経過したか。
【0075】(4)プリチャージ−アクティブ間最小サ
イクルが経過したか。
【0076】バンク状態管理部121は以上の情報に基
づいてアクセスサイクルごとに以下の情報をメモリ制御
部11に提供する。
【0077】(1)BACT:アクセス対象のバンクが
アクティブ状態である。
【0078】(2)PHIT:アクセス対象のページが
アクティブ状態である(ページヒットであることを示
す)。
【0079】(3)IRAS:アクセス対象のバンクに
おいてアクティブ−プリチャージ間最小サイクルが経過
した。
【0080】(4)IRP:アクセス対象のバンクにお
いてプリチャージ−アクティブ間最小サイクルが経過し
た。
【0081】(5)IRASALL:バンクにおいてア
クティブ−プリチャージ間最小サイクルが経過した。
【0082】以上の情報は、例えば、ハイレベルの信号
としてメモリ制御部11に提供される。
【0083】また、アドレス生成部120において各種
のアドレスを生成するに際しては、図12に示すよう
に、メモリ7の構成(メモリ容量)にしたがってアドレ
スが生成される。モード信号CONF〔3:0〕はメモ
リ7の構成を示すものであり、CONF〔3:0〕が0
のメモリ構成は、メモリ7のバンクは4バンク構成(バ
ンク0〜バンク3)で1バンク当たり4096ページ、
1ページ当たり256ワードである。またCONF
〔3:0〕が1のメモリ構成のときには、メモリ7が4
バンク構成で1バンク当たり4096ページ、1ページ
当たり512ワードとなる。さらに、CONF〔3:
0〕が2のメモリ構成のときには、メモリ7が4バンク
構成で1バンク当たり81192ページ、1ページ当た
り512ワードとなる。なお、1ワードはメモリデータ
バスDQ〔31:0〕の幅と同じ32ビット(4バイ
ト)である。
【0084】ここで、CONF〔3:0〕が0の場合、
各コマンドの発行の有無によってアドレスが生成され
る。例えば、アクティブコマンド発行時(ACTISS
=1)のときには、アクセスアドレス〔25:2〕のう
ちADR〔11:10〕をバンクアドレスBADR
〔1:0〕として選択し、ADR〔23:12〕をロウ
アドレスA〔11:0〕として選択する。この場合、最
上位のビットであるRA〔12:〕は0となる。さらに
ロウまたはカラムアドレスMADR〔12:0〕は、ロ
ウアドレスであるADR〔23:12〕が選択され、最
上位のビットは0である。また先行プリチャージコマン
ド発行時(PPREISS=1)のときにはADR〔1
1:0〕+1がバンクアドレスBADR〔1:0〕とし
て選択される。すなわちアクティブコマンドで指定され
たバンクに隣接するバンクに対するアドレスが出力され
る。また全プリチャージコマンド発行時(PALLIS
S=1)のときにはアクティブコマンド発行時と同じバ
ンクアドレスが生成され、PPREISS、PALLI
SS発行時にはMADR〔12:0〕としては、ページ
の中の特定のデータ(バイト)を選択するために、カラ
ムアドレスADR〔9:2〕が生成される。
【0085】次に、図13にバンク状態管理部121の
構成を示す。バンク状態管理部121はバンク0からバ
ンク3までの4バンクの状態をそれぞれ保持するための
バンクn状態管理部122a、122b、122c、1
22dを備えて構成されている。なお、各バンク状態管
理部は同一の構成であるため、以下バンク0状態管理部
122aについて説明する。バンク0状態管理部122
aは、アクセス先のバンクがバンク0であるか否かを判
定するための一致検出回路130a、論理和回路131
a、134a、論理積回路132a、133a、モード
レジスタ135a、バンク0内でアクティブ状態になっ
たページのロウアドレスを保持するロウアドレスバッフ
ァ136a、バンク0のうちいずれかのページがアクテ
ィブになっていることを示すアクティブフラグ137
a、アクティブ−プリチャージ間最小サイクル数をカウ
ントするRASカウンタ138a、プリチャージ−アク
ティブ間最小サイクル数をカウントするRPカウンタ1
39aで構成されており、ロウアドレスバッファ136
aはセクレタ123に接続され、アクティブフラグ13
7aはセレクタ124に接続され、RASカウンタ13
8aはセレクタ125と論理積回路126に接続され、
RPカウンタ139aはセレクタ127に接続されてい
る。セレクタ123、124、125、127はバンク
アドレスによって指定されたバンク状態管理部からの信
号のみを選択して出力するようになっている。
【0086】モードレジスタ135aはアクティブ−プ
リチャージ間最小サイクル数およびプリチャージ−アク
ティブ間最小サイクル数を設定するレジスタであり、設
定値はレジスタバスREGBUSを経由して任意の値で
設定されるようになっている。
【0087】一致検出回路130aはバンクアドレスに
よってバンク0が指定されたときにハイレベル=“1”
の信号を出力するようになっており、論理積回路132
aはアクティブコマンドの発行に伴ってACTISS=
1となったときにハイレベル=“1”の信号をロウアド
レスバッファ136a、アクティブフラグ137a、R
ASカウンタ138aに出力するようになっている。ま
た論理積回路133aは、バンクアドレスによって0バ
ンクが指定されたときに、PREISSまたはPPRE
ISSの発行に伴っていずれかのコマンドが1になった
ときにハイレベル=“1”の信号を論理和回路134a
に出力するようになっている。論理和回路134aは論
理積回路133aからハイレベル=“1”の信号が出力
されたとき、あるいはPALLISS=1になったとき
に、すなわちプリチャージが行われたことを条件に、ア
クティブフラグ137aにハイレベル=“1”のリセッ
ト信号を出力するとともに、RPカウンタ139aにハ
イレベル=“1”のスタート信号を出力するようになっ
ている。
【0088】ロウアドレスバッファ136aは、バンク
0へのアクセスサイクルで且つアクティブコマンドが発
行されたとき(ACTISSがアサートされたとき)に
ロウアドレスRA〔12:0〕を保持し、それ以降同じ
バンクを対象とするアクセスサイクルごとにそのロウア
ドレスと、保持したロウアドレスとを比較して両者が一
致した場合にページヒットPHITOをアサートし、ハ
イレベル=“1”の信号をセレクタ123に出力するよ
うになっている。すなわち、ロウアドレスバッファ13
6aはページヒットを判定する機能を備えて構成されて
いる。さらにロウアドレスバッファ136aは、セレク
タ123とともにアクセス対象のページがアクティブ状
態にあるか否かを判定するページヒット判定手段として
構成されている。
【0089】アクティブフラグ137aは、バンク0へ
のアクセスサイクルで且つアクティブコマンドが発行さ
れたとき(ACTISSがアサートされたとき)に1に
セットされてバンクアクティブBACTOをアサート
し、ハイレベル=“1”の信号をセレクタ124に出力
し、バンク0のプリチャージコマンドが発行されたとき
(PREISS、PPREISS、PALLISSのい
ずれ1つのコマンドがアサートされたとき)に0にクリ
アされてPACT0をネゲート(ロウレベル=“0”の
信号を出力)するようになっている。すなわち、アクテ
ィブフラグ137aは、セレクタ124とともにアクセ
ス対象のバンクがアクティブ化されているか否かを判定
するバンクアクティブ化判定手段として構成されてい
る。
【0090】RASカウンタ138aは通常IRASO
をアサートしているが、バンク0へのアクセスサイクル
で且つアクティブコマンドが発行されたとき(ACTI
SSがアサートされたとき)にカウントを開始するとと
もにIRAS0をネゲートし、モードレジスタ135a
に設定されたアクティブ−プリチャージ間最小サイクル
数が経過した後に、IRASOを再びアサートし、ハイ
レベル=“1”の信号をセレクタ125と論理積回路1
26に出力するようになっている。すなわち、RASカ
ウンタ138aは、セレクタ125とともにアクティブ
−プリチャージ間最小サイクル数判定手段として構成さ
れている。
【0091】RPカウンタ139aは通常IRPをアサ
ートしているが、バンク0のプリチャージコマンドが発
行されたとき(PREISS、PPREISS、PAL
LISSのいずれかのコマンドがアサートされたとき)
にカウントを開始するとともに、IRPOをネゲート
し、ロウレベル=“0”の信号をセレクタ127に出力
し、モードレジスタ135aに設定されたプリチャージ
−アクティブ間最小サイクル数が経過した後に、IRP
Oを再びアサートしてハイレベル=“1”の信号をセレ
クタ127に出力するようになっている。すなわち、I
RPカウンタ139aは、セレクタ127とともにプリ
チャージ−アクティブ間最小サイクル判定手段を構成す
るようになっている。
【0092】上記構成によるバンク状態管理部121に
おいては、バンクアクティブ化判定手段によりアクセス
対象のバンクがアクティブ化されていないと判定された
ときに(アクティブフラグ137aの出力が“0”のと
き)、プリチャージ−アクティブ間最小サイクル判定手
段から肯定の判定結果が出力されたことを条件に(RP
カウンタ139aの出力が“1”のとき)、アクセス対
象のページをアクティブ化するとともに、アクティブ化
した後、ライトまたはリードによるアクセスの実行をメ
モリ7に指令するための情報が生成される。また、バン
クアクティブ化判定手段によるアクセス対象のバンクが
アクティブ化されていると判定されたときには(アクテ
ィブフラグ137aの出力が“1”のとき)、ページヒ
ット判定手段により肯定の判定結果が得られたときに
(ロウアドレスバッファ136aの出力が“1”のと
き)、直ちにライトまたはリードによるアクセスの実行
を指令するための情報が生成される。さらに、バンクア
クティブ化判定手段によりアクセス対象のバンクがアク
ティブ化されていると判定されたときに、ページヒット
判定手段による否定の判定結果が得られたときには(ロ
ウアドレスバッファ136aの出力が“0”のとき)ア
クティブ−プリチャージ間最小サイクル判定手段から肯
定の判定結果が出力されたことを条件に(RASカウン
タ139aの出力が“1”のとき)アクセス対象のバン
クをプリチャージし、次にアクセス対象となるページに
対してアクティブ化を実行した後にライトまたはリード
によるアクセスの実行を指令するための情報が生成さ
れ、これらの情報はメモリ制御部11に出力される。
【0093】次に、メモリ制御部11の具体的内容を図
14ないし図19にしたがって説明する。メモリ制御部
11は、図14に示すように、コマンド生成部110、
DQM生成部111、リードデータ制御部112、ラッ
チ113、114、115、116で構成されている。
【0094】コマンド生成部110は、アクセス調停部
10からCL2、RDY、WR、DEVSEL〔3:
0〕、PDEVに関する信号を入力したときに、これら
の信号を基にメモリ7をアクセスするための各種のコマ
ンドを生成し、各種のコマンドをバンク管理およびアド
レス生成部12に出力するとともに、コマンドに対応し
た制御信号(RAS#、CAS#、WE#、CS#)を
メモリ7に出力してメモリ7に対するアクセスを制御す
るようになっている。
【0095】ここで、図15にコマンド生成部110に
おけるコマンド発行制御の状態遷移を示し、図16に、
図15の状態遷移における各状態遷移の条件を示し、図
17に、図15の状態遷移による出力信号の状態(コマ
ンドに対応した制御信号の状態)を示す。
【0096】図15において、IDLE状態1100に
おいては、各デバイスからのアクセス要求がなく、アク
セス要求待ちサイクルであり、RDYが出力され、IR
Pの出力がないとの遷移条件が満たされたときには(図
16の#a)、遷移先としてアクティブ化を行うための
処理に移行する。ACTV状態1101はバンクアクテ
ィブコマンド(ACTV)発行サイクルであり、先行プ
リチャージがアサートされていることを条件に(図16
の#c)、PRE−Aに移行し、先行プリチャージがネ
ゲートされていて且つRCD2として2サイクルまたは
3サイクルが指定されたときには(図16の#d)、W
AIT−Bに移行し、それ以外の条件のときには(図1
6の#e)、WAIT−Aに移行する。WAIT−A状
態1102はカラムレイテンシが3サイクルである場合
のACTVとWRITEとの間またはACTVとREA
Dとの間のウエイトサイクル(1サイクルの待ちサイク
ル)であり、WAIT−B状態1103はライトコマン
ドまたはリードコマンドを発行するまでのウエイトサイ
クル(1サイクルの待ちサイクル)である。またPRE
−A状態1104においては、先行プリチャージPDE
Vがアサートされ、先行プリチャージモードのトランザ
クションにおいて、バンクnに対するアクティブコマン
ドACTVを発行した直後に、隣接するバンクn+1に
対するプリチャージコマンド(PRE)を発行するサイ
クルである。WRYTE状態1105はライトコマンド
(WRITE)を発行するサイクルであり、READ状
態1106はリードコマンド(READ)を発行するサ
イクルであり、WAIT−C状態1107はプリチャー
ジコマンドまたは全バンクプリチャージコマンドを発行
するまでのウエートサイクル(1サイクル)であり、P
RE−B状態1108はプリチャージコマンド(PR
E)を発行するサイクルであり、PALL状態1109
は全バンクプリチャージコマンド(PALL)を発行す
るサイクルである。すなわち、各状態おいては、遷移条
件が満たされたときに遷移先に移動するためのコマンド
が発行されることになる。また、otherwiseは
常に行われることを示し、遷移元と遷移先が同じときに
は同じ処理が繰り返されることを示している。
【0097】メモリ制御部11において各種のコマンド
が生成されると、コマンドの発行の有無が「1」、「0」で
表され、コマンドが発行されないときには出力値はロウ
レベル=“0”となり、コマンドが発行されたときにハ
イレベル=“1”となる。そして各コマンドACTIS
S、PREISS、PPREISS、PALLISS、
WRITE、READはそれぞれ次のクロックサイクル
の状態がACTV状態、PRE−B状態、PRE−A状
態、PALL状態、WRITE状態、READ状態にな
る場合にアサートされる。そして各種コマンドが発行さ
れると、コマンドに対応した制御信号が負論理の信号と
してメモリ7に出力される。
【0098】例えば、アクティブコマンドACTVが発
行されたときには、CS#“0”、RAS#“0”、C
AS#“1”、WE#’1”の信号が制御信号としてメ
モリ7に出力される。また先行プリチャージコマンド
(PRE−A)が発行されたときには、CS#として
“0”、RAS#として“0”、CAS#として
“1”、WE#として“0”の制御信号が負論理の信号
としてメモリ7に出力される。これらの制御信号はコマ
ンドに対応しているため、コマンドに基づいてメモリ7
を制御することができることになる。
【0099】DQM生成部111には、書き込むべきバ
イトを指定するバイトイネーブル信号BE〔3:0〕が
入力れており、DQM生成部111は、バイトイネーブ
ルBEを基に、図18に示すように、コマンド生成部1
10からWRITEISSが発行されたときに、書き込
むべきバイトに対してのみ“0”の信号を出力し、書き
込みを禁止されているバイトに対しては“1”の信号を
マスク信号dqm〔3:0〕として出力するようになっ
ている。すなわち、WRITEISSがアサートされた
とき、次のサイクルでWRITEコマンドが発行された
ときに、バイトイネーブルBE〔3:0〕の極性反転信
号をdqm〔3:0〕として出力し、それ以外のときに
はロウレベルにネゲートするようになっている。dqm
〔3:0〕はラッチ117によってラッチされてDQM
〔3:0〕としてメモリ7に出力される。
【0100】リードデータ制御部112は、図19に示
すように、ラッチ1120、1121、1222、11
23、1124、リードデータストローブ信号(RST
Bi)生成回路(RSTBGEN)1125、リードデ
ータセット信号(DQSET)生成回路(DQSETG
EN)1126、DQ出力イネーブル信号(OUTEN
B)生成回路(OUTENBGEN)1127で構成さ
れている。
【0101】ラッチ1120、1121、1122、1
123、1124はREADISSおよびDEVSEL
〔3:0〕をクロックサイクルに同期して逐次ラッチす
るようになっている。これは、リードコマンドを発行し
てからカラムレイテンシ後にメモリ7がリードデータを
出力するタイミングに合わせてRSTBi、DQSE
T、OUTENBを生成するためである。
【0102】リードデータストローブ信号生成回路11
25は、メモリ7から受信したリードデータを取り込ん
でRDT〔31:0〕としてデバイスに出力すると同時
に、RSTBiをアサートするために、CL2が0(カ
ラムレイテンシが3サイクル)の場合にはRSTBD5
のアサート時にDEVD5〔3:0〕が示すデバイスに
対するRSBiをアサートし、CL2が1(カラムレイ
テンシが2サイクル)の場合にはRSTBD4のアサー
ト時にDEVD4〔3:0〕が示すデバイスに対するR
STBiをアサートする。
【0103】すなわち、リードデータストローブ信号生
成回路1125は、以下に示すように、 RSTBa=CL2&RSTBD4&(DEVD4=D
EVa)|CL2&R STBD4&(DEVD5=DEVa) RSTBb=CL2&RSTBD4&(DEVD4=D
EVb)|CL2&R STBD4&(DEVD5=DEVb) ……………… RSTBe=CL2&RSTBD4&(DEVD4=D
EVe)|CL2&RSTBD4&(DEVD5=DE
Ve) 上記式に従ってリードデータストローブ信号RSTBi
を生成するように構成されている。なお、&は論理積を
示し、|は論理和を示す。
【0104】リードデータセット信号生成回路1126
は、メモリ7がリードデータを出力すると同時にDQS
ETをアサートすることにより、データ制御部15のラ
ッチを保持させるために、CL2が0(カラムレイテン
シが3サイクル)の場合にはRSTBD4のアサート時
にDQSETをアサートし、CL2が1(カラムレイテ
ンシが2サイクル)の場合にはRSTBD3のアサート
時にDQSETをアサートする。
【0105】すなわち、リードデータセット信号生成回
路1126は、以下に示すように、 DQSET=CL2&RSTD3|( ̄CL2&RST
BD4) 上記式に従ってリードデータセット信号を生成するよう
に構成されている。なお、 ̄は反転を示す。
【0106】DQ出力イネーブル信号生成回路1127
は、メモリ7がリードデータを出力するクロックサイク
ルだけではなく、メモリ7がリードデータを出力する1
クロックサイクル前からメモリ7がリードデータを出力
した1クロックサイクル後までメモリコントローラ1に
よるDQ〔31:0〕の出力を抑止するために、データ
制御部15のDQ〔31:0〕出力ドライブのイネーブ
ル信号OUTENB(ただし、データ制御部15で一旦
ラッチされるので、DQ〔31:0〕出力よりも1クロ
ックサイクル速い)をメモリ7がリードデータを出力す
る1クロックサイクル前からメモリ7がリードデータを
出力した1クロックサイクル後までの間はネゲートし、
それ以外のときにはアサートする。すなわち、CL2が
0(カラムレイテンシが3サイクル)の場合にはRST
BD3、RSTBD4のいずれかがアサートされている
ときにOUTENBをアサートし、CL2が1(カラム
レイテンシが3サイクル)の場合にはRSTBD1、R
STBD2、RSTBD3のいずれかがアサートされて
いるときにOUTENBをアサートする。
【0107】すなわち、DQ出力イネーブル信号生成回
路1127は、以下に示すように、 OUTENB= ̄(CL2&(RSTBD1|RSTB
D2|RSTBD3) | ̄(CL2&(RSTBD2|RSTBD3|RST
BD4) 上記式に従ってDQ出力イネーブル信号を生成するよう
に構成されている。
【0108】一方、データ制御部15は、図20に示す
ように、データ出力イネーブル信号OUTENBをラッ
チするラッチ150、ライトデータWDT〔31:0〕
をラッチするラッチ151、メモリ7が出力するリード
データDQ〔31:0〕をDQセット信号アサート時に
保持するラッチ152、DQ〔31:0〕への出力バッ
ファ153、DQ〔31:0〕からの入力バッファ15
4で構成されている。
【0109】ラッチ150は、データ出力イネーブル信
号OUTENBをラッチしてその極性反転信号OUTE
NB#を出力する。出力バッファ153は、OUTEN
B#がロウレベルであるときにラッチ151でラッチさ
れたライトデータWDT〔31:0〕をDQ〔31:
0〕に出力する。またラッチ152はDQSETがアサ
ートされたときにメモリ7が出力するリードデータDQ
〔31:0〕を保持してそれを全デバイスにRDTi
〔31:0〕として出力する。ただし、リードデータス
トローブ信号RSTBiは1つのデバイスにのみアサー
トされるので、リードデータを取り込むデバイスは1つ
である。
【0110】次に、メモリコントローラ1によるメモリ
アクセスの作用を図21および図22にしたがって説明
する。先行プリチャージを行わないときの処理を図21
に従って説明し、先行プリチャージを行うときの処理を
図22にしたがって説明する。なお、RCD2は1(R
AS−CASレイテンシ:2サイクル)、CL2は0
(カラムレイテンシ:3サイクル)とする。
【0111】図21において、先行プリチャージを行わ
ないときには、PDaはロウレベルに設定されており、
メモリコントローラ1は、クロックサイクルT0でデバ
イスaからのレディ信号RDYaがアサートされている
ことを検知すると、クロックサイクルT1においてAC
TVコマンドを発行し、クロックサイクルT2において
最初のアクセスサイクルa0に対するアクノリッジAC
Kaをアサートし、クロックサイクルT3においてRE
ADコマンドを発行する。このときバンク0を指定する
ためのバンクアドレスb0とバンク0のうち特定のペー
ジを指定するためのロウアドレスra0が生成され、バ
ンク0のうちロウアドレスra0で指定されたページを
アクセス対象として、このページをアクティブ化するた
めの処理が実行されることになる。さらに、READコ
マンドの発行に伴って、アクティブ化されたページのう
ち指定のデータ(バイト)をリードするためにカラムア
ドレスca0が出力され、指定のデータをリードするた
めのアクセスがクロックサイクルT3において行われ
る。
【0112】この後、同一ページに対するリードアクセ
スが継続されるときには、第2のアクセスサイクルa1
に対するアクノリッジACKaをクロックサイクルT3
においてアサートしてクロックサイクルT4にREAD
コマンドを発行し、第3のアクセスサイクルa2に対す
るアクノリッジACKaをクロックサイクルT4にアサ
ートし、クロックサイクルT5においてREADコマン
ドを発行する。これにより、カラムアドレスca0、c
a1、ca2で指定されたデータがリードデータrda
0、rda1、rda2として順次読み出される。
【0113】同一ページに対するリードアクセスが継続
されている過程で、第4のアクセスサイクルa3でペー
ジミスヒットが発生すると(ロウアドレスra0で指定
されたページとはことなるページにアクセスすると
き)、クロックサイクルT5以降、アクノリッジACK
aは一時、ネゲートされ、クロックサイクルT6におい
てメモリ制御部11からPREコマンドが発行され、バ
ンク1を選択するためのバンクアドレスb1が出力さ
れ、この後、1クロックサイクル待って、クロックサイ
クルT8においてバンク1をアクセス対象とするために
ACTVコマンドが発行され、バンク1のうち指定のペ
ージを選択するためのロウアドレスra1が出力され
る。これによりロウアドレスra1で指定されたページ
に対するアクティブ化が実行され、クロックサイクルT
9においてアクノリッジACKaがアサートされた後、
クロックサイクルT10においてREADコマンドが発
行される。これにより、バンク1に属するページであっ
て、ロウアドレスra1で指定されたページのうち指定
のデータを選択するためにカラムアドレスca3、ca
4が順次出力される。これによりクロックサイクルT1
2、T13においてリードデータrda3、rda4が
順次読み出され、リードデータストローブ信号RSTB
aにしたがってリードデータrda3、rda4が順次
デバイスに転送される。
【0114】そして最初のアクセスサイクルa0に対す
るリードデータrda0はメモリ7からクロックサイク
ルT5に出力され、クロックサイクルT6においてメモ
リコントローラ1によってリードデータストローブ信号
RSTBaがアサートされると同時にリードデータRD
Ta〔31:0〕がデバイスaに出力される。
【0115】同様に、第2、第3、第4、第5のアクセ
スサイクルa1、a2、a3、a4に対するリードデー
タRDTa〔31:0〕はそれぞれクロックサイクルT
7、T8、T13、T14にリードデータストローブ信
号RSTBaがアサートされると同時にデバイスに出力
される。この場合、ページミスヒットによりリードトラ
ンザクションが4クロックサイクル(T6〜T9)遅延
することになる。
【0116】一方、デバイスaが先行プリチャージを必
要とするデバイス、例えば、デバイスaが描画処理装置
であって、デバイスaからアクセス要求が出力されると
きには、先行プリチャージを示すPDaがアサートされ
ているため、アクセス対象のページをアクティブ化する
ためのコマンドを生成するとともに、アクティブ化され
たページに対してリードまたはライトのアクセスを実行
するに先立って、次にアクセス対象となるページまたは
その後アクセス対象となるページに対して先行プリチャ
ージを実行するためのコマンドを生成する処理が実行さ
れる。
【0117】すなわち、デバイスaから、クロックサイ
クルT0においてRDYaがアサートされるとともにP
Daがアサートされているときには、クロックサイクル
T1においてACTVコマンドを発行し、バンク0を選
択するためのバンクアドレスb0、バンク0のうち特定
のページを選択するためのロウアドレスra0を出力
し、次のクロックサイクルT2において先行プリチャー
ジを行うためのコマンドPREを発行する。
【0118】この場合、先行プリチャージコマンドは通
常のプリチャージコマンドと同様に、アクティブ化され
たバンクに隣接するバンクであって、クロックサイクル
T1でACTVコマンドによってアクティブ化されたバ
ンクのアドレスに1を加算したアドレスのバンクが指定
される。例えば、クロックサイクルT1でACTVコマ
ンドのバンクアドレスが1の場合は、クロックサイクル
T2のPREコマンドのバンクアドレスは2となり、ク
ロックサイクルT1のACTVコマンドのバンクアドレ
スが0の場合はクロックサイクルT2のPREコマンド
のバンクアドレスは1となり、クロックサイクルT1の
ACTVコマンドのバンクアドレスが3の場合はクロッ
クサイクルT2のPREコマンドバンクアドレスは0と
なる。
【0119】バンクアドレスb1で指定されたバンクに
対するプリチャージが実行される(既にセンスアンプに
転送されているページのデータは、どのバンクのどのペ
ージのデータであるかは前の処理で分かっているため、
バンクの指定により、既にセンスアンプに転送されてい
るデータを元のページに戻すための処理が実行され
る。)と、クロックサイクルT3、T4、T5において
はREADコマンドが発行され、バンクアドレスb0で
指定されたバンクであって、ロウアドレスra0で指定
されたページのうちカラムアドレスca0、ca1、c
a2で指定されたバイトに対するリードアクセスが行わ
れる。
【0120】この後、第4のアクセスサイクルa3でペ
ージミスヒットが発生したときには(描画により、タイ
ル境界を跨ぐアクセスが実行されたとき)、バンクアド
レスb1で指定されたバンクをアクセス対象とする処理
に移行する。この場合、バンクアドレスb1で指定され
たバンクに対するプリチャージはクロックサイクルT2
において既に実行され、このバンクに属するページのデ
ータは既に元のページに戻されているため、このバンク
に属するページに対してはACTBコマンドの発行によ
ってアクティブ化が即座に実行される。この後、バンク
アドレスb1で指定されたバンクに属するページであっ
て、ロウアドレスra1で指定されページの中から指定
のデータを読み出すために、第5のアクセスサイクルa
4で発行されたREADコマンドにしたがってカラムア
ドレスca3、ca4が出力され、カラムアドレスca
3、ca4で指定されたデータ(バイト)に対するリー
ドアクセスが実行される。
【0121】このように、ページミスヒットはアクセス
がページ境界を跨ぐことによって発生するため、ページ
ミスヒットが発生するに先立って次にアクセスすべきバ
ンクに対して予め先行プリチャージを実行することで、
第4のアクセスサイクルa3でページミスヒットが発生
しても、クロックサイクルT6でACTVコマンドを発
行し、クロックサイクルT7にアクノリッジACKaを
アサートして、クロックサイクルT8にREADコマン
ドを発行することができ、ページミスヒットによるリー
ドトランザクションの遅延は2クロックサイクル(T6
〜T7)となり、図21に示すケースに比べて、先行プ
リチャージを実行することで、リードトランザクション
の遅延を削減することができ、むだ時間の短縮により、
単位時間当たりアクセス可能なデータ量が増加し、バン
ド幅の向上に寄与することができる。
【0122】また、図21、図22における処理では、
リードトランザクションの処理について述べたが、ライ
トトランザクションのときでも先行プリチャージを実行
することで、ライトトランザクションの遅延を削減する
ことができる。
【0123】このように、本実施形態においては、メモ
リ7に画像データをタイルアドレスマッピングで且つ横
方向に隣接するタイルをそれぞれ別バンクでしかもバン
クアドレスが増加する順序に配置し、画像データの読み
出しまたは画像データの書き込みを実行する場合に、ア
クセス対象であるバンクアドレスnの所定のページをア
クティブ化した直後に、バンクアドレスn+1のバンク
に対して先行プリチャージを実行するようにしているた
め、画像データの読み出しまたは書き込みの途中でタイ
ル境界を超えてページミスヒットが発生しても、次にア
クセスすべきタイルが配置されているバンクは必ずプリ
チャージがされているので、ページミスヒットによるメ
モリアクセスのオーバーヘッドを削減することができ
る。
【0124】また、本実施形態によれば、メモリコント
ローラ1は、各デバイスからのメモリアクセスを選択す
るときに、優先度にしたがって1つのデバイスを選択
し、選択したデバイスに対するアクセスを実行中に、優
先度の高いデバイスからのアクセスが要求されたときに
は、実行中のアクセスを中断し、優先度の高いデバイス
からのメモリアクセスを実行するようにしているため、
複数のデバイスからのアクセス要求が競合しても、リア
ルタイム性の高いデバイスからのアクセス要求を選択し
てメモリ7にアクセスを実行することができ、アクセス
競合による画像データのアクセス遅延を抑制することが
できる。
【0125】また、前記実施形態によれば、先行プリチ
ャージを実行しないときには、アクティブフラグとロウ
アドレスバッファRASカウンタおよびRPカウンタの
情報を参照し、ページミスヒットが発生した場合には、
アクティブ−プリチャージ間最小サイクルおよびプリチ
ャージ−アクティブ間最小サイクルを満たす範囲で最短
のタイミングでプリチャージとアクティブ化を実行する
ことができる。
【0126】
【発明の効果】以上説明したように、本発明によれば、
アクセス対象のページをアクティブ化した後、アクティ
ブ化されたページに対してアクセスを実行するに先立っ
て、その後あるいは次にアクセス対象となるバンクまた
はページに対して先行プリチャージを行っているため、
その後あるいは次にアクセス対象となるバンクまたはペ
ージに対してアクセスを行うときにプリチャージを行う
ことなく、アクティブ化を行った後、リードまたはライ
トのアクセスを行うことができ、ページミスヒットによ
って異なるページにアクセスするときでも、プリチャー
ジをした後、アクティブ化するまでの時間が不要とな
り、むだ時間を短縮することができ、効率良くアクセス
することができる。
【図面の簡単な説明】
【図1】本発明に係るメモリコントローラを適用した画
像処理システムのブロック構成図である。
【図2】画像データのリニアアドレスマッピングの構成
を説明すための構成図である。
【図3】画像データのタイルアドレスマッピングの構成
を説明するための構成図である。
【図4】本発明に係るメモリコントローラのブロック構
成図である。
【図5】アクセス調停部のブロック構成図である。
【図6】アクセス調停部のモードレジスタの設定例を示
す図である。
【図7】アクセス調停部における優先度の構成説明図で
ある。
【図8】アクセス調停部の動作を説明するためのタイム
チャートである。
【図9】アクセス調停部の動作を説明するためのタイム
チャートである。
【図10】アクセス調停部の動作を説明するためのタイ
ムチャートである。
【図11】バンク管理およびアドレス生成部のブロック
構成図である。
【図12】アドレス生成部におけるアドレスの生成例を
示す図である。
【図13】バンク状態管理部のブロック構成図である。
【図14】メモリ制御部のブロック構成図である。
【図15】コマンド生成部におけるコマンド発行制御の
状態遷移図である。
【図16】コマンド生成部におけるコマンド発行制御の
状態遷移条件を説明するための図である。
【図17】コマンド生成部におけるコマンド発行制御の
状態遷移による出力信号の状態を説明するための図であ
る。
【図18】DQM生成部におけるバイトイネーブル信号
の生成例を説明するための図である。
【図19】リードデータ制御部のブロック構成図であ
る。
【図20】データ制御部のブロック構成図である。
【図21】本発明に係るメモリコントローラにおいて先
行プリチャージを実行しないときのメモリアクセスのタ
イムチャートである。
【図22】本発明に係るメモリコントローラにおいて先
行プリチャージを行うときのメモリアクセスのタイムチ
ャートである。
【符号の説明】
1 メモリコントローラ 2 プロセッサ 3 描画処理装置 4 表示処理装置 5 ビデオ処理装置 6 入出力制御装置 7 メモリ 10 アクセス調停部 11 メモリ制御部 12 バンク管理およびアドレス生成部 14 マルチプレクス 15 データ制御部 81 ディスプレイ装置 82 ビデオカメラ装置 83 外部記憶装置 84 通信装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 中塚 康弘 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 下村 哲也 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 (72)発明者 岡田 豊 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 (72)発明者 山岸 一繁 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 Fターム(参考) 5B060 AB19 CA05 CA15 CD12

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割され
    ているダイナミックランダムアクセスメモリに対するア
    クセス要求を受けたときに、前記アクセス要求を基にア
    クセス対象のページをアクティブ化し、前記アクティブ
    化されたページに対してアクセスを実行するに先だっ
    て、その後アクセス対象となるページに対して先行プリ
    チャージを実行するメモリ制御手段を備えてなるメモリ
    コントローラ。
  2. 【請求項2】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割され
    ているダイナミックランダムアクセスメモリに対するア
    クセス要求を受けたときに、前記アクセス要求を基にア
    クセス対象のページをアクティブ化し、前記アクティブ
    化されたページに対してアクセスを実行するに先だっ
    て、その後アクセス対象となるバンクに対して先行プリ
    チャージを実行するメモリ制御手段を備えてなるメモリ
    コントローラ。
  3. 【請求項3】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割され
    ているダイナミックランダムアクセスメモリに対するア
    クセス要求を受けたときに、前記アクセス要求を基にア
    クセス対象のページをアクティブ化し、前記アクティブ
    化されたページに対してアクセスを実行するに先だっ
    て、次にアクセス対象となるページに対して先行プリチ
    ャージを実行するメモリ制御手段を備えてなるメモリコ
    ントローラ。
  4. 【請求項4】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割され
    ているダイナミックランダムアクセスメモリに対するア
    クセス要求を受けたときに、前記アクセス要求を基にア
    クセス対象のページをアクティブ化し、前記アクティブ
    化されたページに対してアクセスを実行するに先だっ
    て、次にアクセス対象となるバンクに対して先行プリチ
    ャージを実行するメモリ制御手段を備えてなるメモリコ
    ントローラ。
  5. 【請求項5】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    に対するアクセス要求を受けたときに、前記アクセス要
    求を基にアクセス対象のバンクのページをアクティブ化
    し、前記アクティブ化されたページに対してアクセスを
    実行するに先だって、その後アクセス対象となるバンク
    のページに対して先行プリチャージを実行するメモリ制
    御手段を備えてなるメモリコントローラ。
  6. 【請求項6】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    に対するアクセス要求を受けたときに、前記アクセス要
    求を基にアクセス対象のバンクのページをアクティブ化
    し、前記アクティブ化されたページに対してアクセスを
    実行するに先だって、次にアクセス対象となるバンクの
    ページに対して先行プリチャージを実行するメモリ制御
    手段を備えてなるメモリコントローラ。
  7. 【請求項7】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    に対するアクセス要求を受けたときに、前記アクセス要
    求を基にアクセス対象のバンクのページをアクティブ化
    し、この直後に次にアクセス対象となるバンクのページ
    に対して先行プリチャージを実行し、その後前記アクテ
    ィブ化されたページに対してリードまたはライトによる
    アクセスを実行するメモリ制御手段を備えてなるメモリ
    コントローラ。
  8. 【請求項8】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    と少なくとも一つ以上の処理装置に接続されて、前記処
    理装置から前記ダイナミックランダムアクセスメモリに
    対するアクセス要求を受けたときに、前記アクセス要求
    を基にアクセス対象のバンクのページをアクティブ化
    し、この直後に次にアクセス対象となるバンクのページ
    に対して先行プリチャージを実行し、その後前記アクテ
    ィブ化されたページに対してリードまたはライトによる
    アクセスを実行するメモリ制御手段を備えてなるメモリ
    コントローラ。
  9. 【請求項9】 データ記憶エリアが複数のバンクに分割
    されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    と複数の処理装置にそれぞれ接続されて、前記いずれか
    の処理装置から前記ダイナミックランダムアクセスメモ
    リに対するアクセス要求を受けたときに、前記アクセス
    要求を基にアクセス対象のバンクのページをアクティブ
    化し、この直後に次にアクセス対象となるバンクのペー
    ジに対して先行プリチャージを実行し、その後前記アク
    ティブ化されたページに対してリードまたはライトによ
    るアクセスを実行するメモリ制御手段を備えてなるメモ
    リコントローラ。
  10. 【請求項10】 請求項9に記載のメモリコントローラ
    において、前記複数の処理装置から出力されるアクセス
    要求のうちいずれか一つのアクセス要求を選択して前記
    メモリ制御手段に出力するアクセス調停手段を備え、前
    記アクセス調停手段は、前記選択したアクセス要求によ
    るアクセスが前記メモリ制御手段により実行されている
    ときに、前記選択したアクセス要求よりも優先度の高い
    アクセス要求が新たに入力されたときには前記選択した
    アクセス要求によるアクセスの中断を前記メモリ制御手
    段に指令するとともに、前記新たに入力されたアクセス
    要求によるアクセスを前記メモリ制御手段に指令してな
    ることを特徴とするメモリコントローラ。
  11. 【請求項11】 データ記憶エリアが複数のバンクに分
    割されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    と複数の処理装置にそれぞれ接続されて、前記ダイナミ
    ックランダムアクセスメモリおよび前記複数の処理装置
    とデータの授受を行うメモリコントローラにおいて、前
    記複数の処理装置から出力されるアクセス要求のうちい
    ずれか一つのアクセス要求を優先度に応じて選択して出
    力するアクセス調停手段と、前記アクセス調停手段の選
    択よるアクセス要求を受け前記アクセス要求を基にアク
    セス対象のバンクのページに対してアクセスを行うメモ
    リ制御手段とを備え、前記アクセス調停手段は、前記選
    択したアクセス要求によるアクセスが前記メモリ制御手
    段により実行されているときに、前記選択したアクセス
    要求よりも優先度の高いアクセス要求が新たに入力され
    たときには前記選択したアクセス要求によるアクセスの
    中断を前記メモリ制御手段に指令するとともに、前記新
    たに入力されたアクセス要求によるアクセスを前記メモ
    リ制御手段に指令してなることを特徴とするメモリコン
    トローラ。
  12. 【請求項12】 データ記憶エリアが複数のバンクに分
    割されているとともに各バンクが複数のページに分割さ
    れ、各ページが相隣接するページとは異なるバンクに割
    り付けられているダイナミックランダムアクセスメモリ
    と複数の処理装置にそれぞれ接続されて、前記ダイナミ
    ックランダムアクセスメモリおよび前記複数の処理装置
    とデータの授受を行うメモリコントローラにおいて、前
    記複数の処理装置から出力されるアクセス要求のうちい
    ずれか一つのアクセス要求を優先度に応じて選択して出
    力するアクセス調停手段と、前記アクセス調停手段の選
    択よるアクセス要求を受け前記アクセス要求を基にアク
    セス対象のバンクのページに対してアクセスを行うメモ
    リ制御手段と、アクセス対象のバンクがアクティブ化さ
    れているか否かを判定するバンクアクティブ化判定手段
    と、アクセス対象のページがアクティブ状態にあるか否
    かを判定するページヒット判定手段と、前記アクセス対
    象のバンクがアクティブ化されてから前記アクセス対象
    のバンクに対するプリチャージの実行が可能な最小サイ
    クルが経過したか否かを判定するアクティブ−プリチャ
    ージ間最小サイクル判定手段と、前記アクセス対象のバ
    ンクがプリチャージされてから前記アクセス対象のバン
    クに対するアクティブ化の実行が可能な最小サイクルが
    経過したか否かを判定するプリチャージ−アクティブ間
    最小サイクル判定手段とを備え、前記メモリ制御手段
    は、前記バンクアクティブ化判定手段によりアクセス対
    象のバンクがアクティブ化されていないと判定されたと
    きには、前記プリチャージ−アクティブ間最小サイクル
    判定手段から肯定の判定結果が出力されたことを条件に
    アクセス対象のページをアクティブ化するとともに、ア
    クティブ化した後ライトまたはリードによるアクセスを
    実行し、前記バンクアクティブ化判定手段によりアクセ
    ス対象のバンクがアクティブ化されていると判定された
    ときに、前記ページヒット判定手段により肯定の判定結
    果が得られたときには、直ちにライトまたはリードによ
    るアクセスを実行し、前記バンクアクティブ化判定手段
    によりアクセス対象のバンクがアクティブ化されている
    と判定されたときに、前記ページヒット判定手段により
    否定の判定結果が得られたときには、前記アクティブ−
    プリチャージ間最小サイクル判定手段から肯定の判定結
    果が出力されたことを条件に、アクセス対象のバンクを
    プリチャージし、次にアクセス対象のページに対してア
    クティブ化を実行した後にライトまたはリードによるア
    クセスを実行してなることを特徴とするメモリコントロ
    ーラ。
JP2001151223A 2001-05-21 2001-05-21 メモリコントローラ Expired - Fee Related JP3918145B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001151223A JP3918145B2 (ja) 2001-05-21 2001-05-21 メモリコントローラ
US09/962,257 US6745279B2 (en) 2001-05-21 2001-09-26 Memory controller
US10/824,504 US20040193779A1 (en) 2001-05-21 2004-04-15 Memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001151223A JP3918145B2 (ja) 2001-05-21 2001-05-21 メモリコントローラ

Publications (2)

Publication Number Publication Date
JP2002342159A true JP2002342159A (ja) 2002-11-29
JP3918145B2 JP3918145B2 (ja) 2007-05-23

Family

ID=18996111

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001151223A Expired - Fee Related JP3918145B2 (ja) 2001-05-21 2001-05-21 メモリコントローラ

Country Status (2)

Country Link
US (2) US6745279B2 (ja)
JP (1) JP3918145B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260472A (ja) * 2005-03-18 2006-09-28 Matsushita Electric Ind Co Ltd メモリアクセス装置
JP2006309702A (ja) * 2005-04-29 2006-11-09 C & S Technology Co Ltd メモリー制御システム
WO2008010397A1 (fr) * 2006-07-21 2008-01-24 Canon Kabushiki Kaisha Contrôleur de mémoire
JP2008210088A (ja) * 2007-02-26 2008-09-11 Fujitsu Ltd メモリコントローラ、半導体メモリのアクセス制御方法およびシステム
JP2009048753A (ja) * 2007-07-23 2009-03-05 Nec Electronics Corp 半導体記憶装置及びデータの格納方法
JP2011501341A (ja) * 2007-10-16 2011-01-06 エス. アクア セミコンダクター, エルエルシー アクセスとプリチャージが独立したメモリ
JP2012160256A (ja) * 2012-05-28 2012-08-23 Fujitsu Semiconductor Ltd メモリ装置,メモリコントローラ及びメモリシステム
JP2019194811A (ja) * 2018-05-02 2019-11-07 キヤノン株式会社 メモリコントローラおよびメモリコントローラで実施される方法
US10529062B2 (en) 2016-06-29 2020-01-07 Ricoh Company, Ltd. Image processing device

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216130A (ja) * 2002-01-28 2003-07-30 Nec Viewtechnology Ltd ひずみ補正機能を備えた投写型表示装置
US6806883B2 (en) * 2002-03-11 2004-10-19 Sun Microsystems, Inc. System and method for handling display device requests for display data from a frame buffer
US6993637B1 (en) * 2002-11-07 2006-01-31 Lsi Logic Corporation Unified memory system for multiple processors and method for controlling the same
US7928997B2 (en) 2003-02-06 2011-04-19 Nvidia Corporation Digital image compositing using a programmable graphics processor
JP4624715B2 (ja) * 2004-05-13 2011-02-02 ルネサスエレクトロニクス株式会社 システムlsi
CN100370436C (zh) * 2005-09-07 2008-02-20 深圳市海思半导体有限公司 一种提高存储器访问效率的方法及存储器控制器
KR100761833B1 (ko) * 2006-01-13 2007-09-28 삼성전자주식회사 화면의 라인들을 픽셀 단위로 교대로 저장하는 비디오디코딩 장치, 비디오 디코딩 방법 및 기준화면 저장 방법
US7755961B2 (en) * 2006-07-07 2010-07-13 Rao G R Mohan Memories with selective precharge
US7724593B2 (en) * 2006-07-07 2010-05-25 Rao G R Mohan Memories with front end precharge
US8271746B1 (en) * 2006-11-03 2012-09-18 Nvidia Corporation Tiering of linear clients
US8095853B2 (en) 2007-10-19 2012-01-10 S. Aqua Semiconductor Llc Digital memory with fine grain write operation
EP2264603A4 (en) * 2008-04-08 2012-09-05 Panasonic Corp MEMORY CONTROL SWITCHING AND MEMORY CONTROL METHOD
JP5233541B2 (ja) * 2008-09-17 2013-07-10 セイコーエプソン株式会社 メモリ制御回路、電子機器制御装置、および、複合機
US8380916B2 (en) 2009-06-04 2013-02-19 Micron Technology, Inc. Control of page access in memory
KR101639574B1 (ko) * 2009-12-30 2016-07-14 삼성전자주식회사 적응적 뱅크 어드레스를 제공하는 디스플레이 시스템 및 그것의 어드레스 맵핑 방법
US9333193B2 (en) 2010-09-20 2016-05-10 University Of Virginia Patent Foundation Compositions and methods for treating tuberculosis
JP2012128627A (ja) * 2010-12-15 2012-07-05 Toshiba Corp データ転送システム
CN102543159B (zh) * 2010-12-29 2014-06-25 炬才微电子(深圳)有限公司 一种ddr控制器及其实现方法和芯片
TWI710899B (zh) * 2015-10-14 2020-11-21 南韓商三星電子股份有限公司 計算系統以及其操作方法
JP6905195B2 (ja) * 2017-11-16 2021-07-21 富士通株式会社 データ転送装置、演算処理装置及びデータ転送方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5301278A (en) * 1988-04-29 1994-04-05 International Business Machines Corporation Flexible dynamic memory controller
DE69316955T2 (de) * 1992-09-18 1998-07-30 Hitachi Ltd Rechenanlage mit synchronem, dynamischem Speicher
US5732236A (en) * 1993-05-28 1998-03-24 Texas Instruments Incorporated Circuit and method for controlling access to paged DRAM banks with request prioritization and improved precharge schedule
JP3579461B2 (ja) * 1993-10-15 2004-10-20 株式会社ルネサステクノロジ データ処理システム及びデータ処理装置
JPH08255107A (ja) 1994-11-29 1996-10-01 Toshiba Corp ディスプレイコントローラ
US5748551A (en) * 1995-12-29 1998-05-05 Micron Technology, Inc. Memory device with multiple internal banks and staggered command execution
US5745913A (en) * 1996-08-05 1998-04-28 Exponential Technology, Inc. Multi-processor DRAM controller that prioritizes row-miss requests to stale banks
TW329487B (en) * 1996-10-29 1998-04-11 Mitsubishi Electric Corp Device for processing data and method therefor
JPH10134025A (ja) * 1996-10-30 1998-05-22 Mitsubishi Electric Corp 半導体集積回路
US6009489A (en) * 1997-03-14 1999-12-28 Advanced Micro Devices, Inc. Method and system for supporting non-deterministic burst lengths in a memory system employing extended data out(EDO)DRAM
US6247138B1 (en) * 1997-06-12 2001-06-12 Fujitsu Limited Timing signal generating circuit, semiconductor integrated circuit device and semiconductor integrated circuit system to which the timing signal generating circuit is applied, and signal transmission system
US5881016A (en) * 1997-06-13 1999-03-09 Cirrus Logic, Inc. Method and apparatus for optimizing power consumption and memory bandwidth in a video controller using SGRAM and SDRAM power reduction modes
US6233661B1 (en) * 1998-04-28 2001-05-15 Compaq Computer Corporation Computer system with memory controller that hides the next cycle during the current cycle
US6130843A (en) * 1998-09-02 2000-10-10 Micron Technology, Inc. Method and circuit for providing a memory device having hidden row access and row precharge times
US6181619B1 (en) * 1998-12-04 2001-01-30 Intel Corporation Selective automatic precharge of dynamic random access memory banks
US6470418B1 (en) * 1999-01-15 2002-10-22 Integrated Device Technology, Inc. Pipelining a content addressable memory cell array for low-power operation
TW457430B (en) * 1999-03-02 2001-10-01 Via Tech Inc Memory access control device

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006260472A (ja) * 2005-03-18 2006-09-28 Matsushita Electric Ind Co Ltd メモリアクセス装置
JP2006309702A (ja) * 2005-04-29 2006-11-09 C & S Technology Co Ltd メモリー制御システム
WO2008010397A1 (fr) * 2006-07-21 2008-01-24 Canon Kabushiki Kaisha Contrôleur de mémoire
JP2008027247A (ja) * 2006-07-21 2008-02-07 Canon Inc メモリコントローラ
US8019951B2 (en) 2006-07-21 2011-09-13 Canon Kabushiki Kaisha Memory controller including multiple system bus interfaces
KR100914017B1 (ko) * 2007-02-26 2009-08-28 후지쯔 마이크로일렉트로닉스 가부시키가이샤 메모리 컨트롤러, 반도체 메모리의 액세스 제어 방법 및시스템
JP2008210088A (ja) * 2007-02-26 2008-09-11 Fujitsu Ltd メモリコントローラ、半導体メモリのアクセス制御方法およびシステム
US8069303B2 (en) 2007-02-26 2011-11-29 Fujitsu Semiconductor Limited Method and apparatus for controlling memory precharge operation
JP2009048753A (ja) * 2007-07-23 2009-03-05 Nec Electronics Corp 半導体記憶装置及びデータの格納方法
JP2011501341A (ja) * 2007-10-16 2011-01-06 エス. アクア セミコンダクター, エルエルシー アクセスとプリチャージが独立したメモリ
JP2012160256A (ja) * 2012-05-28 2012-08-23 Fujitsu Semiconductor Ltd メモリ装置,メモリコントローラ及びメモリシステム
US10529062B2 (en) 2016-06-29 2020-01-07 Ricoh Company, Ltd. Image processing device
JP2019194811A (ja) * 2018-05-02 2019-11-07 キヤノン株式会社 メモリコントローラおよびメモリコントローラで実施される方法
JP7197998B2 (ja) 2018-05-02 2022-12-28 キヤノン株式会社 メモリコントローラおよびメモリコントローラで実施される方法

Also Published As

Publication number Publication date
US20040193779A1 (en) 2004-09-30
JP3918145B2 (ja) 2007-05-23
US6745279B2 (en) 2004-06-01
US20020174292A1 (en) 2002-11-21

Similar Documents

Publication Publication Date Title
JP2002342159A (ja) メモリコントローラ
JP4786209B2 (ja) メモリアクセス装置
US8032715B2 (en) Data processor
JP3976342B2 (ja) 複数のエージェントから共用メモリに同時にアクセスできるようにする方法および装置
US6104417A (en) Unified memory computer architecture with dynamic graphics memory allocation
KR100816053B1 (ko) 셀프 카피 기능을 가지는 메모리 장치, 메모리 시스템 및듀얼 포트 메모리 장치
US6591323B2 (en) Memory controller with arbitration among several strobe requests
JPH01201785A (ja) グラフィックシステム
JPH02223091A (ja) コンピュータメモリシステム
JP3290650B2 (ja) メモリ制御装置
JP2009193107A (ja) メモリアクセス装置
JPH0845269A (ja) 半導体記憶装置
US6233661B1 (en) Computer system with memory controller that hides the next cycle during the current cycle
JPH08255107A (ja) ディスプレイコントローラ
US5802581A (en) SDRAM memory controller with multiple arbitration points during a memory cycle
US6125425A (en) Memory controller performing a mid transaction refresh and handling a suspend signal
JP4250989B2 (ja) メモリアクセス制御装置
JPH10228413A (ja) メモリアクセス制御方法および装置並びにメモリシステム
US5802597A (en) SDRAM memory controller while in burst four mode supporting single data accesses
JP7414477B2 (ja) メモリコントローラ、メモリコントローラで実施される方法および装置
JP2003316642A (ja) メモリ制御回路、dma要求ブロック及びメモリアクセスシステム
JP4843216B2 (ja) メモリ制御装置
JP3720872B2 (ja) システムメモリとpciマスタ装置との間のデータの転送を最適化するための方法、およびコンピュータにおけるメモリアクセス時間を最適化するためのシステム
JPH06325570A (ja) ダイナミックメモリリフレッシュ回路
JP2006268734A (ja) メモリアクセス制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070201

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120223

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130223

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140223

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees