JP2014170361A - Information processor, bus division method and bus division program - Google Patents

Information processor, bus division method and bus division program Download PDF

Info

Publication number
JP2014170361A
JP2014170361A JP2013041612A JP2013041612A JP2014170361A JP 2014170361 A JP2014170361 A JP 2014170361A JP 2013041612 A JP2013041612 A JP 2013041612A JP 2013041612 A JP2013041612 A JP 2013041612A JP 2014170361 A JP2014170361 A JP 2014170361A
Authority
JP
Japan
Prior art keywords
bus
master
switch
information processing
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013041612A
Other languages
Japanese (ja)
Inventor
Kentaro Hashimoto
健太郎 橋本
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2013041612A priority Critical patent/JP2014170361A/en
Publication of JP2014170361A publication Critical patent/JP2014170361A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To increase the availability of a circuit in a two-wire serial bus.SOLUTION: An information processor consists of a two-wire serial bus system 100, and includes a plurality of master devices 10; one or more slave devices 20 and a switch 30 for dividing a bus into a plurality of buses such that at least one master device 10 exists on the respective divided buses. The master devices 10 are configured to operate as masters on the respective divided buses such that those master devices are allowed to operate in parallel as multi-masters. Also, the switch 30 is configured to emulate the functions of the master devices or slave devices.

Description

本発明は、二線シリアルバスシステムに関し、特に、バスの分割技術に関する。   The present invention relates to a two-wire serial bus system, and more particularly to a bus division technique.

デバイス間の情報伝達を行うためのインタフェースとして、I2C(Inter Integrated Circuit)バスなどが知られている。I2Cとはデータ線とクロック線の二本で通信が可能となる通信方式で、シンプルで製造コストを抑えることが出来るため、当初あまり速度が必要とされない場合に多く用いられてきた。さらに、配線本数が少なくてすむメリットから近年では多様な用途で使われるようになっており、今では規格における通信速度も拡張され徐々に通信速度も高速化されてきている。   As an interface for transmitting information between devices, an I2C (Inter Integrated Circuit) bus or the like is known. I2C is a communication method that enables communication using two data lines and a clock line. Since it is simple and can reduce the manufacturing cost, it is often used when the speed is not so high. Furthermore, in recent years, it has been used for various purposes because of the advantage that the number of wirings can be reduced. Now, the communication speed in the standard is expanded and the communication speed is gradually increased.

しかし、I2Cでは、配線長による波形なまりなども発生するため、長配線には向いておらず、実際には高速通信を使う制約も厳しい。またマルチマスタをサポートしているものの、デイジーチェーンで繋がれるために、同時に複数のデバイスがマスタになるのではなく、同時に通信を始めようとした場合には衝突検出機能とアービトレーション機能によりデータ破壊を防いで共存させているものである。I2Cによる通信方式では時間的に区切って見ると、一対一、あるいは一対複数の通信しか出来ない。   However, in I2C, waveform rounding due to the wiring length also occurs, so it is not suitable for long wiring, and in reality, there are severe restrictions on using high-speed communication. In addition, although it supports multi-master, it is connected by daisy chain, so if multiple devices do not become masters at the same time, but try to start communication at the same time, the collision detection function and arbitration function will destroy the data. It is something that prevents and coexists. In the communication system based on I2C, only one-to-one communication or one-to-multiple communication can be performed when viewed in terms of time.

ここで、関連技術として、MBUSとSBUSとを分割し、何れのバスでもバスマスターを搭載してマルチバスマスター構成とする技術が特許文献1に開示されている。   Here, as a related technique, Patent Document 1 discloses a technique in which MBUS and SBUS are divided and a bus master is mounted on any bus to form a multi-bus master configuration.

特開平6−060015号公報JP-A-6-060015

図9において、背景技術において既知の二線シリアルバスシステムの概略図を示す。このような一般的なマルチマスタの場合、片方がマスタ装置として動作し、同時にマスタ装置として動作は出来ない。   FIG. 9 shows a schematic diagram of a two-wire serial bus system known in the background art. In the case of such a general multi-master, one of them operates as a master device and cannot operate as a master device at the same time.

ここで、二線シリアルバスによる通信の基本動作のタイミングチャートを図10に示す。図10において、まずマスタ装置がSTART状態で通信開始を宣言し、引き続きデータを送信する。その後、受信側からのアクノリッジを受け、マスタ装置がSTOP状態で通信を終了する。背景技術において既知の二線シリアルバスシステムでは、通信中は、この状態がバスのラインを占有するため、デバイスが一対一対応でしか通信することが出来ない。   Here, FIG. 10 shows a timing chart of the basic operation of communication using the two-wire serial bus. In FIG. 10, the master device first declares the start of communication in the START state, and subsequently transmits data. Thereafter, upon receiving an acknowledge from the receiving side, the master device terminates communication in the STOP state. In a two-wire serial bus system known in the background art, during communication, this state occupies the bus line, so that devices can communicate only in a one-to-one correspondence.

(発明の目的)
本発明の目的は、上述の課題を解決し、二線シリアルバスにおける回路の可用性を上げることが可能な情報処理装置、バス分割方法、及びバス分割プログラムを提供することである。
(Object of invention)
An object of the present invention is to provide an information processing apparatus, a bus division method, and a bus division program capable of solving the above-described problems and increasing the availability of a circuit in a two-wire serial bus.

本発明の第1の情報処理装置は、二線シリアルバスシステムにより構成される情報処理装置であって、複数のマスタ装置と、1つ以上のスレーブ装置と、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、バスを複数のバスに分割するスイッチとを備え、分割後の各バス上で、マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する。   A first information processing apparatus according to the present invention is an information processing apparatus configured by a two-wire serial bus system, and includes at least one master device, one or more slave devices, and each divided bus. A switch is provided that divides the bus into a plurality of buses so that there is one master device, and the master device operates as a master on each of the divided buses, thereby operating in parallel as a multi-master.

本発明の第2の情報処理装置は、二線シリアルバスシステムにより構成される情報処理装置であって、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備え、スイッチは、マスタ装置又はスレーブ装置として機能するエミュレート手段を含む。   A second information processing apparatus according to the present invention is an information processing apparatus configured by a two-wire serial bus system, and includes one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of devices. The switch includes an emulating unit that functions as a master device or a slave device.

本発明の第1のバス分割方法は、二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置におけるバス分割方法であって、スイッチが、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、バスを複数のバスに分割するステップと、分割後の各バス上で、マスタ装置がマスタとして動作することで、マルチマスタとして並列動作するステップとを有する。   A first bus division method according to the present invention is a bus division method in an information processing apparatus configured by a two-wire serial bus system and including a plurality of master devices, one or more slave devices, and a switch. However, the step of dividing the bus into a plurality of buses so that there is at least one master device on each divided bus, and the master device operates as a master on each divided bus. And operating as a master in parallel.

本発明の第2のバス分割方法は、二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割方法であって、スイッチが備えるエミュレート手段が、仮想的なマスタ装置又はスレーブ装置として機能するエミュレートステップを有する。   A second bus division method of the present invention is an information processing apparatus that is configured by a two-wire serial bus system and includes one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of buses. In the bus division method, the emulation means included in the switch includes an emulation step that functions as a virtual master device or a slave device.

