从MCU到FPGA,自主替代的时代浪潮

在当今全球半导体产业格局剧变的背景下,“国产替代”已从战略口号演变为切实的产业浪潮。从微控制器(MCU)到现场可编程门阵列(FPGA),从通用芯片到专用领域,一批中国芯片企业正凭借技术突破与市场敏捷性,逐步改写依赖进口的历史。本文将聚焦UVB/UWB、MCU、FPGA及AGM等关键词,梳理这一领域的创新动态与国产化路径。

 

 

MCU:智能控制的“大脑”与国产化突围

微控制器(MCU)作为嵌入式系统的核心,广泛应用于物联网、汽车电子、工业控制等领域。长期以来,海外巨头占据主导,但近年来国产MCU芯片凭借性价比、本地化服务及供应链安全优势,快速渗透市场。

国产MCU替代并非简单仿制,而是在架构优化、功耗控制、生态建设上逐步形成差异化竞争力。例如,遨格芯微(AGM)推出的AG32系列MCU,基于RISC-V或ARM架构,在性能与功耗平衡上表现突出,成为许多中小型智能设备的主流选择。这类国产MCU不仅实现了引脚兼容替代,更在无线连接、安全加密等新增需求上灵活响应。

从AGM到“遨格芯微”:一家国产芯片企业的缩影

AGM(遨格芯微) 作为国内少数同时布局MCU与FPGA的芯片设计公司,其发展路径颇具代表性。通过其agm官网可见,产品线覆盖AG32位MCU芯片、FPGA以及融合可编程逻辑的FPGA MCU混合方案。这种“MCU+FPGA”架构,既能实现控制功能,又具备硬件可重构灵活性,特别适合通信、工业视觉等高性能场景。

AG32 MCU系列立足中高端市场,聚焦实时控制与低功耗设计,而ag32mcu作为其核心产品之一,已在家电、电机控制、智能仪表等领域实现批量应用。遨格芯微的策略体现了国产芯片企业的一条可行路径:以细分市场为切入点,通过持续迭代逐步向上挑战国际品牌。

FPGA:硬件可编程的“万能芯片”与国产曙光

FPGA芯片因其硬件可重构特性,在通信、数据中心、人工智能加速等领域不可替代。此前该市场被美国企业垄断,但地缘政治压力加速了国产FPGA的研发与导入。

国产FPGA虽在制程工艺、工具链成熟度上仍有差距,但已在中低密度市场打开局面。AGM等国内厂商通过优化架构、提供兼容开发环境,降低用户迁移成本,逐步在5G基站、工业自动化等场景实现替代。FPGA MCU混合芯片更是创新方向,将可编程逻辑与处理器核心集成,为灵活性与成本敏感型应用提供新选择。

 

 

UWB国产芯片:精准定位的新赛道

超宽带(UWB)技术凭借厘米级精准定位能力,在智能家居、汽车数字钥匙、工业物流等领域前景广阔。UWB国产芯片的崛起,标志着中国在无线高端芯片领域的进阶。国内企业通过自主协议栈开发、功耗优化与算法创新,正打破海外厂商垄断,并与本土MCU/SoC企业形成协同生态。

国产替代的未来:生态整合与创新驱动

国产MCU、FPGA乃至UWB芯片的替代之路,不仅是单一产品的突破,更是产业链生态的整体提升。从芯片设计、制造到开发工具、解决方案,本土企业正在构建自主可控的技术体系。

展望未来,随着RISC-V等开放架构的普及、AIoT场景的爆发,国产芯片有望在定制化、集成化、安全化方面形成独特优势。如同遨格芯微的AG32系列所展示的,通过持续创新与市场深耕,中国芯势力正从“替代者”向“创新者”转型,在全球半导体版图中刻下自己的坐标。

这场替代浪潮不仅是供应链的安全保障,更是中国科技产业从应用创新走向底层创新的必然跨越。在智能时代“万物互联”的底色上,国产芯片的每一处突破,都在为数字中国奠定坚实的基石。

FPGA圈大地震?聊一聊Lattice收购Altera

这两天,FPGA圈又爆出大新闻,Lattice(莱迪思)有意收购Altera。可能性有多大?

我前段时间写过一篇过于Intel收购Altera,现在又想卖出Altera的文章,但后面Intel发声明说只是想卖出部分Altera的股份,并非全部卖出。

深度分析Intel为什么在 2015 年收购 Altera?现在又为什么抛弃Altera?

而这次Lattice却是想全部收购,我们来分析一下为什么Lattice想要收购Altera?可能性有多大?

 

 

全球FPGA市场格局

目前全球FPGA市场由Xilinx和Altera两家垄断,他们两家加起来占了超过70%的市场份额,Lattice没有跟这两家直接竞争,而且把主要产品放到中低端市场,其Certus系列使用了FD-SOI工艺,比起基于CMOS的竞品,例如Altera的Cyclone、赛灵思的Artix,其功耗要低70%-75%。Lattice的低功耗FPGA出货量全球第一,也是全球排名第三的FPGA厂商,但市场占有率只有5%,还是要比前两家差了很多。

Lattice日子也不好过

就在前几天,Lattice还宣布要裁员14%,约125名员工,这也是Lattice史上第一次大规模裁员,主要是因为Lattice现在日子也不好过。

通过Lattice的Q3财报,我们可以看到几点信息:

营收1.27亿美元,同比下滑34%,环比增长2%;连续4个季度同比下滑;

由于裁员一次性补贴了650万美元,导致其Q3的经营利润率同比下降23.7个百分点,但这个长期是利好;

莱迪思的毛利率一直比较高,长期维持在50%以上,也是因为他们在低容量市场优势明显。

其实Lattice的营收下降也是因为FPGA行业整体都不好,Xilinx在Q3的营收只有9亿美元,同比下滑了25%,Altera在Q3营收4.12亿美元,同步下滑44%。

Lattice的主营方向是通讯和计算,其次是工业和汽车,这两个业务方向占其营收的90%以上,但无奈从全球的视角看,这两个业务方向都比较疲软,导致Lattice的营收下滑了这么多。

Lattice去年在中国的营收占了总营收的32.45%,是其绝对的主要营收,其次在欧洲和美洲的营收也都占了差不多20%。

Lattice 为什么想收购Altera

Lattice并没有透露任何消息出来,因此我们只能尝试去分析一下:

扩大技术能力和市场份额:Lattice主要在低功耗FPGA市场中活跃,而Altera在中高端FPGA市场中的技术是Lattice目前还不具备的,通过收购Altera,Lattice希望能够扩大自身的技术能力和市场份额,实现更进一步的发展。

增强产品线和解决方案:Lattice通过收购Altera,可以增强其产品线和解决方案,特别是在AI、云、网络和边缘计算等新兴和开发领域。

收购时机:现在正是Altera最困难的时候,如果看好Altera后续的发展,现在收购的时机最合适,而Intel也正在积极的寻求买家,只是Intel目前还并不想全都卖掉。

