JPH01315858A - Data transfer control method and device - Google Patents

Data transfer control method and device

Info

Publication number
JPH01315858A
JPH01315858A JP14768488A JP14768488A JPH01315858A JP H01315858 A JPH01315858 A JP H01315858A JP 14768488 A JP14768488 A JP 14768488A JP 14768488 A JP14768488 A JP 14768488A JP H01315858 A JPH01315858 A JP H01315858A
Authority
JP
Japan
Prior art keywords
data
address
buffer memory
main memory
memory
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
JP14768488A
Other languages
Japanese (ja)
Other versions
JP2534321B2 (en
Inventor
Tetsuya Mochida
哲也 持田
Shigeo Tsujioka
辻岡 重夫
Masami Naohara
直原 正己
Hitoshi Sadamitsu
貞光 均
Ichiji Kobayashi
一司 小林
Masataka Kobayashi
正隆 小林
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.)
Hitachi Ltd
Hitachi Micro Software Systems Inc
Original Assignee
Hitachi Ltd
Hitachi Micro Software Systems Inc
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 Hitachi Ltd, Hitachi Micro Software Systems Inc filed Critical Hitachi Ltd
Priority to JP63147684A priority Critical patent/JP2534321B2/en
Publication of JPH01315858A publication Critical patent/JPH01315858A/en
Application granted granted Critical
Publication of JP2534321B2 publication Critical patent/JP2534321B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE:To shorten the occupying time of a bus to which a main memory is connected, and to improve system processing ability by fetching and storing the data of the circumferential address of the access address beforehand with a single read access request. CONSTITUTION:A buffer memory 105 is provided at every channel between a processor bus 204 and a system bus 205, and according to the read access of a main memory 115 conforming to the request from channel devices 114-1 to 114-n, the data of the plural continuous address near the access address are transferred to the buffer memory 105. Further, whether or not the data corresponding to the next read access request have been stored into the buffer memory 105 is decided by a deciding circuit 202, and when they have been stored, the data of the access address are transferred from the buffer memory 105. Thus, the time of occupying the bus 204 to which the main memory 115 is connected is shortened, and the system processing ability can be improved.

Description

【発明の詳細な説明】[Detailed description of the invention]

1産業上の利用分野】 本発明は、電子計算機のDMA (ダイレクトメモリア
クセス)方式に係り、特に、DMA実行時のチャネル装
置による主メモリの占有時間を短縮するために好適なデ
ータ転送制御方法および装置に関する。 [従来の技術1 従来、DMA転送は、データの所定のブロックを単位と
して行われることが多い、しかし、チャネル装置にバー
スト転送の機能がないかぎり、従来のデータ転送装置で
は、−度のリードアクセス要求に対して当該データを転
送するだけのものであった。そのため、チャネル装置お
よび主メモリのアクセス時間は、ブロック転送であって
も相当に長いものとなっていた。 これに対し、特開昭61−246858号公報に記載さ
れているように、チャネル毎にバッファ装置を設け、チ
ャネル装置に主メモリからデータを取込む前に、見掛は
上、あたかもデータが転送されてきたかのような状態を
つくり1次のアクセス要求を早めに発行させ、主メモリ
からのデータフェッチとチャネル装置からのアクセス要
求とを並行して行う技術があった。
1. Field of Industrial Application The present invention relates to a DMA (direct memory access) system for electronic computers, and in particular, to a data transfer control method and method suitable for shortening the time that a channel device occupies main memory during DMA execution. Regarding equipment. [Conventional technology 1] Conventionally, DMA transfer is often performed in units of predetermined blocks of data. However, unless the channel device has a burst transfer function, conventional data transfer devices require -degree read access. It simply transferred the data in response to a request. Therefore, the access time for the channel device and main memory is quite long even for block transfer. On the other hand, as described in Japanese Patent Application Laid-Open No. 61-246858, a buffer device is provided for each channel, and before the data is loaded from the main memory into the channel device, the data is transferred as if it were transferred. There is a technique that creates a state in which it seems as if the data has been used, issues the primary access request early, and performs data fetch from the main memory and access request from the channel device in parallel.

【発明が解決しようとする課題] 上記従来の技術では、処理の速いチャネル装置のアクセス時間を短縮し、その処理能力をより一層発揮させることには有効であるが、主メモリの占有時間を短縮するという点では、配慮がなされておらず、他のチャネル装置およびCPUに対して主メモリを開放する時間を確保するという点では有効でないという内題があった。 本発明の目的は、主メモリの接続されているバスの、チャネル装置による占有時間を短縮し、システム全体、特にCPUの処理能力を充分に発揮させるようにすることにある。 【課題を解決するための手段】[Problem to be solved by the invention] The above conventional techniques are effective in shortening the access time of a fast-processing channel device and making full use of its processing capability, but no consideration has been taken in terms of shortening the time occupied by main memory. Therefore, there was a problem that it was not effective in securing time to release the main memory to other channel devices and CPUs. An object of the present invention is to reduce the time that a channel device occupies a bus to which a main memory is connected, and to fully utilize the processing power of the entire system, particularly the CPU. [Means to solve the problem]

