JP6535516B2 - Multi-programmable device system and control method thereof - Google Patents

Multi-programmable device system and control method thereof Download PDF

Info

Publication number
JP6535516B2
JP6535516B2 JP2015118946A JP2015118946A JP6535516B2 JP 6535516 B2 JP6535516 B2 JP 6535516B2 JP 2015118946 A JP2015118946 A JP 2015118946A JP 2015118946 A JP2015118946 A JP 2015118946A JP 6535516 B2 JP6535516 B2 JP 6535516B2
Authority
JP
Japan
Prior art keywords
address
programmable device
data
shared memory
memory
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
JP2015118946A
Other languages
Japanese (ja)
Other versions
JP2017004337A (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.)
Azbil Corp
Original Assignee
Azbil Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Azbil Corp filed Critical Azbil Corp
Priority to JP2015118946A priority Critical patent/JP6535516B2/en
Publication of JP2017004337A publication Critical patent/JP2017004337A/en
Application granted granted Critical
Publication of JP6535516B2 publication Critical patent/JP6535516B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Multi Processors (AREA)

Description

本発明は、プロセッサその他のデバイス間通信方式に関した発明であって、特に、共有メモリと、複数のデバイスとから構成されて、その高速データ通信を実現する技術に関する。     The present invention relates to a communication method between processors and other devices, and more particularly, to a technology for realizing high-speed data communication that includes a shared memory and a plurality of devices.

旧来、あるデバイスAからデバイスBに対して、共有メモリを介して通信等のための動作変更・指示を行う場合、相手の振る舞いを即時変更させるように設定データが書き変わった場合は、その変更内容を知るためにソフトウェアで設定データ用に割り当てられた領域の中から、いずれが変化したかを知るために、該当領域をすべてサーチして知る必要があった。高速な応答性を要求する通信分野では、この検索に要する遅延(レイテンシ)が問題となっていた。   Traditionally, when an operation change / instruction for communication etc. is given from a device A to a device B via a shared memory, if the setting data is rewritten so as to immediately change the behavior of the other party, the change Of the areas allocated for setting data by software in order to know the contents, it is necessary to search and know all the relevant areas in order to know which has changed. In the communication field that requires high-speed responsiveness, the delay (latency) required for this search has been a problem.

特許文献1にある発明は、そのようなデバイス(CPU)間通信における負荷の低減と処理時間の短縮を図るために、送信側のCPU1と受信側のCPU2は共有メモリを使用し、ブロック転送型共有データバスを介して通信データの授受を行なう。データ送信CPUは、前記共有メモリから前記バッファ状態フラグを読み出し、前記データバッファが使用中でなければ前記バッファ状態フラグの内容と送信データを一回のブロック転送で前記共有メモリに転送した後データ受信CPUにデータ引取要求を行ない、データ受信CPUは前記データ引取要求を割込みで受領して前記データバッファからデータの引取りを行なって前記バッファ状態フラグを未使用状態に書き換えてCPU間のデータ授受を行なう構成を有する。   In the invention described in Patent Document 1, in order to reduce the load and processing time in communication between such devices (CPUs), the CPU 1 on the transmission side and the CPU 2 on the reception side use a shared memory, and block transfer type Communication data is exchanged via a shared data bus. Data transmission The CPU reads the buffer status flag from the shared memory, and if the data buffer is not in use, the contents of the buffer status flag and transmission data are transferred to the shared memory in a single block transfer and then received. The data receiving request is sent to the CPU, and the data receiving CPU receives the data receiving request as an interrupt, takes data from the data buffer, rewrites the buffer status flag to an unused state, and transfers data between the CPUs Have a configuration to be performed.