本発明の第1のバス分割プログラムは、二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置を構成するコンピュータ上で動作するバス分割プログラムであって、スイッチに、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、バスを複数のバスに分割する処理を実行させ、分割後の各バス上で、マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する処理を実行させる。   The first bus division program of the present invention is a bus that is configured by a two-wire serial bus system and that operates on a computer that constitutes an information processing apparatus including a plurality of master devices, one or more slave devices, and a switch. A division program that causes a switch to execute a process of dividing a bus into a plurality of buses so that at least one master device exists on each divided bus, and the master device on each divided bus By operating as a master, a process that operates in parallel as a multi-master is executed.

本発明の第2のバス分割プログラムは、二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割プログラムであって、スイッチが備えるエミュレート手段に、仮想的なマスタ装置又はスレーブ装置として機能するエミュレート処理を実行させる。   A second bus division program according to the present invention is an information processing apparatus that includes a two-wire serial bus system and includes one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of buses. It is a bus division program, and causes the emulation means provided in the switch to execute an emulation process that functions as a virtual master device or slave device.

本発明によれば、二線シリアルバスにおける回路の可用性を上げることができる。   According to the present invention, the availability of a circuit in a two-wire serial bus can be increased.

本発明の第1の実施の形態による二線シリアルバスシステムの構成を示すブロック図である。1 is a block diagram showing a configuration of a two-wire serial bus system according to a first embodiment of the present invention. 本発明の第1の実施の形態によるスイッチの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the switch by the 1st Embodiment of this invention. 本発明の第1の実施の形態によるスイッチのデータ受信フローを示すフローチャートである。It is a flowchart which shows the data reception flow of the switch by the 1st Embodiment of this invention. 本発明の第1の実施の形態によるスイッチのデータ送信フローを示すフローチャートである。It is a flowchart which shows the data transmission flow of the switch by the 1st Embodiment of this invention. 本発明の第1の実施の形態によるバス分割の状態を示す図である。It is a figure which shows the state of the bus division | segmentation by the 1st Embodiment of this invention. 本発明の第1の実施の形態によるマルチマスタでの動作地民具を示す図である。It is a figure which shows the operation | movement folk tool in the multi master by the 1st Embodiment of this invention. 本発明の第1の実施の形態によるバス分割の状態を示す図である。It is a figure which shows the state of the bus division | segmentation by the 1st Embodiment of this invention. 本発明の情報処理装置のハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware structural example of the information processing apparatus of this invention. 背景技術による二線シリアルバスシステムの構成を示すブロック図である。It is a block diagram which shows the structure of the two-wire serial bus system by background art. 背景技術による二線シリアルバスシステムによる通信のタイミングチャートを示す図である。It is a figure which shows the timing chart of communication by the two-wire serial bus system by background art.

本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施形態による開示によって明らかとなるものである。なお、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。   In order to clarify the above and other objects, features and advantages of the present invention, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. In addition to the above-described object of the present invention, other technical problems, means for solving the technical problems, and operational effects thereof will become apparent from the disclosure of the following embodiments. In all the drawings, the same reference numerals are given to the same components, and the description will be omitted as appropriate.

(第1の実施の形態)
本発明の第1の実施の形態について図面を参照して詳細に説明する。
(First embodiment)
A first embodiment of the present invention will be described in detail with reference to the drawings.

図1は、本発明の第1の実施の形態による二線シリアルバスシステム100の構成を示すブロック図である。図示は省略するが、二線シリアルバスシステム100は、情報処理装置200上で構成される。   FIG. 1 is a block diagram showing a configuration of a two-wire serial bus system 100 according to the first embodiment of the present invention. Although not shown, the two-wire serial bus system 100 is configured on the information processing apparatus 200.

本実施の形態による二線シリアルバスシステム100は、マスタ装置10−1と、マスタ/スレーブ装置40と、スレーブ装置20−2〜20−4と、スイッチ30とを備える。マスタ/スレーブ装置40は、マスタ装置10−2又はスレーブ装置20−1として機能する。なお、図1は例示であって、システム構成を制限するものではない。   The two-wire serial bus system 100 according to the present embodiment includes a master device 10-1, a master / slave device 40, slave devices 20-2 to 20-4, and a switch 30. The master / slave device 40 functions as the master device 10-2 or the slave device 20-1. FIG. 1 is an exemplification, and does not limit the system configuration.

本実施の形態による二線シリアルバスシステム100は、背景技術による既知の二線シリアルバスシステムに加えて、伝送路の通信状態をモニタし、データの入出力を制御するスイッチ30を備えることを特徴とする。   The two-wire serial bus system 100 according to the present embodiment includes a switch 30 that monitors the communication state of the transmission line and controls data input / output in addition to the known two-wire serial bus system according to the background art. And

スイッチ30は、回路を分断または接続する機能を有する。また、スイッチ30は、シリアルバスでのマスタ装置、スレーブ装置の動作をエミュレートする機能を有する。スイッチ30により分割されたバス間の通信をおこなうときはこのスイッチを経由する。スイッチ30自身の制御もシリアルバス経由で行う。   The switch 30 has a function of dividing or connecting a circuit. The switch 30 has a function of emulating the operations of the master device and the slave device on the serial bus. When communication between the buses divided by the switch 30 is performed, this switch is used. The switch 30 itself is also controlled via a serial bus.

スイッチ30の内部構成を図2に示す。スイッチ30はメモリ31と、各バスにおいて、マスタ装置10あるいはスレーブ装置20としての役割を果たすエミュレート手段32と、スイッチ30の状態を切り替えるためのスイッチ切り替え手段33とを備える。   The internal configuration of the switch 30 is shown in FIG. The switch 30 includes a memory 31, an emulating unit 32 serving as the master device 10 or the slave device 20 in each bus, and a switch switching unit 33 for switching the state of the switch 30.

メモリ31は、シリアルバス上のマスタ装置10から受信した又はチェーン接続されたシリアルバス上のスレーブ装置20から受信したデータを保存または提供する。   The memory 31 stores or provides data received from the master device 10 on the serial bus or received from the slave device 20 on the serial bus connected in a chain.

スイッチ切り替え手段33は、エミュレート手段32のマスタ装置及びスレーブ装置としての動作を、オンにするかオフにするか切り替える機能を有する。   The switch switching unit 33 has a function of switching the operation of the emulation unit 32 as a master device and a slave device between on and off.

このスイッチ30をバスに組み込むことで、図5のように各バスを分離し、マルチマスタとして並列動作させることが可能となる。またスイッチ30の状態を切り替えるため、スイッチ切り替え手段33を、シリアルバス上におけるスレーブ装置として備える。   By incorporating this switch 30 into the bus, each bus can be separated as shown in FIG. 5 and operated in parallel as a multi-master. Further, in order to switch the state of the switch 30, a switch switching means 33 is provided as a slave device on the serial bus.

スイッチ30によりバスは二分割あるいはそれ以上に分割され、それぞれが独自のバスとしてマスタをもつことが可能となる。   The bus is divided into two or more by the switch 30, and each can have a master as its own bus.

