自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 FPGA图像处理之:图像畸变矫正原理及matlab与fpga实现

图像畸变矫正技术研究 摘要:本文系统研究了图像畸变矫正技术,包括径向畸变(桶形/枕形)和切向畸变的数学模型与矫正方法。详细介绍了MATLAB实现方案,通过相机标定获取畸变参数,利用逆向映射完成像素坐标变换。针对FPGA硬件实现,提出了稀疏网格存储、定点量化等优化策略,构建了高效的流水线处理架构。研究对比了MATLAB仿真与FPGA硬件实现效果,并深入探讨了焦距参数的计算原理及其在矫正中的关键作用。此外,还分析了双线性插值算法在图像重建中的应用,为实时图像处理系统提供了技术参考。

2025-12-17 16:19:33 874

原创 FPGA图像处理之:RGB转Bayer——3x3窗BGGR格式双线性插值

摘要:Bayer格式图像转RGB需通过插值算法(如双线性插值)而非矩阵乘法实现。针对BGGR格式,不同位置像素采用特定插值公式:B位置取周围平均值补全R/G,R位置补全B/G,G位置补全R/B。边缘处理采用边界扩展法,FPGA实现验证了算法有效性。分析显示边缘区域误差较大,这与图像突变区域特性相关。该过程可逆向操作还原Bayer格式。

2025-12-16 12:10:50 914

原创 XILINX SRIOIP核详解、FPGA实现及仿真全流程(Serial RapidIO Gen2 Endpoint v4.1)

本文介绍了SRIO接口在FPGA与DSP、FPGA间通信中的应用。重点分析了Xilinx SRIO IP核的四个关键通道(ireq/iresp/treq/tresp)及其在不同配置模式下的必要性,指出Initiator/Target模式需全部通道而Condensed I/O模式可简化。详细说明了时钟架构设计、协议事务类型(NWRITE/NREAD等)及AXI4S接口的HELLO格式。通过FPGA与DSP交互的波形处理实例,阐述了四个通道的具体应用场景。最后提供了工程实践中的参考文档和仿真方法,为SRIO通信

2025-12-05 17:23:40 753

原创 XILINX XDMA详解及FPGA工程应用与仿真全流程(DMA/Bridge Subsystem for PCI Express (4.1))

本文介绍了DMA/Bridge Subsystem for PCI Express®的功能配置与实现方法。该系统可在PCIe与AXI存储空间之间实现高性能DMA数据传输或桥接功能,支持最多8个独立物理DMA引擎。文章详细阐述了IP核的配置参数,包括功能模式选择、PCIe ID设置、BAR配置、中断管理、DMA通道设置等关键技术选项,并说明了工程搭建与仿真流程。该系统提供AXI4-MM和AXI4-Stream两种接口选择,支持主机通过PCIe到AXI4-Lite主接口访问用户逻辑,同时具备完善的调试功能。最后

2025-12-03 17:27:32 837

原创 XILINX PCIE IP核详解、FPGA实现及仿真全流程(Virtex-7 FPGA Gen3 Integrated Block for PCI Express v4.3)

本文分析了Xilinx FPGA中三种PCIe IP核的特点:基础PCIe硬核(开发难度高)、AXI桥接IP(中等难度)和集成DMA的XDMA(易用但资源占用大)。重点介绍了PCIe接口的数据信号分组及其在数据采集系统中的应用,包括PC-FPGA命令传输、DAC控制和ADC数据回传的完整流程。详细解析了tuser信号的结构与功能,包含包边界控制、地址空间识别等关键字段。文章还提供了IP核配置注意事项和仿真建议,强调不同版本IP核的差异性和文档查阅的重要性。

2025-11-27 16:16:02 1090

原创 步进电机sin曲线加速及FPGA实现

摘要:本文介绍了一种基于FPGA的步进电机正弦加速控制方法。通过预计算正弦表存储在ROM中,利用状态机控制加速过程,根据正弦曲线动态调整脉冲频率。实现步骤包括确定加速参数、生成正弦加速曲线、使用计数器生成可变频率脉冲。FPGA实现采用Verilog编写核心逻辑,通过查表获取频率参数并控制脉冲输出。减速过程可通过反向读取ROM实现,同时详细说明了除法器IP核的使用及步进脉冲的波形要求。该方法实现了平滑的加速控制,适用于需要精密调速的步进电机应用场景。

2025-11-20 14:17:46 202

原创 核磁共振(MRI)成像

1.进入强磁场:当您躺进 MRI 机器,身体内的氢质子就像一个个小磁铁,会沿着主磁场(B₀)的方向排列,形成一个微小的宏观磁化矢量。我们可以把它想象成一群原本杂乱无章的小磁针,大部分都指向了北极。2.施加射频脉冲:MRI 机器会发射一个特定频率的无线电波(射频脉冲)。这个脉冲会把一部分质子“敲翻”,让宏观磁化矢量偏离主磁场方向(例如 90° 或 180°)。这时,质子们不再是整齐划一的,并且开始以一种协调的方式(同相位)绕主磁场方向旋转。

2025-10-28 15:34:34 1082

原创 超声波成像的MATLAB仿真及FPGA实现

摘要: 超声波是频率高于20kHz的机械振动波,需通过介质传播,由压电换能器将电信号转换为声波。其信号形式包括连续波(清洗、测距)、脉冲波(B超成像)和调制波(水下通信)。超声成像通过发射短脉冲(1-3周期)并接收组织界面反射的回波,利用回波时间(计算深度)和幅度(亮度)生成图像。多通道相控阵技术通过动态延迟聚焦实现高分辨率,FPGA实时处理延时参数,CPU/GPU完成极坐标到笛卡尔坐标的扫描转换。图像经对数变换增强后,形成实时二维灰度图像,广泛应用于医学诊断。

2025-10-22 14:44:44 1094 2

原创 RFSoC芯片IP配置及应用

摘要:本文详细介绍了Xilinx Zynq UltraScale+ RFSoC的数据转换器配置方法,重点分析了RF-ADC和RF-DAC的参数设置规则。在ADC配置中,阐述了链路耦合、抖动、混频器类型等关键参数的选择原则;在DAC配置中,说明了插值模式与采样字数的乘积约束条件。同时深入探讨了RFSoC器件的时钟转发特性,包括参考时钟和采样时钟两种转发方式,并给出了具体项目中的时钟配置实例。文章还指出了配置过程中可能遇到的问题及注意事项,为RFSoC开发提供了实用指导。

2025-09-24 16:18:41 1367

原创 FPGA雷达信号处理之:自适应门限阈值

本文介绍了基于脉冲功率的雷达脉冲参数检测方法。首先推荐了详细讲解检测原理的参考博客,然后阐述了使用SystemGenerator搭建FPGA算法模型的过程,包括滤波器窗长度设置和门限计算公式。实现效果显示,该系统基本满足设计要求,并建议通过增加滤波器窗长度或等比放大门限值来进一步优化性能。

2025-09-10 13:45:26 541

原创 FPGA数字信号处理之:基于Hilbert的实信号正交变换

仿真时,激励输入要进行衰减,否则结果会出现溢出。没必要在model输出进行截位修改,因为在实际使用中AD采集的数据不可能是满幅。实信号生成的两路正交信号如下,相差90°。里面滤波器主要参数设置如下,其他默认。

2025-08-20 13:35:54 373

原创 FPGA雷达信号处理之:SAR回波数据BAQ压缩

对于满足高斯分布的信号可以根据其概率密度函数的形状实现最优量化,Max-Lloyd算法就是利用了高斯分布函数的形状特性,在概率密度函数较大的时候缩小量化间隔,小的时候增大量化间隔,进而达到减小量化误差MSQE的目的,对于不同的压缩比,根据不同的压缩输出位数R,可以求得2(R-1)-1个判决门限和2 (R-1)个量化电平。没有可用的SAR回波数据,生成了正弦波数据,进行了数据压缩仿真,采用3BIT量化编码,16bit原始数据与“压缩—解压”后的数据如下所示:从效果来,BAQ算法还是挺不错的。

2025-07-08 11:14:14 659

原创 DataMover到底怎么搞:玩转ZYNQ PL端DDR

6处与DDR选型有关,用了2片16bitDDR,所以为32bit。1处默认full(读地址、读使能、写地址、写实能、写响应);3处与2处保持一致;

2025-03-12 11:54:23 1022 3

原创 XILINX AXI接口总结

AXI(高级可扩展接口)是ARM公司AMBA协议的一部分,包含AXI4、AXI4-Lite和AXI4-Stream三种主要协议。AXI4支持高性能内存映射通信,具有突发传输和通道分离特性;AXI4-Lite是简化版,用于低速控制寄存器访问;AXI4-Stream专为流式数据传输设计,无地址概念。这三种协议在SoC中协同工作:AXI4-Lite用于配置控制,AXI4用于大数据搬运,AXI4-Stream实现流水线数据处理。广泛应用于处理器、FPGA、存储器和嵌入式设备中。

2025-03-10 15:43:10 1371

原创 VIVADO检查时钟是否定义

next之后打开如下,只需要关心Recommended Constraints一栏,全部勾选上看看有没有哪个时钟忘记约束,忘记约束则补全即可。之后直接单击skip to finish即可。

2025-02-20 14:52:36 335

原创 XILINX AURORA接口:64B66B完整演示

3、4、5、6通常就这么配置,4页可以配置50MHz,其他默认。4根线,所以左下角开始顺时针写入1、2、3、4。如果是2根线或者8根线则分别如下配置。上一步执行完之后,会生产一些文件,将如下5个文件导入需要使用的工程即可。在此,我们选择example模式,不选择core模式。(回头再写,周五了等着下班。(2)生产可使用文件。

2025-01-10 16:18:52 2633 1

原创 FIFO你用对了吗?

一旦第一个单词出现在dout上,empty被取消断言,表示FIFO中有一个或多个可读单词,VALID被断言,表示dout上存在一个有效单词。当qsfp_s_axi_tx_tready(如axi总线或aurora接口的ready信号)突然拉低的时候,选用FWFT模式的FIFO,当前数据会保持在发送端口而不被发送出去(此时qsfp_s_axi_tx_tvalid = 0),等qsfp_s_axi_tx_tready信号再次拉高的时候才会将数据送出去,防止丢数。

2025-01-10 13:58:10 268

原创 XILINX MIG核到底怎么配置:玩转DDR

注意2:用户数据位宽如何计算,例如ddr_clk=800MHz时,ui_clk=200MHz,ddr物理位宽为16bit(2片ddr菊花链连接就是32bit),上下沿采集(2倍),因此用户数据位宽=800*32*2/200=256bit。上5张图中,注意app_wdf_end、app_wdf_wren、app_en、app_cmd时序,在读写期间如果一直拉高会报错!ddr_clk:ui_clk=4:1或2:1,当ddr_clk=800MHz时,只能是4:1。导入——>验证——>保存——>。

2025-01-09 17:15:18 3123 1

原创 FPGA接口开发之:JESD204B与AD9162通信

结合手册,以及所选取FPGA型号的gt线速限制,同时考虑到AD/DA同步性要求,本方案选取L=8、M=2、F=1、S=2模式,核时钟=fs/div=5000/32=156.25MHz,同理LMFC=19.53125MHz。结合手册给出的每条lane采样点,以及上文中配置的JESD204B工作模式,重点注意,在L=8的前提下,M才可以为1或2,为2时必须是IQ数据(M为1时超了fpga型号gt线速)。------(待续未完)------

2024-07-04 12:01:21 1275 2

原创 FPGA接口开发之:JESD204B与AD9689通信

写在最前,第一次近距离接触jesd204b接口,所以想做个详细的记录,互相学习!

2024-06-27 15:46:35 6350 13

原创 FPGA数字信号处理之:PID调节算法的实现

微分控制则根据误差变化率调整输出。PID控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,仍有90%左右的控制回路具有PID结构,被广泛应用于各种工业过程中,如温度控制、流量控制、速度控制等,以提高工业生产的效率和质量。PID控制是经典控制理论中控制系统的一种基本调节方式,是具有比例、积分和微分作用的一种线性调节规律,它基于对被控对象的测量值与设定值之间的差异进行调整来实现稳定和精确的控制。根据实际系统的输出限制,对控制输出值进行限制,确保输出值在合理范围内。

2024-06-07 14:52:49 1463 2

原创 FPGA数字信号处理之:小波变换算法的实现

它的主要特点是通过变换能够充分突出问题某些方面的特征,能对时间(空间)频率的局部化分析,通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier变换的困难问题,成为继Fourier变换以来在科学方法上的重大突破。激励文件编写可参考《文章二》中关于“matlab产生激励”相关代码。输入信号与经过小波变换之后的信号如下所示,经分析,使用fpga实现小波变换还是挺不错的。原理可参考如下两个博主文章。

2024-06-06 14:22:59 1530 2

原创 FPGA图像处理之:Harris角点检测

一般的角点检测都是对有具体定义的、或者是能够具体检测出来的兴趣点的检测。在实践中,通常大部分称为角点检测的方法检测的都是兴趣点,而不是独有的角点。目前的角点检测算法可归纳为3类:基于灰度图像的角点检测、基于二值图像的角点检测、基于轮廓曲线的角点检测。对灰度图像、二值图像、边缘轮廓曲线的角点检测算法进行综述,分析了相关的算法,并对各种检测算法给出了评价。2.对M的四个元素进行高斯平滑滤波,为的是消除一些不必要的孤立点和凸起,得到新的矩阵M(M实际上只能算得上是2x2矩阵,Ix2等代表图像变换矩阵中的点)

2024-05-22 15:16:44 559

原创 FPGA图像处理之:sobel算法边缘检测

边缘是图像的基本特征,包含了用于图像识别的有用信息,在计算机视觉、图像分析和图像处理等应用中起着重要作用。对于图像而言,取 3 行 3 列的图像数据,将图像数据与对应位置的算子的值相乘再相加,得到 x 方向的 Gx,和 y 方向的 Gy,将得到的 Gx 和 Gy,平方后相加,再取算术平方根,得到 Gxy,近似值为 Gx 和 Gy 绝对值之和,将计算得到的 Gxy 与我们设定的阈值相比较,Gxy 如果大于阈值,表示该点为边界点,此点显示黑点,否则显示白点。

2024-05-17 14:50:00 638

原创 FPGA图像处理之:直方图均衡化

其中Db是转换过后的像素的灰度值,Dmax是输入图像经过直方图统计后得到的最大的灰度值,A0是一幅图像面积,也就是所有的像素值H(i)是灰度级的各级的统计结果。直方图均衡化,通过一种灰度映射使输入图像经过转换后,在每一灰度级上都有相近似的输出图像,输出的灰度值是均匀的。直方图均衡化就的作用就是,对于当前的输入像素,需要首先求出小于当前像素灰度值的所有像素统计值的和,然后与该图像中的最大灰度值进行相乘,最后除以图像的面积。分别找了灰度效果不同的图比较如下,从效果来看,直方图均衡化算法还是挺不错的。

2024-05-17 14:17:06 839

原创 FPGA图像处理之:OTSU二值化阈值分隔

二值化,就是让图像的像素点矩阵中的每个像素点的灰度值为0(黑色)或者255(白色),也就是让整个图像呈现只有黑和白的效果。假如取阀值为127(相当于0~255的中数),让灰度值小于等于127的变为0(黑色),灰度值大于127的变为255(白色),这样做的好处是计算量小速度快,但是缺点也是很明显的,因为这个阀值在不同的图片中均为127,但是不同的图片,他们的颜色分布差别很大,所以用127做阀值,白菜萝卜一刀切,效果肯定是不好的。1.计算直方图:首先,计算图像的灰度直方图,统计每个灰度级别的像素数量。

2024-05-17 11:04:43 882

原创 vivado时钟约束之set_multicycle_path

对于慢时钟到快时钟,如果多周期是针对快时钟的,对于setup可以加-end也可以不加,假设setup周期数是X,而对于hold如果想check沿对齐的情况,必须加-end选项,周期数为X-1。对于从快时钟到慢时钟,如果多周期是针对快时钟的,对于hold可以加-start也可以不加,但是对于setup周期数一定要加-start。

2024-05-10 11:16:47 547

原创 vivado时钟约束之set_clock_groups

下图颜色方块中,横坐标表示目的时钟,纵坐标表示源时钟,黑色No path表示不存在时序路径,蓝色User ignored Paths为用户设置了不分析的约束,红色Timed(Unsafe)表示异步时钟或非扩展的时钟,颜色块下方的列表也显示了时序的详细信息。同步时钟: 两个时钟的相位关系是可预知的,常见的是两个时钟来源于相同的根时钟或者共同的周期,如生成时钟和主时钟。时钟Vivado中Report Clock Interaction可以查看时钟间的关系。一、时钟间关系及如何查看。二、时钟约束语句解释。

2024-05-10 10:50:23 1288

原创 FPGA数字信号处理之:飞秒级滤波延时实现

以xilinx vivado为例,会使用system generator。从实现效果来看,将下图左中圆圈部分放大后如下图右所示,通过微调延时精度能够达到fs级别。使用滤波器精准延时。

2024-05-06 14:49:50 699 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除