This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

System Function (Applicative Software)

System Function (Applicative Software)

1 - Component Implementation

Component Implementation

Component Documentation

1.1 - Assi_IntegrationManual

Integration Manual

For

Assist

VERSION: 1.0

DATE: <02-JUN-2015>

Prepared By:

Spandana Balani

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSpandana Balani1.002-Jun-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.00.00
<2><Software Naming Conventions>Process 4.00.00
<3><Coding standards>Process 4.00.00
<4>FDD – SF001A_Assi_DesignSee Synergy Subproject version
<Add if more available>

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
FLTINJENASet to STD_ON for Fault injection

Configuration Files to be provided by Integration Project

<Configuration file that will generated from this components that will require Da Vinci Config generation or manual generation. Describe each parameter >

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
None
RunnableScheduling RequirementsTrigger
AssiPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

1.2 - Assi_MDD

Module Design Document

For

Assist

VERSION: 2.0

DATE: 09-AUG-2016

Prepared By:

Nick Saxton

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSB1.002-JUN-2015
2Quality updateNS2.009-AUG-2016

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 Assi & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of Assi 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.2 Initialization Functions 11

7.3 PERIODIC FUNCTIONS 11

7.3.1 Per: Assiper1 11

7.3.1.1 Design Rationale 11

7.3.1.2 Store Module Inputs to Local copies 11

7.3.1.3 (Processing of function)……… 11

7.3.1.4 Store Local copy of outputs into Module Outputs 11

7.4 Non PERIODIC FUNCTIONS 11

7.5 Interrupt Functions 11

7.6 Serial Communication Functions 12

7.7 Local Function/Macro Definitions 12

7.8 GLObAL Function/Macro Definitions 12

7.9 TRANSIENT FUNCTIONS 12

8 Unit Test Considerations 13

9 Known Limitations With Design 14

10 NoneAppendix 15

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.00.00
<2><Software Naming Conventions>Process 4.00.00
<3><Coding standards>Process 4.00.00
<4>FDD - SF001A_Assi_DesignSee Synergy Subproject version
<Add if more available>

Assi & High-Level Description

Refer FDD

Design details of software module

Graphical representation of Assi

Data Flow Diagram

Module level DFD

Sub-Module level DFD

COMPONENT FLOW DIAGRAM

Variable Data Dictionary

User defined typedef definition/declaration

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

N/A

Variable definition for enumerated types

Enum NameElement NameValue
N/A<(Variable name qualified Refer[2])><Define the value >

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

< All program specific constants will be defined in detail >

Local

Constant NameResolutionUnitsValue
Refer constants from .m file

Global

<This section lists the global constants used by the module. For details on global constants, refer to the Data Dictionary for the application>

Constant Name
Refer constants from .m file

Module specific Lookup Tables Constants

<(This is for lookup tables (arrays) with fixed values, same name as other tables)>

Constant NameResolutionValueSoftware Segment
Refer .m file

Software Module Implementation

Sub-Module Functions

NONE

Initialization Functions

None

PERIODIC FUNCTIONS

(Note: For multiple periodic functions, insert new headers at the “Header 2” level – subset of “7.3 Periodic Functions” and follow the same sub-section design shown below). If none required, place the text “None”)>

Per: Assiper1

Design Rationale

Fault Injection client call is conditional compiled based on “FLTINJENA” build constant.

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Non PERIODIC FUNCTIONS

None

Interrupt Functions

None

Serial Communication Functions

None

Local Function/Macro Definitions

None

GLObAL Function/Macro Definitions

None

TRANSIENT FUNCTIONS

Unit Test Considerations

None

Known Limitations With Design

Appendix

1.3 - Assi_PeerReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF001A_Assi_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF001A_Assi_Impl_1.6.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11410





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








N/A
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Matt Leser


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
Brionna Spencer
































Avinash James
































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








N/A
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

05/10/17
Component Type :


Application



























Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
Brionna Spencer
































Avinash James






























Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


Assi.c

Source File Revision:


6
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

Assi_MDD.docx

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF001A_Assi_Design

Revision:
1.5.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











All tags removed per requirement and csv file deleted.
























All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
Brionna Spencer
































Avinash James






























Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


Assi.cSource File Revision:


6

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate










Updated 16.10 deviation comments


























Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
Brionna Spencer
































Avinash James





























2 - Component Implementation

Component Implementation

Component Documentation

2.1 - AssiHiFrq_Integration_Manual

Integration Manual

For

SF028A AssiHiFrq

VERSION: 1.0

DATE: 05-AUG-2015

Prepared By:

Kathleen Creager

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionKathleen Creager1.005-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Ref #TitleVersion
1EA4 Software Naming Conventions.doc01.00.00
2Software Design and Coding Standards.doc2.1
3SF028A_AssiHiFrq_DesignSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

See DataDict.m file

Required Global Data Outputs

See DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
AssiHiFrqInit1NoneRTE Init
RunnableScheduling RequirementsTrigger
AssiHiFrqPer1NoneRTE 2 ms

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
AssiHiFrq_START_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

<Define all the preprocessor Macros needed and conditions when needed>.

Optimization Settings

<Define Optimization levels that are needed and conditions when needed>.

Appendix

<This section is for appendix>

2.2 - AssiHiFrq_MDD

Module Design Document

For

AssiHiFrq

February 15, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA

Change History

DescriptionAuthorVersionDate
Initial VersionKathleen Creager01.00.0004-Aug-2015
Updated per design vers. 1.1.0Matthew Leser2.009-Feb-2017
Updated to include Unit Test ConsiderationMatthew Leser3.015-Feb-2017

Table of Contents

1 AssiHiFrq High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of AssiHiFrq 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1 Sub-Module Functions 7

4.1.1 Init: AssiHiFrqInit1 7

4.1.1.1 Design Rationale 7

4.1.1.2 Module Outputs 7

4.1.2 Per: AssiHiFrqPer1 7

4.1.2.1 Design Rationale 7

4.1.2.2 Store Module Inputs to Local copies 7

4.1.2.3 (Processing of function)……… 7

4.1.2.4 Store Local copy of outputs into Module Outputs 7

4.2 Server Runables 7

4.3 Interrupt Functions 8

4.4 Module Internal (Local) Functions 8

4.5 GLOBAL Function/Macro Definitions 8

5 Known Limitations with Design 9

6 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

AssiHiFrq High-Level Description

Implements the SF028A_AssiHiFrq_Design FDD. This function provides a means of compensating for system

inertia and road feedback. It is tunable over both vehicle speed and handwheel torque to obtain the desired

level of disturbance rejection under various operating conditions. It passes handwheel torque through a high-pass

filter and multiplies the resulting signal by a tunable gain factor. The output is known as high-frequency assist

and is simply added to the usual assist calculated elsewhere

Design details of software module

Graphical representation of AssiHiFrq

Data Flow Diagram

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
None<Refer MDD guidelines [1]><Refer MDD guidelines [1]><Refer MDD guidelines [1]>

Software Component Implementation

Sub-Module Functions

Init: AssiHiFrqInit1

Design Rationale

Init function is present in DataDict.m file but not shown in FDD model, and no initialization logic is needed. This is implemented as an empty function.

Module Outputs

None

Per: AssiHiFrqPer1

Design Rationale

FDD model does not contain a block named AssiHiFrqPer1; this function implements the AssiHiFrq block.

BilnrIntrpnWithRound_u16_u16MplXu16MplY function from NxtrIntrpn library used to implement the 2-D Lookup tables in the SF028A_AssiHiFrq/AssiHiFrq/AssiHiFrq/Determine Gain model block.

Blnd_f32 function from NxtrMath library used to implement the part of the model that computes GainVal_MtrNmpHwNm from the outputs of the three bilinear interpolation functions in the SF028A_AssiHiFrq/AssiHiFrq/AssiHiFrq/Determine Gain model block.

FilHpUpdGain and FilHpUpdOutp_f32 functions from the NxtrFil library used to implement HP-CF Filter block in the SF028A_AssiHiFrq/AssiHiFrq/AssiHiFrq model block.

A note in the model mentions that the frequency lookup table for the high pass filter cutoff frequency could be converted to the filter gain values at initialization. This was not done because the DataDict.m file did not contain the necessary IRV for the converted table, and the FilHpUpdGain library function expects frequency in Hz; if this throughput improvement (converting the frequency table once in initialization) is made in the future, a new version of FilHpUpdGain will be needed.

LnrIntrpn_u16_u16VariXu16VariY function from NxtrIntrpn library used to implement the “freq lookup” block in the SF028A_AssiHiFrq/AssiHiFrq/AssiHiFrq model block.

Store Module Inputs to Local copies

See FDD

(Processing of function)………

See FDD, and design rationale noted above.

Store Local copy of outputs into Module Outputs

See FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

PIL Testers: Do not use MIL vectors which have input signals outside the range +/- one billion because these vectors are not per the current MIL test guidelines.

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
3EA4 Software Naming Conventions.doc01.00.00
4Software Design and Coding Standards.doc2.1
5SF028A_AssiHiFrq_DesignSee Synergy subproject version

2.3 - AssiHiFrq_Review


Overview

Summary Sheet
Synergy Project
MDD


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF028A_AssiHiFrq_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.4.1

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#9729





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


N/ASource Code


N/APolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Changes were only made to MDD



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

02/15/17
































Lead Peer Reviewer:


JK


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Krishna Anne






































































Sheet 3: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

AssiHiFrq_MDD.docx
MDD Revision:

3


























Source File Name:


AssiHiFrq.cSource File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

02/15/17
































Lead Peer Reviewer:


JK


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Krishna Anne





































































3 - Component Implementation

Component Implementation

Component Documentation

3.1 - AssiPahSum_IntegrationManual

Integration Manual

For

AssiPahSum

VERSION: 1.0

DATE: 07-Jul-2015

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionN. Saxton1.007-Jul-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF034B Assist Path SummationSee Synergy subproject version
2Software Naming ConventionsProcess 4.01.0
3Software Design and Coding StandardsProcess 4.01.0

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer to DataDict.m file in the FDD.

Required Global Data Outputs

Refer to DataDict.m file in the FDD.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
None
RunnableScheduling RequirementsTrigger
AssiPahSumPer1NoneRTE (2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

3.2 - AssiPahSum_MDD

Module Design Document

For

AssiPahSum

July 07, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USAChange History

DescriptionAuthorVersionDate
Initial VersionN. Saxton1.00.0007-Jul-2015

Table of Contents

1 AssiPahSum & High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of AssiPahSum 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1.1 Sub-Module Functions 7

4.1.2 Interrupt Service Routines 7

4.1.3 Server Runnable Functions 7

4.1.4 Module Internal (Local) Functions 7

4.1.5 Transition Functions 7

5 Known Limitations with Design 8

6 UNIT TEST CONSIDERATION 9

Appendix A Abbreviations and Acronyms 10

Appendix B Glossary 11

Appendix C References 13

AssiPahSum & High-Level Description

This function merges command signals and is meant for use in vehicle programs that do not need the extra features of the SF034A firewall function.

Design details of software module

Graphical representation of AssiPahSum

Data Flow Diagram

Component level DFD

N/A

Function level DFD

N/A

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

None

Software Component Implementation

Sub-Module Functions

Initialization sub-module {_Init()}

None

Periodic sub-module {_Per()}

AssiPahSumPer1
Design Rationale

Refer to FDD

Store module inputs to local copies

Refer to FDD

(Processing of function)……

Refer to FDD

Store local copy of outputs into module outputs

Refer FDD

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

None

Transition Functions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

None

Abbreviations and Acronyms

None

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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD – SF034B Assist Path SummationSee Synergy subproject version

3.3 - AssiPahSum_Peer_Review_Checklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF034B_AssiPahSum
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF034B_AssiPahSum_Impl_1.1.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11059





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








N/A
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/19/17
































Lead Peer Reviewer:


Matt Leser


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan




































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file










Application data types removed

























Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

05/19/17
Component Type :


Application



























Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


AssiPahSum.c

Source File Revision:


2
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

AssiPahSum_MDD.docx

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF034B_AssiPahSum_Design

Revision:
1.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











tags were removed
























All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/19/17
































Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan
































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


AssiPahSum.cSource File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/19/17
































Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Shruthi Raghavan































































4 - Component Implementation

Component Implementation

Component Documentation

4.1 - AssiSumLim_Integration Manual

Integration Manual

For

‘AssiSumLim’

VERSION: 1.0

DATE: 04-June-2015

Prepared By:

Sankardu Varadapureddi,

Nexteer Automotive,

Saginaw, MI, USA


Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSankardu Varadapureddi1.022-May-2015


Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF004B_AssiSumLim_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 3.06.00
3Software Design and Coding StandardsProcess 3.06.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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.

InitScheduling RequirementsTrigger
AssiSumLimInit1NoneInit
RunnableScheduling RequirementsTrigger

AssiSumLimPer1

SetManTqCmd_Oper

None

None

2ms

on event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

Non RTE NvM Blocks

Block Name
None

RTE NvM Blocks

Block Name
None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None

Appendix

None

4.2 - AssiSumLim_MDD

Module Design Document

For

‘AssiSumLim’

VERSION: 3.0

DATE: 15-May-2017

Prepared By:

Shawn Penning,

Nexteer Automotive,

Saginaw, MI, USA


Location:
The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSankardu Varadapureddi1.003-Jun-2015
2Updated Graph , added Limitations, Updated Server Runnable InformationMatthew Leser2.015-May-2017
3Removed application data types; PIM range correction notedShawn Penning3.014-Jun-2017


Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 AssiSumLim High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of AssiSumLim 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 9

4.3 COMPONENT FLOW DIAGRAM 9

5 Variable Data Dictionary 10

5.1 User defined typedef definition/declaration 10

5.2 Variable definition for enumerated types 10

6 Constant Data Dictionary 11

6.1 Program(fixed) Constants 11

6.1.1 Embedded Constants 11

6.1.1.1 Local 11

6.1.1.2 Global 11

6.1.2 Module specific Lookup Tables Constants 11

7 Software Module Implementation 12

7.1 Sub-Module Functions 12

7.1.1 Initialization Functions 12

7.1.1.1 INIT: AssiSumLimInit1 12

7.1.1.1.1 Design Rationale 12

7.1.1.1.2 Module Outputs 12

7.1.1.1.3 Module Internal 12

7.1.2 PERIODIC FUNCTIONS 12

7.1.2.1 Per: AssiSumLimPer1 12

7.1.2.1.1 Design Rationale 12

7.1.2.1.2 Store Module Inputs to Local copies 12

7.1.2.1.3 (Processing of function)……… 12

7.1.2.1.4 Store Local copy of outputs into Module Outputs 12

7.1.3 Interrupt Functions 12

7.1.4 Server runnables 13

7.1.4.1 SetManTqCmd 13

7.1.4.1.1 Design Rationale 13

7.1.4.1.2 Store Module Inputs to Local copies 13

7.1.4.1.3 (Processing of function)……… 13

7.1.4.1.4 Store Local copy of outputs into Module Outputs 13

7.1.5 Local Function/Macro Definitions 13

7.1.5.1 Local Function #1 13

7.1.5.1.1 Description 13

7.1.5.2 Local Function #2 13

7.1.5.2.1 Description 13

7.1.6 GLObAL Function/Macro Definitions 13

7.1.7 Tranisition FUNCTIONS 13

8 Known Limitations With Design 14

9 UNIT TEST CONSIDERATION 15

10 Appendix 16

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
FDDFunctional Design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesProcess 3.06.00
2Software Naming Conventions2.0
3Software Design and Coding standards2.1
4FDD - SF004B_AssiSumLim_DesignSee Synergy sub project version

AssiSumLim High-Level Description

Design details of software module

Graphical representation of AssiSumLim

Data Flow Diagram

Refer FDD

Module level DFD

Refer FDD

Sub-Module level DFD

Refer FDD

COMPONENT FLOW DIAGRAM

Refer FDD

Variable Data Dictionary

User defined typedef definition/declaration

<This section documents any user types uniquely used for the module.>

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

None

Variable definition for enumerated types

Enum NameElement NameValue
None

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

Local

Constant NameResolutionUnitsValue

Note: Refer .m file for constants definitions.

Global

Constant Name
None

Module specific Lookup Tables Constants

Constant NameResolutionValueSoftware Segment
None

Software Module Implementation

Sub-Module Functions

Initialization Functions

AssiSumLimInit1

INIT: AssiSumLimInit1

Design Rationale

Design follows implemenetation in FDD.

Module Outputs

Refer ‘AssiSumLimInit1’ block in FDD

Module Internal

None

PERIODIC FUNCTIONS

Per: AssiSumLimPer1

Design Rationale

Design follows implementation in FDD.

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD (Block ‘AssiSumLmtPer1’)

Store Local copy of outputs into Module Outputs

Refer to FDD

Interrupt Functions

None


Server runnables

SetManTqCmd

Function NameSetManTqCmd_OperTypeMinMax
Arguments PassedVehSpd_Kph_T_f32float320.0F511.0F
ManTqCmdfloat32-8.88.8
ManTqCmdEnabooleanFALSETRUE
Return ValueManTqCmdRtn_Uls_T_enumStd_ReturnType01

Design Rationale

Argument names should have _arg added to end of names for ManTqCmd and ManTqCmdEna.

Store Module Inputs to Local copies

None

(Processing of function)………

Refer ‘SetManTqCmd’ block in FDD

Store Local copy of outputs into Module Outputs

None

Local Function/Macro Definitions

None

GLObAL Function/Macro Definitions

None

Tranisition FUNCTIONS

None

Known Limitations With Design

.

Tustin Filter does not have a library block in design or code (could be added to component after CR EA4#6619 is completed).

SetNtcSts.CallLocation should include AssiSumLimInit1 in DataDict.m (see CR EA4#12283).

Range for MotVelFilLp is incorrect and could cause overflow. Should be max of 1350, not 62500. This will be addressed in future design with CR EA4#12743.

UNIT TEST CONSIDERATION

None

Appendix

None

4.3 - AssiSumLim_PeerReview


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF004B_AssiSumLim_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF004B_AssiSumLim_Impl_2.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#17570





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Approval given by Steve to deviate from Review Process by not inviting others due to Program Timing.



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/16/17
































Lead Peer Reviewer:


Steven Horwath


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


AssiSumLim.c

Source File Revision:


5
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

AssiSumLim_MDD.docx

Revision:
3

























FDD/SCIR/DSR/FDR/CM Name:




SF004B_AssiSumLim_Design

Revision:
2.2.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/16/17
































Lead Peer Reviewer:


Steven Horwath
Approved by Reviewer(s):





Yes































Other Reviewer(s):




































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


AssiSumLim.cSource File Revision:


5

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/16/17
































Lead Peer Reviewer:


Steven Horwath
Approved by Reviewer(s):





Yes































Other Reviewer(s):



































































5 - Component Implementation

Component Implementation

Component Documentation

5.1 - CmplncErr_IntegrationManual

Integration Manual

For

Compliance Error

VERSION: 1.0

DATE: 11-JAN-2016

Prepared By:

Kannappa Chidambaram,

Tata Elxsi, INDIA

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKannappa Chidambaram P R1.001/11/2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF041A_CmplncErr_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Please refer DataDict.m file.

Required Global Data Outputs

Please refer DataDict.m file.

Specific Include Path present

NA

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
CmplncErrInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
CmplncErrPer1NoneRTE(2 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None.

5.2 - CmplncErr_MDD

Module Design Document

For

CmplncErr

Prepared For:

,

Prepared By:

Kannappa Chidambaram,

Tata Elxsi, INDIA


Change History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKannappa Chidambaram P R1.001/11/2016


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 CmplncErr & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of CmplncErr 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: CmplncErrInit1 8

5.1.2 Per: CmplncErrPer1 8

5.2 Server Runnable 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 9

7 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

Introduction

Purpose

CmplncErr & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of CmplncErr

Data Flow Diagram

Please refer FDD

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 .m file

Software Component Implementation

Sub-Module Functions

Init: CmplncErrInit1

Design Rationale

None

Module Outputs

None

Per: CmplncErrPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runnable

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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.docProcess 4.02.00
4Software Design and Coding Standards.docProcess 4.02.00
5FDD: SF041A_ CmplncErr_DesignSee Synergy sub project version

5.3 - CmplncErr_Review

Review_Checklist

Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace
Integration Manual


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet




























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF041A_CmplncErr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF041A_CmplncErr_Impl_1.0.0



























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Kannappa Chidambaram (Tata Elxsi)
Work CR ID:


EA4#2701





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:








































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/25/16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Kannappa Chidambaram, Krishna Anne
Review Date :

20-Jan-16
Component Type :


Application



























Lead Peer Reviewer:


Sankardu V
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Sudeep Shankar






































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


CmplncErr.c

Source File Revision:


1
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

CmplncErr_MDD

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF041A_CmplncErr_Design

Revision:
1.1.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








Yes
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:
















Use of explicit typecasting of uint16 type variable to sint32 type suppress the QAC 10.1 rule
























Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







Yes
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Kannappa Chidambaram, Krishna Anne


Review Date :

21-Jan-16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sudeep Shankar






































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

CmplncErr_MDD













MDD Revision:

1


























Source File Name:


CmplncErr.c











Source File Revision:


1

Source File Name:


NA











Source File Revision:





Source File Name:


NA











Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Kannappa Chidambaram, Krishna Anne


Review Date :

21-Jan-16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sudeep Shankar






































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


CmplncErr.c











Source File Revision:


1

Source File Name:


NA











Source File Revision:





Source File Name:


NA











Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Kannappa Chidambaram, Krishna Anne


Review Date :

21-Jan-16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sudeep Shankar






































































Sheet 7: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. CmplncErr_IntegrationManual

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 1





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








N/A
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Kannappa Chidambaram, Krishna Anne


Review Date :

21-Jan-16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sudeep Shankar





































































5.4 - requirements

FDDIDSourceFunctionLine(s)StatusComment
.SwFileName.SwFuncName.SwLines.SwStatus.SwComment
SF041A51CmplncErr.cCmplncErrPer1264I
SF041A39CmplncErr.cCmplncErrPer1262,264I
SF041A38CmplncErr.cCmplncErrPer1256I
SF041A48CmplncErr.cCmplncErrPer1264I
SF041A49CmplncErr.cCmplncErrPer1250I
SF041A54CmplncErr.cCmplncErrPer1234I
SF041A57CmplncErr.cCmplncErrPer1234I
SF041A56CmplncErr.cCmplncErrPer1234I
SF041A42CmplncErr.cCmplncErrPer1262,264I
SF041A36CmplncErr.cCmplncErrPer1234I
SF041A40CmplncErr.cCmplncErrPer1234I
SF041A41CmplncErr.cCmplncErrPer1262,264I
SF041A35CmplncErr.cCmplncErrPer1240I
SF041A62CmplncErr.cCmplncErrPer1250I
SF041A63CmplncErr.cCmplncErrPer1224,228I
SF041A64CmplncErr.cCmplncErrPer1262I
SF041A65CmplncErr.cCmplncErrPer1222,245I
SF041A66CmplncErr.cCmplncErrPer1264I
SF041A47CmplncErr.cCmplncErrPer1262I
SF041A52CmplncErr.cCmplncErrPer1262I
SF041A53CmplncErr.cCmplncErrPer1250I

6 - Component Implementation

Component Implementation

Component Documentation

6.1 - Dampg_IntegrationManual

Integration Manual

For

Dampg

VERSION: 1.0

DATE: 01-July-2015

Prepared By:

Sankardu Varadapureddi,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSankardu Varadapureddi1.001-July-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
vFDD – SF003A_Dampg_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.01.00
3Software Design and Coding StandardsProcess 4.01.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
FLTINJENASet to ‘STD_ON’ for fault injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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.

InitScheduling RequirementsTrigger
DampgInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
DampgPer1NoneRTE (2 ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None

6.2 - Dampg_MDD

Module Design Document

For

Dampg

July 1, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Sankardu Varadapureddi,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionSankardu Varadapureddi1.001-July-2015


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 Dampg High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of <Component Name> 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

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.1 Sub-Module Functions 9

5.1.2 Interrupt Service Routines 9

5.1.3 Server Runnable Functions 9

5.1.4 Module Internal (Local) Functions 9

5.1.4.1 Local Function #1 9

5.1.4.2 Description 9

5.1.4.3 Local Function #2 9

5.1.4.4 Description 9

5.1.5 Transition Functions 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Purpose

Scope

Dampg High-Level Description

Refer to FDD

Design details of software module

Graphical representation of Dampg

Data Flow Diagram

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

None

Software Component Implementation

Sub-Module Functions

Initialization sub-module {_Init()}

DampgInit1 (Refer FDD for details)

Periodic sub-module {_Per()}

DampgPer1 (Refer FDD for details)

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameMotVelDampgCmdTypeMinMax
Arguments PassedMotVelCrf_MotRadPerSec_T_f32float32-13501350
HwTq_HwNwtMtr_T_f32float32-1010
TSca_Uls_T_f32float32010
VehSpd_Kph_T_f32float320511
Return ValueActvDampg_MotNwtMtr_T_f32float32-176176

Description

‘MotVelDampgCmd’ block implementation.

Local Function #2

Function NameHydPwrSteerDampgCmdTypeMinMax
Arguments PassedVehSpd_Kph_T_f32float320511
TSca_Uls_T_f32float32010
AssiCmdBas_MotNwtMtr_T_f32float32-8.88.8
MotVelCrf_MotRadPerSec_T_f32float32-13501350
Return ValueHydDampg_MotNwtMtr_T_f32float32-8.88.8

Description

‘HydPwrSteerDampgCmd’ block implementation.

Transition Functions

None

Known Limitations with Design

None

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.0
5FDD - SF003A_Dampg_DesignSee Synergy sub project version

6.3 - Dampg_Peer_Review_Checklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF003A_Dampg_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF003A_Dampg_Impl_1.7.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11359





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Matt Leser




































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

05/26/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Matt Leser
































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


Dampg.c

Source File Revision:


7
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

Dampg_MDD.docx

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF003A_Dampg_Design

Revision:
1.4.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


Dampg.cSource File Revision:


7

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser































































7 - Component Implementation

Component Implementation

Component Documentation

7.1 - DampgPahSum_IntegrationManual

Integration Manual

For

DampgPahSum

VERSION: 1.0

DATE: 07-Jul-2015

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionN. Saxton1.007-Jul-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF035B Damping Path SummationSee Synergy subproject version
2Software Naming ConventionsProcess 4.01.0
3Software Design and Coding StandardsProcess 4.01.0

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer to DataDict.m file in the FDD.

Required Global Data Outputs

Refer to DataDict.m file in the FDD.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
None
RunnableScheduling RequirementsTrigger
DampgPahSumPer1NoneRTE (2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

7.2 - DampgPahSum_MDD

Module Design Document

For

DampgPahSum

July 07, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USAChange History

DescriptionAuthorVersionDate
Initial VersionN. Saxton1.00.0007-Jul-2015

Table of Contents

1 DampgPahSum & High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of DampgPahSum 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1.1 Sub-Module Functions 7

4.1.2 Interrupt Service Routines 7

4.1.3 Server Runnable Functions 7

4.1.4 Module Internal (Local) Functions 7

4.1.5 Transition Functions 7

5 Known Limitations with Design 8

6 UNIT TEST CONSIDERATION 9

Appendix A Abbreviations and Acronyms 10

Appendix B Glossary 11

Appendix C References 13

DampgPahSum & High-Level Description

This function calculates the damping command by taking the difference of the base damping and inertia compensation and is intended for use in programs that do not require the extra features of SF035A.

Design details of software module

Graphical representation of DampgPahSum

Data Flow Diagram

Component level DFD

N/A

Function level DFD

N/A

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

None

Software Component Implementation

Sub-Module Functions

Initialization sub-module {_Init()}

None

Periodic sub-module {_Per()}

DampgPahSumPer1
Design Rationale

Refer to FDD

Store module inputs to local copies

Refer to FDD

(Processing of function)……

Refer to FDD

Store local copy of outputs into module outputs

Refer FDD

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

None

Transition Functions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

None

Abbreviations and Acronyms

None

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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD – SF035B Damping Path SummationSee Synergy subproject version

7.3 - DampgPahSum_Peer_Review_Checklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF035B_DampgPahSum_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF035B_DampgPahSum_Impl_1.1.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11061





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Matt Leser




































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

05/26/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Matt Leser
































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


DampgPahSum.c

Source File Revision:


2
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

DampPahSum_MDD.doc

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF035B_DampgPahSum_Design

Revision:
1


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


DampgPahSum.cSource File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/26/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser































































8 - Component Implementation

Component Implementation

Component Documentation

8.1 - DrvrTqEstimn_ Peer Review Checklists


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF056A_DrvrTqEstimn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF056A_DrvrTqEstimn_Impl_1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#12871





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

07/27/17
































Lead Peer Reviewer:


Shawn Penning


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brionna Spencer
Brendon Binder




































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


DrvrTqEstimn.c

Source File Revision:


3
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. NA

























MDD Name:

DrvrTqEstimn_MDD

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF056A_DrvrTqEstimn_Design

Revision:
1.0.2


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







Yes
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:





Review Date :



































Lead Peer Reviewer:






Approved by Reviewer(s):




































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


DrvrTqEstimn.c
Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg 8.1.1-R



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate










11.5 and 12.12 Deviation comments removed because they did not apply



































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:





Review Date :



































Lead Peer Reviewer:






Approved by Reviewer(s):




































Other Reviewer(s):









































































8.2 - DrvrTqEstimn_Integration Manual

Integration Manual

For

DrvrTqEstimn

VERSION: 1.0

DATE: 01-Feb-2017

Prepared By:

Matthew Leser

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionMatthew Leser1.001-FEB-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF056A_DrvrTqEstimn_DesignSee Synergy Sub Project Version
2Software Naming Conventions1.0
3Software Design and Coding Standards2.1

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

None

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
DrvrTqEstimnInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
DrvrTqEstimnPer1NoneRTE (2 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None.

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None.

8.3 - DrvrTqEstimn_MDD

Module Design Document

For

DrvrTqEstimn

Feb 2, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Matthew Leser

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA


Change History

DescriptionAuthorVersionDate
Initial VersionMatthew Leser1.002-Feb-2017


Table of Contents

1 Introduction 4

1.1 Purpose 4

2 DrvrTqEstimn & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of DrvrTqEstimn 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: DrvrTqEstimnInit1 8

5.1.1.1 Design Rationale 8

5.1.1.2 Module Outputs 8

5.1.2Per: DrvrTqEstimnPer1 8

5.1.1.3 Design Rationale 8

5.1.1.4 Store Module Inputs to Local copies 8

5.1.1.5 (Processing of function)……… 8

5.1.1.6 Store Local copy of outputs into Module Outputs 8

5.2 Server Runnables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.4.1.1 Design Rationale 8

5.4.1.2 Processing 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 10

7 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

Introduction

Purpose

MDD for Driver Torque Estimation.

DrvrTqEstimn & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of DrvrTqEstimn

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: DrvrTqEstimnInit1

Design Rationale

None

Module Outputs

None

5.1.2Per: DrvrTqEstimnPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

Design Rationale

None.

Processing

None.

GLOBAL Function/Macro Definitions

None.

Known Limitations with Design

None.

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 : SF056A_DrvrTqEstimn_DesignSee Synergy Sub-project version

9 - Component Implementation

Component Implementation

Component Documentation

9.1 - DualCtrlrOutpMgr_IntegrationManual

Integration Manual

For

DualCtrlrOutpMgr

VERSION: 1.0

DATE: 18-OCT-2017

Prepared By:

Shawn Penning,

Nexteer Automotive,

Saginaw, MI, USA

Revision History

DescriptionAuthorVersionDate
Initial versionShawn Penning1.018-Oct-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1EA4 Software Naming Conventions.doc01.00.00
2Software Design and Coding Standards.doc2.1
3SF062B_ DualCtrlrOutpMgr_DesignSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

See DataDict.m file

Required Global Data Outputs

See DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
DualCtrlrOutpMgrInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
DualCtrlrOutpMgrPer1NoneRTE(2ms)
DualCtrlrOutpMgrPer2NoneRTE(10ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

9.2 - DualCtrlrOutpMgr_MDD

Module Design Document

For

DualCtrlrOutpMgr

18-Oct-2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Shawn Penning,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial versionShawn Penning1.018-Oct-2017


Table of Contents

1 DualCtrlrOutpMgr High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of DualCtrlrOutpMgr 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1 Sub-Module Functions 7

4.1.1 Init: DualCtrlrOutpMgrInit1 7

4.1.1.1 Design Rationale 7

4.1.1.2 Module Outputs 7

4.1.2 Init: DualCtrlrOutpMgrPer1 7

4.1.2.1 Design Rationale 7

4.1.2.2 Module Outputs 7

4.2 Server Runables 7

4.3 Interrupt Functions 7

4.3.1 Interrupt Function Name 7

4.4 Module Internal (Local) Functions 8

4.4.1 Local Function #1 8

4.4.1.1 Design Rationale 8

4.4.1.2 Processing 8

4.5 GLOBAL Function/Macro Definitions 8

5 Known Limitations with Design 9

6 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C Please references 13

DualCtrlrOutpMgr High-Level Description

Refer to FDD

Design details of software module

Refer to FDD

Graphical representation of DualCtrlrOutpMgr

Data Flow Diagram

Refer to FDD

Component level DFD

Refer to FDD

Function level DFD

Refer to FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer to .m file for constants

Software Component Implementation

Sub-Module Functions

Init: DualCtrlrOutpMgrInit1

Design Rationale

Refer to FDD

Module Outputs

None

Per1: DualCtrlrOutpMgrPer1

Design Rationale

Refer to FDD.

ElapsedTimeFlag function is used to avoid the repetitive code and make optimization.

Module Outputs

None

Per2: DualCtrlrOutpMgrPer2

Design Rationale

Refer to FDD.

ElapsedTimeFlag function is used to avoid the repetitive code and make optimization.

Module Outputs

None

Server Runables

None

Interrupt Functions

None

Interrupt Function Name

None

Module Internal (Local) Functions

Local Function #1

Function NameElapsedTimeFlagTypeMinMax
Arguments PassedPrmTmrThd_Cnt_T_u16uint160U1000
FltStsFlag1_Cnt_T_loglbooleanFALSETRUE
*PimFlag_Cnt_T_loglbooleanFALSETRUE
*PimTmr_Cnt_T_u32uint320U4294967295U
PimFlgPrev_Cnt_T_loglbooleanFALSETRUE
*OutpFlg_Cnt_T_loglbooleanFALSETRUE
Return ValueNANANANA

Design Rationale

Implementation of 'ElapsedTimeX' block (X=1,2,3 etc).

Processing

Please refer 'ElapsedTimeX' block (X=1,2,3 etc).

Local Function #2

Function NameAndoperTypeMinMax
Arguments PassedImcDualMotCtrlMtgtnEnaVld_Cnt_T_loglbooleanFALSETRUE
ImcDualMotCtrlMtgtnEna_Cnt_T_loglbooleanFALSETRUE
Return ValuebooleanFALSETRUE

Design Rationale

Implementation of 'Andoper' block (X=1,2,3 etc).

Processing

Please refer ‘Andoper' block (X=1,2,3 etc).

Local Function #3

Function NameDecoderTypeMinMax
Arguments PassedMotAndThermProtnLoaMod_Cnt_T_u08uint80U1000
Return ValuebooleanFALSETRUE

Design Rationale

Implementation of 'Decoder' block (X=1,2,3 etc).

Processing

Please refer 'Decoder' block (X=1,2,3 etc).

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None.

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 Please 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

Please 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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD: SF062B_DualCtrlrOutpMgr_DesignSee Synergy subproject version

9.3 - DualCtrlrOutpMgr_PeerReview


Overview

Summary Sheet
Davinci Files
Source Code
MDD
PolySpace
Integration Manual
Synergy Project


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF062B_DualCtrlrOutpMgr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF062B_DualCtrlrOutpMgr_Impl_1.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#15146





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:

Initial Version

versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

11/09/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Matt Leser
Brendon Binder




































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


DualCtrlrOutpMgr.c

Source File Revision:


1
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

DualCtrlrOutpMgr_MDD

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF062A_DualCtrlrOutpMgr_Design

Revision:
1.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







Yes
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







Yes
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

11/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser
Brendon Binder




































































Sheet 4: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

DualCtrlrOutpMgr_MDD













MDD Revision:

1


























Source File Name:


DualCtrlrOutpMgr.c











Source File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:

Initial version










































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

11/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


DualCtrlrOutpMgr.c











Source File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00














Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

11/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. DualCtrlrOutpMgr_IntegrationManual.docIntegration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 1





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








No
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








N/A
Comments:

Initial version








































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

11/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 7: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

11/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































10 - Component Implementation

Component Implementation

Component Documentation

10.1 - DutyCycThermProtn_DesignReview


Overview

Summary Sheet
Synergy Project
Source Code
MDD
PolySpace
help
Version History


Sheet 1: Summary Sheet
























Rev 2.0121-Feb-18




Nexteer EA4 SWC Implementation Peer Review Summary Sheet

































Component Short Name:



DutyCycThermProtn
Revision / Baseline:


SF009A_DutyCycThermProtn_Impl_4.1.0
































Change Owner:


Matthew Leser
Work CR ID:


EA4#19215


































Modified File Types:






Check the file types that needed modification for the Work CR(s); macros for the check boxes will populate the appropriate checklist tabs for the review.
























































































































































































Review Checklist Summary:





































Reviewed:








At start of review, all items below should be marked "No". At the end of the review, all items should be marked "Yes" or "N/A" where N/A indicates the reviewers have reviewed the existing (unchanged) item and confirmed no updates were needed for the Work CR(s).




























































YesMDD


YesSource Code


YesPolySpace

















































N/AIntegration Manual


N/ADavinci Files




















































































All required reviewers participated





Yes





















































Comments:

















































































































Time spent ( to the nearest half hour)








review preparation



review meeting


review follow-up










Change owner:









0



0.5


0









Component developer reviewers:









0



0.5


0


1





Other reviewers:









0



1


0









Total hours









0



2


0


2




































Content reviewed





























Lines of code:


27


Elements of .arxml content:




0

Pages of documentation:



3































































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include SWC Owner and/or SWC Design author and Integrator and/or SW Lead as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.

Each peer review shall start with a clean copy of the latest peer review checklist template. Save in the doc folder of the component implementation, with the file name in the format SWCShortName_Review.xlsx. If the existing review in Synergy has a different name, the name must be changed IN SYNERGY (rather than by syncing in a new file with the new name) so that the file history will be properly maintained.

Before the peer review, the change owner shall: (NOTE - time for completing these items is to be counted as the Change Owner Review Prep Time)
o Review the previous component peer review and copy any relevant comments to the new review sheet.
o Review all checklist items and make all corrections needed, so that the component is ready for peer review. The expectation is that peer review should find very few issues,
because the change owner has already used the checklist to ensure the component changes are complete and correct.
o Fill in all file name and version information as needed on peer review checklist tabs (file names may be copied from the previous peer review where appropriate)
o Fill in checklist answers (Yes/No/NA pulldowns) ONLY on those items which are NA for the current change. All other checklist items should be blank going into the review
meeting.

During the peer review meeting:
o For each page of the review, first review the items already marked as N/A for this change, to confirm that reviewers agree with this assessment; change the checklist box to
blank if it is found that the item does apply.
o Then review the items with the checklist box blank. After reviewing each of these items, the checklist box will be marked as "Yes", or the checklist box will be marked as
"No" with needed rework indicated or with rationale indicated.
o If any items are marked "No" with rationale indicated, this must be approved by a software supervisor or the software manager; there is a line in the "Review Board" section
of each tab to indicate who approved the "No" items on that tab.





Sheet 2: Synergy Project






















Rev 2.0121-Feb-18

























Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:












































.gpj file in tools folder matches .gpj generated by TL109 script








Yes
Comments:













































File/folder structure is correct per documentation in









Yes
Comments:




TL109A_SwcSuprt







































General Notes / Comments:
























































Review Board:


























Change Owner:

Matthew Leser


Review Date :

04/05/18
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Mrudula






































































Rationale/justification for items marked "No" approved by:












































Sheet 3: Source Code






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (Source Code Review)

























Source File Name:


DutyCycThermProtn.c
Source File Revision:


10
Header File Name:





Header File Revision:




























MDD Name:


DutyCycThermProtn_MDD.docx
Revision:
6

























SWC Design Name:


SF009A_DutyCycThermProtn_Design
Revision:
4.1.0


























Quality Check Items:



































Rationale is required for all answers of No

































EA4 Common Naming Convention followed:











Version: 01.01.00
























EA4 Software Naming Convention followed:











Version: 01.02.00

























for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































Verified no possibility of uninitialized variables being








N/A
Comments:









written to component outputs or IRVs





































Any requirements traceability tags have been removed








N/A
Comments:









from at least the changed areas of code





































All variables are declared at the function level.








Yes
Comments:
















































Synergy version matches change history








Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



(including any anomaly number(s) being fixed) and













Work CR number














































Code accurately implements SWC Design (Document








Yes
Comments:



or Model) in all areas where code was changed and/or













Simulink model was color-coded as changed and/or






















mentioned in SWC Design change log.













































Code comparison against previous version matches








Yes
Comments:



changes needed as described by the work CR(s), all













parent CRs and parent anomalies, and the SWC






















Design change log.














































Verified no Compiler Errors or Warnings








Yes
Comments:









(and verified for all possible combinations













of any conditionally compiled code)














































Component.h is included








N/A
Comments:
















































All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All access of motor control loop data uses macros







N/A
Comments:










generated by the motor control manager





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsigned conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the SWC Design DataDict.m file : [N53]





































All code is mapped with SWC Design (all SWC







Yes
Comments:










Design subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some SWC Design subfunction and/or model block):






















[N40]














































Any other violations of design and coding









N/A
Comments:










standards noticed during the review are noted in the













comments section for rework.













































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any SWC Design corrections needed































































General Notes / Comments:

















































































Review Board:


























Change Owner:

Matthew Leser


Review Date :

04/05/18
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes










































































































SWC owner and/or
SWC Design author:
Nakul Shah



Comments:




















































Integrator and or
SW lead:









Comments:

Integrator not needed for change










































































Unit test co-ordinator:











Comments:

Unit Test Co-ordinator not needed for change





















































Other Reviewer(s):


Mrudula

































































Rationale/justification for items marked "No" approved by:





































































Sheet 4: MDD






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (MDD Review)


























MDD Name:

DutyCycThermProtn_MDD.docx
MDD Revision:

6


























Source File Name:


DutyCycThermProtn.cSource File Revision:


10

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








N/A
Comments:










and reviewed







































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:










data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].
















































All implementation details that differ from the SWC








N/A
Comments:










Design are noted and explained in Design Rationale







































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































Review Board:


























Change Owner:

Matthew Leser


Review Date :

04/05/18
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Mrudula






































































Rationale/justification for items marked "No" approved by:












































Sheet 5: PolySpace






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (PolySpace Review)




























Source File Name:


DutyCycThermProtn.c




Source File Revision:


10

Source File Name:

















Source File Revision:





Source File Name:

















Source File Revision:
































EA4 Static Analysis Compliance Guideline version:







01.04.00







Poly Space version:



2013b





TL109A sub project version:

2.3.0



































Quality Check Items:








































Rationale is required for all answers of No





































tools/local folders' header files are appropriate and










N/A
Comments:










function prototypes match the latest component version











































100% Compliance to the EA4 Static Analysis

Yes
Comments:




Compliance Guideline











































Are previously added justification and deviation










Yes
Comments:




comments still appropriate











































Do all MISRA deviation comments use approved










Yes
Comments:




deviation tags











































For any component source files (.c, .h, generated Cfg.c and Cfg.h)












N/A
Comments:




with conditional compilation, has Polyspace been run with all

















combinations of build constants that can be used together in a build?

























(Note which conditional compilation results have been archived)




















































Codemetrics count OK










Yes
Comments:




for all functions in the component per Design
















and Coding Standards rule [N47]










































































































General Notes / Comments:































































Review Board:




























Change Owner:

Matthew Leser




Review Date :

04/05/18


































Lead Peer Reviewer:


Avinash James




Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Mrudula














































































Rationale/justification for items marked "No" approved by:
















































Sheet 6: help

Summary sheet:






Intended Use: Identify which component is being reviewed. This should match the component short name from the DataDict.m fileand the middle part of the Synergy project name, e.g. Assi for the SF001A_Assi_Impl Synergy project







Intended Use: Identify the implementation baseline name intended to be used for the changed component when changes are approved E.g. SF001A_Assi_Impl_1.2.0





Intended Use: Identify the developer who made the change(s) being reviewed




Intended Use: Identify the Implementation Work CR whose work is being reviewed (may be more than one)




Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed.





Source code:





This item includes looking at all layers of Simulink model for possible color coding not reflected at a higher level, and includes looking at any intermediate SWC Design versions between the version being implemented and the version that was included as a subproject in the previous implementation.
Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified
file in the working project)





Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)



Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)







Intended Use: For SWC Designs, list the Synergy baseline number (just the number part of the Synergy baseline name) of the SWC Design baseline being implemented. E.g., for SF001A_Assi_Design_1.3.1, this field would say "1.3.1"









Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s).















Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored).













Intended Use: list version/revision of latest released Software Design and Coding Standards document.





Davinci Files





Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs








Polyspace





eg. 2013b





Integration manual





Intended Use: Identify which file is being reviewed





Intended Use: Identify which version of the integration manual has been reviewed.



Synergy





Refer to EA4 Common Naming Conventions document, section “Synergy Baseline Names for core components”





The following subprojects should be included for all component implementations:
• AR200A_ArSuprt_Impl
• AR201A_ArCplrSuprt_Impl
• TL101A_CptRteGen
• TL103A_CplrSuprt
• TL109A_SwcSuprt
• Corresponding _Design project used for the implementation

The following subprojects should be included as needed by each component:
• AR10xx_Nxtr*_Impl library components as needed by each component
• AR202x_MicroCtrlrSuprt_Impl as needed (for register header files for components making direct register access)[add notes about when to add a stub header file]
• Xx999x_xxxxGlbPrm_Impl as needed by each component
• TL105A_Artt for components with generated content

The following should NOT be included as subprojects:
• TL107x_DavinciSuprt (aka StdDef)
• TL100A_QACSuprt (QAC subproject was previously included but should be removed going forward)
• Any other component (not mentioned anywhere above) whose .h file is needed. For these components, a “stub” .h file should be created, containing only the multiple include protection and the definitions and function prototypes actually needed by the component with the #include, and placed in the “including” component’s local\include folder.

misc in Summary sheet





(integrator, designer, unit test coordinator, etc.)





For a new component, use number of lines in all source files reviewed, including files in the src and include folders and any generated cfg.h and cfg.c files.  For a changed component, try to add up how many lines, including comments and blank lines, were in the changed areas that were reviewed. Not just the actual changed lines, but the number of lines in the blocks of code you had to look at to review the change.
add up the number of ports, number of PIM variables, number if IRVs, number of runnables, number of NVM blocks in the component  (all of them for review of a new component, the new and modified ones for review of a change)
add the number of pages in the MDD and integration manual for a new component; for a modified component, count the number of pages that contained a change.












ReviewerRequired attendance for this type of changeReview spreadsheet tab(s)
Component group peerAllAll
Component owner and/or SWC Design author*Initial creation of any new component
*Simulink model changes (any change to the model other than just updating the change log)
Source
Integrator and/or SW lead of first program planning to use the component*Initial creation of any new component
*new or changed NVM blocks, NVM datatypes, or NVM usage (added or removed or changed NVM API calls in any runnable)
*Major rev (X changed in the X.Y.X design baseline number; means there was a component interface change)
*new or changed config params
*all MM component changes
Davinci files, Integration manual, source for NVM changes and for all MM component changes.
Unit test coordinatorFixes for coverage issuesSource
SQANoneNone








For each reviewer category listed on each tab, there should either be
• the name of the reviewer who attended
or
• a comment indicating
o why that reviewer was not required for this change
or
o who approved holding the review without that required reviewer (approval must
be from the software manager or a software supervisor)


Sheet 7: Version History















File Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus






Draft/ Released






































































Template Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus
1.0Initial VersionSW Engineering team24-May-15NANAReleased
1.01Changed name to be EA4 specificSW Engineering team25-Jun-15NANAReleased
1.02Modified Summary Sheet General Guidelines, Clarified wording on first item in Synergy project sheet.SW Engineering team30-Jul-15NANAReleased
1.02Made corrections and clarifications to Source Code check list.SW Engineering team30-Jul-15NANAReleased
1.02updated Davinci, MDD, and Polyspace/QAC tabsSW Engineering team30-Jul-15NANAReleased
1.03Aligned to portal version guidelinesUmesh Sambhari21-Nov-17NANAReleased
2.00Summary sheet template:
Changed title to indicate Implementation Peer Review
Corrected and/or clarified mouse hover comments, added instructions, renamed some fields.
Changed the default setting to "No" on the items reviewed
SW Engineering team29-Nov-17Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod ShankarNAReleased
Source code template:
Removed hyperlink for naming conventions, corrected name of naming conventions document, added version field for naming conventions document.
Changed item about requirements tags to reflect that they should be removed
Added clarification that all combinations of conditionally compiled code must be checked
Item about accurately implementing SWC Design is modified and a new item added, both to clarify where to look when determining needed changes.
Added point for version of common naming conventions
Reworded multiple items for clarity
SW Engineering team29-Nov-17
Synergy project template:
added items for file/folder structure
added point on .gpj file in tools folder
SW Engineering team29-Nov-17
Davinci files template:
Clarified the StdDef item
Added new item for OBSOLETE
Clarified item on datadict.m comparison
Removed the references to .m file helper tool
Updated to reflect that all component should now use only implementation data types
Added points on PIMs and NVMs
SW Engineering team29-Nov-17
All template tabs:
Added/clarified/removed mouse hover comments.
Updated Review Board section
Removed the gridlines from all tabs
Updated titles to say "Nexteer SWC Implementation Peer Review"
Changed all occurences of "FDD" to "SWC Design"
SW Engineering team29-Nov-17
2.01Added a help tab and appropriate links
Added field on Summary sheet to report hours spent and content reviewed
Changed wording in an item in Polyspace tab and Source code tab
SW Engineering team21-Feb-18Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod Shankar21-Feb-18Released

10.2 - DutyCycThermProtn_Integration Manual

Integration Manual

For

SF009A_DutyCycThermProtn

VERSION: 1.0

DATE: 02-Oct-2015

Prepared By:

Sarika Natu,

KPIT Technologies,

India

Revision History

DescriptionAuthorVersionDate
Initial versionSarika Natu1.002-Oct-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

Sr. No.TitleVersion
1MDD GuidelinesSoftware Process Release 04.02.00
2Software Naming ConventionsSoftware Process Release 04.02.00
3Design and Coding standardsSoftware Process Release 04.02.00
4FDD – SF009A_DutyCycThermProtn_DesignSee Synergy sub project version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
DutyCycThermProtnInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
DutyCycThermProtnPer1NoneRTE(100ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
DutyCycThermProtn_START_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

See DataDict.m

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

10.3 - DutyCycThermProtn_MDD

Module Design Document

For

DutyCycThermProtn

Apr 03, 2018

Prepared By:

Matthew Leser

Nexteer Automotive


Change History

DescriptionAuthorVersionDate
Initial VersionSarika Natu(KPIT Technologies)1.002-Oct-2015
Updated to version 2.0.0 of FDDKrishna Anne2.007-Apr-2016
Fix for anomaly EA4# 7558Krishna Anne3.029-Sep-2016
Updated to FDD v3.0.0Shruthi Raghavan4.014-Dec-2016
Updated as per FDD v4.0.0TATA5.025-Oct-2017
Updated Local Function InputMatthew Leser6.003-Apr-2018


Table of Contents

1 DutyCycThermProtn & High-Level Description 5

2 Design details of software module 6

2.1 Graphical representation of DutyCycThermProtn 6

2.2 Data Flow Diagram 7

2.2.1 Component level DFD 7

2.2.2 Function level DFD 7

3 Constant Data Dictionary 8

3.1 Program (fixed) Constants 8

3.1.1 Embedded Constants 8

4 Software Component Implementation 9

4.1 Sub-Module Functions 9

4.1.1 Init: DutyCycThermProtn_Init1 9

4.1.1.1 Design Rationale 9

4.1.1.2 Module Outputs 9

4.1.2 Per: DutyCycThermProtn_Per1 9

4.1.2.1 Design Rationale 9

4.1.2.2 Store Module Inputs to Local copies 9

4.1.2.3 (Processing of function)……… 9

4.1.2.4 Store Local copy of outputs into Module Outputs 9

4.2 Server Runables 9

4.3 Interrupt Functions 9

4.4 Module Internal (Local) Functions 9

4.4.1 Local Function #1 9

4.4.1.1 Design Rationale 9

4.4.1.2 Processing 10

4.4.2 Local Function #2 10

4.4.2.1 Design Rationale 10

4.4.2.2 Processing 10

4.4.3 Local Function #3 10

4.4.3.1 Design Rationale 10

4.4.3.2 Processing 10

4.4.4 Local Function #4 10

4.4.4.1 Design Rationale 11

4.4.4.2 Processing 11

4.4.5 Local Function #5 11

4.4.5.1 Design Rationale 11

4.4.5.2 Processing 11

4.4.6 Local Function #6 11

4.4.6.1 Design Rationale 11

4.4.7 Local Function #7 11

4.4.7.1 Design Rationale 12

4.4.8 Local Function #8 12

4.4.8.1 Design Rationale 12

4.4.8.2 Processing 12

4.5 GLOBAL Function/Macro Definitions 12

5 Known Limitations with Design 13

6 UNIT TEST CONSIDERATION 14

Appendix A Abbreviations and Acronyms 15

Appendix B Glossary 16

Appendix C References 17

DutyCycThermProtn & High-Level Description

The purpose of the Thermal Duty Cycle Protection is to limit and protect the system from excessive use, based on motor rotational velocity and system temperature. It also provides protection status information for use by other functions.

Design details of software module

Graphical representation of DutyCycThermProtn

Data Flow Diagram

See FDD

Component level DFD

See FDD

Function level DFD

See FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Refer .m file

Constant NameValue
THERMLOADLIMSIZE_CNT_U088U
MULTFILTERSIZE_CNT_U086U
BITMASK2_CNT_U082U
BITMASK4_CNT_U084U
IDX5_CNT_U085U
IDX8_CNT_U088U

Software Component Implementation

Sub-Module Functions

Init: DutyCycThermProtn_Init1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: DutyCycThermProtn_Per1

Design Rationale

DutyCycThermProtn_Per1 function is divided into various functions to reduce the cyclomatic complexity.

The subsystems ‘Multiplier’ and ‘FilterPercMax’ are clubbed into ‘MultiFilterPercMax’ local function.

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameFiltSVReinitTypeMinMax
Arguments PassedIgnTiOff_Cnt_T_u32uint3201720000
VehTiVld_Cnt_T_LoglBoolean01
Return ValueNone

Design Rationale

Name of local function matches with subsystem name from FDD

Processing

Local Function #2

Function NameTemperatureSelectionTypeMinMax
Arguments PassedDiagcStsLimdTPrfmnc_Cnt_T_Loglboolean01
EcuTFild_DegCgrd_T_f32float32-50150
MotFetT_DegCgrd_T_f32float32-50200
MotMagT_DegCgrd_T_f32float32-50150
MotWidgT_DegCgrd_T_f32float32-50300
*Mult12Temp_DegCgrd_T_ s15p0Sint16-50200
*Mult36Temp_DegCgrd_T_s15p0Sint16-50300
Return ValueSlcTemp_DegCgrd_T_s15p0sint16-50300

Design Rationale

Name of local function matches with subsystem name from FDD

Note: The outputs of the function are Mult12Temp_DegCgrd_T_s15p0, Mult36Temp_DegCgrd_T_s15p0 and SlcTemp_DegCgrd_T_f32.

Processing

None

Local Function #3

Function NameTemperatureLimitingTypeMinMax
Arguments PassedEcuTFild_DegCgrd_T_f32float32-50150
MotWidgT_DegCgrd_T_f32float32-50300
Return ValueAbsTempLimitSlew_MotNwtMtr_T_f32float3208.79

Design Rationale

Name of local function matches with subsystem name from FDD

Processing

None

Local Function #4

Function NameMultiFilterPercMaxTypeMinMax
Arguments PassedMult12Temp_DegCgrd_T_s15p0sint16-50200
Mult36Temp_DegCgrd_T_s15p0sint16-50300
DutyCycThermProtnDi_Cnt_T_Loglboolean01
MotVelCrf_MotRadPerSec_T_f32float32-13501350
MotCurrPeakEstimd_AmprSqd_T_f32float32062500
MotCurrPeakEstimdFild_AmprSqd_T_f32float32062500
*MaxOut_Uls_T_u16p0uint160200
Return ValueThermLimSlowFilMax_Uls_T_f32float320200

Design Rationale

The subsystems ‘Multiplier’ and ‘FilterPercMax’ are clubbed into ‘MultiFilterPercMax’ local function.

Note: The outputs of the function are MaxOut_Uls_T_u16p0 and ThermLimSlowFilMax_Uls_T_f32.

Processing

None

Local Function #5

Function NameThermalLoadLimitTypeMinMax
Arguments PassedMotVelCrf_MotRadPerSec_T_f32float32-13501350
SlcTemp_DegCgrd_T_s15p0sint16-50300
MaxOut_Uls_T_u16p0uint160200
Return ValueThermalLoadLmt_MotNwtMtr_T_f32float3208.8

Design Rationale

Name of local function matches with subsystem name from FDD

Processing

None

Local Function #6

Function NameThermalLimitStatusTypeMinMax
Arguments PassedDutyCycThermProtnDi_Cnt_T_LoglBoolean01
MaxOut_Uls_T_u16p0uint160200
ThermMotTqLim_MotNwtMtr_T_f32float3208.8
IvtrLoaMtgtnEna_Cnt_T_loglbooleanFALSETRUE
DualEcuFltMtgtnEna_Cnt_T_loglbooleanFALSETRUE
Return ValueThermRednFac_Uls_T_f32float3201

Design Rationale

Name of local function matches with subsystem name from FDD. Initializing ThermRednFac_Uls_T_f32 to 0.0 helps to avoid writing another statement in the if-conditional (optimized compared to FDD)

Local Function #7

Function NameTherrmalLimitScalingTypeMinMax
Arguments PassedDualEcuFltMtgtnEna_Cnt_T_loglBoolean01
IvtrLoaMtgtnEna_Cnt_T_loglBoolean01
AbsTempLimitSlew_MotNwtMtr_T_f32float3208.79
DutyCycThermProtnDi_Cnt_T_LoglBoolean01
ThermalLoadLmt_MotNwtMtr_T_f32float3208.8
* ThermLoadDptLim_MotNwtMtr_T_f32Float3208.8
* ThermTempDptLim_MotNwtMtr_T_f32Float3208.8
Return ValueThermMotTqLim_MotNwtMtr_T_f32float3208.8

Design Rationale

Name of local function matches with subsystem name from FDD

The if-action subsystem blocks for calculation of LoadDptLim and TempDptLim are clubbed together and optimized since the condition for the subsystem execution was same.

Local Function #8

Function NameUseInpLowrTypeMinMax
Arguments Passed*TableX_Cnt_T_s16sint16FULLFULL
*TableY_Cnt_T_u16uint16FULLFULL
Size_Cnt_T_u16uint16120
Input_Cnt_T_s16sint16FULLFULL
Return ValueTableY_Cnt_T_u16[Idx_Cnt_T_u08]uint16FULLFULL

Design Rationale

None.

Processing

None

Local Function #9

Function NameDecoderTypeMinMax
Arguments PassedMotAndThermProtnLoaMod_Cnt_T_u08Uint80U255U
Return ValueIvtrLoaMtgtnEna_Cnt_T_loglbooleanFALSETRUE

Design Rationale

None.

Processing

Refer to the “Decoder” block of the Simulink model of the design.

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

  1. In Init function CurrMeasLoaMtgtnEna and FetLoaMtgtnEna are terminated. In Periodic1 CurrMeasLoaMtgtnEna is terminated. These flags need not be computed at all.

  2. MotAndThermProtnLoaMod input readable to init runnable also. It is need to update in Data Dictionary.

UNIT TEST CONSIDERATION

  • Function UseInpLowr to be tested only as called by the component; input and output ranges will not be reached.

  • Function UseInpLowr’s TableX must have strictly increasing elements.

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 02.00.00
3Software Naming Conventions.doc1.0
4Software Design and Coding Standards.doc2.1
5FDD – SF009A_DutyCycThermProtn_DesignSee Synergy sub project version

11 - Component Implementation

Component Implementation

Component Documentation

11.1 - ElecPwrCns_IntegrationManual

Integration Manual

For

Electric Power Consumption

VERSION: 1.0

DATE: 10-May-2016

Prepared By:

Vishnu Mohan (Tata Elxsi),

Trivandrum, INDIA.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionVishnu Mohan1.005/10/2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF109A_ElecPwrCns_DesignSee Synergy sub project version
2Software Naming Conventions1.0
3Software Design and Coding Standards2.0

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file.

Required Global Data Outputs

Refer DataDict.m file.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
None
RunnableScheduling RequirementsTrigger
ElecPwrCnsPer1NoneRTE(10 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

11.2 - ElecPwrCns_MDD

Module Design Document

For

ElecPwrCns

SepMay 2510, 20167

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

TATA Trivandrum, INDIA

Change History

DescriptionAuthorVersionDate
Initial VersionVishnu Mohan1.010-May-2016
Updated to FDD v2.0.0TATA2.025-Sep-2017

Table of Contents

1 Introduction 4

1.1 Purpose 4

2 ElecPwrCns & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of ElecPwrCns 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Per: ElecPwrCnsPer1 8

5.1.1.1 Design Rationale 8

5.1.1.2 Store Module Inputs to Local copies 8

5.1.1.3 (Processing of function)……… 8

5.1.1.4 Store Local copy of outputs into Module Outputs 8

5.2 Server Runables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 9

7 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

Introduction

Purpose

MDD for Electrical Electric Power Consumption

ElecPwrCns & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of ElecPwrCns

Data Flow Diagram

Please refer FDD

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 the .m file
BITMASK1_CNT_U08uint8CNT1U
BITMASK2_CNT_U08uint8CNT2U
BITMASK4_CNT_U08uint8CNT4U

Software Component Implementation

Sub-Module Functions

Per: ElecPwrCnsPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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: SF109A_ElecPwrCns_DesignSee Synergy sub project version

11.3 - ElecPwrCns_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet




























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF109A_ElecPwrCns_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF109A_ElecPwrCns_Impl _2.0.0



























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Ramachandran(Tata Elxsi)
Work CR ID:


EA4#13249





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:








































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anna


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anna


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










NA for the changes

































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts










NA for the changes










for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:






















NA for the changes









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











NA for the changes
























Component is correct component type








Yes
Comments:











































































General Notes / Comments:


























Only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)
Review Date :

10/09/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


ElecPwrCns.c

Source File Revision:


2
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. NA

























MDD Name:

ElecPwrCns_MDD

Revision:
2.0

























FDD/SCIR/DSR/FDR/CM Name:




SF109A_ElecPwrCns_Design

Revision:
2.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]










NA for the changes

























All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

ElecPwrCns_MDD













MDD Revision:

2.0


























Source File Name:


ElecPwrCns.c











Source File Revision:


2

Source File Name:


NA











Source File Revision:


NA

Source File Name:


NA











Source File Revision:


NA


























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


ElecPwrCns.c











Source File Revision:


2

Source File Name:


NA











Source File Revision:


NA

Source File Name:


NA











Source File Revision:


NA


























EA4 Static Analysis Compliance Guideline version:







01.01.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 1.3.0

QAC version:


Windows User: eg 8.1.1-R NA
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 NA


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































12 - Component Implementation

Component Implementation

Component Documentation

12.1 - EotLrng_IntegrationManual

Integration Manual

For

End of Travel Learning (SF011A)

VERSION: 4.0

DATE: 14-March-2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Matthew Leser,

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionAkhil Krishna N D1.009/24/2015
2Updated for v2.0.0 of FDDNick Saxton2.005/19/2016
3Updated to design version 3.1.0TATA3.005-Dec-16
4Updated to design version 3.2.0ML4.014-March-17

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

1.1 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF011A_EotLrng_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding Standards2.1

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file.

Required Global Data Outputs

Refer DataDict.m file.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
EotLrngInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
EotLrngPer1NoneRTE (10 ms)
SerlComRstEot_OperNoneOn event
RtnMaxHwAgCwAndCcwNoneOn event
RstMaxHwAgCwAndCcwNoneOn event
GetHwAgOverTrvlCntNoneOn event
RstHwAgOverTrvlCntNoneOn event
SetHwAgOverTrvlCntNoneOn event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

NOTE: In Autosar, Store at Shutdown and Restore at Startup were turned off for NVM Block Needs for NvmMaxHwAgCwAndCcw and NvmEotNvmData. This was done to remove warnings given during check. These will need to be turned back on during integration.

RTE NvM Blocks

Block Name
EotNvmData
MaxHwAgCwAndCcw

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None

12.2 - EotLrng_MDD

Module Design Document

For

EotLrng (SF011A)

March 7, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Matthew Leser

Nexteer Automotive,

Saginaw, MI, USA

Change History

DescriptionAuthorVersionDate
Initial VersionAkhil Krishna N D1.030-Sep-2015
Updated for v2.0.0 of FDDNick Saxton2.019-May-2016
Updated for v2.1.0 of FDDNick Saxton3.016-Jun-2016
Updated for v3.1.0 of FDDTATA4.005-Dec-2016
Updated for v3.2.0 of FDDMatthew Leser5.007-March-2017

Table of Contents

1 End of Travel Learning & High-Level Description 5

2 Design details of software module 6

2.1 Graphical representation of End of Travel Learning 6

2.2 Data Flow Diagram 6

2.2.1 Component level DFD 6

2.2.2 Function level DFD 6

3 Constant Data Dictionary 7

3.1 Program (fixed) Constants 7

3.1.1 Embedded Constants 7

4 Software Component Implementation 8

4.1 Sub-Module Functions 8

4.1.1 Init: EotLrngInit1 8

4.1.1.1 Design Rationale 8

4.1.1.2 Module Outputs 8

4.1.2 Per: EotLrngPer1 8

4.1.2.1 Design Rationale 8

4.1.2.2 Store Module Inputs to Local copies 8

4.1.2.3 (Processing of function)……… 8

4.1.2.4 Store Local copy of outputs into Module Outputs 8

4.2 Server Runnable 8

4.2.1 SerlComRstEot 8

4.2.1.1 Design Rationale 8

4.2.1.2 (Processing of function)……… 8

4.3 Interrupt Functions 8

4.3.1 RtnMaxHwAgCwAndCcw 9

4.3.1.1 Design Rationale 9

4.3.1.2 (Processing of function)……… 9

4.4 Interrupt Functions 9

4.4.1 RstMaxHwAgCwAndCcw 9

4.4.1.1 Design Rationale 9

4.4.1.2 (Processing of function)……… 9

4.5 Interrupt Functions 9

4.5.1.3 (Processing of function)……… 9

4.6 Interrupt Functions 9

4.6.1.3 (Processing of function)……… 9

4.7 Interrupt Functions 9

4.7.1.3 (Processing of function)……… 10

4.8 Interrupt Functions 10

4.9 Module Internal (Local) Functions 10

4.9.1 Local Function #1 10

4.9.1.1 Design Rationale 10

4.9.1.2 Processing 10

4.9.2 Local Function #2 10

4.9.2.1 Design Rationale 11

4.9.2.2 Processing 11

4.10 GLOBAL Function/Macro Definitions 11

4.10.1 GLOBAL Function #1 11

4.10.1.1 Design Rationale 11

4.10.1.2 Processing 11

5 Known Limitations with Design 12

6 UNIT TEST CONSIDERATION 13

Appendix A Abbreviations and Acronyms 14

Appendix B Glossary 15

Appendix C References 16

End of Travel Learning & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of End of Travel Learning

Data Flow Diagram

Please refer FDD.

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer .m file

Software Component Implementation

Sub-Module Functions

Init: EotLrngInit1

Design Rationale

None

Module Outputs

Please refer FDD.

Per: EotLrngPer1

Design Rationale

None

Store Module Inputs to Local copies

Please refer FDD.

(Processing of function)………

Please refer FDD and design rationale noted above.

Store Local copy of outputs into Module Outputs

Please refer FDD.

Server Runnable

SerlComRstEot

Design Rationale

None

(Processing of function)………

Please refer SerlComRstEot block in FDD

Interrupt Functions

None

RtnMaxHwAgCwAndCcw

Design Rationale

None

(Processing of function)………

Please refer RtnMaxHwAgCwAndCcw block in FDD

Interrupt Functions

None

RstMaxHwAgCwAndCcw

Design Rationale

None

(Processing of function)………

Please refer RstMaxHwAgCwAndCcw block in FDD

Interrupt Functions

None

GetHwAgOverTrvlCnt

Design Rationale

None

(Processing of function)………

Please refer GetHwAgOverTrvlCnt block in FDD

Interrupt Functions

None

RstHwAgOverTrvlCnt

Design Rationale

None

(Processing of function)………

Please refer RstHwAgOverTrvlCnt block in FDD

Interrupt Functions

None

SetHwAgOverTrvlCnt

Design Rationale

None

(Processing of function)………

Please refer SetHwAgOverTrvlCnt block in FDD

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameLrngEotCmplStsTypeMinMax
Arguments PassedHwAgAuthy_Uls_T_f32float3201
HwTq_HwNwtMtr_T_f32float32-1010
MotVelCrf_MotRadPerSec_T_f32float32-13501350
Return ValueNone---

Design Rationale

To reduce the static path count

Processing

Please refer to the “LrngEotCmplSts” block of the Simulink model of the design.

Local Function #2

Function NameChkEotSigForNtcTypeMinMax
Arguments PassedHwAgEotSig0Avl_Cnt_T_lgcbooleanFALSETRUE
HwAgEotSig1Avl_Cnt_T_lgcbooleanFALSETRUE
HwAgEotSig0Cw_HwDeg_T_f32float320900
HwAgEotSig0Ccw_HwDeg_T_f32float32-9000
HwAgEotSig1Cw_HwDeg_T_f32float320900
HwAgEotSig1Ccw_HwDeg_T_f32float32-9000
Return ValueNone---

Design Rationale

To reduce the static path count

Processing

Please refer to the “ChkEotSigForNtc” block of the Simulink model of the design.

Local Function #3

Function NameOverTrvlDiagcTypeMinMax
Arguments PassedHwAg_HwDeg_T_f32float32-14401440
Return ValueNone---

Design Rationale

To reduce the static path count

Processing

Please refer to the “OverTrvlDiagc” block of the Simulink model of the design.

GLOBAL Function/Macro Definitions

GLOBAL Function #1

None

Design Rationale

None

Processing

None

Known Limitations with Design

None.

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 : SF011A_EotLrng_DesignSee Synergy sub project version

12.3 - EotLrng_Review


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF011A_EotLrng_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF011A_EotLrng_Impl_3.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#12511





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Only reviewed changes



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








N/A
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

07/05/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Krishna Anne
Brendon Binder
































Shawn Penning
































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


EotLrng.c

Source File Revision:


7
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

EotLrng_MDD.doc

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF011A_EotLrng_Design

Revision:
3.2.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











No need of Requirement tags
























All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

07/05/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Krishna Anne
Brendon Binder
































Shawn Penning
































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


EotLrng.cSource File Revision:


7

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

07/05/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Krishna Anne
Brendon Binder
































Shawn Penning































13 - Component Implementation

Component Implementation

Component Documentation

13.1 - EotProtn_DesignReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF018A_EotProtn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF018A_EotProtn_Impl_1.8.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#13598





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

07/25/17


































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder






































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

07/25/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder






































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


EotProtn.c

Source File Revision:


9
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

EotProtn_MDD

Revision:
3

























FDD/SCIR/DSR/FDR/CM Name:




SF018A_EotProtn_Design

Revision:
1.9.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments:









for any FDD corrections needed































































General Notes / Comments:

































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

07/25/17


































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder






































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:


EotProtn_MDD.doc












MDD Revision:

3


























Source File Name:


EotProtn.c



Source File Revision:


9

Source File Name:



NA










Source File Revision:





Source File Name:



NA










Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








Yes
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

08/16/17


































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Avinash James




































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:



EotProtn.c










Source File Revision:


9

Source File Name:



NA










Source File Revision:


NA

Source File Name:



NA










Source File Revision:


NA


























EA4 Static Analysis Compliance Guideline version:








01.03.00













Poly Space version:


Windows User: eg. 2013b R2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate










Removed deviation comments that no longer apply


























Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:























12.4 warning exists because the way Polyspace treats the right hand side of OR statement which contains functions that Polyspace can't calculate outcome of.


































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

08/16/17


































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Avinash



































































13.2 - EotProtn_Integration Manual

Integration Manual

For

SF018A_EotProtn

VERSION: 1.0

DATE: 01-Oct-2015

Prepared By:

Sarika Natu,

KPIT Technologies,

India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionSarika Natu1.001-Oct-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesSoftware Process Release 04.02.00
2Software Naming ConventionsSoftware Process Release 04.02.00
3Design and Coding standardsSoftware Process Release 04.02.00
4FDD – SF018A_EotProtn_DesignSee Synergy sub project version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
EotProtnInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
EotProtnPer1NoneRTE(2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
EotProtn_START_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

13.3 - EotProtn_MDD

Module Design Document

For

EotProtn

Aug 16, 2017

Prepared By:

Matthew Leser

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA


Change History

SNo.DescriptionAuthorVersionDate
1Initial VersionSarika Natu(KPIT Technologies)1.001-Oct-2015
2Implemented SF018A design version 1.5.0SB2.001-Jul-2016
3Updated Graph, Function Inputs, and Unit Test ConsiderationsMatthew Leser3.016-Aug-2017


Table of Contents

1 EotProtn & High-Level Description 5

2 Design details of software module 6

2.1 Graphical representation of EotProtn 6

2.2 Data Flow Diagram 7

2.2.1 Component level DFD 7

2.2.2 Function level DFD 7

3 Constant Data Dictionary 8

3.1 Program (fixed) Constants 8

3.1.1 Embedded Constants 8

4 Software Component Implementation 9

4.1 Sub-Module Functions 9

4.1.1 Init: EotProtn_Init1 9

4.1.1.1 Design Rationale 9

4.1.1.2 Module Outputs 9

4.1.2 Per: EotProtn_Per1 9

4.1.2.1 Design Rationale 9

4.1.2.2 Store Module Inputs to Local copies 9

4.1.2.3 (Processing of function)……… 9

4.1.2.4 Store Local copy of outputs into Module Outputs 9

4.2 Server Runables 9

4.3 Interrupt Functions 9

4.4 Module Internal (Local) Functions 9

4.4.1 Local Function #1 9

4.4.1.1 Design Rationale 10

4.4.1.2 Processing 10

4.4.2 Local Function #2 10

4.4.2.1 Design Rationale 10

4.4.2.2 Processing 10

4.4.3 Local Function #3 10

4.4.3.1 Design Rationale 10

4.4.3.2 Processing 10

4.4.4 Local Function #4 11

4.4.4.1 Design Rationale 11

4.4.4.2 Processing 11

4.4.5 Local Function #5 11

4.4.5.1 Design Rationale 11

4.4.5.2 Processing 11

4.4.6 Local Function #6 11

4.4.6.1 Design Rationale 11

4.4.6.2 Processing 11

4.4.7 Local Function #7 11

4.4.7.1 Design Rationale 12

4.4.7.2 Processing 12

4.4.8 Local Function #8 12

4.4.8.1 Design Rationale 12

4.4.8.2 Processing 12

4.4.9 Local Function #9 12

4.4.9.1 Design Rationale 13

4.4.9.2 Processing 13

4.5 GLOBAL Function/Macro Definitions 13

5 Known Limitations with Design 14

6 UNIT TEST CONSIDERATION 15

Appendix A Abbreviations and Acronyms 16

Appendix B Glossary 17

Appendix C References 18

EotProtn & High-Level Description

The End of Travel Protection function specifies performance attributes as the steering system approaches the mechanical end of travel of the steering gear.

Design details of software module

Graphical representation of EotProtn

Data Flow Diagram

See FDD

Component level DFD

See FDD

Function level DFD

See FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

ConstantValue
DAMPGPTSIZE_CNT_U082
DAMPGVEHSPDSIZE_CNT_U084
GAINVEHSPDSIZE_CNT_U085

Software Component Implementation

Sub-Module Functions

Init: EotProtn_Init1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: EotProtn_Per1

Design Rationale

EotProtn_Per1 function is divided into various functions to reduce the cyclomatic complexity.

The limiting of ‘EotAssiSca’ output is performed in SoftEndStop subsystem in FDD. But in code it is limiting calculations are done where the output is calculated i.e. FildEotGain function.

The model is incorrectly handling a Case Statement by not having a default case. A solution was discussed with designers and has been implemented where the default case is Case 2 and Case 3.

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameEotVelImpctTypeMinMax
Arguments PassedHwAgEotCw_HwDeg_T_f32float32360900
HwAgEotCcw_HwDeg_T_f32float32-900-360
HwAg_HwDeg_T_f32float32-14401440
VehSpd_Kph_T_f32float320511
HwAgAuthy_Uls_T_f32float3201
MotVelCrf_MotRadPerSec_T_f32float32-13501350
Return ValueEotMotTqLim_MotNwtMtr_T_f32float3208.8

Design Rationale

None

Note: Outputs of “EotVelImpct” function is - EotMotTqLim_MotNwtMtr_T_f32.

Processing

Refer to the “EotVelImpct” subsystem of the Simulink model of the design

Local Function #2

Function NameLimPosnDetdTypeMinMax
Arguments PassedRackTrvlLimrRngEna_Cnt_T_loglbooleanFalseTrue
HwAgEotCw_HwDeg_T_f32float32360900
HwAgEotCcw_HwDeg_T_f32float32-900-360
HwAg_HwDeg_T_f32float32-14401440
Return ValueLimPosn_HwDeg_T_f32float32-14401440

Design Rationale

None

Note: Outputs of “LimPosnDetd” function is - LimPosn_HwDeg_T_f32.

Processing

Refer to the “LimPosnDetd” subsystem of the Simulink model of the design

Local Function #3

Function NameCalcEntrGainTypeMinMax
Arguments PassedHwAg_HwDeg_T_f32float32-14401440
VehSpd_Kph_T_f32float320511
LimPosn_HwDeg_T_f32float32-14401440
HwAgAuthy_Uls_T_f32float3201
Return ValueEntrGain_Uls_T_f32float3201

Design Rationale

None

Note: Outputs of “CalcEntrGain” function is - EntrGain_Uls_T_f32.

Processing

Refer to the “CalcEntrGain” subsystem of the Simulink model of the design

Local Function #4

Function NameCalcExitGainTypeMinMax
Arguments PassedHwTq_HwNwtMtr_T_f32float32-1010
Return ValueExitGain_Uls_T_f32float3201

Design Rationale

Calculation of Filtered Handwheel torque is done after ‘CalcExitGain’ function is executed.

Note: Outputs of “CalcExitGain” function is - FildHwTq_HwNwtMtr_T_f32

Processing

Refer to the “CalcExitGain” subsystem of the Simulink model of the design

Local Function #5

Function NameCalcEotGainTypeMinMax
Arguments PassedEntrGain_Uls_T_f32float3201
ExitGain_Uls_T_f32float3201
Return ValueEotGain_Uls_T_f32float3201

Design Rationale

None

Note: Outputs of “CalcEotGain” function is - EotGain_Uls_T_f32

Processing

Refer to the “CalcEotGain” subsystem of the Simulink model of the design

Local Function #6

Function NameFildEotGainTypeMinMax
Arguments PassedEotGain_Uls_T_f32float3201
Return ValueEotAssiSca_Uls_T_f32float3201

Design Rationale

Limit of EotAssiSca is moved to local function FildEotGain.

Note: Outputs of “FildEotGain” function is - EotAssiSca_Uls_T_f32

Processing

Refer to the “FildEotGain” subsystem of the Simulink model of the design

Local Function #7

Function NameCalcEotDampgTypeMinMax
Arguments PassedHwAg_HwDeg_T_f32float32-14401440
VehSpd_Kph_T_f32float320511
HwAgEotCw_HwDeg_T_f32float32360900
HwAgEotCcw_HwDeg_T_f32float32-900-360
MotVelCrf_MotRadPerSec_T_f32float32-13501350
Return ValueEotDampgCmd_MotNwtMtr_T_f32float32-8.88.8

Design Rationale

None

Note: Outputs of “CalcEotDampg” function is - EotDampgCmd_MotNwtMtr_T_f32

Processing

Refer to the “CalcEotDampg” calculation of the Simulink model of the design

Local Function #8

Function NameEotActvCmdCalcTypeMinMax
Arguments PassedRackTrvlLimrDi_Cnt_T_loglbooleanFalseTrue
HwAgAuthy_Uls_T_f32float3201
VehSpd_Kph_T_f32float320511
HwAg_HwDeg_T_f32float32-14401440
MotVelCrf_MotRadPerSec_T_f32float32-13501350
LimPosn_HwDeg_T_f32float32-14401440
Return ValueEotActvCmd_MotNwtMtr_T_f32float32-8.88.8

Design Rationale

None

Note: Outputs of “EotActvCmdCalc” function is - EotActvCmd_MotNwtMtr_T_f32

Processing

Refer to the “EotActvCmdCalc” calculation of the Simulink model of the design

Local Function #9

Function NameSoftEndStopStCtrlTypeMinMax
Arguments PassedVehSpd_Kph_T_f32float320511
HwAgAuthy_Uls_T_f32float3201
EotProtnDi_Cnt_T_Loglboolean01
EotDetd_Cnt_T_Loglboolean01
HwAg_HwDeg_T_f32float32-14401440
FildHwTq_HwNwtMtr_T_f32float32-3.4E+383.4E+38
SysMotTqCmdSca_Uls_T_f32float3201
LimPosn_HwDeg_T_f32float32-14401440
Return ValueNonefloat32-8.88.8

Design Rationale

None

Processing

Refer to the “SoftEndStopStCtrl” calculation of the Simulink model of the design

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

Source Model Mismatch will occur in PIL Testing. This is because the model is incorrectly handling a Case Statement by not having a default case. A solution was discussed with designers and has been implemented where the default case is Case 2 and Case 3. The design will be updated later through ICR EA4#14690.

Abbreviations and Acronyms

Abbreviation or AcronymDescription
FDDFunctional Design Document

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)Process release 04.02.01
2MDD GuidelineProcess release 04.02.01
3Software Naming Conventions.doc2.0
4Software Design and Coding Standards.doc2.1
5SF018A_EotProtn_DesignSee Synergy subproject version

14 - Component Implementation

Component Implementation

Component Documentation

14.1 - EotProtnFwl_Integration Manual

Integration Manual

For

SF027A_EotProtnFwl

VERSION: 1.0

DATE: 01-Feb-2016

Prepared By:

Sarika Natu,

KPIT Technologies,

India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionSarika Natu1.001-Feb-2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelineEA4 01.00.00
2Software Naming Conventions.doc2.0
3Software Design and Coding Standards.doc2.1
4AUTOSAR Specification of Memory Mapping (Link:AUTOSAR_SWS_MemoryMapping.pdf)v1.3.0 R4.0 Rev 2
5SF027_EotProtnFwl_DesignRefer Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
EotProtnFwlInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
EotProtnFwlPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
EotProtnFwl_START_SEC_CODE
EotProtnFwl_STOP_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

14.2 - EotProtnFwl_MDD

Module Design Document

For

EotProtnFwl

Feb 01, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Sarika Natu,

KPIT Technologies,

India


Change History

DescriptionAuthorVersionDate
Initial VersionSarika Natu(KPIT Technologies)1.001-Feb-2016


Table of Contents

1 EotProtnFwl & High-Level Description 5

2 Design details of software module 6

2.1 Graphical representation of EotProtnFwl 6

2.2 Data Flow Diagram 6

2.2.1 Component level DFD 6

2.2.2 Function level DFD 6

3 Constant Data Dictionary 7

3.1 Program (fixed) Constants 7

3.1.1 Embedded Constants 7

4 Software Component Implementation 8

4.1 Sub-Module Functions 8

4.1.1 Init: EotProtnFwl_Init1 8

4.1.1.1 Design Rationale 8

4.1.1.2 Module Outputs 8

4.1.2 Per: EotProtnFwl_Per1 8

4.1.2.1 Design Rationale 8

4.1.2.2 Store Module Inputs to Local copies 8

4.1.2.3 (Processing of function)……… 8

4.1.2.4 Store Local copy of outputs into Module Outputs 8

4.2 Server Runables 8

4.3 Interrupt Functions 8

4.4 Module Internal (Local) Functions 8

4.4.1 Local Function #1 8

4.4.1.1 Design Rationale 9

4.4.1.2 Processing 9

4.4.2 Local Function #2 9

4.4.2.1 Design Rationale 9

4.4.2.2 Processing 9

4.5 GLOBAL Function/Macro Definitions 9

5 Known Limitations with Design 10

6 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

EotProtnFwl & High-Level Description

EOT Protection Firewall function is safety function which imposes a firewall limit to the Assist_EOTDamping and EOTActvCmd motor commands generated by SF-018A.

Design details of software module

Graphical representation of EotProtnFwl

C:\Users\fzd2x9\Desktop\SF027A_EotProtnFwl_Impl.png

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Refer FDD

Software Component Implementation

Sub-Module Functions

Init: EotProtnFwl_Init1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: EotProtnFwl_Per1

Design Rationale

EotProtnFwl_Per1 function is divided into various functions to reduce the cyclomatic complexity.

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameDetEOTDampingTypeMinMax
Arguments PassedEotDampgCmd_MotNwtMtr_T_f32float32-8.88.8
EotProtnDi_Cnt_T_Loglboolean01
HwAg_HwDeg_T_f32float32-1440.01440.0
MotVelCrf_MotRadPerSec_T_f32float32- 1118.01118.0
EotProtnFwlPinionAgConfSts_Cnt_T_Loglboolean01
VehSpd_Kph_T_u9p7uint160511
MfgEnaSt_Cnt_T_EnumEnum01
* EotDampgFwlReached_Cnt_T_Loglboolean01
Return by ValueEotDampgCmdLimd_MotNwtMtr_T_f32float32-8.88.8

Design Rationale

This function updates EotDampgFwlReached_Cnt_T_Logl

Processing

Refer Active/Inactive region for EOTDamping Command implementation in model

Local Function #2

Function NameDetEOTActiveTypeMinMax
Arguments PassedEotActvCmd_MotNwtMtr_T_f32float32-8.88.8
EotProtnDi_Cnt_T_Loglboolean01
HwAg_HwDeg_T_f32float32-1440.01440.0
EotProtnFwlPinionAgConfSts_Cnt_T_Loglboolean01
VehSpd_Kph_T_u9p7uint160511
MfgEnaSt_Cnt_T_EnumEnum01
* EotActvCmdFwlReached_Cnt_T_Loglboolean01
Return ValueEotActvCmdLimd_MotNwtMtr_T_f32float32-8.88.8

Design Rationale

This function updates EotActvCmdFwlReached_Cnt_T_Logl

Processing

Refer Active/Inactive region for EOT Active Command implementation in model

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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.doc2.0
4Software Design and Coding Standards.doc2.1
5SF027_EotProtnFwl_DesginPlease refer synergy subproject version

14.3 - EotProtnFwl_PeerReviewChecklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF027A_EotProtnFwl_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#9744





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/01/17
































Lead Peer Reviewer:


JK


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash James






































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








N/A
Comments:










































For components not using application data types, do all








N/A
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








N/A
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

03/01/17
Component Type :


Application



























Lead Peer Reviewer:


JK
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Avinash






































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


EotProtnFwl.c

Source File Revision:


2
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

EotProtnFwl_MDD.docx
Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF027A_EotProtnFwl_Design
Revision:
1.3.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/01/17
































Lead Peer Reviewer:


JK


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash James






































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


EotProtnFwl.cSource File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







Draft 1.2







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL_100A_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/01/17
































Lead Peer Reviewer:


JK


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash James





































































15 - Component Implementation

Component Implementation

Component Documentation

15.1 - HiLoadStallLimr_IntegrationManual

Integration Manual

For

HiLoadStallLimr

VERSION: 1.0

DATE: 19-AUG-2015

Prepared By:

Krishna Kanth Anne,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKrishna Kanth Anne1.019-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1SF017A_HiLoadStallLimr_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
HiLoadStallLimrInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
HiLoadStallLimrPer1NoneRTE(2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

15.2 - HiLoadStallLimr_MDD

Module Design Document

For

HiLoadStallLimr

March 22, 2018

Prepared By:

Jayakrishnan T,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionKrishna Kanth AnneEA4 01.00.0119-Aug-2015
Updated to Design Ver 2.0.0Matthew Leser2.028-Feb-2017
Updated DiagramMatthew Leser3.020-Oct-2017
Updated Local constant valuesJayakrishnan T4.022-Mar-2018


Table of Contents

1 Introduction 5

1.1 Purpose 5

2 HiLoadStallLimr & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of HiLoadStallLimr 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: HiLoadStallLimrInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: HiLoadStallLimrPer1 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 Runables 9

5.3 Interrupt Functions 9

5.4 Module Internal (Local) Functions 9

5.4.1 Local Function #1 9

5.5 GLOBAL Function/Macro Definitions 10

5.5.1 GLOBAL Function #1 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Purpose

MDD for HiLoadStallLimr

HiLoadStallLimr & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of HiLoadStallLimr

Data Flow Diagram

Please refer FDD.

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer .m file
IVTRLOABITMASK_CNT_U081CNT2U
FETLOABITMASK_CNT_U081CNT4U

Software Component Implementation

Sub-Module Functions

None

Init: HiLoadStallLimrInit1

Design Rationale

Module Outputs

None

Per: HiLoadStallLimrPer1

Design Rationale

None

Store Module Inputs to Local copies

Please refer FDD

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameNoneTypeMinMax
Arguments PassedNoneNANANA
NoneNANANA
Return ValueNANANANA

GLOBAL Function/Macro Definitions

GLOBAL Function #1

Function NameNATypeMinMax
Arguments PassedNone
NA
Return ValueNA

Known Limitations with Design

None

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.0
5FDD : SF017A_HiLoadStallLimr_DesignSee Synergy sub project version

15.3 - HiLoadStallLimr_Review


Overview

Summary Sheet
Synergy Project
Source Code
MDD
PolySpace
help
Version History


Sheet 1: Summary Sheet
























Rev 2.0121-Feb-18




Nexteer EA4 SWC Implementation Peer Review Summary Sheet

































Component Short Name:



HiLoadStallLimr
Revision / Baseline:


SF017A_HiLoadStallLimr_Impl_3.1.0
































Change Owner:


Jayakrishnan T
Work CR ID:


EA4#21877


































Modified File Types:






Check the file types that needed modification for the Work CR(s); macros for the check boxes will populate the appropriate checklist tabs for the review.
























































































































































































Review Checklist Summary:





































Reviewed:








At start of review, all items below should be marked "No". At the end of the review, all items should be marked "Yes" or "N/A" where N/A indicates the reviewers have reviewed the existing (unchanged) item and confirmed no updates were needed for the Work CR(s).




























































YesMDD


YesSource Code


YesPolySpace

















































N/AIntegration Manual


N/ADavinci Files




















































































All required reviewers participated





No





















































Comments:

Siva did an offline review of the changes as he was busy with other meetings and I had to get the component










reviewed before Noon


































































































Time spent ( to the nearest half hour)








review preparation



review meeting


review follow-up










Change owner:









0.5



0.5


0









Component developer reviewers:









0



0.5


0


1.5





Other reviewers:









0







0









Total hours









0.5



1


0


1.5




































Content reviewed





























Lines of code:


6


Elements of .arxml content:




0

Pages of documentation:



3































































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include SWC Owner and/or SWC Design author and Integrator and/or SW Lead as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.

Each peer review shall start with a clean copy of the latest peer review checklist template. Save in the doc folder of the component implementation, with the file name in the format SWCShortName_Review.xlsx. If the existing review in Synergy has a different name, the name must be changed IN SYNERGY (rather than by syncing in a new file with the new name) so that the file history will be properly maintained.

Before the peer review, the change owner shall: (NOTE - time for completing these items is to be counted as the Change Owner Review Prep Time)
o Review the previous component peer review and copy any relevant comments to the new review sheet.
o Review all checklist items and make all corrections needed, so that the component is ready for peer review. The expectation is that peer review should find very few issues,
because the change owner has already used the checklist to ensure the component changes are complete and correct.
o Fill in all file name and version information as needed on peer review checklist tabs (file names may be copied from the previous peer review where appropriate)
o Fill in checklist answers (Yes/No/NA pulldowns) ONLY on those items which are NA for the current change. All other checklist items should be blank going into the review
meeting.

During the peer review meeting:
o For each page of the review, first review the items already marked as N/A for this change, to confirm that reviewers agree with this assessment; change the checklist box to
blank if it is found that the item does apply.
o Then review the items with the checklist box blank. After reviewing each of these items, the checklist box will be marked as "Yes", or the checklist box will be marked as
"No" with needed rework indicated or with rationale indicated.
o If any items are marked "No" with rationale indicated, this must be approved by a software supervisor or the software manager; there is a line in the "Review Board" section
of each tab to indicate who approved the "No" items on that tab.





Sheet 2: Synergy Project






















Rev 2.0121-Feb-18

























Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:












































.gpj file in tools folder matches .gpj generated by TL109 script








Yes
Comments:













































File/folder structure is correct per documentation in









Yes
Comments:




TL109A_SwcSuprt







































General Notes / Comments:
























































Review Board:


























Change Owner:

Jayakrishnan T


Review Date :

03/22/18
































Lead Peer Reviewer:


Matt Lesser


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Rationale/justification for items marked "No" approved by:












































Sheet 3: Source Code






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (Source Code Review)

























Source File Name:


HiLoadStallLimr.c

Source File Revision:


4
Header File Name:





Header File Revision:




























MDD Name:


HiLoadStallLimr_MDD.docx
Revision:
4

























SWC Design Name:


SF017A_HiLoadStallLimr_Design
Revision:
3.1.0


























Quality Check Items:



































Rationale is required for all answers of No

































EA4 Common Naming Convention followed:









Yes
Version:
























EA4 Software Naming Convention followed:









Yes
Version:

























for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































Verified no possibility of uninitialized variables being








N/A
Comments:









written to component outputs or IRVs





































Any requirements traceability tags have been removed








N/A
Comments:









from at least the changed areas of code





































All variables are declared at the function level.








N/A
Comments:
















































Synergy version matches change history








Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



(including any anomaly number(s) being fixed) and













Work CR number














































Code accurately implements SWC Design (Document








Yes
Comments:



or Model) in all areas where code was changed and/or













Simulink model was color-coded as changed and/or






















mentioned in SWC Design change log.













































Code comparison against previous version matches








Yes
Comments:



changes needed as described by the work CR(s), all













parent CRs and parent anomalies, and the SWC






















Design change log.














































Verified no Compiler Errors or Warnings








Yes
Comments:









(and verified for all possible combinations













of any conditionally compiled code)














































Component.h is included








N/A
Comments:
















































All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All access of motor control loop data uses macros







N/A
Comments:










generated by the motor control manager





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsigned conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the SWC Design DataDict.m file : [N53]





































All code is mapped with SWC Design (all SWC







Yes
Comments:










Design subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some SWC Design subfunction and/or model block):






















[N40]














































Any other violations of design and coding









N/A
Comments:










standards noticed during the review are noted in the













comments section for rework.













































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any SWC Design corrections needed































































General Notes / Comments:

















































































Review Board:


























Change Owner:

Jayakrishnan T


Review Date :

03/22/18
































Lead Peer Reviewer:


Matt Lesser


Approved by Reviewer(s):



Yes










































































































SWC owner and/or
SWC Design author:
Siva







Comments:




















































Integrator and or
SW lead:
Akilan







Comments:













































































Unit test co-ordinator:


Vivek







Comments:
























































Other Reviewer(s):









































































Rationale/justification for items marked "No" approved by:





































































Sheet 4: MDD






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (MDD Review)


























MDD Name:



HiLoadStallLimr_MDD.docx











MDD Revision:

4


























Source File Name:




HiLoadStallLimr.c









Source File Revision:


4

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








N/A
Comments:










and reviewed







































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:










data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].
















































All implementation details that differ from the SWC








N/A
Comments:










Design are noted and explained in Design Rationale







































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































Review Board:


























Change Owner:

Jayakrishnan T


Review Date :

03/22/18
































Lead Peer Reviewer:


Matt Lesser


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Rationale/justification for items marked "No" approved by:












































Sheet 5: PolySpace






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (PolySpace Review)




























Source File Name:



HiLoadStallLimr.c












Source File Revision:


4

Source File Name:

















Source File Revision:





Source File Name:

















Source File Revision:
































EA4 Static Analysis Compliance Guideline version:









01.04.00














Poly Space version:



2013b





TL109A sub project version:

2.3.0



































Quality Check Items:








































Rationale is required for all answers of No





































tools/local folders' header files are appropriate and










Yes
Comments:










function prototypes match the latest component version











































100% Compliance to the EA4 Static Analysis

Yes
Comments:




Compliance Guideline











































Are previously added justification and deviation










Yes
Comments:




comments still appropriate











































Do all MISRA deviation comments use approved










Yes
Comments:




deviation tags











































For any component source files (.c, .h, generated Cfg.c and Cfg.h)












N/A
Comments:




with conditional compilation, has Polyspace been run with all

















combinations of build constants that can be used together in a build?

























(Note which conditional compilation results have been archived)




















































Codemetrics count OK










Yes
Comments:




for all functions in the component per Design
















and Coding Standards rule [N47]










































































































General Notes / Comments:































































Review Board:




























Change Owner:

Jayakrishnan T




Review Date :

03/22/18


































Lead Peer Reviewer:


Matt Lesser




Approved by Reviewer(s):



Yes

































Other Reviewer(s):


















































































Rationale/justification for items marked "No" approved by:
















































Sheet 6: help

Summary sheet:






Intended Use: Identify which component is being reviewed. This should match the component short name from the DataDict.m fileand the middle part of the Synergy project name, e.g. Assi for the SF001A_Assi_Impl Synergy project







Intended Use: Identify the implementation baseline name intended to be used for the changed component when changes are approved E.g. SF001A_Assi_Impl_1.2.0





Intended Use: Identify the developer who made the change(s) being reviewed




Intended Use: Identify the Implementation Work CR whose work is being reviewed (may be more than one)




Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed.





Source code:





This item includes looking at all layers of Simulink model for possible color coding not reflected at a higher level, and includes looking at any intermediate SWC Design versions between the version being implemented and the version that was included as a subproject in the previous implementation.
Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified
file in the working project)





Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)



Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)







Intended Use: For SWC Designs, list the Synergy baseline number (just the number part of the Synergy baseline name) of the SWC Design baseline being implemented. E.g., for SF001A_Assi_Design_1.3.1, this field would say "1.3.1"









Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s).















Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored).













Intended Use: list version/revision of latest released Software Design and Coding Standards document.





Davinci Files





Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs








Polyspace





eg. 2013b





Integration manual





Intended Use: Identify which file is being reviewed





Intended Use: Identify which version of the integration manual has been reviewed.



Synergy





Refer to EA4 Common Naming Conventions document, section “Synergy Baseline Names for core components”





The following subprojects should be included for all component implementations:
• AR200A_ArSuprt_Impl
• AR201A_ArCplrSuprt_Impl
• TL101A_CptRteGen
• TL103A_CplrSuprt
• TL109A_SwcSuprt
• Corresponding _Design project used for the implementation

The following subprojects should be included as needed by each component:
• AR10xx_Nxtr*_Impl library components as needed by each component
• AR202x_MicroCtrlrSuprt_Impl as needed (for register header files for components making direct register access)[add notes about when to add a stub header file]
• Xx999x_xxxxGlbPrm_Impl as needed by each component
• TL105A_Artt for components with generated content

The following should NOT be included as subprojects:
• TL107x_DavinciSuprt (aka StdDef)
• TL100A_QACSuprt (QAC subproject was previously included but should be removed going forward)
• Any other component (not mentioned anywhere above) whose .h file is needed. For these components, a “stub” .h file should be created, containing only the multiple include protection and the definitions and function prototypes actually needed by the component with the #include, and placed in the “including” component’s local\include folder.

misc in Summary sheet





(integrator, designer, unit test coordinator, etc.)





For a new component, use number of lines in all source files reviewed, including files in the src and include folders and any generated cfg.h and cfg.c files.  For a changed component, try to add up how many lines, including comments and blank lines, were in the changed areas that were reviewed. Not just the actual changed lines, but the number of lines in the blocks of code you had to look at to review the change.
add up the number of ports, number of PIM variables, number if IRVs, number of runnables, number of NVM blocks in the component  (all of them for review of a new component, the new and modified ones for review of a change)
add the number of pages in the MDD and integration manual for a new component; for a modified component, count the number of pages that contained a change.












ReviewerRequired attendance for this type of changeReview spreadsheet tab(s)
Component group peerAllAll
Component owner and/or SWC Design author*Initial creation of any new component
*Simulink model changes (any change to the model other than just updating the change log)
Source
Integrator and/or SW lead of first program planning to use the component*Initial creation of any new component
*new or changed NVM blocks, NVM datatypes, or NVM usage (added or removed or changed NVM API calls in any runnable)
*Major rev (X changed in the X.Y.X design baseline number; means there was a component interface change)
*new or changed config params
*all MM component changes
Davinci files, Integration manual, source for NVM changes and for all MM component changes.
Unit test coordinatorFixes for coverage issuesSource
SQANoneNone








For each reviewer category listed on each tab, there should either be
• the name of the reviewer who attended
or
• a comment indicating
o why that reviewer was not required for this change
or
o who approved holding the review without that required reviewer (approval must
be from the software manager or a software supervisor)


Sheet 7: Version History















File Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus






Draft/ Released






































































Template Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus
1.0Initial VersionSW Engineering team24-May-15NANAReleased
1.01Changed name to be EA4 specificSW Engineering team25-Jun-15NANAReleased
1.02Modified Summary Sheet General Guidelines, Clarified wording on first item in Synergy project sheet.SW Engineering team30-Jul-15NANAReleased
1.02Made corrections and clarifications to Source Code check list.SW Engineering team30-Jul-15NANAReleased
1.02updated Davinci, MDD, and Polyspace/QAC tabsSW Engineering team30-Jul-15NANAReleased
1.03Aligned to portal version guidelinesUmesh Sambhari21-Nov-17NANAReleased
2.00Summary sheet template:
Changed title to indicate Implementation Peer Review
Corrected and/or clarified mouse hover comments, added instructions, renamed some fields.
Changed the default setting to "No" on the items reviewed
SW Engineering team29-Nov-17Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod ShankarNAReleased
Source code template:
Removed hyperlink for naming conventions, corrected name of naming conventions document, added version field for naming conventions document.
Changed item about requirements tags to reflect that they should be removed
Added clarification that all combinations of conditionally compiled code must be checked
Item about accurately implementing SWC Design is modified and a new item added, both to clarify where to look when determining needed changes.
Added point for version of common naming conventions
Reworded multiple items for clarity
SW Engineering team29-Nov-17
Synergy project template:
added items for file/folder structure
added point on .gpj file in tools folder
SW Engineering team29-Nov-17
Davinci files template:
Clarified the StdDef item
Added new item for OBSOLETE
Clarified item on datadict.m comparison
Removed the references to .m file helper tool
Updated to reflect that all component should now use only implementation data types
Added points on PIMs and NVMs
SW Engineering team29-Nov-17
All template tabs:
Added/clarified/removed mouse hover comments.
Updated Review Board section
Removed the gridlines from all tabs
Updated titles to say "Nexteer SWC Implementation Peer Review"
Changed all occurences of "FDD" to "SWC Design"
SW Engineering team29-Nov-17
2.01Added a help tab and appropriate links
Added field on Summary sheet to report hours spent and content reviewed
Changed wording in an item in Polyspace tab and Source code tab
SW Engineering team21-Feb-18Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod Shankar21-Feb-18Released

16 - Component Implementation

Component Implementation

Component Documentation

16.1 - HwAgSnsrls_IntegrationManual

Integration Manual

For

HwAgSnsrls

VERSION:2.0

DATE: 27-March-2017

Prepared By:

Matthew Leser

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionTATA1.006/30/2016
2Updated for NVM Block changes in AutoSARML2.003/27/2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

1.1 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF042A_HwAgSnsrls_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None.

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file.

Required Global Data Outputs

Refer DataDict.m file.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
HwAgSnsrlsInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
HwAgSnsrlsPer1NoneRTE (2ms)
FSnsrlsHwCentr_OperNoneOn event
RstSnsrlsHwCentr_OperNoneOn event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

RTE NvM Blocks

Block Name
StordLstPrm (NOTE: Restore at Startup and Store At Shutdown were unchecked for check in Davinci Devloper. These will need to be turned back on)

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

16.2 - HwAgSnsrls_MDD

Module Design Document

For

HwAgSnsrls

VERSION: 4.0

DATE: 17-Nov-2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

TATA ELXSI

CHENNAI, INDIA


Change History

DescriptionAuthorVersionDate
Initial VersionTATA1.029-Jun-2016
Implemented design 1.2.0, 1.3.0 and fixed anomaly 6881Hari Mattupalli2.022-Sep-2016
Implemented design 1.4.0 and fixed anomaly 7844Hari Mattupalli3.021-Oct-2016
Updated per design rev. 1.6.0TATA4.017-Nov-2016


Table of Contents

1 Introduction 5

1.1 Purpose 5

2 HwAgSnsrls & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of HwAgSnsrls 7

3.2 Data Flow Diagram 8

3.2.1 Component level DFD 8

3.2.2 Function level DFD 8

4 Constant Data Dictionary 9

4.1 Program (fixed) Constants 9

4.1.1 Embedded Constants 9

5 Software Component Implementation 10

5.1 Sub-Module Functions 10

5.1.1 Init: HwAgSnsrlsInit1 10

5.1.1.1 Design Rationale 10

5.1.1.2 Module Outputs 10

5.1.2 Per: HwAgSnsrlsPer1 10

5.1.2.1 Design Rationale 10

5.1.2.2 Store Module Inputs to Local copies 10

5.1.2.3 (Processing of function)……… 10

5.1.2.4 Store Local copy of outputs into Module Outputs 10

5.2 Server Runnables 10

5.2.1 FSnsrlsHwCentr 10

5.2.1.1 Design Rationale 10

5.2.1.2 (Processing of function)……… 10

5.2.2 RstSnsrlsHwCentr 11

5.2.2.1 Design Rationale 11

5.2.2.2 (Processing of function)……… 11

5.3 Interrupt Functions 11

5.4 Module Internal (Local) Functions 11

5.4.1 Local Function #1 11

5.4.1.1 Design Rationale 11

5.4.1.2 Processing 11

5.4.2 Local Function #2 12

5.4.2.1 Design Rationale 12

5.4.2.2 Processing 12

5.4.3 Local Function #3 12

5.4.3.1 Design Rationale 12

5.4.3.2 Processing 13

5.4.4 Local Function #4 13

5.4.4.1 Design Rationale 13

5.4.4.2 Processing 13

6 Known Limitations with Design 14

7 UNIT TEST CONSIDERATION 15

Appendix A Abbreviations and Acronyms 16

Appendix B Glossary 17

Appendix C References 18

Introduction

Purpose

MDD for Handwheel Angle Sensorless.

HwAgSnsrls & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of HwAgSnsrls

E:\Doc\SF042A.JPG

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 NameUnitsValue
Please refer Data Dictionary .m fileNANA

Software Component Implementation

Sub-Module Functions

Init: HwAgSnsrlsInit1

Design Rationale

None

Module Outputs

None

Per: HwAgSnsrlsPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runnables

FSnsrlsHwCentr

Design Rationale

None

(Processing of function)………

Please see FSnsrlsHwCentr block in FDD

RstSnsrlsHwCentr

Design Rationale

None

(Processing of function)………

Please see RstSnsrlsHwCentr block in FDD

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameWhlSpdAutocentrTypeMinMax
Arguments PassedWhlFrqVld_Cnt_T_lgcbooleanFALSETRUE
WhlLeFrq_Hz_T_f32float320.01F60.0F
WhlRiFrq_Hz_T_f32float320.01F60.0F
VehSpd_Kph_T_f32float320.0F511.0F
RelHwAg_HwDeg_T_f32float32-1440.0F1440.0F
*WhlSpdHwConf_Uls_T_f32float320.0F1.0F
Return ValueNone

Design Rationale

None.

Processing

Refer to the “WhlSpdAutocentr” block of the Simulink model of the design.

Local Function #2

Function NameVehDynAutoCentrTypeMinMax
Arguments PassedMotTqCmdCrf_MotNwtMtr_T_f32float32-8.88.8
HwTq_HwNwtMtr_T_f32float32-10.0F10.0F
VehYawRate_VehDegPerSec_T_f32float32-120.0F120.0F
VehSpd_Kph_T_f32float320.0F511.0F
MotVelCrf_MotRadPerSec_T_f32float32-1350.0F1350.0F
VehSpdVld_Cnt_T_loglBooleanFALSETRUE
RelHwAg_HwDeg_T_f32float32-1440.0F1440.0F
*VehDynHwConf_Uls_T_f32float320.0F1.0F
Return ValueNone

Design Rationale

None.

Processing

Refer to the “VehDynAutoCentr” block of the Simulink model of the design.

Local Function #3

Function NamePinionTqCalcandLpFilOneEnaTypeMinMax
Arguments PassedMotTqCmdCrf_MotNwtMtr_T_f32float32-8.88.8
HwTq_HwNwtMtr_T_f32float32-10.0F10.0F
VehYawRate_VehDegPerSec_T_f32float32-120.0F120.0F
VehSpd_Kph_T_f32float320.0F511.0F
MotVelCrf_MotRadPerSec_T_f32float32-1350.0F1350.0F
VehSpdVld_Cnt_T_loglbooleanFALSETRUE
RelHwAg_HwDeg_T_f32float32-1440.0F1440.0F
Return ValueFilOneEna_MilliSec_T_lgcbooleanFALSETRUE

Design Rationale

None.

Processing

Refer to the “PinionTqCalc” and “LpFilOneEna” blocks of the Simulink model of the design.

Local Function #4

Function NameArbtrtnSmthngTypeMinMax
Arguments PassedFCentrHwConf_Uls_T_f32float320.0F1.0F
VehDynHwConf_Uls_T_f32float320.0F1.0F
WhlSpdHwConf_Uls_T_f32float320.0F1.0F
RelHwAg_HwDeg_T_f32float32-1440.0F1440.0F
*LrndHwConf_Uls_T_f32float320.0F1.0F
Return ValueNone

Design Rationale

None.

Processing

Please refer to the “Arbitration” and “Smoothing” blocks of the Simulink model of the design.

Known Limitations with Design

None.

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 Coding Standards.doc2.1
5FDD : SF042A_HwAgSnsrls_DesignSee Synergy Sub-project version

16.3 - HwAgSnsrls_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
Integration_Manual
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet




























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF042A_HwAgSnsrls_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF042A_HwAgSnsrls_Impl_2.0.0



























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#9330





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:








































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/27/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Shawn Penning




































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








N/A
Comments:










































For components not using application data types, do all








N/A
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








N/A
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

03/27/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Shruthi R
Shawn Penning




































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


HwAgSnsrls.c

Source File Revision:


6
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

HwAgSnsrls_MDD.docx

Revision:
4

























FDD/SCIR/DSR/FDR/CM Name:




SF042A_HwAgSnsrls_Design

Revision:
2.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/27/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Shawn Penning




































































Sheet 5: Integration_Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. HwAgSnsrls_IntegrationManual

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 2





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/27/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Shawn Penning




































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


HwAgSnsrls.c











Source File Revision:


6

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







draft 1.2.0














Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/27/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R
Shawn Penning



































































17 - Component Implementation

Component Implementation

Component Documentation

17.1 - HwAgSysArbn_DesignReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF045A_HwAgSysArbn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF045A_HwAgSysArbn_Impl_2.8.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#16783





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/03/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

11/03/17
Component Type :


Application



























Lead Peer Reviewer:


Avinash James
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


HwAgSysArbn.c

Source File Revision:


10
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

HwAgSysArbn_MDD.docx
Revision:
7

























FDD/SCIR/DSR/FDR/CM Name:




SF045A_HwAgSysArbn_Design
Revision:
2.8.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/03/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

HwAgSysArbn_MDD.docx
MDD Revision:

7


























Source File Name:


HwAgSysArbn.cSource File Revision:


10

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/03/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


HwAgSysArbn.cSource File Revision:


10

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:























Polyspace flags for Dead Code. This is because the switch case uses an input. Default case cannot normally be reached, this is for safety in case input

receives garbage data.































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

11/03/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































17.2 - HwAgSysArbn_Integration Manual

Integration Manual

For

SF045A HwAgSysArbn

VERSION: 1.0

DATE: 09-07-2015

Prepared By:

Sarika Natu,

KPIT Technologies,

India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionSarika Natu1.009-07-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesSoftware Process Release 04.02.00
2Software Naming ConventionsSoftware Process Release 04.02.00
3Design and Coding standardsSoftware Process Release 04.02.00
4FDD – SF045A_HwAgSysArbn_DesignSee Synergy sub project version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
FLTINJENASet Value to STD_ON to enable fault injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
HwAgSysArbnInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
HwAgSysArbnPer1NoneRTE (2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
HwAgSysArbn_START_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

17.3 - HwAgSysArbn_MDD

Module Design Document

For

HwAgSysArbn

Oct 31, 2017

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA

Change History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSarika Natu(KPIT Technologies)1.007-Sept-2015
2SF045A_HwAgSysArbn_Design version 2 implementationSB2.020-Jun-2016
3Updated to design version 2.2.0TATA3.007-Dec-16
4Updated to design version 2.4.0KK4.028-Feb-17
5Updated graph and added new functionML5.019-Jul-2017
6Added new functionML6.011-Oct-2017
7Updated GraphML7.031-Oct-2017


Table of Contents

1 Design details of software module 5

1.1 Graphical representation of HwAgSysArbn 5

1.2 Data Flow Diagram 5

1.2.1 Component level DFD 5

1.2.2 Function level DFD 5

2 Constant Data Dictionary 6

2.1 Program (fixed) Constants 6

2.1.1 Embedded Constants 6

3 Software Component Implementation 7

3.1 Sub-Module Functions 7

3.1.1 Init: HwAgSysArbn_Init1 7

3.1.1.1 Design Rationale 7

3.1.1.2 Module Outputs 7

3.1.2 Per: HwAgSysArbn_Per1 7

3.1.2.1 Design Rationale 7

3.1.2.2 Store Module Inputs to Local copies 7

3.1.2.3 (Processing of function)……… 7

3.1.2.4 Store Local copy of outputs into Module Outputs 7

3.2 Server Runables 7

3.3 Interrupt Functions 7

3.4 Module Internal (Local) Functions 7

3.4.1 Local Function #1 7

3.4.1.1 Design Rationale 8

3.4.1.2 Processing 8

3.4.2 Local Function #2 8

3.4.2.1 Design Rationale 8

3.4.2.2 Processing 8

3.4.3 Local Function #3 8

3.4.3.1 Design Rationale 8

3.4.3.2 Processing 8

3.5 GLOBAL Function/Macro Definitions 9

4 Known Limitations with Design 10

5 UNIT TEST CONSIDERATION 11

Appendix A References 12

HwAgSysArbn & High-Level Description

The Handwheel angle system arbitration function accepts inputs from the various angle sources available in the EPS system and selects the angle source to be used for the system handwheel angle value. It also provides for compliance compensation of the angle value and determines the angle value and angle validity to be output on the vehicle data bus.

Design details of software module

Graphical representation of HwAgSysArbn

Data Flow Diagram

See FDD.

Component level DFD

See FDD.

Function level DFD

See FDD.

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Refer .m file

Software Component Implementation

Sub-Module Functions

Init: HwAgSysArbnInit1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: HwAgSysArbn_Per1

Design Rationale

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameVldtSnsrlsDataTypeMinMax
Arguments PassedHwAgSnsrls_HwDeg_T_f32float32-1440.01440.0
HwAgSnsrlsConfIn_Uls_T_f32float320.01.0
Return ValueHwAgSnsrlsConf_Uls_T_f32float320.01.0

Design Rationale

Done to reduce Path Count

Processing

Refer to the Handwheel signal serial communication arbitration functionality of “VldtSnsrlsData” subsystem in the Simulink model.

Local Function #2

Function NameHwAgVelSerlComTypeMinMax
Arguments PassedHwAgCorrdConf_Uls_T_f32uint801
HwAgSnsrlsConf_Uls_T_f32uint801
HwAgCorrd_HwDeg_T_f32float32-14401440
HwAgSnsrls_HwDeg_T_f32float32-14401440
HwVel_HwRadPerSec_T_f32float32-42.0F42.0F
PinionVelConf_Uls_T_f32float320.0F1.0F
*HwAgStsToSerlCom_Cnt_T_lgcbooleanFALSETRUE
*HwVelToSerlCom_HwRadPerSec_T_f32float32-42.0F42.0F
Return ValueHwAgToSerlCom_HwDeg_T_f32float32-14401440

Design Rationale

None

Processing

Refer to the Handwheel signal serial communication arbitration functionality of “HwAgVelSerlCom” subsystem in the Simulink model.

Local Function #3

Function NameCalcPinionVelTypeMinMax
Arguments PassedHwTq_HwNwtMtr_T_f32float32-10.0F10.0F
MotVelCrf_MotRadPerSec_T_f32float32-1350.0F1350.0F
MotVelVld_Cnt_T_loglbooleanFALSETRUE
PinionAgConf_Uls_T_f32float320.0F1.0F
HwAg_HwDeg_T_f32float32-1440.0F1440.0F
* PinionVel_HwRadPerSec_T_f32float32-42.0F42.0F
* PinionVelConf_Uls_T_f32float320.0F1.0F
Return ValueHwVel_HwRadPerSec_T_f32float32-42.0F42.0F

Design Rationale

None

Processing

Refer to the functionality of “CalcPinionVel” subsystem in the Simulink model.

Local Function #4

Function NameHwPosnSigLoNTCSetTypeMinMax
Arguments PassedHwAgIdptSig_Cnt_T_u08uint80U2U
Return ValueNone

Design Rationale

Done to reduce Path Count.

Processing

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

For the switch case in Per1, the input ‘HwAgIdptSig_Cnt_T_u08’ will need to go out of range to reach default case.

References

Ref. #TitleVersion
1AUTOSAR Specification of Memory Mapping (Link:AUTOSAR_SWS_MemoryMapping.pdf)v1.3.0 R4.0 Rev 2
2MDD GuidelineProcess Release 04.02.01
3Software Naming Conventions.doc2.0
4Software Design and Coding Standards.doc2.1
5SF045A_HwAgSysArbn_DesignSee Synergy subproject version

18 - Component Implementation

Component Implementation

Component Documentation

18.1 - HysCmp_DesignReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF012A_HysCmp_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.5.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#8871, EA4#8109





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































NoIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

01/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








N/A
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

01/11/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


HysCmp.c

Source File Revision:


4
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

HysCmp_MDD.docx

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF012A_HysCmp_Design

Revision:
1.2.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

01/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

HysCmp_MDD.docx
MDD Revision:

2


























Source File Name:


HysCmp.cSource File Revision:


4

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








N/A
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

01/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


HysCmp.cSource File Revision:


4

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







Draft 1.2







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL_100A_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

01/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































18.2 - HysCmp_IntegrationManual

Integration Manual

For

HysCmp

VERSION: 1.0

DATE: 04-Aug-2015

Prepared By:

Spandana Balani,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.004-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 04.02.00
<2><Software Naming Conventions>Process 04.02.00
<3><Coding standards>Process 04.02.00
<4>FDD – SF012A_HysCmp_DesignSee Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

Include NxtrFil.h in Rte_UserTypes.h header file

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
HysCmpInit1RTE_Init
RunnableScheduling RequirementsTrigger
HysCmpPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

18.3 - HysCmp_MDD

Module Design Document

For

HysCmp

Jan 04, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionSB1.004-Aug-2015
Updated per Design vers. 1.2.0ML2.004-Jan-2017


Table of Contents

1 Introduction 5

1.1 Purpose 5

1.2 Scope 5

2 HysCmp & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of HysCmp 7

3.2 Data Flow Diagram 8

3.2.1 Component level DFD 8

3.2.2 Function level DFD 8

4 Constant Data Dictionary 9

4.1 Program (fixed) Constants 9

4.1.1 Embedded Constants 9

5 Software Component Implementation 10

5.1 Sub-Module Functions 10

5.1.1 Init: HysCmpInit1 10

5.1.2 Per: HysCmpPer1 10

5.2 Server Runables 10

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 #1 10

5.4.2.1 Design Rationale 10

5.4.2.2 Processing 11

5.4.3 Local Function #1 11

5.4.3.1 Design Rationale 11

5.4.3.2 Processing 11

5.5 GLOBAL Function/Macro Definitions 11

6 Known Limitations with Design 12

7 UNIT TEST CONSIDERATION 13

Appendix A Abbreviations and Acronyms 14

Appendix B Glossary 15

Appendix C References 16

Introduction

Purpose

Scope

HysCmp & High-Level Description

Refer FDD

Design details of software module

Refer FDD

Graphical representation of HysCmp

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer .m file

Software Component Implementation

Refer FDD

Sub-Module Functions

Init: HysCmpInit1

Refer FDD

Per: HysCmpPer1

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameMoreCmpTypeMinMax
Arguments PassedTqChg_HwNwtMtr_T_f32Float32020
*RiseXPtr_HwNwtMtr_T_f32Float3201
*RiseXFac_HwNwtMtr_T_f32Float3201
Return ValueRiseY_Uls_T_f32Float3201

Design Rationale

None

Processing

Refer ‘MoreCmp’ block in Simulink model

Local Function #1

Function NameLessCmpTypeMinMax
Arguments PassedTqChg_HwNwtMtr_T_f32Float32020
*RiseYPtr_Uls_T_f32Float3201
*RiseXFac_HwNwtMtr_T_f32Float3201
Return ValueRiseY_Uls_T_f32Float3201

Design Rationale

None

Processing

Refer ‘LessCmp’ block in Simulink model

Local Function #1

Function NameCalcAvlCmpTypeMinMax
Arguments PassedHwTqFildVal_HwNwtMtr_T_f32Float32-1010
AssiCmdFildVal_HwNwtMtr_T_f32Float32-352352
Return ValueHysCmpAvl_HwNwtMtr_T_f32Float32-8.88.8

Design Rationale

None

Processing

Refer ‘CalcAvlCmp’ block in Simulink model

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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 GuidelineProcess 04.02.00
3Software Naming Conventions.docProcess 04.02.00
4Software Design and Coding Standards.docProcess 04.02.00
5FDD – SF012A_HysCmp_DesignSee Synergy SubProject version

19 - Component Implementation

Component Implementation

Component Documentation

19.1 - ImcSigArbn_IntegrationManual

Integration Manual

For

ImcSigArbn

VERSION: 1.0

DATE: 02-FEB-2017

Prepared By:

Shruthi Raghavan,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl.No.DescriptionAuthorVersionDate
1Initial versionShruthi R1.002-FEB-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesSee Software Engineering Process 04.02.01
2EA4 Software Naming ConventionsSee Software Engineering Process 04.02.01
3Software Design and Coding standardsSee Software Engineering Process 04.02.01
4SF063_ImcSigArbn_DesignSee Synergy Subroject Version

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
ImcSigArbnInit1NoneRTE_Init
RunnableScheduling RequirementsTrigger
ImcSigArbnPer1NoneRTE (2 ms)
ImcSigArbnPer2NoneRTE (10 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
N/A

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
N/A

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

19.2 - ImcSigArbn_MDD

Module Design Document

For

ImcSigArbn

May 11, 2017

Prepared By:

Krishna Anne,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionShruthi Raghavan1.002/02/2017
Fix for Issues in using Return value of ImcDataKrishna Anne2.005/11/2017


Table of Contents1 Introduction 4

1.1 Purpose 4

2 ImcSigArbn & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of ImcSigArbn 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: ImcSigArbnInit1 8

5.1.1.1 Design Rationale 8

5.1.2 Per: ImcSigArbnPer1 8

5.1.2.1 Design Rationale 8

5.1.3 Per: ImcSigArbnPer2 8

5.1.3.1 Design Rationale 8

5.2 Server Runnables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.4.1 Local Function #1 8

5.4.1.1 Design Rationale 9

5.5 GLOBAL Function/Macro Definitions 9

6 Known Limitations with Design 10

7 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

Introduction

Purpose

Module design document for ImcSigArbn SF063A to refer for design rationale, unit test considerations and implementation details.

ImcSigArbn & High-Level Description

This function shall define the requirements for sharing signals. It shall serve as a single function of contact to obtain information from the other controller in a dual ECU structure. It shall define requirements for arbitration of signals and integrator states to ensure performance.

Design details of software module

Graphical representation of ImcSigArbn

Data Flow Diagram

Component level DFD

Refer FDD Simulink model.

Function level DFD

Refer FDD Simulink Model

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer to DataDict.m file

Software Component Implementation

Sub-Module Functions

Init: ImcSigArbnInit1

Design Rationale

Refer FDD Simulink model

Per: ImcSigArbnPer1

Design Rationale

Refer FDD Simulink model
The implementation of ElapsedTime block was optimized in the code to avoid a couple of Boolean operations and additional temporary variables. The functionality was verified in peer review with design owner as well.

Per: ImcSigArbnPer2

Design Rationale

Refer FDD Simulink model
The implementation of ElapsedTime block was optimized in the code to avoid a couple of Boolean operations and additional temporary variables. The functionality was verified in peer review with design owner as well.

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameCalcImcSigOffsTypeMinMax
Arguments PassedImcSigArbnEna_Cnt_T_loglBoolean01
InpSig_Uls_T_f32Float32-32767.532767.5
ImcSig_Uls_T_f32Float32-32767.532767.5
*SigLpFil_Uls_T_strFilLpRec1[struct ('FilSt’, -32767.5,
'FilGain', 0. 062831853000000)]
[struct('FilSt', 32767.5,
'FilGain', 0. 998132557254885)]
*OutSigPrev_Uls_T_f32Float32-32767.532767.5
ImcSigArbnSigOffsLim_Uls_T_f32Float32032767.5
Sts_Cnt_T_enumImcArbnRxSts1IMCARBNRXSTS_NODATAIMCARBNRXSTS_INVLD
Rtn_Cnt_T_enumStd_ReturnTypeE_NOT_OKE_OK
Return ValueOutSigPrev_Uls_T_f32Float32-32767.532767.5

Design Rationale

All the ImcSigArbn_* functions in the Per2 inside ‘Calc Offs Corrn 10ms Periodic’ block of FDD do the same function with different cals, pims and input signals. So they were all clubbed into single function.

Local Function #1

Function NameCalcImcSigOffsTypeMinMax
Arguments PassedSetArbnNtcfloat3204294967296
Return ValueNANANANA

Design Rationale

To handle cyclomatic complexity.

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

  1. Filter ranges given in design are full range of float for state variable and [0,max_float32] for gain – this has to be fixed in next version. For now, the ranges are given in the unit test considerations after calculating from the code. These values can be used instead.

  2. The value of calculated float32 offset signals are limited to [-cal, cal] and then later checked for absolute value being greater than or equal to the same cal. This was verified by component owner as not the design intent & one of these places, the cal used has to change.

  3. The input signal PosnTrakgIntgtrSt1 has a range of [-2864,2864] according to the DataDict.m file. If its IMC counterpart ImcPosnTrakgIntgtrSt1 read in Per2 has the same range [-2864,2864], the algorithm inside the ImcSigArbn_PosnTrakgIntglSt1 will only give output PosnTrakgIntgtrSt1Offs values

[Refer: SF063A_ImcSigArbn/ImcSigArbn/ImcSigArbnPer2/Calculate Offs Corrn 10 ms Periodic /ImcSigArbn_PosnTrakgIntglSt1/Do arbitration]
in the range [-2864,2864]. However, the limit used on this value is a calibration ImcSigArbnPosnTrakg1ArbnOffsLim whose range is [0,32767.5], max is much larger than the actual maximum that can be taken by this variable. Also, the output limits on the PosnTrakgIntgtrSt1Offs output is [-32767.5,32767.5], which needs to change.

  1. The units on the embedded constants INTGTROFFSSATNLOWLIM_ULS_F32 and INTGTROFFSSATNUPPRLIM_ULS_F32 need to change if a different set of constants are decided to be used for PosnTrakgIntgtrSt1Offs limits

UNIT TEST CONSIDERATION

In case the m file gives float min/max values as the ranges for the following PIMs, use the values from this table instead as the range.

PIM VariablesRanges
Structure NameStructure ElementMinMax
HwAgLpFilFilSt-14401440
FilGain0. 0628318530000000. 998132557254885
HwAgTarLpFilFilSt-14401440
FilGain0. 0628318530000000. 998132557254885
HwTqLpFilFilSt-1010
FilGain0. 0628318530000000. 998132557254885
MotVelLpFilFilSt-13501350
FilGain0. 0628318530000000. 998132557254885
PosnServoIntgtrLpFilFilSt-32767.532767.5
FilGain0. 0628318530000000. 998132557254885
PullCmpLongTermCmpLpFilFilSt-1010
FilGain0. 0628318530000000. 998132557254885
PullCmpShoTermCmpLpFilFilSt-1010
FilGain0. 0628318530000000. 998132557254885
TrakgIntgtrSt1LpFilFilSt-28642864
FilGain0. 0628318530000000. 998132557254885
TrakgIntgtrSt2LpFilFilSt-2000020000
FilGain0. 0628318530000000. 998132557254885
VehSpdLpFilFilSt0511
FilGain0. 0628318530000000. 998132557254885

Tolerance of state variables can be assumed to be six significant digits and for the gains it is 1e-07.

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 GuidelineSee Software Engineering Process 04.02.01
3Software Naming Conventions.docSee Software Engineering Process 04.02.01
4Software Design and Coding Standards.docSee Software Engineering Process 04.02.01
5SF063A_ImcSigArbn_DesignSee Synergy Sub-Project Version

19.3 - ImcSigArbn_PeerReviewChecklist


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF063A_ImcSigArbn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Avinash James
Work CR ID:


EA4#14396





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Reviewed changes only



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

08/17/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


ImcSigArbn.c
Source File Revision:


3
Header File Name:


-
Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. -

























MDD Name:

ImcSigArbn_MDD.docx
Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF063A_ImcSigArbn_Design
Revision:
1.3.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











Not done in EA4
























All variables are declared at the function level.








N/A
Comments:
















































Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:
















Design Rationale for ElapsedTime block is noted in MDD
























Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:






















No header file for this component
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard










No non-RTE code

























All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]










No loops in code

























All divides protect against divide by zero







Yes
Comments:










if needed: [N65]










Only division by non-zero embedded constant

























All integer division and modulus operations







Yes
Comments:










handle negative numbers correctly: [N76]










All library functions are used to do these operations

























All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and










All library functions are used to do these operations

timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







Yes
Comments:










types handle msb==1 as intended: [N78]










All library functions are used to do these operations

























All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








Yes
Comments: List Anomaly or CR numbers









for any FDD corrections needed











EA4#9841 Continuous Improvement CR written


















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

08/17/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


ImcSigArbn.cSource File Revision:


3

Source File Name:


-Source File Revision:


-

Source File Name:


-Source File Revision:


-


























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

08/17/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































20 - Component Implementation

Component Implementation

Component Documentation

20.1 - InertiaCmpVel_IntegrationManual

Integration Manual

For

InertiaCmpVel

VERSION: 1.0

DATE: 23-Jul-2015

Prepared By:

Spandana Balani

Nexteer Automotive,

Saginaw, MI, USA


Revision History

: ARM Cortex R4 Memory Usage

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.023-July-2015


Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.01.00
<2><Software Naming Conventions>Process 4.01.00
<3><Coding standards>Process 4.01.00
<4>FDD – SF014A_InertiaCmpVel_DesignSee Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
FLTINJENASet to STD_ON for Fault injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
InertiaCmpVelInit1On InitRTE_Init
RunnableScheduling RequirementsTrigger
InertiaCmpVelPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

20.2 - InertiaCmpVel_MDD

Module Design Document

For

InertiaCmpVel

August 18, 2017

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA
Change History

SNoDescriptionAuthorVersionDate
1Initial VersionSB1.023-Jul-2015
2Updated to version 1.3.0 of designSB2.011-Mar-2016
3Updated to version 1.7.0 and 1.8.0 of designKK3.021-Jun-2016
4Updated to version 1.9.0 of designKK4.014-Jul-2016
5Updated Graph and function inputML5.018-Aug-2017


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 InertiaCmpVel & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of InertiaCmpVel 6

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.1 Sub-Module Functions 9

5.1.2 Interrupt Service Routines 9

5.1.3 Server Runnable Functions 9

5.1.4 Module Internal (Local) Functions 9

5.1.5 Transition Functions 11

6 Known Limitations with Design 12

7 UNIT TEST CONSIDERATION 13

Appendix A Abbreviations and Acronyms 14

Appendix B Glossary 15

Appendix C References 16

Introduction

Purpose

Scope

InertiaCmpVel & High-Level Description

Refer FDD

Design details of software module

Graphical representation of InertiaCmpVel

Data Flow Diagram

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

None

Global Constants

Refer .m file

User defined typedef definition/declaration

This section documents any user types uniquely used for the module.

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

typedef struct FilCoeffRecb0_Uls_f32Float32FULLFULL
b1_Uls_f32Float32FULLFULL
b2_Uls_f32Float32FULLFULL
a0_Uls_f32Float32FULLFULL
a1_Uls_f32Float32FULLFULL
a2_Uls_f32Float32FULLFULL

Software Component Implementation

Sub-Module Functions

Initialization sub-module InertiaCmpVelInit1()

Design Rational:

Init function is not present in the model but in reference to the Init.txt text file Low pass filter and Notch filter are initialized.

For Low pass filter standard EA4 LPF implementation from NxtrFil.h is followed and for Notch filter initialization, EA3 implementation is followed.

Periodic sub-module InertiaCmpVelPer1()

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

Calculate Driver Velocity

Function NameDrvrVelCalcTypeMinMax
Arguments PassedHwTq_HwNwtMtr_T_f32float32-1010
MotVelCrf_MotRadPerSec_T_f32float32-13501350
VehSpd_Kph_T_f32float320511
Return ValueScadDrvrVel_MotRadPerSec_T_f32float32-13501350

Calculate ADD Coefficient

Function NameADDCoeffCalcTypeMinMax
Arguments PassedAssiCmdBas_MotNwtMtr_T_f32float32-8.88.8
WhlImbRejctnAmp_MotNwtMtr_T_f32float3208.8
VehSpd_Kph_T_f32float320511
Return ValueADDCoeffCalc_MotNwtMtrSpRad_T_f32float320.00.00007

Calculate Gain

Function NameDecelGainTypeMinMax
Arguments PassedVehLgtA_KphPerSec_T_f32float32-3535
MotVelCrf_MotRadPerSec_T_f32float32-13501350
Return ValueDecelGain_Uls_T_f32float3201

Calculate Filter Coefficients

Function NameFilCoeffCalcTypeMinMax
Arguments PassedADDCoeff_MotNwtMtrPerMotRadPerSec_T_f32float320.00.041306
WhlImbRejctnAmp_MotNwtMtr_T_f32float3208.8
VehSpd_Kph_T_f32float320511
Return Value*FilCoeff_T_Recb0_Uls_f32float32-2.741562052401790
b1_Uls_f32float320.00.330448
b2_Uls_f32float32-0.1600838624551132.41111405240179
a0_Uls_f32float320.55258853.9498924
a1_Uls_f32float32-7.9996842-4.8417266
a2_Uls_f32float324.050423410.6056849

Generate Command

Function NameGenFddIcCmdTypeMinMax
Arguments PassedScadDrvrVel_MotRadPerSec_T_f32float32-7226.6527226.652
*FilCoeff_T_Recb0_Uls_f32float32-2.741562052401790
b1_Uls_f32float320.00.330448
b2_Uls_f32float32-0.1662621330091642.41111405240179
a0_Uls_f32float320.55258853.9498924
a1_Uls_f32float32-7.9996842-4.8417266
a2_Uls_f32float324.050423410.6056849
Return ValueInertiaCmp_MotNwtMtr_T_f32Float-8.88.8

NotchCmp

Function NameNotchCmpTypeMinMax
Arguments PassedVehSpd_Kph_T_f32float320511
InertiaCmp_MotNwtMtr_T_f32float32-8.88.8
WhlImbRejctnAmp_MotNwtMtr_T_f32float3208.8
Return ValueNotchCmp _MotNwtMtr_T_f32float32-8.88.8

FilNotchFullUpdOutp_f32

Function NameFilNotchFullUpdOutp_f32TypeMinMax
Arguments PassedInpfloat32See unit test consideration
FilNotchStRecPtrFilNotchStRec1
FilNotchGainRecPtrFilNotchGainRec1
Return ValueNone
Description

Notch filter output calculation implemented based on ‘Inertia Comp Notch’ block functionality.

FilNotchInit

Function NameFilNotchInitTypeMinMax
Arguments PassedInpfloat32See unit test consideration
FilNotchStRecPtrFilNotchStRec1
FilNotchGainRecPtrFilNotchGainRec1
Return ValueFilOutfloat32
Description

Notch filter initialization function implemented based on EA3 design.

Transition Functions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

  1. Since the notch filter implementation used in this module is dynamic in nature, absolute ranges are difficult to determine without pre-defined knowledge on the combination of coefficient values (A1, A2, B0, B1, B2). Because of this, the systems group ran simulations on 10 different combinations of coefficients (2 with defined default calibrations, 8 considered extreme cases of notch filters) and logged the ranges of the filter state variables and outputs during a frequency sweep. The ranges given throughout this module were taken as the worst case results of all of the given test cases.

To provide useful cases for unit testing, the boundary checks tested during unit testing should be altered to test the state variable minimum and maximum for each of the 10 test cases with the given coefficients set to the values given in that test case. In the case where the default values of the coefficients are used in a vector, the unit tester should not test the corresponding state variables with values over the range defined for that set of coefficients. See attached simulation results.

  1. GenFddIcCmd function is designed to work with argument values from the calling function as used with the other functions in the module, and outputs may be out of the expected range if tested with arbitrary combinations of input values. Unit testing of this function should use only passed argument value combinations coming from the calling function.

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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD – SF014A_InetiaCmpVel_DesignSee Synergy Sub project version

20.3 - InertiaCmpVel_PeerReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 7.18-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF014A_InertiaCmpVel_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF014A_InertiaCmpVel_Impl_1.11.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#14511





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request. (Note: If this peer review form was not
completed for pervious versions of this component, the Change Owner should review the entire component and complete the checklist in its entirety prior and check
the form into Syngery. This may be done prior to reviewing the modifications for this Change Result)
- The Change Owner shall responsible for completing the entire checklist (Pre and Group review items) prior holding the initial group review.
- New components should include FDD Owner and Intergator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Select "Yes" and add "N/A" to the comments for checklist items that are not applicable for this change
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










Prep project is updated from correct basline








Yes
Comments:










































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matt Leser


Review Date :

08/18/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Bri Spencer






































































Sheet 3: Davinci Files






















Rev 7.18-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










DCF: Only StdDef Port types are used








Yes
Comments:










































DCF: Non-program-specific components saved








N/A
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify











































































kzshz2: Either a generic sandbox or a baselined integration project can be used to verify








































All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































DCF:Automated validation check is performed








Yes
Comments:

























































DCF: Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































DCF: Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)






kzshz2: Intended Use: Identify if all the Sender/Reciever ports are compatibale with there connecting ports. Rationale: This will help to avoid errors when this component is being integrated into a project.






































DCF: Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)






kzshz2: Intended Use: Identify if all the Server/Client ports are compatibale with there connecting ports. Rationale: This will help to avoid errors when this component is being integrated into a project.






































DCF: Sender/Receiver port initialization values match








N/A
Comments:










DataDict.m file






kzshz2: Intended Use: Identify if all the Sender/Reciever ports are compatibale with there connecting ports. Rationale: This will help to avoid errors when this component is being integrated into a project.






































DCF: Calibration port initialization values match








Yes
Comments:










DataDict.m file






kzshz2: Intended Use: Identify if all the Server/Client ports are compatibale with there connecting ports. Rationale: This will help to avoid errors when this component is being integrated into a project.






































DCF: All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification of not)













































DCF: Runnable calling frequencies match FDD








N/A
Comments:
No changes done































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Compnent is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

08/18/17
Component Type :


Application



























Lead Peer Reviewer:


Avinash James
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Bri Spencer






































































Sheet 4: Source Code






















Rev 7.18-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:




kzshz2: Intended Use: Identify which .asm, .c, or .h file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. InertiaCmpVel.c
Source File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 8

























Module Design Document Name:




kzshz2: Intended Use: Identify which version of the MDD this source file was written against. Rationale: Needed for traceability between source code and MDD InertiaCmpVel_MDD
MDD Revision:


kzshz2: Intended Use: Identify which version of the MDD this source file was written against. Rationale: Needed for traceability between source code and MDD 5

























FDD/SCIR/DSR/FDR/CMS Revision:




nz63rn: Intended Use: Identify which version of which FDD/CMS/SER this source file was written against. Rationale: Needed for traceability between source code and FDD/CMS/SER SF014A_InertiaCmpVel_Design_1.14.0




















nz63rn: Intended Use: Identify which version of which FDD/CMS/SER this source file was written against. Rationale: Needed for traceability between source code and FDD/CMS/SER





Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































All source code changes have Requirements Tracability








N/A
Comments:









tags in the component





































No Variables are declared at the Module level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































No Compiler Errors or Warnings verified


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Is component.h included








N/A
Comments:
























Are all includes actually needed? System includes








Yes
Comments:









only allowed in Nexteer library components





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code, function parameters







N/A
Comments:










to





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































No possibility of a non-terminating loop: [N63]







N/A
Comments:

















































No possibility of divide by zero: [N65]







N/A
Comments:

















































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































No possibility of converting a negative floating







Yes
Comments:










point value to an unsigned type: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































No possibility of dereferencing a null







N/A
Comments:










pointer: [N70]





































Module outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to













some FDD subfunction and/or model block): [N40]




































No violations of other coding standard rules








Yes
Comments:









identified during review





































Incorrect items that require FDD changes








N/A
Comments:









ie (display variables used incorrectly, limiting on outputs,













NvM struct types, divide by zero, other?)
















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matt Leser


Review Date :

08/18/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Bri Spencer






































































Sheet 5: MDD






















Rev 7.18-Jun-15
Peer Review Meeting Log (MDD Review)






























Module Name:

kzshz2: Intended Use: Identify which file is has been reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. InertiaCmpVel_MDD


Modulekzshz2: Intended Use: Identify how many source files are being reviewed and trace it to the appropriate MDD. Rationale: Required for traceability between source code and MDD
1of1





























MDD Revision:

kzshz2: Intended Use: Identify which version of the MDD has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 5


Source File Revision:


kzshz2: Intended Use: Identify which version of the source file was this MDD written for. Rationale: Needed for traceability between source code and MDD 8




























































Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































High-level Diagrams have been reviewed








Yes
Comments:



















































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all module input and output








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All other Design rationale understood and captured








N/A
Comments:











appropriately






































All Unit Test Considerations have beeen described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matt Leser


Review Date :

08/18/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Bri Spencer






































































Sheet 6: PolySpace






















Rev 7.18-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Module Name:

kzshz2: Intended Use: Identify which .c file is being analyzed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. InertiaCmpVel

Source File Revision:


8

Module
1of1


























Compliance Guidelines Version:




01.03.00









































kzshz2: Intended Use: Identify specific changes in results (new violation present, previous violation corrected, etc.). Changes to the version of the tool or the way the results were gathered should be described here also. This should be filled out prior to the review by the change owner. Rationale: Gives reviewers an what needs to be focused on. Forces the change owner to compare with previous results to catch any differences that may otherwise go unoticed Brief Summary of Changes (In Results or Tool):


































































Quality Check Items:




































Rationale is required for all answers of No










Contract Folder's header files are appropriate





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:



function prototypes match the latest component version





































100% Compliance to the MISRA Compliance GuidelinesYes
Comments:

























































Are previously added suppression comments still






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:




appropriate



























Cyclomatic complexity and Static path count ok per






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:




Design and Coding Standards rule [N47]

















































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matt Leser


Review Date :

08/18/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Bri Spencer





































































21 - Component Implementation

Component Implementation

Component Documentation

21.1 - LimrCdng_IntegrationManual

Integration Manual

For

LimrCdng

VERSION: 1.0

DATE: 22-Jul-2015

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionN. Saxton1.022-Jul-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1Software Naming Conventions2.0
2Software Design and Coding Standards2.1
3SF038A LimrCdng FDDSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
FLTINJENASet to STD_ON for Fault Injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer .m file in FDD

Required Global Data Outputs

Refer .m file in FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
None
RunnableScheduling RequirementsTrigger
LimrCdngPer1NoneRTE (2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

21.2 - LimrCdng_MDD

Module Design Document

For

LimrCdng

July 22, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionN. Saxton1.0.022-Jul-2015


Table of Contents

1 LimrCdng High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of LimrCdng 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1.1 Sub-Module Functions 7

4.1.2 Interrupt Service Routines 7

4.1.3 Server Runnable Functions 7

4.1.4 Module Internal (Local) Functions 7

4.1.5 Transition Functions 7

5 Known Limitations with Design 8

6 UNIT TEST CONSIDERATION 9

Appendix A Abbreviations and Acronyms 10

Appendix B Glossary 11

Appendix C References 12

LimrCdng High-Level Description

This function provides a layer of protection from erroneous signals feeding into SF04 Sum & Limit. It is applied primarily to limiting signals that serve to reduce motor torque command under certain operating conditions. This function can prevent step response or toggling behavior that might cause undesirable vehicle feel. It includes fault injection capability at some inputs to facilitate tuning.

Design details of software module

Refer FDD

Graphical representation of LimrCdng

Data Flow Diagram

Refer FDD

Component level DFD

N/A

Function level DFD

N/A

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Refer .m file

Software Component Implementation

Sub-Module Functions

Initialization sub-module {_Init()}

None

Periodic sub-module {LimrCdngPer1}

Refer FDD

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

None

Transition Functions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

None

Abbreviations and Acronyms

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.doc2.0
4Software Design and Coding Standards.doc2.1
5SF038A LimrCdng FDDSee Synergy subproject version

21.3 - LimrCdng_PeerReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace
Integration Manual


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF038A_LimrCdng_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Nick Saxton
Work CR ID:


EA4#853





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

07/31/15
































Lead Peer Reviewer:


Spandana


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sankar






































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:

Initial version

versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:

LimrCdngTqIncSlewY should be Ary1D_u13p3_2 - Done 8/3/15

file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:

No display variables
PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton
Review Date :

07/31/15
Component Type :


Application



























Lead Peer Reviewer:


Spandana
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Sankar






































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


LimrCdng.c

Source File Revision:


1
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

LimrCdng_MDD.docx

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF038A_LimrCdng_Design_1.0.0

Revision:
1


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:






















Cal tables need '_u9p7/u13p3' at end of names - Done 7/31/15

























for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








Yes
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







Yes
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







Yes
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

07/31/15
































Lead Peer Reviewer:


Spandana


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sankar






































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

LimrCdng_MDD.docx
MDD Revision:

1


























Source File Name:


LimrCdng.cSource File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:

Initial version










































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

07/31/15
































Lead Peer Reviewer:


Spandana


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sankar






































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


LimrCdng.cSource File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 1.1.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline










Refer comments

















Are previously added justification and deviation








N/A
Comments:

Initial version


comments still appropriate






































Do all MISRA deviation comments use approved








No
Comments:





deviation tags










Refer comments


























Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:























11.5 warning appears to be a bug in polyspace because the 'const' qualifier is retained
12.3 warnings on 'sizeof' are because the cals appear in contract file as functions
19.11 warning is evaluated and code is OK. Deviation comments to be added after the approved Deviation tag and Rationale are added to the MISRA deviation list



































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

07/31/15
































Lead Peer Reviewer:


Spandana


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sankar






































































Sheet 7: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. LimrCdng_IntegrationManual.doc

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 1





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








N/A
Comments:

Initial version








































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

07/31/15
































Lead Peer Reviewer:


Spandana


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Sankar





































































22 - Component Implementation

Component Implementation

Component Documentation

22.1 - LoaMgr_IntegrationManual

Integration Manual

For

LoaMgr

VERSION: 1.0

DATE: 06-Oct-2017

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionMatthew Leser1.006-Oct-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF049B_LoaMgr_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Exclusive Area ‘LoaMgrExclusiveArea’ must be configured to block OS interrupts.

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.

InitScheduling RequirementsTrigger
LoaMgrInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
LoaMgrPer1NoneRTE (4 ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None

22.2 - LoaMgr_MDD

Module Design Document

For

LoaMgr

October 6, 2017

Prepared By:

Matthew Leser

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA


Change History

DescriptionAuthorVersionDate
Initial VersionMatthew Leser106-Oct-2017


Table of Contents1 Introduction 5

1.1 Purpose 5

2 LoaMgr High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of LoaMgr 7

3.2 Data Flow Diagram 8

3.2.1 Component level DFD 8

3.2.2 Function level DFD 8

4 Constant Data Dictionary 9

4.1 Program (fixed) Constants 9

4.1.1 Embedded Constants 9

5 Software Component Implementation 10

5.1 Sub-Module Functions 10

5.1.1 Init: LoaMgrInit1 10

5.1.1.1 Design Rationale 10

5.1.1.2 Module Outputs 10

5.1.2 Per: LoaMgrPer1 10

5.1.2.1 Design Rationale 10

5.1.2.2 Store Module Inputs to Local copies 10

5.1.2.3 (Processing of function)……… 10

5.1.2.4 Store Local copy of outputs into Module Outputs 10

5.2 Server Runables 10

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 11

5.4.2 Local Function #2 11

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 11

5.4.3.2 Processing 11

5.4.4 Local Function #4 11

5.4.4.1 Design Rationale 11

5.4.4.2 Processing 11

5.4.5 Local Function #5 12

5.4.5.1 Design Rationale 12

5.4.5.2 Processing 12

5.4.6 Local Function #6 12

5.4.6.1 Design Rationale 12

5.4.6.2 Processing 12

5.4.7 Local Function #7 12

5.4.7.1 Design Rationale 12

5.4.7.2 Processing 13

5.4.8 Local Function #8 13

5.4.8.1 Design Rationale 13

5.4.8.2 Processing 13

5.5 GLOBAL Function/Macro Definitions 13

6 Known Limitations with Design 14

7 UNIT TEST CONSIDERATION 15

Appendix A Abbreviations and Acronyms 16

Appendix B Glossary 17

Appendix C References 18

Introduction

Purpose

MDD for Loss of Assist Manager

LoaMgr High-Level Description

Refer to FDD

Design details of software module

Graphical representation of LoaMgr

Data Flow Diagram

Refer FDD

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer .m file

Software Component Implementation

Sub-Module Functions

Init: LoaMgrInit1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: LoaMgrPer1

Design Rationale

Refer FDD

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameLtchInpTypeMinMax
Arguments PassedIdptSig_Cnt_T_u08uint804
MaxAllwdVal_Cnt_T_u08uint824
*PrevVal_Cnt_T_u08uint804
Return ValueHwTqResp_Cnt_T_u08uint804

Design Rationale

None

Processing

Refer to ‘Latch_Inputs’ block in FDD at ‘SF049B_LoaMgr/LoaMgr/LoaMgrPer1/Latch_Inputs’

Local Function #2

Function NameCntMtgtnReqTypeMinMax
Arguments PassedHwTqLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
MotAgLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
CurrMeasLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
IvtrLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
Return ValueMultiMtgtnResp_Cnt_T_u08uint803

Design Rationale

None

Processing

Refer to ‘CntMtgtnReq’ block in FDD at ‘SF049B_LoaMgr/LoaMgr/LoaMgrPer1/Arbitrate_Responses/CntSwBasdMtgtn/CntMtgtnReq’

Local Function #3

Function NameReqHwTqRespTypeMinMax
Arguments PassedHwTqIdptMin_Cnt_T_u08uint804
TqLoaAvl_Cnt_T_lgcbooleanFALSETRUE
Return ValueHwTqResp_Cnt_T_u08uint805

Design Rationale

None

Processing

Refer to ‘HwTqResp’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Request_Responses’

Local Function #4

Function NameReqMotAgRespTypeMinMax
Arguments PassedMotAgIdptMin_Cnt_T_u08uint803
MotAgSnsrlsAvl_Cnt_T_loglbooleanFALSETRUE
Return ValueMotAgResp_Cnt_T_u08uint805

Design Rationale

None

Processing

Refer to ‘MotAgResp’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Request_Responses’

Local Function #5

Function NameReqCurrMeasRespTypeMinMax
Arguments PassedCurrMeasIdptMin_Cnt_T_u08uint802
Return ValueCurrMeasResp_Cnt_T_u08uint805

Design Rationale

None

Processing

Refer to ‘CurrMeasResp’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Request_Responses’

Local Function #6

Function NameReqInvtrRespTypeMinMax
Arguments PassedIvtrIdptMin_Cnt_T_u08uint802
Return ValueInvtrResp_Cnt_T_u08uint805

Design Rationale

None

Processing

Refer to ‘CurrMeasResp’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Request_Responses’

Local Function #7

Function NameCntSwBasdMtgtnChkTypeMinMax
Arguments PassedResp_Cnt_T_u08uint805
PrevMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
Return ValueMtgtnEna_Cnt_T_lgcbooleanFALSETRUE

Design Rationale

None

Processing

This function corresponds to common logic (for all requests) in ‘CntSwBasdMtgtn’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Arbitrate_Responses’

Local Function #8

Function NameSelFinalRespTypeMinMax
Arguments PassedMultiMtgtnResp_Cnt_T_u08uint805
HwTqResp_Cnt_T_u08uint805
MotAgResp_Cnt_T_u08uint805
CurrMeasResp_Cnt_T_u08uint805
InvtrResp_Cnt_T_u08uint805
Return ValueLoaSt_Cnt_T_enumLoaSt105

Design Rationale

None

Processing

This function corresponds to ‘SelFinalResp’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Arbitrate_Responses’

Local Function #9

Function NameSetFaultsTypeMinMax
Arguments PassedLoaSt_Cnt_T_enumLoaSt105
HwTqIdptMin_Cnt_T_u08uint804
MotAgIdptMin_Cnt_T_u08uint803
CurrMeasIdptMin_Cnt_T_u08uint802
IvtrIdptMin_Cnt_T_u08uint802
Return ValueNone

Design Rationale

None

Processing

This function corresponds to ‘Set_Faults’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1’

Local Function #10

Function NameSwMtgtnEnTypeMinMax
Arguments PassedHwTqLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
MotAgLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
CurrMeasLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
IvtrLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
VehSpeedMod_Cnt_T_enumenumSTEERMOD_BASEPSSTEERMOD_FULLYATNMS
*LoaSca_Uls_T_f32float3201
*LoaRateLim_UlsPerSec_T_f32float320.01500
Return ValueNone

Design Rationale

None

Processing

This function corresponds to ‘SwMtgtn’ block in FDD at ‘SF049A_LoaMgr/LoaMgr/LoaMgrPer1/Assign_Scale’.

Note that ‘*LoaSca_Uls_T_f32’ and ‘*LoaRateLim_UlsPerSec_T_f32’ are the outputs of this function.

Local Function #11

Function NameLoaMgrCoderTypeMinMax
Arguments PassedCurrMeasLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
IvtrLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
FetLoaMtgtnEna_Cnt_T_lgcbooleanFALSETRUE
Return ValueMotAndThermProtnLoaMod_Cnt_T_u08uint807

Design Rationale

None

Processing

This function corresponds to ‘coder block in FDD at ‘SF049B_LoaMgr/LoaMgr/LoaMgrPer1/coder’ .

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

To satisfy IF case inside function ‘LtchInp’, out of range values will need to be given for values passed to function.

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.01
3Software Naming Conventions.docEA4 01.00.00
4Software Design and Coding Standards.doc2.1
5FDD : SF049B_LoaMgr_DesignSee Synergy sub project version

22.3 - LoaMgr_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
Integration Manual
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF049B_LoaMgr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF049B_LoaMgr_Impl_1.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#14942





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:

ICR EA4#16526 was submitted to update design to add Exclusive Area. This was not done before because SF049B was created before update was done to SF049A.



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

10/25/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Pratik J
Brendon Binder




































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.








Initital Version
























Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD




































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser
Review Date :

10/25/17
Component Type :


Application



























Lead Peer Reviewer:


Avinash James
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Pratik J
Brendon Binder




































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


LoaMgr.c
Source File Revision:


1
Header File Name:


N/A
Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

LoaMgr_MDD.docx
Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF049B_LoaMgr_Design
Revision:
1.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

10/25/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Pratik J
Brendon Binder




































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

LoaMgr_MDD.docx
MDD Revision:

1


























Source File Name:


LoaMgr.cSource File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:

















Initial Version


























Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

10/25/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Pratik J
Brendon Binder




































































Sheet 6: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. LoaMgr_IntegrationManual.doc

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 1





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








N/A
Comments:
















Initial Version

























General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

10/25/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Pratik J
Brendon Binder




































































Sheet 7: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


LoaMgr.cSource File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate










Initial Version


























Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:























Code Prover flags for Dead Code. This is done intentionally for Safety Purpose.


































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

10/25/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Pratik J
Brendon Binder



































































23 - Component Implementation

Component Implementation

Component Documentation

23.1 - MotCtrlPrmEstimn_IntegrationManual

Integration Manual

For

MotCtrlPrmEstimn

VERSION: 1.0

DATE: 20-JUN-2015

Prepared By:

Rijvi Ahmed

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionRijvi Ahmed1.020-Jun-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

1.1 Non RTE NvM Blocks 10

1.2 RTE NvM Blocks 10

2 Compiler Settings 11

2.1 Preprocessor MACRO 11

2.2 Optimization Settings 11

3 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.00.00
<2><Software Naming Conventions>Process 4.00.00
<3><Coding standards>Process 4.00.00
<4>FDD – SF102A_MotCtrlPrmEstimn_DesignSee Synergy Subproject version
<Add if more available>

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
None

Configuration Files to be provided by Integration Project

<Configuration file that will generated from this components that will require Da Vinci Config generation or manual generation. Describe each parameter >

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotCtrlPrmEstimnInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
MotCtrlPrmEstimnPer1NoneRTE(2ms)
MotCtrlPrmEstimnPer2NoneRTE(100ms)
GetMotPrmNomEol_OperNoneOn event
SetMotPrmNomEol_OperNoneOn event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

Non RTE NvM Blocks

Block Name
None

Note : Size of the NVM block if configured in developer

RTE NvM Blocks

Block Name
MotPrmNom

Note : Size of the NVM block if configured in developer

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

23.2 - MotCtrlPrmEstimn_MDD

Module Design Document

For

MotCtrlPrmEstimn

VERSION: 4.0

DATE: 25-Sep-2017

Prepared By:

TATA,

Trivandrum, India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionRijvi1.020-JUN-2015
2Updated per design rev. 1.5.0Rijvi2.007-APRIL-2016
3Updated per design rev. 2.1.0ML3.029-NOV-2016
4New Input added MotAndThermProtnLoaMod and deleted IvtrLoaMtgtnEnaTATA4.025-SEP-2017

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 MotCtrlPrmEstimn & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of MotCtrlPrmEstimn 8

4.2 Data Flow Diagram 9

4.2.1 Module level DFD 9

4.2.2 Sub-Module level DFD 9

4.3 COMPONENT FLOW DIAGRAM 9

5 Variable Data Dictionary 10

5.1 User defined typedef definition/declaration 10

5.2 Variable definition for enumerated types 10

6 Constant Data Dictionary 11

6.1 Program(fixed) Constants 11

6.1.1 Embedded Constants 11

6.1.1.1 Local 11

6.1.1.2 Global 11

6.1.2 Module specific Lookup Tables Constants 11

7 Software Module Implementation 12

7.1 Sub-Module Functions 12

7.2 Initialization Functions 12

7.2.1 Per: MotCtrlPrmEstimnInit1 12

7.2.1.1 Design Rationale 12

7.2.1.2 Store Module Inputs to Local copies 12

7.2.1.3 (Processing of function)……… 12

7.2.1.4 Store Local copy of outputs into Module Outputs 12

7.3 PERIODIC FUNCTIONS 12

7.3.1 Per: MotCtrlPrmEstimnPer1 12

7.3.1.1 Design Rationale 12

7.3.1.2 Store Module Inputs to Local copies 12

7.3.1.3 (Processing of function)……… 12

7.3.1.4 Store Local copy of outputs into Module Outputs 12

7.3.2 Per: MotCtrlPrmEstimnPer2 12

7.3.2.1 Design Rationale 12

7.3.2.2 Store Module Inputs to Local copies 12

7.3.2.3 (Processing of function)……… 12

7.3.2.4 Store Local copy of outputs into Module Outputs 13

7.4 Non PERIODIC FUNCTIONS 13

7.5 Interrupt Functions 13

7.6 Server runnables 13

7.6.1 GetMotPrmNomEol 13

7.6.1.1 Design Rationale 13

7.6.1.2 Store Module Inputs to Local copies 13

7.6.1.3 (Processing of function)……… 13

7.6.1.4 Store Local copy of outputs into Module Outputs 13

7.6.2 SetMotPrmNomEol 13

7.6.2.1 Design Rationale 13

7.6.2.2 Store Module Inputs to Local copies 13

7.6.2.3 (Processing of function)……… 13

7.6.2.4 Store Local copy of outputs into Module Outputs 13

7.7 Serial Communication Functions 14

7.8 Local Function/Macro Definitions 14

7.8.1 Local Function #1 CalcCurrMagSqRef 14

7.9 GLObAL Function/Macro Definitions 14

7.10 TRANSIENT FUNCTIONS 14

8 Unit Test Considerations 15

9 Known Limitations With Design 16

10 Appendix 17

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.02.00
<2><Software Naming Conventions>Process 4.02.00
<3><Coding standards>2.1
<4>FDD - SF102A_MotCtrlPrmEstimn_DesignSee Synergy Subproject version
<Add if more available>

MotCtrlPrmEstimn & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of MotCtrlPrmEstimn

Data Flow Diagram

Module level DFD

Sub-Module level DFD

COMPONENT FLOW DIAGRAM

Variable Data Dictionary

User defined typedef definition/declaration

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

None

Variable definition for enumerated types

Enum NameElement NameValue
N/A<(Variable name qualified Refer[2])><Define the value >

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

< All program specific constants will be defined in detail >

Local

Constant NameResolutionUnitsValue
Refer constants from .m file
BITMASK2_CNT_U081Cnt2U

Global

<This section lists the global constants used by the module. For details on global constants, refer to the Data Dictionary for the application>

Constant Name
None

Module specific Lookup Tables Constants

<(This is for lookup tables (arrays) with fixed values, same name as other tables)>

Constant NameResolutionValueSoftware Segment
None

Software Module Implementation

Sub-Module Functions

NONE

Initialization Functions

Per: MotCtrlPrmEstimnInit1

Design Rationale

Refer to FDD

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

Per: MotCtrlPrmEstimnPer1

Design Rationale

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Per: MotCtrlPrmEstimnPer2

Design Rationale

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Non PERIODIC FUNCTIONS

None

Interrupt Functions

None

Server runnables

GetMotPrmNomEol

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

See GetMotPrmNomEol block in the FDD

Store Local copy of outputs into Module Outputs

None

SetMotPrmNomEol

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

See SetMotPrmNomEol block in the FDD

Store Local copy of outputs into Module Outputs

None

Serial Communication Functions

None

Local Function/Macro Definitions

Local Function #1 CalcCurrMagSqRef

None

GLObAL Function/Macro Definitions

None

TRANSIENT FUNCTIONS

None

Unit Test Considerations

None

Known Limitations With Design

CurrMeasLoaMtgtnEna and FetLoaMtgtnEna are terminated. These flags need not be computed at all.

Appendix

None

23.3 - MotCtrlPrmEstimn_PeerReviewChecklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF102A_MotCtrlPrmEstimn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF102A_MotCtrlPrmEstimn_Impl_3.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Ramachandran M G (TATA ELXSI)
Work CR ID:


EA4#13239





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

10/11/17
































Lead Peer Reviewer:


Avinash


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shawn






































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










NA for the changes

































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







N/A
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:






















NA for the changes









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











NA for the changes
























Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA)
Review Date :

10/11/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Avinash




































Shawn
































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotCtrlPrmEstimn.c
Source File Revision:


6
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

MotCtrlPrmEstimn_MDD.doc
Revision:
4

























FDD/SCIR/DSR/FDR/CM Name:




SF102A_MotCtrlPrmEstimn_Design
Revision:
3.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:
















Please see design limitation in the MDD
























Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified










Please see design limitation in the MDD

with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:
















































Only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(TATA)


Review Date :

10/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash




































Shawn
































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotCtrlPrmEstimn_MDD.doc
MDD Revision:

4


























Source File Name:


MotCtrlPrmEstimn.cSource File Revision:


6

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








Yes
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran


Review Date :

10/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash




































Shawn
































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotCtrlPrmEstimn.cSource File Revision:


6

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(TATA)


Review Date :

10/11/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Avinash




































Shawn































24 - Component Implementation

Component Implementation

Component Documentation

24.1 - MotCurrPeakEstimn_DesignReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF108A_MotCurrPeakEstimn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF108A_MotCurrPeakEstimn_Impl_3.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Ramachandran(Tata Elxsi)
Work CR ID:


EA4#13247





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:

Only reviewed changes



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










NA for the changes

































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts










NA for the changes










for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:






















NA for the changes









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











NA for the changes
























Component is correct component type








Yes
Comments:











































































General Notes / Comments:


























Only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):




Shruthi




































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotCurrPeakEstimn.c

Source File Revision:


5
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

MotCurrPeakEstimn_MDD.docx

Revision:
4

























FDD/SCIR/DSR/FDR/CM Name:




SF108A_MotCurrPeakEstimn_Design

Revision:
3.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]










Only for the changes

























All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:
















































Only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotCurrPeakEstimn_MDD.docx
MDD Revision:

4


























Source File Name:


MotCurrPeakEstimn.cSource File Revision:


5

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:


























Only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotCurrPeakEstimn.cSource File Revision:


5

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 1.3.0

QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline










Previous implementation issue are present

















Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran(Tata Elxsi)


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































24.2 - MotCurrPeakEstimn_IntegrationManual

Integration Manual

For

MotCurrPeakEstimn

VERSION: 1.0

DATE: 04-Aug-2015

Prepared By:

Spandana Balani,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.004-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 Dependencies 7

3.1 SWCs 7

3.2 Global Functions(Non RTE) to be provided to Integration Project 7

4 Configuration REQUIREMeNTS 8

4.1 Build Time Config 8

4.2 Configuration Files to be provided by Integration Project 8

4.3 Da Vinci Parameter Configuration Changes 8

4.4 DaVinci Interrupt Configuration Changes 8

4.5 Manual Configuration Changes 8

5 Integration DATAFLOW REQUIREMENTS 9

5.1 Required Global Data Inputs 9

5.2 Required Global Data Outputs 9

5.3 Specific Include Path present 9

6 Runnable Scheduling 10

7 Memory Map REQUIREMENTS 11

7.1 Mapping 11

7.2 Usage 11

7.3 NvM Blocks 11

8 Compiler Settings 12

8.1 Preprocessor MACRO 12

8.2 Optimization Settings 12

9 Appendix 13

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 04.02.00
<2><Software Naming Conventions>Process 04.02.00
<3><Coding standards>Process 04.02.00
<4>FDD – SF108A_MotCurrPeakEstimn_DesignSee Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

Include NxtrFil.h in Rte_UserTypes.h header file

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotCurrPeakEstimnInit1RTE
RunnableScheduling RequirementsTrigger
MotCurrPeakEstimnPer1NoneRTE(2ms)
MotCurrPeakEstimnPer2NoneRTE(100ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

24.3 - MotCurrPeakEstimn_MDD

Module Design Document

For

MotCurrPeakEstimn

Sep 25, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

TATA,

Trivandrum, India


Change History

DescriptionAuthorVersionDate
Initial VersionSB1.005-Aug-2015
Updated graphical representation due to changes from FDD v1.2.0NS2.025-Apr-2016
Updated to FDD v2.0.0JK3.018-Nov-2016
Updated to FDD v3.0.0TATA4.025-Sep-2017


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 MotCurrPeakEstimn & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of MotCurrPeakEstimn 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: MotCurrPeakEstimnInit1 8

5.1.2 Per: MotCurrPeakEstimnPer1 8

5.1.3 Per: MotCurrPeakEstimnPer2 8

5.2 Server Runables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 9

7 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

Introduction

Purpose

Scope

MotCurrPeakEstimn & High-Level Description

Refer FDD

Design details of software module

Refer FDD

Graphical representation of MotCurrPeakEstimn

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer .m File
BITMASK1_CNT_U08uint8CNT1U
BITMASK2_CNT_U08uint8CNT2U
BITMASK4_CNT_U08uint8CNT4U

Software Component Implementation

Refer FDD

Sub-Module Functions

Init: MotCurrPeakEstimnInit1

Refer FDD

Per: MotCurrPeakEstimnPer1

Refer FDD

Per: MotCurrPeakEstimnPer2

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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 GuidelineProcess 04.02.00
3Software Naming Conventions.docProcess 04.02.00
4Software Design and Coding Standards.docProcess 04.02.00
5FDD – SF108A_MotCurrPeakEstimn_DesignSee Synergy SubProject version

25 - Component Implementation

Component Implementation

Component Documentation

25.1 - MotCurrRegCfg_IntegrationManual

Integration Manual

For

MotCurrRegCfg

VERSION: 1.0

DATE: <02-JUN-2015>

Prepared By:

Selva Sengottaiyan

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSelva Sengottaiyan1.002-Jun-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.00.00
<2><Software Naming Conventions>Process 4.00.00
<3><Coding standards>Process 4.00.00
<4>FDD – SF104A_MotCurrRegCfg_DesignSee Synergy Subproject version
<Add if more available>

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
None

Configuration Files to be provided by Integration Project

<Configuration file that will generated from this components that will require Da Vinci Config generation or manual generation. Describe each parameter >

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotCurrRegCfgInit1NoneRTE
RunnableScheduling RequirementsTrigger
MotCurrRegCfgPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

25.2 - MotCurrRegCfg_MDD

Module Design Document

For

MotCurrRegCfg

VERSION: 5.0

DATE: 25-Sep-2017

Prepared By:

Software Group

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSelva1.002-JUN-2015
2Updated per design rev. 1.3.0Rijvi2.012-Mar-2016
3Updated per design rev. 1.4.0Krishna3.029-Apr-2016
4Updated per design rev. 2.1.0JK4.011-Nov-2016
5.Updated per design rev. 3.0.0TATA5.025-Sep-2017

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 MotCurrRegCfg & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of MotCurrRegCfg 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.2 Initialization Functions 11

7.2.1 Per: MotCurrRegCfgINIT1 11

7.2.1.1 Design Rationale 11

7.2.1.2 Store Module Inputs to Local copies 11

7.2.1.3 (Processing of function)……… 11

7.2.1.4 Store Local copy of outputs into Module Outputs 11

7.3 PERIODIC FUNCTIONS 11

7.3.1 Per: MotCurrRegCfgper1 11

7.3.1.1 Design Rationale 11

7.3.1.2 Store Module Inputs to Local copies 11

7.3.1.3 (Processing of function)……… 11

7.3.1.4 Store Local copy of outputs into Module Outputs 11

7.4 Non PERIODIC FUNCTIONS 11

7.5 Interrupt Functions 11

7.6 Serial Communication Functions 12

7.7 Local Function/Macro Definitions 12

7.8 GLObAL Function/Macro Definitions 12

7.9 TRANSIENT FUNCTIONS 12

8 Unit Test Considerations 13

9 Known Limitations With Design 14

10 UNIT TEST CONSIDERATION 15

11 Appendix 16

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 04.02.01
<2><Software Naming Conventions>Process 04.02.01
<3><Coding standards>Process 04.02.01
<4>FDD - SF104A_MotCurrRegCfg_DesignSee Synergy Subproject version
<Add if more available>

MotCurrRegCfg & High-Level Description

Design details of software module

Graphical representation of MotCurrRegCfg

Data Flow Diagram

Module level DFD

Sub-Module level DFD

COMPONENT FLOW DIAGRAM

Variable Data Dictionary

User defined typedef definition/declaration

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

N/A

Variable definition for enumerated types

Enum NameElement NameValue
N/A<(Variable name qualified Refer[2])><Define the value >

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

< All program specific constants will be defined in detail >

Local

Constant NameResolutionUnitsValue
Refer constants from .m file

Global

<This section lists the global constants used by the module. For details on global constants, refer to the Data Dictionary for the application>

Constant Name
Refer constants from .m file

Module specific Lookup Tables Constants

<(This is for lookup tables (arrays) with fixed values, same name as other tables)>

Constant NameResolutionValueSoftware Segment
Refer .m file

Software Module Implementation

Sub-Module Functions

NONE

Initialization Functions

Per: MotCurrRegCfgINIT1

Design Rationale

Refer to FDD

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

Per: MotCurrRegCfgper1

Design Rationale

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Non PERIODIC FUNCTIONS

None

Interrupt Functions

None

Serial Communication Functions

None

Local Function/Macro Definitions

None

GLObAL Function/Macro Definitions

None

TRANSIENT FUNCTIONS

None

Unit Test Considerations

None

Known Limitations With Design

None

UNIT TEST CONSIDERATION

The range of the application data type used for the calibration MotCurrRegCfgMotClsdLoopBwDaxY and MotCurrRegCfgMotNatFrqQaxY are not updated per the DataDict.m file changes. We moved away using the application data type, hence it has no impact.

Appendix

None

25.3 - MotCurrRegCfg_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF104A_MotCurrRegCfg_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF104A_MotCurrRegCfg_Impl_3.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. TATA Offshore
Work CR ID:


EA4#13243





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

10/18/17
































Lead Peer Reviewer:


Shawn Penning


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








Yes
Comments:









PerInstanceMemory. Matches the FDD



























Component is correct component type








N/A
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA
Review Date :

10/18/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):




































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotCurrRegCfg.c

Source File Revision:


9
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

MotCurrRegCfg_MDD.doc

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF104_MotCurrRegCfg_Design

Revision:
2.3.1


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA


Review Date :

10/18/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):




































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotCurrRegCfg_MDD.doc
MDD Revision:

6


























Source File Name:


MotCurrRegCfg.cSource File Revision:


8

Source File Name:



Source File Revision:





Source File Name:



Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








N/A
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA


Review Date :

10/18/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):




































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotCurrRegCfg.cSource File Revision:


9

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.03.00







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA


Review Date :

10/18/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):



































































26.1 - MotCurrRegVltgLimr_Integration Manual

Integration Manual

For

‘MotCurrRegVltgLimr’

VERSION: 1.0

DATE: 26-May-2015

Prepared By:

Selva Sengottaiyan

Nexteer Automotive,

Saginaw, MI, USA


Revision History

: ARM Cortex R4 Memory Usage

Sl. No.DescriptionAuthorVersionDate
1Initial versionSelva Sengottaiyan1.04-June-2015


Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF105A_MotCurrRegVltgLimr_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.00.00
3Software Design and Coding StandardsProcess 4.00.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotCurrRegVltgLimrInit1NoneInit
RunnableScheduling RequirementsTrigger
MotCurrRegVltgLimrPer1Motor Control ISR*2

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
MotCtrl_START_SEC_CODECode section for Motor Control scheduled functions

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Non RTE NvM Blocks

Block Name
None

RTE NvM Blocks

Block Name
none

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None

Appendix

None

26.2 - MotCurrRegVltgLimr_MDD

Module Design Document

For

‘MotCurrRegVltgLimr’

VERSION: 5.0

DATE: 08-Nov-2017

Prepared By:

TATA ELXSI,

TRIVANDRUM, INDIA


Location:
The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSelva Sengottaiyan1.026-May-2015
2Updated graphical representation and added local function informationNick Saxton2.013-Apr-2016
3Updated for FDD v2.1.0Matthew Leser3.07-Nov-2016
4Updated to fix Anomaly EA4#9045Matthew Leser4.004-Jan-2017
5Updated for FDD v3.0.0TATA5.008-Nov-2017


Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.1.1 Initialization Functions 11

7.1.1.1 INIT: MotCurrRegVltgLimrInit1 11

7.1.1.1.1 Design Rationale 11

7.1.1.1.2 Module Outputs 11

7.1.1.1.3 Module Internal 11

7.1.2 PERIODIC FUNCTIONS 11

7.1.2.1 INIT: MotCurrRegVltgLimrPER1 11

7.1.2.1.1 Design Rationale 11

7.1.2.1.2 Module Outputs 11

7.1.3 Interrupt Functions 11

7.1.4 Server runnables 12

7.1.4.1.1 Store Local copy of outputs into Module Outputs 12

7.1.5 Local Function/Macro Definitions 12

7.1.5.1.1 Local function #1 12

7.1.5.1.2 Local function #2 12

7.1.5.1.3 Local function #3 12

7.1.5.1.4 Local function #4 13

7.1.5.1.5 Local function #5 13

7.1.6 GLObAL Function/Macro Definitions 13

7.1.7 Tranisition FUNCTIONS 13

8 Known Limitations With Design 14

9 UNIT TEST CONSIDERATION 15

10 Appendix 16

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
FDDFunctional Design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesProcess 4.02.01
2Software Naming ConventionsProcess 4.02.01
3Software Design and Coding standards2.1
4FDD – SF105A_MotCurrRegVltgLimr_DesignSee Synergy sub project version

High-Level Description

None

Design details of software module

Graphical representation

Data Flow Diagram

Refer FDD

Module level DFD

Refer FDD

Sub-Module level DFD

Refer FDD

COMPONENT FLOW DIAGRAM

Refer FDD

Variable Data Dictionary

User defined typedef definition/declaration

<This section documents any user types uniquely used for the module.>

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

None

Variable definition for enumerated types

Enum NameElement NameValue
None

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

Local

Constant NameResolutionUnitsValue
MODIDXHILIM_VOLT_F32Single precision floatVolt1
MODIDXLOLIM_VOLT_F32Single precision floatVolt0
BITMASK1_CNT_U08Uint8CNT1U
BITMASK2_CNT_U08Uint8CNT2U
BITMASK4_CNT_U08Uint8CNT4U

Global

Constant Name

Module specific Lookup Tables Constants

None

Software Module Implementation

Sub-Module Functions

Initialization Functions

MotCurrRegVltgLimrInit1

INIT: MotCurrRegVltgLimrInit1

Design Rationale

Design follows implemenetation in FDD.

Module Outputs

Refer ‘MotCurrRegVltgLimrInit’ block in FDD

Module Internal

None

PERIODIC FUNCTIONS

INIT: MotCurrRegVltgLimrPER1

Design Rationale

Module Outputs

As per FDD, dMotCurrRegVltgLimrMotVltgDecouplFbDax, dMotCurrRegVltgLimrMotVltgDecouplFbQax renamed with dMotCurrRegVltgLimrMotVltgDecoupldFbDax, dMotCurrRegVltgLimrMotVltgDecouplFbQax in the source file. And also dMotCurrRegVltgLimrMotCurrCmdErr(display variable) is nowhere used in source file. That variable davinci definition is removed. Design follows implemenetation in FDD.

Interrupt Functions

None


Server runnables

None

Store Local copy of outputs into Module Outputs

None

Local Function/Macro Definitions

Local function #1

Function NameKpKiCtrlTypeMinMax
Arguments PassedMotPropGain_Ohm_T_f32Float3202.25
MotIntglGain_Ohm_T_f32Float3203.6
SysSt_Cnt_T_enumEnumSYSST_DISYSST_WRMININ
CmdErr_Ampr_T_f32Float32-200400
*MotVltgIntglCmdPrev_Volt_T_f32Float32-10001000
*MotCurrRegVltgLimrMotVltgPropCmd_Volt_T_f32Float32-26.526.5
*MotCurrRegVltgLimrMotVltgIntglPreLim_Volt_T_f32Float32-26.526.5
MotVltgIntglLoLim_Volt_T_f32Float32-310
MotVltgIntglHiLim_Volt_T_f32Float32031
*MotVltgPropCmd_Volt_T_f32Float32-26.526.5
*MotVltgIntglCmd_Volt_T_f32Float32626.5

* MotVltgPropCmd_Volt_T_f32 and * MotVltgIntglCmd_Volt_T_f32 are outputs of this function.

Local function #2

Function NameErrorCalcQaxTypeMinMax
Arguments PassedQaxCurrCmd_Ampr_T_f32Float32-200200
QaxRplCmd_Ampr_T_f32Float32-2929
QaxCoggCmd_Ampr_T_f32Float32-66
QaxCurrModif_Ampr_T_f32Float32-200200
* QaxCmdFinal_Ampr_T_f32Float32-200200
ReturnsCmdErrQax_Ampr_T_f32Float32-200400

*QaxCmdFinal_Ampr_T_f32 is also an output of this function.

Local function #3

Function NameLoaScaFacTypeMinMax
Arguments PassedCurrLoaMtgtnEn_Cnt_T_loglBooleanFALSETRUE
IvtrLoaMtgtnEn_Cnt_T_loglBooleanFALSETRUE
MotCtrlDualEcuMotCtrlMtgtnEna_Cnt_T_loglBooleanFALSETRUE
FetLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE
*CurrLoaScaFac_Uls_T_f32Float3201
*IvtrLoaScaFac_Uls_T_f32Float3201
*DualEcuScaFac_Uls_T_f32Float3201
*FetScaFac_Uls_T_f32Float320.0F1.0F

*CurrLoaScaFac_Uls_T_f32, *IvtrLoaScaFac_Uls_T_f32, and *DualEcuScaFac_Uls_T_f32 are outputs of this function.

Local function #4

Function NameMotCurr_PredTypeMinMax
Arguments PassedMotInduQaxEstimdIvs_IvsHenry_T_f32Float32224033334
MotREstimd_Ohm_T_f32Float320.0050.12565
CurrQax_Ampr_T_f32Float32-200200
MotVltgQaxPrev_Volt_T_f32Float32-26.526.5
CurrDax_Ampr_T_f32Float32-200200
MotVltgDaxPrev_Volt_T_f32Float32-26.526.5
MotBackEmfVltg_Volt_T_f32Float32-101.25101.25
ReacncQax_Ohm_T_f32Float32-0.50.5
ReacncDax_Ohm_T_f32Float32-0.50.5
MotInduDaxEstimdIvs_IvsHenry_T_f32Float32224033334
MotCurrRegVltgLimrMotCurrPredEna_Cnt_T_f32BooleanFALSETRUE
MotCtrlCurrPredTi_NanoSec_T_f32Float320125000
*MotCurrQaxPred_Ampr_T_f32Float32-200200
*MotCurrDaxPred_Ampr_T_f32Float32-200200

*MotCurrQaxPred_Ampr_T_f32 and *MotCurrDaxPred_Ampr_T_f32 are outputs of this function.

Local function #5

Function NameDecoderTypeMinMax
Arguments PassedMotAndThermProtnLoaMod_Cnt_T_u08Uint8OU255U
CurrMeasLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE
IvtrLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE
FetLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE

* CurrMeasLoaMtgtnEna_Cnt_T_logl, *IvtrLoaMtgtnEna_Cnt_T_logl, *FetLoaMtgtnEna_Cnt_T_logl are outputs of this function.

GLObAL Function/Macro Definitions

None

Tranisition FUNCTIONS

None

Known Limitations With Design

None

UNIT TEST CONSIDERATION

None

Appendix

None

26.3 - MotCurrRegVltgLimr_Peer Review Checklists


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
Source Code (2)
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF105A_MotCurrRegVltgLimr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF105A_MotCurrRegVltgLimr_Impl_3.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Ramachandran (TATA Elxsi)
Work CR ID:


EA4#13245





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:

ICR# 15310 has been submitted to fix issues found in .m file that do not affect functionality.



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA Elxsi)


Review Date :

11/08/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










N/A for change

































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts










N/A for change










for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts










MotRefMdlIvtrDeadTiBrdgVltgSca value changed 0 to1










for fixed point types










Earlier implementation it was wrongly initialized with 0


































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA Elxsi)
Review Date :

11/14/17
Component Type :


CDD



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


CDD_MotCurrRegVltgLim.c

Source File Revision:


7
Header File Name:


CDD_MotCurrRegVltgLimr.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1

























MDD Name:

MotCurrRegVltgLimr_MDD.docx

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF105A_MotCurrRegVltgLimr_Design

Revision:
3.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written











NA for changes
























Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








Yes
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA Elxsi)


Review Date :

11/14/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: Source Code (2)






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


CDD_MotCurrRegVltgLim_MotCtrl.c

Source File Revision:


12
Header File Name:


CDD_MotCurrRegVltgLimr.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1

























MDD Name:

MotCurrRegVltgLimr_MDD.docx

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF105A_MotCurrRegVltgLimr_Design

Revision:
3.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








Yes
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA Elxsi)


Review Date :

11/14/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:





MotCurrRegVltgLimr_MDD.docx









MDD Revision:

5


























Source File Name:







CDD_MotCurrRegVltgLim.c






Source File Revision:


7

Source File Name:






CDD_MotCurrRegVltgLim_MotCtrl.c







Source File Revision:


12

Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








Yes
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Ramachandran (TATA Elxsi)


Review Date :

11/14/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):




































Other Reviewer(s):










































































Sheet 7: PolySpace






















Rev 1.28-Jun-15


Peer Review Meeting Log (QAC/PolySpace Review)































Source File Name:


CDD_MotCurrRegVltgLim_MotCtrl.cSource File Revision:


12




Source File Name:


CDD_MotCurrRegVltgLim.cSource File Revision:


7




Source File Name:















Source File Revision:




































EA4 Static Analysis Compliance Guideline version:







01.03.00










Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0





QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0

































Quality Check Items:







































Rationale is required for all answers of No









































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:







function prototypes match the latest component version













































100% Compliance to the EA4 Static AnalysisYes
Comments:








Compliance Guideline










Unreachable code in previous implementation























Are previously added justification and deviation








Yes
Comments:








comments still appropriate












































Do all MISRA deviation comments use approved








Yes
Comments:








deviation tags












































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:








for all functions in the component per Design

















and Coding Standards rule [N47]













































































































General Notes / Comments:













































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:































Change Owner:

Ramachandran (TATA Elxsi)


Review Date :

11/08/17






































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes





































Other Reviewer(s):








































































































































































x`

27 - Component Implementation

Component Implementation

Component Documentation

27.1 - MotQuadDetn Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF101A_MotQuadDetn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF101A_MotQuadDetn_Impl_1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11065





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

06/21/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer


































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

06/21/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotQuadDetn.c

Source File Revision:


2
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

MotQuadDetn_MDD.doc

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF101A_MotQuadDetn_Design

Revision:
1.2.1


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:

Tags Removed






requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

06/21/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser

































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotQuadDetn_MDD.docx
MDD Revision:

2


























Source File Name:


MotQuadDetn.cSource File Revision:


2

Source File Name:



Source File Revision:





Source File Name:



Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








N/A
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

06/21/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser


































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotQuadDetn.cSource File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

06/21/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer






























































27.2 - MotQuadDetn_IntegrationManual

Integration Manual

For

MOTOR QUADRANT DETECTION

VERSION: 1.0

DATE: 11-MAY-2015

Prepared By:

Software Group,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSpandana Balani1.011-May-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1>FDD – SF101A Motor Quadrant DetectionSee Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotQuadDetnInit1On InitRte_Init
RunnableScheduling RequirementsTrigger
MotQuadDetnPer1NoneRTE 2ms Task

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

Non RTE NvM Blocks

Block Name
None

Note : Size of the NVM block if configured in developer

RTE NvM Blocks

Block Name
None

Note : Size of the NVM block if configured in developer

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

27.3 - MotQuadDetn_MDD

Module Design Document

For Motor Quadrant Detection

VERSION: 1.0

DATE: 11-MAY-2015

Prepared By:

Shawn Penning


Location:
The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSB1.011-May-2015
2Update to Unit Test ConsiderationsSPP2.016-Jun-2017


Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 motquaddetn & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of MOtquaddetn 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.1.1 Initialization Functions 11

7.1.1.1 INIT: MotQuadDetnInit1 11

7.1.1.2 Design Rationale 11

7.1.1.3 Store Module Inputs to Local copies 11

7.1.1.4 (Processing of function)……… 11

7.1.1.5 Store Local copy of outputs into Module Outputs 11

7.1.2 PERIODIC FUNCTIONS 11

7.1.2.1 Per: MotQuadDetnPer1 11

7.1.2.2 Design Rationale 11

7.1.2.3 Store Module Inputs to Local copies 11

7.1.2.4 (Processing of function)……… 11

7.1.2.5 Store Local copy of outputs into Module Outputs 11

7.2 Interrupt Functions 11

7.3 Serial Communication Functions 12

7.4 Local Function/Macro Definitions 12

7.5 GLObAL Function/Macro Definitions 12

7.6 TRANSIENT FUNCTIONS 12

8 Known Limitations With Design 13

9 UNIT TEST CONSIDERATION 14

10 Appendix 15

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 3.06.00
<2><Software Naming Conventions>Process 3.06.00
<3><Coding standards>Process 3.06.00
<4>FDD – SF101A Motor Quadrant DetectionSee Synergy Subproject version
<Add if more available>

motquaddetn & High-Level Description

None

Design details of software module

Graphical representation of MOtquaddetn

Data Flow Diagram

Module level DFD

N/A

Sub-Module level DFD

N/A

COMPONENT FLOW DIAGRAM

N/A

Variable Data Dictionary

User defined typedef definition/declaration

<This section documents any user types uniquely used for the module.>

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

N/A

Variable definition for enumerated types

Enum NameElement NameValue
N/A

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

< All program specific constants will be defined in detail >

Local

Constant NameResolutionUnitsValue
Refer constants from .m file

Global

<This section lists the global constants used by the module. For details on global constants, refer to the Data Dictionary for the application>

Constant Name
N/A

Module specific Lookup Tables Constants

<(This is for lookup tables (arrays) with fixed values, same name as other tables)>

Constant NameResolutionValueSoftware Segment
<Refer Constant name qualified in [2]><Refer MDD guidelines [1]><Refer MDD guidelines [1]><Refer MDD guidelines [1]>

Software Module Implementation

Sub-Module Functions

None

Initialization Functions

INIT: MotQuadDetnInit1

Design Rationale

None

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

(Note: For multiple periodic functions, insert new headers at the “Header 2” level – subset of “7.2 Periodic Functions” and follow the same sub-section design shown below). If none required, place the text “None”)>

Per: MotQuadDetnPer1

Design Rationale

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Interrupt Functions

None


Serial Communication Functions

None

Local Function/Macro Definitions

None

GLObAL Function/Macro Definitions

None

TRANSIENT FUNCTIONS

None

Known Limitations With Design

Rollover Checking is not needed. Fixed point math implementation takes care of it and no additional logic is required.

UNIT TEST CONSIDERATION

Rollovers should not occur in normal operation in the vehicle, however, rollovers will most likely occur during dynamometer testing or other tests. (From Motor Control FDD REPS GG4500 BMW 5.3.doc)

Appendix

None

28 - Component Implementation

Component Implementation

Component Documentation

28.1 - MotRefMdl_DesignReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF103A_MotRefMdl_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF103A_MotRefMdl_Impl_4.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. TATA ELXSI
Work CR ID:


EA4#13241





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:

Reviewed changes alone



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

10/20/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file










NA for the changes


































Calibration port initialization values match







N/A
Comments:










DataDict.m file










NA for the changes

































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







N/A
Comments:










removed










NA for the changes

































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:






















NA for the changes









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











NA for the changes
























Component is correct component type








Yes
Comments:











































































General Notes / Comments:


























only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA ELXSI
Review Date :

10/09/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotRefMdl.c

Source File Revision:


7
Header File Name:


MotRefMdl.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1

























MDD Name:

MotRefMdl_MDD.doc

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF103A_MotRefMdl_Design

Revision:
4.0.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











Removed earlier ones as well
























All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








Yes
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







Yes
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:
















































only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA ELXSI


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotRefMdl_MDD.doc




MDD Revision:

5


























Source File Name:


MotRefMdl.c



Source File Revision:


7

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:


























only for the changes































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA ELXSI


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotRefMdl.c




Source File Revision:


7

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00








Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 NA

QAC version:


Windows User: eg 8.1.1-R NA
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 NA


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:






































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

TATA ELXSI


Review Date :

10/09/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































28.2 - MotRefMdl_IntegrationManual

Integration Manual

For

MotRefMdl

VERSION: 1.0

DATE: 16-JUN-2015

Prepared By:

Selva Sengottaiyan

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSelva Sengottaiyan1.016-Jun-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.00.00
<2><Software Naming Conventions>Process 4.00.00
<3><Coding standards>Process 4.00.00
<4>FDD – SF103A_MotRefMdl_DesignSee Synergy Subproject version
<Add if more available>

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
None

Configuration Files to be provided by Integration Project

<Configuration file that will generated from this components that will require Da Vinci Config generation or manual generation. Describe each parameter >

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotRefMdlInit1NoneRTE
RunnableScheduling RequirementsTrigger
MotRefMdlPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

28.3 - MotRefMdl_MDD

Module Design Document

For

MotRefMdl

VERSION: 5.0

DATE: 25-Sep-2017

Prepared By:

TATA,

Trivandrum, India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSelva1.012-JUN-2015
2Updated per design rev. 1.2.0Rijvi2.013-Mar-2016
3Updated as per v1.3.0 of FDDKrishna3.029-Apr-16
4.Updated as per v2.3.0 of FDDKrishna4.015-Nov-2016
5.Updated as per v4.0.0 of FDDTATA5.025-Sep-2017

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 MotRefMdl & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of MotRefMdl 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.2 Initialization Functions 11

7.2.1 Per: MotRefMdlINIT1 11

7.2.1.1 Design Rationale 11

7.2.1.2 Store Module Inputs to Local copies 11

7.2.1.3 (Processing of function)……… 11

7.2.1.4 Store Local copy of outputs into Module Outputs 11

7.3 PERIODIC FUNCTIONS 11

7.3.1 Per: MotRefMdlper1 11

7.3.1.1 Design Rationale 11

7.3.1.2 Store Module Inputs to Local copies 11

7.3.1.3 (Processing of function)……… 11

7.3.1.4 Store Local copy of outputs into Module Outputs 11

7.4 Non PERIODIC FUNCTIONS 11

7.5 Interrupt Functions 11

7.6 Serial Communication Functions 12

7.7 Local Function/Macro Definitions 12

7.7.1 Local Function #1 CalcCurrMagSqRef 12

7.7.1.1 Description 12

7.7.2 Local Function #2 CalcIq 12

7.7.2.1 Description 12

7.7.3 Local Function #3 CurrtoVoltTest 12

7.7.3.1 Description 12

7.7.4 Local Function #4 CalcMinMotCurr 12

7.7.4.1 Description 13

7.7.5 Local Function #5 CalcTq 13

7.7.5.1 Description 13

7.7.6 Local Function #6 CalcMaxTqPt 13

7.7.6.1 Description 13

7.7.7 Local Function #7 PrbcIntrpn 13

7.7.7.1 Description 13

7.7.8 Local Function #7 PrbcIntrpn 13

7.7.8.1 Description 14

7.8 GLObAL Function/Macro Definitions 14

7.9 TRANSIENT FUNCTIONS 14

8 Unit Test Considerations 15

9 Known Limitations With Design 16

10 Appendix 17

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 04.02.01
<2><Software Naming Conventions>Process 04.02.01
<3><Coding standards>Process 04.02.01
<4>FDD - SF103A_MotRefMdl_DesignSee Synergy Subproject version
<Add if more available>

MotRefMdl & High-Level Description

Design details of software module

Graphical representation of MotRefMdl

Data Flow Diagram

Module level DFD

Sub-Module level DFD

COMPONENT FLOW DIAGRAM

Variable Data Dictionary

User defined typedef definition/declaration

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

MotInterCalcnsRecRelncTqCoeff_Henry_f32Single Precision float3e-050.00041
MotREstimd_Ohm_f32Single Precision float0.0050.12565
ReacncDaxOverR_Uls_f32Single Precision float-14.4436+14.4436
ReacncQaxOverR_Uls_f32Single Precision float-14.4436+14.4436
EgOverR_Ampr_f32Single Precision float-200200
VltgOverR_Ampr_f32Single Precision float-200200
VovrRAllSqd_AmprSqd_f32Single Precision float040000
EgOverROverZ_Ampr_f32Single Precision float-200200
VovrRovrZ_Ampr_f32Single Precision float-200200
MotKeEstimd_VoltPerMotRadPerSec_f32Single Precision float.025.075

Variable definition for enumerated types

Enum NameElement NameValue
N/A<(Variable name qualified Refer[2])><Define the value >

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

Local

Constant NameResolutionUnitsValue
MOTVLTGDAXEFLOLIM_VOLT_F32Single precision floatVolt-26.5F
MOTVLTGDAXEFHILIM_VOLT_F32Single precision floatVolt26.5F
MOTVLTGQAXEFLOLIM_VOLT_F32Single precision floatVolt-26.5F
MOTVLTGQAXEFHILIM_VOLT_F32Single precision floatVolt26.5F
BITMASK1_CNT_U081Cnt1U
BITMASK2_CNT_U081Cnt2U
BITMASK4_CNT_U081Cnt4U
Refer constants from .m file

Global

Constant Name
Refer constants from .m file

Module specific Lookup Tables Constants

Constant NameResolutionValueSoftware Segment
Refer .m file

Software Module Implementation

Sub-Module Functions

NONE

Initialization Functions

Per: MotRefMdlINIT1

Design Rationale

Refer to FDD

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

Per: MotRefMdlper1

Design Rationale

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Non PERIODIC FUNCTIONS

None

Interrupt Functions

None

Serial Communication Functions

None

Local Function/Macro Definitions

Local Function #1 CalcCurrMagSqRef

Function NameCalcCurrMagSqRefTypeMinMax
Arguments PassedCurrDaxRef_Ampr_T_f32float32-200200
CurrQaxRef_Ampr_T_f32float32-200200
Return ValueCurrMagSqRef_AmprSq_T_f32float32040000

Description

Refer FDD (F_CalcIqCommand)

Local Function #2 CalcIq

Function NameCalcIqTypeMinMax
Arguments PassedTqcmd_MotNwtMtr_T_f32float32-8.88.8
CurrDaxRef_Ampr_T_f32float32-200200
MotRefMdlInterCalcns_T_strstructRefer Struct Definition in Sec5.1Refer Struct Definition in Sec5.1
Return ValueCurrQaxRefTmp_Ampr_T_f32float32-200200

Description

Refer FDD (F_CalcIqCommand)

Local Function #3 CurrtoVoltTest

Function NameCalcIqTypeMinMax
Arguments PassedCurrQaxRef_Ampr_T_f32float32-8.88.8
CurrDaxRef_Ampr_T_f32float32-200200
MotRefMdlInterCalcns_T_strstructRefer Struct Definition in Sec5.1Refer Struct Definition in Sec5.1
Return ValueVdR_Ampr_T_f32float32-200200
VqR_Ampr_T_f32float32-200200
CurrQaxRefTmp_Ampr_T_f32float32-200200

Description

Refer FDD ( F_ItoV)

Local Function #4 CalcMinMotCurr

Function NameCalcMinMotCurrTypeMinMax
Arguments PassedMotTqCmd_MotNwtMtr_T_f32float32-8.88.8
MotRefMdlInterCalcns_T_strstructRefer Struct Definition in Sec5.1Refer Struct Definition in Sec5.1
Return ValueCurrQaxMin_Ampr_T_f32float32-200200
CurrDaxMin_Ampr_T_f32float32-200200
ImSqrMin_AmprSq_T_f32float32040000

Description

Refer FDD (Locate Reference)

Local Function #5 CalcTq

Function NameCalcTqTypeMinMax
Arguments PassedCosDelta_Cnt_T_f32float32-11
SinDelta_Cnt_T_f32float32-11
MotRefMdlInterCalcns_T_strstructRefer Struct Definition in Sec5.1Refer Struct Definition in Sec5.1
Return ValueTqCalc_MotNwtMtr_T_f32float32-8.88.8
CurrDaxMax_Ampr_T_f32float32-200200

Description

Refer FDD (CalculateTorque)

Local Function #6 CalcMaxTqPt

Function NameCalcMaxTqPtTypeMinMax
Arguments PassedMotTqCmd_MotNwtMtr_T_f32float32-8.88.8
MotRefMdlInterCalcns_T_strstructRefer Struct Definition in Sec5.1Refer Struct Definition in Sec5.1
Return ValueMotTqCmdLimd_MotNwtMtr_T_f32float32-8.88.8
CurrDaxMax_Ampr_T_f32float32-200200

Description

Refer FDD (LocateTorqueExtremes)

Local Function #7 PrbcIntrpn

Function NamePrbcIntrpnTypeMinMax
Arguments PassedIntrpnPts_T_f32float32Full rangeFull range
Return ValueParaIntpol_Uls_T_f32float32Full rangeFull range

Description

Refer FDD ( Parabolic Interpolations)

Local Function #7 PrbcIntrpn

Function NameDecoderTypeMinMax
Arguments PassedMotAndThermProtnLoaMod_Cnt_T_u08Uin80255
Return ValueCurrMeasLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE
IvtrLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE
FetLoaMtgtnEna_Cnt_T_loglBooleanFALSETRUE

Description

Refer FDD ( Decoder)

GLObAL Function/Macro Definitions

None

TRANSIENT FUNCTIONS

None

Unit Test Considerations

None

Known Limitations With Design

None

Appendix

None

29 - Component Implementation

Component Implementation

Component Documentation

29.1 - MotRplCoggCfg_IntegrationManual

Integration Manual

For

MotRplCoggCfg

VERSION: 1

DATE: 09-Feb-2016

Prepared By:

Selva Sengottaiyan

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionS. Sengottaiyan1.009-Feb-2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Dependencies 7

4.1 SWCs 7

4.2 Global Functions(Non RTE) to be provided to Integration Project 7

5 Configuration REQUIREMeNTS 8

5.1 Build Time Config 8

5.2 Configuration Files to be provided by Integration Project 8

5.3 Da Vinci Parameter Configuration Changes 8

5.4 DaVinci Interrupt Configuration Changes 8

5.5 Manual Configuration Changes 8

6 Integration DATAFLOW REQUIREMENTS 9

6.1 Required Global Data Inputs 9

6.2 Required Global Data Outputs 9

6.3 Specific Include Path present 9

7 Runnable Scheduling 10

8 Memory Map REQUIREMENTS 11

8.1 Mapping 11

8.2 Usage 11

8.3 RTE NvM Blocks 11

9 Compiler Settings 12

9.1 Preprocessor MACRO 12

9.2 Optimization Settings 12

10 Appendix 13

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF106_MotRplCoggCfg_ImplSee Synergy subproject version
2Software Naming ConventionsProcess 04.02.01
3Software Coding StandardsProcess 04.02.01

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer .m file

Required Global Data Outputs

Refer .m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotRplCoggCfgInit1NoneRte
RunnableScheduling RequirementsTrigger
MotRplCoggCfgPer1NoneRTE(2ms)
SetMotRplCoggPrm_OperNoneOn server invocation call
GetMotRplCoggPrm_OperNoneOn server invocation call

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

RTE NvM Blocks

Block Name
MotRplCoggPrm

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

29.2 - MotRplCoggCfg_MDD

Module Design Document

For

MotRplCoggCfg

Feb 9, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Selva Sengottaiyan

Nexteer Automotive,

Saginaw, MI, USA
Change History

VersionDescriptionAuthorDate
1Initial VersionSelva Sengottaiyan09-Feb-2016


Table of Contents

1 Introduction 5

2 MotRplCoggCfg & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of MotRplCoggCfg 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: MotRplCoggCfgInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: MotRplCoggCfgPer1 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 Runables 9

5.2.1 GetMotRplCoggPrm_Oper 9

5.2.1.1 Design Rationale 9

5.2.1.2 Store Module Inputs to Local copies 10

5.2.1.3 (Processing of function)……… 10

5.2.1.4 Store Local copy of outputs into Module Outputs 10

5.3 Module Internal (Local) Functions 10

5.3.1 Local Function #1 10

5.3.1.1 Design Rationale 10

5.3.1.2 Processing 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Refer the Design Subproject.

MotRplCoggCfg & High-Level Description

Refer the Design Subproject.

Design details of software module

Graphical representation of MotRplCoggCfg

Data Flow Diagram

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer the Design Subproject.Refer the Design Subproject.Refer the Design Subproject.Refer the Design Subproject.

Software Component Implementation

<The detailed design of the function is provided in the FDD. The detail design shall only be added to the MDD when it is not provided in the FDD or the FDD is not adequate and clarification is needed.>

Sub-Module Functions

The sub-module functions are grouped based on similar functionality that needs to be executed in a given “State” of the system (refer States and Modes). For a given module, the MDD will identify the type and number of sub-modules required. The sub-module types are described below.

<(Note: For multiple init or per functions, insert new headers at the “Header 3” level – subset of “Sub-Module Functions section above” and follow the same sub-section design shown below . If none required, place the text “None”))>

Init: MotRplCoggCfgInit1

Design Rationale

Refer the Design Subproject

Module Outputs

Refer the Design Subproject

Per: MotRplCoggCfgPer1

Design Rationale

Refer the Design Subproject

Store Module Inputs to Local copies

Refer the Design Subproject

(Processing of function)………

Refer the Design Subproject

Store Local copy of outputs into Module Outputs

Refer the Design Subproject

Server Runables

GetMotRplCoggPrm_Oper

Design Rationale

Refer the Design Subproject

Store Module Inputs to Local copies

Refer the Design Subproject

(Processing of function)………

Refer the Design Subproject

Store Local copy of outputs into Module Outputs

Refer the Design Subproject

Module Internal (Local) Functions

Local Function #1

Function NameCalcCoggTqTblTypeMinMax
Arguments PassedNone
Return ValueNone

Design Rationale

Processing

Init function and SetMotRplCoggPrm_Oper updates the Per Instance Memory from Calibrations and NVM values.

Known Limitations with Design

None

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.01
3Software Naming Conventions.doc1.0
4Software Design and Coding Standards.doc2.0

29.3 - MotRplCoggCfg_ReviewChecklists


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF106A_MotRplCoggCfg_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF106A_MotRplCoggCfg_Impl_1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krishna Anne
Work CR ID:


EA4#5702





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:

Reviewed changes alone



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/17/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne
Review Date :

05/17/16
Component Type :


Application



























Lead Peer Reviewer:


Nick Saxton
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotRplCoggCfg.c

Source File Revision:


3
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

MotRplCoggCfg_MDD.docx

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF106A_MotRplCoggCfg_Design

Revision:
1.5.0, 1.6.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD










Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







Yes
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/17/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotRplCoggCfg.c











Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b





Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0






QAC version:


Windows User: eg 8.1.1-R 8.1.1-R





QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0































Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/17/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































29.4 - requirements

FDDIDSourceFunctionLine(s)StatusComment
.SwFileName.SwFuncName.SwLines.SwStatus.SwComment
SF106A28MotRplCoggCfg.cMotRplCoggCfgPer1754I
SF106A115MotRplCoggCfg.cMotRplCoggCfgPer1744I
SF106A61MotRplCoggCfg.cMotRplCoggCfgPer1659-667I
SF106A81MotRplCoggCfg.cMotRplCoggCfgPer1496-511I
SF106A27MotRplCoggCfg.cMotRplCoggCfgPer1479I
SF106A48MotRplCoggCfg.cMotRplCoggCfgPer1757I
SF106A49MotRplCoggCfg.cMotRplCoggCfgPer1759I
SF106A46MotRplCoggCfg.cMotRplCoggCfgPer1753I
SF106A47MotRplCoggCfg.cMotRplCoggCfgPer1756I
SF106A44MotRplCoggCfg.cMotRplCoggCfgPer1484I
SF106A45MotRplCoggCfg.cMotRplCoggCfgPer1483I
SF106A42MotRplCoggCfg.cMotRplCoggCfgPer1480I
SF106A43MotRplCoggCfg.cMotRplCoggCfgPer1481I
SF106A41MotRplCoggCfg.cMotRplCoggCfgPer1482I
SF106A77MotRplCoggCfg.cMotRplCoggCfgPer1752I
SF106A72MotRplCoggCfg.cMotRplCoggCfgPer1686-729I
SF106A71MotRplCoggCfg.cMotRplCoggCfgPer1670-679I
SF106A70MotRplCoggCfg.cMotRplCoggCfgPer1681-734I
SF106A79MotRplCoggCfg.cMotRplCoggCfgPer1487-491I
SF106A39MotRplCoggCfg.cMotRplCoggCfgPer1478I
SF106A33MotRplCoggCfg.cGetMotRplCoggPrm_Oper,MotRplCoggCfgInit1299-309,365I
SF106A54MotRplCoggCfg.cMotRplCoggCfgPer1739-749I
SF106A56MotRplCoggCfg.cMotRplCoggCfgInit1,MotRplCoggCfgPer1348-364,740-750I
SF106A51MotRplCoggCfg.cMotRplCoggCfgPer1755I
SF106A50MotRplCoggCfg.cMotRplCoggCfgPer1758I
SF106A52MotRplCoggCfg.cMotRplCoggCfgPer1476-761I
SF106A32MotRplCoggCfg.cMotRplCoggCfgInit1,SetMotRplCoggPrm_Oper347-363,801-813I

30 - Component Implementation

Component Implementation

Component Documentation

30.1 - MotRplCoggCmd_IntegrationManual

Integration Manual

For

MotRplCoggCmd

VERSION: 1

DATE: 09-Feb-2016

Prepared By:

Selva Sengottaiyan

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionS. Sengottaiyan1.009-Feb-2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Dependencies 7

4.1 SWCs 7

4.2 Global Functions(Non RTE) to be provided to Integration Project 7

5 Configuration REQUIREMeNTS 8

5.1 Build Time Config 8

5.2 Configuration Files to be provided by Integration Project 8

5.3 Da Vinci Parameter Configuration Changes 8

5.4 DaVinci Interrupt Configuration Changes 8

5.5 Manual Configuration Changes 8

6 Integration DATAFLOW REQUIREMENTS 9

6.1 Required Global Data Inputs 9

6.2 Required Global Data Outputs 9

6.3 Specific Include Path present 9

7 Runnable Scheduling 10

8 Memory Map REQUIREMENTS 11

8.1 Mapping 11

8.2 Usage 11

8.3 RTE NvM Blocks 11

9 Compiler Settings 12

9.1 Preprocessor MACRO 12

9.2 Optimization Settings 12

10 Appendix 13

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF107_MotRplCoggCmd_ImplSee Synergy subproject version
2Software Naming ConventionsProcess 04.02.01
3Software Coding StandardsProcess 04.02.01

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer .m file

Required Global Data Outputs

Refer .m file

Specific Include Path present

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotRplCoggCmdInit1NoneRte
RunnableScheduling RequirementsTrigger
MotRplCoggCmdPer1Schedule before current regulatorMotorControl *2
SetMotCoggCmdPrm_OperNoneOn server invocation call
GetMotCoggCmdPrm_OperNoneOn server invocation call

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

RTE NvM Blocks

Block Name
MotCoggCmdY

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

30.2 - MotRplCoggCmd_MDD

Module Design Document

For

MotRplCoggCmd

Mar 23, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA
Change History

VersionDescriptionAuthorDate
1Initial VersionSelva Sengottaiyan09-Feb-2016
2Updated Unit Test considerationAvinash James23-Mar-2017


Table of Contents

1 Introduction 5

2 MotRplCoggCmd & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of MotRplCoggCmd 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: MotRplCoggCmdInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: MotRplCoggCmdPer1 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 Runables 9

5.2.1 GetMotCoggCmdPrm_Oper 9

5.2.1.1 Design Rationale 9

5.2.1.2 Store Module Inputs to Local copies 10

5.2.1.3 (Processing of function)……… 10

5.2.1.4 Store Local copy of outputs into Module Outputs 10

5.2.1 SetMotCoggCmdPrm_Oper 10

5.2.1.1 Design Rationale 10

5.2.1.2 Store Module Inputs to Local copies 10

5.2.1.3 (Processing of function)……… 10

5.2.1.4 Store Local copy of outputs into Module Outputs 10

5.3 Module Internal (Local) Functions 10

5.3.1 Local Function #1 10

5.3.1.1 Design Rationale 10

5.3.1.2 Processing 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Refer the Design Subproject.

MotRplCoggCmd & High-Level Description

Refer the Design Subproject.

Design details of software module

Graphical representation of MotRplCoggCmd

Refer the Design Subproject.

Data Flow Diagram

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer the Design Subproject.Refer the Design Subproject.Refer the Design Subproject.Refer the Design Subproject.

Software Component Implementation

<The detailed design of the function is provided in the FDD. The detail design shall only be added to the MDD when it is not provided in the FDD or the FDD is not adequate and clarification is needed.>

Sub-Module Functions

The sub-module functions are grouped based on similar functionality that needs to be executed in a given “State” of the system (refer States and Modes). For a given module, the MDD will identify the type and number of sub-modules required. The sub-module types are described below.

<(Note: For multiple init or per functions, insert new headers at the “Header 3” level – subset of “Sub-Module Functions section above” and follow the same sub-section design shown below . If none required, place the text “None”))>

Init: MotRplCoggCmdInit1

Design Rationale

Refer the Design Subproject

Module Outputs

Refer the Design Subproject

Per: MotRplCoggCmdPer1

Design Rationale

Refer the Design Subproject- ARCHGLBPRM_ONEOVER2PI constant has been used from ArchGlbPrm.h file instead of ONEOVER2PI which is defined in the FDD

Store Module Inputs to Local copies

Refer the Design Subproject

(Processing of function)………

Refer the Design Subproject

Store Local copy of outputs into Module Outputs

Refer the Design Subproject

Server Runables

GetMotCoggCmdPrm_Oper

Design Rationale

Refer the Design Subproject

Store Module Inputs to Local copies

Refer the Design Subproject

(Processing of function)………

Refer the Design Subproject

Store Local copy of outputs into Module Outputs

Refer the Design Subproject

SetMotCoggCmdPrm_Oper

Design Rationale

Refer the Design Subproject

Store Module Inputs to Local copies

Refer the Design Subproject

(Processing of function)………

Refer the Design Subproject

Store Local copy of outputs into Module Outputs

Refer the Design Subproject

Module Internal (Local) Functions

Local Function #1

Function NameSinLookupTypeMinMax
Arguments PassedTheta_Rad_T_f32Float3202*PI
Return ValueResult_Uls_T_f32Float3201

Design Rationale

Processing

Refer the design

Known Limitations with Design

None

UNIT TEST CONSIDERATION

Abbreviations and Acronyms

In the file CDD_MotRplCoggCmd_MotCtrl.c ARCHGLBPRM_ONEOVER2PI constant has been used from ArchGlbPrm.h file instead of ONEOVER2PI which is defined in the FDD. The architecture has changed to include the constant ONEOVER2PI in the architecture global parameter list as ARCHGLBPRM_ONEOVER2PI 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.01
3Software Naming Conventions.doc1.0
4Software Design and Coding Standards.doc2.0

30.3 - MotRplCoggCmd_ReviewChecklists


Overview

Summary Sheet
Synergy Project
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF107A_MotRplCoggCmd_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF107A_MotRplCoggCmd_Impl_1.4.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Avinash James
Work CR ID:


EA4#10664





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Reviewed only changes.



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

03/23/17
































Lead Peer Reviewer:


Shruthi Raghavan


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


CDD_MotRplCoggCmd_MotCtrl.c

Source File Revision:


5
Header File Name:


CDD_MotRplCoggCmd_MotCtrl_MemMap.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1




CDD_MotRplCoggCmd.h






kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1
MDD Name:

MotRplCoggCmd_MDD

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF107AMotRplCoggCmd_Design

Revision:
1.4.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:
















ARCHGLBPRM_ONEOVER2PI constant used instead of ONEOVER2PI defined in FDD
























Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








Yes
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed











EA4#10010


















































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

03/23/17
































Lead Peer Reviewer:


Shruthi Raghavan


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:






MotRplCoggCmd_MDD.docx








MDD Revision:

2


























Source File Name:





CDD_MotRplCoggCmd_MotCtrl.c
Source File Revision:


5

Source File Name:





CDD_MotRplCoggCmd.c
Source File Revision:


1

Source File Name:







Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








Yes
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

03/23/17
































Lead Peer Reviewer:


Shruthi Raghavan


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


CDD_MotRplCoggCmd.c











Source File Revision:


1

Source File Name:


CDD_MotRplCoggCmd_MotCtrl











Source File Revision:


5

Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b





Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0






QAC version:


Windows User: eg 8.1.1-R 8.1.1-R





QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0































Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Avinash James


Review Date :

03/23/17
































Lead Peer Reviewer:


Shruthi Raghavan


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































30.4 - requirements

FDDIDSourceFunctionLine(s)StatusComment
.SwFileName.SwFuncName.SwLines.SwStatus.SwComment
SF107A28CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1147I
SF107A61CDD_MotRplCoggCmd.cMotRplCoggCmdInit1208-221I
SF107A27CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1100I
SF107A48CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1120,124I
SF107A46CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer197I
SF107A47CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1165I
SF107A44CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1106I
SF107A45CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer199I
SF107A42CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1105I
SF107A43CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer198I
SF107A40CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1103I
SF107A41CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1104I
SF107A39CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1101I
SF107A38CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1102I
SF107A59CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1145I
SF107A33CDD_MotRplCoggCmd.cGetMotCoggCmdPrm_Oper167I
SF107A32CDD_MotRplCoggCmd.cSetMotCoggCmdPrm_Oper271I
SF107A57CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1150-160I
SF107A56CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1137I
SF107A51CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1113-116I
SF107A50CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1120,124,132I
SF107A53CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1150-160I
SF107A55CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1150-160I
SF107A54CDD_MotRplCoggCmd_MotCtrl.cMotRplCoggCmdPer1150-160I

31 - Component Implementation

Component Implementation

Component Documentation

31.1 - MotTqCmdSca_IntegrationManual

Integration Manual

For

Motor Torque Command Scale

VERSION: 2.0

DATE: 14-Mar-2016

Prepared By:

Krishna Anne,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKannappa Chidambaram P R1.001/21/2016
2Updated as per FDD v 1.2.0Krishna Anne2.003/14/2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

1.1 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF032A_MotTqCmdSca_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None.

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None.

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Please refer DataDict.m file.

Required Global Data Outputs

Please refer DataDict.m file.

Specific Include Path present

NA

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotTqCmdScaInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
MotTqCmdScaPer1NoneRTE(2 ms)
SetMotTqCmdSca_OperNoneOn event
GetMotTqCmdSca_OperNoneOn event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

RTE NvM Blocks

Block Name
MotTqScaFac

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None.

31.2 - MotTqCmdSca_MDD

Module Design Document

For

MotTqCmdSca

Prepared For:

,

Prepared By:

Krishna Anne,

Nexteer Automotive,

Saginaw, MI, USA


Change History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKannappa Chidambaram P R1.001/21/2016
2Updated as per FDD v 1.2.0Krishna Anne2.003/14/2016


Table of Contents

1 Introduction 5

1.1 Purpose 5

1.2 Scope 5

2 MotTqCmdSca & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of MotTqCmdSca 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: MotTqCmdScaInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: MotTqCmdScaPer1 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 Runables 9

5.2.1 SetMotTqCmdSca 9

5.2.1.1 Design Rationale 9

5.2.1.2 (Processing of function)……… 9

5.3 Interrupt Functions 9

5.4 Module Internal (Local) Functions 10

5.5 GLOBAL Function/Macro Definitions 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Purpose

MotTqCmdSca & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of MotTqCmdSca

Data Flow Diagram

Please Refer FDD

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer .m file

Software Component Implementation

Sub-Module Functions

Init: MotTqCmdScaInit1

Design Rationale

Please refer FDD

Module Outputs

Please refer FDD

Per: MotTqCmdScaPer1

Design Rationale

Please refer FDD

Store Module Inputs to Local copies

Please refer FDD

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

SetMotTqCmdSca

Design Rationale

Please refer FDD

(Processing of function)………

Please refer FDD

Server Runables

GetMotTqCmdSca

Design Rationale

Please refer FDD

(Processing of function)………

Please refer FDD

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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.docProcess 4.02.00
4Software Design and Coding Standards.docProcess 4.02.00
5FDD: SF032A_MotTqCmdSca_DesignSee Synergy sub project version

31.3 - MotTqCmdSca_Review

Review_Checklist

Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace
Integration Manual


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet




























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF032A_MotTqCmdSca_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF032A_MotTqCmdSca_Impl_1.2.0



























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krishna Anne
Work CR ID:


EA4#4308





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:








































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


PolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

03/14/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








Yes
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne
Review Date :

03/14/16
Component Type :


Application



























Lead Peer Reviewer:


Nick Saxton
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotTqCmdSca.c

Source File Revision:


3
Header File Name:





Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

MotTqCmdSca_MDD

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF032A_MotTqCmdSca_Design

Revision:
1.2.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








Yes
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

03/14/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotTqCmdSca_MDD













MDD Revision:

2


























Source File Name:


MotTqCmdSca.c











Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:



















































Design rationale given for all global








Yes
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

03/14/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotTqCmdSca.c











Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b





Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0






QAC version:


Windows User: eg 8.1.1-R 8.1.1-R





QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0































Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

03/14/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 7: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. MotTqCmdSca_IntegrationManual

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 2





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

03/14/16
































Lead Peer Reviewer:


Nick Saxton


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































31.4 - requirements

FDDIDSourceFunctionLine(s)StatusComment
.SwFileName.SwFuncName.SwLines.SwStatus.SwComment
SF032A11MotTqCmdSca.cGetMotTqCmdSca_Oper130I
SF032A13MotTqCmdSca.cSetMotTqCmdSca_Oper276I
SF032A45MotTqCmdSca.cSetMotTqCmdSca_Oper276I
SF032A14MotTqCmdSca.cSetMotTqCmdSca_Oper276I
SF032A48MotTqCmdSca.cMotTqCmdScaInit1174,176-183,177-183I
SF032A47MotTqCmdSca.cMotTqCmdScaInit1172,174-183I
SF032A30MotTqCmdSca.cGetMotTqCmdSca_Oper130I
SF032A51MotTqCmdSca.cGetMotTqCmdSca_Oper130I
SF032A50MotTqCmdSca.cGetMotTqCmdSca_Oper130I
SF032A34MotTqCmdSca.cMotTqCmdScaPer1224-229I
SF032A36MotTqCmdSca.cMotTqCmdScaPer1231I

32 - Component Implementation

Component Implementation

Component Documentation

32.1 - MotTqTranlDampg_IntegrationManual

Integration Manual

For

Transistional Damping (SF-50A)

VERSION: 1.0

DATE: 12-AUG-2015

Prepared By:

Krishna Kanth Anne

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKrishna Kanth Anne1.008/12/2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF050A_MotTqTranlDampg_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file in the FDD

Required Global Data Outputs

Refer DataDict.m file in the FDD

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotTqTranlDampgInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
MotTqTranlDampgPer1NoneRTE (2 ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

32.2 - MotTqTranlDampg_MDD

Module Design Document

For

Transistional Damping (SF-50A)

August 12, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Krishna Kanth Anne,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionKrishna Kanth AnneEA4 01.00.0112-Aug-2015


Table of Contents

1 Introduction 5

1.1 Purpose 5

1.2 Scope 5

2 MotTqTranlDampg & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of MotTqTranlDampg 7

3.2 Data Flow Diagram 7

3.2.1 Component level DFD 7

3.2.2 Function level DFD 8

4 Constant Data Dictionary 9

4.1 Program (fixed) Constants 9

4.1.1 Embedded Constants 9

5 Software Component Implementation 10

5.1 Sub-Module Functions 10

5.1.1 Init: MotTqTranlDampgInit1 10

5.1.1.1 Design Rationale 10

5.1.1.2 Module Outputs 10

5.1.2 Per: MotTqTranlDampgPer1 10

5.1.2.1 Design Rationale 10

5.1.2.2 Store Module Inputs to Local copies 10

5.1.2.3 (Processing of function)……… 10

5.1.2.4 Store Local copy of outputs into Module Outputs 10

5.2 Server Runables 10

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 11

5.4.1.2 Processing 11

5.4.2 Local Function #2 11

5.4.2.1 Design Rationale 11

5.4.2.2 Processing 11

5.5 GLOBAL Function/Macro Definitions 11

5.5.1 GLOBAL Function #1 11

6 Known Limitations with Design 12

7 UNIT TEST CONSIDERATION 13

Appendix A Abbreviations and Acronyms 14

Appendix B Glossary 15

Appendix C References 16

Introduction

Purpose

MDD for Motor Torque Transistional Damping.

Scope

MotTqTranlDampg & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation of MotTqTranlDampg

Data Flow Diagram

Please refer FDD.

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer .m file

Software Component Implementation

Sub-Module Functions

Init: MotTqTranlDampgInit1

Design Rationale

None

Module Outputs

None

Per: MotTqTranlDampgPer1

Design Rationale

None

Store Module Inputs to Local copies

Please refer FDD

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameSwOpCtrlPart1TypeMinMax
Arguments PassedTranlDampgTiElpsd_MilliSec_T_f32float320.01000.0
AbslMotVelCrf_MotRadPerSec_T_f32float320.01350.0
Return ValueMotTqTranlDampgCmpl_Cnt_T_lgcbooleanFALSETRUE

Design Rationale

None

Processing

(Place flowchart/design for local function)

Refer to the “SwOutputCntrl” block of the Simulink model of the design.

Local Function #2

Function NameSwOpCtrlPart2TypeMinMax
Arguments PassedDiagcStsCtrldShtDwnFltPrsnt_Cnt_T_lgcbooleanFALSETRUE
CtrlDampTrq_MotNwtMtr_T_f32float32-3.03.0
SysSt_Cnt_T_enumSysSt103
MotTqCmdCrf_MotNwtMtr_T_f32float32-8.88.8
MotTqTranlDampgCmpl_Cnt_T_lgcbooleanFALSETRUE
Return ValueMotTqCmdCrfDampd_MotNwtMtr_T_f32float32-11.811.8

Design Rationale

None

Processing

(Place flowchart/design for local function)

Refer to the “SwOutputCntrl” block of the Simulink model of the design.

GLOBAL Function/Macro Definitions

None

GLOBAL Function #1

Function NameNATypeMinMax
Arguments PassedNone
Return ValueNA

Known Limitations with Design

None

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.0
5FDD : SF050A_MotTqTranlDampg_Design (V 1.1.0)See Synergy sub project version

32.3 - MotTqTranlDampg_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF050A_MotTqTranlDampg_Imp
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF050A_MotTqTranlDampg_Imp_1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krishna Anne
Work CR ID:


EA4#11228





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:

Reviewed changes alone



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/02/17
































Lead Peer Reviewer:


Matt Leser


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










No changes

































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










No changes

































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts










No changes










for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts










No changes










for fixed point types














































Mapping set and all unused items have been







N/A
Comments:










removed










No changes

































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)










No changes

































Runnable calling frequencies match FDD








N/A
Comments:






















No changes









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











No changes
























Component is correct component type








Yes
Comments:






















No changes



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne
Review Date :

05/02/17
Component Type :


Application



























Lead Peer Reviewer:


Matt Leser
Approved by Reviewer(s):






































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


MotTqTranlDampg.c

Source File Revision:


3
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. NA

























MDD Name:

MotTqTranlDampg_MDD.docx

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF050A_MotTqTranlDampg_Design

Revision:
1.3.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











No Req Tags
























All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:
















































MCC coverage as per SIL reports is 94% and Boundary value coverage in 44%; These are less than the coverages observed in PIL reports of previous versions. Reason being the test vectors of MIL testing, an ICR is required for re-running the MIL and subsequent SIL tests.































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/02/17
































Lead Peer Reviewer:


Matt Leser


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


MotTqTranlDampg.c


Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b





Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0






QAC version:


Windows User: eg 8.1.1-R 8.1.1-R





QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0































Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

05/02/17
































Lead Peer Reviewer:


Matt Leser


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































33 - Component Implementation

Component Implementation

Component Documentation

33.1 - MotVel_Integration Manual

Integration Manual

For

‘MotVel’

VERSION: 1.0

DATE: 12-April-2016

Prepared By:

Software Group

Nexteer Automotive,

Saginaw, MI, USA


Revision History

: ARM Cortex R4 Memory Usage

Sl. No.DescriptionAuthorVersionDate
1Initial versionRijvi Ahmed1.012-April-2016


Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD – SF40A_MotVel_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 04.02.01
3Software Design and Coding StandardsProcess 04.02.01

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

MotVelPer1

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
MotVelInit1NoneRTE/Init
RunnableScheduling RequirementsTrigger
MotVelPer1NoneMotor Control ISR
MotVelPer2NoneRTE/2ms

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
MotCtrl_START_SEC_CODECode section for Motor Control scheduled functions

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Non RTE NvM Blocks

Block Name
None

RTE NvM Blocks

Block Name
none

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None

Appendix

None

33.2 - MotVel_MDD

Module Design Document

For

‘MotVel’

VERSION: 2.0

DATE: 25-Jul-2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Shawn Penning

Saginaw, MI


Location:
The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionRijvi Ahmed1.012-April-2016
2Updated per design rev. 2.0.0TATA2.018-Nov-2016
3Updated per design rev. 2.1.0Shawn Penning3.025-Jul-2017


Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 MotVel & High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation OF MotVel 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.1.1 Initialization Functions 11

7.1.2 PERIODIC FUNCTIONS 11

7.1.2.1 INIT: MotVelPER1 11

7.1.2.1.1 Design Rationale 11

7.1.2.2 Design Rationale 11

7.1.2.3 Store Module Inputs to Local copies 11

7.1.2.4 (Processing of function)……… 11

7.1.2.5 Store Local copy of outputs into Module Outputs 11

7.1.3 PERIODIC FUNCTIONS 11

7.1.3.1 INIT: MotVelPER2 11

7.1.3.1.1 Design Rationale 11

7.1.3.2 Design Rationale 11

7.1.3.3 Store Module Inputs to Local copies 11

7.1.3.4 (Processing of function)……… 11

7.1.3.5 Store Local copy of outputs into Module Outputs 11

7.1.4 Interrupt Functions 12

Server runnables 12

7.1.4.1.1 Store Local copy of outputs into Module Outputs 12

7.1.4.2 Local Function/Macro Definitions 12

7.1.5 GLObAL Function/Macro Definitions 12

7.1.6 Tranisition FUNCTIONS 12

8 Known Limitations With Design 13

9 UNIT TEST CONSIDERATION 14

10 Appendix 15

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
FDDFunctional Design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesProcess 04.02.01
2Software Naming ConventionsProcess 04.02.01
3Software Design and Coding standardsProcess 04.02.01
4FDD : SF40A_MotVel_DesignSee Synergy sub project version

MotVel & High-Level Description

Please refer FDD.

Design details of software module

Graphical representation OF MotVel

Data Flow Diagram

Refer FDD

Module level DFD

Refer FDD

Sub-Module level DFD

Refer FDD

COMPONENT FLOW DIAGRAM

Refer FDD

Variable Data Dictionary

User defined typedef definition/declaration

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

NoneN/AN/AN/AN/A

Variable definition for enumerated types

Enum NameElement NameValue
NoneN/AN/A

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

Local

Constant NameResolutionUnitsValue
Refer the m files

6.1.1.2 Global

Constant Name
N/A

Module specific Lookup Tables Constants

Constant NameResolutionValueSoftware Segment
NoneN/AN/AN/A

Software Module Implementation

Sub-Module Functions

Initialization Functions

None

PERIODIC FUNCTIONS

INIT: MotVelPER1

Design Rationale

None

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

INIT: MotVelPER2

Design Rationale

None

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Interrupt Functions

None

Server runnables

None

Store Local copy of outputs into Module Outputs

None

Local Function/Macro Definitions

None

GLObAL Function/Macro Definitions

None

Tranisition FUNCTIONS

None

Known Limitations With Design

  1. Per-Instance Memory variables in Design 2.1, MotAgBufIdxPrev and MotAgBufIdxPrim, are set with range of 0 to 255, but are index variables for an array of only 8 elements. Design to be corrected in the next version as follows: the Max Value for both PIM’s to be 7 instead of 255 (range 0..7 instead of 0..255).

UNIT TEST CONSIDERATION

Per-Instance Memory variables in Design 2.1, MotAgBufIdxPrev and MotAgBufIdxPrim, are set with range of 0 to 255, but are index variables for an array of only 8 elements. Design to be corrected in the next version as follows: the Max Value for both PIM’s to be 7 instead of 255 (range 0..7 instead of 0..255).

Appendix

None

33.3 - MotVel_Peer Review Checklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF040A_MotVel_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF040A_MotVel_Impl_2.1.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#12461





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/28/17
































Lead Peer Reviewer:


Brendon Binder


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































Brionna Spencer






























Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

07/28/17
Component Type :


CDD



























Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):



Yes

































Other Reviewer(s):






































Brionna Spencer





























Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


CDD_MotVel.c

Source File Revision:


4
Header File Name:


CDD_MotVel_private.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1

























MDD Name:

MotVel_MDD.doc

Revision:
3

























FDD/SCIR/DSR/FDR/CM Name:




SF040A_MotVel_Design

Revision:
2.1.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








Yes
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/28/17
































Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):





Yes































Other Reviewer(s):






































Brionna Spencer





























Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

MotVel_MDD.doc
MDD Revision:

3.0


























Source File Name:


CDD_MotVel.cSource File Revision:


4

Source File Name:


CDD_MotVel_MotCtrl.cSource File Revision:


2

Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








Yes
Comments:













































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:
See comment below

















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:

Added range issue
















































General Notes / Comments:























Range issue to be corrected has been noted in the Design and Unit Test considerations.

Verified that the design will be changed in ver 2.2 in email from Krishna Namburi dated 7/31/17































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/28/17
































Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):





Yes































Other Reviewer(s):






































Brionna Spencer





























Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (PolySpace Review)


























Source File Name:


CDD_MotVel.cSource File Revision:


4

Source File Name:


CDD_MotVel_MotCtrl.cSource File Revision:


2

Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:























Stubs.c and Stubs.h were modified mannually to eliminate PolySpace warnings. A recommendation for changes to TL109A have been placed on the TL109A change spreadsheet, but the current version does not support this component due to the unique input arrays, MotAgBuf and MotAgTiBuf.


































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/28/17
































Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):





Yes































Other Reviewer(s):






































Brionna Spencer




























34 - Component Implementation

Component Implementation

Component Documentation

34.1 - PosnTrakgServo_IntegrationManual

Integration Manual

For

Position Tracking Servo

VERSION: 1.0

DATE: 20-Jan-2017

Prepared By:

Matthew Leser

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionMatthew Leser1.020-Jan-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF020B_PosnTrakgServo_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.02.00
3Software Design and Coding StandardsProcess 4.02.00

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file.

Required Global Data Outputs

Refer DataDict.m file.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
PosnTrakgServoInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
PosnTrakgServoPer1NoneRTE(2 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

34.2 - PosnTrakgServo_MDD

Module Design Document

For

Jan 20, 2017

Prepared For:

Software Engineering

,

Saginaw, MI, USA

Prepared By:

Matthew Leser

,

Change History

DescriptionAuthorVersionDate
Initial VersionMatthew Leser1.020-Jan-2017


Table of Contents

1 Introduction 5

1.1 Purpose 5

2 PosnTrakgServo & High-Level Description 6

3 Design details of software module 7

3.1 Graphical representation of PosnTrakgServo 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: PosnTrakgServoInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: PosnTrakgServoPer1 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 Runables 9

5.3 Interrupt Functions 9

5.4 Module Internal (Local) Functions 9

5.4.1 Local Function #1 9

5.4.1.1 Design Rationale 10

5.4.1.2 Processing 10

5.5 GLOBAL Function/Macro Definitions 10

6 Known Limitations with Design 11

7 UNIT TEST CONSIDERATION 12

Appendix A Abbreviations and Acronyms 13

Appendix B Glossary 14

Appendix C References 15

Introduction

Purpose

MDD for Position Tracking Servo.

PosnTrakgServo & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of PosnTrakgServo

Data Flow Diagram

Please refer FDD

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue

Software Component Implementation

Sub-Module Functions

Init: PosnTrakgServoInit1

Design Rationale

None

Module Outputs

None

Per: PosnTrakgServoPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameSVResetTypeMinMax
Arguments PassedPosnServoEna_Cnt_T_lgcBooleanFALSETRUE
SVResetInp_HwNwtMtr_T_f32Float32
Return ValueSVResetOup_Uls_T_f32Float32

Design Rationale

NA

Processing

Please refer SVReset block of the FDD.

GLOBAL Function/Macro Definitions

None.

Known Limitations with Design

None.

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: SF020B_PosnTrakgServo_DesignSee Synergy sub project version

34.3 - PosnTrakgServo_Review


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF020B_PosnTrakgServo_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. 1.1.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matthew Leser
Work CR ID:


EA4#10235





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































MDD


Source Code


PolySpace









































Integration Manual


Davinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/31/17
































Lead Peer Reviewer:


Shruthi R


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


PosnTrakgServo.c
Source File Revision:


2
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

PosnTrakgServo_MDD.docx
Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF020B_PosnTrakgServo_Design
Revision:
1.1.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







Yes
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







Yes
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







Yes
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/31/17
































Lead Peer Reviewer:


Shruthi R


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


PosnTrakgServo.cSource File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







Draft 1.2







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL_100A_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matthew Leser


Review Date :

03/31/17
































Lead Peer Reviewer:


Shruthi R


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































35 - Component Implementation

Component Implementation

Component Documentation

35.1 - PwrLimr_IntegrationManual

Integration Manual

For

PwrLimr

VERSION: 1.0

DATE: 14-AUG-2015

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionNick Saxton1.014-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1EA4 Software Naming Conventions.doc01.00.00
2Software Design and Coding Standards.doc2.1
3SF019B_PwrLimr_DesignSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

See DataDict.m file

Required Global Data Outputs

See DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
PwrLimrInit1NoneRTE Init
RunnableScheduling RequirementsTrigger
PwrLimrPer1NoneRTE 2ms
PwrLimrPer2NoneRTE 10ms

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

35.2 - PwrLimr_MDD

Module Design Document

For

PwrLimr

19-Oct-2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Brendon Binder,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionNick Saxton1.014-Aug-2015
As per FDD v 2.0.1Krishna Anne2.009-Nov-2016
Implemented FDD v 4.0.0Brendon Binder3.019-Oct-2017


Table of Contents

1 PwrLimr High-Level Description 5

2 Design details of software module 6

2.1 Graphical representation of PwrLimr 6

2.2 Data Flow Diagram 6

2.2.1 Component level DFD 6

2.2.2 Function level DFD 6

3 Constant Data Dictionary 7

3.1 Program (fixed) Constants 7

3.1.1 Embedded Constants 7

4 Software Component Implementation 8

4.1 Sub-Module Functions 8

4.1.1 Init: PwrLimrInit1 8

4.1.1.1 Design Rationale 8

4.1.1.2 Module Outputs 8

4.1.2 Per: PwrLimrPer1 8

4.1.2.1 Design Rationale 8

4.1.2.2 Store Module Inputs to Local copies 8

4.1.2.3 (Processing of function)……… 8

4.1.2.4 Store Local copy of outputs into Module Outputs 8

4.1.3 Per: PwrLimrPer2 8

4.1.3.1 Design Rationale 8

4.1.3.2 Store Module Inputs to Local copies 8

4.1.3.3 (Processing of function)……… 8

4.1.3.4 Store Local copy of outputs into Module Outputs 8

4.2 Server Runnables 9

4.3 Interrupt Functions 9

4.4 Module Internal (Local) Functions 9

4.4.1 AssiLimCdn 9

5 Known Limitations with Design 10

6 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

PwrLimr High-Level Description

Refer FDD

Design details of software module

Graphical representation of PwrLimr

Data Flow Diagram

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
BIT1MASK_ULS_U081Uls2U
Refer DataDict.m

Software Component Implementation

Sub-Module Functions

Init: PwrLimrInit1

Design Rationale

Refer FDD

Module Outputs

Refer FDD

Per: PwrLimrPer1

Design Rationale

Refer FDD

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Per: PwrLimrPer2

Design Rationale

Refer FDD

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

AssiLimCdn

Function NameAssiLimCdnTypeMinMax
Arguments PassedFildTqLim_Uls_T_f32float320.0F1.0F
BrdgVltg_Volt_T_f32float326.0F26.5F
Return ValueNoneN/AN/AN/A

Design Rationale

See “Asst_Lmt_Condition_Determination” block in the Simulink model of the design.

Known Limitations with Design

None

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
3EA4 Software Naming Conventions.doc01.01.00
4Software Design and Coding Standards.doc2.1
5FDD – SF019B Power LimiterSee Synergy subproject version

35.3 - PwrLimr_PeerReviewChecklist
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF019B_PwrLimr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF019B_PwrLimr_Impl_4.1.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Brendon Binder
Work CR ID:


EA4#21038





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


N/ASource Code


N/APolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

The baseline is made from a PSR code for the anomaly fix for EA4#17673. Due to timing constraints and






the changes being small, its being baselined without the formal review process - Approved deviation by Lonnie Newton






The design sub project is also deleted to not have a mismatch with the model as design is not yet ready



















































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.




















36 - Component Implementation

Component Implementation

Component Documentation

36.1 - Rtn_Integration Manual

Integration Manual

For

Return

VERSION: 2.0

DATE: 29-Nov-2016

Prepared For:

Software Group,

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

TATA ELXSI

CHENNAI, INDIA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.030-Jun-2015
2Updated per design rev. 2.0.0TATA2.029-Nov-2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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 file Specific Include Path present 8

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.01.00
<2><Software Naming Conventions>Process 4.01.00
<3><Coding standards>Process 4.01.00
<4><FDD SF002A_Rtn_Design >See Synergy Subproject version
<Add if more available>

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
FLTINJENASet to STD_ON for Fault injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

file Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
RtnInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
RtnPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

36.2 - Rtn_Module Design Document

Module Design Document

For

Return

Nov 29, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

TATA ELXSI

CHENNAI, INDIA


Change History

DescriptionAuthorVersionDate
Initial VersionSB130-Jun-2015
Updated per design rev. 2.0.0TATA2.029-Nov-2016

Table of Contents

1 Introduction 3

1.1 Purpose 3

2 Rtn High-Level Description 4

3 Design details of software module 5

3.1 Graphical representation of Rtn 5

3.2 Data Flow Diagram 5

3.2.1 Component level DFD 5

3.2.2 Function level DFD 5

4 Constant Data Dictionary 6

4.1 Program (fixed) Constants 6

4.1.1 Embedded Constants 6

5 Software Component Implementation 7

5.1.1 Sub-Module Functions 7

5.1.2 Interrupt Service Routines 7

5.1.3 Server Runnable Functions 7

5.1.4 Module Internal (Local) Functions 7

5.1.5 Transition Functions 7

6 Known Limitations with Design 8

7 UNIT TEST CONSIDERATION 9

Appendix A Abbreviations and Acronyms 10

Appendix B Glossary 11

Appendix C References 12

Introduction

Purpose

MDD for Return

Rtn High-Level Description

Refer to FDD

Design details of software module

Graphical representation of Rtn

C:\Component\SF002A_Rtn_Impl_1.4.2\snapp.JPG

Data Flow Diagram

Component level DFD

Refer to FDD

Function level DFD

Refer to FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

None

Software Component Implementation

Sub-Module Functions

Initialization sub-module RtnInit1

Periodic sub-module RtnPer1

Design Rationale - Fault Injection client call is conditional compiled based on “FLTINJENA” build constant.

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

None

Transition Functions

None

Known Limitations with Design

None

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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD – SF002A_Rtn_DesignSee Synergy Sub project version

36.3 - Rtn_PeerReview


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF002A_Rtn_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF002A_Rtn_Impl_2.2.1

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krzysztof Byrski
Work CR ID:


EA4#12636





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































MDD


YesSource Code


YesPolySpace









































Integration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:
















SF002A_Rtn_Design_2.2.0

























General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krzysztof Byrski


Review Date :

06/28/2017
































Lead Peer Reviewer:


Mateusz Bartocha


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








N/A
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







N/A
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







N/A
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








N/A
Comments:

































DataDict.m display variables: created as








Yes
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








N/A
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krzysztof Byrski
Review Date :

06/28/2017
Component Type :


Application



























Lead Peer Reviewer:


Mateusz Bartocha
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


Rtn.c

Source File Revision:


8
Header File Name:


-

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. -

























MDD Name:

Rtn_Module Design Document.docx

Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF002A_Rtn_Design

Revision:
2.2.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krzysztof Byrski


Review Date :

06/28/2017
































Lead Peer Reviewer:


Mateusz Bartocha


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


Rtn.cSource File Revision:


8

Source File Name:


-Source File Revision:


-

Source File Name:


-Source File Revision:


-


























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b

Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_2.0.1

QAC version:


Windows User: eg 8.1.1-R -
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 -


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate










Unnecessary justifications have been removed


























Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krzysztof Byrski


Review Date :

06/28/2017
































Lead Peer Reviewer:


Mateusz Bartocha


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































37 - Component Implementation

Component Implementation

Component Documentation

37.1 - RtnPahFwl_IntegrationManual

Integration Manual

For

Return Path Firewall

VERSION: 1.0

DATE: 3-Feb-2016

Prepared By:

Akhil Krishna N D(Tata Elxsi),

Trivandrum, INDIA

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionAkhil Krishna N D1.003-Feb-2016

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF036A_RtnPahFwl_DesignSee Synergy sub project version
2Software Naming Conventions1.0
3Software Design and Coding Standards2.0

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Please refer DataDict.m file.

Required Global Data Outputs

Please refer DataDict.m file.

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
RtnPahFwlInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
RtnPahFwlPer1NoneRTE(2 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None.

37.2 - RtnPahFwl_MDD

Module Design Document

For

RtnPahFwl

February 3, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Akhil Krishna N D (Tata Elxsi),

Trivandrum, INDIA

Change History

DescriptionAuthorVersionDate
Initial VersionAkhil Krishna N DEA4 01.00.013-Feb-2015

Table of Contents

1 Introduction 4

1.1 Purpose 4

2 RtnPahFwl & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of RtnPahFwl 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: RtnPahFwlInit1 8

5.1.1.1 Design Rationale 8

5.1.1.2 Module Outputs 8

5.1.2 Per: RtnPahFwlPer1 8

5.1.2.1 Design Rationale 8

5.1.2.2 Store Module Inputs to Local copies 8

5.1.2.3 (Processing of function)……… 8

5.1.2.4 Store Local copy of outputs into Module Outputs 8

5.2 Server Runables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 9

7 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

Introduction

Purpose

MDD for Return Path Firewall.

RtnPahFwl & High-Level Description

Please refer FDD

Design details of software module

Graphical representation of RtnPahFwl

Data Flow Diagram

Please refer FDD

Component level DFD

Please refer FDD

Function level DFD

Please refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
NODEBSTEP_CNT_U161Cnt65535
Please refer .m file for the rest

Software Component Implementation

Sub-Module Functions

Init: RtnPahFwlInit1

Design Rationale

None

Module Outputs

None

Per: RtnPahFwlPer1

Design Rationale

None

Store Module Inputs to Local copies

None

(Processing of function)………

Please refer FDD

Store Local copy of outputs into Module Outputs

Please refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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.0
5FDD: SF036A_RtnPahFwl_DesignSee Synergy sub project version

37.3 - RtnPahFwl_Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet




























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF036A_RtnPahFwl_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF036A_RtnPahFwl_Impl_1.1.0



























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krishna Anne
Work CR ID:


EA4#3990





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:








































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































MDD


YesSource Code


YesPolySpace









































Integration Manual


YesDavinci Files








































































Comments:

Only change is the dimensions of RtnPahFwlUpprBndTblY cal. Contract files are updated.
Source code is not changed (version incremented by updating appropriate comments)




























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

02/26/16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m










No changes made w.r.t this in the current change
























Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)










No changes made w.r.t this in the current change
























Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)










No changes made w.r.t this in the current change
























Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file





































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed




































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)










No changes made w.r.t this in the current change
























Runnable calling frequencies match FDD








N/A
Comments:






















No changes made w.r.t this in the current change
DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD











No changes made w.r.t this in the current change
























Component is correct component type








Yes
Comments:






















No changes made w.r.t this in the current change



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne
Review Date :

02/26/16
Component Type :


Application



























Lead Peer Reviewer:


Sankardu V
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


RtnPahFwl.c

Source File Revision:


2
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this.

























MDD Name:

RtnPahFwl_MDD

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF036A_RtnPahFwl_Design

Revision:
1.0.2


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

02/26/16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


RtnPahFwl.c











Source File Revision:


2

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.01.00














Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

02/26/16
































Lead Peer Reviewer:


Sankardu V


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































38 - Component Implementation

Component Implementation

Component Documentation

38.1 - StabyCmp_DesignReview


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF029A_StabyCmp_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF029A_StabyCmp_Impl_1.3.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shruthi Raghavan
Work CR ID:


EA4#10102





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Reviewed for changes for fixing anomaly EA4#9985 only



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shruthi Raghavan


Review Date :

02/24/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


StabyCmp.c

Source File Revision:


4
Header File Name:


N/A
Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

StabyCmp_MDD.docx
Revision:
3

























FDD/SCIR/DSR/FDR/CM Name:




SF029A_StabyCmp_Design
Revision:
1.3.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:
















See MDD design Rationale for Notch filter PIM
























Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified










FilNotchInit' implementation is based on EA3.


with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules











FDD change to correct filter implementation not done (time crunch for implementation before build date)






































Anomaly or Design Work CR created








No
Comments: List Anomaly or CR numbers









for any FDD corrections needed











Systems group have been contacted for notch filter model













to be created to address the deviations noted in the MDD


























General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shruthi Raghavan


Review Date :

02/24/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


StabyCmp.cSource File Revision:


4

Source File Name:


N/ASource File Revision:


N/A

Source File Name:


N/ASource File Revision:


N/A


























EA4 Static Analysis Compliance Guideline version:







DRAFT_01.02.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 N/A

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design










StaticPathCount=1, CyclomaticComplexity=1


and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shruthi Raghavan


Review Date :

02/24/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































38.2 - StabyCmp_IntegrationManual

Integration Manual

For

StabyCmp

VERSION: 1.0

DATE: 21-July-2015

Prepared By:

Sankardu Varadapureddi,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSankardu Varadapureddi1.021-July-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
vFDD – SF029A_StabyCmp_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.01.00
3Software Design and Coding StandardsProcess 4.01.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
FLTINJENASet to ‘STD_ON’ for fault injection

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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.

InitScheduling RequirementsTrigger
StabyCmpInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
StabyCmpPer1NoneRTE (2 ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None

38.3 - StabyCmp_MDD

Module Design Document

For

StabyCmp

Jan 27, 2017

Prepared By:

Shruthi Raghavan,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionSankardu Varadapureddi1.021-July-2015
Updated for FDD version 1.1.0Sankardu Varadapureddi2.011-Mar-2016
Updated to FDD version 1.3.0Shruthi Raghavan3.027-Jan-2017


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 StabyCmp High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of ‘StabyCmp’ 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1.1 Sub-Module Functions 8

5.1.2 Interrupt Service Routines 8

5.1.3 Server Runnable Functions 8

5.1.4 Module Internal (Local) Functions 8

5.2 Local Function #1 8

5.3 Description 8

5.4 Local Function #2 9

5.5 Description 9

5.5.1 Transition Functions 9

6 Known Limitations with Design 10

7 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

Introduction

Purpose

Module design document for Stability Compensation.

StabyCmp High-Level Description

Refer FDD

Design details of software module

Graphical representation of ‘StabyCmp’

Data Flow Diagram

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Refer .m file

Local Constants

None

Software Component Implementation

Sub-Module Functions

Initialization sub-module {StabyCmpInit1}

Design Rational:

FDD details are not complete for notch filter initialization. Upon discussion with FDD owner, implemented in line with EA3 implementation.

Periodic sub-module {StabyCmpPer1}

Refer FDD for details

Design Rational:

In design version 1.3.0, .m file has some additional PIMs for notch filters, which are not required in the notch filter implementation. Notch filter implementation in SW based on design 1.0.0 .m file PIMs is not changed.

New FDD model was requested but this wasn’t done on time and due to time crunch the difference between implementation and the model still exists.

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

Local Function #1
Function NameFilNotchInitTypeMinMax
Arguments PassedInpfloat32See unit test consideration
FilNotchStRecPtrFilNotchStRec1
FilNotchGainRecPtrFilNotchGainRec1
Return ValueNone
Description

Notch filter initialization function implemented based on EA3 design.

Local Function #2
Function NameFilNotchFullUpdOutp_f32TypeMinMax
Arguments PassedInpfloat32See unit test consideration
FilNotchStRecPtrFilNotchStRec1
FilNotchGainRecPtrFilNotchGainRec1
Return ValueFilOutfloat32
Description

Notch filter output calculation. Implemented based on ‘Compensator1’ block functionality. Compensator2, Compensator3 and Compensator4 also have the same functionality.

Transition Functions

None

Known Limitations with Design

Design has 8 PIMs to represent notch filters and a model block for notch filter has not been designed. This hasn’t been done yet in this revision due to the need to baseline on time for builds. No anomaly has been written but the Systems group was notified.

UNIT TEST CONSIDERATION

Since the notch filter implementation used in this module is dynamic in nature, absolute ranges are difficult to determine without pre-defined knowledge on the combination of coefficient values (A1, A2, B0, B1, B2). Because of this, the systems group ran simulations on 10 different combinations of coefficients (2 with defined default calibrations, 8 considered extreme cases of notch filters) and logged the ranges of the filter state variables and outputs during a frequency sweep. The ranges given throughout this module were taken as the worst case results of all of the given test cases.

To provide useful cases for unit testing, the boundary checks tested during unit testing should be altered to test the state variable minimum and maximum for each of the 10 test cases with the given coefficients set to the values given in that test case. In the case where the default values of the coefficients are used in a vector, the unit tester should not test the corresponding state variables with values over the range defined for that set of coefficients. See attached simulation results.

(Note: this section is copied from EA3 Stability Compensation documentation)

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
3EA4 Software Naming Conventions.doc01.00.00
4Software Design and Coding Standards.doc2.1
5FDD - SF029A_StabyCmp_DesignSee Synergy sub project version

39 - Component Implementation

Component Implementation

Component Documentation

39.1 - StOutpCtrl Review


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF005A_StOutpCtrl_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF005A_StOutpCtrl_Impl_1.5.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#11057





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








N/A
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer


































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








N/A
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








N/A
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








N/A
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

05/10/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


StOutpCtrl.c

Source File Revision:


5
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

StOutpCtrl_MDD.doc

Revision:
3

























FDD/SCIR/DSR/FDR/CM Name:




SF005A_StOutpCtrl_Design

Revision:
1.4.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











Tags Removed
























All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer































































Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


StOutpCtrl.cSource File Revision:


5

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.2







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

05/10/17
































Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):





Yes































Other Reviewer(s):


Brendon Binder
Matt Leser
Brionna Spencer






























































39.2 - StOutpCtrl_IntegrationManual

Integration Manual

For

StOutpCtrl

VERSION: 1.0

DATE: 02-June-2015

Prepared By:

Software Group,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionAkilan Rathakrishnan1.002-June-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><FDD - <FDD SF005A_StOutpCtrl_Design>Refer Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

< Global function (except the ones that are defined in RTE modules) that is defined in this component but used by other function

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer SF005A_StOutpCtrl_DataDict.m file

Required Global Data Outputs

Refer SF005A_StOutpCtrl_DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
StOutpCtrlInit1NoneRTE Init
RunnableScheduling RequirementsTrigger
StOutpCtrlPer1NoneRTE 2ms Task

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

Non RTE NvM Blocks

Block Name
None

Note : Size of the NVM block if configured in developer

RTE NvM Blocks

Block Name
None

Note : Size of the NVM block if configured in developer

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

<This section is for appendix>

39.3 - StOutpCtrl_MDD

Module Design Document

For

StOutpCtrl

VERSION: 3

DATE: 5-Dec-2016

Prepared By:

Matthew Leser

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionAkilan Rathakrishnan1.002-June-2015
2Implementation of input name changeBasavaraja Ganeshappa2.030-June-2016
3Updated to fix Anomaly EA4#7767Matthew Leser3.005-Dec-2016

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 StOutpCtrl - High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation of StOutpCtrl 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.1.1 Initialization Functions 11

7.1.1.1 INIT: StOutpCtrlInit1 11

7.1.1.2 Design Rationale 11

7.1.1.3 Store Module Inputs to Local copies 11

7.1.1.4 (Processing of function)……… 11

7.1.1.5 Store Local copy of outputs into Module Outputs 11

7.1.2 PERIODIC FUNCTIONS 11

7.1.2.1 Per: StOutpCtrlPer1 11

7.1.2.2 Design Rationale 11

7.1.2.3 Store Module Inputs to Local copies 11

7.1.2.4 (Processing of function)……… 11

7.1.2.5 Store Local copy of outputs into Module Outputs 11

7.2 Interrupt Functions 11

7.3 Serial Communication Functions 11

7.4 Local Function/Macro Definitions 12

7.4.1 Local Function #1: RateLimit 12

7.4.1.1 Description 12

7.4.1.2 Design Rationale 12

7.4.2 Local Function #1: RateSource 12

7.4.2.1 Description 12

7.4.2.2 Design Rationale 12

7.5 GLObAL Function/Macro Definitions 12

7.5.1 GLObAL Function #1 12

7.5.1.1 Description 12

7.6 TRANSIENT FUNCTIONS 13

8 Known Limitations With Design 14

9 UNIT TEST CONSIDERATION 15

10 Appendix 16

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.02.01
<2><Software Naming Conventions>Process 4.02.01
<3><Coding standards>2.1
<4><FDD SF005A_StOutpCtrl_Design>See Synergy Subproject version
<Add if more available>

StOutpCtrl - High-Level Description

Refer FDD

Design details of software module

Graphical representation of StOutpCtrl

Data Flow Diagram

N/A

Module level DFD

N/A

Sub-Module level DFD

N/A

COMPONENT FLOW DIAGRAM

N/A

Variable Data Dictionary

User defined typedef definition/declaration

<This section documents any user types uniquely used for the module.>

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

N/A

Variable definition for enumerated types

Enum NameElement NameValue
N/A

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

< All program specific constants will be defined in detail >

Local

Constant NameResolutionUnitsValue
N/A

Global

<This section lists the global constants used by the module. For details on global constants, refer to the Data Dictionary for the application>

Constant Name
N/A

Module specific Lookup Tables Constants

<(This is for lookup tables (arrays) with fixed values, same name as other tables)>

Constant NameResolutionValueSoftware Segment
<Refer Constant name qualified in [2]><Refer MDD guidelines [1]><Refer MDD guidelines [1]><Refer MDD guidelines [1]>

Software Module Implementation

Sub-Module Functions

None

Initialization Functions

INIT: StOutpCtrlInit1

Design Rationale

None

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

PERIODIC FUNCTIONS

(Note: For multiple periodic functions, insert new headers at the “Header 2” level – subset of “7.1.2 Periodic Functions” and follow the same sub-section design shown below). If none required, place the text “None”)>

Per: StOutpCtrlPer1

Design Rationale

None

Store Module Inputs to Local copies

Refer to FDD

(Processing of function)………

Refer to FDD

Store Local copy of outputs into Module Outputs

Refer to FDD

Interrupt Functions

None

Serial Communication Functions

None

Local Function/Macro Definitions

<If these are numerous and defined in a separate source file then reference the source file only.>

Local Function #1: RateLimit

Function NameRateLimitTypeMinMax
Arguments PassedSysOperRampRate_UlspS_T_f32float320.1500.0
LoaRateLim_UlspS_T_f32float320.1500.0
VehStrtStopRampRate_UlspS_T_f32float320.1500.0
Return ValueSelRampRate_UlspS_T_f32float320.1500.0

Description

Implements "Rate Limit" model block in FDD -- selects ramp rate from input rate limits.

Design Rationale

FDD does not show a default case on the switch/case block in this function because none is required – all possible values of the switch variable (which is internal to this component) are covered by the cases shown. However a default clause is required by MISRA Rule 15.3. Therefore the default label was placed with the final case label in the code; this is functionally equivalent to the FDD and satisfies the MISRA rule.

Local Function #2: RateSource

Function NameRateSourceTypeMinMax
Arguments PassedSysOperMotTqCmdSca_Uls_T_f32float320.01.0
LoaSca_Uls_T_f32float320.01.0
VehStrtStopMotTqCmdSca_Uls_T_f32float320.01.0
SelectedState_Cnt_T_u08uint813
Return ValueSelectedTqCmdSca_Uls_T_f32float320.01.0

Description

Implements "Rate Source" model block in FDD -- selects scale factor from input rate scales.

Design Rationale

FDD does not show a default case on the switch/case block in this function because none is required – all possible values of the switch variable (which is internal to this component) are covered by the cases shown. However a default clause is required by MISRA Rule 15.3. Therefore the default label was placed with the final case label in the code; this is functionally equivalent to the FDD and satisfies the MISRA rule.

GLObAL Function/Macro Definitions

GLObAL Function #1

Function Name(Exact name used)TypeMinMax
Arguments PassedNone<Refer MDD guidelines[1]><Refer MDD guidelines[1]><Refer MDD guidelines[1]>
Return ValueN/A

Description

N/A

TRANSIENT FUNCTIONS

None

Known Limitations With Design

  1. None

UNIT TEST CONSIDERATION

None

Appendix

None

40 - Component Implementation

Component Implementation

Component Documentation

40.1 - SysFricLrng_IntegrationManual

Integration Manual

For

SysFricLrng

VERSION: 5.0

DATE: 04-Oct-2017

Prepared By:

Matthew Leser

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. NoDescriptionAuthorVersionDate
1Initial versionBasavaraja Ganeshappa1.030-Mar-2016
2Updated to design version 2.2.0TATA2.005-Dec-16
3Updated to design version 2.4.0KK3.028-Feb-17
4Remove notes for Integrator SettingsKK4.028-Mar-17
5Added new Non Rte Server RunnableML5.004-Oct-17

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
FDDFunctional Design Document
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelineProcess 4.02.01
2EA4 Software Naming ConventionsProcess 4.02.01
3Software Design and Coding StandardsProcess 4.02.01
4FDD: SF007A_SysFricLrng_DesignSee Synergy sub project version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

FricLrngShtDwn

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer SF007A_SysFricLrng_DataDict.m

Required Global Data Outputs

Refer SF007A_SysFricLrng_DataDict.m

Specific Include Path present

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
StOutpCtrlInit1NoneRTE – Init
RunnableScheduling RequirementsTrigger
StOutpCtrlPer1NoneRTE – 10ms
Server RunnableScheduling RequirementsTrigger
ClrFricLrngOperModNoneOn server invocation call
GetFricLrngDataNoneOn server invocation call
GetFricOffsOutpDiNoneOn server invocation call
InitFricLrngTblNoneOn server invocation call
SetFricLrngDataNoneOn server invocation call
SetFricOffsOutpDiNoneOn server invocation call
GetFricDataNoneOn server invocation call
SetFricDataNoneOn server invocation call
FricLrngShtDwn

Non Rte Server Runnable. This should be called before

the Nvm WriteAll and Shutdown.

On server invocation call

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

  • Refer Data Dict

Compiler Settings

Preprocessor MACRO

FLTINJENA is used for coditionaly injecting fault

Optimization Settings

None

Appendix

None

40.2 - SysFricLrng_MDD

Module Design Document

For

SysFricLrng

Oct 04, 2017

Prepared By:

Matthew Leser

Nexteer Automotive,

Saginaw, MI, USA

Change History

DescriptionAuthorVersionDate
Initial VersionBasavaraja Ganeshappa1.024th Mar 2016
Re base lined by pulling 1.3.1Basavaraja Ganeshappa2.025th Jul 2016
Implementation of SF007A v2.0.0 & v2.1.0Krishna Anne3.03rd Oct 2016
Updated to design version 2.2.0TATA4.005-Dec-16
Updated to design version 2.4.0KK5.028-Feb-17
Updated Diagram and added Unit Test ConsiderationML6.004-Oct-17

Table of Contents

1 Introduction 6

1.1 Purpose 6

2 SysFricLrng High-Level Description 7

3 Design details of software module 8

3.1 Graphical representation of SysFricLrng 8

3.2 Data Flow Diagram 9

3.2.1 Component level DFD 9

3.2.2 Function level DFD 9

4 Constant Data Dictionary 10

4.1 Program (fixed) Constants 10

4.1.1 Embedded Constants 10

5 Software Component Implementation 11

5.1 Sub-Module Functions 11

5.1.1 Init: SysFricLrngInit1 11

5.1.1.1 Design Rationale 11

5.1.1.2 Module Outputs 11

5.1.2 Per: SysFricLrngPer1 11

5.1.2.1 Design Rationale 11

5.1.2.2 Store Module Inputs to Local copies 11

5.1.2.3 (Processing of function)……… 11

5.1.2.4 Store Local copy of outputs into Module Outputs 11

5.2 Server Runnables 11

5.2.1 Server Runnable Name 11

5.2.1.1 Design Rationale 11

5.2.1.2 (Processing of function)……… 11

5.3 Server Runnables 12

5.3.1 Server Runnable Name 12

5.3.1.1 Design Rationale 12

5.3.1.2 (Processing of function)……… 12

5.3.2 Server Runnable Name 12

5.3.2.1 Design Rationale 12

5.3.2.2 (Processing of function)……… 12

5.3.3 Server Runnable Name 12

5.3.3.1 Design Rationale 12

5.3.3.2 (Processing of function)……… 12

5.3.4 Server Runnable Name 12

5.3.4.1 Design Rationale 12

5.3.4.2 (Processing of function)……… 12

5.3.5 Server Runnable Name 13

5.3.5.1 Design Rationale 13

5.3.5.2 (Processing of function)……… 13

5.3.6 Server Runnable Name 13

5.3.6.2 (Processing of function)……… 13

5.3.7 Server Runnable Name 13

5.3.7.2 (Processing of function)……… 13

5.4 Interrupt Functions 13

5.4.1 Interrupt Function Name 13

5.4.1.1 Design Rationale 13

5.4.1.2 (Processing of the ISR function)….. 13

5.5 Module Internal (Local) Functions 14

5.5.1 Local Function #1 14

5.5.1.1 Design Rationale 14

5.5.1.2 Processing 14

5.5.2 Local Function #2 14

5.5.2.1 Design Rationale 14

5.5.2.2 Processing 14

5.5.3 Local Function #3 15

5.5.3.1 Design Rationale 15

5.5.3.2 Processing 15

5.5.4 Local Function #4 15

5.5.4.1 Design Rationale 15

5.5.4.2 Processing 15

5.5.5 Local Function #5 16

5.5.5.1 Design Rationale 16

5.5.5.2 Processing 16

5.5.6 Local Function #6 16

5.5.6.1 Design Rationale 16

5.5.6.2 Processing 16

5.5.7 Local Function #7 16

5.5.7.1 Design Rationale 17

5.5.7.2 Processing 17

5.5.8 Local Function #8 17

5.5.8.1 Design Rationale 17

5.5.8.2 Processing 17

5.5.8.3 17

5.5.9 Local Function #9 17

5.5.9.1 Design Rationale 18

5.5.9.2 Processing 18

5.5.10 Local Function #10 18

5.5.10.1 Design Rationale 18

5.5.10.2 Processing 18

5.5.11 Local Function #11 18

5.5.11.1 Design Rationale 18

5.5.11.2 Processing 19

5.5.12 Local Function #12 19

5.5.12.1 Design Rationale 19

5.5.12.2 Processing 19

5.6 GLOBAL Function/Macro Definitions 19

6 Known Limitations with Design 20

7 UNIT TEST CONSIDERATION 21

Appendix A Abbreviations and Acronyms 22

Appendix B Glossary 23

Appendix C References 24

Introduction

Purpose

MDD for System Friction Learning

SysFricLrng High-Level Description

Refer FDD

Design details of software module

Refer FDD

Graphical representation of SysFricLrng

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
INDEX0_CNT_U081CNT0U
INDEX1_CNT_U081CNT1U
INDEX2_CNT_U081CNT2U
INDEX3_CNT_U081CNT3U
SYSSATNFRICESTIMDMIN_HWNWMTR_F321HwNwMtr0.0F
SYSSATNFRICESTIMDMAX_HWNWMTR_F32 21HwNwMtr20.0F
SYSFRICESTIMDMIN_HWNWMTR_F321HwNwMtr0.0F
SYSFRICESTIMDMAX_HWNWMTR_F321HwNwMtr20.0F
SYSFRICOFFSMIN_HWNWMTR_F321HwNwMtr-5.0F
SYSFRICOFFSMAX_HWNWMTR_F321HwNwMtr5.0F

For rest of the constants, please refer Data Dictionary

Software Component Implementation

The detailed design of the function is provided in the FDD.

Sub-Module Functions

Init: SysFricLrngInit1

Design Rationale

In MDD, filters are initialized inside the for loop using switch case but in code filters are initialized one by one without any conditions.

In model, filters are initialized twice as it is not possible to use a variable for the filter initialization in the model. This is redundancy is not present in the code as variables are used for initializing the filters.

Module Outputs

Refer FDD

Per: SysFricLrngPer1

Design Rationale

Refer FDD

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runnables

Server Runnable Name

ClrFricLrngOperMod

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnables

Server Runnable Name

GetFricLrngData

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnable Name

GetFricOffsOutpDi

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnable Name

InitFricLrngTbl

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnable Name

SetFricLrngDatal

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnable Name

SetFricOffsOutpDi

Design Rationale

Refer FDD

(Processing of function)………

On server invocation call

Server Runnable Name

GetFricData

Design Rationale

Refer FDD

To avoid calculating array indexing for updating PIMs Rte_Pim_FricLrngData()->Hys and Rte_Pim_FricLrngData()->RngCntr, performed casting the array argument back to it's actual type (similar to what we do with cal arrays) so we can use normal indexing.

(Processing of function)………

On server invocation call

Server Runnable Name

SetFricData

Design Rationale

Refer FDD

To avoid calculating array indexing for updating from PIMs Rte_Pim_FricLrngData()->Hys and Rte_Pim_FricLrngData()->RngCntr, performed casting the array argument back to it's actual type (similar to what we do with cal arrays) so we can use normal indexing.

(Processing of function)………

On server invocation call

Server Runnable Name

FricLrngShtDwn

Design Rationale

Refer FDD

(Processing of function)………

Interrupt Functions

None

Interrupt Function Name

None

Design Rationale

NA

(Processing of the ISR function)…..

NA

Module Internal (Local) Functions

Local Function #1

Function NameFricLearningTypeMinMax
Arguments PassedSelHwAg_HwDeg_T_f32Float32-1440.01440.0
SelColTq_HwNwtMtr_T_f32Float32-1010
VehSpdIdx_Cnt_T_u16Uint1603
HwVelDir_Cnt_T_u08Uint801
LrngEna_Cnt_T_LoglBooleanFALSETRUE
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘FricLearning’ subsystem in FDD.

Following per instance data is updated.

*Rte_Pim_RawAvrg() (Min:0, Max:20)
Rte_Pim_SatnAvrgFric()[VehSpdIdx_Cnt_T_u16] (Min:0, Max:20)

Also writes the outputs SysFricEstimd and SysSatnFricEstimd

Local Function #2

Function NameRunningAndCalibrationModesTypeMinMax
Arguments Passed*FricOffs_HwNwtMtr_T_f32Float32-5.0+5.0
*LrngEna_Cnt_T_LoglBooleanFALSETRUE
Return ValueNoneNANANA

Design Rationale

Processing

Following PIMs are updated; refer to ‘RunningAndCalibrationModes’ subsystem in the FDD. FricOffs_HwNwtMtr_T_f32 is the output of this function

Rte_Pim_FricLrngData()->FricOffs (Min:-5, Max:5)
*Rte_Pim_RawAvrg() (Min:0, Max:20)
Rte_Pim_SatnAvrgFric()[VehSpdIdx_Cnt_T_u16] (Min:0, Max:20)

Also updates the input argument, *FricOffs_HwNwtMtr_T_f32.

Local Function #3

Function NameRawAvrgCalcTypeMinMax
Arguments PassedVehSpdIdx_Cnt_T_u16Uint1605
DeltaIdxOffsDec_Cnt_T_u16Uint16012
DeltaIdxOffsInc_Cnt_T_u16Uint16013
TotalCounter_Cnt_T_u32Uint32065535
LrngEna_Cnt_T_LoglBooleanFALSETRUE
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘Raw Average Calculation’ subsystem in FDD.

Following per instance data is updated.

*Rte_Pim_RawAvrg() (Min:0, Max:20)
Rte_Pim_SatnAvrgFric()[VehSpdIdx_Cnt_T_u16] (Min:0, Max:20)

Local Function #4

Function NamePhiCalcTypeMinMax
Arguments PassedSelHwAg_HwDeg_T_f32Float32-14401440
Gate_Cnt_T_u16Uint16065535
DeltaIdxOffs_Cnt_T_u16Uint16010
SelColTq_HwNwtMtr_T_f32Float32-1010
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘Raw Average Calculation’ subsystem in FDD.

Following per instance data is updated.

Rte_Pim_FricLrngData()->Hys[DeltaIdxOffs_Cnt_T_u16][Gate_Cnt_T_u16 + 1U] (Min:-127, Max:127)
Rte_Pim_FricLrngData()->Hys[DeltaIdxOffs_Cnt_T_u16][Gate_Cnt_T_u16] (Min:-127, Max:127)

Local Function #5

Function NameRangeCounterManagerTypeMinMax
Arguments PassedDeltaIdxOffs_Cnt_T_u16Uint16010
DeltaIdxOffsDec_Cnt_T_u16Uint16012
DeltaIdxOffsInc_Cnt_T_u16Uint16013
Gate_Cnt_T_u16Uint16065535
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘Range counter manager’ subsystem in FDD.

Following per instance data is updated.

*Rte_Pim_ RngCntrThdExcdd() (Min:0, Max:1)
Rte_Pim_FricLrngData->RngCntr (:,:) (Min:0, Max:65535)

Local Function #6

Function NameNTCSetResetTypeMinMax
Arguments PassedMaxRawAvrgFric_Cnt_T_f32Float32-127254
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘NTC_Pass’ and ‘NTC_Fail’ subsystem in FDD

Sets or resets the NTCNR_0X0A2

Local Function #7

Function NameClearingModeTypeMinMax
Arguments PassednoneNANANA
Return ValuenoneNANANA

Design Rationale

Processing

Refer to ‘Clearing Mode’ subsystem in FDD.

Following per instance data is updated.

*Rte_Pim_FricOffs()(Min:-5, Max:5)

Local Function #8

Function NameResettingModeTypeMinMax
Arguments Passed*FricOffs_HwNwtMtr_T_f32NANANA
Return ValueNoneNANANA

Design Rationale

Processing

Refer to ‘ResettingMode’ subsystem in FDD.

Following per instance data is updated. Also updates the input argument ‘*FricOffs_HwNwtMtr_T_f32’.

Rte_Pim_FricLrngData()->RngCntr(;)
Rte_Pim_AvrgFricLpFilX()->FilSt (X: 1 to 4)
Rte_Pim_FricLrngData()->Hys(;)
Rte_Pim_FricOffs()(Min:-5, Max:5)

Rte_Pim_VehBasLineFric()[] (Min:-0, Max:127)

Rte_Pim_RawAvrgFric()[] (Min:--127, Max:254)

Rte_Pim_FilAvrgFric()[] (Min:--10 , Max: 10)

Rte_Pim_SatnAvrgFric()[](Min:--127, Max:254)

Rte_Pim_FricLrngData()->VehLrndFric[] (0-127)

Local Function #9

Function NameHwAngConstraintTypeMinMax
Arguments PassedFilHwAg_HwDeg_T_f32Float32-14401440
*HwAgOK_Cnt_T_Loglboolean01
*SelHwAg_HwDeg_T_f32Float32-14401440
Return ValueNANANANA

Design Rationale

 IDXSELN2_ULS_U08 is not used in the code because it is not required instead IDXSELN1_ULS_U08 serves the purpose.

Processing

Refer to ‘HwAngConstraint‘ subsystem in FDD. Updates the input arguments, *HwAgOK_Cnt_T_Logl and *SelHwAg_HwDeg_T_f32

Local Function #10

Function NameHwVelConstraintTypeMinMax
Arguments PassedHwVel_HwRadPerSec_T_f32Float32-4242
HwVelOK_Cnt_T_LoglBoolean01
HwVelDir_Cnt_T_u08Uint801
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘HwVelConstraint’ subsystem in FDD.

Local Function #11

Function NameVehSpdConstraintTypeMinMax
Arguments PassedVehSpd_Kph_T_f32Float320511
*VehSpdOK_Cnt_T_LoglBoolean01
*VehSpdIdx_Cnt_T_u16Uint1605
Return ValueNoneNANANA

Design Rationale

Code is optimized due to limitation with the model; hence code completely won’t match the model. There won’t be any impact on the functionality.

In the model as it is not possible to break the for loop until the loop iterator reaches the configured constant threshold value, index corresponding to the position in ‘SysFricLrngVehSpd’ which breaches the conditions mentioned in ‘VehSpdIdxCalcn’ subsystem is calculated by successively adding the index value after multiplying it with either the condition true or false based on whether the vehicle speed value breaches the threshold mentioned in the FDD. In code as it is possible to exit the for loop as soon as a value in ‘VehSpdIdxCalcn’ breaches thresholds as mentioned in FDD, no such successive addition of loop counter is required.

Processing

Refer to ‘VehSpdConstraint’ subsystem in FDD.

Local Function #12

Function NameColTqconstraintTypeMinMax
Arguments PassedFilColTq_HwNwtMtr_T_f32Float32-1010
*SelColTq_HwNwtMtr_T_f32Boolean-1010
Return ValueNANANANA

Design Rationale

Processing

Refer to ‘ColTqconstraint’ subsystem in FDD. Updates the *SelColTq_HwNwtMtr_T_f32.

GLOBAL Function/Macro Definitions

NA

Known Limitations with Design

None

UNIT TEST CONSIDERATION

  1. In model, one based indexing is used but in code 0 based indexing is used.

  2. In the NVM block needs area of Developer tool, the options of "Restore at Startup" and "Store at Shutdown" are disabled as the newer version (3.13.22 SP2) of this tool throws warnings while doing a DCF check.

  3. There will be a source model mismatch that occurs because of a logic change that happened for a PSR. There is limiting that occurs in the new Non Rte Server Runnable. These limits were switched for the PSR but this change was not brought in for the design. An ICR has been submitted to fix the design to match the implementation, EA4#15920.

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)Process 4.02.01
2MDD GuidelineProcess 4.02.01
3Software Naming Conventions.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD- SF007A_SysFricLrng_DesignSee Synergy sub project version

40.3 - SysFricLrng_PeerReviewChecklists


Overview

Summary Sheet
Synergy Project
PolySpace


Sheet 1: Summary Sheet
























Rev 2.0029-Nov-17

Nexteer SWC Implementation Peer Review Summary Sheet


























Component Short Name:


Windows User: Intended Use: Identify which component is being reviewed. This should match the component short name from the DataDict.m fileand the middle part of the Synergy project name, e.g. Assi for the SF001A_Assi_Impl Synergy project
SysFricLrng
Revision / Baseline:

Windows User: Intended Use: Identify the implementation baseline name intended to be used for the changed component when changes are approved E.g. SF001A_Assi_Impl_1.2.0
SF007A_SysFricLrng_Impl_3.0.1

























Change Owner:
Windows User: Intended Use: Identify the developer who made the change(s) being reviewed

Matthew Leser
Work CR ID:
Windows User: Intended Use: Identify the Implementation Work CR whose work is being reviewed (may be more than one)

EA4#18370





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:



Check the file types that needed modification for the Work CR(s); macros for the check boxes will populate the appropriate checklist tabs for the review.
























































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






























Reviewed:




At start of review, all items below should be marked "No". At the end of the review, all items should be marked "Yes" or "N/A" where N/A indicates the reviewers have reviewed the existing (unchanged) item and confirmed no updates were needed for the Work CR(s).












































N/AMDD


N/ASource Code


YesPolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Implementation update was strictly to bring in new design version. Polyspace was run for updated Rte_Stubs.h file






















































































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include SWC Owner and/or SWC Design author and Integrator and/or SW Lead as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.

Each peer review shall start with a clean copy of the latest peer review checklist template. Before the peer review, the change owner shall:
o Review the previous component peer review and copy any relevant comments to the new review sheet.
o Review all checklist items and make all corrections needed, so that the component is ready for peer review. The expectation is that peer review should find very few issues,
because the change owner has already used the checklist to ensure the component changes are complete and correct.
o Fill in all file name and version information as needed on peer review checklist tabs (file names may be copied from the previous peer review where appropriate)
o Fill in checklist answers (Yes/No/NA pulldowns) ONLY on those items which are NA for the current change. All other checklist items should be blank going into the review
meeting.

During the peer review meeting:
o For each page of the review, first review the items already marked as N/A for this change, to confirm that reviewers agree with this assessment; change the checklist box to
blank if it is found that the item does apply.
o Then review the items with the checklist box blank. After reviewing each of these items, the checklist box will be marked as "Yes", or the checklist box will be marked as
"No" with needed rework indicated or with rationale indicated.
o If any items are marked "No" with rationale indicated, this must be approved by a software supervisor or the software manager; there is a line in the "Review Board" section
of each tab to indicate who approved the "No" items on that tab.

Sheet 2: Synergy Project






















Rev 2.0029-Nov-17

























Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:












































.gpj file in tools folder matches .gpj generated by TL109 script








Yes
Comments:













































File/folder structure is correct per documentation in









Yes
Comments:




TL109A_SwcSuprt







































General Notes / Comments:
























































Review Board:


























Change Owner:

Matthew Leser


Review Date :

01/15/18
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Rationale/justification for items marked "No" approved by:












































Sheet 3: PolySpace






















Rev 2.0029-Nov-17
Nexteer SWC Implementation Peer Review Meeting Log (PolySpace Review)




























Source File Name:


SysFricLrng.c




Source File Revision:


9

Source File Name:


SysFricLrngNonRte.c




Source File Revision:


1

Source File Name:

















Source File Revision:
































EA4 Static Analysis Compliance Guideline version:







01.04.00







Poly Space version:

Windows User: eg. 2013b

2013b

.


TL109A sub project version:

2.2.0



































Quality Check Items:








































Rationale is required for all answers of No





































tools/local folders' header files are appropriate and










Yes
Comments:










function prototypes match the latest component version











































100% Compliance to the EA4 Static Analysis

Yes
Comments:




Compliance Guideline











































Are previously added justification and deviation










Yes
Comments:




comments still appropriate











































Do all MISRA deviation comments use approved










Yes
Comments:




deviation tags











































For any component source files (.c, .h, generated Cfg.c and Cfg.h)












N/A
Comments:




with conditional compilation, has Polyspace been run with all

















combinations of build constants that can be used together in a build?

























(Note which conditional compilation results have been archived)




















































Cyclomatic complexity and Static path count OK










Yes
Comments:




for all functions in the component per Design
















and Coding Standards rule [N47]










































































































General Notes / Comments:































































Review Board:




























Change Owner:

Matthew Leser




Review Date :

01/15/18


































Lead Peer Reviewer:


Avinash James




Approved by Reviewer(s):



Yes

































Other Reviewer(s):


















































































Rationale/justification for items marked "No" approved by:















































41 - Component Implementation

Component Implementation

Component Documentation

41.1 - SysGlbPrm Review


Overview

Summary Sheet
Synergy Project
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF999A_SysGlbPrm_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF999A_SysGlbPrm_Impl_1.3.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Nick Saxton
Work CR ID:


EA4#3935





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































MDD


YesSource Code


YesPolySpace









































Integration Manual


Davinci Files








































































Comments:

Only reviewed changes



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

02/19/16
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


N/A

Source File Revision:


N/A
Header File Name:


SysGlbPrm.h

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 3

























MDD Name:

N/A

Revision:
N/A

























FDD/SCIR/DSR/FDR/CM Name:




SF999A_SysGlbPrm_Design

Revision:
1.4.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







Yes
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version:

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

02/19/16
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


SysGlbPrm.h








Source File Revision:


3

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







1.1.0














Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 TL108A_PolyspaceSuprt_1.0.0

QAC version:


Windows User: eg 8.1.1-R 8.1.1-R
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 TL100A_QACSuprt_1.2.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


N/A
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate










No justifications


























Do all MISRA deviation comments use approved








N/A
Comments:





deviation tags










No deviations


























Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

02/19/16
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































42 - Component Implementation

Component Implementation

Component Documentation

42.1 - SysPrfmncSts_IntegrationManual

Integration Manual

For

SysPrfmncSts

VERSION: 1.0

DATE: 20-JAN-2017

Prepared By:

SW component Group,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionKrishna Anne1.020-Jan-17

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 Dependencies 7

3.1 SWCs 7

3.2 Global Functions(Non RTE) to be provided to Integration Project 7

4 Configuration REQUIREMeNTS 8

4.1 Build Time Config 8

4.2 Configuration Files to be provided by Integration Project 8

4.3 Da Vinci Parameter Configuration Changes 8

4.4 DaVinci Interrupt Configuration Changes 8

4.5 Manual Configuration Changes 8

5 Integration DATAFLOW REQUIREMENTS 9

5.1 Required Global Data Inputs 9

5.2 Required Global Data Outputs 9

5.3 Specific Include Path present 9

6 Runnable Scheduling 10

7 Memory Map REQUIREMENTS 11

7.1 Mapping 11

7.2 Usage 11

7.3 NvM Blocks 11

8 Compiler Settings 12

8.1 Preprocessor MACRO 12

8.2 Optimization Settings 12

9 Appendix 13

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1EA4 Software Naming Conventions.doc01.00.00
2Software Design and Coding Standards.doc2.1
3SF059A_SysPrfmncSts_DesignSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Pleas refer DataDict.m file

Required Global Data Outputs

Pleas refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
SysPrfmncStsInit1NoneRTE(Init)
RunnableScheduling RequirementsTrigger
SysPrfmncStsPer1NoneRTE(2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None.

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

42.2 - SysPrfmncSts_MDD

Module Design Document

For

SysPrfmncSts

Jan 19, 2017

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

SW Component group,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionKrishna Anne1.020-Jan-2017


Table of Contents

1 Introduction 4

2 SysPrfmncSts & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of SysPrfmncSts 6

3.2 Data Flow Diagram 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: SysPrfmncStsInit1 8

5.1.1.1 Design Rationale 8

5.1.1.2 Module Outputs 8

5.1.2 Per: SysPrfmncStsPer1 8

5.1.2.1 Design Rationale 8

5.1.2.2 Store Module Inputs to Local copies 8

5.2 Server Runables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.4.1 Local Function #1 8

5.4.1.1 Design Rationale 9

5.4.1.2 Processing 9

5.4.2 Local Function #2 9

5.4.2.1 Design Rationale 9

5.4.2.2 Processing 9

6 Known Limitations with Design 10

7 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

Introduction

Please refer the Design Subproject.

SysPrfmncSts & High-Level Description

Please refer the Design Subproject.

Design details of software module

Please refer the Design Subproject.

Graphical representation of SysPrfmncSts

Data Flow Diagram

Please refer the Design Subproject.

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Please refer the .m file in the design Subproject.NANANA

Software Component Implementation

Sub-Module Functions

None

Init: SysPrfmncStsInit1

Design Rationale

None

Module Outputs

None

Per: SysPrfmncStsPer1

Design Rationale

None

Store Module Inputs to Local copies

None

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NamePrfmncSysSt1TypeMinMax
Arguments PassedSysSt_Val_Cnt_T_enumSysSt10U3U
ThermDutyCycProtnTDptLim_MotNwtMtr_T_f32float320.0F8.8F
ThermDutyCycProtnLoadDptLim_MotNwtMtr_T_f32float320.0F8.8F
StallMotTqLim_MotNwtMtr_T_f32float320.0F8.8F
*SysPrfmncSt_Cnt_T_u16uint160U36702U
Return ValueNANANANA

Design Rationale

None

Processing

Please refer below path in FDD.

SF059A_SysPrfmncSts/SysPrfmncSts/SysPrfmncStsPer1/PrfmncSysSt

Local Function #2

Function NamePrfmncSysSt2TypeMinMax
Arguments PassedDutyCycThermProtnMaxOutp_Uls_T_u16uint160U200U
EcuTFild_DegCgrd_T_f32float32-50.0F50.0F
LoaSt_Val_Cnt_T_enumLoaSt10U5U
VehSpdVld_Cnt_T_loglBooleanFALSETRUE
*SysPrfmncSt_Cnt_T_u16uint160U36702U
Return ValueNANANANA

Design Rationale

None

Processing

Please refer below path in FDD.

SF059A_SysPrfmncSts/SysPrfmncSts/SysPrfmncStsPer1/PrfmncSysSt

Known Limitations with Design

NTC definitions are missed in the .m file of the design. FDD owner agreed to include them in the next revision.

Anomaly EA4#9446 is raised.

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 : SF059A_SysPrfmncSts_DesignSee synergy sub-project version

42.3 - SysPrfmncSts_PeerReviewChecklists


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
MDD
PolySpace
Integration Manual


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF059A_SysPrfmncSts_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF059A_SysPrfmncSts_Impl_1.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Krishna Anne
Work CR ID:


EA4#7019





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































YesMDD


YesSource Code


YesPolySpace









































YesIntegration Manual


YesDavinci Files








































































Comments:

PS : Anomaly EA4#9446 is raised on design.



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/20/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser






































































Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








N/A
Comments:

Initial version

versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







N/A
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne
Review Date :

01/20/17
Component Type :


Application



























Lead Peer Reviewer:


Avinash James
Approved by Reviewer(s):



Yes

































Other Reviewer(s):


Matt Leser






































































Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


SysPrfmncSts.c

Source File Revision:


1
Header File Name:


NA

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. NA

























MDD Name:

SysPrfmncSts_MDD

Revision:
1

























FDD/SCIR/DSR/FDR/CM Name:




SF059A_SysPrfmncSts_Design

Revision:
1.1.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







Yes
Comments:

















































for function names







Yes
Comments:

















































for other names (component, memory







Yes
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








Yes
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD





































All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







Yes
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/20/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser






































































Sheet 5: MDD






















Rev 1.28-Jun-15
Peer Review Meeting Log (MDD Review)


























MDD Name:

SysPrfmncSts_MDD













MDD Revision:

1


























Source File Name:


SysPrfmncSts.c











Source File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:













































Change log contains detailed description of changes








Yes
Comments:













































Changes Highlighted (for Unit Tester)








N/A
Comments:

Initial version










































Diagrams have been included per MDD Guideline








Yes
Comments:











and reviewed






































All Design Exceptions and Limitations are listed








Yes
Comments:



















































Design rationale given for all global








N/A
Comments:











data not communicated through RTE ports, per














Design and Coding Standards rules [N9] and [N10].















































All implementation details that differ from the FDD are








N/A
Comments:











noted and explained in Design Rationale






































All Unit Test Considerations have been described








N/A
Comments:



















































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/20/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser






































































Sheet 6: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


SysPrfmncSts.c











Source File Revision:


1

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:








01.01.00













Poly Space version:


Windows User: eg. 2013b TL108A_PolyspaceSuprt
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0 NA

QAC version:


Windows User: eg 8.1.1-R TL100A_QACSuprt
QAC sub project version:




Windows User: eg. TL_100A_1.1.0 1.0.0


























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/20/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser






































































Sheet 7: Integration Manual






















Rev 1.28-Jun-15
Peer Review Meeting Log (Integration Manual Review)


























Integration Manual Name:



kzshz2: Intended Use: Identify which file is being reviewed Rationale: Required for traceability. It will help to ensure this sheet is not attached to the wrong design review form. SysPrfmncSts_IntegrationManual

Integration Manual Revision:



kzshz2: Intended Use: Identify which version of the integration manual has been reviewed. Rationale: Required for traceability between the MDD and review. Auditors will likely require this. 1





























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches header








Yes
Comments:










































Latest template used








Yes
Comments:










































Change log contains detailed description of changes








Yes
Comments:










































Changes Highlighted (for Integrator)








N/A
Comments:
















Initial version

























General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Krishna Anne


Review Date :

01/20/17
































Lead Peer Reviewer:


Avinash James


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Matt Leser





































































43 - Component Implementation

Component Implementation

Component Documentation

43.1 - TEstimn_IntegrationManual

Integration Manual

For

TEstimn

VERSION: 2.0

DATE: 07-Dec-2017

Prepared By:

Matt Leser,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSankardu Varadapureddi1.017-Sep-2015
2Added Nvm BlockMatthew Leser2.007-Dec-2017

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1FDD : SF006A_ TEstimn_DesignSee Synergy sub project version
2Software Naming ConventionsProcess 4.04.00
3Software Design and Coding StandardsProcess 4.04.00

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
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.

InitScheduling RequirementsTrigger
TEstimnInit1NoneRTE (Init)
RunnableScheduling RequirementsTrigger
TEstimnPer1NoneRTE (100 ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

TFilStVal Compiler Settings

Preprocessor MACRO

None.

Optimization Settings

None.

Appendix

None

43.2 - TEstimn_MDD

Module Design Document

For

TEstimn

06-Apr-2018

Prepared By:

Shawn Penning,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionSankardu Varadapureddi117-Sep-2015
Updated to Design v2.2.0Matthew Leser226-Apr-2017
Updated Graph and added new local functionMatthew Leser306-Dec-2017
Added local constants and unit test considerations.SPP406-Apr-2018


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 TEstimn High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of TEstimn 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

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: TEstimnInit1 9

5.1.1.1 Design Rationale 9

5.1.1.2 Module Outputs 9

5.1.2 Per: TEstimnPer1 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 Runables 9

5.3 Interrupt Functions 9

5.4 Module Internal (Local) Functions 9

5.5 GLOBAL Function/Macro Definitions 9

6 Known Limitations with Design 10

7 UNIT TEST CONSIDERATION 11

Appendix A Abbreviations and Acronyms 12

Appendix B Glossary 13

Appendix C References 14

Introduction

Purpose

Scope

TEstimn High-Level Description

Refer to FDD

Design details of software module

Graphical representation of TEstimn

Data Flow Diagram

Refer FDD

Component level DFD

Function level DFD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Refer .m file

Local Constants

#define TESTIMNASSIMECHTHILIM_DEGCGRD_F32 150.0F

#define TESTIMNASSIMECHTLOLIM_DEGCGRD_F32 (-50.0F)

#define TESTIMNFETTHILIM_DEGCGRD_F32 200.0F

#define TESTIMNFETTLOLIM_DEGCGRD_F32 (-50.0F)

#define TESTIMNMAGTHILIM_DEGCGRD_F32 150.0F

#define TESTIMNMAGTLOLIM_DEGCGRD_F32 (-50.0F)

#define TESTIMNWIDGTHILIM_DEGCGRD_F32 300.0F

#define TESTIMNWIDGTLOLIM_DEGCGRD_F32 (-50.0F)

#define DUALECUSTSIDX_CNT_U08 ((uint8)0U)

#define SNGECUSTSIDX_CNT_U08 ((uint8)1U)

#define EXPCOEFF_ULS_F32 (-1.0F)

#define SILLFILVALMIN_ULS_F32 (-2431500.0F)

#define SILLFILVALMAX_ULS_F32 (1001200.0F)

#define SILPFILVALMIN_ULS_F32 (0.0F)

#define SILPFILVALMAX_ULS_F32 (62500.0F)

#define ASSIMECHLLFILVALMIN_ULS_F32 (-4577000.0F)

#define ASSIMECHLLFILVALMAX_ULS_F32 (1716400.0F)

#define ASSIMECHLPFILVALMIN_ULS_F32 (0.0F)

#define ASSIMECHLPFILVALMAX_ULS_F32 (1764.0F)

#define CULLFILVALMIN_ULS_F32 (-2431500.0F)

#define CULLFILVALMAX_ULS_F32 (1001200.0F)

#define CULPFILVALMIN_ULS_F32 (0.0F)

#define CULPFILVALMAX_ULS_F32 (62500.0F)

#define MAGLLFILVALMIN_ULS_F32 (-2431500.0F)

#define MAGLLFILVALMAX_ULS_F32 (1001200.0F)

#define MAGLPFILVALMIN_ULS_F32 (0.0F)

#define MAGLPFILVALMAX_ULS_F32 (62500.0F)

#define FILVALMIN_ULS_F32 (0.0F)

#define TESTIMNFETMTGTNIDX_CNT_U08 ((uint8)2U)

#define TESTIMNIGNTIOFFTHD_CNT_F32 (10000.0F)

Software Component Implementation

Sub-Module Functions

Init: TEstimnInit1

Design Rationale

#define FETLOABITMASK_CNT_U08 ((uint8)4U) Refer FDD for the functionality.

Module Outputs

Refer FDD

Per: TEstimnPer1

Design Rationale

In ‘AssistMechanismLeadLagFilterRe-Initialization’ block, blocks ‘AssistMechanismInitEnable’ and ‘AssistMechanismInitDisable’ have similar logic except for some calculations related to inputs. So the differences are implemented in ‘if-else’ statement and common logic is implemented after ‘if-else’ statements in the SW.

Store Module Inputs to Local copies

Refer FDD

(Processing of function)………

Refer FDD

Store Local copy of outputs into Module Outputs

Refer FDD

Server Runnables

None

Interrupt Functions

None

Module Internal (Local) Functions

Local Function #1

Function NameFltMtgtnCalSelnTypeMinMax
Arguments PassedFetLoaMtgtnEna_Cnt_T_loglbooleanFALSETRUE
DualEcuFltMtgtnEna_Cnt_T_loglbooleanFALSETRUE
Return ValueNANANANA

Design Rationale

Implementation of ‘Fault Mitigation Calibration Selection’ block in FDD (To reduce cyclomatic complexity & path count in Per1).

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

Calculate TEstimnSiLLFilCoeffB0 as per following equation:

TEstimnSiLLFilCoeffB0= -1*[(TEstimnSiLLFilCoeffA1-1)+TEstimnSiLLFilCoeffB1]

Calculate TEstimnCuLLFilCoeffB0 as per following equation:

TEstimnCuLLFilCoeffB0= -1*[(TEstimnCuLLFilCoeffA1-1)+TEstimnCuLLFilCoeffB1]

Calculate TEstimnMagLLFilCoeffB0 as per following equation:

TEstimnMagLLFilCoeffB0= -1*[(TEstimnMagLLFilCoeffA1-1)+TEstimnMagLLFilCoeffB1]

Calculate TEstimnAssiMechLLFilCoeffB0 as per following equation:

TEstimnAssiMechLLFilCoeffB0= -1*[(TEstimnAssiMechLLFilCoeffA1-1)+TEstimnAssiMechLLFilCoeffB1]

Anomaly 20644 Issue 1B and 1C were not addressed due to time considerations. Anomaly 19666 issue 4 is a test issue that should be addressed by test team but does not affect design or code.

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.01
3Software Naming Conventions.docEA4 01.00.00
4Software Design and Coding Standards.doc2.1
5FDD : SF006A_ TEstimn_DesignSee Synergy sub project version

43.3 - TEstimn_Review


Overview

Summary Sheet
Synergy Project
Source Code
MDD
PolySpace
help
Version History


Sheet 1: Summary Sheet
























Rev 2.0121-Feb-18




Nexteer EA4 SWC Implementation Peer Review Summary Sheet

































Component Short Name:



Testimn
Revision / Baseline:


SF006A_Testimn_Impl_3.1.0
































Change Owner:


Shawn Penning
Work CR ID:


EA4#22127


































Modified File Types:






Check the file types that needed modification for the Work CR(s); macros for the check boxes will populate the appropriate checklist tabs for the review.
























































































































































































Review Checklist Summary:





































Reviewed:








At start of review, all items below should be marked "No". At the end of the review, all items should be marked "Yes" or "N/A" where N/A indicates the reviewers have reviewed the existing (unchanged) item and confirmed no updates were needed for the Work CR(s).




























































YesMDD


YesSource Code


YesPolySpace

















































N/AIntegration Manual


N/ADavinci Files




















































































All required reviewers participated





Yes





















































Comments:
















































































































Time spent ( to the nearest half hour)








review preparation



review meeting


review follow-up










Change owner:









2



2


0.5









Component developer reviewers:









0



2


0


6.5





Other reviewers:









0



1


0









Total hours









2



5


0.5


7.5




































Content reviewed





























Lines of code:


100


Elements of .arxml content:




0

Pages of documentation:



5































































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include SWC Owner and/or SWC Design author and Integrator and/or SW Lead as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.

Each peer review shall start with a clean copy of the latest peer review checklist template. Save in the doc folder of the component implementation, with the file name in the format SWCShortName_Review.xlsx. If the existing review in Synergy has a different name, the name must be changed IN SYNERGY (rather than by syncing in a new file with the new name) so that the file history will be properly maintained.

Before the peer review, the change owner shall: (NOTE - time for completing these items is to be counted as the Change Owner Review Prep Time)
o Review the previous component peer review and copy any relevant comments to the new review sheet.
o Review all checklist items and make all corrections needed, so that the component is ready for peer review. The expectation is that peer review should find very few issues,
because the change owner has already used the checklist to ensure the component changes are complete and correct.
o Fill in all file name and version information as needed on peer review checklist tabs (file names may be copied from the previous peer review where appropriate)
o Fill in checklist answers (Yes/No/NA pulldowns) ONLY on those items which are NA for the current change. All other checklist items should be blank going into the review
meeting.

During the peer review meeting:
o For each page of the review, first review the items already marked as N/A for this change, to confirm that reviewers agree with this assessment; change the checklist box to
blank if it is found that the item does apply.
o Then review the items with the checklist box blank. After reviewing each of these items, the checklist box will be marked as "Yes", or the checklist box will be marked as
"No" with needed rework indicated or with rationale indicated.
o If any items are marked "No" with rationale indicated, this must be approved by a software supervisor or the software manager; there is a line in the "Review Board" section
of each tab to indicate who approved the "No" items on that tab.





Sheet 2: Synergy Project






















Rev 2.0121-Feb-18

























Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:
naming convention




































Project contains necessary subprojects








Yes
Comments:






































Project contains the correct version of subprojects








Yes
Comments:






































Design subproject is correct version








Yes
Comments:








































.gpj file in tools folder matches .gpj generated by TL109 script








Yes
Comments:









































File/folder structure is correct per documentation in









Yes
Comments:

TL109A_SwcSuprt






































General Notes / Comments:




































Review Board:


























Change Owner:

Shawn Penning


Review Date :

04/06/18
































Lead Peer Reviewer:


Brendon Binder


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Rationale/justification for items marked "No" approved by:












































Sheet 3: Source Code






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (Source Code Review)

























Source File Name:


TEstimn.c

Source File Revision:


4
Header File Name:





Header File Revision:




























MDD Name:


TEstimn_MDD.docx
Revision:
4

























SWC Design Name:


SF006A_TEstimn_Design
Revision:
3.2.0


























Quality Check Items:



































Rationale is required for all answers of No

































EA4 Common Naming Convention followed:











Version: 1.01
























EA4 Software Naming Convention followed:











Version: 1.02

























for variable names







N/A
Comments:







































for constant names







Yes
Comments:







































for function names







N/A
Comments:







































for other names (component, memory







N/A
Comments:

mapping handles, typedefs, etc.)



































Verified no possibility of uninitialized variables being








Yes
Comments:
written to component outputs or IRVs




































Any requirements traceability tags have been removed








N/A
Comments:
from at least the changed areas of code




































All variables are declared at the function level.








N/A
Comments:






































Synergy version matches change history








Yes
Comments:
and Version Control version in file comment block




































Change log contains detailed description of changes








Yes
Comments:
(including any anomaly number(s) being fixed) and












Work CR number














































Code accurately implements SWC Design (Document








Yes
Comments:
or Model) in all areas where code was changed and/or












Simulink model was color-coded as changed and/or






















mentioned in SWC Design change log.













































Code comparison against previous version matches








Yes
Comments:
changes needed as described by the work CR(s), all












parent CRs and parent anomalies, and the SWC






















Design change log.














































Verified no Compiler Errors or Warnings








Yes
Comments:
(and verified for all possible combinations












of any conditionally compiled code)














































Component.h is included








N/A
Comments:






































All other includes are actually needed. (System includes








Yes
Comments:
only allowed in Nexteer library components)




































Software Design and Coding Standards followed:











Version: 2.01

























Code comments are clear, correct, and adequate







Yes
Comments:

and have been updated for the change: [N40] and












all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:

standards and contain correct information: [N41], [N42]




































Function comment blocks are per standards and







N/A
Comments:

contain correct information: [N43]




































Code formatting (indentation, placement of







Yes
Comments:

braces, etc.) is per standards: [N5], [N55], [N56],












[N57], [N58], [N59]














































Embedded constants used per standards; no







Yes
Comments:

"magic numbers": [N12]




































Memory mapping for non-RTE code







N/A
Comments:

is per standard




































All access of motor control loop data uses macros







N/A
Comments:

generated by the motor control manager




































All loops have termination conditions that ensure







Yes
Comments:

finite loop iterations: [N63]




































All divides protect against divide by zero







N/A
Comments:

if needed: [N65]




































All integer division and modulus operations







N/A
Comments:

handle negative numbers correctly: [N76]




































All typecasting and fixed point arithmetic,







N/A
Comments:

including all use of fixed point macros and












timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsigned conversions ensure the.







N/A
Comments:

float value is non-negative: [N67]




































All conversions between signed and unsigned







N/A
Comments:

types handle msb==1 as intended: [N78]




































All pointer dereferencing protects against







N/A
Comments:

null pointer if needed: [N70]




































Component outputs are limited to the legal range







Yes
Comments:

defined in the SWC Design DataDict.m file : [N53]




































All code is mapped with SWC Design (all SWC







Yes
Comments:

Design subfunctions and/or model blocks identified












with code comments; all code corresponds to






















some SWC Design subfunction and/or model block):






















[N40]














































Any other violations of design and coding









N/A
Comments:

standards noticed during the review are noted in the












comments section for rework.













































Anomaly or Design Work CR created








Yes
Comments: List Anomaly or CR numbers: Anomaly 20644 Issue 1B and 1C were not addressed due to time considerations. Anomaly 19666 issue 4 is a test issue that should be addressed by test team but does not affect design or code.
for any SWC Design corrections needed










































General Notes / Comments:









































Review Board:


























Change Owner:

Shawn Penning


Review Date :

04/06/18
































Lead Peer Reviewer:


Brendon Binder


Approved by Reviewer(s):



Yes










































































































SWC owner and/or
SWC Design author:
Nakul Shah







Comments:




















































Integrator and or
SW lead:
Akilan Rathakrishnan







Comments:













































































Unit test co-ordinator:











Comments:
























































Other Reviewer(s):









































































Rationale/justification for items marked "No" approved by:





































































Sheet 4: MDD






















Rev 2.0121-Feb-18
Nexteer SWC Implementation Peer Review Meeting Log (MDD Review)


























MDD Name:







TEstimn_MDD.docx







MDD Revision:

4


























Source File Name:








TEstimn.c





Source File Revision:


4

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























Quality Check Items:




































Rationale is required for all answers of No










Synergy version matches document








Yes
Comments:









































Change log contains detailed description of changes








Yes
Comments:









































Changes Highlighted (for Unit Tester)








Yes
Comments:









































Diagrams have been included per MDD Guideline








N/A
Comments:

and reviewed






































All Design Exceptions and Limitations are listed








N/A
Comments:









































Design rationale given for all global








N/A
Comments:

data not communicated through RTE ports, per













Design and Coding Standards rules [N9] and [N10].
















































All implementation details that differ from the SWC








N/A
Comments:

Design are noted and explained in Design Rationale






































All Unit Test Considerations have been described








Yes
Comments:









































General Notes / Comments:









































Review Board:


























Change Owner:

Shawn Penning


Review Date :

04/06/18
































Lead Peer Reviewer:


Brendon Binder


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Rationale/justification for items marked "No" approved by:












































Sheet 5: PolySpace






















Rev 2.0121-Feb-18














Nexteer SWC Implementation Peer Review Meeting Log (PolySpace Review)























































Source File Name:


TEstimn.c




Source File Revision:


4















Source File Name:

















Source File Revision:



















Source File Name:

















Source File Revision:




























































EA4 Static Analysis Compliance Guideline version:











1.04.00


























Poly Space version:



2013b





TL109A sub project version:

2.3.0































































Quality Check Items:






















































Rationale is required for all answers of No

































































tools/local folders' header files are appropriate and










Yes
Comments:















function prototypes match the latest component version






































































100% Compliance to the EA4 Static Analysis

Yes
Comments:















Compliance Guideline






































































Are previously added justification and deviation










Yes
Comments:















comments still appropriate






































































Do all MISRA deviation comments use approved










Yes
Comments:















deviation tags






































































For any component source files (.c, .h, generated Cfg.c and Cfg.h)












N/A
Comments:















with conditional compilation, has Polyspace been run with all






























combinations of build constants that can be used together in a build?







































(Note which conditional compilation results have been archived)
















































































Codemetrics count OK










Yes
Comments:















for all functions in the component per Design





























and Coding Standards rule [N47]


































































































































































General Notes / Comments:












































































































Review Board:























































Change Owner:

Shawn Penning




Review Date :

04/06/18






























































Lead Peer Reviewer:


Brendon Binder




Approved by Reviewer(s):



Yes





























































Other Reviewer(s):










































































































































Rationale/justification for items marked "No" approved by:












































































Sheet 6: help

Summary sheet:






Intended Use: Identify which component is being reviewed. This should match the component short name from the DataDict.m fileand the middle part of the Synergy project name, e.g. Assi for the SF001A_Assi_Impl Synergy project







Intended Use: Identify the implementation baseline name intended to be used for the changed component when changes are approved E.g. SF001A_Assi_Impl_1.2.0





Intended Use: Identify the developer who made the change(s) being reviewed




Intended Use: Identify the Implementation Work CR whose work is being reviewed (may be more than one)




Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed.





Source code:





This item includes looking at all layers of Simulink model for possible color coding not reflected at a higher level, and includes looking at any intermediate SWC Design versions between the version being implemented and the version that was included as a subproject in the previous implementation.
Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified
file in the working project)





Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)



Intended Use: Synergy version number of the file being reviewed. (Version number that Synergy displays on the checked out or unmodified file in the working project)







Intended Use: For SWC Designs, list the Synergy baseline number (just the number part of the Synergy baseline name) of the SWC Design baseline being implemented. E.g., for SF001A_Assi_Design_1.3.1, this field would say "1.3.1"









Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s).















Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored).













Intended Use: list version/revision of latest released Software Design and Coding Standards document.





Davinci Files





Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs








Polyspace





eg. 2013b





Integration manual





Intended Use: Identify which file is being reviewed





Intended Use: Identify which version of the integration manual has been reviewed.



Synergy





Refer to EA4 Common Naming Conventions document, section “Synergy Baseline Names for core components”





The following subprojects should be included for all component implementations:
• AR200A_ArSuprt_Impl
• AR201A_ArCplrSuprt_Impl
• TL101A_CptRteGen
• TL103A_CplrSuprt
• TL109A_SwcSuprt
• Corresponding _Design project used for the implementation

The following subprojects should be included as needed by each component:
• AR10xx_Nxtr*_Impl library components as needed by each component
• AR202x_MicroCtrlrSuprt_Impl as needed (for register header files for components making direct register access)[add notes about when to add a stub header file]
• Xx999x_xxxxGlbPrm_Impl as needed by each component
• TL105A_Artt for components with generated content

The following should NOT be included as subprojects:
• TL107x_DavinciSuprt (aka StdDef)
• TL100A_QACSuprt (QAC subproject was previously included but should be removed going forward)
• Any other component (not mentioned anywhere above) whose .h file is needed. For these components, a “stub” .h file should be created, containing only the multiple include protection and the definitions and function prototypes actually needed by the component with the #include, and placed in the “including” component’s local\include folder.

misc in Summary sheet





(integrator, designer, unit test coordinator, etc.)





For a new component, use number of lines in all source files reviewed, including files in the src and include folders and any generated cfg.h and cfg.c files.  For a changed component, try to add up how many lines, including comments and blank lines, were in the changed areas that were reviewed. Not just the actual changed lines, but the number of lines in the blocks of code you had to look at to review the change.
add up the number of ports, number of PIM variables, number if IRVs, number of runnables, number of NVM blocks in the component  (all of them for review of a new component, the new and modified ones for review of a change)
add the number of pages in the MDD and integration manual for a new component; for a modified component, count the number of pages that contained a change.












ReviewerRequired attendance for this type of changeReview spreadsheet tab(s)
Component group peerAllAll
Component owner and/or SWC Design author*Initial creation of any new component
*Simulink model changes (any change to the model other than just updating the change log)
Source
Integrator and/or SW lead of first program planning to use the component*Initial creation of any new component
*new or changed NVM blocks, NVM datatypes, or NVM usage (added or removed or changed NVM API calls in any runnable)
*Major rev (X changed in the X.Y.X design baseline number; means there was a component interface change)
*new or changed config params
*all MM component changes
Davinci files, Integration manual, source for NVM changes and for all MM component changes.
Unit test coordinatorFixes for coverage issuesSource
SQANoneNone








For each reviewer category listed on each tab, there should either be
• the name of the reviewer who attended
or
• a comment indicating
o why that reviewer was not required for this change
or
o who approved holding the review without that required reviewer (approval must
be from the software manager or a software supervisor)


Sheet 7: Version History















File Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus






Draft/ Released






































































Template Version History





VersionDescriptionAuthor(s)Revision DateApproved ByApproved DateStatus
1.0Initial VersionSW Engineering team24-May-15NANAReleased
1.01Changed name to be EA4 specificSW Engineering team25-Jun-15NANAReleased
1.02Modified Summary Sheet General Guidelines, Clarified wording on first item in Synergy project sheet.SW Engineering team30-Jul-15NANAReleased
1.02Made corrections and clarifications to Source Code check list.SW Engineering team30-Jul-15NANAReleased
1.02updated Davinci, MDD, and Polyspace/QAC tabsSW Engineering team30-Jul-15NANAReleased
1.03Aligned to portal version guidelinesUmesh Sambhari21-Nov-17NANAReleased
2.00Summary sheet template:
Changed title to indicate Implementation Peer Review
Corrected and/or clarified mouse hover comments, added instructions, renamed some fields.
Changed the default setting to "No" on the items reviewed
SW Engineering team29-Nov-17Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod ShankarNAReleased
Source code template:
Removed hyperlink for naming conventions, corrected name of naming conventions document, added version field for naming conventions document.
Changed item about requirements tags to reflect that they should be removed
Added clarification that all combinations of conditionally compiled code must be checked
Item about accurately implementing SWC Design is modified and a new item added, both to clarify where to look when determining needed changes.
Added point for version of common naming conventions
Reworded multiple items for clarity
SW Engineering team29-Nov-17
Synergy project template:
added items for file/folder structure
added point on .gpj file in tools folder
SW Engineering team29-Nov-17
Davinci files template:
Clarified the StdDef item
Added new item for OBSOLETE
Clarified item on datadict.m comparison
Removed the references to .m file helper tool
Updated to reflect that all component should now use only implementation data types
Added points on PIMs and NVMs
SW Engineering team29-Nov-17
All template tabs:
Added/clarified/removed mouse hover comments.
Updated Review Board section
Removed the gridlines from all tabs
Updated titles to say "Nexteer SWC Implementation Peer Review"
Changed all occurences of "FDD" to "SWC Design"
SW Engineering team29-Nov-17
2.01Added a help tab and appropriate links
Added field on Summary sheet to report hours spent and content reviewed
Changed wording in an item in Polyspace tab and Source code tab
SW Engineering team21-Feb-18Lonnie Newton, Steven Horwath, Kevin Smith, Lucas Wendling, Vinod Shankar21-Feb-18Released

44 - Component Implementation

Component Implementation

Component Documentation

44.1 - TqLoa_DesignReview


Overview

Summary Sheet
Synergy Project


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF048A_TqLoa_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF048A_TqLoa_Impl_1.1.1

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Matt Leser
Work CR ID:


EA4#8047





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


N/ASource Code


N/APolySpace









































N/AIntegration Manual


N/ADavinci Files








































































Comments:

Quality update to bring in new design version



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Matt Leser


Review Date :

10/27/16
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):


Shruthi R





































































44.2 - TqLoa_IntegrationManual

Integration Manual

For

TqLoa

VERSION: 1.0

DATE: 24-Aug-2015

Prepared By:

Spandana Balani,

Nexteer Automotive,

Saginaw, MI, USA

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.024-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 Dependencies 7

3.1 SWCs 7

3.2 Global Functions(Non RTE) to be provided to Integration Project 7

4 Configuration REQUIREMeNTS 8

4.1 Build Time Config 8

4.2 Configuration Files to be provided by Integration Project 8

4.3 Da Vinci Parameter Configuration Changes 8

4.4 DaVinci Interrupt Configuration Changes 8

4.5 Manual Configuration Changes 8

5 Integration DATAFLOW REQUIREMENTS 9

5.1 Required Global Data Inputs 9

5.2 Required Global Data Outputs 9

5.3 Specific Include Path present 9

6 Runnable Scheduling 10

7 Memory Map REQUIREMENTS 11

7.1 Mapping 11

7.2 Usage 11

7.3 NvM Blocks 11

8 Compiler Settings 12

8.1 Preprocessor MACRO 12

8.2 Optimization Settings 12

9 Appendix 13

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 04.02.00
<2><Software Naming Conventions>Process 04.02.00
<3><Coding standards>Process 04.02.00
<4>FDD – SF048A_TqLoa_DesignSee Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

Include NxtrFil.h in Rte_UserTypes.h header file

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
TqLoaInit1RTE_Init
RunnableScheduling RequirementsTrigger
TqLoaPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

44.3 - TqLoa_MDD

Module Design Document

For

TqLoa

Aug 24, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Spandana Balani,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorVersionDate
Initial VersionSB1.024-Aug-2015


Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 TqLoa & High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of TqLoa 6

3.2 Data Flow Diagram 6

3.2.1 Component level DFD 6

3.2.2 Function level DFD 6

4 Constant Data Dictionary 7

4.1 Program (fixed) Constants 7

4.1.1 Embedded Constants 7

5 Software Component Implementation 8

5.1 Sub-Module Functions 8

5.1.1 Init: TqLoaInit1 8

5.1.2 Per: TqLoaPer1 8

5.2 Server Runables 8

5.3 Interrupt Functions 8

5.4 Module Internal (Local) Functions 8

5.5 GLOBAL Function/Macro Definitions 8

6 Known Limitations with Design 9

7 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

Introduction

Purpose

Scope

TqLoa & High-Level Description

Refer FDD

Design details of software module

Refer FDD

Graphical representation of TqLoa

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer .m file
INVGRVYTLCON_SECSQDPERMTR_F32Single precisionSecSqdPerMtr1.0/9.81
DEADZONEOUTPUT_MOTNWTMTR_F32Single precisionMotNwtMtr0

Software Component Implementation

Refer FDD

Sub-Module Functions

Init: TqLoaInit1

Refer FDD

Per: TqLoaPer1

Refer FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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 GuidelineProcess 04.02.00
3Software Naming Conventions.docProcess 04.02.00
4Software Design and Coding Standards.docProcess 04.02.00
5FDD – SF048A_TqLoa_DesignSee Synergy SubProject version

45 - Component Implementation

Component Implementation

Component Documentation

45.1 - TunSelnAuthy_IntegrationManual

Integration Manual

For

TunSelnAuthy

VERSION: 1.0

DATE: 07-OCT-2015

Prepared By:

Nick Saxton,

Nexteer Automotive,

Saginaw, MI, USA

Revision History

DescriptionAuthorVersionDate
Initial versionN. Saxton1.007-Oct-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 Non RTE NvM Blocks 10

7.4 RTE NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1EA4 Software Naming Conventions.doc01.00.00
2Software Design and Coding Standards.doc2.1
3SF023A_ TunSelnAuthy_DesignSee Synergy subproject version

Dependencies

SWCs

ModuleRequired Feature
None

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

See DataDict.m file

Required Global Data Outputs

See DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
TunSelnAuthyInit1RTE(Init)
RunnableScheduling RequirementsTrigger
RtCalChgReqNoneOn event
XcpCalChgReqNoneOn event

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

45.2 - TunSelnAuthy_MDD

Module Design Document

For

TunSelnAuthy

June 17, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Krishna Anne,

Nexteer Automotive,

Saginaw, MI, USA
Change History

DescriptionAuthorDate
Initial VersionN. Saxton09-Oct-2015
Updated as per FDD v1.1.0Krishna Anne17-Jun-2016


Table of Contents1 TunSelnAuthy High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of TunSelnAuthy 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1 Sub-Module Functions 7

4.1.1 Init: TunSelnAuthyInit1 7

4.1.1.1 Design Rationale 7

4.1.1.2 Module Outputs 7

4.2 Server Runables 7

4.2.1 RtCalChgReq 7

4.2.1.1 Design Rationale 7

4.2.1.2 (Processing of function)……… 7

4.2.2 XcpCalChgReq 7

4.2.2.1 Design Rationale 7

4.2.2.2 (Processing of function)……… 7

4.3 Interrupt Functions 7

4.3.1 Interrupt Function Name 7

4.4 Module Internal (Local) Functions 7

4.5 GLOBAL Function/Macro Definitions 7

5 Known Limitations with Design 9

6 UNIT TEST CONSIDERATION 10

Appendix A Abbreviations and Acronyms 11

Appendix B Glossary 12

Appendix C References 13

TunSelnAuthy High-Level Description

Refer FDD

Design details of software module

Refer FDD

Graphical representation of TunSelnAuthy

Data Flow Diagram

Refer FDD

Component level DFD

Refer FDD

Function level DFD

Refer FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

Constant NameResolutionUnitsValue
Refer .m file for constants

Software Component Implementation

Sub-Module Functions

Init: TunSelnAuthyInit1

Design Rationale

Refer FDD

Module Outputs

None

Server Runables

RtCalChgReq

Design Rationale

Refer FDD

(Processing of function)………

Refer FDD

XcpCalChgReq

Design Rationale

Refer FDD

(Processing of function)………

Refer FDD

Interrupt Functions

None

Interrupt Function Name

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

None

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 – SF023A_TunSelnAuthy_DesignSee Synergy subproject version

45.3 - TunSelnAuthy_PeerReview


Overview

Summary Sheet
Davinci Files
Source Code
PolySpace
Synergy Project


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet

























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF023A_TunSelnAuthy_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF023A_TunSelnAuthy_Impl_1.2.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Brendon Binder
Work CR ID:


EA4#12457





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:












































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


NoSource Code


NoPolySpace









































N/AIntegration Manual


NoDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used









Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved









Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the









N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous









Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed









Yes
Comments:

























































Naming conventions followed. All names should









Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:






















Not changed









DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Brendon Binder
Review Date :

06/22/17
Component Type :


Application



























Lead Peer Reviewer:


Krishna Anne
Approved by Reviewer(s):



Yes

































Other Reviewer(s):










































































Sheet 3: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


TunSelnAuthy.c
Source File Revision:


3
Header File Name:


TunSelnAuthy.h
Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. 1

























MDD Name:

TunSelnAuthy_MDD.docx
Revision:
2

























FDD/SCIR/DSR/FDR/CM Name:




SF023A_TunSelnAuthy_Design
Revision:
1.1.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







Yes
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











Requirements Traceability tags were removed
























All variables are declared at the function level.








Yes
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








Yes
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:
















































Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








Yes
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







Yes
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







Yes
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







Yes
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







Yes
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







Yes
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Brendon Binder


Review Date :

06/22/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


TunSelnAuthy.cSource File Revision:


3

Source File Name:



Source File Revision:





Source File Name:



Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b 2013b
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








N/A
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








N/A
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

Yes
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Brendon Binder


Review Date :

06/22/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 5: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Brendon Binder


Review Date :

06/22/17
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































46 - Component Implementation

Component Implementation

Component Documentation

46.1 - VehSigCdng_Integration Manual

Integration Manual

For

VehSigCdng

VERSION: 1.0

DATE: 13-July-2015

Prepared By:

Spandana Balani

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial versionSB1.013-jul-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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 file Specific Include Path present 8

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
<ADD more to the table if applicable>

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
<1><MDD Guidelines>Process 4.01.00
<2><Software Naming Conventions>Process 4.01.00
<3><Coding standards>Process 4.01.00
<4><FDD SF033A_VehSigCdng_Design >See Synergy Subproject version

Dependencies

SWCs

ModuleRequired Feature
NoneN/A

Note : Referencing the external components should be avoided in most cases. Only in unavoidable circumstance external components should be referred. Developer should track the references.

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ConstantsNotes
FLTINJENASet to STD_ON for Fault injection

Configuration Files to be provided by Integration Project

Include NxtrFil.h in Rte_UserTypes.h header file.

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
N/A

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
N/A

Manual Configuration Changes

ConstantNotesSWC
N/A

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

Refer DataDict.m file

Required Global Data Outputs

Refer DataDict.m file

file Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
VehSigCdngInit1On InitRte_Init
RunnableScheduling RequirementsTrigger
VehSigCdngPer1NoneRTE(2ms)

.

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
None

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
None

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

46.2 - VehSigCdng_MDD

Module Design Document

For

VehSigCdng

Sep 20, 2016

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Spandana Balani
Change History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSB113-Jul-2015
2Updated for FDD v2.0.0NS22-Jun-2016
3Updated for FDD v2.2.0SB320-Sep-2016

Table of Contents

1 Introduction 4

1.1 Purpose 4

1.2 Scope 4

2 VehSigCdng High-Level Description 5

3 Design details of software module 6

3.1 Graphical representation of VehSigCdng 6

3.2 Data Flow Diagram 8

3.2.1 Component level DFD 8

3.2.2 Function level DFD 8

4 Constant Data Dictionary 9

4.1 Program (fixed) Constants 9

4.1.1 Embedded Constants 9

5 Software Component Implementation 10

5.1.1 Sub-Module Functions 10

5.1.2 Interrupt Service Routines 10

5.1.3 Server Runnable Functions 10

5.1.4 Module Internal (Local) Functions 10

5.1.5 Transition Functions 11

6 Known Limitations with Design 13

7 UNIT TEST CONSIDERATION 14

Appendix A Abbreviations and Acronyms 15

Appendix B Glossary 16

Appendix C References 17

Introduction

Purpose

Scope

VehSigCdng High-Level Description

Refer to FDD

Design details of software module

Graphical representation of VehSigCdng

Data Flow Diagram

Component level DFD

Refer to FDD

Function level DFD

Refer to FDD

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

See .m file

Software Component Implementation

Sub-Module Functions

Initialization sub-module VehSigCdngInit1()

Periodic sub-module VehSigCdngPer1()

Design Rationale - Fault Injection client call is conditional compiled based on “FLTINJENA” build constant.

Interrupt Service Routines

None

Server Runnable Functions

None

Module Internal (Local) Functions

Local Function #1

Refer to VehSpd block in the model

Function NameVehSigCdng_VehSpdTypeMinMax
Arguments PassedVehSpdSerlCom_Kph_T_f32Float320511
VehSpdVldSerlCom_Cnt_T_lgcBooleanFALSETRUE
VehSpdOvrd_Kph_T_f32Float320511
VehSpdOvrdVld_Cnt_T_loglBooleanFALSETRUE
VehSpd_Kph_T_f32Float320511
VehSpdVld_Cnt_T_loglBooleanFALSETRUE
Return ValueN/A

Notes: VehSpd_Kph_T_f32, VehSpdVld_Cnt_T_logl are the outputs of the function

Local Function #2

Refer to VehLgtA block in the model

Function NameVehSigCdng_VehLgtATypeMinMax
Arguments PassedVehLgtASerlCom_MpSecSq_T_f32Float32-180180
VehLgtAVldSerlCom_Cnt_T_lgcBooleanFALSETRUE
VehLgtA_KphpS_T_f32Float32-5050
VehLgtAVld_Cnt_T_loglBooleanFALSETRUE
Return Value(if no value returned, write N/A)

Notes: VehLgtA_KphpS_T_f32, VehLgtAVld_Cnt_T_logl are the outputs of the function

Local Function #3

Refer to VehLatA block in the model

Function NameVehSigCdng_VehLatATypeMinMax
Arguments PassedVehLatASerlCom_MpSecSq_T_f32Float32-1010
VehLatAVldSerlCom_Cnt_T_lgcBooleanFALSETRUE
VehLatA_MpSecSq_T_f32Float32-1010
VehLatAVld_Cnt_T_loglBooleanFALSETRUE
Return Value(if no value returned, write N/A)

Notes: VehLatA_MpSecSq_T_f32, VehLatAVld_Cnt_T_logl are the outputs of the function

Local Function #4

Refer to VehYawRate block in the model

Function NameVehSigCdng_VehYawRateTypeMinMax
Arguments PassedVehYawRateSerlCom_DegpS_T_f32Float32-120120
VehYawRateVldSerlCom_Cnt_T_lgcBooleanFALSETRUE
VehYawRate_DegpS_T_f32Float32-120120
VehYawRateVld_Cnt_T_loglBooleanFALSETRUE
Return Value(if no value returned, write N/A)

Notes: VehYawRate_DegpS_T_f32, VehYawRateVld_Cnt_T_logl are the outputs of the function

Local Function #5

Refer to “Lateral Acceleration Estimation” block in the model

Function NameVehSigCdng_LatAEstmnTypeMinMax
Arguments PassedVehYawRate_DegpS_T_f32Float32-120120
VehYawRateVld_Cnt_T_lgcBooleanFALSETRUE
VehSpd_Kph_T_f32Float320511
VehSpdVld_Cnt_T_loglBooleanFALSETRUE
VehLatAEstimd_MtrPerSecSqd_T_f32Float32-1010
VehLatAEstimdVld_Cnt_T_loglBooleanFALSETRUE
Return Value(if no value returned, write N/A)

Notes: VehLatAEstimd_MtrPerSecSqd_T_f32, VehLatAEstimdVld_Cnt_T_logl are the outputs of the function

Transition Functions

None

Known Limitations with Design

None

UNIT TEST CONSIDERATION

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.doc2.0
4Software Design and Coding Standards.doc2.1
5FDD – SF033A_VehSigCdng_DesignSee Synergy Sub project version

46.3 - VehSigCdng_PeerReviewChecklist


Overview

Summary Sheet
Synergy Project
Davinci Files
Source Code
PolySpace


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF033A_VehSigCdng_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF033A_VehSigCdng_Impl_2.4.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Shawn Penning
Work CR ID:


EA4#12459





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:
















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































N/AMDD


YesSource Code


YesPolySpace









































N/AIntegration Manual


YesDavinci Files








































































Comments:






























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/13/17
































Lead Peer Reviewer:


Brendon Binder


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































Brionna Spencer






























Sheet 3: Davinci Files






















Rev 1.28-Jun-15
Peer Review Meeting Log (Davinci Review)


























Quality Check Items:




































Rationale is required for all answers of No










Only StdDef Port types are used








Yes
Comments:










































For components not using application data types, do all








Yes
Comments:



port interface names end in PortIf and a sequence number





























































Non-program-specific components saved








Yes
Comments:




in Autosar 4.0.3 format




































*Cfg.arxml.TT: Verfied Davinci Configurator imported the








N/A
Comments:




change correctly




































*Cfg.h.TT: Verfied Davinci Configurator generates








N/A
Comments:










the configuration header(s) file correctly
kzshz2: Either a generic sandbox or a baselined integration project can be used to verify



























kzshz2: Either a generic sandbox or a baselined integration project can be used to verify
















All changed files have been compared against previous








Yes
Comments:




versions (If available)

kzshz2: Intended Use: Identify if previous version was compared and only the expected change(s) was present. This is for text files only, not binary or GUIs Rationale: This is helpful in identifying unapproved (intended or mistaken) changes.


































Automated validation check is performed








Yes
Comments:

























































Naming conventions followed. All names should








Yes
Comments:










match DataDict.m













































Sender/Receiver port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Calibration port properties match DataDict.m








Yes
Comments:










file (use .m file helper tool)













































Components using application data types:























Sender/Receiver port initialization values match







N/A
Comments:










DataDict.m file














































Calibration port initialization values match







N/A
Comments:










DataDict.m file













































Components not using application data types:























Sender/Receiver port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Calibration port initialization values match







Yes
Comments:










DataDict.m file and have been converted to counts






















for fixed point types














































Mapping set and all unused items have been







Yes
Comments:










removed













































All sender/receiver port read/writes using direct








Yes
Comments:










read/writes(List justification if not)













































Runnable calling frequencies match FDD








Yes
Comments:

































DataDict.m display variables: created as








N/A
Comments:









PerInstanceMemory. Matches the FDD





































Component is correct component type








Yes
Comments:











































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning
Review Date :

07/13/17
Component Type :


CDD



























Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):



Yes

































Other Reviewer(s):






































Brionna Spencer





























Sheet 4: Source Code






















Rev 1.28-Jun-15
Peer Review Meeting Log (Source Code Review)

























Source File Name:


VehSigCdng.c

Source File Revision:


9
Header File Name:


N/A

Header File Revision:


kzshz2: Intended Use: Identify which version of the source file is being review. Rationale: Required for traceability between source code and review. Auditors will likely require this. N/A

























MDD Name:

VehSigCdng_MDD.docx

Revision:
5

























FDD/SCIR/DSR/FDR/CM Name:




SF033A_VehSigCdng_Design

Revision:
2.3.0


























Quality Check Items:



































Rationale is required for all answers of No









Working EA4 Software Naming Convention followed:















































for variable names







N/A
Comments:

















































for constant names







N/A
Comments:

















































for function names







N/A
Comments:

















































for other names (component, memory







N/A
Comments:










mapping handles, typedefs, etc.)




































All paths assign a value to outputs, ensuring








N/A
Comments:









all outputs are initialized prior to being written





































Requirements Tracability tags in code match the requirements tracability in the FDD








N/A
Comments:









requirements tracability in the FDD











Tags Removed
























All variables are declared at the function level.








N/A
Comments:
























Synergy version matches change history





kzshz2: Intended Use: Indicate that the the versioning was confirmed by the peer reviewer(s). Rationale: There have been many occassions where versions were not updated in files and as a result Unit Test were referencing wrong versions. This often time leads to the need to re-run of batch tests.


Yes
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








Yes
Comments:



and Work CR number





































Code accurately implements FDD (Document or Model)








N/A
Comments:










































Verified no Compiler Errors or Warnings


KMC: Intended Use: To confirm no compiler errors or warnings exist for the code under review (warnings from contract header files may be ignored). Rationale: This is needed to ensure there will be no errors discovered at the time of integration. A Sandox project should be used; QAC can find compiler errors but not warnings.





Yes
Comments:






















Need to compile for Std_Off and Std_On; Done, left in STD_OFF
























Component.h is included








N/A
Comments:
























All other includes are actually needed. (System includes








N/A
Comments:









only allowed in Nexteer library components)





































Software Design and Coding Standards followed:











Version: 2.1

























Code comments are clear, correct, and adequate







N/A
Comments:










and have been updated for the change: [N40] and













all other rules in the same section as rule [N40],






















plus [N75], [N12], [N23], [N33], [N37], [N38],






















[N48], [N54], [N77], [N79], [N72]














































Source file (.c and .h) comment blocks are per







N/A
Comments:










standards and contain correct information: [N41], [N42]





































Function comment blocks are per standards and







N/A
Comments:










contain correct information: [N43]





































Code formatting (indentation, placement of







N/A
Comments:










braces, etc.) is per standards: [N5], [N55], [N56],













[N57], [N58], [N59]














































Embedded constants used per standards; no







N/A
Comments:










"magic numbers": [N12]





































Memory mapping for non-RTE code







N/A
Comments:










is per standard





































All execution-order-dependent code can be







N/A
Comments:










recognized by the compiler: [N80]





































All loops have termination conditions that ensure







N/A
Comments:










finite loop iterations: [N63]





































All divides protect against divide by zero







N/A
Comments:










if needed: [N65]





































All integer division and modulus operations







N/A
Comments:










handle negative numbers correctly: [N76]





































All typecasting and fixed point arithmetic,







N/A
Comments:










including all use of fixed point macros and













timer functions, is correct and has no possibility






















of unintended overflow or underflow: [N66]














































All float-to-unsiged conversions ensure the.







N/A
Comments:










float value is non-negative: [N67]





































All conversions between signed and unsigned







N/A
Comments:










types handle msb==1 as intended: [N78]





































All pointer dereferencing protects against







N/A
Comments:










null pointer if needed: [N70]





































Component outputs are limited to the legal range







N/A
Comments:










defined in the FDD DataDict.m file : [N53]





































All code is mapped with FDD (all FDD







N/A
Comments:










subfunctions and/or model blocks identified













with code comments; all code corresponds to






















some FDD subfunction and/or model block): [N40]













































Review did not identify violations of other








Yes
Comments:









coding standard rules





































Anomaly or Design Work CR created








N/A
Comments: List Anomaly or CR numbers









for any FDD corrections needed































































General Notes / Comments:

















































































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/14/17
































Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):





Yes































Other Reviewer(s):






































Brionna Spencer





























Sheet 5: PolySpace






















Rev 1.28-Jun-15
Peer Review Meeting Log (QAC/PolySpace Review)


























Source File Name:


VehSigCdng.cSource File Revision:


9

Source File Name:















Source File Revision:





Source File Name:















Source File Revision:






























EA4 Static Analysis Compliance Guideline version:







01.02.00







Poly Space version:


Windows User: eg. 2013b 2013B
Polyspace sub project version:




Windows User: eg. TL108a_PolyspaceSuprt_1.0.0


QAC version:


Windows User: eg 8.1.1-R

QAC sub project version:




Windows User: eg. TL_100A_1.1.0



























Quality Check Items:




































Rationale is required for all answers of No



































Contract Folder's header files are appropriate and





kzshz2: Intended Use: Identify that the contract folder contains only the information required for this component. All other variables, constants, function prototypes, etc. should be removed. Rationale: This will help avoid unit testers having to considers object not used. It will also avoid having other files required for QAC.


Yes
Comments:




function prototypes match the latest component version







































100% Compliance to the EA4 Static AnalysisYes
Comments:





Compliance Guideline





























Are previously added justification and deviation








Yes
Comments:





comments still appropriate






































Do all MISRA deviation comments use approved








Yes
Comments:





deviation tags






































Cyclomatic complexity and Static path count OK






Creager, Kathleen: use Browse Function Metrics, STCYC and STPTH

N/A
Comments:





for all functions in the component per Design














and Coding Standards rule [N47]

































































































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Shawn Penning


Review Date :

07/14/17
































Lead Peer Reviewer:


Brendon Binder
Approved by Reviewer(s):





Yes































Other Reviewer(s):






































Brionna Spencer




























47 - Component Implementation

Component Implementation

Component Documentation

47.1 - VehSpdLimr_DesignReview


Overview

Summary Sheet
Synergy Project


Sheet 1: Summary Sheet
























Rev 1.28-Jun-15

Peer Review Summary Sheet


























Synergy Project Name:


kzshz2: Intended Use: Identify which component is being reviewed. This should be the Module Short Name from Synergy Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF016A_VehSpdLimr_Impl
Revision / Baseline:


kzshz2: Intended Use: Identify which Synergy revision of this component is being reviewed Rationale: Required for traceability. It will help to ensure this form is not attaced to the the wrong change request. SF016A_VehSpdLimr_Impl_2.0.0

























Change Owner:


kzshz2: Intended Use: Identify the developer who made the change(s) Rationale: A change request may have more than one resolver, this will help identify who made what change. Change owner identification may be required by indusrty standards. Nick Saxton
Work CR ID:


EA4#5502





























kzshz2: Intended Use: Intended to identify at a high level to the reviewers which areas of the component have been changed. Rationale: This will be good information to know when ensuring appropriate reviews have been completed. Modified File Types:















































































































































































kzshz2: Intended Use: Identify who where the reviewers, what they reviewed, and if the reviewed changes have been approved to release the code for testing. Comments here should be at a highlevel, the specific comments should be present on the specific review form sheet. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. ADD DR Level Move reviewer and approval to individual checklist form Review Checklist Summary:






















































Reviewed:































MDD


Source Code


PolySpace









































Integration Manual


Davinci Files








































































Comments:

Bringing in new design project to match up with implementation



























































































General Guidelines:
- The reviews shall be performed over the portions of the component that were modified as a result of the Change Request.
- New components should include FDD Owner and Integrator as apart of the Group Review Board (Source Code, Integration Manual, and Davinci Files)
- Enter any rework required into the comment field and select No. When the rework is complete, review again using this same review sheet and select Yes. Add date and additional comment stating that the rework is completed.
- To review a component with multiple source code files use the "Add Source" button to create a Source code tab for each source file.
- .h file should be reviewed with the source file as part of the source file.





















Sheet 2: Synergy Project

Peer Review Meeting Log (Component Synergy Project Review)



















































Quality Check Items:




































Rationale is required for all answers of No










New baseline version name from Summary Sheet follows








Yes
Comments:



naming convention





































Project contains necessary subprojects








Yes
Comments:










































Project contains the correct version of subprojects








Yes
Comments:










































Design subproject is correct version








Yes
Comments:











































General Notes / Comments:



























































LN: Intended Use: Identify who were the reviewers and if the reviewed changes have been approved. Rationale: Since this Form will be attached to the Change Request it will confirm the approval and provides feedback in case of audits. KMC: Group Review Level removed in Rev 4.0 since the design review is not checked in until approved, so it would always be DR4. Review Board:


























Change Owner:

Nick Saxton


Review Date :

04/26/16
































Lead Peer Reviewer:


Krishna Anne


Approved by Reviewer(s):



Yes































Other Reviewer(s):









































































47.2 - VehSpdLimr_IntegrationManual

Integration Manual

For

SF016A VehSpdLimr

VERSION: 1.0

DATE: 11-Aug-2015

Prepared By:

Sarika Natu,

KPIT Technologies,

India

Location: The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

DescriptionAuthorVersionDate
Initial versionSarika Natu1.011-Aug-2015

Table of Contents

1 Abbrevations And Acronyms 4

2 References 5

3 Dependencies 6

3.1 SWCs 6

3.2 Global Functions(Non RTE) to be provided to Integration Project 6

4 Configuration REQUIREMeNTS 7

4.1 Build Time Config 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

6 Runnable Scheduling 9

7 Memory Map REQUIREMENTS 10

7.1 Mapping 10

7.2 Usage 10

7.3 NvM Blocks 10

8 Compiler Settings 11

8.1 Preprocessor MACRO 11

8.2 Optimization Settings 11

9 Appendix 12

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesSoftware Process Release 04.02.00
2Software Naming ConventionsSoftware Process Release 04.02.00
3Design and Coding standardsSoftware Process Release 04.02.00
4FDD – SF016A_VehSpdLimr_DesignSee Synergy sub project version

Dependencies

SWCs

ModuleRequired Feature
None

Global Functions(Non RTE) to be provided to Integration Project

None

Configuration REQUIREMeNTS

Build Time Config

ModulesNotes
None

Configuration Files to be provided by Integration Project

None

Da Vinci Parameter Configuration Changes

ParameterNotesSWC
None

DaVinci Interrupt Configuration Changes

ISR NameVIM #Priority DependencyNotes
None

Manual Configuration Changes

ConstantNotesSWC
None

Integration DATAFLOW REQUIREMENTS

Required Global Data Inputs

See DataDict.m file

Required Global Data Outputs

See DataDict.m file

Specific Include Path present

No

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
NANoneRTE/ISR(<time>ms)
RunnableScheduling RequirementsTrigger
VehSpdLimrPer1NoneRTE (2ms)

Memory Map REQUIREMENTS

Mapping

Memory SectionContentsNotes
VehSpdLimr_START_SEC_CODE

* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.

Usage

FeatureRAMROM
<Memmap usuage info>

Table 1: ARM Cortex R4 Memory Usage

NvM Blocks

None

Compiler Settings

Preprocessor MACRO

None

Optimization Settings

None

Appendix

None

47.3 - VehSpdLimr_MDD

Module Design Document

For

VehSpdLimr

August 10, 2015

Prepared For:

Software Engineering

Nexteer Automotive,

Saginaw, MI, USA

Prepared By:

Sarika Natu ,

KPIT Technologies,

India
Change History

DescriptionAuthorVersionDate
Initial VersionSarika Natu(KPIT Technologies)1.010-Aug-2015


Table of Contents

1 VehSpdLimr High-Level Description 4

2 Design details of software module 5

2.1 Graphical representation of VehSpdLimr 5

2.2 Data Flow Diagram 5

2.2.1 Component level DFD 5

2.2.2 Function level DFD 5

3 Constant Data Dictionary 6

3.1 Program (fixed) Constants 6

3.1.1 Embedded Constants 6

4 Software Component Implementation 7

4.1 Sub-Module Functions 7

4.1.1 Init: VehSpdLimr_Init 7

4.1.1.1 Design Rationale 7

4.1.1.2 Module Outputs 7

4.1.2 Per: VehSpdLimr_Per1 7

4.1.2.1 Design Rationale 7

4.1.2.2 Store Module Inputs to Local copies 7

4.1.2.3 (Processing of function)……… 7

4.1.2.4 Store Local copy of outputs into Module Outputs 7

4.2 Server Runables 7

4.3 Interrupt Functions 7

4.4 Module Internal (Local) Functions 7

4.5 GLOBAL Function/Macro Definitions 7

5 Known Limitations with Design 8

6 UNIT TEST CONSIDERATION 9

Appendix A Abbreviations and Acronyms 10

Appendix B Glossary 11

Appendix C References 12

VehSpdLimr High-Level Description

The Vehicle Speed Limiting Function determines a limited assist torque command value as a function of vehicle speed and handwheel position to manage mechanical fatigue near end-of-travel positions.

Design details of software module

Graphical representation of VehSpdLimr

cid:image001.png@01D0D38B.56DD1A30

Data Flow Diagram

See FDD.

Component level DFD

See FDD.

Function level DFD

See FDD.

Constant Data Dictionary

Program (fixed) Constants

Embedded Constants

Local Constants

NA

Software Component Implementation

Sub-Module Functions

Init<Component Name>_Init<n>

Design Rationale

None

Module Outputs

None

Per: VehSpdLimrPer1

Design Rationale

FDD model contains a block named VehSpdLimrPer1

Store Module Inputs to Local copies

See FDD

(Processing of function)………

See FDD

Store Local copy of outputs into Module Outputs

See FDD

Server Runables

None

Interrupt Functions

None

Module Internal (Local) Functions

None

GLOBAL Function/Macro Definitions

None

Known Limitations with Design

Referring to anomaly EA4#1276, following are the discrepancies found:

1) Min/max values of HwAgEotCw, HwAgEotCcw, VehSpdLimrPosMaxOffs1, and VehSpdLimrPosMaxOffs2 need to be set to more realistic values; With the current ranges, there is a possiblity of converting negative numbers to unsigned data types.  Note these ranges need to be coordinated with SF011A and SF018A. 

2) Table VehSpdLimrMaxAssiY monotony needs to be identified as "Decreasing" ­­ the implementation assumes that VehSpdLimrMaxAssiY[0] is the maximum value of the table.

3) The concatenate block that creates the Y table for the linear interpolation block has the two inputs reversed ­­ the first input to the concatenation should be the max value of the VehSpdLimrMaxAssiY table, and the second input to the concatenation should be the output of the 1­D Lookup block.

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
3EA4 Software Naming Conventions.doc01.00.00
4Software Design and Coding Standards.doc2.1
5SF016A_VehSpdLimr_DesignSee Synergy subproject version