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.

新手接触C6670,关于IBL和SPI NOR FLASH 启动问题,真心求教

个位高手:

            新手接触C6670,有2个问题求教。.

1. TI EVM都有IBL, EVM上存在IBL主要有两个作用:a)解决C667x PG1.0芯片中PLL unlock的问题,具体可参考Errata Advisory8,即首先进入IBL对PLL进行重配并lock,之后再跳转到二级boot;b)支持Norflash、Nandflash及Ethernet二级boot。在设计板子时,如果不需要二级boot,则EEPROM及IBL不是必须的;考虑到C667x PG1.0 PLL Unlock的问题,建议在设计时带上EEPROM。

请问,目前我使用的是C667x PG2.0 ,是否还存在 PLL Unlock的问题?

2. 我们做的板子上没有挂载EEPROM,想通过RBL直接启动SPI NOR FLASH,之前的同事工程作了双镜像启动,目的是解决RBL .无法从配置表初始化DDR的问题,我想知道C6670   SPI NOR FLASH 启动直接从BOOT初始化DDR,有没有成功的例程分享一下,

也许上面的问题很多人问过了,但我还真心求教做过的兄弟分享下经验! 不胜感激!

  • 1 PG2.0不存在PLL unlock的问题;

    2 SPI boot parameter table中有一个DDR config table,可以用这个进行DDR的初始化,但是由于config table中没有保护所有的DDR配置参数,可能存在DDR不稳定,建议使用双镜像启动,流程参考如下:

           1、首先是处理2段程序的boot参数表,将第1个程序的boot参数表放在NOR FLASH的0x00~0x7f,第2个程序的boot参数表放在NOR FLASH的0x80~0xff,2个参数表中需要定义好各自应用程序在FLASH中放置的入口地址。

           2、按照第1步中的各段地址空间的设置,将boot参数表和应用程序烧写到对应的FLASH空间上。

           3、DSP硬件复位时,设置GPIO为0001 0100 0000 1101,这样可以让RBL首先加载第1个程序的boot参数表,且正确启动第1个应用程序。

           4、第一个应用程完成的功能是初始化DDR控制器、设置DEVSTAT寄存器、清零boot magic地址以及跳转到RBL入口,这个过程注意的是设置DEVSTAT寄存器时,必须正确设置 DEVSTAT[7:6],使得RBL能正确加载到第2个boot参数表,由于我的第2个boot参数表是放置在 0x80~0xff上的,因此对 DEVSTAT[7:6]设置为01,boot参数表的地址与 DEVSTAT[7:6]的关系式   address =   DEVSTAT[7:6] x 128。

     

  • Andy Yin1 

    你真是太棒了!我按照你的方法去做,成功的解决了我公司当前的问题,谢谢~~~~~~~~~

  • 请问如何跳转到RBL入口?
  • 兄弟能说说RBL双镜像启动是怎么实现的吗?
    qq:179149818
x 出现错误。请重试或与管理员联系。