Verilog HDL连接和复制操作

时间:2007-04-29
连接操作是将小表达式合并形成大表达式的操作。形式如下:

{expr1, expr2, . . .,exprN}

  实例如下所示:

wire [7:0] Dbus;
wire [11:0] Abus;

assign Dbus [7:4] = {Dbus [0], Dbus [1], Dbus[2], Dbus[3]};
//以反转的顺序将低端4位赋给高端4位。
assign Dbus = {Dbus [3:0], Dbus [7:4]};
//高4位与低4位交换。
由于非定长常数的长度未知, 不允许连接非定长常数。例如, 下列式子非法:
{Dbus,5} //不允许连接操作非定长常数。
复制通过指定重复次数来执行操作。形式如下:
{repetition_number {expr1, expr2, ...,exprN}}
以下是一些实例:
Abus = {3{4'b1011}}; //位向量12'b1011_1011_1011)
Abus = {{4{Dbus[7]}}, Dbus}; /*符号扩展*/
{3{1'b1}} 结果为111
{3{Ack}} 结果与{Ack, Ack, Ack}相同。



  
上一篇:Verilog HDL表达式种类
下一篇:Verilog HDL移位操作符

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料