Verilog HDL初级入门

本文介绍了FPGA的基础知识及其设计流程,重点讲解了Verilog HDL的模型级别、模块框架和基础语法,包括语句块、过程结构、时序控制和流控制。同时,详细阐述了Verilog HDL中的数据类型、信号赋值方式、条件语句和循环语句,以及任务和函数的使用。此外,还探讨了状态机的设计和编码方式。
摘要由CSDN通过智能技术生成

- 缩写

CPLD (complex programmable logic device)复杂可编程逻辑器件
FPGA   (field programmable gate array) 现场可编程门阵列
PLD  (programmable logic device)可编程逻辑器件
PAL  (programmable array logic)可编程阵列逻辑
ASIC (application specific integrated circuits)专用集成电路
PROM (programmable read only memony)只读存储器
MC (macro cell)可编程逻辑宏单元
SC  (standard cell)标准逻辑单元
RAM(Random Access Memory)随机存取存储器
SOPC  (system on a programmable chip)  片上可编程系统
PCB( Printed Circuit Board)印制电路板

- FPGA

FPGA是由存放在ram中的程序来设计工作状态的,工作时用户根据不同的配置方式采用不同的编程方式。加电时,FPGA将eprom中的数据读入片内编程ram中,配置完成后,FPGA进入工作状态,掉电后,FPGA恢复成白片,内部逻辑关系完全消失,所以FPGA能反复使用
FPGA设计流程:
电路设计与输入->功能仿真->综合优化->综合后仿真->布局->布线仿真->板级仿真验证->加载配置->在线调试

Verilog HDL

verilog模型可以是实际电路的不同级别的抽象分别是:
系统级–》
算法级–》
RTL级(register transfer level 数据在寄存器之间的流动以及如何处理数据)–》
门级(逻辑门以及其中之间的连接)–》
开关级别(模电领域)

模块框架(i/o声明 i/o说明 内部信号声明 功能)
1.i/o声明,说明
module 模块名(端口1,端口2,端口3….);
input in;
output out;
2.内部信号声明
reg [width-1:0] R变量1,R变量2….;
wire [width-1:0] R变量1,R变量2….;
3.功能定义
assign a =b&c; //声明语句
and and_list(q,a,b); //实例元件
always @(postdge clk or posedge clr)
begin
if(clr) q<=0;
else if(en) q<=d;
End
(always块中语句是顺序执行的)

行为型描述(语句/语句块 过程结构 时序控制 流控制)
1.语句块
begin….end 组合需要顺序执行的语句,称为串行块
fork….join 组合需要并行执行的语句,并行块
2.过程结构
initial/task/always/function
initial 模块只执行一次,是同时并行执行的,面向仿真,不可综合
always 仿真过程中是不断重复执行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值