JP4539481B2 - Multiprocessor system - Google Patents

Multiprocessor system Download PDF

Info

Publication number
JP4539481B2
JP4539481B2 JP2005223975A JP2005223975A JP4539481B2 JP 4539481 B2 JP4539481 B2 JP 4539481B2 JP 2005223975 A JP2005223975 A JP 2005223975A JP 2005223975 A JP2005223975 A JP 2005223975A JP 4539481 B2 JP4539481 B2 JP 4539481B2
Authority
JP
Japan
Prior art keywords
processor
data
shared memory
virtual shared
trigger signal
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
JP2005223975A
Other languages
Japanese (ja)
Other versions
JP2007041768A (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 Systems 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 Systems Co Ltd filed Critical Fuji Electric Systems Co Ltd
Priority to JP2005223975A priority Critical patent/JP4539481B2/en
Publication of JP2007041768A publication Critical patent/JP2007041768A/en
Application granted granted Critical
Publication of JP4539481B2 publication Critical patent/JP4539481B2/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.

図10は、従来のマルチプロセッサシステムの構成を示すブロック図である。この図10に示すマルチプロセッサシステムは、非特許文献1でも略同様の構成例が紹介されている組込み用マルチプロセッサシステムの典型的な構成例である。
図10に示すマルチプロセッサシステムは、各々が半導体チップにより形成された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. 10 is a block diagram showing a configuration of a conventional multiprocessor system. The multiprocessor system shown in FIG. 10 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. 10 includes n processors 1A to 1N each formed of a semiconductor chip, and an arithmetic processor which 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. The processor (for example, 1A) that wants to access the shared memory 2 outputs the access request signal 5A as the first step, and receives the access permission signal 6A from the access arbitration device 3 in the second 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を複数のプロセッサが同時に使用しないようになっている。
「マイクロプロセッサ技術:昭和54年5月10日初版発行、編集兼発行者・電気学会、発売元・オーム社」の「4.3マルチプロセッサシステム/4.3.3具体例/(7)プロセス制御システム」
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.
"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, the shared memory 2 is installed outside the semiconductor chip of each of the processors 1A to 1N, so that 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. In this case, this access is performed 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によるマルチプロセッサシステムは、半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、前記複数のプロセッサの内部に、前記データの共有・交換に使用する記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、前記データの共有・交換に使用される共通バスインタフェースと、前記演算プロセッサとは独立に指定された前記仮想共有メモリの記憶領域から他の記憶領域へ複写動作を行うDMAプロセッサとを備え、前記複数のプロセッサの外部に、前記共通バスインタフェース間を接続して前記データの共有・交換に使用される共通バスと、前記DMAプロセッサを起動するトリガ信号及び前記仮想共有メモリに対するデータの書込み及び読出しの動作の形式を指定する指定信号を発生する発生手段と、この発生手段からのトリガ信号及び指定信号を各プロセッサのDMAプロセッサに伝達する伝達バスとを備え、前記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 memory used for sharing and exchanging the data in the plurality of processors A virtual shared memory having a capacity and deployed in the built-in memory, a common bus interface used for sharing and exchanging the data, and a storage area of the virtual shared memory designated independently of the arithmetic processor And a DMA processor for performing a copying operation from one storage area to another storage area. A common bus that is used to share and exchange of the data by connecting the common bus interface, specifying signal that specifies the format of the data write and read operations with respect to the trigger signal and the virtual shared memory to start the DMA processor And a transmission bus for transmitting a trigger signal and a designation signal from the generation means to the DMA processor of each processor , wherein the DMA processor responds to the trigger signal and the designation signal. Data writing and reading operations from a memory are performed .

この構成によれば、各プロセッサの演算プロセッサは、データの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリを設け直接アクセスする必要はなく、同じ半導体チップ上にある内蔵メモリ内の仮想共有メモリへの書込み・読出しを行えば良い。また、外部バスインタフェースを介してローカルバスとの間でデータの入出力を行う動作と、共通バスインタフェースを介して共通バスとの間でデータの共有・交換を行う動作とを独立して行うことができる。これによって、また、従来のように共通バスへのアクセスの際にローカルバスへのアクセスと時分割で実行されることもなくなり、本発明では共通バスへのアクセスと、ローカルバスへのアクセスとを並列に行うことができる。
また、上記構成によれば、各プロセッサは、予め定められたデータの書込み及び読出しの動作の形式に従って、仮想共有メモリに対する書込み・読出しを行うことができる。
According to this configuration, in order to share and exchange data, the arithmetic processor of each processor does not need to provide a shared memory outside the semiconductor chip as in the prior art and directly access it, but the built-in memory on the same semiconductor chip What is necessary is just to write / read to / from the virtual shared memory. In addition, the operation to input / output data to / from the local bus via the external bus interface and the operation to share / exchange data to / from the common bus via the common bus interface should be performed independently. Can do. As a result, when accessing the common bus as in the prior art, access to the local bus and time division are not performed. In the present invention, the access to the common bus and the access to the local bus are reduced. Can be done in parallel.
Further, according to the above configuration, each processor can perform writing / reading to / from the virtual shared memory in accordance with predetermined data write / read operation formats.

また、本発明の請求項2によるマルチプロセッサシステムは、請求項1において、前記仮想共有メモリは、前記複数のプロセッサ毎の書込み用の領域に区分けされ、前記演算プロセッサは自プロセッサ内の仮想共有メモリの自プロセッサ用書込み領域へ他プロセッサに通知したいデータを書込み、当該仮想共有メモリの自プロセッサ用書込み領域以外の領域から他のプロセッサが通知したデータを読み出すことで、データの共有・交換を行うことを特徴とする。   A multiprocessor system according to a second aspect of the present invention is the multiprocessor system according to the first aspect, wherein the virtual shared memory is divided into write areas for the plurality of processors, and the arithmetic processor is a virtual shared memory in its own processor. Data is shared / exchanged by writing data to other processor's write area to other processor's write area and reading data notified by other processors from areas other than its own processor's write area of the virtual shared memory It is characterized by.

この構成によれば、例えばプロセッサAの演算プロセッサが、他のプロセッサB〜Nに通知したいデータを仮想共有メモリの領域Aへ書込み、他のプロセッサB〜Nから通知されたデータを仮想共有メモリの領域B〜Nから読み出すことで、データの共有・交換を行う。他のプロセッサB〜Nでも同様のことを行う。このような動作によって、各プロセッサの演算プロセッサは、データの共有・交換を行うために半導体チップ外部の共有メモリに直接アクセスする必要はなく、同じ半導体チップ上にある内蔵メモリ内の仮想共有メモリへの書込み・読出しを行えば良い。   According to this configuration, for example, the arithmetic processor of the processor A writes data to be notified to the other processors B to N to the area A of the virtual shared memory, and the data notified from the other processors B to N is stored in the virtual shared memory. Data is shared and exchanged by reading from the areas B to N. The same applies to the other processors B to N. By such an operation, the arithmetic processor of each processor does not need to directly access the shared memory outside the semiconductor chip in order to share and exchange data, but to the virtual shared memory in the built-in memory on the same semiconductor chip. Write and read may be performed.

また、本発明の請求項によるマルチプロセッサシステムは、請求項1又は2において、前記発生手段は、前記トリガ信号として、前記仮想共有メモリに書込まれた他プロセッサに通知したいデータを前記共通バスヘ出力するタイミング用の第1のトリガ信号と、前記共通バスで伝達される他プロセッサから通知されたデータを前記共通バスから読込むタイミング用の第2のトリガ信号とを、前記第1のトリガ信号が前記第2のトリガ信号よりも早いタイミングで生成することを特徴とする。
この構成によれば、第1のトリガ信号のタイミングで自プロセッサからデータを共通バスへ出力すると、この出力されたデータは、第2のトリガ信号のタイミングで他プロセッサにて読込まれるので、データを適正に交換することができる。
The multiprocessor system according to claim 3 of the present invention is the multiprocessor system according to claim 1 or 2 , wherein the generation means sends, as the trigger signal, data to be notified to another processor written in the virtual shared memory to the common bus. A first trigger signal for timing to output, and a second trigger signal for timing to read data notified from another processor transmitted from the common bus from the common bus, the first trigger signal Is generated at a timing earlier than that of the second trigger signal.
According to this configuration, when data is output from the own processor to the common bus at the timing of the first trigger signal, the output data is read by another processor at the timing of the second trigger signal. Can be replaced properly.

また、本発明の請求項によるマルチプロセッサシステムは、請求項1又は2において、前記仮想共有メモリを前記内蔵メモリの外部から出して前記プロセッサ内に備え、前記発生手段は、前記指定信号として前記仮想共有メモリに対する上位アドレスの指定を行う第1の指定信号と、下位アドレスの指定を行う第2の指定信号とを生成し、前記DMAプロセッサは、前記第1及び第2の指定信号に応じて前記仮想共有メモリに対する上位及び下位アドレスの指定を行ってデータの書込み及び読出しの動作を行うことを特徴とする。
この構成によれば、演算プロセッサは、自プロセッサ内の仮想共有メモリの自領域へのデータ書込みと他領域からのデータの読出しで、他プロセッサとデータの共有・交換を行うことができる。
According to a fourth aspect of the present invention, there is provided a multiprocessor system according to the first or second aspect , wherein the virtual shared memory is provided outside the built-in memory and provided in the processor, and the generation means includes the designation signal as the designation signal. The DMA processor generates a first designation signal that designates an upper address for the virtual shared memory and a second designation signal that designates a lower address, and the DMA processor responds to the first and second designation signals. Data write and read operations are performed by designating upper and lower addresses for the virtual shared memory.
According to this configuration, the arithmetic processor can share and exchange data with other processors by writing data to the own area of the virtual shared memory in the own processor and reading data from the other area.

以上説明したように本発明によれば、共有メモリへの読書きに起因するプログラム処理効率の低下を防止することができるという効果がある。   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に示すマルチプロセッサシステムが、図10に示した従来のマルチプロセッサシステムと異なる構成点を説明する。
各プロセッサ1A〜1Nに、バスへのアクセス用のインタフェース回路である共通バスIF15A〜15Nを設け、これら共通バスIF15A〜15Nに共通バス92を接続した。更に、DMAプロセッサ14A〜14Nを設け、共通バスIF15及びDMAプロセッサ14を、演算プロセッサ11、内蔵メモリ12及び外部バスIF13と共に内部バス19A〜19Nで接続した。
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.
(Embodiment)
FIG. 1 is a block diagram showing a configuration of a multiprocessor system according to an 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. 10 will be described.
The processors 1A to 1N are provided with common bus IFs 15A to 15N, which are interface circuits for accessing the bus, and the common bus 92 is connected to the common buses IF 15A to 15N. Further, DMA processors 14A to 14N are provided, and the common bus IF 15 and the DMA processor 14 are connected together with the arithmetic processor 11, the built-in memory 12 and the external bus IF 13 through internal buses 19A to 19N.

また、内蔵メモリ12A〜12Nは、各々が半導体チップによって形成される各プロセッサ1A〜1Nの読書き可能なメモリであるが、この内部に、仮想共有メモリ121A〜121Nと称する記憶領域(単に、領域とも称す)を設けた。
仮想共有メモリ121の容量は、図10に示した共有メモリ2で実際にデータ共有を行うために使用される記憶容量と同じであり、記憶領域の割付けは、図2(a)に示すように、各プロセッサ1A〜1Nの専用書込み領域A〜Nが割付けられている。
The built-in memories 12A to 12N are readable / writable memories of the processors 1A to 1N, each formed of a semiconductor chip. Inside the storage memories 12A to 121N (simply referred to as areas) Also called).
The capacity of the virtual shared memory 121 is the same as the storage capacity actually used for data sharing in the shared memory 2 shown in FIG. 10, and the allocation of the storage area is as shown in FIG. Dedicated write areas A to N of the processors 1A to 1N are allocated.

