FlsMem Integration Manual
Integration Manual
For
FlsMem
VERSION: 1
DATE: 11/12/17
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. | Description | Author | Version | Date |
| 1 | Initial version | Avinash James | 1 | 11/12/17 |
Table of Contents
3.2 Global Functions(Non RTE) to be provided to Integration Project 6
4 Configuration REQUIREMeNTS 7
4.2 Configuration Files to be provided by Integration Project 7
4.3 Da Vinci Parameter Configuration Changes 7
4.4 DaVinci Interrupt Configuration Changes 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
Abbrevations And Acronyms
| Abbreviation | Description |
| DFD | Design functional diagram |
| MDD | Module design Document |
| FDD | Functional Design Document |
| CCT | Common Checksum Tool |
References
This section lists the title & version of all the documents that are referred for development of this document
| Sr. No. | Title | Version |
| 1 | FDD – CM102B FlsMem | See Synergy subproject version |
| 2 | Software Naming Conventions | Process 04.04.02 |
| 3 | Software Coding Standards | Process 04.04.02 |
Dependencies
SWCs
| Module | Required Feature |
| AR202A MicroCtrlrSuprt | NxtrMcuSuprtLib functions and register definitions |
| CM800A SyncCrc | CRC HW Module Configuration and Allocation |
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
DtsInin - To be defined as a trusted function as the DTS Channel master registers need to be configured in the supervisor mode.
DtsClnUp - To be defined as a trusted function as the DTS registers are being re-configured in the supervisor mode to avoid access protection violation
CodFlsSngBitEcc – Single bit code flash ECC error handler call back function provided to the MCAL driver
Configuration REQUIREMeNTS
Build Time Config
| Modules | Notes | |
Configuration Files to be provided by Integration Project
CDD_FlsMem_Cfg.c
CDD_FlsMem_Cfg_private.h
Da Vinci Parameter Configuration Changes
| Parameter | Notes | SWC |
| /Nexteer/FlsMem/FlashCRCRegnConfig/ StartAddress | Configured with “FlashCRCRegnConfig” Each Flash region(for eg:- Boot, App, Cal1) has a start address where the code resides on the flash | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/Length | Configured with “FlashCRCRegnConfig” Each Flash region has a length defined for the region | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/PredefinedCrcAddress | Configured with “FlashCRCRegnConfig” Each Flash region has a PredefinedCrcAddress defined for the region which is used by the CCT tool for storing the checksum on the flash and serves as the reference location to retrieve the pre calculated CRC and do a comparison with calculated CRC | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/LengthSymbol | Configured with “FlashCRCRegnConfig” Each Flash region has a length defined for the region and accepts linker symbols | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/PredefinedCrcAddressSymbol | Configured with “FlashCRCRegnConfig” Each Flash region has a PredefinedCrcAddress defined for the region which is used by the CCT tool for storing the checksum on the flash and serves as the reference location to retrieve the pre calculated CRC and do a comparison with calculated CRC and accepts linker symbols | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/StartingAddressSymbol | Configured with “FlashCRCRegnConfig” Each Flash region(for eg:- Boot, App, Cal1) has a start address where the code resides on the flash and accepts linker symbol | FlsMem |
| /Nexteer/FlsMem/FlashCRCRegnConfig/UseSymbolName | Configured with “FlashCRCRegnConfig” to select either the symbol names or the actual values | FlsMem |
/Renesas/EcucDefs_Mcu/Mcu/McuModuleConfiguration /McuEcmErrorSourcesCfg/McuEcmErrorSource36 | Call back function name is “CodFlsSngBitEcc”. Refer the CM104A Integration manual for the configuration of the error source. (Type of the error, classification of the error eg FENMI or EI information) . | |
| /Nexteer/FlsMem/ApplCRCRegnIdx/ApplCrcRegnNr | The array Index for the application region CRC region definition | FlsMem |
DaVinci Interrupt Configuration Changes
| ISR Name | VIM # | Priority Dependency | Notes |
Manual Configuration Changes
| Constant | Notes | SWC |
| None |
Integration DATAFLOW REQUIREMENTS
Required Global Data Inputs
None
Required Global Data Outputs
None
Specific Include Path present
Yes
Runnable Scheduling
This section specifies the required runnable scheduling.
| Init | Scheduling Requirements | Trigger |
| FlsMemInit1 | None | Once At Init (RTE) |
| FlsMemInit2 | Non-RTE Init, Called in Startup Sequence* | Function call in Startup Sequence |
| Runnable | Scheduling Requirements | Trigger |
| FlsMemPer1 | None | 100ms(RTE) |
*“FlsMemInit2” shall schedule after OS Start – Refer CM100 Start up sequence.
PEG shall be configured before “FlsMemInit2”.
CrcHw Init shall be scheduled before “FlsMemInit2”.
FlsMemInit1 should be called before DiagcMgrInit1
Memory Map REQUIREMENTS
Mapping
| Memory Section | Contents | Notes |
| CDD_FlsMem_START_SEC_CODE | ||
| CDD_FlsMem_START_SEC_CONST_UNSPECIFIED | Constant section for constant variable | |
| CDD_FlsMemNonRte_START_SEC_VAR_INIT_128 | Data that a DMA channel writes to during CRC test | This gets mapped to a “.data_dma_128” section and/or a “.sdata_dma_128” section (depending on compiler settings) that will need to be explicitly added to the linker file. The intent of these sections is to be placed in a RAM memory section that only the DMA has write access to (processor in user mode only has read access). Additionally, since these are initialized data sections, the appropriate ROM sections will need to be added to the linker to allow initial values to be copied from Flash to RAM during startup for these sections. e.g.: .ROM_data_dma_128 ROM(.data_dma_128) FILL(0xFF) :{}>. and .ROM_sdata_dma_128 ROM(.sdata_dma_128) FILL(0xFF) :{}>. |
* Each …START_SEC… constant is terminated by a …STOP_SEC… constant as specified in the AUTOSAR Memory Mapping requirements.
Usage
| Feature | RAM | ROM |
Table 1: ARM Cortex R4 Memory Usage
NvM Blocks
None
Compiler Settings
Preprocessor MACRO
None
Optimization Settings
None