Pre-configure the Memory Layout for Dynamic Emulation
You can use the Memory Layout Editor to edit the memory layout of the ECU. This also includes the case where you want to pre-configure the memory layout for subsequent dynamic emulation
Emulation mode where the available emulation RAM is used on demand with INCA.
Dynamic emulation in INCA is possible using one of the following calibration methods:
- Fixed Size (A2L: FixedSizeMovableEmuRAM): All blocks in the emulation RAM have a constant size, independent of the actual size of the calibration variables to be emulated. Typically the size is the same for all blocks.
- Reconfigurable Size (A2L: ReconfigurableSizeMovableEmuRAM): Blocks of individual and changeable sizes are used in the emulation RAM. This optimizes the usage of the emulation RAM so that the operator may calibrate more variables in an equally-sized project.
- Fixed Size Non Moveable (A2L: FixedSizeNonMoveableEmuRAM): The emulation RAM is pre-assigned to a FLASH range. Typically this method is used with microcontrollers using internal RAM as emulation RAM, where the microcontroller does not provide an overlay controller. It is not necessary to have any alignment with size or start address.
- Flash Range Specific (A2L: FlashRangeSpecificEmuRAM): Blocks of individual and changeable sizes are used in the emulation RAM. The emulation RAM is segmented into groups, with restrictions on which FLASH ranges each group of emulation RAM may be used with. This method ensures the usage of the emulation RAM is consistent with the restrictions specified by the microcontroller.
The procedure of pre-configuring the memory layout depends on the selected calibration method.
Whether dynamic emulation in general and which of the calibration methods are supported depend on the type and driver version of the (X)ETK device as well as of the capabilities of the microcontroller used in the ECU.
When doing an A2L export, only those definitions that are required in the A2L file for the selected calibration method (FixedSizeMovableEmuRAM or ReconfigurableSizeMovableEmuRAM) will be written to the file.
If the calibration method ReconfigurableSizeMovableEmuRAM is selected, the configuration of the calibration handles will be used by INCA as initial memory layout. If the calibration tasks in INCA require a re-configuration, INCA will reconfigure the handles. In case of online access to the (X)ETK device, the changes will be visualized in the XCT.
Configuring the memory layout using fixed block sizes
-
In the Limited Emulation RAM Configuration editor, select the calibration method Fixed Size.
As the number of calibration handles is static and all have constant sizes, the columns for number and size of the calibration handles are disabled.
-
Configure the calibration handles in the Calibration Handles editor.
The address ranges of the handles may not overlap and will typically need to have the same size.
Configuring the memory layout using reconfigurable block sizes
- In the Memory Segment editor, add a new memory segment of the type Reconfigurable EMU RAM (if not yet existing)
- In the Limited Emulation RAM Configuration editor, select the calibration method Reconfigurable Size and add the constraints for the calibration handles according to the microcontroller and the memory layout used in the ECU.
-
Go to the Hardware Settings editor and check the value for OMD CID (compatibility ID of the OMD
Overlay Memory Layout Descriptor; a page switch method).When using the calibration method Reconfigurable Size, the OMD CID 2 or higher must be selected.
Please check whether your ECU supports this OMD CID. Otherwise you can not use this calibration method.
-
Configure the Calibration Handles in the Calibration Handles editor.
The address ranges of the handles may be of different sizes. They may not overlap.
This step is optional if INCA is used as MC tool, as INCA will usually reconfigure the calibration handles.
Configuring the memory layout using fixed non moveable block sizes or specific FLASH range
- In the Limited Emulation RAM Configuration editor, select the calibration method Reconfigurable Size and add the constraints for the calibration handles according to the microcontroller and the memory layout used in the ECU.
-
Go to the Hardware Settings editor and check the value for OMD CID (compatibility ID of the OMD
Overlay Memory Layout Descriptor; a page switch method).When using the calibration method Reconfigurable Size, the OMD CID 2 or higher must be selected.
Please check whether your ECU supports this OMD CID. Otherwise you can not use this calibration method.
-
Configure the Calibration Handles in the Calibration Handles editor.
The address ranges of the handles may be of different sizes. They may not overlap.
This step is optional if INCA is used as MC tool, as INCA will usually reconfigure the calibration handles.
|
Note |
|---|
|
If the settings are invalid, e.g. because you have changed the microcontroller type after having set up the memory layout or calibration handles, you can check the context menu for commands for creating default settings (e.g. Create Default Memory Layout or Create Default Calibration Handle Set in the Memory Layout Editor). These commands create valid settings which you can use as starting point for further configuration. |
See also