図2(b)に示すように、各仮想共有メモリ121A〜121Nを代表する仮想共有メモリ121Aにおいて、領域Aは、自プロセッサ1Aの演算プロセッサ11Aがデータを書込み、この書込まれたデータを、自プロセッサ1AのDMAプロセッサ14Aが読み出して共通バス92を介して他のプロセッサ1B〜1Nへ出力する領域である。
他の領域B〜Nは、自プロセッサ1AのDMAプロセッサ14Aが共通バス92を介して他のプロセッサ1B〜1Nからデータを読み込んで書込み、この書込まれたデータを自プロセッサ1Aの演算プロセッサ11Aが読み出す領域である。
As shown in FIG. 2B, in the virtual shared memory 121A representing each of the virtual shared memories 121A to 121N, in the area A, the arithmetic processor 11A of the own processor 1A writes data, and the written data is This is an area where the DMA processor 14A of its own processor 1A reads and outputs it to the other processors 1B to 1N via the common bus 92.
In the other areas B to N, the DMA processor 14A of the own processor 1A reads and writes data from the other processors 1B to 1N via the common bus 92, and the arithmetic processor 11A of the own processor 1A writes the written data. This is the area to read.

更に、全ての領域A〜Nは、自プロセッサ1Aの演算プロセッサ11が書込まれたデータを読出し可能な領域となっている。
この他、各プロセッサ1A〜1Nにトリガ信号伝達バス8を介して接続されたトリガ信号発生器7を設けた。トリガ信号発生器7は、DMAプロセッサ14を起動するためのトリガ信号を発生する。トリガ信号伝達バス8は、トリガ信号発生器7から発生されたトリガ信号を伝達する。なお、トリガ信号伝達バス8は、複数の信号線で構成される場合もある。
Furthermore, all the areas A to N are areas from which data written by the arithmetic processor 11 of the processor 1A can be read.
In addition, a trigger signal generator 7 connected to each of the processors 1A to 1N via a trigger signal transmission bus 8 is provided. The trigger signal generator 7 generates a trigger signal for starting up the DMA processor 14. The trigger signal transmission bus 8 transmits the trigger signal generated from the trigger signal generator 7. The trigger signal transmission bus 8 may be composed of a plurality of signal lines.

