JPH086856A - Bus interface adapter - Google Patents

Bus interface adapter

Info

Publication number
JPH086856A
JPH086856A JP6132787A JP13278794A JPH086856A JP H086856 A JPH086856 A JP H086856A JP 6132787 A JP6132787 A JP 6132787A JP 13278794 A JP13278794 A JP 13278794A JP H086856 A JPH086856 A JP H086856A
Authority
JP
Japan
Prior art keywords
cache
block
bus interface
bus
dma
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
JP6132787A
Other languages
Japanese (ja)
Other versions
JP2748862B2 (en
Inventor
Takashi Kojima
貴司 小島
Shinji Ueno
伸二 上野
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP6132787A priority Critical patent/JP2748862B2/en
Publication of JPH086856A publication Critical patent/JPH086856A/en
Application granted granted Critical
Publication of JP2748862B2 publication Critical patent/JP2748862B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To improve the throughput of a system by lightening the load on an S bus at the time of DMA write transfer. CONSTITUTION:A decoder 11 decodes DMA transfer length which is sent from IO devices 2-1-2-n through a DMA transfer length indication bus 102. A comparator 13 compares the DMA transfer length from the decoder 11 with the cache block length value from a cache block length value holding part 12 and outputs the comparison result to an IO bus interface control part 14. The IO bus interface control part 14 drives a memory write-back control part 17 when the comparison result shows a coincidence to issue a memory write-back request, accompanying a request to invalidate a target block, on the S bus 100 through an S bus interface control part 19. The IO bus interface control part 14 changes the state of the target block in an IO cache 15 into an invalidated state.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はバスインタフェースアダ
プタに関し、特に入出力装置からメモリ装置へのDMA
(ダイレクトメモリアクセス)ライトトランザクション
におけるストアイン型入出力キャッシュの制御方式に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a bus interface adapter, and more particularly to a DMA from an input / output device to a memory device.
(Direct memory access) Control method of store-in type I / O cache in write transaction.

【0002】[0002]

【従来の技術】この種のバスインタフェースアダプタ
は、ストアイン型キャッシュを有するプロセッサあるい
はバスインタフェースアダプタが一つまたは複数接続可
能なバス(以下、Sバスとする)と、DMA制御を行う
入出力装置が複数接続可能なバス(以下、IOバスとす
る)との間に設置されており、内部にストアイン型キャ
ッシュ(以下、IOキャッシュとする)を有している。
2. Description of the Related Art A bus interface adapter of this type includes a processor having a store-in cache or a bus to which one or more bus interface adapters can be connected (hereinafter referred to as S bus), and an input / output device for performing DMA control. Are installed between a plurality of connectable buses (hereinafter referred to as IO buses), and have a store-in type cache (hereinafter referred to as IO cache) inside.

【0003】上記のバスインタフェースアダプタを備え
た情報処理装置では装置内に複数のストアイン型キャッ
シュが存在しているため、それら複数のストアイン型キ
ャッシュとメインメモリとにおける記憶内容の整合性を
どのように保つべきかという問題がある。
In the information processing apparatus having the above-mentioned bus interface adapter, since a plurality of store-in type caches exist in the apparatus, the consistency of the stored contents between the plurality of store-in type caches and the main memory can be determined. There is a question of how to keep it.

【0004】以下、複数のストアイン型キャッシュとメ
インメモリとにおける記憶内容の整合性を保つためのプ
ロトコルについて説明する。ここで、入出力装置からメ
インメモリにDMA制御によってデータの書込み(以
下、DMAライトとする)を行う場合について説明す
る。
A protocol for maintaining the consistency of stored contents in a plurality of store-in caches and the main memory will be described below. Here, a case where data is written from the input / output device to the main memory by DMA control (hereinafter referred to as DMA write) will be described.

【0005】DMAライトすべき目標ブロックがIOキ
ャッシュに存在し、そのIOキャッシュに記憶されてい
るブロックが有効で、しかもそのブロックと同一のブロ
ックが他のストアイン型キャッシュに存在せず、さらに
そのブロックの内容がメインメモリの対応するブロック
の内容と一致している状態をCEとする。
The target block to be DMA-written exists in the IO cache, the block stored in the IO cache is valid, and the same block as that block does not exist in the other store-in type cache. CE is a state in which the contents of the block match the contents of the corresponding block in the main memory.

【0006】また、DMAライトすべき目標ブロックが
IOキャッシュに存在し、そのIOキャッシュに記憶さ
れているブロックが有効で、しかもそのブロックと同一
のブロックが他のストアイン型キャッシュに存在せず、
さらにそのブロックの内容がメインメモリの対応するブ
ロックの内容と一致していない状態をDEとする。
Further, the target block to be DMA-written exists in the IO cache, the block stored in the IO cache is valid, and the same block as that block does not exist in other store-in type caches.
Further, the state in which the contents of the block do not match the contents of the corresponding block in the main memory is designated as DE.

【0007】DMAライトの目標ブロックの状態が上記
のCEまたはDEの場合、他のストアイン型キャッシュ
及びメインメモリに対するアクセスは一切行わず、自I
Oキャッシュの目標ブロックにライトデータを書込ん
で、その目標ブロックの状態をDEに変更する。
When the state of the target block of the DMA write is CE or DE, the other store-in type cache and the main memory are not accessed at all, and the self I
Write data to the target block of the O-cache and change the state of the target block to DE.

【0008】一方、DMAライトすべき目標ブロックが
IOキャッシュに存在し、そのIOキャッシュに記憶さ
れているブロックが有効で、しかもそのブロックと同一
のブロックが他のストアイン型キャッシュにも存在し、
さらにそのブロックの内容がメインメモリの対応するブ
ロックの内容と一致している状態をSHとする。
On the other hand, the target block to be DMA-written exists in the IO cache, the block stored in that IO cache is valid, and the same block as that block also exists in other store-in type caches.
Further, a state in which the contents of the block match the contents of the corresponding block in the main memory is designated as SH.

【0009】また、DMAライトすべき目標ブロックが
IOキャッシュに存在し、そのIOキャッシュに記憶さ
れているブロックが有効で、しかもそのブロックと同一
のブロックが他のストアイン型キャッシュにも存在し、
さらにそのブロックの内容がメインメモリの対応するブ
ロックの内容と一致していない状態をDSとする。
Further, the target block to be DMA-written exists in the IO cache, the block stored in the IO cache is valid, and the same block as that block also exists in other store-in type caches.
Further, the state where the content of the block does not match the content of the corresponding block of the main memory is DS.

【0010】DMAライトの目標ブロックの状態が上記
のSHまたはDSの場合、他のストアイン型キャッシュ
の目標ブロックと同一のブロックを無効化する要求を行
うとともに、自IOキャッシュの目標ブロックにライト
データを書込んで、その目標ブロックの状態をDEに変
更する。
When the state of the target block of the DMA write is SH or DS as described above, a request to invalidate the same block as the target block of the other store-in type cache is issued and write data is written to the target block of the own IO cache. Is written to change the state of the target block to DE.

【0011】DMAライトの目標ブロックが自IOキャ
ッシュに存在しない場合、目標ブロックと同一のブロッ
クを無効化する要求を伴う読出し要求で他のストアイン
型キャッシュあるいはメインメモリから目標ブロックを
自IOキャッシュに読込んでからDMAライトのライト
データの書込みを行う。
When the target block of the DMA write does not exist in the own IO cache, a read request accompanied by a request to invalidate the same block as the target block causes the target block to be moved to the own IO cache from another store-in type cache or main memory. After reading, the write data of DMA write is written.

【0012】上記の無効化する要求を伴う読出し要求で
は目標ブロックを読出した直後、他のストアイン型キャ
ッシュの目標ブロックと同一のブロックを無効である状
態に変更するよう制御される。この無効である状態をI
Vとする。
In the read request accompanied by the invalidation request, immediately after the target block is read, the same block as the target block of the other store-in type cache is controlled to be invalidated. This invalid state is I
V.

【0013】DMAライトの目標ブロックを読出す際
に、自IOキャッシュ内のブロックの状態が全てDEで
あれば、他のストアイン型キャッシュあるいはメインメ
モリから読込んだデータの格納先がないので、自IOキ
ャッシュ内の任意のブロックをメインメモリに書き戻す
動作を行う。
When reading the target block of the DMA write, if the states of all the blocks in the own IO cache are DE, there is no storage destination for the data read from another store-in type cache or main memory. The operation of writing back an arbitrary block in the own IO cache to the main memory is performed.

【0014】この後に、他のストアイン型キャッシュあ
るいはメインメモリから読込んだデータを自IOキャッ
シュ内に格納すると、その目標ブロックにDMAライト
のライトデータを書込み、その目標ブロックの状態をD
Eに変更してDMAライト動作を終了する。
After that, when the data read from another store-in type cache or the main memory is stored in the own IO cache, the write data of the DMA write is written to the target block and the state of the target block is changed to D.
Change to E and end the DMA write operation.

【0015】[0015]

【発明が解決しようとする課題】上述した従来のストア
イン型キャッシュが複数接続可能なバスを有するシステ
ムのDMA転送データをキャッシングする制御方式(以
下、IOキャッシュ制御方式とする)では、Sバスを効
率的に使用するために、Sバスを介して転送されるデー
タの大きさがあるデータ長(以下、キャッシュブロック
長とする)に制限されている。
In the conventional control system (hereinafter referred to as IO cache control system) for caching DMA transfer data in a system having a bus to which a plurality of store-in type caches can be connected, an S bus is used. For efficient use, the size of data transferred via the S bus is limited to a certain data length (hereinafter referred to as cache block length).

【0016】そのため、バスインタフェースアダプタ内
にIOキャッシュを設けてSバスの効率化を図ってい
る。つまり、Sバスを介して転送されるデータの大きさ
がキャッシュブロック長またはそれ以下のいずれの場合
も、一旦そのデータをIOキャッシュに格納してからS
バス上に送出している。
Therefore, an IO cache is provided in the bus interface adapter to improve the efficiency of the SBus. That is, when the size of the data transferred via the S bus is the cache block length or less, the data is temporarily stored in the IO cache and then S
Sending on the bus.

【0017】キャッシュブロック長と同長のDMAライ
ト転送が連続して行われる場合、IOキャッシュに対し
てはストアイン型キャッシュの一致性を保たせるために
無効化する要求を伴う読出し要求が毎回発行されるとと
もに、システムにおいてIOキャッシュに唯一保持され
ているデータのメインメモリへの書き戻しも毎回発生し
ている。
When a DMA write transfer having the same length as the cache block length is continuously performed, a read request accompanied by a request for invalidation is issued to the IO cache in order to maintain the consistency of the store-in type cache. At the same time, the write-back to the main memory of the data uniquely held in the IO cache occurs in the system every time.

【0018】すなわち、Sバス上では1回のDMAライ
ト転送で、IOキャッシュを介してのDMAライト転送
長の転送が2回発生しており、Sバスに対する負荷を大
きくしている。
That is, on the S bus, one DMA write transfer causes transfer of the DMA write transfer length via the IO cache twice, which increases the load on the S bus.

【0019】そこで、本発明の目的は上記の問題点を解
消し、DMAライト転送時のSバスに対する負荷を軽減
することができ、システムのスループットを向上させる
ことができるバスインタフェースアダプタを提供するこ
とにある。
Therefore, an object of the present invention is to solve the above problems and provide a bus interface adapter capable of reducing the load on the S bus during DMA write transfer and improving the system throughput. It is in.

【0020】[0020]

【課題を解決するための手段】本発明によるバスインタ
フェースアダプタは、ストアイン型のキャッシュメモリ
を有する複数の装置と主記憶装置とが接続されるバス
と、ダイレクトメモリアクセス転送を行う複数の入出力
装置とを接続しかつ前記ストアイン型のキャッシュメモ
リを有するバスインタフェースアダプタであって、前記
ダイレクトメモリアクセス転送における転送長を予め設
定されたデータ長と比較する比較手段と、前記比較手段
の比較結果が一致を示すときにそのダイレクトメモリア
クセス転送のデータを前記バスを介して前記主記憶装置
に書込むとともにそのデータに対応する前記複数の装置
各々のキャッシュメモリの内容を無効とする手段とを備
えている。
A bus interface adapter according to the present invention comprises a bus to which a plurality of devices having a store-in type cache memory and a main memory are connected, and a plurality of input / outputs for direct memory access transfer. A bus interface adapter that is connected to a device and has the store-in type cache memory, the comparing means comparing the transfer length in the direct memory access transfer with a preset data length, and the comparison result of the comparing means. Means for writing the data of the direct memory access transfer to the main storage device via the bus and invalidating the contents of the cache memory of each of the plurality of devices corresponding to the data. ing.

【0021】本発明による他のバスインタフェースアダ
プタは、上記の構成のほかに、前記比較手段の比較結果
が一致を示すときにそのダイレクトメモリアクセス転送
のデータをストアイン制御によって前記キャッシュメモ
リに蓄積してから前記主記憶装置に書込むよう制御する
手段を具備している。
In addition to the above configuration, another bus interface adapter according to the present invention stores the data of the direct memory access transfer in the cache memory by store-in control when the comparison result of the comparison means indicates a match. Then, a means for controlling to write to the main memory is provided.

【0022】本発明による別のバスインタフェースアダ
プタは、ストアイン型のキャッシュメモリを有する複数
の装置と主記憶装置とが接続されるバスと、ダイレクト
メモリアクセス転送を行う複数の入出力装置とを接続し
かつ前記ストアイン型のキャッシュメモリを有するバス
インタフェースアダプタであって、前記複数の入出力装
置各々に設けられかつ前記ダイレクトメモリアクセス転
送における転送長を予め設定されたデータ長と比較する
比較手段と、前記比較手段の比較結果が一致を示すとき
にそのダイレクトメモリアクセス転送のデータを前記バ
スを介して前記主記憶装置に書込むとともにそのデータ
に対応する前記複数の装置各々のキャッシュメモリの内
容を無効とする手段とを備えている。
Another bus interface adapter according to the present invention connects a bus to which a plurality of devices having a store-in type cache memory and a main storage device are connected, and a plurality of input / output devices for direct memory access transfer. And a bus interface adapter having the store-in type cache memory, the comparing means being provided in each of the plurality of input / output devices and comparing the transfer length in the direct memory access transfer with a preset data length. When the comparison result of the comparison means indicates a match, the data of the direct memory access transfer is written to the main memory device via the bus, and the contents of the cache memory of each of the plurality of devices corresponding to the data are written. And means for invalidating.

【0023】本発明によるさらに別のバスインタフェー
スアダプタは、上記の構成のほかに、前記比較手段の比
較結果が一致を示すときにそのダイレクトメモリアクセ
ス転送のデータをストアイン制御によって前記キャッシ
ュメモリに蓄積してから前記主記憶装置に書込むよう制
御する手段を具備している。
In addition to the above configuration, the bus interface adapter according to the present invention stores the data of the direct memory access transfer in the cache memory by store-in control when the comparison result of the comparison means indicates a match. Then, a means for controlling to write in the main memory is provided.

【0024】[0024]

【作用】DMAライト時にDMA転送長とキャッシュブ
ロック長値とを比較し、その比較結果が一致を示すと、
目標ブロックに対する無効化要求を伴うメモリ書き戻し
要求を発行する。このとき、IOキャッシュ内に目標ブ
ロックが保有されていれば、その該当ブロックの状態を
無効化された状態を示すIVに変更する。
When the DMA transfer length is compared with the cache block length value at the time of DMA write, and the comparison result shows a match,
Issue a memory writeback request with an invalidation request for the target block. At this time, if the target block is held in the IO cache, the state of the corresponding block is changed to IV indicating the invalidated state.

【0025】DMA転送長とキャッシュブロック長値と
の比較結果が不一致を示すと、その目標ブロックがIO
キャッシュ内に存在するかどうかに応じてIOキャッシ
ュに対するストアイン制御を行う。
If the comparison result of the DMA transfer length and the cache block length value shows a mismatch, the target block is IO
Store-in control is performed for the IO cache depending on whether it exists in the cache.

【0026】これによって、少量のハードウェアを追加
することで、IOキャッシュ制御方式を動的に切換え可
能となるので、多様なIO装置からくるDMAライト転
送に応じてSバス100に対する負荷を軽減し、システ
ムのスループットが向上可能となる。
As a result, the IO cache control system can be dynamically switched by adding a small amount of hardware, so that the load on the SBus 100 can be reduced according to the DMA write transfer from various IO devices. The system throughput can be improved.

【0027】[0027]

【実施例】次に、本発明について図面を参照して説明す
る。
Next, the present invention will be described with reference to the drawings.

【0028】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、Sバス100にはバスイン
タフェースアダプタ1とメインメモリ3とが接続されて
おり、IOバス101にはバスインタフェースアダプタ
1とDMA転送制御を有するIO装置2−1〜2−nと
が接続されている。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. In the figure, a bus interface adapter 1 and a main memory 3 are connected to an S bus 100, and a bus interface adapter 1 and IO devices 2-1 to 2-n having DMA transfer control are connected to an IO bus 101. Has been done.

【0029】また、バスインタフェースアダプタ1とI
O装置2−1〜2−nとはDMA転送長指示バス102
によって接続されており、このDMA転送長指示バス1
02を介してIO装置2−1〜2−nからバスインタフ
ェースアダプタ1にDMA転送長が出力される。
Further, the bus interface adapters 1 and I
O devices 2-1 to 2-n are DMA transfer length instruction bus 102
Are connected by the DMA transfer length instruction bus 1
The DMA transfer length is output from the IO devices 2-1 to 2-n to the bus interface adapter 1 via 02.

【0030】バスインタフェースアダプタ1はデコーダ
11と、キャッシュブロック長値保持部12と、比較器
13と、IOバスインタフェース制御部14と、IOキ
ャッシュ15と、無効化要求を伴う読出し制御部16
と、無効化要求を伴うメモリ書き戻し制御部17と、他
キャッシュ無効化指示制御部18と、Sバスインタフェ
ース制御部19とから構成されている。
The bus interface adapter 1 includes a decoder 11, a cache block length value holding unit 12, a comparator 13, an IO bus interface control unit 14, an IO cache 15, and a read control unit 16 with an invalidation request.
A memory write-back control unit 17 with an invalidation request, another cache invalidation instruction control unit 18, and an SBus interface control unit 19.

【0031】デコーダ11はDMA転送長指示バス10
2を介してIO装置2−1〜2−nから送られてくるD
MA転送長をデコードし、そのDMA転送長を比較器1
3に出力する。
The decoder 11 is a DMA transfer length instruction bus 10
D sent from the IO devices 2-1 to 2-n via
The MA transfer length is decoded and the DMA transfer length is compared with the comparator 1.
Output to 3.

【0032】キャッシュブロック長値保持部12は予め
設定されたキャッシュブロック長値を保持し、そのキャ
ッシュブロック長値を比較器13に出力する。比較器1
3はデコーダ11からのDMA転送長とキャッシュブロ
ック長値保持部12からのキャッシュブロック長値とを
比較し、その比較結果をIOバスインタフェース制御部
14に出力する。
The cache block length value holding unit 12 holds a preset cache block length value and outputs the cache block length value to the comparator 13. Comparator 1
3 compares the DMA transfer length from the decoder 11 with the cache block length value from the cache block length value holding unit 12, and outputs the comparison result to the IO bus interface control unit 14.

【0033】IOバスインタフェース制御部14はIO
バス101によるデータ転送を制御するとともに、無効
化要求を伴う読出し制御部16と無効化要求を伴うメモ
リ書き戻し制御部17と他キャッシュ無効化指示制御部
18とを比較器13の比較結果に応じて夫々駆動制御す
る。
The IO bus interface controller 14 is an IO
The data transfer by the bus 101 is controlled, and the read control unit 16 with the invalidation request, the memory writeback control unit 17 with the invalidation request, and the other cache invalidation instruction control unit 18 are controlled according to the comparison result of the comparator 13. Drive control respectively.

【0034】読出し制御部16は無効化要求を伴う読出
し要求(コヒーレントリードEXリクエスト)の発行を
制御し、無効化要求を伴うメモリ書き戻し制御部17は
無効化要求を伴うメモリ書き戻し要求(ライトIVリク
エスト)の発行を制御する。
The read control unit 16 controls the issuance of a read request (coherent read EX request) accompanied by the invalidation request, and the memory write-back control unit 17 accompanied by the invalidation request (memory write-back request (write)). (IV request) issuance is controlled.

【0035】他キャッシュ無効化指示制御部18は他の
ストアイン型キャッシュ(図示せず)内の該当ブロック
に対する無効化要求(IVリクエスト)の発行を制御す
る。Sバスインタフェース制御部19はSバスプロトコ
ルを制御する。
The other cache invalidation instruction control unit 18 controls the issuance of an invalidation request (IV request) to the corresponding block in another store-in type cache (not shown). The SBus interface control unit 19 controls the SBus protocol.

【0036】図2は本発明の一実施例の動作を示すフロ
ーチャートである。これら図1及び図2を用いて本発明
の一実施例の動作について説明する。
FIG. 2 is a flow chart showing the operation of one embodiment of the present invention. The operation of the embodiment of the present invention will be described with reference to FIGS.

【0037】ここで、DMAライトすべき目標ブロック
がIOキャッシュ15に存在し、そのIOキャッシュ1
5に記憶されているブロックが有効で、しかもそのブロ
ックと同一のブロックが他のストアイン型キャッシュに
存在せず、さらにそのブロックの内容がメインメモリ3
の対応するブロックの内容と一致している状態をCEと
する。
Here, the target block to be DMA-written exists in the IO cache 15, and the IO cache 1
5 is valid, and the same block as that block does not exist in another store-in type cache, and the content of the block is the main memory 3
CE is a state in which the contents of the corresponding block of (1) match.

【0038】また、DMAライトすべき目標ブロックが
IOキャッシュ15に存在し、そのIOキャッシュ15
に記憶されているブロックが有効で、しかもそのブロッ
クと同一のブロックが他のストアイン型キャッシュに存
在せず、さらにそのブロックの内容がメインメモリ3の
対応するブロックの内容と一致していない状態をDEと
する。
Further, the target block to be DMA-written exists in the IO cache 15, and the IO cache 15 has the target block.
The block stored in is valid, the same block as that block does not exist in another store-in type cache, and the content of the block does not match the content of the corresponding block of the main memory 3. Is DE.

【0039】さらに、DMAライトすべき目標ブロック
がIOキャッシュ15に存在し、そのIOキャッシュ1
5に記憶されているブロックが有効で、しかもそのブロ
ックと同一のブロックが他のストアイン型キャッシュに
も存在し、さらにそのブロックの内容がメインメモリ3
の対応するブロックの内容と一致している状態をSHと
する。
Further, the target block to be DMA-written exists in the IO cache 15, and the IO cache 1
The block stored in 5 is valid, and the same block as that block exists in another store-in type cache, and the content of the block is stored in the main memory 3
The state that matches the contents of the corresponding block of is designated as SH.

【0040】さらにまた、DMAライトすべき目標ブロ
ックがIOキャッシュ15に存在し、そのIOキャッシ
ュ15に記憶されているブロックが有効で、しかもその
ブロックと同一のブロックが他のストアイン型キャッシ
ュにも存在し、さらにそのブロックの内容がメインメモ
リ3の対応するブロックの内容と一致していない状態を
DSとする。尚、ストアイン型キャッシュのブロックが
無効である状態をIVとする。
Furthermore, the target block to be DMA-written exists in the IO cache 15, the block stored in the IO cache 15 is valid, and the same block as that block is also stored in another store-in type cache. A state in which the block exists and the contents of the block do not match the contents of the corresponding block of the main memory 3 is DS. The state in which the block of the store-in type cache is invalid is IV.

【0041】IO装置2−1〜2−nはDMAライト時
にDMA転送長をDMA転送長指示バス102に発行す
る。バスインタフェースアダプタ1のデコーダ11はD
MA転送長指示バス102上のDMA転送長をデコード
し、そのDMA転送長を比較器13に出力する。
The IO devices 2-1 to 2-n issue the DMA transfer length to the DMA transfer length instruction bus 102 at the time of DMA write. The decoder 11 of the bus interface adapter 1 is D
The DMA transfer length on the MA transfer length instruction bus 102 is decoded, and the DMA transfer length is output to the comparator 13.

【0042】比較器13はデコーダ11からのDMA転
送長をキャッシュブロック長値保持部12に保持された
キャッシュブロック長値と比較し(図2ステップS
1)、その比較結果をIOバスインタフェース制御部1
4に出力する。
The comparator 13 compares the DMA transfer length from the decoder 11 with the cache block length value held in the cache block length value holding unit 12 (step S in FIG. 2).
1), the comparison result is the IO bus interface control unit 1
4 is output.

