【FPGA系列】FPGA开发经验和Vivado入门

1、FPGA硬件调试

1.1 硬件调试简介

FPGA硬件调试是指将FPGA生成的位流文件(bit文件)通过下载器烧录或者固化到FPGA或Flash中,通过在线逻辑分析仪抓取实时信号来验证逻辑功能是否满足预期,或者通过系统测试来验证逻辑设计的正确性。

1.2 FPGA调试IP核

硬件的诊断和校验可能会占用开发周期的30%~40%。
对于Xilinx FPGA厂商提供的开发软件,Vivado和ISE都有相应的调试IP核,这些调试IP核属于FPGA调试的一部分。例如,使用ILA IP核可以在线观察FPGA内部信号,使用VIO IP核可以通过虚拟按键输出相关信号。

ILA是Vivado下的一个Debug IP核,类似于片上逻辑分析仪,通过在RTL设计中嵌入ILA IP核,可以抓取信号的实时波形,帮助设计人员定位问题。

1.3 闪烁灯实例展示

1、系统设计
基于Xilinx FPGA闪烁灯逻辑设计主要分为三个模块:时钟模块、闪烁灯模块和调试模块。
2、程序设计
(1)闪烁灯程序设计,包括顶层文件和模块程序。
(2)闪烁灯约束文件
3、硬件调试
(1)闪烁灯IP核定制,需要用MMCM IP核和ILA IP核。
逻辑综合与布局布线

2、vivado编程总结

2.1 输出打印函数

$display
$strobe
$write

2.2 实例化接口注意事项

输入端口:模块内部类型默认为wire,实例化时可连接的外部类型为reg或wire
输出端口:模块内部类型可声明为reg或wire,实例化时可连接的外部类型必须为wire或另一模块的reg输入

在这里插入图片描述

2.3 性能指标

FF(Flip-Flop):触发器,时序逻辑的基本单元

每个FF通常与一个LUT组合在同一个CLB中。
资源报告中显示的FF数量反映了设计中需要存储的“状态”数量。

LUT(Look-Up Table):查找表,FPGA中实现组合逻辑的核心组件。

LUT的使用数量直接反映了设计的逻辑复杂度。

2.4 BRAM IP的使用方法

BRAM读数据:读使能信号拉高后会延迟两个周期输出数据。
在这里插入图片描述
BRAM写数据:写使能信号拉高后需要将数据在同一周期内写入。
在这里插入图片描述

2.5 语法相关

wire非阻塞赋值给reg类型,不延迟一个周期;但reg非阻塞赋值给reg类型,会延迟一个周期

BUFG:全局时钟资源

2.6 逻辑保留语法

(* DONT_TOUCH = “TRUE” ) 作用阶段:在综合和实现阶段均生效。
功能:强制工具在整个流程(综合+实现)中保留标记的逻辑,禁止任何优化或修改,这包括防止逻辑被吸收、合并、删除或重构。
适用范围:需要绝对保留逻辑的场景。例如手动优化的关键逻辑。
举例:(
DONT_TOUCH = “TRUE” *) module critical_module (…);

(* keep = “true” ) 作用阶段:在综合阶段生效。
功能:阻止综合工具对标记的信号或模块进行优化,但不能保证在实现阶段中逻辑不被修改。适用范围:通常用于保留信号或层次结构。优先级低于DONT_TOUCH。
举例:(
keep = “true” *) wire debug_signal;

2.7 PS和PL

PS:Processing System,处理系统,PS是FPGA中集成的硬核处理器子系统,通常基于ARM架构;
​​功能​​:
运行操作系统(如Linux)或裸机程序,处理控制密集型任务。
提供外设接口(如UART、Ethernet、USB、GPIO等),支持通用计算和系统管理。
与PL通过高速总线(如AXI)进行通信。
特点:硬件固定,不可编程,专注于软件任务的执行。

PL:Programmable Logic,可编程逻辑,PL是FPGA的传统可编程逻辑部分。
​​功能​​:
用户通过硬件描述语言(如Verilog/VHDL)定制逻辑功能,实现高速并行计算或硬件加速。
支持灵活重构,适用于实时信号处理、图像处理等高性能场景。
​​特点​​:高度可编程,资源可根据需求重新配置,与PS协同提升系统效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞翔的鲲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值