トリガ信号発生器7からトリガ信号伝達バス8へは、各DMAプロセッサ14A〜14Nが、共通バス92ヘのデータの出力、又は、共通バス92からのデータの読込みのタイミングを与えるトリガ信号831が発生されて伝達されるようになっている。
更に、トリガ信号発生器7からトリガ信号伝達バス8へは、図3及び図4に示すように、各DMAプロセッサ14A〜14Nが、仮想共有メモリ121の指定される領域からデータを読み出して共通バス92に出力するか、共通バス92からデータを読込んで仮想共有メモリ121の指定される領域へ書込むかの動作を指定するタイプ指定信号832も発生されて伝達されるようになっている。
From the trigger signal generator 7 to the trigger signal transmission bus 8, each of the DMA processors 14 </ b> A to 14 </ b> N generates a trigger signal 831 that gives data output to the common bus 92 or data read timing from the common bus 92. Has been transmitted.
Further, from the trigger signal generator 7 to the trigger signal transmission bus 8, as shown in FIGS. 3 and 4, each DMA processor 14 </ b> A to 14 </ b> N reads out data from a specified area of the virtual shared memory 121 to share the common bus. A type designation signal 832 is also generated and transmitted for designating the operation of outputting to the designated area 92 or reading data from the common bus 92 and writing to the designated area of the virtual shared memory 121.

タイプ指定信号832は、図に時系列で示す時刻t1〜t2間のトリガタイプXと、時刻t2〜t3間のトリガタイプXXと、時刻t2〜t3間のトリガタイプXXXとが、その順に一定周期で繰り返される。
また、(1)〜(5)で示すタイミング順のトリガ信号831のトリガによって、予め各DMAプロセッサ14A〜14Nに設定された規則に従って各DMAプロセッサ14A〜14Nが、仮想共有メモリ121のタイプ指定信号832で指定されるメモリ領域のオフセットアドレスからのデータを読出して共通バス92へ出力するか、或いは、共通バス92からデータを読み込んで仮想共有メモリ121のタイプ指定信号832で指定されるメモリ領域のオフセットアドレスヘの書込みを行う。
In the type designation signal 832, the trigger type X between times t1 and t2 shown in time series in FIG. 4 , the trigger type XX between times t2 and t3, and the trigger type XXX between times t2 and t3 are constant in that order. Repeated in a cycle.
Also, each triggering of the trigger signal 831 in the order of timings shown in (1) to (5) causes each of the DMA processors 14A to 14N to send a type designation signal for the virtual shared memory 121 in accordance with a rule set in advance for each of the DMA processors 14A to 14N. The data from the offset address of the memory area specified by 832 is read and output to the common bus 92, or the data of the memory area specified by the type specifying signal 832 of the virtual shared memory 121 is read from the common bus 92. Write to the offset address.

これによって、プロセッサ1Aの仮想共有メモリ121Aの自領域のデータは、他のプロセッサ1B〜1Nの仮想共有メモリ121B〜121Nのプロセッサ1A用領域に複写される。同様に、プロセッサ1x内の仮想共有メモリ121xの自領域のデータも、他のプロセッサの仮想共有メモリ121のプロセッサ1x用領域に複写される。   As a result, the data in the own area of the virtual shared memory 121A of the processor 1A is copied to the area for the processor 1A of the virtual shared memories 121B to 121N of the other processors 1B to 1N. Similarly, the data in the own area of the virtual shared memory 121x in the processor 1x is also copied to the area for the processor 1x in the virtual shared memory 121 of another processor.

演算プロセッサ11の仮想共有メモリ121の自領域への書込み頻度が、タイプ指定信号832の「トリガタイプX→XX→XXX」の一周期より長ければ、その書込みは他のプロセッサ内の仮想共有メモリ121へ複写される。よって、各プロセッサの演算プロセッサ11A〜11Nは、データの共有・交換を行うために、従来技術のような半導体チップ外部に共有メモリ2を設け直接アクセスする必要はなく、同じ半導体チップ上にある内蔵メモリ内の仮想共有メモリ121A〜121Nへの書込み・読出しを行えば良い。
また、従来のように、共通バス92へのアクセスの際に、ローカルバス4A〜4Nへのアクセスと時分割で実行されることもなくなる。本実施の形態の場合、共通バス92へのアクセスと、ローカルバス4A〜4Nへのアクセスとを並列に行うことができる。
If the frequency of writing to the own area of the virtual shared memory 121 of the arithmetic processor 11 is longer than one cycle of “trigger type X → XX → XXX” of the type designation signal 832, the writing is performed in the virtual shared memory 121 in another processor. Is copied. Therefore, it is not necessary for the arithmetic processors 11A to 11N of each processor to provide the shared memory 2 outside the semiconductor chip as in the prior art and to directly access it in order to share and exchange data. What is necessary is just to write / read to the virtual shared memories 121A to 121N.
Further, unlike the prior art, when accessing the common bus 92, the access to the local buses 4A to 4N and the time division are not executed. In the present embodiment, access to the common bus 92 and access to the local buses 4A to 4N can be performed in parallel.

