JP4765003B2 - Multiprocessor system - Google Patents

Multiprocessor system Download PDF

Info

Publication number
JP4765003B2
JP4765003B2 JP2006071501A JP2006071501A JP4765003B2 JP 4765003 B2 JP4765003 B2 JP 4765003B2 JP 2006071501 A JP2006071501 A JP 2006071501A JP 2006071501 A JP2006071501 A JP 2006071501A JP 4765003 B2 JP4765003 B2 JP 4765003B2
Authority
JP
Japan
Prior art keywords
processor
data
shared memory
transmission
common bus
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.)
Active
Application number
JP2006071501A
Other languages
Japanese (ja)
Other versions
JP2007249547A (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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2006071501A priority Critical patent/JP4765003B2/en
Publication of JP2007249547A publication Critical patent/JP2007249547A/en
Application granted granted Critical
Publication of JP4765003B2 publication Critical patent/JP4765003B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、電子機器や電子システムに組み込まれるマルチプロセッサシステムに関する。   The present invention relates to a multiprocessor system incorporated in an electronic device or an electronic system.

図12は、従来のマルチプロセッサシステムの構成を示すブロック図である。この図12に示すマルチプロセッサシステムは、非特許文献1でも略同様の構成例が紹介されている組込み用マルチプロセッサシステムの典型的な構成例である。
図12に示すマルチプロセッサシステムは、各々が半導体チップにより形成されたn個のプロセッサ1A〜1Nと、これらプロセッサ1A〜1Nの各内部に、半導体チップ内のCPU(中央処理装置)である演算プロセッサ11A〜11Nと、これら演算プロセッサ11A〜11Nに接続された読書き可能な内蔵メモリ12A〜12Nと、外部バスIF13A〜13Nとを有し、また、各外部バスIF(インタフェース)13A〜13Nにローカルバス4A〜4Nを介して接続されたイネーブル付バスドライバ41A〜41N、E2PROM(Electrically Erasable Programmable Read-Only Memory)等のローカルメモリ42A〜42N及びローカルI/O(Input/Output)43A〜43Nと、更に、イネーブル付バスドライバ41A〜41Nから共通バス9を介して接続された共有メモリ2と、各外部バスIF13A〜13Nに接続されたアクセス調停装置3とを備えて構成されている。
FIG. 12 is a block diagram showing a configuration of a conventional multiprocessor system. The multiprocessor system shown in FIG. 12 is a typical configuration example of an embedded multiprocessor system whose non-patent document 1 introduces a substantially similar configuration example.
The multiprocessor system shown in FIG. 12 includes n processors 1A to 1N each formed of a semiconductor chip, and an arithmetic processor that is a CPU (central processing unit) in the semiconductor chip inside each of the processors 1A to 1N. 11A to 11N, read / write internal memories 12A to 12N connected to these arithmetic processors 11A to 11N, and external bus IFs 13A to 13N, and local to each external bus IF (interface) 13A to 13N Bus drivers with enable 41A to 41N connected via buses 4A to 4N, local memories 42A to 42N such as E 2 PROM (Electrically Erasable Programmable Read-Only Memory), and local I / O (Input / Output) 43A to 43N And bus drivers 41A to 41N with enable via the common bus 9. And shared memory 2 is continued, and is configured by a arbiter 3 connected to each external bus IF13A~13N.

なお、以下の説明において各構成要素の数字符号の後ろに付したA〜N等のサフィックスは省略する場合もある。
更に説明すると、外部バスIF13A〜13Nは、各プロセッサ1A〜1N、即ち半導体チップの外部のバスへのアクセス制御を行う半導体チップ内のインタフェースコントローラである。共通バス9は、各プロセッサ1A〜1Nが共有メモリ2へアクセスする時に使用する共通のバスである。
In the following description, suffixes such as A to N attached after the numerical symbols of the constituent elements may be omitted.
More specifically, the external bus IFs 13A to 13N are interface controllers in the semiconductor chip that perform access control to the processors 1A to 1N, that is, the buses outside the semiconductor chip. The common bus 9 is a common bus used when the processors 1A to 1N access the shared memory 2.

アクセス調停装置3は、複数のアクセス要求があった場合に、1つのアクセスのみ選択して許可する調停を行う。このアクセス調停装置3と各プロセッサ1A〜1N間のアクセス要求信号5A〜5Nは、アクセス許可を要求する信号であり、アクセス許可信号6A〜6Nは、アクセス許可の要求信号5A〜5Nに対するアクセスを許可する信号である。
このマルチプロセッサシステムでは、n個のプロセッサ1A〜1Nで共通に使用する共有メモリ2を備え、各プロセッサ1A〜1Nによって共有メモリ2の予め約束されたアドレスに書込み又は読出しを行うことで、データの共有と交換を行っている。
The access arbitration device 3 performs arbitration that selects and permits only one access when there are a plurality of access requests. Access request signals 5A to 5N between the access arbitration device 3 and the processors 1A to 1N are signals requesting access permission, and the access permission signals 6A to 6N permit access to the access permission request signals 5A to 5N. Signal.
This multiprocessor system includes a shared memory 2 that is commonly used by n processors 1A to 1N, and each processor 1A to 1N writes or reads data at a predetermined promised address of the shared memory 2 to thereby store data. Sharing and exchanging.

共有メモリ2及び共通バス9は、各プロセッサ1A〜1Nで同時に使用することが出来ないため、アクセス調停装置3が設けられている。共有メモリ2へアクセスしたいプロセッサ(例えば1A)は、第1ステップとしてアクセス要求信号5Aを出力し、第2ステップでアクセス調停装置3からアクセス許可信号6Aを受け取ったら、第3ステップでイネーブル付バスドライバ41Aを開き、共通バス9を介して共有メモリ2への読書きを行う。   Since the shared memory 2 and the common bus 9 cannot be used simultaneously by the processors 1A to 1N, the access arbitration device 3 is provided. A processor (for example, 1A) that wants to access the shared memory 2 outputs the access request signal 5A as the first step. When the access permission signal 6A is received from the access arbitration device 3 in the second step, the enabled bus driver in the third step. 41A is opened, and the shared memory 2 is read and written via the common bus 9.

プロセッサ1A〜1Nがローカルに使用するローカルメモリ42A〜42N又はローカルI/O43A〜43Nにアクセスする際は、イネーブル付バスドライバ41A〜41Nは閉じており、共通バス9へは影響を与えない。
各プロセッサ1A〜1Nで同時に2つ以上のアクセス要求が重なった場合には、アクセス調停装置3が決められた規則に従いアクセス要求の内の1つを選択して、それに対するアクセス許可信号を返答するようになっており、共通バス9と共有メモリ2を複数のプロセッサが同時に使用しないようになっている。
When the processors 1A to 1N access the local memories 42A to 42N or local I / Os 43A to 43N used locally, the bus drivers with enable 41A to 41N are closed, and the common bus 9 is not affected.
When two or more access requests overlap at the same time in each of the processors 1A to 1N, the access arbitration device 3 selects one of the access requests according to the determined rule, and returns an access permission signal corresponding thereto. Thus, a plurality of processors do not use the common bus 9 and the shared memory 2 at the same time.

「マイクロプロセッサ技術:昭和54年5月10日初版発行、編集兼発行者・電気学会、発売元・オーム社」の「4.3マルチプロセッサシステム/4.3.3具体例/(7)プロセス制御システム」"4.3 Multiprocessor System / 4.3.3 Specific Example / (7) Process" of "Microprocessor Technology: Published May 10, 1979, First Edition, Editor and Publisher, The Institute of Electrical Engineers, Publisher, Ohmsha" Control system "

しかし、従来のマルチプロセッサシステムにおいて、共有メモリ2は、各プロセッサ1A〜1Nの半導体チップ外部に設置されるので、演算プロセッサ11A〜11Nの動作クロックの高速化と共に、同じ半導体チップ上にある内蔵メモリ12A〜12Nに対する読込み・書込み動作に要する時間に対して、外部バスIF13A〜13Nから共通バス9を介した共有メモリ2等の半導体チップ外部に対する読込み・書込み動作に要する時間が相対的に長くかかるようになってきた。   However, in the conventional multiprocessor system, since the shared memory 2 is installed outside the semiconductor chip of each of the processors 1A to 1N, the operation clock of the arithmetic processors 11A to 11N is increased, and the built-in memory on the same semiconductor chip is used. The time required for the read / write operation from the external bus IFs 13A to 13N to the outside of the semiconductor chip such as the shared memory 2 via the common bus 9 is relatively longer than the time required for the read / write operation to 12A to 12N. It has become.

これに加え、外部バスIF13A〜13Nにはローカルバス4A〜4Nを介してローカルメモリ42A〜42N及びローカルI/O43A〜43Nが接続されているので、ローカルメモリ42A〜42N又はローカルI/O43A〜43Nにもアクセスする場合、共通バス9を介した共有メモリ2へのアクセスと時分割で行われることになる。この場合、共通バス9を介した共有メモリ2等の半導体チップ外部に対する読込み・書込み動作に要する時間が更に長く掛かってしまう。   In addition, since the local memories 42A to 42N and the local I / Os 43A to 43N are connected to the external bus IFs 13A to 13N via the local buses 4A to 4N, the local memories 42A to 42N or the local I / Os 43A to 43N are connected. Is also accessed in a time-sharing manner with access to the shared memory 2 via the common bus 9. In this case, the time required for the read / write operation to the outside of the semiconductor chip such as the shared memory 2 via the common bus 9 is further increased.

汎用的な演算プロセッサにおいては、特に読込み動作について、演算プロセッサ11A〜11Nに読込むデータが何時使用されるかはプログラム次第であって不明である。このため、読込みデータが演算プロセッサ11A〜11Nの内部レジスタに格納されるまで、プログラム処理が停止する。
これらの理由により、マルチプロセッサシステムにて必須となる共有メモリ2への読み書きが、プログラム処理効率を低下させるという問題がある。
本発明は、このような課題に鑑みてなされたものであり、共有メモリへの読書きに起因するプログラム処理効率の低下を防止することができるマルチプロセッサシステムを提供することを目的としている。
In a general-purpose arithmetic processor, it is unclear when the data read into the arithmetic processors 11A to 11N is used, particularly for the read operation, depending on the program. For this reason, the program processing is stopped until the read data is stored in the internal registers of the arithmetic processors 11A to 11N.
For these reasons, there is a problem that reading and writing to the shared memory 2 which is essential in the multiprocessor system lowers the program processing efficiency.
The present invention has been made in view of such problems, and an object of the present invention is to provide a multiprocessor system capable of preventing a decrease in program processing efficiency due to reading and writing to a shared memory.

上記目的を達成するために、本発明の請求項1によるマルチプロセッサシステムは、半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、この仮想共有メモリに内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、前記共通バスインタフェースは、前記演算プロセッサにより各プロセッサを区別するコードが設定される第1の設定手段と、他プロセッサへデータをシリアルに送信する送信手段と、他プロセッサから前記共通バスを介して送信されてきたデータを受信し、他プロセッサ毎に対応して設けられた受信手段と、前記第1の設定手段の設定コードに応じて前記送信手段及び前記受信手段を前記共通バスのシリアル通信線に接続する切替回路と、前記仮想共有メモリに書込まれた送信データを読出して前記送信手段へ入力し、前記受信手段での受信データを前記仮想共有メモリに書込むDMAプロセッサとを備えたことを特徴とする。 In order to achieve the above object, a multiprocessor system according to claim 1 of the present invention is a semiconductor chip in which data is transferred between an arithmetic processor, a built-in memory capable of reading and writing data, and a local bus outside the semiconductor chip. In a multiprocessor system in which a plurality of processors each having an external bus interface for performing input / output of each other share and exchange data with each other, a storage capacity that can be used for sharing and exchanging the data inside the processor A virtual shared memory provided in the built-in memory and a common bus interface connected to the virtual shared memory via an internal bus for reading and writing data, and outside the processor, the common bus It has a common bus consisting of a bundle of serial communication lines connected to each other processor via an interface. Common bus interface, a first setting means for distinguishing encoding each processor by the arithmetic processor is set, and transmitting means for transmitting data to the serial to other processors, it is transmitted via the common bus from the other processor And receiving means provided corresponding to each other processor, and connecting the transmitting means and the receiving means to the serial communication line of the common bus according to the setting code of the first setting means And a DMA processor that reads the transmission data written in the virtual shared memory, inputs the data to the transmission means, and writes the reception data from the reception means in the virtual shared memory. And

この構成によれば、各プロセッサの演算プロセッサはデータの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリを設け直接アクセスする必要はなく、同じ半導体チップ上にある仮想共有メモリへの書込み・読出しを行えば良い。これによって、共有メモリへの読書きに起因するプログラム処理効率の低下を防止することができる。   According to this configuration, it is not necessary for the arithmetic processors of each processor to share and exchange data, so that it is not necessary to provide a shared memory outside the semiconductor chip as in the prior art and directly access the virtual shared memory on the same semiconductor chip. It is only necessary to write / read to / from. As a result, it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory.

また、自プロセッサの仮想共有メモリに書込まれた送信データを読み出して他プロセッサへの送信手段へ入力し、これとは独立に他プロセッサからの送信データを仮想共有メモリに書込むといった処理を高速で行うことができる。 Also, the transmission data written in the virtual shared memory of the own processor is read out and input to the transmission means to the other processor, and the transmission data from the other processor is written to the virtual shared memory independently of this. it can be carried out in.

また、本発明の請求項2によるマルチプロセッサシステムは、半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、この仮想共有メモリに内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、前記共通バスインタフェースは、送信モード設定時に他プロセッサへデータをシリアルに送信し、受信モード設定時に他プロセッサから前記共通バスを介して送信されてきたデータを受信し、プロセッサ毎に対応して設けられた送受信手段と、前記演算プロセッサにより各プロセッサを区別するコードが設定され、この設定コードに対応する前記送受信手段へ前記送信モード又は受信モードの設定を指示する信号を出力する第2の設定手段と、前記仮想共有メモリに書込まれた送信データを読出して前記送受信手段へ入力し、前記送受信手段での受信データを前記仮想共有メモリに書込むDMAプロセッサとを備えたことを特徴とする。   According to a second aspect of the present invention, there is provided a multiprocessor system including an external processor for inputting / outputting data between an arithmetic processor, a built-in memory capable of reading and writing data, and a local bus outside the semiconductor chip. In a multiprocessor system in which a plurality of processors having a bus interface share and exchange data with each other, the processor has a storage capacity that can be used for sharing and exchanging the data, and the built-in processor A virtual shared memory provided in the memory, and a common bus interface connected to the virtual shared memory via an internal bus for reading and writing data; and other processors via the common bus interface outside the processor A common bus comprising a bundle of serial communication lines connected to each other, and the common bus interface The transmission / reception means provided for each processor is configured to transmit data serially to other processors when the transmission mode is set, and receive data transmitted from the other processors via the common bus when the reception mode is set. A code for distinguishing each processor is set by the arithmetic processor, and a second setting means for outputting a signal instructing setting of the transmission mode or the reception mode to the transmission / reception means corresponding to the setting code, and the virtual And a DMA processor for reading transmission data written in the shared memory and inputting the transmission data to the transmission / reception means, and writing the reception data received by the transmission / reception means into the virtual shared memory.

この構成によれば、自プロセッサの仮想共有メモリに書込まれた送信データを読み出して他プロセッサへの送信モードが設定された送受信手段へ入力し、これとは独立に他プロセッサからの送信データを仮想共有メモリに書込むといった処理を高速で行うことができる。 According to this configuration, the transmission data written in the virtual shared memory of the own processor is read out and input to the transmission / reception means in which the transmission mode to the other processor is set, and the transmission data from the other processor is independent of this. Processing such as writing to the virtual shared memory can be performed at high speed .

また、本発明の請求項によるマルチプロセッサシステムは、請求項1または2において、前記仮想共有メモリは、自プロセッサ用の送信データが前記演算プロセッサで書込まれる自領域を有すると共に、他プロセッサからの受信データが書込まれる他領域を他プロセッサ毎に専用に有することを特徴とする。 A multiprocessor system according to claim 3 of the present invention is the multiprocessor system according to claim 1 or 2 , wherein the virtual shared memory has its own area in which transmission data for its own processor is written by the arithmetic processor, and from another processor. receiving data of you, comprising other regions to be written to a dedicated every other processor.

また、本発明の請求項によるマルチプロセッサシステムは、半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ外に配備されたデュアルポートの仮想共有メモリと、この仮想共有メモリの第1及び第2のポートに独立の内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、
前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、 前記共通バスインタフェースは、前記演算プロセッサにより各プロセッサを区別するコードが設定される第1の設定手段と、他プロセッサへデータをシリアルに送信する送信手段と、他プロセッサから前記共通バスを介して送信されてきたデータを受信し、他プロセッサ毎に対応して設けられた受信手段と、前記第1の設定手段の設定コードに応じて前記送信手段及び前記受信手段を前記共通バスのシリアル通信線に接続する切替回路と、前記仮想共有メモリの第1及び第2のポートに各々独立に接続された内部バスと、DMAプロセッサとを備え、前記第DMAプロセッサは、前記仮想共有メモリに対するデータの読書きを前記演算プロセッサから独立した内部バスを介して行うことを特徴とする。
According to a fourth aspect of the present invention , there is provided a multiprocessor system comprising an external processor for inputting / outputting data between an arithmetic processor, a built-in memory capable of reading and writing data, and a local bus outside the semiconductor chip. In a multiprocessor system in which a plurality of processors having a bus interface share and exchange data with each other,
A dual-port virtual shared memory provided outside the built-in memory having a storage capacity that can be used for sharing and exchanging the data inside the processor, and first and second ports of the virtual shared memory With a common bus interface connected to an independent internal bus for reading and writing data,
A common bus comprising a bundle of serial communication lines connected to each other processor via the common bus interface is provided outside the processor, and the common bus interface is set with a code for distinguishing each processor by the arithmetic processor First setting means, transmission means for serially transmitting data to other processors, data received from other processors via the common bus, and provided corresponding to each other processor A receiving circuit; a switching circuit for connecting the transmitting unit and the receiving unit to a serial communication line of the common bus according to a setting code of the first setting unit; and first and second ports of the virtual shared memory And an internal bus connected to each other independently, and a DMA processor , wherein the second DMA processor is connected to the virtual shared memory. You wherein performing against or writes data via the internal bus which is independent from the processors.

この構成によれば、各プロセッサの演算プロセッサはデータの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリを設け直接アクセスする必要はなく、同じ半導体チップ上にある仮想共有メモリへの書込み・読出しを行えば良い。これによって、共有メモリへの読書きに起因するプログラム処理効率の低下を防止することができる。According to this configuration, it is not necessary for the arithmetic processors of each processor to share and exchange data, so that it is not necessary to provide a shared memory outside the semiconductor chip as in the prior art and directly access the virtual shared memory on the same semiconductor chip. It is only necessary to write / read to / from. As a result, it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory.

また、本発明の請求項5によるマルチプロセッサシステムは、半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ外に配備されたデュアルポートの仮想共有メモリと、この仮想共有メモリの第1及び第2のポートに独立の内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、前記仮想共有メモリを前記共通バスで接続されたプロセッサの数だけ備え、前記共通バスインタフェースを、送信モード設定時に他プロセッサへデータをシリアルに送信し、受信モード設定時に他プロセッサから前記共通バスを介して送信されてきたデータを受信し、プロセッサ毎に対応して設けられた送受信手段と、前記演算プロセッサにより各プロセッサを区別するコードが設定され、この設定コードに対応する前記送受信手段へ前記送信モード又は受信モードの設定を指示する信号を出力する第2の設定手段とを備えて構成し、前記仮想共有メモリの各々を前記送受信手段に1対1で内部バスで接続したことを特徴とする。 According to a fifth aspect of the present invention, there is provided a multiprocessor system comprising an external processor for inputting / outputting data between an arithmetic processor, a built-in memory capable of reading and writing data, and a local bus outside the semiconductor chip. In a multiprocessor system in which a plurality of processors having a bus interface share and exchange data with each other, the processor has a storage capacity that can be used for sharing and exchanging the data, and the built-in processor A dual-port virtual shared memory arranged outside the memory, and a common bus interface connected to the first and second ports of the virtual shared memory via independent internal buses for reading and writing data, There are as many shared memories as the number of processors connected by the common bus, and the common bus interface has a transmission mode. Transmitting and receiving means provided serially for each processor, receiving data transmitted from the other processor via the common bus at the time of setting the reception mode, A code for distinguishing each processor is set by the processor, and a second setting means for outputting a signal instructing the setting of the transmission mode or the reception mode to the transmission / reception means corresponding to the setting code, you characterized in that each of the virtual shared memory are connected by an internal bus in a one-to-one to said transmitting and receiving means.

の構成によれば、仮想共有メモリに対するデータの読書きを演算プロセッサ側の内部バスと独立して行うので、内部バス使用の競合がないため高速に読書きを行うことができる。 According to the configuration of this, since the reading and writing of data to the virtual shared memory independently of the internal bus of the arithmetic processor side, it is possible to perform reading and writing at a high speed because there is no internal bus contention.

以上説明したように本発明によれば、共有メモリへの読書きに起因するプログラム処理効率の低下を防止することができるという効果がある。   As described above, according to the present invention, there is an effect that it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory.

以下、本発明の実施の形態を、図面を参照して説明する。但し、本明細書中の全図において相互に対応する部分には同一符号を付し、重複部分においては後述での説明を適時省略する。
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。
図1に示すマルチプロセッサシステムが、図12に示した従来のマルチプロセッサシステムと異なる構成点を説明する。
N個のプロセッサ1A〜1Nに、バスへのアクセス用のインタフェース回路である共通バスIF14A〜14Nを設け、これら共通バスIF14A〜14Nにローカルバスとは独立した共通バス92を接続し、更に、共通バスIF14を、演算プロセッサ11、内蔵メモリ122及び外部バスIF13と共に内部バス17A〜17Nで接続した。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, parts corresponding to each other in all the drawings in this specification are denoted by the same reference numerals, and description of the overlapping parts will be omitted as appropriate.
(First embodiment)
FIG. 1 is a block diagram showing a configuration of a multiprocessor system according to the first embodiment of the present invention.
The configuration of the multiprocessor system shown in FIG. 1 that is different from the conventional multiprocessor system shown in FIG. 12 will be described.
N processors 1A to 1N are provided with common bus IFs 14A to 14N, which are interface circuits for accessing the buses, and a common bus 92 independent of the local bus is connected to these common buses IF 14A to 14N. The bus IF 14 is connected to the arithmetic processor 11, the built-in memory 122, and the external bus IF 13 through internal buses 17A to 17N.

また、内蔵メモリ122A〜122Nは、各々が半導体チップによって形成される各プロセッサ1A〜1Nの読書き可能なメモリ(シングルポートメモリ)であるが、この内部に、仮想共有メモリ121A〜121Nと称する記憶領域(単に、領域とも称す)を設けた。また、内蔵メモリ122A〜122Nがシングルポートメモリなので、仮想共有メモリ121A〜121Nへの読書きは、内部バス17A〜17Nからのみ行われる。
なお、必要な場合を除き各構成要素に付した符号のフィックス、例えばプロセッサ1A〜1Nを表すサフィックスA〜N等は省略し、プロセッサ1のように表記する。
The built-in memories 122A to 122N are readable / writable memories (single port memories) of the processors 1A to 1N, each of which is formed by a semiconductor chip. A region (also simply referred to as a region) was provided. Since the built-in memories 122A to 122N are single port memories, reading and writing to the virtual shared memories 121A to 121N are performed only from the internal buses 17A to 17N.
Except where necessary, the reference symbols attached to the constituent elements, for example, suffixes A to N representing the processors 1A to 1N are omitted, and are represented as the processor 1.

共通バス92は、図2(a)に示すようにN本のシリアル通信線921A〜921Nの束である。同図(b)にも示すように、シリアル通信線921Aはプロセッサ1Aのみがブロードキャスト送信出力で他のプロセッサが受信用、シリアル通信線921Bはプロセッサ1Bのみがブロードキャスト送信出力で他のプロセッサが受信用、以下同様に、シリアル通信線921Nはプロセッサ1Nのみがブロードキャスト送信出力で他のプロセッサが受信用として使用される。   The common bus 92 is a bundle of N serial communication lines 921A to 921N as shown in FIG. As shown in FIG. 6B, the serial communication line 921A is broadcast transmission output only by the processor 1A for reception by other processors, and the serial communication line 921B is only broadcast transmission output by the processor 1B for reception by other processors. Similarly, in the serial communication line 921N, only the processor 1N is a broadcast transmission output, and other processors are used for reception.

図3に示すように、共通バスIF14は、プロセッサ番号設定部141と、N個のスイッチ142−1〜142−Nを有する切替回路142と、DMA(Direct Memory Access)プロセッサ145と、送信コントローラ146と、N個の受信コントローラ147−1〜147−Nとを備えて構成されている。
プロセッサ番号設定部141に、演算プロセッサ11によってプロセッサ1A〜1Nを区別するためのコードが設定されると、この設定に応じたSW設定信号143が切替回路142へ出力され、このSW設定信号143に応じたスイッチング状態に各スイッチ142−1〜142−Nが切替わる。
As shown in FIG. 3, the common bus IF 14 includes a processor number setting unit 141, a switching circuit 142 having N switches 142-1 to 142-N, a DMA (Direct Memory Access) processor 145, and a transmission controller 146. And N reception controllers 147-1 to 147 -N.
When a code for distinguishing the processors 1A to 1N is set in the processor number setting unit 141 by the arithmetic processor 11, the SW setting signal 143 corresponding to this setting is output to the switching circuit 142, and the SW setting signal 143 Each switch 142-1 to 142-N is switched to the corresponding switching state.

この図3の例では、送信コントローラ146がスイッチ142−2を介してシリアル通信線921Bに接続され、各受信コントローラ147−1〜147−Nがスイッチ142−1,142−3〜142−Nを介して他のシリアル信号線921A,921C〜921Nに接続される。つまり、図3はプロセッサ1Bの共通バスIF14Bを示している。
DMAプロセッサ145は、予め設定された規則に従って指定された領域からデータを読み出して送信コントローラ146へ格納し、受信コントローラ147−1〜147−Nから受信データを読み出して予め設定された規則に従って指定された領域へ書込む動作を行う。
In the example of FIG. 3, the transmission controller 146 is connected to the serial communication line 921B via the switch 142-2, and the reception controllers 147-1 to 147-N are connected to the switches 142-1, 142-3 to 142-N. To the other serial signal lines 921A and 921C to 921N. That is, FIG. 3 shows the common bus IF 14B of the processor 1B.
The DMA processor 145 reads data from a specified area according to a preset rule, stores it in the transmission controller 146, reads out received data from the reception controllers 147-1 to 147-N, and is specified according to a preset rule. Write to the specified area.

なお、本説明では、説明を簡単とするために、送信コントローラ146を1個としているが、送信コントローラ146が複数個ある場合は、1プロセッサが送信出力用に使用するシリアル通信線921が複数本であっても良い。
仮想共有メモリ121は、プロセッサ1の半導体チップ上に読書き可能なメモリであり、記憶領域の割付けは図4(a)に示すように、各プロセッサ1A〜1Nの専用書込み領域A〜Nが割付けられている。プロセッサ1Aが領域A、プロセッサ1Bが領域B、以下同様に、プロセッサ1Nが領域Nへ書込みを行うように割り付けられている。
In this description, for the sake of simplicity, only one transmission controller 146 is provided. However, when there are a plurality of transmission controllers 146, a plurality of serial communication lines 921 used by one processor for transmission output are provided. It may be.
The virtual shared memory 121 is a readable / writable memory on the semiconductor chip of the processor 1, and the storage areas are allocated by the dedicated write areas A to N of the processors 1A to 1N as shown in FIG. It has been. The processor 1A is assigned to the area A, the processor 1B is assigned to the area B, and so on.

図4(b)に示すように、各仮想共有メモリ121A〜121Nを代表する仮想共有メモリ121Bにおいて、自領域Bは、自プロセッサ1Bの演算プロセッサ11Bがデータを書込み、この書込まれたデータを、自共通バスIF14BのDMAプロセッサ145が内部バス17Bを介して読み出し、これを送信コントローラ146で他のプロセッサ1A,1C〜1Nへ送信するために用いる記憶領域である。また、領域Bは、この記憶領域の先頭から最後尾のアドレスであるオフセットアドレス00〜xxで指定され、この指定アドレスの領域に送信データが書き込まれて格納されるようになっている。   As shown in FIG. 4B, in the virtual shared memory 121B representing each of the virtual shared memories 121A to 121N, in the own area B, the arithmetic processor 11B of the own processor 1B writes the data, and the written data is This is a storage area used for the DMA processor 145 of the own common bus IF 14B to read via the internal bus 17B and transmit this to the other processors 1A, 1C to 1N by the transmission controller 146. The area B is designated by offset addresses 00 to xx that are addresses from the beginning to the end of the storage area, and transmission data is written and stored in the area of the designated address.

例えば演算プロセッサ11Bは、仮想共有メモリ121Bの自領域Bの各オフセットアドレス00〜xxの領域に図5(a)に示す通信フレーム信号100を形成するための各送信データを書き込む。この際、1つの通信フレーム信号100は、各オフセットアドレス00〜xxの領域に格納されたデータ(図にはオフセットアドレス00〜xxのデータと記載)を備えて成る。   For example, the arithmetic processor 11B writes each transmission data for forming the communication frame signal 100 shown in FIG. 5A in the area of each offset address 00 to xx of the own area B of the virtual shared memory 121B. At this time, one communication frame signal 100 includes data stored in the areas of the offset addresses 00 to xx (denoted as data of offset addresses 00 to xx in the figure).

各データを仮想共有メモリ121の自領域における各オフセットアドレス00〜xxの領域に書き込む場合、同一オフセットアドレス(例えば00)の領域への図5(b)に示す時刻t1とt2とのデータ書き込み間隔(t1−t2と表現)が通信周期時間TPRDより長くなければならない。但し、その書き込み間隔t1−t2は一定ではないので、最短の書き込み間隔が通信周期時間TPRDより長くなければならないとする。 When writing each data in the area of each offset address 00 to xx in its own area of the virtual shared memory 121, the data writing interval between the times t1 and t2 shown in FIG. 5B to the area of the same offset address (for example, 00) (Expressed as t1-t2) must be longer than the communication cycle time T PRD . However, since the writing interval t1-t2 is not constant, it is assumed that the shortest writing interval must be longer than the communication cycle time T PRD .

ここで、時刻t1でデータD1が書き込まれ、t2でデータD2が書き込まれるとする。この場合に時刻t1とt2との時間間隔が通信周期時間TPRDより長い場合、時刻t1で書き込まれたデータD1が当該時刻t1を含む通信周期時間TPRDの通信フレーム信号100で送信され、次の時刻t2で書き込まれたデータD2が当該時刻t2を含む通信周期時間TPRDの通信フレーム信号100で正常に送信される。 Here, it is assumed that data D1 is written at time t1, and data D2 is written at t2. In this case, when the time interval between the times t1 and t2 is longer than the communication cycle time T PRD , the data D1 written at the time t1 is transmitted by the communication frame signal 100 of the communication cycle time T PRD including the time t1. The data D2 written at time t2 is normally transmitted by the communication frame signal 100 of the communication cycle time T PRD including the time t2.

一方、時刻t1とt2との時間間隔が通信周期時間TPRDより短い場合、時刻t1でオフセットアドレス00の領域にデータD1を書き込んでも、同一通信周期時間TPRD中で次の時刻t2でのデータD2の書込みが、同一オフセットアドレス00の領域に対して行われるので、データD1にD2が上書きされることになる。この場合、本来送信すべきデータD1が送信でき無くなる。 On the other hand, if the time interval between the time t1 and t2 is shorter than the communication cycle time T PRD, also write data D1 in the region of the offset address 00 at time t1, data in the same communication cycle time T PRD at the next time t2 Since the writing of D2 is performed on the area of the same offset address 00, the data D1 is overwritten with D2. In this case, data D1 that should originally be transmitted cannot be transmitted.

なお、仮想共有メモリ121Bの何れかのオフセットアドレス00〜xxの領域にはデータが格納されないこともあるが、この場合は通信フレーム信号100の該当箇所にXX等の不定データが挿入されるようになっている。
また、仮想共有メモリ121Bの他の領域A,C〜Nは、自プロセッサ1Bの受信コントローラ147−1〜147−Nで、他のプロセッサ1A,1C〜1Nからブロードキャスト送信されて来たデータを受信し、この受信データを自DMAプロセッサ145が内部バス17Bを介して読み出し、これを自仮想共有メモリ121の指定領域に書き込むための記憶領域である。
Note that data may not be stored in any of the offset addresses 00 to xx in the virtual shared memory 121B. In this case, indefinite data such as XX is inserted in the corresponding portion of the communication frame signal 100. It has become.
In the other areas A and C to N of the virtual shared memory 121B, the reception controllers 147-1 to 147-N of the own processor 1B receive the data broadcast from the other processors 1A and 1C to 1N. This received data is a storage area for the own DMA processor 145 to read out via the internal bus 17B and write it to the designated area of the own virtual shared memory 121.

更に、全ての領域A〜Nは、自プロセッサ1Bの演算プロセッサ11Bが書込まれたデータを読出し可能な領域となっている。
このような構成において、例えばプロセッサ1Aの仮想共有メモリ121Aから通信フレーム信号100をブロードキャスト送信すれば、仮想共有メモリ121Aの自領域データが共通バス92のシリアル通信線921Aを介した通信により、他のプロセッサ1B〜1Nの仮想共有メモリ121B〜121N内のプロセッサ1A用領域に複写される。
Further, all the areas A to N are areas from which data written by the arithmetic processor 11B of the processor 1B can be read.
In such a configuration, for example, if the communication frame signal 100 is broadcasted from the virtual shared memory 121A of the processor 1A, the local area data of the virtual shared memory 121A is transmitted through the communication via the serial communication line 921A of the common bus 92. It is copied to the area for the processor 1A in the virtual shared memories 121B to 121N of the processors 1B to 1N.

図5(b)の通信フレーム100の時間的配置のタイミングチャートに示すように、プロセッサ1x内の仮想共有メモリ121xの自領域データも、時間的に同時並列に共通バス92のシリアル通信線921xを介した通信により、他プロセッサの仮想共有メモリ121のプロセッサ1x用領域に複写される。
自演算プロセッサ11の仮想共有メモリ121の自領域の各オフセットアドレス00〜xxへデータを書き込む間隔(この間隔は一定ではないので、最短の間隔)を、通信周期時間TPRDより長くしてあるので、通信フレーム信号100で他の演算プロセッサ11へ送信するデータを各オフセットアドレス00〜xxの領域に適正に書き込んだのち送信することができる。
As shown in the timing chart of the temporal arrangement of the communication frame 100 in FIG. 5B, the local area data of the virtual shared memory 121x in the processor 1x is also connected to the serial communication line 921x of the common bus 92 in parallel in time. Is copied to the processor 1x area of the virtual shared memory 121 of another processor.
Since the interval for writing data to each offset address 00 to xx in the own area of the virtual shared memory 121 of the own processor 11 (this interval is not constant, the shortest interval) is longer than the communication cycle time T PRD . The data to be transmitted to the other arithmetic processor 11 with the communication frame signal 100 can be transmitted after properly written in the areas of the respective offset addresses 00 to xx.

また、この送信とは独立に、自プロセッサ11の受信コントローラ147−1〜147−Nで、他のプロセッサ11からブロードキャスト送信されて来たデータを受信し、これを内部バス17を介して自DMAプロセッサ145が読み出し、自仮想共有メモリ121の自領域以外の指定領域に書き込むようにした。
よって、各プロセッサ1の演算プロセッサ11はデータの共有・交換を行うために、図12に示した従来技術のような半導体チップ外部に共有メモリ2を設け直接アクセスする必要はなく、同じ半導体チップ上にある仮想共有メモリ121への書込み・読出しを行えば良い。これによって、共有メモリ2への読書きに起因するプログラム処理効率の低下を防止することができる。
Independent of this transmission, the reception controllers 147-1 to 147 -N of the own processor 11 receive the data broadcasted from the other processors 11, and receive this data via the internal bus 17 through the own DMA. The processor 145 reads and writes to a designated area other than the own area of the own virtual shared memory 121.
Therefore, the arithmetic processor 11 of each processor 1 does not need to provide the shared memory 2 outside the semiconductor chip as in the prior art shown in FIG. 12 and directly access it in order to share and exchange data. What is necessary is just to write / read to a certain virtual shared memory 121. As a result, it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory 2.

次に、このような第1の実施の形態に基づく具体的な実施例を説明する。
(第1の実施の形態の実施例1)
本実施例1のマルチプロセッサシステムの構成は、上記第1の実施の形態で説明したマルチプロセッサシステムと同構成である。本特徴である共通バスIF14A〜14Nを、プロセッサ1Aの共通バスIF14Aを代表してその動作を説明する。
Next, a specific example based on the first embodiment will be described.
(Example 1 of the first embodiment)
The configuration of the multiprocessor system according to the first embodiment is the same as that of the multiprocessor system described in the first embodiment. The operation of the common bus IFs 14A to 14N, which is this feature, will be described as a representative of the common bus IF 14A of the processor 1A.

図3を参照し、プロセッサ番号設定部141Aにプロセッサ1Aを示すコード1Aを設定すると、これに応じたSW設定信号143によって切替回路142のスイッチが、送信コントローラ146を破線で示すように共通バス92のシリアル通信線921Aに接続し、受信コントローラ147−2を破線で示すようにシリアル通信線921Bに接続し、受信コントローラ147−3をシリアル通信線921Cに接続し、以下同様に、受信コントローラ147−Nをシリアル通信線921Nに接続するスイッチング動作を行う。   Referring to FIG. 3, when the code 1A indicating the processor 1A is set in the processor number setting unit 141A, the switch of the switching circuit 142 is switched by the SW setting signal 143 corresponding thereto, and the transmission controller 146 is indicated by the broken line as shown by the broken line 92. Connected to the serial communication line 921A, the reception controller 147-2 is connected to the serial communication line 921B as indicated by a broken line, the reception controller 147-3 is connected to the serial communication line 921C, and so on. A switching operation for connecting N to the serial communication line 921N is performed.

これによって、共通バス92とプロセッサ1Aの送受信の関係が図2(b)の表の状態となる。
この状態において、共通バスIF14AのDMAプロセッサ145は、仮想共有メモリ121Aの自領域Aからデータを読み出して送信コントローラ146へ書込み、送信コントローラ146はシリアル通信線921Aヘブロードキャスト送信を行う。
また、同DMAプロセッサ145は、受信コントローラ147−2の受信データを仮想共有メモリ121Aの領域Bへ書込み、受信コントローラ147−3の受信データを仮想共有メモリ121Aの領域Cへ書込み、以下同様に、受信コントローラ147−Nの受信データを仮想共有メモリ121Aの領域Nへ書込む。
As a result, the transmission / reception relationship between the common bus 92 and the processor 1A is as shown in the table of FIG.
In this state, the DMA processor 145 of the common bus IF 14A reads data from its own area A of the virtual shared memory 121A and writes it to the transmission controller 146, and the transmission controller 146 performs broadcast transmission to the serial communication line 921A.
The DMA processor 145 also writes the reception data of the reception controller 147-2 to the area B of the virtual shared memory 121A, writes the reception data of the reception controller 147-3 to the area C of the virtual shared memory 121A, and so on. The reception data of the reception controller 147-N is written into the area N of the virtual shared memory 121A.

また、同DMAプロセッサ145は、送信コントローラ146に対して予め設定された規則の動作として、図4(b)及び図5に示すように、通信フレーム信号100の第1の送信データとして自領域Aのオフセットアドレス00のデータ、第2の送信データとして自領域Aのオフセットアドレス01のデータ、以下同様に+1ずつインクリメントして最後に、第xの送信データとして自領域Aのオフセットアドレスxxのデータを送信するための動作を行う。   In addition, the DMA processor 145 operates as its own region A as the first transmission data of the communication frame signal 100 as shown in FIG. 4B and FIG. Offset address 00 data, second transmission data as the offset address 01 data of the own area A, and similarly incremented by +1, and finally the data of the offset address xx of the own area A as the xth transmission data. Perform the action to send.

また、同DMAプロセッサ145は、受信コントローラ147−2に対して予め設定された規則の動作として、図4(b)及び図5に示すように、通信フレーム信号100の第1の受信データを領域Bのオフセットアドレス00へ格納、第2の受信データを領域Bのオフセットアドレス01へ格納、以下同様に+1ずつインクリメントして最後に、第xの受信データを領域Bのオフセットアドレスxxへ格納する動作を行う。   Further, the DMA processor 145 sets the first received data of the communication frame signal 100 as a region as shown in FIG. 4B and FIG. 5 as an operation of a rule preset for the reception controller 147-2. Store to offset address 00 of B, store second received data to offset address 01 of area B, and similarly increment +1 and finally store xth received data to offset address xx of area B I do.

これは、受信コントローラ147−3〜147−Nに対しても格納領域は変わるが、通信フレーム信号100のデータ順番とオフセットアドレスの変化規則は同様である。
但し、上記のように通信フレーム信号100のデータ順番に対するオフセットアドレスの変化規則は、インクリメントだったが、デクリメントでも良く、その他の規則であっても良い。
This is because the storage area of the reception controllers 147-3 to 147 -N changes, but the data order of the communication frame signal 100 and the change rule of the offset address are the same.
However, although the change rule of the offset address with respect to the data order of the communication frame signal 100 is increment as described above, it may be decremented or other rules.

このように、各プロセッサ1A〜1Nが共通バス92のシリアル通信線921A〜921Nを介して、図5に示すように同時並列に通信を行うことで、例えば演算プロセッサ11Aは自プロセッサ内の仮想共有メモリ121の自領域Aへのデータの書込みと、他プロセッサ用の領域B〜Nからのデータの読出しとを行うことができるので、他のプロセッサ1B〜1Nとデータの共有・交換を行うことができる。   As described above, the processors 1A to 1N perform simultaneous and parallel communication via the serial communication lines 921A to 921N of the common bus 92 as shown in FIG. Since data can be written to the local area A of the memory 121 and data can be read from the areas B to N for other processors, data can be shared and exchanged with the other processors 1B to 1N. it can.

(第1の実施の形態の実施例2)
本実施例2のマルチプロセッサシステムは、図6に示すように、共通バスIF14が、プロセッサ番号設定部149と、DMAプロセッサ145と、送信/受信コントローラ148−1〜148−Nとを備えて構成されている。つまり、図3の送信コントローラ146及び受信コントローラ147−1〜147−Nに代え、送信/受信コントローラ148−1〜148−Nを用いた。
(Example 2 of the first embodiment)
In the multiprocessor system of the second embodiment, as shown in FIG. 6, the common bus IF 14 includes a processor number setting unit 149, a DMA processor 145, and transmission / reception controllers 148-1 to 148-N. Has been. That is, the transmission / reception controllers 148-1 to 148-N are used instead of the transmission controller 146 and the reception controllers 147-1 to 147-N in FIG.

プロセッサ番号設定部149は、演算プロセッサ11によってプロセッサ1A〜1Nを区別するためのコードが設定され、この設定コードに応じた送信/受信コントローラ148−1〜148−Nへ、送信又は受信モード設定する動作モード設定信号144を出力する。
送信/受信コントローラ148−1〜148−Nは、動作モード設定信号144によって設定された送信又は受信モードに応じて送信又は受信動作を行うコントローラであり、送信/受信コントローラ148−1がシリアル通信線921Aに接続され、送信/受信コントローラ148−2がシリアル通信線921Bに接続され、以下同様に、送信/受信コントローラ148−Nがシリアル通信線921Nに接続されている。
The processor number setting unit 149 is set with a code for distinguishing the processors 1A to 1N by the arithmetic processor 11, and sets the transmission or reception mode to the transmission / reception controllers 148-1 to 148-N according to the setting code. An operation mode setting signal 144 is output.
The transmission / reception controllers 148-1 to 148-N are controllers that perform transmission or reception operations according to the transmission or reception mode set by the operation mode setting signal 144. The transmission / reception controller 148-1 is a serial communication line. The transmission / reception controller 148-2 is connected to the serial communication line 921B, and the transmission / reception controller 148-N is similarly connected to the serial communication line 921N.

このような実施例2の共通バスIF14は、次に説明するように動作する。但し、プロセッサ1Aの共通バスIF14Aを代表して説明する。
プロセッサ番号設定部149に、例えばプロセッサ1Aを示すコードが設定されたとすると、これに応じた動作モード設定信号144によって送信/受信コントローラ148−1が送信モード、その他の送信/受信コントローラ148−2〜148−Nが受信モードに設定される。この場合、共通バス92とプロセッサ1Aの送受信の関係が図3に示す表の状態となる。
The common bus IF 14 according to the second embodiment operates as described below. However, the common bus IF 14A of the processor 1A will be described as a representative.
If, for example, a code indicating the processor 1A is set in the processor number setting unit 149, the transmission / reception controller 148-1 is set in the transmission mode by the operation mode setting signal 144 corresponding thereto, and the other transmission / reception controllers 148-2˜ 148-N is set to the reception mode. In this case, the transmission / reception relationship between the common bus 92 and the processor 1A is as shown in the table of FIG.

DMAプロセッサ145は、仮想共有メモリ121Aの自領域Aからデータを読み出して送信/受信コントローラ148−1へ書込み、送信/受信コントローラ148−1はシリアル通信線921Aヘブロードキャスト送信を行う。
また、同DMAプロセッサ145は、送信/受信コントローラ148−2の受信データを仮想共有メモリ121の他プロセッサ1B用の領域Bへ書込み、送信/受信コントローラ148−3の受信データを仮想共有メモリ121の他プロセッサ1C用の領域Cへ書込み、以下同様に、送信/受信コントローラ148−Nの受信データを仮想共有メモリ121の他プロセッサ1N用の領域Nへ書込む。
The DMA processor 145 reads data from its own area A of the virtual shared memory 121A and writes it to the transmission / reception controller 148-1. The transmission / reception controller 148-1 performs broadcast transmission to the serial communication line 921A.
The DMA processor 145 also writes the received data of the transmission / reception controller 148-2 to the area B for the processor 1 B in addition to the virtual shared memory 121, and writes the received data of the transmission / reception controller 148-3 in the virtual shared memory 121. Write to the area C for the other processor 1C, and similarly write the received data of the transmission / reception controller 148-N to the area N for the other processor 1N of the virtual shared memory 121.

また、同DMAプロセッサ145は、送信/受信コントローラ148−1〜148−Nに対して予め設定された規則の動作として、図4(b)及び図5に示すように、通信フレーム信号100の第1の受信データを領域Bのオフセットアドレス00へ格納、第2の受信データを領域Bのオフセットアドレス01へ格納、以下同様に+1ずつインクリメントして最後に、第xの受信データを領域Bのオフセットアドレスxxへ格納する動作を行う。   In addition, the DMA processor 145 operates as a rule operation preset for the transmission / reception controllers 148-1 to 148-N, as shown in FIG. 4B and FIG. 1 received data is stored in the offset address 00 of the area B, the second received data is stored in the offset address 01 of the area B, and similarly, incremented by +1 and finally the xth received data is offset in the area B. The operation of storing in the address xx is performed.

但し、上記のように通信フレーム信号100のデータ順番に対するオフセットアドレスの変化規則は、インクリメントだったが、デクリメントでも良く、その他の規則であっても良い。
このように、各プロセッサ1A〜1Nが共通バス92のシリアル通信線921A〜921Nを介して、図5に示すように同時並列に通信を行うことで、例えば演算プロセッサ11Aは自プロセッサ内の仮想共有メモリ121の自領域Aへのデータの書込みと、他プロセッサ用の領域B〜Nからのデータの読出しとを行うことができるので、他のプロセッサ1B〜1Nとデータの共有・交換を行うことができる。
However, although the change rule of the offset address with respect to the data order of the communication frame signal 100 is increment as described above, it may be decremented or other rules.
As described above, the processors 1A to 1N perform simultaneous and parallel communication via the serial communication lines 921A to 921N of the common bus 92 as shown in FIG. Since data can be written to the local area A of the memory 121 and data can be read from the areas B to N for other processors, data can be shared and exchanged with the other processors 1B to 1N. it can.

(第2の実施の形態)
図7は、本発明の第2の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。
図7に示すマルチプロセッサシステムが、図1に示した第1の実施の形態のマルチプロセッサシステムと異なる構成点を説明する。デュアルポートメモリである読書き可能な仮想共有メモリ22A〜22Nをプロセッサ1A〜1Nの半導体チップ上に備え、仮想共有メモリ22A〜22Nの一方のポートを内部バス17A〜17Nに接続し、他方のポートを内部バス18A〜18Nを介して共通バスIF15A〜15Nに接続した。また、内蔵メモリ122A〜122Nは、図1のように仮想共有メモリ121A〜121Nを備えない構成となっている。
(Second Embodiment)
FIG. 7 is a block diagram showing a configuration of a multiprocessor system according to the second embodiment of the present invention.
The configuration of the multiprocessor system shown in FIG. 7 that is different from the multiprocessor system of the first embodiment shown in FIG. 1 will be described. Dual read / write virtual shared memories 22A to 22N are provided on the semiconductor chips of the processors 1A to 1N, one port of the virtual shared memories 22A to 22N is connected to the internal buses 17A to 17N, and the other port Are connected to the common buses IF15A to 15N via the internal buses 18A to 18N. The built-in memories 122A to 122N are configured not to include the virtual shared memories 121A to 121N as shown in FIG.

仮想共有メモリ22の内部割付とその役割は、図4に示したものと同様である。また、シングルポートの仮想共有メモリ121との違いは、演算プロセッサ11から仮想共有メモリ22への読書きは内部バス17側のポートから行い、共通バスIF15からの読書きは内部バス18側のポートから行う。これによって、共通バスIF15が行う仮想共有メモリ22への読書き動作が、演算プロセッサ11の内部バス17を介して行う読書き動作に影響を及ぼさないようにしてある。   The internal allocation of virtual shared memory 22 and its role are the same as those shown in FIG. The difference from the single-port virtual shared memory 121 is that reading / writing from the arithmetic processor 11 to the virtual shared memory 22 is performed from the port on the internal bus 17 side, and reading / writing from the common bus IF 15 is performed on the port on the internal bus 18 side. To do. As a result, the read / write operation to the virtual shared memory 22 performed by the common bus IF 15 does not affect the read / write operation performed via the internal bus 17 of the arithmetic processor 11.

図8に示すように、共通バスIF15は、プロセッサ番号設定部151と、N個のスイッチ152−1〜152−Nを有する切替回路152と、DMA(Direct Memory Access)プロセッサ155と、送信コントローラ156と、N個の受信コントローラ157−1〜157−Nとを備えて構成されている。
プロセッサ番号設定部151は、内部バス17に接続され、この内部バス17を介した演算プロセッサ11によるプロセッサ1A〜1Nを区別するためのコードが設定されると、この設定に応じたSW設定信号153を切替回路152へ出力する。切替回路152は、そのSW設定信号153に応じたスイッチング状態に各スイッチ152−1〜152−Nが切替わる。
As shown in FIG. 8, the common bus IF 15 includes a processor number setting unit 151, a switching circuit 152 having N switches 152-1 to 152-N, a DMA (Direct Memory Access) processor 155, and a transmission controller 156. And N reception controllers 157-1 to 157-N.
The processor number setting unit 151 is connected to the internal bus 17. When a code for distinguishing the processors 1A to 1N by the arithmetic processor 11 via the internal bus 17 is set, the SW setting signal 153 corresponding to this setting is set. Is output to the switching circuit 152. In the switching circuit 152, the switches 152-1 to 152-N are switched to a switching state according to the SW setting signal 153.

DMAプロセッサ155は、図1のDMAプロセッサ145と異なり、2つのポートを備え、一方が内部バス17に接続され、他方が内部バス18を介して送信コントローラ156及び受信コントローラ157−1〜157−Nに接続されている。これらの接続が図1のものと異なる。
即ち、共通バスIF15が共通バスIF14と異なる点は、プロセッサ番号設定部151及びDMAプロセッサ155の通信フレーム信号100のデータ順番に対するオフセットアドレス00〜xxの変化規則の設定は、演算プロセッサ11が内部バス17を介して行う。しかし、DMAプロセッサ155による送信コントローラ156並びに受信コントローラ157−1〜157−Nと、仮想共有メモリ22との間の通信データの読書き動作は内部バス18を介して行う。
Unlike the DMA processor 145 of FIG. 1, the DMA processor 155 includes two ports, one connected to the internal bus 17 and the other via the internal bus 18 to the transmission controller 156 and the reception controllers 157-1 to 157-N. It is connected to the. These connections are different from those in FIG.
That is, the common bus IF 15 differs from the common bus IF 14 in that the processor 11 sets the change rule of the offset address 00 to xx with respect to the data order of the communication frame signal 100 of the processor number setting unit 151 and the DMA processor 155 when the arithmetic processor 11 17 through. However, the communication data read / write operation between the transmission controller 156 and the reception controllers 157-1 to 157-N and the virtual shared memory 22 by the DMA processor 155 is performed via the internal bus 18.

これによって、例えばプロセッサ1Bが、共通バス92のシリアル通信線921A〜921Nを介して図5(b)の通信フレーム信号100の時間的配置に示すように同時並列に通信を行うことで、自プロセッサ1B内の仮想共有メモリ22の自領域Bへのデータ書込みと他領域A,C〜Nからのデータ読出しによって、他のプロセッサ1A,C〜Nとデータの共有・交換を行うことができる。   As a result, for example, the processor 1B performs simultaneous and parallel communication via the serial communication lines 921A to 921N of the common bus 92 as shown in the temporal arrangement of the communication frame signal 100 in FIG. Data can be shared and exchanged with the other processors 1A, C to N by writing data to the own area B of the virtual shared memory 22 in 1B and reading data from the other areas A and C to N.

よって、各プロセッサ1の演算プロセッサ11はデータの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリ2を設け直接アクセスする必要はなく、同じ半導体チップ上にある仮想共有メモリ22への書込み・読出しを行えば良い。これによって、共有メモリ2への読書きに起因するプログラム処理効率の低下を防止することができる。   Therefore, the arithmetic processor 11 of each processor 1 does not need to provide the shared memory 2 outside the semiconductor chip as in the prior art and directly access it in order to share and exchange data, but the virtual shared memory 22 on the same semiconductor chip. It is only necessary to write / read to / from. As a result, it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory 2.

(第3の実施の形態)
図9は、本発明の第3の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。
図9に示すマルチプロセッサシステムが、図7に示した第2の実施の形態のマルチプロセッサシステムと異なる点は、仮想共有メモリ22A〜22Nに代え、仮想共有メモリグループ部23A〜23Nを備え、この仮想共有メモリグループ部23A〜23Nに内部バス群19A〜19Nで接続された共通バスIF16A〜16Nとしたことにある。
図10に、共通バスIF16と仮想共有メモリグループ部23の構成を示す。
(Third embodiment)
FIG. 9 is a block diagram showing a configuration of a multiprocessor system according to the third embodiment of the present invention.
The multiprocessor system shown in FIG. 9 is different from the multiprocessor system of the second embodiment shown in FIG. 7 in that virtual shared memory groups 23A to 23N are provided instead of the virtual shared memories 22A to 22N. The common bus IFs 16A to 16N are connected to the virtual shared memory group units 23A to 23N via the internal bus groups 19A to 19N.
FIG. 10 shows the configuration of the common bus IF 16 and the virtual shared memory group unit 23.

共通バスIF16は、内部バス17に接続されたプロセッサ番号設定部161と、送信/受信コントローラ169−1〜169−Nとを備えて構成されている。プロセッサ番号設定部161は、内部バス17を介した演算プロセッサ11によるプロセッサ1A〜1Nを区別するためのコードが設定された際に、これに応じたSW設定信号164を送信/受信コントローラ169−1〜169−Nへ出力する。
各送信/受信コントローラ169−1〜169−Nは、図11に示すように、DMAプロセッサ1691及び送受信シリパラ変換部1692を備えて構成されている。
The common bus IF 16 includes a processor number setting unit 161 connected to the internal bus 17 and transmission / reception controllers 169-1 to 169-N. When a code for distinguishing the processors 1A to 1N by the arithmetic processor 11 via the internal bus 17 is set, the processor number setting unit 161 transmits the SW setting signal 164 corresponding thereto to the transmission / reception controller 169-1. To 169-N.
As shown in FIG. 11, each of the transmission / reception controllers 169-1 to 169-N includes a DMA processor 1691 and a transmission / reception serial / parallel conversion unit 1692.

仮想共有メモリグループ部23A〜23Nは、各プロセッサ1A〜1Nに対応したデュアルポートメモリである領域A用メモリ231−1〜領域N用メモリ231−Nを備え、領域A用メモリ231−1の一方のポートが送信/受信コントローラ169−1に、領域B用メモリ231−2の一方のポートが送信/受信コントローラ169−2に、領域C用メモリ231−3の一方のポートが送信/受信コントローラ169−3に、…、領域N用メモリ231−Nの一方のポートが送信/受信コントローラ169−Nに接続され、各メモリ231−1〜231Nの他方のポートが内部バス17に接続されている。   The virtual shared memory group units 23A to 23N include area A memory 231-1 to area N memory 231-N, which are dual port memories corresponding to the processors 1A to 1N, and one of the area A memories 231-1. Of the area B memory 231-2 is connected to the transmission / reception controller 169-2, and one port of the area C memory 231-3 is connected to the transmission / reception controller 169. -3,..., One port of the area N memory 231 -N is connected to the transmission / reception controller 169 -N, and the other port of each of the memories 231-1 to 231 N is connected to the internal bus 17.

上記第2の実施の形態との違いは、共通バスIF16の送信/受信コントローラ169−1〜169−Nと領域A〜N用メモリ231−1〜231−Nとが個別の内部バス19で接続されているため、送信/受信コントローラ169−1〜169−N同士のデュアルポートメモリヘのアクセス競合がない点である。
従って、各送信/受信コントローラ169−1〜169−Nと各領域A〜N用メモリ231−1〜231−Nとの間の通信データの遣り取りは、個々のDMAプロセッサ1691が内部バス19を介して行う。また、各DMAプロセッサ1691の制御で領域A〜N用メモリ231−1〜231−Nに読書きされる通信データは、送受信シリパラ変換部1692で共通バス92への送信時にパラレルデータからシリアルデータに変換され、共通バス92からの受信時にシリアルデータからパラレルデータに変換される。
The difference from the second embodiment is that the transmission / reception controllers 169-1 to 169-N of the common bus IF 16 and the areas A to N memories 231-1 to 231-N are connected by individual internal buses 19. Therefore, there is no contention for access to the dual port memory between the transmission / reception controllers 169-1 to 169-N.
Therefore, each DMA processor 1691 exchanges communication data between the transmission / reception controllers 169-1 to 169-N and the areas A to N memories 231-1 to 231-N via the internal bus 19. Do it. The communication data read / written to / from the areas A to N memories 231-1 to 231-N under the control of each DMA processor 1691 is changed from parallel data to serial data at the time of transmission to the common bus 92 by the transmission / reception serial / parallel conversion unit 1692. The data is converted and converted from serial data to parallel data when received from the common bus 92.

このような構成において、共通バス92のシリアル通信線921A〜921Nは、図5(b)の通信フレーム信号100の時間的配置に示すように同時並列に通信を行うことで、自プロセッサ内の仮想共有メモリグループ部23A〜23Nの自領域へのデータ書込みと他領域からのデータ読出しで、他のプロセッサとデータの共有・交換を行うことができる。
よって、各プロセッサ1の演算プロセッサ11はデータの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリ2を設け直接アクセスする必要はなく、同じ半導体チップ上にある仮想共有メモリグループ部23A〜23Nへの書込み・読出しを行えば良い。
In such a configuration, the serial communication lines 921A to 921N of the common bus 92 communicate with each other in parallel as shown in the temporal arrangement of the communication frame signal 100 in FIG. Data can be shared and exchanged with other processors by writing data to the local areas of the shared memory group units 23A to 23N and reading data from other areas.
Therefore, it is not necessary for the arithmetic processor 11 of each processor 1 to share and exchange data, so that it is not necessary to provide the shared memory 2 outside the semiconductor chip and directly access it as in the prior art, but a virtual shared memory group on the same semiconductor chip. What is necessary is just to write / read to the units 23A to 23N.

以上の実施の形態の効果を総括すると、一般的に、同半導体チップ上にある内蔵メモリ対する読込み・書込み動作に要する時間は、外部バスを介して外部の半導体チップ(共有メモリ2)に対する読込み・書込み動作に要する時問よりも遥かに短い。従って、共有メモリ2への読書きに起因するプログラム処理効率の低下を防止することができる。   Summarizing the effects of the above-described embodiments, generally, the time required for the read / write operation with respect to the built-in memory on the same semiconductor chip is the time required for reading / writing to the external semiconductor chip (shared memory 2) via the external bus. It is much shorter than the time required for the write operation. Accordingly, it is possible to prevent a decrease in program processing efficiency due to reading / writing to the shared memory 2.

本発明の第1の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。1 is a block diagram showing a configuration of a multiprocessor system according to a first embodiment of the present invention. (a)は本実施の形態に係るマルチプロセッサシステムの各プロセッサ接続用の共通バスの構成、(b)は共通バスを構成する各シリアル通信線上の送受信タイミングを示す図である。(A) is a configuration of a common bus for connecting each processor of the multiprocessor system according to the present embodiment, and (b) is a diagram showing transmission / reception timing on each serial communication line constituting the common bus. 第1の実施の形態に係るマルチプロセッサシステムにおける共通バスIFの構成を示すブロック図である。2 is a block diagram showing a configuration of a common bus IF in the multiprocessor system according to the first embodiment. FIG. (a)本実施の形態に係るマルチプロセッサシステムの仮想共有メモリの記憶領域の割付け図、(b)は仮想共有メモリの各記憶領域へのデータの読書き動作の説明図である。(A) Allocation diagram of storage area of virtual shared memory of multiprocessor system according to this embodiment, (b) is an explanatory diagram of a data read / write operation to each storage area of the virtual shared memory. (a)は本実施の形態に係るマルチプロセッサシステムの共通バスに送信される通信フレーム信号のフレーム構成、(b)は共通バスを構成する各シリアル通信線上の通信フレーム信号の時間的配置を示す図である。(A) is a frame configuration of a communication frame signal transmitted to the common bus of the multiprocessor system according to this embodiment, and (b) is a temporal arrangement of communication frame signals on each serial communication line constituting the common bus. FIG. 第1の実施の形態に係る実施例2のマルチプロセッサシステムにおける共通バスIFの構成を示す図である。It is a figure which shows the structure of common bus IF in the multiprocessor system of Example 2 which concerns on 1st Embodiment. 本発明の第2の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the multiprocessor system which concerns on the 2nd Embodiment of this invention. 第2の実施の形態に係るマルチプロセッサシステムにおける共通バスIFの構成を示すブロック図である。It is a block diagram which shows the structure of common bus IF in the multiprocessor system which concerns on 2nd Embodiment. 本発明の第3の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the multiprocessor system which concerns on the 3rd Embodiment of this invention. 第3の実施の形態に係るマルチプロセッサシステムにおける共通バスIFの構成を示すブロック図である。It is a block diagram which shows the structure of common bus IF in the multiprocessor system which concerns on 3rd Embodiment. 第3の実施の形態に係るマルチプロセッサシステムにおける共通バスIFの送信/受信コントローラの構成を示すブロック図である。It is a block diagram which shows the structure of the transmission / reception controller of the common bus IF in the multiprocessor system which concerns on 3rd Embodiment. 従来のマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the conventional multiprocessor system.

符号の説明Explanation of symbols

1A〜1N プロセッサ
2 共有メモリ
4A〜4N ローカルバス
12A〜12N,122A〜122N 内蔵メモリ
13A〜13N 外部バスIF
145,155,1691 DMAプロセッサ
14A〜14N,15A〜15N,16A〜16N 共通バスIF
16A〜16N,121A〜121N 仮想共有メモリ
17A〜17N,18A〜18N,19A〜19N 内部バス
23A〜23N 仮想共有メモリグループ部
231−1〜231−N 領域A〜N用メモリ
42A〜42N ローカルメモリ
43A〜43N ローカルI/O
92 共通バス
142,152 切替回路
142−1〜142−N,152−1〜152−N スイッチ
146,156 送信コントローラ
147−1〜147−N,157−1〜157−N 受信コントローラ
148−1〜148−N,169−1〜169−N 送信/受信コントローラ
921A〜921N シリアル通信線
1692 送受信シリパラ変換部
1A to 1N Processor 2 Shared memory 4A to 4N Local bus 12A to 12N, 122A to 122N Internal memory 13A to 13N External bus IF
145, 155, 1691 DMA processor 14A-14N, 15A-15N, 16A-16N Common bus IF
16A to 16N, 121A to 121N Virtual shared memory 17A to 17N, 18A to 18N, 19A to 19N Internal bus 23A to 23N Virtual shared memory group part 231-1 to 231-N Area A to N memory 42A to 42N Local memory 43A ~ 43N Local I / O
92 Common Bus 142, 152 Switching Circuit 142-1 to 142-N, 152-1 to 152-N Switch 146, 156 Transmission Controller 147-1 to 147-N, 157-1 to 157-N Reception Controller 148-1 148-N, 169-1 to 169-N transmission / reception controller 921A to 921N serial communication line 1692 transmission / reception serial-parallel converter

Claims (5)

半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、この仮想共有メモリに内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、
前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、
前記共通バスインタフェースは、前記演算プロセッサにより各プロセッサを区別するコードが設定される第1の設定手段と、他プロセッサへデータをシリアルに送信する送信手段と、他プロセッサから前記共通バスを介して送信されてきたデータを受信し、他プロセッサ毎に対応して設けられた受信手段と、前記第1の設定手段の設定コードに応じて前記送信手段及び前記受信手段を前記共通バスのシリアル通信線に接続する切替回路と、前記仮想共有メモリに書込まれた送信データを読出して前記送信手段へ入力し、前記受信手段での受信データを前記仮想共有メモリに書込むDMAプロセッサとを備えた
ことを特徴とするマルチプロセッサシステム。
A plurality of processors each having an arithmetic processor, a built-in memory capable of reading and writing data, and an external bus interface for inputting / outputting data to / from a local bus outside the semiconductor chip are provided in the semiconductor chip. In a multiprocessor system that shares and exchanges data,
A virtual shared memory provided in the built-in memory having a storage capacity that can be used for sharing and exchanging the data inside the processor, and data read / write connected to the virtual shared memory via an internal bus And a common bus interface
Outside the processor, provided with a common bus consisting of a bundle of serial communication lines connected to each other processor via the common bus interface,
The common bus interface includes a first setting unit in which a code for distinguishing each processor is set by the arithmetic processor, a transmission unit that serially transmits data to another processor, and a transmission from another processor via the common bus Receiving the received data, the receiving means provided corresponding to each other processor, and the transmitting means and the receiving means to the serial communication line of the common bus according to the setting code of the first setting means A switching circuit to be connected; and a DMA processor that reads transmission data written in the virtual shared memory, inputs the data to the transmission unit, and writes reception data in the reception unit into the virtual shared memory. A featured multiprocessor system.
半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、この仮想共有メモリに内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、
前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、
前記共通バスインタフェースは、送信モード設定時に他プロセッサへデータをシリアルに送信し、受信モード設定時に他プロセッサから前記共通バスを介して送信されてきたデータを受信し、プロセッサ毎に対応して設けられた送受信手段と、前記演算プロセッサにより各プロセッサを区別するコードが設定され、この設定コードに対応する前記送受信手段へ前記送信モード又は受信モードの設定を指示する信号を出力する第2の設定手段と、前記仮想共有メモリに書込まれた送信データを読出して前記送受信手段へ入力し、前記送受信手段での受信データを前記仮想共有メモリに書込むDMAプロセッサとを備えた
ことを特徴とするマルチプロセッサシステム。
A plurality of processors each having an arithmetic processor, a built-in memory capable of reading and writing data, and an external bus interface for inputting / outputting data to / from a local bus outside the semiconductor chip are provided in the semiconductor chip. In a multiprocessor system that shares and exchanges data,
A virtual shared memory provided in the built-in memory having a storage capacity that can be used for sharing and exchanging the data inside the processor, and data read / write connected to the virtual shared memory via an internal bus And a common bus interface
Outside the processor, provided with a common bus consisting of a bundle of serial communication lines connected to each other processor via the common bus interface,
The common bus interface serially transmits data to other processors when the transmission mode is set, and receives data transmitted from other processors via the common bus when the reception mode is set, and is provided for each processor. A transmission / reception means, and a second setting means for setting a code for distinguishing each processor by the arithmetic processor and outputting a signal for instructing the setting of the transmission mode or the reception mode to the transmission / reception means corresponding to the setting code; , the transmission data written to the virtual shared memory reads out the input to the receiving means, wherein the to luma that a DMA processor for writing data received by said receiving means to said virtual shared memory Luci processor system.
前記仮想共有メモリは、自プロセッサ用の送信データが前記演算プロセッサで書込まれる自領域を有すると共に、他プロセッサからの受信データが書込まれる他領域を他プロセッサ毎に専用に有する
ことを特徴とする請求項1または2に記載のマルチプロセッサシステム。
The virtual shared memory has its own area in which transmission data for its own processor is written by the arithmetic processor, and has another area dedicated to each other processor in which received data from another processor is written. The multiprocessor system according to claim 1 or 2.
半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ外に配備されたデュアルポートの仮想共有メモリと、この仮想共有メモリの第1及び第2のポートに独立の内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、
前記プロセッサの外部に、前記共通バスインタフェースを介して他プロセッサ毎に接続されたシリアル通信線の束から成る共通バスを備え、
前記共通バスインタフェースは、前記演算プロセッサにより各プロセッサを区別するコードが設定される第1の設定手段と、他プロセッサへデータをシリアルに送信する送信手段と、他プロセッサから前記共通バスを介して送信されてきたデータを受信し、他プロセッサ毎に対応して設けられた受信手段と、前記第1の設定手段の設コードに応じて前記送信手段及び前記受信手段を前記共通バスのシリアル通信線に接続する切替回路と、前記仮想共有メモリの第1及び第2のポートに各々独立に接続された内部バスと、DMAプロセッサとを備え
前記第DMAプロセッサは、前記仮想共有メモリに対するデータの読書きを前記演算プロセッサから独立した内部バスを介して行う
ことを特徴とするマルチプロセッサシステム。
A plurality of processors each having an arithmetic processor, a built-in memory capable of reading and writing data, and an external bus interface for inputting / outputting data to / from a local bus outside the semiconductor chip are provided in the semiconductor chip. In a multiprocessor system that shares and exchanges data,
A dual-port virtual shared memory provided outside the built-in memory having a storage capacity that can be used for sharing and exchanging the data inside the processor, and first and second ports of the virtual shared memory With a common bus interface connected to an independent internal bus for reading and writing data,
Outside the processor, provided with a common bus consisting of a bundle of serial communication lines connected to each other processor via the common bus interface,
The common bus interface includes a first setting unit in which a code for distinguishing each processor is set by the arithmetic processor, a transmission unit that serially transmits data to another processor, and a transmission from another processor via the common bus receiving data that has been receiving means provided in correspondence with each other processor, the serial communication line of the common bus the transmission means and the receiving means in response to setting the code of the first setting means A switching circuit connected to each other, an internal bus connected independently to each of the first and second ports of the virtual shared memory , and a DMA processor ,
The multiprocessor system, wherein the second DMA processor reads / writes data to / from the virtual shared memory via an internal bus independent of the arithmetic processor .
半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記プロセッサの内部に、前記データの共有・交換に使用可能な記憶容量を有して前記内蔵メモリ外に配備されたデュアルポートの仮想共有メモリと、この仮想共有メモリの第1及び第2のポートに独立の内部バスで接続されてデータの読書きを行う共通バスインタフェースとを備え、
前記仮想共有メモリを前記共通バスで接続されたプロセッサの数だけ備え、
前記共通バスインタフェース、送信モード設定時に他プロセッサへデータをシリアルに送信し、受信モード設定時に他プロセッサから前記共通バスを介して送信されてきたデータを受信し、プロセッサ毎に対応して設けられた送受信手段と、前記演算プロセッサにより各プロセッサを区別するコードが設定され、この設定コードに対応する前記送受信手段へ前記送信モード又は受信モードの設定を指示する信号を出力する第2の設定手段とを備えて構成し、前記仮想共有メモリの各々を前記送受信手段に1対1で内部バスで接続した
ことを特徴とするマルチプロセッサシステム。
A plurality of processors each having an arithmetic processor, a built-in memory capable of reading and writing data, and an external bus interface for inputting / outputting data to / from a local bus outside the semiconductor chip are provided in the semiconductor chip. In a multiprocessor system that shares and exchanges data,
A dual-port virtual shared memory provided outside the built-in memory having a storage capacity that can be used for sharing and exchanging the data inside the processor, and first and second ports of the virtual shared memory With a common bus interface connected to an independent internal bus for reading and writing data,
The virtual shared memory is provided by the number of processors connected by the common bus,
The common bus interface, and transmits the data to another processor to serially transmit mode settings, receives data transmitted via the common bus from other processors when setting reception mode, provided for each processor A transmission / reception means, and a second setting means for setting a code for distinguishing each processor by the arithmetic processor and outputting a signal for instructing the setting of the transmission mode or the reception mode to the transmission / reception means corresponding to the setting code; A multiprocessor system , wherein each of the virtual shared memories is connected to the transmission / reception means on a one-to-one basis via an internal bus .
JP2006071501A 2006-03-15 2006-03-15 Multiprocessor system Active JP4765003B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006071501A JP4765003B2 (en) 2006-03-15 2006-03-15 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006071501A JP4765003B2 (en) 2006-03-15 2006-03-15 Multiprocessor system

Publications (2)

Publication Number Publication Date
JP2007249547A JP2007249547A (en) 2007-09-27
JP4765003B2 true JP4765003B2 (en) 2011-09-07

Family

ID=38593779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006071501A Active JP4765003B2 (en) 2006-03-15 2006-03-15 Multiprocessor system

Country Status (1)

Country Link
JP (1) JP4765003B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176891B2 (en) 2008-03-19 2015-11-03 Panasonic Intellectual Property Management Co., Ltd. Processor, processing system, data sharing processing method, and integrated circuit for data sharing processing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2656543B2 (en) * 1988-05-26 1997-09-24 東京電力株式会社 Broadcast memory type distributed computer system
JPH02132543A (en) * 1988-11-12 1990-05-22 Nec Corp Information processor
JPH0652101A (en) * 1992-07-29 1994-02-25 Hitachi Ltd Multiport memory for data buffer
JP3754482B2 (en) * 1996-02-29 2006-03-15 株式会社日立製作所 Information processing apparatus having memory transfer function
JP4123022B2 (en) * 2003-03-19 2008-07-23 三菱電機株式会社 Operation synchronization circuit

Also Published As

Publication number Publication date
JP2007249547A (en) 2007-09-27

Similar Documents

Publication Publication Date Title
JP4856379B2 (en) Protocol conversion arbitration circuit, system including the same, and signal conversion arbitration method
JP5786100B2 (en) Communication between peripheral devices
US20080126643A1 (en) Semiconductor circuit
CN106021141B (en) Semiconductor device with a plurality of semiconductor chips
US8583845B2 (en) Multi-processor system and controlling method thereof
US9984014B2 (en) Semiconductor device
US7415558B2 (en) Communication steering for use in a multi-master shared resource system
CN114253884A (en) FPGA-based multi-master-to-multi-slave access arbitration method, system and storage medium
US7802038B2 (en) Communication steering for use in a multi-master shared resource system
US8756356B2 (en) Pipe arbitration using an arbitration circuit to select a control circuit among a plurality of control circuits and by updating state information with a data transfer of a predetermined size
JP4765003B2 (en) Multiprocessor system
US8244994B1 (en) Cooperating memory controllers that share data bus terminals for accessing wide external devices
GB2412767A (en) Processor with at least two buses between a read/write port and an associated memory with at least two portions
JP2012181573A (en) Microcomputer
JP6498557B2 (en) Programmable controller
US7254667B2 (en) Data transfer between an external data source and a memory associated with a data processor
US20060248247A1 (en) Apparatus and method for controlling access to a memory
JP2006251916A (en) Dma transfer system and dma transfer method
US7788466B2 (en) Integrated circuit with a plurality of communicating digital signal processors
JPH0227696B2 (en) JOHOSHORISOCHI
JP4539481B2 (en) Multiprocessor system
JP2021002279A (en) Control system
JP2005107873A (en) Semiconductor integrated circuit
JP6535516B2 (en) Multi-programmable device system and control method thereof
JP2023066810A (en) Memory system and command determination method

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110412

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20110422

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110425

R150 Certificate of patent or registration of utility model

Ref document number: 4765003

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250