【0043】IOバスインタフェース制御部14は比較
器13の比較結果が一致を示すと、メモリ書き戻し制御
部17を駆動し、その目標ブロックに対する無効化要求
を伴うメモリ書き戻し要求をSバスインタフェース制御
部19を介してSバス100上に発行する(図2ステッ
プS2)。
When the comparison result of the comparator 13 indicates a match, the IO bus interface control unit 14 drives the memory write back control unit 17 to control the memory write back request accompanied with the invalidation request for the target block by the S bus interface control. It is issued on the SBus 100 via the unit 19 (step S2 in FIG. 2).

【0044】このとき、IOバスインタフェース制御部
14はIOキャッシュ15内に目標ブロックを保有して
いるかどうかを判定し(図2ステップS3)、IOキャ
ッシュ15内に目標ブロックを保有している場合にはそ
の該当ブロックの状態をIVに変更する(図2ステップ
S4)。
At this time, the IO bus interface control unit 14 determines whether or not the target block is held in the IO cache 15 (step S3 in FIG. 2), and when the target block is held in the IO cache 15, Changes the state of the corresponding block to IV (step S4 in FIG. 2).

【0045】IOバスインタフェース制御部14は比較
器13の比較結果が不一致を示すと、その目標ブロック
がIOキャッシュ15内に存在するかどうかを判定する
(図2ステップS5)。
When the comparison result of the comparator 13 indicates disagreement, the IO bus interface control unit 14 determines whether or not the target block exists in the IO cache 15 (step S5 in FIG. 2).

