JPH10199236A - Dram controller - Google Patents

Dram controller

Info

Publication number
JPH10199236A
JPH10199236A JP9005882A JP588297A JPH10199236A JP H10199236 A JPH10199236 A JP H10199236A JP 9005882 A JP9005882 A JP 9005882A JP 588297 A JP588297 A JP 588297A JP H10199236 A JPH10199236 A JP H10199236A
Authority
JP
Japan
Prior art keywords
refresh
control unit
dram
external bus
counter
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.)
Pending
Application number
JP9005882A
Other languages
Japanese (ja)
Inventor
Hideaki Yamashita
英明 山下
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP9005882A priority Critical patent/JPH10199236A/en
Publication of JPH10199236A publication Critical patent/JPH10199236A/en
Pending legal-status Critical Current

Links

Landscapes

  • Dram (AREA)

Abstract

PROBLEM TO BE SOLVED: To improve data transfer efficiency on an external bus by reducing influence of refresh of DRAM (Dynamic Random Access Memory) on an external bus. SOLUTION: A refresh control section 102 refreshes a DRAM 1 in every constant interval. The refresh control section 102 fetches, in the refresh timing, the information to indicate whether the transfer on the PCI bus 6 from a burst detecting section 101 is a burst transfer or not. The refresh control section 102 refreshes, not during the burst transfer, the DRAM 1 but protracts the refresh, during the burst transfer, and updates the refresh protracting counter 103. The refresh control section 102 refreshes DRAM1 after the burst transfer. Thereby, intermission of the PCT bus 6 during data transfer can be reduced.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、DRAMコントロ
ーラに関し、より特定的には、DRAMのリフレッシュ
動作を制御するためのDRAMコントローラに関する。
The present invention relates to a DRAM controller, and more particularly, to a DRAM controller for controlling a refresh operation of a DRAM.

【0002】[0002]

【従来の技術】周知のごとく、DRAM(Dynami
c Random Access Memory)は、
大容量,低価格という優れた特徴を有しており、様々な
分野で使用されている。しかしながら、DRAMには、
定期的にリフレッシュを行う必要があるという使用上の
制約がある。リフレッシュを行う間隔は、DRAMの種
類によって異なり、「512リフレッシュ/8ミリ
秒」,「1024リフレッシュ/128ミリ秒」等のよ
うに定められている。例えば、「512リフレッシュ/
8ミリ秒」では、8ミリ秒の1リフレッシュサイクル内
に、全アドレスをリフレッシュしなければならない。す
なわち、8ミリ秒間に、アドレスを変化させていき、5
12回のリフレッシュ動作をしなければならない。例え
ば、タイマを用いて一定間隔に1回ずつリフレッシュを
行う方式の場合、「512リフレッシュ/8ミリ秒」で
は、約15マイクロ秒ごとにリフレッシュを行うことに
なる。
2. Description of the Related Art As is well known, a DRAM (Dynami) is used.
c Random Access Memory)
It has excellent features such as large capacity and low price, and is used in various fields. However, DRAM has
There is a usage constraint that refreshing must be performed periodically. The refresh interval varies depending on the type of the DRAM, and is defined as “512 refresh / 8 ms”, “1024 refresh / 128 ms” or the like. For example, "512 refresh /
In "8 ms", all addresses must be refreshed within one refresh cycle of 8 ms. That is, the address is changed in 8 milliseconds, and 5
Twelve refresh operations must be performed. For example, in the case of a method of performing refresh once at regular intervals using a timer, "512 refresh / 8 ms" means that refresh is performed approximately every 15 microseconds.

【0003】DRAMのリフレッシュ動作を制御する方
式として、例えば特開平6−4454号公報に記載され
た「DRAMの制御方式」が知られている。図9は、上
記公開公報に記載されたDRAMの制御システムを示す
ブロック図である。図9において、このシステムは、D
RAM1と、リフレッシュ制御部2と、DMA制御部3
とを備えている。DRAM1およびDMA制御部3は、
内部バス4に接続され、DMA制御部3は、DMA動作
中であることをリフレッシュ制御部2へ示す。リフレッ
シュ制御部2は、リフレッシュ用カウンタを内蔵してお
り、一定間隔毎にDRAM1に対してリフレッシュ動作
を行う。
As a method for controlling a refresh operation of a DRAM, for example, a "DRAM control method" described in Japanese Patent Application Laid-Open No. 6-4454 is known. FIG. 9 is a block diagram showing a DRAM control system described in the above-mentioned publication. In FIG. 9, the system is D
RAM 1, refresh controller 2, DMA controller 3
And The DRAM 1 and the DMA control unit 3
The DMA control unit 3 is connected to the internal bus 4 and indicates to the refresh control unit 2 that the DMA operation is being performed. The refresh control unit 2 has a built-in refresh counter, and performs a refresh operation on the DRAM 1 at regular intervals.

【0004】今、DMA制御部3がDMA動作中である
とすると、DMA制御部3は、DMA動作中を示す信号
線を介してリフレッシュ制御部2へDMA動作中である
ことを通知する。リフレッシュ制御部2は、リフレッシ
ュを行うタイミングとなった場合においても、DMA動
作中が通知されていれば、リフレッシュ動作を行わず、
DMA動作中が通知されなくなった時点でリフレッシュ
動作を行う。このように、DMAのブロック転送中のリ
フレッシュ動作をなくすことによって、DMAのブロッ
ク転送の中断がなくなり、高速な転送ができる。
[0004] Assuming that the DMA control unit 3 is performing the DMA operation, the DMA control unit 3 notifies the refresh control unit 2 that the DMA operation is in progress via a signal line indicating that the DMA operation is in progress. The refresh control unit 2 does not perform the refresh operation even if it is time to perform the refresh, if the DMA operation is in progress,
The refresh operation is performed when the notification of the DMA operation is stopped. In this manner, by eliminating the refresh operation during the DMA block transfer, the interruption of the DMA block transfer is eliminated, and high-speed transfer can be performed.

【0005】[0005]

【発明が解決しようとする課題】上述した従来のリフレ
ッシュ制御方式は、内部バス上の閉じた機能の動作に対
しては、リフレッシュ動作の影響をなくすことができ
る。しかしながら、外部バスに接続している機能の動作
に対しては、リフレッシュ動作による外部バス上の転送
の切断をなくすことができず、外部バス上の動作にリフ
レッシュ動作が影響し、外部バスの転送の効率を低下さ
せてしまう。
The above-described conventional refresh control method can eliminate the influence of the refresh operation on the operation of the closed function on the internal bus. However, for the operation of the function connected to the external bus, the disconnection of the transfer on the external bus by the refresh operation cannot be eliminated, and the refresh operation affects the operation on the external bus, and the transfer of the external bus is performed. The efficiency of the system is reduced.

【0006】それ故に、本発明の目的は、外部バスへの
DRAMのリフレッシュの影響を少なくし、外部バス上
のデータ転送効率を向上させることが可能なDRAMコ
ントローラを提供することである。
SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide a DRAM controller capable of reducing the influence of a refresh of a DRAM on an external bus and improving data transfer efficiency on the external bus.

【0007】[0007]

【課題を解決するための手段および発明の効果】第1の
発明は、内部バスを介して接続されたDRAM(ダイナ
ミック・ランダム・アクセスメモリ)を制御するための
DRAMコントローラであって、内部バスには、外部バ
スに対してアクセスの対象となるターゲットとして動作
し、かつ外部バスとのインタフェイスとしての機能を有
する外部バス制御部がさらに接続されており、バースト
検出部と、DRAMを定期的にリフレッシュするリフレ
ッシュ制御部と、リフレッシュ先送りカウンタとを備
え、バースト検出部は、外部バス制御部を介してDRA
Mと外部バス上の他のデバイスとの間でバースト転送
(複数のデータをまとめて転送すること)が行われてい
るか否かおよび当該バースト転送が終了したかを検出し
てリフレッシュ制御部に通知し、リフレッシュ制御部
は、バースト転送が行われていないときに定期的なリフ
レッシュタイミングが到来したときは、DRAMに対し
て定期的なリフレッシュを行い、バースト転送の継続中
に定期的なリフレッシュタイミングが到来したときは、
DRAMの定期的なリフレッシュを先送りしてリフレッ
シュ先送りカウンタの計数値を順方向に更新し、バース
ト転送が終了したときにリフレッシュ先送りカウンタの
計数値がリフレッシュの先送りが行われていることを示
していれば、当該計数値に対応する回数分だけDRAM
のリフレッシュを行うと共に、リフレッシュ先送りカウ
ンタの計数値を逆方向に更新することを特徴とする。
A first invention is a DRAM controller for controlling a DRAM (Dynamic Random Access Memory) connected via an internal bus. Is connected to an external bus control unit which operates as a target to be accessed to the external bus and has a function as an interface with the external bus. A refresh control unit for refreshing, and a refresh advance counter, and the burst detection unit is provided with a DRA via an external bus control unit.
Detects whether or not burst transfer (to transfer a plurality of data at a time) between M and another device on the external bus is performed and whether or not the burst transfer has been completed, and notifies the refresh control unit. When the periodic refresh timing arrives when the burst transfer is not performed, the refresh controller performs the periodic refresh on the DRAM, and the periodic refresh timing is maintained during the burst transfer. When it arrives,
The periodic refresh of the DRAM is postponed, and the count value of the refresh postponement counter is updated in the forward direction. When the burst transfer is completed, the count value of the refresh postponement counter indicates that the refresh is postponed. If the number of DRAMs corresponds to the count value,
, And the count value of the refresh advance counter is updated in the reverse direction.

【0008】第1の発明によれば、外部バス上でバース
ト転送が継続している状態で定期的なリフレッシュタイ
ミングが到来したときは、DRAMの定期的なリフレッ
シュを先送りし、バースト転送の終了後、先送りされた
DRAMのリフレッシュを行うようにしているので、外
部バス上でバースト転送が切断される回数を少なくしつ
つ、規定の回数のリフレッシュをDRAMに対して行う
ことが可能となる。その結果、リフレッシュのために外
部バス上のデータ転送速度が低下するのを防止すること
ができる。
According to the first aspect of the present invention, when the periodic refresh timing arrives in a state where the burst transfer is continued on the external bus, the periodic refresh of the DRAM is postponed, and after the end of the burst transfer. Since the DRAM which has been postponed is refreshed, the DRAM can be refreshed a prescribed number of times while reducing the number of times the burst transfer is cut off on the external bus. As a result, it is possible to prevent the data transfer rate on the external bus from being reduced due to the refresh.

【0009】第2の発明は、第1の発明において、リフ
レッシュ制御部は、バースト転送の継続中にリフレッシ
ュサイクルの終了時間が所定時間後に迫ったとき、外部
バス制御部に対してデータ転送を中止するように指示す
ると共に、DRAMのリフレッシュを先送りしないこと
を特徴とする。
In a second aspect based on the first aspect, the refresh control unit suspends the data transfer to the external bus control unit when the end time of the refresh cycle approaches a predetermined time while the burst transfer is continuing. And refresh of the DRAM is not postponed.

【0010】第2の発明によれば、バースト転送継続中
にリフレッシュサイクルの終了時間が所定時間後に迫っ
たときは、外部バス制御部に対してデータ転送を中止す
るように指示すると共に、DRAMのリフレッシュを先
送りしないようにしているので、リフレッシュの先送り
によってDRAMの記憶データが破壊されるのを防止す
ることができる。
According to the second aspect, when the end time of the refresh cycle approaches the predetermined time after the burst transfer is continued, the external bus control unit is instructed to stop the data transfer and the DRAM bus is stopped. Since the refresh is not postponed, it is possible to prevent the data stored in the DRAM from being destroyed by the postponement of the refresh.

【0011】第3の発明は、内部バスを介して接続され
たDRAMを制御するためのDRAMコントローラであ
って、内部バスには、外部バスに対してアクセスの対象
となるターゲットとして動作し、かつ外部バスとのイン
タフェイスとしての機能を有する外部バス制御部がさら
に接続されており、バスビジー検出部と、DRAMを定
期的にリフレッシュするリフレッシュ制御部とを備え、
バスビジー検出部は、外部バス制御部の動作に基づき、
外部バスがバスビジーの状態(外部バス制御部を除く外
部バス上のデバイス間でデータの転送が行われている状
態)であるか否かを検出してリフレッシュ制御部に通知
し、リフレッシュ制御部は、外部バスがバスビジーの状
態になったとき、定期的なリフレッシュタイミングが到
来する前に、DRAMの先行リフレッシュを行うことを
特徴とする。
A third invention is a DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus operates as a target to be accessed with respect to an external bus, and An external bus control unit having a function as an interface with the external bus is further connected, and includes a bus busy detection unit and a refresh control unit that periodically refreshes the DRAM,
The bus busy detector is based on the operation of the external bus controller,
The refresh control unit detects whether the external bus is in a bus busy state (a state in which data is transferred between devices on the external bus except the external bus control unit) and notifies the refresh control unit. When the external bus is in a bus busy state, the DRAM is pre-refreshed before the periodic refresh timing arrives.

【0012】第3の発明によれば、外部バスがバスビジ
ーの状態、すなわちDRAMに対するアクセスが行われ
ない期間を利用して、DRAMを先行してリフレッシュ
するようにしているので、外部バスからのアクセス中に
リフレッシュのために外部バス上のデータ転送を中断す
る回数が減る。従って、リフレッシュのために外部バス
上のデータ転送速度が低下するのを防止することができ
る。
According to the third aspect of the present invention, the DRAM is refreshed in advance using the bus busy state of the external bus, that is, a period during which no access to the DRAM is performed. During this time, the number of times that data transfer on the external bus is interrupted for refreshing is reduced. Therefore, it is possible to prevent the data transfer speed on the external bus from being reduced due to the refresh.

【0013】第4の発明は、第3の発明において、先行
リフレッシュカウンタをさらに備え、リフレッシュ制御
部は、外部バスがバスビジーの状態になったことに応答
して、DRAMの先行リフレッシュを行ったとき、先行
リフレッシュカウンタの計数値を順方向に更新し、定期
的なリフレッシュタイミングが到来したときに、先行リ
フレッシュカウンタの計数値が先行リフレッシュの行わ
れていることを示している場合には、DRAMの定期的
なリフレッシュを行わずに先行リフレッシュカウンタの
計数値を逆方向に更新し、定期的なリフレッシュタイミ
ングが到来したときに、先行リフレッシュカウンタの計
数値が先行リフレッシュの行われていないことを示して
いる場合には、DRAMに対して定期的なリフレッシュ
を行うことを特徴とする。
According to a fourth aspect of the present invention, in the third aspect, a preceding refresh counter is further provided, and the refresh control unit performs a preceding refresh of the DRAM in response to the external bus being in a bus busy state. When the count value of the preceding refresh counter is updated in the forward direction, and when the periodic refresh timing arrives, the count value of the preceding refresh counter indicates that the preceding refresh is being performed, The count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter indicates that the preceding refresh has not been performed. The feature is to periodically refresh the DRAM if To.

【0014】第4の発明によれば、DRAMの先行リフ
レッシュを行ったときに、先行リフレッシュカウンタの
計数値を順方向に更新し、定期的なリフレッシュタイミ
ングが到来したときに、先行リフレッシュカウンタの計
数値が先行リフレッシュの行われていることを示してい
る場合には、DRAMの定期的なリフレッシュを行わず
に先行リフレッシュカウンタの計数値を逆方向に更新す
るようにしているので、先行リフレッシュを行った回数
分だけ定期的なリフレッシュの回数を確実に減らすこと
ができ、結果として、リフレッシュによって外部バス上
のデータ転送が中断される回数をより一層低減すること
ができる。
According to the fourth aspect, when the preceding refresh of the DRAM is performed, the count value of the preceding refresh counter is updated in the forward direction, and when the periodic refresh timing arrives, the count of the preceding refresh counter is counted. When the numerical value indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh of the DRAM. The number of regular refreshes can be reliably reduced by the number of times, and as a result, the number of times data transfer on the external bus is interrupted by the refresh can be further reduced.

【0015】第5の発明は、内部バスを介して接続され
たDRAMを制御するためのDRAMコントローラであ
って、内部バスには、外部バスに対してアクセスの対象
となるターゲットとして動作し、かつ外部バスとのイン
タフェイスとしての機能を有する外部バス制御部がさら
に接続されており、アクセス検出部と、DRAMを定期
的にリフレッシュするリフレッシュ制御部とを備え、ア
クセス検出部は、外部バスを介して外部バス制御部の内
部要素がアクセスされているか否かを検出してリフレッ
シュ制御部に通知し、リフレッシュ制御部は、アクセス
制御部から外部バス制御部の内部要素がアクセスされた
旨の通知を受け取ったとき、定期的なリフレッシュタイ
ミングが到来する前に、DRAMの先行リフレッシュを
行うことを特徴とする。
According to a fifth aspect of the present invention, there is provided a DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus operates as a target to be accessed with respect to an external bus, and An external bus control unit having a function as an interface with the external bus is further connected. The external bus control unit includes an access detection unit and a refresh control unit that periodically refreshes the DRAM. The refresh control unit detects whether the internal element of the external bus control unit is accessed and notifies the refresh control unit.The refresh control unit notifies the access control unit that the internal element of the external bus control unit is accessed. When received, before the periodic refresh timing arrives, the preceding refresh of the DRAM is performed. That.

【0016】第5の発明によれば、外部バスを介して外
部バス制御部の内部要素がアクセスされている状態、す
なわちDRAMに対するアクセスが行われない期間を利
用して、DRAMを先行してリフレッシュするようにし
ているので、外部バスからのアクセス中にリフレッシュ
のために外部バス上のデータ転送を中断する回数が減
る。従って、リフレッシュのために外部バス上のデータ
転送速度が低下するのを防止することができる。
According to the fifth aspect, the DRAM is refreshed in advance by utilizing the state in which the internal elements of the external bus control unit are accessed via the external bus, that is, the period in which the access to the DRAM is not performed. Therefore, the number of times data transfer on the external bus is interrupted for refreshing during access from the external bus is reduced. Therefore, it is possible to prevent the data transfer speed on the external bus from being reduced due to the refresh.

【0017】第6の発明は、第5の発明において、先行
リフレッシュカウンタをさらに備え、リフレッシュ制御
部は、外部バス制御部の内部要素がアクセスされたこと
に応答して、DRAMのリフレッシュを行ったとき、先
行リフレッシュカウンタの計数値を順方向に更新し、定
期的なリフレッシュタイミングが到来したときに、先行
リフレッシュカウンタの計数値が先行リフレッシュの行
われていることを示している場合には、DRAMの定期
的なリフレッシュを行わずに先行リフレッシュカウンタ
の計数値を逆方向に更新し、定期的なリフレッシュタイ
ミングが到来したときに、先行リフレッシュカウンタの
計数値が先行リフレッシュの行われていないことを示し
ている場合には、DRAMに対して定期的なリフレッシ
ュを行うことを特徴とする。
In a sixth aspect based on the fifth aspect, the apparatus further comprises a preceding refresh counter, wherein the refresh control section refreshes the DRAM in response to an access to an internal element of the external bus control section. When the count value of the preceding refresh counter is updated in the forward direction, and the periodic refresh timing arrives, if the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the DRAM is updated. , The count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter indicates that the preceding refresh has not been performed. In this case, it is recommended that the DRAM be periodically refreshed. To.

【0018】第6の発明によれば、DRAMの先行リフ
レッシュを行ったときに、先行リフレッシュカウンタの
計数値を順方向に更新し、定期的なリフレッシュタイミ
ングが到来したときに、先行リフレッシュカウンタの計
数値が先行リフレッシュの行われていることを示してい
る場合には、DRAMの定期的なリフレッシュを行わず
に先行リフレッシュカウンタの計数値を逆方向に更新す
るようにしているので、先行リフレッシュを行った回数
分だけ定期的なリフレッシュの回数を確実に減らすこと
ができ、結果として、リフレッシュによって外部バス上
のデータ転送が中断される回数をより一層低減すること
ができる。
According to the sixth aspect of the present invention, when the preceding refresh of the DRAM is performed, the count value of the preceding refresh counter is updated in the forward direction. When the numerical value indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh of the DRAM. The number of regular refreshes can be reliably reduced by the number of times, and as a result, the number of times data transfer on the external bus is interrupted by the refresh can be further reduced.

【0019】第7の発明は、内部バスを介して接続され
たDRAMを制御するためのDRAMコントローラであ
って、内部バスには、外部バスに対してバスの使用権を
獲得しデータ転送を行うバスマスタとして動作し、かつ
外部バスとのインタフェイスとしての機能を有する外部
バス制御部がさらに接続されており、転送サイズ検出部
と、DRAMを定期的にリフレッシュするリフレッシュ
制御部と、先行リフレッシュカウンタとを備え、転送サ
イズ検出部は、外部バス制御部がバスマスタとしてこれ
からデータを転送しようとするとき、転送されるデータ
のサイズからデータの転送に必要な時間期間を求め、当
該時間期間内に発生するリフレッシュタイミングの回数
を算出してリフレッシュ制御部に通知し、リフレッシュ
制御部は、転送サイズ検出部からリフレッシュタイミン
グの回数を指示する通知を受け取ったとき、定期的なリ
フレッシュタイミング到来する前に、DRAMの先行リ
フレッシュを通知された回数分だけ行うと共に、先行リ
フレッシュカウンタの計数値を対応する回数分だけ順方
向に更新し、定期的なリフレッシュタイミングが到来し
たときに、先行リフレッシュカウンタの計数値が先行リ
フレッシュの行われていることを示している場合には、
DRAMの定期的なリフレッシュを行わずに先行リフレ
ッシュカウンタの計数値を逆方向に更新し、定期的なリ
フレッシュタイミングが到来したときに、先行リフレッ
シュカウンタの計数値が先行リフレッシュの行われてい
ないことを示している場合には、DRAMに対して定期
的なリフレッシュを行うことを特徴とする。
A seventh aspect of the present invention is a DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus acquires a right to use the bus with respect to an external bus and performs data transfer. An external bus control unit, which operates as a bus master and has a function as an interface with the external bus, is further connected, and includes a transfer size detection unit, a refresh control unit for periodically refreshing the DRAM, a preceding refresh counter, When the external bus control unit attempts to transfer data from now on as a bus master, the transfer size detection unit determines the time period necessary for data transfer from the size of the transferred data, and occurs within the time period. The number of times of the refresh timing is calculated and notified to the refresh control unit. When a notification indicating the number of refresh timings is received from the clock detection unit, before the periodic refresh timing arrives, the preceding refresh of the DRAM is performed for the notified number of times, and the count value of the preceding refresh counter is adjusted. Updating in the forward direction by the number of times, and when the periodic refresh timing arrives, if the count value of the preceding refresh counter indicates that the preceding refresh is being performed,
The count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh of the DRAM, and when the periodic refresh timing arrives, it is confirmed that the count value of the preceding refresh counter has not been performed. In this case, the DRAM is periodically refreshed.

【0020】第7の発明によれば、外部バス制御部がバ
スマスタとしてこれからデータを転送しようとするとき
に、転送されるデータのサイズからデータの転送に必要
な時間期間内に発生するリフレッシュタイミングの回数
を求め、対応する回数分だけDRAMを先行してリフレ
ッシュするようにしているので、外部バスからのアクセ
ス中にリフレッシュのために外部バス上のデータ転送を
中断する回数が減る。従って、リフレッシュのために外
部バス上のデータ転送速度が低下するのを防止すること
ができる。
According to the seventh aspect, when the external bus control unit attempts to transfer data from now on as a bus master, the refresh timing generated within the time period required for data transfer is determined based on the size of the data to be transferred. Since the number of times is obtained and the DRAM is refreshed in advance by the corresponding number, the number of times data transfer on the external bus is interrupted for refreshing during access from the external bus is reduced. Therefore, it is possible to prevent the data transfer speed on the external bus from being reduced due to the refresh.

【0021】第8の発明は、内部バスを介して接続され
たDRAMを制御するためのDRAMコントローラであ
って、内部バスには、外部バスに対してバスの使用権を
獲得しデータ転送を行うバスマスタとして動作し、かつ
外部バスとのインタフェイスとしての機能を有する外部
バス制御部がさらに接続されており、占有期間検出部
と、DRAMを定期的にリフレッシュするリフレッシュ
制御部と、先行リフレッシュカウンタとを備え、占有期
間検出部は、外部バス制御部がバスマスタとしてこれか
らデータを転送しようとするとき、外部バス制御部が1
回のデータ転送において外部バスを占有することが可能
な時間期間を検出し、その時間期間内に発生するリフレ
ッシュタイミングの回数を算出してリフレッシュ制御部
に通知し、リフレッシュ制御部は、占有期間検出部から
リフレッシュタイミングの回数を指示する通知を受け取
ったとき、定期的なリフレッシュタイミングが到来する
前に、DRAMの先行リフレッシュを通知された回数分
だけ行うと共に、先行リフレッシュカウンタの計数値を
対応する回数分だけ順方向に更新し、定期的なリフレッ
シュタイミングが到来したときに、先行リフレッシュカ
ウンタの計数値が先行リフレッシュの行われていること
を示している場合には、DRAMの定期的なリフレッシ
ュを行わずに先行リフレッシュカウンタの計数値を逆方
向に更新し、定期的なリフレッシュタイミングが到来し
たときに、先行リフレッシュカウンタの計数値が先行リ
フレッシュの行われていないことを示している場合に
は、DRAMに対して定期的なリフレッシュを行うこと
を特徴とする。
An eighth invention is a DRAM controller for controlling a DRAM connected via an internal bus. The DRAM controller acquires a right to use the bus with respect to an external bus and transfers data to the internal bus. An external bus control unit, which operates as a bus master and has a function as an interface with the external bus, is further connected, and includes an occupancy period detection unit, a refresh control unit for periodically refreshing the DRAM, a preceding refresh counter, The occupancy period detection unit is configured such that when the external bus control unit attempts to transfer data from now on as a bus master,
The time period during which the external bus can be occupied in one data transfer is detected, the number of refresh timings occurring during the time period is calculated and notified to the refresh control unit, and the refresh control unit detects the occupation period. When the notification indicating the number of refresh timings is received from the unit, before the periodic refresh timing arrives, the preceding refresh of the DRAM is performed for the notified number of times and the count value of the preceding refresh counter is set to the corresponding number of times. If the count value of the preceding refresh counter indicates that the preceding refresh is being performed when the periodic refresh timing arrives, the DRAM is periodically refreshed. The counter value of the preceding refresh counter is updated in the reverse direction When the refresh timing has arrived, when the count value of the previous refresh counter indicates that it is not subjected to the preceding refresh, and performs periodic refresh against DRAM.

【0022】第8の発明によれば、外部バス制御部がバ
スマスタとしてこれからデータを転送しようとするとき
に、外部バス制御部が1回のデータ転送において外部バ
スを占有することが可能な時間期間内に発生するリフレ
ッシュタイミングの回数を求め、対応する回数分だけD
RAMを先行してリフレッシュするようにしているの
で、外部バスからのアクセス中にリフレッシュのために
外部バス上のデータ転送を中断する回数が減る。従っ
て、リフレッシュのために外部バス上のデータ転送速度
が低下するのを防止することができる。
According to the eighth aspect, when the external bus control unit attempts to transfer data from now on as a bus master, the time period during which the external bus control unit can occupy the external bus in one data transfer The number of refresh timings that occur within
Since the RAM is refreshed in advance, the number of times data transfer on the external bus is interrupted for refreshing during access from the external bus is reduced. Therefore, it is possible to prevent the data transfer speed on the external bus from being reduced due to the refresh.

【0023】第9の発明は、第8の発明において、外部
バス制御部内には、マスタレイテンシタイマが設けられ
ており、占有期間検出部は、マスタレイテンシタイマに
設定されたタイマ値に基づいて、外部バス制御部が1回
のデータ転送において外部バスを占有することが可能な
時間期間を検出することを特徴とする。
In a ninth aspect based on the eighth aspect, a master latency timer is provided in the external bus control unit, and the occupation period detecting unit detects the master latency timer based on a timer value set in the master latency timer. The external bus control unit detects a time period in which the external bus can be occupied in one data transfer.

【0024】第10の発明は、内部バスを介して接続さ
れたDRAMを制御するためのDRAMコントローラで
あって、内部バスには、外部バスに対してバスの使用権
を獲得しデータ転送を行うバスマスタとして動作し、か
つ外部バスとのインタフェイスとしての機能を有する外
部バス制御部がさらに接続されており、バーストサイズ
演算部と、DRAMを定期的にリフレッシュするリフレ
ッシュ制御部と、先行リフレッシュカウンタとを備え、
バーストサイズ演算部は、外部バス制御部がバスマスタ
としてこれからデータを転送しようとするとき、データ
の転送に必要な時間期間および外部バス制御部が1回の
データ転送において外部バスを占有することが可能な時
間期間を検出し、これら時間期間の内のいずれか短い方
を選択し、選択した時間期間内に発生するリフレッシュ
タイミングの回数を算出してリフレッシュ制御部に通知
し、リフレッシュ制御部は、バーストサイズ演算部から
リフレッシュタイミングの回数を指示する通知を受け取
ったとき、定期的なリフレッシュタイミングが到来する
前に、DRAMの先行リフレッシュを通知された回数分
だけ行うと共に、先行リフレッシュカウンタの計数値を
対応する回数分だけ順方向に更新し、定期的なリフレッ
シュタイミングが到来したときに、先行リフレッシュカ
ウンタの計数値が先行リフレッシュの行われていること
を示している場合には、DRAMの定期的なリフレッシ
ュを行わずに先行リフレッシュカウンタの計数値を逆方
向に更新し、定期的なリフレッシュタイミングが到来し
たときに、先行リフレッシュカウンタの計数値が先行リ
フレッシュの行われていないことを示している場合に
は、DRAMに対して定期的なリフレッシュを行うこと
を特徴とする。
According to a tenth aspect, there is provided a DRAM controller for controlling a DRAM connected via an internal bus. The internal bus acquires a right to use the bus with respect to an external bus and performs data transfer. An external bus control unit that operates as a bus master and has a function as an interface with an external bus is further connected, and includes a burst size calculation unit, a refresh control unit that periodically refreshes the DRAM, a preceding refresh counter, With
When the external bus controller attempts to transfer data as a bus master, the burst size calculator can occupy the external bus in the time period required for data transfer and the external bus controller in one data transfer. The refresh control unit detects the shortest time period, selects the shorter one of the time periods, calculates the number of refresh timings occurring within the selected time period, and notifies the refresh control unit of the number. When a notification indicating the number of refresh timings is received from the size calculation unit, before the periodic refresh timing arrives, the preceding refresh of the DRAM is performed by the notified number and the count value of the preceding refresh counter is supported. Update in the forward direction by the number of times At this time, if the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction without performing the periodic refresh of the DRAM. When the periodic refresh timing arrives, if the count value of the preceding refresh counter indicates that the preceding refresh has not been performed, the DRAM is periodically refreshed. .

【0025】第10の発明によれば、外部バス制御部が
バスマスタとしてこれからデータを転送しようとすると
きに、データの転送に必要な時間期間および外部バス制
御部が1回のデータ転送において外部バスを占有するこ
とが可能な時間期間の内のいずれか短い方を選択し、選
択した時間期間内に発生するリフレッシュタイミングの
回数を求め、対応する回数分だけDRAMを先行してリ
フレッシュするようにしているので、外部バスからのア
クセス中にリフレッシュのために外部バス上のデータ転
送を中断する回数が減る。従って、リフレッシュのため
に外部バス上のデータ転送速度が低下するのを防止する
ことができる。
According to the tenth aspect, when the external bus control unit intends to transfer data from now on as a bus master, the time period required for data transfer and the external bus control unit can control the external bus in one data transfer. Is selected, the shorter of the time periods in which the DRAM can be occupied, the number of refresh timings occurring in the selected time period is determined, and the DRAM is refreshed earlier by the corresponding number of times. Therefore, the number of times data transfer on the external bus is interrupted for refreshing during access from the external bus is reduced. Therefore, it is possible to prevent the data transfer speed on the external bus from being reduced due to the refresh.

【0026】第11の発明は、内部バスを介して接続さ
れたDRAMを制御するためのDRAMコントローラで
あって、内部バスには、外部バスに対してバスの使用権
を獲得しデータ転送を行うバスマスタとして動作し、か
つ外部バスとのインタフェイスとしての機能を有する外
部バス制御部がさらに接続されており、バーストサイズ
演算部と、DRAMを定期的にリフレッシュするリフレ
ッシュ制御部と、リフレッシュ先送りカウンタと、先行
リフレッシュカウンタとを備え、バーストサイズ演算部
は、外部バス制御部がバスマスタとしてこれからデータ
を転送しようとするとき、データの転送に必要な時間期
間および外部バス制御部が1回のデータ転送において外
部バスを占有することが可能な時間期間を検出し、これ
ら時間期間の内のいずれか短い方を選択し、選択した時
間期間内に発生するリフレッシュタイミングの回数を算
出してリフレッシュ制御部に通知し、外部バス制御部に
よるデータの転送が終了したとき、データ転送の終了を
リフレッシュ制御部に通知し、リフレッシュ制御部は、
バーストサイズ演算部からリフレッシュタイミングの回
数を指示する通知を受け取ったとき、定期的なリフレッ
シュタイミングが到来する前に、DRAMの先行リフレ
ッシュを通知された回数分だけ行い、この場合におい
て、リフレッシュ先送りカウンタの計数値がリフレッシ
ュの先送りが行われていないことを示していれば、先行
リフレッシュカウンタの計数値を対応する回数分だけ順
方向に更新し、リフレッシュ先送りカウンタの計数値が
リフレッシュの先送りが行われていることを示していれ
ば、リフレッシュ先送りカウンタの計数値を対応する回
数分だけ逆方向に更新し、バーストサイズ演算部から外
部バス制御部によるデータの転送が終了した旨の通知を
受け取ったとき、リフレッシュ先送りカウンタの計数値
に対応する回数分だけDRAMのリフレッシュを行うと
共に、リフレッシュ先送りカウンタの計数値を逆方向に
更新し、外部バス制御部がデータの転送を継続中に定期
的なリフレッシュタイミングが到来したとき、DRAM
の定期的なリフレッシュを先送りし、この場合におい
て、先行リフレッシュカウンタの計数値が先行リフレッ
シュの行われていないことを示していれば、リフレッシ
ュ先送りカウンタの計数値を順方向に更新し、先行リフ
レッシュカウンタの計数値が先行リフレッシュの行われ
ていることを示していれば、先行リフレッシュカウンタ
の計数値を逆方向に更新し、外部バス制御部によるデー
タ転送が行われていない状態で定期的なリフレッシュタ
イミングが到来したとき、先行リフレッシュカウンタの
計数値が先行リフレッシュの行われていることを示して
いる場合には、DRAMの定期的なリフレッシュを行わ
ずに先行リフレッシュカウンタの計数値を逆方向に更新
し、外部バス制御部によるデータ転送が行われていない
状態で定期的なリフレッシュタイミングが到来したと
き、先行リフレッシュカウンタの計数値が先行リフレッ
シュの行われていないことを示している場合には、DR
AMに対して定期的なリフレッシュを行うことを特徴と
する。
An eleventh invention is a DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus acquires a right to use the bus with respect to an external bus and performs data transfer. An external bus control unit that operates as a bus master and has a function as an interface with an external bus is further connected thereto. A burst size calculation unit, a refresh control unit that periodically refreshes the DRAM, a refresh advance counter, And a preceding refresh counter, and when the external bus control unit attempts to transfer data from now on as a bus master, the burst size calculation unit performs the time period necessary for data transfer and the external bus control unit in one data transfer. Detects time periods during which the external bus can be occupied, and within these time periods The shorter one is selected, the number of refresh timings occurring within the selected time period is calculated and notified to the refresh controller, and when the data transfer by the external bus controller is completed, the end of the data transfer is refreshed. Notify the control unit, the refresh control unit,
When a notification indicating the number of refresh timings is received from the burst size calculation unit, before the periodic refresh timing arrives, the preceding refresh of the DRAM is performed for the notified number of times. If the count value indicates that the advance of refresh is not performed, the count value of the preceding refresh counter is updated in the forward direction by the corresponding number of times, and the count value of the refresh advance counter is determined to be forward of refresh. If it indicates that the data transfer by the external bus control unit has been completed from the burst size calculation unit, the count value of the refresh advance counter is updated in the reverse direction by the corresponding number of times. Number of times corresponding to the count value of the refresh advance counter Performs refresh of DRAM, when the count value of the refresh postponed counter is updated in the opposite direction, periodic refresh timing external bus controller for the duration of the transfer of the data has arrived, DRAM
Is periodically postponed, and in this case, if the count value of the preceding refresh counter indicates that the preceding refresh has not been performed, the count value of the preceding refresh counter is updated in the forward direction, and the preceding refresh counter is updated. If the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction. Is reached, if the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction without performing periodic DRAM refresh. In the state where data transfer by the external bus control unit is not performed, Tsu when the shoe timing has arrived, when the count value of the previous refresh counter indicates that it is not subjected to the preceding refresh, DR
It is characterized in that the AM is periodically refreshed.

