Categories

{{ selectedCategory.name }}

{{ topic.Title }} {{ topic.Ddate | formatDate }}

{{ topic.Content }}

No topics found!

Infineon AURIX: How to program UCB and boot CPU?

02-Sep-2022

Programming User Configuration Block (UCBmemory is essential otherwise the CPU does not have the information from which address to boot from. Refer to the Infineon documentation to determine which UCB sectors need to be programmed.


Number of writes to UCB is limited. Refer to your TriCore device documentation for the exact number of writes. Uncheck <UCB_device> box once UCB is programmed. 

Wrong UCB data can lock the device permanently. Use winIDEA Demo Mode prior FLASH programming to test whether all UCB sectors contain correct data.



Possible solutions:

1. With a predefined Program file:

1. Open Hardware menu / Options / Programming tab and check the <UCB_device> box in Programmable memory device section.



2. Add your UCB Program file to the list of files to be programmed via Debug / Configure session / SoCs / Program files. 

3. Perform Download (each time the boot address or any other part of the UCB structure is changed). 


2. Via UCB plugin:

1. Open Hardware menu / Options / Programming page and check the <UCB_device> box in Programmable memory device section.

2. Open View / <MCU> Aurix / UCB.

3. Establish a debug session by performing a reset.

4. Inside the UCB plugin, double click on the UCB you wish to program.

For example, if you wish to configure TC3xx devices to boot properly, UCB_BMHD0_ORIG would be the best choice. 

5. Inspect the current contents of the UCB and change them if necessary. Typically, you would want to change STAD, since this is the address that the device boots from. Be careful to leave other values in the legal state.


6. Once you click OK, content will be written into UCB.

  • CRC_BMHD and CRC_BMHD_N will be calculated automatically.
  • BMHDID will be forced to 0xB359.
  • Content of the *_ORIG UCB will be programmed to the *_COPY UCB as well.


For more information on booting and using UCB_BMHD1-3, please refer to the Infineon documentation.


More resources:

Was this answer helpful?

Sorry this article didn't answer your question, we'd love to hear how we can improve it.
Note: This form won't submit a case. We'll just use it to make this article better.

Similar topics

{{ topic.Title }} {{ topic.Ddate | formatDate }}

{{ topic.Content }}

No similar topics found!

Other topics in the same category

{{ topic.Title }} {{ topic.Ddate | formatDate }}

{{ topic.Content }}

No topics found!