JP2001135079A - Memory control device - Google Patents

Memory control device

Info

Publication number
JP2001135079A
JP2001135079A JP31364999A JP31364999A JP2001135079A JP 2001135079 A JP2001135079 A JP 2001135079A JP 31364999 A JP31364999 A JP 31364999A JP 31364999 A JP31364999 A JP 31364999A JP 2001135079 A JP2001135079 A JP 2001135079A
Authority
JP
Japan
Prior art keywords
burst length
access
burst
address
access request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP31364999A
Other languages
Japanese (ja)
Other versions
JP4108237B2 (en
Inventor
Masato Tokuyama
昌人 徳山
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP31364999A priority Critical patent/JP4108237B2/en
Publication of JP2001135079A publication Critical patent/JP2001135079A/en
Application granted granted Critical
Publication of JP4108237B2 publication Critical patent/JP4108237B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To decrease updating burst length as much as possible by optimizing the setting of burst length for the request of access of arbitrary burst length for a SRAM. SOLUTION: It is checked whether the change of a row address is performed or not during access processing of arbitrary burst length, when the change is already performed, processing is performed by dividing burst length before and after the change. Also, occurrence frequency of each burst length is obtained, burst length is automatically changed to the burst length of the maximum occurrence frequency.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、設定したバースト
長では高速なアクセスが可能なシンクロナスDRAMへ
のアクセスを制御するメモリ制御装置に関するものであ
り、任意のアドレスからの任意のワード数のアクセスを
可能にする制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory control device for controlling access to a synchronous DRAM capable of high-speed access with a set burst length, and to access of an arbitrary number of words from an arbitrary address. To a control device that enables

【0002】[0002]

【従来の技術】シンクロナスDRAMは高速動作が可能
であり、連続するアドレスをアクセスする場合は非常に
高速にアクセスが可能である。しかし、連続しないアド
レスまたは短いサイクルで連続するアドレスが途切れる
場合のアクセスは高速に行うことが困難である。従来は
連続しないアドレスのアクセスの場合バンクを切り変え
る事により高速化を図るなどの手法が取られている。バ
ースト長の違うアクセスなどもバースト長毎にアクセス
の順番を並べ替えるなどして、モードレジスタなどの設
定を減らし、高速化が図られている。しかしながら、そ
れらの方法は同一バンク内のアクセスが集中するような
処理には有効とはいえない。
2. Description of the Related Art Synchronous DRAMs can operate at high speed, and can access very consecutive addresses at a very high speed. However, it is difficult to perform high-speed access when discontinuous addresses or continuous addresses are interrupted in a short cycle. Conventionally, in the case of accessing non-consecutive addresses, a technique has been adopted in which banks are switched to increase the speed. For accesses with different burst lengths, the order of accesses is rearranged for each burst length to reduce the settings in the mode register and the like, thereby achieving higher speed. However, these methods are not effective for processing in which accesses within the same bank are concentrated.

【0003】特開平11−144073では、複数のバ
ンクの個数分の複数のシーケンサを持ち、各バンク毎に
バースト長とスタートアドレスの管理を行うことが述べ
られているが、同一バンクにおいてバースト長の異なる
アクセスが混在する場合には効果がない。特開平08−
055060、特開平08−179983、特開平08
−179984及び特開平08−202614の場合、
固定バースト長より少ないワード数のアクセスについて
述べられているが、アクセスを途中で禁止(中止)させ
るという方法であり、SDRAMのバーストストップ機
能を使うとしてもバースト長はフルページに限られ、ま
たバーストストップコマンド発行後に無駄なサイクルが
発生する。特開平11−224221では、転送バース
ト長を判断してデータ転送効率がよい命令(アクセス)
から実行するように順番を入れ替える制御を行うことが
述べられており転送効率は高くすることが出来るが、複
数の回路からの要求に対して、要求の優先順位が決めら
れている場合、効率の為に優先順位を覆すわけにはいか
ない。本発明では、同一バンク内にバースト長の異なる
アクセスがランダムに集中することを想定しており、そ
の場合でもアクセス能力の低下を軽減することが出来
る。
Japanese Patent Application Laid-Open No. H11-140773 describes that a plurality of sequencers are provided for a plurality of banks and the burst length and the start address are managed for each bank. There is no effect when different accesses are mixed. JP-A-08-
055060, JP 08-179983, JP 08
179994 and JP-A-08-202614,
Although the access of a word number smaller than the fixed burst length is described, the access is prohibited (stopped) in the middle. Even if the burst stop function of the SDRAM is used, the burst length is limited to a full page. Useless cycles occur after issuing the stop command. In JP-A-11-224221, an instruction (access) having a high data transfer efficiency by judging a transfer burst length is described.
The transfer efficiency can be increased by performing a control of changing the order so that execution is performed from the beginning.However, in the case where requests from a plurality of circuits are given priority in the request, the efficiency of the efficiency is increased. It cannot be overturned in priority. In the present invention, it is assumed that accesses having different burst lengths are randomly concentrated in the same bank, and even in such a case, a decrease in access capability can be reduced.

【0004】[0004]

【発明が解決しようとする課題】シンクロナスDRAM
は高速動作が可能であるが、先述のように連続しないア
ドレスまたは短いサイクルで連続するアドレスが途切れ
る場合のアクセスは高速に行うことが困難である。その
原因はいくつかあり、一つはその都度アクセスするロー
アドレスをアクティブにしなければいけない事、さらに
アクセスするバースト長が変化する場合にモードレジス
タによるバースト長の設定をしなければならない事が上
げられる。異なるバースト長のRAMへのアクセス要求
が混在する場合には、アクセスのバースト長が変わるた
びにモードレジスタを設定しなければならず、高速化の
妨げになっている。本発明は同一バンク内へのアクセス
が集中する場合を考え、モードレジスタによるバースト
長の変更を少なくすることにより、アクセスの高速化を
図ることを目的としている。
SUMMARY OF THE INVENTION Synchronous DRAM
Can operate at high speed, but it is difficult to perform high-speed access when discontinuous addresses or continuous addresses are interrupted in a short cycle as described above. There are several causes, one of which is that the row address to be accessed must be activated each time, and that if the burst length to be accessed changes, the burst length must be set by the mode register. . When access requests to RAMs having different burst lengths coexist, a mode register must be set every time the access burst length changes, which hinders speeding up. An object of the present invention is to increase the access speed by reducing the change in the burst length by the mode register in consideration of the case where accesses to the same bank are concentrated.

【0005】[0005]

【課題を解決するための手段】本発明に係るメモリ制御
装置は、シンクロナスDRAMに対する任意のバースト
長のアクセス要求を処理するメモリ制御装置であって、
上記任意のバースト長でのバーストアクセスを行うに際
してバーストアクセス中にローアドレスが変化するか否
かを予測する検出手段、該検出手段によってローアドレ
スの変化が予測されたときに、ローアドレスの変化の前
後でバーストアクセスを分割し、分割された各バースト
アクセスのバースト長を算定する算定手段、分割された
各バーストアクセスのバースト長の最大公約数に基いて
決まるバースト長をシンクロナスDRAMに設定するバ
ースト長設定手段、設定バースト長毎にスタートアドレ
スを生成する手段、とを備え、設定バースト長毎に発生
されるスタートアドレスに基いてリード・ライトコマン
ドを発して連続的にデータアクセスを行うものである。
According to the present invention, there is provided a memory control device for processing an access request of an arbitrary burst length to a synchronous DRAM.
Detecting means for predicting whether or not a row address changes during burst access when performing a burst access with an arbitrary burst length; detecting a change in row address when the detecting means predicts a change in row address; Calculating means for dividing the burst access before and after, calculating the burst length of each divided burst access, and setting the burst length determined based on the greatest common divisor of the burst length of each divided burst access in the synchronous DRAM Length setting means, means for generating a start address for each set burst length, and issuing a read / write command based on the start address generated for each set burst length to continuously access data. .

【0006】また、本発明に係るメモリ制御装置は、ア
クセス要求のあったバースト長をバースト長毎にカウン
トする複数のカウンタと、これら複数のカウンタの計数
値の最大を最高頻度バースト長とするバースト長カウン
ト比器手段と、タイマ手段とを更に備え、1回のアクセ
ス処理終了後タイマ手段に設定した所定の時間が経過す
るまで次のアクセス要求がなかったときに、上記最高頻
度バースト長にシンクロナスDRAMのバースト長を自
動更新するものである。
A memory control device according to the present invention includes a plurality of counters for counting a burst length for which an access request is made for each burst length, and a burst having a maximum count value of the plurality of counters as a maximum frequency burst length. The apparatus further comprises a long count comparator means and a timer means, and when there is no next access request until a predetermined time set in the timer means has elapsed after the end of one access process, the maximum frequency burst length is synchronized. The burst length of the eggplant DRAM is automatically updated.

【0007】また、上記検出手段は、アクセス要求のあ
ったアドレスのスタートアドレスのカラムアドレスの2
の補数とアクセス要求のあったバースト長とを比較し、
バースト長が上記カラムアドレスの2の補数より大きい
ときに、ローアドレスがバーストアクセス中に変化する
ことを予測するものである。
[0007] The detecting means may detect the start address of the address requested to be accessed by the column address of the column address.
And the burst length requested for access,
When the burst length is larger than the two's complement of the column address, the row address is predicted to change during the burst access.

【0008】さらに、シンクロナスDRAMに対する任
意のバースト長のアクセス要求を処理するメモリ制御装
置であって、アクセス要求のあったバースト長をバース
ト長毎にカウントする複数のカウンタと、これら複数の
カウンタの計数値の最大値を最高頻度バースト長とする
比較手段と、アクセス処理終了後にセットされ、所定の
時間を計時するタイマ手段と、上記所定の時間内に次の
アクセス要求がなかったときに、シンクロナスDRAM
に設定さえたバースト長を上記最高頻度バースト長に更
新する自動更新手段とを備えている。
A memory control device for processing an access request of an arbitrary burst length to a synchronous DRAM, comprising a plurality of counters for counting a burst length for which an access request has been made for each burst length; Comparing means for setting the maximum value of the count value to the maximum frequency burst length; timer means for setting a predetermined time after the access processing is completed; and synchronizing when there is no next access request within the predetermined time. Eggplant DRAM
Automatic updating means for updating the burst length set to the maximum frequency burst length.

【0009】[0009]

【発明の実施の形態】(実施の形態1)本実施の形態1
では、図1に示すように、シンクロナスDRAM2に対
して設けられるSDRAMコマンド生成回路4とアドレ
ス生成回路6の前段にRAMアクセス調停回路8を設け
る。このRAMアクセス調停回路8は、リフレッシュ制
御回路10のアクセス要求並びに複数のブロック(具体
的に図示せず)からのSDRAM2へのアクセス要求を
予め与えた優先度に従って調停するとともに、以下に詳
述するように、必要なバースト長の設定を行う。即ち、
複数のブロックからは種々のバースト長のアクセス要求
がランダムに発生され、RAMアクセス調停回路8は予
め定めた優先順位にしたがってアクセスする順番を生成
し、その順番にしたがってアクセス権を1つのブロック
に与える。RAMアクセス調停回路8は、アクセス権を
与えたブロックからのアクセス要求信号、アドレス信号
およびワード数(バースト長)を入力とし、SDRAM
コマンド生成回路4に対しては、アクセス要求信号、以
下に詳述する方法によって定めたバースト長および連続
するワード数を出力するとともに、アドレス生成回路6
に対してはアドレス、バースト長、連続ワード数を出力
する。
(Embodiment 1) Embodiment 1
In FIG. 1, a RAM access arbitration circuit 8 is provided at a stage preceding the SDRAM command generation circuit 4 and the address generation circuit 6 provided for the synchronous DRAM 2. The RAM access arbitration circuit 8 arbitrates an access request from the refresh control circuit 10 and an access request to the SDRAM 2 from a plurality of blocks (not specifically shown) in accordance with a given priority, and will be described in detail below. Thus, the necessary burst length is set. That is,
Access requests of various burst lengths are randomly generated from a plurality of blocks, and the RAM access arbitration circuit 8 generates an access order according to a predetermined priority, and gives an access right to one block according to the order. . The RAM access arbitration circuit 8 receives an access request signal, an address signal, and the number of words (burst length) from the block to which the access right has been given as inputs, and
An access request signal, a burst length determined by a method described in detail below, and the number of consecutive words are output to the command generation circuit 4, and the address generation circuit 6
, The address, the burst length, and the number of continuous words are output.

【0010】SDRAMコマンド生成回路4はRAS
(ローアドレス信号)信号、CAS(カラムアドレス信
号)信号、チップセレクト信号(CS)、ライトイネー
ブル信号(WES)およびデータマスク信号をSDRA
M2に対して出力する。アドレス生成回路6はRAMア
クセス調停回路8から出力されるアドレス信号、バース
ト長、連続ワード長を入力してSDRAM2に出力する
アドレス(バースト長を情報として含む)を生成する。
上記SDRAM2はアドレス生成回路6から入力される
アドレス情報に基いて内蔵するモードレジスタ(図示せ
ず)にバースト長を設定するとともに入力されるアドレ
スとSDRAMコマンド生成回路4から入力されるRA
S,CAS,CS,WE等のコマンドにしたがって、デ
ータバッファ12との間でデータの読み書きを行う。
[0010] The SDRAM command generation circuit 4 has a RAS
(Row address signal) signal, CAS (column address signal) signal, chip select signal (CS), write enable signal (WES) and data mask signal
Output to M2. The address generation circuit 6 receives an address signal, a burst length, and a continuous word length output from the RAM access arbitration circuit 8, and generates an address (including the burst length as information) to be output to the SDRAM 2.
The SDRAM 2 sets a burst length in a built-in mode register (not shown) based on the address information input from the address generation circuit 6, and inputs the input address and the RA input from the SDRAM command generation circuit 4.
Data is read from and written to the data buffer 12 according to commands such as S, CAS, CS, and WE.

【0011】なお、RAMアクセス調停回路8は、リフ
レッシュ制御回路10からのアクセス要求を受けると、
SDRAM2に対してリフレッシュ動作を行う。本願発
明にかかるRAMアクセス調停回路8は、これから処理
しようとするアクセス処理においてバーストアクセスの
途中でローアドレスが変化するか否かを判断してバース
ト長を設定する。
When the RAM access arbitration circuit 8 receives an access request from the refresh control circuit 10, the RAM access arbitration circuit 8
A refresh operation is performed on the SDRAM 2. The RAM access arbitration circuit 8 according to the present invention determines whether or not the row address changes during the burst access in the access processing to be processed, and sets the burst length.

【0012】図2は、上記バースト長の設定等を行うR
AMアクセス調停回路8が実行する制御プログラムのフ
ローチャートを示す。ステップS101において、アク
セス要求が入力されるとステップS103において他の
アクセス要求の有無をチェックし、他のアクセス要求が
ある場合には、ステップS105において、予め定めた
アクセス要求の優先順位に基いて、優先順位の高いアク
セス要求を選択する。ステップS107では、アクセス
権を与えたアクセス要求を受付け、スタートアドレスお
よびバースト長(ワード数)を読込む。受付けたアクセ
ス要求についてステップS109では、バーストアクセ
スの途中でローアドレスが変わるか否かを判断する。
FIG. 2 shows an example of R for setting the burst length.
4 shows a flowchart of a control program executed by the AM access arbitration circuit 8. In step S101, when an access request is input, the presence or absence of another access request is checked in step S103. If there is another access request, in step S105, based on the priority of the predetermined access request, Select an access request with a higher priority. In step S107, the access request given the access right is accepted, and the start address and the burst length (the number of words) are read. In step S109, it is determined whether or not the row address changes during the burst access for the received access request.

【0013】その判断方法は以下の通りである。 1.スタートカラムアドレスの2の補数を計算する。 2.この補数と入力バースト長とを比較する。 3.比較の結果、入力バースト長>補数であれば、バー
ストアクセスの途中でローアドレスが変化することを意
味するので、ローアドレスの変化の前後でアクセスを分
ける。 4.ローアドレスの変化前のアクセスにおいて連続する
ワード数は、前記カラムアドレスの2の補数から決めら
れ、変化後のアクセスにおける連続ワード数はバースト
長から変化前のアクセスにおける連続ワード数を差し引
いた値として求めることができる。 5.上記のように、バーストアクセスの途中でローアド
レスが変化する場合には、バースト長を“1”として設
定する。 6.バーストアクセス中にローアドレスの変化がない場
合、即ち、入力バースト長≦補数であれば、バースト長
の変更は行わない。
The determination method is as follows. 1. Calculate the two's complement of the start column address. 2. The complement and the input burst length are compared. 3. As a result of the comparison, if the input burst length> complement, it means that the row address changes in the middle of the burst access. Therefore, the access is divided before and after the change of the row address. 4. The number of consecutive words in the access before the change of the row address is determined from the two's complement of the column address, and the number of consecutive words in the access after the change is a value obtained by subtracting the number of continuous words in the access before the change from the burst length. You can ask. 5. As described above, when the row address changes during the burst access, the burst length is set to "1". 6. If there is no change in the row address during the burst access, that is, if the input burst length ≦ complement, the burst length is not changed.

【0014】次いで、ステップS111では、ステップ
S109で演算したバースト長および連続ワード長をS
DRAMコマンド生成回路4とアドレス生成回路6に出
力する。そして、SDRAMコマンド生成回路4は各種
のコマンドをSDRAM2に対して出力し、アドレス生
成回路6はアドレス情報(設定バースト長を含む)をS
DRAM2に出力する。
Next, in step S111, the burst length and the continuous word length calculated in step S109 are represented by S
Output to the DRAM command generation circuit 4 and the address generation circuit 6. Then, the SDRAM command generation circuit 4 outputs various commands to the SDRAM 2, and the address generation circuit 6 stores the address information (including the set burst length) in the SDRAM 2.
Output to DRAM2.

【0015】図3に上記アクセスについての動作タイミ
ングの一例を示す。この例において、データバスの幅は
16ビットとし、8ワード(入力バースト長)のアクセ
ス要求があった場合で、1ローアドレスが256ワード
のRAMをアクセスするものとする。いま、1ワード目
のローアドレスが1、カラムアドレスが251(FB
h)であったとすると、6ワード目のローアドレスは
2、カラムアドレスは0になる。即ち、バーストアクセ
スの途中でローアドレスが変化し、変化の前後でアクセ
スが連続ワード数5のアクセスと連続ワード数3のアク
セスの2つに分けられる。
FIG. 3 shows an example of the operation timing for the above access. In this example, it is assumed that the width of the data bus is 16 bits, and that an access request of 8 words (input burst length) is made, and one row address accesses a RAM of 256 words. Now, the row address of the first word is 1, and the column address is 251 (FB
If h), the row address of the sixth word is 2 and the column address is 0. That is, the row address changes in the middle of the burst access, and before and after the change, the access is divided into two accesses: a continuous word number 5 access and a continuous word number 3 access.

【0016】前述したように、RAMアクセス調停回路
8は、この場合、出力バースト長を“1”と連続ワード
数“5”、“3”をSDRAMコマンド生成回路4とア
ドレス生成回路6に出力する。SDRAMコマンド生成
回路6は、クロック信号にしたがって、ローアクティブ
の信号CSB,RASB,CASB,WEBを出力す
る。一方、SDRAM2は、入力されるアドレス情報中
に含まれるMRS(バースト長を表わす信号)にしたが
ってモードレジスタのバースト長を“1”とする(MO
DE BL=1)。
As described above, in this case, the RAM access arbitration circuit 8 outputs the output burst length "1", the number of continuous words "5", and "3" to the SDRAM command generation circuit 4 and the address generation circuit 6. . The SDRAM command generation circuit 6 outputs low active signals CSB, RASB, CASB, and WEB according to the clock signal. On the other hand, SDRAM 2 sets the burst length of the mode register to "1" in accordance with the MRS (signal representing the burst length) included in the input address information (MO
DE BL = 1).

【0017】ローアドレス(ROW)が入力されるタイ
ミングで、アクティブコマンドACTがSDRAM2内
で発生され、次いでリードコマンドが連続的に5回発生
されると、入力されるカラムアドレスFB−FFに従っ
て、連続的に5ワードのデータアクセスが実行される。
最後の(5回目の)リードコマンドはリードAコマンド
READA(Aはオートプリチャージを意味する)であ
る。この場合、バースト長は“1”に設定されており、
リードおよびライトコマンドは同一のローアドレスのも
と、バースト長1のアクセスを5回連続して行う。
At the timing when a row address (ROW) is input, an active command ACT is generated in the SDRAM 2 and then when a read command is continuously generated five times, a continuous command is generated according to the input column address FB-FF. A five-word data access is executed.
The last (fifth) read command is a read A command READA (A means auto precharge). In this case, the burst length is set to "1",
In the read and write commands, access with a burst length of 1 is performed five times consecutively under the same row address.

【0018】次に、ローアドレス(ROW+1)が変更
されると、再びアクティブコマンドACTが出力され、
リードAコマンドが発生されると、バースト長は1のま
ま計3回のデータアクセスが連続して行われ、結果とし
て8ワードのデータアクセスが終了する。
Next, when the row address (ROW + 1) is changed, the active command ACT is output again,
When the read A command is generated, data access is performed continuously three times in total while the burst length is 1, and as a result, data access of 8 words is completed.

【0019】以上のように、ローアドレスが変化する場
合に、バースト長の設定を変更せずにアクセスを連続し
て行えるのでバースト長の設定が任意のアクセスについ
て1回で済み、それだけ高速のアクセスが実現できる。
なお、上記実施例では、SDRAM2に設定するバース
ト長を最大のバースト長“1”に設定したが、ローアド
レスが変化する前後のバースト長が例えば“6”と
“2”であれば、設定するバースト長を“2”とするよ
うにしてもよい。換言すれば、前後のバースト長の最大
公約数を設定バースト長とすればよい。
As described above, when the row address changes, the access can be performed continuously without changing the burst length setting. Therefore, the burst length need only be set once for any access, and the high-speed access can be performed accordingly. Can be realized.
In the above embodiment, the burst length set in the SDRAM 2 is set to the maximum burst length “1”. However, if the burst length before and after the row address changes is, for example, “6” and “2”, the burst length is set. The burst length may be set to “2”. In other words, the greatest common divisor of the preceding and following burst lengths may be set as the set burst length.

【0020】(実施の形態2)本発明の実施の形態2に
かかる回路構成を図4に示す。図1の回路構成と比較す
ると明らかなように、実施の形態2では図1の回路構成
に加えてバースト長カウンタ・比較器14が設けられて
いる。このバースト長カウンタ・比較器14は、SDR
AM2のモードレジスタで設定可能な全てのバースト長
について、バースト長毎に別々のカウンタを持ち、アク
セス要求があるとそのバースト長を対応するカウンタで
カウントすることにより、バースト長毎のアクセス要求
回数をカウントする。比較器は、各バースト長毎にカウ
ントされた複数のカウント値を比較し、最もアクセス発
生頻度の高いバースト長を常時選び出している。
(Embodiment 2) FIG. 4 shows a circuit configuration according to Embodiment 2 of the present invention. As is clear from comparison with the circuit configuration of FIG. 1, in the second embodiment, a burst length counter / comparator 14 is provided in addition to the circuit configuration of FIG. This burst length counter / comparator 14
For all burst lengths that can be set in the mode register of AM2, a separate counter is provided for each burst length, and when there is an access request, the burst length is counted by the corresponding counter, so that the number of access requests for each burst length can be reduced. Count. The comparator compares a plurality of count values counted for each burst length, and constantly selects a burst length with the highest access frequency.

【0021】本実施の形態2の回路構成は、実施の形態
1の回路構成によって実行されるバースト長設定機能に
加えて、アクセス要求が所定時間なかった場合に、バー
スト長を最も発生頻度の高いバースト長に自動更新する
ようにしたものである。したがって、図4の回路構成
は、付加したバースト長カウンタ・比較器14以外は図
1の回路構成と基本的に同じであるので対応する構成要
素について同じ参照番号を付して重複した説明を省略す
る。
The circuit configuration of the second embodiment has a burst length setting function which is most frequently generated when there is no access request for a predetermined time, in addition to the burst length setting function executed by the circuit configuration of the first embodiment. It is automatically updated to the burst length. Therefore, the circuit configuration of FIG. 4 is basically the same as the circuit configuration of FIG. 1 except for the added burst length counter / comparator 14, and corresponding components are denoted by the same reference numerals, and redundant description is omitted. I do.

【0022】図5は、本実施の形態2で実行されるバー
スト長の自動更新ルーチンのフローチャートである。ス
テップS201において、1回のアクセス要求処理が終
了すると、ステップS203において、予め所定の時間
が設定されたタイマをセットする。次に、ステップS2
05において、新たなアクセス要求の有無をチェックす
る。新たなアクセス要求がタイマ時間内にあった場合、
そのアクセス要求の処理を行う。
FIG. 5 is a flowchart of a burst length automatic update routine executed in the second embodiment. When one access request process is completed in step S201, a timer in which a predetermined time is set in advance is set in step S203. Next, step S2
At 05, the presence or absence of a new access request is checked. If there is a new access request within the timer time,
The access request is processed.

【0023】一方、タイマがタイムアップするまでアク
セス要求がなかった場合(ステップS207)、SDR
AMコマンド生成回路4の要求(RAS,CAS,C
S,WE等のコマンドの組合せ)に従って、バースト長
カウンタ・比較器14は、その時点で最も発生頻度の高
いバースト長をSDRAMコマンド生成回路4に出力
し、SDRAMコマンド生成回路4はアドレス生成回路
6にそのバースト長を指示する。アドレス発生回路6
は、指示されたバースト長をSDRAM2に出力し、S
DRAM2は内部のモードレジスタにその値を設定す
る。
On the other hand, if there is no access request until the timer expires (step S207), the SDR
The request of the AM command generation circuit 4 (RAS, CAS, C
In accordance with the combination of commands such as S and WE, the burst length counter / comparator 14 outputs the most frequently occurring burst length to the SDRAM command generation circuit 4 at that time, and the SDRAM command generation circuit 4 outputs the address generation circuit 6 To indicate the burst length. Address generation circuit 6
Outputs the instructed burst length to SDRAM2,
The DRAM 2 sets the value in an internal mode register.

【0024】図6に実際の動作タイミングの一例を示
す。この例では、最も発生頻度の高いバースト長が
“4”であるとし、最初にバースト長“2”のアクセス
を行うものとする。図6に示すように、最初のバースト
長“2”のアクセス要求が受け付けられると、コマンド
CSB,RASB,CASBおよびWEBが一斉にロー
になり、そのタイミングでアドレス生成回路6は、SD
RAM2にバースト長が“2”であることを示す信号
(MRS)を出力し、モードレジスタを“2”に設定す
る(MODE BL=2)。次にローアドレス(RO
W)のアクティブコマンド(ACT)が発行されると、
次のタイミングでカラムアドレスのリードA(READ
A)コマンドが発行され、2つのデータをアクセスす
る。
FIG. 6 shows an example of actual operation timing. In this example, it is assumed that the most frequently occurring burst length is "4", and an access with a burst length of "2" is performed first. As shown in FIG. 6, when an access request of the first burst length “2” is accepted, the commands CSB, RASB, CASB and WEB go low at the same time, and at that timing, the address generation circuit 6
A signal (MRS) indicating that the burst length is "2" is output to the RAM 2, and the mode register is set to "2" (MODE BL = 2). Next, the row address (RO
When the active command (ACT) of W) is issued,
At the next timing, column address read A (READ)
A) A command is issued to access two data.

【0025】アクセス要求処理が終了した後、セットし
たタイマがタイムアップするまで、後のアクセス要求が
なかった場合、SDRAMコマンドCSB,RASB,
CASB,WEBが一斉にローとなり、この時点でアド
レス生成回路6から出力されるバースト長WRS(本例
では、最大発生頻度のバースト長は“4”)に対応して
モードレジスタの値を“4”にセットしてバースト長を
“4”とする。
After the access request processing is completed, until the set timer times out, if there is no subsequent access request, the SDRAM commands CSB, RASB,
CASB and WEB go low at the same time, and at this time, the value of the mode register is set to “4” corresponding to the burst length WRS (in this example, the burst length of the maximum occurrence frequency is “4”) output from the address generation circuit 6. "To set the burst length to" 4 ".

【0026】次に、アクセス要求があり、かつそのアク
セス要求のバースト長が“4”であるとすると、この時
点でバースト長は“4”に自動更新されているので、バ
ースト長を設定し直す必要はなく、したがってローアド
レス(ROW)のアクティブコマンド(ACT)を発行
し、次いでカラムアドレスに対するリードA(READ
A)コマンドを発行して、4ワードのデータのアクセス
を実行する。
Next, if there is an access request and the burst length of the access request is "4", the burst length is automatically updated to "4" at this point, so the burst length is reset. There is no need to issue a row address (ROW) active command (ACT), and then read A (READ) for the column address.
A) A command is issued to execute 4-word data access.

