JPS63167944A - Data transfer control method - Google Patents

Data transfer control method

Info

Publication number
JPS63167944A
JPS63167944A JP61315753A JP31575386A JPS63167944A JP S63167944 A JPS63167944 A JP S63167944A JP 61315753 A JP61315753 A JP 61315753A JP 31575386 A JP31575386 A JP 31575386A JP S63167944 A JPS63167944 A JP S63167944A
Authority
JP
Japan
Prior art keywords
data
block
memory
request
transfer
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.)
Pending
Application number
JP61315753A
Other languages
Japanese (ja)
Inventor
Hajime Fukuzawa
福澤 一
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 JP61315753A priority Critical patent/JPS63167944A/en
Publication of JPS63167944A publication Critical patent/JPS63167944A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To suppress a drop of the transfer efficiency by transferring a data from the head of the data to a transfer section data positioned in the end of a block boundary, and inhibiting the storage to a buffer memory of the data which is read out previously, when the subsequent data transfer is aborted. CONSTITUTION:An operation control unit 3 sends out a block boundary block read request for instructing an abortion of a data transfer in a block boundary, to a memory control unit 2. Its contents are transmitted to a request processing circuit 21, and the circuit 21 reads out a necessary data by referring to a buffer memory 20 by a received memory address, and continuously, a block data is read out successively. In this case, the circuit 21 reads out extending from the head of the necessary data to a transfer section data in the end of a block boundary, in accordance with an instruction of a received request designating part, inhibits read-out of the subsequent transfer section data, and also, inhibits a fact that a block data containing this unnecessary data is written onto the buffer memory.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、演算制御装置と主メモリ装置間のデータ転送
制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data transfer control system between an arithmetic control unit and a main memory device.

〔概要〕〔overview〕

本発明は、演算制御装置がブロックリードリクエストに
より所要のデータを一括して主メモリ装置から得る方法
において、 複数区分に分割されたブロック単位の転送データをアク
セスされたアドレス上の転送区分データからブロック境
界の最後に位置する転送区分データまでを演算制御装置
へ転送し、残りの転送区分データの転送を打ち切ること
により、 不要データを演算制御装置に転送することで生ずるデー
タ転送効率の低下を抑止することができるようにしたも
のである。
The present invention provides a method in which an arithmetic and control unit obtains required data all at once from a main memory device in response to a block read request. By transmitting the transfer section data up to the end of the boundary to the arithmetic control unit and discontinuing the transfer of the remaining transfer section data, the reduction in data transfer efficiency caused by transferring unnecessary data to the arithmetic control unit is suppressed. It has been made possible to do so.

〔従来の技術〕[Conventional technology]

大型情報処理システムでは、事務処理計算および科学技
術計算の両分野でデータ処理の高速化が求められており
、メモリ制御装置内に主メモリ内のデータの一部の写し
を有する高速のバッファメモリが設けられている。
In large-scale information processing systems, high-speed data processing is required in both the fields of business processing calculations and scientific and technical calculations, and a high-speed buffer memory that stores a copy of a portion of the data in the main memory is installed in the memory control unit. It is provided.

演算制御装置が必要とするデータを得るには、まずメモ
リ制御装置内のバッファメモリが索引され、所要データ
が存在するときには所要データがバッファメモリから演
算制御装置に転送され、存在しないときには主メモリ装
置に対してブロックデータ転送要求が行われ、メモリ制
御装置に所要データを先頭にしたブロックデータが数回
に分けて転送される。メモリ制御装置内では、このブロ
ックデータがバッファメモリに書き込まれるとともに先
頭の所要データが演算制御装置に直接転送される。
To obtain the data required by the arithmetic control unit, the buffer memory in the memory control unit is first indexed, and if the required data exists, it is transferred from the buffer memory to the arithmetic control unit, and if it does not exist, it is transferred to the main memory device. A block data transfer request is made to the memory control device, and the block data starting with the required data is transferred to the memory control device in several parts. Within the memory control device, this block data is written into a buffer memory, and the required data at the beginning is directly transferred to the arithmetic control device.

