This is the multi-page printable view of this section. Click here to print.
Component Implementation
1 - HwAg1Meas_DesignReview
Overview
Summary SheetSynergy Project
Davinci Files
Sheet 1: Summary Sheet

Sheet 2: Synergy Project
Sheet 3: Davinci Files
2 - HwAg1Meas_IntegrationManual
Integration Manual
For
HwAg1Meas
VERSION: 4.0
DATE: 21-Jun-2015
Prepared By:
TATA ELXSI
CHENNAI
Location: The official version of this document is stored in the Nexteer Configuration Management System.
Revision History
Sl. No. | Description | Author | Version | Date |
1 | Initial version | Selva Sengottaiyan | 1.0 | 21-July-2015 |
2 | Updated to FDD v 1.2.0 | Selva Sengottaiyan | 2.0 | 11-Sep-2015 |
3 | Updated to FDD v1.4.0 | Selva Sengottaiyan | 3.0 | 22-Dec-2015 |
4 | Updated to FDD v1.8.0 | TATA | 4.0 | 21-Jun-2015 |
Table of Contents
3.2 Global Functions(Non RTE) to be provided to Integration Project 6
4 Configuration REQUIREMeNTS 7
4.2 Configuration Files to be provided by Integration Project 7
4.3 Da Vinci Parameter Configuration Changes 7
4.4 DaVinci Interrupt Configuration Changes 7
4.5 Manual Configuration Changes 7
5 Integration DATAFLOW REQUIREMENTS 8
5.1 Required Global Data Inputs 8
5.2 Required Global Data Outputs 8
5.3 Specific Include Path present 8
Abbrevations And Acronyms
Abbreviation | Description |
DFD | Design functional diagram |
MDD | Module design Document |
References
This section lists the title & version of all the documents that are referred for development of this document
Sr. No. | Title | Version |
v | FDD – CM670A_HwAg1Meas_Design | See Synergy sub project version |
2 | Software Naming Conventions | Process 4.01.00 |
3 | Software Design and Coding Standards | Process 4.01.00 |
Dependencies
SWCs
Module | Required Feature |
None |
Global Functions(Non RTE) to be provided to Integration Project
None
Configuration REQUIREMeNTS
Build Time Config
Modules | Notes | |
None |
Configuration Files to be provided by Integration Project
HwAg1Meas_Cfg.h
Da Vinci Parameter Configuration Changes
Parameter | Notes | SWC |
Refer the . mfile | CM10 provides program specific NTC configuration |
DaVinci Interrupt Configuration Changes
ISR Name | VIM # | Priority Dependency | Notes |
None |
Manual Configuration Changes
Constant | Notes | SWC |
None |
Integration DATAFLOW REQUIREMENTS
Required Global Data Inputs
Refer DataDict.m file in the FDD
Required Global Data Outputs
Refer DataDict.m file file in the FDD
Specific Include Path present
No
Runnable Scheduling
This section specifies the required runnable scheduling.
Init | Scheduling Requirements | Trigger |
HwAg1MeasInit1 | None | RTE (Init) |
Runnable | Scheduling Requirements | Trigger |
HwAg1MeasPer1 | None | RTE (2 ms) |
HwAg1MeasPer2 | None | RTE (2 ms) |
HwAg1MeasPer3 | None | RTE (2 ms) |
HwAg1MeasPer4 | None | RTE (2ms) |
HwAg1MeasPer5 | None | RTE (100ms) |
HwAg1MeasHwAg1AutTrim_Oper | None | Server invocation |
HwAg1MeasHwAg1ClrTrim_Oper | None | Server invocation |
HwAg1MeasHwAg1ReadTrim_Oper | None | Server invocation |
HwAg1MeasHwAg1ReadTrim_Oper | None | Server invocation |
HwAg1MeasHwAg1TrimPrfmdSts_Oper | None | Server invocation |
HwAg1MeasHwAg1WrTrim_Oper | None | Server invocation |
.
Memory Map REQUIREMENTS
Mapping
Memory Section | Contents | Notes |
None | ||
* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.
Usage
Feature | RAM | ROM |
None |
Table 1: ARM Cortex R4 Memory Usage
NvM Blocks
RTE NvM Blocks
Block Name |
HwAg1Offs |
Note : Size of the NVM block if configured in developer
Compiler Settings
Preprocessor MACRO
None.
Optimization Settings
None.
Appendix
SENT2SPCO port out should be configured to be high level on port configurations refer CM10 for SPCO port configuration (SENT2SPCO shall be port level high). port configuration SENT2SPCO output:port (that’s needs to be configured as SENT2SPCO) should be initialized as input dio with level high.the client call Iohwab_Setfctprphlhwag1_oper will reset the pin to output alterante mode for SENT2SPCO
Design Recommandation :
- Port Config RSENT2 IO pin shall setup default input.
- Schedule execution of tasks as per below order at the end of 2ms task
1. "HwAg1MeasPer2"
2. "HwAg1MeasPer3"
3. "HwAg1MeasPer4"
4. "HwAg1MeasPer1"
- Schedule "HwAg1MeasPer4" & "HwAg1MeasPer1" shall at least 110us apart.
3 - HwAg1Meas_MDD
Module Design Document
For
HwAg1Meas
Jun 21,2016
Prepared For:
Software Engineering
Nexteer Automotive,
Saginaw, MI, USA
Prepared By:
TATA ELXSI
CHENNAI
Change History
Description | Author | Version | Date |
Initial Version | Selva Sengottaiyan | 1.0 | 21-July-2015 |
Updated to v1.2.0 of the FDD | Selva Sengottaiyan | 2.0 | 11-Sep-15 |
Updated to v1.4.0 of the FDD | Selva Sengottaiyan | 3.0 | 23-Dec-15 |
Updated to v1.11.0 of the FDD | Ramachandran | 4.0 | 21-Jun-2016 |
Table of Contents
2 HwAg1Meas High-Level Description 5
3 Design details of software module 6
3.1 Graphical representation of HwAg1Meas 6
4.1 Program (fixed) Constants 7
5 Software Component Implementation 8
5.1.2 Interrupt Service Routines 8
5.1.3 Server Runnable Functions 9
5.1.4 Module Internal (Local) Functions 9
6 Known Limitations with Design 11
Appendix A Abbreviations and Acronyms 13
Introduction
Purpose
MDD for HwAg1.
Scope
HwAg1Meas High-Level Description
Refer to FDD
Design details of software module
Graphical representation of HwAg1Meas
Data Flow Diagram
Component level DFD
Refer FDD
Function level DFD
Refer FDD
Constant Data Dictionary
Program (fixed) Constants
Embedded Constants
Local Constants
Constant Name | Value |
---|---|
MAXWAITININ_MICROSEC_U32 | ((uint32)2U) |
DATAAVLMAXWAIT_MICROSEC_U32 | ((uint32)300U) |
COMSTSMAXWAIT_MICROSEC_U32 | ((uint32)5U) |
PRTCLFLTMASK_CNT_U32 | 0xFEU |
SNSRIDMASK_CNT_U08 | 0x00FU |
MSGSTSMASK_CNT_U08 | 0x01U |
COMSTSMASK_CNT_U32 | 0x30000000UL |
DATAMASK_CNT_U16 | 0xFFF0U |
Software Component Implementation
Sub-Module Functions
Initialization sub-module {_Init()}
HwAg1MeasInit1 (Refer FDD for details)
Periodic sub-module {_Per()}
HwAg1MeasPer1 (Refer FDD for details)
Periodic sub-module {_Per()}
HwAg1MeasPer2 (Refer FDD for details)
Periodic sub-module {_Per()}
HwAg1MeasPer3 (Refer FDD for details)
Periodic sub-module {_Per()}
HwAg1MeasPer4 (Refer FDD for details)
Periodic sub-module {_Per()}
HwAg1MeasPer5 (Refer FDD for details)
Design Rationale:
The implementation brings in the block “HwAg1Final” inside the True Condition of the “finalAbsAg” as the other error condition will just retain the previous value and rolling counter will not change. It saves extra instructions in the implementation to the match the FDD. Final Functionality is still the same.
Interrupt Service Routines
None
Server Runnable Functions
Server Runnable: HwAg1MeasHwAg1AutTrim
Refer FDD for details
Server Runnable: HwAg1MeasHwAg1ClrTrim
Refer FDD for details
Server Runnable: HwAg1MeasHwAg1ReadTrim
Refer FDD for details
Server Runnable: HwAg1MeasHwAg1TrimPrfmdSts
Refer FDD for details
Server Runnable: HwAg1MeasHwAg1WrTrim
Refer FDD for details
Module Internal (Local) Functions
Local Function #1
Function Name | CalcHwAgIdx | Type | Min | Max |
Arguments Passed | HwAgStep_HwDeg_T_f32 | float32 | -900 | 900 |
Return Value | Index_Cnt_T_u08 | uint16 | 0 | 22 |
Description
The implementation deviates from the FDD block “Intpn” block. The implementation finds the minimum of absolute values of the difference between HwAg1Step with all the values from the Calibration table and find the index associated with minimum value of the difference in the calibration table.
Local Function #2
Function Name | ReadRegister | Type | Min | Max |
Arguments Passed | RegisterDummyRead_Cnt_T_u32 | N/A | N/A | N/A |
Return Value | RegisterDummyRead_Cnt_T_u32 | N/A | N/A | N/A |
Design Rationale
This function can be used both for read-and-use and for read-and-discard
Transition Functions
None
Known Limitations with Design
None
UNIT TEST CONSIDERATION
Roll Over is intentional for
*Rte_Pim_HwAg1Snsr0ComStsErrCntr()
*Rte_Pim_HwAg1Snsr0IdErrCntr()
*Rte_Pim_HwAg1Snsr0IntSnsrErrCntr()
*Rte_Pim_HwAg1Snsr0NoMsgErrCntr()
*Rte_Pim_HwAg1Snsr1ComStsErrCntr()
*Rte_Pim_HwAg1Snsr1IdErrCntr()
*Rte_Pim_HwAg1Snsr1IntSnsrErrCntr()
*Rte_Pim_HwAg1Snsr1NoMsgErrCntr()
(*Rte_Pim_HwAg1PrevRollCnt).
Thus counter acts in circular
Abbreviations and Acronyms
Abbreviation or Acronym | Description |
---|---|
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
Term | Definition | Source |
---|---|---|
MDD | Module Design Document | |
DFD | Data Flow Diagram |
References
Ref. # | Title | Version |
---|---|---|
1 | AUTOSAR Specification of Memory Mapping (Link:AUTOSAR_SWS_MemoryMapping.pdf) | v1.3.0 R4.0 Rev 2 |
2 | MDD Guideline | EA4 01.00.00 |
3 | Software Naming Conventions.doc | 1.0 |
4 | Software Design and Coding Standards.doc | 2.0 |
5 | FDD - CM670A_HwAg1Meas_Design | See Synergy sub project version |
4 - requirements
FDD | ID | Source | Function | Line(s) | Status | Comment |
---|---|---|---|---|---|---|
.SwFileName | .SwFuncName | .SwLines | .SwStatus | .SwComment | ||
CM670A | 93 | HwAg1Meas.c | HwAg1MeasPer4 | 1518 | I | |
CM670A | 28 | HwAg1Meas.c | HwAg1MeasPer2,HwAg1MeasPer3 | 1160,1312 | I | |
CM670A | 29 | HwAg1Meas.c | HwAg1MeasPer4 | 1543 | I | |
CM670A | 60 | HwAg1Meas.c | HwAg1MeasPer3 | 1266-1377 | I | |
CM670A | 88 | HwAg1Meas.c | HwAg1MeasHwAg1ClrTrim_Oper | 810-814 | I | |
CM670A | 89 | HwAg1Meas.c | HwAg1MeasHwAg1WrTrim_Oper | 913-917 | I | |
CM670A | 64 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 65 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 66 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 67 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 68 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 69 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 80 | HwAg1Meas.c | HwAg1MeasPer5 | 1609-1618 | I | |
CM670A | 86 | HwAg1Meas.c | HwAg1MeasHwAg1AutTrim_Oper,HwAg1MeasHwAg1ClrTrim_Oper,HwAg1MeasHwAg1ReadTrim_Oper,HwAg1MeasHwAg1WrTrim_Oper | 767,769,811,813,843,914,916 | I | |
CM670A | 87 | HwAg1Meas.c | HwAg1MeasHwAg1TrimPrfmdSts_Oper | 873 | I | |
CM670A | 85 | HwAg1Meas.c | HwAg1MeasHwAg1AutTrim_Oper,HwAg1MeasHwAg1ClrTrim_Oper,HwAg1MeasHwAg1WrTrim_Oper | 768,769,812,813,915,916 | I | |
CM670A | 27 | HwAg1Meas.c | HwAg1MeasPer2,HwAg1MeasPer3 | 1134-1189,1279-1368 | I | |
CM670A | 48 | HwAg1Meas.c | HwAg1MeasPer2 | 1160 | I | |
CM670A | 49 | HwAg1Meas.c | HwAg1MeasPer2 | 1145 | I | |
CM670A | 46 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 47 | HwAg1Meas.c | HwAg1MeasPer2 | 1179 | I | |
CM670A | 44 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 45 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 42 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 43 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 40 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 41 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 104 | HwAg1Meas.c | HwAg1MeasPer5 | 1616 | I | |
CM670A | 75 | HwAg1Meas.c | HwAg1MeasPer3 | 1299 | I | |
CM670A | 74 | HwAg1Meas.c | HwAg1MeasPer2 | 1151 | I | |
CM670A | 73 | HwAg1Meas.c | HwAg1MeasPer3 | 1291 | I | |
CM670A | 71 | HwAg1Meas.c | HwAg1MeasPer3 | 1312 | I | |
CM670A | 70 | HwAg1Meas.c | HwAg1MeasPer3 | 1331 | I | |
CM670A | 91 | HwAg1Meas.c | HwAg1MeasPer4 | 1473,1476 | I | |
CM670A | 90 | HwAg1Meas.c | HwAg1MeasHwAg1AutTrim_Oper | 765-770 | I | |
CM670A | 100 | HwAg1Meas.c | HwAg1MeasPer4,HwAg1MeasPer5 | 1503-1515,1612,1616 | I | |
CM670A | 95 | HwAg1Meas.c | HwAg1MeasPer4 | 1461,1572 | I | |
CM670A | 97 | HwAg1Meas.c | HwAg1MeasPer4 | 1524 | I | |
CM670A | 39 | HwAg1Meas.c | HwAg1MeasPer2 | 1122-1207 | I | |
CM670A | 58 | HwAg1Meas.c | HwAg1MeasPer3 | 1310 | I | |
CM670A | 55 | HwAg1Meas.c | HwAg1MeasPer2 | 1170 | I | |
CM670A | 54 | HwAg1Meas.c | HwAg1MeasPer2,HwAg1MeasPer3 | 1121-1206,1265-1376 | I | |
CM670A | 31 | HwAg1Meas.c | HwAg1MeasPer4 | 1569 | I | |
CM670A | 30 | HwAg1Meas.c | HwAg1MeasPer4 | 1570 | I | |
CM670A | 62 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 53 | HwAg1Meas.c | HwAg1MeasPer1 | 1044-1069 | I | |
CM670A | 33 | HwAg1Meas.c | HwAg1MeasPer4 | 1543 | I | |
CM670A | 63 | HwAg1Meas.c | HwAg1MeasPer3 | 1323 | I | |
CM670A | 32 | HwAg1Meas.c | HwAg1MeasPer4 | 1543 | I |