【0027】以上のように、アクセス要求が一定期間な
い場合には、バースト長を発生頻度の最も高いバースト
長に自動更新しておき、次のアクセス要求のバースト長
が更新されたバースト長に一致していれば、バースト長
を更新することなく直ちにデータのアクセスが行える。
なお、実施の形態2では、実施の形態1の機能にさらに
バースト長の自動更新機能を付加したが、この自動更新
機能は単独で実施しても十分有効である。
As described above, when there is no access request for a fixed period, the burst length is automatically updated to the burst length having the highest frequency of occurrence, and the burst length of the next access request is reduced to the updated burst length. If they do, the data can be accessed immediately without updating the burst length.
In the second embodiment, an automatic update function of the burst length is further added to the function of the first embodiment. However, this automatic update function is sufficiently effective even if implemented alone.

【0028】[0028]

【発明の作用・効果】請求項1のメモリ制御装置におい
ては、任意のアドレスからの任意のバースト長のアクセ
ス要求を処理するに際して、バーストアクセス中にロー
アドレスが変化する場合でも、1回のバースト長の設定
でアクセス要求を処理することができ、アクセスに必要
なサイクル数を低減することができる。請求項2のメモ
リ制御装置においては、ある時間以上アクセス要求がな
かった場合に最高頻度バースト長に自動更新するので、
次のアクセス要求のバースト長が最高頻度バースト長に
一致する確率が高く、その場合には直ちにアクセス要求
処理を実行でき、処理の高速化が図ることができる。請
求項3のメモリ制御装置では、バーストアクセス中にロ
ーアドレスが変化するか否かを簡単な演算によって求め
ることができる。請求項4のメモリ制御装置では、ある
時間以上次のアクセス要求がなかったときには、最高頻
度のバースト長に自動更新するようにしたので、次のア
クセス要求のバースト長と一致する確率が高くなり、一
致している場合には、バースト長を更新することなく直
ちにアクセス要求を処理することができ、それだけ高速
化を図ることができる。
According to the memory control device of the present invention, when processing an access request of an arbitrary burst length from an arbitrary address, even if the row address changes during the burst access, one burst operation is performed. An access request can be processed by setting the length, and the number of cycles required for access can be reduced. In the memory control device according to the second aspect, when there is no access request for a certain period of time, the data is automatically updated to the maximum frequency burst length.
The probability that the burst length of the next access request matches the maximum frequency burst length is high. In that case, the access request processing can be executed immediately, and the processing can be speeded up. According to the memory control device of the third aspect, it is possible to determine whether or not the row address changes during the burst access by a simple calculation. According to the memory control device of the fourth aspect, when there is no next access request for a certain time or more, the burst length is automatically updated to the burst frequency of the highest frequency, so that the probability of coincidence with the burst length of the next access request increases. If they match, the access request can be processed immediately without updating the burst length, and the speed can be increased accordingly.

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

【図1】 本発明の実施の形態1にかかるメモリ制御装
置のブロック回路図。
FIG. 1 is a block circuit diagram of a memory control device according to a first embodiment of the present invention.

【図2】 図1のメモリ制御装置が実行する制御プログ
ラムのフローチャート図。
FIG. 2 is a flowchart of a control program executed by the memory control device of FIG. 1;

【図3】 図1のメモリ制御装置におけるバーストアク
セス処理のタイミングチャート図。
FIG. 3 is a timing chart of a burst access process in the memory control device of FIG. 1;

【図4】 本発明の実施の形態2にかかるメモリ制御装
置のブロック回路図。
FIG. 4 is a block circuit diagram of a memory control device according to a second embodiment of the present invention;

【図5】 図4のメモリ制御装置が実行する制御プログ
ラムのフローチャート図。
FIG. 5 is a flowchart of a control program executed by the memory control device of FIG. 4;

【図6】 図4のメモリ制御装置におけるバーストアク
セス処理のタイミングチャート図。
FIG. 6 is a timing chart of a burst access process in the memory control device of FIG. 4;

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

2 SDRAM 4 SDRAMコマンド 6 アドレス生成回路 8 RAMアクセス調停回路 10 リフレッシュ制御回路 12 データバッファ 14 バースト長カウンタ・比較器 2 SDRAM 4 SDRAM command 6 Address generation circuit 8 RAM access arbitration circuit 10 Refresh control circuit 12 Data buffer 14 Burst length counter / comparator

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 シンクロナスDRAMに対する任意のバ
ースト長のアクセス要求を処理するメモリ制御装置であ
って、 上記任意のバースト長でのバーストアクセスを行うに際
してバーストアクセス中にローアドレスが変化するか否
かを予測する検出手段、 該検出手段によってローアドレスの変化が予測されたと
きに、ローアドレスの変化の前後でバーストアクセスを
分割し、分割された各バーストアクセスのバースト長を
算定する算定手段、 分割された各バーストアクセスのバースト長の最大公約
数に基いて決まるバースト長をシンクロナスDRAMに
設定するバースト長設定手段、 設定バースト長毎にスタートアドレスを生成する手段、
とを備え、 設定バースト長毎に発生されるスタートアドレスに基い
てリード・ライトコマンドを発して連続的にデータアク
セスを行うようにしたメモリ制御装置。
1. A memory control device for processing an access request of an arbitrary burst length to a synchronous DRAM, wherein whether a row address changes during a burst access when performing a burst access with the arbitrary burst length. Detecting means for predicting a change in row address, dividing the burst access before and after the change in row address, and calculating the burst length of each of the divided burst accesses; Burst length setting means for setting a burst length determined based on the greatest common divisor of the burst length of each burst access set in the synchronous DRAM, means for generating a start address for each set burst length,
A memory control device for continuously accessing data by issuing a read / write command based on a start address generated for each set burst length.
【請求項2】 アクセス要求のあったバースト長をバー
スト長毎にカウントする複数のカウンタと、これら複数
のカウンタの計数値の最大を最高頻度バースト長とする
バースト長カウント比較手段と、タイマ手段とを更に備
え、 1回のアクセス処理終了後タイマ手段に設定した所定の
時間が経過するまで次のアクセス要求がなかったとき
に、上記最高頻度バースト長にシンクロナスDRAMの
バースト長を自動更新するようにした、請求項1のメモ
リ制御装置。
2. A plurality of counters for counting a burst length for which an access request has been made for each burst length, a burst length count comparing means for setting the maximum count value of the plurality of counters to a maximum frequency burst length, and a timer means. When there is no next access request until a predetermined time set in the timer means has elapsed after one access processing, the burst length of the synchronous DRAM is automatically updated to the maximum frequency burst length. 2. The memory control device according to claim 1, wherein:
【請求項3】 上記検出手段は、アクセス要求のあった
アドレスのスタートアドレスのカラムアドレスの2の補
数とアクセス要求のあったバースト長とを比較し、バー
スト長が上記カラムアドレスの2の補数より大きいとき
に、ローアドレスがバーストアクセス中に変化すること
を予測する、請求項1又は2に記載のメモリ制御装置。
3. The detecting means compares the two's complement of the column address of the start address of the address requested for access with the burst length of the requested access, and determines that the burst length is greater than the two's complement of the column address. 3. The memory control device according to claim 1, wherein when large, the row address is predicted to change during burst access.
【請求項4】 シンクロナスDRAMに対する任意のバ
ースト長のアクセス要求を処理するメモリ制御装置であ
って、 アクセス要求のあったバースト長をバースト長毎にカウ
ントする複数のカウンタと、 これら複数のカウンタの計数値の最大値を最高頻度バー
スト長とする比較手段と、 アクセス処理終了後にセットされ、所定の時間を計時す
るタイマ手段と、 上記所定の時間内に次のアクセス要求がなかったとき
に、シンクロナスDRAMに設定さえたバースト長を上
記最高頻度バースト長に更新する自動更新手段と、を備
えたメモリ制御装置。
4. A memory control device for processing an access request of an arbitrary burst length to a synchronous DRAM, comprising: a plurality of counters for counting a burst length for which an access request has been made for each burst length; Comparing means for setting the maximum value of the count value to the maximum frequency burst length; timer means for setting a predetermined time after the access processing is completed; and synchronizing when there is no next access request within the predetermined time. A memory control device comprising: automatic updating means for updating the burst length set in the eggplant DRAM to the maximum frequency burst length.
JP31364999A 1999-11-04 1999-11-04 Memory control device Expired - Fee Related JP4108237B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31364999A JP4108237B2 (en) 1999-11-04 1999-11-04 Memory control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31364999A JP4108237B2 (en) 1999-11-04 1999-11-04 Memory control device