ここで、演算制御装置が必要とするデータを一括して得
るのにメモリ制御装置に対してブロックデータ転送要求
(以下、演算制御装置がメモリ制御装置に対して行うブ
ロックデータ転送要求をブロックリードリクエストとい
う。)を行う場合がある。この場合に、従来のデータ転
送制御方式では、メモリ制御装置内のバッファメモリ上
に所要データが存在するときにはバッファメモリ上の所
要ブロックデータを複数の区分に分割し、アクセスされ
たアドレス上の転送区分データを先頭として数回に分け
て、演算制御装置に所要ブロックデータのすべてを転送
する。存在しないときには主メモリ装置に対してブロッ
クデータ転送要求を行い、主メモリ装置から読み出され
る所要ブロックデータを複数の区分に分割し、アクセス
されたアドレス上の転送区分データを先頭として数回に
分けてメモリ制御装置に転送する。メモリ制御装置内で
は、このブロックデータをバッファメモリに書き込むと
ともに、アクセスされたアドレス上の転送区分データを
先頭として数回に分けて演算制御装置に対し直接に所要
ブロック転送データのすべてを転送するように制御して
いた。
Here, in order to obtain the data required by the arithmetic and control unit all at once, a block data transfer request is made to the memory control unit (hereinafter, a block data transfer request made by the arithmetic and control unit to the memory control unit is called a block read request). ) may be carried out. In this case, in the conventional data transfer control method, when the required data exists on the buffer memory in the memory control device, the required block data on the buffer memory is divided into multiple sections, and the transfer section at the accessed address is All required block data is transferred to the arithmetic and control unit in several batches, starting with the data. If the block data does not exist, a block data transfer request is made to the main memory device, the required block data read from the main memory device is divided into multiple sections, and the transfer section data at the accessed address is the first section. Transfer to memory controller. Inside the memory control unit, this block data is written to the buffer memory, and all of the required block transfer data is transferred directly to the arithmetic control unit in several batches, starting with the transfer classification data at the accessed address. was under control.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

ところで、演算制御装置が必要とするデータを一括して
得ることを目的にブロックリードリクエストを頻繁に行
う例としてアレイ演算の処理がある。科学技術計算の分
野では、メモリ上に規則正しく配列された大量のアレイ
データに対して同一の処理を高速で行うことが望まれて
おり、演算制御装置内の演算部に対してデータを高速に
転送する必要があり、演算制御装置はブロックリードリ
クエストによって必要とするデータを一括して読み出す
By the way, array calculation processing is an example of frequent block read requests for the purpose of obtaining data required by the calculation control device all at once. In the field of scientific and technical computing, it is desired to perform the same processing at high speed on large amounts of array data regularly arranged in memory, and it is necessary to transfer data at high speed to the arithmetic unit in the arithmetic control unit. The arithmetic and control unit reads the required data all at once in response to a block read request.

この場合に、上述した従来のデータ転送制御方式では、
アクセスされたアドレス上の転送区分データを先頭とし
て全ブロックデータが転送されることになる。例えばl
ブロックデータが64バイトである場合は、第3図で示
されるようにこの64バイトのブロックデータが演算制
御装置とメモリ制御装置の間のデータ転送幅で定まるデ
ータ長(この場合は8バイト)ごとに区分され、8回に
分けてブロックデータがすべて演算制御装置に転送され
る。ここで、この64バイトのブロックデータをブロッ
ク境界の先頭からブロック境界の最後までをワード番号
O〜7とし、演算制御装置が必要とするアレイデータが
ワード番号3のアドレス位置からアドレス増加方向へ連
続にメモリ上に配列されているとすると、演算制御装置
がブロックリードリクエストにより必要とするアレイデ
ータを一括して得ようとする場合は、アレイデータ0に
対応するアドレスでブロックリードリクエストをメモリ
制御装置に送出し、このアレイデータ0がメモリ制御装
置内のバッファメモリ上に存在しているといないとにか
かわらず、従来のデータ転送制御方式では、演算制御装
置に対してアレイデータOのワード番号3の転送区分デ
ータを先頭にしてひきつづきワード番号4〜7、ワード
番号0〜2の全ブロックデータを転送する。
In this case, in the conventional data transfer control method described above,
All block data will be transferred starting with the transfer classification data on the accessed address. For example l
When the block data is 64 bytes, as shown in Figure 3, the 64 bytes of block data are divided into data lengths (8 bytes in this case) determined by the data transfer width between the arithmetic control unit and the memory control unit. The block data is divided into 8 times and all transferred to the arithmetic and control unit. Here, the 64-byte block data from the beginning of the block boundary to the end of the block boundary are word numbers O to 7, and the array data required by the arithmetic control unit is continuous from the address position of word number 3 in the direction of increasing addresses. If the arithmetic and control unit wants to obtain the required array data all at once through a block read request, the memory control unit must send a block read request at the address corresponding to array data 0. In the conventional data transfer control method, word number 3 of array data O is sent to the arithmetic control unit, regardless of whether or not this array data 0 exists on the buffer memory in the memory control unit. All block data of word numbers 4 to 7 and word numbers 0 to 2 are successively transferred starting with the transfer classification data of .

このときにワード番号0〜2の転送区分データは演算制
御装置が必要としない不要データであり、この不要デー
タのワード番号O〜2のデータを演算制御装置に転送す
るのに生じるデータ転送速度の低下や演算制御装置内で
必要なデータと不要なデータの切り分けをする処理が生
じるなどの欠点がある。
At this time, the transfer classification data with word numbers 0 to 2 is unnecessary data that is not needed by the arithmetic control unit, and the data transfer rate that occurs when transferring the data of word numbers O to 2 of this unnecessary data to the arithmetic control unit. There are drawbacks, such as a decrease in performance and the process of separating necessary data from unnecessary data within the arithmetic and control unit.

