1 Introduction and functional overview
2 Acronyms, Abbreviations and Definitions
3 Related documentation
3.1 Input documents
3.2 Related specification
4 Constraints and assumptions
4.1 Limitations
4.2 Accuracy
4.3 Applicability to car domains
5 Dependencies to other modules
5.1 File structure
5.1.1 Code file structure
6 Requirements Tracing
7 Functional specification
7.1 Overview
7.1.1 General
7.1.2 VLAN Support
7.2 Initialization
7.3 Handling of different Virtual Local Time sources
7.4 Debounce Time
7.5 Pdelay Protocol for Latency Calculation
7.5.1 Pdelay Message Transmission
7.5.2 Pdelay Message Reception
7.6 Message Format
7.6.1 Sync and Follow_Up acc. to IEEE 802.1AS
7.6.2 Sync and Follow_Up acc. to AUTOSAR
7.6.2.1 Follow_Up Message Header [AUTOSAR]
7.6.2.2 AUTOSAR TLV Sub-TLV's
7.7 Acting as Time Master
7.7.1 Message processing
7.7.1.1 Runtime Error detection
7.7.1.2 Frame Debouncing
7.7.1.3 Immediate Time Synchronization
7.7.1.4 Secure Time Synchronization
7.7.2 Link State and Transmission Mode
7.7.3 Message Field Calculation and Assembling
7.7.3.1 SGW Calculation
7.7.3.2 OFS Calculation
7.7.3.3 CRC Calculation
7.7.3.4 Sequence Counter (sequenceId) Calculation
7.7.3.5 ICV Generation
7.7.3.6 Message Assembling
7.8 Acting as Time Slave
7.8.1 Message processing
7.8.1.1 Runtime Error detection
7.8.1.2 Frame Debouncing
7.8.1.3 Secure Time Synchronization
7.8.2 Message Field Validation and Disassembling
7.8.2.1 SGW Calculation
7.8.2.2 OFS Calculation
7.8.2.3 CRC Validation
7.8.2.4 Sequence Counter (sequenceId) Validation
7.8.2.5 ICV Verification
7.8.2.6 Message Disassembling
7.9 Time Recording
7.9.1 Time Validation
7.9.1.1 Recording of Pdelay Measurement
7.10 Security Events
7.11 Error Classification
7.11.1 Development Errors
7.11.2 Runtime Errors
7.11.3 Transient Faults
7.11.4 Production Errors
7.11.5 Extended Production Errors
8 API specification
8.1 API
8.1.1 Imported types
8.1.2 Type definitions
8.1.2.1 EthTSyn_ConfigType
8.1.2.2 EthTSyn_TransmissionModeType
8.1.3 Function definitions
8.1.3.1 EthTSyn_Init
8.1.3.2 EthTSyn_GetVersionInfo
8.1.3.3 EthTSyn_SetTransmissionMode
8.1.3.4 EthTSyn_SetProtocolParam
8.1.3.5 EthTSyn_GetProtocolParam
8.1.4 Call-back notifications
8.1.4.1 EthTSyn_RxIndication
8.1.4.2 EthTSyn_TxConfirmation
8.1.4.3 EthTSyn_TrcvLinkStateChg
8.1.4.4 EthTSyn_IcvGenerationIndication
8.1.4.5 EthTSyn_IcvVerificationIndication
8.1.5 Scheduled functions
8.1.5.1 EthTSyn_MainFunction
8.1.6 Expected Interfaces
8.1.6.1 Mandatory Interfaces
8.1.6.2 Optional Interfaces
9 Sequence diagrams
9.1 EthIf_EnableEgressTimeStamp
9.2 Time Synchronization Sequence
9.3 Pdelay Measurement Sequence
9.4 EthTSyn Egress Timestamping
9.5 EthTSyn Ingress Timestamping
9.6 Time measurement with Switches
9.6.1 Time Aware Bridge with GTM as Management CPU - Tx
9.6.2 Time Aware Bridge without GTM as Management CPU - Tx
9.6.3 Time Aware Bridge without GTM as Management CPU - Rx
9.7 Secure Time Synchronization Sequence
10 Configuration specification
10.1 How to read this chapter
10.2 Containers and configuration parameters
10.2.1 EthTSyn
10.2.2 EthTSynGeneral
10.2.3 EthTSynSecurityEventRefs
10.2.4 EthTSynGlobalTimeDomain
10.2.5 EthTSynGlobalTimeFollowUpDataIDList
10.2.6 EthTSynGlobalTimeFollowUpDataIDListElement
10.2.7 EthTSynPortConfig
10.2.8 EthTSynPortRole
10.2.9 EthTSynPdelayConfig
10.2.10 EthTSynGlobalTimeMaster
10.2.11 EthTSynCrcTimeFlagsTxSecured
10.2.12 EthTSynGlobalTimeTxIcvGeneration
10.2.13 EthTSynGlobalTimeSlave
10.2.14 EthTSynCrcFlagsRxValidated
10.2.15 EthTSynGlobalTimeRxIcvVerification
10.3 Constraints
10.4 Published Information