导图社区 AUTOAR4.2.2NvM配置容器20230716A
AUTOAR4.2.2NvM配置容器,Post-Build Variant Support false.
编辑于2023-08-18 16:41:09 安徽NvM
Post-Build Variant Support false
NvMBlockDescriptor(1..65536)
Container for a management structure to configure the composition of a given NVRAM Block Management Type. Its multiplicity describes the number of configured NVRAM blocks, one block is required to be configured. The NVRAM block descriptors are condensed in the NVRAM block descriptor table.
NvMBlockCrcType
Defines CRC data width for the NVRAM block. Default: NVM_CRC16, i.e. CRC16 will be used if NVM_BLOCK_USE_CRC==true dependency: NVM_BLOCK_USE_CRC, NVM_CALC_RAM_BLOCK_CRC
NVM_CRC16
(Default) CRC16 will be used if NVM_BLOCK_USE_CRC==true.
NVM_CRC32
CRC32 is selected for this NVRAM block if NVM_BLOCK_USE_CRC==true
NVM_CRC8
CRC8 is selected for this NVRAM block if NVM_BLOCK_USE_CRC==true
NvMBlockHeaderInclude(0..1)
Defines the header file where the owner of the NVRAM block has the declarations of the permanent RAM data block, ROM data block (if configured) and the callback function prototype for each configured callback. If no permanent RAM block, ROM block or callback functions are configured then this configuration parameter shall be ignored
EcucStringParamDef
NvMBlockJobPriority
Defines the job priority for a NVRAM block (0 = Immediate priority).
EcucIntegerParamDef
NvMBlockManagementType
NVM_BLOCK_DATASET
NVRAM block is configured to be of dataset type.
NVM_BLOCK_NATIVE
NVRAM block is configured to be of native type
NVM_BLOCK_REDUNDANT
NVRAM block is configured to be of redundant type.
NvMBlockUseAutoValidation
Defines whether the RAM Block shall be auto validated during shutdown phase.
EcucBooleanParamDef
NvMBlockUseCRCCompMechanism
Defines whether the CRC of the RAM Block shall be compared during a write job with the CRC which was calculated during the last successful read or write job. true: if compare mechanism is used, false: otherwise
EcucBooleanParamDef
NvMBlockUseCrc
Defines CRC usage for the NVRAM block, i.e. memory space for CRC is reserved in RAM and NV memory. true: CRC will be used for this NVRAM block. false: CRC will not be used for this NVRAM block.
EcucBooleanParamDef
NvMBlockUseSetRamBlockStatus
Defines if NvMSetRamBlockStatusApi shall be used for this block or not. Note: If NvMSetRamBlockStatusApi is disabled this configuration parameter shall be ignored. true: calling of NvMSetRamBlockStatus for this RAM block shall set the status of the RAM block. false: calling of NvMSetRamBlockStatus for this RAM block shall be ignored.
EcucBooleanParamDef
NvMBlockUseSyncMechanism
Defines whether an explicit synchronization mechanism with a RAM mirror and callback routines for transferring data to and from NvM module's RAM mirror is used for NV block. true if synchronization mechanism is used, false otherwise.
EcucBooleanParamDef
NvMBlockWriteProt
Defines an initial write protection of the NV block true: Initial block write protection is enabled. false: Initial block write protection is disabled.
EcucBooleanParamDef
NvMBswMBlockStatusInformation
This parameter specifies whether BswM is informed about the current status of the specified block. True: Call BswM_NvM_CurrentBlockMode on changes False: Don’t inform BswM at all
EcucBooleanParamDef
NvMCalcRamBlockCrc(0..1)
Defines CRC (re)calculation for the permanent RAM block or NVRAM blocks which are configured to use explicit synchronization mechanism. true: CRC will be (re)calculated for this permanent RAM block. false: CRC will not be (re)calculated for this permanent RAM block.
EcucBooleanParamDef
NvMInitBlockCallback(0..1)
Entry address of a block specific callback routine which shall be called if no ROM data is available for initialization of the NVRAM block. If not configured, no specific callback routine shall be called for initialization of the NVRAM block with default data
EcucFunctionNameDef
NvMMaxNumOfReadRetries
EcucIntegerParamDef(0..7)
NvMMaxNumOfWriteRetries
Defines the maximum number of write retries for a NVRAM block with [ECUC_NvM_00061]. Regardless of configuration a consistency check (and maybe write retries) are always forced for each block which is processed by the request NvM_WriteAll and NvM_WriteBlock.
EcucIntegerParamDef(0..7)
NvMNvBlockBaseNumber
Configuration parameter to perform the link between the NVM_NVRAM_BLOCK_IDENTIFIER used by the SW-Cs and the FEE_BLOCK_NUMBER expected by the memory abstraction modules. The parameter value equals the FEE_BLOCK_NUMBER or EA_BLOCK_NUMBER shifted to the right by NvMDatasetSelectionBits bits. (ref. to chapter 7.1.2.1). Calculation Formula: value = TargetBlockReference.[Ea/Fee]BlockConfiguration.[Ea/Fee]BlockNumber >> NvMDatasetSelectionBits dependency: FEE_BLOCK_NUMBER, EA_BLOCK_NUMBER
EcucIntegerParamDef
NvMNvBlockLength
Defines the NV block data length in bytes. Note: The implementer can add the attribute 'withAuto' to the parameter definition which indicates that the length can be calculated by the generator automatically (e.g. by using the sizeof operator). When 'withAuto' is set to 'true' for this parameter definition the 'isAutoValue' can be set to 'true'. If 'isAutoValue' is set to 'true' the actual value will not be considered during ECU Configuration but will be (re-)calculated by the code generator and stored in the value attribute afterwards
EcucIntegerParamDef
NvMNvBlockNum
Defines the number of multiple NV blocks in a contiguous area according to the given block management type. 1-255 For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to SWS_NvM_00444. 1 For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE 2 For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT dependency: NVM_BLOCK_MANAGEMENT_TYPE
EcucIntegerParamDef
NvMNvramBlockIdentifier
Identification of a NVRAM block via a unique block identifier. Implementation Type: NvM_BlockIdType. min = 1 max = 2^(16- NVM_DATASET_SELECTION_BITS)-1 Reserved NVRAM block IDs: 0 -> to derive multi block request results via NvM_GetErrorStatus 1 -> redundant NVRAM block which holds the configuration ID (generation tool should check that this block is correctly configured from type,CRC and size point of view) dependency: NVM_DATASET_SELECTION_BITS
EcucIntegerParamDef (Symbolic Name generated for this parameter)
NvMNvramDeviceId
Defines the NVRAM device ID where the NVRAM block is located. Calculation Formula: value = TargetBlockReference.[Ea/Fee]BlockConfiguration.[Ea/Fee]DeviceIndex dependency: EA_DEVICE_INDEX, FEE_DEVICE_INDEX
EcucIntegerParamDef
NvMRamBlockDataAddress(0..1)
Defines the start address of the RAM block data. If this is not configured, no permanent RAM data block is available for the selected block management type.
EcucStringParamDef
NvMReadRamBlockFromNvCallback(0..1)
Entry address of a block specific callback routine which shall be called in order to let the application copy data from the NvM module's mirror to RAM block. Implementation type: Std_ReturnType E_OK: copy was successful E_NOT_OK: copy was not successful, callback routine to be called again
EcucFunctionNameDef
NvMResistantToChangedSw
Defines whether a NVRAM block shall be treated resistant to configuration changes or not. If there is no default data available at configuration time then the application shall be responsible for providing the default initialization data. In this case the application has to use NvM_GetErrorStatus()to be able to distinguish between first initialization and corrupted data. true: NVRAM block is resistant to changed software. false: NVRAM block is not resistant to changed software
EcucBooleanParamDef
NvMRomBlockDataAddress(0..1)
Defines the start address of the ROM block data. If not configured, no ROM block is available for the selected block management typEcucStringParamDef
EcucStringParamDef
NvMRomBlockNum
Defines the number of multiple ROM blocks in a contiguous area according to the given block management type. 0-254 For NVRAM blocks to be configured of block management type NVM_BLOCK_DATASET. The actual range is limited according to SWS_NvM_00444. 0-1 For NVRAM blocks to be configured of block management type NVM_BLOCK_NATIVE 0-1 For NVRAM blocks to be configured of block management type NVM_BLOCK_REDUNDANT dependency: NVM_RAM_BLOCK_DATA_ADDRESS
EcucIntegerParamDef
NvMSelectBlockForWriteAll
Defines whether a NVRAM block shall be processed during NvM_WriteAll or not. This configuration parameter has only influence on those NVRAM blocks which are configured to have a permanent RAM block or which are configured to use explicit synchronization mechanism. true: NVRAM block shall be processed by NvM_WriteAll false: NVRAM block shall not be processed by NvM_WriteAll dependency: NVM_RAM_BLOCK_DATA_ADDRESS
EcucBooleanParamDef
NvMSingleBlockCallback(0..1)
Entry address of the block specific callback routine which shall be invoked on termination of each asynchronous single block request [NVM113]
EcucFunctionNameDef
NvMStaticBlockIDCheck
Defines if the Static Block ID check is enabled. false: Static Block ID check is disabled. true: Static Block ID check is enabled
EcucBooleanParamDef
NvMWriteBlockOnce
Defines write protection after first write. The NVRAM manager sets the write protection bit after the NV block was written the first time. This means that some of the NV blocks in the NVRAM should never be erased nor be replaced with the default ROM data after first initialization.
EcucBooleanParamDef
NvMWriteRamBlockToNvCallback(0..1)
Entry address of a block specific callback routine which shall be called in order to let the application copy data from RAM block to NvM module's mirror. Implementation type: Std_ReturnType E_OK: copy was successful E_NOT_OK: copy was not successful, callback routine to be called again
EcucFunctionNameDef
NvMWriteVerification
Defines if Write Verification is enabled.
EcucBooleanParamDef
NvMWriteVerificationDataSize
Defines the number of bytes to compare in each step when comparing the content of a RAM Block and a block read back
NvMTargetBlockReference
This parameter is just a container for the parameters for EA and FEE
NvMEaRef(0..1)
EEPROM Abstraction
NvMNameOfEaBlock
Symbolic name reference to [ EaBlockConfiguration ]
NvMFeeRef(0..1)
Flash EEPROM Emulation
NvMFeeRef
Symbolic name reference to [ FeeBlockConfiguration ]
NvMCommon
NvMApiConfigClass
Preprocessor switch to enable some API calls which are related to NVM API configuration classes
NVM_API_CONFIG_CLASS_1
NVM_API_CONFIG_CLASS_2
NVM_API_CONFIG_CLASS_3
NvMBswMMultiBlockJobStatusInformation
This parameter specifies whether BswM is informed about the current status of the multiblock job. True: call BswM_NvM_CurrentJobMode if ReadAll and WriteAll are started, finished, canceled False: do not inform BswM at all
EcucBooleanParamDef
NvMCompiledConfigId
Configuration ID regarding the NV memory layout. This configuration ID shall be published as e.g. a SW-C shall have the possibility to write it to NV memory.
EcucIntegerParamDef
NvMCrcNumOfBytes
If CRC is configured for at least one NVRAM block, this parameter defines the maximum number of bytes which shall be processed within one cycle of job processing
EcucIntegerParamDef
NvMDatasetSelectionBits
Defines the number of least significant bits which shall be used to address a certain dataset of a NVRAM block within the interface to the memory hardware abstraction. 0..8: Number of bits which are used for dataset or redundant block addressing. 0: No dataset or redundant NVRAM blocks are configured at all, no selection bits required. 1: In case of redundant NVRAM blocks are configured, but no dataset NVRAM blocks dependency: MemHwA, NVM_NVRAM_BLOCK_IDENTIFIER, NVM_BLOCK_MANAGEMENT_TYPE
EcucIntegerParamDef
NvMDevErrorDetect
EcucBooleanParamDef
NvMDrvModeSwitch
Preprocessor switch to enable switching memory drivers to fast mode during performing NvM_ReadAll and NvM_WriteAll true: Fast mode enabled. false: Fast mode disabled
EcucBooleanParamDef
NvMDynamicConfiguration
Preprocessor switch to enable the dynamic configuration management handling by the NvM_ReadAll request. true: Dynamic configuration management handling enabled. false: Dynamic configuration management handling disabled
EcucBooleanParamDef
NvMJobPrioritization
Preprocessor switch to enable job prioritization handling true: Job prioritization handling enabled. false: Job prioritization handling disabled
EcucBooleanParamDef
NvMMainFunctionPeriod
The period between successive calls to the main function in seconds.
EcucFloatParamDef
NvMMultiBlockCallback(0..1)
Entry address of the common callback routine which shall be invoked on termination of each asynchronous multi block request
EcucFunctionNameDef
NvMPollingMode
Preprocessor switch to enable/disable the polling mode in the NVRAM Manager and at the same time disable/enable the callback functions useable by lower layers true: Polling mode enabled, callback function usage disabled. false: Polling mode disabled, callback function usage enabled.
EcucBooleanParamDef
NvMRepeatMirrorOperations
Defines the number of retries to let the application copy data to or from the NvM module's mirror before postponing the current job.
EcucIntegerParamDef
NvMSetRamBlockStatusApi
Preprocessor switch to enable the API NvM_SetRamBlockStatus. true: API NvM_SetRamBlockStatus enabled. false: API NvM_SetRamBlockStatus disabled.
EcucBooleanParamDef
NvMSizeImmediateJobQueue(0..1)
Defines the number of queue entries for the immediate priority job queue. If NVM_JOB_PRIORITIZATION is switched OFF this parameter shall be out of scope dependency: NVM_JOB_PRIORITIZATION
EcucIntegerParamDef
NvMSizeStandardJobQueue
Defines the number of queue entries for the standard job queue.
EcucIntegerParamDef
NvMVersionInfoApi
EcucBooleanParamDef
NvmDemEventParameterRefs
Container for the references to DemEventParameter elements which shall be invoked using the API Dem_ReportErrorStatus API in case the corresponding error occurs. The EventId is taken from the referenced DemEventParameter's DemEventId value. The standardized errors are provided in the container and can be extended by vendor specific error references
NVM_E_HARDWARE(0..1)
Reference to the DemEventParameter which shall be issued when the hardware error has occured
Symbolic name reference to [ DemEventParameter ]
NVM_E_INTEGRITY_FAILED(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_LOSS_OF_REDUNDANCY(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_QUEUE_OVERFLOW(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_REQ_FAILED(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_VERIFY_FAILED(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_WRITE_PROTECTED(0..1)
Symbolic name reference to [ DemEventParameter ]
NVM_E_WRONG_BLOCK_ID(0..1)
Symbolic name reference to [ DemEventParameter ]