收购的可能性有多大?

接下来就是我们最为关心的,Lattice有多少钱?有没有能力收购?

通过Lattice的财报可以看到,他们的资产一直维持在7亿美元左右,现金储备当然就更少了,而Intel准备明年让Altera重新上市,目前估的价格是170亿美元,在2015年,Intel以167亿美元的价格收购了Altera。

资金差了这么多,是不是有种熟悉的感觉?好比当年吉利收购沃尔沃,当时还都不被市场看好,有人讥之为“蛇吞象”,并担心被吉利收购的沃尔沃,品牌形象会被拉低。但从现在的来看,这是一笔很成功的收购。

回到正题,如果Lattice要拿下Altera,那他们肯定是需要寻求外部的巨大资金帮助,大概率会出让一部分股权,但借170个亿美元,以目前Lattice去年净利2.59亿美元来算,需要65年才能还清,不知道他们是否有能力借到这么多钱。

FPGA与MCU的融合:硬件可重构与软件控制的完美结合

        在智能化与边缘计算浪潮下,FPGA(现场可编程门阵列)与MCU(微控制器)的融合成为硬件创新的关键方向。这种异构架构结合了FPGA的硬件可重构性与MCU的软件灵活性,为工业控制、汽车电子和消费电子提供高性能解决方案。

 

 

  技术优势:灵活性与效率的平衡

  FPGA的硬件加速:FPGA通过硬件逻辑实现并行处理,适用于高频信号处理(如音频降噪、图像预处理)和算法加速(如FFT谐波分析)。例如,AGM的FPGA芯片允许在单个芯片中实现大量数字逻辑,运行速度远超传统CPU。

  MCU的软件控制:MCU作为嵌入式系统核心,负责复杂算法(如无感FOC电机控制)和系统管理。AG32 MCU系列主频高达248MHz,搭配128KB SRAM与1MB Flash,支持浮点运算,可快速处理控制指令。

  异构集成:AGM的AG32系列采用“RISC-V内核MCU + 2K CPLD逻辑资源”架构,通过AHB总线实现高速耦合。这种设计支持硬件逻辑加速与软件控制的灵活组合,例如在电机控制中,CPLD优化PWM信号生成,MCU执行算法,实现低转矩脉动与高效率。

  应用场景:从工业到消费电子

  工业控制:在三相电能计量中,AG32单芯片集成计量算法与CPLD逻辑,支持智能电表、导轨表等设备,动态范围达1:10.000.误差≤±0.1%。

  汽车电子:FPGA处理雷达、摄像头等传感器的高速数据,确保ADAS实时性;MCU运行协议栈(如DL/T 645、Modbus),支持OTA升级。

  消费电子:在智能玩具中,FPGA实现实时动作控制,MCU处理语音交互与传感器数据,提升用户体验。

  发展趋势:单芯片化与生态完善

  未来,FPGA与MCU的融合将向单芯片SoC方向发展,进一步降低成本与功耗。同时,厂商将提供更完善的开发工具(如FreeRTOS、PC GUI校准工具),降低客户开发门槛。

FPGA可以解决哪些问题?

FPGA 允许在单个芯片中实现大量数字逻辑,其运行速度相对较高,并且只需很少或不需要在 CPU 内核上运行的传统顺序程序即可完成其工作。

 

 

这种数字逻辑可以实现任何东西,从简单的UART到由数十个CPU内核组成的架构,每个CPU内核都运行自己的小程序,并在共享任务上相互通信。或者,它可以是几组不同的逻辑在处理完全独立的任务,这些任务彼此之间可以没有关系。

数字逻辑实现

基本上,FPGA 允许放置下图中所有这些较小的黑色芯片:

只需 1 个芯片,就可以立即使用新设计以任何想要的方式重新连接所有这些芯片。诚然,设计过程是……比较困难!

FPGA 擅长同时执行多项任务,可以将该功能实现为单独的数字逻辑,从最简单的组合逻辑一直到复杂的 CPU 处理器。除了逻辑元件的数量和它们之间的互连之外,几乎没有什么限制。

FPGA芯片:硬件可重构的计算平台

终极灵活性的硬件解决方案

FPGA(现场可编程门阵列)芯片提供了最高级别的硬件可重构能力,使其在原型验证、算法加速和系统升级等方面具有不可替代的价值。随着异构计算兴起,FPGA正从传统领域向更广泛的计算场景拓展。

 

 

架构演进与技术特点

现代FPGA已经发展成为高度集成的复杂系统:

核心可编程资源

可配置逻辑块(CLB):实现组合和时序逻辑

可编程互连:实现模块间灵活连接

输入输出块(IOB):支持多种接口标准

增强功能模块

嵌入式存储器:Block RAM和分布式RAM

数字信号处理块:专用乘法器和累加器

高速收发器:支持多种高速协议

处理器系统:硬核或软核CPU集成

应用领域深度拓展

FPGA的应用已从传统领域扩展到新兴场景:

应用领域主要价值技术特点

通信系统协议灵活更新高速收发器、信号处理

数据中心能效优化加速高带宽、低延迟

工业控制实时确定性响应高可靠性、长生命周期

汽车电子功能安全与升级ASIL认证、低功耗

测试测量自定义仪器逻辑高精度定时、灵活接口

开发模式变革

FPGA开发正经历重要转变:

高层次综合(HLS):使用C/C++等高级语言开发

IP核复用:模块化设计提高开发效率

异构平台:与CPU、GPU协同计算

云端FPGA:通过云服务提供可编程硬件

市场格局与未来趋势

FPGA市场长期由少数厂商主导,但技术路径呈现多元化:

传统高端FPGA:追求最大容量和性能

中端应用优化:平衡性能、功耗和成本

低功耗FPGA:针对电池供电设备

SoC FPGA:集成处理器系统的融合方案

未来,随着人工智能、5G和边缘计算的发展,FPGA将在实时处理和硬件自适应场景中发挥更大作用。同时,开发工具和生态系统的不断完善,将降低FPGA的使用门槛,推动这项技术向更广泛的应用领域渗透。

FPGA领域中的开源大神

从20世纪80年代FPGA诞生以来,在这个领域诞生了无数个大神或者有突出贡献的领路者,今天我们就简单盘点一下那些近现代开源领域中的大神。

 

 

以下排名不分先后:

alexforencich – A神

A神的开源项目我在之前PCIe、以太网等都介绍过,在开源界很多项目都是以A神的代码为参考进阶的。

以下是按照大神主页的star排名的项目:

verilog-ethernet 用于 FPGA 实现的 Verilog 以太网组件

verilog-axi 用于 FPGA 实现的 Verilog AXI 组件

Verilog-PCIe Verilog PCI Express 组件

verilog-axis 用于 FPGA 实现的 Verilog AXI 流组件

