KR101507016B1 - 플랙스레이 네트워크를 위한 메시지 패킹 방법 - Google Patents

플랙스레이 네트워크를 위한 메시지 패킹 방법 Download PDF

Info

Publication number
KR101507016B1
KR101507016B1 KR20130158285A KR20130158285A KR101507016B1 KR 101507016 B1 KR101507016 B1 KR 101507016B1 KR 20130158285 A KR20130158285 A KR 20130158285A KR 20130158285 A KR20130158285 A KR 20130158285A KR 101507016 B1 KR101507016 B1 KR 101507016B1
Authority
KR
South Korea
Prior art keywords
message
packing
static
slot
base cycle
Prior art date
Application number
KR20130158285A
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 KR20130158285A priority Critical patent/KR101507016B1/ko
Application granted granted Critical
Publication of KR101507016B1 publication Critical patent/KR101507016B1/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/40143Bus networks involving priority mechanisms
    • H04L12/40156Bus networks involving priority mechanisms by using dedicated slots associated with a priority level
    • 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
    • H04L12/4015Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
    • 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/40241Flexray

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화하기 위하여 FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하는 플랙스레이 네트워크를 위한 메시지 패킹 방법에 관한 것으로, 메시지의 패킹을 노드별로 실행하고 메시지의 ID가 빠른 것에 중요도를 부여하기 위해 노드와 메세지의 분류작업을 실행하는 단계;정적 슬롯 사이즈를 계산하는 단계;FF(First Fit)/BF(Best Fit)패킹을 하고, 패킹에 사용된 정적 슬롯 개수로 최소 베이스 사이클과 최대 베이스 사이클을 설정하는 단계;α(사용율), β(송신지연), γ(송신효율)의 가중치를 설정하여 평가함수로 결과를 평가하고 저장하는 단계;를 포함하는 것이다.

Description

플랙스레이 네트워크를 위한 메시지 패킹 방법{Message packing method for FlexRay network}
본 발명은 플랙스레이(FlexRay) 네트워크 설계에 관한 것으로, 구체적으로 FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화하기 위하여 FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하는 플랙스레이 네트워크를 위한 메시지 패킹 방법에 관한 것이다.
자동차가 개발된 이후 많은 발전이 있었지만 그 중에도 운전자의 의지를 전달하는 방식에 커다란 변화가 있었다
특히, 전자제어장치(Electric Control Unit, ECU)간의 데이터 전송을 이용하여 차량을 제어할 수 있게 되면서 point-to-point 전송 방식을 이용하였다.
그러나 차량이 발전하게 되면서 차량의 기능이 증가하게 되었고 point-to-point방식을 사용하는 차량의 배선 무게와 차량을 제작할 때의 복잡도, 연비감소 등의 단점을 가지게 되는 등의 이유로 point-to-point방식에서 CAN(Controller Area Network), FlexRay와 같은 네트워크 방식으로 바뀌게 되었다.
CAN은 1985년 Bosch사에서 최초로 개발되어 차량 네트워크를 대표하는 차량용 네트워크로 상당한 대중화를 이루었지만 이 역시 각종 센서들과 편의장치의 증가로 인해 트래픽(traffic)이 증가하게 되었으며 ABS(Anti-lock Brake System), air bag, ESC(Electronic Stability Control), ACC(Advanced Cruise Control), TPMS(Tire Pressure Measurement System), 나이트비젼(night vision), 네비게이션(navigation) 등의 각종 안전 시스템과 운전자 편의 시스템이 개발되면서 CAN만으로는 그 많은 용량과 요구하는 속도에 한계를 가지게 되었다.
이러한 문제점을 극복하기 위해 2004년 BMW, Daimler-AG, Motorola, Philips를 주축으로 FlexRay 컨소시엄을 만들어 새로운 차량용 네트워크 프로토콜이 개발되었다.
CAN 프로토콜의 1Mbps(mega bit per second)과 비교하여, FlexRay는 10Mbps의 빠른 통신 속도를 지원하고 시분할 다중 통신(time division multiplex communication, TDMA)으로 확정된 전송 지연, 결함허용(fault tolerance), 높은 리던던시(redundancy)의 가능을 가지는 장점을 갖는다.
그리고 CAN의 장점 중 하나인 이벤트 트리거(event-triggered) 통신방식을 FlexRay 프레임의 동적 구간(dynamic segment)으로 지원하였으며, 타임 트리거(time-triggered) 통신방식을 정적 구간(static segment)에 지원함으로써 두 통신방식의 장점을 동시에 취하여 확정적 전송이 가지는 단점을 보완하는 장점 또한 가지고 있다.
시분할 다중 통신의 특징을 갖는 FlexRay는 자연히 이 방식의 장단점을 유지하게 되는데 그 단점 중 하나가 잘못된 네트워크 스케쥴링은 높은 비효율을 발생 시킨다는 것이다.
즉, FlexRay와 같은 시분할 다중 방식을 사용하는 네트워크에서는 특정 구간에 메시지가 몰리고, 나머지 구간에서는 메시지가 거의 없다던지, 전체 구간에서의 메시지 효율은 높지만, 전송 지연이 높은 경우가 발생한다.
종래 기술의 FlexRay 네트워크 설계 방법은 이러한 문제를 해결하기 위한 표준절차나 체계가 없이 설계자가 임의로 설계하였는데, 이 경우 발생하는 잘못된 네트워크 스케쥴링은 높은 비효율을 발생시킨다는 것이다.
이것을 보완하기 위해서는 적용될 분야, 적용할 프로토콜, 적용할 메시지에 대한 높은 지식과 경험을 요구하게 되어 설계와 개발에 많은 비용을 들여야 하기 때문에 차량의 자체 생산 비용을 높이게 된다.
또한, FlexRay에는 많은 파라미터(parameter)가 존재하고 이 파라미터들은 서로가 상관 관계를 가지고 구성되고 있어, 모든 조합 결과를 고려하여 스케쥴링을 하려면 전문적인 네트워크 설계자가 있어야 하며 각각의 다른 차량모델마다 스케쥴링 결과를 달리하여 적용하여야 하는 비효율적인 문제가 있다.
이러한 문제를 해결하기 위한 스케줄링에 대한 평가지표를 설정 및 최적화 방법의 개발이 요구되고 있다.
한국공개특허 제10-2013-0058915호 한국공개특허 제10-2011-0057779호
본 발명은 이와 같은 종래 기술의 FlexRay 네트워크 설계 방법의 문제를 해결하기 위한 것으로, FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화하기 위하여 FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하는 플랙스레이 네트워크를 위한 메시지 패킹 방법을 제공하는데 그 목적이 있다.
본 발명은 패킹 알고리즘(packing algorithm)의 하나인 FF(First Fit)알고리즘과 BF(Best Fit)알고리즘 적용시켜 정적슬롯의 사용율을 증가시킬 수 있도록 한 플랙스레이 네트워크를 위한 메시지 패킹 방법을 제공하는데 그 목적이 있다.
본 발명은 다양한 메시지주기에서 최적의 슬롯 길이를 계산하기 위하여 모든 메시지 주기를 계산에 포함하고 송신지연(transmit delay)을 최소화할 수 있는 수식을 개발하여 효율적으로 스케쥴링을 할 수 있도록 한 플랙스레이 네트워크를 위한 메시지 패킹 방법을 제공하는데 그 목적이 있다.
본 발명은 FlexRay 네트워크를 설계할 때 많은 지식과 경험이 없이도 설계자가 FlexRay 프로토콜로 네트워크를 설계할 수 있도록 하기 위해 원하는 네트워크 설계사양을 가중치로 표현하여 같은 메시지들이라도 가중치에 따라서 다른 결과가 나오도록 한 플랙스레이 네트워크를 위한 메시지 패킹 방법을 제공하는데 그 목적이 있다.
본 발명의 목적들은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
이와 같은 목적을 달성하기 위한 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법은 메시지의 패킹을 노드별로 실행하고 메시지의 ID가 빠른 것에 중요도를 부여하기 위해 노드와 메세지의 분류작업을 실행하는 단계;정적 슬롯 사이즈를 계산하는 단계;FF(First Fit)/BF(Best Fit)패킹을 하고, 패킹에 사용된 정적 슬롯 개수로 최소 베이스 사이클과 최대 베이스 사이클을 설정하는 단계;α(사용율), β(송신지연), γ(송신효율)의 가중치를 설정하고, 슬롯 낭비율f(u), 전송 지연f(d), 메시지 전송률f(t)의 각각의 평가함수에 α,β,γ의 가중치를 곱하여 전체 평가함수
Figure 112014118284968-pat00018
으로 평과 결과 f(p)를 계산하고 저장하는 단계;를 포함하는 것을 특징으로 한다.
여기서, 사용율(Utilization)의 평가함수는 패킹된 슬롯의 사용율을 나타내는 것으로,
Figure 112013116005966-pat00001
으로 계산되고, 여기서, Message.Lengthi = i번째 메세지의 데이터 길이, Total Static Slot = 패킹에 사용된 정적 슬롯의 총 개수, Static Slot Size = 패킹에 사용된 정적 슬롯의 페이로드 길이(byte)인 것을 특징으로 한다.
그리고 최소 베이스 사이클과 최대 베이스 사이클을 설정하는 단계에서, 베이스 사이클이 최대값이 아니라면 1μsec씩 올려가면서 패킹을 계속진행하고 베이스 사이클이 최대값이라면 정적슬롯 크기를 체크하고, 만약 정적슬롯의 크기가 최대가 아니라면 계산했었던 베이스사이클을 초기화하고 슬롯크기를 2바이트만큼 늘려서 다시 베이스 사이클을 계산하고 2바이트 증가된 정적슬롯의 결과를 도출하는 것을 특징으로 한다.
이와 같은 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법은 다음과 같은 효과를 갖는다.
첫째, FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하여 FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화할 수 있다.
둘째, 패킹 알고리즘(packing algorithm)의 하나인 FF(First Fit)알고리즘과 BF(Best Fit)알고리즘 적용시켜 정적슬롯의 사용률을 증가시킬 수 있다.
셋째, 다양한 메시지주기에서 최적의 슬롯 길이를 계산하기 위하여 모든 메시지 주기를 계산에 포함하고 송신지연(transmit delay)을 최소화할 수 있는 수식을 개발하여 효율적으로 스케쥴링을 할 수 있다.
넷째, 원하는 네트워크 설계사양을 가중치로 표현하여 같은 메시지들이라도 가중치에 따라서 다른 결과가 나오도록 하여 많은 지식과 경험이 없이도 설계자가 FlexRay 프로토콜로 네트워크를 설계할 수 있다.
도 1은 플랙스레이 구조를 나타낸 구성도
도 2는 플랙스레이 프레임 포맷 구성도
도 3은 플랙스레이 프레임 포맷의 전체 구성도
도 4는 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 과정을 나타낸 플로우 차트
도 5는 본 발명에 따른 평가 함수 설정을 위한 딜레이 계산을 위한 알고리즘 구성도
도 6은 본 발명에 따른 평가 함수 설정을 위한 딜레이 구간의 상태를 나타낸 구조도
도 7은 베이스 사이클이 메시지 사이클보다 큰 경우를 계산하는 알고리즘 구성도
도 8은 메시지 전송 효율을 나타낸 딜레이 구간의 상태를 나타낸 구조도
이하, 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법의 바람직한 실시 예에 관하여 상세히 설명하면 다음과 같다.
본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법의 특징 및 이점들은 이하에서의 각 실시 예에 대한 상세한 설명을 통해 명백해질 것이다.
도 1은 플랙스레이 구조를 나타낸 구성도이고, 도 2는 플랙스레이 프레임 포맷 구성도이고, 도 3은 플랙스레이 프레임 포맷의 전체 구성도이다.
그리고 도 4는 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 과정을 나타낸 플로우 차트이다.
본 발명은 FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화하기 위하여 FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하는 것이다.
도 1에서와 같이, FlexRay의 구조는 유전자코드와 같이 각각의 의미있는 비트(bit)들이 모여 전체 구조를 이룬다. 전체 사이클(cycle)은 0~63 즉 64개의 사이클로 구성되어있으며 이 64개의 사이클이 차례대로 FlexRay의 매 기본주기(base cycle)마다 전송이 된다.
하나의 사이클은 정적구간(static segment), 동적구간(dynamic segment), 심볼윈도우(symbol window), 네트워크유휴시간(Network Idle Time, NIT)으로 구성되어 있다.
정적구간은 확정적, 즉 주기적 통신을 보장하는 구간으로 지연 및 지터(jitter, 통신 주기의 변동성)를 일정하게 유지하는 것이 필요한 메시지를 전송하는 데 사용된다.
주로 브레이크, 스티어링 등 안전에 매우 중요한 메시지들을 처리한다. 동적구간은 CAN과 비슷한 이벤트 트리거(event trigger, 확률적인 전송) 특성을 가지고 있으며 비주기적인 데이터를 처리한다.
심볼 윈도우는 프로토콜에 정의된 CAS(Collision Avoidance Symbol), MTS(Media access Test Symbol), WUS(Wake Up Symbol)와 같은 심볼을 전송할 수 있으며, 네트워크에서 시간 동기화를 위한 알고리즘 계산시간과 클럭보정시간, 오류처리시간, 오류 지표 업데이트 등을 충분히 보장할 수 있게 해준다
그리고 도 2에서와 같이, FlexRay의 구조에서 한 단계 더 자세히 들여다 보면 각 cycle의 요소들이 어떻게 구성되어 있는지 알 수 있다.
정적구간은 n개의 슬롯(slot)으로 구성되어 있으며 각각의 슬롯들은 도 2와 같은 슬롯의 상태정보를 가지고있는 헤더(header)와 슬롯이 가지는 헤더에 오류(error)가 있는지 알 수 있는 순환중복검사(Cyclic Redundancy Check, CRC)으로 구성되어있는 트레일러(trailer), 전송하려는 데이터가 들어가는 페이로드(payload) 세가지로 구성되어 있다.
동적구간은 정적구간과 조금 다른 미니슬롯(mini slot)으로 구성된다.
정적 구간과 같이 모든 클러스터 내의 미니 슬롯의 크기, 길이, 개수는 동일하게 할당되어야 한다. 하지만 미니 슬롯은 정적 슬롯의 마지막 슬롯 번호보다 하나 큰 값부터 시작되며, 정적 슬롯과 동일한 방법으로 슬롯번호가 할당된다.
정적구간의 송신이 끝나면 동적구간의 송신이 시작되는데 이때 정적구간과는 달리 노드들이 비규칙적으로 메시지를 동적구간에 메세지를 삽입하게 되는데 만약 어떤 노드가 프레임을 삽입할 때 동적구간이 끝나게 되면 그 프레임의 송신을 포기하게 된다.
이 부분이 FTDMA(Frequency Time Division Multiple Access)방식으로 FlexRay가 CAN의 장점을 동시에 가지는 것을 보여주는 부분이다.
도 3은 FlexRay의 구조에서 출발하여 프레임포멧까지 모두 보여주는 전체 모습이다.
정적구간과 동적구간의 슬롯 구조는 트레일러에 들어있는 몇 개의 비트 빼고는 완전히 동일하다.
헤더에는 시작, 동기화, 빈프레임 등의 정보를 알려주는 헤더들이 있고 데이터 영역에는 실제로 데이터가 실리는 부분을 의미하며 0-127words(1word=2byte)까지 송신이 가능하며 전체 데이터 오류를 계산하기 위한 트레일러로 구성된다. 페이로드 부분이 본 발명에서 빈 패킹 알고리즘(bin packing algorithm)이 적용되는 프레임 부분이다.
FlexRay 스케쥴링은 정적구간의 하나의 슬롯(slot)에 하나의 메시지 배치를 원칙으로 하고 있다. 하지만 다양한 데이터 길이를 가지는 메시지가 늘어난다면 이 스케쥴링 방법은 비효율적인 스케쥴링 방법이 된다.
왜냐하면 메시지의 데이터 길이는 다양하며 슬롯의 길이를 하나로 정하여 메시지들을 슬롯에 배치하게 된다면 메시지들의 길이 편차에 의하여 슬롯의 사용률이 떨어지는 일이 발생 할 수 있기 때문이다.
이를 개선하기 위하여 본 발명에서는 패킹 알고리즘(packing algorithm)의 하나인 FF(First Fit)알고리즘과 BF(Best Fit) 알고리즘을 적용시켜 정적슬롯의 사용율을 증가시키는 방법을 제안한다.
또한, 다양한 메시지주기에서 최적의 슬롯 길이를 계산하기 위하여 모든 메시지 주기를 계산에 포함하고 송신지연(transmit delay)을 최소화할 수 있는 수식을 개발하여 효율적으로 스케쥴링을 할 수 있도록 한 것이다.
그리고 FlexRay 네트워크를 설계할 때 많은 지식과 경험이 없이도 설계자가 FlexRay 프로토콜로 네트워크를 설계할 수 있도록 하기 위해 원하는 네트워크 설계사양을 가중치로 표현하여 같은 메시지들이라도 가중치에 따라서 다른 결과가 나오도록 설계하도록 한다.
이와 같이 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법은 FlexRay 네트워크의 스케줄링 평가지표 최적화 기술, 최초적합법을 이용한 FlexRay의 정적 슬롯 크기 결정 방법, 최적적합법을 이용한 FlexRay의 정적 슬롯 크기 결정 방법을 포함한다.
본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법은 FF(First Fit), BF(Best Fit) 알고리즘이 하나의 실행절차로 실행 되게 된다.
도 4의 플로우 차트를 참고하여 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법을 설명하면 다음과 같다.
먼저, 메시지의 패킹을 노드별로 실행하고(S401) 메시지의 ID가 빠른 것에 중요도를 부여하기 위해 노드와 메세지의 분류작업을 실행한다.(S402)
만약, 기존 CAN에서 사용되는 메시지를 FlexRay로 옮기는 경우라면 CAN에서 빠른 ID는 높은 중요도를 의미하기 때문에 CAN 정보를 참고하게 되겠지만 새롭게 FlexRay 네트워크를 설계한다면 메시지 정보에 중요도를 설정하여 패킹결과에 반영시킬 수 있다.(S403)
본 발명의 일 예에서는 전체 메시지에 ID를 차례대로 설정하고 다섯 단계로 나누어서 1 ~ 5까지 중요도를 부여하는데, 이것은 사용자가 원하는 대로 수정가능한 부분이다.
그리고 정적 슬롯 사이즈를 계산한다.(S404)
최소 정적슬롯 사이즈는 메세지중 가장 큰 데이터 길이로 정하고 최대 정적슬롯 사이즈는 총 메시지 길이 합이 가장 긴 노드의 데이터 길이이다.
왜냐하면 노드들 중 가장 긴 데이터 길이의 합만큼 정적 슬롯의 크기가 커지게 되면 모든 노드들의 메시지가 각각의 슬롯에 한꺼번에 들어가게 되어 노드수와 슬롯 수가 같아지는 지점이기 때문이기 때문에 더 이상의 슬롯크기를 증가시켜도 사용률이 낮아질 뿐 높아지지 않기 때문이다.
이어, FF/BF 패킹을 하고(S405), 패킹에 사용된 정적 슬롯 개수로 최소 베이스 사이클과 최대 베이스 사이클을 설정한다.(S406)
최소는 베이스 사이클 계산식을 이용해서 얻을 수 있고 최대 베이스 사이클은 메시지들중 가장 작은 주기로 설정한다.
평가함수로 결과를 평가하게 되고 α(사용율), β(송신지연), γ(송신효율)의 가중치를 설정하여 설계자가 원하는 방향으로 평가 결과를 종합하고 저장한다.(S407)
만약 베이스 사이클이 최대값이 아니라면 1μsec씩 올려가면서 패킹을 계속진행하고 베이스 사이클이 최대값이라면 정적슬롯 크기를 체크하게 되는데 만약 정적슬롯의 크기가 최대가 아니라면 계산 했었던 베이스사이클을 초기화하고 슬롯크기를 2바이트만큼 늘려서 다시 베이스 사이클을 계산하고 2바이트 증가된 정적슬롯의 결과를 도출한다.(S408)
여기서, 만약 슬롯의 크기가 최대치라면 알고리즘을 마친다.
그리고 평가 함수의 설정은 다음과 같이 이루어진다.
평가함수는 총 3가지로 슬롯 사용율(Utilization), 전송지연(Transmission Delay), 메시지 전송률(Message Transmission Ratio)로 나누어진다. 그리고 총 합으로 평가를 한다.
먼저 사용율(Utilization)의 평가함수는 패킹된 슬롯의 사용율을 보여준다.
Figure 112013116005966-pat00002
여기서, Message.Lengthi = i번째 메세지의 데이터 길이, Total Static Slot = 패킹에 사용된 정적 슬롯의 총 개수, Static Slot Size = 패킹에 사용된 정적 슬롯의 페이로드 길이(byte)이다.
즉, 패킹에 사용될 모든 메시지의 합에 사용된 총슬롯의 길이를 나누면 사용율이 계산된다.
100%의 사용율을 의미하는 1이 최대값으로 나온다. 또한 1에 f(u)의 결과를 빼면 낭비율을 구한다. 다음은 전송지연(Transmission Delay)의 평가함수는 모든 메시지 사이클과 베이스 사이클의 차이에 의한 전송지연을 계산하여 전체 평균을 계산한다.
먼저, 두 가지의 경우로 계산을 할 수 있다.
첫째는 베이스 사이클이 메시지 사이클보다 작은 경우이다. 이 경우 전송을 목표로 하는 메시지는 딜레이가 존재 하지만 100% 전송이 되는 경우이다.
둘째는 베이스 사이클이 메시지 사이클보다 큰 경우인데, 목표로 하는 메시지의 베이스 사이클안에 여러번 나가게 되면 베이스 사이클내에서 앞쪽에 생성된 전송 데이터는 사라지고 맨 마지막 데이터가 베이스 사이클에 전송이 된다.
이 경우 메시지 사이클이 잘못 설계된 경우이거나 베이스 사이클이 잘못 지정된 경우이다.
메시지 사이클이 잘못 설계된 경우는 모든 정적 슬롯의 길이를 합쳤는데 최소 메시지 베이스 사이클이 메시지들중 가장 작은 주기보다 크게 되었을 때 이와 같은 현상이 일어난다.
베이스 사이클이 잘못 지정된 경우 최소 메시지 베이스 사이클보다 작게 베이스 사이클을 지정할 수 있음에도 오류로 인에 최소 메시지 사이클보다 크게 설계된 경우이다.
딜레이를 계산하는 방법은 베이스사이클과 메시지사이클이 다른 숫자라면 각각의 사이클이 진행함에 있어서 일정한 패턴의 딜레이를 보여준다.
이때 반복이 되는 한 구간의 딜레이를 계산하여 전체 메시지 수로 나누는 것이다. 우선 베이스 사이클이 메시지 사이클보다 작은 경우는 도 5에서의 알고리즘에 의해 계산될 수 있다.
도 5는 본 발명에 따른 평가 함수 설정을 위한 딜레이 계산을 위한 알고리즘 구성도이고, 도 6은 본 발명에 따른 평가 함수 설정을 위한 딜레이 구간의 상태를 나타낸 구조도이다.
첫번째 TransmitDelayMessagei가 메시지 i의 딜레이를 나타낸다.
Priority는 CANdb에서 참고하거나 사용자가 설정한 중요도이다. 식은 각 메시지마다 전송 지연을 구한 후 총 메시지 개수로 나눔으로써 평균 전송 지연을 구하게 된다.
우선 TransmitDelayMessagei는 크게 두가지로 식을 분석할 수 있다.
첫째는 GCD(Greatest Common Divisor) 베이스 사이클과 메시지 사이클의 최대 공약수를 뜻한다. 그 안에
Figure 112013116005966-pat00003
에서 m은 베이스사이클에 GCD를 나누면 나오는 값인데, 반복이 되는 베이스 사이클 수를 뜻하고
Figure 112013116005966-pat00004
에 GCD를 곱하면 반복되는 딜레이의 합이 나온다.
도 6에서 BaseCycle이 3ms, Message Cycle가 5ms인 경우 전송 지연을 보여준다. 위의 1~27까지의 수가 1ms 단위를 가지는 시간을 뜻하여, ○가 베이스 사이클의 주기를 표시하며 △가 메시지가 생성되는 주기를 뜻한다.
베이스 사이클과 메시지 사이클 사이의 딜레이는 1msec, 2msec, 0msec를 반복하며 총 3msec의 지연을 가지는 부분을
Figure 112013116005966-pat00005
로 그 영역을 표시하였다.
위의 예로 계산을 해보면 먼저 베이스 사이클 3msec와 메시지 사이클 5msec의 GCD를 구한다 둘의 GCD는 ms단위로 계산을 한다면 "1"이 나온다.
그리고 m(BaseCycle ÷ GCD)을 구하면 "3"이 나오고 식은 다음과 같이 계산된다.
Figure 112013116005966-pat00006
으로 나오므로 앞의 계산 결과와 같다.
다음으로 베이스 사이클이 메시지 사이클보다 큰 경우를 계산한다 이 경우 앞의 예와 달리 unused slot이 존재하는 것이 아니고 한 사이클안에 메시지가 여러 번 생성되어 마지막 메시지를 제외한 메시지가 삭제되는 경우이다.
계산하는 알고리즘은 도 7에서와 같다.
도 7은 베이스 사이클이 메시지 사이클보다 큰 경우를 계산하는 알고리즘 구성도이고, 도 8은 메시지 전송 효율을 나타낸 딜레이 구간의 상태를 나타낸 구조도이다.
베이스 사이클이 메시지 사이클보다 큰 경우를 계산하는 식은 앞서 말한 메시지 사이클이 베이스 사이클보다 작은 식과 아주 유사하나 도 6에 나와있는 Msg Lost 즉 메시지가 사라지는 구간이 발생한다.
총 딜레이는 같으나 Message Lost를 따로 구해서 평가 항목에 추가할 수 있다.
마지막 평가함수인 메시지 전송 효율은 어떤 메시지의 주기에 얼마나 적합하게 베이스 사이클이 정해졌는지를 뜻하는 값이다.
베이스 사이클과 메시지 사이클이 같다면 베이스 사이클마다 정확히 메시지 가 발생해 효율성 100%을 뜻하는 "1"이 나오며 100%이하는 그에 맞게 소수점 이하로 나온다.
계산은 메시지 사이클에 베이스 사이클을 나누면 된다.
Figure 112013116005966-pat00007
위의 결과들을 합해서 결과를 도출하는데 슬롯 사용율은 슬롯 낭비율로, 메시지 전송률은 메시지 비전송률로 바꿔서 낮은 값이 좋은 결과를 나타내도록 하였으며, 슬롯 사용율과 메시지 전송률이 최대 "1"의 값을 나타내는 것과 달리 전송 지연값 메시지의 전송 지연에 따라 다른 범위의 값을 나타내므로 가장 큰 전송 지연값을 모든 수에 나눠서 "1"의 값을 가지도록 하여 평가함수 정규화를 한다.
슬롯 낭비율 은 f(u), 전송 지연은 f(d), 메시지 전송률은 f(t)로 정하고 각각의 평가함수에 α,β,γ의 가중치를 곱하여 평과 결과 f(p)를 계산한다.
전체 평가함수는 다음과 같다.
Figure 112013116005966-pat00008
이와 같은 본 발명에 따른 플랙스레이 네트워크를 위한 메시지 패킹 방법은 FlexRay 네트워크 설계비용을 최소화하고 설계자의 편의를 최대화하기 위하여 FlexRay 네트워크의 스케줄링에 대한 평가지표를 설정하고 이 평가지표를 최적화시키는 정적 슬롯의 길이를 결정하는 것이다.
즉, 패킹 알고리즘(packing algorithm)의 하나인 FF(First Fit)알고리즘과 BF(Best Fit)알고리즘 적용시켜 정적슬롯의 사용율을 증가시킬 수 있도록 한 것이다.
이상에서의 설명에서와 같이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명이 구현되어 있음을 이해할 수 있을 것이다.
그러므로 명시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 하고, 본 발명의 범위는 전술한 설명이 아니라 특허청구 범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (3)

  1. 메시지의 패킹을 노드별로 실행하고 메시지의 ID가 빠른 것에 중요도를 부여하기 위해 노드와 메세지의 분류작업을 실행하는 단계;
    정적 슬롯 사이즈를 계산하는 단계;
    FF(First Fit)/BF(Best Fit)패킹을 하고, 패킹에 사용된 정적 슬롯 개수로 최소 베이스 사이클과 최대 베이스 사이클을 설정하는 단계;
    α(사용율), β(송신지연), γ(송신효율)의 가중치를 설정하고, 슬롯 낭비율f(u), 전송 지연f(d), 메시지 전송률f(t)의 각각의 평가함수에 α,β,γ의 가중치를 곱하여 전체 평가함수
    Figure 112014118284968-pat00019
    으로 평과 결과 f(p)를 계산하고 저장하는 단계;를 포함하는 것을 특징으로 하는 플랙스레이 네트워크를 위한 메시지 패킹 방법.
  2. 제 1 항에 있어서, 사용율(Utilization)의 평가함수는 패킹된 슬롯의 사용율을 나타내는 것으로,
    Figure 112013116005966-pat00009
    으로 계산되고,
    여기서, Message.Lengthi = i번째 메세지의 데이터 길이, Total Static Slot = 패킹에 사용된 정적 슬롯의 총 개수, Static Slot Size = 패킹에 사용된 정적 슬롯의 페이로드 길이(byte)인 것을 특징으로 하는 플랙스레이 네트워크를 위한 메시지 패킹 방법.
  3. 제 1 항에 있어서, 최소 베이스 사이클과 최대 베이스 사이클을 설정하는 단계에서,
    베이스 사이클이 최대값이 아니라면 1μsec씩 올려가면서 패킹을 계속진행하고 베이스 사이클이 최대값이라면 정적슬롯 크기를 체크하고,
    만약 정적슬롯의 크기가 최대가 아니라면 계산했었던 베이스사이클을 초기화하고 슬롯크기를 2바이트만큼 늘려서 다시 베이스 사이클을 계산하고 2바이트 증가된 정적슬롯의 결과를 도출하는 것을 특징으로 하는 플랙스레이 네트워크를 위한 메시지 패킹 방법.
KR20130158285A 2013-12-18 2013-12-18 플랙스레이 네트워크를 위한 메시지 패킹 방법 KR101507016B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130158285A KR101507016B1 (ko) 2013-12-18 2013-12-18 플랙스레이 네트워크를 위한 메시지 패킹 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130158285A KR101507016B1 (ko) 2013-12-18 2013-12-18 플랙스레이 네트워크를 위한 메시지 패킹 방법

Publications (1)

Publication Number Publication Date
KR101507016B1 true KR101507016B1 (ko) 2015-04-01

Family

ID=53032115

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130158285A KR101507016B1 (ko) 2013-12-18 2013-12-18 플랙스레이 네트워크를 위한 메시지 패킹 방법

Country Status (1)

Country Link
KR (1) KR101507016B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080093998A (ko) * 2006-01-20 2008-10-22 로베르트 보쉬 게엠베하 리소스의 동적 할당을 위한 방법 및 시스템
KR20090024264A (ko) * 2006-06-30 2009-03-06 콘티넨탈 테베스 아게 운트 코. 오하게 차량 내외로 차량 관련 정보를 전송하는 방법 및 장치
US20130332637A1 (en) 2011-02-26 2013-12-12 Paul Milbredt Motor vehicle having a flexray bus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080093998A (ko) * 2006-01-20 2008-10-22 로베르트 보쉬 게엠베하 리소스의 동적 할당을 위한 방법 및 시스템
KR20090024264A (ko) * 2006-06-30 2009-03-06 콘티넨탈 테베스 아게 운트 코. 오하게 차량 내외로 차량 관련 정보를 전송하는 방법 및 장치
US20130332637A1 (en) 2011-02-26 2013-12-12 Paul Milbredt Motor vehicle having a flexray bus

Similar Documents

Publication Publication Date Title
KR101936450B1 (ko) 메모리 크기에 매칭하여 직렬 데이터 전송을 하는 방법 및 장치
Leen et al. TTCAN: a new time-triggered controller area network
CN107040361B (zh) 基于车辆的时间信息对域进行时间同步的方法
US20200136993A1 (en) Method and apparatus for allocating transmission opportunities in vehicle network
JP6500875B2 (ja) 車載ネットワークシステム、及び、車載ネットワークシステムにおける通信制御方法
JP5798251B2 (ja) メッセージの大きさがフレキシブルな直列データ伝送におけるデータ伝送信頼性を改善するための方法及び装置
US9143348B2 (en) Method for scheduling bus system transmissions
KR101921771B1 (ko) 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR101932787B1 (ko) 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치
Kang et al. Frame packing for minimizing the bandwidth consumption of the FlexRay static segment
JP4814950B2 (ja) 送受信システム、ノード及び通信方法
KR101884925B1 (ko) Can 버스 모듈을 구비하고, 자동 속도 검출을 하는 마이크로컨트롤러
Schmidt et al. Systematic message schedule construction for time-triggered CAN
JP4076501B2 (ja) 時間制御された周期ベースの通信システム
Jang et al. Design framework for FlexRay network parameter optimization
US20170235630A1 (en) Subscriber station for a bus system, and method for checking the correctness of a message
US9135196B2 (en) Method for operating a bus system for communication with a plurality of communication nodes, and motor vehicle
KR101507016B1 (ko) 플랙스레이 네트워크를 위한 메시지 패킹 방법
US20110188520A1 (en) Method for operating a time-controlled bus system
CN116599629A (zh) 基于动态帧的数据发送方法和装置、电子设备及存储介质
KR101507018B1 (ko) 플랙스레이 네트워크를 위한 fibex 생성 방법
Berisa et al. Comparative Evaluation of Various Generations of Controller Area Network Based on Timing Analysis
KR100747760B1 (ko) Can에서의 시분할 스케줄링 방법 및 그 can 시스템
Zhao et al. Optimal scheduling of the flexray static segment based on two-dimensional bin-packing algorithm
KR101301078B1 (ko) 플렉스레이 네트워크 제어 시스템, 장치 및 방법

Legal Events

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

Payment date: 20180209

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190226

Year of fee payment: 5