本発明は、上述の構成を有し、シリアルバスを使用するときに、同時に複数のマスタをアクティブとして使用できるようにメモリと任意のマスタ装置10あるいはスレーブ装置20をエミュレートするスイッチ30を挿入することで、回路の可用性を高める。すなわち、伝送路の通信状態をモニタし、データの入出力を制御し、回路を分断または接続するスイッチ30を挿入し、マスタ毎にそれぞれバスを構築する。スイッチ30はそれぞれのバスとチェーン接続されたシリアルバス上でマスタ装置10又はスレーブ装置20の何れとしても動作可能なデジタル状態機械である。   The present invention has the above-described configuration, and when using a serial bus, a memory and a switch 30 for emulating an arbitrary master device 10 or slave device 20 are inserted so that a plurality of masters can be used simultaneously. By increasing the availability of the circuit. That is, the communication state of the transmission path is monitored, data input / output is controlled, a switch 30 for dividing or connecting the circuit is inserted, and a bus is constructed for each master. The switch 30 is a digital state machine that can operate as either the master device 10 or the slave device 20 on a serial bus chained to each bus.

(第1の実施の形態の動作の説明)
次に、本実施の形態による二線シリアルバスシステム100の動作について、図面を参照して詳細に説明する。
(Description of the operation of the first embodiment)
Next, the operation of the two-wire serial bus system 100 according to the present embodiment will be described in detail with reference to the drawings.

スイッチ30の状態は、二形態あり、シリアルバス通信によって状態を変化させることが出来る。これは、スイッチ30内のスイッチ切り替え手段33がシリアルバス上のアドレスを持っており、これがバス上においてスレーブ装置20として動作し、図2に示すように、スイッチ切り替え手段33からEnb信号をエミュレート手段32送ることで、切り替えを可能とする。   There are two states of the switch 30, and the state can be changed by serial bus communication. This is because the switch switching means 33 in the switch 30 has an address on the serial bus, which operates as the slave device 20 on the bus and emulates the Enb signal from the switch switching means 33 as shown in FIG. By sending means 32, switching is possible.

本発明における二線式シリアルバスは、バス上の公称電圧が、High(論理1)であり、装置が電圧をLow(論理0)側に引き込むオープンドレインシステムで、回路またはバスは各種抵抗などによるプルアップ抵抗器を用いて電圧源に接続される。プルアップ抵抗器は二線シリアルバス上のマスタ装置10、スレーブ装置20によってプルダウンされていない時、これらの回路がHigh(論理1)状態を維持するのを補助している。   The two-wire serial bus in the present invention is an open drain system in which the nominal voltage on the bus is High (logic 1) and the device pulls the voltage to the low (logic 0) side. A pull-up resistor is used to connect to the voltage source. The pull-up resistor assists these circuits to maintain a high (logic 1) state when not pulled down by the master device 10 and slave device 20 on the two-wire serial bus.

この二線式シリアルバスのトランザクション動作は、START状態の発行に伴って始まる。マスタ装置10はアドレス、READ/WRITE(R/W)信号を伝送可能とする。アドレスを有するスレーブ装置20は、アクノリッジ信号によって応答する。次いで、データワードが伝送され、READトランザクションにおいては、スレーブ装置20がデータワードをマスタ装置10に対して送信する。データワードは、8ビットワードなどの任意の数のビットでもよい。   The transaction operation of the two-wire serial bus starts with the issuance of the START state. The master device 10 can transmit an address and a READ / WRITE (R / W) signal. The slave device 20 having the address responds with an acknowledge signal. Next, the data word is transmitted, and in the READ transaction, the slave device 20 transmits the data word to the master device 10. The data word may be any number of bits, such as an 8-bit word.

WRITEトランザクションにおいては、マスタ装置10がデータワードを送信し、スレーブ装置20がアクノリッジ信号を送信することができる。すべてのデータが伝送されるまで、更なるデータワード及びアクノリッジ信号は反復可能とする。その他の実施例においては、データワードは、別個のパケットに分割されていないデータストリームともできる。   In the WRITE transaction, the master device 10 can transmit a data word, and the slave device 20 can transmit an acknowledge signal. Further data words and acknowledge signals are repeatable until all data has been transmitted. In other embodiments, the data word may be a data stream that is not divided into separate packets.

データが伝送された後に、マスタ装置10は、STOP状態を発行する。具体的な動作としてSTART状態の後に、クロックラインがクロックの伝送を開始する。まず、マスタ装置10がアドレスを送信し、スレーブ装置20が、このアドレスを受信し、このアドレスをその独自のアドレスと比較する。アドレスがマッチングしない場合には、スレーブ装置20は、STOP状態にて待つ。アドレスがマッチングした場合には、スレーブ装置20は、データを受信する準備を実行する。   After the data is transmitted, the master device 10 issues a STOP state. As a specific operation, the clock line starts clock transmission after the START state. First, the master device 10 transmits an address, the slave device 20 receives this address, and compares this address with its own address. If the addresses do not match, the slave device 20 waits in the STOP state. If the addresses match, the slave device 20 prepares to receive data.

次に、マスタ装置10は、信号を送信することにより、そのトランザクションがWRITE動作であってREAD動作ではないことをスレーブ装置20に対して通知する。一実施例においては、READ/WRITE信号は、単一ビットの通知である。アドレスを受信した後に、スレーブ装置20は、アクノリッジ信号を送信する。   Next, the master device 10 transmits a signal to notify the slave device 20 that the transaction is a WRITE operation and not a READ operation. In one embodiment, the READ / WRITE signal is a single bit notification. After receiving the address, the slave device 20 transmits an acknowledge signal.

次いで、マスタ装置10は、バイトサイズのデータワードのスレーブ装置20に対する伝送を開始することができる。スレーブ装置20は、それぞれのデータワードの後に、アクノリッジ信号を送信することができる。データワードの伝送は、すべてのデータがマスタ装置10からスレーブ装置20に送信されるまで継続可能である。   The master device 10 can then start transmitting a byte-sized data word to the slave device 20. The slave device 20 can transmit an acknowledge signal after each data word. The transmission of the data word can be continued until all data is transmitted from the master device 10 to the slave device 20.

データ伝送が成功裏に完了した際に、マスタ装置10は、STOP状態を発行することになる。一実施例においては、STOP状態は、クロックがHighである時にデータラインがHighになることをマスタ装置が許容した際に実現する。この時点において、シリアルバスが解放され、すべての装置は、更なるSTART状態の発行を待つことになる。   When the data transmission is successfully completed, the master device 10 issues a STOP state. In one embodiment, the STOP state is realized when the master device allows the data line to be high when the clock is high. At this point, the serial bus is released and all devices will wait to issue further START states.

READ動作においては、マスタ装置10は、READビットを送信することができる。スレーブ装置20は、バイトサイズのデータワードをマスタ装置10に対して送信する。マスタ装置10は、それぞれのデータワードの後に、アクノリッジ信号を送信する。すべてのデータの受信が完了した際に、マスタ装置はSTOP状態を発行する。   In the READ operation, the master device 10 can transmit a READ bit. The slave device 20 transmits a byte-sized data word to the master device 10. Master device 10 transmits an acknowledge signal after each data word. When reception of all data is completed, the master device issues a STOP state.

以上のマスタ装置、スレーブ装置の動作をエミュレートすることができる特殊なスイッチをシリアルバス内に挿入する。このスイッチによりバスは二分割あるいはそれ以上に分割され、それぞれが独自のバスとしてマスタをもつことが可能となる。   A special switch capable of emulating the operation of the above master device and slave device is inserted into the serial bus. This switch divides the bus into two or more, and each can have a master as its own bus.

分割されたバス内において、1つ又は複数のスレーブ装置20から受信したデータは、図3のフローチャートに沿って同一のアドレス、オフセット、及びその他のフォーマットを使用してスイッチ30内のメモリ31に保存される。メモリ31の更新は、任意のタイミングであり、メモリ31が1つ又は複数のバスに保存されているデータを正確に反映することを保証する任意のインターバルにおいて実行可能とする。   In the divided bus, data received from one or more slave devices 20 is stored in the memory 31 in the switch 30 using the same address, offset, and other formats according to the flowchart of FIG. Is done. The update of the memory 31 can be performed at any timing and at any interval that ensures that the memory 31 accurately reflects the data stored on one or more buses.

あるバスのマスタ装置10からその隣のバスのスレーブ装置20へアクセスする際には、スイッチ30が装置アドレスを受信し、このアドレスをメモリに保存されているアドレスと比較する。アドレスがメモリ31内のアドレスとマッチングした場合には、スイッチ30は、アクノリッジ信号を送信する。次いで、スイッチ30は、定期的に更新されているメモリ31から適切なデータを判読し、このデータをマスタ装置10に対して送信を開始する。このフローチャートを図4に示す。   When the master device 10 of a certain bus accesses the slave device 20 of the adjacent bus, the switch 30 receives the device address and compares this address with the address stored in the memory. When the address matches the address in the memory 31, the switch 30 transmits an acknowledge signal. Next, the switch 30 reads appropriate data from the memory 31 that is regularly updated, and starts transmitting this data to the master device 10. This flowchart is shown in FIG.

図4を参照すると、まず、エミュレート手段32が、マスタ装置10から、当該マスタ装置10とは別のバス上に存在するスレーブ装置20への読み取り要求を受信する(ステップS401)。   Referring to FIG. 4, first, the emulation unit 32 receives a read request from the master device 10 to the slave device 20 existing on a bus different from the master device 10 (step S401).

次いで、エミュレート手段32は、読み取り対象のスレーブ装置20のアドレスを判定する(ステップS402)。   Next, the emulation unit 32 determines the address of the slave device 20 to be read (step S402).

次いで、エミュレート手段32は、要求されたデータのメモリ31内での格納場所を検索する(ステップS403)。   Next, the emulation unit 32 searches the storage location of the requested data in the memory 31 (step S403).

次いで、メモリ31から該当データを抽出し(ステップS404)、データをマスタ装置10に送信する(ステップS405)。メモリ31にデータが存在しない場合は、図3に示す動作によることとなる。   Next, the corresponding data is extracted from the memory 31 (step S404), and the data is transmitted to the master device 10 (step S405). When there is no data in the memory 31, the operation is shown in FIG.

上記の動作においては、エミュレート手段32は、マスタ装置10が存在するバス上において、仮想的なスレーブ装置20’として機能している。   In the above operation, the emulation unit 32 functions as a virtual slave device 20 ′ on the bus where the master device 10 exists.

この結果、マスタ装置10は、目的のスレーブ装置20と相互運用するのと同一の方式によってスイッチ30と通信することで目的のデータを得る。以上の動作によって、このスイッチ30は、二線式シリアルバスのトランザクションをエミュレートしている。   As a result, the master device 10 obtains target data by communicating with the switch 30 by the same method as that interoperating with the target slave device 20. With the above operation, the switch 30 emulates a two-wire serial bus transaction.

次に、本実施の形態による二線シリアルバスシステム100の動作例を説明する。   Next, an operation example of the two-wire serial bus system 100 according to the present embodiment will be described.

動作例1:スイッチ30の機能をオフにし二系統間で直接的に、マスタ-スレーブ間のやりとりをする場合には、通信状態をそのまま通過させることでこれを実現する。回路全体としてみるとスイッチがない通常の結線された状態と同じ動作となる。   Operation Example 1: When the function of the switch 30 is turned off and the communication between the master and the slave is directly performed between the two systems, this is realized by passing the communication state as it is. As a whole circuit, the operation is the same as in a normal wired state without a switch.

動作例2:図5で示すようにスイッチをオンにすることで回路が分断され、バスAとバスBでそれぞれのマスタ装置10がそれぞれ独立した系統でマスタとして動作する。つまり、点線で囲ったそれぞれの系統においてそれぞれマスタ装置10がアクティブになることが可能となる。   Operation Example 2: As shown in FIG. 5, the circuit is divided by turning on the switch, and each master device 10 operates as a master in an independent system on bus A and bus B. That is, the master device 10 can be activated in each system surrounded by a dotted line.

動作例3:図1において、スイッチ30の機能をオンにし二系統間を分断した状態で、バスA、バスB間の通信を行う。この時、スイッチ30のバスB側での動作はマスタ装置10−1と同等の動作となり、スイッチ30内のマスタ装置10−1´(仮想的に再現されたマスタ装置10−1)がバスBのスレーブ装置20−1と通信することになる。 Operation Example 3: In FIG. 1, communication between the bus A and the bus B is performed in a state where the function of the switch 30 is turned on and the two systems are separated. At this time, the operation of the switch 30 on the bus B side is the same as that of the master device 10-1, and the master device 10-1 ′ (virtually reproduced master device 10-1) in the switch 30 is connected to the bus B. It communicates with the slave device 20-1.

この場合、バスBでのマスタはマスタ装置10−1´となっており、マスタ/スレーブ装置40は、スレーブ装置20−1として機能する。マスタ装置10−1´が得たデータをマスタ装置10−1が受け取ることにより、バス間での通信が可能となる。   In this case, the master on the bus B is the master device 10-1 ′, and the master / slave device 40 functions as the slave device 20-1. When the master device 10-1 receives the data obtained by the master device 10-1 ', communication between the buses becomes possible.

バスA、バスBを逆にした場合の動作も可能であり、この場合はバスAにおいてマスタ装置10−2´としてスイッチ30(エミュレート手段32)が動作する。   The operation when the bus A and the bus B are reversed is also possible. In this case, the switch 30 (emulating means 32) operates as the master device 10-2 ′ in the bus A.

図3に、スイッチ30のデータ受信時のフローチャートを示す。   FIG. 3 shows a flowchart when the switch 30 receives data.

まず、エミュレート手段32は、マスタ装置10から、当該マスタ装置10とは別のバス上に存在するスレーブ装置20への読み取り要求を受信する(ステップS301)。   First, the emulation unit 32 receives a read request from the master device 10 to the slave device 20 existing on a different bus from the master device 10 (step S301).

次いで、エミュレート手段32は、読み取り対象スレーブ装置20のアドレスを判定する(ステップS302)。   Next, the emulation unit 32 determines the address of the reading target slave device 20 (step S302).

次いで、エミュレート手段32は、仮想的なマスタ装置10’として、対象のスレーブ装置20にデータの読み取り要求を送信し、その結果受信したデータをマスタ装置10に送信するとともに、受信データ及び対象スレーブ装置20のアドレスをメモリ31に保存する(ステップS303、S304)。   Next, the emulation unit 32 transmits a data read request to the target slave device 20 as the virtual master device 10 ′, and transmits the received data to the master device 10 as a result. The address of the device 20 is stored in the memory 31 (steps S303 and S304).