verilog-i2c 用于 FPGA 实现的 Verilog I2C 接口

Verilog-UART

Verilog-LFSR 完全可参数化的组合并行 LFSR/CRC 模块

verilog-wishbone 用于 FPGA 实现的 Verilog wishbone 接口

verilog-dsp 用于 FPGA 实现的 Verilog dsp 组件

以上只截取了部分~

项目不仅代码完整而且仿真齐全(所有项目都是源码实现),非常适合研究学习。

大家刚兴趣可以去相关项目里查看详情:

https://github.com/alexforencich

WangXuan95 – 王博

王博也是国内在开源领域首屈一指的大神了,活跃于知乎等各大平台,也经常在各个群里给大家答疑解惑,以下是按照大神主页的star排名的项目:

USB 1.1控制器

FOC控制算法

BSV高级硬件描述语言入门指南

基于XDMA的PCIe核

基于SystemVerilog的RISC-V SoC

FTDI芯片在245模式的FIFO控制器

SD卡文件读取器

轻量级CAN控制器

JPEG-LS编码器

DDR1控制器

定点数运算库

MPEG2视频编码器

使用FPGA模拟和伪装SD卡

NFC(RFID)读卡器

基于FPGA的串口收发模块

基于FPGA的gzip压缩器

基于FPGA的PNG解码器

超高性能的JPEG-LS编码器

SHA算法库

大家刚兴趣可以去相关项目里查看详情:

https://github.com/WangXuan95

Adam Taylor

Adam Taylor国内比较少提及,那是因为Adam Taylor是偏培训类的项目,和国内很多东西冲突,所以知名度不高,但是Adam Taylor在雷达、核反应堆、卫星、密码学和图像处理等一系列门类都有开发和应用,并且开源的项目涉及图像、电机控制、PCB等比较底层的东西。

其开源项目都在相关文章文末给出。

大神主页:

https://www.adiuvoengineering.com/blog

MIST & Mister

这并不是一个个人而是两个团队大神,从MIST复古开源游戏机到Mister大放异彩,充分发挥了FPGA在复古游戏机这个领域的特殊性,团队中的每个人都负责一个或者几个复古CPU的逆向及FPGA实现,这不仅可以体会到FPGA魅力还能理解学习古老CPU的架构。

https://github.com/mist-devel/mist-board

https://github.com/MiSTer-devel/Main_MiSTer

官方论坛:

https://misterfpga.org/

总结

这个领域的大神多的数不胜数,今天就简单总结几个,后续我们还会继续这个主题,总结其他大神的造诣~

最后大家有什么推荐的开源项目或者好的想法可以评论区留言讨论~

FPGA零基础学习精选:Intel FPGA 开发流程(超详细)

任何技术的学习就好比一个江湖,对于每一位侠客都需要不断的历练,从初入江湖的小白到归隐山林的隐世高人,需要不断的自我感悟自己修炼,让我们一起仗剑闯FPGA乃至更大的江湖。

 

 

大侠好,欢迎来到FPGA技术江湖。本次带来FPGA系统性学习系列,今天开始正式更新,之前更新过类似的郝旭帅FPGA零基础学习系列,由于时间久远,之前的系列所用开发操作软件、硬件设备及所涉及知识维度都有待更新及完善。

本系列将带来FPGA的系统性学习,从最基本的数字电路基础开始,最详细操作步骤,最直白的言语描述,手把手的“傻瓜式”讲解,让电子、信息、通信类专业学生、初入职场小白及打算进阶提升的职业开发者都可以有系统性学习的机会。

系统性的掌握技术开发以及相关要求,对个人就业以及职业发展都有着潜在的帮助,希望对大家有所帮助。后续会陆续更新 Xilinx 的 Vivado、ISE 及相关操作软件的开发的相关内容,学习FPGA设计方法及设计思想的同时,实操结合各类操作软件,会让你在技术学习道路上无比的顺畅,告别技术学习小BUG卡破脑壳,告别目前忽悠性的培训诱导,真正的去学习去实战应用,这种快乐试试你就会懂的。话不多说,上货。

FINN:FPGA AI 推理新范式 —— 定制化、高性能、量化神经网络编译器框架

FINN 是一个由 Xilinx(现 AMD Research)集成通信与 AI 实验室开源的机器学习框架,它提供了一个端到端的方案,用于探索和实现 量化神经网络(QNN)在 FPGA 上的高效推理加速器。它不是通用的神经网络加速通用库,而是通过 协同设计(co-design) 和 数据流体系结构生成,为每个网络构建定制的数据流式硬件架构。

 

 

📌 FINN 的定位

FINN 的核心目标是:

👉 从 训练好的量化神经网络(Quantized Neural Networks, QNN) 入手

👉 经过一系列编译与变换

👉 自动生成 高效的 FPGA 数据流加速器

👉 并能以极低延迟、高吞吐率运行推理任务

与传统库不同,FINN 不只是一个简单的硬件调用层,而是 编译器级框架:即输入网络模型,输出完整可合成的硬件设计。

🔍 核心特点

💡 1. 端到端数据流架构生成

FINN 主要面向量化神经网络,通过构建 数据流架构(dataflow architecture),使每层网络的计算和数据移动都以定制流方式并行执行,因此能够达到 低延迟和高性能 推理效果。

⚙️ 2. HLS + RTL 模块模板库

FINN 内置大量基于 Vitis HLS 和 RTL 的流式组件模板,每个组件代表神经网络中的一层,如卷积、线性层等,这些模块可以按需组合生成硬件设计。

🎓 3. 示例丰富 + 可快速设计空间探索

官方提供了大量示例,涵盖从量化模型训练、ONNX 导入,到 FPGA 工程生成、综合实现的完整流程,支持参数调优、吞吐量 / 资源权衡探索。

🧠 4. 高吞吐 & 低延迟

生成的硬件通常通过数据流水线实现可达亚微秒级延迟,并具备 FPGA 的高并行性能,适合实时、边缘推理场景。

🧠 技术细节与工作流

FINN 的编译过程一般包括:

训练与量化

使用支持量化的训练工具(例如 Brevitas + PyTorch)对模型进行训练与量化。

ONNX 导出

将量化神经网络导出为 ONNX 格式,这一格式作为 FINN 的输入。

FINN 编译器处理

FINN 负责读取 ONNX 模型,并执行变换、优化,然后生成对应的硬件模块描述。

硬件集成与部署

编译器生成的模块可以通过 Vivado 或 Vitis 合成为可跑在 FPGA 上的 bitstream,并配合驱动完成部署。

整个流程可以停在任意阶段:比如只生成硬件 IP 供在更大系统中复用,也可以走到 完整 bitstream + 驱动部署。

神经网络加速器示例

🧠 为什么 FINN 与众不同?

✅ 定制化而非通用加速

FINN 不提供一个通用神经网络核,而是针对每个 QNN 构建“定制化的硬件流水线”。此策略能极限压榨 FPGA 资源以换取最高性能。

