This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F280049M: Booting F28049 vs F2803x

Genius 12760 points

Part Number: TMS320F280049M

With the F2803x, we have from the datasheet Table 3-6 Boot Mode Selection on our current control board:

1.      In normal operation:

-        GPIO37 – Pullup resistor to Vcc

-        GPIO34 – Not connected

-        We are in Mode=3 (GetMode) which is by default ‘Boot to Flash’

2.      In programming mode (JTAG-programming header is connected):

-        GPIO37 – Pullup resistor to Vcc

-        GPIO34 – Connect to GND.  Note: this is achieved by routing GPIO34 to the programming header…  The GND connection is present only when the prog header is connected.

-        We are in Mode=2 (Wait) to allow our JTAG programmer to connect without tripping flash security which we enable.

 

So moving to F280049 (Table 6-9. Device Default Boot Modes), our plan for the new control board is:

1.      In normal operation:

-        GPIO24=1 – Not connected.

-        GPIO32=1 – Pullup resistor to Vcc

Q: From Section 4.5, pullups are disabled by default, In this case, I will add a pullup resistor to Vcc just like GPIO32. In normal operation, we want to be in Boot_Mode=Flash, so pullups to Vcc on GPIO24 and GPIO32 should be ok right?

 

2.      In programming mode:

-        GPIO24=0 – Connect to GND.  

Q: We plan to implement the same solution as we did for GPIO34 in F28033/64pin by routing GPIO24 to the prog header. Can you confirm that this should work to allow JTAG programmer to connect without tripping flash security?

-        GPIO32=1 – Pullup resistor to Vcc

-        Our intention is that we are in Mode=Wait.  However, in Table 6-9, Wait and SCI are now in the same mode unlike in Piccolo where they are separate. 

Q: How are SCI and WAIT modes differentiated then?  I mean, how do we make sure that the DSP is in Wait mode and not enter SCI mode?

 

 

Regards, Bernd

  • Bernd,

    BO said:

    In normal operation:

    -        GPIO24=1 – Not connected.

    -        GPIO32=1 – Pullup resistor to Vcc

    Q: From Section 4.5, pullups are disabled by default, In this case, I will add a pullup resistor to Vcc just like GPIO32. In normal operation, we want to be in Boot_Mode=Flash, so pullups to Vcc on GPIO24 and GPIO32 should be ok right?

     

    yes, pull ups on both GPIO24 and GPIO32 will get the device to boot to flash.

    BO said:

    In programming mode:

    -        GPIO24=0 – Connect to GND.  

    Q: We plan to implement the same solution as we did for GPIO34 in F28033/64pin by routing GPIO24 to the prog header. Can you confirm that this should work to allow JTAG programmer to connect without tripping flash security?

    -        GPIO32=1 – Pullup resistor to Vcc

    -        Our intention is that we are in Mode=Wait.  However, in Table 6-9, Wait and SCI are now in the same mode unlike in Piccolo where they are separate. 

    Q: How are SCI and WAIT modes differentiated then?  I mean, how do we make sure that the DSP is in Wait mode and not enter SCI mode?

    As long as you can make sure that the placing the programming header will pull the GPIO pin 24 LOW on power up or after reset then it should be fine.

    F28004x when in GPIO24 is LOW and GPIO32 is HIGH, defaults to SCI Boot. We are recommending customers to use SCI BOOT as WAIT BOOT because in this mode the ROM code waits for toggle sequence on SCIA RX pin (GPIO28 by default) for AutoBaud Lock. So while the ROM code is waiting for the AutoBaud lock customer should be able to connect JTAG for programmation. Note that SCIATX is (GPIO29) is not configured for peripheral function unless the autobaud locks. So device will not be sending out any data on GPIO29 so it should be fine.

    Also if you are only alternating between waitboot and flash boot, and you don't wish to use up two pins for boot mode selections on your board then there is a way to modify the boot pin usage and this is explained in section 3.3.3 of the device TRM. But you would need to have the USER OTP locations programmed to get to these options. 

    Hope this helps.

    Best Regards

    Santosh Athuru