fpga_feixiang 发表于 2019-6-8 18:03:00

verilog基本语法

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

module, endmodule定义一个基本模块,两个关键字间的语句是对该模块的描述。定义模块方便复用。

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

output, input关键字指定输入输出

always @(posedge/negedge clk)语句,每当clk出现上升/下降沿时,就执行接下来的语句块(begin, end标志一个语句块)。这种语句构成时序逻辑,当前输出与上一个时刻的值有关

reg类的变量用<=赋值,赋值符号左侧是寄存器,右侧是更新的值

&q语句输出q每一位相与的结果,即&q=q&q&...&q


assign关键字描述组合逻辑,输出只与当前输入有关
input/output如果没有显示声明类型,默认为wire类型。如果需要reg类型以存储值,需要显示声明

wire类型只是一根导线,只能用来组合逻辑。assign语句等号右侧一旦发生变化,等号左侧立刻得到结果;而always语句块中的值改变只能发生在每一时刻(由@符号后的语句描述时刻)

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

'timescale 1ns/1ps指定测试的单位是1ns,精度是1ps

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

$stop指令使仿真停止
时序逻辑:<=赋值;组合逻辑:-赋值

大鹏 发表于 2019-6-11 16:53:45

verilog基本语法

zxopenljx 发表于 2025-3-14 17:36:22

verilog基本语法
页: [1]
查看完整版本: verilog基本语法