Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5311466B2 - Memory control method and apparatus - Google Patents
[go: Go Back, main page]

JP5311466B2 - Memory control method and apparatus - Google Patents

Memory control method and apparatus Download PDF

Info

Publication number
JP5311466B2
JP5311466B2 JP2008302742A JP2008302742A JP5311466B2 JP 5311466 B2 JP5311466 B2 JP 5311466B2 JP 2008302742 A JP2008302742 A JP 2008302742A JP 2008302742 A JP2008302742 A JP 2008302742A JP 5311466 B2 JP5311466 B2 JP 5311466B2
Authority
JP
Japan
Prior art keywords
address
read
refresh
unit
access
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.)
Expired - Fee Related
Application number
JP2008302742A
Other languages
Japanese (ja)
Other versions
JP2010129123A (en
Inventor
直樹 櫻井
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.)
Naltec Inc
Original Assignee
Naltec 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 Naltec Inc filed Critical Naltec Inc
Priority to JP2008302742A priority Critical patent/JP5311466B2/en
Publication of JP2010129123A publication Critical patent/JP2010129123A/en
Application granted granted Critical
Publication of JP5311466B2 publication Critical patent/JP5311466B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Dram (AREA)

Description

本発明は、DRAMなどの揮発性メモリのリフレッシュを含むメモリの制御方法および装置に関するものである。   The present invention relates to a memory control method and apparatus including refresh of a volatile memory such as a DRAM.

ダイナミックランダムアクセスメモリ(DRAM)セルのような揮発性メモリセルに貯蔵されたデータは短時間に消失する。このため、メモリセルを周期的にリフレッシュしてデータを保持しなければならない。したがって、DRAM、SDRAMのような多数の揮発性メモリセルを含む集積回路は、周期的にリフレッシュサイクルを実行するための機能(オートリフレッシュ機能)を備えている。   Data stored in volatile memory cells, such as dynamic random access memory (DRAM) cells, disappears in a short time. For this reason, the memory cells must be periodically refreshed to hold data. Therefore, an integrated circuit including a large number of volatile memory cells such as a DRAM and an SDRAM has a function (auto-refresh function) for periodically executing a refresh cycle.

特許文献1は、所定間隔でオートリフレッシュリクエストを発生させるオートリフレッシュリクエスト発生回路と、オートリフレッシュリクエスト発生のタイミングで、アイドル状態でない場合にはダイナミックランダムアクセスメモリに対するオートリフレッシュ要求をホールドしてホールド回数をカウントするホールド回数カウント回路と、アイドル状態を検出した時に、ホールドされた回数に達するまでダイナミックランダムアクセスメモリに対しホールドされたオートリフレッシュ要求を行う回路とを含むオートリフレッシュ制御回路が開示されている。このオートリフレッシュ制御回路を含むメモリコントローラでは、ホールドされたオートリフレッシュ要求が実行されると、実行した回数に基づきホールド回数を更新する。
特開2005−310245号公報
Patent Document 1 discloses an auto-refresh request generation circuit that generates an auto-refresh request at a predetermined interval, and holds the auto-refresh request for the dynamic random access memory when the auto-refresh request is generated, An auto-refresh control circuit is disclosed that includes a hold count circuit for counting and a circuit for making an auto-refresh request held in the dynamic random access memory until the held count is reached when an idle state is detected. In the memory controller including the auto-refresh control circuit, when the held auto-refresh request is executed, the hold count is updated based on the executed count.
JP 2005-310245 A

SDRAMに対するリフレッシュタイミングは、SDRAMの容量によって変化する。例えば、64Mbits、128Mbitsの場合は4096回/64msで、256Mbits、512Mbitsの場合は8192回/64msのアクセスが必要である。さらに、リフレッシュサイクルはアイドル状態で行われる必要がある。したがって、特許文献1では、アイドル状態でない場合にはオートリフレッシュ要求をホールドするようにしている。   The refresh timing for the SDRAM varies depending on the capacity of the SDRAM. For example, access is required 4096 times / 64 ms for 64 Mbits and 128 Mbits, and 8192 times / 64 ms for 256 Mbits and 512 Mbits. Furthermore, the refresh cycle needs to be performed in an idle state. Therefore, in Patent Document 1, an auto-refresh request is held when not in an idle state.

また、リフレッシュサイクルの間はメモリにアクセスできない。1回のリフレッシュサイクルに要する時間が、たとえば、140nsとすると、64msの間に8192回のリフレッシュサイクルを実行すると1.15msがリフレッシュのために費やされ、メモリにアクセスできない。メモリ転送レートを向上するためにはリフレッシュの頻度を下げることが必要であるが、データの消失を防ぐためにはリフレッシュの頻度を下げることができない。   Also, the memory cannot be accessed during the refresh cycle. If the time required for one refresh cycle is 140 ns, for example, if 8192 refresh cycles are executed during 64 ms, 1.15 ms is consumed for refresh and the memory cannot be accessed. In order to improve the memory transfer rate, it is necessary to reduce the refresh frequency, but in order to prevent data loss, the refresh frequency cannot be reduced.

本発明の一態様は、第1のアドレスおよび第2のアドレスを含むアドレスデータによりアクセス可能な多数のメモリセルを含む揮発性メモリ装置に対しライトアクセスした複数のライト済みの第1のアドレスを保持する第1のアドレス記憶部と、複数のライト済みの第1のアドレスの内、リフレッシュ操作を要する第1の時間内にライトアクセスおよびリードアクセスのない、未アクセスのライト済みの第1のアドレスに対しダミーリードを行うダミーリードコマンドを発行するダミーリードユニットと、複数のライト済みの第1のアドレスの内、リードアクセスが行われたライト済みの第1のアドレスを第1のアドレス記憶部から消去する更新ユニットとを有するリフレッシュ制御装置である。典型的な揮発性メモリ装置はDRAMであり、第1のアドレスはロウアドレスであり、第2のアドレスはカラムアドレスである。   One aspect of the present invention holds a plurality of written first addresses that are write-accessed to a volatile memory device that includes a large number of memory cells accessible by address data including a first address and a second address. To the first address storage unit that has been written, and among the plurality of written first addresses, there is no write access and no read access within the first time that requires a refresh operation, and there is an unaccessed written first address. A dummy read unit that issues a dummy read command for performing a dummy read, and a first address that has been read-accessed among a plurality of written first addresses is erased from the first address storage unit A refresh control device having an update unit to perform. A typical volatile memory device is a DRAM, the first address is a row address, and the second address is a column address.

同一のアドレスにリードが繰り返される可能性があるアプリケーションに対しては、更新ユニットは、リードアクセスが最終のリードアクセスであることを判断する機能を含み、最終のリードアクセスが行われたライト済みの第1のアドレスのみを第1のアドレス記憶部から消去することが望ましい。または、更新ユニットは、リードアクセスが、同一のアドレスに対する再リードを確保するためのデータ保持型リードアクセスであることを判断する機能を含み、データ保持型リードアクセスが行われたライト済みの第1のアドレスは第1のアドレス記憶部に保持することが望ましい。   For applications that may be repeatedly read to the same address, the update unit includes a function that determines that the read access is the final read access, and the written unit where the final read access was made. It is desirable to erase only the first address from the first address storage unit. Alternatively, the update unit includes a function of determining that the read access is a data holding type read access for securing re-reading with respect to the same address, and the written first data that has been subjected to the data holding type read access is included. Is preferably stored in the first address storage unit.

オートリフレッシュコマンドを発行する方法では、どのロウアドレスをリフレッシュしているのかはDRAM外部からは知る手段が無い。このため、DRAMの全領域に対してリフレッシュを実行する必要があり、一定期間内に決まった回数のオートリフレッシュコマンドを発行しなくてはならない。したがって、リフレッシュに要する一定の時間はDRAMにアクセスできない。DRAMなどの揮発性メモリ装置のメモリセルは、メモリリード、メモリライトでもリフレッシュされる。さらに、揮発性メモリ装置に含まれる多数のメモリセルのうち、データを保持する必要のあるメモリセルだけリフレッシュすればよい。このため、本発明においては、ライト済みのロウアドレスを記憶し、そのライト済みのロウアドレスに対しライトまたはリードアクセスがリフレッシュサイクルの間にない場合にダミーリードを行うことにより、データ保持を保証するとともにリフレッシュの回数を抑制する。さらに、ライト済みのロウアドレスのデータを破棄できるリードアクセス(または最終のリードアクセス)があると、リードされたライト済みのロウアドレスを消去することによりリフレッシュの回数を抑制する。   In the method of issuing the auto refresh command, there is no means for knowing from the outside of the DRAM which row address is being refreshed. For this reason, it is necessary to perform refresh for the entire area of the DRAM, and a predetermined number of auto-refresh commands must be issued within a certain period. Therefore, the DRAM cannot be accessed for a certain time required for refresh. A memory cell of a volatile memory device such as a DRAM is also refreshed by memory read or memory write. Furthermore, it is only necessary to refresh only the memory cells that need to hold data among the many memory cells included in the volatile memory device. For this reason, in the present invention, data retention is guaranteed by storing a written row address and performing dummy read when there is no write or read access to the written row address during the refresh cycle. At the same time, the number of refreshes is suppressed. Furthermore, if there is a read access (or final read access) that can discard the data of the written row address, the number of refreshes is suppressed by erasing the read written row address.

この方式は、ダミーリード用のロウアドレスを生成するので、ダミーリードの頻度が高くなるリフレッシュに要する時間(第1の消費時間)が、オートリフレッシュを用いたリフレッシュに要する時間(第2の消費時間)よりも長くなる可能性がある。しかしながら、理論的な第1の消費時間と第2の消費時間とが同じ場合は、リードアクセスがあったロウアドレスに対するダミーリードが発行されない分だけ実際の第1の消費時間は短くなる。したがって、本発明のリフレッシュ制御装置は、揮発性メモリ装置に対して第1の時間内に所定の回数のオートリフレッシュコマンドを発行するオートリフレッシュユニットと、ダミーリードユニットおよびオートリフレッシュユニットのいずれか一方を有効とする監視ユニットとをさらに有する。監視ユニットは、第1のアドレス記憶部に保持されている複数のライト済みの第1のアドレスに対しダミーリードを行うために要する第1の消費時間およびオートリフレッシュユニットにより揮発性メモリ装置をオートリフレッシュするために要する第2の消費時間を比較し、第1の消費時間が第2の消費時間と同じまたは短いときは、ダミーリードユニットを有効、オートリフレッシュユニットを無効とし、第1の消費時間が前記第2の消費時間より長いときは、ダミーリードユニットを無効、オートリフレッシュユニットを有効とする。 Since this method generates a row address for dummy read, the time required for refresh (first consumption time) at which the frequency of dummy read is high is the time required for refresh using auto-refresh (second consumption time). ) May be longer. However, when the theoretical first consumption time and the second consumption time are the same, the actual first consumption time is shortened by the amount that the dummy read for the row address where the read access has been made is not issued. Therefore, the refresh control device of the present invention includes an auto-refresh unit that issues a predetermined number of auto-refresh commands to the volatile memory device within a first time, and a dummy read unit or an auto-refresh unit. further comprising a monitoring unit to enable. The monitoring unit auto-refreshes the volatile memory device by the first consumption time and auto-refresh unit required for performing dummy read on the plurality of first addresses already written held in the first address storage unit. When the first consumption time is equal to or shorter than the second consumption time, the dummy read unit is enabled, the auto-refresh unit is disabled, and the first consumption time is When the time is longer than the second consumption time, the dummy read unit is disabled and the auto refresh unit is enabled.

このリフレッシュ制御装置は、メモリ制御装置に組み込むことができる。すなわち、本発明の他の態様の1つは、メモリ制御装置であり、リフレッシュ制御装置と、アクセス要求ユニットとを含む。アクセス要求ユニットは、揮発性メモリ装置に対するライト用のアドレスデータおよびライトコマンドを含むライトアクセス命令、または、リード用のアドレスデータおよびリードコマンドを含むリードアクセス命令に基づき、揮発性メモリ装置にアクセス要求を発行する。アクセス要求ユニットは、また、リフレッシュ制御装置のアドレスデータとして、リフレッシュ制御装置にライト用のアドレスデータおよびリード用のアドレスデータを供給する。メモリ制御装置は、アクセス要求と、ダミーリードコマンドまたはオートリフレッシュコマンドとの、揮発性メモリ装置に対するアクセスを調停する調停ユニットを有することが望ましい。   This refresh control device can be incorporated into a memory control device. That is, another aspect of the present invention is a memory control device, which includes a refresh control device and an access request unit. The access request unit issues an access request to the volatile memory device based on a write access instruction including address data and a write command for writing to the volatile memory device, or a read access instruction including a read address data and a read command. Issue. The access request unit also supplies the refresh control device with write address data and read address data as address data of the refresh control device. The memory control device preferably includes an arbitration unit that arbitrates access to the volatile memory device between the access request and the dummy read command or the auto-refresh command.

本発明の他の態様の1つは、上記のメモリ制御装置と、このメモリ制御装置により制御される揮発性メモリ装置と、データ処理部とを有するデータ処理装置である。データ処理部は、ライトアクセス命令により揮発性メモリ装置に書き込まれるデータを生成し、リードアクセス命令により揮発性メモリ装置から読み出されるデータによる処理を実行する機能を含む。典型的なデータ処理装置は、ASIC、プロセッサ、マイクロコンピュータなどの半導体集積回路装置である。データ処理装置は、プリンタ、パーソナルコンピュータ、携帯電話、PDAなどの情報処理端末であってもよい。   Another aspect of the present invention is a data processing device having the above memory control device, a volatile memory device controlled by the memory control device, and a data processing unit. The data processing unit includes a function of generating data to be written to the volatile memory device by a write access command and executing a process using data read from the volatile memory device by a read access command. A typical data processing device is a semiconductor integrated circuit device such as an ASIC, a processor, or a microcomputer. The data processing apparatus may be an information processing terminal such as a printer, a personal computer, a mobile phone, or a PDA.

本発明の他の態様の1つは、メモリの制御方法であり、以下のステップを含む。
(1)第1のアドレスおよび第2のアドレスを含むアドレスデータによりアクセス可能な多数のメモリセルを含む揮発性メモリ装置に対しライトアクセスした複数のライト済みの第1のアドレスを第1のアドレス記憶部に保持すること。
(2)複数のライト済みの第1のアドレスの内、リフレッシュ操作を要する第1の時間内にライトアクセスおよびリードアクセスのない、未アクセスのライト済みの第1のアドレスに対しダミーリードを行うダミーリードコマンドを発行すること。
(3)複数のライト済みの第1のアドレスの内、リードアクセスが行われたライト済みの第1のアドレスを第1のアドレス記憶部から消去すること。
Another aspect of the present invention is a memory control method including the following steps.
(1) First address storage of a plurality of written first addresses that have been write-accessed to a volatile memory device including a large number of memory cells accessible by address data including a first address and a second address To keep in the department.
(2) A dummy that performs a dummy read on an unaccessed written first address that does not have a write access and a read access within a first time that requires a refresh operation among a plurality of written first addresses. Issue a read command.
(3) Erasing, from the first address storage unit, the written first address that has been read-accessed among the plurality of written first addresses.

