JPS61180349A - Data processor - Google Patents

Data processor

Info

Publication number
JPS61180349A
JPS61180349A JP60020524A JP2052485A JPS61180349A JP S61180349 A JPS61180349 A JP S61180349A JP 60020524 A JP60020524 A JP 60020524A JP 2052485 A JP2052485 A JP 2052485A JP S61180349 A JPS61180349 A JP S61180349A
Authority
JP
Japan
Prior art keywords
address
access
request
cycle
data
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
JP60020524A
Other languages
Japanese (ja)
Inventor
Naoto Kaji
直人 梶
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 JP60020524A priority Critical patent/JPS61180349A/en
Publication of JPS61180349A publication Critical patent/JPS61180349A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To attain plural main memory accesses with less hardware quantities with a data processor which performs the address conversion, by controlling the number of array elements to receive accesses in each cycle to the maximum number of elements that can be converted at a time. CONSTITUTION:A processing part 1 performs a vector operation. Array elements needed for operations are obtained by performing the address calculations from the head element address B and the inter-element distance D like B, B+D and B+2D and according to B+iXD (i=n-1, n: number of elements). In case the access is possible for maximum four array elements at a time in a vector processing mode, the 1st access is carried out with B, B+D, B+2D and B+3D and the 2nd access with b+4D, B+5D, B+6D and B+7D respectively. Then the 2nd access is also defined as B1, B1+D, B1+2D and B1+3D as long as B1=b+4D is satisfied. Then the value of B is increased by (DX4) for each machine cycle, and O, D, DX2 and DX3 are added to the value of B. Thus the element address is obtained for each access.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はデータ処理装置におけるアドレス変換に関し、
特に同時に複数のメモリアクセスを行う場合のアドレス
変換に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to address translation in a data processing device,
In particular, it relates to address conversion when multiple memory accesses are performed simultaneously.

(従来の技術) 近年、気象予測や原子力の分野におけるシミュレーショ
ンや、資源探査の分野における画像処理で超高速科学技
術計算機(スーパーコンピュータ)の必要性が増大して
きている。スーパーコンピュータでは配列状になった多
量のデータの各組に対して同一の演算を行う、いわゆる
ベクトル演算が主として実行されている。配列状の各要
素は比較的速度の遅い主記憶装置に蓄えられておシ、こ
れを配列要素の先頭アドレス(B)と要素間距離(D)
とによって、配列の行、列、ならびに対角方向(B+1
D)(ここで、lは整数)へ一定間隔で処理装置に読出
し、演算処理の後に同一、または別の番地に格納される
。取扱う配列データは一般に主記憶装置の容量に比べて
太き力ものとなるため、プログラム上での論理アドレス
をアドレス変換表に従って実アドレスに変換して主記憶
装置をアクセスする、いわゆる仮想記憶方式を採用する
のが一般的である。
(Prior Art) In recent years, the need for ultra-high-speed scientific and technological computers (supercomputers) has been increasing for simulations in the fields of weather prediction and nuclear power, and image processing in the field of resource exploration. Supercomputers mainly perform so-called vector operations in which the same operation is performed on each set of a large amount of data arranged in an array. Each element in the array is stored in the main memory, which is relatively slow, and is stored in the main memory, which has a relatively slow speed.
The array row, column, and diagonal direction (B+1
D) (where l is an integer) is read out to the processing device at regular intervals and stored at the same or different address after arithmetic processing. Since the array data to be handled is generally larger than the capacity of the main memory, a so-called virtual memory method is used in which the logical addresses on the program are converted to real addresses according to an address conversion table and the main memory is accessed. It is common to adopt

アドレス変換を高速に実行するために、アドレス変換バ
ッファを設けて主記憶装置に格納されているアドレス変
換表の写しを保持するようにしたものφ;多い。ベクト
ル演算を実行する処理装置の性能を向上させるためには
、内部処理速度に見合った主記憶装置へのアクセスが重
要となる。
In order to perform address translation at high speed, an address translation buffer is often provided to hold a copy of the address translation table stored in the main memory. In order to improve the performance of a processing device that executes vector operations, it is important to have access to the main memory that is commensurate with the internal processing speed.

