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.

C2000 f28069 boot mode

Hello, I am using a F28069 and I'm putting it on a custom PCB. I've modeled my PCB after the F28069 Control Card.  I want to be able to boot from flash memory if there is no external emulator connected. If there is an emulator connected, I want to load new code on using the 14-pin JTAG interface (which is connected to an external XDS100v2). 

I've looked at the Technical Reference Manual, and this is what I've gathered so far: 

- If TRSTn is high (emulator is present), then the C2000 goes through an emulation boot, which depends on EMU_BMODE values. 

- If TRSTn is low (emulator is absent), then the C2000 can go into a variety of boot modes, depending on TDO and CMP2OUT pins.

- The C2000 Control Card has a switch that either keeps TDO connected to ground with a pull-down (switch is off) or connects TDO to Vcc using a pull-up (switch is on). CMP2OUT is not connected.

- The technical reference manual says that pins involved with boot mode selection have their pull-ups enabled automatically after reset. 

 

I'm very confused as to the state of the C2000 if the emulator is not connected. Additionally, if the emulator is connected, I've seen that the Control Card switch that adds a pull-up resistor to TDO must be turned on in order to write to flash. This does not make sense to me. I appreciate any help clarifying the information that is presented. How can I connect TDO and CMP2OUT to allow an unprogrammed C2000 F28069 to operate in the manner that I have specified? 

  • Matthew,

    I prefer to think of the two boot pins as TDO and GPIO34.  And this is how they're referenced in the F28069 controlCARD schematics.

    SW1 on the controlCARD will choose the bootmode when an emulator is not connected.  If both TDO and GPIO34 are pulled high, then the device will boot to flash.

    Hopefully this helps to clarify things.  If not let me know.


    Thank you,
    Brett

  • Thanks for the quick reply. I believe I understand. I will configure TDO and GPIO34 exactly how it is configured on the C2000 Control Card Schematic, so that I have flexibility in Boot Mode selection. I will close both switches so it functions the way I would like it to. 

    I am still confused at how the internal Pull-ups work. It seems to me that they are unnecessary with the external switch.  

  • Matthew,

    The way SW1 is not absolutely ideal for one....

    Inside the chip GPIO34 and TDO will in fact be pulled high by internal pullups.  Some customers are very cost-sensitive and don't want to use a switch.  Internal pull-ups will bring the chip to 'get mode' by default.

    In the cCARD we wanted to have all options easily accessible.  We also chose that SW1's "ON" positions should equal "1" in the boot-mode table.  ie having the switch positions corresponding to GPIO34 and TDO both switched toward "ON" would mean that the device will go into 'get mode' (which is by default boot-to-flash mode).

    Because of this decision, R9 and R10 ended up needing to be pull-downs (and had to overpower the internal pull-ups) and R11 and R12 needed to be pull-ups (which needed to in-turn overpower R9/R10).

    The setup can be simpler if you don't care that "ON" equals '1'. 
    For example:
    *switches in the off-state -> internal pull-ups drive the system to get-mode
    (we generally prefer that a customer adds an additional 20kOhm external pull-up for better noise-immunity)
    *switches in the on-state -> newly connected pull-downs overdrive the internal pull-ups (these values can be 3K3 or similar)

    Hopefully this makes sense.


    Thank you,
    Brett

  • Makes perfect sense now. Thank you.