FPGA基础篇Verilog基础语法.docx

上传人:b****9 文档编号:29161832 上传时间:2023-07-20 格式:DOCX 页数:5 大小:142.59KB
下载 相关 举报
FPGA基础篇Verilog基础语法.docx_第1页
第1页 / 共5页
FPGA基础篇Verilog基础语法.docx_第2页
第2页 / 共5页
FPGA基础篇Verilog基础语法.docx_第3页
第3页 / 共5页
FPGA基础篇Verilog基础语法.docx_第4页
第4页 / 共5页
FPGA基础篇Verilog基础语法.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

FPGA基础篇Verilog基础语法.docx

《FPGA基础篇Verilog基础语法.docx》由会员分享,可在线阅读,更多相关《FPGA基础篇Verilog基础语法.docx(5页珍藏版)》请在冰豆网上搜索。

FPGA基础篇Verilog基础语法.docx

FPGA基础篇Verilog基础语法

  

 

  

FPGA基础篇:

Verilog基础语法

 

  

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

Verilog基础语法

1.1可综合模块

以module为单元,具体实现如下

1.1.1时序逻辑

以异步触发的D触发器为例,时序逻辑在always块里实现

主要注意点:

1.声明模块时,输入变量一定是wire类型

2.声明模块时,输出变量可以是wire,也可以是reg,reg变量只能在always块中赋值

3.敏感列表既可以是边沿触发,也可以是电平触发

4.沿触发的逻辑里,一定采用的是非阻塞触发《=

1.1.2组合逻辑

以数据选择器为例,组合逻辑通常使用assign语句赋值

主要注意点:

1.sel=0时,c=a;sel=1时,c=b,即二选一数据选择器。

四选一则有两个选择端,四个输入端,八选一则是三个选择端,八个输入端。

2.wire变量一定要用连续赋值语句赋值,而且必须用阻塞赋值

1.2仿真模块

仿真模块和可综合模块的区别:

可综合模块最终生成的bit文件会烧录进芯片运行,而仿真模块编译过后是在仿真软件(例如modelsim)上运行的。

仿真模块是基于可综合模块进行例化,并通过仿真软件的模拟,可以初步验证我们写的可综合模块的实现现象。

以计数器为例,可综合模块如下:

基于以上可综合模块的仿真模块如下:

1.仿真的模块声明不需要输入列表

2.iniTIal块只能对【寄存器】量进行赋值

3.例化模块时,如果原始模块是输出变量,则括号内必须【wire变量】

HDL常见例子

2.1译码器

2.1.1可综合模块(case语句)

此模块用case实现了一个数据选择的功能,先产生了一个8位计数器,通过判断计数器的值来输出不同的取值,当计数器计数到1时,o_data和o_dv分别输出5和1,当计数器为2时,输出7和1,其余均输出0。

(Note:

Case语句常常运用于状态机中状态的判断)

Case语句注意点:

必须有default语句,否则会形成锁存器

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学案例设计

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1