位置:51电子网 » 技术资料 » 其它综合

Verilog HDL连接和复制操作

发布时间:2008/6/5 0:00:00 访问次数:1843

连接操作是将小表达式合并形成大表达式的操作。形式如下:

{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}相同。



连接操作是将小表达式合并形成大表达式的操作。形式如下:

{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}相同。



相关IC型号

热门点击

 

推荐技术资料

罗盘误差及补偿
    造成罗盘误差的主要因素有传感器误差、其他磁材料干扰等。... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!