このような共有メモリ回路は、汎用品を用いた場合、実装のためのコストが高いという問題があった。またFPGAなどに共有メモリブロックを内蔵させた場合、機能の実現は可能であるが、他の周辺制御回路も含むため回路の集積度が高まり、検証に非常に時間を要し早期に製品投入させるのが難しいという問題があった。そこで、特許文献2の発明は、FPGAに、セレクタを備え、各CPUが共有メモリを使用する状況に応じて、当セレクタで割込み/ビジー信号を選択し、CPUに出力して動作モードを切り替えた。こうすることで、製品を早期に市場投入を可能にするとともに、低コストでメモリ容量の拡張性を兼ね備えた共有メモリ切替え回路を提供する。   Such a shared memory circuit has a problem that the cost for mounting is high when a general-purpose product is used. When a shared memory block is built in an FPGA, etc., although it is possible to realize the function, it also includes other peripheral control circuits, so the degree of integration of the circuits is increased and it takes a lot of time for verification and the product is released early. There was a problem that was difficult. Therefore, according to the invention of Patent Document 2, the FPGA is provided with a selector, and according to the situation where each CPU uses a shared memory, this selector selects an interrupt / busy signal and outputs it to the CPU to switch the operation mode . By doing this, it is possible to bring products to market early and provide a shared memory switching circuit that has low cost and expandability of memory capacity.

特許平5−81185号公報Patent Publication 5-81185 gazette 特開2008−287571号公報JP, 2008-287571, A

従来の発明では、マルチデバイス間で高速なデータ通信はある程度図ることができ、また実装上の問題も解決してきている。しかし、高速な即時通知の応答性を維持しつつ、複数デバイス間の、あるいは、1デバイスからの複数の通信指示を低レイテンシで伝達することには不充分であった。また、設計上で動作変更の必要な設定項目の数をハードウエア変更なしにメモリの範囲内で自由に増やすことも困難であった。特に、一つのデバイスからの指令が多重に行われた場合の多重割込み処理能力に欠ける問題があった。   According to the conventional invention, high-speed data communication between multiple devices can be achieved to some extent, and the problem in implementation has also been solved. However, it has been insufficient to transmit a plurality of communication instructions between a plurality of devices or from one device with low latency while maintaining high responsiveness of quick notification. In addition, it is also difficult to freely increase the number of setting items required to change the operation in the design within the memory without changing the hardware. In particular, there has been a problem of lack of multiple interrupt processing capability when instructions from one device are multiplexed.

この問題を解決するために、本願発明はプログラマブルデバイスを用いることにより、一のデバイスが設定領域の書き換えた変更事象を、即時に他のデバイスに通知する手段を提供する。   To solve this problem, the present invention uses programmable devices to provide a means for one device to immediately notify another device of a change event that has been rewritten in the setting area.

本願発明は、少なくとも2つのプログラマブルデバイスと、
共有メモリと、
ライト監視回路と、
前記共有メモリにかかる書き込み情報を記憶するアドレス保持メモリと、を備えて、
前記ライト監視回路は、
一方のプログラマブルデバイスからの前記共有メモリへの書き込みアドレスを監視して、前記共有メモリへの所定の書き込みがあった場合、
前記アドレス保持メモリにある前記書き込み情報を他方のプロセッサに通知するように制御することを特徴とするマルチ・プログラマブルデバイス・システムである。
The present invention comprises at least two programmable devices;
Shared memory,
A light monitoring circuit,
An address holding memory for storing write information on the shared memory;
The light monitoring circuit
Monitoring a write address from one programmable device to the shared memory, and performing a predetermined write to the shared memory;
The multi-programmable device system is controlled to notify the other processor of the write information stored in the address holding memory.

また、本願発明は、前記保持メモリはFIFO形式であることを特徴とするものである。   Also, the present invention is characterized in that the holding memory is of FIFO type.

さらに、本願発明はその制御方法の発明であって、
少なくとも2つのプログラマブルデバイスと、
共有メモリと、
ライト監視回路と、
前記共有メモリにかかる書き込み情報を記憶するアドレス保持メモリと、
を備えたマルチ・プログラマブルデバイス・システムの制御方法であって、
一方のプログラマブルデバイスが共有メモリへデータ改変を書き込むステップと、
前記ライト監視装置は、そのデータ改変にかかるアドレスを検知し所定条件で有効な場合に、他方のプログラマブルデバイスへ通知するステップと、
前記ライト監視装置が当該アドレス情報をアドレス保持メモリに蓄積するステップと、
他方のプログラマブルデバイスが前記通知を認識し起動されて前記アドレス保持メモリから当該アドレス情報を読み出すステップと、
を備えることを特徴とするマルチ・プログラマブルデバイス・システムの制御方法である。
また、アドレス保持メモリがFIFO形式を特徴とするものでもよい。
Furthermore, the present invention is an invention of the control method,
At least two programmable devices,
Shared memory,
A light monitoring circuit,
An address holding memory for storing write information on the shared memory;
A control method of a multi programmable device system provided with
One programmable device writing data modifications to the shared memory;
The write monitoring device detects an address related to the data modification and notifies the other programmable device when it is valid under a predetermined condition;
The write monitoring device storing the address information in an address holding memory;
The other programmable device recognizes and activates the notification and reads out the address information from the address holding memory;
A control method of a multi-programmable device system, comprising:
Further, the address holding memory may be characterized by the FIFO format.

発明の作用・効果Operation and effect of the invention

本願発明により、プログラマブルデバイスにおける設定データ共有において、データの変更通知を提供する場合にハードウエアで構成された固定仕様の専用回路を実装しなくともよくなり、設定パラメータ数が増加するなどの仕様変更に柔軟に対応できる。
また、基板やチップなどによりマルチプログラマブルデバイス・システムが一旦出来上がってからも、変更通知可能な設定パラメータの追加変更が容易にできるようになった。
According to the present invention, when providing notification of change of data in setting data sharing in a programmable device, it is not necessary to mount a dedicated circuit of a fixed specification configured by hardware, and specification changes such as an increase in the number of setting parameters Can respond flexibly to
Also, once a multi-programmable device system has been created by a substrate, chip, etc., it has become possible to easily add and change setting parameters that can be notified of changes.

本願発明のマルチ・プログラマブルデバイス・システムの模式図を示す。FIG. 1 shows a schematic view of a multi-programmable device system of the present invention. 本願発明の実施の一態様であるマルチ・プログラマブルデバイス・システムの詳細構成を示す。1 shows a detailed configuration of a multi programmable device system according to an embodiment of the present invention. 本願発明の実施の一態様であるマルチ・プログラマブルデバイス・システムの状態遷移チャートを示す。1 shows a state transition chart of a multi-programmable device system according to an embodiment of the present invention. 本願発明の実施の一態様であるマルチ・プログラマブルデバイス・システムのアドレス保持メモリの概略を示す。1 schematically shows an address holding memory of a multi-programmable device system according to an embodiment of the present invention.

(1) 本願発明の構成要素
図1に示すように、本実施の形態に係るマルチ・プログラマブルデバイス・システムは複数のプログラマブルデバイスを能動要素として構成する。本願におけるプログラマブルデバイスとは、ソフトウェアでプログラムが可能なCPU(CentralProcessingUnit)コアやそれに付随するローカルメモリや入出力回路を備えたデバイスを意味する。本願ではこれ以降、単に「デバイス」と称する。
(1) Components of the Present Invention As shown in FIG. 1, the multi-programmable device system according to the present embodiment configures a plurality of programmable devices as active elements. The programmable device in the present application means a device provided with a CPU (Central Processing Unit) core that can be programmed by software and an associated local memory or input / output circuit. In the present application, this will be referred to simply as "device" hereinafter.

以降は詳細なる図2も用いて、構成要素を符号付けして説明する。まず、そのデバイスA,Bについてであるが、例えば、10のデバイスAはデータの変更操作を行うデバイス、20のデバイスBはその変更を認識する必要のあるデバイスとする。これらはバス500で接続される。   In the following, the components will be described with reference to FIG. 2 which will be described in detail. First, with regard to the devices A and B, for example, the device A of 10 is a device that performs data change operation, and the device B of 20 is a device that needs to recognize the change. These are connected by a bus 500.

300はメモリであって、デバイスA,Bがバス経由で共有している記憶素子デバイスである。いわゆる共有メモリであるが、一方のデバイスA、他方のデバイスBの両方からアクセスできるものであれば、一般的なメモリでよく、同時アクセス性や共有のための調停手段は問わない。 A memory 300 is a storage element device shared by the devices A and B via a bus. A so-called shared memory may be a general memory as long as it can be accessed by both one device A and the other device B, and any arbitration means for simultaneous accessibility and sharing may be used.

100は本願発明の中枢的機能を担う制御回路であって、ライト監視回路と称する。そこには、データ変更通知制御レジスタ110、アドレス範囲判定部120、および通知判定部130を備える。以降、各機能部位を説明するが、特にそれが出力する機能について述べるために、図2の出力矢印符号で各機能モジュールの果たすことを示す。 A control circuit 100 having a central function according to the present invention is called a light monitoring circuit. The data change notification control register 110, the address range determination unit 120, and the notification determination unit 130 are provided therein. Hereinafter, each functional part will be described, but in order to particularly describe the function that it outputs, the output arrow code in FIG. 2 indicates what each functional module performs.

データ変更通知制御レジスタ110は、バス500を通じて上位のデバイスから設定変更が可能な、データ変更通知に関する設定を行い、他の機能部位へ情報を伝達保持するための部位である。その出力機能は、アドレスのモニタ条件に関する通知111と、デバイスA,Bへの変更通知を有効化する112と、さらにアドレス保持メモリ200へのリード制御113がある。 The data change notification control register 110 is a part for setting data change notification which can be changed by a higher-level device through the bus 500, and transmitting and holding information to other functional parts. The output function includes a notification 111 on the address monitor condition, 112 to enable change notification to the devices A and B, and a read control 113 to the address holding memory 200.

アドレス範囲判定部120は、アクセスされたメモリアドレスが、設定変更としてモニタすべきアドレス空間であるかどうかを判断する部位である。範囲に該当しているかどうかの判定回路としては、比較器による方法や、マスク計算による方法がある、モニタ対象空間かどうかを判断できるロジックがあればよい。そして、通知判定部130に対してモニタ条件の判定通知121を行う。 The address range determination unit 120 is a unit that determines whether the accessed memory address is an address space to be monitored as a setting change. As a circuit for judging whether or not it falls within the range, it is sufficient if there is a method by a comparator, or a method by mask calculation, which can judge whether it is a space to be monitored or not. Then, the notification judgment unit 130 is notified of the judgment of the monitor condition 121.

通知判定部130は、アドレス範囲判定部120からのモニタ空間か否かの判定結果と、データ変更通知制御レジスタ110から通知された通知有効状態により、デバイスAないしBに変更情報を通知(割込み)出力131する部位である。その他、アドレス保持メモリ200へ変更アドレス情報のライト制御132を行う。 The notification determination unit 130 notifies the devices A to B of change information (interruption) according to the determination result as to whether or not it is the monitor space from the address range determination unit 120, and the notification valid state notified from the data change notification control register 110. This is a part to be output 131. In addition, write control 132 of changed address information to the address holding memory 200 is performed.

アドレス保持メモリ200は、通知判定部130により、改変されたことを記録すべきアドレスを履歴保持しておき、また変更通知を受けたデバイスから、バス500経由で、変更が発生したアドレス空間を順次照会可能にするメモリ機能を提供する。機能的には、本願発明は多重割込み処理を旨とするので、FirstIn−FirstOut(FiFo)であり、その旨のバッファであれば、キュー構造、リングバッファ構造は問わない。 The address holding memory 200 holds the history of the address to which the change is to be recorded by the notification judging unit 130, and the address space in which the change has occurred is sequentially read from the device notified of the change via the bus 500. Provide a memory function that makes it queryable. Functionally, since the present invention aims at multiple interrupt processing, it is FirstIn-FirstOut (FiFo), and any queue structure or ring buffer structure may be used as long as it is a buffer to that effect.

その他に、バス500の内部バスを細分化すると、データバス、アドレスバス、そしてリード・ライトの指示や、要求の有効等を示すためのバス制御信号により構成される。ライト監視回路100はバス500をSnooping(覗き見)する機能を果たすため、バス本来の機能に論理的悪影響を与えることなく付加できる。また、90はバスコントローラであって、デバイス間でバス500の調停を行うものであるが、デバイス間にて相互直接的に調停が効くならその構成及びアルゴリズムは問わない。   In addition, when the internal bus of the bus 500 is subdivided, it is configured by a data bus, an address bus, a read / write instruction, and a bus control signal for indicating the validity of a request or the like. Since the write monitoring circuit 100 performs the function of snooping the bus 500, it can be added without adversely affecting the original function of the bus. Reference numeral 90 denotes a bus controller, which arbitrates the bus 500 between devices, but the configuration and algorithm thereof do not matter as long as the arbitration can be effected directly between the devices.

それでは次に、各機能モジュールの動作と信号の流れを説明するために、図3の状態遷移チャートに基づいて説明する。   Next, in order to explain the operation of each functional module and the flow of signals, it will be described based on the state transition chart of FIG.

(2) 本願発明の動作
1.初期設定(レジスタ設定)する
デバイスAからの指示でライト監視装置100の動作設定を行うのが、図3の上段の例示である。この設定では、アドレスのモニタ条件に関する設定と、デバイスA,Bへの変更通知を有効化する設定を行う。
(2) Operation of the Present Invention Initial Setting (Register Setting) Setting the operation of the light monitoring apparatus 100 according to an instruction from the device A is an example of the upper part of FIG. In this setting, settings relating to address monitoring conditions and settings for enabling change notification to devices A and B are made.

まず、デバイスAからデータ変更通知レジスタ110へモニタ条件通知指令を書き込む(以降図中ステップをSと記すと、S10である)。これは通常のバスアクセスで行う。
この指令を受けたデータ変更通知レジスタ110は、アドレス範囲判定部120へモニタ条件を通知する(S111)。続いて、データ変更通知レジスタ110は、通知判定部130へ通知制御を有効化する(S112)。こうして、以降のデバイスA、デバイスBとのやり取りに対する準備を行った。
First, a monitor condition notification instruction is written from the device A to the data change notification register 110 (hereinafter, step S10 in the figure is S10). This is done by normal bus access.
The data change notification register 110 receiving this command notifies the address range determination unit 120 of the monitor condition (S111). Subsequently, the data change notification register 110 validates notification control to the notification determination unit 130 (S112). Thus, the preparation for the exchange with the device A and the device B was performed.

以降は、ランタイムの動作であり、図3の中段以下で示す。
2.通知対象の設定変更する
これは、通知対象となる設定変更を行う(メモリ書き換え)ステップである。デバイスAからメモリ300の対象とする(改変)アドレスに書き込みを行う(S11)。これは同時に、ライト監視回路100にも通じているので、その部位であるアドレス範囲判定部120への変更箇所指示となる。
The following is the operation of the runtime, which is shown in the middle part of FIG.
2. Changing Setting of Notification Target This is a step of changing the setting to be notified (memory rewrite). Writing is performed from the device A to a target (altered) address of the memory 300 (S11). Since this is also communicated to the write monitoring circuit 100 at the same time, it becomes an instruction to change the location to the address range determination unit 120 that is the location.

続いて、アドレス範囲判定部120は、該当のモニタ条件判定を行う(S121)。それが適正であったら、通知判定部130は、デバイスBへ変更通知(割込み)をかける(S131)。同時に、アドレス保持メモリ200に当該アドレス情報のライト処理を行う(S132)。このライト処理はFIFO形式に則って行われる必要がある。   Subsequently, the address range determination unit 120 determines the corresponding monitor condition (S121). If it is correct, the notification determination unit 130 sends a change notification (interruption) to the device B (S131). At the same time, write processing of the address information is performed in the address holding memory 200 (S132). This write process needs to be performed according to the FIFO format.

3.変更された情報をメモリから取得する
中段から下段へ移行するステップS20で割り込みをかけられたデバイスBは、データ変更通知制御レジスタ110へアドレス保持メモリ200へのアクセスの準備を指令する(S21)。例えば、割込みベクタから解析して、アドレス保持メモリ200からの読み出しを行う(S21)。但し、データ変更通知制御レジスタ110によるアドレス保持メモリ200へのリード制御が、FIFO形式に則って行われる(S113)。後述するOutポインタの後処理などである。
3. Acquisition of Changed Information from Memory The device B interrupted in step S20 of transitioning from middle stage to lower stage instructs the data change notification control register 110 to prepare for access to the address holding memory 200 (S21). For example, the interrupt vector is analyzed and read from the address holding memory 200 is performed (S21). However, read control to the address holding memory 200 by the data change notification control register 110 is performed according to the FIFO format (S113). This is post-processing of the Out pointer described later.

同時に、デバイスBは、アドレス保持メモリ200から改変アドレスを取得する(S22)。これが設定取得である。その結果、得られたアドレスに基づくデバイスAからの変更に係る情報データを知るのである。   At the same time, the device B acquires a modified address from the address holding memory 200 (S22). This is setting acquisition. As a result, the information data related to the change from the device A based on the obtained address is known.

上記図3の処理フローでの説明のステップの番号付けは、機能部位をN、そのシーケンスをnと見なすと、S(N+n)の表記にしている。この符号は、図2の構成要素間の出力信号に一致しているはずである。   The numbering of the steps described in the process flow of FIG. 3 is S (N + n), where N is the functional part and n is the sequence. This code should correspond to the output signal between the components of FIG.

最後に、図4にアドレス保持メモリ200の内容概要を示す。
・Indexとして、Inポインタ/Outポインタで本保持メモリのバッファに書き込むべき位置/一方バッファから読み出すべき位置を示す。
・Bufferは、FIFO形式にかかる複数のイベント(図中古いものから#1、#2、#3、#4)に関して、そのデバイスAからの改変情報のありかを示すアドレス値がシングルワードアドレス値でストアされている。これをデバイスBは取得して改変データを得る訳である。本例では、#1の割込み起因の改変アドレスが読み出される。しかし、#2、#3はまだ処理されずにスタックされたままであり、新たにデバイスAからの書き込みがあれば#4のバッファが使用される。こうして多重割込み処理に対応する。
Finally, FIG. 4 shows the outline of the contents of the address holding memory 200.
As Index, the In pointer / Out pointer indicates the position to be written to the buffer of the main holding memory or the position to be read from the one buffer.
-Buffer has a single word address value indicating the presence or absence of modification information from device A for a plurality of events (from the oldest in the figure to # 1, # 2, # 3, # 4) concerning the FIFO format. Are stored at. Device B obtains this to obtain modification data. In this example, the modified address resulting from the # 1 interrupt is read. However, # 2 and # 3 are still stacked without being processed, and the buffer of # 4 is used if there is a new write from device A. Thus, multiple interrupt processing is supported.

別の例として、開始アドレス/終了アドレス(またはデータ長)をセットにしてバッファにストアすれば、ブロックメモリ転送が可能で、バーストアクセスモードで可能性ある。なお、バッファの数は割込み数とデバイスの処理能力との関係から余裕を持たせた大きさにする必要はある。 As another example, if a start address / end address (or data length) is stored as a set in a buffer, block memory transfer is possible, which is possible in the burst access mode. The number of buffers needs to be large enough to allow for the relationship between the number of interrupts and the processing capability of the device.

昨今、多機能化したマイコンシステムでは、CPUを用いた複数のボードでの実装が行われる。メインのCPUボードとサブである周辺IOボードを組み合わせた例など多い。また、SoC(System On Chip)のようなワンチップ内の複数のCPUで構成されるコアを持つシステムでもバスを介してメモリをそれぞれからアクセスできるケースが一般的である。そのような開発の場面で、メモリを介して情報のやり取りをする場合に、本願発明は大いに効果がある。   Recently, in a multi-functionalized microcomputer system, mounting with a plurality of boards using a CPU is performed. Many examples combine the main CPU board with the peripheral IO boards that are sub. Further, even in a system having a core composed of a plurality of CPUs in one chip, such as a system on chip (SoC), it is general that the memory can be accessed from each via a bus. In the context of such development, the present invention is very effective when exchanging information via memory.

特に、当初定めた仕様以外のサブCPUボードを増設する場合に、本願発明ではライト監視回路100の設定をデバイスからプログラマブルにしておけば、メインCPUのハードウエアの改造なしに、容易に新たなサブCPUボードに対応することができる。 In particular, when sub CPU boards other than the originally defined specifications are added, if the setting of the light monitoring circuit 100 is made programmable from the device according to the present invention, new subs can be easily created without modifying the main CPU hardware. It can correspond to a CPU board.

本願の実施例で示した設計上の変更追加は可能であり、そのような変更を行ったとしても、本願発明の趣旨を逸脱しない限りはこの発明の範囲に入る。   The design changes and additions described in the embodiments of the present application are possible, and even if such changes are made, they fall within the scope of the present invention without departing from the spirit of the present invention.

10 デバイスA
20 デバイスB
90 バスコントローラ
100 ライト監視回路
110 データ変更通知制御レジスタ
120 アドレス範囲判定部
130 通知判定部
200 アドレス保持メモリ
300 共有メモリ
500 バス


10 Device A
20 device B
90 bus controller 100 write monitoring circuit 110 data change notification control register 120 address range determination unit 130 notification determination unit 200 address holding memory 300 shared memory 500 bus


Claims (3)

少なくとも2つのプログラマブルデバイスと、
共有メモリと、
ライト監視回路と、
前記共有メモリにかかる書き込み情報をFIFO形式で記憶するアドレス保持メモリと、
を備え、
前記ライト監視回路は、
一方のプログラマブルデバイスからの前記共有メモリへのデータの書き込みがあった場合、データが書き込まれた前記共有メモリのアドレスが所定条件を満たすかを判定し、
満たすと判定した場合に、他方のプログラマブルデバイスへデータの書き込みを通知すると共に、データが書き込まれた前記共有メモリのアドレスの情報を、前記書き込み情報として前記アドレス保持メモリに記録し、
前記ライト監視回路からの通知を受けた他方のプログラマブルデバイスは、
前記ライト監視回路からの通知に基づき前記アドレス保持メモリから前記アドレスの情報を読み出し、
前記アドレス保持メモリから読みだされた前記アドレスの情報に基づき前記共有メモリからデータを取得する、マルチ・プログラマブルデバイス・システム。
At least two programmable devices,
Shared memory,
A light monitoring circuit,
An address holding memory for storing write information concerning the shared memory in a FIFO format ;
Bei to give a,
The light monitoring circuit
When one programmable device writes data to the shared memory, it is determined whether the address of the shared memory to which the data is written satisfies a predetermined condition.
When it is determined that the condition is satisfied, the other programmable device is notified of the writing of data, and the information of the address of the shared memory to which the data is written is recorded in the address holding memory as the writing information.
The other programmable device notified by the light monitoring circuit is
The information of the address is read from the address holding memory based on the notification from the write monitoring circuit,
A multi-programmable device system for acquiring data from the shared memory based on information of the address read from the address holding memory .
少なくとも2つのプログラマブルデバイスと、
共有メモリと、
ライト監視回路と、
前記共有メモリにかかる書き込み情報をFIFO形式で記憶するアドレス保持メモリと、
を備えたマルチ・プログラマブルデバイス・システムの制御方法であって、
一方のプログラマブルデバイスが前記共有メモリへデータを書き込むステップと、
前記ライト監視回路がデータが書き込まれた前記共有メモリのアドレス所定条件を満たすかを判定し、満たすと判定した場合に、他方のプログラマブルデバイスへデータの書き込みを通知するステップと、
前記ライト監視回路、データが書き込まれた前記共有メモリのアドレスの情報を、前記書き込み情報として前記アドレス保持メモリに記録するステップと、
他方のプログラマブルデバイスが前記ライト監視回路からの通知に基づき前記アドレス保持メモリから前記アドレス情報を読み出すステップと、
他方のプログラマブルデバイスが、前記アドレス保持メモリから読みだされた前記アドレスの情報に基づき前記共有メモリからデータを取得するステップと、
有する、マルチ・プログラマブルデバイス・システムの制御方法。
At least two programmable devices,
Shared memory,
A light monitoring circuit,
An address holding memory for storing write information concerning the shared memory in a FIFO format ;
A control method of a multi programmable device system provided with
Comprising the steps of one of the programmable device writes data into the shared memory,
A step wherein the light monitoring circuit, an address of the shared memory data has been written to determine satisfy a predetermined condition, when it is determined that satisfy, for notifying the writing of data to the other programmable device,
The write monitoring circuit recording, as the write information, the information on the address of the shared memory where the data is written in the address holding memory;
Other programmable device, a step of reading the address information from said address holding memory based on the notification from the write monitoring circuit,
The other programmable device acquiring data from the shared memory based on the information of the address read from the address holding memory;
A method of controlling a multi-programmable device system, comprising:
前記ライト監視回路は、前記アドレス保持メモリに前記アドレス情報が記憶されている限りは、前記他方のプログラマブルデバイスへ通知するステップを継続する、請求項2に記載のマルチ・プログラマブルデバイス・システムの制御方法。
The light monitoring circuit, as long as the information of the address to the address holding memory is stored, and continues the step of notifying the other programmable device, control of the multi-programmable device system according to claim 2 Method.
JP2015118946A 2015-06-12 2015-06-12 Multi-programmable device system and control method thereof Active JP6535516B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015118946A JP6535516B2 (en) 2015-06-12 2015-06-12 Multi-programmable device system and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015118946A JP6535516B2 (en) 2015-06-12 2015-06-12 Multi-programmable device system and control method thereof

Publications (2)

Publication Number Publication Date
JP2017004337A JP2017004337A (en) 2017-01-05
JP6535516B2 true JP6535516B2 (en) 2019-06-26

Family

ID=57751842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015118946A Active JP6535516B2 (en) 2015-06-12 2015-06-12 Multi-programmable device system and control method thereof

Country Status (1)

Country Link
JP (1) JP6535516B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62226366A (en) * 1986-03-28 1987-10-05 Nec Corp Shared memory system
JPH01233651A (en) * 1988-03-15 1989-09-19 Fujitsu Ltd Communication control system

Also Published As

Publication number Publication date
JP2017004337A (en) 2017-01-05

Similar Documents

Publication Publication Date Title
JP3807250B2 (en) Cluster system, computer and program
US8051234B2 (en) Multiprocessor system
US7783817B2 (en) Method and apparatus for conditional broadcast of barrier operations
JP2009238001A (en) Computer system
JP2007058716A (en) Data transfer bus system
KR20020008955A (en) Bus system and execution scheduling method for access commands thereof
JP4642531B2 (en) Arbitration of data requests
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
JP4193746B2 (en) Matrix bus connection system
US7895388B2 (en) Bus control device
US10346328B2 (en) Method and apparatus for indicating interrupts
JP6535516B2 (en) Multi-programmable device system and control method thereof
US7254667B2 (en) Data transfer between an external data source and a memory associated with a data processor
US10997105B2 (en) Semiconductor device and method of operating the same
US8966149B2 (en) Emulation of an input/output advanced programmable interrupt controller
US20100153610A1 (en) Bus arbiter and bus system
JP2005107873A (en) Semiconductor integrated circuit
JP2006285872A (en) Multi-cpu system
JP5087884B2 (en) Data processing unit and data processing apparatus using the same
JP6626216B2 (en) controller
JP2006031227A (en) Computer system using dma transfer
JP2013109394A (en) Data processing device
JP2005182299A (en) Device for monitoring pci bus
JP2012173847A (en) Bus arbitration device and bus arbitration method
JP2000181855A (en) Dma transfer system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190603

R150 Certificate of patent or registration of utility model

Ref document number: 6535516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250