さらに、メモリ制御装置内のバッファメモリ上に所要デ
ータが存在せず主メモリ装置から所要のブロックデータ
を読み出した場合には、この読み出されたブロックデー
タはメモリ制御装置内のバッファメモリ上に書き込まれ
ることになり、このブロックデータのバッファメモリ上
への書き込みが行われている間は、新たに演算制御装置
から送出されるリクエストはメモリ制御装置内でそのリ
クエストの処理が待たされることになる。すなわち、こ
の不要データを含むブロックデータをバッファメモリ上
に書き込むのに新たなリクエストの処理の遅れとバッフ
ァメモリの使用効率の低下が生じる欠点もある。
Furthermore, if the required data does not exist on the buffer memory in the memory control device and the required block data is read from the main memory device, this read block data is written onto the buffer memory in the memory control device. Therefore, while this block data is being written onto the buffer memory, processing of a new request sent from the arithmetic control unit is made to wait within the memory control unit. That is, writing block data containing unnecessary data onto the buffer memory has the disadvantage that processing of new requests is delayed and buffer memory usage efficiency is reduced.

本発明はこのような欠点を除去するもので、不要データ
を演算制御装置に転送することを禁止してデータ転送効
率を向上させることができるデータ転送制御方法を提供
することを目的とする。
The present invention aims to eliminate such drawbacks and provides a data transfer control method that can inhibit unnecessary data from being transferred to an arithmetic control unit and improve data transfer efficiency.

〔問題点を解決するための手段〕[Means for solving problems]

本発明は、主メモリ装置に記憶されたデータの一部をブ
ロック単位に保持するバッファメモリを経由して、ブロ
ック転送要求を発行した演算制御装置にこのバッファメ
モリに保持されたブロックデータを複数の区分に分割し
た区分のうち要求区分を先頭とする複数個の区分のデー
タを順次転送するデータ転送制御方法において、ブロッ
ク転送要求に係るデータが上記バッファメモリ上にある
ときは、このバッファメモリに格納されている複数の区
分のうち要求区分を先頭としてブロック境界の最後の区
分までのデータを上記演算制御手段に転送し、また、ブ
ロック転送要求が要求するデータが上記バッファメモリ
上にないときは、上記主メモリ装置からブロック転送要
求に係るデータを読み出し、この読み出したデータを上
記バッファメモリへの格納を禁止し、一方、この読み出
しデータを要求区分を先頭としてブロック境界の最後の
区分までの区分を上記演算制御手段に転送することを特
徴とする。
The present invention transfers block data held in this buffer memory to a calculation control unit that has issued a block transfer request via a buffer memory that holds a part of data stored in a main memory device in block units. In a data transfer control method that sequentially transfers data of multiple sections starting with the requested section among the sections divided into sections, when the data related to the block transfer request is on the buffer memory, it is stored in this buffer memory. Transfers the data from the requested section to the last section of the block boundary to the arithmetic control means among the plurality of sections that have been requested, and when the data requested by the block transfer request is not on the buffer memory, The data related to the block transfer request is read from the main memory device, storage of the read data in the buffer memory is prohibited, and the read data is divided into sections from the request section to the last section of the block boundary. It is characterized in that it is transferred to the arithmetic control means.

〔作用〕[Effect]

演算制御装置が必要とするデータがブロック境界の途中
から連続的に配置されていて、この必要とするデータを
一括して得るときに、必要とするデータの先頭からブロ
ック境界の最後のデータの転送までを行い以降のデータ
の転送を抑止する。
When the data required by the arithmetic control unit is placed continuously from the middle of the block boundary and the required data is obtained all at once, transfer of data from the beginning of the required data to the end of the block boundary. to prevent further data transfer.

また、メモリ制御装置内のバッファメモリ上に所要デー
タが存在せず主メモリ装置から所要のブロックデータを
読み出すときに、この不要データを含むブロックデータ
をバッファメモリに書き込むことを禁止する。
Further, when required data is not present on the buffer memory in the memory control device and required block data is read from the main memory device, writing of block data containing this unnecessary data to the buffer memory is prohibited.

〔実施例〕 以下、本発明実施例を図面に基づき説明する。〔Example〕 Embodiments of the present invention will be described below based on the drawings.

第1図は、本発明の実施例方式の構成を示すブロック構
成図である。第2図は、本発明の実施例方式での各種メ
モリのメモリデータ形式を示す概念図である。第2図で
若いアドレスが左側に位置し、ワード番号O〜7は8バ
イトごとのワード識別を示す。64バイト境界はアドレ
スが64で割り切れるアドレス位置を示す。
FIG. 1 is a block configuration diagram showing the configuration of an embodiment system of the present invention. FIG. 2 is a conceptual diagram showing memory data formats of various memories in the embodiment system of the present invention. In FIG. 2, young addresses are located on the left, and word numbers O to 7 indicate word identification for every 8 bytes. A 64-byte boundary indicates an address position where the address is evenly divisible by 64.

