【FPGA Verilog开发实战指南】初识Verilog HDL-基础语法

Verilog HDL简介

在这里插入图片描述
就是用代码来描述硬件结构
语言有VHDL与Verilog HDL

与VHDL比较

在这里插入图片描述
Verilog HDL 是从C语言来的,学的快

Verilog HDL基础语法

逻辑值

在这里插入图片描述
###例子
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

关键字

也叫保留字,一般是小写

module

表示模块的开始

endmodule

模块的结束

模块名

一般与.v文件的名字一致

在这里插入图片描述

输入信号

input

输出信号

output

既做输入也做输出

inout

在这里插入图片描述
需要一些变量和参数对输入信号进行处理得到输出信号,变量又分为两种类型

线网型变量 wire

可以看作直接的链接,可以映射为一条真实存在的物理连线

寄存器型变量 reg

对某一时间点状态进行保持的功能,可以映射为一条真实的元器

参数 parameter

实例化可以修改参数

参数 localparam

只能在模块内部使用,不能实例化

常量

基数表示法
格式:[ 换算为二进制后位宽的总长度 ] [ ’ ] [ 数值制符号 ] [ 与数值进制符号对应的数值 ]
8‘d171:位宽是8bit,十进制的171。
[数值进制符号]中如果是[h]则表示十六进制,如果是[o]则表示八进制,如果是[b]则表示二进制,D 表示十进制
8’hab表示8bit的十六进制数ab,
8’o253表示8bit的八进制数253:
8’b10101011表示8b性的二进制数10101011,下划线增强可读性。
[换算为过进制后位宽的总长度]:可有可无,verilog会为常量自动匹配合适的位宽。
当总位宽大于实际位宽,则自动在左边补0,总位宽小于实际位宽,则自动截断左边超出的位数。
'd7与8’d7:表示相同数值,8’d7换算为二进制就是8’b0000—0111,前面5位补0;
2’d7换算为二进制就是2’b11,超过2位宽的部分被截断。
如果直接写参数,例如100,表示位宽为32bit的十进制数100·

赋值方式

赋值方式有两种,一种是阻塞赋值,一种是非阻塞赋值

在这里插入图片描述

阻塞赋值

可以理解为顺序执行,即第一句语句执行玩之后才会执行第二句语句

非阻塞赋值

语句是并行执行,同一时刻两条语句同时执行

always语句

使用前面定义的计数器
在这里插入图片描述
当复位信号有效时,我们给变量cnt初值是0.如果计数到最大值我们设定的参数时,就一直保持最大值,如果没有技术到最大值,每个时钟周期值+1

assign 语句

如果括号内的条件满足的话,就将第一个值赋值给某一个变量,如果不满足的话,就将第二个值赋值给这个变量

在这里插入图片描述

算数运算符

在这里插入图片描述

归元运算符、按位运算符

在这里插入图片描述
在这里插入图片描述

逻辑运算符

在这里插入图片描述

关系运算符

在这里插入图片描述
在这里插入图片描述

移位运算符

在这里插入图片描述

位拼接运算符

在这里插入图片描述

条件运算符

在这里插入图片描述

优先级

在这里插入图片描述

if-else 条件分支语句

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

case分支控制语句

在这里插入图片描述
在这里插入图片描述

系统函数

在这里插入图片描述
在这里插入图片描述

display

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

write

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

strobe

但是只在最后执行
在这里插入图片描述
在这里插入图片描述

monitor

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

stop ,finish

在这里插入图片描述
在这里插入图片描述
继续仿真不是从头开始执行的,而是从暂停的地方开始执行的

time,random

在这里插入图片描述
在这里插入图片描述

readmemb,readmemh

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值