以下、このような本実施の形態に基づく具体的な実施例を説明する。
(実施例1)
本実施例1のマルチプロセッサシステムの構成は、上記実施の形態で説明したマルチプロセッサシステムと同構成である。
本実施例1では、各DMAプロセッサ14A〜14Nは、次に図3及び図4を参照して説明する設定が成されている。
DMAプロセッサ14Aは、トリガタイプXの場合の(1)で示すタイミングのトリガ信号831の時は、時刻t1〜t2間のS1行に示すように、仮想共有メモリ121Aの領域Aのオフセットアドレス0のデータを読み出して共通バス92へ出力する。(2)で示すタイミングのトリガ信号831の時は、仮想共有メモリ121Aの領域Aのオフセットアドレス1のデータを読み出して共通バス92へ出力する。即ち、トリガ信号831のカウント数に従って読み出す仮想共有メモリ121Aの領域Aのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。
Hereinafter, specific examples based on the present embodiment will be described.
Example 1
The configuration of the multiprocessor system according to the first embodiment is the same as that of the multiprocessor system described in the above embodiment.
In the first embodiment, the DMA processors 14A to 14N are set to be described with reference to FIGS.
In the case of the trigger signal 831 at the timing indicated by (1) in the case of the trigger type X, the DMA processor 14A sets the offset address 0 in the area A of the virtual shared memory 121A as shown in the S1 row between the times t1 and t2. Data is read and output to the common bus 92. When the trigger signal 831 has the timing shown in (2), the data at the offset address 1 in the area A of the virtual shared memory 121A is read and output to the common bus 92. That is, a setting is made to increment or decrement the offset address of the area A of the virtual shared memory 121A to be read according to the count number of the trigger signal 831.

また、DMAプロセッサ14Aは、トリガタイプXXの場合の(1)で示すタイミングのトリガ信号831の時は、時刻t2〜t3間のS1行に示すように、共通バス92からデータを読込んで仮想共有メモリ121Aの領域Bのオフセットアドレス0へ書込む。(2)で示すタイミングのトリガ信号831の時は、共通バス92からデータを読込んで仮想共有メモリ121Aの領域Bのオフセットアドレス1へ書込む。即ち、トリガ信号831のカウント数に従って書込む仮想共有メモリ121Aの領域Bのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。
更に、DMAプロセッサ14Aは、トリガタイプXXX等の場合も、時刻t3〜t4間のS1行に示すように、上記同様に、トリガ信号831のカウント数に従って、書込む仮想共有メモリ121Aの領域Nのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。
In the case of the trigger signal 831 at the timing indicated by (1) in the case of the trigger type XX, the DMA processor 14A reads the data from the common bus 92 and virtually shares as shown in the S1 line between the times t2 and t3. Write to offset address 0 in area B of memory 121A. In the case of the trigger signal 831 at the timing indicated by (2), data is read from the common bus 92 and written to the offset address 1 in the area B of the virtual shared memory 121A. That is, a setting is made to increment or decrement the offset address of the area B of the virtual shared memory 121A to be written according to the count number of the trigger signal 831.
Further, in the case of the trigger type XXX or the like, the DMA processor 14A, as shown in the S1 line between the times t3 and t4, similarly to the above, according to the count number of the trigger signal 831, the area N of the virtual shared memory 121A to be written. Settings are made to increment or decrement the offset address.

次に、DMAプロセッサ14Bは、時刻t1〜t2間のS2行に示すように、トリガタイプXの場合の(1)で示すタイミングのトリガ信号831の時は、共通バス92からデータを読込んで仮想共有メモリ121Bの領域Aのオフセットアドレス0へ書込む。(2)で示すタイミングのトリガ信号831の時は、共通バス92からデータを読込んで仮想共有メモリ121Bの領域Aのオフセットアドレス1へ書込む。即ち、トリガ信号831のカウント数に従って書込む仮想共有メモリ121Aの領域Bのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。   Next, as shown in the S2 line between times t1 and t2, the DMA processor 14B reads the data from the common bus 92 when the trigger signal 831 has the timing indicated by (1) in the case of the trigger type X, and performs virtual processing. Write to offset address 0 in area A of shared memory 121B. In the case of the trigger signal 831 at the timing indicated by (2), data is read from the common bus 92 and written to the offset address 1 in the area A of the virtual shared memory 121B. That is, a setting is made to increment or decrement the offset address of the area B of the virtual shared memory 121A to be written according to the count number of the trigger signal 831.

また、DMAプロセッサ14Bは、トリガタイプXXの場合の(1)で示すタイミングのトリガ信号831の時は、時刻t2〜t3間のS2行に示すように、仮想共有メモリ121Bの領域Bのオフセットアドレス0のデータを読み出して共通バス92へ出力する。(2)で示すタイミングのトリガ信号831の時は、仮想共有メモリ121Bの領域Bのオフセットアドレス1のデータを読み出して共通バス92へ出力する。即ち、トリガ信号831のカウント数に従って読み出す仮想共有メモリ121Bの領域Bのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。   Further, when the trigger signal 831 at the timing indicated by (1) in the case of the trigger type XX, the DMA processor 14B, as shown in the S2 line between the times t2 and t3, the offset address of the area B of the virtual shared memory 121B 0 data is read and output to the common bus 92. In the case of the trigger signal 831 at the timing indicated by (2), the data at the offset address 1 in the area B of the virtual shared memory 121B is read and output to the common bus 92. That is, a setting is made to increment or decrement the offset address of the area B of the virtual shared memory 121B to be read according to the count number of the trigger signal 831.

