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

メモリコントローラ Download PDF

Info

Publication number
JP2006107245A
JP2006107245A JP2004294868A JP2004294868A JP2006107245A JP 2006107245 A JP2006107245 A JP 2006107245A JP 2004294868 A JP2004294868 A JP 2004294868A JP 2004294868 A JP2004294868 A JP 2004294868A JP 2006107245 A JP2006107245 A JP 2006107245A
Authority
JP
Japan
Prior art keywords
page
address
command
bank
entry
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.)
Withdrawn
Application number
JP2004294868A
Other languages
English (en)
Inventor
Toshiaki Minami
利秋 南
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004294868A priority Critical patent/JP2006107245A/ja
Publication of JP2006107245A publication Critical patent/JP2006107245A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Dram (AREA)

Abstract

【課題】 オープンページ方式を採るRDRAMメモリコントローラのNAPモード適用時におけるリフレッシュ動作のオーバーヘッドを低減する。
【解決手段】 ページ管理手段はリフレッシュのバンクアドレスをその時点でオープンされているページのバンクアドレスと比較し、競合を検知した場合には該競合ページエントリにクローズされていることを示す印を付ける。このときコマンド発行手段は該ページをクローズするコマンドを発行した後リフレッシュコマンドを発行する。通常のリードライト時には前記クローズされていることを示す印を参照し、必要に応じて適宜ページをオープンし、あるいは不要なクローズを行わない。このようにして無駄なNAPEntry/Exit動作を省略することができる。
【選択図】 図1

Description

