集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 977|回复: 1

verilog基本语法

[复制链接]
fpga_feixiang 发表于 2019-6-8 18:03:00 | 显示全部楼层 |阅读模式
Verilog区分大小写
Verilog的关键字都是小写

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

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

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

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

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

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


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基本语法
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-4-26 14:25 , Processed in 0.113234 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表