KR19990009680A - Diagnosis / Control System Using I2C Bus with Multi-layered Accessibility for Multiple Master Devices - Google Patents

Diagnosis / Control System Using I2C Bus with Multi-layered Accessibility for Multiple Master Devices Download PDF

Info

Publication number
KR19990009680A
KR19990009680A KR1019970032150A KR19970032150A KR19990009680A KR 19990009680 A KR19990009680 A KR 19990009680A KR 1019970032150 A KR1019970032150 A KR 1019970032150A KR 19970032150 A KR19970032150 A KR 19970032150A KR 19990009680 A KR19990009680 A KR 19990009680A
Authority
KR
South Korea
Prior art keywords
bus
bit
output
main
expander
Prior art date
Application number
KR1019970032150A
Other languages
Korean (ko)
Other versions
KR100224966B1 (en
Inventor
손호규
Original Assignee
윤종용
삼성전자 주식회사
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 윤종용, 삼성전자 주식회사 filed Critical 윤종용
Priority to KR1019970032150A priority Critical patent/KR100224966B1/en
Publication of KR19990009680A publication Critical patent/KR19990009680A/en
Application granted granted Critical
Publication of KR100224966B1 publication Critical patent/KR100224966B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 관한 것으로, 다수의 주 I2C 버스에 각각 연결되는 다수의 I2C 버스 마스터 디바이스, 상기 다수의 주 I2C 버스를 다수의 부 I2C 버스로 분리하고 이 부 I2C 버스상에 필요한 만큼의 I2C 버스 슬레이브 디바이스를 연결시킬 수 있게 하는 I2C 버스 멀티플렉서모듈과, 상기 다수의 I2C 버스 마스터 디바이스의 각각에 의해 어느 한 순간에 하나의 부 I2C 버스상에 있는 일I2C 버스 슬레이브 디바이스가 액세스되는 I2C 버스 슬레이브 디바이스를 포함하는 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 있어서,The present invention relates to a diagnosis / control system using a multi-layered I2C bus that can access a plurality of master devices, comprising: a plurality of I2C bus master devices connected to a plurality of main I2C buses; An I2C bus multiplexer module that allows the separation of secondary I2C buses and connects as many I2C bus slave devices as needed on this secondary I2C bus, and one secondary I2C at any one time by each of the plurality of I2C bus master devices. A diagnostic / control system using a multi-layered I2C bus comprising an I2C bus slave device to which one I2C bus slave device on a bus is accessed,

상기 I2C 버스 멀티플렉서모듈은, 주 I2C 버스에 연결되어 I2C 버스의 직렬 데이터를 병렬 데이터로 변환하는 I2C 버스용 원격 8비트 I/O 익스팬더와; 이 원격 8비트 I/O 익스팬더의 I2C 버스 슬레이브 주소를 결정하는 레지스터와; 주 I2C 버스에 하이 전류를 전달하는 레지스터와; 상기 I2C 버스용 원격 8비트 I/O 익스팬더의 출력 핀 8개를 입력으로 받고 상기 주 I2C 버스의 SDA 신호를 랫치 인에이블 신호로 사용하는 옥탈 트랜스페어런트 D-형 랫치와;이 옥탈 트랜스페어런트 D-형 랫치의 출력을 항상 인에이블해 주는 풀 다운 레지스터와; 옥탈 트랜스페어런트 D-형 랫치의 출력중 3비트를 선택 입력 신호로 사용하고 상기 옥탈 트랜스페어런트 D-형 랫치의 출력중 1 비트를 출력 인에이블 신호로 사용하여 상기 주 I2C 버스의 SCL과 SDA 신호를 각각 8개의 주 I2C 버스로 멀티플렉싱해 주는 8 비트 멀티플렉서 퀵 스위치와; 상기 부 I2C 버스의 상위군과 하위군을 구분하기 위해 상기 원격 8비트 I/O 익스팬더의 출력신호중 일 출력신호를 인버팅하여 상기 8 비트 멀티플렉서 퀵 스위치의 출력 인에이블 신호를 구동하는 인버터와; 각각 16 개의 부 I2C 버스에 하이 전류를 전달하는 풀업용 저항성 네트워크를 포함하여 이루어진다.The I2C bus multiplexer module includes: a remote 8-bit I / O expander for an I2C bus coupled to the main I2C bus to convert serial data of the I2C bus into parallel data; A register for determining an I2C bus slave address of this remote 8-bit I / O expander; A resistor for delivering a high current to the main I2C bus; An octal transparent D-type latch that receives eight output pins of the remote 8-bit I / O expander for the I2C bus as inputs and uses the SDA signal of the main I2C bus as a latch enable signal; A pull-down register that always enables the output of the type latch; The SCL and SDA signals of the main I2C bus are used by using 3 bits of the output of the octal transparent D-type latch as a selection input signal and 1 bit of the output of the octal transparent D-type latch as the output enable signal. An 8-bit multiplexer quick switch that multiplexes to eight main I2C buses each; An inverter for driving an output enable signal of the 8-bit multiplexer quick switch by inverting one output signal of the output signal of the remote 8-bit I / O expander to distinguish between an upper group and a lower group of the secondary I2C bus; Each consists of a resistive network for pullups that delivers high current to 16 secondary I2C buses.

Description

다수의 마스터 디바이스 액세스 가능한 다층 구조의 아이2씨 버스를 이용한 진단/제어 시스템Diagnosis / Control System Using I2C Bus with Multi-layered Accessibility for Multiple Master Devices

본 발명은 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 관한 것으로, 특히 하나의 주 I2C 버스상에 존재하는 여러 마스터 디바이스가 동일한 자격으로 다중의 부 I2C 버스상의 슬레이브 디바이스들을 액세스할 수 있도록 하므로써 시스템 진단 및 제어의 다각화를 이룰 수 있고 안정성을 유지할 수 있는 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 관한 것이다.The present invention relates to a diagnostic / control system using a multi-layer I2C bus accessible to a plurality of master devices, and in particular, multiple master devices present on one primary I2C bus may have slave devices on multiple secondary I2C buses with the same qualification. The present invention relates to a diagnostic / control system using a multi-layered I2C bus that is accessible to a number of master devices that can achieve stability and diversify system diagnostics and control.

도 1은 종래 다층구조의 I2C 버스 제어장치의 구성을 나타낸 블록도이다.1 is a block diagram showing the configuration of a conventional multi-layer I2C bus control apparatus.

도시된 바와 같이, 주 I2C 버스와 연결된 다수의 I2C 버스 마스터 디바이스(MD0 내지 MDN), 상기 주 I2C 버스와 연결되고 다수의 부 I2C 버스(SB0 내지SBN)에 연결된 I2C 버스 멀티플렉서와 상기 다수의 부 I2C 버스(SB0 내지SBN)에 각각 연결된 다수의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)을 포함하여 구성된다.As shown, a plurality of I2C bus master devices (MD0 through MDN) connected to a primary I2C bus, an I2C bus multiplexer connected to the primary I2C bus and connected to a plurality of secondary I2C buses (SB0 to SBN) and the plurality of secondary I2Cs. And a plurality of I2C bus slave devices (SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN) respectively connected to the buses SB0 to SBN.