【0027】第11の発明によれば、外部バス制御部が
バスマスタとしてこれからデータを転送しようとすると
きに、データの転送に必要な時間期間および外部バス制
御部が1回のデータ転送において外部バスを占有するこ
とが可能な時間期間の内のいずれか短い方を選択し、選
択した時間期間内に発生するリフレッシュタイミングの
回数を求め、対応する回数分だけDRAMを先行してリ
フレッシュするようにしているので、外部バスからのア
クセス中にリフレッシュのために外部バス上のデータ転
送を中断する回数が減る。また、外部バス上でバースト
転送が継続している状態で定期的なリフレッシュタイミ
ングが到来したときは、DRAMの定期的なリフレッシ
ュを先送りし、バースト転送の終了後、先送りされたD
RAMのリフレッシュを行うようにしているので、外部
バス上でバースト転送が切断される回数を少なくしつ
つ、規定の回数のリフレッシュをDRAMに対して行う
ことが可能となる。その結果、リフレッシュのために外
部バス上のデータ転送速度が低下するのを防止すること
ができる。
According to the eleventh aspect, when the external bus control unit attempts to transfer data from now on as a bus master, the time period required for data transfer and the external bus control unit can control the external bus in one data transfer. Is selected, the shorter of the time periods in which the DRAM can be occupied, the number of refresh timings occurring in the selected time period is determined, and the DRAM is refreshed earlier by the corresponding number of times. Therefore, the number of times data transfer on the external bus is interrupted for refreshing during access from the external bus is reduced. Further, when the periodic refresh timing arrives while the burst transfer is continuing on the external bus, the periodic refresh of the DRAM is postponed.
Since the RAM is refreshed, the DRAM can be refreshed a specified number of times while reducing the number of times burst transfer is cut off on the external bus. As a result, it is possible to prevent the data transfer rate on the external bus from being reduced due to the refresh.

【0028】第12の発明は、第11の発明において、
リフレッシュ制御部は、外部バス制御部がデータの転送
を継続中にリフレッシュサイクルの終了時間が所定時間
後に迫ったとき、外部バス制御部に対してデータ転送を
中止するように指示すると共に、DRAMのリフレッシ
ュを先送りしないことを特徴とする。
According to a twelfth aspect, in the eleventh aspect,
The refresh control unit instructs the external bus control unit to stop the data transfer when the end time of the refresh cycle approaches a predetermined time while the external bus control unit is continuing the data transfer, and also performs the DRAM The refresh is not postponed.

【0029】第12の発明によれば、外部バス制御部が
データ転送を継続中にリフレッシュサイクルの終了時間
が所定時間後に迫ったときは、外部バス制御部に対して
データ転送を中止するように指示すると共に、DRAM
のリフレッシュを先送りしないようにしているので、リ
フレッシュの先送りによってDRAMの記憶データが破
壊されるのを防止することができる。
According to the twelfth aspect, when the end time of the refresh cycle approaches the predetermined time after the external bus control unit is continuing the data transfer, the data transfer to the external bus control unit is stopped. Instruct and DRAM
Is not postponed, it is possible to prevent the data stored in the DRAM from being destroyed by the postponement of the refresh.

【0030】第13の発明は、第11の発明において、
先行リフレッシュカウンタおよびリフレッシュ先送りカ
ウンタは、1つの先行/先送りリフレッシュカウンタで
構成され、リフレッシュ制御部は、リフレッシュを先送
りした場合には先行/先送りリフレッシュカウンタを逆
方向に更新し、先行リフレッシュを行った場合には先行
/先送りリフレッシュカウンタを順方向に更新し、先行
/先送りリフレッシュカウンタの計数値の正負によっ
て、リフレッシュの先送りが行われているか、先行リフ
レッシュが行われているかを判断することを特徴とす
る。
According to a thirteenth aspect, in the eleventh aspect,
The advance refresh counter and the refresh advance counter are configured by one advance / advance refresh counter. When the refresh is advanced, the refresh control unit updates the advance / advance refresh counter in the reverse direction and performs the advance refresh. Is characterized in that a forward / previous refresh counter is updated in the forward direction, and whether the refresh is advanced or a preceding refresh is determined based on the sign of the count value of the preceding / previous refresh counter. .

【0031】第13の発明によれば、先行リフレッシュ
カウンタおよびリフレッシュ先送りカウンタを、1つの
先行/先送りリフレッシュカウンタで構成するようにし
ているので、構成が簡単でかつ安価なDRAMコントロ
ーラが得られる。
According to the thirteenth aspect, the advanced refresh counter and the advanced refresh counter are constituted by one advanced / preliminary refresh counter, so that a DRAM controller with a simple configuration and low cost can be obtained.

【0032】第14の発明は、内部バスを介して接続さ
れたDRAMを制御するためのDRAMコントローラで
あって、内部バスには、外部バスに対してアクセスの対
象となるターゲットとして動作し、かつ外部バスとのイ
ンタフェイスとしての機能を有する外部バス制御部がさ
らに接続されており、シングル転送指示部と、DRAM
を定期的にリフレッシュするリフレッシュ制御部とを備
え、リフレッシュ制御部は、定期的なリフレッシュのタ
イミングが所定時間後に迫ったとき、その旨をシングル
転送指示部に通知し、シングル転送指示部は、リフレッ
シュ制御部からの通知に応答して、外部バス制御部にデ
ータ長の短いデータを転送することを指示することを特
徴とする。
A fourteenth invention is a DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus operates as a target to be accessed for an external bus, and An external bus control unit having a function as an interface with an external bus is further connected, and a single transfer instruction unit and a DRAM
A refresh control unit that periodically refreshes the data.The refresh control unit notifies the single transfer instructing unit when the timing of the periodic refresh approaches a predetermined time later, and the single transfer instructing unit performs the refresh operation. In response to the notification from the control unit, the external bus control unit is instructed to transfer data having a short data length.

【0033】第14の発明によれば、定期的なリフレッ
シュタイミングが近づいたときに、外部バス制御部にシ
ングルデータの転送(短いサイズのデータの転送)を行
わせるようにしているので、DRAMのリフレッシュを
外部バスへの中断処理を必要とせずに割り込ますことが
できる確率が高くなる。その結果、データの転送の切断
回数を減らすことが可能となり、外部バスを効率的に使
用することが可能となる。
According to the fourteenth aspect, when the periodic refresh timing approaches, the external bus control unit is caused to perform single data transfer (transfer of short size data). The probability that the refresh can be interrupted without requiring the interruption processing to the external bus is increased. As a result, the number of disconnections of data transfer can be reduced, and the external bus can be used efficiently.

【0034】第15の発明は、第2〜第14のいずれか
の発明において、リフレッシュ制御部は、先行リフレッ
シュカウンタの計数値が現在のリフレッシュサイクルの
残りのリフレッシュの回数と等しい場合には、現在のリ
フレッシュサイクルが終わるまでリフレッシュを行わな
いことを特徴とする。
In a fifteenth aspect based on any one of the second to fourteenth aspects, the refresh control unit is configured to, if the count value of the preceding refresh counter is equal to the number of remaining refreshes in the current refresh cycle, Refresh is not performed until the refresh cycle is completed.

【0035】第15の発明によれば、先行リフレッシュ
カウンタの計数値が現在のリフレッシュサイクルの残り
のリフレッシュの回数と等しい場合には、現在のリフレ
ッシュサイクルが終わるまでリフレッシュを行わないよ
うにしているので、余分なリフレッシュの回数が減り、
外部バスをより一層効率的に使用することが可能とな
る。
According to the fifteenth aspect, when the count value of the preceding refresh counter is equal to the number of remaining refreshes in the current refresh cycle, refresh is not performed until the current refresh cycle ends. , Reduce the number of extra refreshes,
The external bus can be used more efficiently.

【0036】第16の発明は、第2〜第14のいずれか
の発明において、リフレッシュ制御部は、先行リフレッ
シュカウンタの計数値が現在のリフレッシュサイクルの
残りのリフレッシュの回数と等しい場合には、現在のリ
フレッシュサイクルが終了したとして次のリフレッシュ
サイクルを開始することを特徴する。
In a sixteenth aspect based on any one of the second to fourteenth aspects, the refresh control unit determines that the current value of the preceding refresh counter is equal to the number of remaining refreshes in the current refresh cycle. , The next refresh cycle is started assuming that one refresh cycle is completed.

【0037】第16の発明によれば、先行リフレッシュ
カウンタの計数値が現在のリフレッシュサイクルの残り
のリフレッシュの回数と等しい場合には、現在のリフレ
ッシュサイクルが終了したとして次のリフレッシュサイ
クルを開始するようにしているので、DRAMのリフレ
ッシュを早いタイミングで行うことができ、リフレッシ
ュ不足によってDRAMの記憶データが破壊する可能性
がより一層少なくなる。
According to the sixteenth aspect, when the count value of the preceding refresh counter is equal to the number of remaining refreshes in the current refresh cycle, it is determined that the current refresh cycle has ended and the next refresh cycle is started. Therefore, the DRAM can be refreshed at an earlier timing, and the possibility that the data stored in the DRAM is destroyed due to insufficient refresh is further reduced.

【0038】第17の発明は、第1〜第16のいずれか
の発明において、外部バスとして、PCIローカルバス
を用いることを特徴とする。
According to a seventeenth aspect, in any one of the first to sixteenth aspects, a PCI local bus is used as the external bus.

【0039】[0039]

【発明の実施の形態】以下、本発明の各種実施形態につ
いて、図1から図8を用いて説明する。なお、ここで
は、一例として、DRAMコントローラが、外部バスの
一例としてPCI(Peripheral Compo
nent Interconnect)ローカルバスに
接続された場合について説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Various embodiments of the present invention will be described below with reference to FIGS. Here, as an example, a DRAM controller is a PCI (Peripheral Compo) as an example of an external bus.
(Non-Interconnect) A case where the local bus is connected will be described.

【0040】(第1の実施形態)図1は、本発明の第1
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図1に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ100と、DRAM1とを備え、それぞ
れは内部バス4に接続されている。さらに、PCI制御
部5は、PCIバス6に接続される。また、DRAMコ
ントローラ100は、バースト検出部101と、リフレ
ッシュ制御部102と、リフレッシュ先送りカウンタ1
03とを含む。
(First Embodiment) FIG. 1 shows a first embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 1, the control system includes a PCI control unit 5 and a DRA.
An M controller 100 and a DRAM 1 are provided, each of which is connected to the internal bus 4. Further, the PCI control unit 5 is connected to a PCI bus 6. The DRAM controller 100 includes a burst detection unit 101, a refresh control unit 102, and a refresh advance counter 1
03 is included.

【0041】PCI制御部5は、PCIバス6および内
部バス4のインタフェイスとして動作し、DRAM1へ
のデータの読み出しと書き込みを行う。本実施形態にお
いては、PCI制御部5は、PCIバス6に対してター
ゲットとして動作する。DRAM1は、一定時間ごとに
記憶情報の更新を必要とする書き換え可能な記憶素子で
構成されたメモリである。バースト検出部101は、P
CI制御部5の動作を常時監視しており、PCI制御部
102を介してPCIバス6に接続された他のデバイス
(図示しないが、CPUやハードディスク装置等)とD
RAM1との間でバースト転送(連続した読み出しある
いは書き込みによるデータ転送、すなわち複数のデータ
をまとめて送るようなデータ転送)が行われているか否
かを検出する。リフレッシュ制御部102は、DRAM
1のリフレッシュを行う。リフレッシュ制御部102
は、DRAM1の全空間を一定時間内にリフレッシュし
終えなければならない。例えば、一定間隔の時間ごとに
リフレッシュを行うという方法をとる。リフレッシュ先
送りカウンタ103は、リフレッシュ制御部102が本
来行うべきタイミングでリフレッシュを行わなかった回
数を計数する。
The PCI control unit 5 operates as an interface between the PCI bus 6 and the internal bus 4, and reads and writes data from and to the DRAM 1. In the present embodiment, the PCI control unit 5 operates as a target for the PCI bus 6. The DRAM 1 is a memory composed of rewritable storage elements that require updating of stored information at regular intervals. The burst detector 101
The operation of the CI control unit 5 is constantly monitored, and other devices (not shown, such as a CPU and a hard disk device) connected to the PCI bus 6 via the PCI control unit 102 are
It is detected whether or not burst transfer (data transfer by continuous reading or writing, that is, data transfer in which a plurality of pieces of data are sent together) is performed with the RAM 1. The refresh control unit 102 is a DRAM
1 is refreshed. Refresh control unit 102
Needs to finish refreshing the entire space of the DRAM 1 within a certain time. For example, a method of performing refresh at regular intervals of time is used. The refresh advance counter 103 counts the number of times the refresh control unit 102 did not perform the refresh at the timing when it should be performed.

【0042】以上のように構成された第1の実施形態の
DRAMコントローラ100について、以下にその動作
を述べる。まず、リフレッシュ制御部102は、一定間
隔毎にDRAM1のリフレッシュを行う。例えば、8ミ
リ秒で512回のリフレッシュを行わなければならない
リフレッシュサイクルを持つDRAMの場合は、約15
マイクロ秒毎にリフレッシュ動作を行わなければならな
い。リフレッシュ制御部102は、リフレッシュ動作を
行うべきタイミングが到来した場合、バースト検出部1
01からPCI状態信号を入力し、PCI制御部5を介
してPCIバス6に接続されたデバイスとDRAM1と
の間でバースト転送が行われているか否かを判断する。
なお、PCI制御部5は、例えば、PCIバス6上のF
RAME#、IRDY#信号を監視することにより、P
CIバス6がバースト転送を行っているか否かを検出す
る。
The operation of the DRAM controller 100 according to the first embodiment configured as described above will be described below. First, the refresh control unit 102 refreshes the DRAM 1 at regular intervals. For example, in the case of a DRAM having a refresh cycle in which 512 refreshes must be performed in 8 milliseconds, about 15
A refresh operation must be performed every microsecond. When the timing to perform the refresh operation has arrived, the refresh control unit 102
The PCI status signal is input from the CPU 01 and a determination is made as to whether or not a burst transfer is being performed between the device connected to the PCI bus 6 via the PCI control unit 5 and the DRAM 1.
The PCI control unit 5 is, for example, an F
By monitoring the RAME # and IRDY # signals,
It is detected whether or not the CI bus 6 is performing burst transfer.

【0043】リフレッシュ制御部102は、PCI制御
部5を介してDRAM1と他のデバイス(PCIバス6
に接続された図示しないデバイス)との間でデータ転送
が行われていない場合には、即座にDRAM1のリフレ
ッシュを行う。また、PCI制御部5を介してDRAM
1と他のデバイスとの間でバースト転送以外のデータ転
送(すなわち、単発的なデータの転送)が行われている
場合、あるいはバースト転送における最後のデータの転
送が行われている場合は、100ナノ秒程度で転送が終
了することが期待できるため、リフレッシュ制御部10
2は、数クロック(PCIバス6上の動作クロック)周
期経過後にDRAM1のリフレッシュを行う。これに対
し、PCI制御部5を介してDRAM1と他のデバイス
との間でバースト転送が行われている場合、リフレッシ
ュ制御部102は、リフレッシュ動作を先送りし、リフ
レッシュ先送りカウンタ103を1だけインクリメント
する。その後、リフレッシュ制御部102は、バースト
転送が終了したことをバースト検出部103からのバー
スト通知信号によって通知され次第、リフレッシュ先送
りカウンタ103の計数値に相当する回数分のリフレッ
シュをDRAM1に対して行う。このとき、リフレッシ
ュ制御部102は、実行したリフレッシュの回数分だ
け、リフレッシュ先送りカウンタ103をデクリメント
する。
The refresh controller 102 is connected to the DRAM 1 and another device (PCI bus 6) via the PCI controller 5.
If no data transfer is performed between the DRAM 1 and the device (not shown) connected to the DRAM 1, the DRAM 1 is immediately refreshed. Also, the DRAM is controlled via the PCI control unit 5.
If data transfer other than burst transfer (ie, one-time data transfer) is being performed between 1 and another device, or if the last data transfer in burst transfer is being performed, 100 Since the transfer can be expected to be completed in about nanoseconds, the refresh control unit 10
2 refreshes the DRAM 1 after a lapse of several clock cycles (operation clock on the PCI bus 6). On the other hand, when burst transfer is being performed between the DRAM 1 and another device via the PCI control unit 5, the refresh control unit 102 postpones the refresh operation and increments the refresh postponement counter 103 by one. . After that, the refresh control unit 102 refreshes the DRAM 1 by the number of times corresponding to the count value of the refresh advance counter 103 as soon as the completion of the burst transfer is notified by the burst notification signal from the burst detection unit 103. At this time, the refresh control unit 102 decrements the refresh advance counter 103 by the number of executed refreshes.

【0044】ただし、リフレッシュ制御部102は、全
体のリフレッシュサイクルの終了時間が迫っている場合
(これは、例えば所定のしきい値を設け、リフレッシュ
を先送りしている時間が当該しきい値の時間よりも長く
なったことによって検出できる)には、リフレッシュ先
送りカウンタ103をインクリメントせずに他の制御を
行う。つまり、この場合、リフレッシュ制御部102
は、バースト転送中であっても、PCI制御部5に対し
て転送中断信号を送ってデータ転送を中断するように指
示し、転送の終了後、DRAM1のリフレッシュを行
う。
However, when the end time of the entire refresh cycle is approaching (for example, a predetermined threshold value is set, the refresh control unit 102 sets the time for postponing the refresh to the time corresponding to the threshold value). In other words, other control is performed without incrementing the refresh advance counter 103. That is, in this case, the refresh control unit 102
Sends a transfer interruption signal to the PCI control unit 5 to interrupt the data transfer even during the burst transfer, and refreshes the DRAM 1 after the transfer is completed.

【0045】上記第1の実施形態によれば、PCIバス
6上のバースト転送の切断回数を少なくしつつ、規定の
回数のリフレッシュをDRAM1に対して行うことが可
能となる。より具体的に説明すると、デバイスに対する
設定によっても異なるが、PCIバス6上では、切断が
生じなければ、1バースト転送当たり、7.7マイクロ
秒程度の時間にわたってデータ転送が持続する。一方、
DRAM1のリフレッシュサイクルを15マイクロ秒と
すると、2回の転送に1回程度、バースト転送が切断さ
れることになる。PCIバス6の切断と転送の再開に2
40ナノ秒(33.3メガヘルツ動作で8クロック
分)、リフレッシュに260ナノ秒(リードライトサイ
クルが130ナノ秒の場合)かかるとする。リフレッシ
ュの間にPCIバス6を使用できる場合と、そうでない
場合が考えられるが、PCIバス6を使用できない場合
は、30マイクロ秒当たり500ナノ秒のロスを削減す
ることができる。また、PCIバス6を使用できる場合
には、240ナノ秒のロスを削減することができる。
According to the first embodiment, a prescribed number of refreshes can be performed on the DRAM 1 while reducing the number of disconnections of the burst transfer on the PCI bus 6. More specifically, the data transfer on the PCI bus 6 continues for about 7.7 microseconds per burst transfer, if the disconnection does not occur, depending on the setting for the device. on the other hand,
Assuming that the refresh cycle of the DRAM 1 is 15 microseconds, the burst transfer is interrupted about once every two transfers. 2 for disconnecting PCI bus 6 and resuming transfer
It is assumed that it takes 40 nanoseconds (8 clocks at 33.3 MHz operation) and 260 nanoseconds for refresh (when the read / write cycle is 130 nanoseconds). There may be cases where the PCI bus 6 can be used during the refresh or not, but when the PCI bus 6 cannot be used, a loss of 500 nanoseconds per 30 microseconds can be reduced. When the PCI bus 6 can be used, a loss of 240 nanoseconds can be reduced.

【0046】上記のように、第1の実施形態では、PC
Iバス6上のバースト転送が切断される回数を減らすこ
とができ、結果としてリフレッシュのためにPCIバス
6上のデータ転送速度が低下するのを防止することがで
きる。
As described above, in the first embodiment, the PC
The number of times that the burst transfer on the I bus 6 is cut off can be reduced, and as a result, the data transfer rate on the PCI bus 6 can be prevented from lowering due to refresh.

【0047】(第2の実施形態)図2は、本発明の第2
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図2に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ200と、DRAM1とを備え、それぞ
れは内部バス4に接続されている。さらに、PCI制御
部5は、PCIバス6に接続される。また、DRAMコ
ントローラ200は、バスビジー検出部201と、リフ
レッシュ制御部202と、先行リフレッシュカウンタ2
03とを含む。
(Second Embodiment) FIG. 2 shows a second embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 2, the control system includes a PCI control unit 5 and a DRA.
An M controller 200 and a DRAM 1 are provided, each of which is connected to the internal bus 4. Further, the PCI control unit 5 is connected to a PCI bus 6. Further, the DRAM controller 200 includes a bus busy detection unit 201, a refresh control unit 202, and a preceding refresh counter 2
03 is included.

【0048】バスビジー検出部201は、PCIバス6
上がバスビジーであるかどうかを判断し、その判断結果
をリフレッシュ制御部202に通知する。ここで、バス
ビジーとは、PCIバス6上に接続されている図示しな
い2つのデバイス間でデータを転送中である状態のこと
を言う。つまり、バスビジーの状態では、PCIバス6
を介してDRAM1がアクセスされることがない。ま
た、先行リフレッシュカウンタ203は、本来のリフレ
ッシュのタイミングより前に行った先行リフレッシュの
実行回数を計数する。
The bus busy detecting section 201 is connected to the PCI bus 6
It is determined whether or not the upper part is busy, and the determination result is notified to the refresh control unit 202. Here, “bus busy” refers to a state in which data is being transferred between two devices (not shown) connected to the PCI bus 6. In other words, when the bus is busy, the PCI bus 6
Are not accessed via the DRAM 1. The preceding refresh counter 203 counts the number of executions of the preceding refresh performed before the original refresh timing.

【0049】以上のように構成された第2の実施形態の
DRAMコントローラ200について、以下にその動作
を述べる。バスビジー検出部201は、PCI制御部5
からのPCI状態信号に基づいて、PCIバス6上がバ
スビジーであることを検出した場合、バスビジー通知信
号を出力し、リフレッシュ制御部202に対してバスビ
ジーであることを通知する。なお、PCI制御部5は、
例えば、自己の制御下のデバイスに対するアクセスが存
在しているか否かを監視すると共に、PCIバス6上の
FRAME#信号をサンプリングすることにより、バス
ビジーを検出することが可能である。リフレッシュ制御
部202は、バスビジー検出部201からバスビジーの
通知を受けた場合、本来のリフレッシュのタイミングが
到来していない場合でも、DRAM1の先行リフレッシ
ュを行い、カウントアップ/ダウン信号を出力して、先
行リフレッシュカウンタ203を1だけインクリメント
する。
The operation of the DRAM controller 200 according to the second embodiment configured as described above will be described below. The bus busy detection unit 201 includes the PCI control unit 5
When it is detected that the PCI bus 6 is busy on the basis of the PCI status signal from the CPU, a bus busy notification signal is output to notify the refresh control unit 202 that the bus is busy. Note that the PCI control unit 5
For example, it is possible to detect whether or not an access to a device under its control exists and to detect a bus busy by sampling the FRAME # signal on the PCI bus 6. When receiving the notification of the bus busy from the bus busy detection unit 201, the refresh control unit 202 performs the preceding refresh of the DRAM 1 and outputs the count-up / down signal even if the original refresh timing has not arrived, and outputs the count-up / down signal. The refresh counter 203 is incremented by one.

【0050】一方、リフレッシュ制御部202において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ203に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
203の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部202
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ203を1だけデクリメントする。ただし、バスビ
ジーの通知を受けている場合、リフレッシュ制御部20
2は、先行リフレッシュを行う。また、リフレッシュ制
御部202において本来のリフレッシュのタイミングが
到来し、かつ先行リフレッシュカウンタ203に0がセ
ットされており、しかもPCIバス6を介してDRAM
1と他のデバイスとの間でデータ転送が行われている場
合、リフレッシュ制御部202は、転送中断信号をPC
I制御部5に送り、データ転送の中断を指示すると共
に、DRAM1のリフレッシュを行う。
On the other hand, let us consider a case where the original refresh timing has arrived in the refresh control unit 202 and a value other than 0 has been set in the preceding refresh counter 203. In this case, the count value of the preceding refresh counter 203 indicates that the preceding refresh is being performed. At this time, the refresh control unit 202
Decrements the preceding refresh counter 203 by one without performing the refresh operation. However, when the notification of the bus busy is received, the refresh control unit 20
No. 2 performs a preceding refresh. Also, the original refresh timing has arrived in the refresh control unit 202 and 0 has been set in the preceding refresh counter 203, and the DRAM has been set via the PCI bus 6.
When data transfer is being performed between the first device and another device, the refresh control unit 202 sends a transfer interrupt signal to the PC.
The data is sent to the I control unit 5 to instruct interruption of data transfer and refresh the DRAM 1.

【0051】上記のように、第2の実施形態のDRAM
コントローラ200によれば、バスビジーの状態、すな
わちDRAM1に対するアクセスが行われない期間を利
用して、リフレッシュを行うことができる。つまり、本
来のリフレッシュタイミングに先行してリフレッシュを
行っておくことにより、PCIバス6からのアクセス中
にリフレッシュのためにPCIバス6上のデータ転送を
中断する回数が減る。より具体的に説明すると、PCI
バス6上に図示しない他のデバイスが存在し、15マイ
クロ秒のリフレッシュサイクルの間に1回の転送を行っ
ていれば、PCIバス6へのリフレッシュの影響を全く
なくすことができる。前述した第1の実施形態と同様
に、転送の切断を1回無くすにつき500ナノ秒程度の
ロスを削減できる。従って、PCIバス6の使用効率を
向上させることができる。
As described above, the DRAM of the second embodiment
According to the controller 200, refreshing can be performed using a bus busy state, that is, a period in which access to the DRAM 1 is not performed. In other words, by performing the refresh ahead of the original refresh timing, the number of times the data transfer on the PCI bus 6 is interrupted for the refresh during the access from the PCI bus 6 is reduced. More specifically, PCI
If another device (not shown) exists on the bus 6 and one transfer is performed during a refresh cycle of 15 microseconds, the influence of the refresh on the PCI bus 6 can be completely eliminated. As in the first embodiment described above, a loss of about 500 nanoseconds can be reduced for one transfer interruption. Therefore, the use efficiency of the PCI bus 6 can be improved.

【0052】(第3の実施形態)図3は、本発明の第3
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図3に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ300と、DRAM1とを備えており、
それぞれは内部バス4に接続されている。さらに、PC
I制御部5は、PCIバス6に接続される。また、DR
AMコントローラ300は、コンフィギュレーションア
クセス検出部301と、リフレッシュ制御部302と、
先行リフレッシュカウンタ303とを含む。
(Third Embodiment) FIG. 3 shows a third embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 3, the control system includes a PCI control unit 5 and a DRA
M controller 300 and DRAM 1
Each is connected to the internal bus 4. In addition, PC
The I control unit 5 is connected to the PCI bus 6. Also, DR
The AM controller 300 includes a configuration access detection unit 301, a refresh control unit 302,
And a preceding refresh counter 303.

【0053】コンフィギュレーションアクセス検出部3
01は、PCIバス6からのアクセスがコンフィギュレ
ーションアクセスであるかどうかを判断し、リフレッシ
ュ制御部302に通知する。ここで、コンフィギュレー
ションアクセスとは、PCI制御部5内に存在する制御
用のレジスタ(DRAM1のアドレス空間とは別の位置
に存在する)へのアクセスであり、内部バス4を使用し
ない。つまり、コンフィギュレーションアクセスが行わ
れている間は、PCIバス6からDRAM1に対してア
クセスされることがない。このレジスタに種々の属性情
報を書き込むことにより、PCIバス6上でのベースア
ドレスの設定、使用すべき機能の設定等を行うことがで
きる。当該レジスタへの書込は、例えば、PCIバス6
に接続されたCPU(図示せず)によって行われる。
Configuration access detector 3
01 determines whether or not the access from the PCI bus 6 is a configuration access and notifies the refresh control unit 302 of the access. Here, the configuration access is an access to a control register (located at a different position from the address space of the DRAM 1) in the PCI control unit 5, and does not use the internal bus 4. In other words, the DRAM 1 is not accessed from the PCI bus 6 during the configuration access. By writing various attribute information into this register, setting of a base address on the PCI bus 6, setting of a function to be used, and the like can be performed. The writing to the register is performed by, for example, the PCI bus 6
This is performed by a CPU (not shown) connected to the CPU.

【0054】以上のように構成された第3の実施形態の
DRAMコントローラ300について、以下にその動作
を述べる。動作としては、第2の実施形態とほとんど同
様であり、異なる点のみを説明する。第2の実施形態に
おけるリフレッシュ制御部202は、バスビジー検出部
201がバスビジーを検出したときに先行リフレッシュ
動作を行ったが、第3の実施形態におけるリフレッシュ
制御部302は、コンフィギュレーションアクセス検出
部301がコンフィギュレーションアクセスを検出した
ときに先行リフレッシュ動作を行う。すなわち、リフレ
ッシュ制御部302は、コンフィギュレーションアクセ
ス検出部301からコンフィギュレーションアクセスの
通知を受けた場合、本来のリフレッシュのタイミングが
到来していない場合でも、DRAM1の先行リフレッシ
ュを行い、カウントアップ/ダウン信号を出力して、先
行リフレッシュカウンタ303を1だけインクリメント
する。
The operation of the DRAM controller 300 according to the third embodiment configured as described above will be described below. The operation is almost the same as that of the second embodiment, and only different points will be described. The refresh control unit 202 according to the second embodiment performs the preceding refresh operation when the bus busy detection unit 201 detects the bus busy, but the refresh control unit 302 according to the third embodiment is configured such that the configuration access detection unit 301 When a configuration access is detected, a preceding refresh operation is performed. That is, when the refresh control unit 302 receives the notification of the configuration access from the configuration access detection unit 301, it performs the preceding refresh of the DRAM 1 even if the original refresh timing has not arrived, and counts up / down signals. Is output, and the preceding refresh counter 303 is incremented by one.

【0055】一方、リフレッシュ制御部302において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ303に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
303の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部302
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ303を1だけデクリメントする。ただし、コンフ
ィギュレーションアクセスの通知を受けている場合、リ
フレッシュ制御部202は、先行リフレッシュを行う。
また、リフレッシュ制御部302において本来のリフレ
ッシュのタイミングが到来し、かつ先行リフレッシュカ
ウンタ303に0がセットされており、しかもPCIバ
ス6を介してDRAM1と他のデバイスとの間でデータ
転送が行われている場合、リフレッシュ制御部302
は、転送中断信号をPCI制御部5に送り、データ転送
の中断を指示すると共に、DRAM1のリフレッシュを
行う。
On the other hand, let us consider a case where the original refresh timing has arrived in the refresh control unit 302 and a value other than 0 has been set in the preceding refresh counter 303. In this case, the count value of the preceding refresh counter 303 indicates that the preceding refresh is being performed. At this time, the refresh control unit 302
Decrements the preceding refresh counter 303 by 1 without performing the refresh operation. However, when the notification of the configuration access is received, the refresh control unit 202 performs the preceding refresh.
In the refresh control unit 302, the original refresh timing has arrived, and the preceding refresh counter 303 has been set to 0, and data is transferred between the DRAM 1 and another device via the PCI bus 6. The refresh control unit 302
Sends a transfer interruption signal to the PCI control unit 5, instructs interruption of data transfer, and refreshes the DRAM 1.

【0056】上記のように、コンフィギュレーションア
クセス中に先行リフレッシュを行うことにより、PCI
バス6のアクセスに及ぼすリフレッシュの影響を少なく
することができる。特に、1回のリフレッシュサイクル
中に少なくとも1回のコンフィギュレーションサイクル
が存在するシステム仕様においては、PCIバス6への
リフレッシュの影響を全くなくすことが可能となる。よ
り具体的には、第1の実施形態と同様に、転送の切断を
1回無くすにつき500ナノ秒程度のロスが削減でき、
外部バスの使用効率を向上させることができる。
As described above, by performing the preceding refresh during the configuration access, the PCI
The effect of refresh on access to the bus 6 can be reduced. In particular, in a system specification in which at least one configuration cycle exists in one refresh cycle, it is possible to completely eliminate the influence of the refresh on the PCI bus 6. More specifically, similar to the first embodiment, a loss of about 500 nanoseconds can be reduced for one elimination of transfer disconnection,
The use efficiency of the external bus can be improved.

【0057】(第4の実施形態)図4は、本発明の第4
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図4に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ400と、DRAM1とを備え、それぞ
れは内部バス4に接続されている。さらに、PCI制御
部5は、PCIバス6に接続される。また、DRAMコ
ントローラ400は、転送サイズ検出部401と、リフ
レッシュ制御部402と、先行リフレッシュカウンタ4
03とを含む。
(Fourth Embodiment) FIG. 4 shows a fourth embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 4, the control system includes a PCI control unit 5 and a DRA
An M controller 400 and a DRAM 1 are provided, each of which is connected to the internal bus 4. Further, the PCI control unit 5 is connected to a PCI bus 6. Further, the DRAM controller 400 includes a transfer size detection unit 401, a refresh control unit 402, and a preceding refresh counter 4
03 is included.

【0058】図4のDRAM制御システムでは、PCI
制御部5は、PCIバス6に対してバスの使用権を獲得
しデータ転送を行うバスマスタとして動作する。転送サ
イズ検出部401は、PCI制御部5が転送するデータ
のサイズを、PCI制御部5からのPCI状態信号に基
づいて検出すると共に、先行リフレッシュ指示信号を出
力してリフレッシュ制御部104に先行リフレッシュの
回数を指示する。
In the DRAM control system shown in FIG.
The control unit 5 operates as a bus master that acquires the right to use the bus with respect to the PCI bus 6 and performs data transfer. The transfer size detection unit 401 detects the size of the data transferred by the PCI control unit 5 based on the PCI status signal from the PCI control unit 5, outputs a preceding refresh instruction signal, and sends the preceding refresh instruction signal to the refresh control unit 104. Indicate the number of times.

【0059】以上のように構成された第4の実施形態の
DRAMコントローラ400について、以下にその動作
を述べる。リフレッシュ制御部402における基本的な
リフレッシュサイクルは、第2の実施形態と同様に、一
定間隔で行われる。しかし、転送サイズ検出部401
は、PCI制御部5がバスマスタとしてデータ転送を行
うことを検知すると、当該データ転送に先立ってDRA
M1のリフレッシュを行うことを、リフレッシュ制御部
402に対して指示する。このとき、転送サイズ検出部
401は、PCI制御部5が転送するデータのサイズに
相応する時間に基づいて、リフレッシュ制御部402が
予め実行すべきリフレッシュの回数を算出し、リフレッ
シュ制御部402に指示する。リフレッシュ制御部40
2は、転送サイズ検出部401から先行リフレッシュの
指示を受けると、本来のリフレッシュのタイミングが到
来していない場合でも、転送サイズ検出部401から指
示された回数分のリフレッシュ動作を行い、実行したリ
フレッシュの回数分だけ先行リフレッシュカウンタ40
3をインクリメントする。
The operation of the DRAM controller 400 according to the fourth embodiment configured as described above will be described below. The basic refresh cycle in the refresh control unit 402 is performed at regular intervals, as in the second embodiment. However, the transfer size detection unit 401
Detects that the PCI control unit 5 performs data transfer as a bus master and performs DRA prior to the data transfer.
The refresh control unit 402 is instructed to refresh M1. At this time, the transfer size detection unit 401 calculates the number of refreshes to be executed by the refresh control unit 402 in advance based on the time corresponding to the size of the data transferred by the PCI control unit 5, and instructs the refresh control unit 402. I do. Refresh control unit 40
2 receives a preceding refresh instruction from the transfer size detection unit 401, performs a refresh operation the number of times instructed by the transfer size detection unit 401 even if the original refresh timing has not arrived, and executes the executed refresh. Refresh counter 40 for the number of times
3 is incremented.

【0060】一方、リフレッシュ制御部402において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ403に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
403の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部402
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ403を1だけデクリメントする。また、リフレッ
シュ制御部402において本来のリフレッシュのタイミ
ングが到来し、かつ先行リフレッシュカウンタ403に
0がセットされている場合、リフレッシュ制御部402
は、DRAM1のリフレッシュを行う。このとき、先行
リフレッシュカウンタ403の計数値は、変化しない。
On the other hand, let us consider a case where the original refresh timing has arrived in the refresh control unit 402 and a value other than 0 has been set in the preceding refresh counter 403. In this case, the count value of the preceding refresh counter 403 indicates that the preceding refresh is being performed. At this time, the refresh control unit 402
Decrements the preceding refresh counter 403 by 1 without performing the refresh operation. When the original refresh timing arrives in the refresh control unit 402 and 0 is set in the preceding refresh counter 403, the refresh control unit 402
Performs refresh of the DRAM 1. At this time, the count value of the preceding refresh counter 403 does not change.

【0061】上記のように、第4の実施形態では、PC
I制御部5がバスマスタとしてのデータ転送動作を行う
前に、データ転送に要する時間に相当する回数分のリフ
レッシュを先行して行うようにしている。より具体的に
説明すると、例えば1キロバイトのデータを転送する場
合には、PCIバス6上で256クロックが必要とな
る。PCIバス6上の動作クロックが33.3メガヘル
ツとすると、1キロバイトのデータを転送するために
は、約7.7マイクロ秒が最低限必要となる。リフレッ
シュサイクルが第1の実施形態と同様であり、約15マ
イクロ秒ごとにリフレッシュを行うとすれば、通常は、
2回に1回はデータの転送が切断されることになる。し
かしながら、第4の実施形態では、データ転送に先だっ
て、リフレッシュを行うことにより、この切断を無くす
ことができる。
As described above, in the fourth embodiment, the PC
Before the I control unit 5 performs a data transfer operation as a bus master, refresh is performed in advance for a number of times corresponding to a time required for data transfer. More specifically, for example, when transferring 1 kilobyte of data, 256 clocks are required on the PCI bus 6. Assuming that the operation clock on the PCI bus 6 is 33.3 MHz, a transfer of one kilobyte of data requires at least about 7.7 microseconds. If the refresh cycle is the same as that of the first embodiment, and the refresh is performed about every 15 microseconds, then normally,
Data transfer is interrupted once every two times. However, in the fourth embodiment, this disconnection can be eliminated by performing refresh before data transfer.

【0062】上記のようなリフレッシュ制御を行うこと
により、第4の実施形態では、データ転送中にリフレッ
シュが発生することがなくなり、リフレッシュのために
データ転送を切断する必要がなくなる。第1の実施の形
態と同様に、転送の切断を1回無くすにつき500ナノ
秒程度のロスが削減でき、転送速度を向上させることが
できる。
By performing the refresh control as described above, in the fourth embodiment, refresh does not occur during data transfer, and it is not necessary to disconnect data transfer for refresh. As in the first embodiment, it is possible to reduce a loss of about 500 nanoseconds per one elimination of the transfer disconnection, and to improve the transfer speed.

【0063】(第5の実施形態)図5は、本発明の第5
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図5に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ500と、DRAM1とを備えており、
それぞれは内部バス4に接続されている。さらに、PC
I制御部5は、PCIバス6に接続される。また、DR
AMコントローラ500は、マスタレイテンシタイマ値
検出部401と、リフレッシュ制御部402と、先行リ
フレッシュカウンタ403とを含む。
(Fifth Embodiment) FIG. 5 shows a fifth embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 5, the control system includes a PCI control unit 5 and a DRA.
M controller 500 and DRAM 1
Each is connected to the internal bus 4. In addition, PC
The I control unit 5 is connected to the PCI bus 6. Also, DR
The AM controller 500 includes a master latency timer value detection unit 401, a refresh control unit 402, and a preceding refresh counter 403.

【0064】図5のDRAM制御システムでは、PCI
制御部5は、図4のDRAM制御システムと同様に、P
CIバス6に対してバスの使用権を獲得しデータ転送を
行うバスマスタとして動作する。マスタレイテンシタイ
マ値検出部501は、PCI制御部5内のPCIコンフ
ィギュレーションレジスタ(図示せず)に設定されたマ
スタレイテンシタイマ値を検出し、検出したマスタレイ
テンシタイマ値をもとにリフレッシュ制御部502にリ
フレッシュを指示する。ここで、マスタレイテンシタイ
マ値は、バスマスタとしてのPCI制御部5が1回のデ
ータ転送でPCIバス6を占有することが保証されてい
る期間を規定している。
In the DRAM control system shown in FIG.
The control unit 5 controls the P as in the DRAM control system of FIG.
It operates as a bus master that acquires the right to use the bus with respect to the CI bus 6 and performs data transfer. The master latency timer value detection unit 501 detects a master latency timer value set in a PCI configuration register (not shown) in the PCI control unit 5, and based on the detected master latency timer value, a refresh control unit 502. To refresh. Here, the master latency timer value defines a period during which the PCI control unit 5 as the bus master is guaranteed to occupy the PCI bus 6 in one data transfer.

【0065】以上のように構成された第5の実施形態の
DRAMコントローラ500について、以下にその動作
を述べる。リフレッシュ制御部502における基本的な
リフレッシュサイクルは、第2の実施形態と同様に、一
定間隔で行われる。マスタレイテンシタイマ値検出部5
01は、第4の実施形態の転送サイズ検出部401と同
様に、PCI制御部5がバスマスタとしてデータ転送を
行うことを検知すると、当該データ転送に先立ってDR
AM1のリフレッシュを行うことを、リフレッシュ制御
部502に対して指示する。このとき、マスタレイテン
シタイマ値検出部501は、マスタレイテンシタイマ値
に基づいて、予め行うべきリフレッシュの回数を計算
し、リフレッシュ制御部502に指示する。ここで、マ
スタレイテンシタイマ値は、1回のデータ転送当たりに
バスを使用し続けることが保証されている時間を示して
いる。マスタレイテンシタイマ値として大きな値を設定
すれば、PCI制御部5は、PCIバス6を長時間使用
し続けることができる。このように、マスタレイテンシ
タイマ値に相当する時間期間は、データ転送を継続でき
ることを意味しているので、マスタレイテンシタイマ値
検出部501は、その間に発生するリフレッシュの回数
を算出し、リフレッシュ制御部502に指示する。リフ
レッシュ制御部502は、マスタレイテンシタイマ値検
出部501から先行リフレッシュの指示を受けると、本
来のリフレッシュのタイミングが到来していない場合で
も、マスタレイテンシタイマ値検出部501から指示さ
れた回数分のリフレッシュ動作を行い、実行したリフレ
ッシュの回数分だけ先行リフレッシュカウンタ503を
インクリメントする。
The operation of the DRAM controller 500 according to the fifth embodiment configured as described above will be described below. The basic refresh cycle in the refresh control unit 502 is performed at regular intervals, as in the second embodiment. Master latency timer value detector 5
01, similar to the transfer size detection unit 401 of the fourth embodiment, when the PCI control unit 5 detects that the data transfer is performed as a bus master, the DR control is performed prior to the data transfer.
The refresh controller 502 is instructed to refresh the AM1. At this time, based on the master latency timer value, master latency timer value detection section 501 calculates the number of refreshes to be performed in advance and instructs refresh control section 502. Here, the master latency timer value indicates a time during which the use of the bus is guaranteed per data transfer. If a large value is set as the master latency timer value, the PCI control unit 5 can keep using the PCI bus 6 for a long time. As described above, since the time period corresponding to the master latency timer value means that data transfer can be continued, the master latency timer value detection unit 501 calculates the number of refreshes occurring during that time, and Instruct 502. Upon receiving the preceding refresh instruction from the master latency timer value detecting unit 501, the refresh control unit 502 refreshes the number of times specified by the master latency timer value detecting unit 501 even when the original refresh timing has not arrived. The operation is performed, and the preceding refresh counter 503 is incremented by the number of times of the executed refresh.

【0066】一方、リフレッシュ制御部502において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ503に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
503の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部502
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ503を1だけデクリメントする。また、リフレッ
シュ制御部502において本来のリフレッシュのタイミ
ングが到来し、かつ先行リフレッシュカウンタ503に
0がセットされている場合、リフレッシュ制御部502
は、DRAM1のリフレッシュを行う。このとき、先行
リフレッシュカウンタ503の計数値は、変化しない。
On the other hand, let us consider a case where the original refresh timing has arrived in the refresh controller 502 and a value other than 0 has been set in the preceding refresh counter 503. In this case, the count value of the preceding refresh counter 503 indicates that the preceding refresh is being performed. At this time, the refresh control unit 502
Decrements the preceding refresh counter 503 by 1 without performing the refresh operation. When the original refresh timing arrives in the refresh control unit 502 and the preceding refresh counter 503 is set to 0, the refresh control unit 502
Performs refresh of the DRAM 1. At this time, the count value of the preceding refresh counter 503 does not change.

【0067】上記のように、第5の実施形態では、PC
I制御部5がバスマスタとしてのデータ転送動作を行う
前に、マスタレイテンシタイマ値で規定される時間に相
当する回数分のリフレッシュを先行して行うようにして
いる。より具体的に説明すると、マスタレイテンシタイ
マ値の設定値は、0から256である。これは、PCI
バス6上の動作クロック数であり、例えば33.3メガ
ヘルツ動作であると、マスタレイテンシタイマの設定値
が256の場合は、7.7マイクロ秒の転送を行えるこ
とが保証される。マスタレイテンシタイマ値が256と
して、リフレッシュサイクルが第1の実施形態と同様と
すれば、2回の転送当たり1回の転送中断が発生するこ
とになるが、第5の実施形態では、この転送中断をなく
すことができる。
As described above, in the fifth embodiment, the PC
Before the I control unit 5 performs the data transfer operation as the bus master, refresh is performed in advance for the number of times corresponding to the time defined by the master latency timer value. More specifically, the set value of the master latency timer value is 0 to 256. This is PCI
This is the number of operation clocks on the bus 6, for example, 33.3 MHz operation, and if the set value of the master latency timer is 256, it is guaranteed that 7.7 microsecond transfer can be performed. If the master latency timer value is 256 and the refresh cycle is the same as in the first embodiment, one transfer interruption occurs every two transfers. In the fifth embodiment, this transfer interruption occurs. Can be eliminated.

【0068】上記のように、第5の実施形態によれば、
第4の実施形態と同様の効果が得られる。少なくともマ
スタレイテンシタイマ値の時間内は、データ転送中にリ
フレッシュが発生することがなくなり、リフレッシュの
ためにデータ転送を切断する必要がなく、結果として転
送速度を向上させることができる。
As described above, according to the fifth embodiment,
The same effects as in the fourth embodiment can be obtained. At least within the time period of the master latency timer value, refresh does not occur during data transfer, and there is no need to disconnect data transfer for refreshing. As a result, transfer speed can be improved.

【0069】(第6の実施形態)図6は、本発明の第6
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図6に
おいて、本制御システムは、PCI制御部5と、DRA
Mコントローラ600と、DRAM1とを備え、それぞ
れは内部バス4に接続されている。さらに、PCI制御
部5は、PCIバス6に接続される。また、DRAMコ
ントローラ600は、バーストサイズ演算部601と、
リフレッシュ制御部602と、先行リフレッシュカウン
タ603とを含む。
(Sixth Embodiment) FIG. 6 shows a sixth embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. In FIG. 6, the control system includes a PCI control unit 5 and a DRA.
An M controller 600 and a DRAM 1 are provided, each of which is connected to the internal bus 4. Further, the PCI control unit 5 is connected to a PCI bus 6. Also, the DRAM controller 600 includes a burst size calculation unit 601;
A refresh control unit 602 and a preceding refresh counter 603 are included.

【0070】図6のDRAM制御システムでは、PCI
制御部5は、図4および図5のDRAM制御システムと
同様に、PCIバス6に対してバスの使用権を獲得しデ
ータ転送を行うバスマスタとして動作する。バーストサ
イズ演算部601は、PCI制御部5内のPCIコンフ
ィギュレーションレジスタに設定されたマスタレイテン
シタイマ値と、バスマスタとしてPCI制御部5が転送
するデータのサイズとを検出し、それらを基にリフレッ
シュ制御部502に実行すべきリフレッシュの回数を計
算し、リフレッシュ制御部602に指示する。
In the DRAM control system shown in FIG.
The control unit 5 operates as a bus master that acquires the right to use the PCI bus 6 and transfers data, similarly to the DRAM control system of FIGS. 4 and 5. The burst size calculation unit 601 detects a master latency timer value set in a PCI configuration register in the PCI control unit 5 and a size of data transferred by the PCI control unit 5 as a bus master, and performs refresh control based on the detected values. The unit 502 calculates the number of refreshes to be executed, and instructs the refresh control unit 602.

【0071】以上のように構成された第6の実施形態の
DRAMコントローラ600について、以下にその動作
を述べる。リフレッシュ制御部602における基本的な
リフレッシュサイクルは、第2の実施形態と同様に、一
定間隔で行われる。また、バーストサイズ演算部601
は、第5の実施形態におけるマスタレイテンシタイマ値
検出部501と同様に、PCI制御部5がバスマスタと
してデータ転送を行う状態にあることを検知すると、こ
のデータ転送に先行してリフレッシュを行うことを、リ
フレッシュ制御部602に指示する。ただし、バースト
サイズ演算部601は、マスタレイテンシタイマ値と転
送するデータのサイズとに基づいて、リフレッシュの実
行回数を計算し、リフレッシュ制御部602に対して指
示する。このとき、バーストサイズ演算部601は、転
送するデータのサイズがマスタレイテンシタイマ値に相
当する時間以内に転送が終了しないような大きなサイズ
の場合は、マスタレイテンシタイマ値を優先してリフレ
ッシュ回数を計算する。逆に、転送するデータのサイズ
がマスタレイテンシタイマ値に相当する時間以内に終了
してしまう小さいサイズの場合は、転送サイズを優先し
てリフレッシュ回数を計算する。リフレッシュ制御部6
02は、マスタレイテンシタイマ値検出部601から先
行リフレッシュの指示を受けると、本来のリフレッシュ
のタイミングが到来していない場合でも、マスタレイテ
ンシタイマ値検出部601から指示された回数分のリフ
レッシュ動作を行い、実行したリフレッシュの回数分だ
け先行リフレッシュカウンタ603をインクリメントす
る。
The operation of the DRAM controller 600 according to the sixth embodiment configured as described above will be described below. The basic refresh cycle in the refresh control unit 602 is performed at regular intervals, as in the second embodiment. Also, a burst size calculation unit 601
Is similar to the master latency timer value detection unit 501 in the fifth embodiment, when it detects that the PCI control unit 5 is in a state of performing data transfer as a bus master, it performs refreshing prior to this data transfer. , The refresh control unit 602. However, the burst size calculation unit 601 calculates the number of executions of the refresh based on the master latency timer value and the size of the data to be transferred, and instructs the refresh control unit 602. At this time, when the size of the data to be transferred is large enough that the transfer does not end within the time corresponding to the master latency timer value, the burst size calculation unit 601 calculates the number of refreshes by giving priority to the master latency timer value. I do. Conversely, if the size of the data to be transferred is a small size that ends within the time corresponding to the master latency timer value, the number of refreshes is calculated giving priority to the transfer size. Refresh control unit 6
02 receives a preceding refresh instruction from the master latency timer value detection unit 601 and performs a refresh operation the number of times specified by the master latency timer value detection unit 601 even when the original refresh timing has not arrived. , The preceding refresh counter 603 is incremented by the number of executed refreshes.

【0072】一方、リフレッシュ制御部602において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ603に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
603の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部602
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ603を1だけデクリメントする。また、リフレッ
シュ制御部602において本来のリフレッシュのタイミ
ングが到来し、かつ先行リフレッシュカウンタ603に
0がセットされている場合、リフレッシュ制御部602
は、DRAM1のリフレッシュを行う。このとき、先行
リフレッシュカウンタ603の計数値は、変化しない。
On the other hand, consider a case where the original refresh timing has arrived in the refresh controller 602 and a value other than 0 has been set in the preceding refresh counter 603. In this case, the count value of the preceding refresh counter 603 indicates that the preceding refresh is being performed. At this time, the refresh control unit 602
Decrements the preceding refresh counter 603 by 1 without performing the refresh operation. When the original refresh timing arrives in the refresh control unit 602 and 0 is set in the preceding refresh counter 603, the refresh control unit 602
Performs refresh of the DRAM 1. At this time, the count value of the preceding refresh counter 603 does not change.