従来、この種のアドレス変換方式では同時に複数の主記
憶番地へアクセスするのにアドレス変換バッファを各ア
クセスごとに複数個設け、複数ページに対するアドレス
変換データを同時に読出し、複数ページにおよぶ主記憶
アクセスを同時に処理することによって主記憶装置との
間でデータスルーブツトの向上をはかつていた。斯かる
技術に関しては、例えば特開昭筒57−57370号に
記載されている。
Conventionally, in this type of address translation method, multiple address translation buffers are provided for each access in order to access multiple main memory addresses simultaneously, and address translation data for multiple pages are simultaneously read, thereby providing main memory access to multiple pages. Simultaneous processing has improved data throughput with the main memory. Such a technique is described in, for example, Japanese Patent Application Laid-Open No. 57-57370.

(発明が解決しようとする問題点) 斯かる従来構成においては、複数個のアドレス変換バッ
ファを備えるととKなるため、ハードウェア量の増加を
招くという欠点があった。
(Problems to be Solved by the Invention) In such a conventional configuration, since providing a plurality of address translation buffers would require K, there was a drawback that the amount of hardware would increase.

本発明の目的は、同時に複数のアドレスを発生して主記
憶装置をアクセスするためにアドレス変換を行うデータ
処理装置において、各サイクルにおけるアクセスすべき
配列要素数を同時に変換可能な最大数に調整することに
より上記欠点を除去し、少ないハードウェア量で複数の
主記憶アクセスが可能であるように構成したデータ処理
装置を提供することにある。
An object of the present invention is to adjust the number of array elements to be accessed in each cycle to the maximum number that can be converted simultaneously in a data processing device that converts addresses to access a main memory by generating multiple addresses simultaneously. The object of the present invention is to provide a data processing device configured to eliminate the above-mentioned drawbacks and to allow access to a plurality of main memories with a small amount of hardware.

(問題点を解決するための手段) 本発明によるデータ処理装置は配列要素データを記憶す
る記憶装置を備え、記憶装置に記憶された配列要素デー
タをアクセスする際に単位アドレスごとにアドレス変換
データに従ってアドレス変換を行ってからデータをアク
セスするように構成したものであシ、特にアドレス発生
手段と、アドレス変換手段と、検出手段と、要求調整手
段とを具備し、各サイクルにおける要求を複数アドレス
の範囲内で、先頭要素を含む単位アドレス内に抑えると
共に、アドレス変換手段の出力とアドレス発生手段から
の複数出力とによって記憶装置に対する要求の実アドレ
スを生成するように構成したものである。
(Means for Solving the Problems) A data processing device according to the present invention includes a storage device for storing array element data, and when accessing the array element data stored in the storage device, the data processing device according to the present invention The device is configured to access data after performing address conversion, and is particularly equipped with address generation means, address conversion means, detection means, and request adjustment means, and is configured to handle requests in each cycle for multiple addresses. Within the range, the unit address including the first element is suppressed, and the real address of the request to the storage device is generated based on the output of the address conversion means and the plurality of outputs from the address generation means.

アドレス発生手段は、配列要素データの特定の組をアク
セスするために各アクセスサイクルごとに先頭要素アド
レスと要素間距離から同時に複数のアドレスを発生する
ためのものである。
The address generating means is for generating a plurality of addresses simultaneously from the leading element address and the inter-element distance for each access cycle in order to access a specific set of array element data.

アドレス変換手段は、各サイクルの先頭要素アドレスで
アクセスされ、アドレス発生手段により発生された複数
の論理アドレスを記憶装置の実アドレスに高速変換する
ためにアドレス変換データの一部の写しを保持するため
のものである。
The address conversion means is accessed at the first element address of each cycle and holds a copy of a portion of the address conversion data in order to quickly convert the plurality of logical addresses generated by the address generation means into real addresses of the storage device. belongs to.

検出手段はアドレス発生手段に接続されていて、各サイ
クルで同時に発生された論理アドレスが先頭要素アドレ
スを含む単位アドレス範囲内にあるか否かを検出するた
めのものである。
The detection means is connected to the address generation means and is for detecting whether the logical addresses generated simultaneously in each cycle are within a unit address range including the leading element address.

要求調整手段は、検出手段の検出結果により各サイクル
における要求を単位アドレス内の論理アドレスに制限を
与え、次のサイクルにおける先頭要素アドレスを決定す
るためのものである。
The request adjustment means limits the request in each cycle to a logical address within a unit address based on the detection result of the detection means, and determines the leading element address in the next cycle.

(実施例) 次に、本発明について図面を参照して詳細に説明する。(Example) Next, the present invention will be explained in detail with reference to the drawings.

第1図は、本発明によるデータ処理装置の一実施例を示
すブロック図である。第1図において、1は処理部、1
0はアドレスレジスタ、20は要累間距離レジスタ、3
oは倍数発生回路、40はアドレス変換回路、50は選
択回路、60〜63はそれぞれ加算器、70はページ越
え検出回路である。
FIG. 1 is a block diagram showing an embodiment of a data processing apparatus according to the present invention. In FIG. 1, 1 is a processing section;
0 is the address register, 20 is the required cumulative distance register, 3
o is a multiple generation circuit, 40 is an address conversion circuit, 50 is a selection circuit, 60 to 63 are adders, and 70 is a page overflow detection circuit.

処理部1はベクトル演算を行うためのものである。演算
に必要な配列要素は、先−要素アドレスBと要素間距離
りとから、B、B+DXB+2DのようにB+1XD(
1=n−1: nは要素数)に従ってアドレス計算する
ことによって求めることができる。本実施例のデータ処
理装置は、ベクトル処理時に同時に最大4個の配列要素
をアクセスすることが可能である。この場合、第1回目
のアクセスは上記のように、BXB+D、B+2D。
The processing unit 1 is for performing vector calculations. The array elements required for the operation are B+1XD (like B, B+DXB+2D) from the destination-element address B and the distance between elements
1=n-1: n is the number of elements). The data processing device of this embodiment can access up to four array elements simultaneously during vector processing. In this case, the first access is BXB+D, B+2D, as described above.

B+3Dであシ、第2回目はB+4DXB+5D。It was B+3D, and the second time was B+4DXB+5D.

B+6D、B+7Dとなる。ここで、B1=B+4Dと
すれば第2回目のアクセスはBl、B+4XB+5D、
B1+3Dとなシ、Bの値を毎マシンサイクル(DX4
)ずつ増加させ、上記Bの値に0.DXDX2、DX3
を加算すれば各アクセスごとの要素アドレスを得ること
ができる。
B+6D, B+7D. Here, if B1=B+4D, the second access is Bl, B+4XB+5D,
B1+3D, the value of B is changed every machine cycle (DX4
), and add 0. to the value of B above. DXDX2, DX3
By adding , we can obtain the element address for each access.

同様にして、同時に逆出する要求が1.2.3の場合は
、4Dの代シにり、2D、3Dとすればよいことが判る
Similarly, if the requests to be output simultaneously are 1.2.3, it can be seen that 2D and 3D can be used instead of 4D.

