+

JPS63196961A - Data transfer controlling method - Google Patents

Data transfer controlling method

Info

Publication number
JPS63196961A
JPS63196961A JP62030567A JP3056787A JPS63196961A JP S63196961 A JPS63196961 A JP S63196961A JP 62030567 A JP62030567 A JP 62030567A JP 3056787 A JP3056787 A JP 3056787A JP S63196961 A JPS63196961 A JP S63196961A
Authority
JP
Japan
Prior art keywords
data
request
memory
block
arithmetic
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
JP62030567A
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 JP62030567A priority Critical patent/JPS63196961A/en
Publication of JPS63196961A publication Critical patent/JPS63196961A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To inhibit an unnecessary data from being transferred to an arithmetic and control unit, and to improve the data transfer efficiency by providing a request address receiving register, a request designating part receiving register, a request processing circuit, etc. CONSTITUTION:When an arithmetic and control unit 3 sends out a block read request for instructing to discontinue a data transfer at a block boundary, it is set to a request address receiving register 25 and a request designating part receiving register 26. Subsequently, a buffer memory 20 is indexed through a request processing circuit 21, and when a request data exists on the memory 20, a request partition is set as the head and a data up to the last partition of a block boundary is transferred to the unit 3, and the subsequent data transfer is discontinued. Also, when no request data exists on the memory 20, the request partition is set as the head and the data up to the last partition of the block boundary is transferred from a main memory device 1, and it is unnecessary data is not transferred to the unit 3, and the transfer efficiency of a data can be improved.

Description

