FordMsg415BusHiSpd_MDD

Module Design Document

For

FordMsg415BusHiSpd

June 19, 20157

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Tata Elxsi,

Trivandrum, INDIA

Change History

DescriptionAuthorVersionDate
Initial VersionTATA1.023-Nov-2017

Table of Contents

1 Introduction 5

1.1 Purpose 5

2 FordMsg415BusHiSpd & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of FordMsg415BusHiSpd 7

3.2 Data Flow Diagram 7

3.2.1 Component level DFD 7

3.2.2 Function level DFD 7

4 Constant Data Dictionary 8

4.1 Program (fixed) Constants 8

4.1.1 Embedded Constants 8

5 Software Component Implementation 9

5.1 Sub-Module Functions 9

5.1.1 Init: FordMsg415BusHiSpdInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: FordMsg415BusHiSpdPer1 9

5.1.2.1 Design Rationale 9

5.1.2.2 Store Module Inputs to Local copies 9

5.1.2.3 Processing of function) 9

5.1.2.4 Store Local copy of outputs into Module Outputs 9

5.2 Server Runnables 9

5.2.1 ComIPduCallout_BrakeSysFeatures_HS2 9

5.2.1.1 Design Rationale 9

5.2.1.2 (Processing of function) 9

5.2.2 ComTimeoutNotification_Veh_V_ActlBrk 9

5.2.2.1 Design Rationale 9

5.2.2.2 (Processing of function) 9

5.3 Interrupt Functions 10

5.4 Module Internal (Local) Functions 10

5.4.1 Local Function #1 10

5.4.1.1 Design Rationale 10

5.4.1.2 Processing 10

5.4.2 Local Function #2 10

5.4.2.1 Design Rationale 11

5.4.2.2 Processing 11

5.4.3 Local Function #3 11

5.4.3.1 Design Rationale 12

5.4.3.2 Processing 12

5.4.4 Local Function #4 12

5.4.4.1 Design Rationale 12

5.4.4.2 Processing 12

5.4.5 Local Function #5 12

5.4.5.1 Design Rationale 13

5.4.5.2 Processing 13

5.4.6 Local Function #6 13

5.4.6.1 Design Rationale 13

5.4.6.2 Processing 13

5.4.7 Local Function #7 13

5.4.7.1 Design Rationale 14

5.4.7.2 Processing 14

5.4.8 Local Function #8 14

5.4.8.1 Design Rationale 14

5.4.8.2 Processing 14

5.4.9 Local Function #9 14

5.4.9.1 Design Rationale 14

5.4.9.2 Processing 14

5.5 GLOBAL Function/Macro Definitions 14

6 Known Limitations with Design 15

7 UNIT TEST CONSIDERATION 16

Appendix A Abbreviations and Acronyms 17

Appendix B Glossary 18

Appendix C References 19

Introduction

Purpose

MDD for FordMsg415BusHiSpd

FordMsg415BusHiSpd & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of FordMsg415BusHiSpd

Data Flow Diagram

Component level DFD

Please refer FDD.

Function level DFD

Please refer FDD.

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer Data Dictionary .m fileNANANA

Software Component Implementation

Sub-Module Functions

5.1.1 Init: FordMsg415BusHiSpdInit1

Design Rationale

None

Module Outputs

None

5.1.2 Per: FordMsg415BusHiSpdPer1

5.1.2.1 Design Rationale

None

5.1.2.2 Store Module Inputs to Local copies

None

5.1.2.3 Processing of function)

None

5.1.2.4 Store Local copy of outputs into Module Outputs

None

Server Runnables

5.2.1 ComIPduCallout_BrakeSysFeatures_HS2

5.2.1.1 Design Rationale

None

5.2.1.2 (Processing of function)

None

5.2.2 ComTimeoutNotification_Veh_V_ActlBrk

5.2.2.1 Design Rationale

None

5.2.2.2 (Processing of function)

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameNtcEnabTypeMinMax
Arguments PassedFordMfgDiagcInhb_Cnt_T_u08Uint80U1U
FordCanDtcInhb_Cnt_T_u08Uint80U1U
FordAbsPrsnt_Cnt_T_u08Uint80U1U
ClrDiagcFlgProxy_Cnt_T_u08Uint80U1U
FordMissMsgDiagcInhb_Cnt_T_u08Uint80U1U
FordTrlrBackupAssiEnad_Cnt_T_u08Uint80U1U
FordInvldMsgDiagcInhb_Cnt_T_u08Uint80U1U
*MissMsgDiagEna_Cnt_T_loglBooleanFALSETRUE
*InvldMsgDiagEna_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/NtcEnab

Local Function #2

Function NameMissMsgFaildTypeMinMax
Arguments PassedMissMsgDiagEna_Cnt_T_loglBooleanFALSETRUE
BusHiSpdMissThd_Cnt_T_u16Uint160U6000U
*FordVehSpdBrkModlRawVal_Cnt_T_u16Uint160U65535U
*FordVehSpdBrkModlVal_Kph_T_f32Float320.0F655.35F
*FordVehSpdQlyFacBrkModlVal_Cnt_T_enumFord_VehVActlBrk_D_Qf10U3U
*FordVehSpdCntrBrkModlVal_Cnt_T_u08Uint80U15U
*FordVehSpdChksBrkModlVal_Cnt_T_u08Uint80U255U
*FordVehLoSpdMtnCtrlBrkSprtStsRawVal_Cnt_T_u08Uint80U8U
*FordVehLoSpdMtnCtrlBrkSprtStsVal_Cnt_T_enumFord_LsmcBrkDecel_D_Stat0U7U
*FordVehLoSpdMtnCtrlBrkSprtVldVal_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlLoQlyVldVal_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlVldVal_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgFaild

Local Function #3

Function NameMissMsgPassdTypeMinMax
Arguments PassedMissMsgDiagEna_Cnt_T_loglBooleanFALSETRUE
Ford_Veh_V_ActlBrk_Cnt_T_u16Uint160U65535U
Ford_VehVActlBrk_D_Qf1_Cnt_T_enumFord_VehVActlBrk_D_Qf10U3U
Ford_VehVActlBrk_No_Cnt_Cnt_T_u08Uint80U15U
Ford_VehVActlBrk_No_Cs_Cnt_T_u08Uint80U255U
InvldMsgDiagEna_Cnt_T_loglBooleanFALSETRUE
BusHiSpdQlyFacBrkModlInvldThd_Cnt_T_u16Uint160U6000U
BusHiSpdCntrBrkModlInvldThd_Cnt_T_u16Uint160U6000U
BusHiSpdChksBrkModlInvld_Cnt_T_u16Uint160U65535U
Ford_LsmcBrkDecel_D_Stat1_Cnt_T_enumFord_LsmcBrkDecel_D_Stat0U7U
*FordVehSpdBrkModlRawVal_Cnt_T_u16Uint160U65535U
*FordVehSpdBrkModlVal_Kph_T_f32Float320.0F655.35F
*FordVehSpdQlyFacBrkModlVal_Cnt_T_enumFord_VehVActlBrk_D_Qf10U3U
*FordVehSpdCntrBrkModlVal_Cnt_T_u08Uint80U15U
*FordVehSpdChksBrkModlVal_Cnt_T_u08Uint80U255U
*FordVehLoSpdMtnCtrlBrkSprtStsRawVal_Cnt_T_u08Uint80U8U
*FordVehLoSpdMtnCtrlBrkSprtStsVal_Cnt_T_enumFord_LsmcBrkDecel_D_Stat0U7U
*FordVehLoSpdMtnCtrlBrkSprtVldVal_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlLoQlyVldVal_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlVldVal_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd

Local Function #4

Function NameSigProcgTypeMinMax
Arguments PassedFord_Veh_V_ActlBrkValue_Cnt_T_u16Uint160U65535U
Ford_VehVActlBrk_D_Qf1Value_Cnt_T_enumFord_VehVActlBrk_D_Qf10U3U
Ford_VehVActlBrk_No_CntValue_Cnt_T_u08Uint80U15U
Ford_VehVActlBrk_No_CsValue_Cnt_T_u08Uint80U255U
Ford_LsmcBrkDecel_D_Stat1Value_Cnt_T_enumFord_LsmcBrkDecel_D_Stat0U7U
FordVehSpdBrkModlRawValue_Cnt_T_u16Uint160U65535U
FordVehSpdBrkModlValue_Kph_T_f32Float320.0F655.35F
FordVehSpdQlyFacBrkModlValue_Cnt_T_enumFord_VehVActlBrk_D_Qf10U3U
FordVehSpdCntrBrkModlValue_Cnt_T_u08Uint80U15U
FordVehSpdChksBrkModlValue_Cnt_T_u08Uint80U255U
FordVehLoSpdMtnCtrlBrkSprtStsRawValue_Cnt_T_u08Uint80U8U
FordVehLoSpdMtnCtrlBrkSprtStsValue_Cnt_T_enumFord_LsmcBrkDecel_D_Stat0U7U
*QlyFacBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
*CntrBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
*ChksBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
*VldChkFlg_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/OutpProcg/SigProcg

Local Function #5

Function NameVldElpdTiTypeMinMax
Arguments Passed* BrkModlVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
* BrkModlVldFaildElpdTi_Cnt_T_loglBooleanFALSETRUE
* BrkModlLoQlyVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
* BrkModlLoQlyVldFaildElpdTi_Cnt_T_loglBooleanFALSETRUE
* BrkSprtVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/OutpProcg/VldElpdTi

Local Function #6

Function NameChkElpdTiTypeMinMax
Arguments PassedVldChkFlg_Cnt_T_loglBooleanFALSETRUE
BrkModlVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
BrkModlLoQlyVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
BrkModlVldFaildElpdTi_Cnt_T_loglBooleanFALSETRUE
BrkModlLoQlyVldFaildElpdTi_Cnt_T_loglBooleanFALSETRUE
BrkSprtVldPassdElpdTi_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlVldValue_Cnt_T_loglBooleanFALSETRUE
*FordVehSpdBrkModlLoQlyVldValue_Cnt_T_loglBooleanFALSETRUE
*FordVehLoSpdMtnCtrlBrkSprtVldValue_Cnt_T_loglBooleanFALSETRUE
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/OutpProcg/ChkElpdTi

Local Function #7

Function NameNtc0x166SetRstTypeMinMax
Arguments PassedQlyFacBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
BusHiSpdQlyFacBrkModlInvldThdValue_Cnt_T_u16Uint160U6000U
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/InvldNtcPass/Ntc0x166_Set_Reset

Local Function #8

Function NameNtc0x167SetRstTypeMinMax
Arguments PassedCntrBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
BusHiSpdCntrBrkModlInvldThdValue_Cnt_T_u16Uint160U6000U
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/InvldNtcPass/Ntc0x167_Set_Reset

Local Function #9

Function NameNtc0x168SetRstTypeMinMax
Arguments PassedChksBrkModlVldFlg_Cnt_T_loglBooleanFALSETRUE
BusHiSpdChksBrkModlInvldValue_Cnt_T_u16Uint160U65535U
Return ValueNone

Design Rationale

Processing

Please refer to the below path in the FDD model.

MM077A_FordMsg415BusHiSpd/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/InvldNtcPass/Ntc0x168_Set_Reset

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

  1. In model, ClrDiagcFlgProxyPrev(boolean) is compared with ClrDiagcFlgProxy(uint8 signal) which is logically wrong. So, change the data type of ClrDiagcFlgProxyPrev to uint8. Please refer MM065A Data dictionary for the same.

  2. The range of the input signal Ford_Veh_V_ActlBrk is 0 to 65535. We are (MM077A_FordMsg415BusHiSpd_SIL/FordMsg415BusHiSpd/FordMsg415BusHiSpdPer1/MissMsgPassd/OutpProcg/SigProcg/CalcVehSpdChksBrkModlCnvn) rightshifting the value of the input signal with RISHIFT_CNT_U16 and Masking the value of the input signal with EIGHTBITMASK_CNT_U16. Then we add the ouptuts of the each operation. If the output value of the rightshift operation and bitmasking operation is greater than range of UINT8, then overflow occurs.

UNIT TEST CONSIDERATION

None.

Abbreviations and Acronyms

Abbreviation or AcronymDescription

Glossary

Note: Terms and definitions from the source “Nexteer Automotive” take precedence over all other definitions of the same term. Terms and definitions from the source “Nexteer Automotive” are formulated from multiple sources, including the following:

  • ISO 9000

  • ISO/IEC 12207

  • ISO/IEC 15504

  • Automotive SPICE® Process Reference Model (PRM)

  • Automotive SPICE® Process Assessment Model (PAM)

  • ISO/IEC 15288

  • ISO 26262

  • IEEE Standards

  • SWEBOK

  • PMBOK

  • Existing Nexteer Automotive documentation

TermDefinitionSource
MDDModule Design Document
DFDData Flow Diagram

References

Ref. #TitleVersion
1AUTOSAR Specification of Memory Mapping (Link:AUTOSAR_SWS_MemoryMapping.pdf)v1.3.0 R4.0 Rev 2
2MDD GuidelineEA4 01.00.00
3Software Naming Conventions.doc1.0
4Software Design and Coding Standards.doc2.1
5FDD: MM077A_FordMsg415BusHiSpd_DesignSee Synergy sub project version
Last modified October 12, 2025: Initial commit (ddf2e20)