상기 종래 다층구조의 I2C 버스 제어장치는 I2C 버스에 연결될 수 있는 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN) 수의 제한을 극복하기 위해 상기 주 I2C 버스를 상기 I2C 버스 멀티플렉서를 사용하여 다수의 부 I2C 버스(S0 내지SN)로 분리하고 다수의 부 I2C 버스(SB0 내지SBN)상에 필요한 만큼의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N, SD10 내지 SD1N,...,SDN0 내지 SDNN)를 연결시킬 수 있도록 한 것이다.The conventional multi-layer I2C bus controller is configured to replace the main I2C bus to overcome the limitation of the number of I2C bus slave devices (SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN) that can be connected to the I2C bus. I2C bus multiplexer is used to separate into multiple secondary I2C buses (S0 to SN), and as many I2C bus slave devices (SD00 to SD0N, SD10 to SD1N, ... as required on multiple secondary I2C buses (SB0 to SBN). , SDN0 to SDNN).

여기서 상기 I2C 버스 멀티플렉서는 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN) 액세스를 담당하는 마스터(I2C 버스 마스터 디바이스 0로 정의함;마스터 0로 칭함)가 제어하며 어느 한 순간에 부 I2C 버스(SB0 내지 SBN)중 하나의 부 I2C 버스만이 상기 주 I2C 버스와 연결된다.Wherein the I2C bus multiplexer is controlled by a master (defined as I2C bus master device 0; master 0) responsible for accessing the I2C bus slave devices (SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN). At any moment, only one secondary I2C bus of the secondary I2C buses SB0 to SBN is connected to the primary I2C bus.

따라서, 상기 마스터 0은 부 I2C 버스(SB0 내지 SBN)에 놓여 있는 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)를 액세스하기 전에 상기 I2C 버스 멀티플렉서를 원하는 부 I2C 버스(SB0 내지 SBN)로 셋팅해 놓은 후 해당 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)를 액세스하면 된다.Accordingly, the master 0 wants the I2C bus multiplexer to access the I2C bus multiplexer before accessing the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN that lie on the secondary I2C buses SB0 to SBN. After setting the buses SB0 to SBN, the corresponding I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN may be accessed.

상기 도 1에서 상기 주 I2C 버스는 SCL 신호와 SDA 신호로 구성되어 있다.In FIG. 1, the main I2C bus is composed of an SCL signal and an SDA signal.

도 2는 종래 다층구조 I2C버스 제어장치의 I2C 버스 멀티플렉서의 상세 회로도이다.2 is a detailed circuit diagram of an I2C bus multiplexer of a conventional multilayer I2C bus control apparatus.

도시된 바와 같이, I2C버스용 8 비트 원격 I/O 익스팬더(U1)는 상기 주 I2C 버스에 연결된 I2C 버스 슬레이브 디바이스로서 상기 마스터 0의 제어(판독/기록)를 받는다.As shown, an 8-bit remote I / O expander U1 for an I2C bus is controlled (read / write) by the master 0 as an I2C bus slave device connected to the main I2C bus.

상기 부 I2C 버스(SB0 내지 SBN)의 신호선들인 I2C15_XXX 내지 I2C0_XXX 는각각 독립적인 I2C 버스로 동작한다.Signal lines I2C15_XXX to I2C0_XXX of the secondary I2C buses SB0 to SBN operate as independent I2C buses, respectively.

상기 마스터 0가 임의의 부 I2C 버스(SB0 내지 SBN)상의 임의의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)와 통신하기 위해서는 우선 상기 U1과 통신하여 U1의 출력 단자(P3 내지 P0)를 원하는 부 I2C 버스(SB0 내지 SBN) 번호에 맞는 값으로 셋팅해야 한다.In order for the master 0 to communicate with any I2C bus slave device (SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN) on any secondary I2C bus (SB0 to SBN), the first communication with U1 is performed. The output terminals P3 to P0 must be set to values that match the desired secondary I2C bus (SB0 to SBN) numbers.

예를 들어, 부 I2C 버스(SB0 내지 SBN) 12번과 통신하기 위해서 U1의 출력단자(P3 내지 P0)를 (P3,P2,P1,P0) = (1,1,0,0)으로 셋팅하면, I2C 버스 멀티플렉서(U2,U3,U4,U5)의 선택 입력단자(S2,S1,S0)가, (S2,S1,S0)=(1,0,0)이 되어 I2C 버스 멀티플렉서(U2,U3,U4,U5)의 각각의 출력단자(B4)가 디바이스(U2,U3,U4,U5)의 각각의 입력단자(A)와 연결된다.For example, if the output terminals P3 to P0 of U1 are set to (P3, P2, P1, P0) = (1,1,0,0) to communicate with the secondary I2C buses SB0 to SBN No. 12, Select I2C bus multiplexers U2, U3, U4, U5, the input input terminals S2, S1, S0 become (S2, S1, S0) = (1, 0, 0), and the I2C bus multiplexers U2, U3 Each of the output terminals B4 of U4 and U5 is connected to each of the input terminals A of the devices U2, U3, U4 and U5.

또한, 상기 I2C 버스 멀티플렉서(U2,U3,U4,U5)는 로우 액티브 출력 인에이블 단자를 가지므로 값 '1'을 갖는 상기 U1의 출력(P3)이 인버터(U6)를 통해 OE 입력단자가 값 '0'을 갖는 상기 I2C 버스 멀티플렉서(U2 U3)의 출력이 인에이블되게 되며, 상기 I2C 버스 멀티플렉서(U4,U5)는 OE 입력단자가 값 '1'을 가지므로 출력이 디스에이블된다.In addition, since the I2C bus multiplexers U2, U3, U4, and U5 have low active output enable terminals, the output P3 of the U1 having a value of '1' is the value of the OE input terminal through the inverter U6. The output of the I2C bus multiplexer U2 U3 with '0' is enabled, and the output of the I2C bus multiplexers U4 and U5 is disabled because the OE input has a value of '1'.

결과적으로, 상기 주 I2C 버스의 SCL신호는 I2C12_SCL과 연결되며 SDA 신호는 I2C12_SDA와 연결되어 상기 주 I2C 버스와 상기 부 I2C 버스(SB0 내지 SBN)의 12번이 연결된다.As a result, the SCL signal of the main I2C bus is connected to I2C12_SCL and the SDA signal is connected to I2C12_SDA so that No. 12 of the main I2C bus and the secondary I2C buses SB0 to SBN are connected.

상기 주 I2C 버스와 상기 부 I2C 버스(SB0 내지 SBN)의 연결이 상기와 같이 셋팅된 후, 상기 마스터 0는 상기 부 I2C 버스(SB0 내지 SBN)의 12번상의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)와 통신하면 된다.After the connection of the primary I2C bus and the secondary I2C buses SB0 to SBN is set as described above, the master 0 is an I2C bus slave device SD00 to SD0N on the 12th side of the secondary I2C buses SB0 to SBN. SD10 to SD1N, ..., SDN0 to SDNN).

상기 마스터 0는 상기 부 I2C 버스(SB0 내지 SBN)의 변화가 있을 때 마다 상기 I2C버스용 8 비트 원격 I/O 익스팬더(U1)를 원하는 번호로 적절히 셋팅해야 한다.The master 0 should properly set the 8-bit remote I / O expander U1 for the I2C bus to a desired number whenever there is a change in the secondary I2C buses SB0 to SBN.

