JP2004070692A - System for multiprocessing - Google Patents

System for multiprocessing Download PDF

Info

Publication number
JP2004070692A
JP2004070692A JP2002229667A JP2002229667A JP2004070692A JP 2004070692 A JP2004070692 A JP 2004070692A JP 2002229667 A JP2002229667 A JP 2002229667A JP 2002229667 A JP2002229667 A JP 2002229667A JP 2004070692 A JP2004070692 A JP 2004070692A
Authority
JP
Japan
Prior art keywords
register file
source data
processor
storage memory
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002229667A
Other languages
Japanese (ja)
Inventor
Ikuya Honda
本田  育哉
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2002229667A priority Critical patent/JP2004070692A/en
Publication of JP2004070692A publication Critical patent/JP2004070692A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system for multiprocessing which can enhance the capability of processing and reduce a hardware cost. <P>SOLUTION: The system for multiprocessing comprises a control circuit 105, which generates a signal 115 for controlling internal activities and an end-of-computing on the basis of instructions from a first instruction memory 104 and a second instruction memory 112; a first register file 109 for storing a computing result of its own and outputting a first source data; a second register file 113 for storing the result of computing migrated from another processor for execution and outputting a second source data; an input selector 114 for selecting the first source data or the second source data; and an output selector 108 for assigning the outputs from an arithmetic unit 106 and an arithmetic unit 107, which execute the arithmetic in response to an output value from the input selector 114, to the first register file 109 and the second register file 113. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、複数のプロセッサにより並行処理を行うマルチプロセッサシステムに関する。
【0002】
【従来の技術】
従来、複数のプロセッサにより並行処理を行うマルチプロセッサシステムは図2のようになっている。
図2は従来技術を示すマルチプロセッサシステムのブロック図である。
図2において、202は第1プロセッサ、203は第2プロセッサ、212は第1プロセッサ202と第2プロセッサ203を接続するデータアドレスバスである。また、第2プロセッサ203の内部回路として、204は命令格納メモリ、205は制御回路、206は第1演算器、207は第2演算器、208は出力セレクタ、209はレジスタファイル、210は出力レジスタ、211はソースデータである。
第1プロセッサ202の内部は第2プロセッサ203と同様の回路を含んでおり、第1プロセッサ202と第2プロセッサ203は独立して命令を実行している。ただし、2つのプロセッサは片方をマスタ、他方をスレーブとして動作し、マスタのアドレスにスレーブの内部領域がマッピングされている。
【0003】
次に、例えば、第1プロセッサ202がマスタ、第2プロセッサ203がスレーブとした場合の動作を説明する。
第1プロセッサ202は第2プロセッサ203のレジスタファイル209に保持された演算結果を参照し、レジスタファイル209にデータを書き込むことで新たな演算結果を得る。また、命令格納メモリ204が書換え可能なメモリである場合は、第1プロセッサ202は命令格納メモリ204に命令を書き込むことも行う。第2プロセッサ203では、命令格納メモリ204から出力された命令を制御回路205で解読し、制御回路205ではその命令に応じたデータをレジスタファイル209からソースデータ211として出力するよう指令する。ソースデータ211は第1演算器206と第2演算器207に入力され、それぞれの演算結果が出力セレクタ208に入力される。第1演算器206と第2演算器207はそれぞれ別の演算を行う回路であり、例えば算術演算や論理演算、乗算、テーブルROM等の場合が有り得る。
【0004】
また、ここでは演算器が2つの場合の例を示しているが、さらに多数の演算器が含まれることも有る。出力セレクタ208ではそのときの命令が第1演算器206と第2演算器207のどちらの演算を行うものであるかを制御回路205から指令を受けて対応する演算結果を出力する。出力セレクタ208の出力はレジスタファイル209や出力レジスタ210に入力されており、その時の命令によって制御回路205から指令を受けて演算結果が保持される。レジスタファイル209に保持された演算結果は以降の命令でソースデータ211として使用される。出力レジスタ210に保持された演算結果は第2プロセッサ203の外部への演算結果に応じた出力となる。
【0005】
【発明が解決しようとする課題】
しかしながら、上記マルチプロセッサシステムでは、それぞれのプロセッサで実行する命令に偏りが有ると、処理能力の違いによりそれぞれのプロセッサのスループットにばらつきが生じるため、システムの処理能力の向上を妨げるという問題が有った。
また、演算器の回路規模が演算の種類によって制御回路やセレクタと比較して非常に大きくなる場合が有る。このようなとき、個々のプロセッサがその演算を行う演算器を持たなければならないため演算資源の重複があり、ハードウエアのコストが増大するという問題も有った。
【0006】
本発明は上記課題を解決するためになされたものであり、システムの処理能力を向上することができ、ハードウエアのコストを減少することが可能なマルチプロセッサシステムを提供することを目的とする。
【0007】
【課題を解決するための手段】
上記課題を解決するために、本発明は、複数のプロセッサにより並行処理を行うマルチプロセッサシステムにおいて、自身の実行する命令を格納する第1命令格納メモリと、他のプロセッサから実行を移行された命令を格納する第2命令格納メモリと、該第1命令格納メモリと該第2命令格納メモリとからの命令に基づき内部動作の制御と演算終了信号を発生する制御回路と、自身の演算結果の保持と第1ソースデータの出力を行う第1レジスタファイルと、他のプロセッサから実行を移行された演算結果の保持と第2ソースデータの出力を行う第2レジスタファイルと、該第1ソースデータと該第2ソースデータの選択を行う入力セレクタと、該入力セレクタからの出力値に応じた演算を行う複数の演算器と、該複数の演算器からの出力を該第1レジスタファイルと該第2レジスタファイルとに振り分ける出力セレクタを具備したものである。
【0008】
【発明の実施の形態】
以下、本発明の実施例を図に基づいて説明する。
図1は本発明の実施例を示すマルチプロセッサシステムのブロック図である。
図1において、102は第1プロセッサ、103は第2プロセッサ、117は第1プロセッサ102と第2プロセッサ103を接続するデータアドレスバスである。また、第2プロセッサ103の内部回路として、104は命令格納メモリ、105は制御回路、106は演算器1、107は演算器2、108は出力セレクタ、109はレジスタファイル、110は出力レジスタ、111は第1ソースデータ、112は第2命令格納メモリ、113は第2レジスタファイル、114は入力セレクタ、115は演算終了信号、116は第2ソースデータである。
【0009】
本発明が従来技術と異なる点は、自身の実行する命令を格納する第1命令格納メモリ104とは別に、他のプロセッサから実行を移行された命令を格納する第2命令格納メモリ112を設けた点、また、自身の演算結果の保持と第1ソースデータの出力を行う第1レジスタファイル109とは別に、他のプロセッサから実行を移行された演算結果の保持と第2ソースデータの出力を行う第2レジスタファイル113を設けた点、さらに、第1ソースデータ111と該第2ソースデータ116の選択を行う入力セレクタ114を設けた点である。
なお、第1プロセッサ102の内部は第2プロセッサ103と同様の回路を含んでおり、第1プロセッサ102と第2プロセッサ103は独立して命令を実行している。ただし、第1演算器106または第2演算器107については必ずしも共通ではなく、片方だけが持つ演算器もある。また、2つのプロセッサは片方をマスタ、他方をスレーブとし動作し、マスタのアドレスにスレーブの内部領域がマッピングされている。
【0010】
次に動作について説明する。
第1プロセッサ102がマスタ、第2プロセッサ103がスレーブとした場合に、第1プロセッサ102は第2プロセッサ103の第1レジスタファイル109に保持された演算結果を参照し、第1レジスタファイル109にデータを書き込むことで新たな演算結果を得る。また、第1命令格納メモリ104が書換え可能なメモリである場合は、第1プロセッサ102は第1命令格納メモリ104に命令を書き込むことも行う。第2命令格納メモリ112は書換え可能なメモリであり、第1プロセッサ102での処理が第2プロセッサ103での処理に比べて多い場合、そのうちのいくつかの命令を第2命令格納メモリ112に転送する。また、第1プロセッサ102の演算器では演算できない命令であって、第2プロセッサ103の演算器で演算可能な命令がある場合も第2命令格納メモリ112に転送する。第2プロセッサ103では、第1命令格納メモリ104から出力された命令を制御回路105で解読し、同時に第2命令格納メモリ112の出力も監視している。第1命令格納メモリ104から出力された命令で使用する演算器が、第2命令格納メモリ112の出力の命令で使用する演算器と異なる場合、制御回路105ではその命令に応じたデータを第1レジスタファイル109から第1ソースデータ111として出力するよう指令する。同時に第2レジスタファイル113からも第2命令格納メモリ112の出力の命令に応じたデータを第2ソースデータ116として出力するように指令する。第1ソースデータ111と第2ソースデータ116は入力セレクタ114に入力される。入力セレクタ114では制御回路105からの指令を受けて、第1ソースデータ111と第2ソースデータ116を第1演算器106と第2演算器107のどちらの演算器への入力として使用するかを選択する。第1演算器106と第2演算器107のそれぞれの演算結果は出力セレクタ108に入力される。第1演算器106と第2演算器107はそれぞれ別の演算を行う回路であり、例えば算術演算や論理演算、乗算、テーブルROM等の場合が有り得る。
【0011】
また、ここでは演算器が2つの場合の例を示しているが、さらに多数の演算器が含まれることも有る。出力セレクタ108では第1演算器106と第2演算器107の演算結果が、レジスタファイル109や出力レジスタ110もしくは第2レジスタファイル113で保持するのかという指令を制御回路105から受けて、それに応じた出力に振り分ける。レジスタファイル109や出力レジスタ110及び第2レジスタファイル113は、出力セレクタ108からの出力を制御回路105からの指令に応じて保持する。レジスタファイル109および第2レジスタファイル113に保持された演算結果は以降の命令で第1ソースデータ111もしくは第2ソースデータ116として使用される。出力レジスタ110に保持された演算結果は第2プロセッサ103の外部への演算結果に応じた出力となる。第2命令格納メモリ112の命令がすべて完了すると、制御回路105は演算終了信号115を発生し、第1プロセッサ102に処理の終了を通知する。この際、演算終了信号115は第1プロセッサ102の割込み信号として使用される場合や、第1プロセッサ102のアドレスに割り付けられたステータスビットとしてポーリングによる監視で使用される場合が有る。命令格納メモリ104から出力された命令と第2命令格納メモリ112から出力された命令で使用する演算器が同じ場合は、命令格納メモリ104から出力された命令を優先して行う。また、第2命令格納メモリ112に命令が格納されていない場合は従来のマルチプロセッサシステムと同様に命令格納メモリ104の命令だけが処理される。
【0012】
したがって、本実施例に係るマルチプロセッサシステムは、自身の実行する命令を格納する第1命令格納メモリ104と、他のプロセッサから実行を移行された命令を格納する第2命令格納メモリ112と、該第1命令格納メモリ104と該第2命令格納メモリ112とからの命令に基づき内部動作の制御と演算終了信号115を発生する制御回路105と、自身の演算結果の保持と第1ソースデータの出力を行う第1レジスタファイル109と、他のプロセッサから実行を移行された演算結果の保持と第2ソースデータの出力を行う第2レジスタファイル113と、該第1ソースデータと該第2ソースデータの選択を行う入力セレクタ114と、該入力セレクタ114からの出力値に応じた演算を行う複数の演算器106、107と、該複数の演算器106、107からの出力を該第1レジスタファイル109と該第2レジスタファイル113とに振り分ける出力セレクタ108を具備する構成にしたので、一方のプロセッサで使用していない演算器を他方のプロセッサで使用することで、それぞれのプロセッサで実行する命令の偏りを平均化できることから、システムの処理能力を向上することができる。
また、一方のプロセッサと他方のプロセッサの間で演算器の重複を減らすことができるので、ハードウエアコストを減少することができる。
【0013】
【発明の効果】
以上述べたように、本発明によれば、マルチプロセッサシステムにおいて、自身の実行する命令を格納する第1命令格納メモリと、他のプロセッサから実行を移行された命令を格納する第2命令格納メモリと、該第1命令格納メモリと該第2命令格納メモリとからの命令に基づき内部動作の制御と演算終了信号を発生する制御回路と、自身の演算結果の保持と第1ソースデータの出力を行う第1レジスタファイルと、他のプロセッサから実行を移行された演算結果の保持と第2ソースデータの出力を行う第2レジスタファイルと、該第1ソースデータと該第2ソースデータの選択を行う入力セレクタと、該入力セレクタからの出力値に応じた演算を行う複数の演算器と、該複数の演算器からの出力を該第1レジスタファイルと該第2レジスタファイルとに振り分ける出力セレクタを具備する構成にしたため、一方のプロセッサで使用していない演算器を他方のプロセッサで使用することで、それぞれのプロセッサで実行する命令の偏りを平均化できることから、システムの処理能力を向上することができる。
また、一方のプロセッサと他方のプロセッサの間で演算器の重複を減らすことができるので、ハードウエアコストを減少することができる。
【図面の簡単な説明】
【図1】本発明の実施例を示すマルチプロセッサシステムのブロック図である。
【図2】従来技術を示すマルチプロセッサシステムのブロック図である。
【符号の説明】
101 本発明のマルチプロセッサシステム
102 第1プロセッサ
103 第2プロセッサ
104 第1命令格納メモリ
105 制御回路
106 第1演算器
107 第2演算器
108 出力セレクタ
109 第1レジスタファイル
110 出力レジスタ
111 第1ソースデータ
112 第2命令格納メモリ
113 第2レジスタファイル
114 入力セレクタ
115 演算終了信号
116 第2ソースデータ
117 データアドレスバス
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a multiprocessor system that performs parallel processing by a plurality of processors.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, a multiprocessor system in which a plurality of processors perform parallel processing is as shown in FIG.
FIG. 2 is a block diagram of a multiprocessor system showing the prior art.
In FIG. 2, reference numeral 202 denotes a first processor, 203 denotes a second processor, and 212 denotes a data address bus connecting the first processor 202 and the second processor 203. Further, as an internal circuit of the second processor 203, 204 is an instruction storage memory, 205 is a control circuit, 206 is a first operator, 207 is a second operator, 208 is an output selector, 209 is a register file, 210 is an output register , 211 are source data.
The inside of the first processor 202 includes the same circuit as the second processor 203, and the first processor 202 and the second processor 203 execute instructions independently. However, the two processors operate as one master and the other as a slave, and the slave's internal area is mapped to the master's address.
[0003]
Next, for example, an operation in a case where the first processor 202 is a master and the second processor 203 is a slave will be described.
The first processor 202 obtains a new operation result by referring to the operation result held in the register file 209 of the second processor 203 and writing data to the register file 209. When the instruction storage memory 204 is a rewritable memory, the first processor 202 also writes instructions to the instruction storage memory 204. In the second processor 203, the instruction output from the instruction storage memory 204 is decoded by the control circuit 205, and the control circuit 205 instructs to output data corresponding to the instruction from the register file 209 as the source data 211. The source data 211 is input to the first arithmetic unit 206 and the second arithmetic unit 207, and the respective arithmetic results are input to the output selector 208. The first arithmetic unit 206 and the second arithmetic unit 207 are circuits that perform different operations, and may be, for example, arithmetic operations, logical operations, multiplications, and table ROMs.
[0004]
Although an example in which there are two arithmetic units is shown here, a larger number of arithmetic units may be included. The output selector 208 receives a command from the control circuit 205 to determine which of the first and second arithmetic units 206 and 207 performs the arithmetic at that time, and outputs a corresponding arithmetic result. The output of the output selector 208 is input to the register file 209 and the output register 210, and receives an instruction from the control circuit 205 according to the instruction at that time, and holds the operation result. The operation result held in the register file 209 is used as source data 211 in a subsequent instruction. The operation result held in the output register 210 becomes an output corresponding to the operation result to the outside of the second processor 203.
[0005]
[Problems to be solved by the invention]
However, in the above-described multiprocessor system, if the instructions executed by the respective processors are biased, the throughput of each processor varies due to the difference in the processing capability, which hinders the improvement of the processing capability of the system. Was.
Further, there is a case where the circuit scale of the arithmetic unit becomes very large as compared with the control circuit or the selector depending on the type of operation. In such a case, since each processor must have an operation unit for performing the operation, there is a problem that operation resources are duplicated and hardware cost is increased.
[0006]
The present invention has been made to solve the above problems, and has as its object to provide a multiprocessor system capable of improving the processing capability of a system and reducing hardware costs.
[0007]
[Means for Solving the Problems]
In order to solve the above-mentioned problem, the present invention provides a multi-processor system in which a plurality of processors perform parallel processing, a first instruction storage memory for storing instructions to be executed by itself, and an instruction whose execution has been shifted from another processor. And a control circuit for controlling internal operations and generating an operation end signal based on instructions from the first and second instruction storage memories, and holding its own operation result And a first register file for outputting the first source data, a second register file for holding an operation result shifted to execution from another processor and outputting the second source data, and a first register file for outputting the first source data. An input selector for selecting the second source data, a plurality of arithmetic units for performing an operation in accordance with an output value from the input selector, and an output from the plurality of arithmetic units. It is obtained by having an output selector for distributing to the first register file and said second register file.
[0008]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram of a multiprocessor system showing an embodiment of the present invention.
In FIG. 1, reference numeral 102 denotes a first processor, 103 denotes a second processor, and 117 denotes a data address bus connecting the first processor 102 and the second processor 103. Further, as internal circuits of the second processor 103, 104 is an instruction storage memory, 105 is a control circuit, 106 is a computing unit 1, 107 is a computing unit 2, 108 is an output selector, 109 is a register file, 110 is an output register, 111 Is the first source data, 112 is the second instruction storage memory, 113 is the second register file, 114 is the input selector, 115 is the operation end signal, and 116 is the second source data.
[0009]
The present invention differs from the prior art in that a second instruction storage memory 112 for storing an instruction whose execution has been shifted from another processor is provided separately from the first instruction storage memory 104 for storing an instruction to be executed by itself. In addition, separately from the first register file 109 for holding its own calculation result and outputting the first source data, it holds the calculation result whose execution has been shifted from another processor and outputs the second source data. A second register file 113 is provided, and an input selector 114 for selecting the first source data 111 and the second source data 116 is provided.
Note that the inside of the first processor 102 includes the same circuit as the second processor 103, and the first processor 102 and the second processor 103 execute instructions independently. However, the first arithmetic unit 106 or the second arithmetic unit 107 is not necessarily common, and there is an arithmetic unit which only one has. The two processors operate with one as a master and the other as a slave, and the internal area of the slave is mapped to the address of the master.
[0010]
Next, the operation will be described.
When the first processor 102 is the master and the second processor 103 is the slave, the first processor 102 refers to the operation result held in the first register file 109 of the second processor 103, and stores the data in the first register file 109. To obtain a new calculation result. When the first instruction storage memory 104 is a rewritable memory, the first processor 102 also writes instructions to the first instruction storage memory 104. The second instruction storage memory 112 is a rewritable memory. When the number of processes performed by the first processor 102 is larger than the number of processes performed by the second processor 103, some of the instructions are transferred to the second instruction storage memory 112. I do. Also, if there is an instruction that cannot be operated by the operation unit of the first processor 102 and can be operated by the operation unit of the second processor 103, the instruction is also transferred to the second instruction storage memory 112. In the second processor 103, the control circuit 105 decodes the instruction output from the first instruction storage memory 104, and simultaneously monitors the output of the second instruction storage memory 112. If the operation unit used in the instruction output from the first instruction storage memory 104 is different from the operation unit used in the instruction output from the second instruction storage memory 112, the control circuit 105 stores the data corresponding to the instruction in the first instruction storage memory. An instruction is issued from the register file 109 to output the first source data 111. At the same time, it instructs the second register file 113 to output data corresponding to the output instruction of the second instruction storage memory 112 as the second source data 116. The first source data 111 and the second source data 116 are input to the input selector 114. In response to an instruction from the control circuit 105, the input selector 114 determines whether the first source data 111 and the second source data 116 are to be used as inputs to the first arithmetic unit 106 or the second arithmetic unit 107. select. The operation results of the first operation unit 106 and the second operation unit 107 are input to the output selector 108. The first arithmetic unit 106 and the second arithmetic unit 107 are circuits that perform different operations, and may be, for example, arithmetic operations, logical operations, multiplications, table ROMs, and the like.
[0011]
Although an example in which there are two arithmetic units is shown here, a larger number of arithmetic units may be included. The output selector 108 receives an instruction from the control circuit 105 as to whether the operation results of the first and second operation units 106 and 107 are held in the register file 109, the output register 110, or the second register file 113, and responds accordingly. Distribute to output. The register file 109, the output register 110, and the second register file 113 hold the output from the output selector 108 in accordance with a command from the control circuit 105. The operation results held in the register file 109 and the second register file 113 are used as the first source data 111 or the second source data 116 in the subsequent instructions. The operation result held in the output register 110 becomes an output corresponding to the operation result to the outside of the second processor 103. When all the instructions in the second instruction storage memory 112 are completed, the control circuit 105 generates an operation end signal 115 and notifies the first processor 102 of the end of the processing. At this time, the operation end signal 115 may be used as an interrupt signal of the first processor 102 or may be used as a status bit assigned to the address of the first processor 102 for monitoring by polling. If the instruction output from the instruction storage memory 104 and the arithmetic unit used in the instruction output from the second instruction storage memory 112 are the same, the instruction output from the instruction storage memory 104 is preferentially performed. When no instruction is stored in the second instruction storage memory 112, only instructions in the instruction storage memory 104 are processed as in the conventional multiprocessor system.
[0012]
Therefore, the multiprocessor system according to the present embodiment includes a first instruction storage memory 104 for storing instructions to be executed by itself, a second instruction storage memory 112 for storing instructions whose execution has been shifted from another processor, and A control circuit 105 for controlling internal operations and generating an operation end signal 115 based on instructions from the first instruction storage memory 104 and the second instruction storage memory 112, holding its own operation result, and outputting first source data A first register file 109 for holding the operation result shifted from execution by another processor and a second register file 113 for outputting the second source data, and a first register file 109 for storing the first source data and the second source data. An input selector 114 for performing selection, a plurality of operators 106 and 107 for performing an operation in accordance with an output value from the input selector 114, Is provided with an output selector 108 for distributing the outputs from the arithmetic units 106 and 107 to the first register file 109 and the second register file 113, so that the arithmetic unit not used by one processor is used by the other processor. When used in processors, the bias of instructions executed by each processor can be averaged, so that the processing capacity of the system can be improved.
In addition, since duplication of arithmetic units can be reduced between one processor and the other processor, hardware costs can be reduced.
[0013]
【The invention's effect】
As described above, according to the present invention, in a multiprocessor system, a first instruction storage memory for storing an instruction to be executed by itself and a second instruction storage memory for storing an instruction whose execution has been shifted from another processor A control circuit for controlling internal operations and generating an operation end signal based on instructions from the first instruction storage memory and the second instruction storage memory, and holding its own operation result and outputting the first source data A first register file to be executed, a second register file to hold an operation result shifted to execution from another processor and output the second source data, and select the first source data and the second source data. An input selector, a plurality of operation units for performing an operation according to an output value from the input selector, and outputs from the plurality of operation units to the first register file and the second register Since the configuration is provided with an output selector for distributing the data to the files, by using an arithmetic unit that is not used by one processor in the other processor, the bias of instructions executed by each processor can be averaged. Processing capacity can be improved.
In addition, since duplication of arithmetic units can be reduced between one processor and the other processor, hardware costs can be reduced.
[Brief description of the drawings]
FIG. 1 is a block diagram of a multiprocessor system showing an embodiment of the present invention.
FIG. 2 is a block diagram of a multiprocessor system showing a conventional technique.
[Explanation of symbols]
101 Multiprocessor system of the present invention 102 First processor 103 Second processor 104 First instruction storage memory 105 Control circuit 106 First operator 107 Second operator 108 Output selector 109 First register file 110 Output register 111 First source data 112 second instruction storage memory 113 second register file 114 input selector 115 operation end signal 116 second source data 117 data address bus

