自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CIC 滤波器:从数学到硬件——一份极致精简的多速率滤波实现

CIC滤波器是一种高效的多速率信号处理结构,广泛应用于无线通信、音频处理等领域。它通过级联积分器和梳状滤波器实现整数倍采样率变换,仅需加法器和寄存器即可完成,无需乘法器,显著节省硬件资源。本文剖析了CIC的工作原理,重点介绍了其三级核心模块(积分器、降采样器、梳状滤波器)的工程实现细节,包括参数化设计、逐级位宽优化等关键技术。通过精确的位宽控制和噪声整形,CIC在保证性能的同时大幅降低资源消耗,展现了简洁而精妙的设计哲学。

2026-07-03 15:40:06 269

原创 如何进行10G以太网MAC的设计:从XGMII到统计计数的完整设计

整个10G 以太网 MAC Verilog 代码不到 3000 行 的规模,完整实现了 IEEE 802.3ae 标准规定的 MAC 层功能,覆盖了从 XGMII 接口到用户逻辑的全数据通路,包含了 CRC 校验、帧解析、链路故障检测、流控暂停帧、可配置统计计数器、MDIO 管理接口等完整特性。展示了10G 线速数据通路的流水线设计方法演示了标准协议文本到硬件状态机的直接映射技巧提供了多时钟域隔离的实用方案包含了一个完整的分布式统计脉冲 + 集中累加的监控框架。

2026-06-12 15:44:28 381

原创 信号抵达的地方——JESD204B 接收链路全解析

本文详细解析了JESD204B协议中FPGA接收链路的工作原理。接收端需要从高速差分串行流中精确还原IQ数据,主要流程包括:通过K28.5字符实现Comma对齐;采用容错状态机完成CGS同步;解析ILA序列获取链路配置;利用弹性缓冲补偿多通道时延差;捕获SYSREF实现系统级同步;执行解扰码还原原始数据;持续监测帧对齐和错误状态。整个接收链路通过分层递进的处理机制,将物理层比特流转化为可靠的IQ采样数据,展现了从"混沌"到"秩序"的系统设计智慧。

2026-05-28 11:35:25 481

原创 信号出发的地方——JESD204B 发射链路全解析

当所有的握手、ILA、同步都完成之后,发射端进入**用户数据(User Data)**发送阶段。来自上层模块的并行数据(如通信射频前端的IQ数据)(tx_tdata),经过帧打包、可选扰码、ILA 多路复用,最终被送入各 Lane 的发送缓冲。与此同时,K 字符指示信号伴随数据一起下发到 SerDes 的 GTX/GTH 核,由 8B/10B 编码器将 8 位数据映射为 10 位线路码,最终通过高速差分对在 PCB 上飞驰而去。

2026-05-25 16:47:23 556

原创 一图看透 FPGA 工程师的成长坐标

上板调试,是连接"纸上设计"与"实物运行"的最后一公里。这一公里,往往是项目进度最紧张、压力最大、也最能体现综合能力的阶段。“这也太多了!确实。这不是一个人在短期内能全部掌握的。但能力地图的价值,从来不在于"全部精通"① 知道自己在哪里清醒认识当前的能力水位,不自大,也不妄自菲薄。② 知道差距在哪里找到下一阶段最值得投入的成长方向,而不是漫无目的地"全面补课"。③ 知道优先级根据你的项目场景和职业规划,决定深耕哪个方向——专才还是通才,各有其路。

2026-05-20 00:04:03 428

原创 从零开始,用FPGA实现一个数字混频器

模块核心算法硬件映射流水深度cordicCORDIC 旋转算法寄存器阵列(24 级)25 拍nco相位累加 + 宽度裁剪寄存器 + rou/sta+4 拍3-乘法复数算法6 拍mixer双通道复乘 + 位宽处理8 拍duc顶层调度 + bypass11 拍整套模块从输入基带 IQ 到输出上变频 IQ,总延迟精确可查,资源占用以 3 个 DSP48E2 为乘法计算核心,余下均为寄存器和查找表,在 Xilinx 7K325T 上综合效率极高。

2026-05-14 23:33:23 468

原创 # 用 CORDIC 算法在 FPGA 上应用——求相位角

CORDIC 算法诞生于 1959 年,至今仍是 FPGA/ASIC 信号处理工具箱里的常青树。整数角度编码——溢出即循环,彻底回避相位环绕问题象限预处理——一拍寄存器操作,把全象限计算变成半平面问题generate 流水——参数化展开,综合友好,改STEPS即可权衡精度与资源相位幅度同输出——一套流水线,两路结果,资源利用极致参数化设计——相位分辨率和迭代次数支持参数化配置,可根据精度需要进行设置这种"只用移位和加法实现三角运算"的思路,在 FPGA 设计中具有普遍意义。

2026-05-04 22:45:47 1052

原创 手把手拆解一个工业级 SPI Master IP 核:五大亮点让你的设计更上一层楼

亮点核心价值双相传输架构一个 IP 适配所有 SPI 外设,无需改 RTL精确三线双向切换边沿级精确控制,避免总线冲突可调采样点板级 SI 问题软件可调,无需重新综合IOB 约束 + MCP 时序真正工程可用的高速 IO 时序设计原子传输 + Abort工业级鲁棒性,防止传输被破坏这个 SPI Master IP 核的设计,体现了从"能用"到"好用"再到"工程可用"的完整思考链路。

2026-05-02 23:19:01 834

原创 用脉动阵列做图像卷积——FPGA 工程师的「硬核」实现

输出前,使用round_satu模块做向最近整数取整(Round-to-nearest)+ 有符号饱和截位取整:防止直接截低位带来的系统性偏差(向下偏)饱和:当结果超出 DOUT_WIDTH 表示范围时,截到最大/最小值而不是回绕这在图像处理中非常重要:卷积结果的像素值范围如果不做饱和处理,溢出回绕会产生明显的花屏噪点。1. 流水线匹配 DSP 内部结构三级寄存的always_ff结构,让综合器能够自动推断出最优的 DSP48 映射,无需手写原语,代码可读性和可移植性兼顾。

2026-04-27 16:00:19 1016

原创 一个“极简硬件“的可变长度 FFT 加速器设计——仅用 3 个 DSP,支持 16~8192 点动态切换

本文介绍了一种基于FPGA的可变长度流式FFT加速器设计,采用SystemVerilog RTL实现,具有以下创新特点:1) 通过单蝶形单元串行迭代结构,仅使用3个DSP48E1和4个BRAM36实现16-8192点FFT;2) 采用CORDIC算法实时生成旋转因子,无需大容量ROM表;3) 使用Karatsuba优化将复数乘法器压缩至3个DSP;4) 支持运行时动态切换点数并通过pow_ready握手机制确保参数安全切换;5) 创新的自动动态缩放技术防止运算溢出。该设计在XC7K325T芯片上实现250M

2026-04-21 23:43:56 402

原创 FPGA 如何优雅地计算多项式?聊聊霍纳算法的硬件实现

技术点解决的核心问题霍纳算法乘法次数从 15 次压缩到 5 次,资源节省 2/34-DSP 分割方案突破 DSP48E1 端口位宽限制,实现 32×32 有符号乘法generate 参数化流水极少代码构建规整多级流水线,扩展方便SRL 延迟链相比纯 FF 链节省 4~8 倍寄存器资源位宽规划 + 收敛舍入消除截断统计偏差,提升计算精度饱和截位防止溢出导致符号翻转,提升系统鲁棒性理解这些设计思路,不仅能应用于多项式计算,还可以推广到任何需要高速迭代乘加的 FPGA 算法加速器。

2026-04-20 22:32:31 834

空空如也

空空如也

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

TA关注的人

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