Flex Ray: Coding and Decoding, Media Access Control, Frame and
Transcript of Flex Ray: Coding and Decoding, Media Access Control, Frame and
Flex Ray: Coding and Decoding, Media Access Control,
Frame and Symbol Processing
Seminar: The FlexRay Communication Protocol
Chair of Prof. Dr. W. J. Paul
Talk by Michael Gerke
27-9-2005
Overview
Coding and decoding (CODEC)
Media access control (MAC)
Frame and symbol
processing (FSP)
Bus
Media access control (MAC)
• Interface:
from Controller host interface (Host) to Coding and decoding (CODEC)
• Controls timing
• Orders ENC to sent symbols
Media access control (MAC)• Controls access to the channels
• Guarantees compliance with schedule
time organization
Staticsegment
Dynamicsegment
Symbolwindow
Network idle time
static slotstatic slot
Communication cycle
Media access control (MAC)
Static slot usage:- short idle time
- transfer of the frame
- long idle time
Media access control (MAC)
Assembles frames:
- imports data from controller host interface (Host)
- assembles header
Encoding (ENC)Frames
Frame coding in static segment
0
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Encoding (ENC)Frames
Frame coding in static segment
0
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Encoding (ENC)Frames
Frame coding in static segment
0
Byte
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Encoding (ENC)Frames
Frame coding in static segment
0
Byte
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Bytestart
sequenceBSS
Encoding (ENC)Frames
Frame coding in static segment
0
Byte
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Bytestart
sequenceBSS
Byte
Encoding (ENC)Frames
Frame coding in static segment
0
Byte
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Bytestart
sequenceBSS
Byte
Frameend
sequenceFES
Encoding (ENC)Frames
Frame coding in static segment
0
Byte
1
Transmissionstart
sequenceTSS
Framestart
sequenceFSS
Bytestart
sequenceBSS
Bytestart
sequenceBSS
Byte
Frameend
sequenceFES
Encoding (ENC)Symbols
Collision avoidance and
media access test symbol (CAS/MTS):
TSS+030
Wakeup symbol (WUS):
015-60+idle45-180
sent in a wakeup pattern (WUP): WUS2-63
Bit strobing (BITSTRB)
• Takes 8 samples of every bit
• Majority voting over last 5 bit samples
• Selects 1 sample out of 8
• Low level synchronization
Bit strobing: Majority votingMajority voting over last 5 bit samples
0
1
11111voting window 1 voted value
0
1
voted value
from BUS
11110voting window 1 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
11100voting window 1 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
11000voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
11000voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
Voting delay0
1
0
1
voted value
from BUS
10000voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
00000voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
00001voting window 0 voted value
Majority voting over last 5 bit samples
glitch
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
00010voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
glitch
0
1
0
1
voted value
from BUS
00100voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
glitch
0
1
0
1
voted value
from BUS
01000voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
glitch
0
1
0
1
voted value
from BUS
10001voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
glitch
0
1
0
1
voted value
from BUS
00011voting window 0 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
00111voting window 1 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
01111voting window 1 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
11111voting window 1 voted value
Majority voting over last 5 bit samples
Bit strobing: Majority voting
0
1
0
1
voted value
from BUS
Bit strobing: Strobing• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
0
1
voted value
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
0
1
voted value
Strobecounter:
1
1
Bit strobing: Strobing
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
2
1 2
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
3
1 2 3
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
4
1 2 3 4
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
5
1 2 3 4 5
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
5
1 2 3 4 5
Bit strobed: 0
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
6
1 2 3 4 5 6
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
7
1 2 3 4 5 6 7
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
8
1 2 3 4 5 6 7 8
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
1
1 2 3 4 5 6 7 8 1
Bit strobing: Strobing
0
1
• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
1
1 2 3 4 5 6 7
BSS
8 1
Bit strobing: Synchronization
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
2
1 2 3 4 5 6 7
BSS
8 1 2
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
3
1 2 3 4 5 6 7
BSS
8 1 2 3
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
4
1 2 3 4 5 6 7
BSS
8 1 2 3 4
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
5
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
6
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
1
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
2
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
3
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
4
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
5
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4 5
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
6
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4 5 6
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
7
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4 5 6 7
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
8
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4 5 6 7 8
0
1
Bit strobing: Synchronization• Every 5th sample out of the 8 samples „strobed“
• Low-level synchronization of strobecounter in BSS
voted value
Strobecounter:
1
1 2 3 4 5 6 7
BSS
8 1 2 3 4 5 6 1
sync edge
2 3 4 5 6 7 8 1
start of byte
0
1
Wakeup symbol decoding (WUSDEC)
• Waits for a WUP like pattern:
0x+1y+0x
produced by two consecutive WUS
• Reports to protocol operation control(POC)
Decoding (DEC)• Handles reception of CAS/MTS and frames
• Interface from BITSTRB to FSP and POC
• Checks for errors Frames:- reassembles the message
- checks format
- checks CRC (frame “fingerprint”)
CAS/MTS:- checks length of
LOW signal
Frame and symbol processing (FSP)
• Interface from DEC to Host
• Controls integrity of communication:- Checks for appropriate segment- Checks length of communication elements- Checks for correct header
• Reports errors
• Dismantles frame and passes on the payload