JPH07134677A - Register write system - Google Patents

Register write system

Info

Publication number
JPH07134677A
JPH07134677A JP5279396A JP27939693A JPH07134677A JP H07134677 A JPH07134677 A JP H07134677A JP 5279396 A JP5279396 A JP 5279396A JP 27939693 A JP27939693 A JP 27939693A JP H07134677 A JPH07134677 A JP H07134677A
Authority
JP
Japan
Prior art keywords
register
data
memory
write
register group
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.)
Withdrawn
Application number
JP5279396A
Other languages
Japanese (ja)
Inventor
Suwanna Paisaan Poonshiyaichiyon
ポーンシャイチョンスワンナパイサーン
Yuji Kamisaka
裕士 神阪
Kazuyasu Nonomura
一泰 野々村
Kiminari Ogura
仁成 小椋
Toru Watabe
徹 渡部
Takumi Takeno
巧 竹野
Takumi Maruyama
拓巳 丸山
Shinya Kato
慎哉 加藤
Katsunori Takeshita
克典 竹下
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5279396A priority Critical patent/JPH07134677A/en
Publication of JPH07134677A publication Critical patent/JPH07134677A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To reduce the number of execution cycles by employing such constitution that the number of write ports can be reduced by unifying register groups and write on the register groups can be performed even when a start address is not the one of eight byte boundary as a register write system. CONSTITUTION:This system is comprised by providing a buffer RDB which holds data read out from memory 1 in boundary unit, an alignment ALM which arranges by sampling the data in accordance with an even-numbered or odd- numbered start register number from the data read out from the memory 1 in boundary unit and the data just before read out from the buffer RDB, a register RD which stores arranged data, and the register group 2 that is a set of registers for which the data read out from the register RD is designated and which perform write from an even-numbered or odd-numbered start register number position.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、メモリのバウンダリ単
位に読み出したデータをレジスタ内の偶数あるいは奇数
の位置からライトするレジスタライト方式に関するもの
である。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a register write system for writing data read in boundary units of a memory from even or odd positions in a register.

【0002】[0002]

【従来の技術】従来、図14の(b)に示すレジスタ群
47に対して、図14の(a)の構成のもとで、メモリ
(主記憶)41からバスを介してデータを書き込む場合
について以下説明する。
2. Description of the Related Art Conventionally, when data is written to a register group 47 shown in FIG. 14B from a memory (main memory) 41 via a bus under the configuration of FIG. Will be described below.

【0003】図14の(b)において、レジスタ群47
は、2バイト幅の複数のレジスタから構成され、偶数群
のレジスタ(REという)のR0、R2、R4・・・R
2nと、奇数群のレジスタ(ROという)のR1、R
3、R5・・・R2n+1から構成されている。
In FIG. 14B, a register group 47 is provided.
Is composed of a plurality of registers each having a width of 2 bytes, and R0, R2, R4, ...
2n and R1 and R of odd-numbered registers (referred to as RO)
3, R5 ... R2n + 1.

【0004】図14の(a)において、メモリ41は、
主記憶であって、8バイトバウンダリを持つものであ
る。メモリバス42は、8バイト幅を持つバスである。
In FIG. 14A, the memory 41 is
It is the main memory and has an 8-byte boundary. The memory bus 42 is a bus having a width of 8 bytes.

【0005】RDB43は、バッファであって、メモリ
41からリードしたデータを一時的に保持するバッファ
である。ALM44は、アライメントであって、メモリ
41からリードしたデータの配列を変えてRD45にセ
ットするものである。
The RDB 43 is a buffer which temporarily holds the data read from the memory 41. The ALM 44 is an alignment that changes the arrangement of the data read from the memory 41 and sets it in the RD 45.

【0006】RD45は、リードレジスタであって、デ
ータを保持するものである。MPX46は、マルチプレ
クサであって、RD45のデータをレジスタ群47にラ
イトするためのものである。
The RD 45 is a read register, which holds data. The MPX 46 is a multiplexer and is for writing the data of the RD 45 to the register group 47.

【0007】レジスタ群47は、RE(偶数レジスタ
群)およびRO(奇数レジスタ群)から構成され、図1
4の(b)の構成を持つものである。これらRE、RO
は、後述する2つのライトポートA、Bをそれぞれ持
ち、同時にライトできるものであり、ライトポートA、
Bを併せて合計4本のレジスタに同時にライトできるも
のである。
The register group 47 is composed of RE (even number register group) and RO (odd number register group).
4 (b). These RE, RO
Has two write ports A and B, which will be described later, and can write simultaneously.
It is possible to simultaneously write B to a total of four registers.

【0008】次に、図15を用いて、8バイトバウンダ
リのメモリ41からデータをリードして、レジスタ群4
7に書き込むときの様子を説明する。 (A) 開始アドレスが8バイトバウンダリの場合(開
始アドレスの下位3ビット=000の場合): 1サイクル目:図15のメモリ上の(A)に示すよう
に、開始アドレスがメモリ41上の8バイトバウンダリ
の先頭から、データ、、、、、、、、
と並んでいるので、1回に読み出すことができる8バ
イトバウンダリ内の、、、を読み出し、図15
のRD上の(A)に示すように、RDにセットすると共
に図示外のRDBにもセットする。
Next, referring to FIG. 15, data is read from the memory 41 having an 8-byte boundary, and the register group 4 is read.
The situation when writing to 7 will be described. (A) When the start address is an 8-byte boundary (lower 3 bits of start address = 000): First cycle: As shown in (A) on the memory of FIG. 15, the start address is 8 on the memory 41. From the beginning of the byte boundary, data ,,,,,,,,
Since it is lined up with ,, in the 8-byte boundary that can be read at once,
As shown in (A) on the RD of, the data is set in the RD and also in the RDB not shown.

【0009】2サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
次のデータ、、、を読み出し、RDおよびRD
Bにセットする。
Second cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
Read the next data ,,, RD and RD
Set to B.

【0010】3サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
次のデータ、−、−、−を読み出し、RDおよびRD
Bにセットする。
Third cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
Read the next data,-,-,-, RD and RD
Set to B.

【0011】4サイクル目:RDから読み出した、
−、−、−を、図15のレジスタ群47上のREのの
位置に書き込む。以上の1サイクル目、2サイクル目、
3サイクル目、4サイクル目のデータの様子の詳細を図
16に示す。
Fourth cycle: read from RD,
−, −, − Are written in the position of RE on the register group 47 in FIG. The above 1st cycle, 2nd cycle,
Details of data in the third and fourth cycles are shown in FIG.

【0012】(B) 開始アドレスが8バイトバウンダ
リの2バイト先の場合(開始アドレスの下位3ビット=
010の場合): 1サイクル目:図15のメモリ上の(B)に示すよう
に、開始アドレスがメモリ41上の8バイトバウンダリ
の2バイト目からであって、データ−、、、、
、、、、、と並んでいるので、1回に読み
出すことができる8バイトバウンダリ内の−、、、
を読み出し、図示外のRDBにセットする。
(B) When the start address is 2 bytes ahead of the 8-byte boundary (lower 3 bits of start address =
010): 1st cycle: As shown in (B) on the memory of FIG. 15, the start address is from the second byte of the 8-byte boundary on the memory 41, and the data −, ...
,,,,, are arranged side by side, so it is possible to read at once in the 8-byte boundary-,,,
Is read out and set in an RDB (not shown).

