5.10. CDD ADC Module Migration
Migration Approach: Follow sequential migration for clear understanding of changes at each version. Each migration is organized by individual changes with description, old vs new comparison, and migration actions.
5.10.1. v03.00.00 (i.e release v01.04.00) from v02.00.01 (i.e release v01.03.00) Migration
5.10.1.1. Summary
Version v03.00.00 introduces Resource Allocator as a mandatory architectural foundation and SDK-based DMA integration. This represents a fundamental shift from direct parameter configuration to centralized resource management:
Resource Allocator Introduction and Hardware Unit Configuration Updates: Resource Allocator becomes mandatory with CddAdcHwUnit configurations updated to reference Resource Allocator instances
SDK-Based DMA Integration: Optional DMA integration for efficient ADC result transfers
Symbolic Name Uniqueness Requirements: Enhanced validation requires unique symbolic names across configurations
PREREQUISITE: Complete Resource Allocator Setup before proceeding.
5.10.1.2. Change 1: Resource Allocator Introduction and Hardware Unit Configuration Updates
5.10.1.2.1. Description
Resource Allocator becomes a mandatory architectural foundation for the CDD ADC module, with CddAdcHwUnit configurations updated to reference Resource Allocator instances. This represents a fundamental shift from direct parameter configuration to centralized resource management, where CDD ADC instances are allocated through Resource Allocator and then referenced by hardware unit configurations.
5.10.1.2.2. Old vs New Configuration
Previous Configuration (v02.00.01): Direct parameter selection was used without Resource Allocator dependency.
Fig. 5.38 v02.00.01: Direct ADC hardware unit parameter selection
New Configuration (v03.00.00): CDD ADC hardware unit configurations now reference instances allocated through Resource Allocator.
Fig. 5.39 v03.00.00: Set CddAdcHwInstanceRef to point to the corresponding Cdd_AdcAllocatedInstance in Resource Allocator
5.10.1.2.3. Migration Actions
Setup Resource Allocator: Follow Resource Allocator Setup
Navigate to Context: Navigate to ResourceAllocatorGeneral → Context → Cdd_Adc and add CDD ADC allocator:
Fig. 5.40 Navigate to Context and add CDD ADC allocator
Add CDD ADC Instance: Add Cdd_AdcAllocatedInstance entries for each ADC instance your application requires:
Fig. 5.41 Add Cdd_AdcAllocatedInstance entries for each ADC instance your application requires
Configure ADC Instance: Configure the InstanceName, Frame, and BaseAddr for each allocated instance:
Fig. 5.42 Configure the InstanceName, Frame, and BaseAddr for each allocated instance
Configure Safety Checker Instance (Optional): If your application requires safety-critical ADC monitoring, configure CddAdcSafetyCheckerInstance:
Fig. 5.43 Configure CddAdcSafetyCheckerInstance for safety-critical applications (e.g., ADCSAFETYCHECK1)
Configure Checker Interrupt Event Instance (Optional): If your application requires interrupt-based safety monitoring, configure CddAdcCheckerInterruptEvtInstance:
Fig. 5.44 Configure CddAdcCheckerInterruptEvtInstance for interrupt-based safety monitoring (e.g., ADCSAFETYCHECKINIEVT1)
Complete Configuration: Finalize CDD ADC instance allocation:
Fig. 5.45 Complete CDD ADC instance allocation
Navigate to CddAdcHwUnit: Navigate to Cdd → CddAdcHwUnit and update configurations to reference the CDD ADC instances allocated in Resource Allocator
Open Hardware Unit Configuration: Access the CddAdcHwUnit configuration that needs to be updated
Set Instance Reference: Set CddAdcHwInstanceRef to point to the corresponding Cdd_AdcAllocatedInstance in Resource Allocator
Verify Automatic Derivation: Confirm that the CddAdcHwInstance parameter is now automatically derived from the Resource Allocator reference
5.10.1.3. Change 2: SDK-Based DMA Integration (Optional)
5.10.1.3.1. Description
Version v03.00.00 introduces SDK-based DMA integration for efficient ADC result transfers without CPU intervention. This is an optional feature that can be enabled for improved performance in applications that require high-speed ADC data transfer.
5.10.1.3.2. Old vs New DMA Configuration
Previous Configuration (v02.00.01): No DMA integration available for ADC result transfers.
New Configuration (v03.00.00): Optional SDK-based DMA integration with CddAdcEnableDma parameter.
Fig. 5.46 Add CddAdcGroup configuration for DMA
Fig. 5.47 Configure CddAdcEnableDma parameter for ADC groups
5.10.1.3.3. Migration Actions
Evaluate DMA Requirement: Determine if your application requires DMA for ADC result transfers for improved performance
Enable DMA (Optional): If using DMA for ADC result transfers, enable
CddAdcEnableDmain the group configurationConfigure SDK DMA: Configure the DMA channel in the SDK/system configuration on the application side. Refer to ADC + DMA Integration Guide for detailed integration steps and DMA Transfer Example for implementation examples
Ensure Memory Alignment: Ensure proper memory alignment for DMA buffers to prevent transfer issues
5.10.1.4. Change 3: Symbolic Name Uniqueness Requirements
5.10.1.4.1. Description
Version v03.00.00 introduces enhanced validation that requires symbolic names to be unique across configurations. When migrating from v02.00.00 to v03.00.00, EB Tresos will generate validation errors if symbolic names are not unique. This is in accordance with [SWS_BSW_00200].
5.10.1.4.2. Old vs New Validation Requirements
Uniqueness Requirements:
Parameter |
v02.00.01 |
v03.00.00 |
|---|---|---|
CddAdcGroup (container name) |
No uniqueness constraint |
Must be unique across all HW units |
CddAdcPpbConfig (container name) |
No uniqueness constraint |
Must be unique across all HW units |
CddAdcHwInstanceRef |
No uniqueness constraint |
Must be unique across all containers |
CddAdcGlbSwTrigId |
No uniqueness constraint |
Must be unique across all containers |
CddAdcCheckerInstanceRef |
No uniqueness constraint |
Must be unique across all containers |
CddAdcCheckerIntEvtInstanceRef |
No uniqueness constraint |
Must be unique across all containers |
5.10.1.4.3. Migration Actions
Review Container Names: Check all CddAdcGroup and CddAdcPpbConfig container names for uniqueness across all HW units
Review Instance References: Ensure CddAdcHwInstanceRef, CddAdcCheckerInstanceRef, and CddAdcCheckerIntEvtInstanceRef are unique across all containers
Review Trigger IDs: Verify CddAdcGlbSwTrigId values are unique across all containers
Resolve Conflicts: Update any duplicate symbolic names to ensure uniqueness and avoid validation errors during migration
Validate Configuration: Run validation in EB Tresos to confirm all symbolic names are now unique
Note
The Resource Allocator module must be configured before the CDD ADC module to ensure correct instance availability. For more details on Resource Allocator configuration, see the Resource Allocator Module User Guide.
5.10.2. v02.00.00 (i.e release v01.02.00) from v01.00.00 (i.e release v01.01.00) Migration
5.10.2.1. Summary
Version v02.00.00 introduces schema compatibility updates to align with updated plugin structure and reference paths:
AR-ELEMENT Name Change: Generated .xdm file AR-ELEMENT name requires updating for schema compatibility
MODULE-CONFIGURATION Path Update: Generated .xdm file MODULE-CONFIGURATION definition path requires updating
Reference Path Updates: Generated .xdm file reference paths require updating due to schema structure changes
Note
The CDD ADC v2.0.0 plugin contains updated schema definitions that are not backward compatible with v1.0.0 generated configurations. To use existing v1.0.0 configurations with the v2.0.0 plugin, the generated .xdm files (created by EB Tresos from your configuration) must be updated.
5.10.2.2. Change 1: AR-ELEMENT Name Change in Generated .xdm File
5.10.2.2.1. Description
When upgrading from v1.0.0 to v2.0.0, the generated .xdm file from EB Tresos contains AR-ELEMENT names that are not compatible with the new plugin schema. The AR-ELEMENT name needs to be updated in the generated .xdm file to ensure compatibility.
5.10.2.2.2. Old vs New AR-ELEMENT Configuration
Generated .xdm File AR-ELEMENT Name:
v01.00.00 Generated .xdm |
v02.00.00 Required .xdm |
|---|---|
|
|
5.10.2.2.3. Migration Actions
Locate Generated .xdm File: Find your project’s generated .xdm file (created by EB Tresos from your configuration)
Open File for Editing: Open the generated .xdm file in a text editor
Find AR-ELEMENT Reference: Locate the line containing
<d:chc name="Cdd_Adc" type="AR-ELEMENT"Update AR-ELEMENT Name: Change the AR-ELEMENT name from
Cdd_AdctoCddSave File: Save the updated .xdm file
5.10.2.3. Change 2: MODULE-CONFIGURATION Path Update in Generated .xdm File
5.10.2.3.1. Description
The MODULE-CONFIGURATION definition path in the generated .xdm file needs to be updated to reflect the new schema structure. The path must include the additional Cdd component for proper module reference.
5.10.2.3.2. Old vs New MODULE-CONFIGURATION Path
Generated .xdm File MODULE-CONFIGURATION Path:
v01.00.00 Generated .xdm |
v02.00.00 Required .xdm |
|---|---|
|
|
5.10.2.3.3. Migration Actions
Continue Editing .xdm File: In the same generated .xdm file being edited
Find MODULE-CONFIGURATION Path: Locate the line containing
<a:a name="DEF" value="ASPath:/TI_F29H85x/Cdd_Adc"/>Update Definition Path: Change the MODULE-CONFIGURATION path from
ASPath:/TI_F29H85x/Cdd_AdctoASPath:/TI_F29H85x/Cdd_Adc/CddVerify Path Structure: Ensure the updated path includes the additional
/CddcomponentSave Changes: Save the updated .xdm file
5.10.2.4. Change 3: Reference Path Updates in Generated .xdm File
5.10.2.4.1. Description
Any REFERENCE type parameters in the generated .xdm file that refer to other CDD ADC parameters by their schema path must be updated due to the schema structure change. All internal reference paths need to be updated to reflect the new schema hierarchy.
5.10.2.4.2. Old vs New Reference Paths
Generated .xdm File Reference Path Example:
For CddAdcPpbChannel references expecting a channel reference:
v01.00.00 Generated .xdm Reference Path |
v02.00.00 Required .xdm Reference Path |
|---|---|
|
|
5.10.2.4.3. Migration Actions
Continue Editing .xdm File: In the same generated .xdm file being edited
Search for Reference Paths: Find all REFERENCE type parameters that contain
/Cdd_Adc/Cdd_Adc/in their pathsUpdate Reference Paths: Change all occurrences of
/Cdd_Adc/Cdd_Adc/to/Cdd_Adc/Cdd/Verify All Updates: Ensure all reference paths now use the correct schema hierarchy
Save Final Changes: Save the completely updated .xdm file
Generated .xdm File Structure Comparison:
Before Editing (v01.00.00 Generated .xdm File):
<d:lst type="TOP-LEVEL-PACKAGES">
<d:ctr name="Cdd_Adc" type="AR-PACKAGE">
<d:lst type="ELEMENTS">
<d:chc name="Cdd_Adc" type="AR-ELEMENT" value="MODULE-CONFIGURATION">
<d:ctr type="MODULE-CONFIGURATION">
<a:a name="DEF" value="ASPath:/TI_F29H85x/Cdd_Adc"/>
After Editing (v02.00.00 Compatible .xdm File):
<d:lst type="TOP-LEVEL-PACKAGES">
<d:ctr name="Cdd_Adc" type="AR-PACKAGE">
<d:lst type="ELEMENTS">
<d:chc name="Cdd" type="AR-ELEMENT" value="MODULE-CONFIGURATION">
<d:ctr type="MODULE-CONFIGURATION">
<a:a name="DEF" value="ASPath:/TI_F29H85x/Cdd_Adc/Cdd"/>
Note
Only the generated .xdm files (created by EB Tresos from your configuration) can be modified. The plugin .xdm files themselves cannot and should not be modified.