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.

Boot from XINF zone6 parallel Flash problem in tms320c28346

Other Parts Discussed in Thread: TMS320C28346, CONTROLSUITE, UNIFLASH

hi,


When I use tms320c28346, because it has no internal flash, I design parallel boot from exteral flash. MAX29GL640EL FLASH memory onto zone 6 of the XINTF is used. The crystal of 30M Hz is used as tms320c28346 exteral clock. the connections as fellow:
XA0 to XA19 are connected to A0 to A19 on the external memory device, the A20, A21 on the external menory device is pulled up.
XD0 to XD15 are connected I/O0 to I/O15 on the external memory device.
XZCS6n is connected to CE, XRD(D15 pin) to OE, XWE0(E15 pin) is connected to WE on the external memory device.
I program my program through SDFlashWriter. Boot mode 9(Jump to XINTF x16) is selected. Before power on my board, XA12, XA13,X14,X15 are set to 1,0,0,1. but it can not run from external Flash. Then I use command : asm(" MOVL XAR7, #0x100000"), asm(" LCR *XAR7") in the tms320c28346 internal RAM, I find the program can run normally in the external flash.
please give me some suggestions. thanks.

Here below attached are :

1.  The boot code we programed into the external flash .  4405.BootTestProg.zip

2.The read out binary result from the SDFlash tool of the program result.  0143.ParallelFlashProgramCompare.docx

3.The hardware layout picture

 

 

  • Hi Chuang,

    chuang lu said:
    Then I use command : asm(" MOVL XAR7, #0x100000"), asm(" LCR *XAR7") in the tms320c28346 internal RAM, I find the program can run normally in the external flash.

    2834x bootROM sources are provided in controlSuite (I have them in C:\ti\controlSUITE\libs\utilities\boot_rom\2834x), can you connect to the board via JTAG, load symbols and put break point in the boot mode 9 source and step through the code?

    you will not have to to rebuild the ROM sources, you will have to load symbols and step through the code.

    Please let us know if you have any questions.

    Best Regards
    santosh

  • Hi santosh,

             I have found the problem,  thanks for your suggestion. The problem is I have not connect the XREADY(B14 pin) to RY/BY of the external memory device. The internal boot loader program of tms320c28346 needs this signal high before it runs.  So I pull up the XREADY(B14 pin). Now, It is ok.

           Many thanks to you.

          Best regards.

  • Hi Chuang Lu and Santosh,

    I see this is an old thread but if anyone is still looking at it I would be very glad to hear your advice.

    We areusing 28346 with a parallel bus flash. We would like to hear how you solved the following challenges:

    • I will start from the end: we should have a program that will boot from flash and copy parts or all of the program to RAM (so probably some routines will run from RAM, and maybe others will run from Flash).
    • How do you burn the program to flash using the debugger? I can think of these two options:
      • Download a small program to RAM that will receive a binary file via uart and copy it to flash. This is not difficult to do, but it leaves me with the following problems:
        • How can I later connect to the program that I burned with a debugger? Is it enough to generate a debug file and I can somehow connect and reset the device using a debugger?
        • It will force us to use the debugger + CCS for every board we make (money...)
      • Use SDFlash or UniFlash to burn a file directly to flash. In this case I have the following questions:
        • Maybe I missed some documents, but I couldn't understand how to work with any of these programs. Each program requires drivers or xml files. Am I supposed to generate them myself? Any instructions on how to do it? Can these files be obtained from TI or from SST or SD? Do you happen to have some ready files you can share?
        • And again, can I later connect to the board using a debugger?
        • Both SDFlash and UniFlash look like they are free and stand alone, but both are somehow connected to CCS. Will it be possible to use one of them without CCS, maybe with a simpler and cheaper JTAG hardware?

    Thanks a lot,

    Rachel