【0013】2サイクル目:RDBから読み出した、
、と、メモリから読み出した、、、のうち
のとをALMで取り出し、図15のRD上の(B)に
示すように、、、、をセットすると共に図示外
のRDBに、、、をセットする。
Second cycle: read from RDB,
,, and of the ,,,, read out from the memory are taken out by the ALM, and as shown in (B) of RD of FIG. 15, the ,,, and are set in the RDB (not shown). To do.

【0014】3サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
RDBから読み出した、、と、メモリから読み出
した、のうちのとをALMで取り出し、図15の
RD上の(B)に示すように、、、、をセット
すると共に図示外のRDBに、をセットする。
Third cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
Of the data read from the RDB and the data read from the memory, are extracted by the ALM, and, as shown in (B) on RD of FIG. set.

【0015】4サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
RDBから読み出したをALMで取り出し、図15の
RD上の(B)に示すように、をセットする。
Fourth cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
The data read from the RDB is taken out by the ALM, and is set as shown in (B) on RD of FIG.

【0016】5サイクル目:RDから読み出したを、
図15のレジスタ群47上のREのの位置に書き込
む。以上の1サイクル目、2サイクル目、3サイクル
目、4サイクル目、5サイクル目のデータの様子の詳細
を図17に示す。
Fifth cycle: Read from RD,
It writes in the position of RE on the register group 47 of FIG. FIG. 17 shows the details of the state of the data in the above first cycle, second cycle, third cycle, fourth cycle, and fifth cycle.

【0017】(C)、(D) 同様にして、開始アドレ
スが8バイトバウンダリの4バイト先(6バイト先)の
場合(開始アドレスの下位3ビット=100(110)
の場合): 1サイクル目:図15のメモリ上の(C)、(D)に示
すように、開始アドレスがメモリ41上の8バイトバウ
ンダリの4バイト目(6バイト目)からであって、デー
タ−、−、、、、、、、、、(デー
タ−、−、−、、、、、、、、、)
と並んでいるので、1回に読み出すことができる8バイ
トバウンダリ内の−、−、、(−、−、−、)を
読み出し、図示外のRDBにセットする。
(C), (D) Similarly, when the start address is 4 bytes ahead (6 bytes ahead) of the 8-byte boundary (lower 3 bits of start address = 100 (110)).
Case): 1st cycle: As shown in (C) and (D) on the memory of FIG. 15, the start address is from the 4th byte (6th byte) of the 8 byte boundary on the memory 41, Data-,-,,,,,,,, (Data-,-,-,,,,,,,)
Since they are lined up, the −, − ,, (−, −, −,) in the 8-byte boundary that can be read at one time are read and set in the RDB (not shown).

【0018】2サイクル目:RDBから読み出した、
()と、メモリから読み出した、、、
(、、、)のうちの、(、、)とを
ALMで取り出し、図15のRD上の(C)、(D)に
示すように、、、、をセットすると共に図示外
のRDBに、、、(、、、)をセット
する。
Second cycle: read from RDB,
() And read from memory ...
Of (,,,), (,,) and are taken out by ALM, and as shown in (C) and (D) on RD of FIG. ,, (,,,) are set.

【0019】3サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
RDBから読み出した、()と、メモリから読み
出した、、(、、、)のうちの、
(、、)とをALMで取り出し、図15のRD上
の(C)、(D)に示すように、、、、をセッ
トすると共に図示外のRDBに、、、−(、
、、)をセットする。
Third cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
Of () read from RDB and (,,,) read from memory,
(,,) are taken out by the ALM, and, as shown in (C) and (D) on RD of FIG.
,,) are set.

【0020】4サイクル目:RDから読み出した、
、、を、図15のレジスタ群47上のREとRO
にそれぞれ、、、の位置に書き込む。同時に、
RDBから読み出したをALMで取り出し、図15の
RD上の(C)、(D)に示すように、をセットす
る。
Fourth cycle: read from RD,
,, and RE and RO on the register group 47 of FIG.
Write at the positions of ,,, respectively. at the same time,
The data read out from the RDB is taken out by the ALM, and as shown in (C) and (D) on RD of FIG. 15, is set.

【0021】5サイクル目:RDから読み出したを、
図15のレジスタ群47上のREのの位置に書き込
む。以上の1サイクル目、2サイクル目、3サイクル
目、4サイクル目、5サイクル目のデータの様子の詳細
の(C)を図18、(D)を図19に示す。
Fifth cycle: Read from RD,
It writes in the position of RE on the register group 47 of FIG. FIG. 18 is a detailed view (C) and FIG. 19 is a detailed view (D) of the data in the first, second, third, fourth, and fifth cycles.

【0022】図20は、従来の動作指示説明図を示す。 (000):既述した(A)に対応し、詳細を図16に
示す。 (010):既述した(B)に対応し、詳細を図17に
示す。
FIG. 20 shows a conventional operation instruction explanatory diagram. (000): Corresponding to (A) described above, details are shown in FIG. (010): Corresponding to (B) described above, details are shown in FIG.

【0023】(100):既述した(C)に対応し、詳
細を図18に示す。 (110):既述した(D)に対応し、詳細を図19に
示す。 ここで、(000)などは、既述したように、開始アド
レスの下位3ビットを表し、メモリ41は8バイトバウ
ンダリとする。
(100): Corresponding to (C) described above, details are shown in FIG. (110): Corresponding to (D) described above, details are shown in FIG. Here, as described above, (000) and the like represent the lower 3 bits of the start address, and the memory 41 has an 8-byte boundary.

【0024】(1) (000)の場合(開始アドレス
が8バイトバウンダリの先頭の場合):S1は、カウン
タCT=転送本数−1とセットする。ここでは、転送本
数9本としたので、CT=9−1=8となる。
(1) In the case of (000) (when the start address is the beginning of the 8-byte boundary): S1 sets the counter CT = the number of transfers-1. Here, since the number of transfers is 9, CT = 9-1 = 8.

【0025】S2は、 RQ CT<4 CT−4 の処理を行なう。即ち、S1で算出したCTが4よりも
小さいか判別(CT<4)、およびCTから4を引いた
値を新たなCTの値とする(CT−4)。
At S2, the processing of RQ CT <4 CT-4 is performed. That is, it is determined whether the CT calculated in S1 is smaller than 4 (CT <4), and a value obtained by subtracting 4 from CT is set as a new CT value (CT-4).

【0026】・S2でCT<4と判別された場合には、
レジスタ群に書き込むデータ数が4個以下で1回の書込
みでレジスタ群に書き込めると判明したので、S4でR
Wし(レジスタ群に書き込み)、終了する。
When CT <4 is determined in S2,
Since it was found that the number of data to be written in the register group is 4 or less, the data can be written in the register group in one write, so R is performed in S4.
W (write to the register group), and the process ends.