本発明は情報処理装置における半導体記憶装置、とりわけDRAMの制御方法に関する。
コンピュータシステムにおける中央演算処理装置の処理能力の向上は今日まで留まるところを知らず、その基本動作クロック周波数は1GHzを超えるまでになった。一方で主記憶を成す半導体メモリデバイスの速度はそれほどには向上しておらず、両者のギャップは広がる一方である。
そのため従来よりCPUと主記憶との間に低容量ではあるがより高速なメモリ(キャッシュメモリ)を設け、記憶装置を階層化することで速度ギャップを緩衝することを計ってきた。これはCPUがメモリにアクセスする際の参照の局所性が高いことを利用し、小容量高速のキャッシュメモリにほとんどのアクセスが行われるように構成することで、主記憶の動作速度の遅さを隠蔽するものである。今日では2階層以上のキャッシュメモリを持つコンピュータシステムも珍しくはない(例えば特許文献1参照)。
しかしながら、アクセスがキャッシュにミスした場合の損失は、記憶階層が増加すると共に、また主記憶とCPUの速度さが大きくなると共に相対的に増大する。近年では動画像のようなストリーム型のデータを扱うアプリケーションが増えたことにより、データアクセスの局所性が相対的に低下し、それによりキャッシュの効果が小さくなり、CPU単体の性能が向上してもシステム全体の性能を上げることが難しくなってきた。
この問題に対する本質的な解決方法は主記憶の動作速度を上げることである。しかしながら今日のほとんどのコンピュータシステムの主記憶を構成しているDRAMのデバイス速度そのものをCPUのように大幅に上げることは難しい。従ってDRAMデバイスを中核とする周辺回路のアーキテクチャを工夫することにより実効的な動作速度を向上させなければならない。従来よりこのような考え方の下に様々な種類のDRAMが考案されてきた。近年実用化された代表的なものにはEDO-DRAM,SDRAM,DDR-SDRAMなどがある。その中でもDirectRDRAM(DRDRAM)はインターフェース部分に高いクロック周波数を用い、アクセスをパケット単位のプロトコルで行うことと、深いパイプライン処理によって高い実効転送レートを実現したものである。
図2にDRDRAMを用いたメモリシステムの構成を示す。DRDRAMではチャネルを構成するCTM/CTMN,CFM/CFMN,RQ[7:0]{ROW[2:0],COL[4:0]},DQA[8:0],DQB[8:0]およびSCK,CMD,SIOの合計33本の信号線によりメモリコントローラとの間で通信する。
メモリコントローラから個々のDRDRAMに対し、RQ[7:0]信号線上にCFM/CFMNに同期するパケットに構成されたコマンドが与えられる。パケットはRQ信号線のうちROW[2:0]を使うROWパケットとCOL[4:0]を使うCOLパケットに分けられ、それぞれ対象となるデバイスのデバイスアドレス、バンクアドレス、及びロウアドレス(ROWパケット)ないしカラムアドレス(COLパケット)を含んでいる。コマンドが書き込みコマンドである場合はそれに続いてDQA/DQB信号線上に書き込みデータが送られる。読み出しコマンドである場合はそれに続いて対象デバイスからDQA/DQB信号線上に読み出しデータが返される。
図3にROWパケット、図4にCOLパケットの詳しい構成を示す。
次にメモリコントローラがDRDRAMデバイスに対してアクセスする場合の基本動作を説明する。まずROWパケットにより対象となるデバイスの対象バンク内の1ページ(1つのロウアドレスに対応)をアクティベートする。メモリコントローラ内のコマンド発行手段はアクセスが書きこみの場合には、次いでtRCD時間以降にCOLパケット(WRコマンド)を発行し対象デバイスの対象ページ内の位置アドレス(カラムアドレス)に書きこみを行うことを通知する。このとき、オートプリチャージモードであればtRTP後に自動的にプリチャージを行わせることを同時に示す(WRAコマンド)。そしてtCWDの間隔を空けてDQA/DQBに書きこみデータをパケットとして送出する。図5に書き込み時のタイミングチャートを示す。
アクセスが読み出しの場合には、同様にtRCD時間以降にCOLパケット(RDコマンド)を発行し対象デバイスの対象ページ内の位置アドレス(カラムアドレス)から読み出しを行うことを通知する。このとき、オートプリチャージモードであればtRDP後に自動的にプリチャージを行わせることを同時に示す(RDAコマンド)。対象デバイスはtCACの間隔を空けてDQA/DQBに読み出しデータをパケットとして送出する。実際はチャネル上でメモリコントローラから各デバイスまで1クロックサイクル以上の伝播遅延が許容されているため、各デバイスはそれを考慮したタイミングで読み出しデータをチャネル上に送出する。図6にメモリコントローラの位置で見た読み出し時のタイミングチャートを示す。
これら読み出し、書き込み動作は、デバイス/バンクアドレス/ページ(ロウ)アドレスが競合しない限り最大4段のパイプライン的に行うことができる。図7に読み出し・書き込みをパイプラインで行った場合のタイミングチャートを示す。
以上はアクセス毎にページのオープン(アクティベート)・クローズ(プリチャージ)を行うクローズページポリシーを適用した場合であるが、同一ページに連続してアクセスする場合には一旦当該ページを1つのROWパケットでオープンした後、必要なだけCOLパケットを連続して発行し、最後にページをクローズするようにする(オープンページポリシー)ことで、途中のページアクティベート/プリチャージに要する時間を省くことができ、アクセスのバンド幅を大幅に向上することができる。このためにメモリコントローラ内にオープンされているページの情報を管理するページ管理手段を備え、新たにアクセスするアドレスに対応するページが既にオープンされている(ページヒット)か、あるいは競合する(ページミス、バンク競合)かを判定し、その結果に応じてコマンドを発行する。
図8は前記ページ管理手段を詳しく説明する図である。前記ページ情報として、デバイスアドレス、バンクアドレス、ロウアドレスを複数組保持している。判定にカラムアドレスは不要なため保持していない。さらにそのエントリが有効であるか否かを示す情報、およびアクセスの履歴情報を保持する。
ページヒットの判定は入力される次アドレスのうち、デバイスアドレス、バンクアドレス、ロウアドレスの全てが一致するエントリを検索する。もしそのようなエントリが存在すればページヒットである。この場合は次アドレスのアクセスのために該アドレスの存在するページをアクティベートする必要はない。
ページミスの判定は入力される次アドレスのうち、デバイスアドレス、バンクアドレスが一致し、ロウアドレスが一致しないエントリを検索する。もしそのようなエントリが存在すればページミスである。この場合該エントリに対応するページを一旦クローズ(プリチャージ)し、その後次アドレスの存在するページをオープン(アクティベート)しなければならない。その結果、前記ページ管理手段の前記ページ情報内の該エントリは次アドレスのものと入れ替えられる。
バンク競合はデバイスアドレスが一致し、かつ次アドレス中のバンクアドレスに対応するバンクとセンスアンプを共有するバンクのバンクアドレスを持つエントリを検索する。もしそのようなエントリが存在すればバンク競合であり、ページミスと同様、該エントリに対応するページを一旦クローズ(プリチャージ)し、その後次アドレスの存在するページをオープン(アクティベート)しなければならない。その結果、前記ページ管理手段の前記ページ情報内の該エントリはやはり次アドレスのものと入れ替えられる。
ページヒット、ページミス、バンク競合のいずれでもない場合は、次アドレスの存在するページをオープン(アクティベート)しなければならない。このとき前記ページ管理手段の前記ページ情報内に次アドレスに対応するエントリを追加することになる。もし前記エントリ数が、前記ページ情報として保持できる最大エントリ数を超えてしまう場合には、既に存在するエントリの中から一つを選んで入れ替えなければならない。例えば前記アクセス履歴情報を参照し、最後にアクセスされた時間が最も古いエントリを選び出し、次アドレスの存在するページと入れ替える。これによりページ情報が失われるため古いエントリに対応するページはクローズしなければならない。
図9に読み出し時においてオープンページポリシーを適用した場合のタイミングチャートを示す。
始めにアドレスA1={デバイスアドレスda, バンクアドレスba, ロウアドレスra, カラムアドレスca1,ca2}(以降{da/ba/ra/ca1,ca2}と表記)から読み出す。
まずこのアドレスの存在するページ{デバイスアドレスda, バンクアドレスba, ロウアドレスra }(以降{da/ba/ra}と表記)をアクティベートするROWパケットACT a0を発行する。ここにa0はデバイスアドレスda, バンクアドレスba、ロウアドレスraに対応する。
次いで該ページよりリードするCOLパケットRD a1, RD a2を発行する。ここにa1はデバイスアドレスda, バンクアドレスba、カラムアドレスca1、a2はデバイスアドレスda, バンクアドレスba、カラムアドレスca2に対応する。
このときの前記ページ管理手段の保持する前記ページ情報は図10のようになる。
次にアドレスA2= {da/ba/ra/ca3,ca4}から読み出す。このデバイスアドレス、バンクアドレス、ロウアドレスと前記ページ情報のエントリと比較すると、全て一致するのでこの場合ページヒットである。従ってROWパケットは省かれ該ページよりリードするCOLパケットRD a3, RD a4のみを発行する。このときの前記ページ管理手段の保持する前記ページ情報は図10のままである。
次にアドレスB1= {db/bb/rb/cb1,cb2}から読み出す。このデバイスアドレスdbはデバイスアドレスdaと異なるとすれば、ページヒット、ページミス、バンク競合のいずれでもないので、{db/bb/rb}をアクティベートするROWパケットACT b0を発行する。次いで該ページよりリードするCOLパケットRD b1, RD b2を発行する。このときの前記ページ管理手段の保持する前記ページ情報は図11のようになる。
最後にアドレスA3= {da/ba/ra/ca5,ca6}から読み出す。このデバイスアドレス、バンクアドレス、ロウアドレスと前記ページ情報のエントリと比較すると、全て一致するのでこの場合もページヒットである。従って該ページよりリードするCOLパケットRD a5, RD a6のみを発行する。このときの前記ページ管理手段の保持する前記ページ情報は図11のままである。このようにして前記ページ管理手段を用いオープンページポリシーは実現される。
ところで、DRDRAMはインターフェース部分に高周波数クロックを用いるため、動作時には多量の電力を消費する。DRDRAMは図12に示すような6つのパワーモードを持つ。このうち低消費電力モードはNAPモードおよびPowerdownモードである。
特にチャネル上に多数のデバイスが存在する場合、システムの消費電力を抑えるためにはアクセスを行わないデバイスは低消費電力モードにする必要がある。しかしPowerdownモードは通常モードに復帰するまでに時間がかかりすぎるため、システムが動作中はアクセス発生時に通常モードに戻るまでの時間が比較的短いNAPモードが用いられる。
アクセスしようとするアドレスのデバイスアドレスに対応するデバイスが、NAPモードにあるときは、アクセスに先立って該デバイスに対しNAP Exitコマンドを発行する。その後、該アドレスの存在するページをアクティベートする。この判断には前記ページ管理手段の保持する前記ページ情報が用いればよい。すなわちエントリに登録されていないデバイスは全てNAPモードにあるようにすれば、前記ページ情報のエントリにアクセスしようとするページが登録されていれば、そのデバイスはNAPモードにない。一方、ページヒット・ミス、バンク競合のいずれでもない場合は、そのデバイスはNAPモードにあるのでまずNAP Exitさせなければならない。また、エントリ数が最大値を超えないように古いエントリを削除し、対応するページをクローズする場合は、そのデバイスに他にオープンされているページが無い場合はその後NAPモードに移行させなければならない。
さて、DRDRAMも内部の記憶部分は通常のDRAMと同一の構造であるため、リフレッシュ動作が必要である。リフレッシュはページ毎に行われるが、ROWパケットによりデバイスアドレス(通常はブロードキャスト)、バンクアドレスを指定したREFA(アクティベート)、REFP(プリチャージ)コマンドの対によって各デバイスに動作指示される。ロウアドレスは各デバイスが内部で管理する。
あるバンクアドレスに対するこのREFAコマンドとREFPコマンドの間隔はtRASであり、REFAコマンドと次ぎのREFAコマンドとの間隔はtRCである。ただしこれらのコマンドも読み出し、書き込みアクセスと同様、バンクアドレスが競合しない限りパイプラン的に発行することができ、リフレッシュにかかるオーバーヘッドを大きく低減することができる。
このためメモリコントローラは内部に連続するリフレッシュコマンドのバンクアドレスが競合しないようなリフレッシュバンクアドレスを生成する手段を持つ。例えばこのリフレッシュバンクアドレス生成手段はDRDRAMのバンク構成が隣接バンク間でセンスアンプを共有する32バンク構成である場合、(0,2,4,8,10,12,14,16,...,30,1,3,....29,31)といった順にバンクアドレスを生成する。
図13にREFA/REFPコマンドをバースト発行した場合のタイミングチャートを示す。
リフレッシュコマンドをバースト発行することは、特にNAPモードを利用したパワーマネジメントを行う場合に重要である。
前述のNAPモードではインターフェース部分のクロックを停止するため、同期の維持の必要性からデバイスを長時間NAPモードに留めることができず、例えば最長でも10usといった制約がある。またNAP状態にあるときにはREFA/REFPコマンドを受け取ることができない。従ってNAPモードを用いる場合には10us毎に全デバイスを通常モードに戻し、REFA/REFPコマンドによってリフレッシュを行い、その後もともと通常モードにあったもの以外は再度NAPモードに移行させることが行われている。リフレッシュを平均的に行うとすれば10us間に必要なリフレッシュの回数は複数回になる。このとき前述の如くリフレッシュをバースト発行することでリフレッシュに係るオーバーヘッドを低減することができる。
特開昭63−254555号公報
しかしながら、前述のオープンページポリシーを適用する場合、これからリフレッシュが行われるバンクに存在するページが既にオープンされた状態にあることが起こり得る。その場合、リフレッシュに先立って先ずそのページをクローズしなければならない。これは前述のバンク競合の場合と同じである。もし3つのリフレッシュコマンドを発行しようとするとき、それらのバンクアドレスがオープンされているどのページとも競合しない場合には、前述の如く3つのリフレッシュをバースト発行することができる。しかし、もしいずれかのページと競合する場合は先ずそれらページをクローズし、その後リフレッシュコマンドを発行しなければならない。図14にリフレッシュを行うための従来フローを示す。まずNAP状態にあるデバイスを通常モードに復帰させるためNAP Exitコマンドを発行する。これはSCK,CMD,SIO及びDQA[5:0]の信号を用いて行われる。DQA[5:0]にはNAPから復帰させるデバイスアドレスを指定するが、ここではブロードキャストを指定する。この場合、NAP状態に無いデバイスはNAP Exitコマンドは無視する。次いで、前記リフレッシュバンクアドレス生成手段からの出力と、前記ページ管理手段の保持する現在オープン状態にあるページのバンクアドレスとを比較する。もし両者が競合するようであれば、当該ページを前もってクローズする。これにはROWパケットのPRERコマンドを用いる。競合するページは複数有り得るので、これを競合するページが全てクローズされるまで行う。クローズされたページに対応する前期ページ管理手段の保持する前記ページ情報内のエントリは削除される。
次いで当該バンクに対するREFAコマンドを発行する。リフレッシュはブロードキャストで全デバイス一斉に行うため、PRERコマンドとREFAコマンドとの間にはtRPの間隔が必要である。
次いで前記リフレッシュバンクアドレス生成手段にバンクアドレスを更新させる。これをリフレッシュのバースト発行回数分繰り返す。
図15に3つのリフレッシュコマンドそれぞれに一つのページが競合する場合のタイミングチャートを示す。
このようにオープンページポリシーを適用した場合、リフレッシュ時に競合するページをクローズせねばならないが、その結果競合するページに対応する前記ページ管理手段内のエントリは削除されてしまう。その場合、該エントリに対応するデバイスはNAPモードに移行させなければならない。なぜなら、ページ管理手段の持つ情報と、実際にNAPモード以外の通常モードにあるデバイスとのつじつまが合わなくなってしまうからである。
しかし、アクセスの局所性を考えると、削除されたエントリに対応するページに再度アクセスする可能性は高いと考えられる。その場合既に該ページはクローズされNAP状態にあるため、再度時間のかかるNAP Exitを行わせる必要があり、オープンページポリシーのメリットを活かせないという問題がある。
係る課題を解決するため、本発明においてはメモリコントローラ内の前記ページ管理手段に、そのエントリに対応するページがクローズされていることを示す情報を保持する手段を追加する。リフレッシュコマンドを発行する場合、競合するページをクローズするとともに該ページに対応するエントリの前記ページクローズ情報にページがクローズされている印を付ける。このとき、該ページの存在するデバイスに他にオープンされているデバイスが無くても該デバイスをNAPモードにすることはしない。この後、当該エントリに対応するページにアクセスがあった場合は、まずACTコマンドによりページをオープンし、前記ページクローズ情報をページがクローズされていない状態に戻す。
以上説明したように、本発明によれば、消費電力制御(NAPモード)とオープンページポリシーを共に適用した場合に、オープンされているページがリフレッシュ動作と競合した場合にも、該デバイスをNAPモードにする必要が無く、次のアクセス時にNAP Exitさせる必要がないため、NAPモードを適用する場合の性能低下を抑えることができる。
<実施形態1>
上記した本発明の実施の形態について更に詳細に説明すべく、本発明の一実施例について、図面を参照して詳細に説明する。
図1は本発明に係るメモリコントローラの一実施形態の構成を説明する図である。図1において、101はシステムバスインターフェース回路、102はメモリインターフェース回路であり、それぞれ外部とインターフェースするための回路である。メモリに対する書き込み、読み出し要求はシステムバス200を通じてメモリコントローラに指令され、チャネル300を通じてメモリに伝えられる。103はコマンド発行手段であり、前記要求に応じた書き込み、読み出し命令あるいはリフレッシュ命令を生成し、前記メモリインターフェース部102に与える。前記メモリインターフェース部102はこれを前述のようなコマンドパケットに変換し前記チャネル300上に送出する。104はページ管理手段であり、現在オープンされているページのアドレス情報を保持し、また新たなアドレスとの比較を行い、ページのヒット、ミス、バンク競合等を判定し、前記コマンド発行手段に伝える。さらに各エントリ毎にページのオープン/クローズ情報を保持する。105はリフレッシュタイミング生成手段であり、あらかじめ設定された時間に基づき、リフレッシュを行うべきタイミングをコマンド発生手段に通知する。106はリフレッシュバンクアドレス生成手段であり、連続するバンクアドレスが互いに競合しないようなアドレスを順次生成する。107、108はライトデータバッファ、リードデータバッファであり、それぞれ書き込み、読み出しデータを一旦保持しておき、必要なタイミングで出力するためのものである。
図16は本発明に係る前記ページ管理手段104をより詳細に説明するものである。図8に比しページクローズ情報のフィールドが追加されている。
さて、オープンされているページが無い状態から、前記システムバス200を通じ、順にアドレスA,Bに対する書き込み、アドレスCからの読み出し要求があったとする。本実施例において、アドレスAはデバイスアドレスda, バンクアドレスba,ロウアドレスraにカラムアドレスcaに割り当てられている。これを{da,ba,ra,ca}と表記する。同様にアドレスBは{db,bb,rb,cb},アドレスCは{dc,bc,rc,cc}に割り当てられている。これらアドレスA,B,Cは互いに競合しない別のページに存在する。すなわち、da,db,dcは互いに異なるか、あるいは同一デバイスであってもba,bb,bcが互いに同一でなくかつセンスアンプを共有しないバンクである。さらに前記リフレッシュバンクアドレス生成手段106がba+2,bb,bc-2の順に連続にアドレスを生成し、かついまリフレッシュバンクアドレス生成手段106はバンクアドレスba+2を出力している。
オープンページポリシーを適用する場合これら3つのアクセスが終了した時点でこの3つのページがオープンされていることになる。このとき前記リフレッシュタイミング生成手段105よりバーストリフレッシュ周期に達したことが通知されると、この後バンクアドレスba+2,bb,bc-2の順にリフレッシュが行われるが、アドレスBの存在するバンクbbはリフレッシュバンクアドレスと競合することになる。
本発明の一実施例に係るリフレッシュ時のフローチャートを図17に示す。始めにNAP Exitを行う。次のステップでは前記リフレッシュバンクアドレス生成手段106出力、すなわちba+2と、前記ページ管理手段104の保持する現在オープン状態にあるページのバンクアドレス、すなわちba,bb,bcとを比較する。バンクアドレスba+2と競合するページは無いので、このバンクをリフレッシュし、次いで前記リフレッシュバンクアドレス生成手段106のバンクアドレスが更新されbbとなる。これはバンクアドレスがbbであるアドレスBの存在するページと競合するので、当該ページをPRERコマンドによりクローズする。このとき当該エントリのページクローズ情報を'1'にセットする。バンクアドレスbbと競合するページは他に無いので、該バンクをリフレッシュし、前記リフレッシュバンクアドレス生成手段106のバンクアドレスが更新されbc-2となる。このバンクアドレスba+2と競合するページは無いので、このバンクをリフレッシュし、次いで前記リフレッシュバンクアドレス生成手段106のバンクアドレスを更新する。
この時点における前記ページ管理手段104の保持するページ情報は図18のようになる。
リフレッシュが終了すると、ROWパケットのNAPCコマンドを発行し、リフレッシュ以前にNAP状態にあったデバイスだけをNAP状態に戻す。
次に、本発明に係る、通常のリード・ライトアクセス時のフローを図19に示す。まずアクセスするアドレスに対応するページが、前記ページ管理手段の前記ページ情報のいずれかのエントリと一致(ページヒット)または競合(ページミス・バンク競合)するかを調べる。
ページヒットの場合、次に当該エントリのページオープン・クローズ情報を検査する。もし'1'であれば、まずこのページをオープンするためACTコマンドを発行するとともに該ページオープン・クローズ情報を'0'にする。ついでリード・ライトのためのCOLパケットを発行する。もし'0'であれば直ちにリード・ライトのためのCOLパケットを発行する。
ページミスあるいはバンク競合の場合、次に当該エントリのページオープン・クローズ情報を検査する。もし'0'であれば、まず該エントリに対応するページをクローズするためにPRERコマンドを発行する。次いでアクセスするアドレスの存在するページをオープンするためACTコマンドを発行し、ついでリード・ライトのためのCOLパケットを発行する。同時に該エントリの情報を新しいページのものに入れ替える。もし'1'であれば、該エントリに対応するページは既にクローズされているので、直ちにアクセスするアドレスの存在するページをオープンするためACTコマンドを発行し、ついでリード・ライトのためのCOLパケットを発行する。同時に該エントリの情報を新しいページのものに入れ替える。このとき該エントリのページオープン・クローズ情報は'0'にセットする。
ページヒット・ページミス・バンク競合のいずれでもない場合は、現在既にオープンされているページの数が前記ページ管理手段で管理するように設定された最大ページ数である場合には、前記アクセス履歴情報を参照し、アクセスされた時間が最も古いエントリにつき、当該エントリのページオープン・クローズ情報を検査する。もし'0'であれば、まず該エントリに対応するページをクローズするためにPRERコマンドを発行する。次いでアクセスするアドレスの存在するページをオープンするためACTコマンドを発行し、ついでリード・ライトのためのCOLパケットを発行する。同時に該エントリの情報を新しいページのものに入れ替える。もし'1'であれば、該エントリに対応するページは既にクローズされているので、直ちにアクセスするアドレスの存在するページをオープンするためACTコマンドを発行し、ついでリード・ライトのためのCOLパケットを発行する。同時に該エントリの情報を新しいページのものに入れ替える。このとき該エントリのページオープン・クローズ情報は'0'にセットする。
現在既にオープンされているページの数が前記ページ管理手段で管理するように設定された最大ページ数に満たない場合は、直ちにアクセスするアドレスの存在するページをオープンするためACTコマンドを発行し、ついでリード・ライトのためのCOLパケットを発行する。同時に該ページのエントリを前記ページ管理手段に追加する。このとき該エントリのページオープン・クローズ情報は'0'にセットする。
例えば図18の状態から新たにアドレスB'={db/bb/rb/cb+2}にライトアクセスが生じた場合、このアクセスはエントリ2と一致するためページヒットであり、かつ当該エントリのページクローズ情報は'1'であるから、まずROWパケットのACTコマンドによりデバイスdbのバンクbb、ロウアドレスrbをオープンした後、COLパケットのWRコマンドによってカラムアドレスcb+2に書き込みを行う。
以上において、本発明が特定の実施例に関して図示されかつ説明されたが、さらに他の修正および改善が可能であることは言うまでも無い。例えば、本実施例においてはページをクローズするコマンドとしてROWパケットのPRERコマンドを用いる例を示したが、もちろん同等の効果をもたらすCOLパケットのRDA,WRAコマンドを用いるようにしても良い。
したがって、本発明は示された特定の形式に限定されるものではなく、かつ添付の特許請求の範囲において本発明の精神および範囲から離れることのない全ての修正をカバーすることを考えていることが理解されるべきである。
本発明の実施の一形態の構成を示すブロック図。 RDRAMを用いたメモリサブシステムの構成を説明する図。 ROWパケットの構成を示す図。 COLパケットの構成を示す図。 書き込み動作時におけるチャネル上の信号のタイミングを示す図。 読み出し動作時におけるチャネル上の信号のタイミングを示す図。 チャネル上のパイプライン動作を説明する図。 従来例におけるページ管理手段を説明する図。 オープンページ時の読み出し動作のタイミングを説明する図。 従来例におけるページ管理手段の保持するページ情報の一例を説明する図。 従来例におけるページ管理手段の保持するページ情報の別の一例を説明する図。 RDRAMのパワーモードを説明する図。 リフレッシュコマンドをバースト発行する場合のタイミングを説明する図。 従来例においてリフレッシュを行うフローを説明する図。 リフレッシュコマンドがオープンされているページと競合する場合のタイミングを説明する図。 本発明の一実施例におけるページ管理手段を説明する図。 本発明の一実施例においてリフレッシュを行うフローを説明する図。 本発明の一実施例におけるページ管理手段の保持するページ情報の一例を説明する図。 本発明の一実施例においてリード・ライトアクセスをするフローを説明する図。
符号の説明
101 システムバスインターフェース回路
102 メモリインターフェース回路
103 コマンド発行手段
104 ページ管理手段
105 リフレッシュタイミング生成手段
107 ライトデータバッファ
108 リードデータバッファ
200 システムバス
300 チャネル
400 メモリコントローラ
410〜440 RDRAM
450 チャネル
460 終端子
470 クロック発振器

Claims (1)

  1. 外部から書き込み、読み出し要求を受け、前記書き込み、読み出し要求に応じて一つないし複数の記憶デバイスに対して、前記要求が書き込みである場合には、外部より受け取ったデータを前記記憶デバイスに書き込み、前記要求が読み出しである場合には、前記記憶デバイスから読み出したデータを外部に出力する記憶デバイスの制御装置であって、
    前記記憶デバイスは電力消費量の異なる複数の第一の状態をとることができ、また各自が複数の第二の動作状態をとることのできる複数の部分より構成されるダイナミック型半導体メモリであって、
    前記ダイナミック型半導体メモリに記憶保持動作を行わせる指示を与える機能を有し、
    前記記憶保持動作を行わせる指示を与えるにあたり、前もって全ての前記記憶デバイスの第一の状態を記憶保持動作の指示を受けられる状態に変更し、
    前記記憶保持動作の終了後には、前記第一の状態を前記記憶保持動作以前の状態に復帰させる手段を備え、
    前記半導体メモリの前記複数部分における第二の状態の情報を保持する手段と、
    前記半導体メモリの前記複数部分における第二の状態と、前記記憶保持動作とが競合するかどうかを判定する手段を有し、
    前記判定手段の結果に応じて、前記記憶保持動作を行う前に、前記半導体メモリの前記複数部分における第二の状態が、前記記憶保持動作と競合しないように第二の状態を変更するよう指示を与える機能を有し、
    かつ前記第二の状態の情報保持手段に、前記記憶保持動作のために前記第二の情報が変更されたことを示す情報を保持する手段を具備することを特徴とする。