更に、DMAプロセッサ14Bは、トリガタイプXXX等の場合も、時刻t3〜t4間のS2行に示すように、上記同様に、トリガ信号831のカウント数に従って、書込む仮想共有メモリ121Bの領域Nのオフセットアドレスをインクリメント或いはデクリメントするような設定が成されている。
更には、DMAプロセッサ14Nにも、時刻t1〜t4間のSn行に示すように、上記DMAプロセッサ14A,14Bと同様な動作を行う設定が成されている。
Further, in the case of the trigger type XXX or the like, the DMA processor 14B, as shown in the S2 line between the times t3 and t4, similarly to the above, according to the count number of the trigger signal 831, the area N of the virtual shared memory 121B to be written. Settings are made to increment or decrement the offset address.
Further, the DMA processor 14N is also set to perform the same operation as the DMA processors 14A and 14B, as shown in the Sn row between times t1 and t4.

このような設定動作によって、プロセッサ1Aの演算プロセッサ11Aは、自プロセッサ内の仮想共有メモリ121Aの領域Aへのデータの書込みと、他領域B〜Nからのデータの読出しとによって、他のプロセッサ1B〜1Nとデータの共有・交換を行うことができる。
他のプロセッサ1B〜1Nの演算プロセッサ11B〜11Nも同様に、自プロセッサ内の仮想共有メモリ121の自領域へのデータ書込みと他領域B〜Nからのデータの読出しとによって、他のプロセッサ1A〜1Nとデータの共有・交換を行うことができる。
By such a setting operation, the arithmetic processor 11A of the processor 1A causes the other processor 1B to write data to the area A of the virtual shared memory 121A in the own processor and read data from the other areas B to N. Data sharing and exchange with ~ 1N can be performed.
Similarly, the arithmetic processors 11B to 11N of the other processors 1B to 1N can also write the data to the own area of the virtual shared memory 121 and read the data from the other areas B to N in the other processors 1A to 1N. 1N can share and exchange data.

(実施例2)
本実施例2のマルチプロセッサシステムの構成も、上記実施例1の構成と基本的には同じであるが、トリガ信号伝達バス8が図5に示すように構成され、また共通バスIF15が図6に示すように構成されている。
上記実施例1では、同一のトリガ信号831で各DMAプロセッサ14A〜14Nが同時に動作していた。例えば、DMAプロセッサ14Aによる共通バス92への出力と、DMAプロセッサ14B〜14Nによる共通バス92からの読込みが同時に動作していた。しかし、プロセッサ内部バス19A〜19Nの使用状況如何では、各DMAプロセッサ14A〜14Nが同時に動作できるとは限らない。実施例2はそれを次に説明するように考慮した例である。
(Example 2)
The configuration of the multiprocessor system of the second embodiment is basically the same as the configuration of the first embodiment, except that the trigger signal transmission bus 8 is configured as shown in FIG. 5, and the common bus IF 15 is as shown in FIG. As shown in FIG.
In the first embodiment, the DMA processors 14A to 14N are simultaneously operated with the same trigger signal 831. For example, the output to the common bus 92 by the DMA processor 14A and the reading from the common bus 92 by the DMA processors 14B to 14N are operating simultaneously. However, depending on how the processor internal buses 19A to 19N are used, the DMA processors 14A to 14N cannot always operate simultaneously. The second embodiment is an example in which it is considered as described below.

図6に示す共通バスIF15は、内部バス19に接続されたラッチレジスタ151と、このラッチレジスタ151及び共通バスIF15の間に接続されたトライステート出力バッファ152と、共通バスIF15と内部バス19との間に接続された入力バッファ153とを備えて構成されている。
ラッチレジスタ151は、内部バス19からの書込み時にデータがセットされると、次に当該ラッチレジスタ151ヘ書込みが行われるまで同じデータを共通バスIF15へ出力する。よって、各DMAプロセッサ14が共通バス92ヘデータを出力する場合は、動作が終了しても次の動作までは共通バス92へ同じデータの出力が継続される。
The common bus IF15 shown in FIG. 6 includes a latch register 151 connected to the internal bus 19, a tristate output buffer 152 connected between the latch register 151 and the common bus IF15, the common bus IF15, and the internal bus 19. And an input buffer 153 connected between them.
When data is set during writing from the internal bus 19, the latch register 151 outputs the same data to the common bus IF 15 until the next writing to the latch register 151 is performed. Therefore, when each DMA processor 14 outputs data to the common bus 92, the output of the same data to the common bus 92 is continued until the next operation even if the operation ends.

図5に示すトリガ信号伝達バス8は、トリガ信号831として各プロセッサ1A〜1N専用のトリガ信号831A〜831Nと、タイプ指定信号832とが伝達されるように構成されている。つまり、トリガ信号発生器7は、トリガ信号831A〜831Nとタイプ指定信号832を発生するようになっている。
トリガ信号831A〜831Nは、図7の(1)に示すように、共通バス92ヘデータを出力するDMAプロセッサ14に対するトリガ信号831Aが、共通バス92からデータを読込むDMAプロセッサ14に対するトリガ信号831B,831Nより先に、トリガ信号発生器7から出力される。このトリガ信号831A〜831Nの時間差は、トリガ信号831x受信後、DMAプロセッサ14xの動作終了までの時間はプロセッサ内部バス19の使用状況で変化するが、その最大時間から決定される。
The trigger signal transmission bus 8 shown in FIG. 5 is configured such that trigger signals 831A to 831N dedicated to the processors 1A to 1N and a type designation signal 832 are transmitted as the trigger signal 831. That is, the trigger signal generator 7 generates the trigger signals 831A to 831N and the type designation signal 832.
As shown in (1) of FIG. 7, the trigger signals 831A to 831N are the trigger signals 831B for the DMA processor 14 that reads data from the common bus 92. It is output from the trigger signal generator 7 before 831N. The time difference between the trigger signals 831A to 831N is determined from the maximum time, although the time from the reception of the trigger signal 831x to the end of the operation of the DMA processor 14x varies depending on the use status of the processor internal bus 19.

図6の共通バスIF15の構成によって、共通バス92ヘデータを出力するDMAプロセッサ14の動作が終了しても、次の動作が行われるまでは、図7に示す共通バス92のデータの状態のようにデータが保持される。
そして、上記実施例1の時刻t1〜t4間のS1〜Sn行に示したと同様の動作(図7にも対応する動作を同符号で示した)により、演算プロセッサ11A〜11Nは、自プロセッサ内の仮想共有メモリ121の自領域へのデータ書込みと他領域からのデータの読出しで、プロセッサ1A〜1Nとデータの共有・交換を行うことができる。
With the configuration of the common bus IF 15 in FIG. 6, even if the operation of the DMA processor 14 that outputs data to the common bus 92 is completed, until the next operation is performed, the data state of the common bus 92 shown in FIG. Data is stored in
Then, the arithmetic processors 11A to 11N are operated in the own processor by the same operation as shown in the S1 to Sn rows between the times t1 and t4 in the first embodiment (the operation corresponding to FIG. 7 is also indicated by the same symbol). The data can be shared and exchanged with the processors 1A to 1N by writing data to the own area of the virtual shared memory 121 and reading data from other areas.

