[go: up one dir, main page]

JP2004095122A - Information processing apparatus and method, program, and memory - Google Patents

Information processing apparatus and method, program, and memory Download PDF

Info

Publication number
JP2004095122A
JP2004095122A JP2002258433A JP2002258433A JP2004095122A JP 2004095122 A JP2004095122 A JP 2004095122A JP 2002258433 A JP2002258433 A JP 2002258433A JP 2002258433 A JP2002258433 A JP 2002258433A JP 2004095122 A JP2004095122 A JP 2004095122A
Authority
JP
Japan
Prior art keywords
information
recharge
processing
refresh
recharging
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
JP2002258433A
Other languages
Japanese (ja)
Inventor
Takeshi Shimoyama
下山 健
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2002258433A priority Critical patent/JP2004095122A/en
Publication of JP2004095122A publication Critical patent/JP2004095122A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Dram (AREA)

Abstract

【課題】リフレッシュ処理が必要なメモリを有する情報処理装置の資源、および、消費電力の節約が図れることができるようにする。
【解決手段】8MバイトのDRAM24のメモリバンク61が、16K個のセルからなる領域61−1乃至61−4095に区分され、かつ、そのうちの所定の領域61−kには、領域61−1乃至61−4095のそれぞれに対する4096個のリフレッシュ可否情報が格納される。リフレッシュ制御部52は、リフレッシュ可否情報領域81のうちの8ビット分のデータのみをリフレッシュ判定レジスタ55に格納し、格納されたデータのうちの、リフレッシュ処理を行うことを表す「1」に対応するメモリバンク61の領域に対して、リフレッシュ処理の指令を表すリフレッシュ信号を出力する。本発明は、DARAMに適応可能である。
【選択図】   図5
An object of the present invention is to save resources and power consumption of an information processing apparatus having a memory that requires refresh processing.
A memory bank 61 of an 8 Mbyte DRAM 24 is divided into regions 61-1 to 61-4095 each of which includes 16K cells, and a predetermined region 61-k includes regions 61-1 to 61-6. 4096 pieces of refreshability information for each of 61 to 4095 are stored. The refresh control unit 52 stores only 8-bit data in the refresh enable / disable information area 81 in the refresh determination register 55, and corresponds to “1” indicating that a refresh process is to be performed among the stored data. A refresh signal representing a refresh processing command is output to the area of the memory bank 61. The present invention is applicable to a DRAM.
[Selection diagram] FIG.

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置および方法、プログラム、並びにメモリに関し、特に、リフレッシュ処理が必要なメモリを有する情報処理装置の資源、および、消費電力の節約が図れることができるようにした情報処理装置および方法、プログラム、並びにメモリに関する。
【0002】
【従来の技術】
大容量のデータを一時的に記憶し、かつ、読み出すことが可能なメモリの代表的なものとして、DRAM(Dynamic Random Access Memory)が普及しつつある。
【0003】
DRAMは、コンデンサと同様の構成で電荷を蓄える複数のセルからなるメモリバンクを1つ以上有しており、その記憶の原理は、各セルのそれぞれにデジタルデータに対応させて電荷を充電させ、その電荷の有無のパターンによりデータを記憶させるというものである。また、DRAMのデータの読み出し動作の原理は、所定のセルに充電された電荷を読み出し、増幅器により増幅した後、データとして読み出すというものである。
【0004】
ところで、上述したセルに蓄えられる電荷は、そのままアクセスされない状態(読み出されない状態)で放置されると放電してしまい、結果として、データが破壊されてしまう。そこで、全てのセルのそれぞれに充電された電荷を、所定の時間間隔で増幅器に読み出して増幅し、元のセルに戻すと言う、いわゆる、リフレッシュ処理が必要となる。DRAMは、このリフレッシュ処理を所定の時間間隔で繰り返すことによりデータを記憶し続けることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、上述したように、リフレッシュ処理は、全てのセル(DRAMの全記憶領域)に対して、一定の時間間隔で繰り返し充電処理が実行されることが多く、その処理に大きな電力が消費されてしまうという課題があった。
【0006】
そこで、この課題を解決するために、DRAMの全記憶領域のうちの、リフレッシュ処理が必要な領域のみに対して、個別にリフレッシュ処理を行う手法が提案されている(例えば、特許文献1参照)。
【0007】
図1は、そのような手法が適用される情報処理装置のうちのデータ記憶部分の構成例を表している。
【0008】
即ち、図1に示されるように、情報処理装置の従来のデータ記憶部分には、情報処理装置全体の処理を制御するCPU(Central Processing Unit)1、CPU1の制御に基づいて、DRAM3に対するデータの記憶の制御を行うDRAMコントローラ2、DRAM3、および、DRAM3が、複数の記録領域(セル群)に区分され、その区分された記録領域が1回のリフレッシュ処理の単位とされる場合、区分された全ての記憶領域のそれぞれに対して、電荷の再充電を行うか否かを指令する情報(以下、そのような情報を、リフレッシュ可否情報と称する)が記憶されるリフレッシュ可否情報レジスタ4が設けられている。
【0009】
DRAMコントローラ2には、リフレッシュ可否情報レジスタ4の内容に基づいて、DRAM3に対して、上述したリフレッシュ処理の実行を制御するリフレッシュ制御部2−1が設けられている。
【0010】
図1に示される全体(データ記憶部分)のデータの記憶、および、その読み出しに関する動作については、例えば、特許文献1にその詳細が開示されている。従って、ここでは、それらの説明は省略し、以下、リフレッシュ処理についてのみ説明する。
【0011】
例えば、いま、DRAM3は、64個のセルを有しており(64ビットのDRAM3であり)、そのうちの8個のセル毎にリフレッシュ処理が行われるとする。即ち、DRAM3は、8個のセルからなる8つの記憶領域(=64[個]/8[個/記憶領域])に区分され、その8つの記憶領域のそれぞれがリフレッシュ処理の1単位とされる。
【0012】
この場合、リフレッシュ可否情報レジスタ4には、8つの記憶領域のそれぞれに対するリフレッシュ可否情報が記憶される。具体的には、例えば、所定の記憶領域に対応するリフレッシュ可否情報として、「1」と「0」のうちのいずれか一方の値が記憶される。「1」は、リフレッシュ処理を行うことを表しており、それに対して、「0」は、リフレッシュ処理を行わないことを表している。従って、リフレッシュ可否情報レジスタ4には、8つの記憶領域のそれぞれのリフレッシュ可否情報を表す8ビットのデータが格納される。
【0013】
リフレッシュ制御部2−1は、このリフレッシュ可否情報レジスタ4に格納された8ビットのデータの各ビットデータのそれぞれを順次読み出し、読み出したビットデータ(リフレッシュ可否情報)が「1」であった場合、そのビットデータに対応する記憶領域に対して、リフレッシュ処理を実行する。これに対して、リフレッシュ制御部2−1は、読み出したビットデータ(リフレッシュ可否情報)が「0」であった場合、そのビットデータに対応する記憶領域に対して、リフレッシュ処理を抑制する(リフレッシュ処理の実行を禁止する)。
【0014】
これにより、リフレッシュ処理による消費電力の低減が可能となり、さらに、リフレッシュ処理による読み出し処理の遅延の抑制と、読み出し処理の高速化が可能になる。
【0015】
ところで、上述した例のように、DRAM3の容量が小さい場合(上述した例では、64ビットの場合)、リフレッシュ可否情報の個数も少なく(上述した例では、8個であり)、それに伴い、リフレッシュ可否情報を記憶するリフレッシュ可否情報レジスタ4も小さくなり(上述した例では、8ビットのレジスタであり)、特に大きな問題は生じない。
【0016】
しかしながら、実際のDRAM3の容量は、上述した例に比較して遥かに大きく、その分、リフレッシュ可否情報の個数も多くなり、その結果、リフレッシュ可否情報レジスタ4も大きなものとなってしまう。例えば、DRAM3の容量が8Mバイトとされ、かつ、リフレッシュ処理の単位が16Kビット(16K個のセル)とされた場合、リフレッシュ可否情報は、4096個(8M×8[ビット]/16K[ビット]=4K[ビット])必要であり、その結果、リフレッシュ可否情報レジスタ4は、4096ビット(512バイト)の大きなレジスタとなってしまう。
【0017】
このように、DRAM3の容量が大きくなるにつれ、それに比例して、リフレッシュ可否情報レジスタ4も大きくなってしまい、リフレッシュ処理による消費電力の抑制がたとえ可能になったとしても、今度は、リフレッシュ可否情報レジスタ4自身の消費電力が増大してしまい、結果として、情報処理装置全体の消費電力の抑制が困難になるという課題があった。
【0018】
また、リフレッシュ可否情報レジスタ4が大きくなることは、ハードウエア資源の点からも不利になるという課題があった。
【0019】
本発明は、このような状況に鑑みてなされたものであり、リフレッシュ処理が必要なメモリを有する情報処理装置の資源、および、消費電力の節約が図れることができるようにするものである。
【0020】
【特許文献1】
特開平9−306164号公報
【0021】
【課題を解決するための手段】
本発明の情報処理装置は、1個以上のメモリバンクを有し、各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部と、データ記憶部を所定の数のセルごとに区分した複数の記憶領域に対して再充電処理を行う再充電処理手段と、複数に区分された記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報をデータ記憶部内に記憶させるように制御する記憶制御処理手段と、再充電可否情報に基づいて、記憶領域のそれぞれに対して再充電処理が行われるように再充電処理手段を制御する指令を出力する再充電制御処理手段とを備えることを特徴とする。
【0022】
データ記憶部に記憶されている、複数の記憶領域に対する再充電可否情報のうち、全ての記憶領域の数より少ない所定数分の記憶領域に対応する再充電可否情報をデータ記憶部から取得し記憶する再充電判定情報レジスタをさらに設け、再充電制御処理手段は、再充電判定情報レジスタ内の再充電可否情報に基づいて、記憶領域の再充電処理が行われるように再充電処理手段を制御する指令を出力するようにすることができる。
【0023】
再充電判定情報レジスタは、データ記憶部から所定数分だけ取得した再充電可否情報の全てに対応する記憶領域に対して、再充電処理手段による再充電処理が行われると、データ記憶部から所定数分の再充電判定情報を更に取得し記憶するようにすることができる。
【0024】
再充電可否情報が記憶されている先頭アドレスを記憶する先頭アドレス記憶手段をさらに設け、再充電判定情報レジスタは、先頭アドレス記憶手段に記憶された先頭アドレスに基づいて、データ記憶部から所定数分の再充電可否情報を取得し記憶するようにすることができる。
【0025】
本発明の情報処理方法は、1個以上のメモリバンクを有し、各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部を備える情報処理装置の情報処理方法において、所定の数のセルごとに区分された複数の記憶領域に対して再充電処理を行う再充電処理工程と、複数に区分された記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報をデータ記憶部内に記憶させるように制御する記憶制御処理工程と、再充電可否情報に基づいて、記憶領域のそれぞれに対して再充電処理を行うように再充電処理工程での処理を制御する指令を出力する再充電制御処理工程とを備えることを特徴とする。
【0026】
本発明のプログラムは、1個以上のメモリバンクを有し、各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部を備えるコンピュータに、所定の数のセルごとに区分された複数の記憶領域に対して再充電処理を行う再充電処理工程と、複数に区分された記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報をデータ記憶部内に記憶させるように制御する記憶制御処理工程と、再充電可否情報に基づいて、記憶領域のそれぞれに対して再充電処理を行うように再充電処理工程での処理を制御する指令を出力する再充電制御処理工程とを実行させることを特徴とする。
【0027】
本発明の情報処理装置および方法、並びにプログラムにおいては、1個以上のメモリバンクを有し、各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部が、所定の数のセルごとに区分された複数の記憶領域に対して再充電処理が行われる場合、複数に区分された記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報がデータ記憶部内に記憶され、その再充電可否情報に基づいて、記憶領域のそれぞれに対する再充電処理の可否の指令が出力される。
【0028】
本発明の情報処理装置は、記憶するデータとして、自分自身で生成したものを使用してもよいし、外部から入力したものを使用してもよい。さらに、本発明の情報処理装置は、自分自身で生成したデータ、および、外部から入力したデータのいずれも記憶可能な装置であってもよい。
【0029】
本発明のメモリは、1個以上のメモリバンクを有し、電荷を充電させることによりデータを記憶する複数のセルを所定の数ごとに区分した記憶領域のそれぞれに対して再充電処理を行う再充電処理手段と、記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報が記憶されている記憶領域から、再充電可否情報を取得する再充電可否情報取得処理手段と、再充電可否情報取得処理手段により取得された再充電可否情報に基づいて、記憶領域のそれぞれに対して再充電処理が行われるように再充電処理手段を制御する指令を出力する再充電制御処理手段とを備えることを特徴とする。
【0030】
複数の記憶領域に対する再充電可否情報のうち、全ての記憶領域の数より少ない所定数分の記憶領域に対応する再充電可否情報を記憶する再充電判定情報レジスタをさらに設け、再充電可否情報取得処理手段は、取得した再充電可否情報を再充電判定情報レジスタに記憶させ、再充電制御処理手段は、再充電判定情報レジスタ内の再充電可否情報に基づいて、記憶領域の再充電処理が行われるように再充電処理手段を制御する指令を出力するようにすることができる。
【0031】
本発明のメモリにおいては、電荷を充電させることによりデータを記憶する複数のセルを所定の数ごとに区分した記憶領域のそれぞれに対して再充電処理が行われる場合、記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報が記憶されている記憶領域から、再充電可否情報が取得され、取得された再充電可否情報に基づいて、記憶領域のそれぞれに対する再充電処理可否の指令が出力される。
【0032】
本発明のメモリは、記憶するデータとして、自分自身で生成したものを使用してもよいし、外部から入力したものを使用してもよい。さらに、本発明のメモリは、自分自身で生成したデータ、および、外部から入力したデータのいずれも記憶可能な装置であってもよい。
【0033】
また、本発明のメモリは、情報処理装置のメモリとして、その情報処理装置の構成部品として内蔵されてもよいし、その情報処理装置から着脱自在な外部装置若しくは、情報処理装置のドライブに着脱可能な記録媒体とされてもよい。
【0034】
【発明の実施の形態】
図2は、本発明が適用される情報処理装置の構成例を表している。
【0035】
図2の情報処理装置11において、CPU(Central Processing Unit)21は、HDD(Hard Disc Drive)31に記憶された各種アプリケーションプログラムや、OS(Operating System)を実際に実行する。ROM(Read−only Memory)27は、一般的には、CPU21が使用するプログラムや演算用のパラメータのうちの基本的に固定のデータを格納する。DRAMコントローラ23は、CPU21の指令に基づいて、DRAM24を制御する。より具体的には、DRAMコントローラ23は、DRAM24を制御する制御信号を発生し、DRAM24にCPU21の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納させる。DRAM24については、詳細を後述する。これらは図示せぬCPUバスなどから構成され、また、CPU21、ROM27、および、DRAM24は、図示せぬホストバスにより接続され、ブリッジ25を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス26に接続されている。
【0036】
キーボード28は、CPU21に各種の指令を入力するとき、ユーザにより操作される。マウス29は、ディスプレイ30の画面上のポイントの指示や選択を行うとき、ユーザにより操作される。ディスプレイ30は、液晶表示装置(LCD:Liquid Crystal Display)またはCRT(Cathode Ray Tube)などから成り、各種情報をテキストやイメージで表示する。HDD31は、ハードディスクを駆動し、それらにCPU21によって実行するプログラムや情報を記録または再生させる。
【0037】
ドライブ32は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または、半導体メモリ等よりなるリムーバブル記録媒体33に記録されているデータまたはプログラムを読み出して、そのデータまたはプログラムを、インタフェース27、外部バス26、ブリッジ25、CPU21、および、DRAMコントローラ23を介してDRAM24に供給する。
【0038】
これらのキーボード28乃至HDD31は、インタフェース27に接続されており、インタフェース27は、外部バス26、ブリッジ25、および、ホストバス(図示せず)を介してCPU21に接続されている。
【0039】
次に、図3を参照して、DRAM24の構成について説明する。
【0040】
メモリバンク61は、実際にデータを記憶するものであり、複数のセル71から構成されている。各セル71のそれぞれは、コンデンサ状の構成となっており、データに対応して、各セル71のそれぞれを電荷が充電された状態とするか、または、充電されない状態とし、各セル71のそれぞれの充電状態のパターンによりデータを記憶するものである。
【0041】
いまの場合、セル71は、1個のメモリバンク61に対して16K×4096個設けられている例を示しているが、当然のことながら、セル71の数は、これ以外の数であってもよい。また、メモリバンク61上の行毎のセル71の集まり(セル群)は、特にページと称されている。この例においては、後述するように、このページがリフレッシュ処理の単位となる。なお、以下、リフレッシュ処理の1単位を、単に1領域と称する。即ち、この例においては、ページもまた、適宜領域と称される。
【0042】
さらに、メモリバンク61は、後述するDRAMコントローラ23のリフレッシュ制御部52よりリフレッシュ信号が入力されるか、または、後述する行(領域)セレクタ63より読み出し信号が入力されると、信号が入力された行に対応するページ(領域)に含まれるセル71の電荷を全てセンスアンプ66に転送する。
【0043】
なお、図3中、メモリバンク61の縦に表示された番号(0乃至4095)は、メモリバンク61の各セル71の垂直方向の位置を示す行の番号を表している。また、メモリバンク61の横に表示された番号(0乃至16K)は、メモリバンク61の各セル71の水平方向の位置を示す列のそれぞれの番号を表している。
【0044】
行アドレスラッチ62は、後述するDRAMコントローラ23の制御信号発生部51、またはリフレッシュ制御部52より入力されるRAS(Row Address Strobe)信号を受信すると、動作状態をオンにし、メモリバンク61上の所定のセル71の位置を示すアドレスの行の情報を行(領域)セレクタ63に出力する。行(領域)セレクタ63は、行アドレスラッチ62より入力された行に対応する、メモリバンク61上の所定の領域(ページ)に読み出し信号を出力する。
【0045】
センスアンプ66は、行(領域)セレクタ63により指定された領域(ページ)に含まれる全てのセル71のデータが転送されてくると、それを受取り、さらに、所定の電位まで増幅し、再び、元の領域(ページ)に転送する。このとき、電荷が蓄積された状態で、後述する列セレクタ65より指定された列のデータの読み出し信号が入力されると、センスアンプ66は、指定された列のデータを読み出して、後述する出力アンプ67に出力する。
【0046】
なお、図3中、センスアンプ66は、1領域(ページ)分のセル71の電荷(16K個のセル71の電荷)だけしか増幅できない構成とされている。このため、リフレッシュ処理、または、読み出し処理のいずれかの1領域(ページ)分の処理のみが実行可能とされているので、後述するリフレッシュ制御部52より発生されるリフレッシュ信号、または、行(領域)セレクタ63より発生される読み出し信号は、これらの処理が、その処理の対象となる行に対して実行されるタイミングで発生されるようにCPU21により制御される。また、センスアンプ66は、複数のページ(行)に対して、リフレッシュ処理、または、読み出し処理を同時に並列処理できるよう複数個設けるようにしてもよい。
【0047】
列アドレスラッチ64は、DRAMコントローラ23(制御信号発生部51、または、リフレッシュ制御部52)から入力されるCAS(Column Address Strobe)信号を受信すると、動作状態をオンにし、メモリバンク61上のセル71の位置を示すアドレスの列の情報を列セレクタ65に出力する。列セレクタ65は、列アドレスラッチ65より入力された列に対応するセンスアンプ66上のデータの読み出し信号をセンスアンプ66に出力し、出力アンプ67に読み出させる。出力アンプ67は、入力された電荷をさらに増幅して、DRAMコントローラ23の制御信号発生部51を介して、CPU21にデータを出力したり、或いは、DRAMコントローラ23の後述するリフレッシュ判定情報レジスタ55に出力する。
【0048】
続けて、図3を参照して、DRAMコントローラ23の詳細について説明する。
【0049】
制御信号発生部51は、上述したように、CPU21から指定されたアドレスの情報に基づいて、RAS信号、および、アドレス信号をDRAM24の行アドレスラッチ62に送信するとともに、CAS信号、アドレス信号をDRAM24の列アドレスラッチ64に送信することで、DRAM24のメモリバンク61にデータを記録するとともに、DRAM24のメモリバンク61に既に記録されているデータを読み出し、CPU21に供給する。
【0050】
ところで、この例においては、上述したように、リフレッシュ処理は、1ページ(行)単位毎に実行される。即ち、16K個のセル71からなる、4096個のページ(4096個の16Kビットの領域(行))のそれぞれに対して、リフレッシュ処理が独立して実行される。
【0051】
この場合、上述したリフレッシュ可否情報は、4096個のページのそれぞれに対して1個必要とされるので、総計で4096個必要となる。即ち、DRAM24のメモリバンク61の全体に対して、16Kビット単位でリフレッシュ処理が施されるためには、4096ビット(512バイト)のリフレッシュ可否情報が必要となる。
【0052】
CPU21は、この4096ビットのリフレッシュ可否情報を記憶する特別な領域(以下、そのような特別な領域を、リフレッシュ可否情報領域と称する)をDRAM24のメモリバンク61内に確保するように、制御信号発生部51に指令する。
【0053】
例えば、いま、CPU21が、後述する図5に示されるように、DRAM24のメモリバンク61のk行目(kは、0乃至4095のうちの任意の値)の領域(ページ)61−kのうちの先頭から512バイト(4096ビット)の領域81を、リフレッシュ可否情報領域として確保することを制御信号発生部51に指令したとする。
【0054】
この場合、制御信号発生部51は、この領域81を、リフレッシュ可否情報領域として確保し、次に、CPU21より、4096個のページのそれぞれに対応する4096個のリフレッシュ可否情報(4096ビット分のリフレッシュ可否情報)が提供されると、それらを、DRAM24のメモリバンク61のリフレッシュ可否情報領域81内の対応するセル71にそれぞれ格納する。
【0055】
即ち、制御信号発生部51は、リフレッシュ可否情報領域81のうちの、リフレッシュを行うページ(領域)に対応するアドレスのそれぞれのアドレス信号、RAS信号、および、CAS信号を生成し、それらの生成した信号に基づいて、リフレッシュ可否情報領域81のうちの、リフレッシュ処理を行うページ(領域)に対応するアドレスのそれぞれに位置するセル71の電荷を充電させる。換言すると、上述したように、制御信号発生部51は、リフレッシュ可否情報領域81のうちの、リフレッシュ処理を行うページ(領域)に対応するアドレスのそれぞれには「1」を格納し、かつ、リフレッシュ処理を行わないページ(領域)に対応するアドレスのそれぞれには「0」を格納する。
【0056】
なお、このリフレッシュ可否情報は、CPU21より適宜提供され、その都度、DRAM24のメモリバンク61のリフレッシュ可否情報領域81内の対応するセル71の記憶内容が更新される(上書きされる)。
【0057】
リフレッシュ制御部52は、CPU21の制御に基づいて、上述したように、制御信号発生部51の制御によりDRAM24のメモリバンク61のリフレッシュ可否情報領域81に格納された、4096個の行(領域)のそれぞれに対応する4096個のリフレッシュ可否情報のうちの、その全ての数より少ない所定の個数(この例においては、例えば、8個)の充電可否情報を取得し、リフレッシュ判定情報レジスタ55に記憶させる。
【0058】
即ち、リフレッシュ制御部52は、これから取得する8個のリフレッシュ可否情報が格納されている、DRAM24のメモリバンク61のリフレッシュ可否情報領域81内のアドレス(以下、そのようなアドレスを、他のアドレスと区別するために、リフレッシュ可否情報アドレスと称する)のアドレス信号、および、RAS信号を、DRAM24の行アドレスラッチ62に送信するとともに、リフレッシュ可否情報アドレスのアドレス信号、および、CAS信号を列アドレスラッチ64に送信する。
【0059】
リフレッシュ制御部52はまた、CPU21の制御に基づいて、そのようにしてリフレッシュ可否情報レジスタ55に記憶された8個のリフレッシュ可否情報(8ビットのビットデータ)のそれぞれを順に読み出し、読み出したリフレッシュ可否情報が「1」であった場合、DRAM24のメモリバンク61のうちの、そのリフレッシュ可否情報に対応する行(ページ)にリフレッシュ処理を施すタイミングを示す、リフレッシュ信号を送信する。これに対して、リフレッシュ制御部52は、読み出したリフレッシュ可否情報が「0」であった場合、DRAM24のメモリバンク61のうちの、そのリフレッシュ可否情報に対応する行(ページ)に対しては、何も送信しない。
【0060】
従って、DRAM24のメモリバンク61のうちの、リフレッシュ制御部52よりリフレッシュ信号が供給された行(ページ)のセル71のそれぞれは、リフレッシュ処理が施される。これに対して、リフレッシュ制御部52よりリフレッシュ信号が供給されない行(ページ)のセル71のそれぞれは、リフレッシュ処理が抑制される(施されない)。
【0061】
先頭アドレスレジスタ53は、CPU21より供給された、リフレッシュ可否情報領域81の先頭のアドレス(以下、そのようなアドレスを、単に先頭アドレスと称する)を格納する。先頭アドレスレジスタ53に格納された先頭アドレスは、上述したリフレッシュ制御部52が、8個のリフレッシュ可否情報をリフレッシュ判定情報レジスタ55に記憶させる場合、または、リフレッシュ信号の送信の有無を制御する場合、リフレッシュ制御部52により参照される。
【0062】
ポインタ54は、リフレッシュ制御部52が、次にリフレッシュ処理の制御を行うDRAM24のメモリバンク61のページ(行)に対するリフレッシュ可否情報が記憶されているアドレス(DRAM24のメモリバンク61のリフレッシュ可否情報領域81内のアドレス)の値を格納する。
【0063】
リフレッシュ判定情報レジスタ55は、上述したように、リフレッシュ制御部52の制御に基づいて、リフレッシュ制御部52がこれからリフレッシュ処理の制御を行うDRAM24のメモリバンク61の所定の個数(この例では、8個)のページ(行)のそれぞれに対応するリフレッシュ可否情報を格納する。即ち、この例のリフレッシュ判定情報レジスタ55は、8ビットのレジスタとされる。
【0064】
次に、DRAMコントローラ23のデータの読み出し処理について説明する。即ち、CPU21からの指令により、DRAMコントローラ23(制御信号発生部51、または、リフレッシュ制御部52)がメモリバンク61の所定のセル71のデータを読み出す動作について説明する。
【0065】
例えば、CPU21からの指令により、DRAMコントローラ23がDRAM24のメモリバンク61の第4094行第1列目のセル71のデータを読み出そうとする場合、CPU21は、DRAMコントローラ23に第4094行第1列目のセル71のデータを読み出すように指令する。DRAMコントローラ23は、この指令を受け取ると、RAS信号を行アドレスラッチ62に出力した後、対応するアドレスの信号を行アドレスラッチ62、および、列アドレスラッチ64に出力する。行アドレスラッチ62は、RAS信号をDRAMコントローラ23より受け取ると、その動作をオン状態にし、続けて受信されるアドレス情報の行の情報を行(領域)セレクタ63に出力する。従って、今の場合、「第4094行目」という情報が、行(領域)セレクタ63に出力される。
【0066】
行(領域)セレクタ63は、行アドレスラッチ62から入力された行の情報に基づいて、その行に対応するページ(領域)のセル71の電荷をセンスアンプ66に転送させる読み出し信号を出力する。すると、いまの場合、メモリバンク61上の図中点線で囲まれた第4094行目のページ(領域)のセル71の電荷が、センスアンプ66に出力される。センスアンプ66は、転送されてきた各電荷のそれぞれの電荷量を所定の値まで、増幅させる。
【0067】
このとき、DRAMコントローラ23は、CAS信号を列アドレスラッチ64に出力する。列アドレスラッチ64は、CAS信号をDRAMコントローラ23より受け取ると、その動作をオン状態にし、続けて受信されるアドレス情報の列の情報を列セレクタ65に出力する。従って、いまの場合、「第1列目」という情報が、列セレクタ65に出力される。
【0068】
列セレクタ65は、入力された列の情報に基づいて、その列に対応するセンスアンプ66で増幅された電荷を出力アンプ67に転送させる読み出し信号を出力する。即ち、いまの場合、センスアンプ66は、この読み出し信号に基づいて、図中点線で囲まれた第1列目のセルの電荷を、出力アンプ67に出力する。出力アンプ67は、転送されてきた電荷の電荷量を転送に必要な所定の値まで増幅させた後、DRAMコントローラ23に出力する。なお、この後、センスアンプ66は、増幅した第4094行目のページ(領域)に対応する各電荷のそれぞれを、再びメモリバンク61上の対応する元のセル71に戻す。従って、データの読み出しがなされた(いまの場合、第4094行目の)ページ(領域)上の16K個の(全ての)セル71は、充電電荷量が元の状態(満充電状態)に戻されている。
【0069】
以上のような動作により、CPU11より指定されたデータがDRAM14より読み出される。なお、DRAM14にデータが記録される動作は、基本的に上述した読み出しの動作と同様であるので、その説明は省略する。
【0070】
次に、図4のフローチャートを参照して、DRAMコントローラ23のリフレッシュ制御部52の処理について説明する。
【0071】
なお、この例においては、図5に示されるように、DRAM24のメモリバンク61の第k行目の領域(ページ)61−kの先頭から512バイト(4096ビット)の領域81が、上述したリフレッシュ可否情報領域とされている。
【0072】
また、この例においては、例えば、リフレッシュ可否情報領域81の先頭アドレスは、P(Pは、任意の整数値)とされ、アドレスP乃至(P+4095)のそれぞれには、その順番に、メモリバンク61の領域(ページ)61−0乃至61−4095のそれぞれに対応するリフレッシュ可否情報が、図5に示されるように記録されている。
【0073】
例えば、図5中、リフレッシュ可否情報領域81のアドレスPには「0」が記憶されており、これは、アドレスPに対応するメモリバンク61の領域(ページ)61−0(メモリバンク61の第0行目の16K個のセル71(図3))に対しては、リフレッシュ処理が抑制される(行われない)ことを表している。これに対して、アドレス(P+1)には「1」が記憶されており、これは、アドレス(P+1)に対応するメモリバンク61の領域(ページ)61−1(メモリバンク61の第1行目の16K個のセル71(図3))に対しては、リフレッシュ処理が行われることを表している。なお、アドレス(P+2)乃至(P+4095)のそれぞれについても、同様とされる。
【0074】
この場合、はじめに、図4のステップS1において、リフレッシュ制御部52は、ポインタ54を初期化する。具体的には、この例においては、図5に示されるように、先頭アドレスレジスタ53に先頭アドレスPが格納されており、リフレッシュ制御部52は、この先頭アドレスレジスタ53に格納されている先頭アドレスPを、ポインタ54に記憶させる。
【0075】
ステップS2において、リフレッシュ制御部52は、DRAM24(メモリバンク61)のリフレッシュ可否情報領域81内のデータのうちの所定の一部のデータを読み出し、リフレッシュ判定情報レジスタ55に格納する。
【0076】
この例においては、上述したように、リフレッシュ判定情報レジスタ55は、8ビットのレジスタとされているので、図5に示されるように、4096ビットのリフレッシュ可否情報領域81のうちの所定の8ビットの領域のそれぞれに格納されている8個のデータ(8ビットのビットデータ)が読み出され、DRAMコントローラ23のリフレッシュ判定情報レジスタ55に格納される。いまの場合、図5に示されるように、リフレッシュ可否情報領域81のうちの先頭アドレスP乃至アドレス(P+7)のそれぞれに格納されている8個のデータ81−1が読み出され、リフレッシュ判定情報レジスタ55に格納される。
【0077】
なお、リフレッシュ制御部52は、上述した8個のデータ81−1のそれぞれに対して、先頭アドレスP乃至アドレス(P+7)の順に、上述したデータの読み出し動作を実行することで、8個のデータ81−1のそれぞれを、リフレッシュ判定情報レジスタ55に格納させる。
【0078】
次に、ステップS3において、リフレッシュ制御部52は、リフレッシュ判定情報レジスタ55に格納されたデータ(いまの場合、8個のデータ81−1)のうちのポインタ54が指定するデータが、リフレッシュ可のデータであるか(「1」であるか)否かを判定する。
【0079】
いまの場合、ポインタ54には、先頭アドレスPが格納されているので、リフレッシュ制御部52は、リフレッシュ判定情報レジスタ55に格納されている先頭アドレスPに対応するリフレッシュ可否情報(データ)を検知する。
【0080】
図5に示されるように、先頭アドレスPに対応するリフレッシュ可否情報(リフレッシュ判定情報レジスタ55の先頭ビット(0ビット目)のデータ)は「0」とされているので、リフレッシュ制御部52は、ステップS3において、ポインタが指定するデータ(先頭アドレスPに対応するデータ)が、リフレッシュ可のデータではない(リフレッシュ処理を行わない)と判定し、ステップS5において、ポインタ54の値を進める。即ち、いまの場合、ポインタ54には、先頭アドレスPの次のアドレス(P+1)が格納される。
【0081】
このようにして、ステップS3の処理で、ポインタ54が指定するリフレッシュ可否情報が「0」であると判定した場合(リフレッシュ可の情報ではないと判定した場合)、リフレッシュ制御部81は、そのポインタ54が指定するリフレッシュ可否情報に対応するデータバンク61の領域(ページ)に対して、リフレッシュ処理を抑制する(リフレッシュ処理を行わない)。
【0082】
そして、ステップS6において、リフレッシュ制御部52は、ポインタ54が指定するデータが、リフレッシュ判定情報レジスタ55に格納されているか否かを判定する。
【0083】
いまの場合、ステップS5の処理でポインタ54には、アドレス(P+1)が格納され、このアドレス(P+1)に対応するデータ(リフレッシュ可否情報)が、図5に示されるように、リフレッシュ判定情報レジスタ55の1ビット目に格納されているので、ステップS6において、ポインタ54が指定するデータが、リフレッシュ判定情報レジスタ55に格納されていると判定され、処理はステップS3に戻り、それ以降の処理が繰り返される。
【0084】
即ち、今度は、リフレッシュ制御部52は、ステップS3の処理で、アドレス(P+1)に対応するリフレッシュ可否情報(ポインタ54が指定するデータ)が、リフレッシュ可のデータであるか否かを判定する。
【0085】
いまの場合、図5に示されるように、ポインタ54には、アドレス(P+1)が格納されているので、リフレッシュ制御部52は、リフレッシュ判定情報レジスタ55に格納されているアドレス(P+1)に対応するリフレッシュ可否情報(1ビット目のデータ)を検知する。
【0086】
アドレス(P+1)に対応するリフレッシュ可否情報(リフレッシュ判定情報レジスタ55の1ビット目のデータ)は「1」とされているので、リフレッシュ制御部52は、ステップS3において、ポインタが指定するデータ(アドレス(P+1)に対応するデータ)が、リフレッシュ可のデータである(リフレッシュ処理を行う)と判定し、ステップS4において、DRAM24のデータバンク61のうちの、リフレッシュ可のデータに対応する領域(いまの場合、図5に示されるように、アドレス(P+1)に対応する領域61−1(図3のメモリバンク61の第1行目のページの16K個のセル71))に対して、リフレッシュ処理を行う。
【0087】
即ち、リフレッシュ制御部52は、上述したように、図3のメモリバンク61の第1行目のページ(領域)に、リフレッシュ信号を出力する。リフレッシュ信号が、メモリバンク61の第1行目のページ(図5の領域61−1)に入力されると、その第1行目のページに含まれる16K個のセル71の電荷が全てセンスアンプ66に転送される。センスアンプ66は、メモリバンク61の第1行目のページに含まれる全てのセル71のデータが転送されてくると、それを受取り、さらに、所定の電位まで増幅し、再び、第1行目のページに転送する。
【0088】
このようにして、図4のステップS3の処理で、ポインタ54が指定するリフレッシュ可否情報が「1」であると判定した場合(リフレッシュ可の情報であると判定した場合)、リフレッシュ制御部52は、そのポインタ54が指定するリフレッシュ可否情報に対応するデータバンク61の領域(ページ)に対して、リフレッシュ処理を実行する。
【0089】
そして、いまの場合、リフレッシュ制御部52は、ステップS5の処理で、ポインタ54の値を、アドレス(P+1)の次のアドレス(P+2)に進め(格納し)、ステップS6の処理で、ポインタ54が指定するデータが、リフレッシュ判定情報レジスタ55に格納されていると判定し、その処理をステップS3に戻し、それ以降の処理を繰り返す。
【0090】
即ち、リフレッシュ制御部52は、アドレス(P+2)乃至(P+7)のそれぞれに対応するリフレッシュ可否情報(リフレッシュ判定情報レジスタ55の2乃至7ビット目までのデータ)のそれぞれに対して、上述したステップS3乃至S6の処理を繰り返す。
【0091】
いまの場合、図5に示されるように、アドレス(p+2)乃至(p+5)に対応するリフレッシュ可否情報(リフレッシュ判定情報レジスタ55の2乃至5ビット目のデータ)は「1」とされているので、アドレス(p+2)乃至(p+5)に対応するデータバンク61の領域61−2乃至61−5(領域61−4と領域61−5は図示せず(省略))のそれぞれに対しては、リフレッシュ処理が施される。これに対して、アドレス(p+6)とアドレス(p+7)に対応するリフレッシュ可否情報(リフレッシュ判定情報レジスタ55の6ビット目と7ビット目のデータ)は「0」とされているので、アドレス(p+6)とアドレス(p+7)に対応するデータバンク61の領域61−6と領域61−7(図示せず(省略))のそれぞれに対しては、リフレッシュ処理が抑制される(施されない)。
【0092】
アドレス(p+7)に対応するデータバンク61の領域61−7に対して、リフレッシュ処理が抑制され、ステップS5の処理で、ポインタ54の値が、アドレス(p+8)に進められると、ステップS6において、ポインタが指定するデータが、リフレッシュ判定情報レジスタ55に格納されていないと判定される。
【0093】
そして、リフレッシュ制御部52は、ステップS7において、DRAM24のデータバンク61の全てを処理したか否かを判定する。
【0094】
いまの場合、DRAM24のデータバンク64の領域61−0乃至61−7のみしか処理が行われていないので、ステップS7において、DRAM24のデータバンク61の全てがまだ処理していないと判定され、処理はステップS2に戻り、それ以降の処理が繰り返される。
【0095】
即ち、リフレッシュ制御部52は、リフレッシュ可否情報領域81のうちの、いま処理した先頭の8ビットのデータ81−1に続く8ビットのデータ81−2を読み出し、リフレッシュ判定情報レジスタ55に格納させ(上書きし)、リフレッシュ判定情報レジスタ55に格納されたリフレッシュ可否情報(領域61−8乃至61−17(図示せず(省略))に対するリフレッシュ可否情報)のそれぞれに基づいて、DRAM24のうちの、対応する領域(領域61−8乃至61−17のうちのいずれか)に対して、リフレッシュ処理、および、リフレッシュ処理の抑制のうちのいずれか一方の処理を実行する。
【0096】
以上の処理が繰り返され、即ち、リフレッシュ可否情報領域81のうちの、所定の連続する8ビットのデータ(8個のリフレッシュ可否情報)が、先頭アドレスPから順に、リフレッシュ判定情報レジスタ55に順次格納され、リフレッシュ判定情報レジスタ55に格納されたリフレッシュ可否情報に基づいて、DRAM24のデータバンク61の対応する領域(対応する行のページ)に対して、リフレッシュ処理、および、リフレッシュ処理の抑制のうちのいずれか一方の処理が実行される。
【0097】
そして、この処理が、アドレス(p+4095)に対応するDRAM24のデータバンク61の領域61−4095(第4095行目のページ)まで実行されると、ステップS7において、DRAM24のデータバンク61の全てのデータを処理したと判定され、その処理が終了される。
【0098】
以上、説明したように、図2の情報処理装置11においては、図3に示されるように、DRAM24のメモリバンク61の全てのリフレッシュ可否情報(上述した例では、リフレッシュ処理の単位が1行のページ(領域)とされ、第1乃至第4095行のページ(領域)のそれぞれに対応する4096ビットのリフレッシュ可否情報)が、メモリバンク61自身に記録され、リフレッシュ処理が行われる場合、そのうちの所定のビットのデータのみが(上述した例では、8ビットのデータのみが)、DRAMコントローラ23のリフレッシュ判定情報レジスタ55に格納される。
【0099】
従って、上述した図1に示されるような、従来、必要とされたリフレッシュ可否情報レジスタ4が不要となるので(リフレッシュ可否情報レジスタ4に対応するリフレッシュ可否情報領域81がDRAM24自身に確保されるので)、その分の資源の節約が可能になるとともに、その分の消費電力の節約が可能になる。即ち、本発明が適用される情報処理装置11は、上述した課題を解決することができるという効果を奏することが可能になる。
【0100】
なお、リフレッシュ可否情報の内容は、CPUによって適宜書き換えられる。
【0101】
ところで、図3の例では、DRAMコントローラ23は、DRAM24とは別の装置とされたが、DRAM24自身に搭載されても構わない。
【0102】
また、本発明が適用される情報記録装置(本発明が適用される情報処理装置に搭載される情報記録装置)は、上述した図3のDRAM24に限定されず、上述したリフレッシュ処理が必要な情報記録装置であれば構わない。例えば、本発明は、通常のDRAMの他、シンクロナスDRAM、ファーストページDRAM、EDO DRAM(Extended Data Out Dynamic Random Access Memory)、SDRAM、DDR SDRAM (Double Date Rate Synchronous Dynamic Random Access Memory)、または、DRDRAM(DirectRambus Dynamic Random Access Memory)などのメモリに適用可能である。
【0103】
さらに、本発明が適用される情報処理装置は、図2のパーソナルコンピュータ型の情報処理装置11に限定されず、単に、DRAM24を利用する機器であればよく、例えば、本発明は、携帯端末装置やプリンタ等に適用可能である。
【0104】
また、リフレッシュ可否情報が格納される場所は、図5の例では、DRAM24のメモリバンク61の領域61−Kの先頭の512バイト(4096ビット)のリフレッシュ可否情報領域81とされたが、図5の例に限定されず、DRAM24のデータバンク61内であれば任意の領域で構わない。
【0105】
さらに、リフレッシュ可否情報領域81のような、まとまった領域が特別に(専用に)確保されなくてもよい。例えば、「リフレッシュ処理が必要とされるのは、DRAM24のどの部分であるか」という情報は、一般的に、OSのメモリ資源の管理に相当し、ソフトウエアで管理されている。従って、そのような情報は、DRAM24のメモリバンク61の中に必ず存在し、その情報自身が、リフレッシュ可否情報として利用されてもよい。この場合、リフレッシュ可否情報領域81は不要となるので、DRAM24の資源のさらなる有効活用が可能である。
【0106】
さらにまた、上述したように、リフレッシュ可否情報領域81の容量は可変とされるので、リフレッシュ処理の単位も、上述した例に限定されず、任意の単位とすることが可能である。即ち、リフレッシュ可否情報領域81の大きさは、任意の大きさとすることが可能であり、リフレッシュ処理の1単位により決定される。
【0107】
上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることも可能であり、それを実行させるプログラムは、ネットワークや記録媒体からインストールされる。この記録媒体は、図2に示されるように、装置本体とは別に、所有者等にプログラムを提供するために配布され、ドライブ32に装着される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD−ROM(Compact Disk−Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini−Disk)を含む)、もしくは半導体メモリなどのリムーバブル記録媒体(パッケージメディア)33により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM27や、HDD31などで構成される。
【0108】
なお、本明細書において、上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0109】
【発明の効果】
以上のごとく、本発明によれば、複数のセルのうちの所定のセル群に対して、他とは独立してリフレッシュ処理を行うことができる。特に、リフレッシュの単位となるセル群のそれぞれに対するリフレッシュ処理の可否情報が、その複数のセル自身のうちのいずれかのセルに記憶されるので、複数のセルから構成されるメモリを有する情報処理装置の資源、および、消費電力のさらなる節約を可能とすることができる。
【図面の簡単な説明】
【図1】従来の情報処理装置のうちのデータの記録部分の構成例を示すブロック図である。
【図2】本発明が適用される情報処理装置の構成例を示すブロック図である。
【図3】図3の情報処理装置のDRAMと、DRAMコントローラの詳細の構成例を示すブロック図である。
【図4】図3の情報処理装置のDRAMコントローラ内のリフレッシュ制御部の処理を説明するフローチャートです。
【図5】図3の情報処理装置のDRAMコントローラ内のリフレッシュ制御部のリフレッシュ処理を説明する図である。
【符号の説明】
11 情報処理装置, 21 CPU, 23 DRAMコントローラ, 24 DRAM, 51 制御信号発生部, 52 リフレッシュ制御部, 53 先頭アドレスレジスタ, 54 ポインタ, 55 リフレッシュ判定情報レジスタ, 61 メモリバンク, 81 リフレッシュ可否情報領域
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an information processing apparatus and method, a program, and a memory, and more particularly, to an information processing apparatus having a memory that requires refresh processing, and an information processing apparatus and a power consumption that can be reduced. It relates to a method, a program and a memory.
[0002]
[Prior art]
A DRAM (Dynamic Random Access Memory) is becoming widespread as a typical memory capable of temporarily storing and reading a large amount of data.
[0003]
A DRAM has one or more memory banks composed of a plurality of cells that store electric charges in the same configuration as a capacitor. The principle of the storage is that each cell is charged with electric charges corresponding to digital data. Data is stored according to the pattern of the presence or absence of the charge. The principle of the data read operation of the DRAM is to read out the electric charge charged in a predetermined cell, amplify it by an amplifier, and then read it out as data.
[0004]
By the way, the electric charge stored in the above-mentioned cell is discharged if left as it is in a state where it is not accessed (read out), and as a result, data is destroyed. Therefore, a so-called refreshing process of reading out the charges charged in all the cells at predetermined time intervals into an amplifier, amplifying them, and returning them to the original cells is required. The DRAM can continue to store data by repeating this refresh processing at predetermined time intervals.
[0005]
[Problems to be solved by the invention]
However, as described above, in the refreshing process, the charging process is often repeatedly performed at fixed time intervals for all the cells (all storage regions of the DRAM), and a large amount of power is consumed in the process. There was a problem of getting it.
[0006]
Therefore, in order to solve this problem, a method has been proposed in which refresh processing is individually performed only on an area that requires refresh processing among all storage areas of a DRAM (for example, see Patent Document 1). .
[0007]
FIG. 1 shows a configuration example of a data storage portion of an information processing apparatus to which such a method is applied.
[0008]
That is, as shown in FIG. 1, a conventional data storage portion of the information processing apparatus stores a CPU (Central Processing Unit) 1 that controls the processing of the entire information processing apparatus, and stores data in the DRAM 3 based on the control of the CPU 1. The DRAM controller 2 for controlling storage, the DRAM 3, and the DRAM 3 are divided into a plurality of recording areas (cell groups), and when the divided recording areas are used as a unit of one refresh process, they are divided. A refresh enable / disable information register 4 is provided for storing information for instructing whether or not to recharge electric charges in each of the storage areas (hereinafter, such information is referred to as refresh enable / disable information). ing.
[0009]
The DRAM controller 2 is provided with a refresh control unit 2-1 for controlling the execution of the above-described refresh processing on the DRAM 3 based on the contents of the refresh enable / disable information register 4.
[0010]
The operation of storing and reading the entire data (data storage portion) shown in FIG. 1 is disclosed in detail in, for example, Patent Document 1. Therefore, the description thereof is omitted here, and only the refresh processing will be described below.
[0011]
For example, it is assumed that the DRAM 3 has 64 cells (the DRAM 3 is a 64-bit DRAM), and the refresh processing is performed for every eight cells. That is, the DRAM 3 is divided into eight storage regions (= 64 [units] / 8 [units / storage region]) composed of eight cells, and each of the eight storage regions is used as one unit of the refresh processing. .
[0012]
In this case, the refreshability information register 4 stores refreshability information for each of the eight storage areas. Specifically, for example, one of “1” and “0” is stored as the refreshability information corresponding to the predetermined storage area. “1” indicates that refresh processing is performed, whereas “0” indicates that refresh processing is not performed. Therefore, the refresh enable / disable information register 4 stores 8-bit data indicating the refresh enable / disable information of each of the eight storage areas.
[0013]
The refresh controller 2-1 sequentially reads out each bit data of the 8-bit data stored in the refresh enable / disable information register 4, and when the read bit data (refresh enable / disable information) is "1", The refresh process is performed on the storage area corresponding to the bit data. On the other hand, when the read bit data (refresh enable / disable information) is “0”, the refresh control unit 2-1 suppresses the refresh processing for the storage area corresponding to the bit data (refresh operation). Execution of processing is prohibited).
[0014]
This makes it possible to reduce the power consumption by the refresh processing, to suppress the delay of the read processing by the refresh processing, and to speed up the read processing.
[0015]
When the capacity of the DRAM 3 is small (64 bits in the above example) as in the above-described example, the number of refresh enable / disable information is also small (8 in the above example). The size of the refresh enable / disable information register 4 for storing the enable / disable information is also reduced (in the above-described example, the register is an 8-bit register), and no particularly serious problem occurs.
[0016]
However, the actual capacity of the DRAM 3 is much larger than that of the above-described example, and accordingly, the number of refresh enable / disable information increases, and as a result, the refresh enable / disable information register 4 also becomes large. For example, if the capacity of the DRAM 3 is 8 Mbytes and the unit of the refresh processing is 16 K bits (16 K cells), the refreshability information is 4096 (8 M × 8 [bits] / 16 K [bits]. = 4K [bits]), and as a result, the refresh enable / disable information register 4 becomes a large register of 4096 bits (512 bytes).
[0017]
As described above, as the capacity of the DRAM 3 increases, the refresh enable / disable information register 4 also increases in proportion to the capacity, and even if the power consumption can be suppressed by the refresh processing, the refresh enable / disable information is required. The power consumption of the register 4 itself increases, and as a result, there is a problem that it is difficult to suppress the power consumption of the entire information processing apparatus.
[0018]
In addition, there is a problem that increasing the refresh availability information register 4 is disadvantageous in terms of hardware resources.
[0019]
The present invention has been made in view of such a situation, and aims to save resources and power consumption of an information processing apparatus having a memory that requires a refresh process.
[0020]
[Patent Document 1]
JP-A-9-306164
[0021]
[Means for Solving the Problems]
An information processing apparatus according to the present invention includes a data storage unit having one or more memory banks and storing data by charging each of a plurality of cells included in each memory bank with a predetermined charge. Recharging processing means for performing recharging processing on a plurality of storage areas divided for every number of cells, and rechargeability indicating whether or not to perform recharging processing on each of the plurality of storage areas A storage control processing unit for controlling information to be stored in the data storage unit; and a command for controlling the recharge processing unit so that recharge processing is performed for each of the storage areas based on the rechargeability information. Recharge control processing means for outputting.
[0022]
Of the rechargeability information for a plurality of storage areas stored in the data storage unit, rechargeability information corresponding to a predetermined number of storage areas smaller than the number of all storage areas is acquired from the data storage unit and stored. The recharge control processing means controls the recharge processing means so that the storage area is recharged based on the rechargeability information in the recharge determination information register. A command can be output.
[0023]
When recharge processing is performed by the recharge processing means on the storage areas corresponding to all of the recharge enable / disable information obtained by the predetermined number from the data storage unit, the recharge determination information register stores a predetermined number of data. It is possible to further acquire and store recharge determination information for several minutes.
[0024]
Further provided is a start address storage means for storing a start address at which recharge enable / disable information is stored, and the recharge determination information register stores a predetermined number of data from the data storage unit based on the start address stored in the start address storage means. Can be obtained and stored.
[0025]
An information processing method according to the present invention includes an information processing apparatus including one or more memory banks and a data storage unit that stores data by charging each of a plurality of cells included in each memory bank with an electric charge. In the method, a recharging process step of performing a recharging process on a plurality of storage areas partitioned by a predetermined number of cells, and whether to perform a recharging process on each of the plurality of partitioned storage areas A storage control processing step of performing control to store rechargeability information indicating whether the rechargeability information is stored in the data storage unit, and a recharge processing step of performing recharge processing for each of the storage areas based on the rechargeability information. And a recharging control processing step of outputting a command for controlling the processing in step (a).
[0026]
A program according to the present invention includes: a computer having one or more memory banks and a data storage unit for storing data by charging each of a plurality of cells included in each memory bank with electric charges; A recharging process step of performing a recharging process on a plurality of storage areas divided for each, and recharge availability information indicating whether to perform a recharging process on each of the plurality of divided storage areas. A storage control processing step of controlling to store the data in the data storage unit, and a command for controlling the processing in the recharge processing step to perform the recharge processing on each of the storage areas based on the rechargeability information. And outputting a recharging control processing step.
[0027]
In the information processing apparatus and method, and the program according to the present invention, a data storage unit that has one or more memory banks, and stores data by charging each of a plurality of cells included in each memory bank with an electric charge, When recharging processing is performed on a plurality of storage areas divided for each of a predetermined number of cells, rechargeability indicating whether or not to perform recharging processing on each of the plurality of storage areas. The information is stored in the data storage unit, and an instruction is issued as to whether or not a recharging process can be performed for each of the storage areas based on the rechargeability information.
[0028]
The information processing apparatus of the present invention may use data generated by itself or data input from the outside as stored data. Further, the information processing device of the present invention may be a device capable of storing both data generated by itself and data input from the outside.
[0029]
A memory according to the present invention has one or more memory banks, and performs a recharge process for recharging each of storage areas obtained by charging a plurality of cells for storing data by charging a predetermined number of cells. Charge processing means, and a rechargeability information acquisition processing means for acquiring rechargeability information from a storage area in which rechargeability information indicating whether or not to perform recharge processing for each of the storage areas is stored. Recharging control processing for outputting a command for controlling the recharging processing means so that the recharging processing is performed for each of the storage areas based on the recharging permission information obtained by the recharging information obtaining processing means. Means.
[0030]
A recharge determination information register for storing recharge determination information corresponding to a predetermined number of storage areas smaller than the number of all storage areas among the recharge determination information for the plurality of storage areas; The processing means stores the obtained rechargeability information in the recharge determination information register, and the recharge control processing means performs a recharge process of the storage area based on the rechargeability information in the recharge determination information register. Thus, a command for controlling the recharge processing means can be output.
[0031]
In the memory of the present invention, when a recharge process is performed for each of the storage areas in which a plurality of cells that store data by charging electric charges are divided by a predetermined number, Recharge enable / disable information is obtained from a storage area storing recharge enable / disable information indicating whether or not to perform a recharge process, and a recharge process is performed on each of the storage areas based on the obtained recharge enable / disable information. A command is issued as to whether or not it is possible.
[0032]
The memory of the present invention may use data generated by itself or data input from the outside as stored data. Further, the memory of the present invention may be a device capable of storing both data generated by itself and data input from the outside.
[0033]
Further, the memory of the present invention may be incorporated as a component of the information processing device as a memory of the information processing device, or may be detachable from an external device detachable from the information processing device or a drive of the information processing device. It may be a simple recording medium.
[0034]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 2 illustrates a configuration example of an information processing apparatus to which the present invention is applied.
[0035]
In the information processing apparatus 11 of FIG. 2, a CPU (Central Processing Unit) 21 actually executes various application programs stored in a HDD (Hard Disc Drive) 31 and an OS (Operating System). A ROM (Read-Only Memory) 27 generally stores basically fixed data of programs and calculation parameters used by the CPU 21. The DRAM controller 23 controls the DRAM 24 based on a command from the CPU 21. More specifically, the DRAM controller 23 generates a control signal for controlling the DRAM 24, and causes the DRAM 24 to store a program used in the execution of the CPU 21, a parameter appropriately changed in the execution, and the like. Details of the DRAM 24 will be described later. These are composed of a CPU bus (not shown) or the like. The CPU 21, the ROM 27, and the DRAM 24 are connected by a host bus (not shown), and are connected via a bridge 25 to an external bus such as a PCI (Peripheral Component Interconnect / Interface) bus. It is connected to a bus 26.
[0036]
The keyboard 28 is operated by the user when inputting various commands to the CPU 21. The mouse 29 is operated by the user when pointing or selecting a point on the screen of the display 30. The display 30 includes a liquid crystal display (LCD) or a CRT (Cathode Ray Tube), and displays various information in text or images. The HDD 31 drives a hard disk and records or reproduces a program or information executed by the CPU 21 on the hard disk.
[0037]
The drive 32 reads data or a program recorded on a mounted magnetic disk, an optical disk, a magneto-optical disk, or a removable recording medium 33 composed of a semiconductor memory or the like, and transfers the data or the program to the interface 27 and an external device. The data is supplied to a DRAM 24 via a bus 26, a bridge 25, a CPU 21, and a DRAM controller 23.
[0038]
The keyboard 28 to the HDD 31 are connected to an interface 27. The interface 27 is connected to the CPU 21 via an external bus 26, a bridge 25, and a host bus (not shown).
[0039]
Next, the configuration of the DRAM 24 will be described with reference to FIG.
[0040]
The memory bank 61 actually stores data, and includes a plurality of cells 71. Each of the cells 71 has a capacitor-like configuration. According to data, each of the cells 71 is charged or uncharged, and each of the cells 71 is charged. The data is stored according to the charge state pattern.
[0041]
In this case, an example is shown in which 16K × 4096 cells 71 are provided for one memory bank 61. However, it goes without saying that the number of cells 71 is other than this. Is also good. A group (cell group) of cells 71 for each row on the memory bank 61 is particularly called a page. In this example, as described later, this page is a unit of the refresh processing. Hereinafter, one unit of the refresh processing is simply referred to as one area. That is, in this example, the page is also appropriately referred to as a region.
[0042]
Further, a signal is input to the memory bank 61 when a refresh signal is input from a refresh controller 52 of a DRAM controller 23 described later or a read signal is input from a row (area) selector 63 described later. All the charges of the cells 71 included in the page (region) corresponding to the row are transferred to the sense amplifier 66.
[0043]
In FIG. 3, the numbers (0 to 4095) displayed in the vertical direction of the memory bank 61 represent the numbers of the rows indicating the vertical position of each cell 71 of the memory bank 61. The numbers (0 to 16K) displayed beside the memory bank 61 represent the numbers of the columns indicating the horizontal position of each cell 71 of the memory bank 61.
[0044]
When receiving a RAS (Row Address Strobe) signal input from a control signal generating unit 51 of the DRAM controller 23 or a refresh control unit 52, which will be described later, the row address latch 62 turns on the operation state and sets a predetermined value on the memory bank 61. The information of the row of the address indicating the position of the cell 71 is output to the row (area) selector 63. The row (area) selector 63 outputs a read signal to a predetermined area (page) on the memory bank 61 corresponding to the row input from the row address latch 62.
[0045]
When the data of all the cells 71 included in the area (page) specified by the row (area) selector 63 is transferred, the sense amplifier 66 receives the data, further amplifies the data to a predetermined potential, and again Transfer to the original area (page). At this time, when a read signal for the data of the designated column is input from a column selector 65 described later in a state where the charge is accumulated, the sense amplifier 66 reads the data of the designated column and outputs the data of the designated column. Output to the amplifier 67.
[0046]
In FIG. 3, the sense amplifier 66 is configured to be able to amplify only the charges of the cells 71 for one region (page) (the charges of the 16K cells 71). For this reason, since only the processing for one area (page) of the refresh processing or the read processing can be executed, a refresh signal or a row (area) generated by a later-described refresh control unit 52 is generated. The read signal generated by the selector 63 is controlled by the CPU 21 so that these processes are generated at the timing when these processes are executed on the row to be processed. Further, a plurality of sense amplifiers 66 may be provided for a plurality of pages (rows) so that refresh processing or read processing can be simultaneously performed in parallel.
[0047]
When receiving a CAS (Column Address Strobe) signal input from the DRAM controller 23 (the control signal generation unit 51 or the refresh control unit 52), the column address latch 64 turns on the operation state, and turns on the cell in the memory bank 61. The information of the column of the address indicating the position of 71 is output to the column selector 65. The column selector 65 outputs a data read signal on the sense amplifier 66 corresponding to the column input from the column address latch 65 to the sense amplifier 66 and causes the output amplifier 67 to read the signal. The output amplifier 67 further amplifies the input electric charge and outputs data to the CPU 21 via the control signal generating unit 51 of the DRAM controller 23 or outputs the data to the refresh determination information register 55 of the DRAM controller 23 which will be described later. Output.
[0048]
Next, details of the DRAM controller 23 will be described with reference to FIG.
[0049]
As described above, the control signal generator 51 transmits the RAS signal and the address signal to the row address latch 62 of the DRAM 24 based on the information of the address designated by the CPU 21, and also transmits the CAS signal and the address signal to the DRAM 24. Of the DRAM 24, the data is recorded in the memory bank 61 of the DRAM 24, and the data already recorded in the memory bank 61 of the DRAM 24 is read and supplied to the CPU 21.
[0050]
By the way, in this example, as described above, the refresh processing is executed for each page (row). That is, the refresh process is independently performed on each of the 4096 pages (4096 16K-bit areas (rows)) composed of 16K cells 71.
[0051]
In this case, one piece of the above-described refresh enable / disable information is required for each of the 4,096 pages, so that a total of 4,096 pieces of the refresh enable / disable information are required. That is, in order for the entire memory bank 61 of the DRAM 24 to be refreshed in units of 16 K bits, refresh enable / disable information of 4096 bits (512 bytes) is required.
[0052]
The CPU 21 generates a control signal to secure a special area for storing the 4096-bit refresh enable / disable information (hereinafter, such a special area is referred to as a refresh enable / disable information area) in the memory bank 61 of the DRAM 24. A command is given to the unit 51.
[0053]
For example, as shown in FIG. 5, which will be described later, the CPU 21 determines that the area (page) 61-k of the k-th row (k is an arbitrary value from 0 to 4095) of the memory bank 61 of the DRAM 24 will be described later. It is assumed that the control signal generating unit 51 is instructed to secure an area 81 of 512 bytes (4096 bits) from the beginning of the area 81 as a refreshability information area.
[0054]
In this case, the control signal generation unit 51 secures this area 81 as a refreshability information area, and then, from the CPU 21, transmits 4096 pieces of refreshability information (refresh of 4096 bits) corresponding to each of the 4096 pages. When the availability information is provided, they are stored in the corresponding cells 71 in the refresh availability information area 81 of the memory bank 61 of the DRAM 24, respectively.
[0055]
That is, the control signal generator 51 generates the address signal, the RAS signal, and the CAS signal of the address corresponding to the page (area) to be refreshed in the refreshability information area 81, and generates the generated signal. Based on the signal, the charge of the cell 71 located in each address corresponding to the page (area) to be refreshed in the refreshability information area 81 is charged. In other words, as described above, the control signal generator 51 stores “1” in each of the addresses corresponding to the page (area) on which the refresh processing is performed in the refreshability information area 81, and performs the refresh operation. “0” is stored in each of the addresses corresponding to the pages (areas) for which processing is not performed.
[0056]
Note that this refreshability information is provided as appropriate by the CPU 21, and the storage content of the corresponding cell 71 in the refreshability information area 81 of the memory bank 61 of the DRAM 24 is updated (overwritten) each time.
[0057]
The refresh controller 52 controls the 4096 rows (areas) stored in the refresh enable / disable information area 81 of the memory bank 61 of the DRAM 24 under the control of the control signal generator 51 under the control of the CPU 21 as described above. Of the corresponding 4096 pieces of refreshability information, a predetermined number (for example, 8 pieces) of chargeability information that is smaller than the total number is acquired and stored in the refresh determination information register 55. .
[0058]
That is, the refresh control unit 52 stores an address in the refreshability information area 81 of the memory bank 61 of the DRAM 24 in which eight pieces of refreshability information to be acquired from now on are stored (hereinafter, such an address is referred to as another address). In order to distinguish between the address signal and the RAS signal, the address signal of the refresh enable / disable information address and the CAS signal are transmitted to the column address latch 64 of the DRAM 24. Send to
[0059]
The refresh control unit 52 also sequentially reads out each of the eight pieces of the refreshability information (8-bit bit data) stored in the refreshability information register 55 under the control of the CPU 21, and reads the read refreshability information. If the information is “1”, a refresh signal indicating the timing of performing the refresh process on the row (page) of the memory bank 61 of the DRAM 24 corresponding to the refreshability information is transmitted. On the other hand, when the read refreshability information is “0”, the refresh control unit 52 sets the row (page) corresponding to the refreshability information in the memory bank 61 of the DRAM 24 to the row (page). Send nothing.
[0060]
Therefore, each of the cells 71 of the row (page) to which the refresh signal is supplied from the refresh control unit 52 in the memory bank 61 of the DRAM 24 is subjected to the refresh processing. On the other hand, the refresh process is suppressed (not performed) for each of the cells 71 in the row (page) to which the refresh signal is not supplied from the refresh control unit 52.
[0061]
The start address register 53 stores the start address (hereinafter, such an address is simply referred to as a start address) of the refreshability information area 81 supplied from the CPU 21. The start address stored in the start address register 53 is used when the above-described refresh control unit 52 stores the eight pieces of refreshability information in the refresh determination information register 55 or controls whether or not a refresh signal is transmitted. It is referred to by the refresh control unit 52.
[0062]
The pointer 54 indicates an address (refresh enable / disable information area 81 of the memory bank 61 of the DRAM 24) in which the refresh control unit 52 stores refresh enable / disable information for a page (row) of the memory bank 61 of the DRAM 24 for which the next refresh control is performed. Address).
[0063]
As described above, the refresh determination information register 55 stores a predetermined number (8 in this example) of the memory banks 61 of the DRAM 24 to be controlled by the refresh control unit 52 based on the control of the refresh control unit 52. ) Stores refreshability information corresponding to each page (row). That is, the refresh determination information register 55 in this example is an 8-bit register.
[0064]
Next, a data reading process of the DRAM controller 23 will be described. That is, an operation in which the DRAM controller 23 (the control signal generation unit 51 or the refresh control unit 52) reads data from a predetermined cell 71 of the memory bank 61 in response to a command from the CPU 21 will be described.
[0065]
For example, when the DRAM controller 23 attempts to read the data of the cell 71 in the first column of the 4094th row of the memory bank 61 of the DRAM 24 according to a command from the CPU 21, the CPU 21 sends the first row of the 4094th row to the DRAM controller 23. It instructs to read the data of the cell 71 in the column. Upon receiving this command, the DRAM controller 23 outputs a RAS signal to the row address latch 62, and then outputs a signal of the corresponding address to the row address latch 62 and the column address latch 64. When receiving the RAS signal from the DRAM controller 23, the row address latch 62 turns on its operation, and outputs the row information of the subsequently received address information to the row (area) selector 63. Accordingly, in this case, the information “line 4094” is output to the line (area) selector 63.
[0066]
The row (region) selector 63 outputs a read signal for causing the sense amplifier 66 to transfer the charge of the cell 71 of the page (region) corresponding to the row based on the information of the row input from the row address latch 62. Then, in this case, the charges of the cells 71 on the page (region) on the 4094th row surrounded by the dotted line in the drawing on the memory bank 61 are output to the sense amplifier 66. The sense amplifier 66 amplifies the amount of each of the transferred charges to a predetermined value.
[0067]
At this time, the DRAM controller 23 outputs a CAS signal to the column address latch 64. When receiving the CAS signal from the DRAM controller 23, the column address latch 64 turns on its operation, and outputs the information of the subsequently received address information column to the column selector 65. Therefore, in this case, the information “first column” is output to the column selector 65.
[0068]
The column selector 65 outputs a read signal that causes the charge amplified by the sense amplifier 66 corresponding to the column to be transferred to the output amplifier 67 based on the input column information. That is, in this case, the sense amplifier 66 outputs the charges of the cells in the first column surrounded by the dotted line to the output amplifier 67 based on the read signal. The output amplifier 67 amplifies the amount of the transferred charges to a predetermined value required for the transfer, and outputs the amplified value to the DRAM controller 23. After that, the sense amplifier 66 returns each of the amplified charges corresponding to the page (region) of the 4094th row to the corresponding original cell 71 on the memory bank 61 again. Accordingly, the 16K (all) cells 71 on the page (area) on which the data has been read (in this case, the 4094th row) return to the original state (full charge state). Have been.
[0069]
With the above operation, the data specified by the CPU 11 is read from the DRAM 14. Note that the operation of recording data in the DRAM 14 is basically the same as the above-described read operation, and a description thereof will be omitted.
[0070]
Next, the processing of the refresh control unit 52 of the DRAM controller 23 will be described with reference to the flowchart of FIG.
[0071]
In this example, as shown in FIG. 5, the region 81 of 512 bytes (4096 bits) from the beginning of the region (page) 61-k of the k-th row in the memory bank 61 of the DRAM 24 is refreshed as described above. This is an availability information area.
[0072]
In this example, for example, the start address of the refreshability information area 81 is set to P (P is an arbitrary integer value), and the addresses P to (P + 4095) are assigned to the memory banks 61 in that order. Refresh enable / disable information corresponding to each of the areas (pages) 61-0 to 61-4095 is recorded as shown in FIG.
[0073]
For example, in FIG. 5, “0” is stored in the address P of the refreshability information area 81, which corresponds to the area (page) 61-0 (first page of the memory bank 61) of the memory bank 61 corresponding to the address P. The refresh processing is suppressed (not performed) for the 16K cells 71 (FIG. 3) in the 0th row. On the other hand, “1” is stored in the address (P + 1), which is the area (page) 61-1 (the first row of the memory bank 61) of the memory bank 61 corresponding to the address (P + 1). Refresh processing is performed on the 16K cells 71 (FIG. 3). The same applies to each of the addresses (P + 2) to (P + 4095).
[0074]
In this case, first, in step S1 of FIG. 4, the refresh control unit 52 initializes the pointer 54. Specifically, in this example, as shown in FIG. 5, the start address P is stored in the start address register 53, and the refresh control unit 52 determines that the start address P is stored in the start address register 53. P is stored in the pointer 54.
[0075]
In step S2, the refresh control unit 52 reads a predetermined part of the data in the refreshability information area 81 of the DRAM 24 (memory bank 61) and stores it in the refresh determination information register 55.
[0076]
In this example, as described above, since the refresh determination information register 55 is an 8-bit register, as shown in FIG. The eight data (8-bit bit data) stored in each of the areas are read out and stored in the refresh determination information register 55 of the DRAM controller 23. In this case, as shown in FIG. 5, eight pieces of data 81-1 stored in each of the head address P to the address (P + 7) in the refreshability information area 81 are read, and the refresh determination information is read. It is stored in the register 55.
[0077]
The refresh control unit 52 performs the above-described data read operation on each of the above-described eight data 81-1 in the order of the head address P to the address (P + 7), thereby obtaining the eight data 81-1. Each of 81-1 is stored in the refresh determination information register 55.
[0078]
Next, in step S3, the refresh control unit 52 determines that the data specified by the pointer 54 of the data (eight data 81-1 in this case) stored in the refresh determination information register 55 It is determined whether the data is data (“1”).
[0079]
In this case, since the start address P is stored in the pointer 54, the refresh control unit 52 detects the refresh enable / disable information (data) corresponding to the start address P stored in the refresh determination information register 55. .
[0080]
As shown in FIG. 5, the refresh enable / disable information (data of the first bit (0th bit) of the refresh determination information register 55) corresponding to the first address P is set to “0”. In step S3, it is determined that the data specified by the pointer (data corresponding to the start address P) is not refreshable data (no refresh processing is performed), and the value of the pointer 54 is advanced in step S5. That is, in this case, the address (P + 1) next to the head address P is stored in the pointer 54.
[0081]
As described above, in the process of step S3, when it is determined that the refreshability information designated by the pointer 54 is “0” (when it is determined that the information is not refreshability), the refresh control unit 81 sets the pointer Refresh processing is suppressed (no refresh processing is performed) on the area (page) of the data bank 61 corresponding to the refresh enable / disable information specified by 54.
[0082]
Then, in step S6, the refresh control unit 52 determines whether or not the data specified by the pointer 54 is stored in the refresh determination information register 55.
[0083]
In this case, the address (P + 1) is stored in the pointer 54 in the process of step S5, and the data (refresh enable / disable information) corresponding to the address (P + 1) is stored in the refresh determination information register as shown in FIG. Since the data is stored in the first bit of 55, it is determined in step S6 that the data designated by the pointer 54 is stored in the refresh determination information register 55, the process returns to step S3, and the subsequent processes are performed. Repeated.
[0084]
That is, this time, in the process of step S3, the refresh control unit 52 determines whether the refreshability information (data designated by the pointer 54) corresponding to the address (P + 1) is refreshable data.
[0085]
In this case, as shown in FIG. 5, since the address (P + 1) is stored in the pointer 54, the refresh control unit 52 corresponds to the address (P + 1) stored in the refresh determination information register 55. To be refreshed (data of the first bit) is detected.
[0086]
Since the refresh enable / disable information (data of the first bit of the refresh determination information register 55) corresponding to the address (P + 1) is “1”, the refresh control unit 52 determines in step S3 that the data (address It is determined that the data corresponding to (P + 1) is refreshable data (refresh processing is performed), and in step S4, an area corresponding to the refreshable data in the data bank 61 of the DRAM 24 (the current area). In this case, as shown in FIG. 5, the refresh processing is performed on the area 61-1 corresponding to the address (P + 1) (16K cells 71 in the page of the first row of the memory bank 61 in FIG. 3). Do.
[0087]
That is, as described above, the refresh control unit 52 outputs the refresh signal to the page (area) of the first row of the memory bank 61 in FIG. When the refresh signal is input to the first row page (the area 61-1 in FIG. 5) of the memory bank 61, the charges of the 16K cells 71 included in the first row page are all sense amplifiers. 66. When the data of all the cells 71 included in the page of the first row of the memory bank 61 is transferred, the sense amplifier 66 receives the data, further amplifies the data to a predetermined potential, and again transmits the data of the first row. Transfer to page.
[0088]
In this manner, in the process of step S3 in FIG. 4, when it is determined that the refreshability information designated by the pointer 54 is "1" (when it is determined that the information is refreshability), the refresh control unit 52 The refresh process is performed on the area (page) of the data bank 61 corresponding to the refresh enable / disable information specified by the pointer 54.
[0089]
In this case, the refresh control unit 52 advances (stores) the value of the pointer 54 to the address (P + 2) next to the address (P + 1) in the processing of step S5, and in the processing of step S6, Is determined to be stored in the refresh determination information register 55, the process returns to step S3, and the subsequent processes are repeated.
[0090]
That is, the refresh control unit 52 performs the above-described step S3 on each of the refresh enable / disable information (data of the second to seventh bits of the refresh determination information register 55) corresponding to each of the addresses (P + 2) to (P + 7). To S6 are repeated.
[0091]
In this case, as shown in FIG. 5, the refresh enable / disable information (data of the second to fifth bits of the refresh determination information register 55) corresponding to the addresses (p + 2) to (p + 5) is “1”. Refresh is performed for each of the areas 61-2 to 61-5 (the areas 61-4 and 61-5 are not shown (omitted)) of the data bank 61 corresponding to the addresses (p + 2) to (p + 5). Processing is performed. On the other hand, since the refresh enable / disable information (data of the 6th and 7th bits of the refresh determination information register 55) corresponding to the address (p + 6) and the address (p + 7) is "0", the address (p + 6) ) And an address (p + 7), the refresh processing is suppressed (not performed) for each of the area 61-6 and the area 61-7 (not shown (omitted)) of the data bank 61.
[0092]
Refresh processing is suppressed for the area 61-7 of the data bank 61 corresponding to the address (p + 7), and when the value of the pointer 54 is advanced to the address (p + 8) in the processing of step S5, in step S6, It is determined that the data specified by the pointer is not stored in the refresh determination information register 55.
[0093]
Then, in step S7, the refresh control unit 52 determines whether or not all of the data banks 61 of the DRAM 24 have been processed.
[0094]
In this case, since only processing is performed on the areas 61-0 to 61-7 of the data bank 64 of the DRAM 24, it is determined in step S7 that all of the data banks 61 of the DRAM 24 have not been processed yet. Returns to step S2, and the subsequent processing is repeated.
[0095]
That is, the refresh control unit 52 reads the 8-bit data 81-2 following the currently processed 8-bit data 81-1 in the refreshability information area 81, and stores the 8-bit data 81-2 in the refresh determination information register 55 ( Overwriting) and the refreshability information (refresh availability information for the areas 61-8 to 61-17 (not shown (omitted))) stored in the refresh determination information register 55. Refresh processing and / or suppression of the refresh processing are executed for the area (one of the areas 61-8 to 61-17) to be refreshed.
[0096]
The above processing is repeated, that is, predetermined consecutive 8-bit data (eight pieces of refreshability information) in the refreshability information area 81 are sequentially stored in the refresh determination information register 55 in order from the start address P. Then, based on the refresh enable / disable information stored in the refresh determination information register 55, the refresh processing and the suppression of the refresh processing are performed on the corresponding area (the page of the corresponding row) of the data bank 61 of the DRAM 24. One of the processes is executed.
[0097]
When this processing is performed up to the area 61-4095 (page 4095th row) of the data bank 61 of the DRAM 24 corresponding to the address (p + 4095), in step S7, all the data of the data bank 61 of the DRAM 24 are obtained. Is determined to have been processed, and the process ends.
[0098]
As described above, in the information processing apparatus 11 of FIG. 2, as shown in FIG. 3, all the refresh enable / disable information of the memory bank 61 of the DRAM 24 (in the above-described example, the unit of the refresh process is one row). When a page (area) is set and 4096-bit refresh enable / disable information corresponding to each of the pages (areas) in the first to 4095th rows is recorded in the memory bank 61 itself and the refresh processing is performed, a predetermined number of the refresh processing is performed. (In the example described above, only the 8-bit data) is stored in the refresh determination information register 55 of the DRAM controller 23.
[0099]
Therefore, as shown in FIG. 1 described above, the conventionally required refresh enable / disable information register 4 becomes unnecessary (the refresh enable / disable information area 81 corresponding to the refresh enable / disable information register 4 is secured in the DRAM 24 itself. ), It is possible to save resources by that much, and it is also possible to save power consumption by that much. That is, the information processing apparatus 11 to which the present invention is applied has an effect that the above-described problem can be solved.
[0100]
Note that the content of the refreshability information is appropriately rewritten by the CPU.
[0101]
By the way, in the example of FIG. 3, the DRAM controller 23 is a separate device from the DRAM 24, but may be mounted on the DRAM 24 itself.
[0102]
Further, the information recording device to which the present invention is applied (the information recording device mounted on the information processing device to which the present invention is applied) is not limited to the DRAM 24 shown in FIG. It does not matter if it is a recording device. For example, the present invention provides, in addition to a normal DRAM, a synchronous DRAM, a first page DRAM, an EDO DRAM (Extended Data Out Dynamic Random Access Memory), an SDRAM, a DDR SDRAM (Double Date Dynamic Random Memory, or a Dynamic Date Dynamic Random Dynamics, a Dynamic Random Dynamics, (DirectRambus Dynamic Random Access Memory).
[0103]
Further, the information processing apparatus to which the present invention is applied is not limited to the personal computer type information processing apparatus 11 shown in FIG. 2, but may be any device that simply uses the DRAM 24. And printers.
[0104]
In the example shown in FIG. 5, the location where the refreshability information is stored is the refreshability information area 81 of the first 512 bytes (4096 bits) of the area 61-K of the memory bank 61 of the DRAM 24. The present invention is not limited to this example, and any area may be used as long as it is within the data bank 61 of the DRAM 24.
[0105]
Further, a grouped area such as the refreshability information area 81 does not need to be specially (exclusively) secured. For example, the information indicating “where in the DRAM 24 the refresh process is required” generally corresponds to the management of the memory resources of the OS, and is managed by software. Therefore, such information always exists in the memory bank 61 of the DRAM 24, and the information itself may be used as refreshability information. In this case, since the refreshability information area 81 is not required, the resources of the DRAM 24 can be further effectively used.
[0106]
Furthermore, as described above, since the capacity of the refresh permission / non-permission information area 81 is variable, the unit of the refresh processing is not limited to the above-described example, and may be an arbitrary unit. That is, the size of the refresh availability information area 81 can be set to an arbitrary size, and is determined by one unit of the refresh processing.
[0107]
The above-described series of processing can be executed by hardware, but can also be executed by software, and a program for executing the processing is installed from a network or a recording medium. As shown in FIG. 2, this recording medium is distributed separately from the apparatus main body to provide a program to an owner or the like, and is mounted on a drive 32 and stored on a magnetic disk (floppy disk) on which the program is recorded. ), An optical disk (including a CD-ROM (Compact Disk-Only Memory), a DVD (Digital Versatile Disk)), a magneto-optical disk (including an MD (Mini-Disk)), or a removable recording medium such as a semiconductor memory (Package media) 33, as well as a ROM 27 and a HDD 31, which are provided to the user in a state of being pre-installed in the apparatus main body and in which programs are recorded.
[0108]
In the present specification, the steps of executing the above-described series of processing include, in addition to the processing performed in chronological order in the described order, the processing is not necessarily performed in chronological order, but may be performed in parallel or individually. This includes the processing to be executed.
[0109]
【The invention's effect】
As described above, according to the present invention, a predetermined cell group of a plurality of cells can be refreshed independently of the others. In particular, since information on whether or not refresh processing can be performed on each cell group serving as a refresh unit is stored in any one of the plurality of cells, an information processing apparatus having a memory including a plurality of cells Resources and power consumption can be further saved.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of a data recording portion in a conventional information processing apparatus.
FIG. 2 is a block diagram illustrating a configuration example of an information processing apparatus to which the present invention is applied.
FIG. 3 is a block diagram illustrating a detailed configuration example of a DRAM and a DRAM controller of the information processing apparatus of FIG. 3;
FIG. 4 is a flowchart illustrating a process of a refresh control unit in a DRAM controller of the information processing device of FIG. 3;
FIG. 5 is a diagram illustrating a refresh process of a refresh controller in a DRAM controller of the information processing apparatus of FIG. 3;
[Explanation of symbols]
Reference Signs List 11 information processing device, 21 CPU, 23 DRAM controller, 24 DRAM, 51 control signal generator, 52 refresh controller, 53 start address register, 54 pointer, 55 refresh determination information register, 61 memory bank, 81 refresh enable / disable information area

Claims (8)

1個以上のメモリバンクを有し、前記各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部と、
前記データ記憶部を所定の数のセルごとに区分した複数の記憶領域に対して再充電処理を行う再充電処理手段と、
複数に区分された前記記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報を前記データ記憶部内に記憶させるように制御する記憶制御処理手段と、
前記再充電可否情報に基づいて、前記記憶領域のそれぞれに対して再充電処理が行われるように前記再充電処理手段を制御する指令を出力する再充電制御処理手段と
を備えることを特徴とする情報処理装置。
A data storage unit that has one or more memory banks and stores data by charging each of a plurality of cells included in each of the memory banks;
Recharging processing means for performing a recharging process on a plurality of storage areas obtained by dividing the data storage unit into a predetermined number of cells;
Storage control processing means for controlling to store in the data storage unit recharge enable / disable information indicating whether to perform a recharge process on each of the plurality of storage areas,
Recharging control processing means for outputting a command for controlling the recharging processing means so that recharging processing is performed for each of the storage areas based on the rechargeability information. Information processing device.
前記データ記憶部に記憶されている、複数の前記記憶領域に対する前記再充電可否情報のうち、全ての前記記憶領域の数より少ない所定数分の前記記憶領域に対応する前記再充電可否情報を前記データ記憶部から取得し記憶する再充電判定情報レジスタをさらに備え、
前記再充電制御処理手段は、前記再充電判定情報レジスタ内の前記再充電可否情報に基づいて、前記記憶領域の再充電処理が行われるように前記再充電処理手段を制御する指令を出力する
ことを特徴とする請求項1に記載の情報処理装置。
Stored in the data storage unit, among the rechargeability information for a plurality of storage areas, the rechargeability information corresponding to a predetermined number of the storage areas less than the number of all the storage areas, A recharge determination information register that acquires from the data storage unit and stores the recharge determination information register;
The recharging control processing means outputs a command for controlling the recharging processing means such that the recharging processing of the storage area is performed based on the rechargeability information in the recharging determination information register. The information processing apparatus according to claim 1, wherein:
前記再充電判定情報レジスタは、前記データ記憶部から所定数分だけ取得した前記再充電可否情報の全てに対応する前記記憶領域に対して、前記再充電処理手段による再充電処理が行われると、前記データ記憶部から所定数分の前記再充電判定情報を更に取得し記憶する
ことを特徴とする請求項2に記載の情報処理装置。
The recharge determination information register, when the recharge processing by the recharge processing unit is performed on the storage area corresponding to all of the recharge enable / disable information obtained by the predetermined number from the data storage unit, The information processing apparatus according to claim 2, further comprising acquiring and storing a predetermined number of pieces of the recharge determination information from the data storage unit.
前記再充電可否情報が記憶されている先頭アドレスを記憶する先頭アドレス記憶手段をさらに備え、
前記再充電判定情報レジスタは、前記先頭アドレス記憶手段に記憶された前記先頭アドレスに基づいて、前記データ記憶部から所定数分の前記再充電可否情報を取得し記憶する
ことを特徴とする請求項3に記載の情報処理装置。
The apparatus further includes a head address storage unit that stores a head address in which the rechargeability information is stored,
The recharge determination information register acquires and stores a predetermined number of the recharge enable / disable information from the data storage unit based on the start address stored in the start address storage unit. 4. The information processing device according to 3.
1個以上のメモリバンクを有し、前記各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部を備える情報処理装置の情報処理方法において、
所定の数のセルごとに区分された複数の記憶領域に対して再充電処理を行う再充電処理工程と、
複数に区分された前記記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報を前記データ記憶部内に記憶させるように制御する記憶制御処理工程と、
前記再充電可否情報に基づいて、前記記憶領域のそれぞれに対して再充電処理を行うように前記再充電処理工程での処理を制御する指令を出力する再充電制御処理工程と
を備えることを特徴とする情報処理方法。
An information processing method for an information processing apparatus, comprising: a data storage unit having at least one memory bank and storing data by charging each of a plurality of cells included in each of the memory banks with an electric charge;
A recharging process for performing a recharging process on a plurality of storage areas partitioned for each of a predetermined number of cells;
A storage control processing step of controlling to store in the data storage unit recharge enable / disable information indicating whether to perform a recharge process for each of the plurality of storage areas,
A recharging control processing step of outputting a command for controlling processing in the recharging processing step so as to perform a recharging processing on each of the storage areas based on the rechargeability information. Information processing method.
1個以上のメモリバンクを有し、前記各メモリバンクが有する複数のセルのそれぞれに電荷を充電させることによりデータを記憶するデータ記憶部を備えるコンピュータに、
所定の数のセルごとに区分された複数の記憶領域に対して再充電処理を行う再充電処理工程と、
複数に区分された前記記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報を前記データ記憶部内に記憶させるように制御する記憶制御処理工程と、
前記再充電可否情報に基づいて、前記記憶領域のそれぞれに対して再充電処理を行うように前記再充電処理工程での処理を制御する指令を出力する再充電制御処理工程と
を実行させることを特徴とするプログラム。
A computer having one or more memory banks and having a data storage unit for storing data by charging each of a plurality of cells included in each of the memory banks with:
A recharging process for performing a recharging process on a plurality of storage areas partitioned for each of a predetermined number of cells;
A storage control processing step of controlling to store in the data storage unit recharge enable / disable information indicating whether to perform a recharge process for each of the plurality of storage areas,
And performing a recharge control processing step of outputting a command for controlling processing in the recharge processing step so as to perform a recharge processing for each of the storage areas based on the recharge availability information. Features program.
1個以上のメモリバンクを有するメモリにおいて、
電荷を充電させることによりデータを記憶する複数のセルを所定の数ごとに区分した記憶領域のそれぞれに対して再充電処理を行う再充電処理手段と、
前記記憶領域のそれぞれに対して再充電処理を行うか否かを示す再充電可否情報が記憶されている前記記憶領域から、前記再充電可否情報を取得する再充電可否情報取得処理手段と、
前記再充電可否情報取得処理手段により取得された前記再充電可否情報に基づいて、前記記憶領域のそれぞれに対して再充電処理が行われるように前記再充電処理手段を制御する指令を出力する再充電制御処理手段と
を備えることを特徴とするメモリ。
In a memory having one or more memory banks,
Recharging processing means for performing a recharging process on each of the storage areas divided into a plurality of cells for storing data by charging electric charges by a predetermined number,
From the storage area in which recharge availability information indicating whether to perform a recharge process for each of the storage areas is stored, a recharge availability information acquisition processing unit that acquires the recharge availability information,
Based on the rechargeability information acquired by the rechargeability information acquisition processing means, a command to control the recharge processing means to perform recharge processing on each of the storage areas is output. A memory comprising: charge control processing means.
複数の前記記憶領域に対する前記再充電可否情報のうち、全ての前記記憶領域の数より少ない所定数分の前記記憶領域に対応する前記再充電可否情報を記憶する再充電判定情報レジスタをさらに備え、
前記再充電可否情報取得処理手段は、取得した前記再充電可否情報を前記再充電判定情報レジスタに記憶させ、
前記再充電制御処理手段は、前記再充電判定情報レジスタ内の前記再充電可否情報に基づいて、前記記憶領域の再充電処理が行われるように前記再充電処理手段を制御する指令を出力する
ことを特徴とする請求項7に記載のメモリ。
Among the rechargeability information for the plurality of storage areas, further includes a recharge determination information register that stores the rechargeability information corresponding to the predetermined number of storage areas less than the number of all the storage areas,
The rechargeability information acquisition processing means stores the acquired rechargeability information in the recharge determination information register,
The recharging control processing means outputs a command for controlling the recharging processing means such that the recharging processing of the storage area is performed based on the rechargeability information in the recharging determination information register. The memory according to claim 7, wherein:
JP2002258433A 2002-09-04 2002-09-04 Information processing apparatus and method, program, and memory Withdrawn JP2004095122A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002258433A JP2004095122A (en) 2002-09-04 2002-09-04 Information processing apparatus and method, program, and memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002258433A JP2004095122A (en) 2002-09-04 2002-09-04 Information processing apparatus and method, program, and memory

Publications (1)

Publication Number Publication Date
JP2004095122A true JP2004095122A (en) 2004-03-25

Family

ID=32063038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002258433A Withdrawn JP2004095122A (en) 2002-09-04 2002-09-04 Information processing apparatus and method, program, and memory

Country Status (1)

Country Link
JP (1) JP2004095122A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023522219A (en) * 2020-04-17 2023-05-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Hardware-assisted dynamic random access memory (DRAM) row merging

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023522219A (en) * 2020-04-17 2023-05-29 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Hardware-assisted dynamic random access memory (DRAM) row merging
JP7667180B2 (en) 2020-04-17 2025-04-22 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Hardware assisted dynamic random access memory (DRAM) row merging - Patents.com

Similar Documents

Publication Publication Date Title
US6965540B2 (en) Memory device operable in either a high-power, full-page size mode or a low-power, reduced-page size mode
USRE42976E1 (en) Semiconductor memory device with reduced data access time
JP2968486B2 (en) Memory, memory subsystem, memory device, and memory system address method
JPH0757457A (en) Memory device
JPH0684351A (en) Clock synchronous semiconductor memory device and access method thereof
JPS6213758B2 (en)
JP2003257178A (en) Semiconductor memory device
JP3362775B2 (en) DRAM and data access method for DRAM
US20170168950A1 (en) Techniques for storing data and tags in different memory arrays
US20080247257A1 (en) Memory data inversion architecture for minimizing power consumption
US6594189B2 (en) Information storage apparatus, information storage method, recording medium and program
JP4964091B2 (en) MEMORY ACCESS METHOD AND MEMORY CONTROL DEVICE
US20050132131A1 (en) Partial bank DRAM precharge
JP2004095122A (en) Information processing apparatus and method, program, and memory
JP4407972B2 (en) Asynchronous semiconductor memory device
US6545932B1 (en) SDRAM and method for data accesses of SDRAM
EP4379721A1 (en) Address decoding method, and memory controller and semiconductor memory system using the same
US7277977B2 (en) DRAM for high-speed data access
JP4561089B2 (en) Storage device
US7336558B2 (en) Semiconductor memory device with reduced number of pads
JPH05282859A (en) Memory integrated circuit
JP2868464B2 (en) Semiconductor memory device and refresh control method thereof
US10929949B2 (en) Accessing a memory configured to store an image data cube
JP4549001B2 (en) Information processing apparatus and semiconductor integrated circuit
CN117631988A (en) Apparatus and method for providing commands with over-the-air latency to memory

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: 20060110