Vectors
建立一个电路,有一个3bit输入,输出这个向量,并将其分割为三个单独的1bit信号输出,电路图如下:
module top_module (
input wire [2:0] vec,
output wire [2:0] outv,
output wire o2,
output wire o1,
output wire o0 );
assign outv = vec;
assign {
o2, o1, o0} = vec;
endmodule
Vectors in more detail
建立一个组合电路将16bit输入分为高字节和低字节
module top_module(
input wire [15:0] in,
output wire [7:0] out_hi,
output wire [7:0] out_lo );
assign {
out_hi, out_lo} = in;
endmodule
Vector part select
一个32bit的向量可以看做4字节,建立一个电路将32bit输入的字节顺序翻转输出,如下:
AaaaaaaaBbbbbbbbCcccccccDddddddd => DdddddddCcccccccBbbbbbbbAaaaaaaa
该操作常用于大小端转换
module top_module(
input [31