FPGA的简介发展历和使用等基础知识讲解-飞外网

随着云计算,大数据和人工智能技术应用,单靠CPU已经无法满足各行各业的算力需求。海量数据分析、机器学习和边缘计算等场景需要计算架构多样化,需要不同的处理器架构和GPU,NPU和FPGA等异构计算技术协同,满足特定领域的算法和专用计算需求。今天,笔者带大家详细了解下FPGA技术。

FPGA是英文Field Programmable Gate Array简称,即现场可编程门阵列。它是在PLA、PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

1、 FPGA简介

2、FPGA发展史

FPGA的发展历史如下图所示。相对于PROM、PAL/GAL、CPLD而言,FPGA规模更大性能更高。

图1 FPGA发展史

FPGA芯片主流生产厂家包括Xilinx、Altera、Lattice、Microsemi,其中前两家的市场份额合计达到88%。目前FPGA主流厂商全部为美国厂商。国产FPGA由于研发起步较美国晚至少20年,目前还处于成长期,仅限于低端,在通信市场还没有成熟应用。

2015年12月,Intel公司斥资167亿美元收购了Altera公司。Altera被收购后不久即制定了英特尔处理器与FPGA集成的产品路线图。这两种产品集成的好处是可以提供创新的异构多核架构,适应例如人工智能等新市场的需求,同时能大幅缩减功耗。

图2 FPGA在电信领域的应用历史

FPGA在航天、军工、电信领域有非常成熟和广泛的应用。以电信领域为例,在电信设备一体机阶段,FPGA由于其编程的灵活性以及高性能被应用网络协议解析以及接口转换。

