Part Number: TMS570LS0914
Other Parts Discussed in Thread: HALCOGEN
Hi Team,
I am working on a TMS570LS0914 based application with the following setup:
System Configuration
- MCU: TMS570LS0914
- Bootloader present
- Application start address: 0x00020000
- Tool: HALCoGen (TI FEE driver)
- FEE storage: Flash Bank 7
- FEE configuration:
- Number of blocks: 16
- Block size: 64 bytes
- Block overhead: 24 bytes
- Virtual sectors:
- Total: 4
- Per EEPROM: 2
- Virtual page size: 8 bytes
- Variable datasets: Enabled
- Checksum: Enabled
Observations
- Without bootloader
- Application runs correctly
- FEE read/write works as expected
- ASW (application software) behavior is normal
- With bootloader (app at 0x20000)
- BSW works correctly
- FEE APIs execute without returning explicit errors
- BUT ASW behavior becomes incorrect
- Key Finding
- When I disable all NVM/FEE-related parameters, the ASW works correctly
- This indicates the issue is related to FEE data read/write affecting ASW variables
- Critical Observation (Block-specific behavior)
- FEE has 16 blocks (64 bytes each)
- Data is used in multiple blocks (e.g., Block 5 and Block 6)
Case 1:Using Block 6 only → ASW works correctly
Case 2:Using both Block 5 and Block 6 → ASW fails
Case 3:Disabling Block 5 → ASW works again
Analysis Done
- Verified linker configuration:
- Application located at
0x00020000 - No obvious RAM overlap
- Application located at
- FEE data stored in Bank 7
- Behavior suggests:
- No direct crash or exception
- Possible data corruption during FEE read
- Issue seems position/layout dependent, not specific to block content
Questions
- Could this be related to:
- FEE block packing across virtual sector boundaries?
- Alignment issues due to 8-byte write granularity?
- Is there any known issue when:
- Application is relocated (bootloader case)
- FEE layout remains unchanged?
- Does FEE require:
- Additional free space (beyond configured blocks) for internal operations like garbage collection
- Could virtual sector size be insufficient leading to:
- corruption when additional blocks (e.g., Block 5) are enabled?
- Any known constraints regarding:
- block ordering
- block alignment
- or total usable capacity vs configured capacity?
Regards,
Prajakta