【0046】IOバスインタフェース制御部14は目標
ブロックがIOキャッシュ15内に存在すれば、DMA
ライトのライトデータをIOキャッシュ15内の該当ブ
ロックに書込むとともに(図2ステップS6)、その該
当ブロックの状態がSHまたはDSかどうかを判断する
(図2ステップS7)。
If the target block exists in the IO cache 15, the IO bus interface control unit 14 executes the DMA.
The write data of the write is written in the corresponding block in the IO cache 15 (step S6 in FIG. 2), and it is determined whether the state of the corresponding block is SH or DS (step S7 in FIG. 2).

【0047】IOバスインタフェース制御部14はIO
キャッシュ15内の該当ブロックの状態がSHまたはD
Sと判断すると、他キャッシュ無効化指示制御部18を
駆動し、他のストアイン型キャッシュ内の該当ブロック
に対する無効化要求をSバスインタフェース制御部19
を介してSバス100上に発行する(図2ステップS
8)。
The IO bus interface controller 14 is an IO
The state of the corresponding block in the cache 15 is SH or D
When it is determined to be S, the other cache invalidation instruction control unit 18 is driven, and an invalidation request for the corresponding block in another store-in type cache is issued by the S bus interface control unit 19.
Issued on the S bus 100 via the (step S in FIG. 2).
8).