JP2004294868A 2004-10-07 2004-10-07 メモリコントローラ Withdrawn JP2006107245A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004294868A JP2006107245A (ja) 2004-10-07 2004-10-07 メモリコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004294868A JP2006107245A (ja) 2004-10-07 2004-10-07 メモリコントローラ

Publications (1)

Publication Number Publication Date
JP2006107245A true JP2006107245A (ja) 2006-04-20

Family

ID=36376899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004294868A Withdrawn JP2006107245A (ja) 2004-10-07 2004-10-07 メモリコントローラ

Country Status (1)

Country Link
JP (1) JP2006107245A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011060162A (ja) * 2009-09-14 2011-03-24 Ricoh Co Ltd メモリ制御装置
JP2016526749A (ja) * 2013-07-05 2016-09-05 クアルコム,インコーポレイテッド Dramサブアレイレベルリフレッシュ
JP2016526750A (ja) * 2013-07-12 2016-09-05 クアルコム,インコーポレイテッド Dramサブアレイレベル自律リフレッシュメモリコントローラの最適化
US9959912B2 (en) 2016-02-02 2018-05-01 Qualcomm Incorporated Timed sense amplifier circuits and methods in a semiconductor memory
CN110675902A (zh) * 2018-07-03 2020-01-10 爱思开海力士有限公司 存储系统和存储系统的操作方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011060162A (ja) * 2009-09-14 2011-03-24 Ricoh Co Ltd メモリ制御装置
JP2016526749A (ja) * 2013-07-05 2016-09-05 クアルコム,インコーポレイテッド Dramサブアレイレベルリフレッシュ
JP2016526750A (ja) * 2013-07-12 2016-09-05 クアルコム,インコーポレイテッド Dramサブアレイレベル自律リフレッシュメモリコントローラの最適化
US9959912B2 (en) 2016-02-02 2018-05-01 Qualcomm Incorporated Timed sense amplifier circuits and methods in a semiconductor memory
CN110675902A (zh) * 2018-07-03 2020-01-10 爱思开海力士有限公司 存储系统和存储系统的操作方法
CN110675902B (zh) * 2018-07-03 2023-03-14 爱思开海力士有限公司 存储系统和存储系统的操作方法

Similar Documents

Publication Publication Date Title
US5999474A (en) Method and apparatus for complete hiding of the refresh of a semiconductor memory
US8127081B2 (en) Memory hub and access method having internal prefetch buffers
US6415353B1 (en) Read/write buffers for complete hiding of the refresh of a semiconductor memory and method of operating same
US8954687B2 (en) Memory hub and access method having a sequencer and internal row caching
US6370073B2 (en) Single-port multi-bank memory system having read and write buffers and method of operating same
US6484246B2 (en) High-speed random access semiconductor memory device
US6526483B1 (en) Page open hint in transactions
US6523089B2 (en) Memory controller with power management logic
KR20000011417A (ko) 반도체집적회로및데이터처리시스템
JP2001014840A (ja) 複数ラインバッファ型メモリlsi
US7328311B2 (en) Memory controller controlling cashed DRAM
US20040044832A1 (en) Precharge suggestion
KR20230069234A (ko) Dram을 위한 리프레시 관리 목록
US7146454B1 (en) Hiding refresh in 1T-SRAM architecture
JP2006107245A (ja) メモリコントローラ
JPH11353871A (ja) 半導体装置
US20070121398A1 (en) Memory controller capable of handling precharge-to-precharge restrictions
JP2006107614A (ja) メモリコントローラ
JP2006107330A (ja) メモリコントローラ
JP2006107021A (ja) メモリコントローラ
US20240062800A1 (en) Dynamic random access memory (dram) row hammering mitigation
US10929949B2 (en) Accessing a memory configured to store an image data cube
US20240020235A1 (en) Storage module supporting prefetch function and operation method thereof
TWI409816B (zh) 解決單埠靜態隨機存取記憶體之請求衝突的系統及方法
JP5393405B2 (ja) メモリ制御回路

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080108