I understand that IPAT provides a way to access parameters through fixed table entries rather than directly accessing variable memory addresses. However, I'm still facing a practical challenge in my implementation.
Currently, my MCU can control algorithm parameters in Sigma Studio through IPAT, but I need to send three commands:
1. Write the parameter value to the IPAT values_11 address (e.g., 0x6015)
2. Write the start_address value (e.g., 0x6008) pointing to the IPAT entry
3. Write the num_of_loads_and_trigger value (e.g., 0x6009) to execute the transfer
My concern is: If the addresses for `start_address` (0x6008) and `num_of_loads_and_trigger` (0x6009) can change with each project compilation, then IPAT hasn't completely solved the problem of variable addresses. I would still need to extract these two addresses from the compiled system files after each compilation, just like I would need to do with safe load addresses.
The core issue seems to be:
- IPAT fixes the addresses for parameter values (like values_11 at 0x6015)
- But the IPAT control registers themselves (start_address and num_of_loads_and_trigger) still have variable addresses
Could you clarify if there's a way to lock these IPAT control register addresses as well? Or is the standard practice to always extract these addresses from the compiled project?