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

TMS320C6678EVM板与Xilinx K7 测试问题

如题选用的平台为6678EVM与K7 评估板,二者之间通过转接板连接,DSP侧采用的是论坛中的SRIO测试程序,K7为申请的IP核生成的,将DSP侧程序配置成No_loop,5.0GHz,一个4x,DSp的参考时钟为312.5MHz,K7侧同样配置成5.0GHz,一个4x,但是参考时钟为125MHz
实验现象:上电后,运行DSP侧程序,DSP侧显示发送成功,测试完成,而FPGA侧通过Chipscrop查看,验证FPGA侧初始化完成,并没有任何其他变化

问题:

1、对于SRIO通信来说,是否要求两个设备的参考时钟完全一致?

2、试验中发现SRIO测试程序core0运行的为主设备,core1运行的为从设备,但是FPGA侧配置成了主设备,于是将DSP侧程序修改为了从设备(但是依然有core0),运行程序后,DSP侧打印已经准备好,但是并没有其他变化,是不是我改为从设备之后,还需要对DSP侧的测试程序中的其他部分修改(如ID route和message map等),或者修改FPGA侧的测试代码;

3、另外,程序中有一个dsp0_device_ID_routing_config,其中有一个DSP0_SRIO_BASE_ID定义为0xA0,请问该值是固定的吗,看代码貌似这个值是需要与目标ID进行比较的,那么该值是不是就是目标的DEV_ID?
4、如果设置DSP为从设备,进行NREAD、NWRITE等测试时,FPGA侧是否需要根据DSP的存储器映射建立相应的映射表,另外FPGA侧发送时的地址为34位,不知道怎么和DSP侧对应?
5、由上面知道,两个设备的参考时钟不一样,请问对于SRIO设备,是否必须要两个设备的参考时钟一样?
6、SRIO设备中分为bridge、memory、switch和processor,请问三者有什么区别,为什么我采用DSP侧的代码进行回环测试时,任意修改这几种配置(先设为processor后依次改为了memory和switch),测试代码都能正确运行。我个人的理解这种配置是需要和使用的设备性质一致的,如6678为处理器,就应该将其设为processor,配置成其他的话应该就会出错,另外个人认为memory是不能主动发送请求的,只能被请求读写数据,不知道这种理解是否正确,

求高手指教,不胜感激!!!

cz h:

这个论坛这么冷清呢,技术支持也没有吗?

wj xz:

回复 cz h:

能不能留个联系方式?我们用的平台一样,求指导 啊

Mark:

根据我的理解,两端的时钟是需要同源的,至于那个ID号应该是自己配置的,方便其他设备访问你的设备,可以配置成8位或者16位。我觉得如果DSP做从设备,他的地址对FPGA来说是已知的,直接给地址就行。个人理解!

我想问你一下,你在测试时对DSP的SRIO初始化时,对方的SRIO是不是也先初始化成功了,因为我也在测试,DSP的SRIO老是端口初始化不成功,卡在

/*———wait all enabled ports OK————-*/  

for(i=0; i<SRIO_MAX_PORT_NUM; i++)  

{   if(srio_cfg->blockEn.bLogic_Port_EN[i])  

 {  

  while(0==(srioRegs->RIO_SP[i].RIO_SP_ERR_STAT&     CSL_SRIO_RIO_SP_ERR_STAT_PORT_OK_MASK));

  }

这个地方,不知道是不是因为FPGA的SRIO没有初始化成功的原因

 }

Stephen chen:

我觉得时钟频率要一致,但是没必要同源。

关于DSP0_SRIO_BASE_ID,我也有相同的疑问

Mark:

DSP做从设备时,他的地址对于FPGA来说是可见的,直接将FPGA需要读写的DSP地址赋给FPGA即可。现在就是不知道如果DSP作为主设备,他的目的地址,也就是FPGA的内存地址怎么写,另外,用论坛上提供的程序让DSP做主设备调试,老是无法和FPGA完成ack_id的match,也就是不能发maintenance,求指导,非常感谢,目前DSP做从设备已调通

Stephen chen:

回复 Mark:

Mark你好,我现在也是在调6678和FPGA之间的srio。

因为目前只能从FPGA端发起,所以DSP需要做从设备。这个时候还是要运行SRIO_2DSP_Test()函数吗?还是需要运行else语句中的内容?

在DIO模式下,使用MAU负责包的接收,但是我在else语句中,没看到对MAU的设置。是我哪里理解错了吗?

Mark:

回复 Stephen chen:

DSP做从设备只需要运行else里的就可以了,注意你的时钟配置~另外,此时FPGA的目的地址就是DSP的L2,共享内存或者DDR。SRIO_2DSP_Test()函数应该是DSP做主设备时用的,如果你调通了DSP做主设备,希望能共享一下,我现在是卡在两段的ack_id match上了,一直不通。

yimin dong:

回复 Mark:

Mark你好

我现在也在做DSP和FPGA的SRIO通讯测试,不知道方不方便把你的测试程序能给我做个参考?

shiyan sun:

你好 

请问下 你的测试IP核是如何使用的呢?

直接将example design导入到工程里吗?

我现在是将example导入到工程,但是log_clk一直没有输出

所以我觉得我的核根本就没有跑起来!

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6678EVM板与Xilinx K7 测试问题
分享到: 更多 (0)