记录Verilog的一些关键点

Verilog HDL模块结构

每个Verilog HDL模块都包括4个主要部分:

  1. 模块声明
  2. 端口定义
  3. 数据类型声明
  4. 逻辑功能描述

如图:
在这里插入图片描述
基本的代码结构:

//模块声明//端口声明
module模块名(输入/输出端口列表);
input输入端口列表;
output输出端口列表;
inout双向端口列表;

//数据类型声明,任务或函数声明
wire [n-1:0]数据名;
reg [n-1:0]数据名;

task任务名;
端口及数据类型声明;
其他语句;
endtask

function函数名;
端口声明;
局部变量定义;
其他语句;
endfunction

//逻辑功能描述
assign结果-表达式;
//数据流描述方式
always@(敏感信号列表)
//行为描述方式
begin
//过程赋值语句
/ /if-else语句、case语句//for循环语句
//调用任务、函数
end

//元件例化结构描述方式
门元件关键字例化门元件名(端口列表);
调用模块名例化模块名(端口列表);
endmodule

Verilog HDL基本语法

语言要素

  1. 注释
//  单行注释
/*多行
注释*/  
  1. 关键字,所有关键字都是小写的
  2. 标识符,任意一组字母、数字、“ ”(下画线)和“$”(美元符号)的组合,但标识符的第一个字符必须是字母(A ~ Z,a~ z)或是下画线“ ”,不能以数字或美元符号“$”开始。

常量

Verilog HDL中的常量主要有3种类型:

  1. 整数
  2. 实数
  3. 字符串

其中,整数型常量是可以综合的,而实数型和字符串型常量是不可综合的。

Verilog中四种逻辑状态:

逻辑状态 含义
0 低电平、逻辑0、“非”
1 高电平、逻辑1、“真”
z 高阻态
x 不确定或未知的逻辑状态

Verilog HDL中的数据都是在上述4类逻辑状态中取值,其中z和x都不区分大小写,也就是说,值10xz与值10XZ是等同的,表示同一个数据。

  • 整数
    符 号 ( + / − ) + 位 宽 + ′ + 进 制 ( b 、 o 、 d 、 h ) + 数 字 符号(+/-)+位宽+'+进制(b、o、d、h)+数字
  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术考古员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值