【问题标题】:Bus input and output to multiple modules in VerilogVerilog中多个模块的总线输入和输出
【发布时间】:2013-02-20 00:19:47
【问题描述】:

我正在创建一个模块 xxx 16 次,每个模块都有一个 16 位总线输入和 1 位输出。

wire [15:0]    a[0:15];
wire [0:15]    o;
genvar i;
generate
for(i=0; i<16; i=i+1) begin: n_loop
  xxx yy(
    .in    (a[i]);
    .out   (o[i]);
  );
  end
endgenerate

这将连接所有a0...a14 线总线,每个 16 位到 16 个模块,并且模块输出也将连接到 o 总线?

【问题讨论】:

  • 不应该是电线 [15:0]。

标签: verilog


【解决方案1】:

我不知道你的模块 xxx 是什么样的,所以很难评论它的实例化。我希望您已经实现了某种类型的多路复用器来选择您在线路 o 上拥有的单个位。

你的问题有点令人困惑,但如果我认为你想要一个 16 位输入和一个 1 位输出,你想要这样的东西:

wire [15:0]    a[0:15];
wire o;
genvar i;
generate
for(i=0; i<16; i=i+1) begin: n_loop
// o would only be one bit selected by mux in your xxx module
  xxx yy(.in(a[i]), .out(o));
  end
endgenerate

这就是你的问题的意思吗?

如果不只是留下更具描述性的评论,我会尽力提供帮助!

【讨论】:

    猜你喜欢
    • 2013-10-20
    • 2021-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多