See Configuration Programming of UCD Devices for details on the UCD90240, UCD90320 and UCD90320U devices (e2e.ti.com/.../1007.Configuration-Programming-of-UCD-Devices.pdf).
On a physical level, all UCD90xxx devices support programming through a PMBus port, and some support a JTAG port (JTAG not supported by the UCD90320U, UCD90320, and UCD90240 devices).
PMBus programming includes two general approaches:
1. Sending parameters individually using the project file (.xml)
2. Sending data flash image using the data flash file (.hex)
The project file contains all the configurations. UCD90xxx devices receive parameters individually through corresponding PMBus commands and validate the value ranges before storing into the SRAM and execute the new settings. This is safe, but takes a relatively long time to communicate. The settings take effect immediately, which may generate some glitches on the IO output.
The data flash file is an image of the device flash. The PMBus host transfers data into the UCD90xxx by chuck, and thus the communication is relatively fast. There is a checksum included in the data flash file. If the data flash content does not match the checksum, the UCD90xxx does not execute the configuration and behaves as a blank device. In this way, the UCD90xxx is also protected against communication error. The settings transferred by the image file do not take effect until a reset or power cycle is triggered.
The Fusion GUI can only export a data flash file from a connected online device. For both approaches, the Fusion GUI can generate a script to download a project file or data flash file into the device. You only need to execute the script according PMBus protocol, without the need to learn each PMBus command. It is recommended to implement a PEC in the PMBus host, which provides an additional layer of protection.
JTAG programming does not have the layers of protection as PMBus because JTAG has direct access to flash. If not executed correctly, it may "brick" the device. Also, due to the many versions of JTAG, you must verify that their JTAG tool is compatible with the device. The best way is to try the tool on the EVM.
There are three ways to program the devices in production:
1. Download the configuration to the device at the first board power-up.
2. Use a programmer to download configuration before assembly.
3. Use a third-party service.
TI does not directly support a programmer. Some programmer venders include System General, BP Micro, Elenc, and so forth. Some distributors provide a programming service such as Arrow and Avnet
For more FAQ please check the following document.