1、给定一个 8 位输入向量 [7:0],反转其位顺序。
2、复制运算符
串联运算符允许将向量连接在一起以形成更大的向量。但是有时您希望将同一件事连接在一起很多次,并且执行诸如分配 a = {b,b,b,b,b,b}; 之类的事情仍然很乏味。复制运算符允许重复一个向量并将它们连接在一起: {num{vector}}
{5{1'b1}} // 5'b11111 (or 5'd31 or 5'h1f) {2{a,b,c}} // The same as {a,b,c,a,b,c} {3'd5, {2{3'd6}}} // 9'b101_110_110. It's a concatenation of 101 with // the second vector, which is two copies of 3'b110.
查看复制运算符的一个常见位置是将较小的数字符号扩展到较大的数字,同时保留其签名值。这是通过将较小数字的符号位(最高有效位)复制到左侧来完成的。例如,将 4'b0 101 (5) 符号扩展为 8 位会产生 8'b 0000 0101 (5),而将 4'b 1 101 (-3) 符号扩展为 8 位会产生 8'b 1111 1101 (-3)。
构建一个将 8 位数字符号扩展到 32 位的电路。这需要连接符号位的 24 个副本(即复制位 [7] 24 次),后跟 8 位数字本身。
3、