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.

EMIF Boot C66x Booting from parallel NOR Flash

I have some questions on the EMIF booting options on the C66x DSP.

1) Is the C6678 DSP, revision 1, capable of booting off of a parallel NOR FLASH part if the IBL is used first to patch the PLL problem using the I2C interface? 

   I notice the EMIF can boot and run some code from our NOR FLASH but it is anything but stable.

2) I have an TDXEVM6678L evaluation board.  But I would like to have my own board with an external NOR EMIF based FLASH be my boot source.

  If I use the i2crom_0x51_c6678_le.bin file that comes pre-compiled mcsdk_2_00_05_17 and then emulate the EVM's FPGA's SPI response for the boot mode registers located at address 4 and 5 to include the boot word for the GPIO of that of the EMIF would this be a viable EMIF boot solution?

I'd prefer just to modify the IBL but since I can't get that to compile I stuck trying to work with the existing compiled file.

Thanks

  • In the EVM we don't have a NOR flash connected through the EMIF. However, you have one connected through SPI. For your board it will be more easier, if you modify IBL to do PLL fix and always jump to EMIF NOR boot. Alternatively, you can use a simpll PLL fix that we have provided on our public website and then jump to the desired boot. As of now this PLL fix zip file have provisions to boot to Ethernet, PCie or SRIO. You can easiloy change this to boot to EMIF after the PLL fix.

    The link for the PLL fix is below:

    http://processors.wiki.ti.com/index.php/Keystone_Device_Architecture

    Thanks,

    Arun.

  • Hi Arun,

    I am designing a clone of the C6678 EVM, I am trying to understand my options for working around the PLL issue with Rev 1 silicon.  Ideally we would like not to use the FPGA to assist with booting.

    Are you saying that there is an IBL-based fix for the PLL available - i.e. the FPGA is not required to assist with booting? If so, please provide a link to the source code? (I can't see any obvious IBL source link from the wiki link you give above - I can see RBL source, but only IBL binaries).

    Many thanks

    Paul

  • Hi Paul,

    Sorry for the great dealy. Are you still looking for some reference code?

    Thanks,

    Arun.

  • For what it's worth, I've just finished adapting the IBL for our new board which has an EMIF NOR flash.  (I also have a matching norwriter etc.)

    This was fairly straightforward, in the sense that EMIF NOR is already a possible permutation of the IBL, albeit not normally compiled into the 6678 IBL.  There were some minor bugs I had to battle my way through, but it now works fine.

    This has the advantage of also setting up the PLLs, DDR, etc. and having the flexibility to boot one of several images from Flash (eg. a POST and a real application) based on a DIP switch.

    The disadvantage is that the EEPROM is quite slow.  It would be nice to be able to dispense with the EEPROM and whack the IBL at the front of Flash.  I realise there are complications to this - you would need to adapt parts of the primary ROM bootloader to process a boot table and copy flash into L2 - far too much work for my taste, and the startup time is not important in our application.

  • Hi Gordon,

    If you are using your custom board, you can also have the IBL in SPI which is little faster than EEPROM.

    Thanks,

    Arun.