微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > Xilinx中关于IDDR原语的使用疑问

Xilinx中关于IDDR原语的使用疑问

时间:10-02 整理:3721RD 点击:
在ISE中编写Verilog代码,下载到FPGA中进行验证,出现一些问题,怀疑与IDDR原语的使用有关。
具体代码段如下所示:
----------------------------------------------------------------------------------------
assign CRS = (pos_RX_DV==1'b1 && neg_RX_DV==1'b1) ||
                    (pos_RX_DV==1'b0 && neg_RX_DV==1'b1 && pos_RXD==4'hf && neg_RXD==4'hf) ;
----------------------------------------------------------------------------------------
说明:(1)pos_RX_DV、neg_RX_DV 是由一个IDDR原语输出的两个信号;
                pos_RXD[3:0]、neg_RXD[3:0] 是由4个IDDR原语输出的一组信号,如第一个IDDR产生一组pos_RXD[0]和neg_RXD[0]。
         (2)这些由IDDR输出信号所生成的“CRS”,在我当前的测试条件下,在程序中是没有用到的(if...else语句中属于没有被选中的分支)。
现象:当生成CRS的这段组合逻辑中存在“pos_RXD”和“neg_RXD”信号时,下载后的程序就没有办法正确工作(chipscope正确,且CRS信号在当前测试中对程序是没有作用的);如果去掉“pos_RXD”和“neg_RXD”,下载后FPGA就可以正确工作。但是在其他测试条件下,我是需要“CRS”这个信号的,我认为可能和IDDR的使用有关,毕竟“pos_RXD”和“neg_RXD”是由4个IDDR生成,又合在一起使用的,不知道是不是我用的不对。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top