【0048】IOバスインタフェース制御部14はライ
トデータの書込みを行ったIOキャッシュ15内の該当
ブロックの状態を、システムに唯一存在するデータであ
ることを示すDEに変更する(図2ステップS9)。
The IO bus interface control unit 14 changes the state of the block in the IO cache 15 in which the write data is written to DE indicating that the data is the only data existing in the system (step S9 in FIG. 2).

【0049】IOバスインタフェース制御部14はIO
キャッシュ15内の該当ブロックの状態がSHまたはD
Sと判断しなければ、ライトデータの書込みを行ったI
Oキャッシュ15内の該当ブロックの状態を、システム
に唯一存在するデータであることを示すDEに変更する
(図2ステップS9)。
The IO bus interface controller 14 is an IO
The state of the corresponding block in the cache 15 is SH or D
If it is not judged as S, I which has written the write data
The state of the corresponding block in the O-cache 15 is changed to DE indicating that the data is the only data existing in the system (step S9 in FIG. 2).

【0050】一方、IOバスインタフェース制御部14
は目標ブロックがIOキャッシュ15内に存在しなけれ
ば、読出し制御部16を駆動し、無効化要求を伴う読出
し要求をSバスインタフェース制御部19を介してSバ
ス100上に発行する(図2ステップS10)。その
後、DMAライトの目標ブロックを読出してライトデー
タの書込みを行う。
On the other hand, the IO bus interface controller 14
If the target block does not exist in the IO cache 15, it drives the read control unit 16 and issues a read request accompanied by an invalidation request onto the S bus 100 via the S bus interface control unit 19 (step in FIG. 2). S10). After that, the target block of DMA write is read and write data is written.

