KR101988176B1 - Method for enabling seamless switching among a plurality of bus masters and apparatus for said method - Google Patents

Method for enabling seamless switching among a plurality of bus masters and apparatus for said method Download PDF

Info

Publication number
KR101988176B1
KR101988176B1 KR1020180082257A KR20180082257A KR101988176B1 KR 101988176 B1 KR101988176 B1 KR 101988176B1 KR 1020180082257 A KR1020180082257 A KR 1020180082257A KR 20180082257 A KR20180082257 A KR 20180082257A KR 101988176 B1 KR101988176 B1 KR 101988176B1
Authority
KR
South Korea
Prior art keywords
data
bus
master
signal
cycle
Prior art date
Application number
KR1020180082257A
Other languages
Korean (ko)
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 KR1020180082257A priority Critical patent/KR101988176B1/en
Application granted granted Critical
Publication of KR101988176B1 publication Critical patent/KR101988176B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • H04L12/40176Flexible bus arrangements involving redundancy
    • H04L12/40202Flexible bus arrangements involving redundancy by using a plurality of master stations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40019Details regarding a bus master
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40084Bus arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Bus Control (AREA)

Abstract

A method for enabling seamless switching among bus masters, according to the present invention, comprises the steps of: allowing a first bus master to repeat a process of forming a data cycle, to which a data channel through which nodes connected to the data bus can transmit data is allocated, in a data bus by transposing a header; and allowing a preliminarily connected second bus master to form a data cycle, required after a specific field of a header, in the data bus when a predesignated specific signal (signal notifying of a normal operation) is not loaded on the specific field. Here, the first bus master is set to load the specific signal on the specific field of the header for the repetitively formed data cycle.

Description

복수의 버스 마스터 간에 무순단 절체가 이루어질 수 있게 하는 방법과 그 방법을 위한 장치 {Method for enabling seamless switching among a plurality of bus masters and apparatus for said method}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a method and a device for performing seamless switching between a plurality of bus masters,

본 발명은, 데이터 버스에 연결된 노드들 중 버스 상에 데이터 사이클을 형성하는 마스터 노드들 간의 절체(switching)에 대한 방법과 그 방법을 위한 장치에 관한 것이다.The present invention relates to a method for switching between master nodes forming a data cycle on a bus among the nodes connected to the data bus and an apparatus therefor.

사람의 생활을 편리하게 하는 수 많은 종류의 복잡한 장치들, 예를 들어, 통신기기, 차량, 의료 기기 등은, 많은 부품들 간에 서로 정보를 실시간으로 교환함으로써 다양하고 편리한 기능 및 우수한 성능 등을 제공하고 있다. 그리고, 이러한 부품들 간의 정보 교환은 배선이나 조립의 편의성을 위해 부품들이 공통적으로 연결되는 데이터 버스를 통해 이루어지게 한다.Many sophisticated devices, such as communication devices, vehicles, medical devices, etc., that facilitate the life of a person provide various and convenient functions and excellent performance by exchanging information with each other among many parts in real time . The information exchange between these components is made through a data bus to which the components are connected in common for the convenience of wiring and assembly.

그런데, 데이터 버스를 적용하면, 서로 간의 통신을 위해 그 버스에 연결된 부품들, 즉, 노드(node)들은 버스 점유 경쟁을 통해 데이터 전송을 할 수 밖에 없다. 그래서, 버스 경합에 대한 다양한 중재 방식들이 제안되고 또한 사용되고 있다.However, when the data bus is applied, the parts connected to the bus, that is, the nodes, are forced to transmit data through bus contention for communication with each other. Thus, various arbitration schemes for bus contention have been proposed and used.

그리고, 버스에 연결된 노드들을 발견(discovery)하고 그 발견된 노드들에 대하여 버스를 각기 독점적으로 사용할 수 있는 채널, 즉 타임 슬롯(time slot)을 할당함으로써, 노드들 간에 버스 충돌이 발생하지 않게 하는 방식도, 버스 경합에 대한 하나의 중재 방식이 될 수 있다. 그런데, 이와 같은 방식에서는, 채널 또는 타임 슬롯과 같이 버스를 독점적으로 사용할 수 있게 하는 버스 사용권의 할당을 주관하는 특별한 노드( 이를, '마스터(master) 노드' 또는 '버스 마스터'로 칭한다. )가 필요하다.Then, by disassembling the nodes connected to the bus and allocating a time slot to each of the discovered nodes, the bus can be used exclusively for each bus, thereby preventing a bus conflict between the nodes The scheme can also be an arbitration scheme for bus contention. However, in this method, a special node (referred to as a 'master node' or 'bus master') which is responsible for assigning a bus usage right to use the bus exclusively, such as a channel or time slot need.

이와 같이, 버스 마스터가, 버스에 연결된 각 노드의 버스 사용을 중재하는 방식에서는, 그 마스터 노드의 동작에 장애가 발생하면, 그 버스에 연결된 모든 노드들의 통신이 불가능해진다. 따라서, 마스터 노드의 경우에는 백업(backup)용 노드를 별도로 구축함으로써 이중화하는 것이 바람직하다.In this manner, in the method in which the bus master arbitrates the bus use of each node connected to the bus, if a failure occurs in the operation of the master node, communication of all the nodes connected to the bus becomes impossible. Therefore, in the case of the master node, it is preferable to duplicate the backup node by constructing a separate backup node.

본 발명은, 복수의 마스터 노드들 간의 절체가 무순단(seamless)으로 이루어지게 하는 방법과 그 방법을 위한 장치를 제공하는데 일 목적이 있는 것이다.It is an object of the present invention to provide a method and a device for performing seamless switching between a plurality of master nodes.

본 발명의 다른 목적은, 마스터 노드들 간의 비상 시의 절체를 사전에 확인함으로써 버스 시스템의 안정성을 향상시키는 방법과 그 방법을 위한 장치를 제공하는 것이다.It is another object of the present invention to provide a method for improving the stability of a bus system by confirming an exchange in an emergency state between master nodes in advance and an apparatus for the method.

본 발명의 목적은, 상기 명시적으로 서술된 목적에 국한되는 것은 아니며, 본 발명에 대한 구체적이고 예시적인 하기의 설명에서 도출될 수 있는 효과를 달성하는 것을 그 목적에 당연히 포함한다.It is to be understood that the object of the present invention is not limited to the explicitly stated objects, but, of course, it is an object of the present invention to achieve the effect which can be derived from the following specific and exemplary description of the present invention.

본 발명의 일 측면에 따른, 데이터 버스에 연결된 버스 마스터들 간의 절체를 위한 일 방법은, 제 1버스 마스터가, 상기 데이터 버스에 연결된 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을, 헤더를 전치(前置)시켜 상기 데이터 버스에 형성하는 과정을 반복하는 단계와, 상기 헤더의 특정 필드에 기 지정된 특정 신호가 실리지 않을 때는, 상기 제 1버스 마스터 외의 상기 데이터 버스에 연결된 적어도 하나의 버스 마스터 중에서 제 2버스 마스터가 상기 특정 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하는 단계를 포함하여 이루어진다. 여기서, 상기 제 1버스 마스터는, 상기 반복적으로 형성되는 데이터 사이클에 대해서 그 헤더의 상기 특정 필드에 상기 특정 신호를 싣도록 설정된다.One method for transferring between bus masters connected to a data bus, according to one aspect of the present invention, is a method in which a first bus master performs a data cycle in which data channels to which the nodes connected to the data bus are able to transmit data are allocated And repeating the steps of forming a header on the data bus and repeating the steps of forming at least one data bus connected to the data bus other than the first bus master when a predetermined signal pre- And forming a data cycle on the data bus that is required by the second bus master after the specific field in the bus master of the second bus master. Here, the first bus master is set to load the specific signal in the specific field of the header for the repetitively formed data cycle.

본 발명에 따른 일 실시예에서는, 상기 헤더에는, 상기 제 2버스 마스터가 상기 특정 신호를 실을 수 있는 서브 필드가 상기 특정 필드에 연이어서 더 할당된다. 그리고, 상기 제 2버스 마스터는, 자신이 상기 데이터 버스에 데이터 사이클을 형성할 때, 상기 서브 필드에 상기 특정 신호를 싣는다. 또한 본 실시예에서는, 상기 특정 필드에 상기 특정 신호가 실리지 않는 횟수가, 상기 제 2버스 마스터에 대해 지정된 수에 대응할 때에, 상기 데이터 버스에 데이터 사이클을 형성한다. 특히, 상기 횟수가 상기 제 2버스 마스터에 대해 지정된 수에 대응하는 경우가, 상기 특정 필드에 상기 특정 신호가 실리지 않는 상태가 지속되는 상황에서 연속적으로 발생될 때에, 상기 데이터 버스에 데이터 사이클을 형성할 수도 있다. 만약, 연속적으로 발생된 것이 아닐 때는, 상기 데이터 사이클보다는 짧은 구간을 갖는 사이클( 예를 들어, 헤더로만 구성되는 더미 사이클 )을 상기 데이터 버스에 형성할 수도 있다.In one embodiment of the present invention, in the header, a subfield in which the second bus master can receive the specific signal is further allocated in the specific field. The second bus master loads the specific signal in the subfield when it forms a data cycle on the data bus. In this embodiment, a data cycle is formed on the data bus when the number of times that the specific signal is not loaded in the specific field corresponds to the number specified for the second bus master. In particular, when the number of times corresponds to the number specified for the second bus master, a data cycle is formed on the data bus when continuously occurring in a state in which the specific signal is not loaded in the specific field You may. If it is not consecutively generated, a cycle (for example, a dummy cycle consisting of only a header) having a shorter interval than the data cycle may be formed on the data bus.

본 발명에 따른 일 실시예에서는, 상기 제 1버스 마스터가, 상기 특정 필드에 상기 특정 신호를 싣지 않는 시험 동작을 주기적으로 수행한다. 그리고 한번의 시험 동작은, 상기 적어도 하나의 버스 마스터의 수 만큼의 데이터 사이클에 대해 진행됨으로써, 예비적으로 구비된 상기 적어도 하나의 버스 마스터에 대한 점검이 모두 이루어지게 한다.In an embodiment according to the present invention, the first bus master periodically performs a test operation in which the specific signal is not loaded in the specific field. And a test operation is performed for a data cycle as many as the number of the at least one bus master so that all of the checks for the at least one bus master provided preliminarily are performed.

헤더에 상기 서브 필드가 더 할당되는 전술한 실시예에서, 상기 제 1버스 마스터는, 상기 특정 필드에 상기 특정 신호를 싣지 않은 상태에서 그 특정 필드에 연이어서 할당된 상기 서브 필드에도 상기 특정 신호가 나타나지 않으면, 상기 서브 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성한다. 그리고 상기 데이터 버스가 아닌 상기 제 1버스 마스터가 연결된 타 버스를 통해 백업 마스터의 이상을 알리는 정보를 송신하는 등의 경보 동작을 수행할 수도 있다.In the above-described embodiment in which the sub-field is further allocated to the header, the first bus master sets the specific signal to the sub-field assigned sequentially to the specific field without loading the specific signal in the specific field If not, a data cycle required after the subfield is formed on the data bus. And may perform an alarm operation such as transmitting information notifying the abnormality of the backup master through another bus connected to the first bus master rather than the data bus.

