自学内容网 自学内容网

FPGA_HDLBits:2.2Vectors&2.3ModulesHierarchy

FPGA_HDLBits:2.2Vectors&2.3ModulesHierarchy

说明:仅对自己做的HDL Bits中的2.2-2.3章节题目的错误部分做的记录,正确的也就没有记录,可以理解为个人的错题本

  1. 对于reg [15:0]input input[0:7]是调用低位而不是取最高位,而且调的是最低7位的倒序

  2. 按位异或(XOR) ^

  3. assign {out[7:0], out[15:8]} = in; 也是对的

  4. 2.2.6 module top_module (
    input [4:0] a, b, c, d, e, f,
    output [7:0] w, x, y, z );

    assign { w, x, y, z } = {a[4:0], b[4:0], c[4:0], d[4:0], e[4:0], f[4:0],2’b11};

  5. 输入高低位反转


// assign out = in[0:7];

assign out =  {in[0], in[1], in[2], in[3], in[4], in[5], in[6], in[7]};

verilog中没有in[0:7]的赋值,要把每一位单独拿出来取反

  1. 关于位拼接

// assign out = { 24{in[7]},in };

assign out = { {24{in[7]}},in };

> 拼接24{in[7]}的外面仍然要再加一层{}
  1. 关于多位宽的变量定义

// wire [7:0]q0,[7:0]q1,[7:0]q2;

wire [7:0]q0,q1,q2;

定义连续三个宽度都是8的变量只需要在第一个变量的名称前写对用的[7:0]


原文地址:https://blog.csdn.net/qq_45956475/article/details/140232821

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!