欢迎光临散文网 会员登陆 & 注册

HDLBits (11) — 向量

2021-09-12 01:00 作者:僚机Wingplane  | 我要投稿

本题链接:

https://hdlbits.01xz.net/wiki/Vector0

向量使用一个名称对相关信号进行分组,以便更方便地操作。 例如 wire [7:0] w 声明了一个名为 w 的 8 位向量,它在功能上等同于具有 8 条单独的线网。

注意,与 C 语法不一样的是向量的声明将位宽放在向量名称之前。 但是可以在之后通过选择名称之后的位宽达到选取期望使用的部分。

构建一个具有一个 3 位输入的电路,然后输出相同的向量,并将其拆分为三个单独的 1 位输出。 将输出的 o0 连接到输入向量的位置 0,将 o1 连接到位置 1,等等。

在图中,旁边带有数字的刻度线表示向量(或“总线”)的宽度,而不是为向量中的每一位使用单独的线网。


模块声明:

题目

答案

输出波形

当位宽大于 1 时,wire 或 reg 即可声明为向量的形式。我们可以指定某一位或若干相邻位,作为其他逻辑使用。Verilog 支持可变的向量域选择,持指定 bit 位后固定位宽的向量域选择访问。

  • [bit+: width] : 从起始 bit 位开始递增,位宽为 width。

  • [bit-: width] : 从起始 bit 位开始递减,位宽为 width。

对信号重新进行组合成新的向量时,需要借助大括号。

参考内容:

2.3 Verilog 数据类型 | 菜鸟教程:

https://www.runoob.com/w3cnote/verilog-data-type.html


HDLBits (11) — 向量的评论 (共 条)

分享到微博请遵守国家法律