본 발명에 따른 일 실시예에서는, 상기 제 1버스 마스터는, 데이터 사이클의 형성을 위해 상기 데이터 버스로 송신하는 상기 헤더의 적어도 일부에 대해, 상기 데이터 버스로 송신된 신호를 검출하고 그 검출한 값과 상기 일부의 값이 서로 동일하지 않으면, 다음 데이터 사이클을 위한 헤더의 상기 특정 필드에 상기 특정 신호를 싣지 않는다.In one embodiment of the present invention, the first bus master detects a signal transmitted to the data bus for at least a portion of the header transmitted to the data bus for the formation of a data cycle, And if the value of the part is not equal to each other, the specific signal is not loaded in the specific field of the header for the next data cycle.

본 발명에 따른 일 실시예에서는, 상기 특정 필드에 상기 특정 신호가 실리지 않은 상태일 때는, 상기 제 2버스 마스터가 상기 특정 신호를 실을 수 있는 서브 필드가 상기 특정 필드에 연이어서 상기 헤더에 더 할당됨으로써 상기 헤더의 크기가 가변될 수 있다.In one embodiment of the present invention, when the specific signal is not loaded in the specific field, the sub-field in which the second bus master can receive the specific signal is added to the header The size of the header can be varied.

본 발명에 따른 일 실시예에서는, 상기 제 1버스 마스터와 상기 제 2버스 마스터는, 상기 데이터 버스가 아닌 타 버스에도 연결되어 그 타 버스 상의 노드를 각기 형성할 수도 있으며, 이 경우에, 상기 제 1버스 마스터는, 상기 특정 필드에 상기 특정 신호를 싣지 않는 상태이면, 상기 타 버스로의 데이터 송신을 중단한다.In one embodiment of the present invention, the first bus master and the second bus master may be connected to other buses other than the data bus to form respective nodes on the other bus. In this case, 1 bus master stops data transmission to the other bus when the specific signal is not loaded in the specific field.

본 발명에 따른 일 실시예에서는, 상기 적어도 하나의 버스 마스터에는 우선순위를 나타내는 코드가 각기 부여된다. 이 경우, 상기 제 2버스 마스터는 상기 적어도 하나의 버스 마스터 중에서 우선순위가 가장 높은 코드가 부여되어 있는 버스 마스터이다.In one embodiment of the present invention, each of the at least one bus master is assigned a code indicating a priority. In this case, the second bus master is a bus master to which a code having the highest priority among the at least one bus master is assigned.

본 발명의 다른 일 측면에 따른, 데이터 버스에 연결된 노드들의 데이터 송수신을 위한 데이터 사이클을 형성하도록 구성된 기기는, 상기 데이터 버스에 실리는 신호를 검출하고 또한 인가되는 데이터를 상기 데이터 버스에 적합한 신호 형태로 변환하여 송신하는 트랜시버와, 상기 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을, 특정 필드를 포함하는 헤더가 전치되는 방식으로 상기 데이터 버스에 형성하기 위해 필요한 데이터를 상기 트랜시버를 통해 상기 데이터 버스로 송신하도록 구성된 제 1컨트롤러를 포함하여 구성된다. 그리고, 상기 제 1컨트롤러는, 자신이 상기 데이터 버스에 형성하는 매(每) 데이터 사이클에 대해서 그 헤더의 상기 특정 필드에 기 지정된 특정 신호를 싣도록 구성되며, 또한, 지정된 주기마다는 상기 특정 필드에 대해서 상기 특정 신호를 싣지 않되, 상기 특정 신호를 싣지 않은 상기 특정 필드에 연이어져 헤더에 할당되어 있는 서브 필드에서 상기 특정 신호가 검출되지 않을 때는, 상기 서브 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하면서 지정된 경보 동작을 수행한다.According to another aspect of the present invention, an apparatus configured to form a data cycle for data transmission and reception of nodes connected to a data bus includes means for detecting a signal carried on the data bus, And transmitting data required for forming a data cycle in which the data channels to which the nodes can transmit data are allocated to the data bus in such a manner that a header including a specific field is transposed to the transceiver And a first controller configured to transmit data to the data bus through the first bus. The first controller is configured to load a specific signal predefined in the specific field of the header for each data cycle that the first controller forms on the data bus, When the specific signal is not detected in a subfield assigned to a header subsequent to the specific field in which the specific signal is not loaded but the specific signal is not detected, And performs the specified alarming operation while forming on the bus.

본 발명의 또 다른 일 측면에 따른, 데이터 버스에 연결된 노드들의 데이터 송수신을 위한 데이터 사이클을 형성하도록 구성된 기기는, 상기 트랜시버와, 상기 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을 상기 데이터 버스에 형성하기 위해 필요한 데이터를 상기 트랜시버를 통해 상기 데이터 버스로 송신하도록 구성된 제 2컨트롤러를 포함하여 구성된다. 상기 제 2컨트롤러는, 상기 데이터 버스 상에 자신이 형성하지 않은 데이터 사이클에 전치되는 헤더의 특정 필드에서 기 지정된 특정 신호가 검출되지 않을 때에, 상기 특정 필드에 연이어져 할당된 필드 구간에 상기 특정 신호를 송신함과 동시에 그 필드 구간 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성한다. According to another aspect of the present invention, an apparatus configured to form a data cycle for data transmission / reception of nodes connected to a data bus includes a transceiver and a data cycle in which data channels to which the nodes can transmit data are allocated And a second controller configured to transmit data necessary for forming on the data bus to the data bus through the transceiver. Wherein the second controller is further configured to cause the second controller to output the specific signal to the field section allocated in consecutive order in the specific field when a specific signal designated in advance in a specific field of a header corresponding to a data cycle not formed by the self- And forms a required data cycle on the data bus after the field period.

본 발명에 따른 일 실시예에서는, 상기 제 2컨트롤러는, 데이터 사이클의 형성을 위해 상기 데이터 버스로 송신하는 상기 헤더의 적어도 일부에 대해, 상기 데이터 버스로 송신된 신호를 검출하고 그 검출한 값과 상기 일부의 값이 서로 동일하지 않으면, 다음의 특정 데이터 사이클에서 그 헤더의 상기 필드 구간에 상기 특정 신호를 싣지 않는다. 여기서, 상기 특정 데이터 사이클은, 상기 특정 필드에 상기 특정 신호가 실리지 않은 헤더가 전치된, 상기 제 1컨트롤러에 의해 형성되는 데이터 사이클이다.In an embodiment according to the present invention, the second controller detects a signal transmitted to the data bus with respect to at least a part of the header transmitted to the data bus for formation of a data cycle, If the values of the part are not equal to each other, the specific signal is not put in the field period of the header in the next specific data cycle. Here, the specific data cycle is a data cycle formed by the first controller in which a header in which the specific signal is not loaded is placed in the specific field.

전술한 본 발명 또는, 하기에서 첨부된 도면과 함께 상세히 설명되는 본 발명의 적어도 일 실시예에 따른, 복수의 마스터 간에 무순단 절체가 이루어질 수 있게 하는 방법과 장치는, 데이터 버스의 유지에 필수적인 마스터 노드를 다중화함으로써 높은 안정성의 버스 시스템을 제공함과 동시에, 버스 마스터의 장애 시에 백업용인 버스 마스터가 순간적으로 대체하여 데드 타임(dead time)없이 버스 상에 데이터 사이클이 지속되게 한다. 즉, 노드들의 개별적인 독점 버스 사용의 근거가 되는 데이터 사이클이 어떠한 끊김도 없이(seamlessly) 유지되게 하면서 버스 마스터 간의 절체가 순간적으로 이루어지게 한다. 따라서, 버스 마스터 간의 절체에 따른 노드들의 데이터 전송 지연 등의 현상은 결코 발생되지 않는다.In accordance with at least one embodiment of the present invention described above or described in detail below with reference to the accompanying drawings, a method and apparatus for enabling a sequential transfer between a plurality of masters can be realized by a master By multiplexing the nodes, a bus system with high reliability is provided and at the same time, the bus master for backup is instantaneously replaced in case of failure of the bus master, so that the data cycle is continued on the bus without dead time. That is, the transfer of data between the bus masters is made instantaneously, ensuring that the data cycles underlying the use of the individual monopoly buses of the nodes are maintained seamlessly. Therefore, a phenomenon such as a delay in data transmission of nodes due to switching between bus masters never occurs.

또한, 본 발명에 따른 일 실시예에서는, 다중화를 위해 백업되는 하나 이상의 버스 마스터의 정상적인 절체 여부를 미리 점검함으로써, 버스 마스터의 장애 등과 같은 비상 시에 백업용 버스 마스터로의 무순단 절체가 이루어지지 못하는 상황이 발생하지 않도록 한다. 이로 인해, 버스 시스템의 안정성이 더욱 향상된다.In addition, in one embodiment of the present invention, it is checked whether or not normal switching of one or more bus masters backed up for multiplexing is performed in advance, so that it is not possible to perform seamless switching to the bus master for backup in an emergency, Avoid situations. This further improves the stability of the bus system.

도 1은, 본 발명의 일 실시예에 따른 무순단 절체의 방법을 각기 수행할 수 있는 한 쌍의 마스터 노드들이 다른 슬레이브(slave) 노드들과 함께 하나의 데이터 버스에 연결된 시스템을 예시한 것이고,
도 2는, 본 발명의 일 실시예에 따라, 버스에 연결된 노드들이 각기 독점적으로 버스를 사용할 수 있는 데이터 채널들이 할당되는, 버스 마스터에 의해 버스 상에 형성되는 데이터 사이클의 포맷에 대한 일 예이고,
도 3은, 본 발명의 일 실시예에 따라, 버스 마스터들 간에 절체가 이루어지는 과정을 도식적으로 나타낸 것이고,
도 4는, 본 발명의 다른 일 실시예에 따른, 이중화된 버스 마스터에 대해 구성되는, 데이터 사이클의 헤더에 대한 포맷의 일 예이고,
도 5와 6은, 본 발명의 실시예들에 따른, 이중화된 버스 마스터들의 안정성 확인과정에서 발생되는, 어느 한쪽의 장애 여부에 따라 다르게 진행되는 데이터 사이클들의 예를 각각 도시한 것이고,
도 7은, 본 발명의 일 실시예에 따라, 무순단 절체의 방법을 각기 수행할 수 있는 복수의 버스 마스터들이 절체에 관여할 우선순위에 대한 코드가 할당된 채로 하나의 데이터 버스에 연결된 시스템을 예시한 것이고,
도 8은, 본 발명의 다른 일 실시예에 따라 구성되는, 다중화된 버스 마스터를 위한 데이터 사이클의 헤더에 대한 포맷의 일 예이고,
도 9는, 본 발명의 또 다른 일 실시예에 따라, 다중화된 버스 마스터를 위한 데이터 사이클의 헤더에 포함되는 비콘(beacon) 존에 대해서 그 크기가 가변적으로 할당되는 것을 예시한 것이고,
도 10은, 본 발명의 일 실시예에 따라, 다중화된 버스 마스터들이, 다른 상위 버스 상에서 슬레이브 노드가 되는 기기들에 각기 부속되는 것을 예시한 것이다.
FIG. 1 illustrates a system in which a pair of master nodes, each capable of performing a method of non-discrete transfer according to an embodiment of the present invention, is connected to one data bus together with other slave nodes,
Figure 2 is an example of a format of a data cycle formed on a bus by a bus master, in which nodes connected to the bus are each assigned data channels that can exclusively use the bus, according to one embodiment of the present invention ,
FIG. 3 schematically illustrates a process of switching between bus masters according to an embodiment of the present invention,
4 is an example of a format for a header of a data cycle, which is configured for a duplicated bus master, according to another embodiment of the present invention,
5 and 6 illustrate examples of data cycles that are different depending on whether one of the failures occurs in the reliability check process of the redundant bus masters according to the embodiments of the present invention,
FIG. 7 is a diagram illustrating a system in which a plurality of bus masters, each capable of performing a method of seamless muting, are connected to one data bus while a code for a priority to be involved in the transfer is allocated, according to an embodiment of the present invention. For example,
8 is an example of a format for a header of a data cycle for a multiplexed bus master, constructed in accordance with another embodiment of the present invention,
9 illustrates an example in which a size of a beacon zone included in a header of a data cycle for a multiplexed bus master is variably allocated according to another embodiment of the present invention,
Figure 10 illustrates that multiplexed bus masters are attached to devices that are slave nodes on different higher buses, according to one embodiment of the present invention.

이하에서는, 본 발명에 따른 다양한 실시예들에 대해 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, various embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

이하의 본 발명에 따른 실시예들의 설명과 첨부된 도면에 있어서, 부기된 동일 번호는 특별한 사정이 없는 한 동일한 구성요소를 지칭한다. 물론, 설명의 편의와 이해에의 도움을 위해, 필요에 따라서는 동일한 구성요소에 대해서도 서로 다른 번호로 부기될 수도 있다. BRIEF DESCRIPTION OF THE DRAWINGS In the following description of the embodiments of the invention and the accompanying drawings, like reference numerals refer to like elements, unless the context clearly dictates otherwise. Of course, for the sake of convenience of explanation and understanding, the same constituent elements may also be assigned different numbers if necessary.

도 1은, 본 발명의 일 실시예에 따른 무순단 절체(seamless switching)의 방법을 각기 수행할 수 있는 한 쌍의 마스터 버스 컨트롤러들(10,11)과, 각기 슬레이브 노드를 구성하는 다수의 버스 컨트롤러들(20i, i=1,2,..,N)이 하나의 데이터 버스에 연결된 시스템을 예시한 것이다.1 is a block diagram showing a pair of master bus controllers 10 and 11 capable of performing a seamless switching method according to an embodiment of the present invention and a plurality of buses And the controllers 20 i , i = 1, 2, ..., N are connected to one data bus.

도 1에 예시된 시스템에서는, 상기 마스터 버스 컨트롤러들(10,11)과 그 외의 슬레이브 버스 컨트롤러들(20i, i=1,2,..,N)( 이하, '슬레이브 컨트롤러'로 약칭한다. )에 고유의 식별번호가 할당되어 있으며, 특별한 번호, 예를 들어 0의 고유 식별번호는( 이 특별한 고유 식별번호는, 해당 버스 컨트롤러가 버스 마스터로 동작하도록 약속된 번호일 수 있다. ) 상기 마스터 버스 컨트롤러들(10,11)( 이하, '마스터 컨트롤러'로 약칭한다. )에 할당되어 있다. 도시된 예에서는, 이중화된 한 쌍의 마스터 컨트롤러들(10,11)에 동일한 고유 식별번호가 할당되어 있지만, 도시된 예와는 달리 서로 다른 고유 식별번호가 할당될 수도 있다. 1, the master bus controllers 10 and 11 and other slave bus controllers 20 i , i = 1, 2, ..., N (hereinafter, abbreviated as 'slave controllers' . A special identification number, for example, a unique identification number of 0 (this particular unique identification number may be a number promised by the bus controller to operate as a bus master) Are assigned to the master bus controllers 10 and 11 (hereinafter abbreviated as 'master controller'). In the illustrated example, the duplicated master controllers 10 and 11 are assigned the same unique identification number, but different unique identification numbers may be assigned to the duplicated master controllers 10 and 11, unlike the illustrated example.

서로 동일한 고유 식별번호가 할당되는 경우에는, 이중화된 마스터 컨트롤러들(10,11)에 주(main) 마스터 컨트롤러( 이하, '주 마스터'로 약칭한다. )와 백업을 위해 예비적으로 구비된 서브(sub) 마스터 컨트롤러( 이하, '서브 마스터'로 약칭한다. )를 각기 구분하기 위한 정보가 설정된다. A master master controller (hereinafter abbreviated as "master master") and a spare master controller (hereinafter referred to as a master master controller) preliminarily provided for backup are provided in the duplicated master controllers 10 and 11, (hereinafter abbreviated as "sub-master") is set for each sub-master controller.

상기 한 쌍의 마스터 컨트롤러들(10,11)은 각기, 링크 컨트롤러(10a,11a)와 트랜시버(10b,11b)를 포함하여 구성되며, 상기 슬레이브 버스 컨트롤러들(20i, i=1,2,..,N)도, 상기 마스터 컨트롤러와 물리적으로는 동일한 구성을 갖는다.The master controller (10, 11) of the pair are each, and comprising a link controller (10a, 11a) and the transceiver (10b, 11b), said slave bus controller (20 i, i = 1,2, ..., N) also have the same physical structure as the master controller.

상기 마스터 컨트롤러들 중 주 마스터(10)( 보다 구체적으로는, 링크 컨트롤러(10a) )는, 시스템에 전원이 인가되면, 데이터 버스 상에 각기 노드를 형성하고 있는 버스 컨트롤러들을 디스커버리(discovery)하는 동작을 주관하고, 그 디스커버리의 결과에 따라 각 버스 컨트롤러 간에 버스의 점유가 조정되게 한다. 예를 들어, 자신이 클럭에 동기하여 버스 상에 형성하는 데이터 사이클(cycle)에, 각 노드가 독점하여 버스를 사용할 수 있는 데이터 채널을 개별적으로 할당한다.The main master 10 (more specifically, the link controller 10a) among the master controllers is an operation for disassembling the bus controllers forming the respective nodes on the data bus when the system is powered on And the bus occupancy of each bus controller is adjusted according to the result of the discovery. For example, in a data cycle formed on the bus by itself in synchronization with a clock, each node individually allocates a data channel that can use a bus.

상기 서브 마스터(11)( 보다 구체적으로는, 링크 컨트롤러(11a) )는, 상기 디스커버리 과정에 참여하지는 않지만( 실시예에 따라서는 참여할 수도 있다. ), 그 디스커버리 과정과 그 이후의 데이터 사이클을 모두 모니터링함으로써, 상기 주 마스터(10)가 버스 상에 형성하는 데이터 사이클을 주관하기 위해 필요한 모든 정보를 획득하여 저장한다. 그리고, 주 마스터(10)의 장애나 오동작과 같은 비상 시에는 주 마스터 내의 링크 컨트롤러(10a)가 수행하는 동작을 즉각적으로 대체하여 수행하게 된다.Although the sub-master 11 (more specifically, the link controller 11a) does not participate in the discovery process (it can participate according to an embodiment), the sub-master 11 By monitoring, the main master 10 acquires and stores all the information necessary for managing the data cycle that it forms on the bus. When an emergency such as a failure or malfunction of the main master 10 occurs, the operation performed by the link controller 10a in the main master is immediately replaced.

그리고, 각 버스 컨트롤러( 즉, 각 마스터 컨트롤러와 각 슬레이브 컨트롤러 ) 내의 트랜시버는, 링크 컨트롤러가 전송하는 데이터를 버스에서 요구하는 물리적 신호로 변환하여 송신하고, 버스에 실리는 신호를 검출하여 데이터로 변환하여 링크 컨트롤러에 전달한다.The transceiver in each bus controller (that is, each master controller and each slave controller) converts the data transmitted by the link controller into a physical signal required by the bus, transmits the data, detects a signal carried on the bus, To the link controller.

한편, 버스 마스터인 상기 마스터 컨트롤러들(10,11)과 슬레이브 컨트롤러들(20i, i=1,2,..,N)은 각기, 데이터 버스에서 각각의 노드가 되는, 특정의 기능을 수행하는 부품, 예를 들어, 차량의 경우 전자 제어장치( ECU: Electronic Control Unit )에 버스 인터페이스 기기로서 부속된다. 물론, 상기 서브 마스터(11)는, 주 마스터(10)가 부속되는 부품의 장애 등에 대비하기 위해 예비적으로 구비되는 백업용 부품에 부속된다.On the other hand, the master controllers 10 and 11 and the slave controllers 20 i , i = 1, 2, ..., N, which are bus masters, perform specific functions, For example, as a bus interface device to an electronic control unit (ECU) in the case of a vehicle. Of course, the sub-master 11 is attached to a spare part preliminarily provided for the purpose of preparing a failure of a part to which the main master 10 is attached.

이하에서는, 본 발명의 일 실시예에 따른, 도 1의 시스템 상에서 이루어지는 복수의 마스터 컨트롤러들 간의 무순단 절체(seamless switching)에 대해서 상세히 설명한다. Hereinafter, seamless switching between a plurality of master controllers on the system of FIG. 1 according to an embodiment of the present invention will be described in detail.

도 1의 시스템에 전원이 인가되면, 상기 한 쌍의 마스터 컨트롤러들(10,11) 중 주 마스터(10)의 링크 컨트롤러(10a)는, 적절한 디스커버리 사이클을 수행하여 버스에 연결된 모든 노드들, 즉 모든 버스 컨트롤러들을 발견한다. 그리고, 발견된 모든 버스 컨트롤러들에 대하여, 각 버스 컨트롤러의 식별번호에 근거하여 이후에 진행하는 데이터 사이클에 데이터 채널을 할당한다. 앞서 언급한 바와 같이, 서브 마스터(11)는 이 디스커버리 과정에 참여하지 않는다. 하지만, 실시예에 따라서는 참여할 수도 있는데, 이 경우에도, 데이터 채널 등의 할당과 같이 버스를 상시적으로 점유할 수 있는 권한은 부여되지 않는다.When power is applied to the system of FIG. 1, the link controller 10a of the master 10 of the pair of master controllers 10, 11 performs an appropriate discovery cycle to select all nodes connected to the bus, Find all bus controllers. Then, for all bus controllers found, a data channel is allocated to a data cycle to be performed later based on the identification number of each bus controller. As mentioned above, the submaster 11 does not participate in this discovery process. However, depending on the embodiment, it is possible to participate. In this case, the authority to always occupy the bus, such as the allocation of the data channel, is not granted.

도 2는, 디스커버리에 의해 발견된 버스 컨트롤러들이 각기 독점적으로 사용할 수 있는 데이터 채널들이 할당된, 상기 주 마스터(10)의 링크 컨트롤러(10a)에 의해 버스 상에 형성되는 데이터 사이클의 포맷에 대한 일 예이다. 이하에서는, '링크 컨트롤러'에 대해서, 그 링크 컨트롤러를 포함하고 있는 '주 마스터', '서브 마스터' 또는 '버스 컨트롤러'로 통칭한다. 따라서, '주 마스터', '서브 마스터' 또는 '버스 컨트롤러'라고 기재한 경우에도, 특별한 사정이 없는 한 이는 곧 해당 구성요소내의 링크 컨트롤러를 지칭하는 것을 의도한 것이다.2 is a diagram of a format of a data cycle formed on a bus by the link controller 10a of the main master 10, to which bus controllers found by discovery are assigned data channels that can be used exclusively. Yes. Hereinafter, the 'link controller' is collectively referred to as a 'master master', a 'sub master', or a 'bus controller' that includes the link controller. Therefore, even if it is described as a 'master master', a 'sub-master', or a 'bus controller', it is intended to refer to a link controller in a corresponding component unless otherwise noted.

본 발명은, 복수의 마스터 컨트롤러들 간에 절체가 끊김없이(seamlessly) 순간적으로 이루어지게 하는 방법에 관한 것으로서, 버스 상에 연결된 노드들의 발견이나 데이터 사이클 상에, 각 노드가 충돌없이 데이터를 송신할 수 있게 하는 채널의 할당 등과는 직접적인 관련이 없다. 따라서, 노드의 디스커버리나 데이터 사이클 상에의 독점 사용권 부여 등은 기 공지된 방식이든 새로이 제안되는 방식이든 어떠한 방식이어도 무방하다. The present invention relates to a method for seamlessly and seamlessly switching between a plurality of master controllers, wherein each node is capable of transmitting data without collision on the discovery or data cycle of nodes connected on the bus There is no direct relationship between the allocation of channels to be provided. Thus, discovery of a node or exclusive use of a data cycle may be accomplished in any of the known or newly proposed methods.

상기 주 마스터(10)는, 본 발명의 일 실시예에 따라, 도 2에 예시된 바와 같은 포맷의 데이터 사이클을 버스 상에 형성할 때, 각 데이터 사이클 마다 헤더(200)와 트레일러(trailer)(220)를 각각 전치(前置) 및 후치(後置)시킨다. 상기 트레일러(220)는 현재의 데이터 사이클이 종료됨( 다음 사이클이 시작됨 )을 노드들에게 알리기 위한 비트 패턴이 실리는 구간으로서, 실시예에 따라서는, 상기 트레일러(220)가 데이터 사이클에 포함되지 않을 수도 있고, 다음에 설명하는 무순단 절체를 위한 비콘 필드(beacon field)의 직전에 위치하는 방식으로 헤더를 구성하는 요소가 될 수도 있다.The main master 10, in accordance with an embodiment of the present invention, when forming a data cycle of the format as illustrated in FIG. 2 on the bus, generates a header 200 and a trailer ( 220 are respectively placed in front and back. The trailer 220 is a section in which a bit pattern for informing nodes that the current data cycle is ended (the next cycle is started) is provided. In some embodiments, the trailer 220 is not included in the data cycle Or it may be an element constituting a header in a manner located immediately before a beacon field for seamless mutual switching explained below.

상기 헤더(200)는, 도면에 예시된 바와 같이, 비콘 필드(201), 그 비콘 필드에 이어지는 가드 필드(202), 그리고 데이터 사이클의 제어나 관리를 위해 필요한 다양한 정보필드들(210)( 이하, '프레임 필드'로 통칭한다. )로 구성된다. 상기 프레임 필드(210)에는, 예를 들어, 데이터 사이클에 할당된 채널들의 수, 데이터 사이클의 횟수를 나타내는 일련번호 등의 필드가 포함될 수 있다.The header 200 includes a beacon field 201, a guard field 202 following the beacon field, and various information fields 210 (hereinafter referred to as " , &Quot; frame field "). The frame field 210 may include fields such as, for example, the number of channels allocated in the data cycle, the serial number indicating the number of data cycles, and the like.

상기 주 마스터(10)는, 도 2에 예시된 바와 같은 포맷의 데이터 사이클을 버스 상에 형성할 때, 버스에 대한 자신의 송수신이 정상적으로 이루어지고 있는 상태이면, 상기 헤더(200)의 비콘 필드(201)에 액티브(active) 상태를 나타내는 특정 비트 값( 예를 들어, 1 ), 또는 그 비트 값을 변조한 신호( 이하에서는, 이 특정 비트 값 또는 그 값을 변조한 신호를 '라이브 신호'라 칭한다. )를 싣게 된다. 2, if the main master 10 is in a state where its own transmission / reception with respect to the bus is normally performed, the beacon field of the header 200 A specific bit value (for example, 1) indicating an active state or a signal obtained by modulating the bit value (hereinafter, a signal obtained by modulating the specific bit value or its value is referred to as a "live signal" Quot;).

그리고, 상기 주 마스터(10)의 링크 컨트롤러(10a)는, 데이터 사이클을 위한 헤더(200)를 상기 트랜시버(10b)를 통해 버스로 송신하면서, 동시에 상기 트랜시버(10b)가 버스에서 검출하여 전달하는 비트 정보와 비교함으로써 자신의 송수신이 정상적으로 이루어지는지를 판별한다. 자신이 송신한 비트들과 버스로부터 검출한 비트들이 서로 동일한 값들이면, 상기 주 마스터(10)는 자신의 송수신 동작이 정상적으로 이루어지고 있다고 판별하고, 다음 데이터 사이클의 비콘 필드에 라이브 신호를 송신하고, 만약, 비교하는 양 비트들에서 그 값이 일치하지 않는 비트가 있다면 자신의 송수신이 비정상적인 것으로 판별하고, 다음 데이터 사이클의 비콘 필드에 대해서는 인액티브(inactive) 상태를 나타내는 비트( 예를 들어, 0 )의 신호를 싣게 된다.The link controller 10a of the main master 10 transmits a header 200 for a data cycle to the bus via the transceiver 10b while the transceiver 10b detects and transmits the header 200 for the data cycle And determines whether or not the transmission / reception of its own is normally performed. If the bits transmitted from the master and the bits detected from the bus have the same value, the main master 10 determines that its transmission / reception operation is normally performed, transmits a live signal to the beacon field of the next data cycle, If there are bits that do not match in the comparison bits, it is determined that the transmission / reception is abnormal, and a bit (e.g., 0) indicating an inactive state for the beacon field of the next data cycle, .

상기 비콘 필드(201)에는, 액티브 또는 인액티브 상태를 나타내는 비트 값만이 실리는 것은 아니다. 상기 주 마스터(10)의 송신측 회로에 장애가 발생하는 경우, 또는 상기 주 마스터(10)의 동작이 정지(halt)되는 경우 등과 같이, 비트 값에 따른 버스 구동을 정상적으로 하지 못하는 장애가 발생하는 경우에는, 상기 비콘 필드(201)에 대해 어떤 비트 값도 구동하지 못하는 무신호 상태가 될 수도 있다. 물론, 버스를 구동하는 방식에 따라서는 인액티브 상태가 무신호 상태일 수도 있다.In the beacon field 201, only the bit value indicating the active or inactive state is not carried. In the case where a fault that can not normally operate the bus according to the bit value occurs, such as when a fault occurs in the transmitting circuit of the main master 10 or when the operation of the main master 10 is halted , It may be a no-signal state in which no bit value can be driven for the beacon field 201. [ Of course, depending on how the bus is driven, the inactive state may be a no-signal state.

따라서, 상기 비콘 필드(201)에 라이브 신호가 실리지 않은 상태일 때는, 어떤 이유로든 상기 주 마스터(10)의 동작에 장애가 발생한 것으로 볼 수 있다.Therefore, when there is no live signal in the beacon field 201, it can be seen that a failure occurs in the operation of the main master 10 for any reason.

한편, 상기 서브 마스터(11)는, 상기 주 마스터(10)가 버스 상에 형성하는 데이터 사이클을 계속적으로 모니터링한다. 그리고, 이러한 모니터링 동안에, 도 3에 예시된 바와 같이, 데이터 사이클이 시작되는 헤더의 비콘 필드(301)에서 라이브 신호가 검출되지 않으면, 상기 서브 마스터(11)는, 바로 이어지는 가드 필드(302)의 비트 구간 직후에, 데이터 사이클의 프레임 필드(30)에 대한 비트 정보들을 송신하여(P30) 데드 타임(dead time)없이 데이터 사이클이 정상적으로 진행되게 한다.Meanwhile, the sub-master 11 continuously monitors a data cycle formed by the main master 10 on the bus. And, during this monitoring, if a live signal is not detected in the beacon field 301 of the header where the data cycle begins, as illustrated in FIG. 3, the sub-master 11 may determine that the guard field 302 Immediately after the bit interval, the bit information for the frame field 30 of the data cycle is transmitted (P30) so that the data cycle normally proceeds without a dead time.

상기 서브 마스터(11)가 데이터 사이클의 프레임 필드를 완성하기 위해 사용하는 정보는, 앞서 언급한 바와 같이, 이전에 진행되는 모든 사이클의 모니터링을 통해 획득하게 된다.The information that the sub-master 11 uses to complete the frame field of the data cycle is acquired through monitoring of all the cycles previously performed, as mentioned above.

상기 가드 필드(302)는, 상기 서브 마스터(11)가 헤더에 확보된 비콘 필드에서 라이브 신호가 검출되지 않은 것을 확인하였을 때 주 마스터를 대신하여 프레임 필드를 송신하기까지 소요되는 스위칭 시간 등을 위해 헤더에 확보되는 필드이다. When the guard field 302 confirms that a live signal is not detected in the beacon field secured in the header, the guard field 302 sets the guard field 302 for the switching time required until the frame field is transmitted on behalf of the main master This field is reserved in the header.

버스에 연결된 슬레이브 컨트롤러들(20i, i=1,2,..,N)은, 위와 같은 마스터 컨트롤러 간의 절체에도 불구하고 데이터 사이클은 그대로 유지되므로, 절체 이전과 달라지는 차별적인 동작없이 이전과 완전히 동일하게 그 데이터 사이클을 기반으로 하여 데이터 송수신을 수행할 수 있다.The slave controllers (20 i , i = 1, 2, .., N) connected to the bus maintain the data cycle in spite of the transfer between the master controllers as described above. Data transmission / reception can be performed based on the same data cycle.

그리고, 상기 서브 마스터(11)도 자신이 대신하여 형성하는 데이터 사이클을 기반으로 필요한 데이터 송수신 동작을 수행하게 된다. 즉, 데이터 사이클의 데이터 채널들에 실리는 데이터를 수신하면서 또한 주 마스터와 동일한 자신의 식별번호에 대해 할당된( 즉, 주 마스터에 대해 할당된 ) 데이터 채널을 통해 데이터를 송신하게 된다.Also, the sub-master 11 performs a necessary data transmission / reception operation on the basis of a data cycle formed on its behalf. That is, while receiving data carried in the data channels of the data cycle, it also transmits data through a data channel assigned (i.e., assigned to the master master) for its own identification number that is the same as the master master.

전술한 바와 같이 주 마스터의 장애 등과 같은 비상 시에 백업된 서브 마스터에 의해 데이터 사이클이 끊김없이 정상적으로 유지되기 위해서는, 주 마스터의 장애 시에 서브 마스터가 정상적으로 동작할 수 있는 상태여야 한다. 하지만, 주 마스터에 이상이 생기기 이전에, 예비적으로 구비된 서브 마스터가 먼저 장애를 일으킬 수도 있는데, 이런 상황에서 주 마스터에 장애가 발생하면 당연히 무순단(seamless) 절체가 이루어지지 못한다.As described above, in order to maintain the data cycle normally without interruption by the sub-master backed up during an emergency such as a failure of the main master, the sub-master must be able to operate normally in the event of a failure of the main master. However, before a failure occurs in the master, a preliminary submaster may fail first. If a failure occurs in the master in this situation, seamless switching can not be achieved.

따라서, 본 발명에 따른 일 실시예에서는, 서브 마스터의 정상동작 여부를 주기적으로 점검하여 무순단 절체가 이루어지지 못할 상황을 미리 확인함으로써, 장치의 운용자가 그러한 상황을 사전에 조치할 수 있게 할 수도 있다.Accordingly, in one embodiment of the present invention, it is possible to periodically check whether the sub-master is operating normally to check whether a non-forward transfer can not be performed, thereby allowing the operator of the apparatus to take such action in advance have.

도 4는, 이를 위한 본 발명에 따른 일 실시예에 대한 것으로서, 주 마스터에 대해 확보된 비콘 필드( 이하, '주 비콘 필드'라 칭함. ) 외에 서브 마스터에 대해서도 비콘 필드(41)가 추가로 확보되는 헤더의 구조를 보여준다. 도 4에 예시된 헤더의 구조에는 가드 필드(42)가 포함되어 있지만, 실시예에 따라서는 이 가드 필드(42)가 포함되지 않을 수도 있다. 이는, 서브 마스터를 위해 확보된 비콘 필드( 이하, '서브 비콘 필드'라 칭함. )에 의한 비트 구간이, 스위칭을 위한 시간을 보장할 수도 있기 때문이다.FIG. 4 is a diagram for explaining an embodiment of the present invention for this purpose. In addition to the beacon field secured for the main master (hereinafter, referred to as 'main beacon field'), It shows the structure of the header to be secured. The structure of the header illustrated in FIG. 4 includes a guard field 42, but in some embodiments this guard field 42 may not be included. This is because a bit interval by a beacon field reserved for a sub-master (hereinafter referred to as a sub-beacon field) may guarantee a time for switching.

본 실시예에서는, 상기 주 마스터(10)가 정상적으로 동작하고 있는 동안에도, 서브 마스터의 점검을 위해 주기적으로 비콘 필드에 라이브 신호를 인가하지 않는다.In this embodiment, even when the main master 10 is operating normally, the live signal is not periodically applied to the beacon field in order to check the sub-master.

상기 서브 마스터(11)는, 앞서 언급한 바와 같이 상기 주 마스터(10)가 버스 상에 형성하고 있는 데이터 사이클을 모니터링하고 있다가, 도 5에 예시된 바와 같이 주 비콘 필드(511)에서 라이브 신호가 검출되지 않으면, 그 직후의 서브 비콘 필드에 라이브 신호용 비트를 송신하고 이어서 데이터 사이클의 형성을 위한 프레임 필드를 버스로 송신함으로써, 주 마스터(10)를 대신하여 데이터 사이클을 형성한다.The sub master 11 monitors the data cycle formed on the bus by the main master 10 as described above and then outputs the live signal in the main beacon field 511 as illustrated in FIG. A data cycle is formed instead of the main master 10 by transmitting a live signal bit to the sub-beacon field immediately thereafter and then transmitting a frame field for forming a data cycle to the bus.

상기 서브 마스터(11)가 서브 비콘 필드에는 라이브 신호를 그리고 이어서 프레임 필드를 정상적으로 송신함으로써, 상기 주 마스터(10)가, 서브 마스터(11)에 대해 정상동작 상태( 즉, 비상 시의 절체를 정상적으로 수행할 수 있는 상태 )로 인지하게 되지만, 이때는, 버스 마스터의 수신단의 문제까지 확인된 상태는 아니다. The sub master 11 transmits a live signal to the sub beacon field and then normally transmits the frame field so that the main master 10 transmits a normal operation state to the sub master 11 ), But at this time, the problem of the receiving end of the bus master is not confirmed.

따라서, 상기 서브 마스터(11)는, 자신이 버스로 송신하는 프레임 필드를 버스로부터 트랜시버를 통해 다시 읽어서 자신이 송신한 비트 정보와 비교한다. 이렇게 비교되는 양 비트 정보가 서로 일치하지 않으면, 상기 서브 마스터(11)는, 상기 주 마스터(10)에 의한 이후의 정상동작 여부에 대한 시험이 있을 때, 자신에게 할당된 서브 비콘 필드에 라이브 신호를 송신하지 않음으로써 비정상 상태임을 주 마스터에 알리게 된다.Accordingly, the sub-master 11 reads the frame field transmitted by the bus itself from the bus again through the transceiver, and compares it with the bit information transmitted by itself. If there is no match between the two bit information, the sub-master 11, when there is a test for a subsequent normal operation by the main master 10, And informs the master master that it is in an abnormal state.

한편, 주 비콘 필드(511)에 라이브 신호가 실리지 않은 이유가, 서브 마스터에 대한 주기적인 시험을 위한 것이면, 다음 데이터 사이클에서는 상기 주 마스터(10)에 의해 주 비콘 필드에 라이브 신호가 실리게 되고, 이전과 같이 주 마스터에 의한 데이터 사이클 형성(52)이 연속하여 이루어지게 된다.On the other hand, if the reason why the live signal is not loaded in the main beacon field 511 is for a periodic test for the sub master, in the next data cycle, the main master 10 puts a live signal in the main beacon field , And the data cycle formation 52 by the main master is performed continuously as before.

만약, 주 비콘 필드(511)에 라이브 신호가 실리지 않은 이유가, 주 마스터의 장애에 의한 것이라면, 다음 데이터 사이클에서도 주 비콘 필드(531)에는 라이브 신호가 여전히 나타나지 않을 것이고, 이에 따라 상기 서브 마스터(11)가 주 마스터(10)를 대체하여 데이터 사이클(53)을 지속적으로 형성하게 된다.If the reason why the live signal is not loaded in the main beacon field 511 is due to a failure of the main master, the live signal will still not appear in the main beacon field 531 in the next data cycle, 11 will replace the primary master 10 to form the data cycle 53 continuously.

한편, 상기 주 마스터(10)가 서브 마스터의 정상동작 상태를 점검하기 위해 주 비콘 필드에 라이브 신호를 송신하지 않았을 때, 이미 서브 마스터가 이상 상태일 수도 있다. 이런 경우에는, 서브 비콘 필드(542)에도 라이브 신호가 실리지 않게 된다. 따라서, 상기 주 마스터(10)는 주 비콘 필드에 라이브 신호를 송신하지 않았을 때 그 다음의 서브 비콘 필드(542)에서 라이브 신호가 검출되지 않으면, 바로 이어서 자신이 프레임 필드를 버스로 송신함으로써, 시험을 위해 서브 마스터에 의해 진행되어야 하는 사이클을 가로채서 정상적인 데이터 사이클(54)이 진행되게 하고, 동시에 버스 상의 이상을 알리는 적절한 경보 동작( 예를 들어, 비프음 발생, LED 점등, 또는 연결된 상위 계층의 버스를 통한 백업 이상을 나타내는 정보의 송신 등 )을 행할 수 있다.On the other hand, when the main master 10 does not transmit a live signal to the main beacon field in order to check the normal operation state of the sub master, the sub master may already be in an abnormal state. In this case, the live signal is not also applied to the sub-beacon field 542. Therefore, if the main master 10 does not detect a live signal in the next sub-beacon field 542 when it has not transmitted a live signal to the main beacon field, (E.g., beeps generated, LEDs lit, or connected to the upper layer of the connected upper layer) to intercept the cycle that should be carried out by the sub-master for the normal data cycle 54, Transmission of information indicating the backup or the like via the bus, etc.).

본 발명에 따른 다른 일 실시예에서는, 서브 마스터의 정상동작 여부를 점검하기 위한 사이클에서는, 정상적인 데이터 사이클이 아닌 테스트 사이클이 진행되게 할 수도 있다. 본 실시예에서는, 도 6에 도시된 바와 같이, 프레임 필드에 데이터 사이클의 유형을 가리키는 모드 필드(601,611)가 포함된다. 이 모드 필드(601,611)에는, 데이터 사이클이 정상 사이클, 즉 각 노드가 데이터를 송수신할 수 있는 데이터 채널이 이어지는 사이클(60)임을 가리키는 값과 테스트를 위한 사이클(61)( 이하, '더미 사이클'이라 한다. )임을 가리키는 값이 실릴 수 있다.In another embodiment according to the present invention, a test cycle may be performed in a cycle for checking whether the sub-master is operating normally, rather than a normal data cycle. In this embodiment, as shown in Fig. 6, the frame field includes mode fields 601 and 611 indicating the type of data cycle. In the mode fields 601 and 611, a value indicating that the data cycle is a normal cycle, that is, a cycle 60 in which each node can transmit and receive data, and a cycle 61 for testing (hereinafter referred to as a 'dummy cycle' Quot;). ≪ / RTI >

상기 더미 사이클(61)은, 도 6에 예시된 바와 같이, 데이터 사이클의 헤더만으로 구성될 수도 있고, 실시예에 따라서는 서브 마스터의 시험적 데이터 송수신을 위한 채널이 포함될 수도 있다.The dummy cycle 61 may include only a header of a data cycle, as illustrated in FIG. 6, and may include a channel for test data transmission / reception of a sub-master according to an embodiment.

도 6에 예시된 실시예에서는, 주 비콘 필드(612)에서 라이브 신호가 검출되지 않으면, 상기 서브 마스터(11)는, 그 직후의 서브 비콘 필드에 라이브 신호용 비트를 송신하고 이어서 테스트 사이클을 나타내는 모드 필드(611)가 포함된 프레임 필드를 버스로 송신함으로써, 주 마스터(10)를 대신하여 더미 사이클(61)을 형성한다. 이 더미 사이클(61)이 감지되면 각 노드는 유효한( 예를 들어, 모드 필드의 값이 1인 ) 데이터 사이클이 재개될 때까지 데이터 송수신 동작을 중지한다.6, if no live signal is detected in the main beacon field 612, the sub-master 11 transmits a live signal bit to the sub-beacon field immediately thereafter, and then, in a mode indicating a test cycle The dummy cycle 61 is formed instead of the main master 10 by transmitting the frame field including the field 611 to the bus. When this dummy cycle 61 is detected, each node stops transmitting and receiving data until the valid data cycle (for example, the value of the mode field is 1) is resumed.

상기 서브 마스터(11)에 의한 더미 사이클(61) 이후에는, 앞서 설명한 실시예에서와 마찬가지로, 주 비콘 필드(612)의 라이브 신호 부재가, 서브 컨트롤러에 대한 시험을 위한 것일 때는, 상기 주 마스터(10)에 의해 다시 정상적인 데이터 사이클(62)이 진행되고, 주 마스터의 장애 등에 의한 것일 때는, 상기 서브 마스터(11)에 의해 스위칭된 데이터 사이클(63)이 진행된다.After the dummy cycle 61 by the sub-master 11, when the live signal member of the main beacon field 612 is for the test on the sub-controller, as in the above-described embodiment, The data cycle 63 switched by the sub-master 11 proceeds when the normal data cycle 62 is again carried out by the main master 11,

한편, 상기 주 마스터(10)가 서브 마스터의 정상동작 상태를 점검하기 위해 주 비콘 필드에 라이브 신호를 송신하지 않았을 때 이미 서브 마스터가 이상 상태이면, 서브 비콘 필드(641)는 물론, 모드 필드(642a)를 포함하는 프레임 필드에 해당하는 구간(642)에는 유효한 신호가 실리지 않게 된다.When the main master 10 has not transmitted a live signal to the main beacon field in order to check the normal operation state of the sub master, if the sub master is already in an abnormal state, the sub-beacon field 641 as well as the mode field A valid signal is not displayed in the section 642 corresponding to the frame field including the frame field 642a.

서브 비콘 필드(641)에 라이브 신호가 검출되지 않으면, 상기 주 마스터(10)는, 더미 사이클에 해당하는 신호 구간(61)이 경과한 시점에 정상적인 데이터 사이클(65)을 재개하고 이와 동시에, 전술한 바의 경보 동작을 행하게 된다.If no live signal is detected in the sub-beacon field 641, the main master 10 resumes normal data cycle 65 at the point in time when the signal interval 61 corresponding to the dummy cycle has elapsed, A single alarm operation is performed.

한편, 프레임 필드에 대응하는 구간(642)에 아무런 신호가 실리지 않으면, 버스에 연결된 각 버스 컨트롤러는, 모드 필드의 구간에서 유효한 데이터 사이클임을 나타내는 값을 검출하지 못하므로, 손상된 프레임 필드로 간주하여 다음 유효한 데이터 사이클(65)이 진행될 때까지 대기한다.On the other hand, if no signal is issued in the interval 642 corresponding to the frame field, each bus controller connected to the bus can not detect a value indicating a valid data cycle in the interval of the mode field. Therefore, And waits until a valid data cycle 65 proceeds.

지금까지 설명한 본 발명의 실시예들은, 마스터 컨트롤러를 한 쌍으로써 이중화함에 따른 것들이었다. 하지만, 본 발명의 다른 실시예들에서는 마스터 컨트롤러를 3개 이상으로 다중화시킴으로써 버스 시스템의 안정성을 더욱 증가시킬 수도 있다.The embodiments of the present invention described so far are those in which the master controllers are duplicated as a pair. However, in other embodiments of the present invention, the stability of the bus system may be further increased by multiplexing the master controller to three or more.

도 7은 이러한 실시예들에 따라 3개 이상의 복수의 마스터 컨트롤러들이 단일 버스에 연결되어 있는 버스 시스템을 간략히 도시한 것이다. 본 실시예에서는, 각 마스터 컨트롤러(100i, i=1,2,3,..,M)에 노드 식별번호 외에 우선순위 코드가 추가로 더 할당된다. 이 우선순위 코드에서 가장 높은 우선순위에 해당하는 코드( 예를 들어, 0 )가 할당된 마스터 컨트롤러(1001)가 주 마스터로 동작하고, 나머지 마스터 컨트롤러들, 즉 서브 마스터들은 우선순위 코드에 대해 정해진 방식에 따라 각자의 코드에 해당하는 순위로서 무순단 절체의 진행 권한을 갖는다. 또한, 마스터 컨트롤러가 도 7에 예시된 바와 같이 다중화되는 경우에는, 다중화된 컨트롤러들의 총 수(#mc)에 대해서도 각 마스터 컨트롤러에 설정된다.7 schematically shows a bus system in which three or more master controllers are connected to a single bus in accordance with these embodiments. In this embodiment, a priority code is further allocated to each master controller 100 i , i = 1, 2, 3, ..., M in addition to the node identification number. In this priority code, the master controller 100 1 to which the code corresponding to the highest priority (for example, 0) is assigned acts as the master master, and the remaining master controllers, that is, the submasters, It has the authority to proceed with the seamless switch as a rank corresponding to each code according to the determined method. In addition, when the master controller is multiplexed as illustrated in Fig. 7, the total number (#mc) of multiplexed controllers is also set in each master controller.

도 8은, 도 7에 예시된 바와 같이 마스터 컨트롤러들이 다중화되었을 때에 대한 헤더의 포맷을 예시한 것으로서, 복수개의 마스터 컨트롤러들의 각각에 대해 할당된 비콘 필드들의 그룹인 비콘 존과 가드 필드, 그리고 프레임 필드로 구성되어 있다. 각 필드의 작용은 전술한 실시예에서와 동일하다. FIG. 8 illustrates a format of a header when the master controllers are multiplexed as illustrated in FIG. 7, and includes a beacon zone and a guard field, which are groups of beacon fields allocated to each of a plurality of master controllers, . The operation of each field is the same as in the above-described embodiment.

실시예에 따라서는, 앞서 설명한 실시예에서와 마찬가지로, 마지막 우선순위의 서브 마스터에 대해서는 비콘 필드(81)가 할당되지 않을 수도 있고, 가드 필드도 확보되지 않을 수도 있다.According to the embodiment, as in the above-described embodiment, the beacon field 81 may not be allocated to the sub-master of the last priority, and the guard field may not be secured.

도 7과 같이 마스터 컨트롤러가 3개 이상으로 다중화되는 경우에도 무순단 절체의 방식은 앞서 이중화에 대해 설명한 것과 완전 동일하게 이루어지게 된다. 예를 들어, 우선순위가 K번째인 마스터 컨트롤러는, 그보다 우선순위가 앞서는 K-1개의 마스터 컨트롤러들에 대해 확보된 비콘 필드들에 모두 라이브 신호가 실리지 않을 때, 앞서 설명한 실시예에서와 같이 현재 진행해야 하는 데이터 사이클을 자신이 대신하여 진행하게 되는 것이다.Even when the master controller is multiplexed with three or more as shown in FIG. 7, the method of the seamless switching is exactly the same as that described above for the redundancy. For example, when the master controller having the K-th priority has no live signal in all the beacon fields secured for the K-1 master controllers whose priority is higher than that of the master controller, The data cycle that should go ahead is done on its own behalf.

전술한 바와 같이, 서브 마스터의 정상동작 여부를 미리 확인하기 위한 시험이 적용되는 실시예에서는, 주 마스터(1001)가 서브 마스터의 점검을 위해 자신에게 할당된 주 비콘 필드에 라이브 신호를 의도적으로 송신하지 않은 상태에서, 비콘 존의 어느 하나에라도 라이브 신호가 나타나지 않으면, 즉시 자신이 프레임 필드를 송신함으로써 데이터 사이클로 되돌리게 된다. 이런 경우, 앞서 설명한 바와 같이 경보 동작을 진행한다.As described above, in the embodiment in which the test for confirming the normal operation of the sub-master is applied, the main master 100 1 intentionally adds a live signal to the main beacon field assigned to itself for checking of the sub-master If a live signal does not appear in any of the beacon zones in a state in which no transmission is performed, the mobile station immediately returns to the data cycle by transmitting the frame field. In this case, the alarm operation proceeds as described above.

한편, 점검 대상이 되는 각 서브 마스터는, 자신에게 할당된 비콘 필드에 라이브 신호를 송신해야 하는 순서인지를, 주 비콘 필드에 라이브 신호가 나타나지 않는 횟수 N_cND_Lv를 카운트하여 판단한다. 예를 들어, 우선순위 코드가 0부터 순차적으로 부여되는 번호이고 번호가 낮을수록 높은 우선순위라고 가정할 때, K+1번째의 우선순위를 갖는 코드, 즉 우선순위 코드 K가 할당된 서브 컨트롤러는, 라이브 신호 미검출을 카운트한 횟수 N_cND_Lv가 자신의 우순순위 코드와 일치하면 자신에게 할당된 비콘 필드( 비콘 존에서 K+1번째의 비콘 필드 )에 라이브 신호를 송신한다. 그리고, 실시예에 따라서는 해당 비콘 필드에의 라이브 신호 송신과 동시에 더미 사이클을 버스에 형성하게 된다.On the other hand, each sub-master to be checked judges whether or not the order in which a live signal should be transmitted to the beacon field assigned to itself is determined by counting the number of times N_cND_Lv that no live signal appears in the main beacon field. For example, assuming that the priority code is a number sequentially assigned from 0 and the lower the number is, the higher priority the sub-controller to which the code having the (K + 1) th priority, that is, the priority code K is allocated , And transmits the live signal to the beacon field (the (K + 1) th beacon field in the beacon zone) when the number of times N_cND_Lv counting the detection of non-live signal detection coincides with its own ascending order code. According to the embodiment, a dummy cycle is formed on the bus at the same time as the transmission of the live signal to the corresponding beacon field.

라이브 신호의 미검출을 카운트한 상기 횟수 N_cND_Lv가 자신의 우선순위 코드와 일치하는지 비교한 후에는, 그 횟수 N_cND_Lv가 기 설정된 마스터 컨트롤러의 총수 #mc보다 1이 작은 값( 서브 마스터 컨트롤러의 총 수 )과 같은 지를 확인하고 같을 때는 그 횟수를 리세트(reset)한 후 다시 카운트하게 된다.After comparing the number of times N_cND_Lv for counting the undetecting of the live signal with its own priority code, the value N_cND_Lv is set to a value (the total number of sub-master controllers) smaller by one than the preset number #mc of master controllers, And if it is the same, the number of times is reset and counted again.

그리고, 주 비콘 필드에서의 라이브 신호 미검출을 카운트한 상기 횟수 N_cND_Lv가 자신의 우선순위 코드와 일치하는 일이, 주 비콘 필드에 라이브 신호가 지속적으로 나타나지 않는 상태에서 두번 연속적으로 발생하면, 해당 서브 마스터는, 전술한 실시예에서와 같이, 자신이 데이터 사이클을 버스에 형성함으로써 무순단 절체가 이루어지게 한다.If the number of times N_cND_Lv counting the detection of the non-live signal in the main beacon field coincides with the priority code of the main beacon field, if the live signal does not continuously appear in the main beacon field twice consecutively, The master causes the data cycle to be formed on the bus so as to perform the non-fast transfer, as in the above-described embodiment.

본 발명에 따른 다른 일 실시예에서는, 데이터 사이클의 헤더에서 비콘 존의 크기가 가변적으로 할당될 수도 있다. 도 9는, 본 실시예에 따라 비콘 존의 크기가 가변되는 것을 예시적으로 보여준다.In another embodiment according to the present invention, the size of the beacon zone may be variably allocated in the header of the data cycle. FIG. 9 exemplarily shows that the size of the beacon zone is variable according to the present embodiment.

도 9에 따른 실시예에서는, 어느 하나의 비콘 필드에 라이브 신호가 나타나게 되면 그 비콘 필드를 기준으로 비콘 존은 종단되고 이후의 프레임 필드들이 연속된다. 따라서, 본 실시예에서는, 버스에 연결된 각 버스 컨트롤러도 그에 따라 데이터 사이클을 파악하게 된다.In the embodiment according to FIG. 9, when a live signal appears in any one of the beacon fields, the beacon zone is terminated based on the beacon field, and subsequent frame fields are continuous. Thus, in the present embodiment, each bus controller connected to the bus also grasps the data cycle accordingly.

도 9의 실시예에서는, 주 마스터가 정상적으로 동작하고 있는 동안에는, 비콘 존에 가장 짧은 비트 구간이 할당됨으로써 버스의 효율성이 증가된다. In the embodiment of FIG. 9, while the main master is operating normally, the bus segment is assigned the shortest bit interval to increase the efficiency of the bus.

한편, 본 발명에 따라 하나의 버스에 대해 다중화되는 마스터 컨트롤러들은, 버스가 계층적으로 구성되는 장치에 적용되는 경우에 상위 버스의 슬레이브 노드가 될 수도 있다. 도 10은, 이러한 경우에 대해 이중화된 마스터 컨트롤러들의 버스 연결 관계를 간략히 도시한 것이다.Meanwhile, the master controllers multiplexed to one bus according to the present invention may be slave nodes of the upper bus when the bus is applied to a device configured hierarchically. 10 schematically shows the bus connection relationship of the duplicated master controllers in this case.

임의의 하위 버스(L-Bus)에 대해, 전술한 바와 같이 이중화된 마스터 컨트롤러들(30,31)이 상위 버스(U-Bus)에서 각기 슬레이브 노드가 되는 기기들(300,310)에 각각 부속되어 있다.For the arbitrary lower bus (L-Bus), the duplicated master controllers 30 and 31 are attached to the devices 300 and 310, respectively, which are slave nodes on the upper bus (U-Bus) .

물론, 이 기기들(300,310)은 상기 상위 버스(U-Bus)에서 슬레이브 노드로서 기능하며, 해당 버스(U-Bus)에 대해 서로 동일한 식별번호로 할당되어 있다. 그리고, 백업으로 지정된 서브 마스터(31)를 포함하고 있는 기기(310)도 서브 노드로 설정되며, 이렇게 서브 노드로 설정되는 기기는, 상기 서브 마스터(31)가, 전술한 바와 같이 무순단 절체를 통해 주 마스터(30)를 대체할 때까지는, 해당 버스(U-Bus)에 형성되는 데이터 사이클을 모니터링만 행한다.Of course, the devices 300 and 310 function as slave nodes in the upper bus (U-Bus) and are assigned the same identification numbers with respect to the corresponding bus (U-Bus). The device 310 including the sub-master 31 designated as the backup is also set as the sub-node, and the device set as the sub-node in this manner is a device in which the sub-master 31 performs the non- Until the master master 30 is replaced with the main master 30, only the data cycle formed on the bus (U-Bus) is monitored.

상기 주 마스터(30)가 부속된 기기(300)는, 주 마스터가 장애가 있는 것으로 감지되면 또는 주 마스터로부터 장애가 있다고 통지되면, 그 순간부터는 상기 상위 버스(U-Bus)를 사용하는 데이터 송신 동작을 중단한다. 즉, 상기 상위 버스(U-Bus)에 형성되는 데이터 사이클에서 자신에게 할당된 데이터 채널을 통한 데이터 송신 동작을 수행하지 않는다.When the main master 30 is notified that the main master has a fault or a failure is detected from the main master, the device 300 to which the master master 30 is attached starts a data transmission operation using the upper bus (U-Bus) Stop. That is, the data transmission operation is not performed through the data channel allocated to itself in the data cycle formed on the upper bus (U-Bus).

상기 주 마스터(30)가 장애 등으로 인해 정상적인 동작을 수행하지 못하면, 전술한 바와 같이 상기 서브 마스터(11)가 주 마스터를 대체하여 데드 타임없이 상기 하위 버스(L-Bus)의 데이터 사이클을 주관하게 되면서, 동시에 그 데이터 사이클에서 주 마스터로 송신하는 데이터들을 대신하여 수신하게 되는데, 상기 기기(310)는 이렇게 상기 서브 마스터(31)가 대신 수신하는 데이터를 상기 상위 버스(U-Bus)의 데이터 사이클에서 자신에게 할당된 데이터 채널을 통해 상위 버스(U-Bus) 상의 타 노드로 송신하게 된다.If the main master 30 fails to perform a normal operation due to a failure or the like, the sub master 11 replaces the main master to perform the data cycle of the lower bus (L-Bus) without dead time, as described above The device 310 receives the data received by the sub-master 31 in place of the data transmitted to the master bus in the data cycle, Cycle to the other node on the upper bus (U-Bus) through the data channel assigned to it.

상기 상위 버스(U-Bus)에서 상기 기기들(300,310)은 서로 동일한 식별번호가 할당되어 있어서, 별도의 디스커버리 과정없이 데이터 사이클에서 동일한 데이터 채널을 사용함으로써, 장애가 발생된 노드(300)를 대신하여 데이터를 송수신할 수 있게 되는 것이다.In the U-bus, the devices 300 and 310 are assigned the same identification numbers, so that the same data channel is used in a data cycle without performing a separate discovery process, thereby replacing the failed node 300 Data can be transmitted and received.

지금까지 구체적으로 설명한, 본 발명에 따른 복수의 버스 마스터들 간에 무순단 절체가 이루어질 수 있게 하는 방법과 장치의 다양한 실시예들과, 그 실시예에서 설명된 구성 및 작용 등은 서로 양립할 수 없는 경우가 아니라면, 상호 다양한 방식으로 선택적으로 결합되어 실시 가능하다.It should be noted that the various embodiments of the method and apparatus for enabling seamless muting among a plurality of bus masters according to the present invention, which have been specifically described so far, and the configurations and operations described in the embodiments and the like are incompatible with each other If not, they can be selectively combined in various ways.

이상, 전술한 본 발명의 실시예들은, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention as defined by the appended claims. Alteration, substitution, addition, or the like.

10,30: 주 마스터 컨트롤러 10a,11a: 링크 컨트롤러
10b,11b: 트랜시버 11,31: 서브 마스터 컨트롤러
20i: 버스 컨트롤러 100i: 마스터 컨트롤러
300: 주 기기 310: 서브 기기
10, 30: main master controller 10a, 11a: link controller
10b, 11b: Transceivers 11, 31: Sub-master controller
20 i : bus controller 100 i : master controller
300: main equipment 310: sub equipment

Claims (15)

데이터 버스에 연결된 버스 마스터들 간의 절체를 위한 방법에 있어서,
제 1버스 마스터가, 상기 데이터 버스에 연결된 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을, 헤더를 전치(前置)시켜 상기 데이터 버스에 형성하는 과정을 반복하는 단계와,
상기 헤더의 특정 필드에 기 지정된 특정 신호가 실리지 않을 때는, 상기 제 1버스 마스터 외의 상기 데이터 버스에 연결된 적어도 하나의 버스 마스터 중에서 제 2버스 마스터가 상기 특정 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하는 단계를 포함하여 이루어지되,
상기 제 1버스 마스터는, 상기 반복적으로 형성되는 데이터 사이클에 대해서 그 헤더의 상기 특정 필드에 상기 특정 신호를 싣도록 의도된 것인 방법.
A method for switching between bus masters connected to a data bus,
Repeating repeating the process of forming a data cycle in which a first bus master is allocated a data channel through which data is transmitted by nodes connected to the data bus,
Wherein a second bus master among the at least one bus master connected to the data bus other than the first bus master outputs a data cycle required after the specific field, And a step of forming a first electrode,
Wherein the first bus master is intended to load the particular signal in the particular field of the header for the repeatedly formed data cycle.
제 1항에 있어서,
상기 헤더에는, 상기 제 2버스 마스터가 상기 특정 신호를 실을 수 있는 서브 필드가 상기 특정 필드에 연이어서 더 할당되어 있되,
상기 제 2버스 마스터는, 자신이 상기 데이터 버스에 데이터 사이클을 형성할 때, 상기 서브 필드에 상기 특정 신호를 싣는 것인 방법.
The method according to claim 1,
Wherein a subfield in which the second bus master can receive the specific signal is further allocated to the specific field in the header,
Wherein the second bus master loads the particular signal into the subfield when it forms a data cycle on the data bus.
제 2항에 있어서,
상기 제 2버스 마스터는, 상기 특정 필드에 상기 특정 신호가 실리지 않는 횟수가, 상기 제 2버스 마스터에 대해 지정된 수에 대응할 때에, 상기 데이터 버스에 데이터 사이클을 형성하는 것인 방법.
3. The method of claim 2,
Wherein the second bus master forms a data cycle on the data bus when the number of times the specific signal is not loaded in the specific field corresponds to the number specified for the second bus master.
제 3항에 있어서,
상기 제 2버스 마스터는, 상기 횟수가 상기 제 2버스 마스터에 대해 지정된 수에 대응하는 경우가, 상기 특정 필드에 상기 특정 신호가 실리지 않는 상태가 지속되는 상황에서 연속적으로 발생될 때에, 상기 데이터 버스에 데이터 사이클을 형성하는 것인 방법.
The method of claim 3,
When the number of times corresponding to the number specified for the second bus master is continuously generated in a state in which the specific signal is not loaded in the specific field, Lt; RTI ID = 0.0 > a < / RTI >
제 4항에 있어서,
상기 제 2버스 마스터는, 상기 횟수가 상기 제 2버스 마스터에 대해 지정된 수에 대응하는 경우가, 상기 특정 필드에 상기 특정 신호가 실리지 않는 상태가 지속되는 상황에서 연속적으로 발생된 것이 아닐 때에는, 상기 데이터 사이클보다는 짧은 구간을 갖는 사이클을 상기 데이터 버스에 형성하는 것인 방법.
5. The method of claim 4,
When the number of times corresponding to the number specified for the second bus master is not continuously generated in a state in which the state in which the specific signal is not inserted continues in the specific field, Wherein a cycle having a shorter duration than the data cycle is formed on the data bus.
제 2항에 있어서,
상기 제 1버스 마스터는, 상기 특정 필드에 상기 특정 신호를 싣지 않는 시험 동작을 주기적으로 수행하되,
상기 시험 동작은, 상기 적어도 하나의 버스 마스터의 수 만큼의 데이터 사이클에 대해 진행되는 것인 방법.
3. The method of claim 2,
Wherein the first bus master periodically performs a test operation for not loading the specific signal in the specific field,
Wherein the test operation proceeds for a data cycle as many as the number of the at least one bus master.
제 2항에 있어서,
상기 제 1버스 마스터는, 상기 특정 필드에 상기 특정 신호를 싣지 않은 상태에서 그 특정 필드에 연이어서 할당된 상기 서브 필드에도 상기 특정 신호가 나타나지 않으면, 상기 서브 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하고, 또한 지정된 경보 동작을 수행하는 것인 방법.
3. The method of claim 2,
Wherein if the specific signal does not appear in the subfields consecutively assigned to the specific field in the absence of the specific signal in the specific field, the first bus master sets a data cycle required after the subfield to the data The bus, and also performs the specified alarming operation.
제 7항에 있어서,
상기 지정된 경보 동작에는, 상기 데이터 버스가 아닌 상기 제 1버스 마스터가 연결된 타 버스를 통해 백업 마스터의 이상을 알리는 정보를 송신하는 것이 포함되는 것인 방법.
8. The method of claim 7,
Wherein said designated alert action includes transmitting information informing an abnormality of a backup master via another bus connected to said first bus master rather than said data bus.
제 1항에 있어서,
상기 제 1버스 마스터는, 데이터 사이클의 형성을 위해 상기 데이터 버스로 송신하는 상기 헤더의 적어도 일부에 대해, 상기 데이터 버스로 송신된 신호를 검출하고 그 검출한 값과 상기 일부의 값이 서로 동일하지 않으면, 다음 데이터 사이클을 위한 헤더의 상기 특정 필드에 상기 특정 신호를 싣지 않는 것인 방법.
The method according to claim 1,
Wherein the first bus master detects a signal transmitted to the data bus with respect to at least a portion of the header transmitted to the data bus for the formation of a data cycle, The specific signal in the header for the next data cycle.
제 1항에 있어서,
상기 특정 필드에 상기 특정 신호가 실리지 않은 상태일 때는, 상기 제 2버스 마스터가 상기 특정 신호를 실을 수 있는 서브 필드가 상기 특정 필드에 연이어서 상기 헤더에 더 할당됨으로써 상기 헤더의 구간이 커지는 것인 방법.
The method according to claim 1,
A subfield in which the second bus master can receive the specific signal is further allocated to the header subsequent to the specific field when the specific signal is not loaded in the specific field, / RTI >
제 1항에 있어서,
상기 제 1버스 마스터와 상기 제 2버스 마스터는, 상기 데이터 버스가 아닌 타 버스에도 연결되어 그 타 버스 상의 노드를 각기 형성하되,
상기 제 1버스 마스터는, 상기 특정 필드에 상기 특정 신호를 싣지 않는 상태일 때는, 상기 타 버스로의 데이터 송신은 중단하는 것인 방법.
The method according to claim 1,
Wherein the first bus master and the second bus master are connected to another bus other than the data bus to form respective nodes on the other bus,
Wherein the first bus master suspends data transmission to the other bus when the specific signal is not loaded in the specific field.
제 1항에 있어서,
상기 적어도 하나의 버스 마스터에는 우선순위를 나타내는 코드가 각기 부여되어 있되, 상기 제 2버스 마스터는 상기 적어도 하나의 버스 마스터 중에서 우선순위가 가장 높은 코드가 부여되어 있는 것인 방법.
The method according to claim 1,
Wherein the at least one bus master is assigned a code indicating a priority, and the second bus master is assigned a code having the highest priority among the at least one bus master.
데이터 버스에 연결된 노드들의 데이터 송수신을 위한 데이터 사이클을 형성하도록 구성된 기기에 있어서,
상기 데이터 버스에 실리는 신호를 검출하고 또한 인가되는 데이터를 상기 데이터 버스에 적합한 신호 형태로 변환하여 송신하는 트랜시버와,
상기 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을, 특정 필드를 포함하는 헤더가 전치되는 방식으로 상기 데이터 버스에 형성하기 위해 필요한 데이터를 상기 트랜시버를 통해 상기 데이터 버스로 송신하도록 구성된 컨트롤러를 포함하여 구성되되,
상기 컨트롤러는, 자신이 상기 데이터 버스에 형성하는 매(每) 데이터 사이클에 대해서 그 헤더의 상기 특정 필드에 기 지정된 특정 신호를 싣도록 구성되며, 또한, 지정된 주기마다는 상기 특정 필드에 대해서 상기 특정 신호를 싣지 않되, 상기 특정 신호를 싣지 않은 상기 특정 필드에 연이어져 헤더에 할당되어 있는 서브 필드에서 상기 특정 신호가 검출되지 않을 때는, 상기 서브 필드 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하면서 지정된 경보 동작을 수행하도록 구성된 것인 기기.
An apparatus configured to form a data cycle for data transmission and reception of nodes connected to a data bus,
A transceiver for detecting a signal on the data bus and for converting the applied data into a signal form suitable for the data bus and transmitting the signal,
Configured to transmit to the data bus through the transceiver data needed to form on the data bus a data cycle in which the nodes are assigned a data channel to which to transmit data, And a controller,
Wherein the controller is configured to load a specific signal predefined in the specific field of the header for each data cycle it forms on the data bus, When no specific signal is detected in a subfield assigned to a header subsequent to the specific field in which the specific signal is not loaded, a data cycle required after the subfield is formed on the data bus And configured to perform the specified alert action.
데이터 버스에 연결된 노드들의 데이터 송수신을 위한 데이터 사이클을 형성하도록 구성된 기기에 있어서,
상기 데이터 버스에 실리는 신호를 검출하고 또한 인가되는 데이터를 상기 데이터 버스에 적합한 신호 형태로 변환하여 송신하는 트랜시버와,
상기 노드들이 데이터를 송신할 수 있는 데이터 채널이 할당되는 데이터 사이클을 상기 데이터 버스에 형성하기 위해 필요한 데이터를 상기 트랜시버를 통해 상기 데이터 버스로 송신하도록 구성된 컨트롤러를 포함하여 구성되되,
상기 컨트롤러는, 상기 데이터 버스 상에 자신이 형성하지 않은 데이터 사이클에 전치되는 헤더의 특정 필드에서 기 지정된 특정 신호가 검출되지 않을 때에, 상기 특정 필드에 연이어져 할당된 필드 구간에 상기 특정 신호를 송신함과 동시에 그 필드 구간 이후에 요구되는 데이터 사이클을 상기 데이터 버스에 형성하도록 구성된 것인 기기.
An apparatus configured to form a data cycle for data transmission and reception of nodes connected to a data bus,
A transceiver for detecting a signal on the data bus and for converting the applied data into a signal form suitable for the data bus and transmitting the signal,
And a controller configured to transmit to the data bus through the transceiver data necessary for forming a data cycle on the data bus in which the nodes are assigned a data channel to which to transmit data,
Wherein the controller is configured to transmit the specific signal to a field section continuously allocated to the specific field when a predetermined signal is not detected in a specific field of a header corresponding to a data cycle not formed by the data bus, And to form on the data bus a data cycle required after the field interval.
제 14항에 있어서,
상기 컨트롤러는, 데이터 사이클의 형성을 위해 상기 데이터 버스로 송신하는 상기 헤더의 적어도 일부에 대해, 상기 데이터 버스로 송신된 신호를 검출하고 그 검출한 값과 상기 일부의 값이 서로 동일하지 않으면, 다음의 특정 데이터 사이클에서 그 헤더의 상기 필드 구간에 상기 특정 신호를 싣지 않되,
상기 특정 데이터 사이클은, 상기 컨트롤러에 의해 형성되지 않은, 상기 특정 필드에 상기 특정 신호가 실리지 않은 헤더가 전치된 데이터 사이클인 것인 기기.
15. The method of claim 14,
The controller detects a signal transmitted to the data bus for at least a portion of the header transmitted to the data bus for formation of a data cycle and if the detected value and the value of the part are not equal to each other, The specific signal is not loaded in the field period of the header in a specific data cycle of the header,
Wherein the specific data cycle is a data cycle which is not formed by the controller and in which a header in which the specific signal is not loaded is transposed in the specific field.
KR1020180082257A 2018-07-16 2018-07-16 Method for enabling seamless switching among a plurality of bus masters and apparatus for said method KR101988176B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180082257A KR101988176B1 (en) 2018-07-16 2018-07-16 Method for enabling seamless switching among a plurality of bus masters and apparatus for said method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180082257A KR101988176B1 (en) 2018-07-16 2018-07-16 Method for enabling seamless switching among a plurality of bus masters and apparatus for said method

Publications (1)

Publication Number Publication Date
KR101988176B1 true KR101988176B1 (en) 2019-06-11

Family

ID=66847157

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180082257A KR101988176B1 (en) 2018-07-16 2018-07-16 Method for enabling seamless switching among a plurality of bus masters and apparatus for said method

Country Status (1)

Country Link
KR (1) KR101988176B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102173176B1 (en) * 2019-07-02 2020-11-03 벨로넥트 인코퍼레이션 Low latency time-divisional data transmission method applicable to a transmission protocol complying with inter-frame gap and a device for said method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1953599A1 (en) * 2007-01-31 2008-08-06 Ricoh Company, Ltd. System and method of seamlessly switching between embedded and external functions on a multi-function printer
US20120087416A1 (en) * 2006-10-30 2012-04-12 Tim Ross Method and System for Switching Elementary Streams on a Decoder with Zero Delay

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120087416A1 (en) * 2006-10-30 2012-04-12 Tim Ross Method and System for Switching Elementary Streams on a Decoder with Zero Delay
EP1953599A1 (en) * 2007-01-31 2008-08-06 Ricoh Company, Ltd. System and method of seamlessly switching between embedded and external functions on a multi-function printer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102173176B1 (en) * 2019-07-02 2020-11-03 벨로넥트 인코퍼레이션 Low latency time-divisional data transmission method applicable to a transmission protocol complying with inter-frame gap and a device for said method

Similar Documents

Publication Publication Date Title
EP2690827B1 (en) Controller Area Network Communications Using Ethernet
EP2439885B1 (en) Method for digital communication between a plurality of nodes connected by a serial field bus and corresponding system, in particular a field control system or field surveillance system
CN107229221A (en) Fault-tolerant mode and handoff protocol for multiple hot and cold standby redundancies
RU2656684C2 (en) Tire system and method of operation of such tire system
US7103805B2 (en) Bus monitor unit
US7023870B2 (en) Method for operating a distributed computer system
CN110658718A (en) Multi-master-control redundancy switching control method and system
JPH02306743A (en) On-vehicle multiplex transmitter
JP2007180830A (en) Duplex monitoring control system and redundant switching method of the system
CN101346698A (en) Bus-guardian of a subscriber of a communication system, and subscriber for a communication system
CN1633785A (en) In phase clock time in time touch treaty environment
US6471011B1 (en) Elevator communication controller and communication control method
KR101988176B1 (en) Method for enabling seamless switching among a plurality of bus masters and apparatus for said method
KR102298186B1 (en) How to operate a sensor device in a car based on the DSI protocol
KR101233607B1 (en) Method for managing path of osek networks
EP1374490B1 (en) Tdma communication system
KR101668089B1 (en) A communication apparatus for a safety system of a nuclear plant and a communication method therefor
KR102048635B1 (en) Method for assigning a unique ID to nodes connected to bus and device for said method
EP1942070B1 (en) Communications control system for elevators using synchronized communication in a master-slave network
JP2005159604A (en) System and method for information transmission
CN113495522B (en) Method and device for determining on-duty state of PLC in environment and equipment monitoring system
KR102055504B1 (en) Discovery and bus arbitration method for nodes connected on a data bus and a device for said method
JP2013150148A (en) Communication system and communication line switching control method
CN118426958A (en) Cloud platform system for rail transit signal control system
JP5602071B2 (en) CPU duplex control system

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant