Automotive Bus System

자동차 부품산업은 전세계 연간 성장률 면에서 지난 5년간 8.3%로 예상되는 등, 전자부품 산업 전체에서 강력한 성장동력으로 급부상하고 있다. 과거 20년 전에는 일반적인 자동차에 탑재되는 전자장치라고 해야 라디오가 전부였다. 이후 전자점화, ECU (Engine Control Unit), 잠금장치 등이 기본 탑재되면서 자동차는 전자업계의 새로운 ‘기회의 땅’으로 부상하고 있다. 현재 자동차에 탑재되는 전자 기기류는 자동차 전체 제조가의 22% 이상을 차지하기에 이르렀다. 이와 함께 자동차 내부의 통신 네트워크에 대한 첨단 제어 시스템의 수요가 증가함에 따라 자동차 업계는 새로운 과제에 직면하게 되었다.새로운 기회 요인최근 몇 년간 자동차에 사용되는 전자부품의 수는 계속해서 급격하게 증가해 왔다. 한편에서는 새로운 많은 센서 및 액추에이터, 즉 새로운 전자 제어 장치가 승객에게 더욱 안전감을 더해 주기 위해 개발되고 있다. 또한 승객이 더욱 안락한 여행을 즐길 수 있도록 자동차에 엔터테인먼트 시스템 및 내비게이션이 도입되고 있다.오래 전부터 자동차의 배기량, 실시간 동작 및 가격 등 다양한 요구조건으로 인한 설계문제를 해결하기 위해서 여러 가지 새로운 버스 시스템이 개발되거나 개선돼 있다. 한 대의 자동차에는 요구조건이 다른 여러 가지 동작 분야와 관련된 상응하는 버스 시스템이 존재한다. 앞서 언급한 각각의 버스 시스템은 자동차의 전자장치 간에 필요한 통신을 하는데 가교 역할을 한다.설계자는 요구되는 안전수준과 데이터 통신 속도 및 비용을 고려하여 적당한 버스 시스템을 선택해야 한다. 예를 들면 CAN 버스는 비록 최근에 가장 중요한 자동차용 버스 시스템 중 하나가 되었지만, 멀티미디어 애플리케이션에서 필요한 고속 데이터 전송용으로는 적합하지 않다. 또한 CAN 버스 시스템은 선루프나 히팅 시스템 같은 낮은 데이터 전송 속도를 필요로 하는 애플리케이션에 있어서는 지나치게 복잡하고 너무 비싸다는 점이 지적된다. 이러한 애플리케이션을 위해 새로운 버스 시스템이 개발되었으며, 현재 자동차 내에 상호보완적으로 적용되고 있다. 예컨대 FlexRay, CAN, LIN은 주로 제어 시스템에 사용되는 반면, MOST는 원격조정 분야에서 사용된다.쪾 MOST : 최대 전송 속도가 동기 전송 모드에서 24.8Mbit/s이며 비동기 전송 모드에서는 14.4Mbit/s이다. 실시간 오디오 및 비디오 전송에 적합하다. 안전하게 데이터를 전송하기 위해서, EMC에 민감하지 않은 광학 매체(플라스틱 광섬유, POF)를 물리계층으로 사용한다.쪾 FlexRay : 채널 당 최고 10Mbit/s의 고속 통신 표준으로서, 2개의 채널을 사용하며 시간 트리거 방식으로 기간 통신 회선으로 사용하기에 적합한 안정성과 최고의 내부 통신 연결성을 제공한다. 대표적인 애플리케이션으로 X-by-wire가 있다.쪾 CAN : 최고 1Mbit/s의 중간 범위 속도를 특징으로 하며, 단 채널, 2선 및 내결함성을 가진 프로토콜로써 현재 자동차 이외의 다양한 산업 애플리케이션에서도 폭넓게 사용되고 있다.쪾 LIN : 최고 19.6kBit/s의 싱글 와이어 형태의 저가형 프로토콜로, 종단 노드에 주로 사용되는 표준이다.차량 멀티미디어 네트워킹 규격MOSTMOST(Media Oriented Systems Transport) 버스는 오디오, 비디오, 내비게이션, 통신 시스템 등 모든 종류의 자동차 멀티미디어 애플리케이션을 위해 BMW와 다임러크라이슬러의 주도 하에 1998년에 개발된 규격이다. 2004년 8월에 새로운 규격 2.3이 발표되었다.MOST 버스의 최대 전송 속도는 동기 전송 모드에서 24.8Mbit/s이며 비동기 전송 모드에서는 14.4Mbit/s이다. 이 버스는 최대 700kBit/s의 데이터 속도를 제공하는 추가 비동기 제어 채널을 가지고 있다. MOST 버스의 높은 데이터 전송 속도는 실시간 오디오 및 비디오 전송에 적합하다. 안전하게 데이터를 전송하기 위해, EMC에 민감하지 않은 광학 매체(플라스틱 광섬유, POF)를 물리계층으로 사용한다.또한 MOST 버스 시스템은 최대 64개의 PnP(plug&play) 로드를 지원하며 이것을 링, 스타 또는 체인 토폴로지로 배열할 수 있다. 이것은 매우 유연한 방법으로 모든 MOST 버스 시스템 부품을 연결할 수 있게 한다.MOST의 통신MOST 네트워크에서, 한 장치는 이 네트워크의 마스터가 된다. 이 장치는 타이밍 마스터라고 하며, 다른 모든 장치들은 슬레이브로 연결된다.MOST 규격에 따른 데이터 전송 체제를 그림 1에 나타냈다.제어 데이터 전송 작업과 네트워크 관리를 위해 프레임 블록에 데이터 전송 체제가 필요하다. 16프레임을 하나의 블록에 결합하고, 각 프레임은 512비트로 구성되어 있다.표 2는 이들 512비트의 구성을 전반적으로 제시했다.동기 데이터동기 영역은 오디오/비디오나 센서 값 등의 실시간 데이터 전송용으로 주로 사용된다. 데이터 액세스는 시분할다중송신방식(TDM: Time Division Multiplexing)을 이용하여 실현된다. 물리적 채널들은 예를 들어 음원(Audio source)을 재생하면서 일정 시간 동안 배정될 수 있다. 이것은 하나의 논리 채널에 대해 수 바이트를 배정하여 대역폭을 변경하는 것이 가능하다. 적당한 싱크(sink)로 동기 데이터를 전송하기 위해서 라우팅 엔진이 사용된다.1프레임의 동기 데이터 바이트 수는 60바이트로 제한되어 있다.비동기 데이터동기 데이터 외에 추가로 비동기 데이터를 전송할 필요가 있을 경우에는, 비동기 데이터의 시작을 정확하게 결정할 수 있도록 표 2에 소개된 바와 같이 바운더리 디스크립터(boun- dary descriptor)를 설정해야 한다. 비동기 데이터 전송은 더욱 큰 대역폭이 필요하다면 주로 보다 큰 블록에 사용된다. 하나의 비동기 채널에 비동기 데이터 바이트 수는 48바이트 데이터 링크층을 사용할 경우에 48바이트로 제한된다. alternative 데이터 링크층을 사용하면 최대 패킷 길이는 1014바이트이다.1프레임에서 비동기 영역의 구조는 표 3과 같이 구성된다.제어 데이터제어 데이터는 주로 분리된 버스 노드 간의 통신용으로 사용된다. 데이터 액세스는 고정되고 예측 가능한 반응시간을 제공하는 CSMA(Carrier Sense Multiple Access)를 사용하여 실현된다. MOST 통신의 경우 완전한 제어 데이터 메시지가 32바이트 길이라면 1프레임에 2바이트를 전송할 수 있으므로, 하나의 제어 데이터 메시지를 전송하기 위해서는 1블록(16프레임)이 필요하다.표 4에 제어 데이터 메시지의 구조를 제시한다.Safety-Critical 시스템을 위한 FlexRayFlexRay는 높은 데이터 전송 속도와 함께 매우 우수한 에러 관리가 요구되는 steer-by-wire 시스템이나 brake-by-wire 등과 같은 새로운 X-by-wire 시스템을 위해 1999년 BMW와 다임러크라이슬러의 주도 하에 특별히 개발되었다. 국내에서는 GM대우, 현대/기아자동차, 르노/삼성자동차 등이 Flex-Ray 컨소시엄에 참여하여 관련 기술을 개발하고 있다.FlexRay 컨소시엄은 2004년 6월 규격 2.0을 발표했으며, 최근 2.1 버전의 승인으로 능동적 댐핑 컨트롤을 위한 FlexRay가 선보이게 될 전망이다.FlexRay는 일찍이 BMW에서 개발한 통신 시스템인 “byteflight”를 기반으로 하고 있다. byteflight 방법은 새로운 버스 시스템의 요구조건을 만족시키기 위해, 순차 결정(chronological deterministic) 및 결함 허용(Fault Tolerance)에 대한 개선이 이루어졌다.FlexRay는 최대 대역폭 10Mbit/s로 데이터를 전송하므로 실시간 동작용으로 아주 적합하다. 또한 특별한 물리계층을 필요로 하지 않기 때문에 전기(Copper Line) 및 광학(Optical Fiber) 전송 매체를 모두 지원한다. 더욱이 FlexRay는 버스, 스타, 종속형 스타(cascaded star), 하이브리드 네트워크 토폴로지 등 다수의 네트워크 토폴로지들을 지원한다.FlexRay 통신CAN은 CSMA를 지원한다. 이것은 모든 장치가 전송을 시작하면 곧바로 다른 장치는 전송을 중지한다는 의미이다. 각각의 장치는 다른 우선순위를 가지고 있기 때문에 버스 상에서 충돌은 일어나지 않는다. 데이터가 버스 상에 있는 시간은 일반적으로 예측 불가능하며, 버스 접속은 비확정적(non-deterministic)이다.반면, FlexRay는 TDMA(Time Division Multiple Access)를 지원한다. 따라서 어떤 장치가 버스에 대해 배타적 액세스(exclusive access) 권한을 가지고 있는 동안 각 장치는 고정된 시간창(타임 슬롯)을 가지고 있다. 이런 타임 슬롯은 고정된 패턴으로 반복된다. 즉, 타임 슬롯은 정의된 간격으로 반복된다.TDMA를 이용하면, 데이터가 버스 상에 있는 시간을 정확히 예측할 수 있다(확정적인 버스 액세스). 그러나 모든 노드들은 이런 종류의 통신을 적절하게 처리하기 위해 같은 전역 시간(global time)을 가지고 있을 필요가 있다.그림 2는 4개의 장치가 FlexRay를 이용하여 데이터 전송을 하는 대표적인 예를 제시한다. 장치 A와 장치 C는 리던던트(redundant) 2채널을 가지고 있다.2채널은 리던던트 전송(그림 2에서 C1)이나 또는 동시에 2개의 메시지를 전송(그림 2에서 A1 및 A2)하는데 이용할 수 있다. 장치 B와 D는 채널 1에만 연결되어 채널 2에 대응하는 타임 슬롯은 사용되지 않고 경과한다.하나의 장치가 버스에 배타적 액세스 권한을 가지고 있지만 전송할 데이터가 없다면, 지정된 시간은 사용되지 않고 경과한다. 이런 경우에, 대역폭은 효율적으로 사용되지 못하게 된다. 그러나 한 장치가 하나의 타임 슬롯에 맞춰진 것보다 더 많은 데이터를 보내야만 한다면, 이 장치는 이 나머지 데이터를 보내기 위해서 다시 버스에 배타적 액세스 권한을 가질 때까지 대기해야 한다. 이런 문제를 해결하기 위해 FlexRay는 정적인 부분과 동적인 부분으로 통신 사이클을 분할한다. 정적인 부분에는 고정된 타임 슬롯이 지정되고, 동적인 부분에는 짧은 시간 동안 제한된 배타적 버스 액세스가 일어나는 동안 이른바 미니 슬롯(mini-slot)이라고 하는 추가적인 타임 슬롯을 가지고 있다. 이 짧은 시간 내에 버스 액세스만 일어난다면 미니 슬롯을 필요한 만큼 확장할 수 있다. 이것은 대역폭의 효율을 높일 수 있음을 의미한다.이 메시지 구조를 그림 3에 제시하고, 표 5에 간단히 설명을 해놓았다.자동차 버스 규격의 지존 CANCAN(Controller Area Network)은 자동차 내의 각종 계측제어 장비들 간에 디지털 시리얼 통신을 제공하기 위하여 1988년 보쉬와 인텔에서 개발한 차량용 네트워크 시스템으로, 1993년도에 ISO에서 국제표준 규격으로 제정되었다. 처음 개발된 것은 1986년 로버트 보쉬에 의해서다. 최고 속도 125kBit/s까지의 활용을 위해 ISO 11519로, 그리고 1Mbit/s까지의 활용을 위해 ISO 19898로 각각 표준화되었다.CAN은 다른 자동화 통신망에 비해 가격 대비 성능비가 우수하며, 지난 수년간 차량 내의 열악한 환경에서 성공적으로 동작되어 신뢰도가 검증된 통신망이다. CAN은 마스터/슬레이브, 다중 마스터(multiple master), 피어 투 피어(peer to peer) 등을 지원하는 매우 유연성 있는 네트워크이며 공장의 열악한 환경이나 고온, 충격이나 진동, 노이즈가 많은 환경에서도 높은 신뢰성을 제공한다.CAN 통신CAN에 의해 데이터가 교환될 때 어떠한 스테이션도 주소화 되지 않고 메시지의 내용(ex, rpm 혹은 엔진 온도 등)은 통신망에서 유일하게 존재하는 메시지 Identifier에 의해서 정해진다. Identifier는 메시지의 내용뿐 아니라 우선순위도 결정하는데, 이것은 여러 개의 스테이션이 동시에 버스를 액세스하려고 할 때 버스 할당을 위하여 중요하다.CAN에서는 content-oriented 어드레싱 구조에 의해 구성의 융통성을 꾀할 수 있으며, 새로운 스테이션이 순수한 수신기라면 어떠한 하드웨어나 소프트웨어의 변경 없이 현존하는 CAN 통신망에 붙일 수 있다. 또한 데이터 전송 프로토콜이 물리적인 도착지의 주소를 필요로 하지 않기 때문에 modular electronics의 개념을 지원하고, 또한 broadcast나 multicast와 같은 다중 수신과 분산처리의 동기화를 허용하여 여러 개의 컨트롤러에서 정보로 필요로 하는 측정값들이 통신망을 통해 전송될 수 있으므로 각각의 컨트롤러가 자신만의 센서를 가지고 있을 필요가 없다.실시간 처리에 있어서 통신망에서 교환되는 메시지의 긴급성은 메시지의 내용에 따라 매우 다를 수 있다. 예를 들어 엔진 부하와 같이 빠르게 변하는 것은 엔진 온도와 같이 상대적으로 느리게 변화하는 것보다 좀더 자주, 그리고 좀더 작게 지연이 일어나도록 전송되어져야 한다.전송되는 메시지의 우선순위는 해당 메시지의 Identifier에 의해 결정되어지는데, 시스템을 디자인하는 동안 결정되며, 이진법에 의해 표현되고 동적으로 변할 수 없으며 가장 낮은 이진수를 갖는 Identifier가 가장 높은 우선순위를 갖는다.버스 액세스 충돌은 버스 레벨의 비트를 관찰하고 있는 각각의 스테이션에 의해 메시지 Identifier에서 bitwise arbitration을 통해 해결되는데, Dominant 상태(0)가 recessive 상태(1)를 덮어쓰는 ‘Wired and’ 메커니즘과 동일한 메커니즘에 의해 버스 할당의 경쟁은 해결된다. 경쟁에서 패배한 모든 스테이션들은 가장 높은 우선순위를 갖는 메시지의 수신기가 되고 버스가 다시 사용가능할 때까지 전송을 재시도 하지 않는다.CAN은 분산 버스 액세스 컨트롤을 갖는 non-destructive 버스 액세스에 의해 높은 데이터 전송을 가능하게 하는 traffic-dependent 버스 할당 시스템으로 구현되고, 전송 요구가 있는 스테이션들에게만 버스가 이용되기 때문에 버스 arbitration 절차의 효율성이 향상된다. 또한 메시지 전송요구는 시스템 전체에 대한 메시지의 중요한 순서에 따라 처리되는데, 이것은 특히 과부하 상태에서 장점을 갖는다. 그리고 버스 액세스는 메시지에 기반을 두고 우선순위가 정해지기 때문에 실시간 시스템에서 낮은 지연시간의 보장을 가능하게 해준다.지능형 액추에이터나 센서 연결 LINLIN(Local Interconnect Network)은 CAN보다 저렴하면서도 복잡하지 않고 더욱 정교한 애플리케이션 요구를 지원하기 위해 개발되었다. LIN 규격은 초기 멤버인 BMW, 다임러크라이슬러, 아우디, 볼보, 모토로라, VW, 볼카노 등의 컨소시엄이 정의했다. LIN 컨소시엄은 2003년 9월 LIN 2.0 규격을 발표했다.LIN 버스는 소형 모터, 온도 및 강우 센서, 선루프 또는 난방 제어 등 일반적으로 지능형 액추에이터나 센서를 연결하는데 사용된다. 이런 애플리케이션에 있어서, 높은 데이터 전송속도나 복잡한 고장 관리는 필요하지 않다. 이것이 최대 19.6kBit/s의 데이터 전송 속도를 지원하는 이유다. 이런 전송 속도에서 전송 매체로는 경제적인 12V 싱글 와이어면 충분하다.LIN은 SCI(UART) 8비트 인터페이스를 기반으로 하며 단일-마스터/다중 슬레이브 개념을 지원한다. 이러한 개념에서 LIN 클러스터는 하나의 마스터 노드와 여러 개(최대 15개)의 슬레이브 노드로 구성되어 있다. UART 인터페이스는 거의 모든 마이크로컨트롤러나 ASIC에서 지원되며, 어떤 소프트웨어나 펌웨어로도 구현할 수 있다. 이로 인해, 다른 값비싼 외부 부품을 사용할 필요가 없다. 한 개의 마스터 노드와 세 개의 슬레이브 노드를 가진 전형적인 LIN 클러스터를 그림 4에 제시했다.그림은 마스터 노드가 마스터 태스크는 물론 슬레이브 태스크를 모두 수행한다는 것을 보여준다.이 간단한 개념에 의해, LIN 네트워크 내에 마스터를 제외한 노드는 다른 슬레이브를 추가하거나 제거해도 영향을 받지 않는다. 이런 경우에, 단지 필요한 변경은 마스터 노드와 관련이 있다.LIN의 특별한 기능은 추가적인 크리스털이나 공진기 없이 마스터로 슬레이브 로드의 클록 속도를 조정하는 동기화 메커니즘이다.LIN 버스 시스템은 단일 와이어 전송 및 간단한 클록 속도의 조정을 간단한 UART 통신으로 실현할 수 있기 때문에 매우 경제적이다.LIN 통신그림 5는 LIN 버스 메시지 프레임 구조를 나타낸다. LIN 버스를 통해 전송되는 데이터 단위를 프레임이라고 한다.모든 LIN 버스 메시지 프레임은 마스터가 헤더를 전송하면서 시작된다. 이 헤더는 Break byte 필드, Synch byte 필드, prote-cted identifier로 구성된다. requested res-ponse를 슬레이브가 전송하기 전에 이른바 response space라고 하는 짧은 정지 구간이 존재한다.각 프레임의 끝에 interframe space는 다음 프레임의 break byte가 다시 낮은 수준으로 버스 라인을 점유하기까지 높은 수준으로 LIN 버스를 풀링(pulls) 한다. 각각의 슬레이브는 Break byte 필드를 검출하자마자 신속하게 경고상태(alert state)가 된다. 뒤이은 Synch byte 필드는 다음 전송을 위해 마스터로 슬레이브를 동기화 한다.Synch 시퀀스는 항상 데이터 값 0×55로 바이트 필드를 유지하므로, 네트워크 내에 모든 슬레이브 노드들은 이 신호의 가장자리를 검출함으로써 마스터의 클록에 쉽게 동기화 될 수 있다.Break byte 필드에서, LIN 버스 상의 낮은 수준이 최소 13비트 기간 동안 유지되다가 뒤이어 최소 1비트 기간 동안 높은 수준으로 유지된다. 하나의 LIN 메시지에서 다른 모든 byte field 구조를 그림 6에 제시했다.처음에, 거의 모든 UART 통신에 의해 알려진 낮은 수준의 시작 비트(start bit)가 있고 이어서 8 데이터 비트(LSB first)가 있다. 이 byte 필드는 스톱 비트(stop bit)로 완성된다. 따라서 1바이트에 대해서 10비트가 송신되게 된다.protected identifier 바이트 필드의 구조는 그림 7과 같다. protected identifier와 response space 이후에 슬레이브는 requested response를 보내기 시작하거나 또는 더 많은 데이터를 기다린다. 이러한 response는 1 체크섬(CheckSum) 바이트 필드를 합쳐 8 데이터 바이트까지 포함할 수 있다.LIN2.0 규격의 발표로 새로운 체크섬 계산이 도입되었다. LIN1.3 규격과의 호환성을 유지하기 위해서, 이전 체크섬 계산 형식을 LIN2.0도 지원한다. 새로운 체크섬은 향상된 체크섬이라고 부르며 protected identifier를 더한 모든 올림 비트(carry bit) 데이터 바이트와 함께 반전된 8비트 합(inverted 8bit sum)으로 계산한다. LIN1.3 체크섬은 고전 체크섬이라고 부르고 앞서 기술한 방법으로 계산하지만 protected identifier가 없다.오늘날 자동차 메이커는 안전성과 안정성, 제어성과 쾌적성, 보다 높은 인포테인먼트성 등을 제공함으로써 타사와의 차별화를 도모하고 있다. 그러나 이 도입에는 차내에 분산되는 전자 장치를 효율적이면서도 효과적으로 네트워킹 할 신뢰성 높은 최신 네트워크 기술 및 프로토콜이 필요하다. 앞서 소개한 MOST, FlexRay, CAN, LIN 등은 가장 활발하게 도입이 진행되고 있는 버스 규격들이다. 이밖에도 자동차용 네크워크 기술 및 프로토콜에는 J1850, Byteflight, J1939, TTP(Time-Triggered Protocol), TTCAN(Time-Triggered CAN), IDB-1394, USB(Universal Serial Bus), D2B/SMARTwireX 등이 있지만 지면관계 상 다음을 기약하기로 한다.
회원가입 후 이용바랍니다.
개의 댓글
0 / 400
댓글 정렬
BEST댓글
BEST 댓글 답글과 추천수를 합산하여 자동으로 노출됩니다.
댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글수정
댓글 수정은 작성 후 1분내에만 가능합니다.
/ 400
내 댓글 모음
저작권자 © 테크월드뉴스 무단전재 및 재배포 금지