【0051】IOバスインタフェース制御部14はDM
Aライトの目標ブロックを読出す際に、IOキャッシュ
15内のブロックの状態すべてがDEであるかどうかを
判定する(図2ステップS11)。
The IO bus interface control unit 14 is DM
When reading the target block of A write, it is determined whether all the states of the blocks in the IO cache 15 are DE (step S11 in FIG. 2).

【0052】IOバスインタフェース制御部14はIO
キャッシュ15内のブロックの状態すべてがDEである
と判定すると、メモリ書き戻し制御部17を駆動し、無
効化要求を伴うメモリ書き戻し要求を発行する(図2ス
テップS12)。
The IO bus interface controller 14 is an IO
When it is determined that all the blocks in the cache 15 are in the DE state, the memory write-back control unit 17 is driven and the memory write-back request accompanied by the invalidation request is issued (step S12 in FIG. 2).

【0053】IOバスインタフェース制御部14はIO
キャッシュ15内の任意のブロックのメインメモリ3へ
の書き戻しを行うと、そのブロックにDMAライトの目
標ブロックを読出して格納し、そのブロックにDMAラ
イトのライトデータを書込む(図2ステップS13)。
同時に、そのブロックの状態をDEに変更する(図2ス
テップS9)。
The IO bus interface controller 14 is an IO
When write-back of an arbitrary block in the cache 15 to the main memory 3 is performed, a target block for DMA write is read and stored in that block, and write data for DMA write is written in that block (step S13 in FIG. 2). .
At the same time, the state of the block is changed to DE (step S9 in FIG. 2).

【0054】図3は本発明の他の実施例の構成を示すブ
ロック図である。図において、Sバス100にはバスイ
ンタフェースアダプタ4とメインメモリ3とが接続され
ており、IOバス101にはバスインタフェースアダプ
タ4とDMA転送制御を有するIO装置2−1〜2−n
とが接続されている。
FIG. 3 is a block diagram showing the configuration of another embodiment of the present invention. In the figure, a bus interface adapter 4 and a main memory 3 are connected to the S bus 100, and a bus interface adapter 4 and IO devices 2-1 to 2-n having DMA transfer control are connected to the IO bus 101.
And are connected.

【0055】また、バスインタフェースアダプタ4とI
O装置2−1〜2−nとはDMA転送長−キュッシュブ
ロック長一致報告線(以下、報告線とする)103−1
〜103−nによって接続されており、この報告線10
3−1〜103−nを介してIO装置2−1〜2−nか
らバスインタフェースアダプタ4にDMA転送長と予め
設定されたキャッシュブロック長値との一致/不一致が
報告される。
The bus interface adapter 4 and I
O devices 2-1 to 2-n are DMA transfer length-cush block length coincidence report line (hereinafter referred to as report line) 103-1
This report line 10
The match / mismatch between the DMA transfer length and the preset cache block length value is reported from the IO devices 2-1 to 2-n to the bus interface adapter 4 via the 3-1 to 103-n.

【0056】バスインタフェースアダプタ4はIOバス
インタフェース制御部41と、IOキャッシュ42と、
無効化要求を伴う読出し制御部43と、無効化要求を伴
うメモリ書き戻し制御部44と、他キャッシュ無効化指
示制御部45と、Sバスインタフェース制御部46とか
ら構成されている。
The bus interface adapter 4 includes an IO bus interface control unit 41, an IO cache 42,
It is composed of a read control unit 43 with an invalidation request, a memory write-back control unit 44 with an invalidation request, another cache invalidation instruction control unit 45, and an S bus interface control unit 46.

【0057】IOバスインタフェース制御部41はIO
バス101によるデータ転送を制御するとともに、無効
化要求を伴う読出し制御部43と無効化要求を伴うメモ
リ書き戻し制御部44と他キャッシュ無効化指示制御部
45とを報告線103−1〜103−nを介してIO装
置2−1〜2−nから入力されるDMA転送長とキャッ
シュブロック長値との一致/不一致に応じて夫々駆動制
御する。
The IO bus interface control unit 41 is an IO
The data transfer by the bus 101 is controlled, and the read control unit 43 with the invalidation request, the memory writeback control unit 44 with the invalidation request, and the other cache invalidation instruction control unit 45 are reported to the report lines 103-1 to 103-. Drive control is performed according to the match / mismatch between the DMA transfer length and the cache block length value input from the IO devices 2-1 to 2-n via n.

【0058】読出し制御部43は無効化要求を伴う読出
し要求の発行を制御する。無効化要求を伴うメモリ書き
戻し制御部44は無効化要求を伴うメモリ書き戻し要求
の発行を制御する。
The read control unit 43 controls the issuance of the read request accompanied by the invalidation request. The memory write-back control unit with an invalidation request 44 controls the issuance of the memory write-back request with an invalidation request.

【0059】他キャッシュ無効化指示制御部45は他の
ストアイン型キャッシュ内の該当ブロックに対する無効
化要求の発行を制御する。Sバスインタフェース制御部
46はSバスプロトコルを制御する。
The other cache invalidation instruction control unit 45 controls the issuance of the invalidation request to the corresponding block in the other store-in type cache. The SBus interface control unit 46 controls the SBus protocol.