【発明の詳細な説明】 (産業上の利用分野〕 本発明は、演算制御装置と主メモリ装置間のデータ転送
制御方法に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a data transfer control method 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 transferring the transfer section data up to the end of the boundary to the arithmetic control unit and aborting the transfer of the remaining transfer section data, it prevents the decline in data transfer efficiency caused by transferring unnecessary data to the arithmetic control unit. It was made so that it could be done.

本出願は同一出願人の同一名称の特許出願(昭和61年
12月29日出願)の改良である。
This application is an improvement of the patent application of the same name by the same applicant (filed on December 29, 1986).

〔従来の技術〕[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. 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 to the 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 sofa memory is divided into multiple sections, and the data is transferred at the accessed address. All required block data is transferred to the arithmetic and control unit in several batches, starting with the segmented 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 the memory controller. In the memory control unit, this block data is written to the buffer memory, and all of the required block data is transferred directly to the arithmetic control unit in several batches, starting with the transfer classification data at the accessed address. I was in control.

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

ところで、演算制御装置が必要とするデータを一括して
得ることを目的に、ブロックリードリクエストを頻繁に
行う例としてアレイ演算の処理がある。科学技術計算の
分野では、メモリ上に規則正しく配列された大量のアレ
イデータに対して同一の処理を高速で行うことが望まれ
ており、演算制御装置内の演算部に対してデータを高速
に転送する必要があり、そのため演算制御装置は、ブロ
ックリードリクエストによって、必要とするデータを一
括して読み出す。
Incidentally, 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. Therefore, the arithmetic and control unit reads the necessary data all at once in response to a block read request.

この場合に、上述した従来のデータ転送制御方法では、
アクセスされたアドレス上の転送区分データを先頭とし
て全ブロックデータが転送されることになる。例えば、
1ブロツクデータが64バイトである場合は、第4図で
示されるようにこの64バイトのブロックデータが演算
制御装置とメモリ制御装置との間のデータ転送幅で定ま
るデータ長くこのバイトは8バイト)ごとに区分され、
8回に分けてブロックデータがすべて演算制御装置に転
送される。ここで、この64バイトのブロックデータを
ブロック境界の先頭からブロック境界の最後までをワー
ド番号0〜7とし、演算制御装置が必要とするアレイデ
ータがワード番号3のアドレス位置からアドレス増加方
向へ連続にメモリ上に配列されているとすると、演算制
御装置がブロックリードリクエストにより必要とするア
レイデータを一括して得ようとする場合は、アレイデー
タ0に対応するアドレスでブロックリードリクエストを
メモリ制御装置に送出し、このアレイデータ0がメモリ
制御装置内のバッファメモリ上に存在していようといな
いとにかかわらず、従来のデータ転送制御方法では、演
算制御装置に対してアレイデータOのワード番号3の転
送区分データを先頭にして、ひきつづきワード番号4〜
7、ワード番号0〜2の全プロ7クデータを転送する。
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,
When one block of data is 64 bytes, as shown in Figure 4, this 64-byte block data is the data length determined by the data transfer width between the arithmetic control unit and the memory control unit (this byte is 8 bytes). It is divided into
All the block data is transferred to the arithmetic and control unit in eight batches. Here, the 64-byte block data from the beginning of the block boundary to the end of the block boundary is defined as word numbers 0 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. Starting with the transfer classification data of , continue from word number 4 to
7. Transfer all program data of word numbers 0 to 2.

このときに、ワード番号O〜2の転送区分デー夕は演算
制御装置が必要としない不要データであり、この不要デ
ータのワード番号0〜2のデータをメモリ制御装置内の
バッファメモリもしくは主メモリ装置内のメモリ部から
読み出して、演算制御装置に転送するのに生じる無駄な
メモリアクセス時間の増加や演算制御装置内で必要なデ
ータと不要なデータの切り分けをするための処理が生じ
るなどの欠点がある。
At this time, the transfer classification data with word numbers O to 2 is unnecessary data that is not needed by the arithmetic control unit, and the data of word numbers 0 to 2 of this unnecessary data is transferred to the buffer memory in the memory control unit or to the main memory. Disadvantages include an increase in unnecessary memory access time when reading data from the internal memory and transferring it to the arithmetic control unit, and processing to separate necessary data from unnecessary data within the arithmetic control unit. be.

さらに、メモリ制御装置内のバッファメモリ上に所要デ
ータが存在せず、主メモリ装置から所要のブロックデー
タを読み出した場合には、この読み出されたブロックデ
ータはメモリ制御装置内のバッファメモリ上に書き込ま
れることになり、この場合に、このブロックデータのバ
ッファメモリ上への書き込みが行われている間は、メモ
リ制御装置内で新たに演算制御装置から送出されるリク
エストの処理が待たされることになる。すなわち、この
不要データを含むブロックデータをバッファメモリ上に
書き込むのに新たなリクエストの処理の遅れとバッファ
メモリの使用効率の低下が生じる欠点もある。
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 will be stored on the buffer memory in the memory control device. In this case, while this block data is being written to the buffer memory, processing of a new request sent from the arithmetic control unit is forced to wait within the memory control unit. Become. 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.

本発明は、このような欠点を除去するもので、不要デー
タを演算制御装置に転送することを禁止してデータ転送
効率を向上させることができるデータ転送方法を提供す
ることを目的とする。
SUMMARY OF THE INVENTION An object of the present invention is to provide a data transfer method that can improve data transfer efficiency by prohibiting unnecessary data from being transferred to an arithmetic and control unit.

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

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

〔作用〕[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. and then terminates 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, word numbers O to 7 indicate word identification every 8 bytes, and 64-byte boundaries indicate address positions where addresses are divisible by 64.

まず、この実施例方式の構成を第1図に基づき説明する
。この実施例方式は、主メモリ装置1と、メモリ制御装
置2と、演算制御装置3とを備えている。ここで、主メ
モリ装置lは、命令語やオペランドデータなどを記憶す
るメモリ部10と、メモリ制御装置2から送出されるメ
モリ部10をアクセスするアドレスを保持するアドレス
レジスタ1)と、メモリ部10から読み出されたデータ
を保持するデータレジスタ12と、データレジスタ12
に読み出されたデータのメモリ制御装置2へのデータ送
出順序を選択するデータ選択回路13とを備える。
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 l includes a memory section 10 that stores instruction words, operand data, etc., an address register 1) that holds an address for accessing the memory section 10 sent from the memory control device 2, and a memory section 10. a data register 12 that holds data read from the 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.

第3図は、第1図中のアドレスレジスタ1)の構成例で
ある。第3図の例では0ビツト目を指示ビットとして用
い、1ビツト目以降をアドレスデータとして使用してい
る。この実施例方式では、0ビフト目の指示ビットは通
常のリクエストでは常に「0」に設定され、本発明の特
徴的な動作、すなわち、メモリ部10からのブロックデ
ータの読出しに際してアドレスレジスタ1)の1ビツト
目以降で示されるアドレス上のデータからブロック境界
の最後のデータまでを読み出し、残りのブロック内デー
タの読出しを抑止する動作を指示するときにrlJが設
定される。
FIG. 3 shows an example of the configuration of the address register 1) in FIG. 1. In the example shown in FIG. 3, the 0th bit is used as an instruction bit, and the 1st and subsequent bits are used as address data. In this embodiment method, the 0th bit instruction bit is always set to "0" in a normal request, and the address register 1) is rlJ is set when instructing an operation to read data from the address indicated by the first bit onwards to the last data at the block boundary and to inhibit reading of the remaining data within the block.

次に、メモリ制御装置2は、主メモリ装置1内のメモリ
部lOから読み出されたデータの一部を保持するバッフ
ァメモリ20と、演算1)1)1)装置3によって指示
される各種のリクエストを処理するリクエスト処理回路
21と、主メモリ装置lから送出されるデータを保持す
るデータレジスタ22と、データレジスタ22の前半の
データと後半のデータとを選択するデータ選択回路23
と、バッファメモリ20から読み出されたデータとデー
タ選択回路23で選択されたデータとを選択するデータ
選択回路24と、演算制御装置3から送出され演算l制
御装置3が必要とするデータのメモリアドレスと、その
リクエストの内容を指示するリクエスト指定部とをそれ
ぞれ保持するリクエストアドレス受レジスタ25および
リクエスト指定部受しジスタ26とを備える。
Next, the memory control device 2 has a buffer memory 20 that holds a part of the data read out from the memory unit 1O in the main memory device 1, and various types of calculations instructed by the device 3. A request processing circuit 21 that processes requests, a data register 22 that holds data sent from the main memory device l, and a data selection circuit 23 that selects the first half of the data and the second half of the data in the data register 22.
, a data selection circuit 24 that selects data read from the buffer memory 20 and data selected by the data selection circuit 23, and a memory for data sent from the arithmetic control device 3 and required by the arithmetic control device 3. A request address receiving register 25 and a request specifying part receiving register 26 are provided, each holding an address and a request specifying part indicating the contents of the request.

演算制御装置3は図示されてはいないが、公知の演算制
御装置と同様の構成であり、主メモリ装置1からデータ
を読み出す必要のある装置例えば、入出力装置なども備
える。また、主メモリ装置1、メモリ制御装置2、演算
制御装置3の間は、インタフェース線100〜104で
接続される。
Although not shown, the arithmetic and control device 3 has a similar configuration to a known arithmetic and control device, and also includes a device that needs to read data from the main memory device 1, such as an input/output device. Further, the main memory device 1, memory control device 2, and arithmetic control device 3 are connected through interface lines 100 to 104.

次に、この実施例装置の動作を第1図ないし第4図に基
づき説明する。
Next, the operation of this embodiment device will be explained based on FIGS. 1 to 4.

まず、メモリ制御装置2から演算制御装置3へのデータ
転送パス104のデータ幅は8バイトとし、主メモリ装
置lからメモリ制御装置2へのデータ転送パス101の
データ幅は16バイトとし、メモリ部10およびバッフ
ァメモリ20のブロックサイズは共に64バイトとする
。すなわち、メモリ部10およびバッファメモリ20か
らのブロックデータの転送時での1ブロック分のデータ
は、共に64バイト境界からの64バイトデータになる
。また、主メモリ装置1の回路素子はメモリ制御装置2
および演算制御装置30回路素子より低速であり、その
マシンサイクルタイムは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 l 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 1 are connected to the memory control device 2.
It is slower than the circuit elements of the arithmetic and control unit 30, and its machine cycle time is set to double. 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とリクエスト指定部受しジスタ
26にそれぞれセットされる。次に、リクエストアドレ
ス受レジスタ25とリクエスト指定部受しジスタ26の
内容はリクエスト処理回路21に伝えられる。所要デー
タのメモリアドレスと通常のブロックリードリクエスト
とを指定するリクエスト指定部の内容を受けたリクエス
ト処理回路21は、まず所要データのメモリアドレスで
バッファメモリ20を索引する。バッファメモリ20に
所要データが存在する場合は、その所要データが読み出
され、ひきつづきブロックデータが順次読み出される。
Here, a case will be described in which a normal block read request is sent for the purpose of collectively obtaining block data including data required by the arithmetic and control unit 3. The arithmetic control unit 3 sends the memory address of the required data and a request specifying part specifying a normal block read request to the memory control unit 2, and the respective contents are stored in the request address receiving register 25 and the request specifying part receiving register 26. Each is set. Next, 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. The request processing circuit 21 receives the contents of the request specifying section that specifies 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.

すなわち、64バイトのブロックデータが8バイトごと
の8つの転送区分データに分割され、8バイトの所要デ
ータを先頭とした8つの転送区分データが順次読み出さ
れ、データ選択回路24を通して演算制御装置3へ送出
される。
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 sent to the arithmetic control unit 3 through the data selection circuit 24. sent to.

バッファメモリ20に所要データが存在しない場合は、
リクエスト処理回路21は所要データのメモリアドレス
と共に主メモリ装置1にブロックデータ転送要求を送出
し、所要データのメモリアドレスはアドレスレジスタ1
)の1ビツト目以降にセントされる。このときに、リク
エスト処理回路21は同時にアドレスレジスタ1)のO
ビット目の指示ピントを0に設定する。
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, and the memory address of the required data is stored in the address register 1.
) is counted after the first bit. At this time, the request processing circuit 21 simultaneously outputs the address register 1).
Set the designated focus of the bit to 0.

主メモリ装置1では、メモリ部10から64バイトのブ
ロックデータの読出しが行われ、まずアクセスされた8
バイトの所要データと次の(アドレスがプラス8された
)8バイトのデータとが同時に読み出されてデータレジ
スタ12に設定される。以下同様に64バイトのブロッ
クデータが16バイトごとに順にデータレジスタ12に
読み出されて、データ選択回路13を経由して4回に分
けてメモリ制御装置2に送出される。このときの64バ
イトのブロックデータのメモリ制御装置2へのデータ転
送順序は、例えば、演算制御装置3からの所要データの
メモリアドレスがワード番号3に対応する位置を示して
いたとすると、ワード番号3〜7.0〜2の順になる。
In the main memory device 1, 64-byte block data is read from the memory unit 10, and first the accessed 8
The required data of the byte and the next 8 bytes of data (address plus 8) are read out simultaneously and set in the data register 12. Similarly, the 64-byte block data is sequentially read into the data register 12 every 16 bytes, and sent to the memory control device 2 in four parts via the data selection circuit 13. At this time, the order of data transfer 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 a position corresponding to word number 3, word number 3 ~7.0~2.

すなわち、送出順序は、先頭は所要データのワード番号
3および4であり、2番目はワード番号5および6.3
番目はワード番号7および0,4番目はワード番号1お
よび2であり、2ワードずつの組で順に送出される。
In other words, the transmission order is that the first word number of the required data is 3 and 4, and the second word number is 5 and 6.3.
The th word is word number 7, the 0th word is word number 1, and the 4th word is word number 1 and 2, and they are sequentially sent out in sets of two words each.

さて、メモリ制御装置2では、主メモリ装置1から送出
されてきた各16バイトのデータがデータレジスタ22
にセットされ、前半8バイト、後半8バイトの順にデー
タ選択回路23で選択され、64バイトのデータがデー
タ選択回路24を経由して演算制御装置3へ直接送出さ
れるとともにバッファメモリ2Gに書き込まれる。
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 latter 8 bytes are selected by the data selection circuit 23 in this order, and 64 bytes of data are sent directly to the arithmetic and control unit 3 via the data selection circuit 24 and written to the buffer memory 2G. .

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

次に、本発明のデータ転送制御方式の特徴的な動作を述
べる。演算制御装置3がアレイデータの処理を行い、必
要とするアレイデータが第4図のようにワード番号3の
アドレス位置からアドレス増加方向へ連続にメモリ上に
配列されていたとする。演算制御装置3はアレイデータ
の高速処理を行う際にアレイデータの先行フェッチを行
う目的でメモリ制御装置2に対してブロックリードリク
エストの送出を行う、この場合に、前述した通常のブロ
ックリードリクエストを送出すると、必要とするワード
番号3〜7までのデータの他にワード番号θ〜2までの
不要データが演算制御装置3に転送され、したがって、
不要データの読出しと転送による無駄なメモリアクセス
時間の増加や演算制御装置3内で必要なデータと不要な
データの切分は処理とが生ずる。
Next, the characteristic operation of the data transfer control system of the present invention will be described. Assume 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 unit 3 sends a block read request to the memory control unit 2 for the purpose of pre-fetching array data when performing high-speed processing of array data. When sent, in addition to the necessary data of word numbers 3 to 7, unnecessary data of word numbers θ to 2 are transferred to the arithmetic and control unit 3, and therefore,
Reading and transferring unnecessary data increases wasteful memory access time, and processing is required to separate necessary data from unnecessary data within the arithmetic control unit 3.

そこで、演算制御装置3はブロック境界でデータ転送を
打ち切ることを指示するブロックリードリクエスト(以
下、ブロック境界ブロックリードリクエストという、)
を送出する。すなわち、演算制御装置3はアレイデータ
0を示すメモリアドレスとブロック境界ブロックリード
リクエストを指定するリクエスト指定部をメモリ制御装
置2へ送出する。そして、このメモリアドレスとリクエ
スト指定部はリクエストアドレス受レジスタ25とリク
エスト指定部受しジスタ26にそれぞれセットされる。
Therefore, the arithmetic and control unit 3 issues a block read request (hereinafter referred to as block boundary block read request) instructing to terminate data transfer at the block boundary.
Send out. That is, the arithmetic control device 3 sends to the memory control device 2 a memory address indicating array data 0 and a request specifying section specifying a block boundary block read request. The memory address and request designation section are set in the request address receiving register 25 and the request designation section receiving register 26, respectively.

リクエストアドレス受レジスタ25とリクエスト指定部
受しジスタ26の内容はリクエスト処理回路21に伝え
られ、リクエスト処理回路21は受は取ったメモリアド
レスで、まず、バッファメモ1J20を索引する。バッ
ファメモリ20に所要データが存在する場合は、その所
要データが読み出され、引き続きブロックデータが順次
読み出される。このときに、リクエスト処理回路21は
受理したブロック境界ブロックリードリクエストを指定
するリクエスト指定部の指示に従って、64バイトのブ
ロックデータの内の8バイトの所要データを先頭として
ブロック境界の最後の転送区分データまでを読み出し、
以降の転送区分データの読出しを抑止するように制御す
る。この例の場合では、アレイデータO〜4に対応する
ワード番号3〜7までの転送区分データまでが読み出さ
れ、以降の不要データであるワード番号0〜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 memo 1J20 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 starts with the required data of 8 bytes of the 64-byte block data and transfers the last transfer classification data of the block boundary according to the instruction of the request specifying section that specifies the received block boundary block read request. Read up to
Control is performed to inhibit subsequent reading of 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 0 to 2 are not read out. . The transfer classification data of word numbers 3 to 7, that is, array data 0 to 4, read from the buffer memory 20 are sent to the arithmetic and control unit 3 through the data selection circuit 24.

バッファメモリ20に所要データが存在しない場合は、
リクエスト処理回路21は所要データのメモリアドレス
と共に主メモリ装置1にブロックデータ転送要求を送出
し、所要データのメモリアドレスはアドレスレジスタ1
)の1ビツト目以降にセットされる。このときに、リク
エスト処理回路21は同時′に所要データからブロック
境界の最後のデータまでのデータ転送を指示する目的で
アドレスレジスタ1)の0ビツト目の指示ビットを1に
設定する。
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, and the memory address of the required data is stored in the address register 1.
) is set after the first bit. At this time, the request processing circuit 21 simultaneously sets the 0th instruction bit of the address register 1) to 1 for the purpose of instructing data transfer from the required data to the last data at the block boundary.

主メモリ装置1では、メモリ部10からアドレスレジス
タ1)の1ビツト目以降で示されるメモリアドレス上の
所要データからブロック境界の最後のデータまでの読出
しが行われる。まず、アクセスされた8バイトの所要デ
ータと次の(アドレスがプラス8された)8バイトのデ
ータが同時に読み出される。以降、ブロック内データが
16バイトごとに順次読み出され、ブロック境界の最後
のデータであるワード番号7のデータを含む16バイト
のデータまでが読み出されると、メモリ部10からのデ
ータの読出しが終了する0本実施例では、先頭はワード
番号3と4のデータが読み出され、以降ワード番号5と
6、ワード番号7と0のデータが順次読み出され、ワー
ド番号lと2のデータの読出しは行われない。ここで、
演算制御装置3が必要とするデータはワード番号3〜7
までのデータであるので、本実施例のようにワード番号
7のデータと組になるデータが不要データになる場合は
、そのデータはどのようなデータであっても構わない、
メモリ部10から読み出されたデータは、順次データレ
ジスタ12に設定され、データ選択回路13を経由して
メモリ制御装置2へ送出される。
In the main memory device 1, reading is performed from the memory unit 10 to the required data on the memory address indicated by the first bit and subsequent bits of the address register 1) up to the last data at the block boundary. First, the accessed 8-byte required data and the next 8-byte data (address plus 8) are read simultaneously. Thereafter, the data in the block is sequentially read out every 16 bytes, and when up to 16 bytes of data including the data of word number 7, which is the last data at the block boundary, is read out, the reading of data from the memory unit 10 ends. 0 In this embodiment, the data of word numbers 3 and 4 are read out at the beginning, then the data of word numbers 5 and 6, the data of word numbers 7 and 0 are read out sequentially, and the data of word numbers l and 2 is read out. will not be performed. here,
The data required by the arithmetic control unit 3 are word numbers 3 to 7.
Therefore, if the data paired with the data of word number 7 is unnecessary data as in this example, it does not matter what kind of data it is.
Data read from the memory section 10 is sequentially set in the data register 12 and sent to the memory control device 2 via the data selection circuit 13.

メモリ制御装置2では、主メモリ装置1から送出されて
きた各16バイトのデータがデータレジスタ22にセッ
トされ、前半8バイト、後半8バイトの順にデータ選択
回路23で選択される。演算制御装置3へのデータ転送
は、ブロック境界ブロックリードリクエストを指定する
リクエスト指定部の指示に従ったリクエスト処理回路2
1の制御によって、所要データを先頭としたブロック境
界の最後の転送区分データすなわちワード番号3〜7 
(アレイデータθ〜4)までの転送区分データのみがデ
ータ選択回路24を通して演算制御装置3へ送出され、
ワード番号7のデータ(アレイデータ4)と共に送出さ
れてきた不要データ(本実施例ではワード番号0のデー
タ)は送出されない、また、バッファメモリ20内のデ
ータはlプロ、クデータ単位ごとに管理されており、こ
の主メモリ装置1から送出されてきたデータはlブロッ
クデータに満たないので、リクエスト処理回路21の制
御によってバッファメモリ20への書込みは抑止される
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 the request processing circuit 2 according to instructions from a request specifying section that specifies a block boundary block read request.
1, the last transfer segment data at the block boundary with the required data at the beginning, that is, word numbers 3 to 7.
Only the transfer classification data (array data θ to 4) is sent to the arithmetic and control unit 3 through the data selection circuit 24,
Unnecessary data (word number 0 data in this embodiment) that has been sent out together with word number 7 data (array data 4) is not sent out, and the data in the buffer memory 20 is managed for each program and data unit. Since the data sent from the main memory device 1 is less than l block data, writing to the buffer memory 20 is inhibited under the control of the request processing circuit 21.

この結果として、新たに演算制御装置!3から送出され
るリクエストは待たされることなく処理される。
As a result of this, a new arithmetic and control device! Requests sent from 3 are processed without waiting.

以上が本発明のデータ転送制御方式の特徴とするブロッ
ク境界ブロックリードリクエストの動作であり、演算制
御装置3が必要とするアレイデータθ〜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 θ 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 applicable when processing data in which data required by an arithmetic and control unit is arranged continuously from the middle of a block boundary, for example 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, reads the required data from the beginning of the data to the end of the block boundary from the buffer memory or the memory section in the main memory device. Since a means for transferring the data to the arithmetic and control unit is added, unnecessary access time that occurs when reading unnecessary data from the buffer memory or the memory section in the main memory device and transferring it to the arithmetic and control unit is saved, and the unnecessary data is saved in the arithmetic and control unit. This has the effect of reducing wasteful processing associated with separating necessary data from unnecessary data.

さらに、メモリ制御装置内のバッファメモリ上に所要デ
ータが存在せず主メモリ装置から所要のデータからブロ
ック境界の最後のデータまでの読出しを行った場合には
、これらのデータはバッファメモリ上に書き込まれない
ので、新たに演算制御装置から送出されるリクエストを
待たせることなく処理を行える効果もある。
Furthermore, if the required data does not exist on the buffer memory in the memory control device and the required data is read from the main memory device up to the last data at the block boundary, these data will not be written to the buffer memory. Therefore, there is an effect that processing can be performed without having to wait for a new request sent from the arithmetic and control unit.

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

第1図は本発明実施例方式の構成を示すブロック構成図
。 第2図はメモリデータ形式を示す概念図。 第3図は第1図に示すアドレスレジスタの構成図。 第4図はアレイデータの配列図。 1・・・主メモリ装置、2・・・メモリ制御装置、3・
・・演算制御装置、10・・・メモリ部、1)・・・ア
ドレスレジスタ、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 a configuration diagram of the address register shown in FIG. 1. FIG. 4 is an arrangement diagram of array data. 1... Main memory device, 2... Memory control device, 3.
...Arithmetic control unit, 10...Memory section, 1)...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 the buffer memory is divided into multiple sections by the arithmetic control means that issued the block transfer request via the buffer memory that holds part of the data stored in the main memory device in block units. In a data transfer control method that sequentially transfers data of multiple sections among the divided sections, starting with the request section, when the data related to the block transfer request is on the buffer memory, the data is stored in this buffer memory. out of the plurality of divisions in which the requested division is located, the data up to the last division at the block boundary is transferred to the arithmetic control means, 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. Data characterized in that the data from the request section to the last section of the block boundary is read from the memory device and transferred to the arithmetic control means, while the read data is prohibited from being stored in the buffer memory. Transfer control method.
JP62030567A 1987-02-10 1987-02-10 Data transfer controlling method Pending JPS63196961A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62030567A JPS63196961A (en) 1987-02-10 1987-02-10 Data transfer controlling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62030567A JPS63196961A (en) 1987-02-10 1987-02-10 Data transfer controlling method

Publications (1)

Publication Number Publication Date
JPS63196961A true JPS63196961A (en) 1988-08-15

Family

ID=12307406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62030567A Pending JPS63196961A (en) 1987-02-10 1987-02-10 Data transfer controlling method

Country Status (1)

Country Link
JP (1) JPS63196961A (en)

Similar Documents

Publication Publication Date Title
EP0054888B1 (en) Data-processing system with main and buffer storage control
EP0425849B1 (en) Data memory access
JPH02227763A (en) Data transfer control system
US20050060441A1 (en) Multi-use data access descriptor
US4639862A (en) Computer system
US4314332A (en) Memory control system
JPH03189843A (en) System and method for processing data
US4737908A (en) Buffer memory control system
JPS63196961A (en) Data transfer controlling method
JPS6261132A (en) Control system for data transfer instruction
JPH01125644A (en) Data transfer equipment
JP2540844B2 (en) Data transfer control method
JPS63167944A (en) Data transfer control method
JPS63167943A (en) Data transfer control method
JPH0341856B2 (en)
JPH0246967B2 (en)
JP2687716B2 (en) Information processing device
JP2594611B2 (en) DMA transfer control device
JP2581144B2 (en) Bus control device
JPS62144265A (en) Data transfer method
JPH0425581B2 (en)
JP2589006B2 (en) Information processing device
JPS62186328A (en) Sort processing system
JPS63259746A (en) Data transfer method between bank memories
EP0437928A2 (en) Memory management in a multi-processor system
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载