[FPGA] 请教,FPGA中提示 has multiple drivers due to the non-tri-state driver

[复制链接]
 楼主| 小研究 发表于 2015-11-8 00:17 | 显示全部楼层 |阅读模式
我在FPGA中自定义了一个FIFO,一个RAM,两者都与DSP的总线XD(16位)相连,错误提示如下:
Error: The pin "XD[0]" has multiple drivers due to the non-tri-state driver "dataram:ram_hinbc2|altsyncram:altsyncram_component|altsyncram_lra1:auto_generated|q_a[13]"
一直到XD[15],都有同样的提示。
FIFO与RAM的片选地址并不相同,请问该如何处理,谢谢。
如下:
newfifo fifo2_armtodsp(//FIFO COMPONET
        .aclr(FIFO2CLR),
        .data(DATA),
        .rdclk(XCLK_DSPOUT),
        .rdreq(FIFO2RD),
        .wrclk(FIFO_CLK),
        .wrreq(FIFO2WR),
        .q(XD),
        .rdusedw(FIFO2RDDW),
        .wrusedw(FIFO2WRDW)
        );
以上是FIFO的定义。
dataram ram_hinab1(
        .address(add_hin),
        .clken (cs_hinab1),
        .clock(XCLK_DSPOUT),
        .data(RD_CNT_HINAB1),
        .wren(wr_hin),
        .q(XD)
        );
以上是RAM的定义。
两个模块都有.q(XD)。
 楼主| 小研究 发表于 2015-11-8 12:51 | 显示全部楼层

XD数据总线定义成inout,有人说inout端口不能声明为reg型,事实上,我把XD在always语句中赋值时定义成reg型,编译并没有出错。
我想用这个办法来解决XD多驱动的问题。
jlhgold 发表于 2015-11-8 21:51 | 显示全部楼层
既然是inout为啥要reg 我虽然fpga没入门 但是我记得inout要定义成wire吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

153

主题

869

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部