Publications (2)

Publication Number Publication Date
JP2001135079A true JP2001135079A (en) 2001-05-18
JP4108237B2 JP4108237B2 (en) 2008-06-25

Family

ID=18043859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31364999A Expired - Fee Related JP4108237B2 (en) 1999-11-04 1999-11-04 Memory control device

Country Status (1)

Country Link
JP (1) JP4108237B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007157029A (en) * 2005-12-08 2007-06-21 Nec Electronics Corp Memory control circuit, and memory control method
JP2008112485A (en) * 2006-10-30 2008-05-15 Hitachi Ltd Synchronous memory circuit
WO2008136332A1 (en) 2007-04-26 2008-11-13 Nec Corporation Memory access control device
US7518963B2 (en) 2004-06-09 2009-04-14 Ricoh Company, Ltd Phase difference detection circuit and optical disk device
JP2009205601A (en) * 2008-02-29 2009-09-10 Yokogawa Electric Corp Memory access control device
WO2023189358A1 (en) * 2022-03-31 2023-10-05 ソニーセミコンダクタソリューションズ株式会社 Memory control device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7518963B2 (en) 2004-06-09 2009-04-14 Ricoh Company, Ltd Phase difference detection circuit and optical disk device
JP2007157029A (en) * 2005-12-08 2007-06-21 Nec Electronics Corp Memory control circuit, and memory control method
JP2008112485A (en) * 2006-10-30 2008-05-15 Hitachi Ltd Synchronous memory circuit
WO2008136332A1 (en) 2007-04-26 2008-11-13 Nec Corporation Memory access control device
JP2009205601A (en) * 2008-02-29 2009-09-10 Yokogawa Electric Corp Memory access control device
WO2023189358A1 (en) * 2022-03-31 2023-10-05 ソニーセミコンダクタソリューションズ株式会社 Memory control device