【0060】本発明の他の実施例ではIO装置2−1〜
2−nでDMA転送長と予め設定されたキャッシュブロ
ック長値との比較を行い、それらの一致/不一致を報告
線103−1〜103−nを介してバスインタフェース
アダプタ4に報告するようにした以外は、本発明の一実
施例と同様に図2のフローチャートの各ステップの動作
を行う。
In another embodiment of the present invention, the IO devices 2-1 to 2-1
In 2-n, the DMA transfer length is compared with a preset cache block length value, and the match / mismatch is reported to the bus interface adapter 4 via the report lines 103-1 to 103-n. Other than that, the operation of each step of the flowchart of FIG. 2 is performed as in the embodiment of the present invention.

【0061】このように、IO装置2−1〜2−nによ
るDMAライト時にDMA転送長とキャッシュブロック
長値との比較を行い、その比較結果が一致を示すときに
メモリ書き戻し制御部17を駆動してその目標ブロック
に対する無効化要求を伴うメモリ書き戻し要求をSバス
インタフェース制御部19を介してSバス100上に発
行し、DMAライトのライトデータをメインメモリ3に
書込むようにすることによって、少量のハードウェアを
追加することで、IOキャッシュ制御方式を動的に切換
えることができるので、多様なIO装置2−1〜2−n
からくるDMAライト転送に応じてSバス100に対す
る負荷を軽減することができ、システムのスループット
を向上させることができる。
As described above, the DMA transfer length and the cache block length value are compared at the time of the DMA write by the IO devices 2-1 to 2-n, and when the comparison result shows a match, the memory write-back control unit 17 is operated. To drive and issue a memory write-back request accompanied by an invalidation request for the target block onto the SBus 100 via the SBus interface control unit 19 and write the write data of the DMA write into the main memory 3. Since the IO cache control method can be dynamically switched by adding a small amount of hardware, various IO devices 2-1 to 2-n can be used.
The load on the SBus 100 can be reduced according to the incoming DMA write transfer, and the system throughput can be improved.

【0062】[0062]

【発明の効果】以上説明したように本発明によれば、ダ
イレクトメモリアクセス転送における転送長と予め設定
されたデータ長との比較結果が一致を示すときにそのダ
イレクトメモリアクセス転送のデータをバスを介して主
記憶装置に書込むとともにそのデータに対応する複数の
装置各々のキャッシュメモリの内容を無効とすることに
よって、DMAライト転送時のSバスに対する負荷を軽
減することができ、システムのスループットを向上させ
ることができるという効果がある。
As described above, according to the present invention, when the comparison result of the transfer length in the direct memory access transfer and the preset data length show a match, the data of the direct memory access transfer is transferred to the bus. By writing the data to the main memory via the cache memory and invalidating the contents of the cache memory of each of the plurality of devices corresponding to the data, the load on the S bus at the time of DMA write transfer can be reduced, and the system throughput can be improved. There is an effect that it can be improved.

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

【図1】本発明の一実施例の構成を示すブロック図であ
る。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention.

【図2】本発明の一実施例の動作を示すフローチャート
である。
FIG. 2 is a flowchart showing the operation of the embodiment of the present invention.

【図3】本発明の他の実施例の構成を示すブロック図で
ある。
FIG. 3 is a block diagram showing the configuration of another embodiment of the present invention.

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

