TIDUEY4D August   2022  – December 2022

 

  1.   Description
  2.   Resources
  3.   Features
  4.   Applications
  5.   5
  6. 1System Description
    1. 1.1 Key System Specifications
  7. 2System Overview
    1. 2.1 Block Diagram
    2. 2.2 Design Considerations
      1. 2.2.1 Building Blocks
      2. 2.2.2 Flash Partitioning
      3. 2.2.3 LFU Switchover Concepts
      4. 2.2.4 Application LFU Flow
  8. 3Hardware, Software, Testing Requirements, and Test Results
    1. 3.1 Hardware Requirements
    2. 3.2 Software Requirements
      1. 3.2.1 Software Package Contents
      2. 3.2.2 Software Structure
    3. 3.3 Introduction to the TIDM-DC-DC-BUCK
    4. 3.4 Test Setup
      1. 3.4.1 Loading the Custom Bootloader and Application to Flash using CCS
    5. 3.5 Test Results
      1. 3.5.1 Running the LFU Demo with Control Loop Running on the CPU
      2. 3.5.2 Running the LFU Demo with Control Loop Running on the CLA
      3. 3.5.3 LFU Flow on the CPU
      4. 3.5.4 LFU Flow on the CLA
      5. 3.5.5 Assumptions
      6. 3.5.6 Preparing Firmware for LFU
      7. 3.5.7 LFU Compiler Support
      8. 3.5.8 Robustness
      9. 3.5.9 LFU Use-Cases
  9. 4FOTA Example
    1. 4.1 Abstract
    2. 4.2 Introduction
    3. 4.3 Hardware Requirements
    4. 4.4 Software Requirements
    5. 4.5 Running the example
  10. 5Design and Documentation Support
    1. 5.1 Software Files
    2. 5.2 Documentation Support
    3. 5.3 Support Resources
    4. 5.4 Trademarks
  11. 6Terminology
  12. 7About the Author
  13. 8Revision History

Running the LFU Demo with Control Loop Running on the CLA

If the user wants to generate the .txt files for the projects built with the control loop running on the CLA, the only change necessary is to change the pre-defined compiler symbol BUCK_CONTROL_RUNNING_ON_CPU to BUCK_CONTROL_RUNNING_ON_CLA. Refer to Figure 3-6 for details. The generated .txt file is renamed with a _cla to distinguish it from the corresponding .txt file running on the CPU.

GUID-20201112-CA0I-LZGK-H03X-5WNJSHRTB3ST-low.pngFigure 3-6 Pre-defined Symbol for CLA Build of Project

Once the user has run the LFU demo with the Control loop running on the CPU, running the LFU demo with the Control loop running on the CLA is straightforward, and attention needs to be paid to only a few points:

  1. If the device already contains the Application files corresponding to the CPU side control loop, this update can be made using the same LFU commands as in the previous section, except with the updated .txt names corresponding to the CLA build (mentioned in Table 3-1). For example, when updating from BANK0_FLASH to BANK1_FLASH, execute the command:
    • On F28004x: serial_flash_programmer_appln.exe -d f28004x -k f28004x_fw_upgrade_example\flashapi_ex2_sci_kernel-CPU1-RAM.txt -a buck_F28004x_lfuBANK1FLASH_cla.txt -b 9600 -p COM11
    • On F28003x: serial_flash_programmer_appln.exe -d f28003x -k f28004x_fw_upgrade_example\flashapi_ex2_sci_kernel-CPU1-RAM.txt -a buck_F28003x_lfuBANK1FLASH_cla.txt -b 9600 -p COM11
  2. The CLA setup function occurs in main() on a device reset (not after an LFU switch), so it is important to reset the device after running the LFU, so that this initialization is performed. For example, with control loop running on the CPU, assume that BANK0_FLASH was updated last. This means the firmware on BANK0 is executing. So the user will need to execute the LFU command to update BANK1_FLASH (with the CLA side executable). After the LFU update is complete, a device reset is required. The device reset needs to be done only once.

    Then the user can perform additional LFU updates with the CLA side firmware executables, without device reset.

  3. Figure 3-7 and Figure 3-8 demonstrate LFU switchover with the Control loop running on the CLA. There is a background task that toggles a GPIO every 1ms, and this GPIO is available on header J4 of the Launchpad, signal 33. Note how the LFU switchover in this case can, in general, overlap with ISR execution, because the ISR executes on the CLA whereas LFU occurs on the CPU. This is not an issue in general, but there can be scenarios where this is not acceptable. The signals shown in Figure 3-7 and Figure 3-8 are LFU switchover, CLA ISR load, CLA background task execution, and the regulated output voltage.
GUID-20201112-CA0I-LH1P-HC1H-THNTXNBD4KHH-low.pngFigure 3-7 LFU Switchover Timing – Control loop on CLA
GUID-20201112-CA0I-D6PL-LBWP-ZFQTF9PX0CNM-low.pngFigure 3-8 CLA Background Task