Claims (1)

複数のプロセッサにより並行処理を行うマルチプロセッサシステムにおいて、
自身の実行する命令を格納する第1命令格納メモリと、
他のプロセッサから実行を移行された命令を格納する第2命令格納メモリと、
該第1命令格納メモリと該第2命令格納メモリとからの命令に基づき内部動作の制御と演算終了信号を発生する制御回路と、
自身の演算結果の保持と第1ソースデータの出力を行う第1レジスタファイルと、
他のプロセッサから実行を移行された演算結果の保持と第2ソースデータの出力を行う第2レジスタファイルと、
該第1ソースデータと該第2ソースデータの選択を行う入力セレクタと、
該入力セレクタからの出力値に応じた演算を行う複数の演算器と、
該複数の演算器からの出力を該第1レジスタファイルと該第2レジスタファイルとに振り分ける出力セレクタを具備したことを特徴とするマルチプロセッサシステム。
In a multiprocessor system that performs parallel processing by a plurality of processors,
A first instruction storage memory for storing instructions to be executed by itself,
A second instruction storage memory for storing an instruction whose execution has been shifted from another processor;
A control circuit for controlling internal operations and generating an operation end signal based on instructions from the first instruction storage memory and the second instruction storage memory;
A first register file for holding its own operation result and outputting the first source data;
A second register file for holding an operation result whose execution has been shifted from another processor and outputting the second source data;
An input selector for selecting the first source data and the second source data;
A plurality of computing units that perform computations according to output values from the input selector;
A multiprocessor system comprising an output selector for distributing outputs from the plurality of arithmetic units to the first register file and the second register file.
JP2002229667A 2002-08-07 2002-08-07 System for multiprocessing Pending JP2004070692A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002229667A JP2004070692A (en) 2002-08-07 2002-08-07 System for multiprocessing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002229667A JP2004070692A (en) 2002-08-07 2002-08-07 System for multiprocessing

Publications (1)

Publication Number Publication Date
JP2004070692A true JP2004070692A (en) 2004-03-04

Family

ID=32015977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002229667A Pending JP2004070692A (en) 2002-08-07 2002-08-07 System for multiprocessing

Country Status (1)

Country Link
JP (1) JP2004070692A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012008622A (en) * 2010-06-22 2012-01-12 Fujitsu Ltd Calculation unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012008622A (en) * 2010-06-22 2012-01-12 Fujitsu Ltd Calculation unit

Similar Documents

Publication Publication Date Title
JP6708552B2 (en) Pipelined configurable processor
US20060294344A1 (en) Computer processor pipeline with shadow registers for context switching, and method
CN109997113B (en) Method and device for data processing
JPH1027102A (en) Arithmetic processor
US8738890B2 (en) Coupled symbiotic operating system
KR20100069551A (en) Mulicore processor and method of use that configures core functions based on executing instructions
KR100288170B1 (en) Data processor with a compute unit that shares a set of register files
JPH09138778A (en) Device and method using semaphore buffer for semaphore instruction
JPS62221732A (en) Register saving and recovery system
JP2008217061A (en) Simd microprocessor
JP2021108104A (en) Partially readable/writable reconfigurable systolic array system and method
JP2004070692A (en) System for multiprocessing
JP2013161484A (en) Reconfigurable computing apparatus, first memory controller and second memory controller therefor, and method of processing trace data for debugging therefor
JP2006018411A (en) Processor
JP2004021426A (en) Computer system and hardware/software logic suitable thereto and caching method
JP2007334819A (en) Vector renaming method and vector type calculator
JPS60160443A (en) Data processor
JP2008225710A (en) Computer system and process-switching method used in the system
JP4208149B2 (en) Method and apparatus for efficient control of a processor
JPH04184535A (en) Parallel arithmetic units
JP4580879B2 (en) Reconfigurable circuit
JPH033047A (en) Memory with arithmetic function
JPH09106346A (en) Parallel computer
JP2004070869A (en) Calculating system
CN116635841A (en) Near memory determination of registers