TI中文支持网
TI专业的中文技术问题搜集分享网站

pcie例程运行错误

将K2的PCIE的例程加载到自己的板子上6630的板子上,加载core0或是core1的时候,运行的时候没有输出,同时将PCIE.OUT加载到core0和core1,也不行。如图:

1、请问这是内存配置不对吗?

2、我用的是自己的板子6630,通过ARM来激活让DSP核跑起来,从图中可以看出是通过flash 来boot,而例程要求是no boot,是不是因为这个原因导致的?如果是,怎么修改将例程配置为 nand flash 启动?

3、将同一个PCIE.out同时加载到core0和core1,程序是怎么自己识别内核的不同,然后修改设备号device0和device1,然后core0为RC,core1为EP?  是否要修改例程,分别修改为RC和EP,然后在编译分别加载到core0和core1?

user4755472:

已经根据板子的时钟,将dsp core的时钟改为1200MHz,所以应该不是时钟问题

Nancy Wang:

回复 user4755472:

要将开发板上的Boot Configuration Pins改成no boot模式。您是买的evm板吗?

user4755472:

回复 Nancy Wang:

不是evm板,是自己做的板子,dsp是ARM的操作系统通过flash启动的!

请问,可不可以修改例程,改为为NAND FLASH boot mode?

Nancy Wang:

回复 user4755472:

问题解决了吗?你试一下从ccs->script->GlobalDefaultSetup一下,再load程序看能不能输出。

user4755472:

回复 Nancy Wang:

您好!刚刚试了一下  Global default setup还是不行,应该是跟ARM配置发生了冲突…

user4755472:

回复 Nancy Wang:

Nancy Wang您好!问题没有解决哦。我按您说的方法试了还是不行。我试了一下几个步骤,但例程还是没有正常运行,您能帮我分析分析吗?如下: 1、通过设置断点单步运行,程序卡在DDR_test这个函数的位置,我觉的应该是因为ARM上的操作系统就跑DDR3上,运行DDR_test的时候把操作系统的空间给摸去了。所以我就注释掉DDR_test不执行了。 2、注释掉DDR_test之后再单步调试,程序运行到serdes_initial有卡死了,跳进去看是因为serdes的PLL一直没有锁定,如下图。所以一直卡在那里。为什么serdes的PLL没法锁定啊?什么原因导致的呢?怎么配置serdes的PLL呢? 3、我注视点serdes的PLL锁定检测等待函数,跳过之后(即默认serdes的PLL是锁定的),又在PCIe link train 这个地方停了,意思就是PCIe链接训练没有完成,链接失败了(这是在LOOPBACK模式下,单个核的RC模式下),这是不是因为实际上serdes的PLL没有锁定? 4、core0做RC,core1做EP,同样没有成功…….. 能帮分析一下什么原因吗?

赞(0)
未经允许不得转载:TI中文支持网 » pcie例程运行错误
分享到: 更多 (0)