要实现如下的功能:
AaaaaaaaBbbbbbbbCcccccccDddddddd => DdddddddCcccccccBbbbbbbbAaaaaaaa
错误代码:
module top_module(
input [31:0] in,
output [31:0] out );//
// assign out[31:24] = ...;
assign out[24:31]=in[7:0];
assign out[16:23]=in[15:8];
assign out[8:15]=in[23:16];
assign out[0:7]=in[31:24];
endmodule
正确代码:
module top_module(
input [31:0] in,
output [31:0] out );//
// assign out[31:24] = ...;
assign out[31:24]=in[7:0];
assign out[23:16]=in[15:8];
assign out[15:8]=in[23:16];
assign out[7:0]=in[31:24];
endmodule
有一个需要说明:就是我们在定义向量的时候如果按照这样的方式wire [7:0]node 的格式来做,那第一位其实是node[7],最高位是node[0].如果按照如下的方式来定义wire[0:7]node2,那么第一位是node2[0],最高位是node2[7].需要按照定义的方式来确定最高和最低位。
标签:24,23,32,31,module,反转,assign,向量,out From: https://www.cnblogs.com/VARForrest/p/16778168.html