まず、この実施例方式の構成を第1図に基づき説明する
。この実施例方式は、主メモリ装置1と、メモリ制御装
置2と、演算制御装置3とを備えている。ここで、主メ
モリ装置1は、命令語やオペランドデータなどを記憶す
るメモリ部10と、メモリ制御装置2から送出されるメ
モリ部10をアクセスするアドレスを保持するアドレス
レジスタ11と、メモリ部10から読み出されたデータ
を保持するデータレジスタ12と、データレジスタ12
に読み出されたデータのメモリ制御装置2へのデータ送
出順序を選択するデータ選択回路13とを備えており、
また、メモリ制御装置2は、主メモリ装置1内のメモリ
部10から読み出されたデータの一部を保持するバッフ
ァメモリ20と、演算制御装置3によって指示される各
種のリクエストを処理するリクエスト処理回路21と、
主メモリ装置1から送出されるデータを保持するデータ
レジスタ22と、データレジスタ22の前半のデータと
後半のデータとを選択するデータ選択回路23と、バッ
ファメモリ20から読み出されたデータとデータ選択回
路23で選択されたデータとを選択するデータ選択回路
24と、演算制御装置3から送出され演算制御装置3が
必要とするデータのメモリアドレスと、そのリクエスト
の内容を指示するリクエスト指定部とをそれぞれ保持す
るリクエストアドレス受レジスタ25およびリクエスト
指定部受しジスタ26とを備え、また、演算制御装置3
は、公知の演算制御装置と同様の構成であり、主メモリ
装置からデータを読み出す必要のある装置例えば入出力
装置などを備える。また、主メモリ装置1、メモリ制御
装置2および演算制御装置3の間はインタフェース線1
00〜104で接続される。
First, the configuration of this embodiment system will be explained based on FIG. This embodiment system includes a main memory device 1, a memory control device 2, and an arithmetic control device 3. Here, the main memory device 1 includes a memory section 10 that stores instruction words, operand data, etc., an address register 11 that holds an address for accessing the memory section 10 sent from the memory control device 2, and a memory section 10 that stores instructions and operand data. a data register 12 that holds read data; and a data register 12
and a data selection circuit 13 that selects the order in which the data read out to the memory control device 2 is sent.
The memory control device 2 also includes a buffer memory 20 that holds part of the data read from the memory unit 10 in the main memory device 1, and a request processing unit that processes various requests instructed by the arithmetic control device 3. A circuit 21;
A data register 22 that holds data sent from the main memory device 1, a data selection circuit 23 that selects the first half data and the second half data of the data register 22, and data read from the buffer memory 20 and data selection. A data selection circuit 24 that selects the data selected by the circuit 23, a request specifying section that specifies the memory address of the data sent from the arithmetic control device 3 and required by the arithmetic control device 3, and the content of the request. It is equipped with a request address receiving register 25 and a request specifying part receiving register 26 which are held respectively, and also has a request address receiving register 25 and a request specifying part receiving register 26.
has the same configuration as a known arithmetic and control device, and includes a device such as an input/output device that needs to read data from a main memory device. Also, an interface line 1 is connected between the main memory device 1, memory control device 2, and arithmetic control device 3.
00 to 104 are connected.

次に、この実施例装置の動作を第1図、第2図および第
3図に基づき説明する。
Next, the operation of this embodiment device will be explained based on FIGS. 1, 2, and 3.

まず、メモリ制御装置2から演算制御装置3へのデータ
転送パス104のデータ幅は8バイトとし、主メモリ装
置1からメモリ制御装置2へのデータ転送パス101の
データ幅は16バイトとし、メモリ部10およびバッフ
ァメモリ20のブロックサイズは共に64バイトとする
。すなわち、メモリ部10およびバッファメモリ20か
らのブロックデータの転送時での1ブロック分のデータ
は、共に、64バイト境界からの64バイトデータにな
る。また、主メモリ装R1の回路素子はメモリ制御装置
2および演算制御装置3の回路素子より低速であり、そ
のマシンサイクルタイムは2倍に設定されている。すな
わち、メモリ制御装置2からみて主メモリ装置1からの
データ転送は2マシンサイクルで16バイトの割合であ
る。
First, the data width of the data transfer path 104 from the memory control device 2 to the arithmetic control device 3 is 8 bytes, and the data width of the data transfer path 101 from the main memory device 1 to the memory control device 2 is 16 bytes. 10 and buffer memory 20 are both 64 bytes in block size. That is, when transferring block data from the memory unit 10 and the buffer memory 20, one block of data is both 64-byte data from a 64-byte boundary. Further, the circuit elements of the main memory device R1 are slower than the circuit elements of the memory control device 2 and the arithmetic control device 3, and the machine cycle time thereof is set to be twice as fast. That is, from the perspective of the memory control device 2, data transfer from the main memory device 1 is at a rate of 16 bytes in 2 machine cycles.