【0027】・S2でCT≧4と判別された場合には、
レジスタ群に書き込むデータ数が5個以上で複数回の書
込み必要と判明したので、S3に進む。S3は、 RW RQ CT<4 CT−4 の処理を行なう。即ち、レジスタ群にRDの4つのデー
タをレジスタ群に書き込んだ後、CTが4よりも小さい
か判別(CT<4)、およびCTから4を引いた値を新
たなCTの値とする(CT−4)。
When CT ≧ 4 is determined in S2,
Since the number of data to be written in the register group is 5 or more and it is determined that the writing is required plural times, the process proceeds to S3. S3 performs the process of RW RQ CT <4 CT-4. That is, after writing four pieces of RD data to the register group, it is determined whether CT is smaller than 4 (CT <4), and a value obtained by subtracting 4 from CT is set as a new CT value (CT -4).

【0028】・S3でCT<4と判別された場合には、
レジスタ群に書き込むデータ数が4個以下で1回の書込
みでレジスタ群に書き込めると判明したので、S4でR
Wし(レジスタ群に書き込み)、終了する。
When CT <4 is determined in S3,
Since it was found that the number of data to be written in the register group is 4 or less, the data can be written in the register group in one write, so R is performed in S4.
W (write to the register group), and the process ends.

【0029】・S3でCT≧4と判別された場合には、
レジスタ群に書き込むデータ数が5個以上で複数回の書
込み必要と判明したので、S3を繰り返す。これによ
り、既述した図15の(A)と図16に示すようにデー
タをレジスタ群に書き込む。
When CT ≧ 4 is determined in S3,
Since it is found that the number of data to be written in the register group is 5 or more and it is necessary to write a plurality of times, S3 is repeated. As a result, the data is written in the register group as shown in FIG. 15A and FIG.

【0030】同様に、(010)、(100)、(11
0)についても図示処理を行い、既述した図15の
(B)と図17、図15の(C)と図18、図15の
(D)と図19に示すようにデータをレジスタ群47に
書き込む。
Similarly, (010), (100), (11)
0) is also subjected to the illustrated process, and the data is transferred to the register group 47 as shown in FIGS. 15B and 17, FIG. 15C, FIG. 18 and FIG. Write in.

【0031】以上説明した結果をまとめると、図21の
(a)に示す下記のようなサイクル数が必要となる。 アドレス下位3ビット RS(開始レジスタ)=偶数 RS=奇数 000 3 3 010 4 4 100 4 4 110 4 4 また、N本のレジスタ群にライトする場合には、図21
の(b)に示すようなサイクル数となる。
Summarizing the results described above, the following number of cycles shown in FIG. 21 (a) is required. Address lower 3 bits RS (start register) = even RS = odd 000 3 3 010 4 4 100 4 4 110 4 4 In addition, when writing to N register groups, FIG.
The number of cycles is as shown in (b).

【0032】[0032]

【発明が解決しようとする課題】上述した従来の構成の
もとでレジスタ群にライト処理を行なうと下記の問題が
あった。
When the write processing is performed on the register group under the above-mentioned conventional configuration, there are the following problems.

【0033】(1) ライトポートが4ポートであった
ために制御が複雑となってしまう。これは、レジスタ群
のライトポートが多い程、制御が複雑になるので、レジ
スタ幅を倍にした計算機システムに適用しようとする
と、更に制御が複雑になってしまう。従って、ポート数
の少ない構成が望まれている。
(1) Since the number of write ports is 4, the control becomes complicated. This is because the control becomes more complicated as the number of write ports in the register group is larger, so that the control becomes more complicated when it is applied to a computer system in which the register width is doubled. Therefore, a configuration with a small number of ports is desired.

【0034】(2) 開始アドレスが8バイトバウンダ
リでない場合、ライトできるまでに余分なサイクルが必
要となってしまう問題があった。即ち、4本までライト
できるために、8バイトバウンダリでない場合、2回連
続してメモリから読み出して4本分のデータをまとめて
レジスタ群に書き込むために、1サイクル余分に必要と
なってしまう。
(2) If the start address is not the 8-byte boundary, there is a problem that an extra cycle is required before writing is possible. That is, since it is possible to write up to four lines, if it is not an 8-byte boundary, an extra cycle is required to read data from the memory twice consecutively and write data for four lines into the register group collectively.

【0035】本発明は、これらの問題を解決するため、
レジスタ群をまとめてライトポート数を削減すると共に
開始アドレスが例え8バイトバウンダリでなくてもレジ
スタ群にライトする構成を採用し、実行サイクル数を短
縮することを目的としている。
The present invention solves these problems.
The purpose is to reduce the number of execution cycles by reducing the number of write ports by grouping register groups and adopting a configuration for writing to the register group even if the start address is not 8-byte boundary.

【0036】[0036]

【課題を解決するための手段】図1は、本発明の原理ブ
ロック図を示す。図1において、メモリ1は、バウンダ
リ単位にデータを読み書きするメモリである。
FIG. 1 shows a block diagram of the principle of the present invention. In FIG. 1, a memory 1 is a memory that reads and writes data in boundary units.

【0037】バッファRDBは、メモリ1からバウンダ
リ単位に読み出したデータを一時的に格納するものであ
る。アライメントALMは、メモリ1からバウンダリ単
位に読み出したデータおよび必要に応じてバッファRD
Bから読み出した直前のデータから、レジスタ群2のレ
ジスタに書き込む指定された開始レジスタ番号が偶数あ
るいは奇数に対応したデータを抽出して配列するもので
ある。
The buffer RDB temporarily stores the data read from the memory 1 in boundary units. The alignment ALM is the data read from the memory 1 in boundary units and the buffer RD if necessary.
From the data immediately before being read from B, data corresponding to an even or odd specified start register number to be written in the registers of the register group 2 is extracted and arranged.

【0038】レジスタRDは、アライメントALMによ
って配列されたデータを格納するレジスタである。レジ
スタ群2は、指定された開始レジスタ番号が偶数あるい
は奇数の位置から書き込むレジスタを集めたものであ
る。
The register RD is a register for storing the data arranged by the alignment ALM. The register group 2 is a group of registers to be written from the position where the designated start register number is even or odd.

【0039】[0039]

【作用】本発明は、図1に示すように、アライメントA
LMがメモリ1からバウンダリ単位に読み出したデータ
と、必要に応じてバッファRDBから読み出した直前の
メモリ1のバウンダリ単位のデータとから、レジスタ群
2のレジスタに書き込む指定された開始レジスタ番号が
偶数あるいは奇数に対応したデータを抽出して配列し、
これをレジスタRDに書き込んだ後、このレジスタRD
から読み出したデータを、レジスタ群の指定された開始
レジスタ番号が偶数あるいは奇数の位置のレジスタから
書き込むようにしている。
The present invention, as shown in FIG.
Based on the data read by the LM in the boundary unit from the memory 1 and the data in the boundary unit of the memory 1 immediately before read from the buffer RDB as necessary, the specified start register number to be written in the register of the register group 2 is even or Extract the data corresponding to odd numbers and arrange it,
After writing this to register RD, register RD
The data read from is written from the register at the position where the specified start register number of the register group is even or odd.

【0040】また、レジスタ群2を4バイトの複数のレ
ジスタから構成し、このレジスタが2つのライトポート
を持ち、これら2つのライトポートから同時に計8バイ
トデータを書き込むようにしている。
Further, the register group 2 is composed of a plurality of 4-byte registers, and this register has two write ports, and a total of 8 bytes of data are simultaneously written from these two write ports.

【0041】従って、レジスタ群2をまとめてライトポ
ート数を削減すると共に開始アドレスが例え8バイトバ
ウンダリでなくてもその一部をレジスタ群2にライトす
ることにより、実行サイクル数を短縮することが可能と
なる。
Therefore, it is possible to reduce the number of write cycles by reducing the number of write ports by grouping the register group 2 and writing a part of the write address to the register group 2 even if the start address is not 8-byte boundary. It will be possible.

【0042】[0042]

【実施例】次に、図2から図13を用いて本発明の実施
例の構成および動作を順次詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the construction and operation of an embodiment of the present invention will be described in detail with reference to FIGS.

【0043】図2は、本発明の動作説明図を示す。図2
の(a)は、動作フローチャートを示す。図2の(a)
において、S1は、カウンタCT=転送本数−RWF本
数−1を計算する。ここで、転送本数は、メモリからレ
ジスタ群2に転送してライトする本数であって、例えば
後述する図3の例では、9本(からの9本)であ
る。RWF本数は、最初の1回目にライトする本数であ
って、例えば後述する図3の例の下位3ビットが(00
0)の場合には、4本である。従って、図3の(00
0)の場合には、 カウンタCT=9−4−1=4 となる。
FIG. 2 is a diagram for explaining the operation of the present invention. Figure 2
(A) shows an operation flowchart. Figure 2 (a)
In S1, the counter CT = the number of transfers-the number of RWFs-1 is calculated. Here, the number of transfers is the number of transfers and writes from the memory to the register group 2, and is, for example, 9 (from 9) in the example of FIG. 3 described later. The number of RWFs is the number of lines to be written at the first time, and for example, the lower 3 bits of the example of FIG.
In the case of 0), there are four. Therefore, (00
In the case of 0), counter CT = 9-4-1 = 4.

【0044】S2は、オペコード分岐する。これは、図
2の(b)にオペコード分岐を示したように、レジスタ
群2のレジスタにライトする開始レジスタ番号=RSが
偶か奇か、および転送本数によって決まる。上述した図
3の例では、転送本数=9本、RS=偶であるので、オ
ペコード分岐(01)となり、S3に進む。一方、オペ
コード分岐(00)の場合には、S6で一度のRWでデ
ータをレジスタ群2にライト終了する。
In S2, the operation code branches. This is determined by whether the start register number = RS written in the register of the register group 2 is even or odd, and the number of transfers, as shown in the operation code branching in FIG. In the example of FIG. 3 described above, since the number of transfers = 9 and RS = even, the operation code branch (01) occurs, and the process proceeds to S3. On the other hand, in the case of the operation code branch (00), the writing of the data to the register group 2 is completed with one RW in S6.

【0045】S3は、RWF RQ CT<4 CT−4 の処理を行なう。即ち、レジスタ群に第1回目にRDに
格納されたデータ(1つから4つのうちのいずれか)を
レジスタ群に書き込んだ後(RWF)、CTが4よりも
小さいか判別(CT<4)、およびCTから4を引いた
値を新たなCTの値とする(CT−4)。ここで、RW
Fは、図3の(A)の場合には、第1回目にRDに格納
されたデータ、、、の4つをレジスタ群2にラ
イトする。
At S3, the process of RWF RQ CT <4 CT-4 is performed. That is, after writing the data (one of 1 to 4) stored in the RD to the register group for the first time (RWF), it is determined whether CT is smaller than 4 (CT <4). , And the value obtained by subtracting 4 from CT are set as new CT values (CT-4). Where RW
In the case of FIG. 3A, F writes the four data stored in the RD for the first time to the register group 2.

【0046】・S3でCT<4と判別された場合には、
レジスタ群2に書き込むデータ数が4個以下で1回の書
込みでレジスタ群2に書き込めると判明したので、S5
でRWし(レジスタ群2に書き込み)、終了する。
When CT <4 is determined in S3,
Since it was found that the number of data to be written in the register group 2 is 4 or less and the data can be written in the register group 2 by one writing, S5
Then, RW is performed (writing to the register group 2), and the process ends.

【0047】・S3でCT≧4と判別された場合には、
レジスタ群に書き込むデータ数が4個以上で複数回の書
込み必要と判明したので、S4に進む。 S4は、RW RQ CT<4 CT−4 の処理を行なう。即ち、レジスタ群にRDに格納された
データをレジスタ群に書き込んだ後(RW)、CTが4
よりも小さいか判別(CT<4)、およびCTから4を
引いた値を新たなCTの値とする(CT−4)。ここ
で、RWは、図3の(A)の場合には、第2回目にRD
に格納されたデータ、、、の4つをレジスタ群
2にライトする。
When CT ≧ 4 is determined in S3,
Since the number of data to be written in the register group is four or more and it is determined that the writing is required plural times, the process proceeds to S4. S4 performs the process of RW RQ CT <4 CT-4. That is, after writing the data stored in the RD to the register group to the register group (RW), the CT becomes 4
Is smaller than (CT <4), and a value obtained by subtracting 4 from CT is set as a new CT value (CT-4). Here, in the case of FIG. 3A, RW is the second RD.
The four pieces of data, which are stored in, are written in the register group 2.

【0048】・S4でCT<4と判別された場合には、
レジスタ群2に書き込むデータ数が4個以下で1回の書
込みでレジスタ群2に書き込めると判明したので、S5
でRWし(レジスタ群2に書き込み)、終了する。
When CT <4 is determined in S4,
Since it was found that the number of data to be written in the register group 2 is 4 or less and the data can be written in the register group 2 by one writing, S5
Then, RW is performed (writing to the register group 2), and the process ends.

【0049】・S3でCT≧4と判別された場合には、
レジスタ群に書き込むデータ数が5個以上で複数回の書
込み必要と判明したので、S4を繰り返す。S5は、R
Wする(RDのデータをレジスタ群2にライトする)。
When CT ≧ 4 is determined in S3,
Since it is found that the number of data to be written in the register group is 5 or more and it is necessary to write a plurality of times, S4 is repeated. S5 is R
W (write RD data to register group 2).

【0050】以上によって、第1回目にメモリ1からバ
ウンダリ単位に読み出されてレジスタRDに格納された
データをS3で読み出してレジスタ群2に格納する。そ
して、2回目以降はS4で4つづつレジスタ群2にライ
トし、最後に4つ以下がRDに残った場合にはS5で残
りのデータをレジスタ群2にライトする。
As described above, the data read from the memory 1 in the boundary unit for the first time and stored in the register RD is read in S3 and stored in the register group 2. Then, after the second time, in S4, four data are written to the register group 2 by four, and when four or less data remain in the RD at last, the remaining data are written in the register group 2 in S5.

【0051】図2の(b)は、オペコード分岐を示す。
これは、既述したように、図2の(a)の説明図で、S
2のオペコード分岐(00)、(01)のいずれに分岐
するかの条件を設定したものである。ここで、転送本数
は、メモリ1からレジスタ群2に転送するデータの本数
(図3以下の例は9本)を表す。RS=偶(RS=奇)
はレジスタ群のライトする開始レジスタ番号が偶数(奇
数)を表す。
FIG. 2B shows the operation code branch.
As described above, this is the explanatory diagram of FIG.
The condition of whether to branch to the operation code branch (00) or (01) of 2 is set. Here, the number of transfers represents the number of data transferred from the memory 1 to the register group 2 (nine in the example shown in FIG. 3 and below). RS = Even (RS = Odd)
Indicates that the start register number to be written by the register group is even (odd).

【0052】図2の(c)は、RWF本数を示す。この
RWF本数は、第1回目にメモリ1から読み出してレジ
スタRDに格納した本数を表す。アドレス下位3ビット
は、メモリ1から読み出すアドレスの下位3ビットを表
す。
FIG. 2C shows the number of RWFs. This RWF number represents the number read from the memory 1 and stored in the register RD for the first time. The lower 3 bits of the address represent the lower 3 bits of the address read from the memory 1.

【0053】以下、転送本数=9本、メモリのバウンダ
リ=8バイトの場合を例に順次詳細に説明する。図3
は、本発明の実施例(RS=偶、アドレス下位3ビット
=(000)、(110))を示す。
In the following, the case where the number of transfers = 9 and the boundary of the memory = 8 bytes will be sequentially described in detail as an example. Figure 3
Shows an embodiment of the present invention (RS = even, lower 3 bits of address = (000), (110)).

【0054】図3の(a)はメモリ1上のデータの格納
されている様子を示す。図3の(a)において、(A)
は、メモリ1からデータを読み出すアドレスが(00
0)の場合であって、8バイトバウンダリには、図示の
ように、(、、、)、(、、、)、
(、−、−、−)というように格納されている。
FIG. 3A shows how data is stored in the memory 1. In FIG. 3A, (A)
Indicates that the address for reading data from the memory 1 is (00
0), the 8-byte boundary has (,,,), (,,,),
It is stored as (, −, −, −).

【0055】(D)は、メモリ1からデータを読み出す
アドレスが(110)の場合であって、8バイトバウン
ダリには、図示のように、(−、−、−、)、(、
、、)、(、、、)というように格納さ
れている。
(D) is the case where the address for reading data from the memory 1 is (110), and the 8-byte boundary is (-,-,-,), (,
,,), (,,,) are stored.

【0056】図3の(b)は、レジスタRDに格納する
様子を示す。図3の(b)において、 (A)は、RDに、、、:1サイクル目 、、、:2サイクル目 :3サイクル目 というように格納する(図7に詳細を示す)。
FIG. 3B shows the state of storing in the register RD. In (b) of FIG. 3, (A) stores in the RD as follows:,: 1st cycle,:,: 2nd cycle: 3rd cycle (details are shown in FIG. 7).

【0057】 (D)は、RDに−、−、−、−:1サイクル目 、、、:2サイクル目 、、、:3サイクル目 :4サイクル目 というように格納する(図10に詳細を示す)。(D) is stored in RD as −, −, −, −: 1st cycle:,: 2nd cycle ,,: 3rd cycle: 4th cycle (see FIG. 10 for details). Shown).

【0058】図3の(c)は、レジスタ群にライトする
様子を示す。図3の(c)において、(A)は、レジス
タ群にRD上のデータを、ここではRS=偶であるた
め、先頭から順次図示のようにライトする。(D)は、
1サイクル遅れて同様にRD上のデータをライトする。
FIG. 3C shows the state of writing to the register group. In FIG. 3C, in FIG. 3A, the data on RD is written in the register group sequentially from the beginning as shown because RS = even. (D) is
Similarly, the data on RD is written with a delay of one cycle.

【0059】以上によって、アドレス下位3ビット(0
00)の(A)およびアドレス下位3ビット(110)
の(D)の場合、図3の(b)に示すようにレジスタR
Dに格納した後、このレジスタRDのデータをそのまま
レジスタ群2にライトする。
As described above, the lower 3 bits of the address (0
00) (A) and lower 3 bits of address (110)
In the case of (D) of FIG.
After storing in D, the data of this register RD is written in the register group 2 as it is.

【0060】図4は、本発明の実施例(RS=偶、アド
レス下位3ビット=(010)、(100))を示す。
図4の(a)はメモリ1上のデータの格納されている様
子を示す。
FIG. 4 shows an embodiment of the present invention (RS = even, lower 3 bits of address = (010), (100)).
FIG. 4A shows how data is stored in the memory 1.

【0061】図4の(a)において、(B)は、メモリ
1からデータを読み出すアドレスが(010)の場合で
あって、8バイトバウンダリには、図示のように、
(−、、、)、(、、、)、(、、
−、−)というように格納されている。
In FIG. 4A, FIG. 4B shows the case where the address for reading data from the memory 1 is (010), and the 8-byte boundary is as shown in the figure.
(-,,,), (,,,), (,,
-,-) Are stored.

【0062】(C)は、メモリ1からデータを読み出す
アドレスが(100)の場合であって、8バイトバウン
ダリには、図示のように、(−、−、、)、(、
、、)、(、、、−)というように格納さ
れている。
(C) is a case where the address for reading data from the memory 1 is (100), and the 8-byte boundary is (-,-,), (,
,,), (,,,-) are stored.

【0063】図4の(b)は、レジスタRDに格納する
様子を示す。図4の(b)において、 (B)は、RDに−、−、、:1サイクル目 、、、:2サイクル目 、、、:3サイクル目 というように格納する(図8に詳細を示す)。
FIG. 4B shows a state of storing in the register RD. In (b) of FIG. 4, (B) stores in RD such as −, − ,,: 1st cycle ,,: 2nd cycle ,,: 3rd cycle (details are shown in FIG. 8). ).

【0064】(C)は、RDに同様に、 −、−、、:1サイクル目 、、、:2サイクル目 、、、:3サイクル目 というように格納する(図9に詳細を示す)。Similarly, RD is stored in RD in the following manner: −, − ,,: 1st cycle ,,: 2nd cycle ,,: 3rd cycle (details are shown in FIG. 9).

【0065】図4の(c)は、レジスタ群にライトする
様子を示す。図4の(c)において、(B)は、レジス
タ群にRD上のデータを、ここではRS=偶であるた
め、先頭から順次図示の下記のようにライトする。
FIG. 4C shows the state of writing to the register group. In (c) of FIG. 4, (B) sequentially writes the data on RD to the register group from the beginning as shown below because RS = even here.

【0066】1回目:、 2回目:、、、 3回目:、、 以上によって、アドレス下位3ビット(010)の
(B)およびアドレス下位3ビット(100)の(C)
の場合、図4の(b)に示すようにレジスタRDに格納
した後、このレジスタRDのデータをそのままレジスタ
群2にライトする。
1st time :, 2nd time: ,,, 3rd time: ,, By the above, the address lower 3 bits (010) (B) and the address lower 3 bits (100) (C)
In this case, as shown in FIG. 4 (b), after being stored in the register RD, the data in this register RD is directly written into the register group 2.

【0067】図5は、本発明の実施例(RS=奇、アド
レス下位3ビット=(000)、(010))を示す。
図5の(a)はメモリ1上のデータの格納されている様
子を示す。
FIG. 5 shows an embodiment of the present invention (RS = odd, lower 3 bits of address = (000), (010)).
FIG. 5A shows how data is stored on the memory 1.

【0068】図5の(a)において、(A)は、メモリ
1からデータを読み出すアドレスが(000)の場合で
あって、8バイトバウンダリには、図示のように、
(、、、)、(、、、)、(、−、
−、−)というように格納されている。
In FIG. 5A, (A) shows the case where the address for reading data from the memory 1 is (000), and the 8-byte boundary is as shown in the figure.
(,,,), (,,,), (,-,
-,-) Are stored.

【0069】(B)は、メモリ1からデータを読み出す
アドレスが(010)の場合であって、8バイトバウン
ダリには、図示のように、(−、、、)、(、
、、)、(、、−、−)というように格納さ
れている。
(B) is a case where the address for reading data from the memory 1 is (010), and the 8-byte boundary is (-,,,), (,
,,), (,,-,-) are stored.

【0070】図5の(b)は、レジスタRDに格納する
様子を示す。図5の(b)において、(A)、(B)と
もに、 RDに−、、、:1サイクル目 、、、:2サイクル目 、 :3サイクル目 というように格納する。
FIG. 5B shows the state of storing in the register RD. In (b) of FIG. 5, both (A) and (B) are stored in RD in the following manner:-,, :: 1st cycle ,,:, 2nd cycle ,: 3rd cycle.

【0071】図5の(c)は、レジスタ群にライトする
様子を示す。図5の(c)において、(A)、(B)と
もに、レジスタ群にRD上のデータを、ここではRS=
奇であるため、2つ目から順次図示のようにライトす
る。
FIG. 5C shows the state of writing to the register group. In both (A) and (B) of FIG. 5C, the data on RD is stored in the register group, where RS =
Since it is strange, the data is sequentially written from the second as shown.

【0072】以上によって、アドレス下位3ビット(0
00)の(A)およびアドレス下位3ビット(010)
の(B)の場合、図5の(b)に示すようにレジスタR
Dに格納した後、このレジスタRDのデータをそのまま
レジスタ群2にライトする。
As described above, the lower 3 bits of the address (0
00) (A) and lower 3 bits of address (010)
In the case of (B) of FIG.
After storing in D, the data of this register RD is written in the register group 2 as it is.

【0073】図6は、本発明の実施例(RS=奇、アド
レス下位3ビット=(100)、(110))を示す。
図6の(a)はメモリ1上のデータの格納されている様
子を示す。
FIG. 6 shows an embodiment of the present invention (RS = odd, lower 3 bits of address = (100), (110)).
FIG. 6A shows how data is stored on the memory 1.

【0074】図6の(a)において、(C)は、メモリ
1からデータを読み出すアドレスが(100)の場合で
あって、8バイトバウンダリには、図示のように、
(−、−、、)、(、、、)、(、、
、−)というように格納されている。
In FIG. 6A, FIG. 6C shows the case where the address for reading data from the memory 1 is (100), and the 8-byte boundary is as shown in the figure.
(-,-,,), (,,,), (,,
, −) Are stored.

【0075】(D)は、メモリ1からデータを読み出す
アドレスが(110)の場合であって、8バイトバウン
ダリには、図示のように、(−、−、−、)、(、
、、)、(、、、)というように格納さ
れている。
(D) is the case where the address for reading data from the memory 1 is (110), and the 8-byte boundary is (-,-,-,), (,
,,), (,,,) are stored.

【0076】図6の(b)は、レジスタRDに格納する
様子を示す。図6の(b)において、(C)、(D)と
もに、 RDに−、−、−、:1サイクル目 、、、:2サイクル目 、、、:3サイクル目 というように格納する。
FIG. 6B shows how the data is stored in the register RD. In (b) of FIG. 6, both (C) and (D) are stored in RD such as −, −, − ,: 1st cycle,:,: 2nd cycle ,, :: 3rd cycle.

【0077】図6の(c)は、レジスタ群にライトする
様子を示す。図6の(c)において、(C)、(D)と
もに、レジスタ群にRD上のデータを、ここではRS=
奇であるため、2つ目から順次図示のようにライトす
る。
FIG. 6C shows the state of writing to the register group. In FIG. 6C, in both (C) and (D), the data on RD is stored in the register group, where RS =
Since it is strange, the data is sequentially written from the second as shown.

【0078】以上によって、アドレス下位3ビット(1
00)の(C)およびアドレス下位3ビット(110)
の(D)の場合、図6の(b)に示すようにレジスタR
Dに格納した後、このレジスタRDのデータをそのまま
レジスタ群2にライトする。
As described above, the lower 3 bits of the address (1
00) (C) and lower 3 bits of address (110)
In the case of (D) of FIG.
After storing in D, the data of this register RD is written in the register group 2 as it is.

【0079】図7は、本発明の全体のタイムチャート
(RS=偶、アドレス下位3ビット=000)を示す。
これは、既述した図3の(A)の詳細を説明したもので
ある。 ・μは、マイクロコードであって、既述した図2の動作
を表す。
FIG. 7 shows an overall time chart of the present invention (RS = even, lower 3 bits of address = 000).
This explains the details of (A) of FIG. 3 described above. Μ is a microcode and represents the operation of FIG. 2 described above.

【0080】・リクエストは、メモリ1に対するメモリ
リードのリクエスト(N、N+1、N+2)を表す。 ・リードデータは、メモリ1からリードしたデータであ
る。
The request represents a memory read request (N, N + 1, N + 2) to the memory 1. The read data is the data read from the memory 1.

【0081】・RDBは、図1のバッファRDBに一時
的に格納したデータである。 ・RDは、図1のレジスタRDに格納したデータであ
る。 ・レジスタ群は、図1のレジスタ群2にデータが書き込
まれた様子を示す。
RDB is data temporarily stored in the buffer RDB of FIG. RD is the data stored in the register RD of FIG. -Register group shows how data is written in the register group 2 of FIG.

【0082】この図7は、RS=偶、アドレス下位3ビ
ットが(000)の場合のものである。図8は、本発明
の全体のタイムチャート(RS=偶、アドレス下位3ビ
ット=010)を示す。これは、既述した図4の(B)
の詳細を説明したものであって、RS=偶、アドレス下
位3ビットが(010)の場合のものである。
FIG. 7 shows the case where RS = even and the lower 3 bits of the address are (000). FIG. 8 shows an overall time chart of the present invention (RS = even, lower 3 bits of address = 010). This is described above with reference to FIG.
In the case where RS = even and the lower 3 bits of the address are (010).

【0083】図9は、本発明の全体のタイムチャート
(RS=偶、アドレス下位3ビット=100)を示す。
これは、既述した図4の(C)の詳細を説明したもので
あって、RS=偶、アドレス下位3ビットが(100)
の場合のものである。
FIG. 9 shows an overall time chart of the present invention (RS = even, lower 3 bits of address = 100).
This is a description of the details of (C) of FIG. 4 already described, where RS = even and the lower 3 bits of the address are (100).
It is the case of.

【0084】図10は、本発明の全体のタイムチャート
(RS=偶、アドレス下位3ビット=110)を示す。
これは、既述した図3の(D)の詳細を説明したもので
あって、RS=偶、アドレス下位3ビットが(110)
の場合のものである。
FIG. 10 shows an overall time chart of the present invention (RS = even, lower 3 bits of address = 110).
This is a description of the details of (D) of FIG. 3 already described, where RS = even and the lower 3 bits of the address are (110).
It is the case of.

【0085】図11は、本発明のRS=偶、ライト本数
=9の場合のフローチャートを示す。これは、既述した
図3と図4、更にその詳細を説明した図7から図10の
結果をまとめたものである。
FIG. 11 shows a flowchart of the present invention when RS = even and the number of writes = 9. This is a summary of the results of FIGS. 3 and 4 described above, and FIGS. 7 to 10 describing the details thereof.

