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

Return to the regular view of this page.

Component Implementation

Component Implementation

Component Documentation

1 - NxtrFil Integration Manual

Integration Manual

For

NxtrFil

VERSION: 1.0

DATE: 03/02/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 versionK. Creager1.003/02/15

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

References

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

Sr. No.TitleVersion
1Working EA4 naming Conventions[1]Temp
2AutoSAR and Nexteer KeyWord Abbreviations list[1]Temp

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

FilLpUpdGain()

FilLpUpdOutp_f32()

FilLpInit()

FilHpUpdGain()

FilHpUpdOutp_f32()

FilHpInit()

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

N/A

Required Global Data Outputs

N/A

Specific Include Path present

Yes

Runnable Scheduling

This section specifies the required runnable scheduling.

InitScheduling RequirementsTrigger
NoneNoneRTE/ISR(<time>ms)
RunnableScheduling RequirementsTrigger
NoneNoneRTE/ISR(<time>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

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

[1] – No official document released for EA4.0 for this document’s revision.

2 - NxtrFil Review


Overview

Summary Sheet
Source Code - initial review
Source Code -rework review
QAC - initial review
QAC - rework review
Integration Manual


Sheet 1: Summary Sheet
























Rev 6.028-Oct-14

Peer Review Summary Sheet



























Component 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. NxtrFil
Component Revision:


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. Kathleen Creager
Change Request ID:


EA4#166





























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



Data Dictionary


QAC



































Integration Manual


Davinci Files








































































Comments:

MDD not created -- design information will be in the AR104A_Design






integration manual not ready at initial peer review but is needed before final review



















































































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















Sheet 2: Source Code - initial review






















Rev 6.028-Oct-14
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. NxtrFil.h
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. 1

























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

























Data Dictionary Revision:




kzshz2: Intended Use: Identify which version of the Data Dictionary was referenced for ranges during the source file review. Rationale: Needed for traceability between source code and DD NA




FDD/SER/CMS























and 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 AR104A design not yet created

Quality Check Items:

































YesNo
Rationale is required for all answers of No









Pre-review checklist for change ownersSoftware Naming Convention V1.2 followed:








































for variable names







X
Comments:

EA4 naming conventions














































for constant names







X
Comments:

EA4 naming conventions














































for function names







X
Comments:

add _f32 to functions that return float32














































for other names (component, memory







X
Comments:

memory names need NxtrFil instead of NXTRFIL







mapping handles, typedefs, etc.)






































All buffered outputs written in every path, i.e. no








X
Comments:

N/A







possibility of an uninitialized value being written






































Group-review Checklist (review board)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.


X
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








X
Comments:



and CR number





































Code accurately implements FDD (Document or Model)








X
Comments:

FDD not created yet













implementation matches EA3 macro implementation
























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.





X
Comments:
















































FDD test points exist as display variables: declared








X
Comments:

N/A







static volatile, written once and never used, names













match the FDD













































Software Design and Coding Standards V2.0 followed:








































Code comments are clear, correct, and adequate







X
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







X
Comments:











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







































Function comment blocks are per standards and







X
Comments:











contain correct information: [N43]







































Code formatting (indentation, placement of







X
Comments:











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














[N57], [N58], [N59]
















































Embedded constants used per standards; no







X
Comments:











"magic numbers": [N12]







































All variables and constants defined at module







X
Comments:

N/A








level are included in appropriate MemMap














section: [N25] and Naming Conventions
















































All execution-order-dependent code can be







X
Comments:

N/A








recognized by the compiler: [N80]







































No possibility of a non-terminating loop: [N63]







X
Comments:

N/A

















































No possibility of divide by zero: [N65]







X
Comments:

logic prevents divide by zero

















































All integer division and modulus operations







X
Comments:

N/A








handle negative numbers correctly: [N76]







































All typecasting and fixed point arithmetic,







X
Comments:

N/A








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







X
Comments:

N/A








point value to an unsigned type: [N67]







































All conversions between signed and unsigned







X
Comments:

N/A








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







































No possibility of dereferencing a null







X
Comments:

design limitation - pointer parameters








pointer: [N70]










must have non-null values



























Global outputs (RTE and Non-RTE) Initialized:







X
Comments:

N/A








[N24]







































Module outputs are limited to the legal range







X
Comments:

N/A








defined in the FDD Data dictionary: [N53]







































All code is mapped with FDD (all FDD







X
Comments:

to be added in later rev, after FDD and








subfunctions and/or model blocks identified










FRs are created


with code comments; all code corresponds to























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
















































Struct types used for NvM have







X
Comments:

N/A








elements declared in decreasing order by size














and are not nested or used in arrays: [N84], [N85]
















































No violations of other coding standard rules







X
Comments:











identified during review
























































































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:

Kathleen Creager


Review Date :

02/27/15
































Lead Peer Reviewer:


Kevin Smith


Approved by Reviewer(s):




































Other Reviewer(s):


Lucas Wendling






































































Sheet 3: Source Code -rework review






















Rev 6.028-Oct-14
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. NxtrFil.h
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. 1

























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

























Data Dictionary Revision:




kzshz2: Intended Use: Identify which version of the Data Dictionary was referenced for ranges during the source file review. Rationale: Needed for traceability between source code and DD NA




FDD/SER/CMS























and 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 AR104A design not yet created

Quality Check Items:

































YesNo
Rationale is required for all answers of No









Pre-review checklist for change ownersSoftware Naming Convention V1.2 followed:








































for variable names







X
Comments:

EA4 naming conventions














































for constant names







X
Comments:

EA4 naming conventions














































for function names







X
Comments:

















































for other names (component, memory







X
Comments:










mapping handles, typedefs, etc.)






































All buffered outputs written in every path, i.e. no








X
Comments:

N/A







possibility of an uninitialized value being written






































Group-review Checklist (review board)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.


X
Comments:



and Version Control version in file comment block





































Change log contains detailed description of changes








X
Comments:



and CR number





































Code accurately implements FDD (Document or Model)








X
Comments:

FDD not created yet













implementation matches EA3 macro implementation
























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.





X
Comments:
















































FDD test points exist as display variables: declared








X
Comments:

N/A







static volatile, written once and never used, names













match the FDD













































Software Design and Coding Standards V2.0 followed:








































Code comments are clear, correct, and adequate







X
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







X
Comments:











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







































Function comment blocks are per standards and







X
Comments:











contain correct information: [N43]







































Code formatting (indentation, placement of







X
Comments:











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














[N57], [N58], [N59]
















































Embedded constants used per standards; no







X
Comments:











"magic numbers": [N12]







































All variables and constants defined at module







X
Comments:

N/A








level are included in appropriate MemMap














section: [N25] and Naming Conventions
















































All execution-order-dependent code can be







X
Comments:

N/A








recognized by the compiler: [N80]







































No possibility of a non-terminating loop: [N63]







X
Comments:

N/A

















































No possibility of divide by zero: [N65]







X
Comments:

logic prevents divide by zero

















































All integer division and modulus operations







X
Comments:

N/A








handle negative numbers correctly: [N76]







































All typecasting and fixed point arithmetic,







X
Comments:

N/A








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







X
Comments:

N/A








point value to an unsigned type: [N67]







































All conversions between signed and unsigned







X
Comments:

N/A








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







































No possibility of dereferencing a null







X
Comments:

documented in usage notes








pointer: [N70]










no run-time check for throughput reasons



























Global outputs (RTE and Non-RTE) Initialized:







X
Comments:

N/A








[N24]







































Module outputs are limited to the legal range







X
Comments:

N/A








defined in the FDD Data dictionary: [N53]







































All code is mapped with FDD (all FDD







X
Comments:

to be added in later rev, after FDD and








subfunctions and/or model blocks identified










FRs are created


with code comments; all code corresponds to























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
















































Struct types used for NvM have







X
Comments:

N/A








elements declared in decreasing order by size














and are not nested or used in arrays: [N84], [N85]
















































No violations of other coding standard rules







X
Comments:











identified during review
























































































General Notes / Comments:























reviewed after rework from initial review (rework done: _f32 added to function names of functions that return float32; capitalization corrected on memory mapping

names; design limitation regarding no checking for null pointers added as usage note in function comment blocks, to be added to design component when created)































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:

Kathleen Creager


Review Date :

03/03/15
































Lead Peer Reviewer:


Kevin Smith


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 4: QAC - initial review






















Rev 6.028-Oct-14
Peer Review Meeting Log (QAC 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. NxtrFil.h

Source File Revision:


1

Module
1of1


























Compliance Guidelines Version:




EA4 working









































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

Used NxtrFil_TestHarness.c (in tools folder) for QAC and Polyspace analysis of the NxtrFil.h file.































































Quality Check Items:

































YesNo
Rationale is required for all answers of No









Pre-review
checklist for change owners
QAC version is correct and did not change (List version)







kzshz2: Intended Use: Identify which version of the QAC Subproject was used and if any of the personalities may have changed. Rationale: Will help ensure this is factored into evaluating the results
X
Comments:

1.0.0













component-specific QAC and Polyspace files needed













in order to see warnings on this library header file






















(see tools folder)

































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.


X
Comments:

needs rework due to function name changes









































Group-review Checklist (review board)100% Compliance to the MISRA Compliance GuidelinesX
Comments:

Polyspace gives MISRA warning 21.1













for possible null pointer dereference; see comments below
























Cyclomatic complexity and Static path count ok per






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

X
Comments:




Design and Coding Standards rule [N47]






































General Notes / Comments:


























waiting for Polyspace guidelines before using deviation comments for Polyspace-only MISRA warnings. The null pointer warning should not show up when running

Polyspace on an integration project.




























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:

Kathleen Creager


Review Date :

02/27/15
































Lead Peer Reviewer:


Kevin Smith


Approved by Reviewer(s):




































Other Reviewer(s):


Lucas Wendling






































































Sheet 5: QAC - rework review






















Rev 6.028-Oct-14
Peer Review Meeting Log (QAC 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. NxtrFil.h

Source File Revision:


1

Module
1of1


























Compliance Guidelines Version:




EA4 working









































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

Used NxtrFil_TestHarness.c (in tools folder) for QAC and Polyspace analysis of the NxtrFil.h file.































































Quality Check Items:

































YesNo
Rationale is required for all answers of No









Pre-review
checklist for change owners
QAC version is correct and did not change (List version)







kzshz2: Intended Use: Identify which version of the QAC Subproject was used and if any of the personalities may have changed. Rationale: Will help ensure this is factored into evaluating the results
X
Comments:

1.0.0













component-specific QAC and Polyspace files needed













in order to see warnings on this library header file






















(see tools folder)

































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.


X
Comments:












































Group-review Checklist (review board)100% Compliance to the MISRA Compliance GuidelinesX
Comments:

Polyspace gives MISRA warning 21.1













for possible null pointer dereference; see comments below
























Cyclomatic complexity and Static path count ok per






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

X
Comments:




Design and Coding Standards rule [N47]






































General Notes / Comments:























re-run and re-reviewed after source code and contract folder file rework from initial review

waiting for Polyspace guidelines before using deviation comments for Polyspace-only MISRA warnings. The null pointer warning should not show up when running

Polyspace on an integration project. Usaage notes in function comment blocks document the design limitation.




























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:

Kathleen Creager


Review Date :

03/03/15
































Lead Peer Reviewer:


Kevin Smith


Approved by Reviewer(s):



Yes































Other Reviewer(s):










































































Sheet 6: Integration Manual






















Rev 6.028-Oct-14
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. NxtrFil Integration Manual

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:

































YesNo
Rationale is required for all answers of No









Group-review Checklist (review board)Synergy version matches header








X
Comments:










































Latest template used








X
Comments:










































Change log contains detailed description of changes








X
Comments:

NA







































Changes Highlighted (for Integrator)








X
Comments:

NA








































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:

Kathleen Creager


Review Date :

03/03/15
































Lead Peer Reviewer:


Kevin Smith


Approved by Reviewer(s):



Yes































Other Reviewer(s):