【0073】上記のようにしてリフレッシュ制御を行う
ことにより、第6の実施形態では、第5の実施形態と同
様に、少なくともマスタレイテンシタイマ値の時間内
は、転送中にリフレッシュが発生することがなくなり、
リフレッシュのために転送を切断する必要がなくなる。
また、マスタレイテンシタイマ値と転送するデータのサ
イズとの両方に基づいて先行リフレッシュ回数を計算す
るようにしているため、第5の実施形態よりもさらに適
切な先行リフレッシュを行うことができる。従って、転
送速度を向上させることができる。
By performing the refresh control as described above, in the sixth embodiment, the refresh may occur during the transfer at least within the time of the master latency timer value as in the fifth embodiment. Gone
There is no need to disconnect the transfer for refreshing.
Further, since the number of times of preceding refresh is calculated based on both the master latency timer value and the size of data to be transferred, it is possible to perform more appropriate preceding refresh than in the fifth embodiment. Therefore, the transfer speed can be improved.

【0074】(第7の実施形態)図7は、本発明の第7
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図7に
おいて、本システムは、PCI制御部5と、DRAMコ
ントローラ700と、DRAM1とを備え、それぞれは
内部バス4に接続される。さらに、PCI制御部5は、
PCIバス6に接続される。また、DRAMコントロー
ラ700は、バーストサイズ演算部701と、リフレッ
シュ制御部702と、先行リフレッシュカウンタ703
と、リフレッシュ先送りカウンタ704とを含む。
(Seventh Embodiment) FIG. 7 shows a seventh embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. 7, the system includes a PCI control unit 5, a DRAM controller 700, and a DRAM 1, each of which is connected to the internal bus 4. Further, the PCI control unit 5
Connected to PCI bus 6. The DRAM controller 700 includes a burst size calculation unit 701, a refresh control unit 702, and a preceding refresh counter 703.
And a refresh advance counter 704.

【0075】図7のDRAM制御システムでは、PCI
制御部5は、PCIバス6に対して、バスの使用権を獲
得しデータ転送を行うバスマスタとして動作する。リフ
レッシュ先送りカウンタ704は、第1の実施形態のリ
フレッシュ先送りカウンタ103と同様に、データ転送
の途中で先送りにしたリフレッシュの回数を計数する。
In the DRAM control system shown in FIG.
The control unit 5 operates as a bus master that acquires the right to use the bus and transfers data to the PCI bus 6. The refresh advance counter 704 counts the number of refreshes advanced in the middle of data transfer, similarly to the refresh advance counter 103 of the first embodiment.

【0076】以上のように構成された第7の実施形態の
DRAMコントローラ700について、以下にその動作
を述べる。バーストサイズ演算部701は、第6の実施
形態のバーストサイズ演算部601と同様に、PCI制
御部5がバスマスタとしてデータ転送を行うことを検知
すると、このデータ転送に先行してリフレッシュを行う
ことを、リフレッシュ制御部702に指示する。このと
き、バーストサイズ演算部701は、マスタレイテンシ
タイマ値と転送するデータのサイズとに基づいて、リフ
レッシュの実行回数を計算し、リフレッシュ制御部70
2に対して指示する。リフレッシュ制御部702は、バ
ーストサイズ演算部701から先行リフレッシュの指示
を受けると、本来のリフレッシュのタイミングが到来し
ていない場合でも、バーストサイズ演算部701から指
示された回数分のリフレッシュ動作を行い、実行したリ
フレッシュの回数分だけ先行リフレッシュカウンタ70
3をインクリメントする。
The operation of the DRAM controller 700 according to the seventh embodiment configured as described above will be described below. When detecting that the PCI control unit 5 performs data transfer as a bus master, the burst size calculation unit 701, like the burst size calculation unit 601 of the sixth embodiment, performs refreshing prior to the data transfer. , To the refresh control unit 702. At this time, the burst size calculation unit 701 calculates the number of times of execution of the refresh based on the master latency timer value and the size of the data to be transferred, and
Instruct 2 When receiving the instruction of the preceding refresh from the burst size calculation unit 701, the refresh control unit 702 performs the refresh operation for the number of times specified by the burst size calculation unit 701 even when the original refresh timing has not arrived. Advance refresh counter 70 for the number of executed refreshes
3 is incremented.

【0077】一方、リフレッシュ制御部702において
本来のリフレッシュタイミングが到来し、かつ先行リフ
レッシュカウンタ703に0以外の値がセットされてい
た場合を考える。この場合、先行リフレッシュカウンタ
703の計数値は、先行リフレッシュが行われているこ
とを示している。このとき、リフレッシュ制御部702
は、リフレッシュ動作は行わずに先行リフレッシュカウ
ンタ703を1だけデクリメントする。また、リフレッ
シュ制御部702において本来のリフレッシュのタイミ
ングが到来し、かつ先行リフレッシュカウンタ703に
0がセットされている場合、リフレッシュ制御部702
は、DRAM1のリフレッシュを行う。このとき、先行
リフレッシュカウンタ703の計数値は、変化しない。
On the other hand, consider a case where the original refresh timing has arrived in the refresh control unit 702 and a value other than 0 has been set in the preceding refresh counter 703. In this case, the count value of the preceding refresh counter 703 indicates that the preceding refresh is being performed. At this time, the refresh control unit 702
Decrements the preceding refresh counter 703 by 1 without performing the refresh operation. When the original refresh timing has arrived in the refresh control unit 702 and 0 is set in the preceding refresh counter 703, the refresh control unit 702
Performs refresh of the DRAM 1. At this time, the count value of the preceding refresh counter 703 does not change.

【0078】ところで、図7の制御システムでは、PC
I制御部5をバスマスタとするPCIバス6上のデータ
転送が、マスタレイテンシタイマ値に相当する時間内に
終了しない場合においても、データ転送が中断されずに
継続する場合がある。例えば、PCIバス6上の他のデ
バイス(図示せず)がPCIバス6を使用しない場合
や、PCI制御部5の優先度がPCIバス6上の他のデ
バイス(図示せず)よりも高い場合である。PCI制御
部5をバスマスタとするPCIバス6上のデータ転送開
始後、マスタレイテンシタイマ値に相当する時間が終了
した後にもデータ転送が継続している状態で、リフレッ
シュ制御部702において本来のリフレッシュタイミン
グが到来した場合、第1の実施形態と同様に、リフレッ
シュ制御部702は、DRAM1のリフレッシュを先送
りし、リフレッシュ先送りカウンタ704を1だけイン
クリメントする。データ転送終了後、リフレッシュ制御
部702は、リフレッシュ先送りカウンタ704の計数
値に相当する回数分のリフレッシュをDRAM1に対し
て行う。
By the way, in the control system of FIG.
Even when data transfer on the PCI bus 6 using the I control unit 5 as a bus master does not end within a time corresponding to the master latency timer value, the data transfer may continue without interruption. For example, when another device (not shown) on the PCI bus 6 does not use the PCI bus 6, or when the priority of the PCI control unit 5 is higher than other devices (not shown) on the PCI bus 6 It is. After the start of data transfer on the PCI bus 6 using the PCI control unit 5 as a bus master, the refresh control unit 702 sets the original refresh timing Arrives, the refresh control unit 702 postpones the refresh of the DRAM 1 and increments the post-refresh counter 704 by one, as in the first embodiment. After the data transfer is completed, the refresh control unit 702 refreshes the DRAM 1 for the number of times corresponding to the count value of the refresh advance counter 704.

【0079】ただし、リフレッシュ制御部702は、全
体のリフレッシュサイクル終了時間が迫っている場合
(例えば、所定のしきい値を設け、リフレッシュを先送
りしている時間がそのしきい値の時間よりも長くなった
場合)には、リフレッシュの先送りをせずに他の制御を
行う。つまり、この場合、リフレッシュ制御部702
は、データ転送中であっても、PCI制御部5に対して
転送中断信号を送ってデータ転送を中断するように指示
し、転送の終了後、DRAM1のリフレッシュを行う。
However, if the entire refresh cycle end time is approaching (for example, a predetermined threshold value is set, and the refresh delay time is longer than the threshold time) If no), another control is performed without delaying the refresh. That is, in this case, the refresh control unit 702
Sends a transfer interruption signal to the PCI control unit 5 to interrupt the data transfer even during the data transfer, and refreshes the DRAM 1 after the transfer is completed.

【0080】なお、リフレッシュ制御部702は、先行
リフレッシュカウンタ703が0以外のときにリフレッ
シュを先送りした場合、先行リフレッシュカウンタ70
3を1だけデクリメントする。逆に、リフレッシュ先送
りカウンタ704が0以外のときにリフレッシュを先行
して行った場合には、リフレッシュ先送りカウンタ70
4を1だけデクリメントする。
When the refresh is postponed when the preceding refresh counter 703 is other than 0, the refresh controller 702 determines whether the preceding refresh counter 70
Decrements 3 by 1. Conversely, if the refresh is performed in advance when the refresh advanced counter 704 is other than 0, the refresh advanced counter 70
Decrement 4 by 1.

【0081】上記のようなリフレッシュ制御を行うこと
により、第7の実施形態では、少なくともマスタレイテ
ンシタイマ値を越えたデータ転送においても、リフレッ
シュのためにデータ転送を中断させる必要がなくなり、
第6の実施形態よりも一層適切な先行リフレッシュを行
うことができる。従って、転送速度を向上させることが
できる。
By performing the refresh control as described above, in the seventh embodiment, it is not necessary to interrupt the data transfer for refresh even in the data transfer exceeding at least the master latency timer value.
It is possible to perform more appropriate preceding refresh than in the sixth embodiment. Therefore, the transfer speed can be improved.

【0082】(第8の実施形態)図8は、本発明の第8
の実施形態に係るDRAMコントローラを用いたDRA
M制御システムの構成を示すブロック図である。図8に
おいて、本システムは、PCI制御部5と、DRAMコ
ントローラ800と、DRAM1とを備え、それぞれは
内部バス4に接続される。さらに、PCI制御部5は、
PCIバス6に接続される。また、DRAMコントロー
ラ800は、シングル転送指示部801と、リフレッシ
ュ制御部802とを含む。
(Eighth Embodiment) FIG. 8 shows an eighth embodiment of the present invention.
Using the DRAM controller according to the embodiment of the present invention
FIG. 2 is a block diagram illustrating a configuration of an M control system. 8, the system includes a PCI control unit 5, a DRAM controller 800, and a DRAM 1, each of which is connected to the internal bus 4. Further, the PCI control unit 5
Connected to PCI bus 6. The DRAM controller 800 includes a single transfer instruction unit 801 and a refresh control unit 802.

【0083】第8の実施形態において、第1の実施形態
と同様の点については説明を省略し、異なる点のみを説
明する。第1の実施形態と異なる点は、バースト検出部
10に代えてシングル転送指示部801が設けられた点
と、リフレッシュ先送りカウンタ103が削除された点
とである。このシングル転送指示部801は、転送サイ
ズの小さいデータあるいはシングルデータを転送するこ
とを、PCI制御部5に指示する。
In the eighth embodiment, description of the same points as in the first embodiment will be omitted, and only different points will be described. The differences from the first embodiment are that a single transfer instructing unit 801 is provided instead of the burst detecting unit 10 and that the refresh advance counter 103 is deleted. The single transfer instructing unit 801 instructs the PCI control unit 5 to transfer small data or single data.

【0084】以上のように構成された第8の実施形態の
DRAMコントローラ800について、以下にその動作
を述べる。第8の実施形態において基本的な動作は、第
1の実施形態と同様であるが、リフレッシュ制御部80
2は、内部のリフレッシュカウンタ(図示せず)の計数
値が本来のリフレッシュタイミングが近づいていること
を示していると、シングル転送指示部801にその旨を
通知する。応じて、シングル転送指示部801は、シン
グルデータ(単一のデータあるいはデータサイズの小さ
いデータ)を転送することを、PCI制御部5に通知す
る。応じて、PCI制御部5は、シングルデータが存在
する場合には、当該シングルデータを優先して転送す
る。一方、シングルデータが存在しない場合には、PC
I制御部5は、従来通りの転送を行う。この場合、リフ
レッシュ制御部802は、リフレッシュのタイミングで
データ転送の切断処理を行う。リフレッシュタイミング
が近づいたときに、PCI制御部5がシングルデータの
転送を行うことにより、DRAM1へのリフレッシュを
PCIバス6への中断処理を必要とせずに割り込ますこ
とができる確率が高くなる。第1の実施形態と同様に、
1回の切断を無くすにつき500ナノ秒程度の時間ロス
を削減できる。
The operation of the DRAM controller 800 according to the eighth embodiment configured as described above will be described below. The basic operation in the eighth embodiment is the same as that of the first embodiment, but the refresh control unit 80
When the count value of the internal refresh counter (not shown) indicates that the original refresh timing is approaching, the number 2 notifies the single transfer instruction unit 801 of that fact. In response, single transfer instructing section 801 notifies PCI control section 5 that single data (single data or data having a small data size) is to be transferred. Accordingly, when single data exists, the PCI control unit 5 transfers the single data with priority. On the other hand, if there is no single data,
The I control unit 5 performs the transfer as before. In this case, the refresh control unit 802 performs disconnection processing of data transfer at the timing of refresh. When the refresh timing approaches, the PCI controller 5 transfers single data, so that the probability of being able to interrupt the refresh to the DRAM 1 without interrupting the PCI bus 6 is increased. As in the first embodiment,
A time loss of about 500 nanoseconds can be reduced for eliminating one cut.

【0085】上記のように、リフレッシュのタイミング
の近辺において、短いサイズのデータの転送を行うこと
により、データの転送の切断を減らすことが可能とな
り、バスを効率的に使用することが可能となる。
As described above, by transferring data of a short size in the vicinity of the refresh timing, disconnection of data transfer can be reduced, and the bus can be used efficiently. .

【0086】(その他の実施形態)なお、他の実施形態
のDRAMコントローラとして、以下の(1)〜(3
2)に示すように、上記第1〜第7の実施形態を適当に
組み合わせた構成のDRAMコントローラが考えられ
る。 (1)第1の実施形態+第2の実施形態 (2)第2の実施形態+第3の実施形態 (3)第1の実施形態+第3の実施形態 (4)第1の実施形態+第2の実施形態+第3の実施形
態 (5)第1の実施形態+第4の実施形態 (6)第2の実施形態+第4の実施形態 (7)第3の実施形態+第4の実施形態 (8)第1の実施形態+第2の実施形態+第4の実施形
態 (9)第2の実施形態+第3の実施形態+第4の実施形
態 (10)第1の実施形態+第3の実施形態+第4の実施
形態 (11)第1の実施形態+第2の実施形態+第3の実施
形態+第4の実施形態 (12)第1の実施形態+第5の実施形態 (13)第2の実施形態+第5の実施形態 (14)第3の実施形態+第5の実施形態 (15)第1の実施形態+第2の実施形態+第5の実施
形態 (16)第2の実施形態+第3の実施形態+第5の実施
形態 (17)第1の実施形態+第3の実施形態+第5の実施
形態 (18)第1の実施形態+第2の実施形態+第3の実施
形態+第5の実施形態 (19)第1の実施形態+第6の実施形態 (20)第2の実施形態+第6の実施形態 (21)第3の実施形態+第6の実施形態 (22)第1の実施形態+第2の実施形態+第6の実施
形態 (23)第2の実施形態+第3の実施形態+第6の実施
形態 (24)第1の実施形態+第3の実施形態+第6の実施
形態 (25)第1の実施形態+第2の実施形態+第3の実施
形態+第6の実施形態 (26)第1の実施形態+第7の実施形態 (27)第2の実施形態+第7の実施形態 (28)第3の実施形態+第7の実施形態 (29)第1の実施形態+第2の実施形態+第7の実施
形態 (30)第2の実施形態+第3の実施形態+第7の実施
形態 (31)第1の実施形態+第3の実施形態+第7の実施
形態 (32)第1の実施形態+第2の実施形態+第3の実施
形態+第7の実施形態
(Other Embodiments) As DRAM controllers of other embodiments, the following (1) to (3)
As shown in 2), a DRAM controller having a configuration in which the first to seventh embodiments are appropriately combined is conceivable. (1) First Embodiment + Second Embodiment (2) Second Embodiment + Third Embodiment (3) First Embodiment + Third Embodiment (4) First Embodiment + Second Embodiment + Third Embodiment (5) First Embodiment + Fourth Embodiment (6) Second Embodiment + Fourth Embodiment (7) Third Embodiment + Third Embodiment Fourth embodiment (8) First embodiment + second embodiment + fourth embodiment (9) Second embodiment + third embodiment + fourth embodiment (10) First embodiment Embodiment + Third Embodiment + Fourth Embodiment (11) First Embodiment + Second Embodiment + Third Embodiment + Fourth Embodiment (12) First Embodiment + Third Embodiment Fifth Embodiment (13) Second Embodiment + Fifth Embodiment (14) Third Embodiment + Fifth Embodiment (15) First Embodiment + Second Embodiment + Fifth Embodiment Embodiment (16) Second Embodiment + Third Embodiment + Fifth Embodiment (17) First Embodiment + Third Embodiment + Fifth Embodiment (18) First Embodiment + 2nd embodiment + 3rd embodiment + 5th embodiment (19) 1st embodiment + 6th embodiment (20) 2nd embodiment + 6th embodiment (21) Third Embodiment + Sixth Embodiment (22) First Embodiment + Second Embodiment + Sixth Embodiment (23) Second Embodiment + Third Embodiment + Sixth Embodiment (24) First Embodiment + Third Embodiment + Sixth Embodiment (25) First Embodiment + Second Embodiment + Third Embodiment + Sixth Embodiment (26) Third Embodiment First Embodiment + Seventh Embodiment (27) Second Embodiment + Seventh Embodiment (28) Third Embodiment + Seventh Embodiment (29) First Embodiment + Second Embodiment + Seventh Embodiment (30) Second Embodiment + Third Embodiment + Seventh Embodiment (31) First Embodiment + Third Embodiment + Third Embodiment Seventh Embodiment (32) First Embodiment + Second Embodiment + Third Embodiment + Seventh Embodiment

【0087】この場合、バースト転送、バスビジー状
態、コンフィギュレーションアクセスは、同時には起こ
らないため、バースト検出部、バスビジー検出部、コン
フィギュレーションアクセス検出部を任意に組み合わせ
ても、それぞれの検出結果に基づいてDRAM1のリフ
レッシュを独立に制御することが可能である。また、上
記(5)〜(32)の実施形態では、PCI制御部5
は、PCIバス6に対してターゲットおよびバスマスタ
として動作するが、ターゲットの動作とバスマスタの動
作は、同時には起こらないため、それぞれの動作におい
て、DRAM1のリフレッシュを独立して制御すること
が可能である。
In this case, since the burst transfer, the bus busy state, and the configuration access do not occur at the same time, even if the burst detection unit, the bus busy detection unit, and the configuration access detection unit are arbitrarily combined, based on the respective detection results. The refresh of the DRAM 1 can be controlled independently. In the above embodiments (5) to (32), the PCI control unit 5
Operate as a target and a bus master with respect to the PCI bus 6, but since the operation of the target and the operation of the bus master do not occur simultaneously, it is possible to independently control the refresh of the DRAM 1 in each operation. .

【0088】なお、上記(1)〜(32)のいずれの実
施形態においても、リフレッシュ先送りカウンタおよび
先行リフレッシュカウンタの両方が設けられるが、リフ
レッシュ制御部は、両カウンタの計数値を以下のように
して更新制御する。 (a)DRAM1のリフレッシュを先送りする場合 先行リフレッシュカウンタの計数値が0の場合は、リフ
レッシュ先送りカウンタの計数値を1だけインクリメン
トする。先行リフレッシュカウンタの計数値が0以外の
場合は、リフレッシュ先送りカウンタの計数値をそのま
まにして、先行リフレッシュカウンタの計数値を1だけ
デクリメントする。 (b)DRAM1の先行リフレッシュを行う場合 リフレッシュ先送りカウンタの計数値が0の場合は、先
行リフレッシュカウンタの計数値を1だけインクリメン
トする。リフレッシュ先送りカウンタの計数値が0以外
の場合は、先行リフレッシュカウンタの計数値をそのま
まにして、リフレッシュ先送りカウンタの計数値を1だ
けデクリメントする。
In each of the above embodiments (1) to (32), both the refresh advance counter and the advance refresh counter are provided, but the refresh control unit sets the count values of both counters as follows. Update control. (A) When the refresh of the DRAM 1 is advanced When the count value of the preceding refresh counter is 0, the count value of the refresh advanced counter is incremented by one. If the count value of the preceding refresh counter is other than 0, the count value of the preceding refresh counter is decremented by 1 while keeping the count value of the advanced refresh counter. (B) When the preceding refresh of the DRAM 1 is performed When the count value of the refresh advance counter is 0, the count value of the preceding refresh counter is incremented by one. If the count value of the refresh advance counter is other than 0, the count value of the refresh advance counter is decremented by 1 while keeping the count value of the preceding refresh counter.

【0089】また、以上説明した各実施形態では、外部
バスとしてPCIバス6を用いる場合について説明した
が、外部バスとして他のバスを用いても各実施形態と同
様の効果が得られる。
In each of the embodiments described above, the case where the PCI bus 6 is used as the external bus has been described. However, the same effects as those of the embodiments can be obtained by using another bus as the external bus.

【0090】また、第7の実施形態では、リフレッシュ
先送りカウンタ704および先行リフレッシュカウンタ
703を用いたが、これら2つのカウンタを1つのアッ
プダウンカウンタで構成し、リフレッシュを先送りした
場合には当該アップダウンカウンタの計数値を1だけデ
クリメントし、リフレッシュを先行して行った場合には
当該アップダウンカウンタの計数値を1だけインクリメ
ントするようにしても、第7の実施形態と同様の効果が
得られる。ただし、このアップダウンカウンタの計数値
は、リフレッシュが先送り中はマイナスの値となり、リ
フレッシュが先行している場合はプラスの値となる。ま
た、リフレッシュを先送りした場合に1をインクリメン
トし、リフレッシュを先行して行った場合に1をデクリ
メントするようにしても、上記と同様の効果が得られ
る。
In the seventh embodiment, the refresh advance counter 704 and the advance refresh counter 703 are used. However, these two counters are constituted by one up / down counter. Even if the count value of the counter is decremented by 1 and refreshing is performed in advance, the same effect as in the seventh embodiment can be obtained even if the count value of the up / down counter is incremented by 1. However, the count value of the up / down counter becomes a negative value during the refreshing advance, and a positive value when the refreshing is advanced. Also, the same effect as described above can be obtained by incrementing 1 when the refresh is advanced and decrementing 1 when the refresh is performed in advance.

【0091】また、第2〜第7の実施形態において、リ
フレッシュを先行して行った結果、1サイクル分のリフ
レッシュを終了した場合、その時点で次のリフレッシュ
サイクルに入るまでリフレッシュを中止するようにして
もよい。この場合も各実施形態と同様の効果が得られ
る。また、第2〜第7の実施形態において、リフレッシ
ュを先行して行った結果、1サイクル分のリフレッシュ
を終了した場合、その時点で先行リフレッシュカウンタ
をリセットし、次のリフレッシュサイクルに入れるよう
にしてもよい。この場合も各実施形態と同様の効果が得
られる。
Further, in the second to seventh embodiments, when the refresh for one cycle is completed as a result of performing the refresh in advance, the refresh is stopped until the next refresh cycle is entered at that time. You may. In this case, the same effects as those of the embodiments can be obtained. Further, in the second to seventh embodiments, when one cycle of refresh is completed as a result of performing the refresh in advance, the preceding refresh counter is reset at that time and the next refresh cycle is started. Is also good. In this case, the same effects as those of the embodiments can be obtained.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 1 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a first embodiment of the present invention.

【図2】本発明の第2の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 2 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a second embodiment of the present invention.

【図3】本発明の第3の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 3 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a third embodiment of the present invention.

【図4】本発明の第4の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 4 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a fourth embodiment of the present invention.

【図5】本発明の第5の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 5 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a fifth embodiment of the present invention.

【図6】本発明の第6の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 6 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a sixth embodiment of the present invention.

【図7】本発明の第7の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 7 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to a seventh embodiment of the present invention.

【図8】本発明の第8の実施形態に係るDRAMコント
ローラを用いたDRAM制御システムの構成を示すブロ
ック図である。
FIG. 8 is a block diagram showing a configuration of a DRAM control system using a DRAM controller according to an eighth embodiment of the present invention.

【図9】従来のDRAMの制御システムを示すブロック
図である。
FIG. 9 is a block diagram showing a conventional DRAM control system.

【符号の説明】[Explanation of symbols]

1…DRAM 4…内部バス 5…PCI制御部 6…PCIバス 100,200,300,400,500,600,7
00,800…DRAMコントローラ 101…バースト検出部 102,202,302,402,502,602,7
02,802…リフレッシュ制御部 103…リフレッシュ先送りカウンタ 201…バスビジー検出部 203,303,403,503,603,703…先
行リフレッシュカウンタ 301…コンフィギュレーションアクセス検出部 401…転送サイズ検出部 501…マスタレイテンシタイマ値検出部 601,701…バーストサイズ演算部 801…シングル転送指示部
DESCRIPTION OF SYMBOLS 1 ... DRAM 4 ... Internal bus 5 ... PCI control part 6 ... PCI bus 100,200,300,400,500,600,7
00, 800: DRAM controller 101: Burst detector 102, 202, 302, 402, 502, 602, 7
02, 802 refresh controller 103 refresh advance counter 201 bus busy detector 203, 303, 403, 503, 603, 703 preceding refresh counter 301 configuration access detector 401 transfer size detector 501 master latency timer Value detection unit 601, 701: burst size calculation unit 801: single transfer instruction unit

Claims (17)

