JPH0226259B2 - - Google Patents

Info

Publication number
JPH0226259B2
JPH0226259B2 JP56142977A JP14297781A JPH0226259B2 JP H0226259 B2 JPH0226259 B2 JP H0226259B2 JP 56142977 A JP56142977 A JP 56142977A JP 14297781 A JP14297781 A JP 14297781A JP H0226259 B2 JPH0226259 B2 JP H0226259B2
Authority
JP
Japan
Prior art keywords
access
data
access request
vector
unit
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.)
Expired - Lifetime
Application number
JP56142977A
Other languages
Japanese (ja)
Other versions
JPS5844570A (en
Inventor
Shoji Nakatani
Juji Oinaga
Masaki Kitajima
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 JP56142977A priority Critical patent/JPS5844570A/en
Publication of JPS5844570A publication Critical patent/JPS5844570A/en
Publication of JPH0226259B2 publication Critical patent/JPH0226259B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Advance Control (AREA)

Description

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

本発明は、ベクトル処理における異常検出方式
に関し、ベクトル処理装置より所定の要求数のデ
ータが確実に処理されたか否かをチエツクしよう
とするものである。 オペランドaとbを演算して結果cを求めるよ
うな命令において該a,bが共に複数のエレメン
トa0,a1,a2…,b0,b1,b2…からなり結果cは
対応エレメントa0とb0,a1とb1…を演算(加算、
乗算等)したものである場合(詳しくはa,b,
cはベクトルレジスタのレジスタ番号を示し、
a0,b0などはその内容いわゆるエレメント番号を
示す)、かゝる命令を実行する装置をベクトル処
理装置と呼ぶ。この種の装置は特願昭56−47774
等で詳述されている。ベクトル処理装置では、前
述しているようにオペランドaとbを演算して演
算結果cを出力する場合、a,b,cはベクトル
レジスタのレジスタ番号を示すようにしておく。
またオペランドa,b,cは、演算を実行する前
に予めa,bを主記憶よりもつてきておき、a,
bがベクトルレジスタに格納されてから演算を実
行するようにする。さらに、演算結果cが出力さ
れベクトルレジスタに格納されてから主記憶にス
トアする。なおベクトル処理装置には、a,bを
主記憶からベクトルレジスタにもつてくる命令
(例えばベクトルロード命令)あるいは演算結果
cをベクトルレジスタから主記憶にストアする命
令(例えばベクトルストア命令)を有している。 このようにロード/ストアと演算を独立の命令
で実行させるようにしておくことにより、メモリ
のバンクビジーあるいは他アクセス間との優先順
位等によるデータ転送の乱れが演算器に影響を及
ぼさないようになる。第1図はそのメモリアクセ
ス部を示し、MSu0〜MSu7は複数個本例では8
モジユールの主記憶、MCuはその制御装置で、
メモリアクセス要求があると優先順位、バンクビ
ジー等の条件をとつて主記憶MSuに対し読出し、
書込みのアクセスを行なう。12,14はアクセ
ス要求部、16,18はアクセスデータ処理部、
20はベクトルレジスタ、22は命令制御部であ
り、12〜22および加算部、乗算部、除算部
(これら図示せず)によりベクトル処理装置が構
成される。ABはアクセスバス、APはアクセス
バスABの各々に対応して設けられ該バスを通し
て送られる信号を受けるポート、DBは読出し/
書込みデータバス、SLはアクセスバスABの各々
に対応するデータ送出/書込みデータ要求信号を
伝送する信号線である。バスABで送られる信号
はアクセスすべきメモリアドレス、オペレーシヨ
ン、最終アクセス信号、要求信号などであり、該
オペレーシヨンには例えばブロツクロード、8バ
イトロード、ブロツクフルストア、ブロツクパー
シヤルストア、8バイトフルストア、8バイトパ
ーシヤルストアなどがある。命令制御部22から
信号線La,Lbを通してアクセス要求部およびア
クセスデータ処理部12,14,16,18へ送
られる信号には命令起動信号、オペレーシヨンコ
ード、ベクトル長、先頭エレメントのアドレス、
エレメント間距離などがある。 第2図は第1図のデータの部分について詳細に
述べるための一実施例を示す。第2図において
ECC0〜7はMSu0〜7の読出し/書込みのア
クセスに対しての誤り検出および誤り訂正回路で
あり、17―1〜17―4はECC0〜3あるい
はECC4〜7からのデータを各アクセスデータ
処理部に分配するための第1のバス切替回路であ
り、16′,18′はアクセスデータ処理部16あ
るいは18の一部である第2のバス切替回路を示
す。第2のバス切替回路16′あるいは18′にお
いてVRと接続される部分はエレメント番号にバ
スが対応しており、MCuと接続される部分は
MSu番号に対応しており、それぞれの部分は
MSu0ないしMSu4,MSu1ないしMSu5,
MSu2ないしMSu6,MSu3ないしMSu7の
MSuと読出し/書込み可能となるようにしてい
る。 各アクセスデータ処理部とVRとのバスは4エ
レメント分設けられている。各エレメントはデー
タ幅は例えば4バイトあるいは8バイトである。
したがつてこれに見合うだけのデータ転送速度が
MCuとベクトル処理装置間に要求されるととも
に、MCuとMSu間においても同様のことが要求
される。また、MSu上におけるベクトルデータ
は連続領域にある場合あるいは不連続領域になる
場合(ある距離をもつてデータが配置される)が
あり、一般的にはデータが連続領域になつた場合
最大性能が出せるように工夫されている。このた
め複数台からなるMSuをインタリーブして、あ
る時点において各アクセス要求部ないし各アクセ
スデータ処理部が連続領域をアクセスする時はア
クセス要求部ないしアクセスデータ処理部の一方
が例えばMSu0〜MSu3をアクセスし、もう片
方のアクセス要求部ないしアクセスデータ処理部
はMSu4〜MSu7をアクセスするように工夫し
ている。このようにMSu0〜MSu3を同時にア
クセスまたは、MSu4〜MSu7を同時にアクセ
スするようにしたアクセスの単位をブロツクと呼
ぶ。また、各MSuとMCuとの間は例えば8バイ
トバスで接続されているためブロツクの大きさは
32バイトである。前述しているようにバスABで
送られるオペレーシヨンにはベクトルロード命令
時のオペレーシヨンとしてブロツクロードないし
8バイトロードがある。8バイトロードとなる場
合は例えば不連続領域(エレメント間距離によつ
て決定される)をアクセスする場合、または連続
領域をアクセスする場合において先頭エレメント
及び最終エレメントをアクセスする時点で有効デ
ータが8バイト以内となるような場合である。同
様にオペレーシヨンの一部としてベクトルストア
命令においてはブロツクフルストア、8バイトフ
ルストアがあり、また4バイトデータを扱うため
にブロツクパーシヤルストア、8バイトパーシヤ
ルストアなどがある。これらバスABで送出され
るオペレーシヨンは命令制御部22から信号線
La,Lbを通してアクセス要求部12,14へ送
られる信号から認識して作成される。 演算に当りアクセス要求部12,14は、命令
制御部22からのオペレーシヨンコード、エレメ
ント間距離、先頭エレメントのアドレスなどに従
つて、記憶制御装置MCuに対し、アクセス要求
信号と共に前述のオペレーシヨンを送出する。例
えば該オペレーシヨンがブロツクロードであれ
ば、先頭エレメントのアドレス及びエレメント間
距離などで定まるエレメントデータをMCuを介
してMSuから読出され、アクセスデータ処理部
を介してベクトルレジスタ20にロードされ、ブ
ロツクストアであれば該ベクトルレジスタ内のデ
ータが命令制御部から出力されたアドレスなどに
より定まる主記憶の所定メモリ領域へストアされ
る。前述しているようにブロツクアクセス中はア
クセス要求部12はある時点において例えば前半
部のメモリMSu0,MSu1……MSu3に対して
アクセスし、このときアクセス要求部14は後半
部のメモリMSu4,MSu5,……MSu7に対し
てアクセスするなどのアクセス方式をとる。ブロ
ツクアクセスの場合は1つのアドレスでMSu0
〜3ないしMSu4〜7のように複数のメセリに
同時に書込み読取りすることができる。アクセス
データ処理部16,18はこれらの書込みデータ
を供給し読取りデータを受入れる。 エレメント間距離の大きさによりまたベクトル
長により主記憶に対する書込みまた読出しに要す
るアクセス回数は異なるが、勿論アクセスされる
有効データの量は指定値(ベクトル長)と正確に
一致する必要がある。しかしアクセス要求部、メ
モリ制御部などに障害があれば該アクセスされる
回数はアクセスデータ処理部では指定値と一致し
ない。一部データが欠けたベクトル演算では、勿
論正しい答とは云えない。本発明はメモリアクセ
スする際、有効データ量が指定値と正して一致す
るかを簡単にチエツク可能にしようとするもので
ある。 本発明のベクトル処理における異常検出方式は
ベクトル処理装置でロード処理またはストア処理
するに際し、アクセス要求部およびアクセスデー
タ処理部にベクトル長を知らせ、アクセス要求部
では記憶制御装置に順次アクセス要求を出すとと
もに、アクセスされた有効データエレメントの個
数を認識して、前記ベクトル長より減算する減算
手段を備えるとともに減算した結果が零であるこ
とを検出する零検出手段を備え、零を検出されて
最後のアクセス要求であることを認識した時はア
クセス要求に付加して最終アクセスであることを
示す信号を送出する最終アクセス送出手段を備
え、アクセスデータ処理部は記憶制御装置よりデ
ータ送出/書込みデータ要求信号が送られる毎
に、アクセスされた有効データエレメントの個数
を認識して、前記ベクトル長より減算する減算手
段を備えるとともに減算した結果が零であること
を検出する零検出手段を備え、アクセス要求部か
らの最後のアクセス要求に対するデータ送出/書
込みデータ要求信号が記憶制御装置より送られた
時点で前記零検出手段の出力を判定し、該判定結
果によりアクセス異常を検出することを特徴とす
るが、次に第3図および第4図に示す実施例を参
照しながらこれを説明する。 第3図は前述のアクセス要求部、第4図はアク
セスデータ処理部の制御部を示す。アクセス要求
部は命令制御部22からのスタート信号St、オペ
レーシヨンコードOPC、ベクトル長VL、エレメ
ント間距離EL、および先頭アドレスFAを受ける
レジスタまたはラツチR(添字1,2……は相互
を区別するもの)、リクエスト信号RQの発生回
路24、零検出器26、オペレーシヨン認識部2
8、演算器30,32、およびセレクタ34を備
える。命令制御部22から送出されるオペレーシ
ヨンコードOPCには例えばロード/ストア命令
の区別、4バイト/8バイトアクセス命令の区別
などである。リクエスト発生回路24はゲート回
路であつて、零検出器26が零検出していないと
きはスタート信号Stを通過させ、記憶制御装置
MCuへ要求信号RQを上げる。MCuはこの信号
RQを受けると、ビジー状態および優先順位など
を考慮してメモリアクセスに入る。オペレーシヨ
ン認識部28はOPC、ELおよびFAを取込み、ブ
ロツクロード、ブロツクフルストアなどの前述の
オペレーシヨンの種別を決定し、それをMCuへ
出力する。このアクセス要求で主記憶よりロード
され又は主記憶へストアされるデータのエレメン
ト数はブロツクアクセスになる場合には先頭アド
レスFA、エレメント間距離EL、4/8バイトアク
セス命令の種類等により異なる。該エレメント数
の算出方法の一実施例を説明する。エレメント数
を算出する場合にはアクセスするエレメントが主
記憶上に連続アドレスとして配置されているか否
かによつて左右される。エレメントが連続アドレ
スとして主記憶に配置される場合は例えば4×
EL(バイト)≦32バイトの条件を満足することで
あり、さらにブロツクアクセスが可能であること
を示す。また前記条件の他に、さらに先頭エレメ
ントのアドレス(先頭アドレスFA)及び4バイ
トアクセス命令あるいは8バイトアクセス命令に
依りアクセスされるエレメント数が決定される。
なお、連続アドレスとして配置される場合、アク
セスはブロツク(32バイト)境界として扱われ、
先頭アドレスの一部(MSu0〜3のうち0〜3
を判別する部分あるいはMSu4〜7のうち4〜
7を判別する部分いわゆるブロツク内アドレス)、
エレメント間距離EL及び4/8バイトアクセス命令
からエレメント数が決まり、例えば4バイトアク
セス命令でかつブロツク内アドレスBAが「0」、
エレメント間距離ELが「4バイト」であればそ
のブロツクアクセスによる有効エレメント数は
「8」となる。なお、ブロツク内アドレスBAは
4バイトアクセス命令も扱えるようにするため3
ビツトから構成される。したがつて、最初のアク
セスでは先頭アドレスの一部がブロツク内アドレ
スとして使用され、2サイクル以降のアクセスで
はブロツク内アドレスを「0」として有効エレメ
ント数を算出すればよい。 次表に連続アドレスとして配置される場合の4
バイトアクセス命令あるいは8バイトアクセス命
令におけるエレメント間距離EL、ブロツク内ア
ドレスBAと有効エレメント数の関係を示す。
The present invention relates to an abnormality detection method in vector processing, and is intended to check whether a predetermined number of requested data has been reliably processed by a vector processing device. In an instruction that calculates a result c by calculating operands a and b, both a and b are composed of multiple elements a 0 , a 1 , a 2 ..., b 0 , b 1 , b 2 ..., and the result c is a correspondence. Elements a 0 and b 0 , a 1 and b 1 ... are operated (addition,
multiplication, etc.) (for details, a, b,
c indicates the register number of the vector register,
a 0 , b 0 , etc. indicate the contents, so-called element numbers), and a device that executes such instructions is called a vector processing device. This type of device is available in patent application No. 56-47774.
etc. are detailed. In the vector processing device, when operating operands a and b and outputting the operation result c as described above, a, b, and c are set to indicate the register numbers of the vector registers.
In addition, operands a, b, and c are obtained by fetching a and b from main memory in advance before executing the operation.
The operation is performed after b is stored in the vector register. Furthermore, the calculation result c is outputted and stored in the vector register, and then stored in the main memory. Note that the vector processing device has an instruction to bring a and b from the main memory to the vector register (for example, a vector load instruction) or an instruction to store the operation result c from the vector register to the main memory (for example, a vector store instruction). ing. By executing loads/stores and operations using independent instructions in this way, data transfer disturbances due to memory bank busy or other access priorities do not affect the arithmetic unit. Become. Figure 1 shows its memory access section, where MSu 0 to MSu 7 are 8 in this example.
The main memory of the module, MCu, is its control device.
When there is a memory access request, conditions such as priority and bank busy are taken and read from the main memory MSu.
Perform write access. 12 and 14 are access request units; 16 and 18 are access data processing units;
20 is a vector register, 22 is an instruction control section, and 12 to 22, an addition section, a multiplication section, and a division section (not shown) constitute a vector processing device. AB is an access bus, AP is a port provided corresponding to each access bus AB and receives signals sent through the bus, and DB is a read/write port.
A write data bus, SL, is a signal line that transmits data send/write data request signals corresponding to each of the access buses AB. Signals sent on bus AB include memory addresses to be accessed, operations, final access signals, request signals, etc. These operations include, for example, block load, 8-byte load, block full store, block partial store, 8-byte There are full stores, 8-byte partial stores, etc. The signals sent from the instruction control unit 22 to the access request unit and access data processing units 12, 14, 16, and 18 through signal lines La and Lb include an instruction activation signal, an operation code, a vector length, the address of the first element,
There are distances between elements, etc. FIG. 2 shows an embodiment for describing the data portion of FIG. 1 in detail. In Figure 2
ECC0 to 7 are error detection and error correction circuits for read/write accesses of MSu0 to 7, and 17-1 to 17-4 are access data processing units that process data from ECC0 to 3 or ECC4 to 7. 16' and 18' indicate second bus switching circuits which are part of the access data processing section 16 or 18. In the second bus switching circuit 16' or 18', the bus corresponds to the element number in the part connected to VR, and the part connected to MCu corresponds to the bus.
It corresponds to the MSu number, and each part is
MSu0 to MSu4, MSu1 to MSu5,
MSu2 or MSu6, MSu3 or MSu7
It is designed to be readable/writable with MSu. A bus between each access data processing unit and VR is provided for four elements. The data width of each element is, for example, 4 bytes or 8 bytes.
Therefore, the data transfer speed is sufficient to match this.
This is required between the MCu and the vector processing unit, and the same is required between the MCu and MSu. Additionally, vector data on MSu may be in a continuous area or in a discontinuous area (data is placed at a certain distance), and generally the maximum performance is achieved when the data is in a continuous area. It has been devised so that it can be released. Therefore, when multiple MSu units are interleaved and each access request unit or each access data processing unit accesses a continuous area at a certain point, one of the access request units or access data processing units accesses, for example, MSu0 to MSu3. However, the other access request unit or access data processing unit is designed to access MSu4 to MSu7. The unit of access in which MSu0 to MSu3 are accessed simultaneously or MSu4 to MSu7 are accessed simultaneously is called a block. Also, since each MSu and MCu are connected by, for example, an 8-byte bus, the size of the block is
It is 32 bytes. As mentioned above, the operations sent on bus AB include block loads and 8-byte loads as operations at the time of vector load instructions. In the case of an 8-byte load, for example, when accessing a discontinuous area (determined by the distance between elements) or when accessing a continuous area, the valid data is 8 bytes when the first element and the last element are accessed. This is a case where it is within the range. Similarly, there are block full stores and 8-byte full stores for vector store instructions as part of operations, and block partial stores and 8-byte partial stores for handling 4-byte data. The operations sent on these buses AB are carried out by the signal line from the command control unit 22.
It is created by recognizing signals sent to the access request units 12 and 14 through La and Lb. During the operation, the access request units 12 and 14 send the above-mentioned operation along with an access request signal to the storage control unit MCu according to the operation code, inter-element distance, address of the first element, etc. from the instruction control unit 22. Send. For example, if the operation is a block load, element data determined by the address of the first element, the distance between elements, etc. is read from the MSu via the MCu, loaded into the vector register 20 via the access data processing section, and then loaded into the block store. If so, the data in the vector register is stored in a predetermined memory area of the main memory determined by the address output from the instruction control unit. As mentioned above, during block access, the access request unit 12 accesses, for example, the first half of the memories MSu0, MSu1, . ...An access method such as accessing MSu7 is used. For block access, one address is MSu0
It is possible to write to and read from multiple meseries at the same time, such as MSu4 to MSu3 to MSu4 to MSu7. Access data processing sections 16 and 18 supply these write data and accept read data. The number of accesses required for writing to or reading from the main memory differs depending on the distance between elements and the vector length, but of course the amount of valid data to be accessed must exactly match the specified value (vector length). However, if there is a failure in the access request unit, memory control unit, etc., the number of accesses will not match the specified value in the access data processing unit. Of course, a vector operation that lacks some data cannot give a correct answer. The present invention aims to make it possible to easily check whether the effective data amount exactly matches a specified value when accessing a memory. The abnormality detection method in vector processing of the present invention informs the access request section and the access data processing section of the vector length when the vector processing device performs load processing or store processing, and the access request section sequentially issues access requests to the storage control device. , comprising a subtraction means for recognizing the number of valid data elements accessed and subtracting it from the vector length, and a zero detection means for detecting that the result of the subtraction is zero, and when zero is detected, the last access is performed. The access data processing unit is provided with a final access sending means that sends a signal indicating that it is the final access in addition to the access request when it recognizes that the access request is a request, and the access data processing unit receives the data sending/writing data request signal from the storage control device. Each time the data is sent, the number of accessed valid data elements is recognized and subtracted from the vector length, and the number of valid data elements is subtracted from the vector length. The output of the zero detection means is determined at the time when a data send/write data request signal in response to the last access request is sent from the storage control device, and an access abnormality is detected based on the determination result. This will be explained with reference to the embodiment shown in FIGS. 3 and 4. FIG. 3 shows the aforementioned access request section, and FIG. 4 shows the control section of the access data processing section. The access request unit receives the start signal St, operation code OPC, vector length VL, inter-element distance EL, and start address FA from the instruction control unit 22. ), request signal RQ generation circuit 24, zero detector 26, operation recognition unit 2
8, arithmetic units 30 and 32, and a selector 34. The operation code OPC sent from the instruction control unit 22 includes, for example, a distinction between load/store instructions and a distinction between 4-byte/8-byte access instructions. The request generation circuit 24 is a gate circuit, and when the zero detector 26 does not detect zero, it passes the start signal St and outputs it to the storage control device.
Raise request signal RQ to MCu. MCu is this signal
When receiving an RQ, memory access is started taking into consideration the busy state and priority. The operation recognition unit 28 takes in OPC, EL, and FA, determines the type of the aforementioned operation such as block load, block full store, etc., and outputs it to the MCu. The number of data elements loaded from or stored in the main memory in response to this access request varies depending on the start address FA, inter-element distance EL, type of 4/8 byte access command, etc. in the case of block access. An example of a method for calculating the number of elements will be described. Calculating the number of elements depends on whether the elements to be accessed are arranged as consecutive addresses on the main memory. For example, if elements are arranged in main memory as consecutive addresses, 4×
This indicates that the condition EL (byte) ≦ 32 bytes is satisfied, and that block access is possible. In addition to the above conditions, the number of elements to be accessed is determined based on the address of the first element (first address FA) and the 4-byte access command or the 8-byte access command.
Note that when allocated as consecutive addresses, accesses are treated as block (32 byte) boundaries,
Part of the start address (0 to 3 of MSu0 to 3)
The part that discriminates or MSu 4 to 7
7 (so-called block address),
The number of elements is determined from the inter-element distance EL and the 4/8 byte access command.For example, if the 4-byte access command is used and the block address BA is "0",
If the inter-element distance EL is "4 bytes", the number of effective elements by that block access is "8". Note that the address BA within the block is set to 3 in order to be able to handle 4-byte access instructions.
Consists of bits. Therefore, in the first access, a part of the start address is used as the intra-block address, and in the second cycle and subsequent accesses, the number of effective elements can be calculated by setting the intra-block address to "0". 4 when arranged as consecutive addresses in the following table
The relationship between the inter-element distance EL, intra-block address BA, and the number of effective elements in a byte access instruction or an 8-byte access instruction is shown.

【表】 エレメントが連続アドレスとして配置されない
時第1図に示すバスABでMCuに送出されるメモ
リアドレスは4本であることから最大4エレメン
ト分アクセス可能である。したがつて有効エレメ
ント数は「4」となる。そこでオペレーシヨン認
識部28はその有効エレメントの個数を信号Sc
して演算器30へ入力する。この演算器30へは
ベクトル長VLも入力し、最初のサイクルではVL
−Sc=Sdが求められる。差Sdが出力されるとレジ
スタR5はVLからSdに更新され、オペレーシヨン
認識部28から次のサイクルに出力されるScとレ
ジスタR5内のSdの差が演算器30で求められる。
オペレーシヨン認識部28がオペレーシヨンOP
を出力する度にかかる操作が繰り返され、最後の
アクセスではSc≧Sdの条件が満足される。この時
レジスタR13に最終アクセスであることを示す信
号Sfrを記憶制御装置MCuに送出する。さらに、
前記の操作が繰り返されると、遂には演算器30
の出力Sdは0になる。検出器26はこれを検出
し、回路24を閉じる。従つてアクセス要求部か
ら記憶制御装置MCuへの要求信号RQは消滅し、
MCuはMSuに対するアクセス要求を停止する。 最初のサイクルではセレクタ34は先頭アドレ
スFAを選択しておりMCuへ要求アドレスRAを
出力する。したがつて、RAはFAに等しい。2
サイクル以降、セレクタ34は演算器32をセレ
クトしており、2サイクル以降では先の要求アド
レスRA+Sc×ELなる演算を行なつて2サイクル
目のアクセスアドレスRAを出力する。なお、倍
数回路33はSc×ELを実行するためのものであ
る。以下同様である。 第4図に示すアクセスデータ処理部は命令制御
部22よりの先頭アドレスの一部FA′(第3図で
述べたブロツク内アドレスBA)、エレメント間
距離EL、オペレーシヨンコードOPC、およびベ
クトル長VLを受けるレジスタR9,R10,R12
R11、エレメント個数検出回路36、演算器3
8、所定値例えば零検出回路40、およびゲート
回路Gを有する。アクセス要求部から記憶制御装
置MCuに対してアクセス要求があつても直ちに
メモリMSuに対してアクセスが行なわれるとは
限らず、ビジー解除、優先順到来などによつてや
つとアクセスが許されるが、このアクセス可能状
態になるとMCu転送するデータのしかるべきタ
イミングに合わせて、は読出しデータ送出/書込
みデータ要求信号Saをアクセスデータ処理部へ
送る。これを受けてアクセスデータ処理部はオペ
レーシヨンがロードならメモリ読出しデータを受
取る準備をし、ストアなら書込みデータをMCu
経由でMSuへ送る。エレメント個数検出回路3
6は該信号Saと前記ブロツク内アドレス、エレ
メント間距離EL、およびオペレーシヨンコード
BA,EL,OPCを受け、アクセス(書込み、読
取り)されたエレメントの個数を検出する。な
お、エレメントの個数を算出する方法は第3図で
述べたアクセス要求部と同様である。演算器38
とレジスタR11は第3図の演算器30とレジスタ
R5に対応するもので、演算器出力は残りのエレ
メント数を示す。系が正常なら最終アクセス時に
演算器38の出力は0となり、所定値検出回路4
0はこれを検出してH(ハイ)レベル出力Seを生
じる。ゲートGは、該出力Seと前記信号Saと最
終アクセスであることを示す信号Sfを受ける。出
力Seは反転されてアンドゲートGに入力するの
で、系が正常でSeがH、従つてその反転信号は
L(ロー)レベルとなり、ゲートGは閉じて出力
を生じない。これに反してSa,Sfが生じた時点
で演算器38の出力が0でなければ所定値検出回
路40の出力はLであり、これは反転されてHと
なりゲートGを開き、該ゲートGにHレベル出力
Sbを生じさせる。これは記憶制御装置MCu、ア
クセス要求部12,14などのメモリアクセス系
が異常であることを示す信号となる。 要求した処理が確実に行なわれたか否かのチエ
ツクは各処理要求毎に応答信号を返送させて行な
うという方式はデータ伝送などの分野で広く採用
されているが、この方式では応答信号が戻るまで
次のリクエストは待たねばならず、多量のデータ
を連続的に処理しなければならないベクトル処理
においては所要時間が大になる。この点本発明の
ように応答を待たずにアクセス要求は逐次出力
し、アクセス要求側で捉えた全量アクセス済みの
情報で、アクセスデータ処理部で捉えたアクセス
対象のデータの処理済量をチエツクするという方
式はデータの処理速度を大幅に高めかつ各部のア
クセス状況を確実にチエツクできる利点がある。
[Table] When elements are not arranged as consecutive addresses, the number of memory addresses sent to MCu via bus AB shown in FIG. 1 is four, so a maximum of four elements can be accessed. Therefore, the number of effective elements is "4". Therefore, the operation recognition unit 28 inputs the number of effective elements to the arithmetic unit 30 as a signal S c . The vector length VL is also input to this arithmetic unit 30, and in the first cycle, VL
−S c =S d is calculated. When the difference S d is output, the register R 5 is updated from VL to S d , and the difference between S c output from the operation recognition unit 28 in the next cycle and S d in the register R 5 is calculated by the arithmetic unit 30. Desired.
The operation recognition unit 28 recognizes the operation OP.
This operation is repeated each time , and the condition of S c ≧ S d is satisfied at the last access. At this time, a signal S fr indicating that this is the final access to the register R 13 is sent to the storage control unit MCu. moreover,
When the above operation is repeated, finally the computing unit 30
The output S d becomes 0. Detector 26 detects this and closes circuit 24. Therefore, the request signal RQ from the access request unit to the storage controller MCu disappears,
MCu stops requesting access to MSu. In the first cycle, the selector 34 selects the first address FA and outputs the requested address RA to the MCu. Therefore, RA is equal to FA. 2
From the cycle onward, the selector 34 selects the arithmetic unit 32, and from the second cycle onwards, performs the calculation of the previous requested address RA+S c ×EL and outputs the access address RA of the second cycle. Note that the multiple circuit 33 is for executing S c ×EL. The same applies below. The access data processing section shown in FIG. 4 receives part of the start address FA' from the instruction control section 22 (intra-block address BA described in FIG. 3), inter-element distance EL, operation code OPC, and vector length VL. Registers R 9 , R 10 , R 12 ,
R 11 , element number detection circuit 36, arithmetic unit 3
8, a predetermined value, for example, a zero detection circuit 40, and a gate circuit G. Even when an access request unit makes an access request to the storage control unit MCu, access to the memory MSu is not necessarily performed immediately, and access is gradually permitted due to busy release, priority order, etc. When this accessible state is achieved, the MCu sends a read data sending/writing data request signal Sa to the access data processing unit in accordance with the appropriate timing of the data to be transferred. In response to this, the access data processing unit prepares to receive memory read data if the operation is a load, and prepares to receive the memory read data if the operation is a store.
Send to MSu via. Element number detection circuit 3
6 is the signal Sa, the address within the block, the distance between elements EL, and the operation code.
Detects the number of elements accessed (written, read) by receiving BA, EL, and OPC. Note that the method for calculating the number of elements is the same as that for the access request unit described in FIG. 3. Arithmetic unit 38
and register R 11 are the arithmetic unit 30 and register in Figure 3.
This corresponds to R 5 , and the arithmetic unit output indicates the number of remaining elements. If the system is normal, the output of the arithmetic unit 38 becomes 0 at the final access, and the predetermined value detection circuit 4
0 detects this and generates an H (high) level output Se. The gate G receives the output Se, the signal Sa, and a signal Sf indicating final access. Since the output Se is inverted and input to the AND gate G, when the system is normal and Se is H, the inverted signal is at L (low) level, and the gate G is closed and no output is produced. On the other hand, if the output of the arithmetic unit 38 is not 0 when Sa and Sf occur, the output of the predetermined value detection circuit 40 is L, which is inverted and becomes H, opening the gate G. H level output
Produces Sb. This becomes a signal indicating that the memory access system such as the storage control unit MCu and the access request units 12 and 14 is abnormal. A method that checks whether the requested processing has been reliably performed by sending back a response signal for each processing request is widely used in fields such as data transmission, but in this method, the check is performed until the response signal is returned. The next request has to wait, and the time required is long in vector processing where a large amount of data must be processed continuously. In this regard, as in the present invention, access requests are sequentially output without waiting for a response, and the processed amount of data to be accessed captured by the access data processing unit is checked using the information captured by the access requesting side that the entire amount has been accessed. This method has the advantage of greatly increasing data processing speed and being able to reliably check the access status of each part.

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