さて、演算制御装置3で命令の取り出しまたはオペラン
ドの取り出しの必要が生じ、メモリ制御装置2にメモリ
リクエストが送出されるとする。
Now, suppose that the arithmetic control unit 3 needs to fetch an instruction or an operand, and a memory request is sent to the memory control unit 2.

ここで、演算制御装置3が必要とするデータを含むブロ
ックデータを一括して得る目的で通常のブロックリード
リクエストを送出する場合について述べる。演算制御装
置3は所要データのメモリアドレスおよび通常のブロッ
クリードリクエストを指定するリクエスト指定部をメモ
リ制御装置2へ送出し、それぞれの内容はリクエストア
ドレス受レジスタ25とリクエスト指定部受しジスタ2
6にそれぞれセットされる。次に、リクエストアドレス
受レジスタ25およびリクエスト指定部受しジスタ26
の内容はリクエスト処理回路21に伝えられる。
Here, a case will be described in which a normal block read request is sent for the purpose of obtaining block data including data required by the arithmetic and control device 3 all at once. The arithmetic control unit 3 sends the memory address of the required data and a request specifying section specifying a normal block read request to the memory control device 2, and the respective contents are stored in the request address receiving register 25 and the request specifying section receiving register 2.
6 respectively. Next, the request address receiving register 25 and the request specifying part receiving register 26
The contents of are transmitted to the request processing circuit 21.

所要データのメモリアドレスと通常のブロックリードリ
クエストを指定するリクエスト指定部の内容を受けたリ
クエスト処理回路21は、まず所要データのメモリアド
レスでバッファメモリ20を索引する。バッファメモリ
20に所要データが存在する場合は、その所要データが
読み出され、引き続きブロックデータが順次読み出され
る。すなわち、64バイトのブロックデータが8バイト
ごとの8つの転送区分データに分割され、8バイトの所
要データを先頭とした8つの転送区分データが順次読み
出され、データ選択回路24を経由して演算制御装置3
へ送出される。
The request processing circuit 21 receives the contents of the request specifying section specifying the memory address of the required data and a normal block read request, and first indexes the buffer memory 20 with the memory address of the required data. If the required data exists in the buffer memory 20, the required data is read out, and then the block data are sequentially read out. That is, the 64-byte block data is divided into 8 transfer section data of 8 bytes each, and the 8 transfer section data with the 8-byte required data at the beginning are sequentially read out and processed via the data selection circuit 24. Control device 3
sent to.

バッファメモリ20に所要データが存在しない場合は、
リクエスト処理回路21は所要データのメモリアドレス
と共に主メモリ装置1にブロックデータ転送要求を送出
する。主メモリ装置1では、この所要データのアドレス
がアドレスレジスタ11にセットされ、メモリ部10か
らデータの読み出しが行われる。メモリ部10から所要
データを含む64バイト境界からの64バイトデータが
読み出され、データレジスタ12に設定される。データ
レジスタ12に読み出されたブロックデータはデータ選
択回路13を経由して16バイトごとに4回に分けてメ
モリ制御装置2に送出される。
If the required data does not exist in the buffer memory 20,
The request processing circuit 21 sends a block data transfer request to the main memory device 1 along with the memory address of the required data. In the main memory device 1, the address of this required data is set in the address register 11, and the data is read from the memory section 10. 64-byte data including the required data from the 64-byte boundary is read from the memory unit 10 and set in the data register 12. The block data read into the data register 12 is sent to the memory control device 2 via the data selection circuit 13 in four parts every 16 bytes.

このときの64バイトのブロックデータのメモリ制御装
置2へのデータ転送順序は、例えば演算制御装置3から
の所要データのメモリアドレスがワード番号3に対応す
る位置を示していたとすると、ワード番号3〜7.0〜
2の順で64バイトのデータ転送が行わる。すなわち、
送出順序は、先頭は所要データのワード番号3および4
であり、2番目はワード番号5および6.3番目はワー
ド番号7および0.4番目はワード番号1および2であ
り、2ワードずつの組で順に送出される。
At this time, the data transfer order of the 64-byte block data to the memory control device 2 is, for example, if the memory address of the required data from the arithmetic control device 3 indicates the position corresponding to word number 3, word number 3 to 7.0~
Data transfer of 64 bytes is performed in the order of 2. That is,
The sending order starts with word numbers 3 and 4 of the required data.
The second word numbers are 5 and 6. The third word number is 7, and the 0.4th word numbers are 1 and 2. They are sequentially transmitted in groups of two words each.

さて、メモリ制御装置2では、主メモリ装置1から送出
されてきた各16バイトのデータがデータレジスタ22
にセットされ、前半8バイト、後半8バイトの順にデー
タ選択回路23で選択され、64バイトのデータがデー
タ選択回路24を経由して演算制御装置3へ直接送出さ
れるとともに、バッファメモリ20に書き込まれる。
Now, in the memory control device 2, each 16-byte data sent from the main memory device 1 is stored in a data register 22.
The first 8 bytes and the second 8 bytes are selected by the data selection circuit 23 in this order, and 64 bytes of data are directly sent to the arithmetic and control unit 3 via the data selection circuit 24 and written to the buffer memory 20. It will be done.