Also Published As

Publication number Publication date
JP4108237B2 (en) 2008-06-25

Similar Documents

Publication Publication Date Title
JP4786209B2 (en) Memory access device
KR100610730B1 (en) Method and apparatus for memory access scheduling to reduce memory access latency
EP1560123B1 (en) Information processing apparatus and method of accessing memory
JP2000251467A (en) Memory refresh controller and control method therefor
JPH04141886A (en) Micro computer
JP4370063B2 (en) Semiconductor memory device control device and semiconductor memory device control method
JP4108237B2 (en) Memory control device
JP4250989B2 (en) Memory access control device
US7536519B2 (en) Memory access control apparatus and method for accomodating effects of signal delays caused by load
KR101022473B1 (en) Memory bank interleaving method and apparatus in the multi-layer bus system
US6948046B2 (en) Access controller that efficiently accesses synchronous semiconductor memory device
JP4054598B2 (en) Memory control circuit, DMA request block, and memory access system
JPH02232890A (en) Main memory controller
JP3190856B2 (en) Memory command control circuit
JP3169878B2 (en) Memory control circuit
JP2007323113A (en) Memory control circuit
JPS62259295A (en) Refresh control system
JPH103785A (en) Refresh method of memory and memory controller for it
JPH04263191A (en) Semiconductor memory device
JP2002269980A (en) Memory control device and memory control method
JPH03132852A (en) Bus asynchronous control system
JP2570271B2 (en) Semiconductor memory controller
JPH1011356A (en) Memory access system
JPH09297990A (en) Memory refresh control method and memory refresh controller
JPH0745073A (en) Method for refreshing dram

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070803

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080325

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080402

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

Free format text: PAYMENT UNTIL: 20110411

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120411

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130411

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140411

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees