Categories

{{ selectedCategory.name }}

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

{{ topic.Content }}

No topics found!

Infineon AURIX: How to program UCB and boot CPU?

04-May-2023

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

With a predefined Program file

1. Open Hardware / 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. 

Take care when using file created from UCB plugin. When copying device content to a set in winIDEA UCB plugin, it can also set read-only UCBs.

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


Via UCB plugin

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

2. Open View / <device> Aurix / UCB and establish a debug session by performing a reset.

3. Inside the UCB plugin, create a new set via hamburger menu.

4. Inspect the current contents of the UCB in the Device Contents set and change them in the newly created set. For example, if you wish to configure TC3xx devices to boot properly, UCB_BMHD0_ORIG would be the best choice.

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.

5. Select Program to Device on the newly created set, to write new values 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 in winIDEA Help:

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!