以上が通常のブロックリードリクエストの動作であるが
、これは従来のデータ転送制御方式と同様の動作である
The above is the operation of a normal block read request, which is similar to the conventional data transfer control method.

次に、本発明のデータ転送制御方式の特徴的な動作を述
べる。ここで、演算制御装置3がアレイデータの処理を
行い、必要とするアレイデータが第3図のようにワード
番号3のアドレス位置からアドレス増加方向へ連続にメ
モリ上に配置されているとする。演算制御袋w3はアレ
イデータの高速処理を行うためにアレイデータの先行フ
ェッチを行う目的でメモリ制御装置2に対してブロック
リードリクエストの送出を行う。この場合に、前述した
通常のブロックリードリクエストを送出すると、必要と
するワード番号3〜7までのデータの他にワード番号O
〜2までの不要データが演算制御装置3に転送されるの
で、不要データの転送によるデータ転送速度の低下や演
算制御装置3内で必要なデータと不要なデータの切り分
けをする処理が生じる。そこで演算制御装置3はブロッ
ク境界でデータ転送を打ち切ることを指示するブロック
リードリクエスト (以下、ブロック境界ブロックリー
ドリクエストという。)を送出する。すなわち、演算制
御装置3はアレイデータ0を示すメモリアドレスとブロ
ック境界ブロックリードリクエストを指定するリクエス
ト指定部をメモリ制御装置2へ送出し、このメモリアド
レスとリクエスト指定部はリクエストアドレス受レジス
タ25とリクエスト指定部受しジスタ26にそれぞれセ
ットされる。
Next, the characteristic operation of the data transfer control system of the present invention will be described. Here, it is assumed that the arithmetic and control unit 3 processes array data, and that the required array data is continuously arranged on the memory from the address position of word number 3 in the direction of increasing addresses as shown in FIG. The arithmetic control bag w3 sends a block read request to the memory control device 2 for the purpose of pre-fetching array data in order to perform high-speed processing of array data. In this case, if you send the above-mentioned normal block read request, in addition to the data of the required word numbers 3 to 7,
Since the unnecessary data up to 2 is transferred to the arithmetic and control device 3, the data transfer speed decreases due to the transfer of the unnecessary data, and processing for separating necessary data from unnecessary data occurs within the arithmetic and control device 3. Therefore, the arithmetic and control unit 3 sends a block read request (hereinafter referred to as block boundary block read request) instructing to terminate data transfer at the block boundary. That is, the arithmetic control unit 3 sends a memory address indicating array data 0 and a request specifying section specifying a block boundary block read request to the memory control device 2, and this memory address and request specifying section are sent to the request address receiving register 25 and the request specifying section. They are respectively set in the designated section receiving register 26.

リクエストアドレス受レジスタ25とリクエスト指定部
受しジスタ26の内容はリクエスト処理回路21に伝え
られ、リクエスト処理回路21は受は取ったメモリアド
レスでまずバッファメモリ20を索引する。バッファメ
モリ20に所要データが存在する場合は、その所要デー
タが読み出され、引き続きブロックデータが順次読み出
される。このときにリクエスト処理回路21は、受理し
たブロック境界ブロックリードリクエストを指定するリ
クエスト指定部の指示に従って、64バイトのブロック
データの内の8バイトの所要データを先頭としてブロッ
ク境界の最後の転送区分データまでを読み出し、以降の
転送区分データの読み出しを抑止する制御を行う。この
例の場合では、アレイデータO〜4に対応するワード番
号3〜7までの転送区分データまでが読み出され、以降
の不要データであるワード番号O〜2までの転送区分デ
ータは読み出されない。バッファメモリ20から読み出
されたこれらのワード番号3〜7までの転送区分データ
すなわちアレイデータ0〜4はデータ選択回路24を経
由して演算制御装置3へ送出される。
The contents of the request address receiving register 25 and the request specifying section receiving register 26 are transmitted to the request processing circuit 21, and the request processing circuit 21 first indexes the buffer memory 20 using the received memory address. If the required data exists in the buffer memory 20, the required data is read out, and then the block data are sequentially read out. At this time, the request processing circuit 21 transfers the last transfer classification data of the block boundary starting from the required data of 8 bytes of the 64-byte block data according to the instruction of the request specifying section that specifies the received block boundary block read request. control is performed to prevent reading of subsequent transfer classification data. In this example, the transfer section data of word numbers 3 to 7 corresponding to array data O to 4 are read out, and the subsequent unnecessary data of transfer section data of word numbers O to 2 are not read out. . The transfer classification data of word numbers 3 to 7 read from the buffer memory 20, that is, the array data 0 to 4, are sent to the arithmetic and control unit 3 via the data selection circuit 24.

バッファメモリ20に所要データが存在しない場合は、
リクエスト処理回路21は所要データのメモリアドレス
と共に主メモリ装置1にブロックデータ転送要求を送出
する。以降、主メモリ装置1からのブロックデータの読
み出しとメモリ制御装置2への送出は前述した通常のブ
ロックリードリクエストの場合と同様に行われる。すな
わち、メモリ部10から読み出された所要の64バイト
のブロックデータは、メモリ制御装置2に対してまずワ
ード番号3〜7、O〜2の順でデータ転送が行われる。
If the required data does not exist in the buffer memory 20,
The request processing circuit 21 sends a block data transfer request to the main memory device 1 along with the memory address of the required data. Thereafter, the reading of block data from the main memory device 1 and the sending to the memory control device 2 are performed in the same manner as in the case of the normal block read request described above. That is, the required 64-byte block data read from the memory unit 10 is first transferred to the memory control device 2 in the order of word numbers 3 to 7 and O to 2.

メモリ制御装置2では、主メモリ装置1から送出されて
きた各16バイトのデータがデータレジスタ22にセッ
トされ、前半8バイト、後半8バイトの順にデータ選択
回路23で選択される。演算制御装置3へのデータ転送
は、ブロック境界ブロックリードリクエストを指定する
リクエスト指定部の指示に従ったリクエスト処理回路、
21の制御に基づき、64バイトのブロックデータの内
所要データを先頭としたブロック境界の最後の転送区分
データすなわちワード番号3〜7 (アレイデータθ〜
4)までの転送区分データのみがデータ選択回路24を
経由して演算制御装置3へ送出され、以降のワード番号
O〜2の転送区分データの転送は打ち切られる。さらに
、このブロックデータのバッフアメモリ20への書き込
みもリクエスト処理回路21の制御によって抑止され、
新たに演算制御装置3から送出されるリクエストは待た
されることなく処理される。
In the memory control device 2, each 16-byte data sent from the main memory device 1 is set in a data register 22, and the data selection circuit 23 selects the first 8 bytes and the latter 8 bytes in this order. Data transfer to the arithmetic and control unit 3 is performed by a request processing circuit according to instructions from a request specifying section that specifies a block boundary block read request;
Based on the control of 21, the last transfer segment data at the block boundary with the required data at the beginning of the 64-byte block data, that is, word numbers 3 to 7 (array data θ to
Only the transfer classification data up to 4) is sent to the arithmetic and control unit 3 via the data selection circuit 24, and the transfer of the subsequent transfer classification data of word numbers O to 2 is discontinued. Furthermore, writing of this block data to the buffer memory 20 is also inhibited by the control of the request processing circuit 21,
New requests sent from the arithmetic and control unit 3 are processed without being made to wait.

以上が本発明のデータ転送制御方式の特徴とするブロッ
ク境界ブロックリードリクエストの動作であり、演算制
御装置3が必要とするアレイデータO〜4のみが演算制
御装置3に送出される。
The above is the operation of the block boundary block read request which is a feature of the data transfer control system of the present invention, and only the array data O to 4 required by the arithmetic and control device 3 are sent to the arithmetic and control device 3.

〔発明の効果〕〔Effect of the invention〕

本発明は、以上説明したように、演算制御装置が必要と
するデータがブロック境界の途中から連続的に配置され
ているデータの処理を行う場合に゛、例えばアレイデー
タの処理などを行う場合に、演算制御装置が必要とする
データを一括して得ようとして用いるブロックリードリ
クエストに対して、必要とするデータの先頭からブロッ
ク境界の最後のデータの転送までを行い以降のデータの
転送を抑止する手段が付加されているので、不要データ
を演算制御装置に転送するのに生じるデータ転送効率の
低下を改善でき、演算制御装置内で必要なデータと不要
なデータの切り分けに生じる無駄な処理などの削減を行
うことができる効果がある。
As explained above, the present invention is useful when processing data in which data required by an arithmetic and control unit is arranged continuously from the middle of a block boundary, such as when processing array data. , in response to a block read request used by the arithmetic control unit to obtain the data it needs all at once, it transfers the data from the beginning of the required data to the end of the block boundary, and prevents the transfer of subsequent data. Since the means is added, it is possible to improve the decrease in data transfer efficiency that occurs when unnecessary data is transferred to the arithmetic control unit, and to reduce wasteful processing that occurs when separating necessary data from unnecessary data within the arithmetic control unit. It has the effect of making a reduction.

さらに、メモリ制御装置内のバッファメモリ上に所要デ
ータが存在せず主メモリ装置から所要のブロックデータ
を読み出した場合には、この不要データを含むブロック
データをバッファメモリ上に書き込むことを禁止するの
で、新たに演算制御装置から送出されるリクエストを待
たせることなく処理が行われ、バッファメモリの使用効
率も改善できる効果がある。
Furthermore, if the required data does not exist on the buffer memory in the memory control device and the required block data is read from the main memory device, writing the block data containing this unnecessary data onto the buffer memory is prohibited. , processing is performed without having to wait for a new request sent from the arithmetic and control unit, and the efficiency of buffer memory usage can also be improved.

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

第1図は本発明実施例方式の構成を示すブロック構成図
。 第2図はメモリデータ形式を示す概念図。 第3図はアレイデータの配列図。 1・・・主メモリ装置、2・・・メモリ制御装置、3・
・・演算制御装置、lO・・・メモリ部、11・・・ア
ドレスレジスタ、12.22・・・データレジスタ、1
3.23.24・・・データ選択回路、20・・・バッ
ファメモリ、21・・・リクエスト処理回路、25・・
・リクエストアドレス受レジスタ、26・・・リクエス
ト指定部受しジスタ。
FIG. 1 is a block configuration diagram showing the configuration of an embodiment system of the present invention. FIG. 2 is a conceptual diagram showing the memory data format. FIG. 3 is an arrangement diagram of array data. 1... Main memory device, 2... Memory control device, 3.
...Arithmetic control unit, lO...Memory section, 11...Address register, 12.22...Data register, 1
3.23.24...Data selection circuit, 20...Buffer memory, 21...Request processing circuit, 25...
-Request address receiving register, 26...Request specification section receiving register.

Claims (1)

【特許請求の範囲】[Claims] (1)主メモリ装置に記憶されたデータの一部をブロッ
ク単位に保持するバッファメモリを経由して、ブロック
転送要求を発行した演算制御装置にこのバッファメモリ
に保持されたブロックデータを複数の区分に分割した区
分のうち要求区分を先頭とする複数個の区分のデータを
順次転送するデータ転送制御方法において、 ブロック転送要求に係るデータが上記バッファメモリ上
にあるときは、このバッファメモリに格納されている複
数の区分のうち要求区分を先頭としてブロック境界の最
後の区分までのデータを上記演算制御手段に転送し、ま
た、ブロック転送要求が要求するデータが上記バッファ
メモリ上にないときは、上記主メモリ装置からブロック
転送要求に係るデータを読み出し、この読み出したデー
タを上記バッファメモリへの格納を禁止し、一方、この
読み出しデータを要求区分を先頭としてブロック境界の
最後の区分までの区分を上記演算制御手段に転送する ことを特徴とするデータ転送制御方法。
(1) The block data held in this buffer memory is sent to the arithmetic and control unit that issued the block transfer request via a buffer memory that holds part of the data stored in the main memory device in blocks. In a data transfer control method that sequentially transfers data of multiple sections starting with the request section among the sections divided into sections, when the data related to the block transfer request is on the buffer memory, the data is stored in this buffer memory. The data starting from the requested segment and ending with the last segment at the block boundary is transferred to the arithmetic control means among the plurality of segments, and when the data requested by the block transfer request is not on the buffer memory, the data is transferred to the arithmetic control means. The data related to the block transfer request is read from the main memory device, storage of the read data in the buffer memory is prohibited, and the read data is divided into the sections starting from the request section and ending with the last section at the block boundary. A data transfer control method characterized by transferring data to an arithmetic control means.
JP61315753A 1986-12-29 1986-12-29 Data transfer control method Pending JPS63167944A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61315753A JPS63167944A (en) 1986-12-29 1986-12-29 Data transfer control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61315753A JPS63167944A (en) 1986-12-29 1986-12-29 Data transfer control method

Publications (1)

Publication Number Publication Date
JPS63167944A true JPS63167944A (en) 1988-07-12

Family

ID=18069131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61315753A Pending JPS63167944A (en) 1986-12-29 1986-12-29 Data transfer control method

Country Status (1)

Country Link
JP (1) JPS63167944A (en)

Similar Documents

Publication Publication Date Title
JPH07113903B2 (en) Cache storage control method
US5603006A (en) Cache control unit using a plurality of request stacks
JPH04314163A (en) Buffer managing system
US4314332A (en) Memory control system
JPS63201851A (en) Storage control system
US4737908A (en) Buffer memory control system
JPS63167944A (en) Data transfer control method
US6349370B1 (en) Multiple bus shared memory parallel processor and processing method
JP2540844B2 (en) Data transfer control method
JPH01125644A (en) Data transfer equipment
JPH0341856B2 (en)
JPS63167943A (en) Data transfer control method
JPS63196961A (en) Data transfer controlling method
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
JPS6027967A (en) Block transfer control system of buffer storage device
JP2687716B2 (en) Information processing device
JP2581144B2 (en) Bus control device
JPH0246967B2 (en)
JP3251198B2 (en) Data transfer device
JPH0685154B2 (en) Intermediate buffer control method
JPH02294755A (en) Data processor
JPS63259746A (en) Inter-bank-memory data transmission system
JPS63217460A (en) Buffer control circuit
JPS61206056A (en) Method for transferring memory data
JPH0425581B2 (en)