第2図を参照すると、本発明の一実施例のデータ処理装
置における論理アドレスと実アドレスとの関係が示され
ている。第1図において説明を簡単にするため、L=1
0.m=20、n=5とし、アドレスの最下位ビットは
配列要素アドレス(語)とする。論理アドレス空間は2
m=2” =1.048,576語単位(以下ページと
呼ぶ、2′=2”=1024個)K分割されておシ、L
、Pは論理ページ番号を示し、Aはページ内アドレスを
示す。実アドレス空間も同一容量のページ(2n=2’
=32個)に分割されておυ、RPは実ページ番号を示
し、ページ内アドレスAは論理アドレス空間のものと同
一である。上記論理ページ番号LPから上記論理ページ
の実アドレス空間での位置を示すアドレス変換テーブル
を索引し、これによって実ページ番号RPを得ることを
論理−実アドレス変換という。このアドレス変換を第2
図ではATで示した。このように構成することにより、
記憶装置が32ペ一ジ分°の容量であっても同時に必要
な32ページ以下のページを記憶装置にロードしておく
ことにより、プログラム上はあたかも32倍の1024
ページあるかのようにデータを取扱うことができる。
Referring to FIG. 2, the relationship between logical addresses and real addresses in a data processing device according to an embodiment of the present invention is shown. In Fig. 1, to simplify the explanation, L=1
0. Let m=20, n=5, and the least significant bit of the address is the array element address (word). Logical address space is 2
m = 2" = 1.048,576 word units (hereinafter referred to as pages, 2' = 2" = 1024 words) divided into K, L
, P indicates a logical page number, and A indicates an intra-page address. The real address space is also a page with the same capacity (2n=2'
=32 pieces), RP indicates the real page number, and the intra-page address A is the same as that in the logical address space. The process of indexing an address conversion table indicating the position of the logical page in the real address space from the logical page number LP and obtaining the real page number RP from this is called logical-to-real address conversion. This address translation is
In the figure, it is indicated as AT. By configuring like this,
Even if the storage device has a capacity of 32 pages, by loading the required 32 pages or less into the storage device at the same time, the program will be able to store 1024 pages, which is 32 times as large.
Data can be handled as if it were a page.

第3図は、論理空間の各要素とページとの関係を示した
説明図である。第3図において、(a)では前記要素間
距離りが比較的小さく、第1回目と第2回目との要求は
LP=Cによって与えられる同一のページに収っている
が、第3回目の要求に対しては上記要求時の先頭要素ア
ドレスB2からB2+2Dtでの要求がLP=Cによっ
て与えられるページに存在し、B2+3Dの要求はLP
=C+1によって与えられるページに存在する。
FIG. 3 is an explanatory diagram showing the relationship between each element of the logical space and the page. In FIG. 3, in (a), the distance between the elements is relatively small, and the first and second requests are within the same page given by LP=C, but the third request is Regarding the request, the request from the top element address B2 to B2+2Dt at the time of the above request exists in the page given by LP=C, and the request for B2+3D is LP
= exists on the page given by C+1.

ここで、D〉0と仮定する。第3図において、(b)で
は上記要素間距離が比較的大きく、第1回目の要求にお
いて上記要求時の先頭要素アドレスBO1BO+D、B
O+2Dの要求はLP=Cによって与えられるページに
収っているが、B+3Dの要求はLP=C+1によって
与えられる別のページに存在する。ここで、本実施例で
はD<LPであると仮定する。
Here, it is assumed that D>0. In FIG. 3, in (b), the distance between the elements is relatively large, and in the first request, the leading element addresses BO1BO+D, B
The request for O+2D is contained in the page given by LP=C, but the request for B+3D is on another page given by LP=C+1. Here, in this embodiment, it is assumed that D<LP.

上の説明では取扱いを簡単にするため、アドレス変換は
1マシンサイクル当シ1ペ一ジ分しか行われないものと
仮定する。そこで、先頭アドレスが存在するページ内に
収っている要求の数だけ要求が送出されるように調整さ
れていれば、上記マシンサイクルで送出することのでき
る最大数の実アドレスを得ることができる。
In the above description, for ease of handling, it is assumed that address translation is performed for only one page per machine cycle. Therefore, if the adjustment is made so that the number of requests that fit within the page where the first address exists is adjusted, the maximum number of real addresses that can be sent in the machine cycle described above can be obtained. .

第4図は、第1図に示すデータ処理装置の動作を示すタ
イミングチャートである。次に1第4図のタイミングチ
ャートを参照して第1図の各部の動作を説明する。第4
図に示すタイミングチャートにおいて、(A)、(B)
はそれぞれ上記第3図の(L)、(b)に対応するもの
である。上記先頭要素アドレスBと要素間距離りとは、
第3図(L)の関係にあるものとし、第4図(A)のタ
イミングチャートに従って決定されるものとする。
FIG. 4 is a timing chart showing the operation of the data processing device shown in FIG. Next, the operation of each part shown in FIG. 1 will be explained with reference to the timing chart shown in FIG. Fourth
In the timing chart shown in the figure, (A), (B)
correspond to (L) and (b) in FIG. 3 above, respectively. The above top element address B and inter-element distance are:
It is assumed that the relationship shown in FIG. 3(L) exists, and that the timing is determined according to the timing chart of FIG. 4(A).

処理部1でベクトル要素のアクセスが必要になると、タ
イミングToで先頭要素アドレスBが信−jJ!101
を介してアドレスレジスタ10にセットされ、要素間距
離りが信号線102を介して要素間距離レジスタ20に
セットされる。要素間距離レジスタ20にセットされた
要素間距離りは信号線103を介して倍数発生回路30
に送出される。倍数発生回路30では、要素間距離りか
ら、D、2D、3D、4Dを生成し、それぞれ信号線1
01〜110を介して加算回路60〜63に送出してい
る。また、アドレスレジスタ10の先頭要素アドレスB
も信号線105を介して加算回路60〜63に送出され
る。加算回路60〜63においては、それぞれアドレス
B+DXB+2D。
When the processing unit 1 needs to access a vector element, the first element address B is sent at timing To. 101
The element distance is set in the address register 10 via the signal line 102, and the inter-element distance is set in the inter-element distance register 20 via the signal line . The inter-element distance set in the inter-element distance register 20 is sent to the multiple generation circuit 30 via the signal line 103.
will be sent to. The multiple generation circuit 30 generates D, 2D, 3D, and 4D from the distance between the elements, and each signal line 1
The signals are sent to adder circuits 60 to 63 via signals 01 to 110. Also, the first element address B of the address register 10
are also sent to adder circuits 60 to 63 via signal line 105. In addition circuits 60 to 63, addresses B+DXB+2D, respectively.

B+3D、B+4Dが計算される。ここで、アドレスレ
ジスタ10上に存在する先頭要素アドレスBのうち、論
理ページ番号LPを示す上位10ビツトは信号線104
を介してアドレス変換回路40に送出される。アドレス
変換回路40では論理アドレスを実アドレスに変換する
ために必要なアドレス変換表の一部の写しを有し、信号
線104から論理アドレスのページ番号10ビツトが与
えられると、対応する実アドレスのページ番号RPの5
ビツトに変換し、これを信号線118から出力する。ま
た、アドレスレジスタ10上に存在する先頭要素アドレ
スBのうち、ページ内アドレスAを示す下位20ビツト
および加算回路60〜62で生成された論理アドレスB
+DXB+2D、B+3Dのうち、ページ内アドレスA
を示す下位20ビツトがそれぞれ出力119〜122を
介して出力される。ここで、例えば出力119の内容を
AOによって表わすと、出力120〜122の内容はそ
れぞれAO+D、AO+2D、AO+3Dによって表わ
される。
B+3D and B+4D are calculated. Here, of the first element address B existing on the address register 10, the upper 10 bits indicating the logical page number LP are connected to the signal line 104.
The data is sent to the address conversion circuit 40 via the address conversion circuit 40. The address conversion circuit 40 has a copy of a part of the address conversion table necessary for converting a logical address into a real address, and when a 10-bit page number of the logical address is given from the signal line 104, the corresponding real address is Page number RP 5
It is converted into bits and output from the signal line 118. Also, of the first element address B existing on the address register 10, the lower 20 bits indicating the intra-page address A and the logical address B generated by the adder circuits 60 to 62
+DXB+2D, B+3D, in-page address A
The lower 20 bits indicating the value are output via outputs 119-122, respectively. Here, for example, if the content of the output 119 is represented by AO, the contents of the outputs 120 to 122 are represented by AO+D, AO+2D, and AO+3D, respectively.