도 3은 종래 다층구조 I2C버스 제어장치의 부 I2C 버스 변경시의 파형도이다.Fig. 3 is a waveform diagram of changing a secondary I2C bus of a conventional multilayer I2C bus control apparatus.

상기 부 I2C 버스(SB0 내지 SBN)에 대한 액세스 권한을 부여받은 마스터 0을 제외한 주 I2C 버스상에 위치하는 다른 마스터 디바이스들은 상기 부 I2C 버스(SB0 내지 SBN)를 액세스할 수 없음은 상기 도 3으로부터 명확히 알 수 있다.FIG. 3 shows that other master devices located on the primary I2C bus except the master 0 granted access to the secondary I2C buses SB0 to SBN cannot access the secondary I2C buses SB0 to SBN. I can see clearly.

상기 도 2에 도시된 I2C 멀티플렉서 회로가 정상적으로 동작하기 위해서, 상기 마스터 0는 상기 U1을 셋팅시 도 3에 도시된 바와 같이 반드시 I2C 버스 프로토콜상의 '시작' 및 '중지' 명령어를 수행하여야 한다.In order for the I2C multiplexer circuit shown in FIG. 2 to operate normally, the master 0 must execute the 'start' and 'stop' commands on the I2C bus protocol as shown in FIG. 3 when setting the U1.

만일 '중지' 명령어를 발생치 않고 '반복 시작(Repeat Start)' 명령어를 발생한 후 상기 부 I2C 버스(SB0 내지 SBN)상의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)를 액세스한다면 도 4에 도시된 바와 같은 결과가 된다.If the 'Repeat Start' command is issued without generating the 'Stop' command, the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to the secondary I2C bus SB0 to SBN are generated. SDNN) results in a result as shown in FIG.

따라서 상기 부 I2C 버스(SB0 내지 SBN)상의 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)에 대해 I2C 버스 프로토콜 위반(violation)이 발생하여 상기 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)는 응답하지 않게 된다.Accordingly, an I2C bus protocol violation occurs with respect to the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN on the secondary I2C bus SB0 to SBN. SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN) do not respond.

즉, 도 4에서 T1의 '시작' 명령어 이후 8개 데이터 비트 전송과 ACK의 과정없이 T2에서 '반복 시작' 명령어가 발생하여, 상기 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)는 이후의 액세스에 대해 응답하지 않게된다.That is, in FIG. 4, after the 'start' command of T1, the 'repeat start' command is generated at T2 without the process of transmitting 8 data bits and ACK, and thus, the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ... , SDN0 to SDNN) become unresponsive to subsequent accesses.

따라서 종래 발명에서는 도 2의 U1을 셋팅한 후 반드시 '정지' 명령어를 구동해야 하며, 이 경우 하나 이상의 마스터 디바이스가 상기 부 I2C 버스(SB0 내지 SBN)를 액세스하려 할 때 문제가 발생한다.Therefore, in the related art, after setting U1 of FIG. 2, a 'stop' command must be driven. In this case, a problem occurs when one or more master devices attempt to access the secondary I2C buses SB0 to SBN.

I2C 버스는 매 액세스 사이클 시작시 마스터 디바이스들 사이에 중재(Arbitration)를 수행하여 I2C 버스 사용권을 부여받은 마스터 디바이스가 I2C 버스를 액세스할 수 있도록 되어 있다.The I2C bus performs arbitration between the master devices at the beginning of every access cycle so that the master device, which is licensed for the I2C bus, can access the I2C bus.

따라서 만일 마스터 0가 I2C 버스 중재를 거쳐 상기 부 I2C 버스(SB0 내지 SBN)를 12번으로 셋팅해 놓고 '정지'명령어를 구동한다(I2C 버스을 끝냄).Therefore, if master 0 sets the secondary I2C buses (SB0 to SBN) to 12 through I2C bus arbitration, it drives a 'stop' command (ends the I2C bus).

그후, 상기 부 I2C 버스(SB0 내지 SBN) 12번상의 상기 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)를 액세스하기 위해 상기 중재를 다시 시도할 때, 다른 마스터 디바이스가 상기 부 I2C 버스(SB0 내지 SBN)를 5번으로 셋팅해 놓기 위해 상기 U1에 대해 기록(write)를 시도했고 결국 다른 마스터 디바이스가 중재에서 이겼다면 상기 I2C 버스 멀티플렉서는 상기 부 I2C 버스(SB0 내지 SBN) 5번으로 변경될 것이다.Then, when attempting the arbitration again to access the I2C bus slave device (SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN) on the secondary I2C bus (SB0 to SBN) No. 12, another master If a device attempted to write to the U1 to set the secondary I2C buses SB0 through SBN to five and the other master device eventually won the arbitration, the I2C bus multiplexer could be assigned to the secondary I2C bus SB0. To SBN) 5.

따라서, 마스터 디바이스 0는 이후에 I2C 버스 사용권을 다시 획득하더라도 상기 부 I2C 버스(SB0 내지 SBN) 12번상의 상기 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)에 대한 액세스가 불가능하게 된다.Therefore, even if the master device 0 subsequently acquires the I2C bus right again, the master device 0 is connected to the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN on the secondary I2C bus SB0 to SBN No. 12. Access will be disabled.

결론적으로 종래와 같은 I2C 버스 구조에서는 여러 마스터 디바이스들에 의한 부 I2C 버스(SB0 내지 SBN)상의 상기 I2C 버스 슬레이브 디바이스(SD00 내지 SD0N,SD10 내지 SD1N,...,SDN0 내지 SDNN)에 대한 액세스가 불가능하며 단일 마스터 디바이스에 의한 액세스만 허용된다.In conclusion, in the conventional I2C bus structure, access to the I2C bus slave devices SD00 to SD0N, SD10 to SD1N, ..., SDN0 to SDNN on the secondary I2C buses SB0 to SBN by various master devices is prevented. It is not possible and only access by a single master device is allowed.

이로 인해 시스템 진단 및 제어를 수행할 수 있는 에이전트를 다각화하여 이중 경로(Duplicate path)(예를 들어, 로컬 에이전트(In-band) 및 원격 에이전트(Out-of-band))를 제공하는 것이 어렵게 되어 시스템 진단 및 제어 기능의 제약이 따르게 된다.This makes it difficult to diversify agents that can perform system diagnostics and control to provide duplicate paths (for example, local in-band and remote out-of-band). Constraints in system diagnostics and control functions.

따라서, 본 발명은 상기와 같은 목적을 달성하기 위하여 I2C 버스를 시스템 진단 및 제어의 목적으로 사용하는 시스템에서 시스템 진단 및 제어를 수행하는 마스터 디바이스를 다각화하므로써 시스템에 고부가 기능을 부여하고 사용의 편리성과 안정성을 부여할 수 있도록 다수의 마스터 디바이스가 다중의 부 I2C 버스를 액세스할 수 있도록 지원하는 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템을 제공하는 것을 목적으로 한다.Accordingly, the present invention provides a high value-added function to the system by diversifying the master device for performing system diagnosis and control in a system using the I2C bus for the purpose of system diagnosis and control in order to achieve the above object. It is an object of the present invention to provide a diagnosis / control system using a multi-layered I2C bus that is accessible to multiple master devices to enable multiple master devices to access multiple secondary I2C buses to provide stability.

도 1 은 종래 다층구조의 I2C 버스 제어장치를 나타낸 블록도.1 is a block diagram showing a conventional multi-layer I2C bus control device.

도 2 는 도 1의 I2C 버스 멀티플렉서 부분의 상세 회로도.FIG. 2 is a detailed circuit diagram of the portion of the I2C bus multiplexer of FIG. 1; FIG.

도 3 은 도 1 의 부 I2C 버스 변경시의 파형도.FIG. 3 is a waveform diagram at the time of changing the secondary I2C bus of FIG. 1; FIG.

도 4 는 도 1 에서 시작 명령어 없이 반복 시작 명령어(T2) 구동시의 파형도.4 is a waveform diagram of driving a repeat start command T2 without a start command in FIG.

도 5 는 본 발명에 따른 다수의 마스터 디바이스 액세스가 가능한 다층구조 의 I2C 버스를 이용한 진단/제어 시스템을 이용한 진단/제어 시스템의 실시예.5 is an embodiment of a diagnosis / control system using a diagnosis / control system using a multi-layered I2C bus capable of accessing a plurality of master devices according to the present invention.

도 6 은 도 5 의 I2C 버스 멀티플렉서 부분의 상세 회로도.FIG. 6 is a detailed circuit diagram of the portion of the I2C bus multiplexer of FIG. 5; FIG.

도 7 은 도 5 의 부 I2C 버스 변경시의 파형도.FIG. 7 is a waveform diagram at the time of changing the secondary I2C bus of FIG. 5; FIG.

* 도면의 주요부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

U1 : I2C 버스용 8 비트 원격 I/O 익스팬더U1: 8-bit remote I / O expander for I2C bus

U2 내지 U5 : 8 비트 멀티플렉서 퀵 스위치U2 to U5: 8-bit multiplexer quick switch

U6 : 인버터U6: Inverter

U7 : 옥탈 트랜스페어런트 D-형 랫치U7: Octal Transparent D-Type Latch

R1 내지 R3 : 풀업 레지스터R1 to R3: pullup registers

R4 : 풀 다운 레지스터R4: pull down register

RN1 내지 RN4 : 풀업용 저항성 네트워크RN1 to RN4: resistive network for pullup

상기한 목적을 달성하기 위하여 본 발명은, 다수의 주 I2C 버스에 각각 연결되는 다수의 I2C 버스 마스터 디바이스, 상기 다수의 주 I2C 버스를 다수의 부 I2C 버스로 분리하고 이 부 I2C 버스상에 필요한 만큼의 I2C 버스 슬레이브 디바이스를 연결시킬 수 있게 하는 I2C 버스 멀티플렉서모듈과, 상기 다수의 I2C 버스 마스터 디바이스의 각각에 의해 어느 한 순간에 하나의 부 I2C 버스상에 있는 일I2C 버스 슬레이브 디바이스가 액세스되는 I2C 버스 슬레이브 디바이스를 포함하여 이루어지는 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 있어서,In order to achieve the above object, the present invention provides a plurality of I2C bus master devices each connected to a plurality of primary I2C buses, separating the plurality of primary I2C buses into a plurality of secondary I2C buses, and as needed on this secondary I2C bus. An I2C bus multiplexer module that enables the connection of an I2C bus slave device of the I2C bus and an I2C bus on which one I2C bus slave device on one secondary I2C bus is accessed at any one time by each of the plurality of I2C bus master devices. A diagnostic / control system using a multi-layered I2C bus accessible to a plurality of master devices including a slave device,

상기 I2C 버스 멀티플렉서모듈은, 주 I2C 버스에 연결되어 I2C 버스의 직렬 데이터를 병렬 데이터로 변환하는 I2C 버스용 원격 8비트 I/O 익스팬더(U1)와; 이 원격 8비트 I/O 익스팬더(U1)의 I2C 버스 슬레이브 주소를 결정하는 레지스터(R1)와; 주 I2C 버스에 하이 전류를 전달하는(sourcing) 레지스터(R2 및 R3)와; 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력 핀 8개를 입력으로 받고 상기 주 I2C 버스의 SDA 신호를 랫치 인에이블 신호로 사용하는 옥탈 트랜스페어런트 D-형 랫치(U7)와;이 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력을 항상 인에이블해 주는 풀 다운 레지스터(R4)와; 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력중 3비트(B2 내지 B0)를 선택 입력 신호로 사용하고 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력중 1 비트(B3)를 출력 인에이블 신호로 사용하여 상기 주 I2C 버스의 SCL과 SDA 신호를 각각 8개의 주 I2C 버스로 멀티플렉싱해 주는 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5)와; 상기 부 I2C 버스의 상위군(I2C15_XXX I2C8_XXX)과 하위군(I2C7_XXX I2C0_XXX)을 구분하기 위해 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력신호중 일 출력신호(P3)를 인버팅하여 상기 8 비트 멀티플렉서 퀵 스위치(U2,U3)의 출력 인에이블 신호를 구동하는 인버터(U6)와; 각각 16 개의 부 I2C 버스에 하이 전류를 전달하는 풀업용 저항성 네트워크(RN1 내지 RN4)를 포함하여 이루어진다.The I2C bus multiplexer module includes: a remote 8-bit I / O expander (U1) for an I2C bus coupled to the main I2C bus to convert serial data of the I2C bus into parallel data; A register R1 for determining an I2C bus slave address of the remote 8-bit I / O expander U1; Resistors R2 and R3 for sourcing high current to the main I2C bus; An octal transparent D-type latch (U7) which receives eight output pins of the remote 8-bit I / O expander (U1) for the I2C bus as inputs and uses the SDA signal of the main I2C bus as a latch enable signal; A pull-down resistor R4 which always enables the output of this octal transparent D-type latch U7; 3 bits (B2 to B0) of the output of the octal transparent D-type latch U7 are used as the selection input signal, and one bit (B3) of the output of the octal transparent D-type latch U7 is enabled. An 8-bit multiplexer quick switch (U2 to U5) for multiplexing the SCL and SDA signals of the main I2C bus into eight main I2C buses, respectively, as signals; Inverting one output signal P3 of the output signals of the remote 8-bit I / O expander U1 for the I2C bus to distinguish between the upper group I2C15_XXX I2C8_XXX and the lower group I2C7_XXX I2C0_XXX of the secondary I2C bus. An inverter U6 for driving output enable signals of the 8-bit multiplexer quick switches U2 and U3; It comprises a pull-up resistive network (RN1 through RN4) that delivers a high current to each of 16 secondary I2C buses.

이하, 첨부한 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 6 은 본 발명에 따른 다수의 마스터 디바이스 액세스가 가능한 다층구조 의 I2C버스를 이용한 시스템 진단/제어장치의 I2C 버스 멀티플렉서 부분의 상세 회로도이다.6 is a detailed circuit diagram of an I2C bus multiplexer portion of a system diagnosis / control apparatus using a multi-layered I2C bus capable of accessing a plurality of master devices according to the present invention.

도시된 바와 같이, I2C 버스용 8 비트원격 I/O 익스팬더(U1)과 I2C 버스 멀티플렉서(U2 내지 U5)사이에 8비트 랫치인 옥탈 트랜스페어런트 D-형 랫치(U7)를 추가하고, 이 D-형 랫치(U7)의 랫치 인에이블 핀(LE)을 주 I2C 버스의 SDA 신호선에 연결하였다.As shown, an 8-bit latch, Octal Transparent D-Type Latch (U7), is added between the 8-bit remote I / O expander (U1) for the I2C bus and the I2C bus multiplexers (U2 to U5). The latch enable pin (LE) of the type latch (U7) is connected to the SDA signal line of the main I2C bus.

여기서, I2C 버스용 8 비트원격 I/O 익스팬더(U1)은 주 I2C 버스에 연결된 I2C 버스 슬레이브 디바이스로서 상기 주 I2C 버스상의 임의의 I2C 버스 마스터 디바이스의 제어(판독/기록)를 받는다.Here, the 8-bit remote I / O expander U1 for the I2C bus is an I2C bus slave device connected to the main I2C bus and is under the control (read / write) of any I2C bus master device on the main I2C bus.

상기 부 I2C 버스(I2C15_XXX 내지 I2C0_XXX)는 각각 독립적인 I2C 버스로 동작한다. 상기 주 I2C 버스상의 임의의 I2C 버스 마스터 디바이스가 임의의 상기 주 I2C 버스상의 임의의 I2C 버스 슬레이브 디바이스와 통신하기 위해선, 우선 상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)과 통신하여 이 I2C 버스용 8 비트원격 I/O 익스팬더(U1)의 출력단자(P3 내지 P0)를 원하는 상기 부 I2C 버스(I2C15_XXX I2C0_XXX)의 번호에 맞는 값으로 셋팅해야 한다.The secondary I2C buses I2C15_XXX to I2C0_XXX operate as independent I2C buses. In order for any I2C bus master device on the primary I2C bus to communicate with any I2C bus slave device on any of the primary I2C buses, it first communicates with an 8-bit remote I / O expander (U1) for the I2C bus to provide this I2C. The output terminals P3 to P0 of the 8-bit remote I / O expander U1 for the bus should be set to a value corresponding to the number of the desired secondary I2C bus I2C15_XXX I2C0_XXX.

예를 들어, 상기 부 I2C 버스(I2C15_XXX 내지 I2C0_XXX)중 12번 부 I2C 버스와 통신하기 위해서 상기 I2C 버스용 8 비트 원격 I/O 익스팬더(U1)의 출력단자를 (P3,P2,P1,P0) = (1,1,0,0)으로 셋팅한다.For example, an output terminal of the 8-bit remote I / O expander U1 for the I2C bus (P3, P2, P1, P0) for communicating with the secondary I2C bus of the secondary I2C buses (I2C15_XXX to I2C0_XXX). = (1,1,0,0)

상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)의 출력(P3 내지 P0)은 P7 내지 P0까지 확장 가능하고 상기 주 I2C 버스의 SDA 신호의 제어를 받는 옥탈 트랜스페어런트 D-형 랫치(U7)에 의해 랫치된다.The outputs P3 to P0 of the 8-bit remote I / O expander U1 for the I2C bus are expandable to P7 to P0 and octal transparent D-type latches U7 under the control of the SDA signal of the main I2C bus. Is latched by.

옥탈 트랜스페어런트 D-형 랫치(U7)의 출력 인에이블이 풀 다운 레지스터(R4)에 의해 항상 로우이므로 랫치된 데이터는 바로 B7 내지 B0까지 확장 가능한 출력 포트(B3 내지 B0)에 의해 구동되고, 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력 포트(B2 내지 B0)는 8 비트 멀티플렉서 퀵 스위치(U2,U3,U4,U5)의 선택 입력 단자(S2,S1,S0)가 (1,0,0)가 되어 각 디바이스의 출력 단자(B4)가 각각의 입력 단자(A)와 연결된다.Since the output enable of the octal transparent D-type latch U7 is always low by the pull-down resistor R4, the latched data is driven by the output ports B3 to B0, which are directly expandable to B7 to B0. The output ports B2 to B0 of the octal transparent D-type latch U7 have a selection input terminal S2, S1, S0 of the 8-bit multiplexer quick switch (U2, U3, U4, U5) (1, 0, 0), the output terminal B4 of each device is connected to each input terminal A. FIG.

상기 8 비트 멀티플렉서 퀵 스위치(U2,U3,U4,U5)는 로우 액티브 출력 인에이블 단자를 가지므로 값 '1'을 갖는 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력(P3)이 인버터(U6)를 통해 OE(출력 인에이블) 입력 단자가 값 '0'을 갖는 상기 8 비트 멀티플렉서 퀵 스위치(U2,U3)의 출력이 인에이블된다.Since the 8-bit multiplexer quick switch U2, U3, U4, U5 has a low active output enable terminal, the output P3 of the octal transparent D-type latch U7 having the value '1' is an inverter ( Through U6), the output of the 8-bit multiplexer quick switch U2, U3 whose OE (output enable) input terminal has the value '0' is enabled.

상기 8 비트 멀티플렉서 퀵 스위치(U4,U5)는 OE(출력 인에이블) 입력 단자가 값 '1'을 가지므로 출력이 디스에이블된다.In the 8-bit multiplexer quick switches U4 and U5, the output is disabled because the OE (output enable) input terminal has a value of '1'.

상기 옥탈 트랜스페어런트 D-형 랫치(U7)에 관련된 자세한 파형도는 도 7에 도시되어 있다.A detailed waveform diagram relating to the octal transparent D-type latch U7 is shown in FIG. 7.

도시된 바와 같이, 상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)의 출력단자(P3 내지 P0)는 기록 데이터의 마지막 비트후 ACK 구동 시점에서, 상기 SCL의 상승 에지 이후에 T1 시점에서 변화한다.As shown, the output terminals P3 to P0 of the 8-bit remote I / O expander U1 for the I2C bus change at the time of T1 after the rising edge of the SCL at the time of ACK driving after the last bit of write data. do.

그러나, 상기 SDA 신호가 '로우'이므로 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력은 변하지 않는다.However, since the SDA signal is 'low', the output of the octal transparent D-type latch U7 does not change.

'T2' 시점에서 상기 SDA 신호가 '하이'가 되면 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 LE 입력이 액티브되므로 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력값이 'T1'에서 바뀐 상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)의 출력값과 동일하게 된다.When the SDA signal becomes 'high' at the 'T2' time point, the LE input of the octal transparent D-type latch U7 is activated, so that the output value of the octal transparent D-type latch U7 is changed from 'T1'. The output value of the 8-bit remote I / O expander U1 for the I2C bus is the same.

도 7에서 상기 'T2' 이후에 I2C12_SCL 신호가 잠시동안 로우로 하강하지만 I2C 버스 프로토콜상 상기 부 I2C 버스 12번 상의 I2C 버스 슬레이브 디바이스에는 아무런 영향을 주지 않는다.In FIG. 7, after the 'T2', the I2C12_SCL signal falls low for a while, but does not affect the I2C bus slave device on the secondary I2C bus 12 in the I2C bus protocol.

'T2' 이후에 상기 주 I2C 버스의 SCL 신호는 I2C12_SCL 신호와 연결되며 상기 SDA 신호는 I2C12_SDA 신호와 연결되어 결국 상기 주 I2C 버스와 상기 부 I2C 버스 12번이 연결되게 된다.After 'T2', the SCL signal of the main I2C bus is connected to the I2C12_SCL signal, and the SDA signal is connected to the I2C12_SDA signal, thereby eventually connecting the main I2C bus and the secondary I2C bus 12.

이와 같이 I2C 버스의 연결이 셋팅된 후 마스터 디바이스는 상기 부 I2C 버스 12번상의 I2C 버스 슬레이브 디바이스와 통신하면 된다.After the connection of the I2C bus is set in this way, the master device may communicate with the I2C bus slave device on the secondary I2C bus 12.

도 7에 도시된 바와 같이, 마스터 디바이스는 상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)를 셋팅한 후 버스를 놓지않고 'T3'에서 '반복 시작' 명령어만으로 상기 부 I2C 버스 12번상의 I2C 버스 슬레이브 디바이스를 액세스할 수 있다.As shown in FIG. 7, the master device sets the 8-bit remote I / O expander U1 for the I2C bus and then releases the bus. The I2C bus slave device can be accessed.

이렇게 하여, 상기 I2C 버스 멀티플렉서 셋팅과 부 I2C 버스 12번상의 I2C 버스 슬레이브 디바이스 액세스 동작사이에 다른 마스터 디바이스의 간섭(intervention)을 방지하므로써 종래 발명에서 다수의 마스터 디바이스에 의한 상기 부 I2C 버스 액세스시의 문제점을 해결할 수 있다.In this way, by preventing the interference of other master devices between the I2C bus multiplexer setting and the I2C bus slave device access operation on secondary I2C bus No. 12, the conventional I2C bus access by the plurality of master devices in the conventional invention. The problem can be solved.

상기 I2C 버스 멀티플렉서 변경전과 변경후의 상기 부 I2C 버스의 각각의 버스 상태를 살펴보면 다음과 같다.The bus states of the secondary I2C bus before and after the I2C bus multiplexer change are as follows.

도 7에서 상기 I2C 버스 멀티플렉서 변경전의 부 I2C 버스 5번 버스는 'T2'에서 '정지' 명령어 없이 사이클이 중단된 상태이므로 다음 액세스시 '반복 시작' 상태로 동작하는데 문제가 없다.In FIG. 7, since the cycle of the secondary I2C bus 5 before the change of the I2C bus multiplexer is stopped without a 'stop' command at 'T2', there is no problem in operating in the 'repeat start' state at the next access.

또한, 상기 I2C 버스 멀티플렉서 변경후의 부 I2C 버스의 12번 버스는 앞에서도 설명한 바와 같이 'T2'이후의 I2C12_SCL 이 잠시동안 '로우'로 구동되지만 I2C 버스 프로토콜상 아무런 의미를 지니지 않으므로 상기 부 I2C 버스 12번상의 I2C 버스 슬레이브 디바이스는 이를 무시하게 된다.In addition, after changing the I2C bus multiplexer, bus No. 12 of the secondary I2C bus is driven as 'low' for a while after 'T2' as described above, but has no meaning in the I2C bus protocol. A phase I2C bus slave device will ignore it.

'T3'에서 I2C 버스상에 '반복 시작' 명령어가 구동되어 해당 I2C 버스 슬레이브 디바이스는 이에 응답하게 된다.At 'T3' the 'Start Repeat' command is driven on the I2C bus and the corresponding I2C bus slave device responds.

상기 부 I2C 버스 액세스가 가능한 마스터 디바이스들은 상기 부 I2C 버스 액세스가 필요할 때 마다 상기 I2C 버스용 8 비트원격 I/O 익스팬더(U1)를 원하는 번호로 적절히 셋팅해야 한다.The master devices capable of accessing the secondary I2C bus should properly set the 8-bit remote I / O expander U1 for the I2C bus to the desired number whenever the secondary I2C bus access is required.

여기서 반드시 고려되어야 할 점은, 각각의 마스터 디바이스는 도 5의 I2C 버스용 8 비트원격 I2C I/O 익스팬더(U1) 셋팅을 위한 액세스와 부 I2C 버스상의 I2C 버스 슬레이브 디바이스 액세스사이에 I2C 버스의 릴리즈 없이 즉, '정지' 명령어 없이 '반복 시작' 명령어를 다시 구동하는 방식을 택해야 한다.It must be considered here that each master device releases the I2C bus between the access for setting the 8-bit remote I2C I / O expander (U1) for the I2C bus of FIG. 5 and the I2C bus slave device access on the secondary I2C bus. You should choose to rerun the 'Start Repeat' command without the word 'Stop'.

도 5 는 본 발명을 활용하여 구성한 제어 및 진단 시스템의 일예이다.5 is an example of a control and diagnostic system constructed utilizing the present invention.

도시된 바와 같이, 'uSMC'는 로컬 콘솔에 연결되어 인-밴드 시스템 진단 및 제어를 담당하는 마스터 디바이스이며, '원격 시스템 진단 및 제어를 위한 애드-인 카드는 모뎀 또는 LAN을 통해 원격 콘솔로 연결되어 아웃-오브-밴드의 시스템 진단 및 제어를 가능케하는 에이전트이다.As shown, the 'uSMC' is a master device connected to the local console and responsible for in-band system diagnostics and control, while the 'add-in card for remote system diagnostics and control' is connected to the remote console via a modem or LAN. Agent to enable out-of-band system diagnostics and control.

여기서, 상기 'uSMC' 와 애드-인 카드는 동일한 자격으로 부 I2C 버스상의 슬레이브 디바이스를 액세스할 수 있다.Here, the 'uSMC' and the add-in card can access the slave device on the secondary I2C bus with the same qualification.

상기 인-밴드 시스템 진단 및 제어는 시스템의 주 프로세서(호스트)가 진단 및 제어의 주체이므로 상기 주 프로세서(호스트)가 동작하지 않을 때는 시스템 운영이 불가능하다.The in-band system diagnosis and control is impossible to operate the system when the main processor (host) is not operating because the main processor (host) of the system is the subject of diagnosis and control.

또한, 아웃-오브-밴드 시스템 진단 및 제어는 원격 콘솔에서 모뎀이나 LAN등의 방법을 통해 시스템의 주 프로세서와는 무관하게 시스템을 진단 및 제어하는 방법이다.In addition, out-of-band system diagnosis and control is a method of diagnosing and controlling the system regardless of the main processor of the system through a method such as a modem or a LAN at a remote console.

상기한 바와 같이 본 발명은 I2C버스를 사용하는 진단 및 제어 시스템에서 하나의 주 I2C버스를 최대 256개의 부 I2C버스로 분기시키는 I2C 멀티플렉서와 이를 제어하는 회로를 적절히 운영하므로써 다수의 마스터 디바이스가 동일한 자격으로 다중의 부 I2C버스에 연결될 수 있게 하므로써 결과적으로 시스템 진단 및 제어를 수행하는 마스터 디바이스를 다각화하므로써 시스템에 고부가 기능을 부여하고 사용의 편리성과 안정성을 부여할 수 있는 효과가 있다.As described above, according to the present invention, in the diagnosis and control system using the I2C bus, a plurality of master devices have the same qualification by appropriately operating an I2C multiplexer and a circuit for controlling the I2C multiplexer which branches one main I2C bus into up to 256 secondary I2C buses. As a result, it is possible to connect to multiple secondary I2C buses, and as a result, by diversifying the master device performing system diagnosis and control, it is possible to add high-value functions to the system and to provide convenience and stability of use.

Claims (5)

하나의 주 I2C 버스에 각각 연결되는 다수의 I2C 버스 마스터 디바이스, 상기 주 I2C 버스를 다수의 부 I2C 버스로 분리하고 이 부 I2C 버스상에 필요한 만큼의 I2C 버스 슬레이브 디바이스를 연결시킬 수 있게 하는 I2C 버스 멀티플렉서모듈과, 상기 다수의 I2C 버스 마스터 디바이스의 각각에 의해 어느 한 순간에 하나의 부 I2C 버스상에 있는 일I2C 버스 슬레이브 디바이스가 액세스되는 I2C 버스 슬레이브 디바이스를 포함하여 이루어지는 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 있어서,Multiple I2C bus master devices, each connected to one primary I2C bus, and an I2C bus that allows the primary I2C bus to be separated into multiple secondary I2C buses and connect as many I2C bus slave devices as needed on this secondary I2C bus. A plurality of master devices accessible multilayers comprising a multiplexer module and an I2C bus slave device to which one I2C bus slave device on one secondary I2C bus is accessed at any one time by each of the plurality of I2C bus master devices. In the diagnosis / control system using the I2C bus of the structure, 상기 I2C 버스 멀티플렉서모듈은, 주 I2C 버스에 연결되어 I2C 버스의 직렬 데이터를 병렬 데이터로 변환하는 I2C 버스용 원격 8비트 I/O 익스팬더(U1)와;The I2C bus multiplexer module includes: a remote 8-bit I / O expander (U1) for an I2C bus coupled to the main I2C bus to convert serial data of the I2C bus into parallel data; 상기 원격 8비트 I/O 익스팬더(U1)의 I2C 버스 슬레이브 주소를 결정하는 레지스터(R1)와;A register (R1) for determining an I2C bus slave address of said remote 8-bit I / O expander (U1); 상기 주 I2C 버스에 하이 전류를 전달하는 레지스터(R2 및 R3)와;Resistors (R2 and R3) for delivering a high current to the main I2C bus; 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력 핀 8개를 입력으로 받고 상기 주 I2C 버스의 SDA 신호를 랫치 인에이블 신호로 사용하는 옥탈 트랜스페어런트 D-형 랫치(U7)와;An octal transparent D-type latch (U7) which receives eight output pins of the remote 8-bit I / O expander (U1) for the I2C bus as inputs and uses the SDA signal of the main I2C bus as a latch enable signal; 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력을 항상 인에이블해 주는 풀 다운 레지스터(R4)와;A pull down resistor (R4) that always enables the output of the octal transparent D-type latch (U7); 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력중 3비트(B2 내지 B0)를 선택 입력 신호로 사용하고 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력중 1 비트(B3)를 출력 인에이블 신호로 사용하여 상기 주 I2C 버스의 SCL과 SDA 신호를 각각 8개의 주 I2C 버스로 멀티플렉싱해 주는 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5)와;3 bits (B2 to B0) of the output of the octal transparent D-type latch U7 are used as the selection input signal, and one bit (B3) of the output of the octal transparent D-type latch U7 is enabled. An 8-bit multiplexer quick switch (U2 to U5) for multiplexing the SCL and SDA signals of the main I2C bus into eight main I2C buses, respectively, as signals; 상기 부 I2C 버스의 상위군(I2C15_XXX 내지 I2C8_XXX)과 하위군(I2C7_XXX 내지 I2C0_XXX)을 구분하기 위해 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력신호중 일 출력신호(P3)를 인버팅하여 상기 8 비트 멀티플렉서 퀵 스위치(U2,U3)의 출력 인에이블 신호를 구동하는 인버터(U6)와;Inverting one output signal P3 among the output signals of the remote 8-bit I / O expander U1 for the I2C bus to distinguish between the upper group I2C15_XXX to I2C8_XXX and the lower group I2C7_XXX to I2C0_XXX of the secondary I2C bus. An inverter U6 for driving output enable signals of the 8-bit multiplexer quick switches U2 and U3; 각각 16 개의 부 I2C 버스에 하이 전류를 전달하는 풀업용 저항성 네트워크(RN1 내지 RN4)를 포함하여 이루어지는 것을 특징으로 하는,It characterized in that it comprises a pull-up resistive network (RN1 to RN4) for delivering a high current to each of 16 secondary I2C bus, 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템.Diagnostic / control system using multi-layer I2C bus with multiple master device access. 제 1 항에 있어서, 옥탈 트랜스페어런트 D-형 랫치(U7)는The method of claim 1, wherein the octal transparent D-type latch U7 is 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력단자 신호의 일부 또는 전부를 입력으로 하며, 상기 주 I2C 버스상의 SDA 신호 또는 이를 이용한 신호를 랫치 인에이블 신호로 사용하며, 출력은 상기 풀 다운 레지스터(R4)에 의해 항상 인에이블되어 있는 회로로서 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력을 적절한 시점에서 구동시키는 것을 특징으로하는,A part or all of an output terminal signal of the remote 8-bit I / O expander U1 for the I2C bus is input, and an SDA signal on the main I2C bus or a signal using the same is used as a latch enable signal. A circuit which is always enabled by a pull down register R4, characterized in that the output of the remote 8-bit I / O expander U1 for the I2C bus is driven at an appropriate time point, 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템.Diagnostic / control system using multi-layer I2C bus with multiple master device access. 제 2 항에 있어서, 옥탈 트랜스페어런트 D-형 랫치(U7)는The method of claim 2, wherein the octal transparent D-type latch U7 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)와 상기 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5) 사이에 위치되고, 상기 주 I2C 버스의 SDA 신호에 랫치 인에이블 신호가 연결되는 것을 특징으로하는,It is located between the remote 8-bit I / O expander (U1) for the I2C bus and the 8-bit multiplexer quick switch (U2 to U5), characterized in that the latch enable signal is connected to the SDA signal of the main I2C bus , 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템.Diagnostic / control system using multi-layer I2C bus with multiple master device access. 제 1 항에 있어서, 상기 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5)는,The method of claim 1, wherein the 8-bit multiplexer quick switch (U2 to U5), 상기 옥탈 트랜스페어런트 D-형 랫치(U7)에서 구동한 출력 포트의 일부 신호를 선택 입력 신호로 사용하고 상기 인버터(U6)에 의해 생성된 신호로 출력 입력 단자 값에 따라 출력이 제어되는 것을 특징으로하는,Partial signals of the output port driven by the octal transparent D-type latch U7 are used as a selection input signal, and outputs are controlled according to output input terminal values as signals generated by the inverter U6. doing, 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템.Diagnostic / control system using multi-layer I2C bus with multiple master device access. 하나의 주 I2C 버스에 연결되는 다수의 I2C 버스 마스터 디바이스, 상기 주 I2C 버스를 다수의 부 I2C 버스로 분리하고 이 부 I2C 버스상에 필요한 만큼의 I2C 버스 슬레이브 디바이스를 연결시킬 수 있게 하는 I2C 버스 멀티플렉서모듈과, 상기 다수의 I2C 버스 마스터 디바이스의 각각에 의해 어느 한 순간에 하나의 부 I2C 버스상에 있는 일 I2C 버스 슬레이브 디바이스가 액세스되는 I2C 버스 슬레이브 디바이스를 포함하여 이루어지고,Multiple I2C bus master devices connected to one primary I2C bus, an I2C bus multiplexer that separates the primary I2C bus into multiple secondary I2C buses and allows as many I2C bus slave devices as needed on this secondary I2C bus. A module and an I2C bus slave device to which one I2C bus slave device on one secondary I2C bus is accessed at any one time by each of the plurality of I2C bus master devices, 상기 I2C 버스 멀티플렉서모듈은, 주 I2C 버스에 연결되어 I2C 버스의 직렬 데이터를 병렬 데이터로 변환하는 I2C 버스용 원격 8비트 I/O 익스팬더(U1)와; 상기 원격 8비트 I/O 익스팬더(U1)의 I2C 버스 슬레이브 주소를 결정하는 레지스터(R1)와; 상기 주 I2C 버스에 하이 전류를 전달하는 레지스터(R2 및 R3)와; 상기 주 I2C 버스의 SDA 신호를 랫치 인에이블 신호로 사용하는 옥탈 트랜스페어런트 D-형 랫치(U7)와; 상기 옥탈 트랜스페어런트 D-형 랫치(U7)의 출력을 항상 인에이블해 주는 풀 다운 레지스터(R4)와; 상기 주 I2C 버스의 SCL과 SDA 신호를 각각 8개의 주 I2C 버스로 멀티플렉싱해 주는 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5)와; 상기 I2C 버스용 원격 8비트 I/O 익스팬더(U1)의 출력신호중 일 출력신호(P3)를 인버팅하여 상기 8 비트 멀티플렉서 퀵 스위치(U2,U3)의 출력 인에이블 신호를 구동하는 인버터(U6)와; 각각 16 개의 부 I2C 버스에 하이 전류를 전달하는 풀업용 저항성 네트워크(RN1 내지 RN4)를 포함하는 다수의 마스터 디바이스 액세스 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템에 있어서,The I2C bus multiplexer module includes: a remote 8-bit I / O expander (U1) for an I2C bus coupled to the main I2C bus to convert serial data of the I2C bus into parallel data; A register (R1) for determining an I2C bus slave address of said remote 8-bit I / O expander (U1); Resistors (R2 and R3) for delivering a high current to the main I2C bus; An octal transparent D-type latch (U7) using the SDA signal of the main I2C bus as a latch enable signal; A pull down resistor (R4) that always enables the output of the octal transparent D-type latch (U7); 8-bit multiplexer quick switches (U2 to U5) for multiplexing the SCL and SDA signals of the main I2C bus to eight main I2C buses, respectively; An inverter (U6) for inverting one output signal (P3) of the output signal of the remote 8-bit I / O expander (U1) for the I2C bus to drive the output enable signal of the 8-bit multiplexer quick switch (U2, U3). Wow; A diagnostic / control system using a multi-layered I2C bus accessible to multiple master devices, including a resistive network (RN1 to RN4) for pull-up, each delivering high current to 16 secondary I2C buses, 상기 다수의 I2C 버스 마스터 디바이스의 각각은,Each of the plurality of I2C bus master devices, 상기 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5)를 제어하기 위한 상기 원격 8비트 I/O 익스팬더(U1)의 액세스와 상기 다수의 부 I2C 버스상의 다수의 I2C 버스 슬레이브 디바이스 액세스 사이에 I2C 버스 정지 명령어 없이 I2C 버스 반복 시작 명령어만을 사용하므로써 상기 8 비트 멀티플렉서 퀵 스위치(U2 내지 U5) 설정과상기 다수의 부 I2C 버스상의 다수의 I2C 버스 슬레이브 디바이스의 액세스 사이에 다른 다수의 I2C 버스 마스터 디바이스의 간섭을 방지하는 것을 특징으로 하는,Without an I2C bus stop command between access of the remote 8-bit I / O expander U1 to control the 8-bit multiplexer quick switches U2 through U5 and access of a plurality of I2C bus slave devices on the plurality of secondary I2C buses. By using only I2C bus repeat start instructions to prevent interference of multiple I2C bus master devices between the 8-bit multiplexer quick switch (U2 through U5) settings and access of multiple I2C bus slave devices on the multiple secondary I2C buses. Characterized in that, 다수의 마스터 디바이스 액세스가 가능한 다층 구조의 I2C 버스를 이용한 진단/제어 시스템.Diagnostic / control system using multi-layer I2C bus with multiple master device access.
KR1019970032150A 1997-07-11 1997-07-11 The diagnostic/control system for the multi-level i2c bus allowing the access from the plural master devices KR100224966B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970032150A KR100224966B1 (en) 1997-07-11 1997-07-11 The diagnostic/control system for the multi-level i2c bus allowing the access from the plural master devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970032150A KR100224966B1 (en) 1997-07-11 1997-07-11 The diagnostic/control system for the multi-level i2c bus allowing the access from the plural master devices

Publications (2)

Publication Number Publication Date
KR19990009680A true KR19990009680A (en) 1999-02-05
KR100224966B1 KR100224966B1 (en) 1999-10-15

Family

ID=19514122

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970032150A KR100224966B1 (en) 1997-07-11 1997-07-11 The diagnostic/control system for the multi-level i2c bus allowing the access from the plural master devices

Country Status (1)

Country Link
KR (1) KR100224966B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102450553B1 (en) 2015-06-04 2022-10-05 삼성전자주식회사 Storage device, main board embedded the same and self diagnosis method

Also Published As

Publication number Publication date
KR100224966B1 (en) 1999-10-15

Similar Documents

Publication Publication Date Title
KR100224965B1 (en) The diagnostic/control system using the multi-level i2c bus
US6597197B1 (en) I2C repeater with voltage translation
US6816939B2 (en) Apparatus for supporting I2C bus masters on a secondary side of an I2C multiplexor
JPH06187283A (en) Card
KR960704274A (en) MEMORY DEVICE WITH SWITCHING OF DATE STREAM MODES
JPS62500269A (en) Power control network with reliable communication protocols
JPS61279930A (en) Detection of connection state
JP4784759B2 (en) PLC equipment
JPS63275241A (en) Control link and method of transmission using the link
KR100224966B1 (en) The diagnostic/control system for the multi-level i2c bus allowing the access from the plural master devices
US4663776A (en) System for accessing electrical circuits and relay switch thereof
JP3220026B2 (en) Master / slave automatic setting system
JPS6214860B2 (en)
JP3161319B2 (en) Multiprocessor system
EP0556138B1 (en) A bus for connecting extension cards to a data processing system and test method
JP2938049B1 (en) Hot-swap controller for extended I / O device to computer
JPS6041787B2 (en) Data processing device using multiple processors
JPH0731631B2 (en) Address selection method by slot position designation
JPH0374425B2 (en)
JPH0290256A (en) Memory bus switching system
JPH079636B2 (en) Bus diagnostic device
JP4174272B2 (en) Device controller
CN116126769A (en) Isolation circuit and device isolation method for serial bus
JP3768581B2 (en) Plant control device
JPH10105287A (en) Connection system for extension board

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080604

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee