JPH0685154B2 - Intermediate buffer control method - Google Patents
Intermediate buffer control methodInfo
- Publication number
- JPH0685154B2 JPH0685154B2 JP62194850A JP19485087A JPH0685154B2 JP H0685154 B2 JPH0685154 B2 JP H0685154B2 JP 62194850 A JP62194850 A JP 62194850A JP 19485087 A JP19485087 A JP 19485087A JP H0685154 B2 JPH0685154 B2 JP H0685154B2
- Authority
- JP
- Japan
- Prior art keywords
- access
- cpu
- data
- main memory
- buffer storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】 [概 要] 本発明は主記憶とCPUとの間にそれぞれ容量の異なる2
組のバッファストレージを有する場合のデータ転送制御
に関し、 必要なデータを迅速に転送すると共に当面不用なデータ
の転送時期を制御することによりCPUの処理効率を高め
ることを目的とし、 MCUのバッファストレージ容量に対し、CPU側のバッファ
ストレージのブロックサイズが小であるとき、主記憶に
アクセスするためのムーブインアドレスレジスタと、ア
クセス中のデータ転送量を計数するアクセスカウンタ
と、上記アクセスカウンタの値が予め定めた値になった
とき前記ムーブインアドレスレジスタの主記憶アクセス
優先度を低下せしめる手段とを設けることにより構成す
る。DETAILED DESCRIPTION OF THE INVENTION [Outline] In the present invention, a main memory and a CPU have different capacities.
Regarding data transfer control when there is a set of buffer storage, the buffer storage capacity of the MCU is intended to increase the processing efficiency of the CPU by quickly transferring necessary data and controlling the transfer timing of unnecessary data for the time being. On the other hand, when the block size of the buffer storage on the CPU side is small, the move-in address register for accessing the main memory, the access counter for counting the data transfer amount during access, and the value of the access counter are set in advance. And a means for lowering the main memory access priority of the move-in address register when it reaches a predetermined value.
[産業上の利用分野] 本発明は主記憶とCPUとの間にそれぞれ容量の異なる2
組のバッファストレージを有する場合のデータ転送制御
に関し、特にMCU側に設けられたグローバルバッファス
トレージに対して、CPU側のローカルバッファストレー
ジのブロックサイズが小なる場合にCPUの処理効率を高
めることの可能な制御方式に係る。[Field of Industrial Application] The present invention has different capacities between a main memory and a CPU.
Regarding data transfer control when there is a pair of buffer storages, it is possible to improve CPU processing efficiency especially when the block size of the local buffer storage on the CPU side is smaller than the global buffer storage provided on the MCU side. Control system.
[従来の技術] 第2図は主記憶とCPU間のデータ転送について説明する
図であって、51はCPU、52はメモリコントロールユニッ
ト(図においては略号にてMCUと記載)、53はメインス
トレージユニット、54はローカルバッファストレージ
(図においては略号にてLBSと記載)、55はグローバル
バッファストレージ(図においては略号にてGBSと記
載)を表している。[Prior Art] FIG. 2 is a diagram for explaining data transfer between a main memory and a CPU. 51 is a CPU, 52 is a memory control unit (abbreviated as MCU in the figure), and 53 is main storage. A unit, 54 is a local buffer storage (abbreviated as LBS in the figure), and 55 is global buffer storage (GBS as abbreviated in the figure).
同図において、CPU51が、メインストレージユニット
(以下MSUともいう)53からデータを読み出すときは、
一旦MCU52のGBS55にデータを格納すると共に、CPU側に
データ送りLBS54に格納する。そして、CPUはLBS54にデ
ータがなければGBS55を探し、それでもだめならMSUにア
クセスしてこれらのデータを各バッファに格納する。In the figure, when the CPU 51 reads data from the main storage unit (hereinafter also referred to as MSU) 53,
The data is once stored in the GBS 55 of the MCU 52, and at the same time, the data is sent to the CPU side and stored in the LBS 54. Then, if the CPU does not have data in LBS54, it looks for GBS55, and if not, it accesses MSU and stores these data in each buffer.
第3図は第2図中のメモリコントロールユニットの構成
を示すブロック図であって、52、55は第2図と同様であ
り、56はCPUアドレスポートレジスタ、57はGBS優先順位
選択回路、58はMSU優先順位選択回路、59はCPUとのイン
タフェース、60はメインストレージユニットとのインタ
フェースを表している。FIG. 3 is a block diagram showing the configuration of the memory control unit in FIG. 2, 52 and 55 are the same as those in FIG. 2, 56 is a CPU address port register, 57 is a GBS priority selection circuit, and 58. Is an MSU priority selection circuit, 59 is an interface with the CPU, and 60 is an interface with the main storage unit.
同図に示すように、GBS55あるいはMSUへのアクセスは、
それぞれ、GBS優先順位選択回路57あるいはMSU優先順位
選択回路58によって優先順位が高いものが選ばれて優先
的に処理される。As shown in the figure, access to GBS55 or MSU is
The GBS priority selection circuit 57 or the MSU priority selection circuit 58 selects the one with the highest priority and processes it with priority.
[発明が解決しようとする問題点] 上述したようなメインストレージユニットへのアクセス
において、CPUからメインストレージユニットへのアク
セスは読み出し(以下フェッチともいう)と書き込み
(以下ストアともいう)の順序が逆転するとデータに矛
盾を生ずるから、先に発生したアクセスに係る処理が終
了してから、次のアクセスに係る処理に移らなければな
らない。[Problems to be Solved by the Invention] In the above-described access to the main storage unit, the access from the CPU to the main storage unit is reversed in the order of read (hereinafter also referred to as fetch) and write (hereinafter also referred to as store). Then, since the data becomes inconsistent, it is necessary to move to the processing for the next access after the processing for the access that occurred earlier is completed.
そのため、LBSよりGBSのブロックサイズが大きいときに
は、アクセスの待ち合わせを行なわなければならないこ
とが発生する。Therefore, when the block size of GBS is larger than that of LBS, it may be necessary to wait for access.
例えば、LBSが32バイト/1ブロックであり、GBSが64バイ
ト/1ブロックであるとき、ブロックフェッチ→ストアの
順にアクセス要求があって、ブロックフェッチの過程で
GBSミスした場合について考えてみると、メインストレ
ージユニットへアクセスしてGBSへ必要なデータをムー
ブインするため、64バイト分の優先権(以下プライオリ
ティともいう)を得なければならない。For example, when the LBS is 32 bytes / 1 block and the GBS is 64 bytes / 1 block, there is an access request in the order of block fetch → store, and during the block fetch process
Considering the case of GBS miss, in order to access the main storage unit and move the necessary data into the GBS, it is necessary to obtain priority for 64 bytes (hereinafter also referred to as priority).
この例の場合、第2図に英字符Aで示したメインストレ
ージ53とMCU52との間のデータ転送は8バイト単位で行
なわれるため、第3図に示すCPUアドレスレポートレジ
スタを8個インクリメントし、MSU優先順位選択回路58
で優先順位を獲得する。そのため、前記ストアアクセス
は“8バイト×8回”の間(8τ)待たされることにな
る。In the case of this example, since data transfer between the main storage 53 and the MCU 52 shown by the letter A in FIG. 2 is performed in 8-byte units, the CPU address report register shown in FIG. 3 is incremented by 8, MSU priority selection circuit 58
To get priority. Therefore, the store access is kept waiting for "8 bytes x 8 times" (8τ).
そして、このデータはLBSに転送されるがLBSは32バイト
/1ブロックであるから、後半の4τ分のデータは、直ち
に必要とされるものではなく、ストアデータは全く無意
味に4τの間待たされることになるという問題点があっ
た。Then, this data is transferred to LBS, which is 32 bytes.
Since it is / 1 block, there is a problem that the data for 4τ in the latter half is not immediately required, and the store data is kept meaningless for 4τ.
本発明はこのような従来の問題点に鑑み、効率的なメモ
リアクセスを可能とする制御手段を提供することを目的
としている。The present invention has been made in view of such conventional problems, and an object thereof is to provide a control unit that enables efficient memory access.
[問題点を解決するための手段] 本発明によれば上述の目的は、前記特許請求の範囲に記
載した手段により達成される。すなわち、本発明は、主
記憶とCPUとの間に、主記憶からのデータを一定のブロ
ックサイズごとに保持するグローバルバッファストレー
ジと該グローバルバッファストレージより転送を受けた
データを保持する該グローバルバッファストレージより
ブロックサイズの小なるローカルバッファストレージと
を具備する電子計算機において、主記憶にアクセスする
ためのムーブインアドレスレジスタと、アクセス中のデ
ータ転送量を計数するアクセスカウンタと、上記アクセ
スカウンタの値が予め定めた値になったとき前記ムーブ
インアドレスレジスタの主記憶アクセス優先度を低下せ
しめる手段とを設けたことを特徴とする中間バッファ制
御方式である。[Means for Solving Problems] According to the present invention, the above-mentioned object is achieved by the means described in the claims. That is, the present invention provides a global buffer storage that holds data from the main memory for each fixed block size between the main memory and the CPU, and the global buffer storage that holds data transferred from the global buffer storage. In a computer including a local buffer storage having a smaller block size, a move-in address register for accessing the main memory, an access counter for counting the amount of data transferred during access, and the value of the access counter are set in advance. And a means for lowering the main memory access priority of the move-in address register when the value reaches a predetermined value.
[作 用] 上述の手段において、例えば、LBSが32バイト/1ブロッ
クであり、GBSが64バイト/1ブロックであり、MSU→MCU
間は8バイト単位の転送方式を採っている場合について
説明すると、ブロックフェッチ→ストアの順でアクセス
要求が来たとき、MSUから前半の32バイト(8バイト×
4)の転送が終了した後、後半32バイトの転送を行なう
前に、後続のストア処理を行ない、その後の空き時間
に、前記後半32バイトの転送を行なうように制御され
る。これによりストアクセスは4τの間待つだけで処理
されることになる。[Operation] In the above means, for example, LBS is 32 bytes / 1 block, GBS is 64 bytes / 1 block, and MSU → MCU
The case where the transfer method is in units of 8 bytes is explained. When an access request comes in the order of block fetch → store, the first 32 bytes from the MSU (8 bytes ×
After the transfer of 4) is completed, the subsequent store processing is performed before the transfer of the latter half 32 bytes, and the transfer of the latter half 32 bytes is controlled in the vacant time thereafter. As a result, the strobe is processed by waiting for 4τ.
このように、GBSだけが必要とするアクセスの処理をム
ーブインアドレスレジスタを制御することにより、CPU
からのアクセスの空き時間に実行することにより、後か
らのCPUのアクセスが、これを飛び越えて処理すること
を可能としている。In this way, by controlling the move-in address register, the access processing required only by GBS
By executing during the free time of access from, it is possible for subsequent CPU access to skip this and process.
[実施例] 第1図は本発明の1実施例のブロック図であって、MCU
の構成を示している。同図において、1はMCU、2はCPU
アドレスポートレジスタ、3はGBS優先順位選択回路、
4はMSU優先順位選択回路、5はGBS、6はインクリメン
ト機能付のMSブロックフェッチアドレスレジスタ、7は
アクセスカウンタ、8はCPUとのインタフェース、9は
メインストレージユニットとのインタフェースを表して
いる。[Embodiment] FIG. 1 is a block diagram of an embodiment of the present invention.
Shows the configuration of. In the figure, 1 is an MCU, 2 is a CPU
Address port register, 3 is GBS priority selection circuit,
Reference numeral 4 is an MSU priority selection circuit, 5 is GBS, 6 is an MS block fetch address register with an increment function, 7 is an access counter, 8 is an interface with the CPU, and 9 is an interface with the main storage unit.
同図において、CPUの求めるデータがGBSにないとき(GB
Sにミスしたとき)はMSUからデータをGBSにムーブイン
する必要がある。このときは、CPUアドレスポートレジ
スタ2をMSブロックフェッチアドレシレジスタ6に接続
して、CPUアドレスポートレジスタ2に保持されている
アドレス値を、MSブロックフェッチアドレスレジスタ6
に転送し、アクセスカウンタの値を“0"にして、MSUへ
のアクセス(ムーブイン)を開始する。In the figure, when the data required by the CPU is not in GBS (GBS
When you miss S), you need to move data from MSU to GBS. At this time, the CPU address port register 2 is connected to the MS block fetch address register 6, and the address value held in the CPU address port register 2 is changed to the MS block fetch address register 6
Then, the value of the access counter is set to "0" and access (move-in) to the MSU is started.
このとき、MSUへ1回アクセスするたびにMSブロックフ
ェッチアドレスレジスタ6には“8"が加算され、一方、
アクセスカウンタ7には“1"が加算される。そして、MS
ブロックフェッチアドレスレジスタ6の値が“7"になる
までMSUへのアクセスが繰り返し行なわれる。At this time, “8” is added to the MS block fetch address register 6 each time the MSU is accessed,
“1” is added to the access counter 7. And MS
The MSU is repeatedly accessed until the value of the block fetch address register 6 becomes "7".
アクセスカウンタ7の値が“3"以下の場合(32バイト以
内)のときには、MSU優先順位選択回路4は、MSブロッ
クフェッチアドレスレジスタ6のMSUプライオリティを
優先的に取るように動作する。When the value of the access counter 7 is "3" or less (within 32 bytes), the MSU priority selection circuit 4 operates so as to preferentially take the MSU priority of the MS block fetch address register 6.
一方、アクセスカウンタの値が“4"以上の場合(32バイ
ト以上)のときには、CPUアドレスポートレジスタに対
する要求があれば、それを優先してMSUプライオリティ
を取るようにするため、MSブロックフェッチアドレスレ
ジスタ6の優先度を前記要求より低くするごとく制御す
る。On the other hand, when the value of the access counter is "4" or more (32 bytes or more), if there is a request to the CPU address port register, the MS block fetch address register will be given priority so that it will have the MSU priority. The priority of 6 is controlled to be lower than the request.
これによりMSブロックフェッチアドレスレジスタの残り
の処理は他のポートの要求がない空き時間に行なわれる
ようになる。As a result, the remaining processing of the MS block fetch address register is performed in the idle time when there is no request from other ports.
[発明の効果] 以上説明したように本発明の方式によれば、CPUがメイ
ンストレージユニットにアクセスするとき、CPUのLBSの
ブロックサイズに相当するデータのみを先に受け取り、
直ちに処理を行なうことができると共に、後半のGBSに
格納するだけのデータは、他のアクセスの処理が終了し
てから、空き時間を利用して処理すればよいので、その
間に他のポートのアクセスを行なうことができるから、
メインストレージを効率よく使用することが可能であ
り、CPUから見たスループットが向上する利点がある。As described above, according to the method of the present invention, when the CPU accesses the main storage unit, only the data corresponding to the block size of the LBS of the CPU is received first,
Data that can be processed immediately and stored in GBS in the latter half can be processed by using idle time after the processing of other access is completed. Because you can
The main storage can be used efficiently, and the throughput seen from the CPU is improved.
第1図は本発明の1実施例のブロック図、第2図は主記
憶とCPU間のデータ転送について説明する図、第3図は
メモリコントロールユニットの構成を示すブロック図で
ある。 1……MCU、2……CPUアドレスポートレジスタ、3……
GBS優先順位選択回路、4……MSU優先順位選択回路、5
……GBS、6……MSブロックフェッチアドレシレジス
タ、7……アクセスカウンタ、8……CPUとのインタフ
ェース、9……メインストレージユニットとのインタフ
ェースFIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a diagram for explaining data transfer between a main memory and a CPU, and FIG. 3 is a block diagram showing a configuration of a memory control unit. 1 ... MCU, 2 ... CPU address port register, 3 ...
GBS priority selection circuit, 4 ... MSU priority selection circuit, 5
...... GBS, 6 ... MS block fetch address register, 7 ... Access counter, 8 ... CPU interface, 9 ... Main storage unit interface
Claims (1)
タを一定のブロックサイズごとに保持するグローバルバ
ッファストレージと該グローバルバッファストレージよ
り転送を受けたデータを保持する該グローバルバッファ
ストレージよりブロックサイズの小なるローカルバッフ
ァストレージとを具備する電子計算機において、 主記憶にアクセスするためのムーブインアドレスレジス
タと、 アクセス中のデータ転送量を計数するアクセスカウンタ
と、 上記アクセスカウンタの値が予め定めた値になったとき
前記ムーブインアドレスレジスタの主記憶アクセス優先
度を低下せしめる手段とを設けたことを特徴とする中間
バッファ制御方式。1. A global buffer storage that holds data from the main memory for each fixed block size between the main memory and the CPU, and a global buffer storage that holds data transferred from the global buffer storage. In a computer equipped with a local buffer storage having a small block size, a move-in address register for accessing the main memory, an access counter for counting the data transfer amount during access, and a value for the access counter are predetermined. And a means for lowering the main memory access priority of the move-in address register.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62194850A JPH0685154B2 (en) | 1987-08-04 | 1987-08-04 | Intermediate buffer control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62194850A JPH0685154B2 (en) | 1987-08-04 | 1987-08-04 | Intermediate buffer control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6437641A JPS6437641A (en) | 1989-02-08 |
| JPH0685154B2 true JPH0685154B2 (en) | 1994-10-26 |
Family
ID=16331319
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62194850A Expired - Fee Related JPH0685154B2 (en) | 1987-08-04 | 1987-08-04 | Intermediate buffer control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0685154B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2614358B2 (en) * | 1990-10-19 | 1997-05-28 | 富士通株式会社 | Block read address generation system |
-
1987
- 1987-08-04 JP JP62194850A patent/JPH0685154B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6437641A (en) | 1989-02-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0542417B1 (en) | Method and direct memory access controller for asynchronously reading/writing data from/to a memory with improved throughput | |
| EP0464994A2 (en) | Cache memory exchange protocol | |
| JPH0685154B2 (en) | Intermediate buffer control method | |
| JPS61165170A (en) | Bus controlling system | |
| JP3039391B2 (en) | Memory system | |
| JPH0447350A (en) | Main storage read/response control | |
| JP2594567B2 (en) | Memory access control device | |
| JP2594611B2 (en) | DMA transfer control device | |
| JPH05334233A (en) | Data transferring device | |
| JPH07152574A (en) | Program loading method | |
| JP2527066B2 (en) | Reception queue processor | |
| JPS61117651A (en) | Interface device | |
| JPH0520253A (en) | Data processing device | |
| JPH0376501B2 (en) | ||
| JPS6373458A (en) | Shared memory access device | |
| JPH0664552B2 (en) | Information processing device invalidation processing method | |
| JPH03158943A (en) | Buffer storage/transfer system | |
| JPS6055454A (en) | Data transfer control system | |
| JPS589274A (en) | Write data buffer control device | |
| JPS601656B2 (en) | buffer memory circuit | |
| JPH02310749A (en) | Cache main memory control system | |
| JPS5818709B2 (en) | Data transfer control method | |
| JPH0424733B2 (en) | ||
| JPH0415490B2 (en) | ||
| JPS61211752A (en) | Page hysteresis memory device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |