KR20200049577A - 차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치 - Google Patents

차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치 Download PDF

Info

Publication number
KR20200049577A
KR20200049577A KR1020190132549A KR20190132549A KR20200049577A KR 20200049577 A KR20200049577 A KR 20200049577A KR 1020190132549 A KR1020190132549 A KR 1020190132549A KR 20190132549 A KR20190132549 A KR 20190132549A KR 20200049577 A KR20200049577 A KR 20200049577A
Authority
KR
South Korea
Prior art keywords
end node
transmission
request signal
time period
transmission request
Prior art date
Application number
KR1020190132549A
Other languages
English (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 US16/667,040 priority Critical patent/US11171807B2/en
Publication of KR20200049577A publication Critical patent/KR20200049577A/ko

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/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • 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/40143Bus networks involving priority mechanisms
    • 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/40195Flexible bus arrangements involving redundancy by using a plurality of nodes
    • 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)
  • Small-Scale Networks (AREA)

Abstract

PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 엔드 노드(end node)의 동작 방법이 개시된다. 본 발명에 따른 엔드 노드의 동작 방법은, 제1 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 모니터링 동작을 수행하는 단계, 상기 모니터링 동작에 의해 제2 엔드 노드로부터 전송된 전송 요청 신호를 검출하는 단계 및 상기 전송 요청 신호가 검출된 경우, 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 중지하는 단계를 포함하며, 상기 제1 시간 구간은 상기 제1 엔드 노드 대신에 상기 제2 엔드 노드의 통신을 위해 사용되는, 제1 엔드 노드의 동작 방법인 것을 특징으로 한다. 따라서 차량 네트워크의 성능이 향상될 수 있다.

Description

차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치{METHOD AND APPARATUS FOR ALLOCATING PRIORITY TRANSMISSION OPPORTUNITIES IN A VEHICLE NETWORK}
본 발명은 차량 네트워크에서의 통신 기술에 관한 것으로, 이더넷 기반의 네트워크를 포함하는 차량 네트워크에서 엔드 노드가 동작하는 방법에 관한 것이다.
차량용 부품의 전자화가 급속도로 진행됨에 따라 차량에 탑재되는 전자 장치(예를 들어, ECU(electronic control unit))의 종류와 수가 크게 증가되고 있다. 전자 장치는 크게 파워트레인(power train) 제어 시스템, 바디(body) 제어 시스템, 새시(chassis) 제어 시스템, 차량 네트워크(network), 멀티미디어(multimedia) 시스템 등에서 사용될 수 있다. 파워트레인 제어 시스템은 엔진 제어 시스템, 자동 변속 제어 시스템 등을 의미할 수 있다. 바디 제어 시스템은 바디 전장품 제어 시스템, 편의 장치 제어 시스템, 램프(lamp) 제어 시스템 등을 의미할 수 있다. 새시 제어 시스템은 조향 장치 제어 시스템, 브레이크(brake) 제어 시스템, 서스팬션(suspension) 제어 시스템 등을 의미할 수 있다.
한편, 차량 네트워크는 CAN(controller area network), 플렉스레이(FlexRay) 기반의 네트워크, MOST(media oriented system transport) 기반의 네트워크 등을 의미할 수 있다. 멀티미디어 시스템은 항법 장치 시스템, 텔레메틱스(telematics) 시스템, 인포테이먼트(infortainment) 시스템 등을 의미할 수 있다.
이러한 시스템들 및 시스템들 각각을 구성하는 전자 장치들은 차량 네트워크를 통해 연결되어 있으며, 현재 전자 장치들 각각의 기능을 지원하기 위한 차량 네트워크가 요구되고 있는 실정이다. CAN은 최대 1Mbps의 전송 속도를 지원할 수 있으며, 충돌된 프레임의 자동 재전송, CRC(cycle redundancy check) 기반의 오류 검출 등을 지원할 수 있다. 플렉스레이 기반의 네트워크는 최대 10Mbps의 전송 속도를 지원할 수 있으며, 2채널을 통한 데이터의 동시 전송, 동기 방식의 데이터 전송 등을 지원할 수 있다. MOST 기반의 네트워크는 고품질의 멀티미디어를 위한 통신 네트워크로, 최대 150Mbps의 전송 속도를 지원할 수 있다.
한편, 차량의 텔레메틱스 시스템, 인포테이먼트 시스템, 향상된 안전 시스템 등은 높은 전송 속도, 시스템 확장성 등을 요구하며, CAN, 플렉스레이 기반의 네트워크 등은 이를 충분히 지원하지 못한다. MOST 기반의 네트워크는 CAN 및 플렉스레이 기반의 네트워크에 비해 높은 전송 속도를 지원할 수 있으나, 차량의 모든 네트워크에 MOST 기반의 네트워크가 적용되기 위해서는 많은 비용이 소모된다. 이러한 문제들에 의해, 차량 네트워크로 이더넷(Ethernet) 기반의 네트워크가 고려될 수 있다. 이더넷 기반의 네트워크는 한 쌍의 권선을 통한 양방향 통신을 지원할 수 있으며, 최대 10Gbps의 전송 속도를 지원할 수 있다.
차량 네트워크가 지원할 수 있는 이더넷 프로토콜 중 하나는 10SPE(single pair Ethernet)일 수 있다. 복수개의 노드들이 접속된 10SPE의 경우, 복수의 엔드 노드들이 다른 엔드 노드들로 데이터 패킷을 동시에 전송하고자 하는 경우, PHY 계층에서 서로 다른 데이터 패킷 간에 충돌이 발생할 수 있다. 10SPE 네트워크에 접속되는 복수의 엔드 노드들은 PHY 계층의 충돌을 회피하기 위해 PLCA(PHY layer collision avoidance) 기능을 사용할 수 있다. PLCA 기능은 10SPE 네트워크에 접속되는 복수의 엔드 노드들에 데이터 패킷을 전송할 수 있는 전송 기회(transmission opportunity)를 순차적으로 부여하는 기능을 의미한다. PLCA 기능은 적은 수(16개 미만)의 노드와 낮은 전파 지연을 통해, 멀티드롭이더넷(Multidrop Ethernet) 네트워크에서 향상된 성능을 제공할 수 있다.
한편, 현재 PLCA 기능은 라운드-로빈 스케줄링(Round-robin scheduling) 알고리즘이 사용되어 공정성(Fairness)이 보장되도록 하고 있다. 이 경우, 모든 PHY 계층의 노드에게 빠짐없이 전송 기회를 부여하기 때문에 공평성이 보장될 수 있으나, 긴급하게 데이터를 송수신해야하는 IVN(IN-Vehicle Network) 관점(예를 들어, 브레이크(Brake) 또는 에어백(Airbag)이 동작해야 하는 상황)에서는 현재의 PLCA 기능이 그대로 적용되기 어려울 수 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 긴급 데이터를 가지는 엔드 노드가 신속하게 전송 기회를 갖도록 하는 방법 및 장치를 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명에 따른 PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법은, 상기 제1 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 모니터링 동작을 수행하는 단계, 상기 모니터링 동작에 의해 제2 엔드 노드로부터 전송된 전송 요청 신호를 검출하는 단계 및 상기 전송 요청 신호가 검출된 경우, 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 중지하는 단계를 포함하며, 상기 제1 시간 구간은 상기 제1 엔드 노드 대신에 상기 제2 엔드 노드의 통신을 위해 사용되는 것을 특징으로 한다.
여기서, 상기 제1 엔드 노드는 PHY(physical) 계층의 기능을 수행하는 제1 엔터티(entity)와 MAC(medium access control) 계층의 기능을 수행하는 제2 엔터티를 포함하며, 상기 전송 요청 신호가 검출된 경우, 상기 전송 요청 신호가 검출된 것을 지시하는 제1 지시자 및 상기 제1 시간 구간에서 충돌이 발생한 것을 지시하는 제2 지시자는 상기 제1 엔터티에서 상기 제2 엔터티로 전송되는 것을 특징으로 한다.
여기서, 상기 제1 지시자 및 상기 제2 지시자가 상기 제2 엔터티에서 수신된 경우, 데이터는 상기 제2 엔터티에서 상기 제1 엔터티로 전달되지 않는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제2 엔드 노드에 의해 생성된 LPI(low power idle) 신호인 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제2 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제2 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제2 엔드 노드의 전송 우선순위를 지시하는 정보를 포함하고, 상기 제2 엔드 노드의 전송 우선순위가 상기 제1 엔드 노드의 전송 우선순위보다 높은 경우에 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작은 중지되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제2 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제1 엔드 노드의 전송 동작은 상기 타이머가 만료된 후에 재개되는 것을 특징으로 한다.
여기서, 상기 제1 엔드 노드는 PHY 계층의 기능을 수행하는 제1 엔터티와 MAC 계층의 기능을 수행하는 제2 엔터티를 포함하며, 상기 전송 요청 신호에 포함된 타이머는 상기 제1 엔터티에서 상기 제2 엔터티로 전달되며, 상기 타이머가 만료된 경우에 상기 제2 엔터티에서 상기 제1 엔터티로 데이터가 전달되는 것을 특징으로 한다.
여기서, 상기 제1 엔드 노드의 동작 방법은, 상기 제1 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 완료된 경우, 상기 제1 시간 구간 이후의 제2 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 더 포함하는 것을 특징으로 한다.
여기서, 상기 제1 엔드 노드의 동작 방법은, 상기 제1 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 완료된 경우, 제3 엔드 노드로부터 비콘(beacon)을 수신하는 단계 및 상기 비콘에 의해 지시되는 제2 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 더 포함하는 것을 특징으로 한다.
다른 실시예로서, 본 발명에 따른 PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법은 전송될 데이터가 존재하는 것을 지시하는 전송 요청 신호를 생성하는 단계, 제2 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 상기 전송 요청 신호를 전송하는 단계 및 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 포함하며, 상기 제1 시간 구간은 상기 제2 엔드 노드 대신에 상기 제1 엔드 노드의 통신을 위해 사용되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제1 엔드 노드에 의해 생성된 LPI(low power idle) 신호인 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제1 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제1 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제1 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제2 엔드 노드의 전송 동작은 상기 타이머가 만료된 후에 재개되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제1 엔드 노드의 전송 우선순위를 지시하는 정보를 포함하고, 상기 제1 엔드 노드의 전송 우선순위가 상기 제2 엔드 노드의 전송 우선순위보다 높은 경우에 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작이 수행되는 것을 특징으로 한다.
또 다른 실시예로서, 본 발명에 따른 PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법은 제2 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 제3 엔드 노드로부터 전송된 전송 요청 신호를 검출하는 단계, 상기 전송 요청 신호가 검출된 경우, 상기 제1 엔드 노드의 통신을 위해 설정된 시간 구간을 제2 시간 구간에서 상기 제2 시간 구간 이후의 제3 시간 구간으로 변경하는 단계 및 상기 제3 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 포함하며, 상기 제1 시간 구간에서 상기 제3 엔드 노드의 전송 동작이 수행되고, 상기 제1 시간 구간 이후의 상기 제2 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 수행되는 것을 특징으로 한다.
여기서, 상기 제1 엔드 노드는 PHY(physical) 계층의 기능을 수행하는 제1 엔터티(entity)와 MAC(medium access control) 계층의 기능을 수행하는 제2 엔터티를 포함하며, 상기 전송 요청 신호가 검출된 경우, 상기 전송 요청 신호가 검출된 것을 지시하는 제1 지시자 및 상기 제1 시간 구간에서 충돌이 발생한 것을 지시하는 제2 지시자는 상기 제1 엔터티에서 상기 제2 엔터티로 전송되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제3 엔드 노드에 의해 생성된 LPI(low power idle) 신호인 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제3 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제3 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는 것을 특징으로 한다.
여기서, 상기 전송 요청 신호는 상기 제3 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제1 엔드 노드의 전송 동작은 상기 타이머가 만료되고, 상기 제2 엔드 노드의 전송 동작이 완료된 후에 재개되는 것을 특징으로 한다.
본 발명에 의하면, 이더넷 기반(예를 들어, 10SPE(Siggle Pair Ethernet))의 네트워크 환경에서, 우선순위가 높은 엔드 노드(예를 들어, Brake, Airbag)가 신속하게 전송 기회를 가질 수 있다. 이를 통해, 노드 간의 통신에서 통신 신뢰성이 향상될 수 있고, 차량 네트워크의 성능이 향상될 수 있다.
다만, 본 발명의 실시 예들에 따른 차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치가 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 차량 네트워크의 제1 실시예를 도시한 블록도이다.
도 2는 차량 네트워크에 속하는 엔드 노드의 제1 실시예를 도시한 블록도이다.
도 3은 차량 네트워크의 제2 실시예를 도시한 블록도이다.
도 4는 차량 네트워크에 속하는 10SPE(single pair Ethernet) 네트워크의 제1 실시예를 도시한 블록도이다.
도 5는 차량 네트워크에 속하는 계층의 일 실시예를 도시한 블록도이다.
도 6은 차량 네트워크에 속하는 엔드 노드의 동작 방법을 도시한 순서도이다.
도 7a는 일반적인 엔드 노드의 전송 주기를 도시한 개념도이다.
도 7b는 도 7a 에 따른 전송 주기 진행 시 엔드 노드의 전송 동작 방법의 일 실시예를 도시한 순서도이다.
도 8a는 본 발명의 제1 실시예에 따른 우선순위에 기반한 엔드 노드의 전송 주기를 도시한 개념도이다.
도 8b는 본 발명의 제2 실시예에 따른 우선순위에 기반한 엔드 노드의 전송 주기를 도시한 개념도이다.
도 9a 및 도 9b는 도 8a, 도 8b에 따른 전송 주기 진행 시 엔드 노드의 동작 방법의 일 실시예를 도시한 개념도이다.
도 10 및 도 11은 도 9b의 S910, S911, S915에 해당하는 엔드 노드의 동작 방법을 구체적으로 설명한 개념도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 차량 네트워크의 토폴로지(network topology)의 일 실시예를 도시한 블록도이다.
도 1을 참조하면, 차량 네트워크를 구성하는 엔드 노드(end node)는 게이트웨이(gateway), 스위치(switch)(또는, 브릿지(bridge)) 또는 엔드 노드(end node) 등을 의미할 수 있다. 게이트웨이(100)는 적어도 하나의 스위치(110, 110-1, 110-2, 120, 130)와 연결될 수 있으며, 서로 다른 네트워크를 연결할 수 있다. 예를 들어, 게이트웨이(100)는 CAN(controller area network)(또는, 플렉스레이(FlexRay), MOST(media oriented system transport), LIN(local interconnect network) 등) 프로토콜을 지원하는 엔드 노드와 이더넷(Ethernet) 프로토콜을 지원하는 스위치 간을 연결할 수 있다. 스위치들(110, 110-1, 110-2, 120, 130) 각각은 적어도 하나의 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)와 연결될 수 있다. 스위치들(110, 110-1, 110-2, 120, 130) 각각은 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)를 상호 연결할 수 있고, 자신과 연결된 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)를 제어할 수 있다.
엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)는 차량에 포함된 각종 장치를 제어하는 ECU(electronic control unit)를 의미할 수 있다. 예를 들어, 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)는 인포테인먼트(infortainment) 장치(예를 들어, 디스플레이(display) 장치, 내비게이션(navigation) 장치, 어라운드 뷰 모니터링(around view monitoring) 장치) 등을 구성하는 ECU를 의미할 수 있다.
한편, 차량 네트워크를 구성하는 엔드 노드들(즉, 게이트웨이, 스위치, 엔드 노드 등)은 스타(star) 토폴로지, 버스(bus) 토폴로지, 링(ring) 토폴로지, 트리(tree) 토폴로지, 메쉬(mesh) 토폴로지 등으로 연결될 수 있다. 또한, 차량 네트워크를 구성하는 엔드 노드들 각각은 CAN 프로토콜, 플렉스레이 프로토콜, MOST 프로토콜, LIN 프로토콜, 이더넷 프로토콜 등을 지원할 수 있다. 본 발명에 따른 실시예들은 앞서 설명된 네트워크 토폴로지에 적용될 수 있으며, 본 발명에 따른 실시예들이 적용되는 네트워크 토폴로지는 이에 한정되지 않고 다양하게 구성될 수 있다.
도 2는 차량 네트워크를 구성하는 엔드 노드의 일 실시예를 도시한 블록도이다.
도 2를 참조하면, 엔드 노드(200) 및 복수의 엔드 노드들 각각은 PHY 계층 프로세서(212)를 포함하는 PHY 계층 유닛(210)과, 컨트롤러 프로세서(222)를 포함하는 컨트롤러 유닛(220)과, PHY 계층 유닛(210) 및 컨트롤러 유닛(220) 각각에 의해 수행되는 적어도 하나의 명령이 저장된 메모리를 포함할 수 있다.
또한, 엔드 노드(200)는 파워(power)를 공급하는 레귤레이터(regulator)(미도시)를 더 포함할 수 있다. 이때, 컨트롤러 유닛(220)은 MAC(medium access control) 계층을 포함하여 구현될 수 있다. PHY 계층 유닛(210)은 다른 엔드 노드로부터 신호를 수신할 수 있거나, 다른 엔드 노드로 신호를 전송할 수 있다. 컨트롤러 유닛(220)은 PHY 계층 유닛(210)을 제어할 수 있고, 다양한 기능들(예를 들어, 인포테인먼트 기능 등)을 수행할 수 있다. PHY 계층 유닛(210)과 컨트롤러 유닛(220)은 하나의 SoC(System on Chip)로 구현될 수도 있고, 별도의 칩으로 구성될 수도 있다.
PHY 계층 유닛(210)과 컨트롤러 유닛(220)은 매체 독립 인터페이스(media independent interface, MII)(230)를 통해 연결될 수 있다. MII(230)는 IEEE 802.3에 규정된 인터페이스를 의미할 수 있으며, PHY 계층 유닛(210)과 컨트롤러 유닛(220) 간의 데이터 인터페이스 및 관리 인터페이스로 구성될 수 있다. MII(230) 대신에 RMII(reduced MII), GMII(gigabit MII), RGMII(reduced GMII), SGMII(serial GMII), XGMII(10 GMII) 중 하나의 인터페이스가 사용될 수 있다. 데이터 인터페이스는 전송 채널(channel) 및 수신 채널을 포함할 수 있으며, 채널들 각각은 독립적인 클럭(clock), 데이터 및 제어 신호를 가질 수 있다. 관리 인터페이스는 2-신호 인터페이스로 구성될 수 있으며, 하나는 클럭을 위한 신호이고 다른 하나는 데이터를 위한 신호일 수 있다.
PHY 계층 유닛(210)은 PHY 인터페이스 유닛(211), PHY 계층 프로세서(processor)(212) 및 PHY 계층 메모리(memory)(213) 등을 포함할 수 있다. 다만, PHY 계층 유닛(210)의 구성은 이에 한정되지 않으며, 다양하게 구성될 수 있다.
PHY 계층 인터페이스 유닛(211)은 컨트롤러 유닛(220)으로부터 수신된 신호를 PHY 계층 프로세서(212)로 전송할 수 있고, PHY 계층 프로세서(212)로부터 수신된 신호를 컨트롤러 유닛(220)에 전송할 수 있다. PHY 계층 프로세서(212)는 PHY 계층 인터페이스 유닛(211) 및 PHY 계층 메모리(213) 각각의 동작을 제어할 수 있다. PHY 계층 프로세서(212)는 전송할 신호의 변조 또는 수신된 신호의 복조를 수행할 수 있다. PHY 계층 프로세서(212)는 신호를 입력 또는 출력하도록 PHY 계층 메모리(213)를 제어할 수 있다. PHY 계층 메모리(213)는 수신된 신호를 저장할 수 있고, PHY 계층 프로세서(212)의 요청에 따라 저장된 신호를 출력할 수 있다.
컨트롤러 유닛(220)은 MII(230)를 통해 PHY 계층 유닛(210)에 대한 모니터링 및 제어를 수행할 수 있다. 컨트롤러 유닛(220)은 컨트롤러 인터페이스 유닛(221), 컨트롤러 프로세서(222), 주 메모리(223) 및 보조 메모리(224) 등을 포함할 수 있다. 다만, 컨트롤러 유닛(220)의 구성은 이에 한정되지 않으며, 다양하게 구성될 수 있다.
컨트롤러 인터페이스 유닛(221)은 PHY 계층 유닛(210)(즉, PHY 계층 인터페이스 유닛(211)) 또는 상위 계층(미도시)으로부터 신호를 수신할 수 있고, 수신된 신호를 컨트롤러 프로세서(222)에 전송할 수 있고, 컨트롤러 프로세서(222)로부터 수신된 신호를 PHY 계층 유닛(210) 또는 상위 계층에 전송할 수 있다. 컨트롤러 프로세서(222)는 컨트롤러 인터페이스 유닛(221), 주 메모리(223) 및 보조 메모리(224)를 제어하기 위한 독립된 메모리 컨트롤 로직(control logic) 또는 통합 메모리 컨트롤 로직을 더 포함할 수 있다. 메모리 컨트롤 로직은 주 메모리(223) 및 보조 메모리(224)에 포함되어 구현될 수도 있으며, 또는 컨트롤러 프로세서(222)에 포함되어 구현될 수도 있다.
주 메모리(223) 및 보조 메모리(224) 각각은 컨트롤러 프로세서(222)에 의해 처리된 신호를 저장할 수 있고, 컨트롤러 프로세서(222)의 요청에 따라 저장된 신호를 출력할 수 있다. 주 메모리(223)는 컨트롤러 프로세서(222)의 동작을 위해 필요한 데이터를 일시 저장하는 휘발성 메모리(예를 들어, RAM(random access memory) 등)를 의미할 수 있다. 보조 메모리(224)는 운영체제 코드(operating system code)(예를 들어, 커널(kernel) 및 디바이스 드라이버(device driver))와 컨트롤러 유닛(220)의 기능을 수행하기 위한 응용 프로그램(application program) 코드 등이 저장되는 비휘발성 메모리를 의미할 수 있다. 비휘발성 메모리로 빠른 처리 속도를 가지는 플래쉬 메모리(flash memory)가 사용될 수 있고, 또는 대용량의 데이터 저장을 위한 하드 디스크 드라이브(hard disc drive, HDD), CD-ROM(compact disc-read only memory) 등이 사용될 수 있다. 컨트롤러 프로세서(222)는 통상적으로 적어도 하나의 프로세싱 코어(core)를 포함하는 로직 회로로 구성될 수 있다. 컨트롤러 프로세서(222)로 ARM(Advanced RISC Machines Ltd.) 계열의 코어, 아톰(atom) 계열의 코어 등이 사용될 수 있다.
도 3은 차량 네트워크의 토폴로지의 제2 실시예를 도시한 블록도이고, 도 4는 차량 네트워크 토폴로지에 속하는 10SPE 네트워크의 일 실시예를 도시한 블록도이다.
도 3을 참조하면, 차량 네트워크는 복수개의 이더넷 기반의 네트워크들(320, 330)을 포함할 수 있다. 차량 네트워크에 속한 게이트웨이(310)는 이더넷 기반의 네트워크 통신을 지원할 수 있다. 이더넷 기반의 네트워크(320)는 스위치#1(321), 스위치#2(322), 엔드 노드#1(321-1), 엔드 노드#2(321-2), 엔드 노드#3(321-3), 엔드 노드#4(322-1), 엔드 노드#5(322-1), 엔드 노드#6(331), 엔드 노드#7(332), 엔드 노드#8(333) 등을 포함할 수 있다. 엔드 노드#1(321-1), 엔드 노드#2(321-2) 및 엔드 노드#3(323-1)은 스위치#1(321)에 연결될 수 있고, 엔드 노드#4(322-1) 및 엔드 노드#5(322-2)는 스위치#2(322)에 연결될 수 있고, 스위치#1(321) 및 스위치#2(322)는 게이트웨이(310)에 연결될 수 있다.
복수개의 이더넷 기반 네트워크들 중 하나의 네트워크(330)는 10SPE(10 Mbps single pair Ethernet)일 수 있다. 10SPE 네트워크 방식으로 연결되는 엔드 노드#6(331), 엔드 노드#7(332) 및 엔드 노드#8(333)은 게이트웨이(310)와 버스 방식 또는 하나의 라인을 통해 연결될 수 있다.
이더넷 프로토콜에 기초한 메시지는 "이더넷 메시지"로 지칭될 수 있고, 이더넷 메시지는 "이더넷 프레임", "이더넷 신호", "이더넷 패킷" 등으로 지칭될 수 있다. 이더넷 기반의 네트워크에 속한 엔드 노드들(321,321-1,321-2,321-3,322,322-1,322-2,331,332,333)은 이더넷 메시지를 사용하여 통신을 수행할 수 있고, 이더넷 기반의 네트워크와 게이트웨이(310) 간의 통신도 이더넷 메시지를 사용하여 수행될 수 있다.
도 4를 참조하면, 이더넷 기반의 네트워크(예를 들어, 10SPE 네트워크)를 구성하는 엔드 노드들은 주종(master-slave)관계가 설정될 수 있다. 예를 들어, 차량 네트워크를 구성하는 엔드 노드들 중 하나의 엔드 노드(410)는 마스터(master) 노드일 수 있고, 마스터 노드를 제외한 나머지 노드들(420, 430)은 슬레이브(slave) 노드일 수 있다. 마스터 노드(410) 및 슬레이브 노드들(420, 430)은 슬립 상태로 동작할 수 있고, 로컬 웨이크업 신호 또는 리모트(remote) 웨이크업 신호가 수신된 경우에 마스터 노드(410) 및 슬레이브 노드들(420, 430)의 동작 상태는 슬립 상태에서 웨이크업 상태로 천이할 수 있다.
이더넷 기반의 네트워크를 구성하는 마스터 노드 및 슬레이브 노드들(420, 430)은 차량에 포함된 각종 장치를 제어하는 ECU를 의미할 수 있다. 차량 네트워크를 구성하는 엔드 노드들 각각은 이더넷 프로토콜을 지원할 수 있다.
마스터 노드(410) 및 슬레이브 노드들(420, 430)은 버스 토폴로지로 연결될 수 있다. 마스터 노드(410) 및 슬레이브 노드들(420, 430)은 한 쌍의 와이어를 통해 PoDL(power over data lines) 방식으로 연결될 수 있다. 한 쌍의 와이어는 엔드 노드들에 전원을 공급할 수 있도록 연결하는 와이어일 수 있으며, 엔드 노드 간의 데이터 패킷을 전송할 수 있도록 연결하는 와이어일 수 있다.
이더넷 기반의 네트워크를 구성하는 엔드 노드들 중 마스터 노드(410)는 한 쌍의 와이어를 통해 다른 슬레이브 노드들(420, 430)을 웨이크업하도록 신호 및 전력을 공급할 수 있다. 그리고 마스터 노드(410)는 한 쌍의 와이어를 통해 다른 슬레이브 노드들(420, 430)과 통신을 수행할 수 있다. 슬레이브 노드들(420, 430)은 한 쌍의 와이어를 통해 마스터 노드(410)로부터 신호를 수신할 수 있으며, 한 쌍의 와이어를 통해 다른 노드들과 데이터 패킷을 송신 및 수신할 수 있다.
이더넷 기반의 네트워크에 접속되는 복수의 엔드 노드들이 다른 엔드 노드들로 데이터 패킷을 동시에 전송하고자 하는 경우, PHY 계층에서 서로 다른 데이터 패킷 간의 충돌이 발생할 수 있다. 이더넷 기반의 네트워크에 접속되는 복수의 엔드 노드들은 PHY 계층의 충돌을 회피하기 위해 PLCA(PHY layer collision avoidance) 기능을 사용할 수 있다. 여기서 PLCA 기능은 이더넷 기반의 네트워크에 접속되는 복수의 엔드 노드들에 데이터 패킷을 전송할 수 있는 전송 기회(transmission opportunity)를 순차적으로 부여하는 기능일 수 있다.
도 5는 이더넷 모델의 계층을 도시한 개념도이다.
도 5를 참조하면 이더넷 계층 모델은 MAC 계층 및 PHY 계층을 포함할 수 있다. 이더넷 계층 모델의 MAC 계층은 OSI 레퍼런스 모델의 데이터 링크 계층(510)에 대응될 수 있으며, LLC(logical link control) 또는 다른 MAC 클라이언트 부계층(511), MAC 제어(MAC control) 부계층(512) 및 MAC 부계층(513)을 포함할 수 있다.
이더넷 계층 모델의 MAC 계층은 RS(reconciliation sublayer)(521) 및 MII 부계층(522)을 통해 PHY 계층과 연결될 수 있다. 이더넷 계층 모델의 RS(521) 및 MII 부계층(522)은 OSI 레퍼런스 모델의 PHY 계층에 대응될 수 있다. RS(521)는 MAC 부계층과 PCS 간의 논리적 신호 매핑을 조정하는 기능을 수행할 수 있다.
RS(521)는 MII 부계층(522)을 통해 연결되는 MAC 계층과 PHY 계층 간의 PCLA 기능을 지원하는 부계층일 수 있다. RS(521)는 프레임의 전송으로 인한 PHY 계층의 충돌을 방지하기 위해 미리 지정된 타임 슬롯 동안 MAC 부계층과 PCS(523)간 신호의 매핑을 조정할 수 있다.
이더넷 모델의 PHY 계층은 OSI 레퍼런스 모델의 PHY 계층(520)에 대응될 수 있으며 PCS(physical coding sublayer)(523), PMA(physical media attachment) 부계층(524), PMD(physical medium dependent) 부계층(525) 및 AN(auto-negotiation) 부계층(526)을 포함할 수 있다.
PCS(523)는 MAC 계층으로부터 데이터를 획득하고, 네트워크의 프로토콜(예를 들어, 전송 속도 등)에 기초하여 데이터에 라인 코딩(line coding)을 수행할 수 있다. PCS(523)는 라인 코딩의 결과인 데이터를 PMA 부계층(524)으로 전달할 수 있다.
PMA 부계층(524)은 PCS(523)로부터 라인 코딩의 결과인 데이터를 획득할 수 있으며, 획득한 데이터를 물리 신호로 변환할 수 있다. PMA 부계층(524)은 물리 신호로 변환된 데이터를 PMD 부계층(525)으로 전달할 수 있다. PMD 부계층(525)은 PMA 부계층(524)으로부터 물리 신호로 변환된 데이터를 획득할 수 있으며, 획득한 데이터를 PHY 계층에 연결된 물리적 매체에 적합하도록 변환할 수 있다.
AN 부계층(526)은 복수의 전송 방식으로 신호를 전송하는 엔드 노드들 간의 최적의 전송 방식을 설정하는 부계층일 수 있다. AN 부계층(526)은 복수개의 신호 전송 방식 등을 절충하여 하나의 신호 전송 방식을 결정할 수 있다. 그리고 AN 부계층(526)은 복수개의 엔드 노드들의 주종관계를 결정할 수 있다. 예를 들어, 다른 엔드 노드의 신호를 수신한 경우, AN 부계층(526)은 신호를 송신한 엔드 노드가 마스터 노드인지 또는 슬레이브 노드인지 여부를 판단할 수 있다.
이더넷 모델의 PHY 계층은 MDI(medium dependent interface)(527)을 통해 물리적 매체(medium)와 연결될 수 있다. MDI(527)은 PMD 부계층(525)으로부터 물리적 신호를 수신하고, 물리적 매체를 통해 신호를 전송할 수 있다. 이더넷 모델의 MDI(527)은 OSI 레퍼런스 모델의 PHY 계층(520)에 대응될 수 있다.
아래에서는, 차량 네트워크에 속하는 엔드 노드와 이에 대응하는 상대(counterpart) 엔드 노드에서 수행되는 방법이 설명될 것이다. 이하에서, 제1 엔드 노드에서 수행되는 방법(예를 들어, 신호의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 제2 엔드 노드는 제1 엔드 노드에서 수행되는 방법과 상응하는 방법(예를 들어, 신호의 수신 또는 전송)을 수행할 수 있다. 즉, 제1 엔드 노드의 동작이 설명된 경우에 이에 대응하는 제2 엔드 노드는 제1 엔드 노드의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 제2 엔드 노드의 동작이 설명된 경우에 이에 대응하는 제1 엔드 노드는 스위치의 동작과 상응하는 동작을 수행할 수 있다.
여기서, 복수의 엔드 노드들 각각은 메모리에 저장된 적어도 하나의 명령을 통해서 다음의 동작을 수행할 수 있다.
도 6은 차량 네트워크에 속하는 엔드 노드의 동작 방법을 도시한 순서도이다.
도 6을 참조하면, 복수의 엔드 노드(410, 420, 430)들 각각은 이더넷 기반의 차량 네트워크에 접속될 수 있다. 이더넷 기반의 차량 네트워크에서 엔드 노드들 각각은 마스터 노드이거나 슬레이브 노드일 수 있다. 구체적으로, 엔드 노드들은 하나의 마스터 노드와 복수개의 슬레이브 노드로 구분될 수 있다.
엔드 노드들(410, 420, 430)에는 엔드 노드들(410, 420, 430)에 포함된 PHY 계층 유닛의 고유한 식별자인 PHY ID(identifier)가 설정될 수 있다. 엔드 노드들(410, 420, 430)의 PHY의 ID는 엔드 노드들(410, 420, 430) 간의 주종 관계를 결정할 수 있다. 예를 들어, PHY ID가 0인 엔드 노드는 마스터 노드(410)로 결정될 수 있고, PHY ID가 0이 아닌 엔드 노드는 슬레이브 노드(420, 430)로 결정될 수 있다.
복수개의 엔드 노드들 중 외부로부터의 이벤트를 감지한 엔드 노드의 컨트롤러 유닛은 동작 상태를 슬립 상태에서 웨이크업 상태로 천이할 수 있다. 웨이크업 된 컨트롤러 유닛은 연결된 PHY 계층 유닛을 웨이크업할 수 있다. 웨이크업 된 엔드 노드(마스터 노드(410) 및 슬레이브 노드들(420, 430) 중 하나)의 PHY 계층 유닛은 엔드 노드의 주종 관계에 따라서 웨이크업 이후의 동작을 결정하고 수행할 수 있다.
S601에서 웨이크업 된 엔드 노드(420)는 PHY ID가 0이 아닌 슬레이브 노드일 수 있다. 로컬 이벤트를 감지하여 웨이크업 된 슬레이브 노드(420)의 컨트롤러 유닛은 PHY 계층 유닛을 웨이크업 시킬 수 있다. 마스터 노드(410)로부터 비콘을 수신하지 못한 슬레이브 노드(420)는 마스터 노드(410)로부터 비콘을 수신할 때까지 대기 상태를 유지할 수 있다(S602). 웨이크업 된 슬레이브 노드(420)가 비콘을 수신하지 못하는 경우, 슬레이브 노드(420)는 마스터 노드(410)가 웨이크업 되어 비콘을 전송할 때까지 대기 상태를 유지할 수 있다(S602).
S603에서 웨이크업 되는 엔드 노드는 PHY ID가 0인 마스터 노드일 수 있다. 이벤트를 감지하여 웨이크업 된 마스터 노드(410)의 컨트롤러 유닛은 마스터 노드(410)의 PHY 계층 유닛으로 웨이크업 신호를 전송할 수 있다. 마스터 노드(410)의 PHY 계층 유닛은 웨이크업 신호를 수신하고, 웨이크업될 수 있다(S603).
S603에서 웨이크업 된 마스터 노드(410)는 비콘 타이머(beacon timer)를 구동할 수 있으며, 비콘(beacon) 신호를 생성할 수 있다(S604). 마스터 노드(410)가 S603에서 웨이크업 된 직후(S604)에 생성되는 비콘을 제1 비콘이라 지칭할 수 있다. 마스터 노드(410)는 S604에서 생성한 제1 비콘 신호를 네트워크에 접속된 슬레이브 노드들(420, 430)에 송신할 수 있다(S605).
슬레이브 노드들(420, 430)은 마스터 노드(410)로부터 제1 비콘을 수신할 수 있으며(S605), 마스터 노드(410)로부터 제1 비콘을 수신한 슬레이브 노드(420)는 엔드 노드에 포함된 전송 기회 카운터(transmission opportunity counter)를 동기화할 수 있다(S606).
슬레이브 노드들(420, 430)의 PHY 계층 유닛은 데이터 패킷 전송 기회가 부여되었는지 여부를 판단하기 위한 전송 기회 카운터를 산출할 수 있다. 슬레이브 노드들(420, 430) 각각의 PHY 계층 유닛은 산출된 전송 기회 카운터에 기초하여 슬레이브 노드들(420, 430)에 전송 기회가 부여되었는지 여부를 판단할 수 있다.
슬레이브 노드들(420, 430)이 마스터 노드(410)로부터 제1 비콘을 수신하고 전송 기회 카운터를 동기화하면, 엔드 노드(410, 420, 430)들의 전송 기회 카운터는 0으로 설정될 수 있다(S606). 마스터 노드(410) 및 슬레이브 노드(420, 430)들의 전송 기회 카운터가 동기화된 후, 마스터 노드(410)는 비콘 타이머를 종료할 수 있다. 엔드 노드의 비콘(또는 제1 비콘)의 송수신이 완료된 경우, 네트워크에 접속된 엔드 노드들(410, 420, 430)이 데이터 패킷을 전송할 수 있는 전송 주기(bus cycle)가 시작될 수 있다(S707).
도 7a는 일반적인 엔드 노드의 전송 주기를 도시한 개념도이다.
도 7a를 참조하면, 1회의 전송 주기는 복수개의 타임 슬롯(time-slot)으로 구성될 수 있다. 전송 주기의 첫 번째 타임 슬롯은 마스터 노드가 비콘을 전송한 타임 슬롯(711) 이후의 타임 슬롯일 수 있다. 차량 네트워크에 하나의 마스터 노드(410)와 N개의 슬레이브 노드들(420, 430)이 접속된 경우, 1회의 전송 주기는 마스터 노드(410)가 데이터를 전송할 수 있는 타임 슬롯(711)과 N개의 슬레이브 노드들(420, 430)이 데이터를 전송할 수 있는 타임 슬롯(712,?)을 포함하므로, 총 N+1개의 타임 슬롯을 포함할 수 있다. 하나의 타임 슬롯에서는 하나의 엔드 노드가 데이터 패킷 전송 기회를 획득할 수 있다. 데이터 패킷 전송 기회를 획득한 엔드 노드는 데이터 패킷을 다른 노드로 전송할 수 있다.
비콘이 전송되는 첫 번째 타임 슬롯(711)을 제외한 나머지 타임 슬롯들의 길이는 전송 기회를 획득한 엔드 노드의 동작에 따라 가변적일 수 있다. 예를 들어, 타임 슬롯이 시작되고, 미리 설정된 시간 동안 엔드 노드의 데이터 전송 동작이 없는 타임 슬롯(712, 713, 722, 724)은 사일런스(silence) 슬롯일 수 있다. 타임 슬롯이 시작되고 엔드 노드가 전송 지연(latency)으로 인해 전송 동작을 수행하지 못하고 대기하는 타임 슬롯(725-1)은 아이들(idle) 슬롯일 수 있다. 엔드 노드가 데이터를 다른 엔드 노드들로 전송하는 타임 슬롯(723, 725-2)은 데이터 슬롯일 수 있으며, 데이터 슬롯(723, 725-2)의 길이는 엔드 노드가 전송하는 데이터 길이에 비례할 수 있다. 전송 주기의 길이는 전송 주기에 포함된 타임 슬롯들의 길이에 따라 가변적일 수 있다.
도 7b는 도 7a에 따른 전송 주기 진행 시 엔드 노드의 전송 동작 방법의 일 실시예를 도시한 순서도이다.
도 7b를 참조하면, 전송 주기가 시작되고 엔드 노드들(410, 420, 430)은 대기 상태를 유지할 수 있다(S707-1). PHY 계층에서 2 이상의 데이터 패킷 간의 충돌을 감지한 경우, 마스터 노드(410)는 전송 주기를 종료하고 비콘을 다시 생성할 수 있다. 마스터 노드(410)는 다시 생성한 비콘을 전송할 수 있고, 슬레이브 노드들(420, 430)은 마스터 노드(410)로부터 비콘을 수신할 수 있다. 비콘을 수신한 슬레이브 노드(420, 430)들은 전송 기회 카운터를 다시 동기화할 수 있다.
엔드 노드들(410, 420, 430)은 전송 기회 카운터를 기초로 전송 기회가 부여되었는지 여부를 판단할 수 있다(S707-2). 엔드 노드의 PHY 계층 유닛은 전송 기회 카운터와 엔드 노드의 PHY ID를 비교할 수 있다(S707-2). 전송 기회 카운터는 전송 주기의 타임 슬롯의 인덱스와 동일한 값일 수 있다.
전송 기회 카운터가 지시하는 숫자와 PHY ID가 동일하지 않은 엔드 노드들의 데이터 전송 기회를 획득하지 못하며, 엔드 노드들의 PHY 계층 유닛은 미리 설정된 시간 동안 대기 상태를 유지할 수 있다. 미리 설정된 시간이 경과하면, 전송 기회를 획득하지 못한 엔드 노드들의 PHY 계층 유닛은 전송 기회 카운터의 숫자를 1만큼 증가시킬 수 있다(S707-6).
전송 기회 카운터가 지시하는 숫자와 PHY ID이 동일한 엔드 노드의 PHY 계층 유닛은 데이터를 전송하는 기회를 획득할 수 있다. 데이터 전송 기회를 부여받은 엔드 노드는 다른 엔드 노드들로 전송할 데이터 패킷이 존재하는지 여부를 판단할 수 있다(S707-3). 다른 엔드 노드들로 전송할 데이터 패킷이 존재하는지 여부는 엔드 노드의 컨트롤러 유닛이 판단할 수 있다(S707-3). 엔드 노드의 컨트롤러 유닛은 다른 엔드 노드들로 전송할 데이터 패킷을 PHY 계층 유닛으로 전달할 수 있다(S707-4).
전송 기회를 획득한 엔드 노드의 PHY 계층 유닛은 S707-4에서 엔드 노드의 컨트롤러 유닛으로부터 획득한 데이터 패킷을 차량 네트워크에 접속된 다른 엔드 노드들로 전송할 수 있다(S707-5). 데이터 패킷 전송을 완료한 엔드 노드의 PHY 계층 유닛은 전송 기회를 종료할 수 있다. 데이터 전송 동작이 완료되면, 엔드 노드들의 PHY 계층 유닛은 전송 기회 카운터의 숫자를 1만큼 증가시킬 수 있다(707-6).
전송 기회를 획득하였으나, 다른 엔드 노드들로 전송할 데이터 패킷이 없는(예를 들어, 컨트롤러 유닛으로부터 데이터 패킷을 획득하지 못한) 엔드 노드의 PHY 계층 유닛은 데이터 전송 기회를 다른 엔드 노드에 양도(yield)할 수 있다(S707-7). 미리 설정된 시간이 경과하면, 전송 기회 양도 동작을 수행하는 엔드 노드의 PHY 계층 유닛은 전송 기회를 종료하여 데이터 패킷 전송 절차를 종료할 수 있다. 데이터 패킷 전송 절차가 종료되면, 네트워크에 접속된 엔드 노드들의 PHY 계층 유닛은 전송 기회 카운터의 숫자를 1만큼 증가시킬 수 있다(S707-6).
전송 기회 카운터의 초기 값은 0으로 설정될 수 있으며, 전송 기회 카운터의 최대 값은 통신 네트워크에 구비된 노드의 개수보다 하나 작은 수 일 수 있으며, 이를 Max_ID 라고 지칭할 수 있다. 따라서, 1개의 마스터 노드(410)와 N개의 슬레이브 노드들(420, 430)이 네트워크에 접속된 경우, PHY 계층의 ID가 0인 마스터 노드(410)부터 PHY 계층의 ID가 N인 슬레이브 노드까지 데이터 전송 기회를 순차적으로 획득할 수 있다. 그리고 순차적으로 데이터 전송 기회를 획득한 엔드 노드는 다른 노드들로 데이터를 전송할 수 있다. 네트워크에 접속된 엔드 노드들은 전송 기회 카운터가 Max_ID일 때까지 데이터 전송 동작 또는 대기 동작을 반복할 수 있다.
마스터 노드는 미리 설정된 Max_ID와 노드의 전송 기회 카운터를 비교할 수있다(S707-8). 전송 기회 카운터가 Max_ID와 동일하지 않은 경우, 증가한 전송 기회 카운터의 숫자와 동일한 PHY ID를 가지는 엔드 노드의 PHY 계층 유닛이 데이터 전송 기회를 획득할 수 있다. 전송 기회 카운터가 Max_ID와 동일한 경우, 제1 전송 주기는 종료될 수 있다(S608).
다시 도 6을 참조하면, 제1 전송 주기가 종료된 이후, 마스터 노드(410)는 비콘을 생성할 수 있다(S610). 제1 전송 주기가 종료된 이후에 생성되는 비콘을 제2 비콘이라 지칭할 수 있다. 마스터 노드(410)는 S610에서 생성한 제2 비콘을 네트워크에 접속된 다른 슬레이브 노드들(420, 430)로 전송할 수 있다(S611).
슬레이브 노드들(420, 430)의 PHY 계층 유닛은 마스터 노드(410)로부터 제2 비콘 신호를 수신할 수 있다(S610). 슬레이브 노드들(420, 430)은 수신한 제2 비콘에 기초하여 전송 기회 카운터를 동기화할 수 있다(S611). 동기화 동작 결과 네트워크에 접속된 마스터 노드(410) 및 슬레이브 노드들(420, 430)의 PHY 계층 유닛은 전송 기회 카운터를 0으로 설정하여 전송 기회 카운터를 동기화할 수 있다(S611).
마스터 노드(410)의 비콘 타이머가 종료되고, 엔드 노드의 비콘(또는 제2 비콘)이 송수신된 경우, 전송 주기가 시작될 수 있다(S612). S612에서 시작된 전송 주기가 S613에서 종료된 이후에도, 네트워크에 접속된 마스터 노드(410) 및 슬레이브 노드들(420, 430)은 전송 주기를 반복할 수 있다.
도 8a는 본 발명의 제1 실시예에 따른 우선순위에 기반한 엔드 노드의 전송 주기를 도시한 개념도이다.
도 8a를 참조하면, 1회의 전송 주기는 복수개의 타임 슬롯(time-slot)으로 구성될 수 있다. 전송 주기의 첫 번째 타임 슬롯은 마스터 노드가 비콘(811)을 전송한 타임 슬롯 이후의 타임 슬롯일 수 있다. 하나의 타임 슬롯에서는 하나의 엔드 노드가 데이터 패킷 전송 기회를 획득할 수 있다. 데이터 패킷 전송 기회를 획득한 엔드 노드는 데이터 패킷을 다른 노드로 전송할 수 있다. 비콘(811)이 전송되는 첫 번째 타임 슬롯을 제외한 나머지 타임 슬롯들의 길이는 전송 기회를 획득한 엔드 노드의 동작에 따라 가변적일 수 있다.
차량 네트워크에 하나의 마스터 노드(410)와 N개의 슬레이브 노드들(420, 430, 440)이 접속된 경우, 본 발명의 제1 실시예에 따른 엔드 노드의 전송 주기는 중요도가 높은 엔드 노드에게 전송 기회가 우선적으로 부여되도록 할 수 있다. 전송 요청 신호(813)를 다른 엔드 노드에 전송하는 엔드 노드는 긴급 또는 중요 데이터가 발생한 엔드 노드일 수 있고, 중요 데이터(예를 들어, 긴급 데이터)는 브레이크(Brake) 동작에 관련된 데이터, 에어백(Airbag) 동작에 관련된 데이터일 수 있다.
전송 요청 신호(813)는 EEE(energy efficient Ethernet) 기능을 지원하는 엔드 노드에 의해 생성된 LPI(low power idle) 신호일 수 있다. EEE는 데이터를 적게 쓰는 시기에 소비 전력을 낮추는 이더넷 계열의 컴퓨터 네트워킹 기술을 의미한다. 한편, EEE 기능을 갖춘 엔드 노드는, 전송할 데이터가 존재하지 않는 경우 소모되는 전력 및 에너지를 감소시키는 LPI 시그널링 과정을 독립적으로 수행할 수 있다. 본 발명에 따른 엔드 노드는 상기 EEE 기능을 구비하고 있고, 에너지를 감지할 수 있는 LPI 신호를 전송할 수 있다. 한편, 상기 전송 요청 신호(813)는 4비트 크기의 PLCA 신호일 수 있다. 이 때, 상기 4비트 크기의 PLCA 신호는 IEEE 802.3 문서에 예약되어 있는 데이터 비트(0100 ~ 1101)중 하나일 수 있다.
본 발명의 제1 실시예에 따른 엔드 노드의 전송 주기에서, 제1 엔드 노드는 제1 엔드 노드의 통신을 위해 설정된 제1 시간 구간(810)에서 전송 기회를 가질 수 있다. 여기서 제1 시간 구간(810)은 복수의 타임 슬롯을 포함하는 의미일 수 있다.
제1 엔드 노드가 제1 시간 구간(810)에서 제2 엔드 노드로부터 전송된 전송 요청 신호(813)를 검출하는 경우, 제1 엔드 노드는 제1 시간 구간(810)에서 전송 동작을 중지할 수 있다. 이 경우, 전송 요청 신호(813)를 전송한 제2 엔드 노드가 제1 시간 구간(810)에서 전송 동작을 수행할 수 있다. 제1 시간 구간(810)에서 제2 엔드 노드의 전송 동작이 완료된 경우, 제1 엔드 노드는 제1 시간 구간(810) 이후의 제2 시간 구간(820)에서 전송 동작을 수행할 수 있다.
한편, 이전 제2 시간 구간(820)에서 전송 동작을 수행하는 것으로 예정되어 있던 제3 엔드 노드는, 제2 엔드 노드가 전송 요청 신호(813)를 전송한 경우, 전송 동작을 수행할 시간 구간을 제2 시간 구간(820) 이후의 제3 시간 구간(830)으로 변경할 수 있다. 본 발명의 제1 실시예에 따른 각 엔드 노드 구체적인 동작은 후술하는 도 9a 및 도 9b를 참조하여 상세히 설명한다.
도 8b는 본 발명의 제2 실시예에 따른 우선순위에 기반한 엔드 노드의 전송 주기를 도시한 개념도이다.
도 8b를 참조하면, 본 발명의 제2 실시예에 따른 엔드 노드의 전송 주기에서, 제1 엔드 노드는 제1 엔드 노드의 통신을 위해 설정된 제1 시간 구간(810)에서 전송 기회를 가질 수 있다.
제1 엔드 노드가 제1 시간 구간(810)에서 제2 엔드 노드로부터 전송 요청 신호(813)를 검출하는 경우, 제1 엔드 노드는 제1 시간 구간(810)에서 전송 동작을 중지할 수 있다. 이 경우, 전송 요청 신호(813)를 전송한 제2 엔드 노드가 제1 시간 구간(810)에서 전송 동작을 수행할 수 있다. 제1 시간 구간(810)에서 제2 엔드 노드의 전송 동작이 완료된 경우, 제1 엔드 노드는 마스터 노드로 동작하는 엔드 노드로부터 비콘(beacon)(815)을 수신할 수 있다. 비콘은 제1 엔드 노드가 전송 동작을 수행할 수 있는 제2 시간 구간(820-1) 정보를 포함할 수 있다. 제1 엔드 노드는 비콘(815)에 의해 지시되는 제2 시간 구간(820-1)에서 전송 동작을 수행할 수 있다.
한편, 이전에 예정되어 있던 시간 구간에서 전송 동작을 수행하는 것으로 예정되어 있던 제3 엔드 노드는, 제1 엔드 노드로 수신되는 비콘(815)에 의해 지시되는 제3 시간 구간(830-1)을 통해 전송 동작을 수행할 수 있다. 비콘(815)은 제3 엔드 노드가 전송 동작을 수행할 수 있는 제3 시간 구간(830-1) 정보를 더 포함할 수 있다. 본 발명의 제2 실시예에 따른 각 엔드 노드 구체적인 동작은 후술하는 도 9a 및 도 9b를 참조하여 상세히 설명한다.
도 9a 및 도 9b는 도 8a, 도 8b에 따른 전송 주기 진행 시 엔드 노드의 전송 동작 방법의 일 실시예를 도시한 개념도이고, 도 10 및 도 11은 도 9b의 S910, S911, S915에 해당하는 엔드 노드의 동작 방법을 구체적으로 설명한 개념도이다. 여기서, 도 10은 본 발명에 따른 제1 엔드 노드(420)가 동작하는 PLCA 제어 상태 다이어그램(PLCA Control State Diagram)을 나타낸 것이고, 도 11은 본 발명에서 제1 엔드 노드(420)가 동작하는 PLCA 데이터 상태 다이어그램(PLCA Data State Diagram)을 나타낸 것으로, S910, S911, S915에서는 도 10 및 도 11을 함께 참조하여 엔드 노드의 동작 방법을 구체적으로 설명한다.
도 8a, 도 8b, 도 9a 및 도 9b를 함께 참조하면, 복수의 엔드 노드들(410, 420, 430, 440) 각각은 이더넷 기반의 차량 네트워크에 접속될 수 있다. 이더넷 기반의 차량 네트워크에서 엔드 노드들 각각은 마스터 노드이거나 슬레이브 노드일 수 있다. 구체적으로, 엔드 노드들은 하나의 마스터 노드와 복수개의 슬레이브 노드로 구분될 수 있다.
엔드 노드들(410, 420, 430, 440)의 PHY 계층 유닛은 고유한 식별자인 PHY ID(identifier)가 설정될 수 있다. 엔드 노드들(410, 420, 430, 440)의 PHY의 ID는 엔드 노드들(410, 420, 430, 440) 간의 주종 관계를 결정할 수 있다. 예를 들어, PHY ID가 0인 엔드 노드는 마스터 노드(410)로 결정될 수 있고, PHY ID가 0이 아닌 엔드 노드는 슬레이브 노드(420, 430, 440)로 결정될 수 있다.
복수개의 엔드 노드들 중 외부로부터의 이벤트를 감지한 엔드 노드의 컨트롤러 유닛은 동작 상태를 슬립 상태에서 웨이크업 상태로 천이할 수 있다. 웨이크업 된 컨트롤러 유닛은 연결된 PHY 계층 유닛을 웨이크업할 수 있다. 웨이크업 된 엔드 노드(마스터 노드(410) 및 슬레이브 노드들(420, 430, 440) 중 하나)의 PHY 계층 유닛은 엔드 노드의 주종 관계에 따라서 웨이크업 이후의 동작을 결정하고 수행할 수 있다.
S901에서 웨이크업 된 엔드 노드(420)는 PHY ID가 0이 아닌 슬레이브 노드일 수 있다. 로컬 이벤트를 감지하여 웨이크업 된 슬레이브 노드(420)의 컨트롤러 유닛은 PHY 계층 유닛을 웨이크업 시킬 수 있다. 마스터 노드(410)로부터 비콘을 수신하지 못한 슬레이브 노드(420)는 마스터 노드(410)로부터 비콘을 수신할 때까지 대기 상태를 유지할 수 있다(S902). 웨이크업 된 슬레이브 노드(420)가 비콘을 수신하지 못하는 경우, 슬레이브 노드(420)는 마스터 노드(410)가 웨이크업 되어 비콘을 전송할 때까지 대기 상태를 유지할 수 있다(S902).
S903에서 웨이크업 되는 엔드 노드는 PHY ID가 0인 마스터 노드일 수 있다. 이벤트를 감지하여 웨이크업 된 마스터 노드(410)의 컨트롤러 유닛은 마스터 노드(410)의 PHY 계층 유닛으로 웨이크업 신호를 전송할 수 있다. 마스터 노드(410)의 PHY 계층 유닛은 웨이크업 신호를 수신하고, 웨이크업될 수 있다(S903).
S903에서 웨이크업 된 마스터 노드(410)는 비콘 타이머(beacon timer)를 구동할 수 있으며, 비콘(beacon) 신호를 생성할 수 있다(S904). 마스터 노드(410)가 S903에서 웨이크업 된 직후(S904)에 생성되는 비콘을 제1 비콘이라 지칭할 수 있다. 마스터 노드(410)는 S904에서 생성한 제1 비콘 신호를 네트워크에 접속된 슬레이브 노드들(420, 430)에 송신할 수 있다(S905).
슬레이브 노드들(420, 430, 440)은 마스터 노드(410)로부터 제1 비콘을 수신할 수 있으며(S905), 마스터 노드(410)로부터 제1 비콘을 수신한 슬레이브 노드(420)는 엔드 노드에 포함된 전송 기회 카운터(transmission opportunity counter)를 동기화할 수 있다(S906). 엔드 노드들(410, 420, 430, 440)은 전송 기회 카운터를 기초로 전송 기회가 부여되었는지 여부를 판단할 수 있다. 전송 기회 카운터는 전송 주기의 타임 슬롯의 인덱스와 동일한 값일 수 있다.
S907에서 제1 엔드 노드(420)는 제1 엔드 노드(420)의 통신을 위해 설정된 제1 시간 구간(810)에서 전송 기회를 가질 수 있다. 제1 시간 구간(810)은 제1 엔드 노드(420)가 전송 지연(latency)으로 인해 전송 동작을 수행하지 못하고 대기하는 타임 슬롯을 포함할 수 있다. 제1 엔드 노드(420)는 제1 시간 구간(810)에서 모니터링 동작을 수행할 수 있다.
한편, 제2 엔드 노드에서 긴급 또는 중요 데이터가 발생한 경우, 제2 엔드 노드(430)는 전송될 데이터가 존재하는 것을 지시하는 전송 요청 신호(813)를 생성할 수 있다(S908). 전송 요청 신호(813)는 제2 엔드 노드(430)에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용될 수 있으며, 제2 엔드 노드(430)의 식별자를 포함할 수 있다. 전송 요청 신호(813)는 제2 엔드 노드(430)의 전송 우선순위를 지시하는 우선순위 정보를 더 포함할 수 있고, 제2 엔드 노드(430)가 제1 시간 구간(810)에서 전송 동작을 수행하는 전송 시간을 지시하는 타이머를 더 포함할 수 있다.
S909에서 제2 엔드 노드(430)는 제1 시간 구간(810)에서 전송 요청 신호(813)를 전송할 수 있다.
S910에서 제1 엔드 노드(420) 및 제3 엔드 노드는(440)는 S907에서 수행되는 제1 엔드 노드(420)의 모니터링 동작에 의해 제2 엔드 노드(430)로부터 전송되는 전송 요청 신호(813)를 검출할 수 있다.
도 10을 함께 참조하면, S910에서 제1 엔드 노드(420)는 S907에서 수행되는 모니터링 동작에 의해 제2 엔드 노드(430)로부터 전송되는 전송 요청 신호(813)를 검출할 수 있다. 여기서, 제1 엔드 노드(420)는 PHY(physical) 계층의 기능을 수행하는 제1 엔터티(entity)와 MAC(medium access control) 계층의 기능을 수행하는 제2 엔터티를 포함할 수 있다.
제1 엔드 노드(420)의 tx_cmd에 긴급 데이터가 존재하는 것을 지시하는 전송 요청 신호(813)(예를 들어, LPI Signal)가 입력된 경우, 전송 요청 신호(813)가 검출된 것을 지시하는 제1 지시자(1010)(TRUE로 설정된 CRS(Carrier Sense)) 및 제1 시간 구간에서 충돌이 발생한 것을 지시하는 제2 지시자(1020)(TRUE 설정된 COL(Collision Detect))를 제1 엔터티에서 제2 엔터티로 전송할 수 있다.
도 11을 함께 참조하면, 제1 지시자(1010) 및 제2 지시자(1020)가 제1 엔터티에서 제2 엔터티로 전송된 경우, 제2 엔터티는 CARRIER_STATE를 전송 요청 신호(813)가 검출된 상황을 나타내는 제3 지시자(1110)(예를 들어, CARRIER_ON)로 설정하고, SIGNAL_STATUS를 충돌이 발생한 것을 나타내는 제4 지시자(1120)(예를 들어, SIGNAL_ERROR)로 설정할 수 있다. 이에 따라 제1 엔드 노드(430)는 충돌이 발생한 상황으로 천이되어 전송 동작을 중지할 수 있다.
S911에서 제1 엔드 노드(420)는 모니터링 동작에 의해 전송 요청 신호(813)가 검출된 경우, 제1 시간 구간(810)에서 제1 엔드 노드(420)의 전송 동작을 중지할 수 있다. 제1 엔드 노드(420)는 전송 동작 신호(813)에 포함된 우선순위 정보에 기초하여, 제2 엔드 노드(430)의 전송 우선순위가 제1 엔드 노드(420)의 전송 우선순위보다 높은 경우, 제1 시간 구간(810)에서 전송 동작을 중지할 수 있다.
도 10을 함께 참조하면, S911에서 S910을 통해 제1 지시자(1010) 및 제2 지시자(1020)가 제1 엔터티에서 제2 엔터티로 전송된 경우, 제2 엔터티는 제1 엔드 노드(420)가 전송 동작을 수행하지 않도록 TX_EN을 TRUE로 설정하고, committed를 FALSE로 설정하며, COL을 TRUE로 설정할 수 있다. 따라서, 제1 엔드 노드(420)는 제1 시간 구간(820)에서 전송 동작을 중지할 수 있다. 한편, 제1 엔드 노드(420)의 전송 동작이 중지된 경우, curID는 제1 시간 구간(810)에서 통신을 수행하는 제2 엔드 노드(430)의 식별자(예를 들어, critical_nodeID)로 설정될 수 있다.
도 11을 함께 참조하면, CARRIER_STATE를 전송 요청 신호(813)가 검출된 상황을 나타내는 제3 지시자(1110)로 설정하고, SIGNAL_STATUS를 충돌이 발생한 것을 나타내는 제4 지시자(1120)로 설정된 경우, 제2 엔터티는 데이터가 전송 중일 경우 TRUE로 설정되는 plca_txen을 FALSE로 설정할 수 있고, 전송 기회를 획득한 경우 TRUE로 설정되는 packetPending과 committed를 FALSE로 설정할 수 있다. 이에 따라, 제1 엔드 노드(430)의 데이터가 MAC 계층에서 PHY 계층으로 전송되지 않을 수 있다.
S912에서 제3 엔드 노드(440)는 S907에서 수행된 모니터링 동작에 의해 전송 요청 신호(813)가 검출된 경우, 제3 엔드 노드(440)의 통신을 위해 설정된 시간 구간을 제2 시간 구간(820)에서 제2 시간 구간(820) 이후의 제3 시간 구간(830)으로 변경할 수 있다.
S913에서 제2 엔드 노드(430)는 제1 시간 구간(810)에서 전송 동작을 수행할 수 있다. 즉, 제1 시간 구간(810)은 전송 요청 신호를 전송한 제2 엔드 노드(430)의 통신을 위해 사용될 수 있다. 제2 엔드 노드(430)는 전송 동작 신호(813)에 포함된 우선순위 정보에 기초하여, 제2 엔드 노드(430)의 전송 우선순위가 상기 제2 엔드 노드(430)의 전송 우선순위보다 높은 경우, 제1 시간 구간(810)에서 전송 동작을 수행할 수 있다. 제1 시간 구간(810)은 제2 엔드 노드(430)가 전송 동작을 수행하는 타임 슬롯을 포함할 수 있다. S914에서 제2 엔드 노드(430)는 제1 시간 구간(810)에서 전송 동작을 완료할 수 있다.
S915에서 제1 엔드 노드(420)는 S911에서 중지되었던 전송 동작을 재개하고 전송 동작을 수행할 수 있다. 제1 엔드 노드가 전송 동작을 재개하는 시점은 전송 요청 신호(813)에 포함된 타이머가 만료된 시점일 수 있다. 제1 엔드 노드(420)는 제1 시간 구간(810)에서 제2 엔드 노드(430)의 전송 동작이 완료된 경우, 제1 시간 구간(810) 이후의 제2 시간 구간(820)에서 전송 동작을 수행할 수 있다. 제2 시간 구간(820)은 제1 엔드 노드(420)가 전송 동작을 수행하는 타임 슬롯을 포함할 수 있다.
도 10을 함께 참조하면, 제2 엔드 노드(430)가 제1 시간 구간(820)에서 전송 동작을 완료한 경우, 제2 엔터티는 제1 엔드 노드(420)가 전송 동작을 수행할 수 있도록 TX_EN을 FALSE로 설정하고, CRS를 FALSE로 설정할 수 있다. 이 경우, curID는 제1 시간 구간(810) 이후의 제2 시간 구간(820)에서 통신을 수행하는 제1 엔드 노드(420)의 식별자(예를 들어, local_nodeID)로 설정될 수 있다.
도 11을 함께 참조하면, 제2 엔터티는 TX_EN이 FALSE로 설정되고, CRS가 FALSE로 설정된 경우, packetPending과 committed를 TRUE로 설정할 수 있다. 따라서 제1 엔드 노드(430)의 데이터가 MAC 계층에서 PHY 계층으로 전송될 수있다.
이와 다르게, 제1 엔드 노드(420)는 S914에서 제2 엔드 노드(430)의 전송 동작이 완료된 경우, 마스터 노드로 동작하는 엔드 노드(410)로부터 비콘(815)을 수신하고 전송 주기를 초기화할 수도 있다. 비콘(815)에는 제1 엔드 노드(420)가 전송 동작을 수행하기 위한 제2 시간 구간(820-1)에 대한 정보가 포함될 수 있다. 이 경우, 제1 엔드 노드(420)는 비콘(815)에 의해 지시되는 제2 시간 구간(820-1)에서 전송 동작을 수행할 수 있다.
S916에서 제3 엔드 노드(440)는 제3 시간 구간(830)에서 전송 동작을 수행할 수 있다. 제3 엔드 노드(440)의 전송 동작은 전송 요청 신호(813)에 포함된 타이머가 만료되고, 제1 엔드 노드(420)의 전송 동작이 완료된 후에 재개될 수 있다. 제3 시간 구간(830)은 제3 엔드 노드(440)가 전송 동작을 수행하는 타임 슬롯을 포함할 수 있다.
이와 다르게, 이전 제2 시간 구간(820)에서 전송 동작을 수행하는 것으로 예정되어 있던 제3 엔드 노드(440)는, 마스터 노드로 동작하는 엔드 노드(410)로부터 제1 엔드 노드(420)로 수신되는 비콘(815)에 의해 전송 주기를 초기화 할 수도 있다. 비콘(815)에는 제3 엔드 노드(440)가 전송 동작을 수행하기 위한 제3 시간 구간(830-1)에 대한 정보가 포함될 수 있다. 이 경우, 제3 엔드 노드(440)는 비콘(815)에 의해 지시되는 제3 시간 구간(830-1)에서 전송 동작을 수행할 수 있다.
본 발명은 엔드 노드에 실질적인 데이터가 존재하지 않는 아이들(IDLE) 슬롯 구간을 이용하여 긴급한 데이터의 전송을 요구하는 노드가 신속하게 전송 동작을 수행하도록 할 수 있다. 따라서 차량의 안전에 직접적으로 관련되는 브레이크(Brake) 또는 에어백(Airbag) 등의 동작이 신속하게 수행되도록 할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법으로서,
    상기 제1 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 모니터링 동작을 수행하는 단계;
    상기 모니터링 동작에 의해 제2 엔드 노드로부터 전송된 전송 요청 신호를 검출하는 단계; 및
    상기 전송 요청 신호가 검출된 경우, 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 중지하는 단계를 포함하며,
    상기 제1 시간 구간은 상기 제1 엔드 노드 대신에 상기 제2 엔드 노드의 통신을 위해 사용되는, 제1 엔드 노드의 동작 방법.
  2. 청구항 1에 있어서,
    상기 제1 엔드 노드는 PHY(physical) 계층의 기능을 수행하는 제1 엔터티(entity)와 MAC(medium access control) 계층의 기능을 수행하는 제2 엔터티를 포함하며,
    상기 전송 요청 신호가 검출된 경우, 상기 전송 요청 신호가 검출된 것을 지시하는 제1 지시자 및 상기 제1 시간 구간에서 충돌이 발생한 것을 지시하는 제2 지시자는 상기 제1 엔터티에서 상기 제2 엔터티로 전송되는, 제1 엔드 노드의 동작 방법.
  3. 청구항 2에 있어서,
    상기 제1 지시자 및 상기 제2 지시자가 상기 제2 엔터티에서 수신된 경우, 데이터는 상기 제2 엔터티에서 상기 제1 엔터티로 전달되지 않는, 제1 엔드 노드의 동작 방법.
  4. 청구항 1에 있어서,
    상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제2 엔드 노드에 의해 생성된 LPI(low power idle) 신호인, 제1 엔드 노드의 동작 방법.
  5. 청구항 1에 있어서,
    상기 전송 요청 신호는 상기 제2 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제2 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는, 제1 엔드 노드의 동작 방법.
  6. 청구항 1에 있어서,
    상기 전송 요청 신호는 상기 제2 엔드 노드의 전송 우선순위를 지시하는 정보를 포함하고, 상기 제2 엔드 노드의 전송 우선순위가 상기 제1 엔드 노드의 전송 우선순위보다 높은 경우에 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작은 중지되는, 제1 엔드 노드의 동작 방법.
  7. 청구항 1에 있어서,
    상기 전송 요청 신호는 상기 제2 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제1 엔드 노드의 전송 동작은 상기 타이머가 만료된 후에 재개되는, 제1 엔드 노드의 동작 방법.
  8. 청구항 7에 있어서,
    상기 제1 엔드 노드는 PHY 계층의 기능을 수행하는 제1 엔터티와 MAC 계층의 기능을 수행하는 제2 엔터티를 포함하며,
    상기 전송 요청 신호에 포함된 타이머는 상기 제1 엔터티에서 상기 제2 엔터티로 전달되며, 상기 타이머가 만료된 경우에 상기 제2 엔터티에서 상기 제1 엔터티로 데이터가 전달되는, 제1 엔드 노드의 동작 방법.
  9. 청구항 1에 있어서,
    상기 제1 엔드 노드의 동작 방법은,
    상기 제1 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 완료된 경우, 상기 제1 시간 구간 이후의 제2 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 더 포함하는, 제1 엔드 노드의 동작 방법.
  10. 청구항 1에 있어서,
    상기 제1 엔드 노드의 동작 방법은,
    상기 제1 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 완료된 경우, 제3 엔드 노드로부터 비콘(beacon)을 수신하는 단계; 및
    상기 비콘에 의해 지시되는 제2 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 더 포함하는, 제1 엔드 노드의 동작 방법.
  11. PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법으로서,
    전송될 데이터가 존재하는 것을 지시하는 전송 요청 신호를 생성하는 단계;
    제2 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 상기 전송 요청 신호를 전송하는 단계; 및
    상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 포함하며,
    상기 제1 시간 구간은 상기 제2 엔드 노드 대신에 상기 제1 엔드 노드의 통신을 위해 사용되는, 제1 엔드 노드의 동작 방법.
  12. 청구항 11에 있어서,
    상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제1 엔드 노드에 의해 생성된 LPI(low power idle) 신호인, 제1 엔드 노드의 동작 방법.
  13. 청구항 11에 있어서,
    상기 전송 요청 신호는 상기 제1 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제1 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는, 제1 엔드 노드의 동작 방법.
  14. 청구항 11에 있어서,
    상기 전송 요청 신호는 상기 제1 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제2 엔드 노드의 전송 동작은 상기 타이머가 만료된 후에 재개되는, 제1 엔드 노드의 동작 방법.
  15. 청구항 11에 있어서,
    상기 전송 요청 신호는 상기 제1 엔드 노드의 전송 우선순위를 지시하는 정보를 포함하고, 상기 제1 엔드 노드의 전송 우선순위가 상기 제2 엔드 노드의 전송 우선순위보다 높은 경우에 상기 제1 시간 구간에서 상기 제1 엔드 노드의 전송 동작이 수행되는, 제1 엔드 노드의 동작 방법.
  16. PLCA(physical layer collision avoidance) 기능을 지원하는 차량 네트워크에서 제1 엔드 노드(end node)의 동작 방법으로서,
    제2 엔드 노드의 통신을 위해 설정된 제1 시간 구간에서 제3 엔드 노드로부터 전송된 전송 요청 신호를 검출하는 단계;
    상기 전송 요청 신호가 검출된 경우, 상기 제1 엔드 노드의 통신을 위해 설정된 시간 구간을 제2 시간 구간에서 상기 제2 시간 구간 이후의 제3 시간 구간으로 변경하는 단계; 및
    상기 제3 시간 구간에서 상기 제1 엔드 노드의 전송 동작을 수행하는 단계를 포함하며,
    상기 제1 시간 구간에서 상기 제3 엔드 노드의 전송 동작이 수행되고, 상기 제1 시간 구간 이후의 상기 제2 시간 구간에서 상기 제2 엔드 노드의 전송 동작이 수행되는, 제1 엔드 노드의 동작 방법.
  17. 청구항 16에 있어서,
    상기 제1 엔드 노드는 PHY(physical) 계층의 기능을 수행하는 제1 엔터티(entity)와 MAC(medium access control) 계층의 기능을 수행하는 제2 엔터티를 포함하며,
    상기 전송 요청 신호가 검출된 경우, 상기 전송 요청 신호가 검출된 것을 지시하는 제1 지시자 및 상기 제1 시간 구간에서 충돌이 발생한 것을 지시하는 제2 지시자는 상기 제1 엔터티에서 상기 제2 엔터티로 전송되는, 제1 엔드 노드의 동작 방법.
  18. 청구항 16에 있어서,
    상기 전송 요청 신호는 EEE(energy efficient Ethernet) 기능을 지원하는 상기 제3 엔드 노드에 의해 생성된 LPI(low power idle) 신호인, 제1 엔드 노드의 동작 방법.
  19. 청구항 16에 있어서,
    상기 전송 요청 신호는 상기 제3 엔드 노드의 식별자를 포함하고, 상기 전송 요청 신호는 상기 식별자에 의해 지시되는 상기 제3 엔드 노드에서 전송될 긴급 데이터가 존재하는 것을 지시하기 위해 사용되는, 제1 엔드 노드의 동작 방법.
  20. 청구항 16에 있어서,
    상기 전송 요청 신호는 상기 제3 엔드 노드의 전송 시간을 지시하는 타이머를 포함하고, 상기 제1 엔드 노드의 전송 동작은 상기 타이머가 만료되고, 상기 제2 엔드 노드의 전송 동작이 완료된 후에 재개되는, 제1 엔드 노드의 동작 방법.
KR1020190132549A 2018-10-30 2019-10-23 차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치 KR20200049577A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/667,040 US11171807B2 (en) 2018-10-30 2019-10-29 Method and apparatus for allocating priority transmission opportunities in vehicle network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862752748P 2018-10-30 2018-10-30
US62/752,748 2018-10-30

Publications (1)

Publication Number Publication Date
KR20200049577A true KR20200049577A (ko) 2020-05-08

Family

ID=70677954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190132549A KR20200049577A (ko) 2018-10-30 2019-10-23 차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20200049577A (ko)

Similar Documents

Publication Publication Date Title
US11233750B2 (en) Method and apparatus for allocating transmission opportunities in vehicle network
KR20200109931A (ko) 차량 네트워크에서 웨이크업 신호의 송수신을 위한 방법 및 장치
US11171807B2 (en) Method and apparatus for allocating priority transmission opportunities in vehicle network
CN110535667B (zh) 用于选择性唤醒车辆网络中的通信节点的方法和装置
KR102338503B1 (ko) 차량 네트워크에서 웨이크업 신호의 송수신 방법
US10462069B2 (en) FlexRay communication using ethernet
KR102357886B1 (ko) 차량 네트워크에서 nm 기능을 지원하는 통신 노드의 동작 방법
KR20190130769A (ko) 차량 네트워크에서 통신 노드의 웨이크업 방법 및 장치
US20030070019A1 (en) Method and device for transmitting information on a bus system, and a bus system
US20140023068A1 (en) Controller area network communications using ethernet
US11616843B2 (en) Method and apparatus for operating communication node using network management function in vehicle network
KR102292827B1 (ko) 네트워크에서 통신 노드의 동작 방법
EP2064823A2 (en) Cluster coupler unit and method for synchronizing a plurality of clusters in a time-triggered network
CN106453148A (zh) 网络中通信节点的操作方法
KR102431490B1 (ko) 차량 네트워크에서 다중 도메인을 활용한 통신 노드의 동기화 방법 및 장치
US11343359B2 (en) Data transmission and reception method in vehicle network, and apparatus for the same
US20020037007A1 (en) Method for real-time communication between a number of network subscribers in a communication system using ethernet physics, and a corresponding communication system using ethernet physics
KR102431489B1 (ko) 차량 네트워크에서 다중 도메인을 활용한 통신 노드의 동기화 방법 및 장치
US11337184B2 (en) Method and apparatus for transmitting and receiving data stream performed in vehicle network
KR20200049577A (ko) 차량 네트워크에서 우선 전송 기회를 할당하는 방법 및 장치
KR102355085B1 (ko) 차량 네트워크에서 선택적 웨이크업을 위한 통신 노드의 동작 방법
KR20200049576A (ko) 차량 네트워크에서 전송 기회를 할당하는 방법 및 장치
KR20180057503A (ko) 차량 네트워크에서 시간 동기화를 위한 통신 노드의 동작 방법
KR102342000B1 (ko) 차량 네트워크에서 프레젠테이션 타임에 기초한 콘텐츠의 재생 방법 및 장치
KR20200106440A (ko) 자동 협상 기능을 이용한 데이터 송수신 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination