FPGA:Verilog HDL 程序的基本结构
⭐本专栏针对 FPGA 进行入门学习,从数电中常见的逻辑代数讲起,结合 Verilog HDL 语言学习与仿真,主要对组合逻辑电路与时序逻辑电路进行分析与设计,对状态机 FSM 进行剖析与建模。
🔥本文已收录于 MySQL 系列专栏:FPGA 欢迎订阅,持续更新。
🔥文章和代码已归档至【Github仓库】,需要的朋友们自取。或者关注公众号【AIShareLab】,回复 FPGA 也可获取。
简单 Verilog HDL 程序实例
Verilog 使用大约 100 个预定义的关键词定义该语言的结构
Verilog HDL 程序由模块构成。每个模块的内容都是嵌在两个关键词 module 和 endmodule 之间。每个模块实现特定的功能。
每个模块先要进行端口的定义,并说明输入(input) 、输出(output) 和双向(inout),然后对模块功能进行描述。
除了 endmodule 外,每个语句后必须有英文的分号(;)。
可以用/* --- */和//…..,对 Verilog HDL 程序的任何部分做注释。
半加器程序实例
2 选 1 数据选择器的程序实例
行为描述:
Verilog HDL 程序的基本结构
模块定义的一般语法结构如下:
几种描述方式小结:
结构描述(门级描述)方式:
一般使用 Primitive(内部元件)、自定义的下层模块对电路描述。主要用于层次化设计中。
数据流描述方式:
一般使用 assign 语句描述,主要用于对组合逻辑电路建模。
行为描述方式:
一般使用下述语句描述,可以对组合、时序逻辑电路建模。
initial 语句
always 语句
欢迎关注个人公众号【AIShareLab】,一起交流更多相关知识,前沿算法,Paper 解读,项目源码,面经总结。
版权声明: 本文为 InfoQ 作者【timerring】的原创文章。
原文链接:【http://xie.infoq.cn/article/81362019d35b8ffad8684e221】。未经作者许可,禁止转载。
评论