JP2680208B2 - Memory access control device - Google Patents

Memory access control device

Info

Publication number
JP2680208B2
JP2680208B2 JP3176488A JP17648891A JP2680208B2 JP 2680208 B2 JP2680208 B2 JP 2680208B2 JP 3176488 A JP3176488 A JP 3176488A JP 17648891 A JP17648891 A JP 17648891A JP 2680208 B2 JP2680208 B2 JP 2680208B2
Authority
JP
Japan
Prior art keywords
access
block
memory
priority
block access
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 - Fee Related
Application number
JP3176488A
Other languages
Japanese (ja)
Other versions
JPH0520183A (en
Inventor
彰二 中谷
環 今河
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 JP3176488A priority Critical patent/JP2680208B2/en
Publication of JPH0520183A publication Critical patent/JPH0520183A/en
Application granted granted Critical
Publication of JP2680208B2 publication Critical patent/JP2680208B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、メモリアクセス制御方
式に関し、特にCPUなどからのシングルアクセスに加
えてベクトル演算ユニットまたは一連のデータ空間を他
のプロセッサ等に転送するためのデータ転送機能を有し
たデータ転送ユニットなどからのブロックアクセスを受
け付けるメモリアクセス制御装置において、アクセス各
々の種類,各アクセス発信先のメモリバンクのビジー,
各アクセス間のアドレスバスコンフリクトなどを調べ、
これらの結果に基づいて実行可能なアクセスを選択して
メモリに発信するメモリアクセス制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory access control system, and in particular, it has a data transfer function for transferring a vector operation unit or a series of data spaces to another processor in addition to a single access from a CPU or the like. In a memory access control device that accepts block access from a data transfer unit etc., the type of each access, the busyness of the memory bank of each access destination,
Check address bus conflicts between each access,
The present invention relates to a memory access control device that selects executable access based on these results and sends it to a memory.

【0002】[0002]

【従来の技術】従来、シングルアクセスとブロックアク
セスとを受け付けるメモリアクセス制御装置でのアクセ
ス選択は、図6,図7に示すような方式で行なわれてい
る。図6において、メモリアクセス制御装置74はデー
タ転送装置(MOVER)71,CPU72,ベクトル
演算ユニット73などからのシングルアクセスおよびブ
ロックアクセスを受け付ける。そして、種類判定部7
5,バンクビジーチェック部76,バスコンフリクトチ
ェック部77のそれぞれでアクセス各々の種類、各アク
セスの発信先のメモリバンクのビジー,各アクセス間の
アドレスバスコンフリクトなどを調べ、これらの結果デ
ータを用いて、例えば図7に示すような手順により、各
アクセスのプライオリティを決定し、このプライオリテ
ィにしたがってバス選択部78でアドレスバスを選択す
ることにより、発信先のバンクメモリを確保している。
また、メモリは、複数のアレイカードなどのメモリユニ
ット♯0〜♯7からなり、このメモリユニット♯0〜♯
7のそれぞれはn個のメモリバンクから構成されてい
る。そして、各メモリユニットとメモリアクセス制御装
置74とはロード用アドレスバス81,ストア用アドレ
スバス82を介して接続され、また各メモリユニットに
はロード用データバス,ストア用データバスなどが接続
されている。
2. Description of the Related Art Conventionally, access selection in a memory access control device for accepting a single access and a block access is performed by a method as shown in FIGS. In FIG. 6, the memory access control device 74 receives single access and block access from the data transfer device (MOVER) 71, the CPU 72, the vector operation unit 73, and the like. Then, the type determination unit 7
5, each of the bank busy check unit 76 and the bus conflict check unit 77 checks the type of each access, the busyness of the memory bank of the transmission destination of each access, the address bus conflict between the accesses, and the like, and uses these result data. For example, the priority of each access is determined by the procedure as shown in FIG. 7, and the address selector selects the address bus according to this priority to secure the bank memory of the transmission destination.
The memory is composed of memory units # 0 to # 7 such as a plurality of array cards.
Each of 7 is composed of n memory banks. Each memory unit and the memory access control device 74 are connected via a load address bus 81 and a store address bus 82, and a load data bus, a store data bus, etc. are connected to each memory unit. There is.

【0003】なお、シングルアクセスは1本のアドレス
バスを使用する、例えば8バイトのアクセスであり、ま
たブロックアクセスは複数本のアドレスバスを使用す
る、例えば8本のアドレスバスを使用する64バイトの
アクセスである。図7は、前記プライオリティを決定す
る手順を示す説明図である。
A single access is an access of, for example, 8 bytes that uses one address bus, and a block access is an access of a plurality of address buses, for example, a 64-byte access that uses 8 address buses. It is access. FIG. 7 is an explanatory diagram showing a procedure for determining the priority.

【0004】すなわち、あるアクセスに対して、アク
セス発信先のメモリバンクに関するビジーフラグの状態
に基づいて当該メモリバンクが「バンクビジー」である
かどうかを調べ、「YES」の場合は「発信不可」と判
断し、「NO」の場合はステップに進む。
That is, for a certain access, it is checked whether or not the memory bank is "bank busy" based on the state of the busy flag relating to the memory bank of the access destination. Judge, and if “NO”, proceed to step.

【0005】他のアクセスとの間でアドレスバスコン
フリクトが発生していないかどうかを判断し、「YE
S」の場合はステップに進み、「NO」の場合はステ
ップに進む。ロード命令,ストア命令に関して、ア
ドレスコンフリクトの相手のアクセスが同種のものであ
るかどうかを判断し、「YES」の場合はステップに
進み、「NO」の場合はステップに進む。
It is judged whether or not an address bus conflict has occurred with another access, and "YE
If "S", the process proceeds to step, and if "NO", the process proceeds to step. Regarding the load instruction and the store instruction, it is judged whether the access of the other party of the address conflict is of the same type, and if “YES”, the process proceeds to step, and if “NO”, the process proceeds to step.

【0006】シングルアクセス,ブロックアクセス間
などについて予め決めてある優先順位が、高いかどうか
を判断し、「YES」の場合はステップに進み、「N
O」の場合はステップに進む。アドレスバスコンフ
リクトの相手アクセスが発信可能であるかどうかを判断
し、「YES」の場合はステップに進み、「NO」の
場合は「発信不可」と判断する。
[0006] It is determined whether or not the predetermined priority order between single access and block access is high, and if "YES", the process proceeds to step "N".
If "O", proceed to step. It is determined whether or not the other party access due to the address bus conflict can be transmitted. If "YES", the process proceeds to the step, and if "NO", it is determined that "calling is impossible".

【0007】このアクセスのプライオリティを決定す
る。といった手順により各アクセスのプライオリティを
決定する。
The priority of this access is determined. The priority of each access is determined by such a procedure.

【0008】[0008]

【発明が解決しようとする課題】以上のように、従来の
プライオリティ決定におけるバンクビジー,バスコンフ
リクトのチェックの際には、ブロックアクセスのブロッ
ク幅全体、すなわちこのブロックアクセスの発信に必要
なアドレスバスおよび発信先のメモリバンクのすべてを
判断の対象としている。
As described above, in checking the bank busy and the bus conflict in the conventional priority determination, the entire block width of the block access, that is, the address bus required for transmitting the block access and All of the destination memory banks are subject to judgment.

【0009】そのため、例えば ・メモリバンク0〜7へのブロックアクセスに対してメ
モリバンク0のみが「バンクビジー」であるとき、 ・ストア命令に関するもの同士などの同種の、メモリバ
ンク0〜7(メモリユニット♯0〜♯7)へのブロック
アクセスと、プライオリティの高いシングルアクセスと
が同時に要求されたとき、 などは、ブロックアクセスをメモリユニットに発信でき
ない状態となり、特にプライオリティの高いシングルア
クセスが連続する場合には長期間にわたってブロックア
クセスの発信ができず、このブロックアクセスの要求元
のメモリアクセスのスループットが低下するといった問
題点を有している。
Therefore, for example, when only the memory bank 0 is "bank busy" for block access to the memory banks 0 to 7, the same kind of memory banks 0 to 7 (memory When a block access to units # 0 to # 7) and a single access with high priority are requested at the same time, the block access cannot be issued to the memory unit, and especially single access with high priority continues. However, there is a problem that the block access cannot be transmitted for a long period of time, and the throughput of the memory access at the source of the block access is reduced.

【0010】そこで、本発明では、ブロックアクセスを
複数の分割ブロックアクセスに分けてこの分割ブロック
アクセスを1つの単位としてシングルアクセスとの間で
プライオリティを決定し、プライオリティを得た分割ブ
ロックアクセスについてはこの単位で発信することによ
り、ブロックアクセスの要求元のメモリアクセスのスル
ープットを高めることを目的とする。
Therefore, in the present invention, the block access is divided into a plurality of divided block accesses, the divided block access is used as a unit to determine the priority with respect to the single access, and the divided block access having the priority is determined as follows. By transmitting in units, it is intended to increase the throughput of memory access of the block access request source.

【0011】[0011]

【課題を解決するための手段】図1は本発明の原理説明
図である。図1において、1は、アクセス源であり、例
えばデータ転送装置(MOVER),CPU,ベクトル
演算ユニットなどでシングルアクセスやブロックアクセ
スをメモリに対して発信する。
FIG. 1 is a diagram illustrating the principle of the present invention. In FIG. 1, reference numeral 1 denotes an access source, which sends a single access or a block access to a memory by a data transfer device (MOVER), a CPU, a vector operation unit, or the like.

【0012】2は、第1のアクセスポートであり、ブロ
ックアクセスとシングルアクセスを受け付ける。 3は、第2のアクセスポートであり、ブロックアクセス
とシングルアクセスを受け付ける。
A first access port 2 receives a block access and a single access. A second access port 3 receives block access and single access.

【0013】4は、アクセス分割部であり、第1のアク
セスポートで受け付けたブロックアクセスを複数、例え
ば2個の分割ブロックアクセスに分ける。しかし、受付
けたブロックアクセスを分割するか否かは他のアクセス
源からの条件による。 5は、バスコンフリクトチェック部であり、シングルア
クセスと、ブロックアクセス、各分割ブロックアクセス
のそれぞれとのコンフリクト状態を調べる。
An access division unit 4 divides the block access accepted at the first access port into a plurality of, for example, two divided block accesses. However, whether or not to divide the received block access depends on conditions from other access sources. Reference numeral 5 denotes a bus conflict check unit, which checks a conflict state between single access, block access, and each divided block access.

【0014】6は、バンクビジーチェック部であり、各
アクセス(ブロックアクセス,各分割ブロックアクセ
ス,シングルアクセス)の発信先のメモリバンクに関す
るビジーフラグの状態を調べる。 7は、プライオリティ決定部であり、図7に示したのと
同様な手順で各アクセス(ブロックアクセス,各分割ブ
ロックアクセス,シングルアクセス)のプライオリティ
を決定する。なお、競合するアクセス間での優先順位は
予め決められており、例えばブロックアクセスと分割ブ
ロックアクセスとの間では、ブロックアクセスの方が優
先する。そして、このプライオリティ決定部からは、ブ
ロックアクセス,各分割ブロックアクセス,シングルア
クセスそれぞれを発信することの可否(ただし、ブロッ
クアクセスが「可」であるときは前記優先順位にしたが
って各分割ブロックアクセスは「否」)についての信号
が出力される。
Reference numeral 6 denotes a bank busy check unit which checks the state of the busy flag for the memory bank of the transmission destination of each access (block access, divided block access, single access). Reference numeral 7 denotes a priority determining unit that determines the priority of each access (block access, each divided block access, single access) by the same procedure as shown in FIG. Note that the priorities of conflicting accesses are determined in advance, and for example, block access has priority over block access and divided block access. Whether or not it is possible to issue block access, each divided block access, and single access from this priority determination unit (however, when the block access is “Yes”, each divided block access is No ”) is output.

【0015】8は、メモリ選択部であり、プライオリテ
ィ決定部7の出力が「可」となっているアクセスに対応
したアドレスバスを選択する。 9は、メモリであり、例えばそれぞれが複数のメモリバ
ンクから構成されるメモリユニット♯0〜♯7からな
り、各メモリユニットにはアドレスバスが接続されてい
る。
Reference numeral 8 is a memory selection unit which selects an address bus corresponding to the access for which the output of the priority determination unit 7 is "OK". Reference numeral 9 denotes a memory, which is composed of, for example, memory units # 0 to # 7 each of which is composed of a plurality of memory banks, and an address bus is connected to each memory unit.

【0016】ここで、ブロックアクセスはオペコードの
識別により第1のアクセスポート2に送られたブロック
アクセスは、アクセス分割部4で、例えば2個の上位分
割ブロックアクセスと下位分割ブロックアクセスとに分
けられる。そして、この上位分割ブロックアクセスと下
位分割ブロックアクセスがシングルアクセス,ブロック
アクセスとともにバスコンフリクトチェック部5および
バンクビジーチェック部6に送られ、前者ではシングル
アクセスと各ブロックアクセスとの間の「アドレスバス
コンフリクト」を、また後者ではシングルアクセスおよ
び各ブロックアクセスそれぞれの発信先メモリバンクの
「バンクビジー」を調べる。
Here, the block access sent to the first access port 2 by the identification of the operation code is divided by the access dividing unit 4 into, for example, two upper divided block accesses and lower divided block accesses. . Then, the upper divided block access and the lower divided block access are sent to the bus conflict check unit 5 and the bank busy check unit 6 together with the single access and the block access, and in the former case, the "address bus conflict" between the single access and each block access. , And in the latter case, the "bank busy" of the destination memory bank for each single access and each block access is checked.

【0017】また、プライオリティ決定部7には、バス
コンフリクトチェック部5,バンクビジーチェック部6
及び第1,第2のアクセスポート2,3の出力、すなわ
ち前記の「アドレスバスコンフリクト」、「バンクビジ
ー」についての情報とともに、各アクセスポートで受け
付けるアクセスについての、オペコードに基づく、シン
グルアクセスかブロックアクセスか、ロード命令かスト
ア命令かなどの情報が供給される。そして、これらの情
報に基づいて各アクセスのプライオリティが決定され
る。
The priority determining section 7 includes a bus conflict check section 5, a bank busy check section 6
And the output of the first and second access ports 2 and 3, that is, the information about the above-mentioned "address bus conflict" and "bank busy", and a single access or block based on the opcode for the access accepted by each access port. Information such as access, load instruction or store instruction is supplied. Then, the priority of each access is determined based on these pieces of information.

【0018】[0018]

【作用】本発明においては、例えばアクセス要求装置間
のプライオリティをMOVER>CPU>ベクトル演算
ユニットであるとし、例えば「MOVERからのメモリ
バンクへのシングルアクセス」と「ベクトル演算ユニ
ットからのメモリバンク0〜7へのブロックアクセス」
とを受け付けた場合、このブロックアクセスはMOVE
Rからのシングルアクセスであること、優先順位が低い
ベクトル演算ユニットのブロックアクセスであること、
の条件から、「メモリバンク0〜3への分割ブロックア
クセス」と「メモリバンク4〜7への分割ブロックアク
セス」とに分けられ、バンクビジーチェック部6により
これら4つのアクセスの発信先のメモリバンクのビジー
状態を調べ、平行してバスコンフリクトチェック部5に
より3つのブロックアクセス各々とシングルアクセスと
のアドレスバスコンフリクトを調べている。そして、メ
モリバンク0〜のすべてが「バンクビジー」ではな
く、かつ「メモリバンクへのシングルアクセス」と
「メモリバンク0〜7へのブロックアクセス」とが共に
ロード命令、またはストア命令についての同種のもので
あるときには、プライオリティ決定部7は、シングルア
クセスとブロックアドレスとの間の優先順位にしたがっ
て各アクセスのプライオリティを決める。つまり「メモ
リバンクへのシングルアクセス」と「メモリバンク4
〜7への分割ブロックアクセス」とがプライオリティを
得、前者はアドレスバス21を、また後者はアドレスバ
ス25〜28を使用することにより、それぞれのアクセ
スがメモリに発信される。
In the present invention, for example, the priority between access requesting devices is MOVER>CPU> vector operation unit, and for example, “single access from memory to memory bank 0 ” and “memory bank 0 from vector operation unit”. Block access to ~ 7 "
If and are accepted, this block access is MOVE
Single access from R, block access of vector operation unit with low priority,
Are divided into “divided block access to memory banks 0 to 3” and “divided block access to memory banks 4 to 7”, and the bank busy check unit 6 sends these four accesses to the memory banks. The bus conflict check unit 5 in parallel checks the address bus conflict between each of the three block accesses and the single access. Then, all of the memory banks 0 to 7 are not "bank busy", and both "single access to memory bank 0 " and "block access to memory banks 0 to 7" are related to the load instruction or the store instruction. If they are of the same type, the priority determining unit 7 determines the priority of each access according to the priority order between the single access and the block address. That is, "single access to memory bank 0 " and "memory bank 4"
Each of the accesses is transmitted to the memory by using the address bus 21 in the former and the address buses 25 to 28 in the latter.

【0019】そして、以上のケースにおいて、メモリバ
ンクが「バンクビジー」のときは、「メモリバンク4
〜7への分割ブロックアクセス」がプライオリティを得
てアドレスバス25〜28を使用することにより、この
ブロックアクセスがメモリに発信される。
In the above case, when memory bank 0 is "bank busy", "memory bank 4"
The "split block access to ~ 7" takes priority and uses the address buses 25-28 to issue this block access to memory.

【0020】以上説明したように、ブロックアクセスを
分割してアクセスするようにしたので、例えばMOVE
Rよりのシングルアクセスが連続でアクセスされ、また
ベクトル演算ユニットもブロックアクセスが連続的に行
なわれる場合にブロックアクセスに対するスループット
を向上することができる。
As described above, since the block access is divided and accessed, for example, MOVE is performed.
When single access from R is continuously accessed, and the vector operation unit also performs block access continuously, the throughput for block access can be improved.

【0021】なお、以上の説明は、ロード命令用アドレ
スバスとストア命令用アドレスバスとを別々に設けた場
合についてであるが、これらのアドレスバスを共通にし
て用いる場合にも本発明は適用できる。
The above description is for the case where the load instruction address bus and the store instruction address bus are provided separately, but the present invention is also applicable when these address buses are commonly used. .

【0022】[0022]

【実施例】図2〜図4を参照して本発明の実施例を説明
する。図2において、31〜34はベクトル演算ユニッ
ト用アクセスポート,35はCPUもしくはMOVER
用アクセスポート,36〜37はアクセス分割回路,3
8〜39はバスコンフリクトチェック回路,40はバン
クビジーチェック回路,41はプライオリティ決定回
路,42はロード命令用アクセス選択回路,43はスト
ア命令用アクセス選択回路,44はロード命令/ストア
命令それぞれ8本ずつのアドレスバスについてのバス用
ポート,45はアクセスポート35でシングルアクセス
が受付けられていることを検出するデコーダである。し
たがって、アクセス分割回路36,37はアクセスポー
ト35でシングルアクセスが受付けられるときのみ、ブ
ロックアクセスを分割して分割ブロックアクセスとして
出力する。
Embodiments of the present invention will be described with reference to FIGS. In FIG. 2, reference numerals 31 to 34 are access ports for vector operation units, and 35 is a CPU or MOVER.
Access port, 36 to 37 are access dividing circuits, 3
8 to 39 are bus conflict check circuits, 40 is a bank busy check circuit, 41 is a priority determination circuit, 42 is a load instruction access selection circuit, 43 is a store instruction access selection circuit, and 44 are eight load instructions / store instructions each. Bus ports for the respective address buses, and 45 is a decoder for detecting that the access port 35 accepts single access. Therefore, the access division circuits 36 and 37 divide the block access and output the divided block access only when the access port 35 accepts the single access.

【0023】ここで、複数のベクトル演算器を持つべク
トル演算ユニット(図示せず)はそれぞれべクトル演算
ユニット用アクセスポート31〜34のすべてにつなが
っており、これらのベクトル演算ユニットからのアクセ
スが、ブロックアクセスのときはベクトル演算ユニット
用アクセスポート31〜32のどちらかに、またシング
ルアクセスのときはベクトル演算ユニット用アクセスポ
ート31〜34のどれかに入る。そして、アクセスポー
ト31〜32のブロックアクセスはアクセス分割回路3
6〜37に入り、また分割する条件ということでMOV
ERからのシングルアクセス条件(デコーダ45の出力
がオン)のもとに、そこでオペコードとアドレスをデコ
ードして上位ハーフブロックアクセスおよび下位ハーフ
ブロックアクセスのための信号を作成する。
Here, a vector operation unit (not shown) having a plurality of vector operation units is connected to all of the vector operation unit access ports 31 to 34, and access from these vector operation units is possible. In the case of block access, one of the vector operation unit access ports 31 to 32 is entered, and in the case of single access, one of the vector operation unit access ports 31 to 34 is entered. The block access of the access ports 31 to 32 is performed by the access division circuit 3
MOV because it is a condition to enter 6 to 37 and divide again
Under the single access condition from the ER (the output of the decoder 45 is on), the opecode and address are decoded there to create signals for upper half block access and lower half block access.

【0024】次に、バンクビジーチェック回路40によ
り、ブロックアクセス,上位ハーフブロックアクセス,
下位ハーフブロックアクセスおよびシングルアクセスの
4つのアクセスの発信先のメモリバンクのビジー状態を
調べ、これと平行してバスコンフリクトチェック回路3
8〜39により、各ブロックアクセスとシングルアクセ
スとのバスコンフリクトを調べ、これらの結果からプラ
イオリティ決定回路41にて4つのアクセス各々のプラ
イオリティを決定する。このとき、第1のバスコンフリ
クトチェック回路38にはアクセスポート31,32か
らのブロックアクセスとアクセスポート33,34,3
5からのシングルアクセスとが供給されてブロックアク
セスとシングルアクセスとのバスコンフリクトを、また
第2のバスコンフリクトチェック回路39にはアクセス
分割回路36,37の出力である上位ハーフブロックア
クセス,下位ハーフブロックアクセスとアクセスポート
35からのシングルアクセスとが供給されてCPUもし
くはMOVERからのアクセスとのバスコンフリクトを
調べている。
Next, the bank busy check circuit 40 performs block access, upper half block access,
The bus conflict check circuit 3 is checked in parallel with the busy state of the destination memory bank of the four accesses of the lower half block access and the single access.
8 to 39, the bus conflict between each block access and single access is checked, and the priority determination circuit 41 determines the priority of each of the four accesses based on these results. At this time, the first bus conflict check circuit 38 performs block access from the access ports 31, 32 and access ports 33, 34, 3
5 is supplied with the single access from the access control circuit 5 to cause a bus conflict between the block access and the single access, and the second bus conflict check circuit 39 outputs the upper half block access and the lower half block output from the access dividing circuits 36 and 37. The access and the single access from the access port 35 are supplied to check the bus conflict with the access from the CPU or the MOVER.

【0025】そして、シングルアクセスのプライオリテ
ィが得られたときはそのまま採用し、またアクセスポー
ト31,32からのブロックアクセスについては3つに
分けたアクセスの中でプライオリティが高いものをアク
セス選択回路42,43により選択し、続いてこれらの
選択されたアクセスをバスポート44の中の対応するも
のを介してメモリバンクに発信する。
When the priority of the single access is obtained, it is adopted as it is. For the block access from the access ports 31 and 32, the access having the highest priority among the three divided accesses is selected by the access selection circuit 42, 43, and subsequently these selected accesses are sent to the memory bank via the corresponding one of the bus ports 44.

【0026】図3はアクセス分割回路の実施例を示す説
明図であり、51はオペコードデコーダ,52はアドレ
スデコーダ,53はアクセス信号,54はバリッド信
号,55はオペコード,56はバンクビジーチェック用
のフラグ,57はアドレスである。なお、オペコード5
5にはブロックアクセスかシングルアクセスか、ロード
命令についてのアクセスかストア命令についてのアクセ
スかなどの情報が入っている。ここで、オペコードデコ
ーダ51はバリッド信号54とオペコード55とを受け
取り、このオペコードがブロックアクセスの場合にはデ
コーダ45からの条件のもとにハーフブロックアクセス
のモードのオペコードに変更し、またオペコードがブロ
ックアクセスでない場合にはハーフブロックアクセスの
バリッド信号54をOFFにする。また、アドレスデコ
ーダ52は、アドレス57に変更を加えて各ハーフブロ
ックアクセスのアドレス、例えばそれぞれの開始アドレ
スを作成する。
FIG. 3 is an explanatory diagram showing an embodiment of the access division circuit. 51 is an opcode decoder, 52 is an address decoder, 53 is an access signal, 54 is a valid signal, 55 is an opcode, and 56 is a bank busy check. The flag 57 is an address. Opcode 5
5 contains information such as block access, single access, load instruction access or store instruction access. Here, the opcode decoder 51 receives the valid signal 54 and the opcode 55. If the opcode is a block access, the opcode decoder 51 changes the opcode to a half block access mode opcode based on the condition from the decoder 45. If it is not an access, the valid signal 54 for half block access is turned off. Further, the address decoder 52 modifies the address 57 to create an address for each half block access, for example, each start address.

【0027】なお、2分割以外の4分割,8分割などの
分割ブロックアクセスを作成するときは予め分割できる
値を決めておき、オペコードでこれを選択するようにし
てもよい。図4は、アクセス選択回路の実施例を示す説
明図である。ここで、プライオリティ決定回路41から
はブロックアクセスのプライオリティ信号61およびハ
ーフブロックアクセスのプライオリティ信号62,63
が出力されている。そして、前者の反転信号と後者の信
号との論理積をとることにより、ブロックアクセスをメ
モリに発信できる場合にはハーフブロックアクセスのプ
ライオリティ信号62,63をオフにしている。
When creating a divided block access such as 4 divisions or 8 divisions other than 2 divisions, a value that can be divided may be determined in advance and selected by an opcode. FIG. 4 is an explanatory diagram showing an embodiment of the access selection circuit. Here, from the priority determination circuit 41, the priority signal 61 for block access and the priority signals 62, 63 for half block access.
Is output. When the block access can be transmitted to the memory by taking the logical product of the former inversion signal and the latter signal, the half block access priority signals 62 and 63 are turned off.

【0028】図5は、本発明によるアクセス時間の短縮
化を示す説明図であり、あるマシンサイクルで「発信
可」となった場合には次のマシンサイクルで発信される
ことを前提にしている。すなわち、バス0〜7を使用す
るブロックアクセスIと、高プライオリティの連続する
シングルアクセスIVとが入ってくる場合、単にブロック
アクセスのみでプライオリティを決定する従来の手法で
は時刻t8 になってブロックアクセスのメモリへの発信
が可能となるのに対し、ブロックアクセスIを上位ハー
フブロックアクセスIIと下位ハーフブロックアクセスII
I に分け、これらのハーフブロックアクセスを含めてプ
ライオリティを決定する本発明の手法では時刻t1 ,t
2 でそれぞれ上位ハーフブロックアクセスII,下位ハー
フブロックアクセスIII のメモリへの発信が可能とな
り、アクセス時間が6τだけ短縮されることを示してい
る。
FIG. 5 is an explanatory view showing the shortening of the access time according to the present invention, and it is premised that when the transmission is allowed in a certain machine cycle, the transmission is made in the next machine cycle. . That is, when the block access I using the buses 0 to 7 and the continuous single access IV with high priority come in, the block access becomes the time t 8 at the time t 8 in the conventional method of determining the priority only by the block access. While it is possible to send to the memory of block, block access I is set to upper half block access II and lower half block access II.
In the method of the present invention which divides into I and determines the priority including these half block accesses, the times t 1 and t
2 shows that upper half block access II and lower half block access III can be transmitted to the memory, respectively, and access time is reduced by 6τ.

【0029】[0029]

【発明の効果】本発明は、シングルアクセスとブロック
アクセスとを受け付けるメモリ制御方式において、先ず
ブロックアクセスを複数、例えば2個の上位ハーフブロ
ックアクセス,下位ハーフブロックアクセスに分け、こ
れら4個のアクセスに関するバンクビジー,バスコンフ
リクトのチェックを行なってハーフブロックアクセス単
位でのアクセスが可能な場合にはこのアクセスをメモリ
に発信する構成にしており、ハーフブロックアクセスを
作成する条件は自アクセスより優先順位が高くまた8バ
イトアクセスである場合、自ブロックアクセスが長期に
わたる発信不可状態を避けることができ、ブロックアク
セスの要求元のメモリアクセススループットの向上を図
ることができる。
According to the present invention, in a memory control system for accepting a single access and a block access, first, a block access is divided into a plurality of, for example, two upper half block accesses and a lower half block access, and these four accesses are related. Bank busy and bus conflict are checked, and if access can be made in half block access units, this access is sent to the memory. The condition for creating half block access has a higher priority than its own access. Further, in the case of 8-byte access, it is possible to avoid a state where the own block access cannot be originated for a long period of time, and it is possible to improve the memory access throughput of the block access request source.

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

【図1】本発明の原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の実施例を示す説明図である。FIG. 2 is an explanatory diagram showing an example of the present invention.

【図3】本発明のアクセス分割回路の実施例を示す説明
図である。
FIG. 3 is an explanatory diagram showing an embodiment of an access division circuit of the present invention.

【図4】本発明のアクセス選択回路の実施例を示す説明
図である。
FIG. 4 is an explanatory diagram showing an embodiment of an access selection circuit of the present invention.

【図5】本発明によるアクセス時間の短縮化を示す説明
図である。
FIG. 5 is an explanatory diagram showing shortening of access time according to the present invention.

【図6】従来のアクセスの制御方式を示す説明図であ
る。
FIG. 6 is an explanatory diagram showing a conventional access control method.

【図7】各アクセスのプライオリティを決定する手順を
示す説明図である。
FIG. 7 is an explanatory diagram showing a procedure for determining the priority of each access.

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

1 アクセス源 2 第1のアクセスポート 3 第2のアクセスポート 4 アクセス分割部 5 バスコンフリクトチェック部 6 バンクビジーチェック部 7 プライオリティ決定部 8 メモリ選択部 9 メモリ 31,32,33,34,35 アクセスポート 36,37 アクセス分割回路 38,39 バスコンフリクトチェック回路 40 バンクビジーチェック回路 41 プライオリティ決定回路 42 ロード命令用アクセス選択回路 43 ストア命令用アクセス選択回路 44 バス用ポート 45 デコーダ 51 オペコードデコーダ 52 アドレスデコーダ 53 アクセス信号 54 バリッド信号 55 オペコード 56 バンクビジーチェック用フラグ 57 アドレス 61,62,63 プライオリティ信号 71 データ転送装置(MOVER) 72 CPU 73 ペクトル演算ユニット 74 メモリアクセス制御装置 75 種類判定部 76 バンクビジーチェック部 77 バスコンフリクトチェック部 78 バス選択部 81 ロード用アドレスバス 82 ストア用アドレスバス 1 Access Source 2 First Access Port 3 Second Access Port 4 Access Division 5 Bus Conflict Check 6 Bank Busy Check 7 Priority Determinator 8 Memory Selector 9 Memory 31, 32, 33, 34, 35 Access Port 36, 37 access division circuit 38, 39 bus conflict check circuit 40 bank busy check circuit 41 priority determination circuit 42 load instruction access selection circuit 43 store instruction access selection circuit 44 bus port 45 decoder 51 opcode decoder 52 address decoder 53 access Signal 54 Valid signal 55 Opcode 56 Bank busy check flag 57 Address 61, 62, 63 Priority signal 71 Data transfer device (MOVER) 72 CPU 3 spectrum calculation unit 74 address bus for memory access control apparatus 75 type determining unit 76 bank busy checking unit 77 the bus conflict checker 78 bus selection section 81 for loading the address bus 82 Store

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭61−286943(JP,A) 特開 平1−99143(JP,A) 特開 昭61−153745(JP,A) 特開 平4−156632(JP,A) 特開 昭52−125243(JP,A) ─────────────────────────────────────────────────── ─── Continuation of the front page (56) Reference JP 61-286943 (JP, A) JP 1-99143 (JP, A) JP 61-153745 (JP, A) JP 4- 156632 (JP, A) JP-A-52-125243 (JP, A)

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 独立してアクセス可能な複数のメモリバ
ンクに対して、シングルアクセスおよびブロックアクセ
ス要求を発信する複数のアクセス要求装置からのアクセ
ス要求に対応して前記メモリバンクへのアクセスを制御
するメモリアクセス制御装置において、 前記ブロックアクセス要求を複数のアクセス要求に分割
するアクセス分割手段と、 前記アクセス要求装置のプライオリティに基づいて前記
アクセス分割手段で分割して分割ブロック要求毎にアク
セスさせるか分割せずに要求通りブロックアクセスさせ
るかを決定するアクセス決定手段と、 所定条件に基づき各アクセス要求のプライオリティを決
定するプライオリティ決定手段と、 を備えたことを特徴とするメモリアクセス制御装置。
1. Access to a plurality of independently accessible memory banks is controlled in response to access requests from a plurality of access request devices that issue single access and block access requests. in the memory access control device, whether the access dividing means for dividing the block access request to the plurality of access requests, is accessed before each Kia access requesting device divided blocks requested by dividing by the access dividing means based on the priority of the A memory access control device comprising: access determining means for determining whether to perform block access as requested without division; and priority determining means for determining priority of each access request based on a predetermined condition.
【請求項2】 前記アクセス決定手段がブロックアクセ
スを分割させるか否かを決定する条件、シングルアク
セスの要求がないとき分割させないようにしたことを特
徴とする請求項1記載のメモリアクセス制御装置。
To 2. A condition that the access determination means determines whether or not to divide the block access, the memory access control apparatus according to claim 1, characterized in that so as not to split when there is no request for single access .
JP3176488A 1991-07-17 1991-07-17 Memory access control device Expired - Fee Related JP2680208B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3176488A JP2680208B2 (en) 1991-07-17 1991-07-17 Memory access control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3176488A JP2680208B2 (en) 1991-07-17 1991-07-17 Memory access control device

Publications (2)

Publication Number Publication Date
JPH0520183A JPH0520183A (en) 1993-01-29
JP2680208B2 true JP2680208B2 (en) 1997-11-19

Family

ID=16014546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3176488A Expired - Fee Related JP2680208B2 (en) 1991-07-17 1991-07-17 Memory access control device

Country Status (1)

Country Link
JP (1) JP2680208B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2705972B1 (en) 1993-06-03 1995-07-21 Staubli Sa Ets Damping device for weaving machine.
DE59409940D1 (en) * 1994-09-06 2001-12-13 Sulzer Textil Ag Rueti Method and device for balancing power on a machine
JP4726187B2 (en) * 2004-11-29 2011-07-20 キヤノン株式会社 Semiconductor integrated circuit
EP2399258B1 (en) 2009-02-20 2016-04-06 Intel Corporation Multimode accessible storage facility

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60201453A (en) * 1984-03-26 1985-10-11 Fujitsu Ltd Memory access controlling system
JPS61153745A (en) * 1984-12-27 1986-07-12 Fujitsu Ltd Write controlling system of storage device
JPS61286943A (en) * 1985-06-13 1986-12-17 Fujitsu Ltd Memory access control processing system
JPH0199143A (en) * 1987-10-12 1989-04-18 Fujitsu Ltd Main memory access control system

Also Published As

Publication number Publication date
JPH0520183A (en) 1993-01-29

Similar Documents

Publication Publication Date Title
US5483642A (en) Bus system for use with information processing apparatus
US6098136A (en) Multiple bus system using a data transfer unit
US5666515A (en) Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address
EP0147295A2 (en) Data processing system including a plurality of multiprocessor systems
JPH0219945A (en) Main memory controller
US4870569A (en) Vector access control system
JP2680208B2 (en) Memory access control device
JPH0731666B2 (en) Inter-processor communication method
JP3005456B2 (en) Vector processing equipment
JPH05282242A (en) Bus control system
JP2962767B2 (en) Memory access method for DMA device
JPS59214977A (en) Data processing device
JP2723412B2 (en) Main memory pre-port control method
JP2643116B2 (en) Main memory controller
JPH04156632A (en) Memory access control system
JP3219422B2 (en) Cache memory control method
JP2973227B2 (en) Exclusive control instruction execution method
KR960007835B1 (en) Common memory access device for multi-processor
JP2878160B2 (en) Competitive mediation device
JP3211694B2 (en) Multiprocessor connection method
JPH01154272A (en) Multiprocessor device
JPH0368045A (en) Main memory control system
JPH02105251A (en) Intercommunication equipment for controller
JPH0450619B2 (en)
JPH03250379A (en) High speed processing system for image processor

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970701

LAPS Cancellation because of no payment of annual fees