(実施例3)
本実施例3のマルチプロセッサシステムは図8に示すように構成されており、トリガ信号伝達バス8は図9に示すように構成されている。
まず、図9に示すトリガ信号伝達バス8は、図5に示したトリガ信号伝達バス8のタイプ指定信号832を拡張することによって、領域指定信号(上位アドレス信号)833と、領域内のオフセットアドレス信号(下位アドレス信号)834とが伝達されるようにした。即ち、トリガ信号発生器7は、領域指定信号833及びオフセットアドレス指定信号834を発生する。
(Example 3)
The multiprocessor system of the third embodiment is configured as shown in FIG. 8, and the trigger signal transmission bus 8 is configured as shown in FIG.
First, the trigger signal transmission bus 8 shown in FIG. 9 expands the type designation signal 832 of the trigger signal transmission bus 8 shown in FIG. 5 so that an area designation signal (upper address signal) 833 and an offset address in the area are obtained. A signal (lower address signal) 834 is transmitted. That is, the trigger signal generator 7 generates a region designation signal 833 and an offset address designation signal 834.

図8に示すマルチプロセッサシステムは、図1に示したマルチプロセッサシステムの内蔵メモリ12内にあった仮想共有メモリ121を、半導体チップに内蔵されたデュアルポートメモリの仮想共有メモリ16A〜16Nとして分離したものである。この仮想共有メモリ16A〜16Nの片ポートは内部バス19A〜19Nに接続され、反対側ポートは共通バスIF15を介して共通バス92及び、トリガ信号伝達バス8の領域指定信号833及びオフセットアドレス指定信号834が伝達される線路に接続されている。   In the multiprocessor system shown in FIG. 8, the virtual shared memory 121 in the built-in memory 12 of the multiprocessor system shown in FIG. 1 is separated as virtual shared memories 16A to 16N of dual port memories built in the semiconductor chip. Is. One ports of the virtual shared memories 16A to 16N are connected to the internal buses 19A to 19N, and the opposite ports are the common bus 92 and the area designation signal 833 and offset address designation signal of the trigger signal transmission bus 8 via the common bus IF15. 834 is connected to the transmission line.

仮想共有メモリ16A〜16Nの内部は、図2(a)及び(b)に示したと同様に各プロセッサ1A〜1Nの専用の書込み領域が割付けられている。
また、図8のマルチプロセッサシステムにおいては、各プロセッサ1A〜1Nにおいて共通バス用DMAプロセッサ17A〜17Nを更に備え、これらを内部バス19A〜19Nに接続すると共に、仮想共有メモリ16A〜16Nの下位アドレスをオフセットアドレス指定信号834に応じた制御信号で指定する線路に接続されている。
In the virtual shared memories 16A to 16N, dedicated write areas for the processors 1A to 1N are allocated in the same manner as shown in FIGS.
Further, in the multiprocessor system of FIG. 8, each processor 1A to 1N further includes common bus DMA processors 17A to 17N, which are connected to the internal buses 19A to 19N, and lower addresses of the virtual shared memories 16A to 16N. Is connected to a line for designating with a control signal corresponding to the offset address designation signal 834.

共通バス用DMAプロセッサ17A〜17Nは、仮想共有メモリ16A〜16Nに対して、領域指定信号833で上位アドレスを指定すると共にオフセットアドレス指定信号834で下位アドレスを指定してデータを読出し、これを共通バス92に出力する。更には共通バス92からデータを読み込んで上記と同指定による仮想共有メモリ16へ書込む動作を行う。更に、トリガ信号831A〜831Nのタイミングで、各データの仮想共有メモリ16A〜16Nからの読出し、又は書込みを行う。
演算プロセッサ11A〜11Nは、自プロセッサ内の仮想共有メモリ16の自領域へのデータ書込みと他領域からのデータの読出しで、プロセッサ1A〜1Nとデータの共有・交換を行うことができる。
The common bus DMA processors 17A to 17N read the data by designating the upper address with the area designation signal 833 and the lower address with the offset address designation signal 834 with respect to the virtual shared memories 16A to 16N. Output to the bus 92. Furthermore, an operation of reading data from the common bus 92 and writing to the virtual shared memory 16 with the same designation as described above is performed. Further, each data is read from or written to the virtual shared memories 16A to 16N at the timing of the trigger signals 831A to 831N.
The arithmetic processors 11A to 11N can share and exchange data with the processors 1A to 1N by writing data to the own area of the virtual shared memory 16 in the own processor and reading data from another area.

以上説明した実施例1〜3によれば、各演算プロセッサ11A〜11Nが、データの共有・交換を行うために半導体チップ外部の共有メモリに直接アクセスする必要はなく、同じ半導体チップ上にある内蔵メモリである仮想共有メモリ121A〜121N又は仮想共有メモリ16A〜16Nに対するデータの書込み・読出しを行えば良い。
一般的に、同じ半導体チップ上にある内蔵メモリ対する読込み・書込み動作に要する時間は、外部バスIF13A〜13Nを介して半導体チップ外部に対する読込み・書込み動作に要する時間よりも遥かに短い。
According to the first to third embodiments described above, the arithmetic processors 11A to 11N do not need to directly access the shared memory outside the semiconductor chip in order to share and exchange data, and the built-in memory on the same semiconductor chip. What is necessary is just to write / read data to / from the virtual shared memories 121A to 121N or the virtual shared memories 16A to 16N.
Generally, the time required for the read / write operation for the built-in memory on the same semiconductor chip is much shorter than the time required for the read / write operation to the outside of the semiconductor chip via the external bus IFs 13A to 13N.

また、本実施例では、ローカルバス4A〜4Nと共通バス92とを切り離したので、従来のように外部バスIF13を介した共通バス92へのアクセスの際にローカルバス4A〜4Nへのアクセスと時分割で実行されることがなく、共通バス92へのアクセスと、ローカルバス4A〜4Nへのアクセスとを並列に行うことができる。
よって、マルチプロセッサシステムにおいて必須となる共有メモリヘの読書きによるプログラム処理効率の低下を防止することができる。
In this embodiment, since the local buses 4A to 4N and the common bus 92 are separated, the access to the local buses 4A to 4N when accessing the common bus 92 via the external bus IF 13 as in the prior art. Access to the common bus 92 and access to the local buses 4A to 4N can be performed in parallel without being executed in a time division manner.
Therefore, it is possible to prevent a decrease in program processing efficiency due to reading and writing to the shared memory that is essential in the multiprocessor system.

本発明の実施の形態に係るマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the multiprocessor system which concerns on embodiment of this invention. 上記実施の形態に係るマルチプロセッサシステムの共有メモリ及び仮想共有メモリを示し、(a)は仮想共有メモリの記憶領域の割付け図、(b)は仮想共有メモリの各記憶領域への書込み読出し動作の説明図である。The shared memory and virtual shared memory of the multiprocessor system which concern on the said embodiment are shown, (a) is the allocation figure of the storage area of virtual shared memory, (b) is the write-read operation | movement to each storage area of virtual shared memory. It is explanatory drawing. 上記実施の形態に係る実施例1のマルチプロセッサシステムにおけるトリガ信号伝達バスの構成を示す図である。It is a figure which shows the structure of the trigger signal transmission bus | bath in the multiprocessor system of Example 1 which concerns on the said embodiment. 上記実施例1のマルチプロセッサシステムにおけるタイプ指定信号とトリガ信号とのタイミングチャートである。3 is a timing chart of a type designation signal and a trigger signal in the multiprocessor system of the first embodiment. 上記実施の形態に係る実施例2のマルチプロセッサシステムにおけるトリガ信号伝達バスの構成を示す図である。It is a figure which shows the structure of the trigger signal transmission bus | bath in the multiprocessor system of Example 2 which concerns on the said embodiment. 上記実施例2のマルチプロセッサシステムにおける共通バスIFの構成を示すブロック図である。It is a block diagram which shows the structure of common bus IF in the multiprocessor system of the said Example 2. FIG. 上記実施例2のマルチプロセッサシステムにおけるタイプ指定信号及びトリガ信号と、共通バスのデータ状態とのタイミングチャートである。It is a timing chart of the type designation signal and trigger signal and the data state of the common bus in the multiprocessor system of the second embodiment. 上記実施の形態に係る実施例3のマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the multiprocessor system of Example 3 which concerns on the said embodiment. 上記実施例3のマルチプロセッサシステムにおけるトリガ信号伝達バスの構成を示す図である。It is a figure which shows the structure of the trigger signal transmission bus | bath in the multiprocessor system of the said Example 3. FIG. 従来のマルチプロセッサシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the conventional multiprocessor system.

符号の説明Explanation of symbols

1A〜1N プロセッサ
2 共有メモリ
3 アクセス調停装置
4A〜4N ローカルバス
7 トリガ信号発生器
8 トリガ信号伝達バス
12A〜12N 内蔵メモリ
13A〜13N 外部バスIF
14A〜14N DMAプロセッサ
15A〜15N 共通バスIF
16A〜16N,121A〜121N 仮想共有メモリ
17A〜17N 共通バス用DMAプロセッサ
19A〜19N 内部バス
31A〜31N アクセス要求信号
32A〜32N アクセス許可信号
41A〜41N イネーブル付バスドライバ
42A〜42N ローカルメモリ
43A〜43N ローカルI/O
92 共通バス
151 ラッチレジスタ
152 トライステート出力バッファ
153 入力バッファ
831,831A〜831N トリガ信号
832 タイプ指定信号
833 領域指定信号
834 オフセットアドレス指定信号
1A to 1N Processor 2 Shared memory 3 Access arbitration device 4A to 4N Local bus 7 Trigger signal generator 8 Trigger signal transmission bus 12A to 12N Built-in memory 13A to 13N External bus IF
14A to 14N DMA processor 15A to 15N Common bus IF
16A to 16N, 121A to 121N Virtual shared memory 17A to 17N Common bus DMA processor 19A to 19N Internal bus 31A to 31N Access request signal 32A to 32N Access permission signal 41A to 41N Bus driver with enable 42A to 42N Local memory 43A to 43N Local I / O
92 Common bus 151 Latch register 152 Tri-state output buffer 153 Input buffer 831, 831A to 831N Trigger signal 832 Type designation signal 833 Area designation signal 834 Offset address designation signal

Claims (4)

半導体チップ内に、演算プロセッサと、データ読書き可能な内蔵メモリと、当該半導体チップ外部のローカルバスとの間でデータの入出力を行う外部バスインタフェースとを有して成る複数のプロセッサが、互いにデータの共有・交換を行うマルチプロセッサシステムにおいて、
前記複数のプロセッサの内部に、前記データの共有・交換に使用する記憶容量を有して前記内蔵メモリ内に配備された仮想共有メモリと、前記データの共有・交換に使用される共通バスインタフェースと、前記演算プロセッサとは独立に指定された前記仮想共有メモリの記憶領域から他の記憶領域へ複写動作を行うDMAプロセッサとを備え、
前記複数のプロセッサの外部に、前記共通バスインタフェース間を接続して前記データの共有・交換に使用される共通バスと、
前記DMAプロセッサを起動するトリガ信号及び前記仮想共有メモリに対するデータの書込み及び読出しの動作の形式を指定する指定信号を発生する発生手段と、この発生手段からのトリガ信号及び指定信号を各プロセッサの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 virtual shared memory provided in the internal memory having a storage capacity used for sharing and exchanging the data, and a common bus interface used for sharing and exchanging the data; A DMA processor that performs a copying operation from the storage area of the virtual shared memory specified independently of the arithmetic processor to another storage area,
A common bus used for sharing and exchanging the data by connecting the common bus interfaces outside the plurality of processors;
Generation means for generating a trigger signal for starting up the DMA processor and a specification signal for specifying the format of data write and read operations with respect to the virtual shared memory, and the trigger signal and the specification signal from the generation means are transmitted to the DMA of each processor. A transmission bus for transmitting to the processor ,
The multiprocessor system, wherein the DMA processor performs data write and read operations from the virtual shared memory in response to the trigger signal and the designation signal .
前記仮想共有メモリは、前記複数のプロセッサ毎の書込み用の領域に区分けされ、前記演算プロセッサは自プロセッサ内の仮想共有メモリの自プロセッサ用書込み領域へ他プロセッサに通知したいデータを書込み、当該仮想共有メモリの自プロセッサ用書込み領域以外の領域から他のプロセッサが通知したデータを読み出すことで、データの共有・交換を行う
ことを特徴とする請求項1に記載のマルチプロセッサシステム。
The virtual shared memory is divided into write areas for the plurality of processors, and the arithmetic processor writes data to be notified to other processors to the write area for the own processor in the virtual shared memory in the own processor, and the virtual shared memory 2. The multiprocessor system according to claim 1, wherein data sharing / exchange is performed by reading data notified by another processor from an area other than the write area for the own processor of the memory.
前記発生手段は、前記トリガ信号として、前記仮想共有メモリに書込まれた他プロセッサに通知したいデータを前記共通バスヘ出力するタイミング用の第1のトリガ信号と、前記共通バスで伝達される他プロセッサから通知されたデータを前記共通バスから読込むタイミング用の第2のトリガ信号とを、前記第1のトリガ信号が前記第2のトリガ信号よりも早いタイミングで生成する
ことを特徴とする請求項1又は2に記載のマルチプロセッサシステム。
The generation means includes, as the trigger signal, a first trigger signal for timing to output data to be notified to another processor written in the virtual shared memory to the common bus, and another processor transmitted on the common bus. A second trigger signal for timing for reading data notified from the common bus is generated at a timing when the first trigger signal is earlier than the second trigger signal. The multiprocessor system according to claim 1 or 2 .
前記仮想共有メモリを前記内蔵メモリの内部から出して前記プロセッサ内に備え、前記発生手段は、前記指定信号として前記仮想共有メモリに対する上位アドレスの指定を行う第1の指定信号と、下位アドレスの指定を行う第2の指定信号とを生成し、前記DMAプロセッサは、前記第1及び第2の指定信号に応じて前記仮想共有メモリに対する上位及び下位アドレスの指定を行ってデータの書込み及び読出しの動作を行う
ことを特徴とする請求項1又は2に記載のマルチプロセッサシステム。
The virtual shared memory is extracted from the internal memory and provided in the processor, and the generation means specifies a first designation signal for designating an upper address for the virtual shared memory as the designation signal, and designation of a lower address The DMA processor performs a data write and read operation by designating upper and lower addresses for the virtual shared memory in accordance with the first and second designation signals. The multiprocessor system according to claim 1 or 2 , wherein:
JP2005223975A 2005-08-02 2005-08-02 Multiprocessor system Active JP4539481B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005223975A JP4539481B2 (en) 2005-08-02 2005-08-02 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005223975A JP4539481B2 (en) 2005-08-02 2005-08-02 Multiprocessor system

Publications (2)

Publication Number Publication Date
JP2007041768A JP2007041768A (en) 2007-02-15
JP4539481B2 true JP4539481B2 (en) 2010-09-08

Family

ID=37799701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005223975A Active JP4539481B2 (en) 2005-08-02 2005-08-02 Multiprocessor system

Country Status (1)

Country Link
JP (1) JP4539481B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102407917B1 (en) 2015-11-12 2022-06-10 삼성전자주식회사 Multi-Processor System Including Memory Shared By Multi-Processor And Method there-of

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS585867A (en) * 1981-06-30 1983-01-13 エレベ−タ−・ゲ−エムベ−ハ− Data transmission method and apparatus
JPS5896363A (en) * 1981-12-02 1983-06-08 Mitsubishi Electric Corp Data transfer control system
JPH02132543A (en) * 1988-11-12 1990-05-22 Nec Corp Information processor
JPH09237244A (en) * 1996-02-29 1997-09-09 Hitachi Ltd Information processor having memory transfer function

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS585867A (en) * 1981-06-30 1983-01-13 エレベ−タ−・ゲ−エムベ−ハ− Data transmission method and apparatus
JPS5896363A (en) * 1981-12-02 1983-06-08 Mitsubishi Electric Corp Data transfer control system
JPH02132543A (en) * 1988-11-12 1990-05-22 Nec Corp Information processor
JPH09237244A (en) * 1996-02-29 1997-09-09 Hitachi Ltd Information processor having memory transfer function

Also Published As

Publication number Publication date
JP2007041768A (en) 2007-02-15

Similar Documents

Publication Publication Date Title
US11237728B2 (en) Method for accessing extended memory, device, and system
EP3176701B1 (en) Systems and methods for transmitting an access request via a flexible register access bus
JP4539481B2 (en) Multiprocessor system
US20130117533A1 (en) Coprocessor having task sequence control
JP2009296195A (en) Encryption device using fpga with multiple cpu cores
JP4902640B2 (en) Integrated circuit and integrated circuit system
TWI474254B (en) Method and apparatus for executing commands in a memory system and data storage system
JP6125168B2 (en) Debugging barrier transactions
JP2005293596A (en) Arbitration of data request
JP6965523B2 (en) Multiprocessor system
JP4424244B2 (en) Multiprocessor system
JP2012022479A (en) Microcontroller and its control method
JP4257358B2 (en) Bus control method and apparatus
JP6160273B2 (en) Semiconductor circuit device and electronic device
JP4765003B2 (en) Multiprocessor system
JP5130754B2 (en) Semiconductor integrated circuit and memory system
JP5218413B2 (en) Information processing apparatus and control method thereof
US7689864B2 (en) Processor comprising an integrated debugging interface controlled by the processing unit of the processor
CN111625411A (en) Semiconductor device and debug system
JP2005107873A (en) Semiconductor integrated circuit
JP4229242B2 (en) Direct memory access controller
JP2007506174A (en) Integrated circuit having a plurality of communication digital signal processors
JP2004021751A (en) Debug system, debug program, and debug program storage medium
WO2011030498A1 (en) Data processing device and data processing method
JP2007328647A (en) Data transfer method between cpus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080617

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090820

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: 20100601

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100614

R150 Certificate of patent or registration of utility model

Ref document number: 4539481

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: 20130702

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130702

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20130702

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250