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.

专家好,我是做PCIE的新手,想要请教几个问题



我们的系统将来是将6678通过PCIE同PowerPC通信,我现在是用evm加上AMC转PCIE适配器在windows下调试。现在我在论坛上看到了两种解决方案:

一种是STK软件包里的例程,较为复杂。主要是DSP之间通过PCIE传输,不知道是否符合我的开发需求。

第二种是利用PCIE boot mode的方法,我看了\mcsdk_2_01_00_03\tools\boot_loader\examples\pcie下的代码,里面就没有PCIE初始化的部分(这部分什么地方执行?),而大部分工作都是在驱动中完成(参考pciedemo.c)。

现在困扰我的是,第二种方法看起来比较简单,但是我本身的应用程序应当如何修改,而且这种方法是否不能在线调试?谢谢

  • 如果你使用pcie boot mode,则上电后C6678 ROM中烧写的RBL会根据boot pin的状态进行PCIe的初始化,之后就可以进行PCIe通信;如果RBL中PCIe的初始化不能满足需求,怎可以如pciedemo或者STK代码对PCIE进行重新初始化。

    如果采用第二种方法,上电后RBL完成了PCIe的初始化,也可以通过ccs连接进行调试。

  • 您好,如果移植到我自己的做的PCB板卡上,我需要做哪些工作和修改?比如说RBL是芯片自带的吗?

    如果我的硬件环境和评估板不同的话,那是否就不能采用pcie boot mode的方式了?比如说pcie boo mode的readme文档中The role of IBL in PCIE boot mode这一节中提到IBL的执行步骤,设计到了FPGA,这个FPGA是否就是EVM上的FPGA?那如果我自己的PCB板卡上没有这个FPGA,我是否就不能采用这种方法进行开发?

  • RBL是烧写在C6678 ROM中,跟板子及FPGA等均无关,也是可以通过对boot pin的设置配置成pcie boot mode。IBL只是对PG1.0的版本推荐使用IBL进行二次加载规避Errata中提到的PLL unlock问题,对于2.0的芯片不需要IBL就可以成功完成PCIe boot,在RBL中就会配置好PCIe。