上記[1的を達成するために、本発明者等は、DMAが
ブロックを単位として実行されることが多いことを利用
し、−度のリードアクセス要求で、予め次にアクセスさ
れる可箋性の高い当該アクセスアドレスの周囲のアドレ
スのデータを取込んで格納しておくことに想到した。 すなわち、本発明によるデータ転送制御方法は、それぞ
れプロセッサバスに接続された中央処理装置および主メ
モリと、システムバスに接続された1個以上のチャネル
装置を有するシステムにおいて該各チャネル装置と前記
主メモリとの間でDMA転送を行うデータ転送制御方法
であって、前記プロセッサバスと前記システムバスとの
間に各チャネルごとにバッファメモリを設け、前記チャ
ネル装置から前記主メモリへのソートアクセス要求に応
じた前記主メモリのワードアクセスに伴い、当該アクセ
スアドレス付近の連続した#i数のアドレスのデータを
前記バッファメモリに転送しておき、前記チャネル装置
から前記主メモリへの次回のリードアクセス要求に対し
、当該アクセスアドレスのデータが前記バッファメモリ
内に記憶されているか否かを判定し、該判定の結果、前
記バッファメモリ内に記t口されていることが判明した
場合には、前記バッファメモリがら当該アクセスアドレ
スのデータを当該チャネル装置に転送することを特徴と
するものである。 また、この方法を実施するためのデータ転送制御装置は
、それぞれプロセッサバスに接続さゎた中央処理装置お
よび主メモリと、システムバスに接続された1個以上の
チャネル装置を有するシステムにおいて該各チャネル装
置と前記主メモリとの間でDMA転送を行うデータ転送
制御装置てあって、前記プロセッサバスと前記システム
バスとの間に設けた各チャネルごとのバッファメモリと
、前記チャネル装置から前記主メモリへのリードアクセ
ス要求のアクセスアドレス付近の連続したアドレスのデ
ータをm記バッファメモリに転送する第1転送手段と、
前記バッファメモリから当該データを当該チャネル装置
に転送する第2転送手段とを備えたことを特徴とするも
のである。 前記第1転送手段は、例えば、前記チャネル装置から前
記主メモリへのリードアクセス要求に応して前記主メモ
リをリードアクセスした場合に、該アクセスアドレスの
データな昌該チャネル装置に直接転送するとともに、該
アクセスアドレス付近の連続したアドレスのデータを前
記バッファメモリに転送する。 前記データ転送制御装置において、さらに、前記バッフ
ァメモリに記憶したデータの前記主メモリ上のアドレス
を記憶するアドレス記憶手段と、前記チャネル装置から
前記主メモリへのリードアクセス要求時に、当該アクセ
ス要求アドレスと前記アドレス記憶手段に記憶されたア
ドレスとの一致不一致を判定する一致判定手段とを設け
、該−致判定手段の判定の結果に応じて前記第2転送手
段か前記バッファメモリから当該チャネル装置へのデー
タ転送を行うようにすることができる。 DMAがその開始から終了まで必ず連続したアドレスを
アクセスするようなインタフェースか採用されている場
合には、前記第2転送手段に、前記バッファメモリに対
して次にDMAリードアクセスか行われたときに転送さ
れるべきデータが記憶された前記バッファメモリのアド
レスを指示するポインタを設け、該ポインタの示すアド
レスのデータを当該チャネル装置へ転送するようにする
こともてきる。 前記バッファメモリまたは前記アドレス記憶手段に、前
記バッファメモリに記憶された各データか有効であるか
否かを示す有効ビットをも記憶させるようにして、該有
効ビットに応じて前記第2転送r段かデータ転送を行う
か否かを判断するようにしてもよい。 前記主メモリとしては、連続したアドレスのデータを高
速に転送する高速転送手段を有するメモリを採用し、前
記第1転送手段は、該高速転送手段により前記主メモリ
から前記バッファメモリへのデータ転送を行うようにす
ることが好ましい。 なお、DMA転送にサイクルスチール転送を採用した場
合にも、本発明は適用てきる。また1本発明のデータ転
送制御装置は、バッファメモリを含めてlチウプのLS
Iとして集積化することも可能である。 1作用】 本発明の好ましい態様の作用を説明する。 いずれかのチャネル装置から主メモリのリードアクセス
要求があったとき、前記第1転送手段か、アクセス要求
のあったアドレスのデータを直接当該チャネル装置に転
送するとともに、これに伴って当該アクセスアドレスの
周囲のアドレスのデータを、当該チャネルに対応するバ
ッファメモリに取込む。同時に、それぞれのデータか格
納されていた主メモリ上のアドレスを前記アドレス記憶
手段に格納し、また、対応する有効ビット(へリッドビ
ット)をセットする。次に、同一のチャネル装置からリ
ードアクセス要求かあった場合、当該アドレスのデータ
か既にバッファメモリ内に格納したデータであるか否か
を前記一致判定手段により判定し、一致が確認され、か
つ前記有効ビットがセットされていれば、主メモリをア
クセスすることなく、バッファメモリから当該チャネル
装置へ必要なデータを転送するように動作する。 このため、主メモリとCPUとが接続されているプロセ
ッサバスなアクセスする回数が減少し。 バス占有制御に要する時間が全体として短縮される。ま
た、バッファメモリへの転送に主メモリの高速アクセス
モードを利用すれば、主メモリのアクセスの際のアドレ
スの切換に要していた時間を短縮できる。 本発明によれば、このようにして、主メモリ、さらには
プロセッサバスな、各々のチャネル装置か占有している
時間を短縮することができる。 ]実施例】 以下1図面を参照しながら、本発明の実施例について詳
細に説明する。 まず、第1図に、本発明によるデータ転送装置を用いた
システムのブロック図を示す。このシステムでは、主メ
モリ(MS)115と中央処理装置(CPU)201と
がプロセッサバス204に接続され、他方、複数のチャ
ネル装置i!1l14−1〜114−nがシステムバス
119に接続され、両ハスの間に木発INjのデータ転
送制御装置101か位置している。 データ転送制御装置101は、バッファメモリ105と
、第1転送手段を構成する主メモリアクセス回路lll
と、第2転送手段を構成するバッファ出力回路112と
、セレクタ(SEL)113と、アドレス一致判定手段
を構成する判定回路202とからなる。 第1図のシステムの動作を説明する。 任意のチャネル装置からのリードアクセス要求に対して
、対応するデータかバッファメモリ105内に格納法か
否かを判定回路202が判定し、格納されていなければ
、主メモリアクセス回路111を起動し、格納されてい
ればバッファ出力回路112を起動する。 主メモリアクセス回路111はプロセッサバス204の
獲得要求を発し、獲得後、当該アクセスアドレスのデー
タ116を、セレクタ113を通じてシステムバス20
5上にデータ119として送出する。続くアクセスのデ
ータをバッファメモリ105にバースト転送により格納
する。 バッファ出力回路112が起動された場合は、プロセッ
サバス204の獲得要求は発生せず、CPU201がプ
ロセッサバス204のバスマスタとして主メモリ115
を占有し続ける。チャネル装置から要求されたデータは
バッファメモリ105より読出され、セレクタ113を
通じてデータ119としてシステムバス205上に出力
される。 第2図に、第1図に示したデータ転送制御装置101の
具体的な実施例を示す。同図において、第1図と同一の
構成要素および信号線には同一の参照符号を付しである
。 第2図において、バッファメモリ105は、チャネル対
応に105−1から105−nまで設けられ、各バッフ
ァメモリの大きさは、ここでは4段である。これらはス
タチックRAMにより構成される。また、本実施例では
バリッド(V)ビットおよびアドレスアレイ104をチ
ャネル対応に104−1から104−nまで有する。こ
れはレジスタ群により構成、される9その他、データ転
送制御装置101は、デマルチプレクサ(DMPX)1
02.103.セレクタ1.06.107、コンパレー
タ(CMP)  10 a、゛?ンドゲート109、イ
ンへ−夕110、−Lメ(:リアクセス回路111、バ
・ソ”7ア出力回路112、レジスタ121.  イン
クリメン8/122、セレクタ124を有4−ろ6コン
パレータ108は、アドレス一致判定手段を構成する。 また、セレクタ124、レジスタ121およびインクリ
メンタ122は、主メモリアクセス回路111とともに
第1転送手段を構成する。 なお、第2図ては便宜上、複数のチャネル装置な中−の
ブロック114て示している。 第2図装置の動作を説明する。 いま、チャネル装置114からリードアクセスのDMA
か要求されたとする。レジスタn104中のVビットは
初めすべて0に設定されており、アン1くゲート109
はネゲートされるので、インバータ110を通じtメモ
リアクセス回路111を起動する。同時にセレクタ11
3はハス116を選択する。にれにより、]]■−メモ
リ11へのり−l〜アクセスか行われ、リートデータ1
16かセレクタ113を通じてチャネル装置l 14に
送出される6またアクセスアドレス117かセレクタ1
24を介1ノてレジスタ121に格納される2この値は
インクリメンタ122を通り、現在アクセス中のアドレ
スの次のアドレスを生威し、デマルチプレクサ102に
より対応チャネルの゛ア1−レスアレイ104に格納さ
れ、同時にそのvビットに“l ”が立てられる。さら
に、このアドレスをもって主メモリ115かアクセスさ
れ、そのデータかデマルチプレクサ103により対応チ
ャネルのバッファメモリ105へ送出される。この格納
か終rすると、主メモリアクセス回路111はセレクタ
124を操作し、インクリメンタ122の出力123を
セレクタ124を介してレジスタ121にラッチさせる
。この結果、当初のアクセスアドレスの次のアドレスの
更に次のアドレスが生成され、このアドレスは、デマル
チプレクサ102を通し、アドレスアレイ104の対応
チャネルのアレイの第2段に格納され、そのVビットに
1°′か立てられる。このアドレスのデータもJEメモ
リ115からリードされ、バ・ンファメモリ105に格
納される。同様の動作か第3.第4段[1に対して繰り
返される。 主メモリ115をアクセスするためのプロセッサバスの
占有制御は、この間、最初の一度だけ行い、データの先
取り分のアクセスは、獲得した主メモリ115のアクセ
ス権を開放せずに連続して行う。また、主メモリ115
には、アクセスアドレスを固定したままて、4つの連続
するアドレスのデータをフェッチできるバースト転送モ
ードがあるものを採用し、バッファメモリへのデータ転
送にはこの高速転送モードを用いる。 同一のチャネル装置から次のDMAのリードアクセス要
求が発生したとき、アドレスアレイ104から対応チャ
ネルのVビットかセレクタ106を通じて、また、アド
レスかセレクタ107を通じてそれぞれ読出される。こ
のアドレスは、コンパレータ108を介してアクセス要
求のあったアドレス117と一致するか否かが判定され
る。この一致14定は4段のアドレスアレイについて並
列に行われる。これらの一致信号とVビットとがアンド
ゲート109に入力される。アクセスアドレスと一致す
るアドレスか存在し、かつそのVビットが1であれば、
アンドゲート109かアサートされ、バッファ出力回路
112が起動される。同時にセレクタ113はバッファ
メモリ105の出力120を選択する。このとき、主メ
モリアクセス回路lllは起動されないので、主メモリ
115へのアクセスは行われない、アドレスアレイ10
4のVビットは、当該チャネルからのDMA終了信号(
EOP)または当該アドレスへのライトアクセスをもっ
てクリアされる。 本実施例によれば、バッファメモリ105か各チャネル
に対して4段ずつ用意されているので、プロセッサバス
204の占有制御の回数は4分の1に減少する。また、
高速転送モードにより主メモリ115からデータをフェ
ッチすれば、DMAによるプロセッサバス204の占有
時間はさらに短縮される。 第3図に、本発明の第2実施例の構成を示す。 この実施例では、DMAは連続したアドレスでアクセス
を行うインタフェースとしている。そのため、第1実施
例に示したようなアドレスアレイを設けず、チャネル対
応のバッファメモリ301−1〜301−n中で次にア
クセスされるべきデータの格納されている位置を示すポ
インタ303−1〜303−nを設けている。図では、
バッファメモリが各チャネルごとに4段ずつ設けられて
いるので、ポインタは2ビツトとなる。 次に、第3図装置の動作を説明する。 まず、バッファメモリにデータが格納されていないとき
は、第1実施例と同様、バースト転送により主メモリ1
15からバッファメモリ301中の当該チャネルに対応
したメモリにデータか送られ、また、チャネル装置11
4に、当該アクセスアドレスのデータが送られる。次の
リードアクセス要求があったとき、当該チャネルに対応
するポインタ303の値から、対応のVビットか読出さ
れる。本実施例の場合、Vビットは、各段で変更判定す
る必要はないので、レジスタではなく。 データと同様スタティックRAMで構成されている。た
だし、ポインタ303はレジスタで構成する。読出され
たVビットには、先のアクセスて” 1”立てられてい
るので、バッファ出力回路112の働きにより、バ・シ
フアメモリ301内のデータがチャネル装21it4に
出力される。同時に、ポインタ303の値のうちセレク
タ307により当該チャネルのものが選択され、インク
リメンタ308を通り、デマルチプレクサ304により
元のポインタにインクリメントした値が格納される。ま
た、当該Vビットがクリアされる。Vビットか4段すべ
てについて“0°゛になったときに次のリードアクセス
要求が発生すれば、再び。 バースト転送により主メモリ115からバッファメモリ
301への取込みか行われる。同様の動作か緑り返され
、最後に転送終了信号(EOP) 309かチャネル装
置114から送出されたとき、リセット回路306がデ
マルチプレクサ305により当該チャネルのバッファメ
モリに働き、ポインタとVビットとをクリアする。 前記第1実施例では、DMAに、連続したアドレスでア
クセスするというインタフェースを設定する必要がなく
、広範なチャネル装置に本発明が適用できるという効果
がある。 前記第2実施例では、アドレスアレイにあたるレジスタ
群を必要としないので、少ないハードウェア量で本発明
を実施できるという効果がある。
In order to achieve the above [Objective 1], the present inventors took advantage of the fact that DMA is often executed in blocks, and developed a system that allows the next access to be performed in advance with - degree read access requests. We came up with the idea of capturing and storing data from addresses surrounding the access address with a high access address. That is, the data transfer control method according to the present invention provides a method for controlling each channel device and the main memory in a system having a central processing unit and a main memory each connected to a processor bus, and one or more channel devices connected to a system bus. A data transfer control method for performing DMA transfer between the processor bus and the system bus, the method comprising providing a buffer memory for each channel between the processor bus and the system bus, and responding to a sort access request from the channel device to the main memory. In response to the word access of the main memory, the data of consecutive #i addresses near the access address is transferred to the buffer memory, and in response to the next read access request from the channel device to the main memory. , determines whether or not the data at the access address is stored in the buffer memory, and if it is determined that the data is stored in the buffer memory, the data is deleted from the buffer memory. The feature is that the data of the access address is transferred to the channel device. Further, a data transfer control device for carrying out this method may be used in a system having a central processing unit and a main memory each connected to a processor bus, and one or more channel devices connected to a system bus. a data transfer control device that performs DMA transfer between the device and the main memory; the device includes a buffer memory for each channel provided between the processor bus and the system bus; and a data transfer control device for transferring data from the channel device to the main memory. a first transfer means for transferring data at consecutive addresses near the access address of the read access request to the m buffer memory;
and a second transfer means for transferring the data from the buffer memory to the channel device. For example, when the main memory is read accessed in response to a read access request from the channel device to the main memory, the first transfer means directly transfers the data at the access address to the channel device. , transfers data at consecutive addresses near the access address to the buffer memory. The data transfer control device further includes address storage means for storing an address on the main memory of the data stored in the buffer memory, and an address storage means for storing an address on the main memory of the data stored in the buffer memory; a match determining means for determining whether the address matches or does not match the address stored in the address storage means; and depending on the result of the determination by the match determining means, the second transfer means or the buffer memory transfers data from the buffer memory to the channel device. Data transfer can be performed. If an interface is adopted in which DMA always accesses consecutive addresses from the start to the end, the second transfer means has the following information: when the next DMA read access is made to the buffer memory. It is also possible to provide a pointer that indicates the address of the buffer memory where data to be transferred is stored, and to transfer the data at the address indicated by the pointer to the channel device. The buffer memory or the address storage means may also store a valid bit indicating whether each data stored in the buffer memory is valid, and the second transfer stage r may be transferred according to the valid bit. Alternatively, it may be determined whether or not data transfer is to be performed. As the main memory, a memory having a high-speed transfer means for transferring data at consecutive addresses at high speed is adopted, and the first transfer means transfers data from the main memory to the buffer memory using the high-speed transfer means. It is preferable to do so. Note that the present invention can also be applied when cycle steal transfer is adopted for DMA transfer. In addition, the data transfer control device of the present invention has a 1-chip LS including a buffer memory.
It is also possible to integrate it as I. 1 Effect] The effect of a preferred embodiment of the present invention will be explained. When there is a main memory read access request from any channel device, the first transfer means directly transfers the data at the address requested for access to the channel device, and also Data at surrounding addresses is taken into the buffer memory corresponding to the channel. At the same time, the address on the main memory where each data was stored is stored in the address storage means, and the corresponding valid bit (herid bit) is set. Next, when there is a read access request from the same channel device, the coincidence determining means determines whether the data at the address is data already stored in the buffer memory, and if a match is confirmed and the If the valid bit is set, the necessary data is transferred from the buffer memory to the channel device without accessing the main memory. Therefore, the number of accesses to the processor bus connecting the main memory and the CPU is reduced. The time required for bus occupancy control is reduced overall. Furthermore, if the high-speed access mode of the main memory is used for transfer to the buffer memory, the time required to switch addresses when accessing the main memory can be reduced. According to the invention, it is thus possible to reduce the time occupied by each channel device in the main memory and also in the processor bus. Embodiment] An embodiment of the present invention will be described in detail below with reference to one drawing. First, FIG. 1 shows a block diagram of a system using a data transfer device according to the present invention. In this system, a main memory (MS) 115 and a central processing unit (CPU) 201 are connected to a processor bus 204, while a plurality of channel devices i! 114-1 to 114-n are connected to the system bus 119, and the data transfer control device 101 of the tree INj is located between both lotuses. The data transfer control device 101 includes a buffer memory 105 and a main memory access circuit llll constituting the first transfer means.
, a buffer output circuit 112 constituting a second transfer means, a selector (SEL) 113, and a determination circuit 202 constituting an address coincidence determination means. The operation of the system shown in FIG. 1 will be explained. In response to a read access request from any channel device, the determination circuit 202 determines whether or not the corresponding data is stored in the buffer memory 105. If the data is not stored, the main memory access circuit 111 is activated; If stored, the buffer output circuit 112 is activated. The main memory access circuit 111 issues a request for acquisition of the processor bus 204, and after acquisition, the data 116 at the access address is transferred to the system bus 204 through the selector 113.
5 as data 119. Data for subsequent accesses is stored in the buffer memory 105 by burst transfer. When the buffer output circuit 112 is activated, no acquisition request for the processor bus 204 occurs, and the CPU 201 uses the main memory 115 as the bus master of the processor bus 204.
continue to occupy. Data requested by the channel device is read from the buffer memory 105 and output as data 119 onto the system bus 205 through the selector 113. FIG. 2 shows a specific embodiment of the data transfer control device 101 shown in FIG. 1. In this figure, the same components and signal lines as in FIG. 1 are given the same reference numerals. In FIG. 2, buffer memories 105 are provided corresponding to channels from 105-1 to 105-n, and the size of each buffer memory is four stages here. These are constituted by static RAM. Further, in this embodiment, valid (V) bit and address arrays 104 are provided corresponding to channels from 104-1 to 104-n. This is constituted by a group of registers 9 In addition, the data transfer control device 101 includes a demultiplexer (DMPX) 1
02.103. Selector 1.06.107, comparator (CMP) 10 a, ゛? The comparator 108 has an increment 8/122 and a selector 124. The selector 124, the register 121, and the incrementer 122 constitute the first transfer means together with the main memory access circuit 111. For convenience, FIG. The block 114 of FIG.
Suppose that a request is made. All V bits in register n104 are initially set to 0, and gate 109
Since t is negated, the t memory access circuit 111 is activated through the inverter 110. At the same time selector 11
3 selects lotus 116. As a result, ]] - access to memory 11 is performed, and read data 1 is accessed.
16 or the access address 117 or the selector 1 sent to the channel device l 14 through the selector 113.
This value is stored in the register 121 through the incrementer 122 through the incrementer 122, generates the address next to the address currently being accessed, and is sent to the address array 104 of the corresponding channel by the demultiplexer 102. is stored, and at the same time "l" is set in the v bit. Furthermore, the main memory 115 is accessed using this address, and the data is sent to the buffer memory 105 of the corresponding channel by the demultiplexer 103. When this storage is completed, the main memory access circuit 111 operates the selector 124 to latch the output 123 of the incrementer 122 into the register 121 via the selector 124. As a result, the next address after the original access address is generated, and this address is stored through the demultiplexer 102 in the second stage of the array of the corresponding channel of the address array 104, and is stored in the V bit of the address array 104. It can be erected by 1°'. Data at this address is also read from the JE memory 115 and stored in the buffer memory 105. Similar action? 3rd. Repeated for 4th stage [1. During this time, the processor bus occupancy control for accessing the main memory 115 is performed only once at the beginning, and accesses for preempted data are performed continuously without releasing the acquired access right to the main memory 115. In addition, the main memory 115
The system employs a burst transfer mode in which data at four consecutive addresses can be fetched while keeping the access address fixed, and this high-speed transfer mode is used for data transfer to the buffer memory. When the next DMA read access request is generated from the same channel device, the V bit of the corresponding channel is read out from the address array 104 through the selector 106 and the address through the selector 107, respectively. It is determined via the comparator 108 whether this address matches the address 117 requested for access. This matching is performed in parallel for four stages of address arrays. These match signals and the V bit are input to AND gate 109. If an address that matches the access address exists and its V bit is 1,
AND gate 109 is asserted and buffer output circuit 112 is activated. At the same time, selector 113 selects output 120 of buffer memory 105. At this time, main memory access circuit lll is not activated, so access to main memory 115 is not performed, and address array 10
The V bit of 4 is the DMA end signal (
EOP) or a write access to the address. According to this embodiment, four stages of buffer memory 105 are prepared for each channel, so the number of times the processor bus 204 is controlled to be occupied is reduced to one-fourth. Also,
If data is fetched from main memory 115 in high-speed transfer mode, the time that DMA occupies processor bus 204 is further reduced. FIG. 3 shows the configuration of a second embodiment of the present invention. In this embodiment, the DMA is an interface that performs access using consecutive addresses. Therefore, an address array as shown in the first embodiment is not provided, and a pointer 303-1 indicating the location where data to be accessed next is stored in the buffer memories 301-1 to 301-n corresponding to the channels. ~303-n are provided. In the diagram,
Since four stages of buffer memory are provided for each channel, the pointer has 2 bits. Next, the operation of the apparatus shown in FIG. 3 will be explained. First, when data is not stored in the buffer memory, burst transfer is performed to store the data in the main memory.
15 to the memory corresponding to the channel in the buffer memory 301, and the channel device 11
4, the data of the access address is sent. When the next read access request is made, the corresponding V bit is read from the value of pointer 303 corresponding to the channel. In the case of this embodiment, the V bit is not a register because it is not necessary to determine whether to change it at each stage. Like data, it is composed of static RAM. However, the pointer 303 is composed of a register. Since the read V bit has been set to "1" by the previous access, the data in the buffer memory 301 is outputted to the channel device 21it4 by the action of the buffer output circuit 112. At the same time, the selector 307 selects the value of the channel from among the values of the pointer 303, passes through the incrementer 308, and the incremented value is stored in the original pointer by the demultiplexer 304. Also, the V bit is cleared. If the next read access request occurs when the V bit reaches "0°" for all four stages, the next read access request occurs again.The data is read from the main memory 115 to the buffer memory 301 by burst transfer.Is the same operation? When the transfer end signal (EOP) 309 is finally sent out from the channel device 114, the reset circuit 306 operates on the buffer memory of the channel by the demultiplexer 305 and clears the pointer and the V bit. In the first embodiment, there is no need to set up an interface for accessing DMA using consecutive addresses, and the present invention can be applied to a wide variety of channel devices.In the second embodiment, a group of registers corresponding to an address array is used. Since this method does not require the following, there is an advantage that the present invention can be implemented with a small amount of hardware.

