Verilog 学习 运算符

本文介绍了Verilog语言中的字母数字字符区分、数据类型如wire、tri和reg,以及内存RAM、运算符、移位、逻辑和条件运算的使用。还涵盖了模块设计的基本概念和信号连接与复制的方法。
摘要由CSDN通过智能技术生成

Verilog
字母 数字 $ 和_ 区分大小写,首字母和_
四种状态 0 1 X不定状态 Z高阻态
整数表示
8’b1表示8位宽2进制1 要是负号要写在最前面。小数的话,小鼠两边都要又数字
wire,tri连线型变量wire01,tri 0 1 x
reg型 寄存器 类型
reg a; 定义一个一位位宽的寄存器a
reg [3:0] a; 定义一个4位名为a的reg变量
RAM类型
reg[7:0] mem1[255:0]; 定义了一个256个8位寄存器的存储器mem1
运算符表达式
加减乘除取模,由于位数的关系,运算时有可能会移除高位,4‘b1111=15 3’b011 = 3 a*b = 1101 只有4位 a+b = 0010 都会省略
关系操作符> < >= <=
首先操作的结果是1b的信号
相等运算符 ==等于 ===全等 加个!就是相反
== 一定是信号位有效时
===全等时可以判断X Z这两种状态
全等时 0011 不等 11
相等时 0011 等于11
逻辑运算符 and && or || not !
b=4‘b0000 !b=1’b1
按位操作符 ~按位取反 &按位取与 |按位取或 ^按位去异或 ^~按位取同或
归约操作符 与或非 和异或同或
对一个信号自身里面的信号操作
移位运算符号 左移右移 << >> 后面补零
条件运算符 <条件表达式>?<表达式1><表达式2>如果条件表达式为真则执行表达式1,否则执行表达式2
连接和复制运算符
{}连接 {{}}复制
a =3’b110 b=4’b0101 则c = {a[2:0],b[3:0]} == 7’b110 0101
模块,是基本单元,用于描述某个设计的功能或结构及其与其他模块通信的外部端口

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值