- 博客(142)
- 资源 (23)
- 收藏
- 关注
原创 基于ICAPE原语实现Xilinx FPGA程序多版本Multiboot重载的方法与例程
摘要: 本文介绍了FPGA开发中实现Multiboot切换重载的方法,通过将多个bit文件整合到Flash中,实现在线更新与版本切换。详细讲解了Multiboot原理(基于ICAP控制Flash的IPROG过程)、硬件平台(XC7k325TFFG900+MX25L12845G Flash)及操作步骤,包括文件配置、约束修改、MCS文件生成与烧写。通过VIO或硬件开关触发,成功演示了3个工程bit的循环切换,验证了方案的可行性。最后提醒注意ICAP版本、DEVICE_ID匹配及地址间隔设置,并提供了例程获取方
2025-09-10 20:30:00
586
原创 VIVADO中XDC与flash相关的常用Bitstream 设置(包括EMMCLK的配置使用)与调试经验
本文总结了FPGA中与Flash相关的常用Bitstream配置设置及调试经验。主要内容包括:1)介绍了常见的SPI和BPI启动模式选择;2)分享了调试经验,如确认硬件启动模式匹配、Flash速率限制等问题;3)提供了常规SPI模式的XDC约束代码示例,包含位宽、配置速率和压缩设置;4)还包含三种隐藏模式(常规BPI、使用EMMCLK的SPI/BPI模式)的获取方式。文章旨在帮助开发者快速配置Flash相关参数,提高调试效率。
2025-08-08 20:00:00
450
原创 VIVADO中使用DDR IP编译报错与解决思路之[Runs 36-335] *mig_7series_*dcp is not avalid design checkpoint
本文介绍了在Vivado设计中使用MIG IP核时出现的编译错误"[Runs 36-335] mig_7series_*dcp is not a valid design checkpoint"的解决方法。该问题通常发生在BD(Block Design)设计中,主要原因是设计检查点无效。解决方法很简单:只需选中BD设计,右键选择"Reset Output Products"选项进行复位操作,即可继续正常编译。文章提供了操作截图说明,并欢迎读者关注"FPGA加
2025-08-06 16:30:00
321
原创 AXI4- Stream Switch ip常见使用场景及常见问题
本文介绍了AXI4-Stream Switch IP在Vivado中的两种典型应用场景(多选1输出和1主多从分时输出)及常见问题。针对多选1输出模式,文章指出默认配置会导致输入通道循环输出、速率受限等问题,建议通过设置s_req_suppress信号屏蔽非活动通道以提高效率。对于1主多从模式,强调需通过tdest信号选择输出通道ID来控制数据流向。文中配有IP配置截图和信号说明图,为FPGA开发者提供了该IP核的实际使用指导。
2025-07-31 08:30:00
370
原创 VIVADO加载数据文件仿真方法案例与为啥$readmemh比$fopen好用?(Error reading data from file xx.txt at index 0)
本文分享了Vivado仿真中读取数据文件的两种方法:$readmemh和$fopen,并针对$fopen无法读取数据的问题提供了解决方案。通过实验对比发现,当$fopen读取失败时,改用$readmemh方法可以成功加载数据文件。文章详细介绍了两种方法的具体实现步骤,包括文件路径设置和代码示例,并总结了$readmemh方法的三大优势:兼容性更好、代码更简洁、无需额外加载文件操作。最后提供了数据调用示例,帮助读者快速掌握Vivado仿真中的数据文件读取技巧。
2025-07-10 10:00:00
903
原创 远程桌面使用服务器中的vivado有license陷阱?
摘要 本文讨论了Xilinx Vivado中IP授权在本地与远程服务器使用时出现的差异现象。在相同Vivado版本和相同授权文件条件下,本地可以正常生成bit文件,但通过远程桌面连接服务器使用时却提示缺少IP授权。通过分析发现,可远程使用的IP授权文件末尾标有"TS_OK"标识,而不可远程使用的则没有。这表明Xilinx某些IP授权可能对远程使用有限制,需要特别注意授权文件中是否包含远程使用许可标记。该发现对使用远程服务器进行FPGA开发的工程师具有重要参考价值。
2025-07-04 20:30:00
219
原创 风中月隐自制dds_sweep_fre_ctrl(扫频控制)IP的使用例程讲解
本文介绍了一个自制的DDS扫频控制IP核(dds_sweep_fre),用于快速生成DAC扫频信号。该IP具有灵活设置扫频起始/结束频率、间隔频率和时间等参数的特点,支持扫频和非扫频两种模式。文章展示了IP核结构、DDS配置界面、例程调用方式及仿真结果,验证了其按预期输出1MHz变化的频率控制字和正弦信号。使用时需注意扫频使能、频率反转、间隔时间等参数的合理设置,并提供相关工具和例程的获取方式。该方案适用于工程开发中快速实现DDS信号扫频功能。
2025-06-20 15:55:00
429
原创 一文明白用VIVADO生成与烧写FPGA的bit文件与MCS文件方法步骤
本文详细介绍了使用Vivado生成和烧写FPGA的Bit文件与Mcs文件的全流程方法。主要内容包括:1)通过工程文件确认Vivado版本并生成Bit文件;2)在已有Bit文件基础上配置Flash型号生成Mcs文件;3)通过JTAG连接完成Bit文件的烧写;4)添加Flash器件后烧写Mcs文件。文章配有详细的操作截图,适合FPGA开发者参考执行。最后提供了微信公众号"FPGA加速者"作为交流平台。全文操作步骤清晰,图文并茂,是FPGA开发者的实用技术指南。
2025-06-13 16:28:20
1891
原创 [opt 31-67] vivado编译出错 Implementation error 问题定位与解决
Vivado编译出现Implementation error时,通过原理图检查发现xx_VLD信号方向错误。该信号本应作为xx_sub模块的输入(input),但代码中误设为输出(output)。将端口方向改为input后,问题得到解决。解决方法:1)通过原理图定位未连接信号;2)检查代码端口定义;3)修正信号方向为正确方向。
2025-06-06 14:28:07
375
原创 在FPGA中如何用可配频率DDS信号测试高速DAC接口功能是否正常?
在FPGA开发中,由于主频限制(通常低于300MHz),直接使用单个DDS(直接数字频率合成器)无法满足高速DAC(≥1GSPS采样率)的需求。为解决这一问题,可以采用多路并行低速DDS合成1路高速DDS的技术。该技术通过在FPGA中生成多路相位不同但频率相同的DDS信号,并将它们按顺序排列,从而合成高速DAC所需的高数据率信号。文章详细介绍了该技术的理论基础、工程搭建、代码实现及仿真验证,展示了如何通过多路DDS合成应对高速DAC的数据需求。此外,文章还提供了相关例程和DDS频率控制字计算工具的获取方式,
2025-05-24 10:30:00
713
原创 XILINX 的7系列与UltraScale+系列FPGA的Device DNA获取方法与区别及代码仿真与上板案例
本文介绍了在FPGA开发中如何获取FPGA的DNA(唯一标识符),并对比了Xilinx 7系列与UltraScale系列FPGA的DNA差异。FPGA的DNA具有唯一性,常用于硬件加密。获取DNA的方法包括JTAG查询和通过原语+代码获取。7系列FPGA的DNA为57位,输出顺序为大端;UltraScale系列为96位,输出顺序为小端。文中提供了兼容Xilinx和复旦微FPGA的代码案例,并通过仿真和上板验证了代码的准确性。最后,作者提供了获取例程的方式,并鼓励读者关注其公众号获取更多FPGA相关内容。
2025-05-17 18:00:00
1758
原创 如何查看XILINX FPGA系列中兼容型号有哪些?
在XILINX FPGA系列中查找兼容型号,可以通过官方提供的选型指南中的《xx Migration Table》进行查询。该表通过连线表示兼容的FPGA型号。本文以Zynq®7000系列(Z7)、Zynq® UltraScale+™MPSoC系列(ZU)和UltraScale Architecture系列(KU,VU)为例,展示了如何查找兼容型号。通过这种方法,开发者可以快速找到与当前使用的FPGA兼容的型号,从而在项目开发中做出更合适的选择。
2025-05-10 10:30:00
270
原创 XIlinx FPGA 的vivado中cordic ip的(定点数小数)输入与输出参数值讲解
虽然很多FPGA工程师都知道Xilinx FPGA种的vivado cordic IP可以计算三角函数,但在实际使用时会遇到各种各样的问题,比如:- 输入参数代表什么意思?- 输出参数怎么分类?- 哪些数据是sin值,哪些是cos值?本文以cordic ip求解sin与cos值为例,破解这些疑问,讲解cordic IP的使用。
2025-04-22 18:00:00
1053
原创 XILIXN FPGA用VIVADO仿真时如何显示定点数小数
FPGA在做仿真时,在使用到一些特定的IP时会出现定点数小数的使用,但在,这种时候在设置仿真参数时,需要按特定的格式输入。但在,个人还是更习惯看十进制带小数的形式,这种时候就涉及到了进制转换显示了。
2025-04-19 20:30:00
599
原创 Xilinx vivado如何对DCP文件进行仿真
作为FPGA工程师为了个人的知识产权保护或者调用方便,很多时候我们不会直接提供源码,我们会提供DCP文件给其他人使用。虽然vivado可以直接对dcp文件进行综合编译实现,但vivado没法直接对dcp文件进行仿真,这就会导致别人无法验证我们dcp功能的正确性,也无法先对别人的整体工程进行仿真验证(如图一所示仿真目录下缺失文件)。因此就有了本文,为解决vivado对dcp文件进行仿真。
2025-04-18 13:30:00
766
原创 Xilinx FPGA中RAM最好用的方案
在FPGA开发过程中,经常会遇到需要先缓存数据后面再使用的情况,通常有RAM与FIFO两种方案,但使用FIFO有两个限制:1. FIFO输出与输入之间至少存在固定的3个时钟延时,不能在1个时钟送出;2. FIFO在必须是先入先出的;而使用RAM缓存则可以突破这两个限制,输出与输入之间的延时达到只有1个时钟,而且还可以选择输出,不用先入先出。
2025-04-14 13:30:00
1245
原创 你的RFSOC之ZU4xDR的RF-DAC为啥无法配置到标称的10GSPS采样率?
作为FPGA工程师,不知道大家在设计RFSOC时是否遇到过RF-DAC的采样率无法达到标称的最大值的情况。RFSOC中以ZU4xDR为例:标称RF-DAC采样率为10GSPS,但很多人第一次设计时只能配置到7GSPS。本文就以ZU47DR/ZU48DR为例,讲解这个问题。
2025-03-31 11:06:58
649
原创 ZYNQ在线更新重加载FPGA bit之slave selectMAP方案
作为FPGA工程师,在项目中是否经常会遇到客户要求FPGA具有在线更新的需求?在项目中很容易遇到ZYNQ+FPGA的架构,而ZYNQ的代码更新在跑系统(比如linux)的情况下很容易实现从网口更新或者从串口更新。但是纯FPGA却不好直接重新更新代码,这个时候可以使用slave serial或者slave selectMAP的方式通过ZYNQ来在线更新FPGA的bit。slave selectMAP比slave serial更新速率更快,而本文主要介绍slave selectMAP。
2025-03-27 18:00:00
1209
3
原创 VIVADO中QSPI x8 FLASH固化烧写需要哪些步骤与注意点
作为FPGA工程师,不知道大家会遇到一片qspi flash容量不够,需要用到两片qspi flash来存储bit文件的情况。通常一片qspi flash可支持的数据位宽为x1,x2,x4。而使用两片qspi flash时即可把数据位宽扩大到x8。**那么使用QSPI x8的时候需要有哪些步骤与注意事项呢?****且听吾往下分析!!!**
2025-03-19 17:00:00
987
原创 多个MHC7044时钟芯片同步需要注意哪些点?
大多数FPGA工程师都知道HMC7044主要是给JESD204B/C接口的ADC/DAC供时钟的主流时钟芯片,那么假如要多片HMC7044时钟芯片输出的时钟要同步,又需要哪些注意事项呢?
2025-03-13 19:34:33
900
原创 FPGA中两个单lane的aurora协议在同一个GTX BANK中设计时有哪些注意事项?
作为FPGA工程师大家是否会遇到如下问题:一个GTX BANK中的是否可以连接两个光口?一个GTX BANK中的两个光口都跑aurora时是否可以设置不同的模式?一个FPGA中怎么设置两个aurora协议?是否会遇到问题?具体要怎么设置,且往下看:⬇⬇。
2025-03-07 17:36:41
617
原创 啥?FPGA的aurora高速接口 5分钟就能快速上手使用
你是否还在了解aurora高速接口怎么用?你是否还在烦忧aurora ip怎么配置?你是否还在担心aurora配置不全导致不能建链?使用本文推荐的方法,这些统统不是问题。
2025-02-26 18:00:00
1454
原创 原来这就是带通信号采样定理与频谱搬移过程
作为FPGA工程师或相关硬件工程师,不知道大家在做ADC采集时是否经常有以下**类似疑问**:- 奈奎斯特采样定理要求采样率是信号频率的2倍以上,这32MHZ的采样率的ADC怎么采集70±10MHZ信号?- 假如32MHZ的采样率ADC能够采集70±10MHZ信号,那么在FPGA中看到的信号应该多少频率?- 带通信号本身的带宽并不一定很宽,那么能不能采用比奈奎斯特采样频率更低的频率来采样呢?
2025-02-19 20:00:00
1759
原创 风中月隐眼中用USR_ACCESS2自动获取vivado生成bit编译时间 需要避开多少坑?
前言USR_ACCESS2简介功能介绍接口信号数据排列案例解析关键点上板案例扩展知识vivado工具生成约束进制转换verilog代码文末疑问FPGA在做版本管理时,如果手动输入版本时间那么很多人会忘,会导致这个版本管理形同虚设。所以xilinx很贴心设置了一个源语USR_ACCESS2,来获取bit生成的时间。然而很多人去使用USR_ACCESS2时却很难用起来,这是为什么呢?因为要使用USR_ACCESS2,得避开下文讲解的坑,也就是抓住关键点。
2025-02-12 13:59:34
610
原创 风中月隐眼里的FPGA——非常简单易学
风中月隐眼中的FPGA是一个芯片;一个可编程的芯片;一个需要底层逻辑思维开发的芯片;一个可通过编程实现实现各种客户需求的芯片;一个可以养家糊口的芯片;FPGA工程师就是使用专门编程语言(verilog hdl/VHDL/systemverilog等)针对FPGA芯片开发、调试、验证的一群人。简单!很简单!非常简单!
2025-01-04 10:00:00
1182
原创 vivado [Runtcl-4]与[Runtcl-1]couldn’t read file ***no such file or directory报错处理方法
报错如下图所示:由上图报错我们发现是一个ip_patch找不到,处理方式有两种:1)在这个报错的路径下面放这个补丁文件(复旦微电子的FPGA补丁);2)我们不需要这个补丁,那么久去掉工程中调用这个补丁的路径,操作方式如下:这个报错和以上的报错类似,处理方式也类似。
2024-11-22 14:10:17
1631
原创 基于xilinx FPGA的GTX/GTH/GTY位置信息查看方式(如X0Y0在bank几)
本文用于介绍如何查看xilinx fpga GTX得位置信息(如X0Y0在哪个BANK/Quad)。1) 不同的FPGA的X0Y0在GTX的bank/Quad不一定一样需要根据具体情况筛选;2) 可以确定一点X0Y0一定在第一个GTX上;
2024-07-03 17:44:53
3277
原创 基于xilinx FPGA的QSFP调试使用经验
本文用于记录QSFP在调试使用时遇到的一些经验教训,防止后来者踩相同的坑。QSFP(Quad Small Form-facor Pluggable)即四通道SFP接口,即4通道集合到一起的光模块接口。常见于要使用40G光模块,100G光模块。
2024-06-14 15:29:38
2570
原创 基于xilinx fpga RFSOC系列的Ultrascale+ RF Data Converter ip详解说明
本文用于讲解RFSOC系列Xilinx IP 的ZYNQ Ultrascale+ RF Data Converter ip的功能,以及使用说明,方便使用者快速上手。参考手册:《PG269》《ds889》注意:使用本IP的前提条件:vivado的版本要高于2020.2;本IP主要是实现RFSOC器件的ADC与DAC功能
2024-05-24 10:05:21
6436
4
原创 基于xilinx FPGA的 FFT IP使用例程说明文档(可动态配置FFT点数,可计算信号频率与幅度)
本文用于讲解xilinx IP 的FFT ip examples的功能说明本examples 是风中月隐编写的针对xilinx FFT IP的使用demo,通过仿真验证了以下功能:1) 可动态配置FFT得点数;2) 可出算出输入信号得频率;3) 可计算出FFT得幅度峰值;4) 验证了输入I/Q顺序对FFT输出结果得影响;5) 验证了动态配置FFT点数得IP设置限制;6) 验证了是否可连续输入数据;7) 可看到FFT输出每个点的频率;8) 推算了FFT IP输出结果与dB值的关系;
2024-05-23 17:03:35
2531
原创 具于xilinx FPGA的可动态配置DDS频率控制字的DDS IP核使用例程详解
本文用于讲解xilinx IP 的dds ip examples(动态配置频率)的功能说明,方便使用者快速上手。本examples 是风中月隐编写的针对DDS的使用demo,实现通过vio控制频率控制字来调整DDS的输出频率,为大家演示一个可动态配置DDS频率的例程。例程的平台:1) 硬件平台:XC7Z020CLG484-22) FPGA开发平台:vivado2017.43) 可仿真
2024-01-14 10:37:29
3018
原创 xilinx系列FPGA基于VIVADO的pin delay列表生成说明
本文用于讲诉xilinx系列FPGA基于VIVADO的pin delay列表生成说明,以及一些注意事项,为FPGA设计人员探明道路。Pin delay 即FPGA内部die到pin的延时数据。
2023-12-01 16:38:01
4079
原创 CLK_CFG_AD9516时钟芯片(配置代码使用说明)
本文用于讲解CLK_CFG_AD9516例程配置代码的使用说明,方便使用者快速上手。
2023-11-13 16:52:51
4877
4
原创 ultrascale+mpsoc系列的ZYNQ中DDR4参数设置说明
本文用于讲诉ultrascale+mpsoc系列中的ZYNQ的DDR4的参数设置与实际硬件中的DDR选型之间的关系,为FPGA设计人员探明道路。
2023-11-13 15:04:23
4046
5
原创 GAD7980/CL1680/AD7980详解与开发说明
本文用于讲述GAD7980的功能与用法,以及其中一些参数的计算方法,用法时序,输出数值等等,便于后续沟通交流。GAD7980与AD7980/CL1680时序兼容,硬件兼容可以使用同一套代码。GAD7980是一款16位1MSPS SAR ADC,常用来采集电压信号。最大采样率为1MSPS,采用兼容的SPI接口进行数据输出,没有寄存器等配置,使用简单。
2023-07-04 09:54:17
4004
6
原创 yueyin uart ip 使用说明文档
本文用于讲解yueyin IP 的uart ip的功能,以及使用说明,方便使用者快速上手。yueyin_ip_uart是月隐编写的串口IP,实现串口(rs232/rs485/rs422)的底层收发时序,可灵活设置奇偶校验位,数据位的位宽等参数,收发指示信号明显好用。串口的协议为:1bit起始位,data W(8) bit 数据位,1bit停止位。
2023-06-19 16:07:59
1099
1
原创 AD9739配置解析与数据输出指南
由AD9739手册的Figure40 可知,数据的输入是双端口同时奇偶输入形式,即DB0输入计数时偶数的点,DB1输入计数时为计数的点。从数据连贯性顺序的角度看这类似于乒乓操作,即第0个数据给DB0端口,第1个端口给DB1端口,第2个端口给DB0端口,第3个端口给DB1端口,依此循环。因为AD9739是双端口数据输入,因此每个端口的数据速率为采样率的一半,加起来总的数据传输速率与采样率相等;因为AD9739是DDR数据输入格式,所以DCI与DCO的速率为单端口数据速率的一半,为采样率的1/4;
2023-04-27 22:03:00
5741
11
原创 LMK04828寄存器配置使用指导手册
本文用示例指导LMK04828的配置。LMK04828是TI的专为JESD204B设计的时钟芯片。LMK04828有两个VCO,其频率如下所示。
2022-09-15 17:55:31
14809
8
原创 AD9164配置与数据使用指南
本文用于说明AD9164的常规配置与数据来源配置说明。AD9164是ADI公司的一款高达12GSP的JESD204接口的DAC,数据位数16Bit。其功能框图如下所示: 由上图可知,AD9164的数据来源为serdes(8lane),寄存器配置为SPI接口。AD9164的配置SPI可选MSB first 或者LSB first,并且可选3线或者4线模式。默认的为MSB first 3线模式。其说明如下所示:且SPI的时序如下图所示:。
2022-09-15 17:49:50
6454
2
原创 AD9680配置与数据还原说明
本文用于说明AD9680配置与数据还原使用情况。本文以采样率1000MHZ为例说明AD9680的常规配置与数据还原过程。AD9680是ADI公司的一片14bit 采样率高达1GSPS的JESD204B接口的模拟转数字的转换器(ADC)。其功能框图如下。由上图可知,本芯片有2路输入,配置寄存器的方式为SPI。其SPI的配置时序如下所示。
2022-09-15 17:44:02
9628
7
pg016 Video Timing controller LogiCORE IP Product Guide
2022-04-07
AD9516-cfg-demo(verilog hdl编写的FPGA驱动AD9516时钟芯片的案例代码)
2023-11-13
AD9739-DEMO FPGA逻辑例程代码(包括SPI配置以及oserdes接口输出代码)
2023-09-22
xilinx FPGA的约束文件UCF转XDC的工具 (更新版)
2023-07-12
CL1680/GAD7980/AD7980 cfg (verilog hdl)
2023-07-04
FPGA纯逻辑端的串口自编译代码IP:yueyin-uart-ip
2023-06-19
IIC_Register_hdmi_cs_mz7045fa(ZYNQ配置IIC寄存器例程代码)
2022-06-15
ZYNQ_EMIO_demo
2022-06-09
xilinx FPGA的约束文件UCF转XDC的工具
2022-03-01
AVIONICS DIGITAL VIDEO BUS (ARINC高速数字视频航空标准)
2022-02-16
xilinx GTX 用DRP接口配置linerate的计算表格
2022-01-24
Xilinx FPGA GTX的DRP(Dynamic Reconfiguration Port)的时序配置模块
2022-01-24
基于ICAPE原语实现Xilinx FPGA程序多版本Multiboot重载的例程
2025-09-09
FPGA中DDS扫频控制IP使用例程
2025-06-20
FPGA中用verilog编写的多路可配频率并行dds合并为1路高速dds可供给高速dac接口使用的demo
2025-05-23
XILINX/复旦微 FPGA- DNA获取例程
2025-05-16
ds926-zynq-ultrascale-plus-rfsoc性能指标说明
2025-03-29
pg269-rf-data-converter-en-us-2.6
2025-03-29
在线更新之slave selectMAP的FPGA例程仿真代码(HDL)
2025-03-26
udp_ip_1g_sfp FPGA中光口传输UDP协议的tri mode ethernet mac ip使用例程
2025-03-19
xapp497-usr-access即xilinx的USR-ACCESS2源语使用讲解pdf文档
2025-01-21
FPGA中基于USR-ACCESSE2源语的vivado编译自动更新版本时间的verilog hdl代码
2025-01-21
xilinx FFT IP核使用例程(有仿真与源码)
2024-05-23
具于xilinx FPGA的可动态配置DDS频率控制字的DDS IP examples (使用例程)
2024-01-14
Xilinx DDS IP频率控制字计算工具
2024-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人