JP3425421B2 - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JP3425421B2
JP3425421B2 JP2000314432A JP2000314432A JP3425421B2 JP 3425421 B2 JP3425421 B2 JP 3425421B2 JP 2000314432 A JP2000314432 A JP 2000314432A JP 2000314432 A JP2000314432 A JP 2000314432A JP 3425421 B2 JP3425421 B2 JP 3425421B2
Authority
JP
Japan
Prior art keywords
bus
data
memory
access
address
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
JP2000314432A
Other languages
Japanese (ja)
Other versions
JP2001175632A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000314432A priority Critical patent/JP3425421B2/en
Publication of JP2001175632A publication Critical patent/JP2001175632A/en
Application granted granted Critical
Publication of JP3425421B2 publication Critical patent/JP3425421B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、アドレスバスとデ
ータバスとを介して複数のプロセッサと共有メモリとが
接続されたマルチプロセッサシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiprocessor system in which a plurality of processors and a shared memory are connected via an address bus and a data bus.

【0002】[0002]

【従来の技術】バンクが1つのみの共有メモリをアクセ
スするマルチプロセッサは、例えば1990年4月20
日に電子情報通信学会より発行された「コンピュータシ
ステム研究会報告」CPSY90−4の第25頁乃至第
32頁(以下、文献1と言う)等により、従来より公知
のものである。
2. Description of the Related Art A multiprocessor which accesses a shared memory having only one bank is disclosed in, for example, April 20, 1990.
It is conventionally known from pages 25 to 32 (hereinafter referred to as document 1) of "Computer System Research Group Report" CPSY90-4 issued by the Institute of Electronics, Information and Communication Engineers on the day.

【0003】この文献1には、プロセッサ等の送信ユニ
ットがオーダ(アドレス/データ)を送信した後に、一旦
システムバスを解放し、受信ユニットはアンサの準備で
きた時にシステムバスの使用権を得て、送信ユニットへ
アンサを返送すると言うスプリット方式を提案してい
る。
According to this document 1, after a transmission unit such as a processor transmits an order (address / data), the system bus is temporarily released, and a reception unit obtains a right to use the system bus when an answer is ready. , Has proposed a split method of sending an answer back to the transmitting unit.

【0004】さらに、この文献1は、プロセッサ,メモ
リ装置、入出力装置等の複数のユニットからオーダが送
られることを想定して、オーダやアンサを複数個、蓄積
するシステムバスインターフェイス制御回路(通信バッ
ファ)を設けることが提案され、具体的には、プロセッ
サユニットのバス入出力部にこのシステムバスインター
フェイス制御回路が設けられている。
Further, this document 1 assumes that an order is sent from a plurality of units such as a processor, a memory device, an input / output device, etc., and stores a plurality of orders and answers in a system bus interface control circuit (communication). It is proposed to provide a buffer), and more specifically, this system bus interface control circuit is provided in the bus input / output unit of the processor unit.

【0005】こうすれば、ユニットAからユニットBへ
のアドレス転送とユニットBからユニットAへのデータ
転送との間に例えばユニットCからユニットBへのアド
レス転送のような別なデータ転送を実行することができ
る。
In this way, another data transfer such as an address transfer from the unit C to the unit B is executed between the address transfer from the unit A to the unit B and the data transfer from the unit B to the unit A. be able to.

【0006】この結果、共有システムバスを一つのユニ
ットが長時間独占しなくなるので、マルチプロセッサシ
ステムで高転送能力が期待できる。
As a result, one unit does not monopolize the shared system bus for a long time, so that high transfer capability can be expected in a multiprocessor system.

【0007】一方、昭和63年8月30日オーム社より
発行された「コンピュータアーキテクチャ」第179頁
乃至第184頁(以下文献2と言う)には、メモリアクセ
スが先行するメモリアクセスの完了を待つ必要の無いメ
モリアクセス・パイプライン処理が開示され、この場合
にメモリは複数個のバンクに分割され、次々に入力され
るアクセス要求と次々に出力される読み出し結果をバッ
ファするために、アクセスキューとデータキューとをメ
モリに付加することが開示されている。
On the other hand, in "Computer Architecture" pages 179 to 184 (hereinafter referred to as reference 2) issued by Ohmsha Co., Ltd. on August 30, 1988, the memory access precedes the completion of the memory access. Unnecessary memory access pipeline processing is disclosed, in which the memory is divided into a plurality of banks, and an access queue is provided to buffer access requests input one after another and read results output one after another. It is disclosed to add a data queue and a memory.

【0008】こうすると、隣接するアクセス要求がメモ
リの異なるバンクをアクセスするならば、あとの要求は
先の要求の完了を待つ必要が無いので、メモリアクセス
の高速化を達成することができる。
In this way, if adjacent access requests access different banks of the memory, it is not necessary for the subsequent requests to wait for the completion of the previous request, so that high speed memory access can be achieved.

【0009】文献2には、さらに複数個のバンクに分割
されたメモリのパイプラインアクセスを可能とするハー
ドウェアも開示されている。このハードウェアとして、
複数のバンクに対応して、複数のメモリアドレスレジス
タと複数のデータラッチとを配置したパイプラインアク
セスが提案されている。
Reference 2 also discloses hardware that enables pipeline access to a memory divided into a plurality of banks. As this hardware,
Pipeline access has been proposed in which a plurality of memory address registers and a plurality of data latches are arranged corresponding to a plurality of banks.

【0010】[0010]

【発明が解決しようとする課題】しかしながら、上記の
文献1に記載の従来技術においては、共有メモリのバン
クが1つのみであり、またシステムバスにアドレスとデ
ータがタイムシェアーで多重転送される方式であるた
め、この場合は複数のプロセッサから共有メモリへのア
クセスのスループットが低いことが本発明者等の検討に
より明らかとされた。
However, in the prior art described in the above-mentioned Document 1, there is only one bank of shared memory, and the address and data are multiplexed and transferred to the system bus in a time-shared manner. Therefore, in this case, it was made clear by the study of the present inventors that the throughput of access to the shared memory from a plurality of processors is low.

【0011】また、上記の文献2に記載の従来技術にお
いては、メモリの1つのバンクには1つのメモリアドレ
スレジスタのみしか配置されていないので、プロセッサ
からの隣接するアクセス要求がメモリの同一のバンクを
連続してアクセスするならば、後のアクセス要求は先の
アクセス要求の完了を待つ必要があり、この場合はアク
セスのスループットが低下することが本発明者等の検討
により明らかとされた。
Further, in the prior art described in the above-mentioned document 2, since only one memory address register is arranged in one bank of the memory, adjacent access requests from the processors are the same bank of the memory. It has been clarified by the inventors of the present invention that the subsequent access requests have to wait until the completion of the previous access request, and in this case, the access throughput decreases.

【0012】従って、本発明の目的とするところは、複
数のプロセッサから共有メモリへのアクセスのスループ
ットが向上されるとともに、プロセッサからの隣接する
アクセス要求が共有メモリの同一のバンクを連続してア
クセスする場合でも、後のアクセス要求が先のアクセス
要求の完了を待つ必要の無いマルチプロセッサシステム
を提供することにある。
Therefore, it is an object of the present invention to improve the throughput of access from a plurality of processors to a shared memory and to allow adjacent access requests from the processors to continuously access the same bank of the shared memory. Even in the case of doing so, it is to provide a multiprocessor system in which the subsequent access request does not have to wait for the completion of the earlier access request.

【0013】[0013]

【課題を解決するための手段】本願で開示される発明の
うち、代表的な発明の特徴は、下記の如きにある。
Among the inventions disclosed in the present application, typical features of the invention are as follows.

【0014】すなわち、(1)アドレスバス(170)
と、(2)データバス(180)と、(3)上記アドレ
スバス(170)と上記データバス(180)とに接続
され、上記アドレスバス(170)にアクセス要求アド
レスを送出する複数のプロセッサ(110,120)
と、(4)上記アドレスバス(170)と上記データバ
ス(180)び接続された複数のアクセスキュー(13
5,145,155,165)と、(5)上記複数のア
クセスキュー(135,145,155,165)に対
応して複数のバンクに分割された共有メモリ(130,
140,150,160)とを具備してなり、上記複数
のアクセスキュー(135,145,155,165)
は上記アドレスバス(170)を介して伝達される複数
のアクセス要求アドレス(410)をバッファリングす
る先入れ先出し(FIFO)メモリで構成されてなるこ
とを特徴とする。
That is, (1) address bus (170)
And (2) a data bus (180), (3) a plurality of processors connected to the address bus (170) and the data bus (180), and sending an access request address to the address bus (170) ( 110, 120)
(4) A plurality of access queues (13) connected to the address bus (170) and the data bus (180)
5, 145, 155, 165) and (5) a shared memory (130, 130) divided into a plurality of banks corresponding to the plurality of access queues (135, 145, 155, 165).
140, 150, 160) and the plurality of access queues (135, 145, 155, 165)
Comprises a first in first out (FIFO) memory for buffering a plurality of access request addresses (410) transmitted via the address bus (170).

【0015】本発明の好適な実施形態によれば、上記複
数のプロセッサは上記アドレスバスにアクセス要求アド
レスを送出する際に、プロセッサの識別番号およびアク
セス要求のリード/ライト信号を上記アドレスバスに送
出し、上記複数のアクセスキューを構成する上記FIF
Oメモリは、複数のアクセス要求のリード/ライト信
号、アクセス要求したプロセッサ識別番号、ライトアク
セス要求の書き込みデータをさらにバッファリングし、
上記共有メモリのひとつのバンクが上記データバスにデ
ータを送出する際に、対応したひとつのFIFOメモリ
はバッファリングしたプロセッサ識別番号を上記データ
バスに送出することを特徴とする。
According to a preferred embodiment of the present invention, when the plurality of processors send an access request address to the address bus, the processor identification number and a read / write signal of an access request are sent to the address bus. And the above-mentioned FIF that constitutes the above-mentioned plurality of access queues.
The O memory further buffers read / write signals of a plurality of access requests, processor identification numbers of access requests, and write data of write access requests,
When one bank of the shared memory sends data to the data bus, the corresponding one FIFO memory sends the buffered processor identification number to the data bus.

【0016】本発明のより好適な実施形態によれば、上
記複数のプロセッサは、上記アドレスバスへ送出したプ
ロセッサ識別番号を保持する第1の回路と、上記データ
バスに上記ひとつのFIFOメモリから送出されたプロ
セッサ識別番号と上記第1の回路に格納された上記プロ
セッサ識別番号とを比較し、両プロセッサ識別番号が一
致した際に上記データバスのデータのプロセッサ内部へ
のラッチを指示する第2の回路とを具備してなることを
特徴とする。
According to a preferred embodiment of the present invention, the plurality of processors send a first circuit for holding the processor identification number sent to the address bus and the one bus from the one FIFO memory to the data bus. A second processor for comparing the processor identification number stored in the first circuit with the stored processor identification number, and instructing latching of data on the data bus into the processor when both processor identification numbers match. And a circuit.

【0017】本発明のより具体的な実施形態によれば、
上記アドレスバス上の要求に応答して上記アドレスバス
のバス使用権を決定する第1のアビータが上記アドレス
バスに接続され、上記データバス上の要求に応答して上
記データバスのバス使用権を決定する第2のアビータが
上記データバスに接続されてなることを特徴とする。
According to a more specific embodiment of the present invention,
A first arbiter is connected to the address bus to determine a bus right to use the address bus in response to a request on the address bus, and a bus right to use the data bus in response to the request on the data bus. The second arbiter to be determined is connected to the data bus.

【0018】本発明の上記代表的な実施例によれば、共
有メモリは複数のバンクに分割されているため、さら
に、アドレスバスとデータバスとが物理的に分離した分
離バス方式を採用しているため、複数のプロセッサから
複数のバンクに分割された共有メモリへのアクセスのス
ループットが著しく向上されることができる。
According to the above-described representative embodiment of the present invention, since the shared memory is divided into a plurality of banks, a separate bus system in which the address bus and the data bus are physically separated is adopted. Therefore, the throughput of access from the plurality of processors to the shared memory divided into the plurality of banks can be significantly improved.

【0019】さらに、FIFOメモリにバッファリング
された共有メモリへの複数のアクセス要求アドレスに関
して、先入れ先出しでデータバスのバス使用権の獲得の
後、共有メモリのバンクとプロセッサとの間のデータ転
送が次々に実行されるため、隣接するアクセス要求が共
有メモリの同一のバンクを連続してアクセスするとして
も、後のアクセス要求が先のアクセス要求のデータ転送
の完了を待つ必要が無く、スループットが著しく向上さ
れることができる。
Furthermore, regarding a plurality of access request addresses to the shared memory buffered in the FIFO memory, after the bus use right of the data bus is acquired on a first-in first-out basis, data transfer between the bank of the shared memory and the processor is performed one after another. Therefore, even if adjacent access requests continuously access the same bank of shared memory, subsequent access requests do not have to wait for the completion of data transfer of the previous access request, and throughput is significantly improved. Can be done.

【0020】本発明の上記より好適な実施形態によれ
ば、共有バスをアクセスする複数のプロセッサにはあら
かじめプロセッサID(識別)番号が割り付けられてお
り、アドレス送出と同時にこのID番号を出力し、デー
タ受信もこのID番号によって制御されるので、共有メ
モリ側で複数のアクセスがバッファリングされても、各
プロセッサでデータを混同することがなくなる。
According to the more preferred embodiment of the present invention, a plurality of processors that access the shared bus are assigned processor ID (identification) numbers in advance, and the ID numbers are output at the same time when the address is sent, Since the data reception is also controlled by this ID number, even if a plurality of accesses are buffered on the shared memory side, each processor does not confuse the data.

【0021】本発明の上記具体的な実施形態によれば、
データバスとアドレスバスとはそれぞれバスの使用権を
決定する専用のアービタ回路を設けているので、アドレ
スバスと独立にデータバスの使用元を決定でき、読み出
しデータの転送ではアドレスバスとは独立にデータバス
のみを用いて行うことができる。
According to the above specific embodiment of the present invention,
Since the data bus and the address bus each have a dedicated arbiter circuit that determines the right to use the bus, the source of the data bus can be determined independently of the address bus, and the transfer of read data is independent of the address bus. This can be done using only the data bus.

【0022】本発明のその他の目的と特徴は、以下の実
施例から明らかとなろう。
Other objects and features of the present invention will be apparent from the following examples.

【0023】[0023]

【発明の実施の形態】以下に、本発明の一実施例を図を
用いて詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described in detail below with reference to the drawings.

【0024】図1は、本発明の一実施例であるマルチプ
ロセッサシステムのシステム構成を示すブロック図であ
る。
FIG. 1 is a block diagram showing the system configuration of a multiprocessor system which is an embodiment of the present invention.

【0025】システム概要 図1に示した本発明の一実施例であるマルチプロセッサ
システムは。
System Outline A multiprocessor system according to an embodiment of the present invention shown in FIG.

【0026】アドレスバス170と、データバス180
と、アドレスバス170とデータバス180とに接続さ
れ、アドレスバス170にアクセス要求アドレスを送出
する第1と第2のプロセッサ110,120と、アドレ
スバス170とデータバス180に接続された四つのア
クセスキュー135,145,155,166と、四つ
のアクセスキュー(135,145,155,)に対応
して四つのバンクに分割された共有メモリ130,14
0,150,160とを具備してなり、四つのアクセス
キュー135,145,155,165はアドレスバス
170を介して伝達される複数のアクセス要求アドレス
410をバッファリングする先入れ先出し(FIFO)
メモリで構成されてなることを特徴とする。
Address bus 170 and data bus 180
And the first and second processors 110 and 120 connected to the address bus 170 and the data bus 180 and sending the access request address to the address bus 170, and the four accesses connected to the address bus 170 and the data bus 180. Shared memories 130, 14 divided into four banks corresponding to the queues 135, 145, 155, 166 and the four access queues (135, 145, 155,).
0, 150, and 160, and the four access queues 135, 145, 155, and 165 buffer the plurality of access request addresses 410 transmitted via the address bus 170, and first-in first-out (FIFO).
It is characterized by being composed of a memory.

【0027】従って、2台のプロセッサエレメント11
0及び120が、4バンクに分割されたメモリ130,
140,150,160と、アドレスバス170及びデ
ータバス180さらにはFIFOメモリで構成された四
つのアクセスキュー135,145,155,165を
介して接続されている。
Therefore, the two processor elements 11
0 and 120 are memories 130 divided into four banks,
140, 150, 160 are connected to each other via an address bus 170, a data bus 180, and four access queues 135, 145, 155, 165 composed of FIFO memories.

【0028】このように、共有メモリ130,140,
150,160は複数のバンクに分割されているため、
さらに。アドレスバス170とデータバス180とが物
理的に分離した分離バス方式を採用しているため、複数
のプロセッサ110,120から複数のバンクに分割さ
れた共有メモリ130,140,150,160へのア
クセスのスループットが著しく向上されることができ
る。
In this way, the shared memories 130, 140,
Since 150 and 160 are divided into multiple banks,
further. Since the address bus 170 and the data bus 180 are physically separated from each other, the shared bus system is accessed from the plurality of processors 110 and 120 to the shared memories 130, 140, 150 and 160 divided into a plurality of banks. Throughput can be significantly improved.

【0029】さらに、FIFOメモリで構成された四つ
のアクセスキュー135,145,155,165にバ
ッファリングされた共有メモリ130,140,15
0,160への複数のアクセス要求アドレスに関して、
先入れ先出しでデータバスのバス使用権の獲得の後、共
有メモリ130,140,150,160のバンクとプ
ロセッサ110,120との間のデータ転送が次々に実
行されるため、隣接するアクセス要求が共有メモリの同
一のバンクを連続してアクセスするとしても、後のアク
セス要求が先のアクセス要求のデータ転送の完了を待つ
必要が無く、スループットが著しく向上されることがで
きる。
Further, the shared memories 130, 140, 15 buffered in the four access queues 135, 145, 155, 165 composed of FIFO memories.
Regarding multiple access request addresses to 0,160,
After the bus usage right of the data bus is acquired on a first-in first-out basis, data transfer between the banks of the shared memories 130, 140, 150, 160 and the processors 110, 120 is executed one after another, so that adjacent access requests are shared. Even if the same bank is continuously accessed, the subsequent access request does not have to wait for the completion of the data transfer of the previous access request, and the throughput can be remarkably improved.

【0030】以下、図1のプロセッサシステムを構成す
る各構成要素について、詳細に説明する。
Hereinafter, each component of the processor system shown in FIG. 1 will be described in detail.