✅ 研究与工程结合平台

作为开源项目,它不仅适合工业应用,还为跨软硬件堆栈的研究提供了完整的平台。研究者可以直接介入量化策略、架构生成与优化流程。

 

 

📌 适用场景

FINN 特别适合用于:

⭐ 边缘 AI 推理加速

⭐ 低延迟、高吞吐神经网络应用

⭐ 量化神经网络研究

⭐ FPGA 教学/原型开发

尤其是当你需要在 FPGA 上运行量化深度学习模型,并希望获得比通用 GPU 更低的延迟、更低的能耗时,FINN 提供了一条成熟技术路径。

📍结语

FINN 是一个真正意义上的 FPGA 神经网络加速编译器框架,它将量化神经网络与 FPGA 加速实践紧密结合。通过 ONNX、Brevitas、Vivado/Vitis 等生态协同工作,FINN 助力开发者把高效的推理加速器从软硬件无缝推进到可运行的 FPGA 设计中。由于其完整的开源体系,无论是科研探索还是工程落地,它都是 AI & FPGA 交叉领域中不可忽视的项目

推荐几个让人受益匪浅的FPGA开源项目

想学习FPGA的朋友,但苦于找不着优质的项目,这篇文章希望可以帮到你,以下四个项目不仅是github的高⭐项目,在学习的过程中自己也收益匪浅,已帮大家筛选。

1

基于FPGA的CNN(卷积神经网络)加速

引言:

CNN(卷积神经网络)是一种深度学习架构,广泛应用于图像识别、分类和处理任务。它通过卷积层提取图像中的局部特征,利用池化层降低特征维度,再通过全连接层进行分类或回归。CNN能够自动学习图像中的特征,无需人工提取,具有强大的表征能力。其典型结构包括输入层、多个卷积层和池化层,以及输出层。常见的CNN模型有LeNet、AlexNet、VGG、ResNet等。

项目链接:

https://github.com/hunterlew/convolution_network_on_FPGA

1.项目描述

该项目是使用 ISE 14.7 软件和 vertix-7 FPGA 构建的。它执行具有某些加速策略的 7 层网络前向计算。首先,使用 MatConvNet 在 MSTAR 数据集上训练 SAR 目标分类网络并使用early-stop。然后,使用 Matlab 生成的COE 文件将权重和输入转换为 FPGA。接下来,设计原生 verilog 编写的模型来完成前向计算。该系统使用 16 位固定点数据来保持精度。结果证明,每张图像的成本不到 1ms,性能优于其他计算平台。

2.加速方案

为了在 FPGA 资源和速度之间进行权衡,考虑到第一个卷积层中 inputs 的大小和权重更大,第一个卷积 层使用 shift-register 结构进行加速。其他卷积层层仅使用 pipe-line 结构。请注意,有 18 个文件以 m_conv_1 命名,表示第一个卷积层中有 18 个 shift-registers。对于带宽限制,第二个卷积层使用通道分组并行化方案。我使用 v7-415t 和 v7-485t FPGA 进行比较,它们根据不同的资源量使用不同的组号(4 vs 1)。您可能会注意到文件 CNN_top.v 中的方案,其中信号 ‘ram_ready’ 控制通道分组和合并。

3.推荐原因

学习该项目可以详细了解FPGA实现CNN网络加速的过程,设计过程中要考虑的量化、流水线划分、并行结构设计,如何平衡速度和面积等等都有涉及。

 

 

2

基于FPGA的FOC电机控制算法

引言:

FOC(磁场定向控制)是一种先进的电机控制技术,主要用于三相交流电机(如无刷直流电机 和永磁同步电机)。其核心是将电机的定子电流分解为磁通分量(d轴电流)和转矩分量(q轴电流),并通过Park和Clark变换将三相交流系统转换为直流系统(dq域),实现独立控制,其广泛应用于电动汽车、工业自动化、机器人等领域

项目链接:

https://github.com/WangXuan95/FPGA-FOC

1.项目描述

该项目基于FPGA实现 FOC(磁场定向控制 )。它使用角度传感器(如磁性编码器)实现了一个完整的电流回路,可以执行扭矩控制,可用于驱动永磁同步电机 (PMSM) 或无刷直流电机 (BLDC)。

项目系统图

2.推荐原因

项目涉及SPI,I2C等低速接口协议设计,还有丰富的电机控制算法的verilog实现,诸如PID、SVPWM、正余弦计算、PARK变换等等。所有代码都是用纯 RTL 编写的,可以很容易移植到任意厂家的FPGA。

3

基于AXI4接口的UART协议模块

引言:

UART是一种用于设备间串行通信的协议。它通过两条数据线(RX接收、TX发送)实现数据的异步传输,无需共享时钟信号。数据以帧的形式发送,包含起始位、数据位(通常为8位)、可选的校验位和停止位。UART适用于低速应用,配置简单,支持全双工通信。

AXI是AMBA协议家族中的一种高性能总线标准,用于SoC设计中连接高速组件。它支持多个独立通道(如写地址、写数据、写响应、读地址、读数据),允许突发传输和多个未完成事务,从而提高数据传输效率。

项目链接:

https://github.com/WangXuan95/FPGA-UART

1.项目描述

该项目设计了3个核心模块:

UART 接收器 (uart_rx.v): 具有 AXI-stream 主端口,可以接收 UART 数据并通过 AXI-stream 协议输出。

UART 发射器 (uart_tx.v): 具有 AXI-stream从端口,可以接收 AXI 流数据并通过 UART 输出。

UART 转 AXI4_FULL协议(uart2axi4.v): 它可以从主机 PC 接收 UART 命令,进行 AXI4 总线读写,并将结果反馈给主机 PC。它是调试 SoC 系统的强大工具。

2.推荐原因

UART是常用的调试接口,基础但是重要,AXI是SOC系统互联总线协议,学习该项目可以同时掌握UART协议收发逻辑设计以及AXI4总线协议。

4

基于ZYNQ的ISP图像处理

引言:

图像信号处理器(Image Signal Processor,简称 ISP)是一种专门用于处理图像信号的芯片或电路模块。

项目链接:

https://github.com/bxinquan/zynq_cam_isp_demo

1.项目描述

基于zynq-7020(正点原子启明星+OV5640)实现了ISP图像处理(将ov5640的ISP关闭,在7020上实现ISP功能),输出到LCD和HDMI。

涉及的处理模块包括坏点校正、黑电平校正、拜耳降噪、数字增益、去马赛克、白平衡增益、色彩校正矩阵、色彩空间转换、Gamma校正、2d降噪、边缘增强。

2.推荐原因

ISP(图像信号处理器)是图像处理的关键组件,负责将传感器的RAW数据转换为高质量的图像。本项目较全面实现了ISP的算法模块,并且这些模块在FPGA板上成功运行,利用FPGA的并行处理能力,显著提升了图像处理的效率和质量。

来源于github,如有侵权,请联系小编删除。仅为学习分享,不负任何责任。

高速 AI 时代,FPGA 正在悄悄接管全新工作负载

在人工智能、高速无线通信、医疗与生命科学技术快速发展的背景下,FPGA 正在迎来全新的应用黄金期。它们不仅作为传统的原型验证工具,还越来越多地扮演着数据流优化、AI 基础设施加速与网络安全保障等关键角色。

FPGA(现场可编程门阵列)的核心优势在于:部署之后仍可重配置逻辑。在算法迭代速度远超过芯片架构迭代速度的 AI 时代,这一特性显得尤为重要。此外,低前期成本让 FPGA 成为 ASIC 前的验证平台,或在工作负载尚未稳定前的“临时硬件方案”。虽然单片成本仍然高于 ASIC,但它们在低量、高性能领域极具优势,如国防、航空和实验室测量设备。

 

 

新的应用领域包括:

云服务器中的复杂算法卸载(尤其用于 3D 计算的医疗和科学应用)

低成本混合原型验证

缓解 SoC 与 NoC 内存 / I/O 瓶颈

AI 数据管道管理与数据预处理

5G / 6G 基站与核心网络

提供定制化硬件功能的产品差异化

面对不断演进的安全规范与威胁的“保险机制”

高端FPGA的主要大批量用户包括通信公司(无线和有线)、数据中心、网络以及军事、航空航天和政府部门。“这些应用领域的年用量从数千到数十万颗不等,”Altera业务管理集团负责人Venkat Yadavalli表示。“在应用领域方面,FPGA集成了更多功能,例如嵌入式Arm内核和AI向量模块,这提高了FPGA在更广泛的嵌入式和边缘AI应用中的使用率。”

机器人技术是正在蓬勃发展的一个领域,它需要确定性的延迟,并利用来自摄像头和传感器的异构数据在边缘端进行实时决策。“它可以是语音、视频,或者任何需要传感器融合的数据,”Yadavalli说道。

另一个重要的应用场景是医学成像技术,从验光师扫描视网膜到核磁共振成像系统,无所不包。“你需要处理原始的模拟数据,对其进行滤波、处理,并用它来重建图像,还要进行大量的矩阵运算,”AMD自适应和嵌入式产品营销高级经理Rob Bauer表示,“FPGA在这方面表现出色。人工智能引擎非常擅长矩阵运算,因此它们是这类体积成像应用的理想选择。”

在当今快速变化、高度互联且人工智能赋能的环境中,对于设计人员应该使用 FPGA、ASIC 还是其他类型的 IC,并没有一个统一的答案。

Arteris公司产品管理和市场营销副总裁Andy Nightingale表示:“你不会在两种解决方案之间随意切换。 你拥有的是多种方案的组合或融合。互连技术促进并支持FPGA的混合应用,例如用于网络安全或缓解I/O瓶颈。FPGA可以实现原型设计,但客户可能会在系统中保留某些FPGA,他们可能会说:‘我们希望在SoC中使用定制硬件,但我们会保留一些FPGA技术,因为这样做的好处大于定制硬件所需的时间,即使最终发现规范或标准发生了变化。’如果网络安全标准发生变化,他们就必须重新实现和处理,而FPGA可能包含可以重新编程的内容。即使功耗方面会有略高的开销,但它可能不在关键路径上,因此可以绕过这个问题。”

在权衡各种方案时,考虑FPGA中每个逻辑单元的成本很有帮助。“与ASIC相比,你需要一些架构设计才能获得成本效益,”Yadavalli说道。“与ASIC或ASSP相比,你总会略微处于劣势,因为它们的功能是固定的,经过精心设计和优化,只实现你所需的功能,而不是让你自己创建所有可编程性。在这种情况下,你在实现以太网或PCIe方面会有一些额外的开销。你可以切换所有这些功能。你需要所有这些电路,而这会带来成本。最终取决于投资回报率,以及市场是否已经稳定到你需要ASIC的地步。”

这关乎于在设计上做出权衡,以解决特定问题。“如果你观察FPGA的用户,你会发现他们正试图完成越来越复杂的任务,”Bauer说道。“在物理人工智能领域,人们正尝试将人工智能集成到边缘系统中,从传感器获取数据并立即进行处理,延迟极低。数据速率在不断提高,安全要求也在不断提高。这是一个优化问题。”

不断发展的算法

AI/ML 模型是一个不断变化的目标,虽然可以重新编程 FPGA 来匹配它们,但随着情况的变化,选择最佳芯片是一个循环过程。

“如果工作负载经常变化,那么我需要通用计算,” Movellus首席执行官 Mo Faisal 表示。“我可以进行更多优化,并将其性能发挥到极致。但最终你会意识到,‘这种高度灵活的通用计算不再有价值。我需要进行定制。我们正处于一个周期,我的问题陈述变化如此之大,以至于我可能通过采用可重编程计算获得更多收益。’最终,我们会耗尽这方面的潜力,回到过去 ASIC 和 FPGA 的发展历程。当然,你可以开发专门针对 FPGA 的特定算法。例如,如果你想谈谈粒子加速器的规模,他们使用 10,000 个 FPGA 来处理以特定速率输出的数据。但如果你想大规模地实现这一点,目前只有 CERN 和费米实验室。如果你想要 10,000 个 FPGA 呢?你需要重新考虑 FPGA。”

其他人也认为这需要具体情况具体分析。“是否使用可编程FPGA取决于你面临的工作负载类型,软件开发也是如此,” ChipAgents研究主管张克勋表示。“生命科学领域的研究人员正在设计不同的模型架构。我看到一些领域和方向的模型架构探索远未趋于一致,这就是为什么人们仍然需要编译器,仍然需要硬件以合理的速度运行其定制的模型架构。而FPGA正是在这些领域大放异彩。”

对于消费市场和其他大众市场而言,成本和效率结构并不合理。“在数据中心,原型设计或针对非常具体的AI变更,或许能从中受益,” Baya Systems首席商务官Nandan Nayampally表示。“例如,如果你从事高频交易,算法会定期变更,那么就需要进行优化。如果我没有足够的业务量或成本来支持ASIC,那么我可能会坚持使用FPGA。许多新型AI架构都采用可编程组件和可编程引擎,集成在同一芯片或多个芯片上,这既能提高效率,又能保持灵活性。”

在FPGA上,可以根据FPGA的规模,构建尽可能多的硬连线并行计算单元,只要资源允许即可。“与通用GPU核心相比,FPGA可以根据应用进行定制,”Nightingale说道,“还可以自定义并行度。”

用于复杂算法和验证的虚拟 FPGA 机器。

基于云的 FPGA 也可用于将计算密集型工作负载从数据中心卸载,例如,通过使用 Amazon Web Services EC2 虚拟服务器。“你可以访问 AWS 并配置一台虚拟机,”西门子 EDA项目总监 Russell Klein 表示。“这是一台物理机,它配备了所谓的 F2 实例。它内置一张 PCIe 卡,上面有八个 Xilinx FPGA,所有这些 FPGA 都可以通过 PCIe 总线与主处理器进行编程。我一直在与他们合作,利用我们的高级综合工具来对这些 F1 实例进行编程,并告诉他们:‘这里有一个函数,让我们通过 PCIe 总线将其推送到 FPGA 架构上。’我们刚刚实现了这个功能,我可以获取一个函数,通过我们的高级综合工具对其进行编译,然后通过 Xilinx 工具将其与处理器上运行的软件进行交互。”

此外,F2实例还被用于卸载非常复杂的算法。“他们主要在生命科学领域看到这种应用——从事DNA分析或化学反应分析的人员需要处理非常复杂的3D数学运算,他们需要对FPGA进行编程,并让FPGA与主机上运行的处理器进行交互,”Klein说道。“他们可以通过PCIe连接将所有这些设备连接起来,从而加速这些非常复杂的算法。我们将在人工智能领域看到这种应用的广泛普及,因为它速度更快、能耗更低。这显然是创建更快、更高效的推理和训练环境的下一步。这种能力已经具备,我们需要让整个行业开始利用它。”

F2实例的另一个应用场景是低成本硬件验证。“SiFive刚成立的时候,他们需要在RISC-V设计上启动操作系统,才能制造芯片,”Klein说道。“他们想把这作为验证步骤。他们没有购买FPGA原型系统,而是以每小时6美元的价格在AWS上租用FPGA板。他们可以将一个CPU实例集成到一个芯片上,然后通过编程到多个FPGA和多个板卡上,运行多CPU、多核设计。他们利用这些数据中心CPU搭建了自己的低成本仿真器。AWS对此非常感兴趣,并为此开发了相关工具,能够利用系统中的FPGA架构建模部分进行逻辑仿真。他们可以将所有这些功能结合起来运行,速度更快。这就像一个混合FPGA原型系统。”

特写镜头展示了多个带有散热风扇的计算机电路板,它们呈网格状排列。

图 1. FPGA 长期以来一直被用作 ASIC 的原型设计工具,例如这款 proFPGA 桌面原型设计系统。来源:西门子 EDA

整张卡都连接到服务器上的一个处理器。“他们会在一台服务器上插入多张这样的卡,每张卡都插在不同的 PCIe 插槽中,这样就可以将多个程序连接到多张卡上,”克莱因解释说。“你可以非常快速地启动和关闭它。这些是数据中心的 FPGA 卡,可以加速硬件验证、生物科学和人工智能的发展。这是一种应对我们当今计算挑战的可行技术。”

与此同时,FPGA 正在助力实现左移设计。“如果你看看人工智能驱动下的新芯片开发呈爆炸式增长,以及 2nm 等先进制程节点的成本,就会发现确保设计正确性比以往任何时候都更加重要,”AMD 的 Bauer 表示。“软件工程团队可以利用这些仿真原型平台,在最终 ASIC 芯片流片之前就开发出相应的软件。”

减少瓶颈,数据准备

FPGA 还可以通过优化数据传输来帮助减少 SoC 和芯片中的内存和 I/O 瓶颈,从而节省数据中心的功耗并提高性能。

Altera 近期 选择 Arteris 来协助解决这个问题。“FPGA 可以直接放置在数据路径中来管理数据流,从而最大限度地减少缓冲,优化吞吐量,”Nightingale 表示。“通过在线管理数据,FPGA 可以对传入的数据进行预处理,这减轻了 CPU、GPU 或其他处理单元的工作量,从而缓解了 AI 系统性能中最主要的瓶颈。因此,出现的内存和 I/O 瓶颈也得以减少。”

这与在线处理类似,即将FPGA直接嵌入到数据流中。“由于如今这些设备的容量都非常大,你可以在数据流经的同时对同一批数据进行更多处理,”Nightingale说道。“我们看到FPGA技术贯穿整个数据传输过程,与数据处理紧密结合。”

在数据中心,FPGA 被用作带有本地内存的智能网卡。“你会遇到非常庞大的网状拓扑结构,必须能够快速地将数据从一个点移动到另一个点,”Bauer 说。“FPGA 的可重构特性,加上其超高速的连接性、内存容量和低延迟,使其非常适合与 AI 计算单元(无论是 GPU 还是 ASIC)并排使用。这样,客户就可以精确地定义数据的移动位置。我们将大容量内存直接放置在计算单元旁边。在 AI 应用中,内存和计算单元的邻近性至关重要。这才是高端应用。”

另一方面,GPU集群或服务器主板上也使用非常小的FPGA,用于执行板级编排、管理和电源时序控制。“我们称之为服务器I/O类型的用例,”鲍尔说道。“服务器上的FPGA控制着各个板级,确保所有组件都能正确供电。此外,还有FPGA负责将数据传输到内存以及在不同的计算单元之间进行通信。”

FPGA 的另一个新角色是 AI 基础设施,它需要处理进入 GPU 或 CPU 的基础设施数据。“数据进入系统后,这些数据包的管理方式具有很高的可编程性,”Yadavalli 说。“你需要一种更智能的方式来管理网络接口卡、智能网卡功能,或者某种数据平面管理,这些都需要在数据进入 CPU 或 GPU 之前完成。FPGA 的作用就在于接收这些数据,并以一种能够被后端所有大型 GPU 和 CPU 使用的方式对其进行预处理。”

本文来源于公众号:OpenFPGA

FPGA国内”薪“赛道-在医疗领域的应用

从下游应用市场来看,通信和工业市场份额位居FPGA芯片一二位,同时通信市场份额有望持续提升。但是目前通信和工业市场趋于稳定,FPGA厂商一直推AI市场,但是AI市场目前被ASIC和显卡牢牢占据,FPGA被市场上认可度也不高。

几年前FPGA在国外医疗行业就已经发展的很好了,根据赛灵思透露,医疗领域已占据赛灵思营收非常重要的比重,并且一直在11%-15%的速度增长(2020年)。国内医疗行业目前正处于起步阶段,国产FPGA也趋于稳定,那么国内医疗+FPGA是不是一个好的“薪”赛道?我们接下来从FPGA在医疗行业的应用方面进行解析,至于结论或者结果自行判断。

 

 

FPGA特点FPGA 提供可重构性和并行处理能力,这些优势优于 ASIC 和 CPU 等传统硬件解决方案。这使得能够创建高度定制且有效的解决方案,可以满足特定的医疗保健需求。

通过将 FPGA 技术融入诊断设备和医疗设备,实时数据处理和患者护理都能取得显著进步。FPGA 的发展使植入式神经假体、可穿戴医疗设备和医学成像系统受益匪浅。

接下来探讨 FPGA 在医疗保健领域的应用,揭示其对诊断和医疗设备的重大影响。同时评估 FPGA 在医疗保健领域的优势、困难和潜在应用,同时考虑该技术的伦理和社会影响。

FPGA 在医疗设备中的应用FPGA(现场可编程门阵列)在医疗设备领域有着广泛的应用,通过提高各种医疗仪器的性能、灵活性和功能,彻底改变了医疗保健行业。FPGA 能够针对特定任务进行重新编程和定制,已成为各种医疗设备中的关键组件。以下是 FPGA 应用对医疗设备产生重大影响的一些关键领域。

基于FPGA的成像系统诊断和治疗计划都严重依赖医学成像。为了实时处理和重建复杂的图像数据,成像系统经常使用 FPGA。以下是一些实例:

a.超声波设备:FPGA 可实现超声波机器的实时波束成形和图像处理,提供更清晰、更详细的图像,实现更加准确的诊断。

b. X射线和CT扫描仪:FPGA促进了先进的图像过滤和降噪技术,从而提高了图像质量并降低了患者的辐射剂量。

c. MRI机器:FPGA用于MRI系统中的实时数据处理,实现更快的图像采集和重建,同时保持图像质量。

基于FPGA的可穿戴医疗设备为了持续监测和监视患者,可穿戴医疗设备正变得越来越普遍。这些设备通过 FPGA 进行了改进,提供高性能计算和节能功能。示例包括。

a. ECG 和 EKG 监视器:FPGA 能够实时处理 ECG 信号,检测异常并向患者和医疗保健专业人员提供即时反馈。

b. 血糖监测仪:FPGA 有助于精确测量血糖水平和快速分析数据,帮助患者更有效地管理糖尿病。

c. 可穿戴健康追踪器:FPGA 用于处理传感器数据、追踪身体活动、监测生命体征以及分析健康和健身应用的睡眠模式。

神经假体和植入设备中的 FPGA对于残障人士来说,神经假体和植入式设备旨在替代失去的功能或提高生活质量。由于 FPGA 允许实时信号处理和定制,因此它们在这些设备中必不可少。示例包括:

a. 人工耳蜗:FPGA 处理声音信号来刺激听觉神经,让有听力障碍的人能够感知声音。

b. 脑深部刺激 (DBS) 设备:FPGA 调节电刺激模式来治疗帕金森病和特发性震颤等病症。

c. 用于视力恢复的视网膜植入:FPGA 处理视觉输入并刺激视网膜神经,为患有视网膜退行性疾病的患者恢复部分视力。

FPGA 在所有这些应用中都具有显著的优势。它们可以根据不断变化的医疗需求进行修改,确保设备与最新发展保持同步。FPGA 还提供低延迟的高速处理,提供医疗环境中所需的实时响应。此外,由于它们可以处理并行处理活动,因此它们是处理复杂算法和数据密集型医疗应用的最佳选择。

 

 

在医疗保健领域使用 FPGA 的优势高性能和低延迟FPGA 提供低延迟数据处理和高性能计算功能。实时处理在医疗应用中至关重要,尤其是对于患者监测和诊断。FPGA 适合时间敏感的场合,因为它们可以快速执行复杂算法并提供实时结果。

可定制性和灵活性ASIC(专用集成电路)是固定的硬件解决方案,无法像 FPGA 那样进行定制或重新编程。医疗设备经常需要定制功能以满足个别患者的需求或随着医疗程序的发展而变化。FPGA 提供了极大的灵活性,因为它们很容易使用新算法或协议进行升级。

电源效率和便携性可以开发基于 FPGA 的系统来优化电源使用,这对于电池供电或便携式医疗设备至关重要。FPGA 可以通过仅实现所需的功能并删除不必要的部件来帮助延长电池寿命并降低能耗。

实时处理能力FPGA 擅长实时信号处理,因此非常适合需要快速获得结果的工作,包括监测生命体征、分析生物信号或应对危及生命的医疗情况。实时数据处理可以实现更快的诊断和及时采取行动,从而挽救生命。

并行处理由于 FPGA 具有并行处理能力,因此可以同时执行许多任务。需要快速处理大量数据的医学成像应用可以从这种能力中受益。并行处理提高了医学图像重建和分析的效率,同时也缩短了总体处理时间。

医疗保健领域使用 FPGA 的局限性设计复杂性和上市时间:由于创建基于 FPGA 的医疗解决方案需要专业知识和能力,因此设计过程具有挑战性且耗时。将 FPGA 技术集成到医疗设备或诊断仪器中可能会导致更长的开发时间和更昂贵的启动费用。

验证和确认:确保基于 FPGA 构建的医疗系统的可靠性和安全性至关重要。为了识别和纠正潜在的设计故障或错误,彻底的验证和确认技术必不可少。大量测试的必要性可能会导致开发进度进一步延长。

法规遵从性和安全标准:为保证患者安全和数据保密性,基于 FPGA 的医疗设备必须遵守严格的监管标准和安全标准。获得监管部门批准可能很困难,尤其是在使用基于 FPGA 的创新技术时。

成本:即使 FPGA 提供定制和灵活性,其成本也高于现成的固定硬件解决方案。前期开发成本(包括 FPGA 硬件和专业设计工具)可能会带来财务困难,尤其是对于初创公司或小型医疗保健组织而言。

资源利用率:为了获得最佳性能,必须正确使用 FPGA 资源。资源管理效率低下会对电源效率和整体系统性能产生负面影响,从而导致利用率不足或资源消耗过多。

领域专业知识有限:FPGA 在医疗保健领域的成功实施依赖于精通 FPGA 编程和医疗领域知识的熟练工程师。缺乏具备这两种技能的专业人员可能会阻碍 FPGA 技术在医疗保健领域的广泛应用。

FPGA 在医疗诊断中的应用FPGA(现场可编程门阵列)技术已广泛应用于医疗诊断,彻底改变了医疗专业人员分析和解释患者数据的方式。FPGA 能够执行实时信号处理、并行计算和硬件加速,使其成为各种诊断工具中的宝贵资产。以下是 FPGA 在医疗诊断中使用的一些关键领域:

基于FPGA的诊断工具即时诊断设备:

即时诊断 (POC) 测试是指在患者附近进行的医疗诊断程序,可快速提供结果以便做出及时决策。这些设备依靠 FPGA 执行数据收集、信号调节和数据分析等功能。FPGA 支持的实时处理功能有利于即时诊断许多医疗问题,例如传染病、心脏生物标志物和血糖水平,从而提高结果的准确性和速度。

DNA测序和基因组分析:

得益于新一代测序 (NGS) 技术,基因组分析取得了长足进步,这也使定制治疗和疾病早期检测成为可能。为了加速计算要求高的 NGS 活动(如碱基调用、比对和变异调用),FPGA 被广泛使用。因此,大型基因组数据集可以更有效地处理,处理时间也更短。

病原体检测与鉴定:

在分析分子诊断测试以发现患者样本中的感染时,FPGA 被使用。这些工具能够快速处理和解释基于核酸或蛋白质的测试,从而实现传染病的早期诊断并促进及时的治疗决策。

诊断中的实时信号处理:脑电图和脑机接口:

脑电图 (EEG) 可以检测大脑电活动,是识别神经系统疾病的重要工具。FPGA 可以实现实时脑电图信号处理,通过消除噪音、识别异常模式和过滤背景噪音,有助于诊断癫痫、睡眠问题和脑外伤等疾病。

心脏信号分析:

FPGA 有助于实时处理心电图 (ECG) 信号,从而能够快速识别异常心律和心脏状况。该技术在紧急情况下尤其有用,因为在这种情况下,立即检测危及生命的心律失常可能至关重要。

呼吸监测与分析:

FPGA 可用于呼吸诊断设备,处理监测呼吸模式和肺功能的传感器数据。实时分析呼吸信号有助于及早发现呼吸系统疾病,并支持患者管理决策。

FPGA用于医学图像处理和分析图像增强和重建:

X 射线、CT 扫描和 MRI 等医学成像技术会产生大量需要复杂处理的数据。FPGA 可加速图像增强、降噪和图像重建算法,从而生成更清晰、更详细的医学图像,实现更加准确诊断。

特征提取和模式识别:

FPGA 用于医学图像分析,提取相关特征和模式,从而帮助检测异常和病变。实时处理图像的能力提高了放射科医生和其他医疗专业人员的效率。

计算机辅助诊断 (CAD) 系统:

支持 FPGA 的 CAD 系统使用先进的算法和机器学习模型来帮助放射科医生检测和诊断医疗状况。这些系统可以分析医学图像并提供自动诊断支持,从而提高准确性并减少误判的可能性。

总结在医疗设备和诊断领域,FPGA 技术已被证明具有改变游戏规则的作用。FPGA 利用其高性能、实时处理能力和硬件定制,显著推动了医疗技术的发展,从而改善了患者护理并提高了诊断准确性。

FPGA 使得在医疗设备领域创建创新解决方案成为可能。通过基于 FPGA 的实现,成像系统、可穿戴医疗设备和神经假体都取得了重大进展,从而实现了更快、更准确的医疗干预。FPGA 在医疗诊断方面也发挥了变革性作用。实时检测、DNA 测序、病原体识别、EEG 信号分析、心脏监测和医学图像处理都因这项技术而发生了革命性的变化,它为医疗工作者提供了关键的见解和快速决策帮助。

本文来源于公众号:OpenFPGA

FPGA有哪些优质的带源码的IP开源网站?

这是某乎上的一个问题,我觉得还不错,今天就系统性的总结一下

1、fpga4funhttps://www.fpga4fun.com/

你能在这个网站上找到什么?

您可以找到信息页面,以及使用 FPGA 板构建的 FPGA 项目。

FPGA 项目使用一种称为 Verilog 的语言,您需要学习它才能理解项目。但是通过此处显示的示例以及其他可用的在线资源,这并不太难。

2、OPENCOREShttps://opencores.org/

Opencores是一个开源的数字电路设计社区,它提供了免费的开源IP(知识产权)核心,让工程师和爱好者们可以使用这些IP核心来构建自己的数字电路设计。Opencores的IP核心包括处理器、总线接口、视频、音频和其他数字电路组件,这些核心都是由社区的成员设计和共享的。Opencores的使命是提供一种可持续的方式来设计数字电路,使任何人都可以访问免费的IP核心,从而降低数字电路设计的门槛,并促进创新和知识共享。Opencores也提供了在线论坛和博客等社区资源,使成员可以交流想法和经验,并获得支持和帮助。

 

 

3、OpenHW Grouphttps://github.com/openhwgroup

OpenHW Group 是一个非营利性组织,旨在促进和推广开放源代码硬件设计。该组织由一群来自不同公司、组织和学术界的人士于2019年成立,致力于为开放硬件社区提供基础技术、工具、流程和法律框架等支持。其主要目标是推动开放源代码硬件的采用和发展,并在其中扮演一个公正的中立角色。

OpenHW Group 的成员来自多个领域,包括芯片设计、EDA工具、IP供应商、系统集成商、学术界和咨询公司等。该组织致力于推动开放源代码硬件的发展,以推广基于RISC-V架构的开放源代码芯片设计和开发为主要目标。OpenHW Group 不仅提供开源的硬件设计和软件工具,还提供教育和培训、技术支持和认证等服务,以支持开放源代码硬件社区的成长。

4、FPGACPUhttp://www.fpgacpu.org/links.html

Jan Gray 的 RISC CPU 网站是一个个人网站,展示了他在 RISC(精简指令集计算)CPU 和相关 FPGA 项目方面的工作。

Jan Gray 是一位硬件设计师,已经开发了几个 RISC CPU,包括 XR16、GR000 和 XSOC。这些 CPU 的设计旨在可合成并优化 FPGA 实现。XR16 和 GR000 CPU 是 16 位 RISC 处理器,而 XSOC 则是一个更复杂的 SoC 设计,包括 8 位 RISC CPU 核、内存、I/O 接口和其他外设。

该网站提供了有关每个 CPU 设计的详细信息,包括架构图、指令集描述和性能基准。此外,Jan Gray 维护一个邮件列表,供 FPGA CPU 爱好者讨论与 FPGA-based CPU 和相关项目相关的主题。

总的来说,Jan Gray 的 RISC CPU 网站是一个对于任何想要学习 FPGA-based CPU 设计和实现的人来说都是一个有价值的资源,也是一个寻找可用于自己项目的开源 RISC CPU 核心的硬件设计师的宝贵资料。

5、FPGAARCADE

6、官网

各大官网会提供针对自家芯片或者板卡的测试例程

xilinx官网

intel官网

lattice官网

7、digilent for refernce

https://digilent.com/reference/start

其实大家不了解的地方是,国内很多开发板的例程都来源这个网站,尤其一些“特殊”的外设,像MIPI,HDMI等,有些例程看源码还能看到“残留”。大家可以先按照自己需求寻找相关开发板和外设,点击进去就有例程和原理图参考。

8、ADI-ANALOGDEVICE

https://github.com/analogdevicesinc/hdl

https://wiki.analog.com/resources/fpga/

详细的介绍见:

《想学习高速ADC/DAC/SDR项目这个项目你不得不理解》

9、GITHUB

https://github.com/

这个无需多言,代码最全,但是搜索是需要点“真功夫”,像RIFFA\PYNQ\VITIS AI等这些耳熟能详的项目基本都在github上开源的。

总结

HDL在这方面开源的并不多,但是我个人认为fpga4fun和opencores在这些里面就属于前二,完善的社区及完整的HDL代码是主要原因。其他的也是很完美的平台,大家斟酌使用。

本文来源于微信公众号:土人观芯