JPH0250498B2 - - Google Patents

Info

Publication number
JPH0250498B2
JPH0250498B2 JP56119700A JP11970081A JPH0250498B2 JP H0250498 B2 JPH0250498 B2 JP H0250498B2 JP 56119700 A JP56119700 A JP 56119700A JP 11970081 A JP11970081 A JP 11970081A JP H0250498 B2 JPH0250498 B2 JP H0250498B2
Authority
JP
Japan
Prior art keywords
address
data
cache memory
memory
address 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.)
Expired - Lifetime
Application number
JP56119700A
Other languages
Japanese (ja)
Other versions
JPS5819785A (en
Inventor
Masaaki Kobayashi
Shigeru Hashimoto
Takumi Kishino
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP56119700A priority Critical patent/JPS5819785A/en
Publication of JPS5819785A publication Critical patent/JPS5819785A/en
Publication of JPH0250498B2 publication Critical patent/JPH0250498B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明はプロセサ等におけるメモリへのアクセ
スを制御するメモリアクセス制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a memory access control method for controlling access to memory in a processor or the like.

キヤシユメモリが設けられた処理装置において
は、主記憶の一部の情報は前記キヤシユメモリに
蓄えられている。このキヤシユメモリには高速の
集積回路(IC)が用いられるので、処理速度が
著しく向上する。一般にキヤシユメモリのアクセ
ス時間は、主記憶のアクセス時間より2倍以上速
い。このため主記憶の1サイクルタイム内に、キ
ヤシユメモリへは少くも2回アクセスが可能であ
る。従つてキヤシユメモリ制御部は、処理装置か
ら第1のアドレスデータA1を受けて制御を行つ
たのち、直ちにキヤシユメモリのアドレスカウン
タを歩進させ、その値をA1+1としておく。次
に処理装置から第2のアドレスデータA2を受け
た際、このA2と前記アドレスカウンタの値(A1
+1)との比較、判別を行い、もしA2=(A1
1)であれば、キヤシユメモリから直ちにデータ
の読出しが可能となる。すなわちメモリアクセス
の先行制御を行うことができる。
In a processing device equipped with a cache memory, part of the information in the main memory is stored in the cache memory. Since this cache memory uses a high-speed integrated circuit (IC), processing speed is significantly improved. Generally, the access time for cache memory is more than twice as fast as the access time for main memory. Therefore, the cache memory can be accessed at least twice within one cycle time of the main memory. Therefore, after receiving the first address data A 1 from the processing device and performing control, the cache memory control section immediately increments the address counter of the cache memory and sets the value to A 1 +1. Next, when second address data A 2 is received from the processing device, this A 2 and the value of the address counter (A 1
+1), and if A 2 = (A 1 +
1), data can be read immediately from the cache memory. That is, advance control of memory access can be performed.

本発明は上記の点に着目したものであり、キヤ
シユメモリへのアクセスを高速化すると共に、キ
ヤシユメモリに所要データが無い場合の主記憶か
らのデータ取り出しを遅延させることなく主記憶
への不必要なアクセス要求の発生を減少すること
のできるメモリアクセス制御方式の提供を目的と
する。
The present invention focuses on the above-mentioned points, and it speeds up access to the cache memory and eliminates unnecessary access to the main memory without delaying data retrieval from the main memory when the cache memory does not contain the required data. The purpose of the present invention is to provide a memory access control method that can reduce the occurrence of requests.

本発明は、主記憶装置から読み出したデータ
と、該データのアドレス情報を保持するキヤシユ
メモリと、該主記憶装置のアクセス先のアドレス
を保持するアドレスカウンタと、該アドレスカウ
ンタに設定するアドレスを発生する処理装置とを
有し、該キヤシユメモリから該アドレスカウンタ
に保持するアドレスによつて定まる領域を読み出
し、該領域の該アドレス情報によつて識別して、
該アドレスのデータが保持されている場合にヒツ
ト信号を出力する制御手段と、該アドレスカウン
タに設定されているアドレスと該処理装置から発
生されるアドレスとを比較する比較手段と、該ア
ドレスカウンタに保持するアドレスを歩進させる
歩進手段とを設け、該アドレスカウンタに設定し
たアドレスを該歩進手段によつて1だけ歩進さ
せ、該歩進させたアドレスによつて該制御手段を
動作させて、該ヒツト信号が出力された場合に
は、該比較手段によつて一致が検出されることを
条件として、前記制御手段によつて該キヤシユメ
モリから読み出してあるデータを該処理装置に転
送することを特徴とするメモリ制御方式である。
The present invention generates data read from a main memory, a cache memory that holds address information of the data, an address counter that holds an address to access the main memory, and an address to be set in the address counter. a processing device, reads an area determined by the address held in the address counter from the cache memory, identifies the area based on the address information of the area,
a control means for outputting a hit signal when data at the address is held; a comparison means for comparing the address set in the address counter with the address generated from the processing device; an increment means for incrementing the held address, the increment means increments the address set in the address counter by 1, and the control means is operated by the incremented address. and when the hit signal is output, the control means transfers the data read from the cache memory to the processing device on the condition that a match is detected by the comparison means. This is a memory control method characterized by:

以下、本発明を図面によつて説明する。第1図
は本発明の一実施例を説明するブロツク図、第2
図は本発明の一実施例を説明するフローチヤート
であり、1はアドレスカウンタ、2は加算メモ
リ、3はキヤシユメモリ、4,5は比較部、6は
処理装置、7,13はOR回路、8,9,12は
AND回路、10はセツトパルス発生部、11は
アドレス発生部、14は読取指令発生部、15は
レジスタ部、16は処理部、17は判別部、18
は主記憶装置、Aはアドレスデータ、Bは出力信
号、Cは読取指令、E,Fは不一致信号、Gは加
算済み信号、H1,H2はヒツト信号、Sはセツト
信号、aはアドレス部、a1は上位アドレス、
a1′はアドレスデータ、a2は下位アドレス、dは
データ部である。第1図における加算メモリ2
は、アドレスカウンタが加算(+1)されたこと
を記憶するメモリであり、加算済み信号Gは、そ
の加算済み状態を示す信号である。またキヤシユ
メモリ3はアドレス部aとデータ部dとで構成さ
れ、アドレス部aには、アドレスデータAの上位
バイトが格納されている。第1図において、最初
(第1の時点)に、アドレスカウンタ内の下位ア
ドレスa2によりキヤシユメモリ3にアクセスし、
アドレス部aからアドレスデータa1′を読出し、
このa1′と前記アドレスカウンタの上位アドレス
a1との比較を、比較部5で行う。上述のようにア
ドレスa1はアドレスデータAの上位バイトである
ので、a1とa1′の両者が一致した場合には比較部
55からヒツト信号H1を発する。このヒツト信
号H1は、キヤシユメモリ3のアドレスa2のデー
タ部dより、データd1を読出し、これを処理装置
6へ転送する。データd1はAND回路9、OR回路
13を経てレジスタ部15にセツトされる。次に
判別部17はヒツト信号H1と、加算済み信号G
とを判別する。すなわち比較部5からヒツト信号
H1が出力され、しかもアドレスカウンタ1が加
算(+1)済みであれば、判別部17から出力信
号Bを出力する。この出力信号Bにより、比較部
4において、アドレスカウンタ1のアドレスa1
びa2と、このアドレスカウンタ1に次にセツトさ
れるアドレスデータAとの比較を行う。この両者
が一致したとき、ヒツト信号H2が発せられ、こ
のためキヤシユメモリ内のデータd1が取出され
て、処理装置6へ転送される。データd1はAND
回路8、OR回路13を経て、レジスタ部15に
セツトされる。換言すれば、処理装置6からのア
ドレスデータAをアドレスカウンタ1にセツトし
て、キヤシユメモリ3からデータを読出したの
ち、該アドレスカウンタ1を歩進(プラス1)し
ておく。次に処理装置6から発せられるアドレス
データA2とアドレスデータA1とが一致したので
あるから、直ちにキヤシユメモリ3からデータの
読出しを行うものである。
Hereinafter, the present invention will be explained with reference to the drawings. FIG. 1 is a block diagram explaining one embodiment of the present invention, and FIG.
The figure is a flowchart for explaining one embodiment of the present invention, in which 1 is an address counter, 2 is an addition memory, 3 is a cache memory, 4 and 5 are comparison sections, 6 is a processing device, 7 and 13 are OR circuits, and 8 ,9,12 are
AND circuit, 10 is a set pulse generation section, 11 is an address generation section, 14 is a read command generation section, 15 is a register section, 16 is a processing section, 17 is a discrimination section, 18
is the main memory, A is the address data, B is the output signal, C is the read command, E and F are the mismatch signals, G is the added signal, H 1 and H 2 are the hit signals, S is the set signal, and a is the address part, a 1 is the upper address,
a 1 ' is address data, a 2 is a lower address, and d is a data portion. Addition memory 2 in Figure 1
is a memory that stores the fact that the address counter has been added (+1), and the added signal G is a signal that indicates the added state. Further, the cash memory 3 is composed of an address section a and a data section d, and the upper byte of address data A is stored in the address section a. In FIG. 1, first (first time point), the cache memory 3 is accessed by the lower address a2 in the address counter,
Read address data a 1 ' from address part a,
This a 1 ′ and the upper address of the address counter
Comparison with a 1 is performed in comparison section 5. As mentioned above, since the address a 1 is the upper byte of the address data A, if both a 1 and a 1 ' match, the comparing section 55 generates the hit signal H 1 . This hit signal H 1 reads data d 1 from the data section d of address a 2 of the cache memory 3 and transfers it to the processing device 6 . The data d1 is set in the register section 15 via the AND circuit 9 and the OR circuit 13. Next, the determination unit 17 selects the hit signal H1 and the added signal G.
Distinguish between. In other words, the hit signal from the comparator 5
If H 1 is output and the address counter 1 has been incremented (+1), the determination unit 17 outputs an output signal B. Using this output signal B, the comparator 4 compares the addresses a 1 and a 2 of the address counter 1 with the address data A to be set next in the address counter 1 . When the two match, a hit signal H 2 is generated, and therefore the data d 1 in the cache memory is taken out and transferred to the processing device 6. data d 1 is AND
The signal is set in the register section 15 via the circuit 8 and the OR circuit 13. In other words, address data A from the processing device 6 is set in the address counter 1, the data is read from the cache memory 3, and then the address counter 1 is incremented (plus 1). Next, since the address data A 2 issued from the processing device 6 and the address data A 1 match, the data is immediately read from the cache memory 3.

比較部5において、不一致信号Eが発せられた
場合には、この不一致信号EはOR回路7を経て
セツトパルス発生部をトリガーする。発生された
セツトパルスSはアドレスカウンタ1に達し、処
理装置6からのアドレスデータAをセツトする。
一方、不一致信号は処理装置6へ送られ、読取指
令部14を起動する。このため読取指令Cが発せ
られ、主記憶装置18のデータd2はAND回路1
2、OR回路13を経て、レジスタ部15にセツ
トされる。
When the comparison section 5 generates a mismatch signal E, the mismatch signal E passes through the OR circuit 7 and triggers the set pulse generation section. The generated set pulse S reaches the address counter 1 and sets the address data A from the processing device 6.
On the other hand, the mismatch signal is sent to the processing device 6 and activates the reading command section 14. Therefore, a read command C is issued, and data d 2 of the main memory device 18 is sent to the AND circuit 1.
2. The signal is set in the register section 15 via the OR circuit 13.

比較部4において、不一致信号Fが発せられた
場合、この信号はOR回路7を経てセツトパルス
発生部をトリガーするので、発生されたセツトパ
ルスSはアドレスカウンタ1に達し、アドレスデ
ータAをセツトする。一方、不一致信号Fは比較
部5に達して上位アドレスa1とアドレスデータ
a1′との比較を行う。この比較動作は既述と同じ
である。第2図は以上に説明した動作順序を示す
フローチヤートである。
When a mismatch signal F is generated in the comparison section 4, this signal passes through the OR circuit 7 and triggers the set pulse generation section, so that the generated set pulse S reaches the address counter 1 and sets the address data A. On the other hand, the mismatch signal F reaches the comparator 5 and the upper address a1 and address data
Compare with a 1 ′. This comparison operation is the same as described above. FIG. 2 is a flowchart showing the sequence of operations explained above.

即ち、前記のようにアドレスカウンタ1のアド
レスを+1してキヤシユメモリ3を読み出した結
果について、比較部5から比較結果が出力されて
いるものとして、第2図に示す制御のステツプ2
0で比較部5の出力がヒツト信号H1か不一致信
号Eかにより分岐し、ヒツトであればステツプ2
1でキヤシユメモリ3のみのアクセスをし、ステ
ツプ22で比較部4によるアドレス比較の結果が
一致であれば、ステツプ23でキヤシユメモリの
データを処理装置6に転送し、ステツプ24で次
のアドレスについてキヤシユメモリにアクセスす
るためにアドレスカウンタ1を歩進させておく。
That is, regarding the result of reading out the cache memory 3 by incrementing the address of the address counter 1 by 1 as described above, it is assumed that the comparison result is outputted from the comparing section 5, and step 2 of the control shown in FIG.
0, the output of the comparator 5 branches depending on whether it is a hit signal H1 or a mismatch signal E, and if it is a hit, the process goes to step 2.
In step 1, only the cache memory 3 is accessed, and in step 22, if the results of the address comparison by the comparison unit 4 match, the data in the cache memory is transferred to the processing device 6 in step 23, and in step 24, the data in the cache memory is transferred to the cache memory for the next address. Address counter 1 is incremented for access.

ステツプ22で比較部4の出力が不一致信号の
場合は、キヤシユメモリにあつたデータは別のア
ドレスのデータであるので、ステツプ25で処理
装置6で発生したアドレスをアドレスカウンタ1
にセツトし、ステツプ26で主記憶にアクセス開
始し、ステツプ27で主記憶から読み出したデー
タを受け取りステツプ24に進む。
If the output of the comparator 4 is a mismatch signal in step 22, the data in the cache memory is data at a different address, so in step 25 the address generated by the processor 6 is transferred to the address counter 1.
In step 26, access to the main memory is started, and in step 27, the data read from the main memory is received, and the process proceeds to step 24.

又最初のステツプ20で比較部5の出力が不一
致だつた場合は、ステツプ28に進んで処理装置
6で発生したアドレスをアドレスカウンタ1にセ
ツトし、ステツプ29で主記憶とキヤシユメモリ
の両方にアクセス開始し、その結果比較部5でヒ
ツト信号が出力された場合は、ステツプ30から
ステツプ23に進んで前記のようにキヤシユメモ
リのデータを使用する。又、比較部5で不一致信
号が出た場合には、ステツプ27に進んで前記の
ように主記憶からのデータを受け取る。
If the outputs of the comparator 5 do not match in the first step 20, the process proceeds to step 28, where the address generated by the processing device 6 is set in the address counter 1, and in step 29, access to both the main memory and the cache memory is started. However, if the comparison section 5 outputs a hit signal, the process proceeds from step 30 to step 23, where the data in the cache memory is used as described above. If the comparator 5 outputs a non-coincidence signal, the process proceeds to step 27 to receive data from the main memory as described above.

以上のように本発明は、連続するアドレスのア
クセスでそのデータがキヤシユメモリにある場合
には、ステツプ20〜23によつて所要のデータ
を高速に取得することができ、この場合に主記憶
へのアクセス要求は出ない。その他の場合には主
記憶へのアクセス要求を出す必要があるが、ステ
ツプ20の判定、又はステツプ20とステツプ2
2の判定で即時に主記憶アクセスの必要なことを
決定できるので、主記憶アクセス開始の遅延は僅
少であり、従つて、処理装置からのキヤシユメモ
リへのアクセス時間を短縮すると共に、主記憶装
置に対するアクセス要求の輻輳を緩和してシステ
ムの処理効率を著しく向上することができる。
As described above, in the present invention, if the data is in the cache memory by accessing consecutive addresses, the required data can be obtained at high speed through steps 20 to 23, and in this case, the data is accessed from the main memory. No access request is issued. In other cases, it is necessary to issue a request to access the main memory, but it is necessary to issue a request to access the main memory.
Since the need for main memory access can be immediately determined by the judgment in step 2, the delay in starting main memory access is minimal. Therefore, the time required for accessing the cache memory from the processing unit is shortened, and the main memory access time is reduced. The congestion of access requests can be alleviated and the processing efficiency of the system can be significantly improved.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例を説明するブロツク
図、第2図は本発明の一実施例を説明するフロー
チヤートであり、図中に用いた符号は次の通であ
る。 1はアドレスカウンタ、2は加算メモリ、3は
キヤシユメモリ、4,5は比較部、6は処理装
置、7,13はOR回路、8,9,12はAND回
路、10はセツトパルス発生部、11はアドレス
発生部、14は読取指令発生部、15はレジスタ
部、16は処理部、17は判別部、18は主記憶
装置、Aはアドレスデータ、Bは出力信号、Cは
読取指令、E,Fは不一致信号、Gは加算済み信
号、H1,H2はヒツト信号、Sはセツト信号、a
はアドレス部、a1は上位アドレス、a1′はアドレ
スデータ、a2は下位アドレス、dはデータ部を示
す。
FIG. 1 is a block diagram for explaining one embodiment of the present invention, and FIG. 2 is a flowchart for explaining one embodiment of the present invention. Reference symbols used in the figures are as follows. 1 is an address counter, 2 is an addition memory, 3 is a cache memory, 4 and 5 are comparison sections, 6 is a processing unit, 7 and 13 are OR circuits, 8, 9, and 12 are AND circuits, 10 is a set pulse generation section, and 11 is a Address generation section, 14 is a read command generation section, 15 is a register section, 16 is a processing section, 17 is a discrimination section, 18 is a main storage device, A is address data, B is an output signal, C is a read command, E, F is a mismatch signal, G is an added signal, H 1 and H 2 are hit signals, S is a set signal, a
is an address part, a 1 is an upper address, a 1 ' is address data, a 2 is a lower address, and d is a data part.

Claims (1)

【特許請求の範囲】 1 主記憶装置から読み出したデータと、該デー
タのアドレス情報を保持するキヤシユメモリと、
該主記憶装置のアクセス先のアドレスを保持する
アドレスカウンタと、該アドレスカウンタに設定
するアドレスを発生する処理装置とを有し、 該キヤシユメモリから該アドレスカウンタに保
持するアドレスによつて定まる領域を読み出し、
該領域の該アドレス情報によつて識別して、該ア
ドレスのデータが保持されている場合にヒツト信
号を出力する制御手段と、 該アドレスカウンタに設定されているアドレス
と該処理装置から発生されるアドレスとを比較す
る比較手段と、 該アドレスカウンタに保持するアドレスを歩進
させる歩進手段とを設け、 該アドレスカウンタに設定したアドレスを該歩
進手段によつて1だけ歩進させ、該歩進させたア
ドレスによつて該制御手段を動作させて、該ヒツ
ト信号が出力された場合には、 該比較手段によつて一致が検出されることを条
件として、前記制御手段によつて該キヤシユメモ
リから続み出してあるデータを該処理装置に転送
することを特徴とするメモリアクセス制御方式。
[Claims] 1. A cache memory that holds data read from a main storage device and address information of the data;
It has an address counter that holds an access destination address of the main storage device, and a processing device that generates an address to be set in the address counter, and reads an area determined by the address held in the address counter from the cache memory. ,
control means for identifying based on the address information of the area and outputting a hit signal when data at the address is held; and an increment means for incrementing the address held in the address counter, the increment means incrementing the address set in the address counter by 1, and When the control means is operated in accordance with the advanced address and the hit signal is output, the control means operates the cache memory on the condition that a match is detected by the comparison means. 1. A memory access control method characterized in that data successively retrieved from a memory is transferred to the processing device.
JP56119700A 1981-07-30 1981-07-30 Memory access controlling system Granted JPS5819785A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56119700A JPS5819785A (en) 1981-07-30 1981-07-30 Memory access controlling system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56119700A JPS5819785A (en) 1981-07-30 1981-07-30 Memory access controlling system

Publications (2)

Publication Number Publication Date
JPS5819785A JPS5819785A (en) 1983-02-04
JPH0250498B2 true JPH0250498B2 (en) 1990-11-02

Family

ID=14767905

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56119700A Granted JPS5819785A (en) 1981-07-30 1981-07-30 Memory access controlling system

Country Status (1)

Country Link
JP (1) JPS5819785A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61258063A (en) * 1985-05-07 1986-11-15 日本染色機械株式会社 Apparatus for treating long fiber product

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5099046A (en) * 1973-12-28 1975-08-06
JPS5265628A (en) * 1975-11-28 1977-05-31 Hitachi Ltd Information processing device
JPS53134335A (en) * 1977-04-28 1978-11-22 Fujitsu Ltd Memory control system
JPS5680871A (en) * 1979-12-06 1981-07-02 Fujitsu Ltd Buffer memory control system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5099046A (en) * 1973-12-28 1975-08-06
JPS5265628A (en) * 1975-11-28 1977-05-31 Hitachi Ltd Information processing device
JPS53134335A (en) * 1977-04-28 1978-11-22 Fujitsu Ltd Memory control system
JPS5680871A (en) * 1979-12-06 1981-07-02 Fujitsu Ltd Buffer memory control system

Also Published As

Publication number Publication date
JPS5819785A (en) 1983-02-04

Similar Documents

Publication Publication Date Title
US8028116B2 (en) Data transfer apparatus and data transfer method
EP0432575A2 (en) Data processor having wait state control unit
JPH0250498B2 (en)
EP0454064A2 (en) Data transmission system
JPS5816263B2 (en) General information
JPH0115900B2 (en)
JPH05120135A (en) Cache control system
JP3145765B2 (en) Information processing device
JPS6362083A (en) Projection data generation system
JP3264985B2 (en) Disk controller
JP3052952B2 (en) Data retrieval device
JPH09198305A (en) Memory controller
JPS6244352B2 (en)
JP2594919B2 (en) Logic LSI
JP2581484B2 (en) Data processing system
JPH02156351A (en) Cache memory device
JPH02184971A (en) Information processor
JPS60221857A (en) Microprocessor system
JPS6218065B2 (en)
JPH0721083A (en) Memory reader
JPS6218064B2 (en)
JPH0635620A (en) System for controlling storage device
JPH03237537A (en) Memory read system
JPS62259158A (en) Interruption request circuit
JPH0540686A (en) Memory device