1,4 バスインタフェースアダプタ 2−1〜2−n DMA制御を有するIO装置 3 メインメモリ 11 デコーダ 12 キャッシュブロック長値保持部 13 比較器 14,41 IOバスインタフェース制御部 15,42 IOキャッシュ 16,43 無効化要求を伴う読出し制御部 17,44 無効化要求を伴うメモリ書き戻し制御部 18,45 他キャッシュ無効化指示制御部 19,46 Sバスインタフェース制御部 100 Sバス 101 IOバス 102 DMA転送長指示バス 103−1〜103−n DMA転送長−キャッシュブ
ロック長一致報告線
1,4 Bus interface adapter 2-1 to 2-n IO device having DMA control 3 Main memory 11 Decoder 12 Cache block length value holding unit 13 Comparator 14,41 IO bus interface control unit 15,42 IO cache 16,43 Read control unit with invalidation request 17,44 Memory write-back control unit with invalidation request 18,45 Other cache invalidation instruction control unit 19,46 S bus interface control unit 100 S bus 101 IO bus 102 DMA transfer length instruction Bus 103-1 to 103-n DMA transfer length-cache block length match report line

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 ストアイン型のキャッシュメモリを有す
る複数の装置と主記憶装置とが接続されるバスと、ダイ
レクトメモリアクセス転送を行う複数の入出力装置とを
接続しかつ前記ストアイン型のキャッシュメモリを有す
るバスインタフェースアダプタであって、前記ダイレク
トメモリアクセス転送における転送長を予め設定された
データ長と比較する比較手段と、前記比較手段の比較結
果が一致を示すときにそのダイレクトメモリアクセス転
送のデータを前記バスを介して前記主記憶装置に書込む
とともにそのデータに対応する前記複数の装置各々のキ
ャッシュメモリの内容を無効とする手段とを有すること
を特徴とするバスインタフェースアダプタ。
1. A store-in type cache which connects a bus to which a plurality of devices having a store-in type cache memory are connected to a main storage device and a plurality of input / output devices for direct memory access transfer. A bus interface adapter having a memory, the comparing means comparing the transfer length in the direct memory access transfer with a preset data length, and the direct memory access transfer of the direct memory access transfer when the comparison result of the comparing means indicates a match. A bus interface adapter comprising means for writing data to the main memory via the bus and invalidating the contents of the cache memory of each of the plurality of devices corresponding to the data.
【請求項2】 前記比較手段の比較結果が一致を示すと
きにそのダイレクトメモリアクセス転送のデータをスト
アイン制御によって前記キャッシュメモリに蓄積してか
ら前記主記憶装置に書込むよう制御する手段を含むこと
を特徴とする請求項1記載のバスインタフェースアダプ
タ。
2. When the comparison result of the comparison means indicates a match, the direct memory access transfer data is stored in the cache memory by store-in control and then written in the main storage device. The bus interface adapter according to claim 1, wherein:
【請求項3】 ストアイン型のキャッシュメモリを有す
る複数の装置と主記憶装置とが接続されるバスと、ダイ
レクトメモリアクセス転送を行う複数の入出力装置とを
接続しかつ前記ストアイン型のキャッシュメモリを有す
るバスインタフェースアダプタであって、前記複数の入
出力装置各々に設けられかつ前記ダイレクトメモリアク
セス転送における転送長を予め設定されたデータ長と比
較する比較手段と、前記比較手段の比較結果が一致を示
すときにそのダイレクトメモリアクセス転送のデータを
前記バスを介して前記主記憶装置に書込むとともにその
データに対応する前記複数の装置各々のキャッシュメモ
リの内容を無効とする手段とを有することを特徴とする
バスインタフェースアダプタ。
3. A store-in cache which connects a bus to which a plurality of devices having a store-in type cache memory are connected to a main storage device and a plurality of input / output devices for direct memory access transfer A bus interface adapter having a memory, comprising: a comparison unit provided in each of the plurality of input / output devices, for comparing a transfer length in the direct memory access transfer with a preset data length, and a comparison result of the comparison unit. A means for writing the data of the direct memory access transfer to the main memory device via the bus and indicating the contents of the cache memory of each of the plurality of devices corresponding to the data when the coincidence is shown. Bus interface adapter characterized by.
【請求項4】 前記比較手段の比較結果が一致を示すと
きにそのダイレクトメモリアクセス転送のデータをスト
アイン制御によって前記キャッシュメモリに蓄積してか
ら前記主記憶装置に書込むよう制御する手段を含むこと
を特徴とする請求項3記載のバスインタフェースアダプ
タ。
4. When the comparison result of the comparison means indicates a match, the direct memory access transfer data is stored in the cache memory by store-in control and then written in the main storage device. The bus interface adapter according to claim 3, characterized in that:
JP6132787A 1994-06-15 1994-06-15 Bus interface adapter Expired - Fee Related JP2748862B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6132787A JP2748862B2 (en) 1994-06-15 1994-06-15 Bus interface adapter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6132787A JP2748862B2 (en) 1994-06-15 1994-06-15 Bus interface adapter

Publications (2)

Publication Number Publication Date
JPH086856A true JPH086856A (en) 1996-01-12
JP2748862B2 JP2748862B2 (en) 1998-05-13

Family

ID=15089541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6132787A Expired - Fee Related JP2748862B2 (en) 1994-06-15 1994-06-15 Bus interface adapter

Country Status (1)

Country Link
JP (1) JP2748862B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009534767A (en) * 2006-04-25 2009-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Move data accessed by I / O devices

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0247756A (en) * 1987-07-27 1990-02-16 Computer X Inc Reading common cash circuit for multiple processor system
JPH02226448A (en) * 1989-01-13 1990-09-10 Internatl Business Mach Corp <Ibm> Input/output cash
JPH05100952A (en) * 1991-10-07 1993-04-23 Fuji Xerox Co Ltd Data processor
JPH06110844A (en) * 1992-08-11 1994-04-22 Toshiba Corp Decentralized shared memory type multiprocessor system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0247756A (en) * 1987-07-27 1990-02-16 Computer X Inc Reading common cash circuit for multiple processor system
JPH02226448A (en) * 1989-01-13 1990-09-10 Internatl Business Mach Corp <Ibm> Input/output cash
JPH05100952A (en) * 1991-10-07 1993-04-23 Fuji Xerox Co Ltd Data processor
JPH06110844A (en) * 1992-08-11 1994-04-22 Toshiba Corp Decentralized shared memory type multiprocessor system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009534767A (en) * 2006-04-25 2009-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Move data accessed by I / O devices

Also Published As

Publication number Publication date
JP2748862B2 (en) 1998-05-13

Similar Documents

Publication Publication Date Title
US6711650B1 (en) Method and apparatus for accelerating input/output processing using cache injections
JP3289661B2 (en) Cache memory system
US20020144064A1 (en) Controlling cache memory in external chipset using processor
CN1945557A (en) Memory controller and method for handling DMA operations during a page copy
JPH0997214A (en) Information-processing system inclusive of address conversion for auxiliary processor
US20030126369A1 (en) Cache memory eviction policy for combining write transactions
JPH09167116A (en) Computer cache system
US5511226A (en) System for generating snoop addresses and conditionally generating source addresses whenever there is no snoop hit, the source addresses lagging behind the corresponding snoop addresses
JP2695017B2 (en) Data transfer method
KR0175983B1 (en) Data processing system having demand based write through cache with enforced ordering
JP2708943B2 (en) Cache memory controller
JP2748862B2 (en) Bus interface adapter
JPH06103169A (en) Read data prefetching mechanism for central arithmetic processor
JP2001043204A (en) Cache memory controller
KR100258883B1 (en) The method and apparatus for cache memory control of multiprocessor
JPH0744459A (en) Cache control method and cache controller
JPH03172943A (en) Cache memory control system
JPH0756844A (en) Master-bus master used for computer system based on bus with system memory and computer system based on bus
AU617514B2 (en) Multiple processor/cache memory system and data transaction control therefor
CA2130407A1 (en) Store in cache having direct slave interface
JP2791319B2 (en) Data processing device
JPH06161891A (en) Computer system and cache control method for cache control means
JPH04123151A (en) System bus
JPH0535697A (en) Multi processor system
JP2923273B2 (en) Data processing system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees