verilog幂次方_【原创】第一次见到的Verilog HDL语法

最近在看代码的时候,不小心发现了在表示变量位宽范围时用到了+:、-:这样的符号。这种用法还是第一次见到的,也许是我太孤陋寡闻了。经过一番的查询,终于知道了它的用法和意义了。它的表示方法如下所示:

a[j+:k];   或  a[j-:k];

其中,k必须是常数,代表位宽;j则是可变的,当用+:时,j作为变量的最低有效位,j+k-1作为变量的最高有效位,当用-:时,j作为变量的最高有效位,j-k+1作为变量的最低有效位。接下来,举个简单的例程来证明这个规则的正确性。假设有一个位宽为6的输入信号din,将它的每两位赋给位宽为2的输出变量即dout1=din[5:4]、dout2=din[3:2]、dout3=din[1:0]。

(1)对于[j+:k]这种情况的相应代码描述如下:

/**********************************************版权申明*************************************************

**                                   电子技术应用网站, CrazyBird

**                     http://www.chinaaet.com, http://blog.chinaaet.com/crazybird

**

**--------------------------------------------文件信息--------------------------------------------------

** 文件名:          signal_test.v

** 创建者:          CrazyBird

** 创建日期:        2015-7-18

** 版本号:           v1.0

** 功能描述:        变量位宽表示中符号+:功能的验证

**

********************************************************************************************************/

// synopsys translate_off

`

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值