FlexRay 개발 배경
차량에서의 무수히 많은 제어 장치들, 센서들과 액츄에이터들 간의 데이터 교환은 주로 CAN(Controller Area Network)를 통해 이루어지며, 높은 대역폭을 필요로하지 않거나 고성능이 필요하지 않은 통신의 경우(EX. 문, 지붕, 창문 등)에는 Lin(Local Interconnect Network)을 통해 이루어짐.
또한, 차량들의 보다 높은 연결성과 편리성을 위해 제어 유닛들 간의 네트워크뿐만 아니라 무선데이터 서비스 장치들 간의 데이터 교환을 위한 다른 네트워크들의 장착이 꾸준히 증가하고 있다.
이러한 네트워크들은 대량 데이터의 신속한 교환에 맞게 설계된다.
제어 유닛들 간에 교환되는 데이터양이 늘어남에 따라 시간당 전송되어야 할 데이터의 양이 증가하면서, 시간 결정과 오류 허용한계와 관련된 수요가 증대되었다. 이러한 수요를 만족시키기 위해 FlexRay 프로토콜이 개발 되었다.
FlexRay는 자동차 제조업체와 주요 부품공급업체가 협력하여 개발한 내고장(Fault tolerant) 고속 버스 시스템이다. FlexRay는 x-by-wire 애플리케이션을 위한 오류 허용 및 시간 확정적인 성능을 제공
FlexRay 버스 동작 원리
CAN 프로토콜은 CSMA(Carrier Sense Multiple Access) 원칙에 따라 동작한다.
즉 각 노드는 버스를 관찰하다가 버스가 유휴상태가 되면 즉시 전송을 시작한다. 이 때 메시지 우선 순위에 의해 충돌을 방지한다. 메시지가 버스 상에 있는 시간은 일반적으로 예측 불가능하다.
FlexRay는 TDMA(Time Division Multiple Access) 원칙에 따라 동작한다. 즉 각 노드들은 정해진 시간(고정된 시간 슬롯)에 메시지를 전송할 수 있다.
이 원칙에 의해 충돌은 자연스럽게 예방되며, 메시지가 버스 상에 있는 시간 또한 정확히 예측할 수 있다.
FlexRay 특징
1. X-by-Wire를 위한 차량용 LAN 통신
2. 차량의 고속 제어를 위한 통신 인프라를 제공한다. 타임 트리거(Time Tirgger) 프로토콜로서 주기적으로 전송되는 데이터 전송방식을 제공하며 최대 전송 속도 10 Mbps이다.
3. 고신뢰성 프로토콜
4. 완전히 이중화된 네트워크의 구축이 가능하다. 또한 하드웨어에 의한 스케줄 감시가 가능하다.
5. 유연한 토폴로지 지원
FlexRay는 버스형, 스타형, 하이브리드형 등 여러 종류의 토폴로지를 지원한다.
FlexRay 토폴로지와 레이아웃
FlexRay는 간단한 멀티드롭 수동 연결부터 더욱 복합적인 네트워크를 위한 액티브 스타 연결까지 여러 종류의 토폴리지를 지원한다. 차량의 레이아웃과 FlexRay 사용 레벨 정도에 따라 적합한 토폴로지를 선택하여 디자인의 비용과 성능 그리고 안정성을 최적화할 수 있다.
- 멀티드롭 버스
CAN,LIN 버스에서 사용되는 것 과 동일한 토폴리지이다. 즉, 여러 ECU들이 단일 ECU들이 단일 네트워크 케이블에 연결되는 방식이다. 이는 1세대 FlexRay 차량에 보편적으로 적용된 토폴리지이다. 네트워크 끝에는 터미네이션 저항기가 설치되어있어 신호 반향 문제를 없애준다.
- 스타 네트워크
FlexRay 표준은 중앙 활성 노드에 연결되는 개별 링크로 구성된 스타구성을 지원한다. 능동 스타 구성을 통해 장거리에서도 FlexRay 네트워크의 실행이 가능하며, 네트워크 분할이 가능하므로 네트워크의 한 부분이 오작동할 경우에도 네트워크를 신뢰 할 수 있다.
- 하이브리드 네트워크
하이브리드 네트워크는 멀티드롭 버스와 스타 토폴리즈에 통합된거다. 미래의 FlexRay 네트워크는 편리한 사용과 버스 토폴로지의 비용 절감을 위해 하이브리드 네트워크로 구성될 것이다.
FlexRay 프레임 구성
정적 또는 동적 세그먼트의 각 슬롯에는 FlexRay 프레임이 있다. 프레임은 Header, Payload, Trailer의 3가지 세그먼트로 나누어진다.
헤더는 5bytes(40bits) 길이이며, 다음과 같은 필드를 포함
- 상태 비트(5bits)
- 프레임 ID (11bits)
- 페이로드 길이 (7bits)
- 헤더 CRC (11bits)
- 주기 카운트 (6bits)
1. 정적 세그먼트의 경우 프레임 ID : 전송되어야 하는 패킷의 슬롯을 나타낸다.
2. 동적 세그먼트의 경우 프레임 ID : 해당 패킷의 우선순위를 나타낸다.
3. 페이로드의 길이 : 프레임에서 전송되는 문자 개수를 나타낸다. 이때 최고 127자(254bytes)까지 전송 가능하며, 이는 CAN에 30배 이상 되는 수치이다.
4. 헤더 CRC : 전송 중 에러를 감지하는데 사용된다.
5. 주기 카운트 : 카운터 값이 포함되며, 이는 통신 주기가 시작하는 매 클럭마다 증가한다.
'Vehicle security' 카테고리의 다른 글
V2X 통신/보안 표준 (0) | 2024.06.23 |
---|---|
CAN Network (0) | 2024.06.23 |
V2X (0) | 2024.06.23 |
LIN Network (0) | 2024.06.23 |
CAN DoS Attack – Bus Off (0) | 2024.06.23 |