求めたい実アドレスは、上記実ページ番号RPの5ビツ
トと上記ページ内アドレスAの10ビツトとの組合せに
よって生成される。タイミングTOにおいては、すべて
の要求が同一ページ内に収っているので、上記組合せ、
すなわち出力118と119、出力118と1201出
力118と121、出力11Bと122の組合せがすべ
て実アドレスとして得られる〇 さらに、タイミングTOにおける最大要求数、および次
回のマシンサイクルT1時における先頭要素アドレスB
lを決定するために、加算回路60〜62から信号線1
1b〜117を介して加算回路60〜62010ビツト
目から11ビツト目へのキャリーがページ越え検出回路
TOへ送出される。
The desired real address is generated by a combination of the 5 bits of the real page number RP and the 10 bits of the intra-page address A. At timing TO, all requests are within the same page, so the above combination,
In other words, the combinations of outputs 118 and 119, outputs 118 and 1201, outputs 118 and 121, and outputs 11B and 122 are all obtained as real addresses.Furthermore, the maximum number of requests at timing TO and the leading element address B at the next machine cycle T1
In order to determine l, signal line 1 is connected from adder circuits 60 to 62.
The carry from the 10th bit to the 11th bit of the adder circuits 60 to 620 is sent to the page overflow detection circuit TO via 1b to 117.

ここで、ページ越え検出回路TOについて説明を行う。Here, the page overflow detection circuit TO will be explained.

もし要求が複数ページKまたがると、D<LPである。If the request spans multiple pages K, then D<LP.

従って、最初にページ越えが発生した要求のキャリーは
必ず論理値°12になるので、上記要求からページ越え
を起こしていることがわかる。例えば、先頭要素アドレ
スBがLP=Cにより与えられるページ上に存在し、信
号線116.117の値が論理値1であれば、ページ越
え検出回路70はB+2D以降の要求がLP=Cによっ
て与えられるページに存在しないと判断し、要求をBお
よびB+Dの2個に抑えるように出力124よシ要求数
として°2”を送出する。
Therefore, since the carry of the request in which a page overflow occurs for the first time always has a logical value of 12, it can be seen from the above request that a page overflow has occurred. For example, if the first element address B exists on the page given by LP=C and the value of the signal line 116.117 is a logical value 1, the page overflow detection circuit 70 detects that the requests after B+2D are given by LP=C. It is determined that the requested page does not exist, and the output 124 sends out .degree.2" as the number of requests so as to limit the number of requests to two, B and B+D.

さらに、次のマシンサイクルにおける先頭要素アドレス
をB+2Dとするため、選択回路50によって信号線1
12を選択する選択信号を生成し、上記信号を信号線1
23よシ送出する。
Furthermore, in order to set the first element address in the next machine cycle to B+2D, the selection circuit 50
12, and send the above signal to signal line 1.
I'll send it out on the 23rd.

以上がページ越え検出回路TOの動作例である。The above is an example of the operation of the page overflow detection circuit TO.

タイミングTOにおいては、すべての要求が同一ページ
内に収っているので、信号線115〜117上の状態は
すべて″0”であシ、ページ越え検出回路10では要求
数=4を出力信号線124から送出している。また、次
のマシンサイクルT1の時における先頭要素アドレスは
B+4Dであるので、選択回路50においては信号線1
14を選択する選択信号を信号線123を介して送出す
る。選択回路50は、信号線125を介して先頭要素ア
ドレスB+4Dをアドレスレジスタ10に送出する。
At timing TO, all requests are within the same page, so the states on signal lines 115 to 117 are all "0", and the page overflow detection circuit 10 outputs the number of requests = 4 on the signal line. It is sent from 124. Furthermore, since the leading element address at the time of the next machine cycle T1 is B+4D, the selection circuit 50 selects the signal line 1.
A selection signal for selecting 14 is sent via signal line 123. The selection circuit 50 sends the first element address B+4D to the address register 10 via the signal line 125.

以上、1マシンサイクルあたシの一連の動作に関して説
明したが、次のマシンサイクルT1では上記先頭要素ア
ドレスBがB=B+4D=B1となって、まったく同様
の動作が行われる。ところが、次のマシンサイクルT2
においては、先頭要素アドレスをB2とすると、B2+
3Dの要求がB2とは違うページの内部に存在すること
が第3図(A)よυわかる。この場合には、信号線11
7上の状態″11とな)、出力信号線124からは要求
数として値3が出力され、選択回路50において次のマ
シンサイクルT3における先頭要素アドレスとして、信
号線113を介してB2+3Dが選択され、信号線12
5を介してアドレスレジスタ10に送出される。
A series of operations per machine cycle has been described above, but in the next machine cycle T1, the head element address B becomes B=B+4D=B1, and exactly the same operation is performed. However, the next machine cycle T2
In, if the first element address is B2, then B2+
It can be seen from FIG. 3(A) that the 3D request exists inside a page different from B2. In this case, the signal line 11
7 above, the value 3 is output as the requested number from the output signal line 124, and the selection circuit 50 selects B2+3D via the signal line 113 as the first element address in the next machine cycle T3. , signal line 12
5 to the address register 10.

次のマシンサイクルT3では、先頭要素アドレスはB2
+3Dとなり、以後、同様にして動作が行われる。以上
説明したようにして、1マシンサイクルごとに最大4個
までの実アドレスをアクセスすることができる。
In the next machine cycle T3, the first element address is B2.
+3D, and the same operation is performed thereafter. As explained above, up to four real addresses can be accessed per machine cycle.

一方、第4図(B)のタイミングチャートに従って動作
する場合には、要素間距離りが比較的大きいので、タイ
ミング10時からのB+3Dの要求がページ越えを起こ
しており、要求数は3に抑えられる。各部の動作は、上
記第4図(A)で行つた説明と同様である。なお、本発
明における一般的な構成要求と第1図に示す実施例との
対応は次のように説明される。すなわち、アドレス発生
手段は加算器60〜63、アドレス変換手段はアドレス
変換回路40、検出手段はページ越え検出回路TO1要
求調整手段は選択回路5OKそれぞれ対応する。
On the other hand, when operating according to the timing chart in Figure 4(B), the distance between elements is relatively large, so the B+3D request from timing 10 o'clock causes a page overflow, and the number of requests is kept to 3. It will be done. The operation of each part is similar to the explanation given in FIG. 4(A) above. The correspondence between the general configuration requirements of the present invention and the embodiment shown in FIG. 1 will be explained as follows. That is, the address generation means corresponds to the adders 60 to 63, the address conversion means corresponds to the address conversion circuit 40, the detection means corresponds to the overpage detection circuit TO1, and the request adjustment means corresponds to the selection circuit 5OK.

(発明の効果) 本発明は以上説明したように、要素間距離から常に要求
し得る最大数のアドレス変換ができるようKして、少な
いハードウェア量で複数の主記憶アクセスを同時に行う
ことができ、データ処理性能が向上できるという効果が
ある。
(Effects of the Invention) As explained above, the present invention is capable of performing multiple main memory accesses simultaneously with a small amount of hardware by performing the maximum number of address conversions that can always be requested based on the distance between elements. This has the effect of improving data processing performance.

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

第1図は、本発明によるデータ処理装置の一実施例を示
すブロック図である。 第2図は、第1図に示す実施例における論理アドレスと
実アドレスとの関係を示した説明図である。 第3図は、論理空間での配列要素の位置とページとの関
係を示した説明図である0 第4図は、第1図に示す実施例の動作を示すタイミング
チャートでちる。 1・・・処理部 1Q@・・アドレスレジスタ 20・・・要素間距離レジスタ 30・・・倍数発生回路 40・・・アドレス変換回路 50・・・選択回路 60〜63・・・加算器 70・・・ページ越え検出回路
FIG. 1 is a block diagram showing an embodiment of a data processing apparatus according to the present invention. FIG. 2 is an explanatory diagram showing the relationship between logical addresses and real addresses in the embodiment shown in FIG. 1. FIG. 3 is an explanatory diagram showing the relationship between the positions of array elements in logical space and pages. FIG. 4 is a timing chart showing the operation of the embodiment shown in FIG. 1. 1... Processing unit 1Q@... Address register 20... Inter-element distance register 30... Multiple generation circuit 40... Address conversion circuit 50... Selection circuits 60 to 63... Adder 70...・Page crossing detection circuit

Claims (1)

【特許請求の範囲】[Claims] 配列要素データを記憶する記憶装置を備え、前記記憶装
置に記憶された前記配列要素データをアクセスする際に
単位アドレスごとにアドレス変換データに従つてアドレ
ス変換を行つてから前記データをアクセスするように構
成したデータ処理装置において、前記配列要素データの
特定の組をアクセスするために各アクセスサイクルごと
に先頭要素アドレスと要素間距離から同時に複数のアド
レスを発生するためのアドレス発生手段と、前記各サイ
クルの先頭要素アドレスでアクセスされ、前記アドレス
発生手段により発生された複数の論理アドレスを前記記
憶装置の実アドレスに高速変換するために前記アドレス
変換データの一部の写しを保持するためのアドレス変換
手段と、前記アドレス発生手段に接続されていて、前記
各サイクルで同時に発生された論理アドレスが先頭要素
アドレスを含む単位アドレス範囲内にあるか否かを検出
するための検出手段と、前記検出手段の検出結果により
前記各サイクルにおける要求を前記単位アドレス内の論
理アドレスに制限を与え、次のサイクルにおける先頭要
素アドレスを決定するための要求調整手段とを具備し、
前記各サイクルにおける要求を前記複数アドレスの範囲
内で、前記先頭要素を含む単位アドレス内に抑えると共
に、前記アドレス変換手段の出力と前記アドレス発生手
段からの複数出力とによつて前記記憶装置に対する前記
要求の実アドレスを生成するように構成したことを特徴
とするデータ処理装置。
A storage device for storing array element data is provided, and when accessing the array element data stored in the storage device, address conversion is performed for each unit address according to address conversion data, and then the data is accessed. In the data processing device configured, address generating means for simultaneously generating a plurality of addresses from a leading element address and an inter-element distance for each access cycle in order to access a specific set of array element data; address conversion means for holding a copy of a portion of the address conversion data in order to quickly convert a plurality of logical addresses generated by the address generation means into real addresses of the storage device; and a detection means connected to the address generation means for detecting whether or not the logical addresses generated simultaneously in each cycle are within a unit address range including the leading element address; request adjusting means for limiting the request in each cycle to a logical address within the unit address based on the detection result and determining a leading element address in the next cycle;
The request in each cycle is suppressed within the range of the plurality of addresses to a unit address including the head element, and the request to the storage device is suppressed by the output of the address conversion means and the plurality of outputs from the address generation means. A data processing device configured to generate a real address of a request.
JP60020524A 1985-02-05 1985-02-05 Data processor Pending JPS61180349A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60020524A JPS61180349A (en) 1985-02-05 1985-02-05 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60020524A JPS61180349A (en) 1985-02-05 1985-02-05 Data processor

Publications (1)

Publication Number Publication Date
JPS61180349A true JPS61180349A (en) 1986-08-13

Family

ID=12029544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60020524A Pending JPS61180349A (en) 1985-02-05 1985-02-05 Data processor

Country Status (1)

Country Link
JP (1) JPS61180349A (en)

Similar Documents

Publication Publication Date Title
US20040193778A1 (en) Data processor
JPS6126712B2 (en)
JP3320922B2 (en) Memory device
JPH07120312B2 (en) Buffer memory controller
JPS63201851A (en) Storage control system
JPS61180349A (en) Data processor
JP2503702B2 (en) Address translation device
JP2577071B2 (en) Digital signal processor
JPS61180348A (en) Data processor
JPH09120371A (en) Memory controller
JPS59218690A (en) Buffer memory
JPH0546462A (en) Multi-cpu address conversion mechanism
JPH0553920A (en) Structural address generator
JPS61125656A (en) Address converting system
JPS59231788A (en) Electronic computer
JPH0810443B2 (en) Memory control circuit
JPS59191185A (en) Data processing device
JPS5856129A (en) Data transfer system
JPH0589026A (en) Processor, memory and data processor
JPH08314797A (en) Memory access system
JPS61173356A (en) Address converting ststem
JPH07105078A (en) Memory access network controller
JPS60123946A (en) Address translating mechanism
JPH07295944A (en) Global arithmetic processing method for multi-processing system, processor for the multi-processing system and global arithmetic processor
JPS62175879A (en) Generating device for data on binary picture similarity conversion picture element