上記の動作においては、エミュレート手段32は、対象スレーブ装置20が存在するバス上では仮想的なマスタ装置10’として機能する。   In the above operation, the emulation unit 32 functions as a virtual master device 10 ′ on the bus where the target slave device 20 exists.

マルチマスタとして並列動作が可能になると、図6に示すように、マスタ装置10−1とスレーブ装置20−2、そしてマスタ装置10−2とスレーブ装置20−3が通信する場合、シリアルバス占有時間をt1+t2から最大でt1(t1>t2とすると)まで短縮することができ、装置のアイドル時間が減り、同時に動作できることがわかる。   When parallel operation is enabled as a multi-master, as shown in FIG. 6, when the master device 10-1 and the slave device 20-2, and the master device 10-2 and the slave device 20-3 communicate, Can be shortened from t1 + t2 to a maximum of t1 (assuming t1> t2), and it can be seen that the idle time of the apparatus is reduced and the apparatus can operate simultaneously.

(第1の実施の形態による効果)
本実施の形態によれば、単純なバススイッチやアイソレータでは不可能な双方向通信かつ、同時に並列回路として機能させることが出来る。シリアルバスのメリットである配線本数の少なさをほぼそのままに、バスごとに通信が可能となるため動作例3で説明したように二線シリアルバスにおける回路の可用性を上げることが可能となる。
(Effects of the first embodiment)
According to the present embodiment, bidirectional communication that cannot be achieved with a simple bus switch or isolator and simultaneously function as a parallel circuit can be achieved. As described in the operation example 3, the availability of the circuit in the two-wire serial bus can be increased because communication can be performed for each bus while maintaining the small number of wires that is a merit of the serial bus.

また、本実施の形態によれば、一つのバスの系統でポーリングなど行われていても、他方の系統において、バスをビジーとすることなく使用可能とできる。   Further, according to the present embodiment, even if polling or the like is performed in one bus system, the other system can be used without making the bus busy.

また、すべてのデバイスをつなぐデイジーチェーンであると、通信速度はもっとも遅いデバイスに律速されるが、本実施の形態によれば、ひとつのマスタにおけるI2Cの回路規模を小さくできるため、図7のように遅いデバイスを選択的に別のバスに切り離すことができる。点線で囲まれた部分は別系統となるため、この範囲内で線長制限なども緩和され、高速通信なども可能となる。   In addition, in the case of a daisy chain that connects all devices, the communication speed is limited to the slowest device. However, according to this embodiment, the circuit scale of I2C in one master can be reduced, and as shown in FIG. Slow devices can be selectively disconnected to another bus. Since the portion surrounded by the dotted line is a separate system, the line length restriction is relaxed within this range, and high-speed communication is also possible.

さらに、上記に加え、大型の装置では長配線になりがちで使いづらい高速通信も、回路規模を小さくすることで使用しやすくなる。   Further, in addition to the above, high-speed communication that tends to be long wiring in a large-sized device and is difficult to use can be easily used by reducing the circuit scale.

ここで、本発明の課題を解決できる最小限の構成を説明する。図1に示すように、情報処理装置200が、二線シリアルバスシステム100により構成され、複数のマスタ装置10と、1つ以上のスレーブ装置20と、分割後の各バス上に少なくとも1つのマスタ装置10が存在するように、バスを複数のバスに分割するスイッチ30とを備え、分割後の各バス上で、マスタ装置10がマスタとして動作することで、マルチマスタとして並列動作することで、上述した本発明の課題を解決することができる。   Here, a minimum configuration capable of solving the problems of the present invention will be described. As shown in FIG. 1, an information processing apparatus 200 is configured by a two-wire serial bus system 100, and includes a plurality of master devices 10, one or more slave devices 20, and at least one master on each divided bus. As the device 10 exists, the device includes a switch 30 that divides the bus into a plurality of buses, and the master device 10 operates as a master on each divided bus, thereby operating in parallel as a multi-master. The problems of the present invention described above can be solved.

次に、本発明の二線シリアルバスシステム100を構成する情報処理装置200のハードウェア構成例について、図8を参照して説明する。   Next, a hardware configuration example of the information processing apparatus 200 configuring the two-wire serial bus system 100 of the present invention will be described with reference to FIG.

図8を参照すると、本発明の情報処理装置200は、一般的なコンピュータ装置と同様のハードウェア構成であり、CPU(Central Processing Unit)801、RAM(Random Access Memory)等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部802、ネットワークを介してデータの送受信を行う通信部803、入力装置805や出力装置806及び記憶装置807と接続してデータの送受信を行う入出力インタフェース部804、上記各構成要素を相互に接続するシステムバス808を備えている。記憶装置807は、例えば、ROM(Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。   Referring to FIG. 8, an information processing apparatus 200 according to the present invention has a hardware configuration similar to that of a general computer apparatus, and includes data such as a CPU (Central Processing Unit) 801 and a RAM (Random Access Memory). The main storage unit 802 used for the work area and data temporary save area, the communication unit 803 that transmits and receives data via the network, the input device 805, the output device 806, and the storage device 807 are connected to transmit and receive data. An input / output interface unit 804 and a system bus 808 for interconnecting the above-described components are provided. The storage device 807 is realized by, for example, a hard disk device including a non-volatile memory such as a ROM (Read Only Memory), a magnetic disk, and a semiconductor memory.

本発明の情報処理装置200の各機能は、プログラムを組み込んだ、LSI(Large Scale Integration)等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置807に格納し、そのプログラムを主記憶部802にロードしてCPU801で実行することにより、ソフトウェア的に実現することも可能である。   Each function of the information processing apparatus 200 according to the present invention is implemented by hardware by mounting circuit components that are hardware components such as LSI (Large Scale Integration) incorporating a program. As another example, a program that provides the function may be stored in the storage device 807, loaded into the main storage unit 802, and executed by the CPU 801 to be realized in software.

以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。   The present invention has been described above with reference to preferred embodiments. However, the present invention is not necessarily limited to the above embodiments, and various modifications can be made within the scope of the technical idea. it can.

なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。   It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, and the like are also effective as an aspect of the present invention.

また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。   The various components of the present invention do not necessarily have to be independent of each other. A plurality of components are formed as a single member, and a single component is formed of a plurality of members. It may be that a certain component is a part of another component, a part of a certain component overlaps with a part of another component, or the like.

また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。   Moreover, although the several procedure is described in order in the method and computer program of this invention, the order of the description does not limit the order which performs a several procedure. For this reason, when implementing the method and computer program of this invention, the order of the several procedure can be changed in the range which does not interfere in content.

また、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。   The plurality of procedures of the method and the computer program of the present invention are not limited to being executed at different timings. For this reason, another procedure may occur during the execution of a certain procedure, or some or all of the execution timing of a certain procedure and the execution timing of another procedure may overlap.

さらに、上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。   Further, a part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.

(付記1)
二線シリアルバスシステムにより構成される情報処理装置であって、
複数のマスタ装置と、
1つ以上のスレーブ装置と、
分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割するスイッチとを備え、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する
ことを特徴とする情報処理装置。
(Appendix 1)
An information processing apparatus constituted by a two-wire serial bus system,
Multiple master devices;
One or more slave devices;
A switch that divides the bus into a plurality of buses such that there is at least one master device on each bus after the division,
An information processing apparatus that operates in parallel as a multi-master by operating the master apparatus as a master on each divided bus.

(付記2)
前記スイッチが、
通信速度の遅い前記スレーブ装置を、選択的に別のバスに切り離す
ことを特徴とする付記1に記載の情報処理装置。
(Appendix 2)
The switch is
The information processing apparatus according to appendix 1, wherein the slave apparatus having a low communication speed is selectively disconnected to another bus.

(付記3)
二線シリアルバスシステムにより構成される情報処理装置であって、
1つ以上のマスタ装置と、
1つ以上のスレーブ装置と、
バスを複数に分割するスイッチとを備え、
前記スイッチは、
マスタ装置又はスレーブ装置として機能するエミュレート手段を含む
ことを特徴とする情報処理装置。
(Appendix 3)
An information processing apparatus constituted by a two-wire serial bus system,
One or more master devices;
One or more slave devices;
With a switch that divides the bus into multiple parts,
The switch
An information processing apparatus comprising an emulating unit that functions as a master device or a slave device.

(付記4)
前記スイッチが、
前記マスタ装置から他のバス上の前記スレーブ装置への読み取り要求を受信する受信手段と、
前記読み取り要求の対象のスレーブ装置のアドレスを判定する判定手段と、
データを格納するメモリとを備え、
前記エミュレート手段が、
前記スレーブ装置が存在するバス上において仮想的なマスタ装置として機能し、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得し、
取得したデータを前記マスタ装置に送信するとともに、当該アドレスとセットにして前記メモリに格納する
ことを特徴とする付記3に記載の情報処理装置。
(Appendix 4)
The switch is
Receiving means for receiving a read request from the master device to the slave device on another bus;
Determining means for determining an address of a slave device to be read;
A memory for storing data,
The emulating means comprises:
Functions as a virtual master device on the bus where the slave device exists, sends a read request to the slave device to be read, acquires data,
The information processing apparatus according to appendix 3, wherein the acquired data is transmitted to the master apparatus and stored in the memory as a set with the address.

(付記5)
前記エミュレート手段が、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにない場合に、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得する
ことを特徴とする付記4に記載の情報処理装置。
(Appendix 5)
The emulating means comprises:
The supplementary note 4 is characterized in that, when the data stored as a set with the address determined by the determination means is not in the memory, a read request is transmitted to the slave device to be read to acquire the data. Information processing device.

(付記6)
前記エミュレート手段が、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにある場合、前記マスタ装置が存在するバス上において仮想的なスレーブ装置として機能し、前記メモリに格納されている当該データを前記マスタ装置に送信する
ことを特徴とする付記5に記載の情報処理装置。
(Appendix 6)
The emulating means comprises:
When data stored as a set with the address determined by the determination means is in the memory, the data functions as a virtual slave device on the bus where the master device exists, and the data stored in the memory is The information processing apparatus according to appendix 5, wherein the information processing apparatus transmits to the master apparatus.

(付記7)
前記スイッチが、
前記バスを分割するか否かを切り替えるスイッチ切り替え手段を備える
ことを特徴とする付記1から付記6の何れか1項に記載の情報処理装置。
(Appendix 7)
The switch is
The information processing apparatus according to any one of appendix 1 to appendix 6, further comprising: a switch switching unit that switches whether to divide the bus.

(付記8)
二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置におけるバス分割方法であって、
前記スイッチが、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割するステップと、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作するステップと
を有することを特徴とするバス分割方法。
(Appendix 8)
A bus dividing method in an information processing apparatus configured by a two-wire serial bus system and including a plurality of master devices, one or more slave devices, and a switch,
Dividing the bus into a plurality of buses such that the switch has at least one master device on each divided bus; and
And a step of operating the master device as a master on each of the divided buses to operate in parallel as a multi-master.

(付記9)
前記スイッチが、通信速度の遅い前記スレーブ装置を、選択的に別のバスに切り離すステップを有する
ことを特徴とする付記8に記載のバス分割方法。
(Appendix 9)
The bus dividing method according to appendix 8, wherein the switch includes a step of selectively separating the slave device having a low communication speed from another bus.

(付記10)
二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割方法であって、
前記スイッチが備えるエミュレート手段が、仮想的なマスタ装置又はスレーブ装置として機能するエミュレートステップを有する
ことを特徴とするバス分割方法。
(Appendix 10)
A bus dividing method in an information processing apparatus configured by a two-wire serial bus system and including one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of devices,
The bus dividing method, wherein the emulation means included in the switch includes an emulation step that functions as a virtual master device or a slave device.

(付記11)
前記スイッチが備える受信手段が、前記マスタ装置から他のバス上の前記スレーブ装置への読み取り要求を受信する受信ステップと、
前記スイッチが備える判定手段が、前記読み取り要求の対象のスレーブ装置のアドレスを判定する判定ステップとを有し、
前記エミュレートステップで、
前記スレーブ装置が存在するバス上において仮想的なマスタ装置として機能し、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得し、
取得したデータを前記マスタ装置に送信するとともに、当該アドレスとセットにして前記スイッチ内のメモリに格納する
ことを特徴とする付記10に記載のバス分割方法。
(Appendix 11)
A receiving step in which the receiving means included in the switch receives a read request from the master device to the slave device on another bus;
A determination unit included in the switch includes a determination step of determining an address of a slave device that is a target of the read request;
In the emulation step,
Functions as a virtual master device on the bus where the slave device exists, sends a read request to the slave device to be read, acquires data,
The bus division method according to appendix 10, wherein the acquired data is transmitted to the master device and stored in the memory in the switch as a set with the address.

(付記12)
前記エミュレートステップで、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにない場合に、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得する
ことを特徴とする付記11に記載のバス分割方法。
(Appendix 12)
In the emulation step,
The supplementary note 11 is characterized by transmitting a read request to the slave device to be read and acquiring the data when the data stored as a set with the address determined by the determination means is not in the memory. Bus partitioning method.

(付記13)
前記エミュレートステップで、
前記判定ステップにより判定したアドレスとセットで保存されているデータが前記メモリにある場合、前記マスタ装置が存在するバス上において仮想的なスレーブ装置として機能し、前記メモリに格納されている当該データを前記マスタ装置に送信する
ことを特徴とする付記12に記載のバス分割方法。
(Appendix 13)
In the emulation step,
When data stored as a set with the address determined in the determination step is in the memory, the data functions as a virtual slave device on the bus on which the master device exists, and the data stored in the memory is The bus dividing method according to appendix 12, wherein the bus dividing method is transmitted to the master device.

(付記14)
前記スイッチが備えるスイッチ切り替え手段が、前記バスを分割するか否かを切り替えるスイッチ切り替えステップを有する
ことを特徴とする付記8から付記13の何れか1項に記載のバス分割方法。
(Appendix 14)
14. The bus dividing method according to any one of appendix 8 to appendix 13, wherein the switch switching means included in the switch includes a switch switching step for switching whether or not to divide the bus.

(付記15)
二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置を構成するコンピュータ上で動作するバス分割プログラムであって、
前記スイッチに、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割する処理を実行させ、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する処理を実行させる
を有することを特徴とするバス分割プログラム。
(Appendix 15)
A bus division program configured on a two-wire serial bus system and operating on a computer constituting an information processing device including a plurality of master devices, one or more slave devices, and a switch,
Causing the switch to execute a process of dividing the bus into a plurality of buses such that at least one master device exists on each divided bus;
A bus division program comprising: executing a process of operating in parallel as a multi-master by causing the master device to operate as a master on each divided bus.

(付記16)
前記スイッチに、通信速度の遅い前記スレーブ装置を、選択的に別のバスに切り離す処理を実行させる
ことを特徴とする付記15に記載のバス分割プログラム。
(Appendix 16)
The bus division program according to appendix 15, wherein the switch causes the slave device having a low communication speed to be selectively disconnected from another bus.

(付記17)
二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割プログラムであって、
前記スイッチが備えるエミュレート手段に、仮想的なマスタ装置又はスレーブ装置として機能するエミュレート処理を実行させる
ことを特徴とするバス分割プログラム。
(Appendix 17)
A bus division program in an information processing apparatus that is configured by a two-wire serial bus system and includes one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of pieces,
A bus division program that causes an emulation means included in the switch to execute an emulation process that functions as a virtual master device or a slave device.

(付記18)
前記スイッチが備える受信手段に、前記マスタ装置から他のバス上の前記スレーブ装置への読み取り要求を受信する受信処理を実行させ、
前記スイッチが備える判定手段に、前記読み取り要求の対象のスレーブ装置のアドレスを判定する判定処理を実行させ、
前記エミュレート処理で、
前記スレーブ装置が存在するバス上において仮想的なマスタ装置として機能し、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得し、
取得したデータを前記マスタ装置に送信するとともに、当該アドレスとセットにして前記スイッチ内のメモリに格納する
ことを特徴とする付記17に記載のバス分割プログラム。
(Appendix 18)
Causing the receiving means provided in the switch to execute a receiving process for receiving a read request from the master device to the slave device on another bus;
The determination means provided in the switch causes determination processing to determine the address of the slave device that is the target of the read request,
In the emulation process,
Functions as a virtual master device on the bus where the slave device exists, sends a read request to the slave device to be read, acquires data,
18. The bus division program according to appendix 17, wherein the acquired data is transmitted to the master device and is stored in the memory in the switch as a set with the address.

(付記19)
前記エミュレート処理で、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにない場合に、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得する
ことを特徴とする付記18に記載のバス分割プログラム。
(Appendix 19)
In the emulation process,
Item 18. The supplementary note 18, wherein when the data stored as a set with the address determined by the determination unit is not in the memory, a read request is transmitted to the slave device to be read to acquire the data. Bus partitioning program.

(付記20)
前記エミュレート処理で、
前記判定ステップにより判定したアドレスとセットで保存されているデータが前記メモリにある場合、前記マスタ装置が存在するバス上において仮想的なスレーブ装置として機能し、前記メモリに格納されている当該データを前記マスタ装置に送信する
ことを特徴とする付記19に記載のバス分割プログラム。
(Appendix 20)
In the emulation process,
When data stored as a set with the address determined in the determination step is in the memory, the data functions as a virtual slave device on the bus on which the master device exists, and the data stored in the memory is The bus division program according to appendix 19, wherein the bus division program is transmitted to the master device.

(付記21)
前記スイッチが備えるスイッチ切り替え手段に、前記バスを分割するか否かを切り替えるスイッチ切り替え処理を実行させる
ことを特徴とする付記15から付記20の何れか1項に記載のバス分割プログラム。
(Appendix 21)
21. The bus division program according to any one of appendix 15 to appendix 20, wherein the switch switching unit included in the switch executes switch switching processing for switching whether to divide the bus.

何枚もの基板を連なって接続するような大型装置の場合、本来I2Cの対象ではないがその利便性から用いられることも多く、またその用途も診断系などの重要な箇所の場合がある。そのようなシリアルバスを用いて、何度も高速に信号を伝達するような大規模高速通信を行う回路構成において本発明は非常に効果的に使うことが出来る。たとえば、大規模装置における多数の温度センサICなどをスレーブ装置としてもつ時に、I2Cでポーリングする場合、一系統ではバスを占有することによるタイムロスを、本発明によるスイッチでバスを分けることによってバスの規模を小さくすることができ、ポーリング時間を大幅に縮小することができる。   In the case of a large-scale device that connects a number of substrates connected in series, it is not intended for I2C, but is often used for its convenience, and its use may also be an important part such as a diagnostic system. The present invention can be used very effectively in a circuit configuration for performing large-scale high-speed communication in which signals are transmitted many times at high speeds using such a serial bus. For example, when polling with I2C when having a large number of temperature sensor ICs as a slave device in a large-scale device, the time loss due to occupying the bus in one system, the scale of the bus by dividing the bus with the switch according to the present invention And the polling time can be greatly reduced.

10、10−1、10−2、10’、10−1’、:マスタ装置
20、20−1〜20−4、20’:スレーブ装置
30:スイッチ
31:メモリ
32:エミュレート手段
33:スイッチ切り替え手段
40:マスタ/スレーブ装置
100:二線シリアルバスシステム
200:情報処理装置
801:CPU
802:主記憶部
803:通信部
804:入出力インタフェース部
805:入力装置
806:出力装置
807:記憶装置
808:システムバス
10, 10-1, 10-2, 10 ', 10-1': Master device 20, 20-1 to 20-4, 20 ': Slave device 30: Switch 31: Memory 32: Emulation means 33: Switch Switching means 40: Master / slave device 100: Two-wire serial bus system 200: Information processing device 801: CPU
802: Main storage unit 803: Communication unit 804: Input / output interface unit 805: Input device 806: Output device 807: Storage device 808: System bus

Claims (10)

二線シリアルバスシステムにより構成される情報処理装置であって、
複数のマスタ装置と、
1つ以上のスレーブ装置と、
分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割するスイッチとを備え、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する
ことを特徴とする情報処理装置。
An information processing apparatus constituted by a two-wire serial bus system,
Multiple master devices;
One or more slave devices;
A switch that divides the bus into a plurality of buses such that there is at least one master device on each bus after the division,
An information processing apparatus that operates in parallel as a multi-master by operating the master apparatus as a master on each divided bus.
前記スイッチが、
通信速度の遅い前記スレーブ装置を、選択的に別のバスに切り離す
ことを特徴とする請求項1に記載の情報処理装置。
The switch is
The information processing apparatus according to claim 1, wherein the slave device having a low communication speed is selectively disconnected to another bus.
二線シリアルバスシステムにより構成される情報処理装置であって、
1つ以上のマスタ装置と、
1つ以上のスレーブ装置と、
バスを複数に分割するスイッチとを備え、
前記スイッチは、
マスタ装置又はスレーブ装置として機能するエミュレート手段を含む
ことを特徴とする情報処理装置。
An information processing apparatus constituted by a two-wire serial bus system,
One or more master devices;
One or more slave devices;
With a switch that divides the bus into multiple parts,
The switch
An information processing apparatus comprising an emulating unit that functions as a master device or a slave device.
前記スイッチが、
前記マスタ装置から他のバス上の前記スレーブ装置への読み取り要求を受信する受信手段と、
前記読み取り要求の対象のスレーブ装置のアドレスを判定する判定手段と、
データを格納するメモリとを備え、
前記エミュレート手段が、
前記スレーブ装置が存在するバス上において仮想的なマスタ装置として機能し、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得し、
取得したデータを前記マスタ装置に送信するとともに、当該アドレスとセットにして前記メモリに格納する
ことを特徴とする請求項3に記載の情報処理装置。
The switch is
Receiving means for receiving a read request from the master device to the slave device on another bus;
Determining means for determining an address of a slave device to be read;
A memory for storing data,
The emulating means comprises:
Functions as a virtual master device on the bus where the slave device exists, sends a read request to the slave device to be read, acquires data,
The information processing apparatus according to claim 3, wherein the acquired data is transmitted to the master apparatus and stored in the memory as a set with the address.
前記エミュレート手段が、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにない場合に、読み取り対象の前記スレーブ装置に対し読み取り要求を送信し、データを取得する
ことを特徴とする請求項4に記載の情報処理装置。
The emulating means comprises:
5. The data is acquired by transmitting a read request to the slave device to be read when data stored as a set with the address determined by the determination means is not in the memory. The information processing apparatus described.
前記エミュレート手段が、
前記判定手段により判定したアドレスとセットで保存されているデータが前記メモリにある場合、前記マスタ装置が存在するバス上において仮想的なスレーブ装置として機能し、前記メモリに格納されている当該データを前記マスタ装置に送信する
ことを特徴とする請求項5に記載の情報処理装置。
The emulating means comprises:
When data stored as a set with the address determined by the determination means is in the memory, the data functions as a virtual slave device on the bus where the master device exists, and the data stored in the memory is The information processing apparatus according to claim 5, wherein the information processing apparatus transmits the information to the master apparatus.
二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置におけるバス分割方法であって、
前記スイッチが、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割するステップと、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作するステップと
を有することを特徴とするバス分割方法。
A bus dividing method in an information processing apparatus configured by a two-wire serial bus system and including a plurality of master devices, one or more slave devices, and a switch,
Dividing the bus into a plurality of buses such that the switch has at least one master device on each divided bus; and
And a step of operating the master device as a master on each of the divided buses to operate in parallel as a multi-master.
二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割方法であって、
前記スイッチが備えるエミュレート手段が、仮想的なマスタ装置又はスレーブ装置として機能するエミュレートステップを有する
ことを特徴とするバス分割方法。
A bus dividing method in an information processing apparatus configured by a two-wire serial bus system and including one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of devices,
The bus dividing method, wherein the emulation means included in the switch includes an emulation step that functions as a virtual master device or a slave device.
二線シリアルバスシステムにより構成され、複数のマスタ装置と、1つ以上のスレーブ装置と、スイッチとを備える情報処理装置を構成するコンピュータ上で動作するバス分割プログラムであって、
前記スイッチに、分割後の各バス上に少なくとも1つのマスタ装置が存在するように、前記バスを複数のバスに分割する処理を実行させ、
分割後の各バス上で、前記マスタ装置がマスタとして動作することで、マルチマスタとして並列動作する処理を実行させる
を有することを特徴とするバス分割プログラム。
A bus division program configured on a two-wire serial bus system and operating on a computer constituting an information processing device including a plurality of master devices, one or more slave devices, and a switch,
Causing the switch to execute a process of dividing the bus into a plurality of buses such that at least one master device exists on each divided bus;
A bus division program comprising: executing a process of operating in parallel as a multi-master by causing the master device to operate as a master on each divided bus.
二線シリアルバスシステムにより構成され、1つ以上のマスタ装置と、1つ以上のスレーブ装置と、バスを複数に分割するスイッチとを備える情報処理装置におけるバス分割プログラムであって、
前記スイッチが備えるエミュレート手段に、仮想的なマスタ装置又はスレーブ装置として機能するエミュレート処理を実行させる
ことを特徴とするバス分割プログラム。
A bus division program in an information processing apparatus that is configured by a two-wire serial bus system and includes one or more master devices, one or more slave devices, and a switch that divides the bus into a plurality of pieces,
A bus division program that causes an emulation means included in the switch to execute an emulation process that functions as a virtual master device or a slave device.
JP2013041612A 2013-03-04 2013-03-04 Information processor, bus division method and bus division program Pending JP2014170361A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013041612A JP2014170361A (en) 2013-03-04 2013-03-04 Information processor, bus division method and bus division program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013041612A JP2014170361A (en) 2013-03-04 2013-03-04 Information processor, bus division method and bus division program

Publications (1)

Publication Number Publication Date
JP2014170361A true JP2014170361A (en) 2014-09-18

Family

ID=51692718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013041612A Pending JP2014170361A (en) 2013-03-04 2013-03-04 Information processor, bus division method and bus division program

Country Status (1)

Country Link
JP (1) JP2014170361A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017041043A (en) * 2015-08-19 2017-02-23 日本電気株式会社 Communication system and communication method
JP2017188728A (en) * 2016-04-01 2017-10-12 日本電波工業株式会社 Control circuit
CN114495729A (en) * 2022-01-26 2022-05-13 江苏奥斯汀光电科技股份有限公司 Display system capable of being powered wirelessly and display screen positioning method
CN117130959A (en) * 2023-02-22 2023-11-28 荣耀终端有限公司 Bus control method, electronic device and computer storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017041043A (en) * 2015-08-19 2017-02-23 日本電気株式会社 Communication system and communication method
JP2017188728A (en) * 2016-04-01 2017-10-12 日本電波工業株式会社 Control circuit
CN114495729A (en) * 2022-01-26 2022-05-13 江苏奥斯汀光电科技股份有限公司 Display system capable of being powered wirelessly and display screen positioning method
CN117130959A (en) * 2023-02-22 2023-11-28 荣耀终端有限公司 Bus control method, electronic device and computer storage medium

Similar Documents

Publication Publication Date Title
KR100814904B1 (en) On-Chip Communication architecture
KR101056153B1 (en) Method and apparatus for conditional broadcast of barrier operations
JP2009535677A (en) I2C clock generation method and system
JP2015500541A (en) Memory device, computer system and method for ordering memory responses
EP2860640B1 (en) Systems and methods of using an SPI controller
TW200422843A (en) Method and apparatus for detecting memory device interface
JPH0981508A (en) Method and apparatus for communication
JP2005222543A (en) Bus system
KR20140078161A (en) PCI express switch and computer system using the same
JP2014170361A (en) Information processor, bus division method and bus division program
US20150033082A1 (en) Method and Apparatus for Multi-chip Reduced Pin Cross Triggering To Enhance Debug Experience
JP2008198209A (en) System including bus matrix
US11127442B2 (en) Data transfers between a memory and a distributed compute array
US7130946B2 (en) Configuration and method having a first device and a second device connected to the first device through a cross bar
US9858222B2 (en) Register access control among multiple devices
US8943256B1 (en) Serial data intermediary device, and related systems and methods
US7302508B2 (en) Apparatus and method for high speed data transfer
JP2014232414A (en) I2C communication slave device
CN117539805A (en) Sideband access method, memory controller, core particle and computer equipment
KR20050067324A (en) Interface device between master/slave devices and method thereof
CN117194309A (en) Controller for inter-chip interconnection, chip, processing system and electronic device
KR100666950B1 (en) Multiple memory access system and method for packet processing
JP2007179172A (en) Logic circuit verification system and its control method
US8407385B2 (en) Bus arbitration system, a method of connecting devices of an IC employing a bus system and an IC
KR970012191A (en) Bus Protocol Controller and Data Transfer Method in Multiprocessor Systems