在NFV(NetworkFunction Virtualization阶段,FPGA基于通用服务器和Hypervisor实现网元数据面5倍的性能提升,同时能够被通用Openstack框架管理编排。

在云时代,FPGA已经被作为基本IaaS资源在公有云提供开发服务和加速服务,AWS、华为、BAT均有类似通用服务提供。

截至目前,Intel的Stratix 10器件已被成功应用于微软实时人工智能云平台Brainwave项目。

3、两家主流FPGA公司发展近况

Xilinx聚焦芯片领先和丰富的加速解决方案,通过开放策略获得主流云平台支持,确立了其在数据中心的领先地位。其UltraScale+系列FPGA领先友商1年多,使其在云平台竞争中占领先机,其VU9P器件被大量应用于包括AWS、Baidu、Ali、Tencent及华为在内的多家公司的云计算平台。

为满足加速器领域对FPGA芯片日益递增的性能需求,Xilinx已发布面向数据中心的下一代ACAP芯片架构、推出7nm Everest器件。此器件已不属于传统的FPGA,它集成了ARM、DSP、Math Engine处理器阵列等内核,将于2019年量产。相较于VU9P,Everest支持的AI处理性能将能提升20倍。

Intel则提供从硬件到平台到应用的全栈解决方案,不开放硬件和平台设计以避免生态碎片化,投入巨大但进展缓慢。

图3 Xilinx产品系列图

图4 Intel(以Stratix系列为例)产品工艺年代

FPGA在数据中心服务器市场的实际应用中存在一定技术难点,具体包括如下几方面:

1、编程门槛较高:硬件描述语言不同于软件开发语言,需要开发者对底层硬件有着较深刻的认识;因此人才也就成为限制FPGA应用的一个重要因素。据了解,目前国内从事FPGA开发的人员初步估计大约两万多人。

2、集成难度较大:FPGA开发与应用需要软硬件的协同,包括使用高级语言的系统建模、硬件代码(电路)设计、硬件代码仿真、底层驱动软件与硬件逻辑的联调等等。

3、开发周期相对软件要长:硬件开发比软件开发过程复杂,调试周期也被拉长。

4、很难获取独立逻辑IP。

4、FPGA整体结构

FPGA架构主要包括可配置逻辑块CLB(Configurable Logic Block)、输入输出块IOB(Input Output Block)、内部连线(Interconnect)和其它内嵌单元四个部分。

CLB是FPGA的基本逻辑单元。实际数量和特性会依器件的不同而改变,但是每个CLB都包含一个由4或6个输入、若干选择电路(多路复用器等)和触发器组成的可配置开关矩阵。开关矩阵具有高度的灵活性,经配置可以处理组合型逻辑、移位寄存器或 RAM。

FPGA可支持许多种I/O标准,因而可以为系统设计提供理想的接口桥接。FPGA 内的I/O按bank分组,每个bank能独立支持不同的I/O标准。目前最先进的FPGA提供了十多个I/O bank,能够提供灵活的I/O支持。

CLB 提供了逻辑性能,灵活的互连布线则负责在CLB和I/O之间传递信号。布线有几种类型,从设计用于专门实现 CLB 互连(短线资源)、到器件内的高速水平和垂直长线(长线资源)、再到时钟与其它全局信号的全局低skew布线(全局性专用布线资源)。一般,各厂家设计软件会将互连布线任务隐藏起来,用户根本看不到,从而大幅降低了设计复杂性。

内嵌硬核单元包括RAM、DSP、DCM(数字时钟管理模块)及其它特定接口硬核等,FPGA器件内部结构如下示意图。

图5 FPGA器件内部结构图

一般来说,器件型号数字越大,表示器件能提供的逻辑资源规模越大。在FPGA器件选型时,用户需要对照此表格,根据业务对逻辑资源(CLB)、内部BlockRAM、接口(高速Serdes对数)、数字信号处理(DSP硬核数)以及今后扩展等多方面的需求,综合考虑项目最合适的逻辑器件。

5、FPGA开发流程

FPGA的设计流程就是利用EDA开发软件和编程工具对FPGA芯片进行开发的过程。FPGA的开发流程一般如下图所示,包括功能定义/器件选型、设计输入、功能仿真、逻辑综合、布局布线与实现、编程调试等主要步骤。

1、功能定义/器件选型:在FPGA设计项目开始之前,必须有系统功能的定义和模块的划分,另外就是要根据任务要求,如系统的功能和复杂度,对工作速度和器件本身的资源、成本、以及连线的可布性等方面进行权衡,选择合适的设计方案和合适的器件类型。

2、 设计输入:设计输入指使用硬件描述语言将所设计的系统或电路用代码表述出来。最常用的硬件描述语言是Verilog HDL。

3、 功能仿真:功能仿真指在逻辑综合之前对用户所设计的电路进行逻辑功能验证。仿真前,需要搭建好测试平台并准备好测试激励,仿真结果将会生成报告文件和输出信号波形,从中便可以观察各个节点信号的变化。如果发现错误,则返回设计修改逻辑设计。常用仿真工具有Model Tech公司的ModelSim、Sysnopsys公司的VCS等软件。

4、 逻辑综合:所谓综合就是将较高级抽象层次的描述转化成较低层次的描述。综合优化根据目标与要求优化所生成的逻辑连接,使层次设计平面化,供FPGA布局布线软件进行实现。就目前的层次来看,综合优化是指将设计输入编译成由与门、或门、非门、RAM、触发器等基本逻辑单元组成的逻辑连接网表,而并非真实的门级电路。

真实具体的门级电路需要利用FPGA制造商的布局布线功能,根据综合后生成的标准门级结构网表来产生。为了能转换成标准的门级结构网表,HDL程序的编写必须符合特定综合器所要求的风格。常用的综合工具有Synplicity公司的Synplify/Synplify Pro软件以及各个FPGA厂家自己推出的综合开发工具。

5、布局布线与实现:布局布线可理解为利用实现工具把逻辑映射到目标器件结构的资源中,决定逻辑的最佳布局,选择逻辑与输入输出功能链接的布线通道进行连线,并产生相应文件(如配置文件与相关报告);实现是将综合生成的逻辑网表配置到具体的FPGA芯片上。由于只有FPGA芯片生产商对芯片结构最为了解,所以布局布线必须选择芯片开发商提供的工具。

6、编程调试:设计的最后一步就是编程调试。芯片编程是指产生使用的数据文件(位数据流文件,Bitstream Generaon),将编程数据加载到FPGA芯片中;之后便可进行上板测试。最后将FPGA文件(如.bit文件)从电脑到单板上的FPGA芯片中。

6、如何使用FPGA

FPGA开发完毕,最终得到验证好的加载文件。输出加载文件后,即可开始正常业务处理和验证(以软件加载方式为例,描述整个过程)

1、逻辑加载;

2、单板软件加载逻辑后,需要复位逻辑;

3、复位完成后,软件需等待等待一段时间至逻辑锁相环工作稳定;

4、软件启动对逻辑的外部RAM、内部Block RAM、DDRC等的自检操作;

5、软件完成自检以后,对逻辑所有可写RAM空间及寄存器进行初始化操作;

6、初始化完毕,软件参考逻辑芯片手册配置表项及寄存器;

7、逻辑准备好,可以开始处理业务。

7、FPGA适用场景

FPGA适合非规则性多并发、密集计算及协议解析处理场景,例如人工智能、基因测序、视频编码、数据压缩、图片处理、网络处理等各领域的加速。


浅谈电机控制中的MCU选型 通讯模块用于单片机跟外部进行信息传输,比如串口通讯模块,可以支持上位机跟单片机之间的通讯,像串口程序.... 发表于 06-30 12:27 •
商汤科技与沙特阿卜杜拉国王金融区签署合作谅解备忘录 近日,商汤科技与沙特阿卜杜拉国王金融区(King Abdullah Financial Distri.... 科技绿洲 发表于 06-30 11:54 • 123次
企业如何在移动应用开发中利用人工智能 一些专家坚持认为,人工智能和区块链的实施应该主要进行,同时考虑到用户的安全。但是,这些技术可以解.... 发表于 06-30 11:31 •
华为基于昇腾AI助力北京电信AI智算中心建设 本次大会,北京电信与达闼机器人股份有限公司,软通智慧信息技术有限公司两家公司就AI智算中心算力服务签.... 发表于 06-30 11:20 •
科大讯飞发布AI学习机 提供硬件级健康守护 科大讯飞AI学习机暑期新品发布会刚刚结束,国际标准化组织专家吴永和表示,科大讯飞在人工智能领域取得引.... 科技绿洲 发表于 06-30 11:14 •
下一个级别,TrustFLEXv,提供了使用客户选择的证书颁发机构的灵活性,同时仍然受益于预配置.... 星星科技指导员 发表于 06-30 10:57 •
Arria 10 SoC确保系统设计满足现在和未来性能要求 借助 Arria 10 SoC,您可以通过将 GHz 级处理器、FPGA 逻辑和数字信号处理 (.... 星星科技指导员 发表于 06-30 09:50 •
飞外网报道(文/李弯弯)当前,全球能源系统正在转型,而人工智能技术能够从大量数据中挖掘有效信息.... Carol Li 发表于 06-30 07:46 • 370次
最近两年RISC-V很火,主要原因还是因为这个处理器是开源的。目前市面上也有有很多的书籍讲RISC-V的原理和架... 发表于 06-29 21:36 • 676次
全球领先的神经拟态人工智能(AI)IP 和芯片商业生产商 BrainChip ,宣布与普诺飞思(Pr.... 科技绿洲 发表于 06-29 17:29 • 297次
宇泛荣登《2022杭州独角兽、准独角兽企业榜单》 6月,由中国科协指导,杭州市人民政府、民建浙江省委、中国投资发展促进会联合主办的第六届万物生长大会落.... 科技绿洲 发表于 06-29 17:09 • 309次
目前,中国服务机器人行业还处于初级发展阶段,其中,大部分产品还处于研发试验阶段,而投入使用并且实现产.... h1654155703.5361 发表于 06-29 17:07 • 208次
大象机器人Marscat走出国门,引领机器人风潮 火星猫是大象机器人研发的全球第一款仿生宠物猫,旨在成为一个家庭机器人,一个给你带来安慰和惊喜的机器人.... 大象机器人科技 发表于 06-29 16:47 • 161次
一、边缘计算 1、定义:是一个包罗万象的术语,用于将一些关键过程移动到网络边缘(靠近设备)的设备。这.... 深圳市恒讯科技有限公司 发表于 06-29 16:26 • 136次
生仝智能科技病理切片智能识别系统获由华为颁发技术认证书 2022年5月,生仝智能科技的病理切片智能识别系统完成了与全场景AI框架昇思MindSpore的兼容.... 科技绿洲 发表于 06-29 15:12 • 162次
华为携手奥看科技推出行业首个低码智能视频使能平台 基于昇腾AI,奥看科技与华为携手,推出行业首个低码智能视频使能平台,并聚焦全场景“大安全”打造了城市.... 科技绿洲 发表于 06-29 15:04 • 248次
探讨人工智能企业的破局之路 如何实现系统性创新?保持核心技术领先,持续拓展技术的深度和广度,就能实现从单点核心技术创新向系统性创.... 发表于 06-29 14:46 •
大数据及云计算企业多伦科技发布2022第一季度报告 大数据及云计算企业多伦科技股份有限公司发布2022第一季度报告,具体内容如下。 一、 主要财务数据 .... 汽车玩家 发表于 06-29 11:56 • 395次
2022年6月,IBM 大中华区总经理陈旭东受邀参加由中欧校友总会、中欧校友工业互联网协会主办的“第.... 科技绿洲 发表于 06-29 11:54 • 164次
RK3568J 8K人工智能核心板规格书 采用Rockchip RK3588新一代旗舰级八核64位处理器,最大可配32GB大内存;支持8K视频.... 发表于 06-29 10:53 •
RK3568J 8K人工智能ITX标准主板规格书 采用Rockchip RK3588新一代旗舰级八核64位处理器,最大可配32GB大内存;支持8K视频.... 发表于 06-29 10:51 •
简单来说,机器学习就是针对现实问题,使用我们输入的数据对算法进行训练,算法在训练之后就会生成一个模型.... 新机器视觉 发表于 06-29 10:51 •
芯盾时代成功入选“业务安全推进计划”首批成员单位 近日,由中国信息通信研究院(以下简称“中国信通院)、中国通信标准化协会主办的“业务与应用安全发展论坛.... 科技绿洲 发表于 06-29 10:12 • 107次
是德科技针对测试运营决策者提供先进的设计和验证解决方案 2022年6月28日,是德科技(Keysight Technologies,Inc.)日前发布了该公.... 科技绿洲 发表于 06-29 10:09 •
需要需求可追溯性的五个主要原因 这为考虑Spec-Tracer改进变更管理、促进更好的项目管理以及提供组织、连接和跟踪 FPGA 开.... 发表于 06-29 09:21 • 121次
2022亚马逊云科技面向青少年的自动驾驶赛车比赛火热开启 逾万名学生参与 持续赋能中国青少年人工智能教育   北京——2022年6月28日——亚马逊云科技举办.... 发表于 06-28 18:48 • 300次
简要介绍Modelsim软件做功能仿真的步骤 1、主要介绍Modelsim的安装和使用安装流程双击ModelSimSetup-14.1.0.186-windows.exe,开始安装Altera免费的Modelsim,选择... 发表于 06-28 17:15 • 5949次
近日,东软集团董事长刘积仁博士出席第六届世界智能大会,并在创新发展高峰会上以“智慧医疗时代”为主题发.... 东软集团 发表于 06-28 16:30 • 255次
基于 FPGA 的快速原型开发平台作为一个周期精确的软件开发平台,能够连接到现实世界的接口以运行.... 星星科技指导员 发表于 06-28 16:04 •
先进FPGA开发工具中的时序分析 1. 概述 对于现今的FPGA芯片供应商,在提供高性能和高集成度独立FPGA芯片和半导体知识产权(I.... 发表于 06-28 15:54 • 282次
整个过程是一系列连续的改进,从快速 TLM 模型开始,在可用时添加更多硬件细节,同时保持足够快的.... 星星科技指导员 发表于 06-28 15:42 • 131次
集成嵌入式平台加速了SoC和嵌入式系统的软件调试和启动 这种跨学科的早期研究改进了设计硬件并加速了 SoC 和嵌入式系统的软件调试和启动。软件开发人员和.... 星星科技指导员 发表于 06-28 15:31 • 1234次
不仅如此,32 位 ARM 生态系统提供了统一的结构,使代码搜索变得更加容易,并使嵌入式软件商店.... 星星科技指导员 发表于 06-28 15:11 • 101次
FPGA不断发展以满足不断变化的计算需求 通用 FPGA 可在逻辑利用率上节省 50% 的典型逻辑,并类似地减少延迟,因此可以轻松支持浮点功能.... 发表于 06-28 14:25 • 138次
东数西算建设工程助力人工智能产业高质量发展 随着信息技术的不断发展,云计算、移动互联网、大数据、人工智能等技术的快速创新与应用,数字经济已成为全.... 科技绿洲 发表于 06-28 11:52 • 403次
工作日街道空无一人!华强北封控三天,商家:早已做好应对措施 飞外网报道(文/梁浩斌)时隔3个多月,全国最大的电子元器件交易市场和集散地华强北再次因为疫情被.... Hobby观察 发表于 06-28 09:37 • 1315次
云厂商为什么都在冲这个KPI?全新的云市场竞争力 Q2最后一个月,各个云厂商似乎都在冲KPI,扎堆开会、发新概念、展望未来。有的针对数据中心算力基础设.... 脑极体 发表于 06-28 09:09 • 411次
Labview FPGA能否调用DLL文件? 硬件:NI-USB7845R软件:Labview由于实验室设备变动,只能用很贵的7845R,支持FPGA功能。但是我不需要用到FP... 发表于 06-27 17:27 • 1324次
壁仞科技在国产GPU芯片研发上获得的突破性进展 上海市经信委人工智能发展处相关负责人,壁仞科技联席CEO李新荣,壁仞科技联合创始人、总裁徐凌杰一同参.... 科技绿洲 发表于 06-27 16:44 • 309次
中科曙光全面布局智能计算 推出5A级智算中心 以“智能新时代:数字赋能 智赢未来”为主题的第六届世界智能大会在天津拉开帷幕。作为核心信息基础设施领.... 中科曙光 发表于 06-27 16:11 • 183次
浅谈人工智能机器人领域的趋势分析 在新旧需求拉动下,我国工业机器人产量放量增长。MIR数据显示,今年一季度国内工业机器人出货量为6.6.... 发表于 06-27 15:52 • 236次
旷视科技基于河图系统实现“群体智能”提高仓储空间利用率 未来,人工智能将呈现两条发展路径:一是如何让物理世界变得更美好,二是如何让人类在虚拟世界里更好地享.... 科技绿洲 发表于 06-27 15:12 • 338次
与大流行加速的许多行为和实践一样,医疗物联网将继续存在。远程传感器、5G 和人工智能等技术将继续.... 星星科技指导员 发表于 06-27 15:01 • 378次
曙光5A级智算中心加速AI与实体产业的深度融合 6月24日,以“智能新时代:数字赋能 智赢未来”为主题的第六届世界智能大会在天津拉开帷幕。作为核心信.... 科技绿洲 发表于 06-27 15:00 • 382次
6月,新疆昌吉回族自治州工业和信息化局等各部门领导莅临渊亭科技厦门总部参观调研,渊亭科技政企中心总监.... 科技绿洲 发表于 06-27 14:50 • 143次
海康威视与济南高新将合作共建“智慧大健康联合实验室” 6月24日,杭州海康威视数字技术股份有限公司(以下简称海康威视)和济南高新发展股份有限公司(以下简称.... 科技绿洲 发表于 06-27 14:29 • 293次
中科亿海微:芯有灵犀 智创未来,世界FPGA珠峰攀登者 中科院团队:托举行业新星 中科亿海微电子科技(苏州)有限公司(企业官网:http://www.ehi.... 发表于 06-27 14:16 • 447次
使用自动缩放时,您需要确保会话存储在数据库中而不是文件系统中。它将帮助您克服会话意外终止的问题。.... 星星科技指导员 发表于 06-27 10:52 • 166次
壁仞科技与平安科技正式签署战略合作协议 近日,壁仞科技与平安科技正式签署战略合作协议,强强联手打造领先的国产高性能算力基础设施落地标杆,共同.... 科技绿洲 发表于 06-27 10:35 • 252次
【STM32中国线上技术周】聚焦五大主题、47+方案展示及答疑,全面展示STM32嵌入式技术创新和生态战略! ▌STM32中国线上技术周简介在STM32诞生15周年之际,意法半导体将首次举办 “STM32中国线上技术周”。通过本次线上技术... 发表于 06-27 09:47 • 890次
基于RK3399 + RK1808的人工智能平台项目实战 云计算与边缘计算端侧仅负责发送输入数据,并接收计算结果计算资源集中管理和分配,借助服务器的强大性能,可以实现... 发表于 06-24 17:44 • 1986次
RK1808计算棒Rock-X demo相关资料分享 1、RK1808人工智能计算棒全平台RockX支持Rock-X SDK是一组快捷AI组件库,支持RK3399Pro和RK1808平台。开发者仅... 发表于 06-23 18:11 • 3009次
【高云半导体Combat开发套件试用体验】之示例工程编译 使用gw2a18_test工程,编译报错:ERROR (PJ0007) : Please validate Synthesis Tool is GowinSynthesis, or install... 发表于 06-23 17:26 • 657次
【高云半导体Combat开发套件试用体验】FPGA基本语法及Combat使用小技巧 FPGA常用的基本类型wire、reg和parameter。wire:线网型数据,表示硬件单元之间的物理连线,是verilog中默认的数据类型,由a... 发表于 06-23 14:51 • 1620次
在SpinalHDL里实现优雅的添加待跟踪波形信号 在FPGA的开发过程中,在线抓取波形往往是终极调试大法。而如何抓取信号,相信做逻辑开发的小伙伴都是轻车熟路,张口就来,无... 发表于 06-22 14:37 • 438次
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor TMP411设备是一个带有内置本地温度传感器的远程温度传感器监视器。远程温度传感器,二极管连接的晶体管通常是低成本,NPN或PNP型晶体管或二极管,是微控制器,微处理器或FPGA的组成部分。 远程精度为 1 C适用于多个设备制造商,无需校准。双线串行接口接受SMBus写字节,读字节,发送字节和接收字节命令,以设置报警阈值和读取温度数据。 TMP411器件中包含的功能包括:串联电阻取消,可编程非理想因子,可编程分辨率,可编程阈值限制,用户定义的偏移寄存器,用于最大精度,最小和最大温度监视器,宽远程温度测量范围(高达150 C),二极管故障检测和温度警报功能。 TMP411器件采用VSSOP-8和SOIC-8封装。
TMP468 具有引脚可编程的总线地址的高精度远程和本地温度传感器 TMP468器件是一款使用双线制SMBus或I 2 C兼容接口的多区域高精度低功耗温度传感器。除了本地温度外,还可以同时监控多达八个连接远程二极管的温度区域。聚合系统中的温度测量可通过缩小保护频带提升性能,并且可以降低电路板复杂程度。典型用例为监测服务器和电信设备等复杂系统中不同处理器(如MCU,GPU和FPGA)的温度。该器件将诸如串联电阻抵消,可编程非理想性因子,可编程偏移和可编程温度限值等高级特性完美结合,提供了一套精度和抗扰度更高且稳健耐用的温度监控解决方案。 八个远程通道(以及本地通道)均可独立编程,设定两个在测量位置的相应温度超出对应值时触发的阈值。此外,还可通过可编程迟滞设置避免阈值持续切换。 TMP468器件可提供高测量精度(0.75 C)和测量分辨率(0.0 625 C)。该器件还支持低电压轨(1.7V至3.6V)和通用双线制接口,采用高空间利用率的小型封装(3mm 3mm或1.6mm 1.6mm),可在计算系统中轻松集成。远程结支持-55 C至+ 150 C的温度范围。