关于xilinx的pcie仿真说明!pcie仿真建议看一下
最近论坛的兄弟们 玩pcie的时候,很多被仿真所困惑,由于很久以前玩过pcie,但是目前忘记的差不多了,就简单的说一下仿真步骤与仿真错误。1:在spartan6下,可以直接生成testbench使用。不会出现错误的情况
2: 在V5,V6,V7下不管生成的是RP 还是EC,都需要修改文件路径。具体文件忘记了,是include中指定的路径。
3: 查看·define中有没有定义simulation选项
4:查看有没有定义·timescale .
5:xilinx生成的testbench只能进行pio仿真,所以如果想仿真DMA的朋友,只能在testbench的基础上写一个,不过DMA的testbench比较简单,几天就可以搞定。
6:在进行PIO仿真的时候,找到RP端的tx开头的文件,里面有个testname 可以把那里面的内容修改掉,来实现自己的仿真。
注意的是不管怎么仿真,都必须要熟悉tlp的协议,最好是参考一下pcie的书籍。
shiyinjita(动静道人)
2014-03-31
除非是AER rc等的仿真问题,我会专门做讨论,简单的PIO仿真建议FPGA设置者自己看文档,
小编,使用xilinx生成IP核自己产生的examle project,仿真CPLD TLP时,使用dsport中TSK_TX_COMPLETION_DATA可以看到CPLD TLP在dsport端已经发出,但ep端接收不到这个TLP(其中可以收到从Endpoint到dsport的CPLD tlp包),我对寄存器参数按照网上的设置了board.RP.cfg_usrapp.TSK_READ_CFG_DW(32'h00000001); board.RP.cfg_usrapp.TSK_WRITE_CFG_DW(32'h00000001, 32'h00000007, 4'b1110);
board.RP.cfg_usrapp.TSK_READ_CFG_DW(32'h00000001);但是还是不行,期待你的解答,非常感谢。
你这样做相当于DMA模式的仿真了,不仅是RC 还有EP端都需要设置
那请问你RC抑或EP是怎样配置的呢?或者有什么文档可以说明的呢?非常感谢
本人就是在DMA模式下,但是你所说的关于模式配置有点不太明白,能否说的更为透彻一点,非常谢谢
具体忘记了,但是你可以参考英文版的标准pcie协议,我当时就是按照这个说明改的
小编,你好!我想问一下,那个DMA与PIO上电时的初始化是一样的吗?有没有相关的资料能分享一下?
大神,你好,我现在在做DMA仿真,DMA发出的MRD,RP没有收到,这是什么情况?可以将你所在的DMA,testbench拿出来,让我们学习下么
谢谢了
你做完DMA仿真了不 ?只要真正了解了PCIE/PCI ,写这个仿真很简单的
我现在遇到的问题与您所说的一样,不知道问题解决了没有?能不能分享一下?
求问小编,您所说的修改testname来实现自己的仿真是指修改里面那些task吗?这些task要在哪里调用呢?
是的,你顺着模块找就发现在哪里使用了
你好,我现在在做PCIE DMA的仿真,也遇到您提到的这个问题了,我已经将EP端的bus master enable位设置为1,还是不行,请问您是怎么解决的?谢谢啦!
你好,请问您关于PCIE-DMA仿真 EP发出Mrd TLP,根端无法接收的问题解决了吗?能分享您的解决方法吗?谢谢啦!我已经将EP端bus master enable设置为1,还是不行。
遇到同样的问题了 还没找到原因 请问你解决这个问题了吗
RP中rx中加上这三行就可以了。亲测rx端收到了mwr请求包。board.RP.cfg_usrapp.TSK_READ_CFG_DW(32'h00000001); board.RP.cfg_usrapp.TSK_WRITE_CFG_DW(32'h00000001, 32'h00000007, 4'b1110);
board.RP.cfg_usrapp.TSK_READ_CFG_DW(32'h00000001);。这是这个主题帖前几楼一个同仁的做法。
EP端发起的DMA读写操作,RP端接收不到是什么原因,是配置有问题吗,谢谢