第1図はベクトル処理装置の要部を説明するブ
ロツク図、第2図は第1図のデータの流れの詳細
ブロツク図、第3図はそのアクセス要求部のブロ
ツク図、第4図はアクセスデータ処理部のブロツ
ク図である。 図面で10はベクトル処理装置、12,14は
アクセス要求部、16,18はアクセスデータ処
理部、VLはベクトル長、MCuは記憶制御装置、
Saはデータ送出/書込みデータ要求信号、36,
38,R11はアクセスされたエレメント数を計数
してベクトルと比較する手段、Sf,Sfrはそれぞ
れ最終アクセス表示信号である。
Figure 1 is a block diagram explaining the main parts of the vector processing device, Figure 2 is a detailed block diagram of the data flow in Figure 1, Figure 3 is a block diagram of the access request section, and Figure 4 is the access data. FIG. 3 is a block diagram of a processing section. In the drawing, 10 is a vector processing unit, 12 and 14 are access request units, 16 and 18 are access data processing units, VL is a vector length, MCu is a storage control unit,
Sa is a data send/write data request signal, 36,
38 and R 11 are means for counting the number of accessed elements and comparing it with a vector, and Sf and S fr are final access indicating signals, respectively.

Claims (1)

【特許請求の範囲】[Claims] 1 ベクトル処理装置でロード処理またはストア
処理するに際し、アクセス要求部およびアクセス
データ処理部にベクトル長を知らせ、アクセス要
求部では記憶制御装置に順次アクセス要求を出す
とともに、アクセスされた有効データエレメント
の個数を認識して、前記ベクトル長より減算する
減算手段を備えるとともに減算した結果が零であ
ることを検出する零検出手段を備え、零を検出さ
れて最後のアクセス要求であることを認識した時
はアクセス要求に付加して最終アクセスであるこ
とを示す信号を送出する最終アクセス送出手段を
備え、アクセスデータ処理部は記憶制御装置より
データ送出/書込みデータ要求信号が送られる毎
に、アクセスされた有効データエレメントの個数
を認識して、前記ベクトル長より減算する減算手
段を備えるとともに減算した結果が零であること
を検出する零検出手段を備え、アクセス要求部か
らの最後のアクセス要求に対するデータ送出/書
込みデータ要求信号が記憶制御装置より送られた
時点で前記零検出手段の出力を判定し、該判定結
果によりアクセス異常を検出することを特徴とす
るベクトル処理装置における異常検出方式。
1 When a vector processing device performs load processing or store processing, the vector length is notified to the access request unit and the access data processing unit, and the access request unit sequentially issues access requests to the storage control device and also informs the access request unit of the number of valid data elements that have been accessed. It is provided with a subtraction means for recognizing and subtracting from the vector length, and a zero detection means for detecting that the result of the subtraction is zero, and when zero is detected and it is recognized that it is the last access request. The access data processing unit includes a final access sending unit that sends a signal indicating that the access is the final access in addition to the access request, and the access data processing unit receives the accessed valid data every time the storage control device sends a data sending/writing data request signal. It is equipped with a subtraction means that recognizes the number of data elements and subtracts it from the vector length, and a zero detection means that detects that the result of the subtraction is zero, and is configured to send data in response to the last access request from the access request unit. An abnormality detection method in a vector processing device, characterized in that an output of the zero detection means is determined at the time when a write data request signal is sent from a storage control device, and an access abnormality is detected based on the determination result.
JP56142977A 1981-09-10 1981-09-10 Fault detecting system for vector processing Granted JPS5844570A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56142977A JPS5844570A (en) 1981-09-10 1981-09-10 Fault detecting system for vector processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56142977A JPS5844570A (en) 1981-09-10 1981-09-10 Fault detecting system for vector processing