【発明の効果】【Effect of the invention】

本発明によれば、主メモリの接続されているバスかDM
Aにより占有されている時間か短縮されるので、cpu
か主メモリを占有する時間を長くすることができ、シス
テム全体、特にCPUの処理能力を高く発揮させること
かり能になる。
According to the present invention, the bus connected to the main memory or the DM
Since the time occupied by A is shortened, the CPU
The main memory can be occupied for a longer period of time, and the processing power of the entire system, especially the CPU, can be maximized.

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

第1図は1本発明によるデータ転送制御装置を用いるシ
ステムの概略ブロック図、第2図は本発明の一実施例の
ブロック図、第3図は本発明の他の実施例のブロック図
である。 101・・・データ転送制御装置 105・・・バッファメモリ Ill・・・主メモリアクセス回路 112・・・バッファ出力回路 114・・・チャネル装置 201・・−CPU 202−・・判定回路 204・・・プロセッサバス 205・・・システムバス 301・・・バッファメモリ 303・・・ポインタ
FIG. 1 is a schematic block diagram of a system using a data transfer control device according to the present invention, FIG. 2 is a block diagram of one embodiment of the present invention, and FIG. 3 is a block diagram of another embodiment of the present invention. . 101...Data transfer control device 105...Buffer memory Ill...Main memory access circuit 112...Buffer output circuit 114...Channel device 201...-CPU 202-...Determination circuit 204... Processor bus 205...System bus 301...Buffer memory 303...Pointer

Claims (1)

【特許請求の範囲】 1、それぞれプロセッサバスに接続された中央処理装置
および主メモリと、システムバスに接続された1個以上
のチャネル装置を有するシステムにおいて該各チャネル
装置と前記主メモリとの間でDMA転送を行うデータ転
送制御方法であって、 前記プロセッサバスと前記システムバスとの間に各チャ
ネルごとにバッファメモリを設け、前記チャネル装置か
ら前記主メモリへのリードアクセス要求に応じた前記主
メモリのリードアクセスに伴い、当該アクセスアドレス
付近の連続した複数のアドレスのデータを前記バッファ
メモリに転送しておき、 前記チャネル装置から前記主メモリへの次回のリードア
クセス要求に対し、当該アクセスアドレスのデータが前
記バッファメモリ内に記憶されているか否かを判定し、
該判定の結果、前記バッファメモリ内に記憶されている
ことが判明した場合には、前記バッファメモリから当該
アクセスアドレスのデータを当該チャネル装置に転送す
ることを特徴とするデータ転送制御方法。 2、それぞれプロセッサバスに接続された中央処理装置
および主メモリと、システムバスに接続された1個以上
のチャネル装置を有するシステムにおいて該各チャネル
装置と前記主メモリとの間でDMA転送を行うデータ転
送制御装置であって、 前記プロセッサバスと前記システムバスとの間に設けた
各チャネルごとのバッファメモリと、 前記チャネル装置から前記主メモリへのリードアクセス
要求のアクセスアドレス付近の連続したアドレスのデー
タを前記バッファメモリに転送する第1転送手段と、 前記バッファメモリから当該データを当該チャネル装置
に転送する第2転送手段とを備えたことを特徴とするデ
ータ転送制御装置。 3、前記第1転送手段は、前記チャネル装置から前記主
メモリへのリードアクセス要求に応じて前記主メモリを
リードアクセスした場合に、該アクセスアドレスのデー
タを当該チャネル装置に直接転送するとともに、該アク
セスアドレス付近の連続したアドレスのデータを前記バ
ッファメモリに転送することを特徴とする請求項2記載
のデータ転送制御装置。 4、さらに、前記バッファメモリに記憶したデータの前
記主メモリ上のアドレスを記憶するアドレス記憶手段と
、前記チャネル装置から前記主メモリへのリードアクセ
ス要求時に、当該アクセス要求アドレスと前記アドレス
記憶手段に記憶されたアドレスとの一致不一致を判定す
るアドレス一致判定手段とを備え、該一致判定手段の判
定の結果に応じて前記第2転送手段が前記バッファメモ
リから当該チャネル装置へのデータ転送を行うことを特
徴とする請求項2記載のデータ転送制御装置。 5、前記第2転送手段は、前記バッファメモリに対して
次にDMAリードアクセスが行われたときに転送される
べきデータが記憶された前記バッファメモリのアドレス
を指示するポインタを有し、該ポインタの示すアドレス
のデータを当該チャネル装置へ転送することを特徴とす
る請求項2記載のデータ転送制御装置。 6、前記バッファメモリまたは前記アドレス記憶手段は
、前記バッファメモリに記憶された各データが有効であ
るか否かを示す有効ビットをも記憶し、該有効ビットに
応じて前記第2転送手段はデータ転送を行うか否かを判
断することを特徴とする請求項4または5記載のデータ
転送制御装置。 7、前記主メモリとして、連続したアドレスのデータを
高速に転送する高速転送手段を有するメモリを採用し、
前記第1転送手段は、該高速転送手段により前記主メモ
リから前記バッファメモリへのデータ転送を行うことを
特徴とする請求項2記載のデータ転送制御装置。
[Claims] 1. In a system having a central processing unit and a main memory each connected to a processor bus, and one or more channel devices connected to a system bus, between each channel device and the main memory; 1. A data transfer control method for performing DMA transfer in a data transfer control method, wherein a buffer memory is provided for each channel between the processor bus and the system bus, and the main memory in response to a read access request from the channel device to the main memory Along with a memory read access, data at a plurality of consecutive addresses near the access address is transferred to the buffer memory, and in response to the next read access request from the channel device to the main memory, the data at the access address is determining whether data is stored in the buffer memory;
As a result of the determination, if it is found that the data is stored in the buffer memory, the data at the access address is transferred from the buffer memory to the channel device. 2. Data for performing DMA transfer between each channel device and the main memory in a system having a central processing unit and a main memory each connected to a processor bus, and one or more channel devices connected to a system bus. A transfer control device comprising: a buffer memory for each channel provided between the processor bus and the system bus; and data at consecutive addresses near the access address of a read access request from the channel device to the main memory. A data transfer control device comprising: a first transfer unit that transfers the data to the buffer memory; and a second transfer unit that transfers the data from the buffer memory to the channel device. 3. When the main memory is read accessed in response to a read access request from the channel device to the main memory, the first transfer means directly transfers the data at the access address to the channel device, and 3. The data transfer control device according to claim 2, wherein data at consecutive addresses near the access address is transferred to the buffer memory. 4. Further, address storage means for storing an address on the main memory of data stored in the buffer memory, and when a read access request from the channel device to the main memory is made, the access request address and the address storage means are stored. and address matching determining means for determining whether the stored address matches or does not match, and the second transfer means transfers data from the buffer memory to the channel device in accordance with the result of the determination by the matching determining means. The data transfer control device according to claim 2, characterized in that: 5. The second transfer means has a pointer that indicates an address of the buffer memory in which data to be transferred is stored when the next DMA read access is performed to the buffer memory, and the pointer 3. The data transfer control device according to claim 2, wherein data at an address indicated by is transferred to the channel device. 6. The buffer memory or the address storage means also stores a valid bit indicating whether each data stored in the buffer memory is valid, and according to the valid bit, the second transfer means transfers the data. 6. The data transfer control device according to claim 4, wherein the data transfer control device determines whether or not to perform the transfer. 7. As the main memory, a memory having high-speed transfer means for transferring data at consecutive addresses at high speed is adopted,
3. The data transfer control device according to claim 2, wherein said first transfer means transfers data from said main memory to said buffer memory using said high-speed transfer means.
JP63147684A 1988-06-15 1988-06-15 Data transfer control method and apparatus Expired - Lifetime JP2534321B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63147684A JP2534321B2 (en) 1988-06-15 1988-06-15 Data transfer control method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63147684A JP2534321B2 (en) 1988-06-15 1988-06-15 Data transfer control method and apparatus

Publications (2)

Publication Number Publication Date
JPH01315858A true JPH01315858A (en) 1989-12-20
JP2534321B2 JP2534321B2 (en) 1996-09-11

Family

ID=15435946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63147684A Expired - Lifetime JP2534321B2 (en) 1988-06-15 1988-06-15 Data transfer control method and apparatus

Country Status (1)

Country Link
JP (1) JP2534321B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100996A (en) * 1991-10-07 1993-04-23 Nippon Telegr & Teleph Corp <Ntt> Real time information transfer control system
JP2013012106A (en) * 2011-06-30 2013-01-17 Hitachi Ltd Control system and memory control method for control system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63111559A (en) * 1986-10-29 1988-05-16 Fujitsu Ltd Control system for direct memory access

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63111559A (en) * 1986-10-29 1988-05-16 Fujitsu Ltd Control system for direct memory access

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100996A (en) * 1991-10-07 1993-04-23 Nippon Telegr & Teleph Corp <Ntt> Real time information transfer control system
JP2013012106A (en) * 2011-06-30 2013-01-17 Hitachi Ltd Control system and memory control method for control system

Also Published As

Publication number Publication date
JP2534321B2 (en) 1996-09-11

Similar Documents

Publication Publication Date Title
JP2836321B2 (en) Data processing device
US3940743A (en) Interconnecting unit for independently operable data processing systems
US4799199A (en) Bus master having burst transfer mode
US4366538A (en) Memory controller with queue control apparatus
JPH0195346A (en) Bus master
US4371924A (en) Computer system apparatus for prefetching data requested by a peripheral device from memory
KR20060122934A (en) A multiple address two channel bus structure
US20030056075A1 (en) Shared memory array
US4344130A (en) Apparatus to execute DMA transfer between computing devices using a block move instruction
JPH0195345A (en) Bus master
US4914573A (en) Bus master which selectively attempts to fill complete entries in a cache line
JPH01315858A (en) Data transfer control method and device
KR920010977B1 (en) Memory bus architecture
US4737908A (en) Buffer memory control system
US5577228A (en) Digital circuit for performing multicycle addressing in a digital memory
US5887188A (en) Multiprocessor system providing enhanced efficiency of accessing page mode memory by master processor
JPS61165170A (en) Bus controlling system
JPS59214977A (en) Data processing device
JPH02110646A (en) Pre-readout device for memory
EP0501621A2 (en) Address prediction and verification for burst cycle data reads
KR950004249B1 (en) Method for data transmission between host and node computers of parallel processing system
JPH04348442A (en) Address converter
JPS6240565A (en) Memory control system
JPS63187349A (en) Memory device
CN115494761A (en) Digital circuit architecture and method for directly accessing memory by MCU

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080627

Year of fee payment: 12

EXPY Cancellation because of completion of term