【特許請求の範囲】[Claims] 【請求項1】 内部バスを介して接続されたDRAM
(ダイナミック・ランダム・アクセスメモリ)を制御す
るためのDRAMコントローラであって、前記内部バス
には、外部バスに対してアクセスの対象となるターゲッ
トとして動作し、かつ外部バスとのインタフェイスとし
ての機能を有する外部バス制御部がさらに接続されてお
り、 バースト検出部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部と、 リフレッシュ先送りカウンタとを備え、 前記バースト検出部は、前記外部バス制御部を介して前
記DRAMと前記外部バス上の他のデバイスとの間でバ
ースト転送(複数のデータをまとめて転送すること)が
行われているか否かおよび当該バースト転送が終了した
かを検出して前記リフレッシュ制御部に通知し、 前記リフレッシュ制御部は、 前記バースト転送が行われていないときに定期的なリフ
レッシュタイミングが到来したときは、前記DRAMに
対して定期的なリフレッシュを行い、 前記バースト転送の継続中に定期的なリフレッシュタイ
ミングが到来したときは、前記DRAMの定期的なリフ
レッシュを先送りして前記リフレッシュ先送りカウンタ
の計数値を順方向に更新し、 前記バースト転送が終了したときに前記リフレッシュ先
送りカウンタの計数値がリフレッシュの先送りが行われ
ていることを示していれば、当該計数値に対応する回数
分だけ前記DRAMのリフレッシュを行うと共に、リフ
レッシュ先送りカウンタの計数値を逆方向に更新するこ
とを特徴とする、DRAMコントローラ。
1. A DRAM connected via an internal bus.
A DRAM controller for controlling a dynamic random access memory, wherein the internal bus operates as a target to be accessed with respect to an external bus, and functions as an interface with the external bus. An external bus control unit having: a burst detection unit; a refresh control unit for periodically refreshing the DRAM; and a refresh advance counter; and the burst detection unit includes the external bus control unit. And detecting whether or not a burst transfer (to transfer a plurality of data at a time) between the DRAM and another device on the external bus via the external bus is completed and whether the burst transfer is completed. The refresh control unit notifies the refresh control unit that the burst transfer is performed. When the periodic refresh timing arrives when the burst transfer is not performed, the periodic refresh is performed on the DRAM. Forwarding the refresh and updating the count value of the refresh advance counter in the forward direction, if the count value of the refresh advance counter indicates that the refresh advance is performed when the burst transfer is completed, A DRAM controller which refreshes the DRAM by the number of times corresponding to the count value and updates the count value of the refresh advance counter in the reverse direction.
【請求項2】 前記リフレッシュ制御部は、前記バース
ト転送の継続中にリフレッシュサイクルの終了時間が所
定時間後に迫ったとき、前記外部バス制御部に対してデ
ータ転送を中止するように指示すると共に、前記DRA
Mのリフレッシュを先送りしないことを特徴とする、請
求項1に記載のDRAMコントローラ。
2. The refresh control unit instructs the external bus control unit to stop data transfer when a refresh cycle end time approaches a predetermined time after the burst transfer is continued, The DRA
2. The DRAM controller according to claim 1, wherein refresh of M is not postponed.
【請求項3】 内部バスを介して接続されたDRAMを
制御するためのDRAMコントローラであって、前記内
部バスには、外部バスに対してアクセスの対象となるタ
ーゲットとして動作し、かつ外部バスとのインタフェイ
スとしての機能を有する外部バス制御部がさらに接続さ
れており、 バスビジー検出部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部とを備え、 前記バスビジー検出部は、前記外部バス制御部の動作に
基づき、前記外部バスがバスビジーの状態(外部バス制
御部を除く外部バス上のデバイス間でデータの転送が行
われている状態)であるか否かを検出して前記リフレッ
シュ制御部に通知し、 前記リフレッシュ制御部は、前記外部バスがバスビジー
の状態になったとき、定期的なリフレッシュタイミング
が到来する前に、前記DRAMの先行リフレッシュを行
うことを特徴とする、DRAMコントローラ。
3. A DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus operates as a target to be accessed with respect to an external bus, and is connected to the external bus. An external bus control unit having a function as an interface of the external bus control unit; a bus busy detection unit; and a refresh control unit for periodically refreshing the DRAM, wherein the bus busy detection unit includes the external bus control unit. And the refresh control unit detects whether or not the external bus is in a bus busy state (a state in which data is transferred between devices on the external bus except the external bus control unit). The refresh control unit notifies the refresh control unit periodically when the external bus is in a bus busy state. There before arriving, and performing the preceding refreshing of the DRAM, DRAM controller.
【請求項4】 先行リフレッシュカウンタをさらに備
え、 前記リフレッシュ制御部は、 前記外部バスがバスビジーの状態になったことに応答し
て、前記DRAMの先行リフレッシュを行ったとき、前
記先行リフレッシュカウンタの計数値を順方向に更新
し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていることを示している場合には、前記DR
AMの定期的なリフレッシュを行わずに先行リフレッシ
ュカウンタの計数値を逆方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていないことを示している場合には、前記D
RAMに対して定期的なリフレッシュを行うことを特徴
とする、請求項3に記載のDRAMコントローラ。
4. The semiconductor device according to claim 1, further comprising a preceding refresh counter, wherein the refresh control unit counts the preceding refresh counter when performing the preceding refresh of the DRAM in response to the external bus being in a bus busy state. When the numerical value is updated in the forward direction, and the periodic refresh timing arrives, if the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the DR
The count value of the preceding refresh counter is updated in the reverse direction without performing the AM periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter has not been updated. In the case of indicating, the D
4. The DRAM controller according to claim 3, wherein the RAM is periodically refreshed.
【請求項5】 内部バスを介して接続されたDRAMを
制御するためのDRAMコントローラであって、前記内
部バスには、外部バスに対してアクセスの対象となるタ
ーゲットとして動作し、かつ外部バスとのインタフェイ
スとしての機能を有する外部バス制御部がさらに接続さ
れており、 アクセス検出部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部とを備え、 前記アクセス検出部は、前記外部バスを介して前記外部
バス制御部の内部要素がアクセスされているか否かを検
出して前記リフレッシュ制御部に通知し、 前記リフレッシュ制御部は、前記アクセス制御部から前
記外部バス制御部の内部要素がアクセスされた旨の通知
を受け取ったとき、定期的なリフレッシュタイミングが
到来する前に、前記DRAMの先行リフレッシュを行う
ことを特徴とする、DRAMコントローラ。
5. A DRAM controller for controlling a DRAM connected via an internal bus, wherein the internal bus operates as a target to be accessed with respect to an external bus, and is connected to the external bus. An external bus control unit having a function as an interface is further connected, comprising: an access detection unit; and a refresh control unit for periodically refreshing the DRAM. The access detection unit is connected to the external bus via the external bus. Detecting whether the internal element of the external bus control unit is being accessed and notifying the refresh control unit that the internal element of the external bus control unit is accessed from the access control unit. Before receiving the notification that the DRAM has been refreshed before the periodic refresh timing arrives. And performing a fresh, DRAM controller.
【請求項6】 先行リフレッシュカウンタをさらに備
え、 前記リフレッシュ制御部は、 前記外部バス制御部の内部要素がアクセスされたことに
応答して、前記DRAMのリフレッシュを行ったとき、
前記先行リフレッシュカウンタの計数値を順方向に更新
し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていることを示している場合には、前記DR
AMの定期的なリフレッシュを行わずに先行リフレッシ
ュカウンタの計数値を逆方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていないことを示している場合には、前記D
RAMに対して定期的なリフレッシュを行うことを特徴
とする、請求項5に記載のDRAMコントローラ。
6. A refresh control unit, further comprising: a preceding refresh counter, wherein the refresh control unit refreshes the DRAM in response to an internal element of the external bus control unit being accessed.
When the count value of the preceding refresh counter is updated in the forward direction, and when the periodic refresh timing arrives, the count value of the preceding refresh counter indicates that the preceding refresh is being performed, DR
The count value of the preceding refresh counter is updated in the reverse direction without performing the AM periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter has not been updated. In the case of indicating, the D
6. The DRAM controller according to claim 5, wherein the RAM is periodically refreshed.
【請求項7】 内部バスを介して接続されたDRAMを
制御するためのDRAMコントローラであって、前記内
部バスには、外部バスに対してバスの使用権を獲得しデ
ータ転送を行うバスマスタとして動作し、かつ外部バス
とのインタフェイスとしての機能を有する外部バス制御
部がさらに接続されており、 転送サイズ検出部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部と、 先行リフレッシュカウンタとを備え、 前記転送サイズ検出部は、前記外部バス制御部がバスマ
スタとしてこれからデータを転送しようとするとき、転
送されるデータのサイズからデータの転送に必要な時間
期間を求め、当該時間期間内に発生するリフレッシュタ
イミングの回数を算出して前記リフレッシュ制御部に通
知し、 前記リフレッシュ制御部は、 前記転送サイズ検出部からリフレッシュタイミングの回
数を指示する通知を受け取ったとき、定期的なリフレッ
シュタイミング到来する前に、前記DRAMの先行リフ
レッシュを通知された回数分だけ行うと共に、前記先行
リフレッシュカウンタの計数値を対応する回数分だけ順
方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていることを示している場合には、前記DR
AMの定期的なリフレッシュを行わずに先行リフレッシ
ュカウンタの計数値を逆方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていないことを示している場合には、前記D
RAMに対して定期的なリフレッシュを行うことを特徴
とする、DRAMコントローラ。
7. A DRAM controller for controlling a DRAM connected via an internal bus, wherein said internal bus operates as a bus master for acquiring a right to use the bus with respect to an external bus and performing data transfer. And an external bus control unit having an interface with an external bus, further comprising a transfer size detection unit, a refresh control unit for periodically refreshing the DRAM, and a preceding refresh counter. When the external bus control unit attempts to transfer data from now on as the bus master, the transfer size detection unit obtains a time period required for data transfer from the size of the data to be transferred, and occurs within the time period. Calculating the number of refresh timings and notifying the refresh controller, When receiving a notification indicating the number of refresh timings from the transfer size detection unit, before the periodic refresh timing arrives, the unit performs the preceding refresh of the DRAM by the notified number of times and performs the preceding refresh. If the count value of the counter is updated in the forward direction by the corresponding number of times, and when the periodic refresh timing arrives, the count value of the preceding refresh counter indicates that the preceding refresh is being performed. , The DR
The count value of the preceding refresh counter is updated in the reverse direction without performing the AM periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter has not been updated. In the case of indicating, the D
A DRAM controller characterized by periodically refreshing a RAM.
【請求項8】 内部バスを介して接続されたDRAMを
制御するためのDRAMコントローラであって、前記内
部バスには、外部バスに対してバスの使用権を獲得しデ
ータ転送を行うバスマスタとして動作し、かつ外部バス
とのインタフェイスとしての機能を有する外部バス制御
部がさらに接続されており、 占有期間検出部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部と、 先行リフレッシュカウンタとを備え、 前記占有期間検出部は、前記外部バス制御部がバスマス
タとしてこれからデータを転送しようとするとき、外部
バス制御部が1回のデータ転送において前記外部バスを
占有することが可能な時間期間を検出し、その時間期間
内に発生するリフレッシュタイミングの回数を算出して
前記リフレッシュ制御部に通知し、 前記リフレッシュ制御部は、 前記占有期間検出部からリフレッシュタイミングの回数
を指示する通知を受け取ったとき、定期的なリフレッシ
ュタイミングが到来する前に、前記DRAMの先行リフ
レッシュを通知された回数分だけ行うと共に、前記先行
リフレッシュカウンタの計数値を対応する回数分だけ順
方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていることを示している場合には、前記DR
AMの定期的なリフレッシュを行わずに先行リフレッシ
ュカウンタの計数値を逆方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていないことを示している場合には、前記D
RAMに対して定期的なリフレッシュを行うことを特徴
とする、DRAMコントローラ。
8. A DRAM controller for controlling a DRAM connected via an internal bus, wherein said internal bus operates as a bus master for acquiring a right to use the bus with respect to an external bus and performing data transfer. And an external bus control unit having an interface with an external bus, further comprising an occupation period detection unit, a refresh control unit for periodically refreshing the DRAM, and a preceding refresh counter. The occupancy period detection unit detects a time period in which the external bus control unit can occupy the external bus in one data transfer when the external bus control unit attempts to transfer data from now on as a bus master. Then, the number of refresh timings occurring during the time period is calculated and transmitted to the refresh control unit. When the refresh control unit receives a notification indicating the number of refresh timings from the occupation period detection unit, before the regular refresh timing arrives, the refresh control unit performs the same number of times as the number of times the preceding refresh of the DRAM is notified. At the same time, the count value of the preceding refresh counter is updated in the forward direction by the corresponding number of times, and when the periodic refresh timing comes, it is confirmed that the count value of the preceding refresh counter is being subjected to the preceding refresh. If indicated, the DR
The count value of the preceding refresh counter is updated in the reverse direction without performing the AM periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter has not been updated. In the case of indicating, the D
A DRAM controller characterized by periodically refreshing a RAM.
【請求項9】 前記外部バス制御部内には、マスタレイ
テンシタイマが設けられており、 前記占有期間検出部は、前記マスタレイテンシタイマに
設定されたタイマ値に基づいて、前記外部バス制御部が
1回のデータ転送において前記外部バスを占有すること
が可能な時間期間を検出することを特徴とする、請求項
8に記載のDRAMコントローラ。
9. A master latency timer is provided in the external bus control unit, and the occupation period detection unit determines whether the external bus control unit has one based on a timer value set in the master latency timer. 9. The DRAM controller according to claim 8, wherein a time period during which the external bus can be occupied in one data transfer is detected.
【請求項10】 内部バスを介して接続されたDRAM
を制御するためのDRAMコントローラであって、前記
内部バスには、外部バスに対してバスの使用権を獲得し
データ転送を行うバスマスタとして動作し、かつ外部バ
スとのインタフェイスとしての機能を有する外部バス制
御部がさらに接続されており、 バーストサイズ演算部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部と、 先行リフレッシュカウンタとを備え、 前記バーストサイズ演算部は、前記外部バス制御部がバ
スマスタとしてこれからデータを転送しようとすると
き、データの転送に必要な時間期間および前記外部バス
制御部が1回のデータ転送において前記外部バスを占有
することが可能な時間期間を検出し、これら時間期間の
内のいずれか短い方を選択し、選択した時間期間内に発
生するリフレッシュタイミングの回数を算出して前記リ
フレッシュ制御部に通知し、 前記リフレッシュ制御部は、 前記バーストサイズ演算部からリフレッシュタイミング
の回数を指示する通知を受け取ったとき、定期的なリフ
レッシュタイミングが到来する前に、前記DRAMの先
行リフレッシュを通知された回数分だけ行うと共に、前
記先行リフレッシュカウンタの計数値を対応する回数分
だけ順方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていることを示している場合には、前記DR
AMの定期的なリフレッシュを行わずに先行リフレッシ
ュカウンタの計数値を逆方向に更新し、 定期的なリフレッシュタイミングが到来したときに、前
記先行リフレッシュカウンタの計数値が先行リフレッシ
ュの行われていないことを示している場合には、前記D
RAMに対して定期的なリフレッシュを行うことを特徴
とする、DRAMコントローラ。
10. A DRAM connected via an internal bus
The internal bus has a function as an interface with the external bus, operating as a bus master that acquires the right to use the bus with respect to the external bus and performs data transfer. An external bus control unit is further connected, comprising: a burst size calculation unit; a refresh control unit that periodically refreshes the DRAM; and a preceding refresh counter. When data transfer is to be performed as a bus master, a time period necessary for data transfer and a time period during which the external bus control unit can occupy the external bus in one data transfer are detected. Select the shorter of the time periods and refresh timers that occur during the selected time period. The refresh control unit calculates the number of times of the timing and notifies the refresh control unit. The preceding refresh of the DRAM is performed by the notified number of times, and the count value of the preceding refresh counter is updated in the forward direction by the corresponding number of times. If the count value indicates that the preceding refresh is being performed, the DR
The count value of the preceding refresh counter is updated in the reverse direction without performing the AM periodic refresh, and when the periodic refresh timing arrives, the count value of the preceding refresh counter has not been updated. In the case of indicating, the D
A DRAM controller characterized by periodically refreshing a RAM.
【請求項11】 内部バスを介して接続されたDRAM
を制御するためのDRAMコントローラであって、前記
内部バスには、外部バスに対してバスの使用権を獲得し
データ転送を行うバスマスタとして動作し、かつ外部バ
スとのインタフェイスとしての機能を有する外部バス制
御部がさらに接続されており、 バーストサイズ演算部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部と、 リフレッシュ先送りカウンタと、 先行リフレッシュカウンタとを備え、 前記バーストサイズ演算部は、 前記外部バス制御部がバスマスタとしてこれからデータ
を転送しようとするとき、データの転送に必要な時間期
間および前記外部バス制御部が1回のデータ転送におい
て前記外部バスを占有することが可能な時間期間を検出
し、これら時間期間の内のいずれか短い方を選択し、選
択した時間期間内に発生するリフレッシュタイミングの
回数を算出して前記リフレッシュ制御部に通知し、 前記外部バス制御部によるデータの転送が終了したと
き、データ転送の終了を前記リフレッシュ制御部に通知
し、 前記リフレッシュ制御部は、 前記バーストサイズ演算部からリフレッシュタイミング
の回数を指示する通知を受け取ったとき、定期的なリフ
レッシュタイミングが到来する前に、前記DRAMの先
行リフレッシュを通知された回数分だけ行い、この場合
において、前記リフレッシュ先送りカウンタの計数値が
リフレッシュの先送りが行われていないことを示してい
れば、前記先行リフレッシュカウンタの計数値を対応す
る回数分だけ順方向に更新し、リフレッシュ先送りカウ
ンタの計数値がリフレッシュの先送りが行われているこ
とを示していれば、リフレッシュ先送りカウンタの計数
値を対応する回数分だけ逆方向に更新し、 前記バーストサイズ演算部から前記外部バス制御部によ
るデータの転送が終了した旨の通知を受け取ったとき、
前記リフレッシュ先送りカウンタの計数値に対応する回
数分だけ前記DRAMのリフレッシュを行うと共に、リ
フレッシュ先送りカウンタの計数値を逆方向に更新し、 前記外部バス制御部がデータの転送を継続中に定期的な
リフレッシュタイミングが到来したとき、前記DRAM
の定期的なリフレッシュを先送りし、この場合におい
て、前記先行リフレッシュカウンタの計数値が先行リフ
レッシュの行われていないことを示していれば、前記リ
フレッシュ先送りカウンタの計数値を順方向に更新し、
先行リフレッシュカウンタの計数値が先行リフレッシュ
の行われていることを示していれば、先行リフレッシュ
カウンタの計数値を逆方向に更新し、 前記外部バス制御部によるデータ転送が行われていない
状態で定期的なリフレッシュタイミングが到来したと
き、前記先行リフレッシュカウンタの計数値が先行リフ
レッシュの行われていることを示している場合には、前
記DRAMの定期的なリフレッシュを行わずに先行リフ
レッシュカウンタの計数値を逆方向に更新し、 前記外部バス制御部によるデータ転送が行われていない
状態で定期的なリフレッシュタイミングが到来したと
き、前記先行リフレッシュカウンタの計数値が先行リフ
レッシュの行われていないことを示している場合には、
前記DRAMに対して定期的なリフレッシュを行うこと
を特徴とする、DRAMコントローラ。
11. A DRAM connected via an internal bus
The internal bus has a function as an interface with the external bus, operating as a bus master that acquires the right to use the bus with respect to the external bus and performs data transfer. An external bus control unit is further connected, comprising: a burst size calculation unit; a refresh control unit for periodically refreshing the DRAM; a refresh advance counter; and a preceding refresh counter, wherein the burst size calculation unit includes: When the external bus control unit intends to transfer data from now on as a bus master, a time period required for data transfer and a time period during which the external bus control unit can occupy the external bus in one data transfer are set. Detect and select the shorter of these time periods and select Calculating the number of refresh timings occurring within a period and notifying the refresh control unit; when the data transfer by the external bus control unit is completed, notifying the refresh control unit of the end of the data transfer; The control unit, when receiving a notification indicating the number of refresh timings from the burst size calculation unit, performs the preceding refresh of the DRAM for the number of times notified before the periodic refresh timing arrives. In the above, if the count value of the refresh advance counter indicates that refresh advance is not performed, the count value of the advance refresh counter is updated in the forward direction by a corresponding number of times, and the count value of the refresh advance counter is updated. Is postponed for refresh Indicates that the count value of the refresh advance counter is updated in the reverse direction by the corresponding number of times, and when a notification that the data transfer by the external bus control unit is completed is received from the burst size calculation unit. ,
The DRAM is refreshed by the number of times corresponding to the count value of the refresh advance counter, the count value of the refresh advance counter is updated in the reverse direction, and the external bus control unit periodically updates the data while continuing the data transfer. When the refresh timing arrives, the DRAM
In this case, if the count value of the preceding refresh counter indicates that the preceding refresh has not been performed, the count value of the preceding refresh counter is updated in the forward direction,
If the count value of the preceding refresh counter indicates that the preceding refresh is being performed, the count value of the preceding refresh counter is updated in the reverse direction. If the count value of the preceding refresh counter indicates that the preceding refresh is being performed when a proper refresh timing has arrived, the count value of the preceding refresh counter is skipped without performing the periodic refresh of the DRAM. Is updated in the reverse direction, and when the periodic refresh timing arrives in a state where the data transfer by the external bus control unit is not performed, the count value of the preceding refresh counter indicates that the preceding refresh has not been performed. If you have
A DRAM controller, which periodically refreshes the DRAM.
【請求項12】 前記リフレッシュ制御部は、前記外部
バス制御部がデータの転送を継続中にリフレッシュサイ
クルの終了時間が所定時間後に迫ったとき、前記外部バ
ス制御部に対してデータ転送を中止するように指示する
と共に、前記DRAMのリフレッシュを先送りしないこ
とを特徴とする、請求項11に記載のDRAMコントロ
ーラ。
12. The refresh control unit stops data transfer to the external bus control unit when a refresh cycle end time approaches a predetermined time after the external bus control unit is continuing data transfer. 12. The DRAM controller according to claim 11, wherein the instruction is not issued and the refresh of the DRAM is not postponed.
【請求項13】 前記先行リフレッシュカウンタおよび
前記リフレッシュ先送りカウンタは、1つの先行/先送
りリフレッシュカウンタで構成され、 前記リフレッシュ制御部は、 リフレッシュを先送りした場合には前記先行/先送りリ
フレッシュカウンタを逆方向に更新し、先行リフレッシ
ュを行った場合には先行/先送りリフレッシュカウンタ
を順方向に更新し、 前記先行/先送りリフレッシュカウンタの計数値の正負
によって、リフレッシュの先送りが行われているか、先
行リフレッシュが行われているかを判断することを特徴
とする、請求項11に記載のDRAMコントローラ。
13. The advance refresh counter and the refresh advance counter comprise one advance / advance refresh counter, and the refresh control unit, when the refresh is advanced, causes the advance / advance refresh counter to reverse. When the refresh is performed and the preceding refresh is performed, the preceding / previous refresh counter is updated in the forward direction. Depending on whether the count value of the preceding / previous refresh counter is positive or negative, whether the refresh is advanced or the preceding refresh is performed. 12. The DRAM controller according to claim 11, wherein it is determined whether the DRAM controller is operating.
【請求項14】 内部バスを介して接続されたDRAM
を制御するためのDRAMコントローラであって、前記
内部バスには、外部バスに対してアクセスの対象となる
ターゲットとして動作し、かつ外部バスとのインタフェ
イスとしての機能を有する外部バス制御部がさらに接続
されており、 シングル転送指示部と、 前記DRAMを定期的にリフレッシュするリフレッシュ
制御部とを備え、 前記リフレッシュ制御部は、定期的なリフレッシュのタ
イミングが所定時間後に迫ったとき、その旨を前記シン
グル転送指示部に通知し、 前記シングル転送指示部は、前記リフレッシュ制御部か
らの通知に応答して、前記外部バス制御部にデータ長の
短いデータを転送することを指示することを特徴とす
る、DRAMコントローラ。
14. A DRAM connected via an internal bus
The internal bus further includes an external bus control unit that operates as a target to be accessed with respect to the external bus and has a function as an interface with the external bus. A single transfer instructing unit, and a refresh control unit for periodically refreshing the DRAM. The refresh control unit, when the timing of the periodic refresh approaches a predetermined time later, notifies that effect. Notifying a single transfer instruction unit, wherein the single transfer instruction unit instructs the external bus control unit to transfer data having a short data length in response to the notification from the refresh control unit. , DRAM controller.
【請求項15】 前記リフレッシュ制御部は、前記先行
リフレッシュカウンタの計数値が現在のリフレッシュサ
イクルの残りのリフレッシュの回数と等しい場合には、
現在のリフレッシュサイクルが終わるまでリフレッシュ
を行わないことを特徴とする、請求項2〜14のいずれ
かに記載のDRAMコントローラ。
15. The refresh control unit, when the count value of the preceding refresh counter is equal to the number of remaining refreshes in the current refresh cycle,
15. The DRAM controller according to claim 2, wherein refresh is not performed until a current refresh cycle ends.
【請求項16】 前記リフレッシュ制御部は、前記先行
リフレッシュカウンタの計数値が現在のリフレッシュサ
イクルの残りのリフレッシュの回数と等しい場合には、
現在のリフレッシュサイクルが終了したとして次のリフ
レッシュサイクルを開始することを特徴する、請求項2
〜14のいずれかに記載のDRAMコントローラ。
16. The refresh control unit, when the count value of the preceding refresh counter is equal to the number of remaining refreshes in a current refresh cycle,
3. The method according to claim 2, wherein the current refresh cycle is completed and the next refresh cycle is started.
15. The DRAM controller according to any one of claims 14 to 14.
【請求項17】 前記外部バスとして、PCIローカル
バスを用いることを特徴とする、請求項1〜16のいず
れかに記載のDRAMコントローラ。
17. The DRAM controller according to claim 1, wherein a PCI local bus is used as said external bus.
JP9005882A 1997-01-16 1997-01-16 Dram controller Pending JPH10199236A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9005882A JPH10199236A (en) 1997-01-16 1997-01-16 Dram controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9005882A JPH10199236A (en) 1997-01-16 1997-01-16 Dram controller

Publications (1)

Publication Number Publication Date
JPH10199236A true JPH10199236A (en) 1998-07-31

Family

ID=11623281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9005882A Pending JPH10199236A (en) 1997-01-16 1997-01-16 Dram controller

Country Status (1)

Country Link
JP (1) JPH10199236A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721225B2 (en) 2002-03-29 2004-04-13 Renesas Technology Corp. Semiconductor memory device with activation of a burst refresh when a long cycle is detected
JP2011018435A (en) * 2004-11-24 2011-01-27 Qualcomm Inc Method and system for minimizing impact of refresh operation on volatile memory performance

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721225B2 (en) 2002-03-29 2004-04-13 Renesas Technology Corp. Semiconductor memory device with activation of a burst refresh when a long cycle is detected
JP2011018435A (en) * 2004-11-24 2011-01-27 Qualcomm Inc Method and system for minimizing impact of refresh operation on volatile memory performance

Similar Documents

Publication Publication Date Title
US5652536A (en) Non-glitch clock switching circuit
US5418920A (en) Refresh control method and system including request and refresh counters and priority arbitration circuitry
JPH06139189A (en) Common bus arbitrating mechanism
JP2539964B2 (en) Arbitration system
JPH10199236A (en) Dram controller
US5539916A (en) DMA control for continuing transfer to input/output device in a cycle steal mode
JPH10320349A (en) Processor and data transfer system using the processor
JPS6055916B2 (en) timing circuit
JP2837698B2 (en) Direct memory access controller
JP2005301739A (en) Memory controller and semiconductor device
JP2005107648A (en) Memory controller
JP4078667B2 (en) Memory control system
JP2533152B2 (en) Direct memory access status judgment circuit
JPH11191289A (en) Memory controller
JPH0132136Y2 (en)
JPH067519Y2 (en) Memory access controller
JPS61120396A (en) Microprocessor
SU1174926A1 (en) Multilevel interruption device
JPS60211559A (en) Common memory control system
JPH0528093A (en) Circuit for generating burst transfer end interrupt signal
JPH0497416A (en) Control system for receiving buffer
JPS6115262A (en) Buffer access control system
JP2002351816A (en) Data transfer method trough bus and bus master control device
JPH11306076A (en) Common memory control device
JPH0142010B2 (en)