【0086】・サイクル1、2、3、4、5は、処理を
行なうサイクル数である。 ・(000)、(010)、(100)、(110)
は、メモリからデータを読み出すアドレスの下位3ビッ
トを表す。ここで、メモリは8バイトバウンダリとす
る。
Cycles 1, 2, 3, 4, 5 are the number of cycles for processing.・ (000), (010), (100), (110)
Represents the lower 3 bits of the address for reading data from the memory. Here, the memory has an 8-byte boundary.

【0087】・(000)の場合には図示のように、 サイクル1:RDライト、 、、、 サイクル2:レジスタライト、、、、 サイクル3:レジスタライト、、、、 サイクル4:レジスタライト、、−、−、− というように、合計4サイクルでレジスタライトを終了
する。同様に、(010)、(100)も合計4サイク
ルでレジスタライトを終了する。(110)の場合に
は、合計5サイクルでレジスタライトを終了する。
In the case of (000), as shown in the figure, cycle 1: RD write ,, cycle 2: register write, cycle 3: register write, cycle 4: register write, Register write is completed in a total of 4 cycles, such as −, −, −. Similarly, (010) and (100) also complete the register write in a total of 4 cycles. In the case of (110), the register write is completed in a total of 5 cycles.

【0088】図12は、本発明のRS=奇、ライト本数
=9の場合のフローチャートを示す。これは、既述した
図5と図6の結果をまとめたものである。 ・サイクル1、2、3、4、5は、処理を行なうサイク
ル数である。
FIG. 12 shows a flow chart when RS = odd and the number of writes = 9 according to the present invention. This is a summary of the results of FIGS. 5 and 6 described above. -Cycles 1, 2, 3, 4, and 5 are the number of cycles for processing.

【0089】・(000)、(010)、(100)、
(110)は、メモリからデータを読み出すアドレスの
下位3ビットを表す。ここで、メモリは8バイトバウン
ダリとする。
(000), (010), (100),
(110) represents the lower 3 bits of the address for reading the data from the memory. Here, the memory has an 8-byte boundary.

【0090】・(000)の場合にはRS=奇であるの
で、図示のように、 サイクル1:RDライト、 −、、、 サイクル2:レジスタライト、−、、、 サイクル3:レジスタライト、、、、 サイクル4:レジスタライト、、、−、− というように、合計4サイクルでレジスタライトを終了
する。同様に、(010)、(100)、(110)も
合計4サイクルでレジスタライトを終了する。
In the case of (000), since RS = odd, as shown in the figure, cycle 1: RD write,-, cycle 2: register write,-, cycle 3: register write, , Cycle 4: Register write ...,-,-In this way, register write is completed in a total of 4 cycles. Similarly, (010), (100), and (110) also complete the register write in a total of 4 cycles.

【0091】図13は、本発明のサイクル数例を示す。
図13の(a)は、本発明のサイクル数(転送サイル数
=9)の場合を示す。これは、既述した図11のRS=
偶、図12のRS=奇の場合についてサイクル数を表に
まとめたものである。サイクル数は図示の下記のように
なる。
FIG. 13 shows an example of the number of cycles of the present invention.
FIG. 13A shows the case of the number of cycles of the present invention (the number of transfer sills = 9). This is RS = in FIG.
Even, in the case of RS = odd in FIG. 12, the number of cycles is summarized in a table. The number of cycles is as shown below.

【0092】 アドレス下位3ビット RS=偶 RS=奇 (000) 3 3 (010) 3 3 (100) 3 3 (110) 4 3 図13の(b)は、本発明のサイクル数(転送サイル数
=N本)の場合を示す。サイクル数は図示の下記のよう
になる。
Lower 3 bits of address RS = even RS = odd (000) 3 3 (010) 3 3 (100) 3 3 (110) 4 3 FIG. 13B shows the number of cycles (the number of transfer siles of the present invention. = N lines). The number of cycles is as shown below.

【0093】 アドレス下位3ビット RS=偶 RS=奇 (000) N/4 (N+1)/4 (010) (N+2)/4 (N+1)/4 (100) (N+2)/4 (N+3)/4 (110) (N+4)/4 (N+3)/4Lower 3 bits of address RS = even RS = odd (000) N / 4 (N + 1) / 4 (010) (N + 2) / 4 (N + 1) / 4 (100) (N + 2) / 4 (N + 3) / 4 (110) (N + 4) / 4 (N + 3) / 4

【0094】[0094]

【発明の効果】以上説明したように、本発明によれば、
メモリ1からバウンダリ単位に読み出したデータをバッ
ファRDBに格納すると共に、このバウンダリ単位のデ
ータとバッファRDBから読み出したデータを配列して
ライト可能な形でレジスタRDに格納し、このレジスタ
RDから読み出したデータをレジスタ群2にライトする
ことを繰り返す構成を採用しているため、レジスタ群2
をまとめてライトポート数を削減すると共に開始アドレ
スが例えば8バイトバウンダリでなくてもその一部をレ
ジスタ群2にライトすることができ、実行サイクル数を
短縮することができると共に、ライトポート数を削減し
て処理を簡単にすることができる。これらにより、次の
ような効果がある。
As described above, according to the present invention,
The data read from the memory 1 in the boundary unit is stored in the buffer RDB, and the data in the boundary unit and the data read from the buffer RDB are arranged and stored in the register RD in a writable form and read from the register RD. Since the configuration that repeatedly writes data to the register group 2 is adopted, the register group 2
In addition to reducing the number of write ports, a part of the write address can be written to the register group 2 even if the start address is not, for example, an 8-byte boundary, the number of execution cycles can be shortened, and the number of write ports can be reduced. It can be reduced to simplify the process. These have the following effects.

【0095】(1) ライトポートが本発明の実施例の
場合には、2ポートで済み、従来の図14の例の4ポー
トから半分のポート数に削減できると共に、レジスタ幅
を2倍になっているので、レジスタ幅を従来の2倍にし
た新アーキテクチャに対しても対応できる。
(1) In the case of the embodiment of the present invention, the number of write ports is only 2 and it is possible to reduce the number of ports from 4 in the conventional example of FIG. 14 to half and double the register width. Therefore, it is possible to support a new architecture in which the register width is double the conventional one.

【0096】(2) メモリからデータを読み出す開始
アドレスが8バイトバウンダリでなくても、ライトでき
るまで余分なリクエストが不要となると共に、1回目の
リードで得たデータに応じてレジスタ群にライトする本
数を動的に変え、余分なリクエストを抑止し、実行サイ
クル数を削減できる。
(2) Even if the start address for reading the data from the memory is not the 8-byte boundary, no extra request is required until the data can be written, and the data is written to the register group according to the data obtained by the first read. The number of execution cycles can be reduced by changing the number dynamically, suppressing unnecessary requests.

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

【図1】本発明の原理ブロック図である。FIG. 1 is a principle block diagram of the present invention.

【図2】本発明の動作説明図である。FIG. 2 is an operation explanatory diagram of the present invention.

【図3】本発明の実施例(RS=偶、アドレス下位3ビ
ット=000、110)である。
FIG. 3 is an embodiment of the present invention (RS = even, lower 3 bits of address = 000, 110).

【図4】本発明の実施例(RS=偶、アドレス下位3ビ
ット=010、100)である。
FIG. 4 is an embodiment of the present invention (RS = even, lower 3 bits of address = 010, 100).

【図5】本発明の実施例(RS=奇、アドレス下位3ビ
ット=000、010)である。
FIG. 5 is an example of the present invention (RS = odd, lower 3 bits of address = 000, 010).

【図6】本発明の実施例(RS=奇、アドレス下位3ビ
ット=100、110)である。
FIG. 6 is an embodiment of the present invention (RS = odd, lower 3 bits of address = 100, 110).

【図7】本発明の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=000)である。
FIG. 7 is an overall time chart of the present invention (RS = even, lower 3 bits of address = 000).

【図8】本発明の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=010)である。
FIG. 8 is an overall time chart of the present invention (RS = even, lower 3 bits of address = 010).

【図9】本発明の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=100)である。
FIG. 9 is an overall time chart of the present invention (RS = even, lower 3 bits of address = 100).

【図10】本発明の全体のタイムチャート(RS=偶、
アドレス下位3ビット=110)である。
FIG. 10 is an overall time chart of the present invention (RS = even,
Address lower 3 bits = 110).

【図11】本発明のRS=偶、ライト本数=9の場合の
フローチャートである。
FIG. 11 is a flowchart of the present invention when RS = even and the number of writes = 9.

【図12】本発明のRS=奇、ライト本数=9の場合の
フローチャートである。
FIG. 12 is a flow chart when RS = odd and the number of writes = 9 according to the present invention.

【図13】本発明のサイクル数例である。FIG. 13 is an example of the number of cycles of the present invention.

【図14】従来技術の構成図である。FIG. 14 is a configuration diagram of a conventional technique.

【図15】従来技術の説明図である。FIG. 15 is an explanatory diagram of a conventional technique.

【図16】従来の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=000)である。
FIG. 16 is a conventional overall time chart (RS = even, lower 3 bits of address = 000).

【図17】従来の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=010)である。
FIG. 17 is a conventional entire time chart (RS = even, lower 3 bits of address = 010).

【図18】従来の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=100)である。
FIG. 18 is a conventional entire time chart (RS = even, lower 3 bits of address = 100).

【図19】従来の全体のタイムチャート(RS=偶、ア
ドレス下位3ビット=110)である。
FIG. 19 is a conventional overall time chart (RS = even, lower 3 bits of address = 110).

【図20】従来の動作指示説明図である。FIG. 20 is a diagram illustrating a conventional operation instruction.

【図21】従来のサイクル数例である。FIG. 21 is an example of a conventional cycle number.

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

1:メモリ 2:レジスタ群 RDB:バッファ RD:レジスタ ALM:アライメント 1: Memory 2: Register group RDB: Buffer RD: Register ALM: Alignment

───────────────────────────────────────────────────── フロントページの続き (72)発明者 小椋 仁成 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 渡部 徹 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 竹野 巧 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 丸山 拓巳 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 加藤 慎哉 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 竹下 克典 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Hitoshi Ogura 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited (72) Inventor Toru Watanabe, 1015, Kamikodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited ( 72) Inventor Takumi Takeno 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture, Fujitsu Limited 1015 Kamiodanaka, Nakahara-ku, Kawasaki City, Fujitsu Limited (72) Inventor, Katsunori Takeshita 1015, Kamikodanaka, Nakahara-ku, Kawasaki, Kanagawa Prefecture, Fujitsu Limited

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】メモリのバウンダリ単位に読み出したデー
タをレジスタ内の偶数あるいは奇数の位置からライトす
るレジスタライト方式において、 メモリ(1)からバウンダリ単位に読み出したデータを
一時的に保持するバッファRDBと、 メモリ(1)からバウンダリ単位に読み出したデータお
よび必要に応じて上記バッファRDBから読み出した直
前のデータから、レジスタ群(2)のレジスタに書き込
む指定された開始レジスタ番号が偶数あるいは奇数に対
応したデータを抽出して配列するアライメントALM
と、 このアライメントALMによって配列されたデータを格
納するレジスタRDと、 このレジスタRDから読み出したデータを上記指定され
た開始レジスタ番号が偶数あるいは奇数の位置からライ
トするレジスタの集まりであるレジスタ群(2)とを備
えたことを特徴とするレジスタライト方式。
1. A buffer RDB for temporarily holding data read from a memory (1) in a boundary unit in a register write system for writing data read in a boundary unit of a memory from an even or odd position in a register. , The specified start register number to be written to the register of the register group (2) corresponds to an even number or an odd number from the data read from the memory (1) in boundary units and the data immediately before read from the buffer RDB as necessary. Alignment ALM for extracting and arranging data
And a register RD for storing the data arranged by the alignment ALM, and a register group (2 which is a group of registers for writing the data read from the register RD from the position where the designated start register number is even or odd. ) And a register write method characterized by having.
【請求項2】上記レジスタ群(2)が4バイトの複数の
レジスタからなり、当該レジスタが2つのライトポート
を持ち、この2つのライトポートから同時に計8バイト
データを書き込むように構成したことを特徴と請求項1
記載のレジスタライト方式。
2. The register group (2) comprises a plurality of 4-byte registers, the registers having two write ports, and a structure in which a total of 8 bytes of data is simultaneously written from the two write ports. Features and Claim 1
Register write method described.
JP5279396A 1993-11-09 1993-11-09 Register write system Withdrawn JPH07134677A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5279396A JPH07134677A (en) 1993-11-09 1993-11-09 Register write system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5279396A JPH07134677A (en) 1993-11-09 1993-11-09 Register write system

Publications (1)

Publication Number Publication Date
JPH07134677A true JPH07134677A (en) 1995-05-23

Family

ID=17610545

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5279396A Withdrawn JPH07134677A (en) 1993-11-09 1993-11-09 Register write system

Country Status (1)

Country Link
JP (1) JPH07134677A (en)

Similar Documents

Publication Publication Date Title
CA1181866A (en) Multiword memory data storage and addressing technique and apparatus
KR20070107163A (en) Memory device and method having multiple internal data buses and memory bank interleaving
JPS618785A (en) Access control system for storage device
US7441099B2 (en) Configurable SIMD processor instruction specifying index to LUT storing information for different operation and memory location for each processing unit
JP3737755B2 (en) Register file by register window method and control method thereof
JPH02234242A (en) Partial write control system
JPH07134677A (en) Register write system
JPH023163A (en) Multi-port memory
JPS6211736B2 (en)
JPS61224051A (en) Buffer memory control system
US20100064115A1 (en) Vector processing unit
JP3961461B2 (en) Vector processing apparatus and vector processing method
KR20010070315A (en) Plural line buffer type memory lsi
JP3771682B2 (en) Vector processing equipment
JP2812610B2 (en) Pipeline control method
JP2576589B2 (en) Virtual storage access control method
JPS59132479A (en) Data processing circuit
JPH05204635A (en) Register control system
JP3245488B2 (en) List vector processing device
JPS6045851A (en) Prefetching buffer memory
JPS6024672A (en) Vector processing device
JPS59180635A (en) Method for controlling prefetch of instruction
JPH0238964B2 (en)
JP2553630B2 (en) Data processing device
JPH0368045A (en) Main memory control system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010130