Verilog语法

Verilog语法

基本语法

Verilog区分大小写
Verilog的关键字都是小写

语句

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
module <module_name> (in1, in2, ..., out1, out2...) 
input in1, in2, ...;
output out1, out2, ...;
...
endmodule
// 定义一个基本模块,两个关键字间的语句是对该模块的描述。定义模块方便使用。

always @(statement) begin
...
end
// 当statement变化时,就执行接下来的语句块 (begin ... end)

&q
// 语句输出 q 每一位相与的结果,即 &q = q[1]&q[2]&...&q[N]

assign
// 描述组合逻辑,输出只与当前输入有关

initial begin
...
end
// 初始化语句,这部分指令在系统上电后直接执行

关键字

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
'timescale 1ns/1ps 
// 指定测试的单位是1ns,精度是1ps

#100
// 指明延时,单位由之前的代码指定

#stop
// 使仿真停止

parameter
// 关键字定义一个参数,增强模块的通用性

output, input
// 关键字指定输入输出,如果没有显示声明类型,默认为wire类型

reg
// 定义寄存器变量,用 <= 赋值

数据类型及常量

1
2
3
4
5
6
<位宽>‘<进制><数值> 
// 常量的表示方式
// 如 : 4’b0001
// 二进制 : b 八进制 : o 十进制 : d 十六进制 : h



Verilog语法
http://yjh-2860674406.github.io/2022/09/01/编程/Verilog/Verilog语法/
Author
Ye JinHua
Posted on
September 1, 2022
Licensed under