
★教程2:fpga入门100例
文章平均质量分 90
订阅本教程,除了教程案例程序,还可以免费获得任意2份代码。 本专栏为虚拟产品,一经付款概不退款,敬请谅解。FPGA基础课程讲解。
优惠券已抵扣
余额抵扣
还需支付
¥299.90
¥399.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
fpga和matlab
专业即算法,算法即数学,数学即万物。从事MATLAB算法仿真工作15年,从事FPGA系统开发工作12多年。擅长解决各种算法仿真、建模、通信、图像处理、AI、智能控制等各专业问题。
展开
-
★教程2:fpga学习教程入门100例目录
★基础入门1.FPGA开发软件安装原创 2021-12-11 19:56:10 · 60287 阅读 · 0 评论 -
【FPGA教程案例106,补充课程6】信号DA发射到AD接收回环检测
信号 DA(数模转换)发射到 AD(模数转换)接收回环检测是一种用于验证和测试信号处理链路完整性与准确性的重要技术手段,在通信、电子设备制造等众多领域有着广泛应用。在DA->AD回环测试系统中,(1)DA负责将数字信号转换为模拟信号,是发射端的核心部件。其工作原理基于数字信号的二进制编码,通过对不同位的数字信号进行加权求和,生成对应的模拟电压或电流信号。(2)AD负责将接收到的模拟信号转换回数字信号。原创 2025-02-24 19:16:13 · 98 阅读 · 0 评论 -
【FPGA教程案例105,补充课程5】ILA与MATLAB联合应用
注意,这里cnts2计数器,是由cnts==100这个条件触发的,所以在capture setup这个界面,设置cnts==100这个条件。我们在设置ila时,将capture control和advanced trigger选中,然后重新综合,最后下载。我们可以看到,cnts此时只有100这个数据被采集,而对应的是cnts2的数据被完整的采集到了。通过这个方法,可以在有限的ila区间内,采集更多的数据。然后,我们按如下的步骤做一次新的ila使用学习。点击OK,产生IP核。本课程内容与教程4中。原创 2024-12-29 20:48:44 · 103 阅读 · 0 评论 -
【FPGA教程案例104,补充课程4】通过MATLAB通过串口读取FPGA程序中的数据
可以看到,FPGA中的发射数据会在串口调试工具中显示:1122334455667,1122334455667,1122334455667,1122334455667,1122334455667..........................打开自己手头的开发板的串口工程(一般开发板都会附带串口通信的demo和串口调试工具),然后下载到开发板之后,通过串口工具,我们可以看到如下的测试效果。可以看到,MATLAB成功将串口发射的数据读出并显示。原创 2024-12-01 02:33:34 · 768 阅读 · 0 评论 -
【FPGA教程案例103/补充课程3】vivado在综合过程中,如何设置综合布局布线策略
AreaOptimized_medium: 执行的面积优化,包含更改是否执行控制集优化的阈值,强制三值加法器的实现,降低推断为DSP块时的乘数的阈值,移动移位寄存器到BRAM,降低在比较器中应用进位链的阈值,实现area-optimized多路复用器。AreaOptimized_high: 执行的面积优化,包含强制三值加法器的实现,改变比较器中是否应用进位链的阈值,实现area-optimized多路复用器。我们可以看到,系统的资源布局面积略微有扩大,同时占用资源的数量也变多了。原创 2024-11-27 06:10:42 · 536 阅读 · 0 评论 -
【FPGA教程案例102/补充课程2】使用不同版本的vivado打开工程时需要如何操作?切换工程芯片型号后如何操作?
选中IP核,右击,选择Upgrade IP。然后软件会自动跟新IP核,之后IP核就去掉了红色锁的标记。打开之后,会出现IP核红色锁的情况,然后按上一个小节的内容进行更新即可。在软件菜单中,选择Report>Report IP status。通过上述操作之后,我们就完成了不同芯片型号的更滑。选择默认的第一个选项,自动进行更新,然后点击OK。然后点击save project as。随机选择一个其他类型的芯片。此时,软件会逐个开始更新IP核。然后更新IP核就可以了。此时,有两种处理方法。原创 2024-11-10 03:50:29 · 539 阅读 · 0 评论 -
【FPGA教程案例101/补充课程1】基于FPGA的AWGN信道模型verilog实现
加性高斯白噪声(Additive White Gaussian Noise,AWGN)信道是一种在通信系统中广泛使用的信道模型。在这种信道中,噪声是加性的,即接收信号等于发送信号与噪声之和。噪声的功率谱密度在整个频域内是均匀的,且具有零均值和高斯分布。原创 2024-10-31 20:22:51 · 882 阅读 · 0 评论 -
读者学习过程中的一些问题总结——不定期更新
本章内容主要是根据订阅用户学习过程中提出的一些常规的,通用的软件操作问题,以及部分通用的编程类问题进行总结,不定期进行更新。原创 2022-10-26 00:35:12 · 7600 阅读 · 0 评论 -
【FPGA教程案例100】深度学习1——基于CNN卷积神经网络的手写数字识别纯Verilog实现,使用mnist手写数字数据库
MNIST 数据库有一个 60,000 示例的训练集,还有一个 10,000 示例的测试集。这些数字已在大小方面规范化,在固定大小的图像中居中。如下图所示:我们任意选择0~9是个数字,将其转化为数字:0_0.txt1_0.txt2_0.txt3_0.txt4_0.txt5_0.txt6_0.txt7_0.txt8_0.txt9_0.txt。原创 2022-10-12 23:24:20 · 6623 阅读 · 21 评论 -
【FPGA教程案例99】数据处理2——基于DA分布式算法的FIR滤波器FPGA实现
DA算法的主要特点是,巧妙地利用查找表将固定系数的MAC运算转化为查表操作,其运算速度不随系数和输入数据位数的增加而降低,而且相对直接实现乘法器而言,在硬件规模上得到了极大的改善。对于FIR(有限长单位冲激响应)滤波器,其基本结构是一个分节的延时线,每一节的输出加权累加,得到滤波器的输出。考虑到,基于DA算的程序,其查找表的复杂度会随着输入的位宽和滤波器的阶数的增加而大大增加,这里,我们在满足设计指标的前提下,将滤波器的输入位宽改为12位,阶数为16阶。通过仿真,我们可以看到,滤波器成功完成滤波功能。原创 2022-10-12 16:27:55 · 2205 阅读 · 0 评论 -
【FPGA教程案例98】数据处理1——基于FPGA的数据线性插值verilog实现,MATAB辅助验证
线性插值是针对一维数据的插值方法。它根据一维数据序列中需要插值的点的左右临近两个数据来进行数值估计。当然了它不是求这两个点数据大小的平均值(在中心点的时候就等于平均值)。而是根据到这两个点的距离来分配比重的。对于FPGA设计线性插值,如果两个相邻的时钟周期之间进行插值,那么相当于x在x0和x1的中间,那么上面的公式就可以简化为:所以,通过上述方法,就可以完成一个简单的一维信号在FPGA中的插值运算了。原创 2022-10-12 01:04:25 · 3562 阅读 · 1 评论 -
【FPGA教程案例97】信道编译码1——基于FPGA的卷积编码维特比译码verilog实现,MATLAB辅助验证
卷积码通常记为(n,k,m)—— n是码长,k是信息元,m是编码寄存器的长度,通常称K = m+1为编码约束长度。卷积编码在编码时充分利用各个信息块的相关性,校验码元不仅与本组信息元有关,还与之前K个时刻的信息元有关,且当前时刻的信息元还会影响以后K时刻的编码输出。卷积编码器通常有四种表示方法:连接图、状态图、树图和网格图。原创 2022-10-11 00:21:33 · 2004 阅读 · 4 评论 -
【FPGA教程案例96】控制案例1——基于FPGA的自适应PID控制器verilog实现
首先,我们复习下课程传统的PID控制器,往往存在调整速度较慢,超调过大等缺点。为了解决这个问题,在实际的PID应用中,需要实时的调整PID的控制参数,以达到加快PID控制速度,降低超调等目标。目前,自适应PID控制器,一般有误差反馈调整,模糊控制器调整,神经网络调整。其中模糊控制器调整,神经网络调整较为复杂,在入门案例中不做介绍,在本课程中,我们将实现相对略微简单点的基于误差反馈调整的自适应PID控制器。原创 2022-10-07 02:35:48 · 5416 阅读 · 8 评论 -
【FPGA教程案例95】机器学习2——基于FPGA的SVM支持向量机二分类系统实现之Verilog编程设计
在设计FPGA系统之前,我们需要将测试样本数据,SVM的参数W和b进行量化,方便FPGA中调用。运行如下的matlab程序,完成这个工作。运行后,我们可以看到如下内容:注意,由于我们的测试数据X是N*8维度的数据,而在FPGA中,ROM只能存储N*1的数据,所以我们将数据分为8个coe文件进行保存。此外,在matlab的command窗口中,会显示这个是量化后的权值w和b。上述是做FPGA之前的准备工作。原创 2022-10-06 01:13:26 · 2048 阅读 · 0 评论 -
【FPGA教程案例94】机器学习1——基于FPGA的SVM支持向量机二分类系统实现之理论和MATLAB仿真
SVM学习方法是一种基于统计学和结构风险最小化理论的机器学习方法,因此其相对于人工神经网络更适用于小规模训练样本和高纬度训练样本的训练学习和识别。目前,SVM分类器从结构上区分,可以分为线性可分SVM和非线性可分SVM两种类型。本课程,我们将学习较为简单的线性可分SVM。原创 2022-10-05 23:54:16 · 2039 阅读 · 0 评论 -
【FPGA教程案例93】图像处理2——基于FPGA的图像形态学腐蚀处理实现,使用MATLAB辅助测试
腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体。其对应的二值图变化情况如下:上图中,0表示白色,1表示黑色,通过腐蚀之后,黑色区域替代了白色区域,变为全黑色。这个就是腐蚀的基本原理。显然,上述过程,可以通过如下的逻辑运行得到:由此可见,我们只需要在FPGA得到一个3*3窗口,然后做或运行就可以实现一个简单的图像腐蚀运行过程。原创 2022-10-04 05:46:27 · 1054 阅读 · 0 评论 -
【FPGA教程案例92】图像处理1——基于FPGA的图像形态学膨胀处理实现,使用MATLAB辅助测试
膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。可以用来填补物体中的空洞。其对应的二值图变化情况如下:上图中,0表示白色,1表示黑色,通过膨胀之后,白色区域替代了黑色区域,变为全白色。这个就是膨胀的基本原理。显然,上述过程,可以通过如下的逻辑运行得到:由此可见,我们只需要在FPGA得到一个3*3窗口,然后做或运行就可以实现一个简单的图像膨胀运行过程。原创 2022-10-04 05:38:01 · 1851 阅读 · 0 评论 -
【FPGA教程案例91】机器视觉2——通过FPGA实现基于肤色模型的人脸检测,使用MATLAB辅助测试
一个完整的人脸自动识别系统包括人脸检测定位和人脸识别两个主要的技术环节,其中人脸的检测定位是人脸识别的前提和关键。近年来由于在安全控制、视觉检测、身份验证和新一代人机界面等领域的应用,人脸检测得到了广泛的研究,并提出了很多解决方案。大体可分为3类:基于知识规则的方法、基于可视特征的方法和基于模板的方法。基于知识规则的方法是使用源于研究者关于人脸的先验知识规则对人脸检测。基于可视特征方法是利用人脸的分布、颜色、纹理等可见特征来作为人脸的检测特征。原创 2022-10-03 14:09:29 · 1597 阅读 · 2 评论 -
【FPGA教程案例90】机器视觉1——通过FPGA实现基于颜色模型的交通灯检测,使用MATLAB辅助测试
基于颜色模型的交通灯检测,其实现原理主要是根据红色红色,绿灯绿色的原理,通过对颜色RGB像素值进行判决,来得到交通灯的位置。下面我们简单的以一个图片进行说明:使用photoshop,我们可以看到,红灯和绿灯的像素值如下:对于红灯区域,RGB像素值,R值远大于G和B。而且R大于180对于绿灯区域,RGB像素值,G值大大于R和B。而且G大于180注意,R和G这里取值大于180,这个180可以根据实际情况调整。原创 2022-10-02 03:21:37 · 1854 阅读 · 0 评论 -
【FPGA教程案例89】编译码2——使用vivado核实现RS信道编译码
RS编码,又称里所码,即Reed-solomon codes,是一种前向纠错的信道编码,对由校正过采样数据所产生的多项式有效。当接收器正确的收到足够的点后,它就可以恢复原来的多项式,即使接收到的多项式上有很多点被噪声干扰失真。原创 2022-09-29 22:27:48 · 3019 阅读 · 1 评论 -
【FPGA教程案例88】编译码1——基于FPGA的HDB3编译码verilog实现
通信系统最主要的功能就是实现数据的传输,在数据传输的时候需要对数据进行调制解调,但在某些时候,也可以不通过调制解调直接对数据进行传输,但是这种方法需要对数据进行基带信号变化,使其适合在信道中传输,这就是编码过程。目前,虽然在实际使用的数字通信系统中基带传输制不如频带传输制那样广泛,但是,对于基带传输系统的研究仍然是十分有意义的。原创 2022-09-27 20:37:40 · 1137 阅读 · 1 评论 -
【FPGA教程案例87】加解密1——基于FPGA的AES加解密算法verilog实现
DES已走到了它生命的尽头。56比特密钥实在太小,虽然三重DES可以解决密钥长度的问题,但是DES的设计主要针对硬件实现,而今在许多领域,需要用软件方法来实现它,在这种情况下,它的效率相对较低。1997年4月15日美国国家标准和技术研究所(NIST)发起征集AES(Advanced Encryption Standard)算法的活动,并成立了AES工作组。目的是为了确定一个非保密的、公开披露的、全球免费使用的加密算法,用于保护下一世纪政府的敏感信息。这里,我们对AES的基本原理进行介绍:原创 2022-09-25 23:48:02 · 2021 阅读 · 0 评论 -
【FPGA教程案例86】仪器设备3——使用MATLAB控制E4438C信号发生器产生不同类型的测试信号
由于在实际项目中,我们需要随时调整发送信号的某些参数,如噪声,频偏,幅度等,如果采用人工设计信号源的方法,我们将花去大量的时间去重新设计FPGA发射端模块,比如LTE发射信号,OFDM发射信号,各种不同类型的调制发射信号。这个时候,我们需要借助信号发生器来快速产生各种标准的测试信号。我们可以通过MATLAB控制E4438C的方法产生各种所需要的中频信号,并添加信号的噪声,频偏,幅度等参数变化,这有利于系统接收机的快速测试,如图所示。此外,如果你的信号发生器是其他型号的器件,也可以做简单的修改完成上述操作。原创 2022-09-22 14:40:41 · 1563 阅读 · 0 评论 -
【FPGA教程案例85】仪器设备2——使用频谱仪观察DDS输出正弦信号频谱
直接打开案例84的工程,为了更直观的观察正弦信号的频谱,我们将案例84的正弦输出修改为两个不同频率正弦的混合输出作为频谱测试信号。注意的,当调用两个DDS核时,可能会导致开发板芯片资源不够,这个时候,将ila的深度重新设置,从原来的60000多改为16384即可。最后将两个正弦信号o_carrier和o_carrier2叠加输出。原创 2022-09-22 14:26:27 · 1126 阅读 · 0 评论 -
【FPGA教程案例84】仪器设备1——使用示波器观察DDS输出正弦信号时域波形
本课程使用AN9767模块,其应用的ADC芯片为ANALOG DEVICES公司的AD9767芯片,支持独立双通道、14 位、125MSPS 的数模转换。将上面2.1小节介绍的ADC的verilog程序整合到DDS工程中。上述代码中,由于AD9767有两个通道,所以需要定义双通道接口。说明我们已经成功通过AD9767将正弦信号发射出去了。其中DDS部分,我们直接使用的是前面案例的成果。原创 2022-09-22 14:05:49 · 3045 阅读 · 0 评论 -
【FPGA教程案例83】接口案例3——基于FPGA的AGC自适应增益控制系统开发
AGC是一个闭环负反馈自动控制系统,是接收机最重要的功能电路之一。接收机的总增益通常分配在各级AGC电路中,各级AGC电路级联构成总的增益。在接收微弱信号时,接收机要具有高增益,将微弱信号放大到要求的电平,在接收机靠近发射电台式时,AGC控制接收机的总增益,使接收机对大信号的增益很小,甚至衰减,当接收到的强信号时,则做相反的操作。接收机动态范围实现的示意图如下图所示。原创 2022-09-21 01:09:34 · 3375 阅读 · 0 评论 -
【FPGA教程案例82】接口案例2——通过串口从PC发射坐标指令到FPGA,将该坐标信息控制HDMI显示屏中物体的位置
FPGA教程目录MATLAB教程目录---------------------------------------------------------------------------------------目录1.软件版本2.原理概述3.系统的FPGA实现 3.1PC端到FPGA的串口指令发射模块verilog实现3.2 坐标指令处理并改写正弦信号显示位置4.系统的硬件测试vivado2019.2 在本课程,我们将同时对串口接口和HDMI视频接口进行综合运用和学习,学习之前,我们首先回顾下串原创 2022-09-19 23:37:41 · 898 阅读 · 0 评论 -
【FPGA教程案例81】接口案例1——基于FPGA的SPI接口实现
SPI是由Motorola公司提出的一种串行通信的工业标准,后来交给OPENCORES组织维护。SPI总线是一种全双工、同步、串行数据接口标准总线。与别的串行总线相比,它具有电路结构简单、速度快、通信可靠等优点。目前,很多器件如FLASH、LCD模块、数据输入、输出设备等都采用了SPI接口,因此开发SPI核是很有意义和应用前景的。是一种三线同步接口,分别为同步时钟信号、数据输入信号和数据输出信号。另外每个扩展芯片还需要一个片选信号,主器件通过片选信号选通与其通信的从器件。原创 2022-09-18 02:07:23 · 2275 阅读 · 0 评论 -
【FPGA教程案例80】通信案例6——基于costas环的QPSK解调的FPGA实现
我们在上一课程中对QPSK解调过程进行了学习,并通过FPGA对其进行了实现,但在实际通信系统中,往往信号中存在频偏,因此需要在接收端对输入的调试信号进行频偏锁定。此时,将QPSK的解调端的结构做如下的调整:改为:下面我们对上述的结构进行理论推导:其中delta fai为发送端载波和本地载波之间由于频差和相差产生的相角差值。QPSK解调器中相位检测器输出信号为:原创 2022-09-15 02:03:58 · 2733 阅读 · 7 评论 -
【FPGA教程案例79】通信案例5——基于FPGA的QPSK调制解调系统实现
我们在课程中,已经对QPSK调制器的基本原理进行了学习,在本课程中,我们将介绍QPSK解调过程。其基本原理如下所示():QPSK解调的实现结构图如下图所示:由于QPSK的调制信号为:通过上述解调器,其计算过程如下:第一路:第二路:我们可以看到,通过上述过程,可以实现QPSK的解调过程。从上述的结构可知,QPSK的解调过程存在NCO,其参数配置和QPSK调制过程相同。原创 2022-09-13 05:35:02 · 4693 阅读 · 7 评论 -
【FPGA教程案例78】通信案例4——基于FPGA的RLS自适应滤波算法实现
LMS算法因其收敛速度快及算法实现简单等特点在自适应滤波器、自适应天线阵技术等领域得到了十分广泛的应用。LMS算法最早是由Widrow和Hoff在1960年提出的,LMS算法取单个误差样本平方的梯度作为均方误差梯度的估计,算法的步骤如下:上述公式中,y(n)为输出信号;X(n)为输入矢量;W(n)为抽头系数矢量;r(n)为参考信号;e(n)为误差信号;▽(n)为梯度矢量;μ为步长因子。原创 2022-09-11 19:04:28 · 2922 阅读 · 8 评论 -
【FPGA教程案例77】通信案例3——数据组帧,帧同步、拆帧
在FPGA通信过程中,经常需要将数据组成预先制定个帧格式,即通信协议,然后再进行数据发送,同时在接收端,为了避免数据丢失,需要在帧数据之前加入导频序列,用于接收端的帧同步。在本课程中,我们通过一个简单的案例,初步学习下数据组帧,帧同步,拆帧等过程。这里,帧我们采用如下的格式作为案例进行介绍:这个数据帧,包含16bit的导频序列和128bit的数据序列(在实际中,可以根据项目需要,设置不同长度的导频序列和数据序列)原创 2022-09-09 19:14:50 · 3777 阅读 · 2 评论 -
【FPGA教程案例76】通信案例2——基于FPGA的滑动窗口累加器实现
实现帧同步的基本方法是在发送端预先规定的帧时隙中插入一组特殊码型的帧同步码组,在接收端由帧同步检测电路检测该码组以保证收发帧同步。要求插入的码组较强的自相关性,从而保证在帧同步过程中具有较强的抗噪声干扰能力。上述公式中,累加和是 Sum,Buffer Data 为当前数据,Shift Data 是延时 N级后的数据。从上述的仿真结果可以看到,通过滑动窗口累加器,我们可以看到一个峰值输出。那么在实际的FPGA通信系统中,通过该方法可以实现帧同步,或者帧粗同步功能。按照课程1相似的操作方式。原创 2022-09-08 20:42:29 · 2678 阅读 · 0 评论 -
【FPGA教程案例75】通信案例1——基于m序列伪码匹配的直接序列扩频解扩通信系统FPGA实现
直接序列扩频技术是应用最广的一种扩频技术,FPGA具备高速度的并行性特点在无线通信系统中的优势日益增强,利用FPGA实现直接序列扩频技术,可增大传输速率,可以使扩频技术有更好的发展与应用。从这个结构图可以看到,基于FPGA的扩频解扩通信系统,其主要包括m序列发生器,伪码匹配基于异或计算的扩频模块和解扩模块几个部分。这个是m序列,其长度为16,在实际中可以任意长度,长度越长,扩频通信系统性能越好。我们可以看到,输入信号i_din,通过扩频后的信号为o_dout。① 扩频后信号的带宽远大于信号所需的带宽。原创 2022-09-07 22:06:09 · 2733 阅读 · 2 评论 -
【FPGA教程案例74】基础操作4——基于Vivado的FPGA布局布线分析
在FPGA里布局需要考虑的问题是,如何将这些已有的逻辑上连接的LUT及其它元素合理的放到现有的FPGA里,达到功能要求的时候保证质量。在完成布局之后,需要将各个资源进行连接,如何让输入的信号到达相应的开始处理点和如何让输出到达输出IO上,并且连接的电路整体性能好,这就是布线这个环节需要完成的内容,达到布线最优。一般情况下,对于布局布线,可以直接使用vivado的工具自动进行就行,在本教程的后续课程,将介绍如何手动进行布局布线的设置约束。我们可以看到,左侧的资源名称,对应在右侧的芯片区域内。原创 2022-09-06 02:32:57 · 3296 阅读 · 0 评论 -
【FPGA教程案例73】基础操作3——基于FPGA的Vivado功耗估计
资源、速度和功耗是FPGA设计中的三大关键因素。随着工艺水平的发展和系统性能的提升,低功耗成为一些产品的目标之一。功耗也随之受到越来越多的系统工程师和FPGA工程师的关注。Xilinx新一代开发工具Vivado针对功耗方面有一套完备的方法和策略,本文将介绍如何利用Vivado进行功耗分析和优化。在Vivado下,从综合后的设计到布局布线后的设计,其间产生的任何DCP文件都可用于功耗估计,如图 1所示。原创 2022-09-04 17:27:10 · 2734 阅读 · 0 评论 -
【FPGA教程案例72】基础操作2——Xilinx原语学习及应用2
根据这两节课程的学习,我们初步了解了xilinx原语的使用,更多的原语,我们也可以直接根据vivado提供的模板来直接进行使用。原创 2022-09-04 03:40:35 · 918 阅读 · 0 评论 -
【FPGA教程案例71】基础操作1——Xilinx原语学习及应用1
原语(Primitive),是Xilinx针对其器件特征开发的一系列常用模块的名字,是芯片中的基本元件,我们可以视作xilinx对其元器件开发的特定的库函数供用户调用。其使用方法和verilog HDL相似,直接按模块进行例化就可以使用。Xilinx公司提供的原语,涵盖了FPGA开发的常用领域,包括:计算组件、I/O端口组件、寄存器和锁存器、时钟组件、处理器组件、移位寄存器、配置和检测组件、RAM/ROM组件、Slice/CLB组件以及G比特收发器组件。原创 2022-09-02 19:22:39 · 1292 阅读 · 1 评论 -
【FPGA教程案例70】硬件开发板调试10——vivado程序固化详细操作步骤
我们通过前面9个课程的内容,学会了将bit文件烧写到开发板的操作步骤,但是这个操作过程,当开发板断电后重新上电,会发现板子中烧写的bit文件没有了。而当一个FPGA项目完成之后,我们需要将FPGA程序能够永久的固化在FPGA芯片中。点击OK,然后固化完成后需要关闭设备,断电后重启。通过上述步骤,我们完成了程序固化操作。的工程文件,产生对应的bit文件。原创 2022-09-01 20:33:28 · 2013 阅读 · 0 评论 -
【FPGA教程案例69】硬件开发板调试9——通过ila在线调试DDS,并通过HDMI接口在显示器上显示正弦波形
在本课程中,我们主要实现的是通过ila在线调试DDS,并通过HDMI接口在显示器上显示正弦波形。这2个工程需要结合起来进行功能实现。这里面,工程复杂度最高的是67课程,所以,我们将DDS的课程的内容,逐渐添加到67课程的工程里面。原创 2022-09-01 20:11:47 · 1482 阅读 · 0 评论