Publications (2)

Publication Number Publication Date
JPS5844570A JPS5844570A (en) 1983-03-15
JPH0226259B2 true JPH0226259B2 (en) 1990-06-08

Family

ID=15328051

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56142977A Granted JPS5844570A (en) 1981-09-10 1981-09-10 Fault detecting system for vector processing

Country Status (1)

Country Link
JP (1) JPS5844570A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04336454A (en) * 1991-05-14 1992-11-24 Mitsubishi Electric Corp Semiconductor device

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3210306A1 (en) * 1982-03-20 1983-09-22 Basf Farben + Fasern Ag, 2000 Hamburg WATER-DISPERSIBLE BINDING AGENTS FOR CATIONIC ELECTRO-DIP COATINGS AND METHOD FOR THEIR PRODUCTION
JPH0752441B2 (en) * 1985-12-12 1995-06-05 三菱電機株式会社 Vector arithmetic controller
JPH01230131A (en) * 1988-03-10 1989-09-13 Agency Of Ind Science & Technol Parallel processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5464939A (en) * 1977-11-02 1979-05-25 Nec Corp Data transfer device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS551071Y2 (en) * 1972-11-17 1980-01-12

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5464939A (en) * 1977-11-02 1979-05-25 Nec Corp Data transfer device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04336454A (en) * 1991-05-14 1992-11-24 Mitsubishi Electric Corp Semiconductor device

Also Published As

Publication number Publication date
JPS5844570A (en) 1983-03-15

Similar Documents

Publication Publication Date Title
US4881170A (en) Instruction prefetch control apparatus
EP0141743A2 (en) Pipeline error correction
EP0464615A2 (en) Microcomputer equipped with DMA controller
JPH0532775B2 (en)
US4827407A (en) Vector processing system
JPH0226259B2 (en)
US6981122B2 (en) Method and system for providing a contiguous memory address space
JPS6218063B2 (en)
JP2680208B2 (en) Memory access control device
EP0379316B1 (en) Request cancel system
JPS60701B2 (en) data processing equipment
JPS6049952B2 (en) Busy control method of memory control device
JP3735375B2 (en) Multiprocessor system
JP2839545B2 (en) Data access method
JPH05225114A (en) Io controller
JPH0133848B2 (en)
JPS59103155A (en) Data processing module
JPS61289464A (en) Scalar arithmetic processor
JPH0219495B2 (en)
JPS5897756A (en) Shared memory interface between computers
EP0553742A1 (en) A method of operating a first and second cache tag memory array
JPH0715666B2 (en) Virtual memory system
JPH03154947A (en) Information processor
JPS63255751A (en) Automatic detector for main memory capacity
JPH0687231B2 (en) Buffer memory control method