【0031】プロセッサエレメント(PE)の構成 プロセッサエレメント110は、中央処理装置(CPU
1)111及び命令キャッシュ(IC1)112,オペラ
ンドキャッシュ(OC1)113,命令用バス114,オ
ペランド用バス115から成り、それぞれ図1のように
接続されている。
Processor Element (PE) Configuration Processor element 110 is a central processing unit (CPU).
1) 111 and instruction cache (IC1) 112, operand cache (OC1) 113, instruction bus 114, and operand bus 115, which are connected as shown in FIG.

【0032】PEの命令キャッシュ 命令キャッシュIC1(112)はCPU1 (111)の命令フェッチ要求のアドレスによって検索さ
れて、対応する命令データのコピーが命令キャッシュI
C1(112)に存在するか否かを判断する。
The instruction cache IC1 (112) of the PE is searched by the address of the instruction fetch request of the CPU1 (111), and a copy of the corresponding instruction data is obtained as the instruction cache I.
It is determined whether or not it exists in C1 (112).

【0033】要求された命令が命令キャッシュ中に存在
する(ヒットした)場合には、PE外部の共有メモリ13
0,140,150,160はアクセスされることな
く、命令キャッシュIC1(112)から命令データが
読み出され、命令用バス114を用いてCPU1へ転送
される。
When the requested instruction exists in the instruction cache (hits), the shared memory 13 outside the PE is used.
The instruction data is read from the instruction cache IC1 (112) and transferred to the CPU 1 using the instruction bus 114 without being accessed.

【0034】中央処理装置CPU1(111)からの命令
フェッチ要求に対して対応する命令データのコピーが命
令キャッシュIC1(112)に存在しない(ミスした)場
合には、命令キャッシュIC1(112)は外部のメモリ
130,140,150,160をアクセスして、対応
するデータを読み出し、命令キャッシュIC1(112)
へ読み出したデータを格納すると同時に、命令用バス1
14を用いて中央処理装置CPU1へ転送する。
When a copy of the instruction data corresponding to the instruction fetch request from the central processing unit CPU1 (111) does not exist (misses) in the instruction cache IC1 (112), the instruction cache IC1 (112) is external. The memory 130, 140, 150, 160 of the above to read the corresponding data, and execute the instruction cache IC1 (112).
Store the read data to the instruction bus 1 at the same time
14 to the central processing unit CPU1.

【0035】中央処理装置CPU1(111)は命令キャ
ッシュIC1(112)もしくは外部のメモリ130,1
40,150,160から読み出した命令データを命令
として解読して、その指示に従って命令の実行を行う。
The central processing unit CPU1 (111) is an instruction cache IC1 (112) or an external memory 130,1.
The instruction data read from 40, 150, 160 is decoded as an instruction, and the instruction is executed according to the instruction.

【0036】PEのオペランドキャッシュ 命令キャッシュIC1(112)と同様に、オペランドキ
ャッシュOC1(113)も中央処理装置CPU1(11
1)のオペランドアクセス要求のアドレスによって検索
されて、対応するオペランドデータのコピーがオペラン
ドキャッシュOC1(113)に存在するか否かを判断す
る。
Similar to the PE operand cache instruction cache IC1 (112), the operand cache OC1 (113) also has a central processing unit CPU1 (11).
It is determined whether or not a copy of the corresponding operand data, which is searched by the address of the operand access request of 1), exists in the operand cache OC1 (113).

【0037】要求されたオペランドデータがオペランド
キャッシュに存在する場合には、PE外部の共有メモリ
メモリ130,140,150,160はアクセスされ
ることなく、オペランドキャッシュOC1(113)か
らオペランドデータか読み出され、オペランド用バス1
15を用いてCPU1へ転送される。
When the requested operand data exists in the operand cache, the shared memory memories 130, 140, 150 and 160 outside the PE are not accessed and the operand data is read from the operand cache OC1 (113). Bus for operand 1
15 is used to transfer to the CPU 1.

【0038】中央処理装置CPU1(111)からのオペ
ランドアクセス要求に対して対応するデータのコピーが
オペランドキャッシュOC1(113)に存在しない(ミ
スした)場合には、オペランドキャッシュOC1(11
3)は外部のメモリ130,140,150,160を
アクセスして、対応するデータを読み出し、オペランド
キャッシュOC1(113)へ格納すると同時に、オペラ
ンド用バス115を用いて中央処理装置CPU1へ転送
する。
When a copy of data corresponding to the operand access request from the central processing unit CPU1 (111) does not exist in the operand cache OC1 (113) (misses), the operand cache OC1 (11).
3) accesses the external memories 130, 140, 150, 160, reads the corresponding data, stores it in the operand cache OC1 (113), and at the same time, transfers it to the central processing unit CPU1 using the operand bus 115.

【0039】中央処理装置CPU1(111)はオペラン
ドキャッシュOC1(113)もしくは外部のメモリ13
0,140,150,160から読み出したデータをオ
ペランドとして使用して、命令の実行を行う。
The central processing unit CPU1 (111) uses the operand cache OC1 (113) or the external memory 13
Instructions are executed using the data read from 0, 140, 150, 160 as an operand.

【0040】プロセッサエレメント110と同様に、プ
ロセッサエレメント120も、中央処理装置(CPU2)
121及び命令キャッシュ(IC2)122、オペランド
キャッシュ(OC2)123、命令用バス124、オペラ
ンド用バス125から成り、それぞれ図1のように接続
され、その動作もプロセッサエレメント110と同様に
なっている。
Like the processor element 110, the processor element 120 also has a central processing unit (CPU2).
121 and an instruction cache (IC2) 122, an operand cache (OC2) 123, an instruction bus 124, and an operand bus 125, which are connected as shown in FIG. 1, and their operations are similar to those of the processor element 110.

【0041】共有メモリおよびアクセスキュー 共有メモリは4つのバンク130,140,150,1
60に分割されており、アクセスキュー135,14
5,155,165、アドレスバス170、データバス
180を介して、プロセッサエレメント110,120
に接続されている。
Shared Memory and Access Queue Shared memory consists of four banks 130, 140, 150, 1
It is divided into 60, and access queues 135 and 14
5, 155, 165, address bus 170, data bus 180, processor elements 110, 120
It is connected to the.

【0042】アクセスキュー135,145,155,
165は、プロセッサエレメント110,120の命令
キャッシュ(IC1、IC2)112,122,及びオペ
ランドキャッシュ(OC1、OC2)113,123から
のメモリアクセス要求をラッチしておく先入れ先出し
(First In First OUT:FIFO)のバッファである。
Access queues 135, 145, 155,
Reference numeral 165 denotes a first in first out (FIFO) that latches memory access requests from the instruction caches (IC1, IC2) 112, 122 and the operand caches (OC1, OC2) 113, 123 of the processor elements 110, 120. Is the buffer.

【0043】バスアビータ アビータ190,195はそれぞれ、アドレスバス17
0及びデータバス180のバス使用権を決定するアービ
トレーション回路である。
Bus Abiters Abiters 190 and 195 are address buses 17 respectively.
0 is an arbitration circuit that determines the bus right of 0 and the data bus 180.

【0044】アドレスバスの構成 図2は、図1に示したアドレスバス170の構成を詳細
に説明する図である。
Configuration of Address Bus FIG. 2 is a diagram illustrating in detail the configuration of address bus 170 shown in FIG.

【0045】アドレスバス170はリクエスト信号線2
10及びグラント信号線220,アドレス信号線23
0,リード/ライト信号線240,ID番号信号線25
0から成る。
The address bus 170 is the request signal line 2
10 and grant signal line 220, address signal line 23
0, read / write signal line 240, ID number signal line 25
It consists of zero.

【0046】図2には命令キャッシュ1(IC1)112
及び0バンク目のメモリ(SC0)130しか記載されて
いないが、図1から明らかなように、他の命令キャッシ
ュ(122)やオペランドキャッシュ(113,123)及
び他のバンクのメモリ(140,150,160)も同様
に接続されている。
FIG. 2 shows the instruction cache 1 (IC1) 112.
Although only the 0th bank memory (SC0) 130 is described, as is apparent from FIG. 1, another instruction cache (122) or operand cache (113, 123) and another bank memory (140, 150). , 160) are similarly connected.

【0047】8本のリクエスト信号線210及び8本の
グラント信号線220は、命令キャッシュIC1(11
2),IC2(122)、オペランドキャッシュOC1(1
13),OC2(123)、メモリ・バンクSC0(13
0),SC1(140),SC2(150),SC3(16
0)のデバイスに対応したものである。すなわち、各信
号線210,220は、上記のそれぞれのデバイスに1
対1に対応しているものである。
The eight request signal lines 210 and the eight grant signal lines 220 are connected to the instruction cache IC1 (11
2), IC2 (122), operand cache OC1 (1
13), OC2 (123), memory bank SC0 (13
0), SC1 (140), SC2 (150), SC3 (16
It corresponds to the device 0). That is, each of the signal lines 210 and 220 is connected to each of the above devices.
It corresponds to one-to-one.

【0048】ID番号信号線250は、上記8個のデバ
イスを識別するため、3本の信号線より成る。
The ID number signal line 250 is composed of three signal lines for identifying the above eight devices.

【0049】命令キャッシュIC1(112)がメモリ・
バンクSC0(130)にあるデータの読み出しを起動す
る場合を例に取って、各構成要素の動作を下記に説明す
る。
The instruction cache IC1 (112) is a memory
The operation of each component will be described below by taking as an example the case where the reading of the data in the bank SC0 (130) is activated.

【0050】命令キャッシュIC1(112)はまず、ア
ドレスバス170を使用する権利であるバス権を獲得す
るため、8本のリクエスト信号線210の内命令キャッ
シュIC1(112)に対応した1本の信号線をアサート
する。
The instruction cache IC1 (112) first obtains a bus right which is a right to use the address bus 170. Therefore, one signal corresponding to the instruction cache IC1 (112) of the eight request signal lines 210 is used. Assert the line.

【0051】命令キャッシュIC1(112)はリクエス
ト信号線210の対応する1本の信号線をアサートした
後は、グラント信号線220の内自分に対応する信号線
を監視し、アドレスバスアビータ190によってバス権
が与えられるのを待っている。
After asserting one signal line corresponding to the request signal line 210, the instruction cache IC1 (112) monitors the signal line corresponding to itself in the grant signal line 220, and the address bus arbiter 190 Waiting for the bus right.

【0052】アドレスバス用のアービタ190は、リク
エスト信号線210の全信号線(8本)をチェックして、
バス権を要求しているデバイスに、優先順位に応じて、
バス権を与える。今、命令キャッシュIC1(112)に
バス権が与えることが可能になったものと仮定する。ア
ドレスバス用のアービタ190は、8本のグラント信号
線220の内命令キャッシュIC1(112)に対応する
1本の信号線をアサートしてバス権を与える。
The arbiter 190 for the address bus checks all the signal lines (8 lines) of the request signal line 210,
Depending on the priority of the device requesting the bus right,
Give bus right. It is now assumed that the bus right can be given to the instruction cache IC1 (112). The address bus arbiter 190 asserts one signal line of the eight grant signal lines 220 corresponding to the instruction cache IC1 (112) to give the bus right.

【0053】命令キャッシュIC1(112)はグラント
信号線220の内の自分に対応する信号線がアサートさ
れるとバス権を獲得して、アドレス信号線230,リー
ド/ライト信号線240,ID番号信号線250に所定
の値を送出する。ここで、ID番号信号線250には、
命令キャッシュIC1(112)のID番号が出力され
る。
The instruction cache IC1 (112) acquires the bus right when the signal line corresponding to itself in the grant signal line 220 is asserted, and acquires the address signal line 230, the read / write signal line 240, and the ID number signal. Send a predetermined value on line 250. Here, in the ID number signal line 250,
The ID number of the instruction cache IC1 (112) is output.

【0054】メモリ・バンクSC0(130)のためのア
クセスキュー135は、アドレス信号線230の下位2
ビットよりメモリ・バンクSC0(130)へのアクセス
であることを判断し、アドレス信号線230,リード/
ライト信号線240,ID番号信号線250の内容をラ
ッチする。アクセスキュー135にラッチされたアクセ
ス要求は、メモリ・バンクSC0(130)がアクセス可
能になった時点で順次処理される。
The access queue 135 for the memory bank SC0 (130) is the lower 2 bits of the address signal line 230.
It is determined from the bit that the access is to the memory bank SC0 (130), and the address signal line 230, read / read
The contents of the write signal line 240 and the ID number signal line 250 are latched. The access requests latched in the access queue 135 are sequentially processed when the memory bank SC0 (130) becomes accessible.

【0055】データバスの構成 図3は、図1に示したデータバス180の構成を詳細に
説明する詳細図である。
Structure of Data Bus FIG. 3 is a detailed diagram illustrating in detail the structure of the data bus 180 shown in FIG.

【0056】データバス180は、リクエスト信号線3
10及びグラント信号線320,データ信号線330,
ID番号信号線350から成る。
The data bus 180 is the request signal line 3
10 and grant signal line 320, data signal line 330,
It comprises an ID number signal line 350.

【0057】図3には命令キャッシュ1(IC1)11
2及び0バンク目のメモリ(SC0)130しか記載さ
れていないが、図1から明らかなように、他の命令キャ
ッシュ(122)やオペランドキャッシュ(113,12
3)及び他のバンクのメモリ(140,150,160)
も同様に接続されている。
FIG. 3 shows the instruction cache 1 (IC1) 11
Although only the memory (SC0) 130 of the 2nd and 0th banks is described, as is apparent from FIG. 1, another instruction cache (122) and an operand cache (113, 12).
3) and other banks of memory (140, 150, 160)
Are connected as well.

【0058】8本のリクエスト信号線310及び8本の
グラント信号線320は、命令キャッシュIC1(11
2),IC2(122)、オペランドキャッシュOC1(1
13),OC2(123)、メモリ・バンクSC0(13
0),SC1(140),SC2(150),SC3(16
0)のデバイスに対応したものである。すなわち、各信
号線310,320は、上記のそれぞれのデバイスに1
対1に対応しているものである。
The eight request signal lines 310 and the eight grant signal lines 320 are connected to the instruction cache IC1 (11
2), IC2 (122), operand cache OC1 (1
13), OC2 (123), memory bank SC0 (13
0), SC1 (140), SC2 (150), SC3 (16
It corresponds to the device 0). That is, each signal line 310, 320 is connected to each of the above devices.
It corresponds to one-to-one.

【0059】アドレスバス170のID番号信号線25
0と同様に、データバス180のID番号信号線350
は3本の信号線より成る。
ID number signal line 25 of the address bus 170
As with 0, the ID number signal line 350 of the data bus 180
Consists of three signal lines.

【0060】命令キャッシュIC1(112)の要求に従
ってメモリ・バンクSC0(130)から読み出されたデ
ータを命令キャッシュIC1(112)へ転送する場合を
例に取って、各構成要素の動作を下記に説明する。
The operation of each component will be described below by taking as an example the case where the data read from the memory bank SC0 (130) is transferred to the instruction cache IC1 (112) in accordance with the request of the instruction cache IC1 (112). explain.

【0061】メモリ・バンクSC0(130)はまず、デ
ータバス180を使用する権利であるバス権を獲得する
ため、8本のリクエスト信号線310の内メモリ・バン
クSC0(130)に対応した1本の信号線をアサートす
る。
The memory bank SC0 (130) first acquires the bus right that is the right to use the data bus 180. Therefore, one of the eight request signal lines 310 corresponding to the memory bank SC0 (130) is used. Assert the signal line of.

【0062】メモリ・バンクSC0(130)はリクエス
ト信号線310の対応する1本の信号線をアサートした
後は、グラント信号線320の内自分に対応する信号線
を監視し、データバスアービタ195によってバス権が
与えられるのを待っている。
After asserting one signal line corresponding to the request signal line 310, the memory bank SC0 (130) monitors the signal line corresponding to itself among the grant signal lines 320, and by the data bus arbiter 195. Waiting for the bus right.

【0063】データバス用のアービタ195は、リクエ
スト信号線310の全信号線(8本)をチェックして、バ
ス権を要求しているデバイスに、優先順位に応じて、バ
ス権を与える。今、メモリ・バンクSC0(130)にバ
ス権が与えることが可能となったものと仮定する。アド
レスバス用のアービタ195は、8本のグラント信号線
320の内メモリ・バンクSC0(130)に対応する1
本の信号線をアサートしてバス権を与える。
The arbiter 195 for the data bus checks all the signal lines (8) of the request signal line 310 and gives the bus right to the device requesting the bus right according to the priority order. Now, assume that the bus right can be given to the memory bank SC0 (130). The arbiter 195 for the address bus corresponds to the memory bank SC0 (130) of the eight grant signal lines 320.
The bus right is given by asserting the signal line of the book.

【0064】メモリ・バンクSC0(130)はグラント
信号線320の内の自分に対応する信号線がアサートさ
れるとバス権を獲得して、データ信号線330,ID番
号信号線350に所定の値を送出する。ここで、ID番
号信号線350には、アクセスキュー135にラッチし
ておいたアクセス要求元である命令キャッシュIC1
(112)のID番号が出力される。
The memory bank SC0 (130) acquires the bus right when the signal line corresponding to itself among the grant signal lines 320 is asserted, and the data signal line 330 and the ID number signal line 350 have predetermined values. Is sent. Here, the ID number signal line 350 has the instruction cache IC1 which is the access request source latched in the access queue 135.
The ID number of (112) is output.

【0065】一方、命令キャッシュIC1(112)はア
ドレスを送出した後、アドレスバス170を開放し、デ
ータバス180のID番号信号線350を監視して、メ
モリ・バンクSC0(130)から読み出しデータが転送
されるのを待っている。そこで、命令キャッシュIC1
(112)はメモリ・バンクSC0(130)から送出され
たID番号を検出して、命令キャッシュIC1(112)
への応答サイクルであることを確認して、データ信号線
330上のデータをラッチする。
On the other hand, the instruction cache IC1 (112) releases the address bus 170 after sending the address, monitors the ID number signal line 350 of the data bus 180, and reads the read data from the memory bank SC0 (130). Waiting to be transferred. Therefore, the instruction cache IC1
(112) detects the ID number sent from the memory bank SC0 (130), and the instruction cache IC1 (112)
The data on the data signal line 330 is latched after confirming that it is a response cycle to.

【0066】アクセスキューの構成 図4は、図1に示したアクセスキューの構成を説明する
詳細図であり、アクセスキューの1つである(AQ0)1
35を詳細に説明する。他のアクセスキュー(AQ1)1
45,(AQ2)145,(AQ3)165もアクセスキュ
ー(AQ0)135と同様の構成である。
Configuration of Access Queue FIG. 4 is a detailed diagram for explaining the configuration of the access queue shown in FIG. 1, which is one of the access queues (AQ0) 1.
35 will be described in detail. Other access queue (AQ1) 1
45, (AQ2) 145, and (AQ3) 165 have the same configuration as the access queue (AQ0) 135.

【0067】アクセスキュー135は、4エントリの先
入れ先出し(FIFO)のバッファである。各エントリ
は、アドレス部410及びリード/ライト部420,I
D番号部430、書き込みデータ部440から成る。ア
ドレス部410はアドレスバス170のアドレス信号線
230の内容をラッチし、リード/ライト部420は同
様にリード/ライト信号線240の内容をラッチし、I
D番号部430はID番号信号線250の内容をラッチ
し、書き込みデータ部440はメモリへの書き込み時に
データバス180のデータ信号線330の内容(書き込
みデータ)をラッチする。
The access queue 135 is a 4-entry first-in first-out (FIFO) buffer. Each entry has an address part 410 and a read / write part 420, I.
It comprises a D number section 430 and a write data section 440. The address section 410 latches the contents of the address signal line 230 of the address bus 170, the read / write section 420 similarly latches the contents of the read / write signal line 240, and
The D number section 430 latches the content of the ID number signal line 250, and the write data section 440 latches the content (write data) of the data signal line 330 of the data bus 180 when writing to the memory.

【0068】命令キャッシュIC1(112)等のデバイ
スからメモリ・バンクSC0(130)へのメモリアクセ
ス要求は、一旦、このアクセスキュー135にラッチさ
れる。従って、アドレスバス170は、メモリ・バンク
SC0(130)からの読み出しデータの転送を待たずし
て、他のデバイスに開放することができる。
A memory access request to the memory bank SC0 (130) from a device such as the instruction cache IC1 (112) is once latched in the access queue 135. Therefore, the address bus 170 can be opened to other devices without waiting for the transfer of read data from the memory bank SC0 (130).

【0069】また、1つのデバイスのメモリアクセス要
求を処理中に、他のデバイスから同一メモリへアクセス
要求が発行されても、アクセスキューは複数のエントリ
を有しているので、他のデバイスから同一メモリへのア
クセス要求がアクセスキューにバッファリングされるこ
とができる。
Further, even if an access request is issued to the same memory from another device during processing of a memory access request from one device, the access queue has a plurality of entries, so that the same request from another device is obtained. Requests to access the memory can be buffered in the access queue.

【0070】なお、本実施例では、メモリアクセス要求
は、プロセッサエレメント110の命令キャッシュIC
1(112)及びオペランドキャッシュOC1(113),
プロセッサエレメント120の命令キャッシュIC2
(122)及びオペランドキャッシュOC2(123)の4
つのデバイスから要求されるが、1つのデバイスからは
複数のアクセス要求が同時に発行される(前のアクセス
が完了する前に次のアクセスが発行される)ことはない
ので、アクセスキューのバッファの段数としては、4段
で充分である。
In this embodiment, the memory access request is the instruction cache IC of the processor element 110.
1 (112) and operand cache OC1 (113),
Instruction cache IC2 of processor element 120
4 of (122) and operand cache OC2 (123)
The number of buffers in the access queue, because one device does not issue multiple access requests at the same time (the next access is issued before the previous access is completed). As for, 4 stages are sufficient.

【0071】なお、1つのデバイスから複数のアクセス
要求が同時に発行される実施例においては、アクセスキ
ューのバッファの段数を更に増加させること、及び、同
時に発行されたアクセス要求を識別する手段を設けるこ
とにより対処可能である。
In the embodiment in which a plurality of access requests are issued simultaneously from one device, the number of buffer stages of the access queue is further increased, and means for identifying the access requests issued at the same time is provided. Can be dealt with.

【0072】アクセスキュー135にラッチされた複数
のアクセス要求は、先入れ先出し(FIFO)バッファ
の特性によって、先にラッチされたものから順に処理さ
れる。
The plurality of access requests latched in the access queue 135 are processed in order from the one latched first by the characteristics of the first-in first-out (FIFO) buffer.

【0073】アドレスデコーダ450は、アドレスバス
170のアドレス信号線230の下位2ビットをデコー
ドし、アクセス要求がメモリ・バンクSC0(130),
SC1(140),SC2(150),SC3(160)の内
どのメモリに対するものなのかを判断し、対応するメモ
リのアクセスキューにアクセス要求をラッチさせるもの
である。例えば、アドレスデコーダ450は、アドレス
バス170のアドレス信号線230の下位2ビットが
「00」のとき、アクセスキュー135にアクセス要求
をラッチさせる。
The address decoder 450 decodes the lower 2 bits of the address signal line 230 of the address bus 170, and the access request is sent to the memory bank SC0 (130),
This is to determine which of the SC1 (140), SC2 (150) and SC3 (160) the memory is, and latch the access request in the access queue of the corresponding memory. For example, the address decoder 450 causes the access queue 135 to latch an access request when the lower 2 bits of the address signal line 230 of the address bus 170 are “00”.

【0074】デバイスのデータ取り込み 図5はメモリのリード要求を発行したデバイスが読み出
しデータを取り込むところを示した説明するものであ
る。
Device Data Acquisition FIG. 5 is a diagram illustrating that the device that issued the memory read request acquires the read data.

【0075】図5では、命令キャッシュIC1(112)
がリード要求を発行して、読み出しデータを取り込とこ
ろである。
In FIG. 5, the instruction cache IC1 (112)
Is issuing a read request and fetching read data.

【0076】命令キャッシュIC1(112)には、デバ
イスID番号レジスタ510及びID番号比較器52
0,データラッチ530を有する。デバイスID番号レ
ジスタ510には、各デバイスに固有な番号があらかじ
め設定されており、それを保持している。
The instruction cache IC1 (112) has a device ID number register 510 and an ID number comparator 52.
0, data latch 530. The device ID number register 510 is preset with a number unique to each device and holds it.

【0077】命令キャッシュIC1(112)はアドレス
バスを獲得してアクセスアドレスを送出するとき、デバ
イスID番号レジスタ510の内容をアドレスバス17
0のID番号信号線250へ出力する。その後、命令キ
ャッシュIC1(112)はアドレスバスを他のデバイス
へ開放し、データバス180のID番号信号線350の
監視を行う。つまり、データバス180のID番号信号
線350の内容と自分のID番号(ID番号レジスタ5
10の内容)を比較器520で比較する。比較の結果、
一致したら、データバス180のデータ信号線330の
内容をデータラッチ530へラッチする。命令キャッシ
ュIC1(112)はデータラッチ530の内容をCPU
1(111)へ転送するのと共に、キャッシュメモリの中
に格納する。
When the instruction cache IC1 (112) acquires the address bus and sends the access address, the contents of the device ID number register 510 are transferred to the address bus 17
It outputs to the ID number signal line 250 of 0. After that, the instruction cache IC1 (112) opens the address bus to another device and monitors the ID number signal line 350 of the data bus 180. That is, the contents of the ID number signal line 350 of the data bus 180 and its own ID number (ID number register 5
The contents of 10) are compared by the comparator 520. As a result of the comparison,
If they match, the content of the data signal line 330 of the data bus 180 is latched in the data latch 530. The instruction cache IC1 (112) uses the contents of the data latch 530 to
1 (111) and store it in the cache memory.

【0078】バスアービタの構成 図6は、図1に示したアービタ190,195の構成を
詳細に説明する図である。
Configuration of Bus Arbiter FIG. 6 is a diagram for explaining the configuration of the arbiters 190 and 195 shown in FIG. 1 in detail.

【0079】データバスアービタ195は、データバス
のバス使用権を決定するアービトレーション回路であ
り、各デバイスに対応した8つの回路ブロック610か
ら617及びORゲート630から成る。
The data bus arbiter 195 is an arbitration circuit that determines the bus use right of the data bus, and comprises eight circuit blocks 610 to 617 and an OR gate 630 corresponding to each device.

【0080】各回路ブロック610から617は、デー
タバス180のリクエスト要求信号310及びグラント
信号線320のそれぞれの信号線が1本ずつ対応してい
る。つまり、回路ブロック610,611にはそれぞれ
オペランドキャッシュOC1(113),OC2(123)
が対応し、回路ブロック612,613にはそれぞれ命
令キャッシュIC1(112),IC2(122)が対応
し、回路ブロック614から617にはそれぞれメモリ
・バンクSC0(130)からSC3(160)が対応して
いる。
Each of the circuit blocks 610 to 617 corresponds to one signal line of the request request signal 310 of the data bus 180 and one signal line of the grant signal line 320. That is, the circuit blocks 610 and 611 have operand caches OC1 (113) and OC2 (123), respectively.
The instruction blocks IC1 (112) and IC2 (122) correspond to the circuit blocks 612 and 613, respectively, and the memory banks SC0 (130) to SC3 (160) correspond to the circuit blocks 614 to 617, respectively. ing.

【0081】回路ブロック610から617の内部構成
は共通であるので、回路ブロック610を用いてその内
部構成を説明する。回路ブロック610はインバータ6
40及びANDゲート641,642、ORゲート64
3,644、フリップフロップ645から成り、図のよ
うに接続されている。なお、フリップフロップ645は
どれか1つの回路ブロックのものが「1」にセットされ
ていてその他の回路ブロックのものは「0」にセットさ
れているものとする。
Since the internal configurations of the circuit blocks 610 to 617 are common, the internal configuration will be described using the circuit block 610. The circuit block 610 is the inverter 6
40, AND gates 641 and 642, OR gate 64
3, 644 and flip-flop 645, which are connected as shown. It is assumed that one of the circuit blocks of the flip-flop 645 is set to “1” and the other circuit blocks are set to “0”.

【0082】データバスアービタ195の動作につい
て、以下に説明する。直前のサイクルにおいてメモリ・
バンクSC0(130)がバス権を所有しており、今、メ
モリ・バンクSC2(150)とメモリ・バンクSC3
(160)がリクエスト信号線310により、バス権を要
求しているものとする。データバスアービタ195は回
路ブロック610から617の動作により、メモリ・バ
ンクSC2(150)にバス権を与えることに決定し、グ
ラント信号線320を出力する。
The operation of the data bus arbiter 195 will be described below. Memory in the previous cycle
Bank SC0 (130) owns the bus right, and now memory bank SC2 (150) and memory bank SC3
It is assumed that (160) requests the bus right through the request signal line 310. The data bus arbiter 195 determines to give the bus right to the memory bank SC2 (150) by the operation of the circuit blocks 610 to 617, and outputs the grant signal line 320.

【0083】データバスアービタ195によれば、バス
権の決定方式は、回路ブロック610から617の閉ル
ープにおいて、直前のサイクルにバス権を確保している
デバイスから順にリクエスト信号線を検査して、1番初
めに発見した要求デバイスに対してバス権を与える方式
である。
According to the data bus arbiter 195, the method of determining the bus right is as follows: in the closed loop of the circuit blocks 610 to 617, the request signal line is checked in order from the device that has the bus right in the immediately preceding cycle. This is a method of granting the bus right to the requesting device found at the beginning.

【0084】本決定方式によれば、1つのデバイスがバ
スを占有して使用することがなくなるので、均一な確率
で各デバイスへバス権を与えることのできるバスアービ
タを提供できる。
According to this determination method, since one device does not occupy and use the bus, it is possible to provide a bus arbiter that can give the bus right to each device with a uniform probability.

【0085】なお、オペランドキャッシュOC1(11
3)及びOC2(123)からのデータバスのリクエスト
信号線はオペランドデータのストア時にアサートされ
る。
The operand cache OC1 (11
3) and the request signal line of the data bus from OC2 (123) are asserted when the operand data is stored.

【0086】また、ORゲート630はオペランドキャ
ッシュOC1(113)またはOC2(123)からのオペ
ランドデータのストア時に、アドレスバス170のアー
ビトレーションをデータバス180のアービトレーショ
ンに同期させるための信号631を生成するためのもの
である。
Further, the OR gate 630 generates a signal 631 for synchronizing the arbitration of the address bus 170 with the arbitration of the data bus 180 when the operand data is stored from the operand cache OC1 (113) or OC2 (123). belongs to.

【0087】アドレスバスアービタ190は、アドレス
バスのバス使用権を決定するアービトレーション回路で
あり、各デバイスに対応した8つの回路ブロック620
から627及びインバータ632から成っている。
The address bus arbiter 190 is an arbitration circuit that determines the bus usage right of the address bus, and has eight circuit blocks 620 corresponding to each device.
To 627 and an inverter 632.

【0088】各回路ブロック620から627は、アド
レスバス170のリクエスト要求信号210及びグラン
ト信号線220のそれぞれの信号線が1本ずつ対応して
いる。つまり、回路ブロック620,621にはそれぞ
れオペランドキャッシュOC1(113),OC2(12
3)が対応し、回路ブロック622,623にはそれぞ
れ命令キャッシュIC1(112),IC2(122)が対
応し、回路ブロック624から627にはそれぞれメモ
リ・バンクSC0(130)からSC3(160)が対応し
ている。
Each of the circuit blocks 620 to 627 corresponds to one signal line of the request request signal 210 of the address bus 170 and one signal line of the grant signal line 220. That is, the circuit blocks 620 and 621 have operand caches OC1 (113) and OC2 (12), respectively.
3), the instruction blocks IC1 (112) and IC2 (122) correspond to the circuit blocks 622 and 623, respectively, and the memory banks SC0 (130) to SC3 (160) correspond to the circuit blocks 624 to 627, respectively. It corresponds.

【0089】回路ブロック620から627の内部構成
は共通であるので、回路ブロック620を用いてその内
部構成を説明する。回路ブロック620はインバータ6
50及びANDゲート651,652,656,65
7,ORゲート653,654,658、フリップフロ
ップ655から成り、図のように接続されている。な
お、フリップフロップ655はどれか1つの回路ブロッ
クのものが「1」にセットされていてその他の回路ブロ
ックのものは「0」にセットされているものとする。
Since the internal configurations of the circuit blocks 620 to 627 are common, the internal configuration will be described using the circuit block 620. The circuit block 620 is the inverter 6
50 and AND gates 651, 652, 656, 65
7, OR gates 653, 654, 658, and flip-flop 655, which are connected as shown. It is assumed that one of the circuit blocks of the flip-flop 655 is set to "1" and the other circuit blocks are set to "0".

【0090】アドレスバスアービタ190の動作は、信
号631が「0」の場合(つまり、オペランドキャッシ
ュOC1(113)またはOC2(123)からのオペラン
ドデータのストアでない場合)は、データバスアービタ
195と同様である。つまり、回路ブロック620から
627の閉ループにおいて、直前のサイクルにバス権を
確保しているデバイスから順にリクエスト信号線を検査
して、1番初めに発見した要求デバイスに対してバス権
を与えるというバス権の決定方式を実現している。
The operation of the address bus arbiter 190 is the same as that of the data bus arbiter 195 when the signal 631 is "0" (that is, when the operand data is not stored from the operand cache OC1 (113) or OC2 (123)). Is. That is, in the closed loop of the circuit blocks 620 to 627, the request signal line is sequentially inspected from the device which has the bus right in the immediately preceding cycle, and the bus right is given to the first requesting device found. A method of determining the right is realized.

【0091】本決定方式によれば、1つのデバイスがバ
スを占有して使用することがなくなるので、均一な確率
で各デバイスへバス権を与えることのできるバスアービ
タを提供できる。
According to this determination method, since one device does not occupy and use the bus, it is possible to provide a bus arbiter that can give the bus right to each device with a uniform probability.

【0092】一方、信号631が「1」の場合(つま
り、オペランドキャッシュOC1(113)またはOC2
(123)からのオペランドデータのストアの場合)は、
インバータ632及び各回路ブロック620乃至627
内のANDゲート656,657及びORゲート658
の働きによって、データバス180のデータバスアービ
タ195の出力(データバス180のグラント信号線の
内容)が、回路ブロック620から627内のフリップ
フロップ655にセットされ、その内容がアドレスバス
170のグラント信号線220として出力される。
On the other hand, when the signal 631 is "1" (that is, the operand cache OC1 (113) or OC2).
(For storing operand data from (123)),
Inverter 632 and each circuit block 620 to 627
AND gates 656, 657 and OR gate 658 in
Causes the output of the data bus arbiter 195 of the data bus 180 (contents of the grant signal line of the data bus 180) to be set in the flip-flops 655 in the circuit blocks 620 to 627, and the contents thereof to the grant signal of the address bus 170. Output as line 220.

【0093】つまり、アドレスバス170のアービトレ
ーションを、データバス180のアービトレーションに
同期させている。
That is, the arbitration of the address bus 170 is synchronized with the arbitration of the data bus 180.

【0094】マルチプロセッサシステムの動作 図7は、図1から図6に説明した本実施例のマルチプロ
セッサシステムの動作タイムチャートを示したものであ
る。
Operation of Multiprocessor System FIG. 7 shows an operation time chart of the multiprocessor system of this embodiment described with reference to FIGS.

【0095】サイクルC1において、命令キャッシュI
C1(112)に所望のデータがないこと(ミス)が判明
すると、命令キャッシュIC1(112)はリクエスト信
号線210をアサートしてアドレスバス170のバス権
を要求する。
In the cycle C1, the instruction cache I
When it is determined that there is no desired data (miss) in C1 (112), the instruction cache IC1 (112) asserts the request signal line 210 to request the bus right of the address bus 170.

【0096】サイクルC2において、アドレスバスアー
ビタ190はこの時点で命令キャッシュIC1(112)
以外のデバイスがアドレスバス170のバス権を要求し
ていないので、グラント信号線220をアサートして命
令キャッシュIC1(112)へバス権を与える。命令キ
ャッシュIC1(112)はグラント信号線220を受け
て、アドレス信号線230及びID番号信号線250を
出力する。
In the cycle C2, the address bus arbiter 190 at this point in time, the instruction cache IC1 (112)
Since other devices do not request the bus right of the address bus 170, the grant signal line 220 is asserted to give the bus right to the instruction cache IC1 (112). The instruction cache IC1 (112) receives the grant signal line 220 and outputs the address signal line 230 and the ID number signal line 250.

【0097】サイクルC3において、メモリ・バンクS
C0(130)は、アドレス信号線230の下位2ビット
より、自分がアクセスされていることを知り、メモリ・
バンクSC0(130)からデータを読み出す。この読み
出しには2サイクルかかる。
In cycle C3, memory bank S
C0 (130) knows that it is being accessed from the lower 2 bits of the address signal line 230,
Data is read from the bank SC0 (130). This reading takes 2 cycles.

【0098】サイクルC4において、データ・バンクS
C0(130)は読み出しデータを転送するため、リクエ
スト信号線310をアサートしてデータバス180のバ
ス権を要求する。
In cycle C4, data bank S
Since C0 (130) transfers read data, it asserts the request signal line 310 to request the bus right of the data bus 180.

【0099】サイクルC5において、データバスアービ
タ195はこの時点でメモリ・バンクSC0(130)以
外のデバイスがデータバス180のバス権を要求してい
ないので、グラント信号線320をアサートしてメモリ
・バンクSC0(130)へバス権を与える。メモリ・バ
ンクSC0(130)はグラント信号線320を受けて、
データ信号線330及びID番号信号線350にそれぞ
れの信号を出力する。なお、ID番号信号線350に
は、命令キャッシュIC1(112)のID番号が出力さ
れている。
In cycle C5, the data bus arbiter 195 asserts the grant signal line 320 and asserts the memory bank because the devices other than the memory bank SC0 (130) have not requested the bus right of the data bus 180 at this time. The bus right is given to SC0 (130). The memory bank SC0 (130) receives the grant signal line 320,
The respective signals are output to the data signal line 330 and the ID number signal line 350. The ID number of the instruction cache IC1 (112) is output to the ID number signal line 350.

【0100】サイクルC6において、命令キャッシュI
C1(112)は、ID番号信号線350より、自分がア
クセスしたデータが転送されてきたことを知り、データ
信号線330の内容をラッチする。
In cycle C6, the instruction cache I
C1 (112) knows that the data accessed by itself has been transferred from the ID number signal line 350, and latches the content of the data signal line 330.

【0101】なお、上述したサイクルC1からサイクル
C6までの一連の処理に並行して、サイクルC2ではオ
ペランドキャッシュOC1(113)及びOC2(123)
が共にアドレスバス170を要求しているが、アドレス
バスアービタ190の働きによりオペランドキャッシュ
OC1(113)の要求がサイクルC3で先に処理され、
次のサイクルC4においてオペランドキャッシュOC2
(123)の要求が処理されている。
In the cycle C2, in parallel with the series of processes from the cycle C1 to the cycle C6, the operand caches OC1 (113) and OC2 (123) are executed.
Both request the address bus 170, the request of the operand cache OC1 (113) is processed earlier in the cycle C3 by the function of the address bus arbiter 190,
Operand cache OC2 in the next cycle C4
The request (123) is being processed.

【0102】また、サイクルC5、C6において、メモ
リ・バンクSC2(150)へのアクセスが連続していた
としても、アクセスキュー155の働きにより、バッフ
ァリングされ、順次処理される。
Further, in the cycles C5 and C6, even if the access to the memory bank SC2 (150) is continuous, the access queue 155 functions to buffer and sequentially process.

【0103】更にまた、サイクルC8において、メモリ
・バンクSC1(140)及びSC2(150)が共にデー
タバス180を要求したとしても、データバスアービタ
195の働きによりメモリ・バンクSC1(140)要求
がサイクルC8で先に処理され、次のサイクルC9にお
いてメモリ・バンクSC2(150)の要求が処理される
ことになる。
Furthermore, even if both the memory banks SC1 (140) and SC2 (150) request the data bus 180 in the cycle C8, the memory bank SC1 (140) request is cycled by the function of the data bus arbiter 195. It is processed first in C8, and in the next cycle C9, the request of the memory bank SC2 (150) is processed.

【0104】以上の本実施例によれば、4バンクに分割
したメモリ及びアクセスバッファの働きにより、1つの
バンクにアクセスが集中しても誤動作することはなく、
更に、他のバンクへのアクセスに対しては、1つのバン
クに集中して待たされているアクセスとは無関係に、他
のバンクのアクセスを実行できる効果がある。つまり、
本実施例の共有バス制御方式によれば、4つに分割した
メモリバンクを有効に活用することができる。
According to the present embodiment described above, due to the functions of the memory and the access buffer divided into four banks, no malfunction occurs even if the access is concentrated in one bank.
Further, with respect to the access to the other bank, there is an effect that the access of the other bank can be executed irrespective of the access which is concentrated and waited in one bank. That is,
According to the shared bus control method of this embodiment, the memory banks divided into four can be effectively used.

【0105】本発明は、上記実施例に限定されるもので
はなく、その技術思想に従って種々の変形が可能なこと
は言うまでもない。
It is needless to say that the present invention is not limited to the above embodiments, and various modifications can be made according to the technical idea thereof.

【0106】例えば、上記の実施例において、共有メモ
リ130から160は単純な記憶素子(例えば、メイン
メモリ)であったが、他の実施例としては、共有メモリ
130から160がキャッシュメモリである場合が考え
られる。図8は、その場合のマルチプロセッサシステム
のブロック図を示すものである。
For example, in the above embodiment, the shared memories 130 to 160 are simple storage elements (for example, main memory), but in another embodiment, the shared memories 130 to 160 are cache memories. Can be considered. FIG. 8 shows a block diagram of a multiprocessor system in that case.

【0107】メモリ・バンクSC0(130),SC1
(140),SC2(150),SC3(160)はキャッシ
ュメモリであり、メインメモリ810のコピーを保持す
るものである。また、メインメモリ810とキャッシュ
メモリ・バンクSC0(130),SC1(140),SC
2(150),SC3(160)の間は、第2の共有バス8
20によって接続されている。
Memory banks SC0 (130), SC1
Reference numerals (140), SC2 (150) and SC3 (160) are cache memories, which hold a copy of the main memory 810. In addition, the main memory 810 and the cache memory banks SC0 (130), SC1 (140), SC
The second shared bus 8 is provided between 2 (150) and SC3 (160).
Connected by 20.

【0108】また、以上の説明ではプロセッサシステム
の実装形態については説明しなかったが、図1のシステ
ムメモリまたは図8のシステムの内、メインメモリ81
0を除いた回路部分が最近のULSI技術を使用するこ
とによって1枚の半導体基盤の上に実現されることがで
きる。
Although the implementation of the processor system has not been described above, the main memory 81 of the system memory of FIG. 1 or the system of FIG.
The circuit part except 0 can be realized on one semiconductor substrate by using the recent ULSI technology.

【0109】尚、上述した本発明の実施例は、下記の如
き利点を有する。
The above-described embodiment of the present invention has the following advantages.

【0110】データバスはバスの使用権を決定する専用
のアービタ回路を設けているので、アドレスバスと独立
にバスの使用元を決定でき、読み出しデータの転送では
アドレスバスとは独立にデータバスのみを用いて行うこ
とができる。
Since the data bus is provided with a dedicated arbiter circuit for determining the right to use the bus, the source of use of the bus can be determined independently of the address bus, and in the transfer of read data, only the data bus is independent of the address bus. Can be done using.

【0111】共有バスをアクセスするデバイスにはあら
かじめデバイスのID番号が割り付けられており、アド
レス送出と同時にこのID番号を出力するので、メモリ
側で複数のアクセスがバッファリングされても、混同す
ることがなくなる。
Since the device ID number is assigned to the device accessing the shared bus in advance, and this ID number is output at the same time as the address is sent, even if a plurality of accesses are buffered on the memory side, they should be confused. Disappears.

【0112】メモリはバンクごとに複数に分割されてい
るので、異なるバンクに対するメモリアクセスを並列に
処理することができる。
Since the memory is divided into a plurality of banks, the memory accesses to different banks can be processed in parallel.

【0113】アドレスバスはアドレス送出後、アドレス
バスの内容をアクセスキューにラッチするので、データ
の応答を待たずに直ちに開放でき、他のデバイスが新た
なバスアクセスを開始できる。
Since the address bus latches the contents of the address bus in the access queue after sending the address, it can be opened immediately without waiting for a data response, and another device can start a new bus access.

【0114】[0114]

【発明の効果】本発明は、以下に示す如き効果を奏す
る。
The present invention has the following effects.

【0115】本発明のによれば、共有メモリは複数のバ
ンクに分割されているため、さらに、アドレスバスとデ
ータバスとが物理的に分離した分離バス方式を採用して
いるため、複数のプロセッサから複数のバンクに分割さ
れた共有メモリへのアクセスのスループットが著しく向
上されることができる。
According to the present invention, since the shared memory is divided into a plurality of banks, and the address bus and the data bus are physically separated, the separated bus system is adopted. It is possible to significantly improve the throughput of access to the shared memory divided into a plurality of banks.

【0116】さらに、FIFOメモリにバッファリング
された共有メモリへの複数のアクセス要求アドレスに関
して、先入れ先出しでデータバスのバス使用権の獲得の
後、共有メモリのバンクとプロセッサとの間のデータ転
送が次々に実行されるため、隣接するアクセス要求が共
有メモリの同一のバンクを連続してアクセスするとして
も、後のアクセス要求が先のアクセス要求のデータ転送
の完了を待つ必要が無く、スループットが著しく向上さ
れることができる。
Further, regarding a plurality of access request addresses to the shared memory buffered in the FIFO memory, after the bus usage right of the data bus is acquired on a first-in first-out basis, data transfer between the bank of the shared memory and the processor is performed one after another. Therefore, even if adjacent access requests continuously access the same bank of shared memory, subsequent access requests do not have to wait for the completion of data transfer of the previous access request, and throughput is significantly improved. Can be done.

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

【図1】本発明の一実施例であるマルチプロセッサのシ
ステム構成を示すブロック図。
FIG. 1 is a block diagram showing a system configuration of a multiprocessor which is an embodiment of the present invention.

【図2】図1のアドレスバス170の構成を詳細に示す
図。
FIG. 2 is a diagram showing a detailed configuration of an address bus 170 shown in FIG.

【図3】図1のデータバス180の構成を詳細に示す
図。
FIG. 3 is a diagram showing the configuration of a data bus 180 of FIG. 1 in detail.

【図4】図1のアクセスキュー135の構成を詳細に示
す図。
FIG. 4 is a diagram showing the configuration of an access queue 135 shown in FIG. 1 in detail.

【図5】図1の命令キャッシュIC(112)の構成の
一部を詳細に示す図。
5 is a diagram showing a part of the configuration of the instruction cache IC (112) in FIG. 1 in detail.

【図6】図1のバスアビータ190、195の構成を詳
細に示す図。
FIG. 6 is a diagram showing in detail a configuration of bus arbiters 190, 195 of FIG.

【図7】図1乃至図6に実施例によるマルチプロセッサ
システムの動作を示すタイムチャート図。
FIG. 7 is a time chart diagram showing the operation of the multiprocessor system according to the embodiment in FIGS. 1 to 6;

【図8】他の実施例であるマルチプロセッサのシステム
構成を示すブロック図である。
FIG. 8 is a block diagram showing a system configuration of a multiprocessor which is another embodiment.

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

110、120・・・プロセッサエレメント、111、1
21・・・中央処理装置(CPU)、112、122・・・命
令キャッシュ、113、123・・・オペランドキャッシ
ュ、130、140、150、160・・・メモリ、13
5、145、155、165・・・アクセスキュー、17
0・・・アドレスバス、180・・・データバス、190・・・
アドレスバス用アビータ、195・・・データバス用アビ
ータ、250・・・アドレスバス用ID番号信号線、35
0・・・データバス用ID番号信号線。
110, 120 ... Processor element, 111, 1
21 ... Central processing unit (CPU), 112, 122 ... Instruction cache, 113, 123 ... Operand cache, 130, 140, 150, 160 ... Memory, 13
5, 145, 155, 165 ... Access queue, 17
0 ... Address bus, 180 ... Data bus, 190 ...
Address bus arbiter, 195 ... Data bus arbiter, 250 ... Address bus ID number signal line, 35
0 ... ID number signal line for data bus.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 西井 修 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 鈴木 誠 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (56)参考文献 特開 昭58−58666(JP,A) 特開 平2−22757(JP,A) 岡田外3「スプリット転送形システム バスの特性評価」コンピュータシステム 研究会報告 CPSY90−4、電子情報 通信学会(1990−4−20)P.25−32   ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Osamu Nishii               1-280, Higashikoigokubo, Kokubunji, Tokyo               Central Research Laboratory, Hitachi, Ltd. (72) Inventor Makoto Suzuki               1-280, Higashikoigokubo, Kokubunji, Tokyo               Central Research Laboratory, Hitachi, Ltd.                (56) References JP-A-58-58666 (JP, A)                 JP-A-2-22757 (JP, A)                 Okada Soga 3 "Split transfer system               Bus characterization "computer system               Report of Study Group CPSY90-4, Electronic Information               IEICE (1990-4-20) P. 25-32

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】複数のプロセッサと、 上記複数のプロセッサに接続されたアドレスバスと、 上記複数のプロセッサに接続されたデータバスと、 それぞれが、上記アドレスバスを介して上記複数のプロ
セッサの一つのプロセッサからアドレス信号を受け取
り、上記データバスを介して、上記複数のプロセッサの
うち対応する一つのプロセッサにメモリ内のデータを与
え、もしくは上記複数のプロセッサのうち対応する一つ
のプロセッサからデータをストアする複数のバンクを有
するメモリと、 上記アドレスバスに接続され、上記複数のプロセッサか
らの上記アドレスバスの使用要求を調停し、上記複数の
プロセッサ一つに上記アドレスバスの使用権を決定して
与える第1のアービタと、 上記データバスに接続され、上記複数のプロセッサおよ
び上記複数のバンクからの上記データバスの使用要求を
調停し、上記第1のアービタの使用権の決定とは独立に
上記複数のプロセッサおよび上記複数のバンクのうちの
一つに上記データバスの使用権を決定して与える第2の
アービタを有し、 上記第1のアービタは、上記第2のアービタが上記複数
のプロセッサの何れか一つにデータのストアのために上
記データバスの使用権を決定した時、上記第2のアービ
タがデータバスの使用権を与えるプロセッサに同時に上
記アドレスバスの使用権を与える同期手段を備えること
を特徴とするマルチプロセッサシステム。
1. A plurality of processors, an address bus connected to the plurality of processors, and a data bus connected to the plurality of processors, each of which is one of the plurality of processors via the address bus. An address signal is received from a processor, and data in the memory is given to a corresponding one of the plurality of processors via the data bus, or data is stored from a corresponding one of the plurality of processors. A memory having a plurality of banks and connected to the address bus, arbitrating a request for use of the address bus from the plurality of processors, deciding and giving a right of use of the address bus to one of the plurality of processors; 1 arbiter and the above data bus, Arbitration of use requests of the data bus from the plurality of banks, and use of the data bus in one of the plurality of processors and the plurality of banks independently of the determination of the right of use of the first arbiter. A second arbiter for determining and granting the right, the first arbiter assigning the right to use the data bus to the one of the plurality of processors for storing data. A multiprocessor system, wherein the second arbiter comprises a synchronization means for simultaneously giving the right of use of the address bus to the processor which gives the right of use of the data bus when determined.
【請求項2】上記第1のアービタの同期手段は、上記第
2のアービタが上記複数のプロセッサのうちの特定のも
のにデータバスの使用権を決定したことを示す信号を検
出して同じプロセッサにアドレスバスの使用権を決定す
る回路手段よりなる請求項1記載のマルチプロセッサシ
ステム。
2. The same arbiter synchronization means detects a signal indicating that the second arbiter has determined the right to use the data bus to a specific one of the plurality of processors, and the same processor. 2. The multiprocessor system according to claim 1, further comprising circuit means for determining the right to use the address bus.
JP2000314432A 2000-10-10 2000-10-10 Multiprocessor system Expired - Lifetime JP3425421B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000314432A JP3425421B2 (en) 2000-10-10 2000-10-10 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000314432A JP3425421B2 (en) 2000-10-10 2000-10-10 Multiprocessor system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP30240890A Division JP3144794B2 (en) 1990-11-09 1990-11-09 Multiprocessor system

Publications (2)

Publication Number Publication Date
JP2001175632A JP2001175632A (en) 2001-06-29
JP3425421B2 true JP3425421B2 (en) 2003-07-14

Family

ID=18793690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000314432A Expired - Lifetime JP3425421B2 (en) 2000-10-10 2000-10-10 Multiprocessor system

Country Status (1)

Country Link
JP (1) JP3425421B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4867452B2 (en) * 2006-04-20 2012-02-01 セイコーエプソン株式会社 Image processing apparatus and printing apparatus
JP2013069063A (en) * 2011-09-21 2013-04-18 Fujitsu Ltd Communication unit and information processing method
JP7036226B2 (en) * 2018-10-30 2022-03-15 富士通株式会社 Arithmetic processing unit and its control method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岡田外3「スプリット転送形システムバスの特性評価」コンピュータシステム研究会報告 CPSY90−4、電子情報通信学会(1990−4−20)P.25−32

Also Published As

Publication number Publication date
JP2001175632A (en) 2001-06-29

Similar Documents

Publication Publication Date Title
JP3144794B2 (en) Multiprocessor system
US7650453B2 (en) Information processing apparatus having multiple processing units sharing multiple resources
US5893153A (en) Method and apparatus for preventing a race condition and maintaining cache coherency in a processor with integrated cache memory and input/output control
US6292705B1 (en) Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system
US5586299A (en) Systems and methods for accessing multi-port memories
CN105068951B (en) A kind of system-on-chip bus with non-isochronous transfers structure
US20040107265A1 (en) Shared memory data transfer apparatus
KR920006851A (en) Data processing system and method
EP0663087A1 (en) Method and apparatus for non-snoop window reduction
JPH05210640A (en) Multiprocessor system
US6892266B2 (en) Multicore DSP device having coupled subsystem memory buses for global DMA access
US5353416A (en) CPU lock logic for corrected operation with a posted write array
JPH04306748A (en) Information processor
JPH06309230A (en) Bus snooping method
US6738837B1 (en) Digital system with split transaction memory access
US6425071B1 (en) Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus
US7006521B2 (en) External bus arbitration technique for multicore DSP device
JP4097883B2 (en) Data transfer apparatus and method
JP3425421B2 (en) Multiprocessor system
JP3018038B2 (en) Data processing device having cache
CA2465492A1 (en) Bandwidth enhancement for uncached devices
JP2002024007A (en) Processor system
JP2586061B2 (en) Cache memory controller
JP2007108882A (en) Memory controller, memory-controlling method, and information processing device
KR100274450B1 (en) The control method and apparatus for deferred transaction of local bus

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080502

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090502

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100502

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110502

Year of fee payment: 8

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110502

Year of fee payment: 8