メモリの制御方法は、さらに以下のステップを含むことが望ましい。
(4)揮発性メモリ装置に対して第1の時間内に所定の回数のオートリフレッシュコマンドを発行すること。
(5)第1のアドレス記憶部に保持されている複数のライト済みの第1のアドレスに対しダミーリードを行うために要する第1の消費時間およびオートリフレッシュコマンドにより揮発性メモリ装置をオートリフレッシュするために要する第2の消費時間を比較し、第1の消費時間が第2の消費時間と同じまたは短いときは、ダミーリードコマンドを発行することを選択し、第1の消費時間が第2の消費時間より長いときは、オートリフレッシュコマンドを発行することを選択すること。
It is desirable that the memory control method further includes the following steps.
(4) Issue a predetermined number of auto-refresh commands to the volatile memory device within a first time.
(5) The volatile memory device is auto-refreshed by the first consumption time and the auto-refresh command required for performing the dummy read with respect to the plurality of written first addresses held in the first address storage unit. The second consumption time required for the comparison is compared, and when the first consumption time is the same as or shorter than the second consumption time, it is selected to issue a dummy read command, and the first consumption time is the second consumption time. If it is longer than the consumption time, choose to issue an auto-refresh command.

図1に、プリンタの概略構成を示している。プリンタ1は、インクジェットヘッドなどの印刷機構、紙送り機構などを含む印刷機構(プリンタメカ)2と、プリンタコントローラ3とを含む。プリンタコントローラ3は、プリンタメカ2の制御を行うプリンタメカコントローラ4と、CPU5と、CPU5で稼働するプログラムを格納したROM6と、パーソナルコンピュータ(PC)9などのホスト装置と適当な媒体、たとえば、LANインターフェイス、USBなどのシリアルインターフェイスなどにより接続するためのインターフェイス7と、印刷データを処理するためのデータ処理ユニット10と、これらを接続するバス8とを含む。データ処理ユニット10は、データの解凍・伸長、色変換、誤差拡散などの印刷用のデータを生成するために必要な種々の処理を実行するようにユーザにより設計されたデータ処理部(ASIC)11と、作業用のデータ格納領域を提供するメモリ(DRAM)12と、ASIC11とDRAM12との間の入出力を制御するメモリコントローラ(DRAMコントローラ)13とを含む。メモリコントローラ13は、ASIC11に搭載されており、DRAM12とはメモリインタフェイス14により接続されている。   FIG. 1 shows a schematic configuration of the printer. The printer 1 includes a printing mechanism (printer mechanism) 2 including a printing mechanism such as an inkjet head, a paper feed mechanism, and the like, and a printer controller 3. The printer controller 3 includes a printer mechanism controller 4 that controls the printer mechanism 2, a CPU 5, a ROM 6 that stores a program that runs on the CPU 5, a host device such as a personal computer (PC) 9, and an appropriate medium such as a LAN. It includes an interface 7 for connection by an interface, a serial interface such as USB, a data processing unit 10 for processing print data, and a bus 8 for connecting them. The data processing unit 10 is a data processing unit (ASIC) 11 designed by a user to perform various processes necessary for generating data for printing such as data decompression / decompression, color conversion, and error diffusion. And a memory (DRAM) 12 that provides a working data storage area, and a memory controller (DRAM controller) 13 that controls input / output between the ASIC 11 and the DRAM 12. The memory controller 13 is mounted on the ASIC 11 and is connected to the DRAM 12 via the memory interface 14.

DRAMコントローラ13は、ASIC11から供給される、ライトアドレスデータ(ライト用のアドレスデータ)およびライトコマンドを含むライトアクセス命令、リードアドレスデータ(リード用のアドレスデータ)およびリードコマンドを含むリードアクセス命令を、DRAM12に対するアクセス要求に変換して発行する。ASIC11は、ライトアクセス命令によりDRAM12に書き込まれるデータを生成し、また、リードアクセス命令によりDRAM12から読み出されるデータによる処理を実行する。DRAM12は、多数の揮発性メモリセルを含む揮発性メモリ装置の1つの例である。DRAM12は、たとえば、DDR、DDR2、DDR3などのSDRAMである。DRAMコントローラ13は、さらにDRAM12のリフレッシュを行うリフレッシュ制御ユニット20を含む。   The DRAM controller 13 receives a write access instruction including a write address data (write address data) and a write command, a read address data (read address data) and a read access instruction including a read command, which are supplied from the ASIC 11. It is converted into an access request for the DRAM 12 and issued. The ASIC 11 generates data to be written to the DRAM 12 by a write access command, and executes processing based on data read from the DRAM 12 by a read access command. DRAM 12 is one example of a volatile memory device that includes a large number of volatile memory cells. The DRAM 12 is an SDRAM such as DDR, DDR2, or DDR3, for example. The DRAM controller 13 further includes a refresh control unit 20 that refreshes the DRAM 12.

図2に、DRAMコントローラ13の構成をさらに詳しく示している。DRAMコントローラ13は、ASIC11のアクセス制御部18から発行されるライトアクセス命令φ1およびリードアクセス命令φ2をデコードして、DRAM12に対するアクセス要求を発行するアクセス要求ユニット28と、DRAM12のリフレッシュを行うリフレッシュ制御ユニット20と、これらのユニットからDRAM12に対する入出力を調停する調停ユニット(アービタ)29とを含む。アクセス要求ユニット28は、アクセス命令φ1およびφ2の含まれるアドレスデータ(ライト用のアドレスデータおよびリード用のアドレスデータ、以降ではアドレス)をDRAM12にアクセスするためのロウアドレス(行アドレス、第1のアドレス)Arとカラムアドレス(列アドレス、第2のアドレス)Acとに分けて、DRAM12に発行する機能を含む。DRAM12に含まれる多数のメモリセルは、まず、ロウアドレスArにより行、たとえば2kバイトのメモリセルが指定され、次にカラムアドレスAcにより列が指定されることにより所定のメモリセルにデータを書き込んだり、メモリセルからデータを読み出すことができる。   FIG. 2 shows the configuration of the DRAM controller 13 in more detail. The DRAM controller 13 decodes the write access instruction φ1 and the read access instruction φ2 issued from the access control unit 18 of the ASIC 11, and issues an access request unit 28 for issuing an access request to the DRAM 12, and a refresh control unit for refreshing the DRAM 12. 20 and an arbitration unit (arbiter) 29 that arbitrates input / output to / from the DRAM 12 from these units. The access request unit 28 has a row address (row address, first address) for accessing the address data (write address data and read address data, hereinafter referred to as addresses) included in the access instructions φ1 and φ2 to the DRAM 12. ) Ar and a column address (column address, second address) Ac are divided and issued to the DRAM 12. A large number of memory cells included in the DRAM 12 are first designated by a row address Ar, for example, a memory cell of 2 kbytes, and then a column is designated by a column address Ac, whereby data is written to a predetermined memory cell. Data can be read from the memory cell.

アクセス要求ユニット28は、さらに、DRAM12にデータを書き込み、または、DRAM12からデータを読み出すために、コマンド、たとえば、RAS(ローアドレスストローブ)信号、CAS(カラムアドレスストローブ)信号、WE(ライトイネーブル)信号などを用いてDRAM12を制御する。また、アクセス要求ユニット28は、アドレスおよびデータをDRAM12に供給するタイミング調整用のFF(フリップフロップ)27などを含む。アクセス要求ユニット28は、さらに、アクセス命令φ1およびφ2を受信すると、リフレッシュ制御ユニット20に対して、それらの命令φ1またはφ2に含まれている、ロウアドレスArと、コマンド、すなわち、ライトコマンドCwおよびリードコマンドCrを供給する。   The access request unit 28 further writes commands to the DRAM 12 or reads data from the DRAM 12 by using commands such as a RAS (row address strobe) signal, a CAS (column address strobe) signal, and a WE (write enable) signal. The DRAM 12 is controlled using the above. The access request unit 28 includes a timing adjustment FF (flip-flop) 27 for supplying an address and data to the DRAM 12. When the access request unit 28 further receives the access commands φ1 and φ2, the access request unit 28 sends the row address Ar and the command, that is, the write command Cw and the command included in the command φ1 or φ2 to the refresh control unit 20. A read command Cr is supplied.

リフレッシュ制御ユニット20は、ライトコマンドCwによりライト(書き込み)を検出するライト検出ユニット21と、リードコマンドCrによりリード(読み出し)を検出するリード検出ユニット22と、ライトコマンドCwとともに供給されたロウアドレスArを、ライト済みのロウアドレスとして格納するロウアドレス保持ユニット(ロウアドレス記憶部)23とを含む。ロウアドレス保持ユニット23は、SRAM23mを備えている。   The refresh control unit 20 includes a write detection unit 21 that detects a write (write) by a write command Cw, a read detection unit 22 that detects a read (read) by a read command Cr, and a row address Ar supplied together with the write command Cw. Is stored as a written row address, and a row address holding unit (row address storage unit) 23 is stored. The row address holding unit 23 includes an SRAM 23m.

リフレッシュ制御ユニット20は、ロウアドレス保持ユニット23に格納される複数のロウアドレスArの登録25aおよび削除25dを制御する更新ユニット25を含む。登録する機能25aは、ライト検出ユニット21がライトコマンドCwを検出すると、ロウアドレスArをロウアドレス保持ユニット23に登録する。削除する機能25dは、リード検出ユニット22がリードコマンドCrを検出し、さらに、最終リード判断ユニット24により最終リードであることが判明すると、そのときのロウアドレスArをロウアドレス保持ユニット23から削除する。最終リード判断ユニット24は、リードコマンドCrと、ASIC11のデータ破棄有効判断ユニット19から供給されるデータ破棄有効信号φ3との論理積により最終リードを検出し、リード後はリフレッシュを要しないデータになることを判断する。   The refresh control unit 20 includes an update unit 25 that controls registration 25 a and deletion 25 d of a plurality of row addresses Ar stored in the row address holding unit 23. The registering function 25 a registers the row address Ar in the row address holding unit 23 when the write detection unit 21 detects the write command Cw. The delete function 25d detects the read command Cr by the read detection unit 22 and further deletes the row address Ar at that time from the row address holding unit 23 when the final read determination unit 24 finds that the read is the final read. . The final read determination unit 24 detects the final read by the logical product of the read command Cr and the data discard valid signal φ3 supplied from the data discard valid determination unit 19 of the ASIC 11 and becomes data that does not require refreshing after the read. Judge that.

最終リード判断ユニット24は、同じアドレスにリードが繰り返される可能性があるアプリケーションを実装するのに有効である。一方、同じアドレスにリードが繰り返されないアプリケーションを実装する場合は、最終リード判断ユニット24を省略し、リードアクセスのロウアドレスArをロウアドレス保持ユニット23から削除してもよい。また、同じアドレスにリードが繰り返される可能性がゼロではないアプリケーションを実装する場合は、ASIC11にデータ保持判断ユニットを設け、それから供給されるデータ保持信号とリードコマンドCrとの論理積によりデータ保持型リードアクセスであることを判断するユニットを設けることが望ましい。そして、データ保持型リードアクセスの場合は、ロウアドレス保持ユニット23からリードアクセスされたロウアドレスを削除せずに保持することが望ましい。   The final read determination unit 24 is effective for mounting an application in which a read may be repeated at the same address. On the other hand, when an application in which reading is not repeated at the same address is mounted, the final read determination unit 24 may be omitted, and the row address Ar for read access may be deleted from the row address holding unit 23. When an application where the possibility of repeated reads is not zero is mounted at the same address, a data retention determination unit is provided in the ASIC 11, and a data retention type is obtained by a logical product of a data retention signal supplied therefrom and a read command Cr. It is desirable to provide a unit that determines read access. In the case of data holding read access, it is desirable to hold the row address read-accessed from the row address holding unit 23 without deleting it.

リフレッシュ制御ユニット20は、さらに、ダミーリードユニット30を含む。ダミーリードユニット30は、ロウアドレス保持ユニット23に格納された複数のライト済みのロウアドレスArの内、リフレッシュ操作を要するリフレッシュサイクル(第1の時間)tr内にライトアクセスおよびリードアクセスのない、未アクセスのライト済みのロウアドレスArに対しダミーリードを行うダミーリードコマンドCdrを発行する。ダミーリードユニット30は、ロウアドレス保持ユニット23に保持されている複数のロウアドレスArのそれぞれについて最終のアクセスからの時間をカウントするリフレッシュカウンタ31と、リフレッシュカウンタ31がリフレッシュサイクルtrに達するとダミーリードコマンドを発行するユニット(ダミーリードコマンド発行ユニット)32とを含む。   The refresh control unit 20 further includes a dummy read unit 30. The dummy read unit 30 includes a plurality of already-written row addresses Ar stored in the row address holding unit 23, and has no write access and read access within a refresh cycle (first time) tr that requires a refresh operation. A dummy read command Cdr for performing a dummy read is issued to the row address Ar to which access has been written. The dummy read unit 30 includes a refresh counter 31 that counts the time from the last access for each of a plurality of row addresses Ar held in the row address holding unit 23, and a dummy read unit 31 when the refresh counter 31 reaches the refresh cycle tr. And a unit (dummy read command issuing unit) 32 for issuing commands.

リフレッシュカウンタ31は、ライト検出ユニット21およびリード検出ユニット22によりライトコマンドCwまたはリードコマンドCrが検出されると、そのロウアドレスArのカウントをリセットする。また、ダミーリードコマンド発行ユニット32からダミーリードコマンドCdrが発行されると、そのロウアドレスArのカウントをリセットする。リフレッシュカウンタ31は、たとえば、64msのリフレッシュサイクルtrをダウンカウントしてもアップカウントしてもよい。したがって、まず、あるロウアドレスArにライトアクセスがあり、データが書き込まれると、カウンタ31はリセットされるので、リフレッシュサイクルtrの間は、そのロウアドレスArにダミーリードは行われない。また、リフレッシュサイクルtrの間にリードアクセスがあると、カウンタ31は再びリセットされるので、その後のリフレッシュサイクルtrの間は、ダミーリードは行われない。   When the write detection unit 21 and the read detection unit 22 detect the write command Cw or the read command Cr, the refresh counter 31 resets the count of the row address Ar. When the dummy read command Cdr is issued from the dummy read command issuing unit 32, the count of the row address Ar is reset. For example, the refresh counter 31 may count down or count up a 64 ms refresh cycle tr. Therefore, first, when there is a write access to a certain row address Ar and data is written, the counter 31 is reset. Therefore, no dummy read is performed on the row address Ar during the refresh cycle tr. If there is a read access during the refresh cycle tr, the counter 31 is reset again, so that no dummy read is performed during the subsequent refresh cycle tr.

DRAM12に対するライトアクセス、リードアクセスおよびダミーリードアクセスが同時に行われることはないので、複数のロウアドレスArについてリフレッシュサイクルtrが同時にカウントアップ(カウントダウン)されることはなく、複数のロウアドレスArに対して同時にダミーリードコマンドCdrが発行されることはない。しかしながら、リードアクセスあるいはライトアクセスと、ダミーリードアクセス(ダミーリードコマンド)とが競合する可能性はあり、そのようなアクセスの競合は調停ユニット(アービタ)29により調整される。   Since the write access, read access, and dummy read access to the DRAM 12 are not performed simultaneously, the refresh cycle tr is not counted up (counted down) for a plurality of row addresses Ar at the same time. At the same time, the dummy read command Cdr is not issued. However, there is a possibility that read access or write access and dummy read access (dummy read command) conflict, and such access conflict is adjusted by an arbitration unit (arbiter) 29.

リフレッシュ制御ユニット20はさらに、DRAM12に対してリフレッシュサイクル(第1の時間)tr内に所定の回数のオートリフレッシュコマンドCarを発行するオートリフレッシュユニット40と、オートリフレッシュユニット40およびダミーリードユニット30の有効無効を選択する監視ユニット50とを含む。オートリフレッシュユニット40が有効になると、たとえば、512MbitsのDRAM12に対して8192回/64msのオートリフレッシュコマンドCarを発行する。   The refresh control unit 20 further activates the auto-refresh unit 40 that issues a predetermined number of auto-refresh commands Car within the refresh cycle (first time) tr to the DRAM 12, and the validity of the auto-refresh unit 40 and the dummy read unit 30. And a monitoring unit 50 that selects invalidity. When the auto-refresh unit 40 becomes valid, for example, an auto-refresh command Car of 8192 times / 64 ms is issued to the 512 Mbits DRAM 12.

監視ユニット50は、オートリフレッシュによりリフレッシュサイクルtrの間にロスする時間(第2の消費時間)Tbがセットされるレジスタ51と、1回のダミーリードに要する時間がセットされるレジスタ52と、ロウアドレス保持ユニット23に保持されているロウアドレスArの数をカウントするカウンタ53と、レジスタ52の時間とカウンタ53のカウント値によりリフレッシュサイクルtrの間にダミーリードに要する時間(第1の消費時間)Taを計算する乗算器55とを含む。カウンタ53は、更新ユニット25において登録25aが選択されると1つアップし、削除25dが選択されると1つダウンすることによりロウアドレス保持ユニット23に保持されているロウアドレスArの数(セット数)をカウントする。   The monitoring unit 50 includes a register 51 in which a time (second consumption time) Tb that is lost during the refresh cycle tr due to auto-refresh is set, a register 52 in which the time required for one dummy read is set, A counter 53 that counts the number of row addresses Ar held in the address holding unit 23, and a time required for dummy reading during the refresh cycle tr according to the time of the register 52 and the count value of the counter 53 (first consumption time) And a multiplier 55 for calculating Ta. The counter 53 is incremented by one when the registration unit 25a is selected in the update unit 25, and is decremented by one when the deletion unit 25d is selected, thereby setting the number of row addresses Ar held in the row address holding unit 23 (set). Count).

監視ユニット50は、さらにコンパレータ56を含み、第2の消費時間Tbが第1の消費時間Taより小さいと選択信号φsを「1」にセットしてセレクタ57を制御し、オートリフレッシュユニット40から出力されるオートリフレッシュコマンドCarを有効にする。一方、コンパレータ56は、第1の消費時間Taが第2の消費時間Tbと等しいか、または小さいときは、選択信号φsを「0」にセットしてセレクタ57を制御し、ダミーリードユニット30から出力されるダミーリードコマンドCdrを有効にする。したがって、このリフレッシュ制御ユニット20においては、ロウアドレス保持ユニット23に保持されている複数のライト済みのロウアドレスArに対しダミーリードを行うために要する第1の消費時間Taと、オートリフレッシュユニット40によりDRAM12をオートリフレッシュするために要する第2の消費時間Tbとを比較し、第1の消費時間Taが第2の消費時間Tbと同じまたは短いときは、ダミーリードユニット30を有効、オートリフレッシュユニット40を無効とする。逆に、第1の消費時間Taが第2の消費時間Tbより長いときは、ダミーリードユニット30を無効、オートリフレッシュユニット40を有効とする。   The monitoring unit 50 further includes a comparator 56. When the second consumption time Tb is smaller than the first consumption time Ta, the selection signal φs is set to “1” to control the selector 57 and output from the auto-refresh unit 40. Enable the auto-refresh command Car. On the other hand, when the first consumption time Ta is equal to or shorter than the second consumption time Tb, the comparator 56 sets the selection signal φs to “0” to control the selector 57, and from the dummy read unit 30. The output dummy read command Cdr is validated. Therefore, in the refresh control unit 20, the first consumption time Ta required for performing dummy read on the plurality of written row addresses Ar held in the row address holding unit 23 and the auto refresh unit 40 The second consumption time Tb required for auto-refreshing the DRAM 12 is compared. When the first consumption time Ta is equal to or shorter than the second consumption time Tb, the dummy read unit 30 is enabled, and the auto-refresh unit 40 Is invalid. Conversely, when the first consumption time Ta is longer than the second consumption time Tb, the dummy read unit 30 is disabled and the auto-refresh unit 40 is enabled.

図3に、リフレッシュ制御ユニット20の動作をフローチャートにより示している。ステップ71でコマンドの有無を確認する。ASIC11からコマンドが供給され、ステップ81においてライト検出ユニット21がライトを検出すると、ステップ82で更新ユニット25によりロウアドレスArをロウアドレス保持ユニット23に登録する(ステップ(1))。次に、ステップ83で、監視ユニット50により第1の消費時間Taと第2の消費時間Tbとを計算し、ステップ84で比較した結果、第2の消費時間Tbが第1の消費時間Taよりも短ければ、ステップ85でオートリフレッシュユニット40を有効にする。逆に、第1の消費時間Taが第2の消費時間Tbと同じまたは短ければ、ステップ86でダミーリードユニット30を有効にする(ステップ(5))。   FIG. 3 is a flowchart showing the operation of the refresh control unit 20. In step 71, the presence or absence of a command is confirmed. When a command is supplied from the ASIC 11 and the write detection unit 21 detects a write in step 81, the row address Ar is registered in the row address holding unit 23 by the update unit 25 in step 82 (step (1)). Next, in step 83, the first consumption time Ta and the second consumption time Tb are calculated by the monitoring unit 50, and as a result of comparison in step 84, the second consumption time Tb is greater than the first consumption time Ta. If shorter, the auto refresh unit 40 is validated in step 85. Conversely, if the first consumption time Ta is the same as or shorter than the second consumption time Tb, the dummy read unit 30 is validated in step 86 (step (5)).

ダミーリードユニット30が選択されている場合、DRAM12に対するライトアクセスおよび/またはリードアクセスにより、ロウアドレス保持ユニット23に保持されているロウアドレスArのすべてに対してダミーリードコマンドCdrが発行される可能性は少ない。したがって、ダミーリードを行うことにより消費される時間(第1の消費時間)Taは計算値または最大値であり、実際に消費される時間は第1の消費時間Taより短くなる。一方、オートリフレッシュにより消費される時間(第2の消費時間)Tbは、オートリフレッシュコマンドCarによりどのロウアドレスArがリフレッシュされているかDRAMコントローラ13ではわからないため、所定の数だけ発行する必要があり、第2の消費時間Tbは必ず消費される。したがって、監視ユニット50は、第1の消費時間Taと第2の消費時間Tbとが等しい場合は、ダミーリードユニット30を選択し、リフレッシュに要する時間が短縮されるようにする。   When the dummy read unit 30 is selected, a dummy read command Cdr may be issued to all the row addresses Ar held in the row address holding unit 23 by write access and / or read access to the DRAM 12. There are few. Therefore, the time (first consumption time) Ta consumed by performing the dummy read is a calculated value or the maximum value, and the actual consumed time is shorter than the first consumption time Ta. On the other hand, the DRAM controller 13 does not know which row address Ar is refreshed by the auto-refresh command Car, so it is necessary to issue a predetermined number of times (second consumption time) Tb consumed by auto-refresh. The second consumption time Tb is always consumed. Therefore, when the first consumption time Ta and the second consumption time Tb are equal, the monitoring unit 50 selects the dummy read unit 30 so that the time required for refreshing is shortened.

ステップ81において、リード検出ユニット22がリードを検出すると、ステップ87で最終リード判断ユニット24により最終リードか否かを判断する。検出されたリードが最終リードの場合は、そのリードアドレスのDRAM12のデータはリードされた後に破棄されてもよいので、リフレッシュの必要はない。したがって、ステップ88で更新ユニット25によりロウアドレス保持ユニット23に保持されているロウアドレスArを削除(消去)する(ステップ(3))。最終リードを判断せずに、同じアドレスにリードが繰り返される可能性があるアプリケーションの場合はリードアクセスで該当するロウアドレスArを削除してもよい。一方、再リードされる頻度が少ない場合は、データ保持型リードアクセスであることを判断して、データ保持型リードアクセスの場合は、ロウアドレス保持ユニット23からリードアクセスされたロウアドレスを削除せずに保持するようにしてもよい。   In step 81, when the lead detection unit 22 detects a lead, in step 87, the final lead determination unit 24 determines whether or not it is the final lead. If the detected read is the final read, the data in the DRAM 12 at the read address may be discarded after being read, so there is no need for refresh. Accordingly, in step 88, the row address Ar held in the row address holding unit 23 is deleted (erased) by the update unit 25 (step (3)). In the case of an application in which reading may be repeated at the same address without determining the final read, the corresponding row address Ar may be deleted by read access. On the other hand, when the frequency of rereading is low, it is determined that the data holding read access is performed, and in the case of data holding read access, the row address read-accessed from the row address holding unit 23 is not deleted. You may make it hold | maintain.

ステップ81において、ライトを検出した場合も、リードを検出した場合もDRAM12に対するアクセスが発生する。したがって、ステップ76においてリフレッシュカウンタ31をリセットする。これにより、ダミーリードユニット30が有効になっている場合は、最終アクセスからリフレッシュサイクルtrが経過した後でなければ、そのロウアドレスArにはダミーリードコマンドCdrが発行されない。すなわち、ロウアドレス保持ユニット23に保持されている複数のライト済みのロウアドレスArの内、リフレッシュ操作を要するリフレッシュサイクル(第1の時間)trのサイクル内(時間内)にライトアクセスおよびリードアクセスのない、未アクセスのライト済みのロウアドレスArに対してのみダミーリードを行うダミーリードコマンドCdrが発行される(ステップ(2))。したがって、リフレッシュによるDRAM12の転送レートの低下を抑制できる。   In step 81, access to the DRAM 12 occurs both when a write is detected and when a read is detected. Accordingly, the refresh counter 31 is reset at step 76. Thus, when the dummy read unit 30 is enabled, the dummy read command Cdr is not issued to the row address Ar unless the refresh cycle tr has elapsed since the last access. That is, among the plurality of already written row addresses Ar held in the row address holding unit 23, write access and read access are performed within a cycle (in time) of a refresh cycle (first time) tr that requires a refresh operation. A dummy read command Cdr for performing a dummy read is issued only to a non-accessed, written row address Ar (step (2)). Therefore, a decrease in the transfer rate of the DRAM 12 due to refresh can be suppressed.

ステップ71においてコマンドが検出されない場合は、ステップ72において、セレクタ57でダミーリードユニット30が有効になっていれば、ステップ74でリフレッシュカウンタ31がカウントアップしたか否かが判断される。リフレッシュカウンタ31のカウントによりリフレッシュサイクルtrが経過している場合は、ステップ75でダミーリードユニット30から、リフレッシュを要するロウアドレスArに対してダミーリードコマンドCdrが発行される。ライトアクセスされ、データが破棄されていないロウアドレスArに対しては、リフレッシュサイクルtrが経過すればダミーリードコマンドCdrが発行される。したがって、ダミーリードにより、DRAM12に書き込まれ、後でリードされる可能性のあるデータは有効に保持される。   If no command is detected in step 71, in step 72, if the dummy read unit 30 is enabled by the selector 57, it is determined in step 74 whether or not the refresh counter 31 has been counted up. If the refresh cycle tr has elapsed according to the count of the refresh counter 31, in step 75, a dummy read command Cdr is issued from the dummy read unit 30 to the row address Ar that requires refresh. A dummy read command Cdr is issued to the row address Ar that has been write-accessed and the data has not been discarded when the refresh cycle tr elapses. Therefore, data that is written to the DRAM 12 by the dummy read and may be read later is effectively held.

ステップ72においてオートリフレッシュユニット40が選択されている場合は、ステップ73においてオートリフレッシュユニット40から所定のタイミングでオートリフレッシュコマンドCarが発行される(ステップ(4))。したがって、オートリフレッシュにより、DRAM12に書き込まれ、後でリードされる可能性のあるデータは有効に保持される。さらに、このリフレッシュ制御ユニット20においては、ダミーリードユニット30が選択されることにより、リフレッシュサイクルtr中にリフレッシュのために消費される時間が短くなることがあっても、リフレッシュにより消費される時間が最大でオートリフレッシュにより消費される時間Tbを超えることはない。   If the auto-refresh unit 40 is selected in step 72, an auto-refresh command Car is issued from the auto-refresh unit 40 at a predetermined timing in step 73 (step (4)). Therefore, data that may be written to the DRAM 12 and read later by the auto refresh is effectively held. Further, in the refresh control unit 20, even if the time consumed for refresh during the refresh cycle tr may be shortened by selecting the dummy read unit 30, the time consumed by refresh is reduced. The time Tb consumed by auto refresh is not exceeded at the maximum.

このように、リフレッシュ制御ユニット20を採用することにより、DRAM12に書き込まれているデータ量がそれほど多くない場合は、DRAM12に対してオートリフレッシュコマンドCarを発行する必要がなく、オートリフレッシュの実行によるDRAM12に対する転送レートの低下を抑制できる。たとえば、オートリフレッシュの実行により、64msのリフレッシュサイクルtrの間に1.15ms(8192回×140ns)のDRAM12へアクセスできない時間(無駄時間)が発生するが、その無駄時間のすべて、または一部の発生を抑制できる。   As described above, by adopting the refresh control unit 20, when the amount of data written in the DRAM 12 is not so large, it is not necessary to issue the auto-refresh command Car to the DRAM 12, and the DRAM 12 by executing auto-refresh. It is possible to suppress a decrease in the transfer rate. For example, when auto refresh is performed, a time (waste time) in which the DRAM 12 of 1.15 ms (8192 times × 140 ns) cannot be accessed is generated during a refresh cycle tr of 64 ms. Generation can be suppressed.

さらに、リフレッシュ制御ユニット20においては、ダミーリードの対象となるロウアドレスArを常にアップデートすることにより、DRAM12のメモリセルのうち、必要最小限のセル(ロウアドレス)に対してリフレッシュを行う。このため、DRAM12を、キャッシュのように局所的に利用し、頻繁にライトアクセスおよびリードアクセスを繰り返すアプリケーションをASIC11において実行している場合は、ダミーリードコマンドCdrの発行も抑制できる。したがって、DRAM12をリフレッシュすることによる転送レートの低下をさらに抑制できる。ベストケースでは、リフレッシュのためのダミーリードコマンドCdrが発行されず、DRAM12をリフレッシュするために消費される時間をゼロにすることも可能である。   Further, the refresh control unit 20 refreshes the minimum necessary cells (row addresses) among the memory cells of the DRAM 12 by constantly updating the row address Ar to be subjected to dummy reading. Therefore, when the ASIC 11 is executing an application that uses the DRAM 12 locally like a cache and frequently repeats write access and read access, the dummy read command Cdr can also be suppressed. Therefore, it is possible to further suppress a decrease in transfer rate caused by refreshing the DRAM 12. In the best case, the dummy read command Cdr for refresh is not issued, and the time consumed for refreshing the DRAM 12 can be made zero.

また、ダミーリードコマンドCdrの発行頻度が少ない場合は、調停ユニット29により、リードアクセスあるいはライトアクセスを優先させることが可能である。したがって、ダミーリードコマンドCdrが発行される条件であっても、ダミーリードはDRAMアクセスが発生していない期間で実行することで転送レートの低下を抑制する、または転送レートの低下が発生しないようにすることが可能となる。   When the frequency of issuing the dummy read command Cdr is low, the arbitration unit 29 can prioritize read access or write access. Therefore, even if the dummy read command Cdr is issued, the dummy read is executed in a period in which no DRAM access occurs, so that the transfer rate is prevented from being lowered or the transfer rate is not lowered. It becomes possible to do.

一方、ダミーリードを発行するためのロウアドレスの数が数万個に増えることで、オートリフレッシュコマンド制御よりも転送レートの低下が大きくなることも考えられる。このリフレッシュ制御ユニット20では、監視ユニット50において、ダミーリードによるリフレッシュサイクルの消費時間Taを常に監視し、消費時間が長くなったときはオートリフレッシュコマンド制御に自動で切り替える。したがって、オートリフレッシュコマンドによる消費時間Tbよりリフレッシュ時間が長くなることはない。このため、ダミーリードによるリフレッシュを採用しても、オートリフレッシュコマンド制御を採用したときの転送レートは担保される。   On the other hand, when the number of row addresses for issuing dummy reads increases to several tens of thousands, it is conceivable that the transfer rate decreases more than the auto refresh command control. In the refresh control unit 20, the monitoring unit 50 constantly monitors the refresh cycle consumption time Ta by dummy read, and automatically switches to auto refresh command control when the consumption time becomes longer. Therefore, the refresh time does not become longer than the consumption time Tb by the auto refresh command. For this reason, even if the refresh by dummy read is employed, the transfer rate when the auto refresh command control is employed is secured.

なお、上記の例では、ダミーリードを発行するサイクルをリフレッシュカウンタ31によりカウントすることにより監視しているが、リフレッシュサイクルの監視手段には公知のさまざまな方式を採用できる。また、データ処理ユニット10はASIC11に限定されることはなく、汎用タイプのプロセッサ、マイクロコンピュータであってもよい。さらに、リフレッシュ制御ユニットによりリフレッシュの対象となる揮発性メモリ装置は、DRAMに限らず、他のリフレッシュを要するメモリに適用できる。また、上記ではプリンタおよびプリンタコントローラを例に説明しているが、コンピュータおよびその他の情報端末におけるメモリ制御にも本発明は適用できる。   In the above example, the cycle for issuing the dummy read is monitored by counting by the refresh counter 31, but various well-known methods can be employed for the refresh cycle monitoring means. The data processing unit 10 is not limited to the ASIC 11, and may be a general-purpose type processor or microcomputer. Further, the volatile memory device to be refreshed by the refresh control unit is not limited to the DRAM, but can be applied to other memories requiring refresh. In the above description, the printer and the printer controller are described as examples. However, the present invention can also be applied to memory control in a computer and other information terminals.

プリンタの概略構成を示すブロック図である。FIG. 2 is a block diagram illustrating a schematic configuration of a printer. DRAMコントローラの構成を示すブロック図である。It is a block diagram which shows the structure of a DRAM controller. リフレッシュ制御ユニットの動作を示すフローチャートである。It is a flowchart which shows operation | movement of a refresh control unit.

符号の説明Explanation of symbols

10 データ処理装置、 11 ASIC、 12 DRAM
13 DRAMコントローラ
20 リフレッシュ制御ユニット
10 data processing device, 11 ASIC, 12 DRAM
13 DRAM controller 20 Refresh control unit

Claims (10)

第1のアドレスおよび第2のアドレスを含むアドレスデータによりアクセス可能な多数のメモリセルを含む揮発性メモリ装置に対しライトアクセスした複数のライト済みの前記第1のアドレスを保持する第1のアドレス記憶部と、
前記複数のライト済みの第1のアドレスの内、リフレッシュ操作を要する第1の時間内にライトアクセスおよびリードアクセスのない、未アクセスのライト済みの第1のアドレスに対しダミーリードを行うダミーリードコマンドを発行するダミーリードユニットと、
前記複数のライト済みの第1のアドレスの内、リードアクセスが行われたライト済みの第1のアドレスを前記第1のアドレス記憶部から消去する更新ユニットと
前記揮発性メモリ装置に対して前記第1の時間内に所定の回数のオートリフレッシュコマンドを発行するオートリフレッシュユニットと、
前記第1のアドレス記憶部に保持されている前記複数のライト済みの第1のアドレスに対しダミーリードを行うために要する第1の消費時間および前記オートリフレッシュユニットにより前記揮発性メモリ装置をオートリフレッシュするために要する第2の消費時間を比較し、前記第1の消費時間が前記第2の消費時間と同じまたは短いときは、前記ダミーリードユニットを有効、前記オートリフレッシュユニットを無効とし、前記第1の消費時間が前記第2の消費時間より長いときは、前記ダミーリードユニットを無効、前記オートリフレッシュユニットを有効とする監視ユニットとを有するリフレッシュ制御装置。
A first address storage for holding a plurality of written first addresses that have been write-accessed to a volatile memory device including a large number of memory cells accessible by address data including a first address and a second address And
A dummy read command for performing a dummy read on an unaccessed written first address that does not have a write access and a read access within a first time requiring a refresh operation among the plurality of written first addresses. A dummy lead unit that issues
An update unit for erasing, from the first address storage unit, a written first address that has been read-accessed among the plurality of written first addresses ;
An auto-refresh unit that issues a predetermined number of auto-refresh commands within the first time to the volatile memory device;
The volatile memory device is auto-refreshed by a first consumption time required for performing a dummy read on the plurality of written first addresses held in the first address storage unit and the auto-refresh unit. And comparing the second consumption time required for the operation, when the first consumption time is equal to or shorter than the second consumption time, the dummy read unit is enabled, the auto-refresh unit is disabled, And a monitoring unit that disables the dummy read unit and enables the auto-refresh unit when the consumption time of one is longer than the second consumption time .
請求項1において、前記更新ユニットは、前記リードアクセスが最終のリードアクセスであることを判断する機能を含み、前記最終のリードアクセスが行われたライト済みの第1のアドレスのみを前記第1のアドレス記憶部から消去する、リフレッシュ制御装置。   2. The update unit according to claim 1, wherein the update unit includes a function of determining that the read access is a final read access, and only the first written address where the final read access has been performed is the first address. A refresh control device for erasing from the address storage unit. 請求項1において、前記更新ユニットは、前記リードアクセスが、同一のアドレスに対する再リードを確保するためのデータ保持型リードアクセスであることを判断する機能を含み、前記データ保持型リードアクセスが行われたライト済みの第1のアドレスは前記第1のアドレス記憶部に保持する、リフレッシュ制御装置。   2. The update unit according to claim 1, wherein the update unit includes a function of determining that the read access is a data holding type read access for ensuring re-reading for the same address, and the data holding type read access is performed. The refresh control device, wherein the written first address is held in the first address storage unit. 請求項1ないしのいずれかにおいて、前記揮発性メモリ装置はDRAMであり、前記第1のアドレスはロウアドレスである、リフレッシュ制御装置。 In any one of claims 1 to 3, wherein the volatile memory device is a DRAM, the first address is a row address, the refresh controller. 請求項1ないしのいずれかに記載のリフレッシュ制御装置と、
前記揮発性メモリ装置に対するライト用のアドレスデータおよびライトコマンドを含むライトアクセス命令、または、リード用のアドレスデータおよびリードコマンドを含むリードアクセス命令に基づき前記揮発性メモリ装置にアクセス要求を発行するアクセス要求ユニットであって、前記リフレッシュ制御装置に前記ライト用のアドレスデータおよび前記リード用のアドレスデータを供給するアクセス要求ユニットとを有するメモリ制御装置。
A refresh control device according to any one of claims 1 to 4 ,
An access request for issuing an access request to the volatile memory device based on a write access instruction including address data and a write command for writing to the volatile memory device, or a read access command including a read address data and a read command A memory control device comprising: an access request unit for supplying the write address data and the read address data to the refresh control device.
請求項において、前記アクセス要求および前記ダミーリードコマンドの、前記揮発性メモリ装置に対するアクセスを調停する調停ユニットを、さらに有するメモリ制御装置。 6. The memory control device according to claim 5 , further comprising an arbitration unit that arbitrates access to the volatile memory device by the access request and the dummy read command. 請求項5または6に記載のメモリ制御装置と、
前記メモリ制御装置により制御される揮発性メモリ装置と、
前記ライトアクセス命令により前記揮発性メモリ装置に書き込まれるデータを生成し、前記リードアクセス命令により前記揮発性メモリ装置から読み出されるデータによる処理を実行するためのデータ処理部とを有するデータ処理装置。
A memory control device according to claim 5 or 6 ,
A volatile memory device controlled by the memory control device;
A data processing device comprising: a data processing unit for generating data to be written to the volatile memory device by the write access command and executing processing by data read from the volatile memory device by the read access command.
第1のアドレスおよび第2のアドレスを含むアドレスデータによりアクセス可能な多数のメモリセルを含む揮発性メモリ装置に対しライトアクセスした複数のライト済みの前記第1のアドレスを第1のアドレス記憶部に保持することと、
前記複数のライト済みの第1のアドレスの内、リフレッシュ操作を要する第1の時間内にライトアクセスおよびリードアクセスのない、未アクセスのライト済みの第1のアドレスに対しダミーリードを行うダミーリードコマンドを発行することと、
前記複数のライト済みの第1のアドレスの内、リードアクセスが行われたライト済みの第1のアドレスを前記第1のアドレス記憶部から消去することと
前記揮発性メモリ装置に対して前記第1の時間内に所定の回数のオートリフレッシュコマンドを発行することと、
前記第1のアドレス記憶部に保持されている前記複数のライト済みの第1のアドレスに対しダミーリードを行うために要する第1の消費時間および前記オートリフレッシュコマンドにより前記揮発性メモリ装置をオートリフレッシュするために要する第2の消費時間を比較し、前記第1の消費時間が前記第2の消費時間と同じまたは短いときは、前記ダミーリードコマンドを発行することを選択し、前記第1の消費時間が前記第2の消費時間より長いときは、前記オートリフレッシュコマンドを発行することを選択することとを有するメモリの制御方法。
A plurality of written first addresses that have been write-accessed to a volatile memory device including a large number of memory cells that can be accessed by address data including the first address and the second address are stored in a first address storage unit. Holding,
A dummy read command for performing a dummy read on an unaccessed written first address that does not have a write access and a read access within a first time requiring a refresh operation among the plurality of written first addresses. And issuing
Erasing, from the first address storage unit, a written first address that has been read-accessed among the plurality of written first addresses ;
Issuing a predetermined number of auto-refresh commands to the volatile memory device within the first time;
The volatile memory device is auto-refreshed by a first consumption time required for performing a dummy read on the plurality of written first addresses held in the first address storage unit and the auto-refresh command. A second consumption time required for the first consumption time is compared, and when the first consumption time is equal to or shorter than the second consumption time, the dummy read command is selected and the first consumption time is selected. And selecting to issue the auto-refresh command when the time is longer than the second consumption time .
請求項において、前記消去することは、前記リードアクセスが最終のリードアクセスであることを判断することと、前記最終のリードアクセスが行われたライト済みの第1のアドレスのみを前記第1のアドレス記憶部から消去することとを含む、制御方法。 9. The erasing according to claim 8 , wherein the erasing includes determining that the read access is a final read access, and only writing the first address that has been subjected to the final read access. Erasing from the address storage unit. 請求項において、前記消去することは、前記リードアクセスが、同一のアドレスに対する再リードを確保するためのデータ保持型リードアクセスであることを判断することと、前記データ保持型リードアクセスが行われたライト済みの第1のアドレスは前記第1のアドレス記憶部に保持することとを含む、制御方法。 9. The erasing according to claim 8 , wherein the erasing is performed by determining that the read access is a data holding type read access for re-reading the same address and the data holding type read access is performed. Holding the first written address in the first address storage unit.
JP2008302742A 2008-11-27 2008-11-27 Memory control method and apparatus Expired - Fee Related JP5311466B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008302742A JP5311466B2 (en) 2008-11-27 2008-11-27 Memory control method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008302742A JP5311466B2 (en) 2008-11-27 2008-11-27 Memory control method and apparatus

Publications (2)

Publication Number Publication Date
JP2010129123A JP2010129123A (en) 2010-06-10
JP5311466B2 true JP5311466B2 (en) 2013-10-09

Family

ID=42329408

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008302742A Expired - Fee Related JP5311466B2 (en) 2008-11-27 2008-11-27 Memory control method and apparatus

Country Status (1)

Country Link
JP (1) JP5311466B2 (en)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63229694A (en) * 1987-03-19 1988-09-26 Fujitsu Ltd Refreshment controller
JPH0294095A (en) * 1988-09-30 1990-04-04 Fuji Xerox Co Ltd Memory controller
JPH0419896A (en) * 1990-05-14 1992-01-23 Sharp Corp Refresh method for dynamic memory
JPH0478094A (en) * 1990-07-13 1992-03-12 Nec Corp Refresh control circuit
JPH09312094A (en) * 1996-05-23 1997-12-02 Nec Eng Ltd Refresh control system
JP2000339953A (en) * 1999-05-27 2000-12-08 Ricoh Co Ltd DRAM refresh control circuit
JP2004047051A (en) * 2002-05-17 2004-02-12 Matsushita Electric Ind Co Ltd Memory control device and method and program
JP4786155B2 (en) * 2004-08-18 2011-10-05 ルネサスエレクトロニクス株式会社 Semiconductor device and semiconductor device refresh processing method

Also Published As

Publication number Publication date
JP2010129123A (en) 2010-06-10

Similar Documents

Publication Publication Date Title
TWI735727B (en) Memory device and refresh method thereof and memory system
JP5157207B2 (en) Semiconductor memory, memory controller, system, and operation method of semiconductor memory
JP5000844B2 (en) Memory controller and refresh cycle control method for controlling refresh cycle of memory
JP5171096B2 (en) Method for driving semiconductor memory device
KR102389820B1 (en) Memory controller and memory system controlling training operation and operating method thereof
TW201923764A (en) Partial refresh technique to save memory refresh
CN102969017B (en) For making the minimized method and system of the impact of refresh operation on volatibility memory performance
KR20230069234A (en) Refresh management list for DRAM
JP2008210088A (en) Memory controller, semiconductor memory access control method and system
KR102449333B1 (en) Memory system and read request management method thereof
CN114464227A (en) Memory device, host, and operating method thereof
KR20170093053A (en) Volatile memory device and electronic device comprising refresh information generator, providing the information method thereof, and controlling the refresh operation method thereof
JP3705276B2 (en) Refresh control and internal voltage generation in semiconductor memory devices
JP5311466B2 (en) Memory control method and apparatus
JP2000235789A (en) Memory controller
JP2022042635A (en) Semiconductor storage device
US7536519B2 (en) Memory access control apparatus and method for accomodating effects of signal delays caused by load
JP4561089B2 (en) Storage device
US20250006242A1 (en) Memory device and refresh controlling method thereof
JP2005174437A5 (en)
JP2007280562A (en) Refresh control device
JP4100403B2 (en) Refresh control and internal voltage generation in semiconductor memory devices
JP4207905B2 (en) Refresh control and internal voltage generation in semiconductor memory devices
CN118942505A (en) A memory refresh method, device, electronic device and storage medium
JP2014093030A (en) SDRAM controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130405

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130627

R150 Certificate of patent or registration of utility model

Ref document number: 5311466

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees