关于FPGA在开源方面的探索浅析

时间:2025-06-12  作者:Diven  阅读:0

开源硬件领域MCU板卡很火,著名的Arduino、树莓派(Raspberry Pi)、MICro:bit,开源的MCU也是个热门的话题,除了老牌的8051、OpenRisc等,这两年的明星就是Risc V了,在中国集成电路大跃进的加持下,几乎成了中国处理器追赶世界的一剂春药。

关于FPGA在开源方面的探索浅析

两天前穷途末路的MIPS也宣布要开源了。

开源要成功,最重要的是要形成一个良性的生态,这个生态中缺少一个环节,无论吵吵的多热闹,最后还是会散场。

很多人在问,FPGA领域有没有开源的平台呢?在以前还真的难找见,本来FPGA的器件厂商就凤毛麟角了(本身也说明了一定的问题),支持FPGA开发的工具更是难以靠民间的力量搞定了,从商业角度貌似没有足够的吸引力让一些大的玩家去投入足够的资源来构建这么一个生态。

但在民间,仍不乏一些痴迷的技术高手,以玩转技术、让不可能变成可能作为人生最大的乐趣,利用仅有的一个后门通道 - LattICe的iCE40系列,热烈地玩着,不问前途,虽然小众,但也收获了越来越多的喝彩。

是小脚丫FPGA的榜样,也许我们没有足够的力量像一样在技术上探索如此之深,但我们的使命是让FPGA更加接地气、亲民,通过自己的努力构建尽可能完整的学习生态系统,让每个学习数字逻辑的学生都能掌握FPGA的使用。

在FPGA领域,Lattice的iCE40系列是硬件开源领域最受欢迎的一款,在海外的骇客(Hacker,水平远高于我们碰到的Maker)工程师中知名度极高,无论是基于这个系列的板卡还是开发工具都有众多的玩家,尤其是Lattice最近新推出的iCE40UP5K - 非常低的价格(估计批量的单片售价低于10元RMB)、虽然有限的逻辑资源但能够支持Sensor AI的功能,乃至支持现在如日中天的开源处理器Risc V软核,无疑iCE40UP5K将成为开源FPGA届的新星。

借Crowsupply上的一个众筹产品来简单看看FPGA在开源方面的一些探索,也让一些学习fpga的朋友更直观地体会一下究竟怎样玩FPGA才能学到真的技能,对这个板子有兴趣的朋友可以点击左下角“阅读原文”到达相应的页面上去详细阅读:

iCEBreaker FPGA板专为FPGA的初学者量身定制的,支持最新的开源FPGA 开发工具以及下一代的开源CPU架构。iCEBreaker很轻松地跟各种Pmod外设进行连接,可以有大量得第三方Pmod模块可以选用,本板卡的设计者也专门制作了一系列的Pmod专用模块。

性能指标

核心器件使用Lattice iCE40UP5k FPGA

5280逻辑单元 (4-LUT + Carry + FF),跟我们Lattice版本的小脚丫FPGA资源相当,比Altera版本的逻辑资源少;

120 Kbit双口RAM

1 Mbit (128 KByte)单口RAM,这个存储量超过了我们小脚丫用的FPGA的内部存储器容量,这是能支持CNN的原因;

PLL, 2 x SPI, 2 x I2C硬化的IPs

两个内部振荡器 (10 kHz and 48 MHz) 大大简化设计

8个DSP乘法器块用于信号处理,比如语音合成以及软件定义无线电;

非常低的功耗,用于电池供电得场合

3个24 mA驱动和 3 x hard IP PWM (可以直接驱动RGB LED灯和小电流的马达)

足够多、足够快的存储器

128 Mbit (16 MB) quad SPI double data rate (QSPI-DDR) flash

例如: 可以向LED点阵传送视频流

很多的I/O(其实UP5K FPGA的管脚很少,但也够用了)

3个管脚用于RGB LED

2个用于板上的LEDs

一个UART端口, RX管脚和TX管脚可以通过虚拟USB串口进行访问

一个按键

两个Pmod连接器(总计16x管脚)

有一个可以掰下来的Pmod (8 x pins)

5个星型排列的LED灯

3个按键

足够的资源支持CPU软核!

picorv32

pico soc

RISC-V以及其软核

板上FPGA编程器以及USB到串行适配器

兼容IceStorm iceprog工具

简单, 同主机连接无需驱动

Pmod连接器和Pmod模块

这个板子有3种标准的Pmod连接器,可以做非常丰富的扩展 - 可以用市场上众多的现成的Pmod模块,也可以自己设计专用的Pmod模块,比如自己开发得7段数码管Pmod、DIP开关Pmod、LED屏驱动Pmod和一个HDMI输出Pmod.

开源的工具链

iCEBreaker FPGA原型板支持一下的开源设计工具:

Yosys: 用于Verilog RTL综合的框架;

Arachne-pnr: 针对iCE40 FPGA的布局布线工具

nextpnr: 时序驱动的FPGA布局布线工具;

IceStorm: 针对iCE40 FPGA进行分析和创建bitstreams的工具;

icestudio: 基于IceStorm的可视化编辑器

Migen: 基于Python的FPGA硬件设计工具包

iCEBreaker板子的框图:

数码管显示Pmod和8位开关Pmod

HDMI输出Pmod

这个板子上用到的iCE40UP5k FPGA速度足够快,能够输出720p的视频!通过上图中的HDMI Pmod模块(支持12 bits/pixel)可以输出800 x 600分辨率的测试图案以及一个720p的图案。

LED屏幕驱动Pmod

大的视频广告板,采用很多小型的RGB LED灯组成,可以驱动产生动画效果和视频。

驱动大的LED屏幕的Pmod

下面的表格是国外一些成型的开源FPGA平台的简单对比,从这个表格中可以看出,所有的FPGA器件都是来自Lattice的iCE40系列。

猜您喜欢

电子元件的世界里,你经常会看到像0603这样的数字组合,代表着贴片元件的封装尺寸。那么,贴片电阻封装名称0603究竟是什么意思呢?简单来说,0603表示该贴片电...
2024-11-29 10:25:36

分流器电阻独特的功能和的应用领域,成为了确保电路稳定运行的基石。而提及分流器电阻的品牌,台庆(TAI-TECH)无疑是一个响亮的名字,不仅代表了技术的前沿,更是...
2019-02-15 20:05:22

您是否曾为电子设备中繁琐的电源管理而烦恼?是否希望有一个小巧 yet 功能强大的解决方案?现在,有了8脚开关电源管理芯片,这一切都将迎刃而解!8脚开关电源管理芯...
2024-08-01 00:00:00


光学仪器在科学研究和工业应用中是重要配件,其主要优势不容忽视。光学仪器具备高精度和高分辨率,能够清晰地捕捉微小细节,满足严苛的实验要求。通常具备实时成像功能,能...
2011-03-25 00:00:00


PTC(Positive Temperature Coefficient,正温度系数)热敏电阻作为重要的温度控制元件,应用于过流保护、温度补偿及自恢复保险丝等领...
2018-06-28 15:30:30

在选择锯类工具时,了解其参数非常重要。不同类型的锯具适用于不同的工作需求,因此掌握相关参数可以帮助你做出明智的选择。锯片直径是一个关键参数,通常影响切割深度和效...
2015-02-18 00:00:00

以太网接口通常不携带电压,因此无法直接测量其电压值。试图用万用表等设备测量以太网接口的电压是危险的,可能会损坏设备或造成人身伤害。以太网主要用于数据传输,其信号...
2024-08-27 00:00:00

LED,即发光二极管,已经深入我们生活的方方面面,从日常照明到手机屏幕,都离不开的身影。而要让这些LED灯珠发光发亮,就需要一种特殊的电力供应——LED电源。就...
2024-09-07 00:00:00