JPH0673128B2 - Memory control method - Google Patents
Memory control methodInfo
- Publication number
- JPH0673128B2 JPH0673128B2 JP30313286A JP30313286A JPH0673128B2 JP H0673128 B2 JPH0673128 B2 JP H0673128B2 JP 30313286 A JP30313286 A JP 30313286A JP 30313286 A JP30313286 A JP 30313286A JP H0673128 B2 JPH0673128 B2 JP H0673128B2
- Authority
- JP
- Japan
- Prior art keywords
- access request
- access
- stack
- storage
- instruction
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、計算機システムの記憶制御方式に関し、詳し
くは複数のアクセス要求制御装置を同期させて並列に動
作させ、且つ、記憶装置に対して発行されるアクセス要
求間の順序性を保証するのに好適な記憶制御方式に関す
る。Description: TECHNICAL FIELD The present invention relates to a storage control system for a computer system, and more specifically, to a plurality of access request control devices operating in parallel in synchronization with each other, and to a storage device. The present invention relates to a storage control method suitable for ensuring the order of access requests issued.
独立にアクセス可能な複数の記憶単位(記憶バンク)で
構成される記憶装置に対して、複数のアクセス要求制御
装置がアクセス要求を発行する場合の従来の記憶制御方
式を第2図により説明する。A conventional storage control method in the case where a plurality of access request control devices issue access requests to a storage device composed of a plurality of independently accessible storage units (storage banks) will be described with reference to FIG.
第2図において、20Aないし20Dはアクセス要求制御装置
であり、アクセス要求を発行する源である。21Aないし2
1Dはアクセス要求スタック装置であり、それぞれアクセ
ス要求制御装置20Aないし20Dから発行されるアクセス要
求をスタックし、スタックされた順にアクセス要求を、
そのアドレス情報に応じてアクセス要求優先順位決定装
置22Aないし22Dのいずれかに送出する。アクセス要求優
先順位決定装置22Aないし22Dは記憶装置23の各記憶バン
ク対応にあり、それぞれアクセス要求スタック装置21A
ないし21Dから送出されたアクセス要求間の優先順位を
決定する。記憶装置23は記憶バンク23Aないし23Dより成
る。In FIG. 2, 20A to 20D are access request control devices, which are sources for issuing access requests. 21A to 2
1D is an access request stack device, which stacks access requests issued from the access request control devices 20A to 20D, respectively, and issues access requests in the order in which they are stacked.
According to the address information, it is sent to any of the access request priority order determination devices 22A to 22D. The access request priority order determination devices 22A to 22D correspond to the respective storage banks of the storage device 23, and the access request stack device 21A, respectively.
To 21D to determine the priority order among the access requests sent. The storage device 23 comprises storage banks 23A to 23D.
アクセス要求制御装置20Aに関して言えば、該装置20Aか
ら発行されたアクセス要求は、アクセス要求スタック装
置21Aの中のスタック回路211にスタックされ、制御部21
0の指示に従ってアクセス要求のアドレスが指示する記
憶バンクに対応するアクセス要求優先順位決定装置22A
ないし22Dに送出される。アクセス要求優先順位決定装
置22Aないし22Dは、各アクセス要求スタック装置21Aな
いし21Dから送出されたアクセス要求間の優先順位をと
り、どれか一つを選んで記憶装置23の該当記憶バンクに
送出する。アクセス要求優先順位決定装置22Aに関して
言えば、該装置22Aに対してアクセス要求スタック装置2
1Aないし21Dから送出されたアクセス要求間の優先順位
を優先順位決定論理部220でとり、前記アクセス要求中
の一つが選ばれて記憶装置23のバンク23Aに送出され
る。また、アクセス要求選択通知回路221により、アク
セス要求スタック装置21Aないし21Dへ当該アクセス要求
が選択されたことが通知される。この時、選ばれなかっ
たアクセス要求は、優先順位決定論理部220の入口で待
たされる。As for the access request control device 20A, the access request issued from the device 20A is stacked on the stack circuit 211 in the access request stack device 21A, and the control unit 21A
Access request priority order determination device 22A corresponding to the storage bank designated by the address of the access request in accordance with the instruction of 0
To 22D. The access request priority order determination devices 22A to 22D determine the priority order among the access requests sent from the access request stack devices 21A to 21D, and select one of them to send it to the corresponding storage bank of the storage device 23. As for the access request priority determination device 22A, the access request stack device 2
The priority order determination logic unit 220 determines the priority order among the access requests sent from 1A to 21D, and one of the access requests is selected and sent to the bank 23A of the storage device 23. Further, the access request selection notifying circuit 221 notifies the access request stacking devices 21A to 21D that the access request has been selected. At this time, the access request not selected is kept waiting at the entrance of the priority order determination logic unit 220.
アクセス要求は、アクセス要求スタック装置21Aのスタ
ック211がいっぱいになるまでアクセス要求制御装置20A
から送出される。またアクセス要求スタック装置21Aか
らは、前のマシンサイクル(システムを構成する順序回
路群が同期して動作する周期的な一定時間間隔)中に発
行されたアクセス要求212が選択されたこと示す信号213
が、例えばアクセス要求優先順位決定装置22Aから返っ
た時点で、後続のアクセス要求212が送出される。これ
は、アクセス要求制御装置20Aから発行されたアクセス
要求の順で記憶装置23に対するデータの読み書きを保証
するためである。The access request is sent to the access request control device 20A until the stack 211 of the access request stack device 21A is full.
Sent from. Further, the access request stack device 21A outputs a signal 213 indicating that the access request 212 issued during the previous machine cycle (a periodic constant time interval in which the sequential circuit groups forming the system operate in synchronization) is selected.
However, for example, when the access request priority determination device 22A returns, a subsequent access request 212 is transmitted. This is for guaranteeing the reading and writing of data with respect to the storage device 23 in the order of access requests issued from the access request control device 20A.
なお、この種の記憶制御方式に関連するものとして、例
えば特開昭60−136849号公報には、システム全体の性能
を向上させるため、アクセス要求制御装置が発行するア
クセス要求を要求発生順にa個単位のグループに分割し
て、各a個の各アクセス要求に0〜(a−1)のアクセ
ス要求識別子を付加してアクセス要求を発行し、一方、
記憶単位に直結するアクセス要求優先順位決定装置にお
いては、当該発行アクセス要求が選択されたことを示す
アクセス要求の識別子を発行元のアクセス要求制御装置
に返送することにより、アクセス要求制御装置は最少a
個までのアクセス要求を、アクセス要求優先順位決定装
置で選択されたか否かを意識せずに連続して発行可能と
することが示されている。Incidentally, as one related to this type of storage control system, for example, in Japanese Patent Laid-Open No. 60-136849, in order to improve the performance of the entire system, a number of access requests issued by the access request control device are issued in the order of request generation. The access request is issued by dividing it into unit groups and adding the access request identifiers of 0 to (a-1) to each of the a access requests.
In the access request priority order determination device directly connected to the storage unit, the access request control device is returned to the access request control device with the minimum a
It is shown that up to individual access requests can be continuously issued without being aware of whether or not they have been selected by the access request priority determination device.
科学技術計算を高速に処理するためのベクトル処理装置
では、ベクトルデータを保持するベクトルレジスタと該
データを演算する演算器、記憶装置とベクトルレジスタ
間のデータ転送を司るアクセス要求制御装置を各々複数
個備え、一つのベクトル命令中の要素を同一種の複数の
リソース(ベクトルレジスタ、演算器、アクセス要求制
御装置など)に同時に割当て並列に処理する、いわゆる
要素並列処理方式を採用することが多くなってきてい
る。A vector processing device for high-speed processing of scientific and technological calculations includes a vector register for holding vector data, an arithmetic unit for operating the data, and a plurality of access request control devices for controlling data transfer between a storage device and the vector register. In many cases, a so-called element parallel processing method is adopted in which the elements in one vector instruction are simultaneously allocated to a plurality of resources of the same type (vector register, arithmetic unit, access request control device, etc.) and processed in parallel. ing.
この場合、一般的に言って、要素並列処理で同時に動作
している同一種のリソースは、完全に同期して割当てら
れた要素を処理することが望ましい。同期して動作させ
ることにより、並列に動作している同一種のリソース間
で制御回路を共通化することが可能となり、又制御論理
も簡単にすることができる。この時、問題になるのは記
憶装置を構成する記憶バンクへのアクセス競合による待
時間の発生である。したがって、同一種の複数のリソー
ス間で同期して動作させる為には、前記待時間によるリ
ソース間のずれを吸収し、完全に同期化した記憶装置ア
クセスを実現するような記憶処理方式が必要である。In this case, generally speaking, it is desirable that resources of the same type operating simultaneously in element parallel processing process elements allocated in perfect synchronization. By operating in synchronization, it becomes possible to share a control circuit between the same type of resources operating in parallel, and the control logic can be simplified. At this time, what becomes a problem is the occurrence of waiting time due to access competition to the storage banks constituting the storage device. Therefore, in order to operate in synchronization between a plurality of resources of the same type, a storage processing method that absorbs the gap between resources due to the waiting time and realizes completely synchronized storage device access is required. is there.
ところが、前述した従来の記憶制御方式は、一つのアク
セス命令を一つのアクセス要求制御装置に割当てゝ処理
することを前提としており、一つのベクトルアクセス命
令中の要素を複数のアクセス要求制御装置に分割して割
当てゝ並列に処理する場合については考慮されておら
ず、並列動作させる複数のアクセス要求制御装置間で同
期をとってアクセス要求を処理することができないとい
う問題がある。However, the conventional storage control method described above is premised on that one access command is assigned to one access request control device and processed, and the element in one vector access command is divided into multiple access request control devices. However, no consideration has been given to the case of allocating and processing in parallel, and there is a problem that access requests cannot be processed in synchronization among a plurality of access request control devices that operate in parallel.
本発明の目的は、複数のアクセス要求制御装置に対し
て、一つのベクトルアクセス命令の要素を分割して割付
けて処理するベクトル処理装置等において、メモリから
データを読み出すロード命令だけでなく、リストベクト
ルのストアのようにメモリのアクセスアドレスがランダ
ムな命令の時にも順序性を保障し、アクセス要求制御装
置間の同期をとりつゝ、高速にアクセス要求の発行を可
能とする記憶制御方式を提供することにある。An object of the present invention is to provide a list vector as well as a load instruction for reading data from a memory in a vector processing device or the like for dividing and allocating elements of one vector access instruction to a plurality of access request control devices. A storage control method that guarantees the order even when the memory access address is a random instruction, such as in the case of a store, synchronizes the access request control devices, and enables high-speed access request issuance. Especially.
本発明は、アクセス要求スタック装置に、アクセス要求
制御装置から発行されるアクセス要求に、アクセス命令
別に異った数のアクセス要求識別子を付加し、一つのア
クセス命令を処理する複数のアクセス要求制御装置から
発行された同一アクセス要求識別子をもつ全てのアクセ
ス要求が、アクセス要求優先順位決定装置で選ばれたこ
とを検出し、この信号により、後続のアクセス要求の発
行を許可する手段を設けることを特徴とする。The present invention relates to a plurality of access request control devices for processing one access command by adding a different number of access request identifiers to access requests issued from the access request control device to the access request stack device. Means for detecting that all access requests having the same access request identifier issued by the are selected by the access request priority order determination device and permitting issuance of subsequent access requests by this signal. And
ベクトルデータの如き一連のデータに対するアクセス動
作を、複数のアクセス要求制御装置に要素を分割し割当
てゝ処理する際に、各アクセス要求制御装置が発行する
アクセス要求を、該アクセス要求の情報により命令を識
別し、その命令の種類により異った分割数単位に分割す
る。これはアクセス要求スタック装置で実施し、例え
ば、単純ロード命令ならa個、単純ストア命令ならb
個、リストベクトルのストアなら1個の如く分割する。
そして、各アクセス要求に、単純ロード命令時にはNumb
er0〜(a−1)、単純ストア命令時にはNumber0〜(b
−1)、リストベクトルのストア命令時にはNumber0の
如きアクセス要求識別子をアクセス要求発生順に付加し
てアクセス要求をアクセス要求優先順位決定装置に送出
する。一方、記憶単位に直結するアクセス要求優先順位
決定装置においては、一つのアクセス命令を分割処理い
ている複数のアクセス要求制御装置が発行した同一アク
セス要求識別子をもつすべてのアクセス要求が選択され
たことを示すアクセス要求の識別子をアクセス要求スタ
ック装置に返す。When an access operation for a series of data such as vector data is divided into a plurality of access request control devices and assigned and processed, the access request issued by each access request control device is commanded by the information of the access request. It is identified and divided into units of division numbers that differ depending on the type of the instruction. This is executed by the access request stack device. For example, a simple load instruction is a, and a simple store instruction is b.
If the list vector is stored, the list vector is divided into one.
And for each access request, Numb at the time of simple load instruction
er0- (a-1), Number0- (b for simple store instruction
-1), when a list vector store command is issued, an access request identifier such as Number0 is added in the order of access request generation, and the access request is sent to the access request priority order determination device. On the other hand, in the access request priority determining device directly connected to the storage unit, it is confirmed that all access requests having the same access request identifier issued by a plurality of access request control devices dividing one access instruction are selected. The identifier of the indicated access request is returned to the access request stack device.
アクセス要求スタック装置では、例えばリストベクトル
のストアの時は、全てのアクセス要求が選択されたこと
を示す信号が戻っていれば、次のアクセス要求を優先順
位決定装置に送出する。更に単純ベクトルロード命令に
おいては、アクセス要求制御装置から発行されたアクセ
ス要求が全て優先順位決定装置で選択されたことを示す
信号を待たずに、最大a個までのアクセス要求を連続し
て発行することが可能となる。又、単純ベクトルストア
命令においては、メモリ上の同一アドレスをアクセスす
ることはあり得ないため、アクセス要求制御装置から発
行されたアクセス要求が全て優先順位決定装置で選択さ
れたことを示す信号を待たずに、最大b個までのアクセ
ス要求を連続して発行することが可能となる。In the access request stack device, for example, at the time of storing a list vector, if a signal indicating that all access requests have been selected is returned, the next access request is sent to the priority order determination device. Further, in the simple vector load instruction, up to a maximum number of access requests are continuously issued without waiting for a signal indicating that all the access requests issued by the access request control device have been selected by the priority determination device. It becomes possible. Further, in the simple vector store instruction, since the same address on the memory cannot be accessed, a signal indicating that all the access requests issued by the access request control device have been selected by the priority order determination device is waited for. Instead, it becomes possible to issue up to b access requests in succession.
これにより、一つの命令を分割処理する複数のアクセス
要求制御装置が発行したアクセス要求を要素の順序性を
保証しつゝ、並列に送出することが可能となる。As a result, it becomes possible to send access requests issued by a plurality of access request control devices that divide one instruction in parallel while ensuring the order of the elements.
以下、本発明の一実施例について図面により説明する。 An embodiment of the present invention will be described below with reference to the drawings.
第3図に本発明を採用した計算機システムの主要部の構
成例を示す。こゝで計算機システムは、複数(本実施例
では4とする)の演算装置30Aないし30D、該演算装置30
と記憶装置35間のデータバッファの役割をもつベクトル
レジスタ装置31Aないし31D、アクセス要求制御装置(ア
クセス要求手段)32Aないし32D、記憶制御装置33及び記
憶装置35を備えている。記憶装置35は、各々独立にアク
セス可能な複数(本実施例では4とする)の記憶バンク
35Aないし35Dから成り、記憶制御装置33においてアクセ
ス要求に伴うアドレス情報をデコードした結果、どの記
憶バンクにアクセスするかが決定される。記憶制御装置
33はアクセス要求制御装置対応のアクセス要求スタック
回路33Aないし33D、記憶バンク対応のアクセス要求優先
順位決定回路(アクセス要求優先順位決定手段)34Aな
いし34Dから成る。FIG. 3 shows an example of the configuration of the main part of a computer system that employs the present invention. Here, the computer system includes a plurality of (four in this embodiment) arithmetic units 30A to 30D and the arithmetic units 30.
Vector register devices 31A to 31D having a role of a data buffer between the storage device 35 and the storage device 35, access request control devices (access request means) 32A to 32D, a storage control device 33 and a storage device 35. The storage device 35 includes a plurality of storage banks (4 in this embodiment) that can be independently accessed.
The storage control device 33 is composed of 35A to 35D, and as a result of decoding the address information accompanying the access request, which storage bank to access is determined. Storage controller
Reference numeral 33 includes access request stack circuits 33A to 33D corresponding to the access request control device, and access request priority order determining circuits (access request priority order determining means) 34A to 34D corresponding to the storage banks.
第3図に示す計算機システムにおいて、要素並列処理方
式を適用した場合の演算、書き込みの動作概要について
説明する。In the computer system shown in FIG. 3, an outline of operation of operation and writing when the element parallel processing method is applied will be described.
すでにベクトルレジスタ31Aないし31Dに格納されたデー
タを演算する場合、ベクトルの各要素を以下のように演
算装置30Aないし30Dに割当てゝ演算処理を行い、演算結
果を再びベクトルレジスタに格納するものとする。When computing the data already stored in the vector registers 31A to 31D, each element of the vector is assigned to the computing units 30A to 30D as follows, the computation process is performed, and the computation result is stored again in the vector register. .
この演算動作では、4個の演算装置30Aないし30Dは完全
に同期して演算が行われ、例えば、第0,1,2,3要素の演
算結果は同時に求められ、同時刻でベクトルレジスタ31
Aないし31Dに格納される。ベクトルレジスタ31Aないし3
1Dに格納される各要素の割当てを以下に示す。 In this arithmetic operation, the four arithmetic units 30A to 30D perform arithmetic operations in perfect synchronization. For example, the arithmetic results of the 0th, 1st, 2nd and 3rd elements are obtained at the same time, and the vector register 31
Stored in A to 31D. Vector registers 31A thru 3
The allocation of each element stored in 1D is shown below.
次にベクトルレジスタ31Aないし31Dに格納されたデータ
を記憶装置35に書き込む場合も、各要素をアクセス要求
制御装置32Aないし32Dに のように割当てられ、4個の要素、例えば第0,1,2,3要
素が、記憶制御装置33の対応するアクセス要求スタック
回路33Aないし33Dに送出される。該各スタック回路で
は、アクセス要求のアドレス情報に基づき、目的の優先
順位決定回路34Aないし34Dのいずれかに送出する。各優
先順位決定回路では、複数のアクセス要求が競合した
時、所定の優先順位に従って一つのアクセス要求を選択
し、それぞれに対応する記憶バンク35Aないし35Dに送出
する。 Next, when writing the data stored in the vector registers 31A to 31D to the storage device 35, each element is stored in the access request control devices 32A to 32D. 4 elements, for example, the 0th, 1st, 2nd and 3rd elements are sent to the corresponding access request stack circuits 33A to 33D of the storage controller 33. In each of the stack circuits, based on the address information of the access request, it is sent to any of the target priority order determining circuits 34A to 34D. When a plurality of access requests compete with each other, each priority determination circuit selects one access request according to a predetermined priority and sends it to the corresponding storage banks 35A to 35D.
以上述べたように、各々4個の演算装置30Aないし30D、
ベクトルレジスタ31Aないし31D、アクセス要求制御装置
32Aないし32Dは、同期して各要素を処理する。従って、
同期して動作させる要素並列処理方式では、一つの制御
系論理で各々4個の演算装置30Aないし30D、ベクトルレ
ジスタ31Aないし31D、アクセス要求制御装置32Aないし3
2Dを制御するような論理構成をとることができる。As described above, each of the four arithmetic units 30A to 30D,
Vector registers 31A to 31D, access request control device
32A to 32D process each element in synchronization. Therefore,
In the element parallel processing method of operating in synchronization, four arithmetic units 30A to 30D, vector registers 31A to 31D, and access request control units 32A to 3 are controlled by one control system logic.
It can have a logical configuration that controls 2D.
ところが、記憶制御装置33では、アクセスする記憶バン
クの状態(先行アクセス要求にる使用中等)や他のアク
セスとの競合の為に、アクセス要求制御装置32Aないし3
2Dが同期して同時に送出した4個の各アクセス要求が同
時に処理されず、記憶バンク35Aないし35Dへのアクセス
要求に時間的なずれが生じることがある。そのため、そ
の時間的なずれを吸収して送出する制御方式が必要とな
る。However, in the storage control device 33, due to the state of the storage bank to be accessed (in use in the preceding access request, etc.) and competition with other accesses, the access request control devices 32A to 32A are connected.
Each of the four access requests sent simultaneously by the 2D synchronously may not be processed at the same time, which may cause a time lag in the access requests to the storage banks 35A to 35D. Therefore, a control method for absorbing and transmitting the time difference is required.
以下、記憶制御装置33における本発明による同期制御方
式について第1図と第4図を用いて説明する。第1図及
び第4図は本発明の一実施例のブロック図で、第1図は
記憶制御装置33内の各アクセス要求スタック回路33Aな
いし33Dの構成例を示し、第4図はアクセス要求スタッ
ク回路33Aないし33Dと優先順位決定回路34Aないし34Dと
の接続関係を示す。The synchronous control method according to the present invention in the storage controller 33 will be described below with reference to FIGS. 1 and 4. 1 and 4 are block diagrams of an embodiment of the present invention. FIG. 1 shows a configuration example of each access request stack circuit 33A to 33D in the storage controller 33, and FIG. 4 shows an access request stack. The connection relationship between the circuits 33A to 33D and the priority determination circuits 34A to 34D is shown.
アクセス要求制御装置32Aないし32Dから発行された4個
のアクセス要求は、それぞれの要素の対応する記憶制御
装置内のアクセス要求スタック回路33Aないし33Dに到着
する。例えばアクセス要求スタック回路33Aに到着した
アクセス要求は、スタック入力制御回路11が示すスタッ
クS0(10A),S1(10B),S2(10C),S3(10D)のいずれ
か、例えばS0(10A)にセットされる。スタック入力制
御回路11は、アクセス要求を格納すべきスタック位置S0
〜S3をスタックに対して制御信号11aで指示する回路
で、アクセス要求が1個スタックされるごとに、次に格
納すべきスタック位置を示す信号11aをS0→S1→S2→S3
→S0のように送出する。The four access requests issued from the access request control devices 32A to 32D arrive at the access request stack circuits 33A to 33D in the storage control devices corresponding to the respective elements. For example, the access request arriving at the access request stack circuit 33A is sent to one of the stacks S0 (10A), S1 (10B), S2 (10C), and S3 (10D) indicated by the stack input control circuit 11, for example, S0 (10A). Set. The stack input control circuit 11 uses the stack position S0 where the access request should be stored.
A circuit for instructing ~ S3 to the stack by the control signal 11a, and every time an access request is stacked, the signal 11a indicating the stack position to be stored next is S0 → S1 → S2 → S3.
→ Send as S0.
一方、スタックS0ないしS3に格納されたアクセス要求
は、スタック出力制御回路12が示すスタック位置、例え
ばスタックS0からアクセス要求送出制御回路15に送ら
れ、それと同時に命令識別回路13へ送られる。こゝでス
タック出力制御回路12は、アクセス要求を取出すべきス
タック位置がS0→S3の値を信号12aで指示し、スタック
入力制御回路11と同様にS0→S1→S2→S3→S0のように、
アクセス要求送出制御回路15がアクセス要求を優先順位
決定回路34Aないし34Dに出力する毎にその値を変える。On the other hand, the access request stored in the stacks S0 to S3 is sent from the stack position indicated by the stack output control circuit 12, for example, the stack S0 to the access request sending control circuit 15 and at the same time sent to the instruction identifying circuit 13. Here, the stack output control circuit 12 indicates the value of the stack position from which the access request should be taken out from S0 → S3 by the signal 12a, and like the stack input control circuit 11, the stack output control circuit 12 operates like S0 → S1 → S2 → S3 → S0. ,
The value is changed every time the access request transmission control circuit 15 outputs the access request to the priority order determination circuits 34A to 34D.
命令識別回路13は、スタック回路10Aないし10Dから取り
出したアクセス要求情報により、単純ロード命令、単純
ストア命令、リストベクトルのストア命令のいずれであ
るかを識別し、単純ロード命令であるならば、単純ロー
ド命令をスタック回路から取り出した事を示す信号を単
純ロード命令用出力制御回路14Aに送り、単純ストア命
令であるならば、単純ストア命令をスタック回路から取
り出した事を示す信号を単純ストア命令用出力制御回路
14Bに送り、又、リストベクトルのストア命令なら、リ
ストベクトルのストア命令をスタック回路から取り出し
たことを示す信号をリストベクトルのストア用出力制御
回路14Cに送出する。The instruction identifying circuit 13 identifies whether the instruction is a simple load instruction, a simple store instruction, or a list vector store instruction based on the access request information extracted from the stack circuits 10A to 10D. Send a signal indicating that the load instruction is fetched from the stack circuit to the simple load instruction output control circuit 14A, and if it is a simple store instruction, send a signal indicating that the simple store instruction is fetched from the stack circuit for the simple store instruction. Output control circuit
If it is a list vector store instruction, a signal indicating that the list vector store instruction is fetched from the stack circuit is sent to the list vector store output control circuit 14C.
単純ロード命令用出力制御回路14Aは0〜(a−1)ま
での値をカウンタと、0〜(a−1)のビット対応のフ
リップフロップから構成されている。単純ストア命令用
出力制御回路14Bは0〜(b−1)までの値をもつカウ
ンタと、0〜(b−1)のビット対応のフリップフロッ
プから構成され、リストベクトルのストア命令用出力制
御回路14cは、1ビットのフリップフロップから構成さ
れている。各制御回路14A,14B,14Cのカウンタの値は、
各々の命令のアクセス要求発行順を示すアクセス要求識
別子して信号線18によりアクセス要求送出制御回路15に
与えられ、そのカウンタ値に対応するフリップフロップ
の状態にもとづく信号(送出可能信号)が信号線17によ
り同様にアクセス要求送出制御回路15に与えられる。ア
クセス要求送出制御回路15は、スタック10Aないし10Dか
ら取り出したアクセス要求を優先順位決定回路34Aない
し34Dに送出してよいか否かを制御する回路で、スタッ
ク10Aないし10Dから取り出したアクセス要求信号と、命
令別出力制御回路14Aないし14Cから送出される送出可能
信号17とのANDゲートで構成されており、両者の信号が
論理的に“1"の時、該アクセス要求にアクセス要求識別
子18が付加されて優先順位決定回路34Aないし34Dに送出
される。The output control circuit 14A for a simple load instruction is composed of a counter for values 0 to (a-1) and a flip-flop corresponding to bits 0 to (a-1). The output control circuit 14B for a simple store instruction is composed of a counter having a value from 0 to (b-1) and a flip-flop corresponding to a bit from 0 to (b-1). 14c is composed of a 1-bit flip-flop. The counter value of each control circuit 14A, 14B, 14C is
An access request identifier indicating the access request issuance order of each instruction is given to the access request sending control circuit 15 by the signal line 18, and a signal (sendable signal) based on the state of the flip-flop corresponding to the counter value is a signal line. It is also given to the access request transmission control circuit 15 by 17. The access request transmission control circuit 15 is a circuit for controlling whether or not the access request extracted from the stacks 10A to 10D may be transmitted to the priority order determination circuits 34A to 34D, and the access request signal extracted from the stacks 10A to 10D. , An AND gate with a send enable signal 17 sent from each command output control circuit 14A to 14C. When both signals are logically "1", an access request identifier 18 is added to the access request. It is sent to the priority order determination circuits 34A to 34D.
リストベクトルのストア命令について説明すると、リス
トベクトルのストア命令のアクセス要求がアクセス要求
制御装置32Aないし32Dから発行され、アクセス要求スタ
ック回路33Aないし33D内のスタック10Aないし10Dにスタ
ックされる。こゝで、第1図はアクセス要求スタック回
路33Aであるとする。今、仮にスタック入力制御回路11
によるスタック位置指示がS0であれば、アクセス要求制
御装置32Aのアクセス要求はS0(10A)にスタックされ
る。スタック入力制御回路11は、スタックされると同時
のスタック位置指示をS1に更新する。アクセス要求制御
装置32Aから次のアクセス要求が到着すると、スタック
入力制御回路11はアクセス要求をS1(10B)にスタック
し、スタック位置指示をS2にする。アクセス要求制御装
置32Aは、スタック10A〜10Dがいっぱいになるまでアク
セス要求を発行する。Explaining the list vector store instruction, an access request for the list vector store instruction is issued from the access request control devices 32A to 32D and is stacked on the stacks 10A to 10D in the access request stack circuits 33A to 33D. Here, it is assumed that FIG. 1 shows the access request stack circuit 33A. Now, assume that the stack input control circuit 11
If the stack position instruction by S0 is S0, the access request of the access request control device 32A is stacked in S0 (10A). The stack input control circuit 11 updates the stack position indication at the same time as being stacked to S1. When the next access request arrives from the access request control device 32A, the stack input control circuit 11 stacks the access request in S1 (10B) and sets the stack position indication to S2. The access request control device 32A issues access requests until the stacks 10A to 10D are full.
一方、スタック出力制御回路12が指示するスタック位置
S0から取り出されたアクセス要求は、命令識別回路13で
リストベクトルのストア命令だと認識されると、リスト
ベクトルのストア命令用出力制御回路14Cに入力され
る。リストベクトルのストア命令用出力制御回路14C内
には送出制御用フリップフロップがあり、その初期状態
は“0"である。該フリップフロップはアクセス要求送出
を抑止するフリップフロップで、“0"なら送出可能を意
味する。初期状態として該フリップフロップは“0"であ
るので、アクセス要求送出制御回路15に送出可能信号17
を“1"にして送出する。アクセス要求送出制御回路15
は、該送出可能信号17と、スタックS0から取り出された
アクセス要求信号とANDを取り、両者とも“1"であるの
で、アクセス要求(付加されるアクセス要求識別子は
0)を記憶バンク対応の優先順位決定回路34Aないし34D
に送出する。送出した時点で、リストベクトルのストア
命令用出力制御回路14C内のフリップフロップを“1"に
セットし、後続のリストベクトルのストアのアクセス要
求送出を抑止する。On the other hand, the stack position indicated by the stack output control circuit 12
When the instruction identifying circuit 13 recognizes the access request fetched from S0 as a list vector store instruction, it is input to the list vector store instruction output control circuit 14C. In the output control circuit 14C for store instruction of list vector, there is a flip-flop for sending control, and its initial state is "0". The flip-flop is a flip-flop for inhibiting transmission of an access request, and "0" means that transmission is possible. In the initial state, since the flip-flop is "0", the transmission enable signal 17
Set to "1" and send. Access request transmission control circuit 15
AND's the send enable signal 17 with the access request signal fetched from the stack S0 and both are "1", so the access request (added access request identifier is 0) is given priority to the storage bank. Ranking circuit 34A to 34D
Send to. At the time of transmission, the flip-flop in the list vector store instruction output control circuit 14C is set to "1" to suppress the transmission of the subsequent list vector store access request.
記憶バンク対応の優先順位決定回路34Aないし34Dに到着
したアクセス要求は、所定の優先順位(例えば33A>33B
>33C>33D)に従いアクセス要求を選択し、アクセス要
求スタック回路33Aないし33Dから送出されたアクセス要
求が全て選択されたことを検出回路40Aないし40Dで検出
すると、検出信号16を“1"にする。該検出信号16が“1"
になった時点で、上記リストベクトルのストア命令用出
力制御回路14C内にフリップフロップを“0"にリセット
する。The access request arriving at the priority order determination circuits 34A to 34D corresponding to the storage banks is given a predetermined priority order (for example, 33A> 33B).
>33C> 33D), the detection signal 16 is set to "1" when the detection circuit 40A to 40D detects that all the access requests sent from the access request stack circuits 33A to 33D have been selected. . The detection signal 16 is "1"
Then, the flip-flop is reset to "0" in the output control circuit 14C for the store instruction of the list vector.
リストベクトルのストア命令のようにアドレスがランダ
ムで、アドレス情報により同一記憶バンクの優先順位決
定回路34Aないし34Dに複数のアクセス要求が送出される
場合もあるが、優先順位決定回路で全てのアクセス要求
が選択されたことを検出する信号が、アクセス要求が全
て記憶バンクに送出されるまで“1"にならないため、上
記フリップフロップは“0"にリセットされなく、後続の
アクセス要求はアクセス要求スタック装置から送出され
ない。このようにしてリストベクトルのストア命令の順
序性が保証される。There are cases where the address is random like a list vector store instruction and a plurality of access requests are sent to the priority order determination circuits 34A to 34D of the same storage bank depending on the address information. The flip-flop is not reset to "0" because the signal for detecting that the access request has been selected does not become "1" until all the access requests have been sent to the storage bank. Not sent from. In this way, the order of the store instructions of the list vector is guaranteed.
次に単純ロードおよびストア命令の処理について説明す
る。以下の説明でカッコ内がストア命令に該当する。Next, processing of simple load and store instructions will be described. In the following description, parentheses correspond to store instructions.
アクセス要求制御装置32Aないし32Dから単純ロード(ス
トア)命令のアクセス要求が発行され、アクセス要求ス
タック回路33Aないし33Dにスタックされる。スタック制
御はリストベクトルのストアの場合と同様である。スタ
ック回路から取り出されたアクセス要求は命令識別回路
13に入力され、単純ロード(ストア)命令であると認識
される。単純ロード(ストア)送出制御回路14A(14B)
は、0〜a−1ビット(0〜b−1ビット)のカウンタ
と0〜a−1(0〜b−1)に対応するフリップフロッ
プを有する。An access request of a simple load (store) instruction is issued from the access request control devices 32A to 32D and is stacked in the access request stack circuits 33A to 33D. Stack control is the same as in the case of storing list vectors. The access request fetched from the stack circuit is an instruction identification circuit
Input to 13 and recognized as a simple load (store) instruction. Simple load (store) sending control circuit 14A (14B)
Has a counter of 0 to a-1 bit (0 to b-1 bit) and a flip-flop corresponding to 0 to a-1 (0 to b-1).
今、単純ロード(ストア)命令のアクセス要求がスタッ
ク回路S0から取り出されて、単純ロード(ストア)送出
制御回路1A(14B)に入力され、同時にアクセス要求制
御回路15に入力されたとする。単純ロード(ストア)送
出制御回路14A(14B)では、アクセス要求が該回路に入
力された時のカウンタ値が示す値のフリップフロップの
状態を見て、該フリップフロップが“0"なら送出可能、
“1"なら送出を抑止するように、送出可能信号17を制御
する。初期状態を考えると、単純ロード(ストア)送出
制御回路内のカウンタ値は“0"であり、0〜a−1(0
〜b−1)に対応するフリップフロップの全ての値が
“0"である。従って、単純ロード(ストア)命令のアク
セス要求(付加されるアクセス要求識別子は0)が単純
ロード(ストア)送出制御回路14A(14B)に入力された
時のカウンタ値が“0"で、0に対応するフリップフロッ
プが“0"であるため、送出可能信号17を“1"にする。ア
クセス要求送出制御回路15では、送出可能信号17が“1"
であるため、アクセス要求をアドレス情報に応じてアク
セス要求優先順位決定回路34Aないし34Dに送出する。ア
クセス要求が優先順位決定回路34Aないし34Dに送出され
た時点で、単純ロード(ストア)送出制御回路14A(14
B)のカウンタがカウントアップされ“1"になる。それ
と同時に“0"に対応するフリップフロップを“1"にす
る。次に単純ロード(ストア)のアクセス要求がスタッ
ク回路10Bから取り出されると、“1"に対応するフリッ
プフロップが“0"であるため、該アクセス要求(付加さ
れるアクセス要求識別子は1)は上記と同じようにアク
セス要求優先順位決定回路34Aないし34Dのいずれかにア
ドレス情報により送出される。以下、アクセス要求制御
装置32Aないし32Dから発行されるアクセス要求を順次同
様に処理する。Now, it is assumed that the access request of the simple load (store) instruction is fetched from the stack circuit S0, input to the simple load (store) transmission control circuit 1A (14B), and simultaneously input to the access request control circuit 15. In the simple load (store) transmission control circuit 14A (14B), if the flip-flop is "0", the state can be transmitted, looking at the state of the flip-flop indicated by the counter value when the access request is input to the circuit.
If it is "1", the sending enable signal 17 is controlled so as to suppress sending. Considering the initial state, the counter value in the simple load (store) transmission control circuit is "0", and 0 to a-1 (0
To b-1) all the values of the flip-flops are "0". Therefore, when the access request of the simple load (store) instruction (the access request identifier to be added is 0) is input to the simple load (store) transmission control circuit 14A (14B), the counter value is "0" and becomes 0. Since the corresponding flip-flop is "0", the send enable signal 17 is set to "1". In the access request transmission control circuit 15, the transmission enable signal 17 is "1".
Therefore, the access request is sent to the access request priority determination circuits 34A to 34D according to the address information. When the access request is sent to the priority order determining circuits 34A to 34D, the simple load (store) sending control circuit 14A (14
The counter in B) is incremented and becomes "1". At the same time, the flip-flop corresponding to “0” is set to “1”. Next, when an access request for a simple load (store) is fetched from the stack circuit 10B, the flip-flop corresponding to "1" is "0", so that the access request (the added access request identifier is 1) is Similarly, the address information is sent to any of the access request priority order determination circuits 34A to 34D by address information. Hereinafter, access requests issued from the access request control devices 32A to 32D are sequentially processed in the same manner.
このようにして、アクセス要求を優先順位決定回路34A
ないし34Dで選択されたことを待たずに最大“a−1"
(“b−1")まで送出できる。アクセス要求順位決定回
路34Aないし34Dでは、同じアクセス要求識別子を持つア
クセス要求が全て選択されたことを返し、そのアクセス
要求識別子の値に対応するフリップフロップを“0"にリ
セットしてやる。例えば前述した“0"のアクセス要求識
別子をもつアクセス要求が全て選択されたことを検出
し、それを返して、単純ロード(ストア)送出制御回路
14A(14B)のカウンタ値が“0"に対応するフリップフロ
ップを“0"にリセットする。これにより、カウンタが一
周して“0"をさした時に、アクセス要求識別子“0"を付
加するアクセス要求を再び送出することが可能となる。In this way, the access request is sent to the priority determination circuit 34A.
To max. "A-1" without waiting for selection in 34D
("B-1") can be sent. The access request order determination circuits 34A to 34D return that all access requests having the same access request identifier have been selected, and reset the flip-flop corresponding to the value of the access request identifier to "0". For example, it is detected that all the access requests having the above-mentioned access request identifier of "0" have been selected and returned, and the simple load (store) transmission control circuit
The flip-flop corresponding to the counter value of 14A (14B) "0" is reset to "0". As a result, when the counter makes one round and reaches "0", the access request to which the access request identifier "0" is added can be transmitted again.
本発明によれば、複数のアクセス要求制御装置に対し
て、一つのベクトルアクセス命令の要素を分割して割付
けて同時に処理する要素並列処理方式において、各アク
セス要求制御装置のアクセス要求を命令別に異なる分割
数に分割し、処理することにより、記憶制御装置のアク
セス要求処理能力の大幅な向上に効果がある。According to the present invention, in an element parallel processing system in which elements of one vector access instruction are divided and assigned to a plurality of access request control apparatuses and processed at the same time, the access request of each access request control apparatus is different for each instruction. By dividing into the number of divisions and processing, it is effective in significantly improving the access request processing capability of the storage control device.
更に、要素並列処理において、要素間の同期動作を乱す
主原因である記憶装置アクセスに伴うアクセス要求処理
時刻のばらつきを記憶制御装置内で完全に抑えることが
でき、要素並列処理方式の実現容易性の向上に大きな効
果がある。Furthermore, in element parallel processing, it is possible to completely suppress variations in access request processing time due to storage device access, which is the main cause of disturbing the synchronous operation between elements, within the storage controller, and it is easy to implement the element parallel processing method. Has a great effect on the improvement of.
第1図は本発明の記憶制御装置内のアクセス要求スタッ
ク回路の一実施例を示す図、第2図は従来の記憶制御方
式を説明するための図、第3図は本発明で対象とする計
算機システムの構成例を示す図、第4図は第1図のアク
セス要求スタック回路と優先順位決定回路の接続関係を
示す図である。 10A〜10D……スタック回路、 11……スタック入力制御回路、 12……スタック出力制御回路、 13……命令識別回路、 14A〜14C……命令別送出制御回路、 15……アクセス要求送出制御回路、 32……アクセス要求制御装置、 33……記憶制御装置、 33A〜33D……アクセス要求スタック回路、 34A〜34D……優先順位決定回路、 35……記憶装置。FIG. 1 is a diagram showing an embodiment of an access request stack circuit in a storage control device of the present invention, FIG. 2 is a diagram for explaining a conventional storage control system, and FIG. 3 is an object of the present invention. FIG. 4 is a diagram showing a configuration example of a computer system, and FIG. 4 is a diagram showing a connection relationship between the access request stack circuit and the priority order determination circuit of FIG. 10A-10D …… Stack circuit, 11 …… Stack input control circuit, 12 …… Stack output control circuit, 13 …… Instruction identification circuit, 14A-14C …… Instruction sending control circuit, 15 …… Access request sending control circuit , 32 ... access request control device, 33 ... storage control device, 33A to 33D ... access request stack circuit, 34A to 34D ... priority determination circuit, 35 ... storage device.
Claims (1)
成される記憶手段と、前記記憶手段に対してアクセス要
求を発行する複数のアクセス要求手段と、前記複数のア
クセス要求手段が発行するアクセス要求間の優先順位を
決定し、選択したアクセス要求を該当記憶単位に送出す
るアクセス要求優先順位決定手段とを有する計算機シス
テムの記憶制御方式において、 各アクセス要求手段毎に、当該アクセス要求手段が発行
するアクセス要求をスタックするスタック手段と、前記
スタック手段の入出力を制御するスタック入出力制御手
段と、前記スタック手段から出力されるアクセス要求の
命令を識別する手段と、前記識別された命令の種類によ
りアクセス要求をグループ分けして、その各々のアクセ
ス要求に対し、アクセス要求発行順を示すアクセス要求
識別子を付加してアクセス要求優先順位決定手段に送出
すると共に、アクセス要求優先順位決定手段から同一の
アクセス要求識別子を付加した全てのアクセス要求が選
択されたことを示す信号を受け取って後続のアクセス要
求の出力を前記スタック入出力制御手段に許可する制御
手段とを設けことを特徴とする記憶制御方式。1. A storage unit composed of a plurality of storage units that can be accessed independently, a plurality of access request units for issuing an access request to the storage unit, and an access issued by the plurality of access request units. In a storage control system of a computer system having an access request priority order determining means for determining a priority order between requests and transmitting the selected access request to a corresponding storage unit, the access request means issues the access request means for each access request means. Stack means for stacking access requests, stack input / output control means for controlling input / output of the stack means, means for identifying an instruction of an access request output from the stack means, and type of the identified instruction The access requests are grouped by and the access request issue order is shown for each access request. The access request identifier is added to the access request priority determining means, and the access request priority determining means receives a signal indicating that all access requests to which the same access request identifier is added from the access request priority determining means are received. A storage control system comprising: a control unit that permits the output of an access request to the stack input / output control unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30313286A JPH0673128B2 (en) | 1986-12-19 | 1986-12-19 | Memory control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30313286A JPH0673128B2 (en) | 1986-12-19 | 1986-12-19 | Memory control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS63155352A JPS63155352A (en) | 1988-06-28 |
| JPH0673128B2 true JPH0673128B2 (en) | 1994-09-14 |
Family
ID=17917267
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP30313286A Expired - Lifetime JPH0673128B2 (en) | 1986-12-19 | 1986-12-19 | Memory control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0673128B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2607300B2 (en) * | 1990-05-25 | 1997-05-07 | 株式会社日立製作所 | Computer system |
-
1986
- 1986-12-19 JP JP30313286A patent/JPH0673128B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS63155352A (en) | 1988-06-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0242882B1 (en) | Storage control method and apparatus | |
| EP1345125B1 (en) | Dynamic random access memory system with bank conflict avoidance feature | |
| US5590353A (en) | Vector processor adopting a memory skewing scheme for preventing degradation of access performance | |
| US4365292A (en) | Array processor architecture connection network | |
| US4745545A (en) | Memory reference control in a multiprocessor | |
| US4499536A (en) | Signal transfer timing control using stored data relating to operating speeds of memory and processor | |
| GB2213294A (en) | Data processor | |
| US5367654A (en) | Method and apparatus for controlling storage in computer system utilizing forecasted access requests and priority decision circuitry | |
| US5539902A (en) | Vector data processing apparatus wherein a time slot for access to a bank of vector registors is assigned based on memory access time information | |
| US6571301B1 (en) | Multi processor system and FIFO circuit | |
| US5983266A (en) | Control method for message communication in network supporting software emulated modules and hardware implemented modules | |
| JPH0673128B2 (en) | Memory control method | |
| JPH0650511B2 (en) | Memory control method | |
| JP2685484B2 (en) | Storage control method | |
| CA1065492A (en) | System and method for concurrent and pipeline processing employing a data driven network | |
| JPH03238539A (en) | Memory access controller | |
| EP0359192B1 (en) | Vector processors and vector register control | |
| JP3126129B2 (en) | Priority control device | |
| JPH1185605A (en) | Storage controller | |
| EP0098170B1 (en) | Access control processing system in computer system | |
| JP2564624B2 (en) | Stack method | |
| JPH0833869B2 (en) | Data processing device | |
| JP2742245B2 (en) | Parallel computer | |
| JPH02287666A (en) | Instruction-with-interlock reception control circuit | |
| JPH0350298B2 (en) |