【书本节选】Intel Cyclone V SoC FPGA架构优势介绍

小梅哥 2019-03-30 22:15

新书预告


        由小梅哥编写,Intel FPGA大学计划经理推荐,骏龙科技大力支持的基于Intel SoC FPGA 器件的设计和开发教程已经上线预售,京东天猫均已上架,欢迎小伙伴围观。




说明:本文内容节选自小梅哥编写的《SoC FPGA嵌入式设计和开发教程》一书1.2节。


1.2 Intel Cyclone V SoC FPGA介绍

得益于Intel SoC FPGA差异化的器件结构设计,当设计者掌握了其中一种器件的开发方法后,即可类比应用到其他系列的器件上。在满足设计需求的同时,合理选择功耗、成本和性能平衡的器件应用到实际系统中。作为SoC FPGA家族中功耗和成本最具优势的系列,掌握Cyclone V SoC FPGA的开发方法,不仅可以熟悉整个SoC FPGA系列器件的开发流程,还可以学有所用。很多没有实际高端应用需求的读者,也能够将Cyclone V SoC FPGA作为一个简单的ARM+FPGA二合一的产品进行使用,因此本书以Cyclone V SoC FPGA器件为基础进行讲解。


1.2.1 什么是SoC FPGA

Intel Cyclone VSoC FPGA是英特尔FPGA部门(原Altera)于2013年发布的一款在单一芯片上集成了双核的ARM Cortex-A9处理器和现场可编程逻辑门阵列(FPGA)的新型SoC芯片。相较于传统的仅有ARM处理器或FPGA的嵌入式芯片,Intel Cyclone V SoC FPGA既拥有ARM处理器灵活高效的数据运算和事务处理能力,又拥有FPGA的高速并行数据处理优势。同时,基于两者独特的片上互联结构,设计者在使用时可以将FPGA上的通用逻辑资源经过配置,映射为ARM处理器的一个或多个具有特定功能的外设,并通过高达128位位宽的AXI高速总线进行通信以完成控制命令和高速数据的交互。


1.2.2 SOPC

SoC FPGA技术推出之前,各大FPGA厂家已经推广了十多年的SOPC技术。从架构角度来说,SOPCSoC FPGA是统一的,都是使用FPGACPU共同完成系统的设计。但是与SoC FPGA不相同的是,SOPC是在单纯的FPGA芯片上使用FPGA的可编程逻辑资源和嵌入式存储器资源搭建一个软核CPU系统,由该软核CPU实现所需处理器的完整功能,该CPU是由FPGA通用逻辑资源和存储器通过配置实现的,其本质依旧只是一个复杂的FPGA设计模块。

得益于FPGA的现场可配置特性,使用FPGA的通用逻辑资源搭建的CPU,在结构资源上具有一定的灵活性。用户可以根据自己的需求对CPU进行定制裁剪,增加一些专用功能,例如除法或浮点运算单元,用于提升CPU在某些专用运算方面的性能。或者删除一些在系统中使用不到的功能,以节约逻辑资源。另外用户也可以根据自己的实际需求,为CPU添加各种标准或定制的外设,例如UARTSPII2C等标准接口外设,或者编写各种专用的外设,然后连接到CPU总线上,由CPU进行控制,以实现软硬件的协同工作。基于该结构的设计在保证系统性能的同时,增加了系统的灵活性。另外,如果单个软核CPU无法满足用户需求,则可以添加多个CPU软核,搭建多核系统,通过多核CPU协同工作,让系统拥有更加灵活便捷的控制和运算能力。

但是,由于CPU是使用FPGA的通用逻辑资源搭建的,所以相较使用经过布局布线优化的硬核处理器来说,软核处理器够运行的最高时钟主频要低一些,而且搭建软核CPU也会消耗较多的FPGA逻辑资源以及片上存储器资源。因此SOPC方案仅适用于对处理器整体性能要求不高的应用,例如整个系统的初始化配置、人机交互、多个功能模块间的协调控制等方面。


1.2.3 SoC FPGASOPC之间的差异

从架构的角度来说,SOPCSoC FPGA是统一的,都是由FPGA和处理器组成。在SoC FPGA 中,嵌入的是ARM公司32位的Cortex-A9硬核处理器,简称HPS(Hardware Processor System)。而SOPC技术中,嵌入的是由Intel自己开发的32NIOS II 软核处理器,两者指令集与处理器性能均有差异。Cortex-A9硬核处理器性能远远高于NIOS II 软核处理器。

Cyclone V SoCFPGA 片上的HPS部分,不仅集成了双核的Cortex-A9硬核处理器,还集成了各种高性能外设,如MMUDDR3控制器、NAND FLASH控制器等,有这些外设,HPS部分就可以运行成熟的Linux操作系统,提供统一的系统API,降低开发者的软件开发难度。而NIOS II软核CPU虽然可以通过配置,用逻辑资源来搭建相应的控制器以支持相应功能,但是从性能和开发难度上来说,无法与之媲美。因此,采用基于SoC FPGA架构进行设计开发是比较好的选择。

此外,虽然SoC FPGA芯片上既包含了有ARM,又包含了有FPGA,但是两者一定程度上是相互独立的,SoC芯片上的ARM处理器核并非是包含于FPGA逻辑单元内部的,而是与FPGA一同封装到同一个芯片中,JTAG接口、电源引脚和外设的接口引脚都是独立的。因此,如果使用SoC FPGA芯片进行设计,即使不用片上的ARM处理器,ARM处理器部分占用的芯片资源也无法释放出来,不能用作通用的FPGA资源。而SOPC则是使用FPGA通用逻辑和存储器资源搭建的CPU,当不使用CPU时,CPU占用的资源可以被释放,重新用作通用FPGA资源。


1.2.4 SoC FPGA架构的优势

嵌入式处理器开发人员面对的一个最大挑战就是如何选择一个满足应用要求的处理器。现在已有数百种嵌入式处理器,每种处理器都具备一组不同的外设、存储器、接口和性能特性,用户很难做出一个合理的选择:要么为了匹配实际应用所需的外设和接口要求而不得不选择在某些性能上多余的处理器;要么为了保持成本的需求而达不到原先预计的理想方案。

SoC FPGA架构出现之前,一般的嵌入式系统通常使用各种处理器或单片机作为系统核心,如基于ARM架构的CPU、基于因特尔X86架构的CPU、基于IBM PowerPC架构的CPU等。这些处理器的最大局限在于其芯片上的外设数量是确定的,一旦选定一款特定的处理器,则其本身能够提供的各种功能也就确定了,例如选择S3C2410这款处理器,则该芯片本身有且仅有3UART串口,当系统所需的串口数量大于3个时,不得不采用另外的方法来扩展实现,例如使用各种串口扩展芯片。另外,由于这些处理器芯片片上外设功能都是固定的,仅支持在一定程度上设置其工作模式,所以无法实现非常灵活的个性化定制,例如S3C2410处理器的片上UART控制器带有16个字节的FIFO缓冲,但是在某些大数据量的应用中,希望有更大容量的FIFO来满足功能开发需求,则片上的UART控制器不能完全满足要求,只能通过软件的方式处理。

由于SoC FPGA由于芯片上包含现场可编程逻辑门阵列,可以根据实际应用需求设计相应的逻辑电路,如带有256个字节的FIFOUART控制器。得益于SoC FPGA芯片上FPGAHPS部分独特的高速互联架构,FPGA侧设计的功能电路可以直接连接到HPS的总线上,从而映射为HPS的一个外设,由HPS对其进行读/写操作,该操作就像处理器操作本身片上含有的外设一样简单方便。

相较于传统的硬件功能固定的处理器,SoC FPGA能够突破硬件功能的限制,实现定制化的片上系统。


1.2.4.1 SoC FPGA架构相较于独立FPGA系统的优势

FPGA作为一种可以随时更改其实现的逻辑电路功能的器件,在高速并行数据处理方面有天然的优势。由于FPGA实现的是硬件逻辑功能,其执行效率相较于使用程序指令实现功能的处理器来说要高很多,例如执行3个数据的乘加运算,FPGA可以使用两个乘法器和一个加法器,在一个时钟周期内完成运算并输出结果,而CPU则可能需要将将该操作拆分成1条乘加指令和1条乘法指令,即使高性能的CPU,也需要2个指令周期才能完成该操作。同时,FPGA也可以利用功能复制的方式,在一个芯片上实现大量相同的功能,例如设计好一个高速数据采集+FIR数字滤波功能模块,然后可以直接将其例化多次,实现一个高速多路数据采集处理系统。

然而,单独的FPGA设计的系统也有其不足之处,由于FPGA实现功能都是通过功能固定的逻辑电路实现的,那么当应用中需要灵活的控制和人机交互或者复杂的以太网协议通信时,使用FPGA实现就会有较大的难度,即使使用复杂的状态机能够勉强实现功能,也面临着功能固定、修改难度大的问题。例如在上述多路采集系统之中,当需要将多路采集到的数据在液晶显示屏上绘制为波形,或者使用TCP/IP协议传输到远端服务器时,单纯的FPGA就难以胜任了,而ARM处理器,尤其是运行了嵌入式操作系统的ARM处理器,在图形界面显示和网络传输方面有较大的优势,如果将FPGA实现的多路高速数据采集系统的采集结果交给ARM处理器来实现波形显示或者网络传输,那么只需要简单的软件编程即可实现。

SoC FPGA作为一种在单一芯片上集成了FPGA和高性能处理器的新型芯片架构,即拥有FPGA高速并行处理和定制灵活的优势,又拥有ARM处理器实现灵活控制、图形界面显示和网络传输方面的优势。而且,这两者在芯片上并不是相互独立的存在,而是通过片上的高速互联架构有机的连接到了一起。FPGA采集的数据可以通过F2HBridge直接写入HPS侧的存储器中,然后由HPS读取数据,使用高级的图形界面编程工具,例如Mini GUI或者Qt来设计图形界面并显示波形,也可以使用Web Server网络服务器将数据组织起来并传递给远端计算机接收。


1.2.4.2 SoC FPGA架构相较于处理器+FPGA架构的优势

前文介绍了处理器在灵活控制和用户界面、网络传输方面的优势,也介绍了FPGA在高速并行处理方面的优势,同时还介绍了基于FPGA和软核处理器协同工作的SOPC技术。综上可知,处理器和FPGA协同工作是比较理想的方案,但是由于软核在性能上还是有所欠缺,且实现一些特定的功能不如MCU或处理器具有性价比,因此,相较于软核实现方案,有相当一部分的技术人员更倾向于选择使用独立的处理器加FPGA的方案。例如低端领域使用Cortex-M系列单片机加FPGA,中端应用使用Cortex-A系列处理器加FPGA,高端领域使用X86 CPU甚至Xeon系列处理器加FPGA。这些架构,从一定程度上来讲确实有很大的优势,例如性价比,开发的便捷性等。但是,因为使用了独立器件,所以电路板设计相对复杂一点。另外,除了高端CPU能够使用PCIe这种高速通信接口以外,常见的Cortex-M系列单片机和FPGA连接时,相互间的通信速率会有较大的限制,首先,是两者间的通信数据线受硬件电路板限制,一般不超过32位宽度,其次,就是器件间使用高位宽的并行总线,存在竞争冒险的情况,因此数据线翻转速率有较大的限制,通信频率无法做到很高。这两方因素的共同限制了FPGA和处理器之间的通信带宽。而SoCFPGA使用的是片上集成的方式,在同一个芯片上集成FPGAHPS系统,两者之间设计了高达128位数据的位宽,运行频率高达200MHz的通信总线,为两者通信提供了较高的数据带宽,大大提高了两者的通信带宽和通信效率。

 

1.2.4.3 SoCFPGA 集成型架构优势

采用ARM+FPGA集成架构的SoC FPGA芯片,用户将不会局限于预先制造的处理器技术,而是根据自己的要求定制处理器,按照需要选择合适的外设、存储器和接口。此外,用户还可以轻松集成自己专有的功能(如DSP用户逻辑),创建一款完美的处理器,如 1.21所示,使用户的设计具有独特的竞争优势。

1.21SoC简化系统硬件设计

用户所需要的嵌入式设备主控制器应该能够满足当前和今后的设计功能及性能需求。由于发展具有不确定性,因此,设计人员必须能够更改其设计,例如为处理器加入新的功能电路,定制硬件加速器,或者加入协处理器,以达到新的性能目标,而基于SoC FPGA的系统能够满足以上要求。

采用SoC FPGA芯片,用户不仅可以使用ARM Cortex-A9处理器的高性能运算和事务处理能力,还可以根据需要定制功能。在单个SoC FPGA芯片中实现高性能处理器、外设、存储器和I/O接口功能,降低用户的系统总体成本。

开发人员希望能快速将产品推向市场并保持一个较长的产品生命周期,避免更新换代。基于SoC FPGA的系统在以下几个方面可以帮助用户实现此目标:

缩短产品的上市时间FPGA可编程的特性使其具有最快的产品上市速度。许多设计通过简单的修改都可以在FPGA上快速实现。ARM Cortex-A9处理器能够运行成熟的Linux操作系统,基于Linux操作系统,用户能够非常简单高效地编写Linux应用程序,加快软件开发速度,缩短软件开发周期。而系统的灵活性和快速上市的特性源于Intel提供的完整的开发套件、众多的参考设计、强大的硬件开发工具Platform Designer)和软件开发工具SoC EDS套件)用户可以借助厂商提供的参考设计和易用的开发工具,在几个小时内就完成自己的设计原型。

建立有竞争性的优势维持一个基于通用硬件平台的产品的竞争优势是非常困难的。而SoC FPGA器件,能够充分发挥FPGA的可编程特性,设计独有的硬件加速和协处理逻辑,与ARM处理器协同工作。具备硬件加速,定制的、可裁剪的外设SoC系统,将更具竞争优势。

延长了产品的生存时间使用SoC FPGA器件的产品的独特优势能够对硬件进行升级。即使产品已经交付给客户,仍可以定期升级。这些特性可以解决很多问题:

  • 延长产品的生存时间,随着时间的增加,可以不断将新的特性添加到硬件中。

  • 减小由于标准的制定和改变而带来的硬件上的风险。

  • 简化了硬件缺陷的修复和排除。


小梅哥 更新芯航线团队出品的各种资料
评论
  • Ubuntu20.04默认情况下为root账号自动登录,本文介绍如何取消root账号自动登录,改为通过输入账号密码登录,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持OpenHarmony5.0及Linux、Android等操作系统,接口丰富,开发评估快人一步!添加新账号1、使用adduser命令来添加新用户,用户名以industio为例,系统会提示设置密码以及其他信息,您可以根据需要填写或跳过,命令如下:root@id
    Industio_触觉智能 2025-01-17 14:14 122浏览
  • 嘿,咱来聊聊RISC-V MCU技术哈。 这RISC-V MCU技术呢,简单来说就是基于一个叫RISC-V的指令集架构做出的微控制器技术。RISC-V这个啊,2010年的时候,是加州大学伯克利分校的研究团队弄出来的,目的就是想搞个新的、开放的指令集架构,能跟上现代计算的需要。到了2015年,专门成立了个RISC-V基金会,让这个架构更标准,也更好地推广开了。这几年啊,这个RISC-V的生态系统发展得可快了,好多公司和机构都加入了RISC-V International,还推出了不少RISC-V
    丙丁先生 2025-01-21 12:10 112浏览
  •     IPC-2581是基于ODB++标准、结合PCB行业特点而指定的PCB加工文件规范。    IPC-2581旨在替代CAM350格式,成为PCB加工行业的新的工业规范。    有一些免费软件,可以查看(不可修改)IPC-2581数据文件。这些软件典型用途是工艺校核。    1. Vu2581        出品:Downstream     
    电子知识打边炉 2025-01-22 11:12 53浏览
  • 高速先生成员--黄刚这不马上就要过年了嘛,高速先生就不打算给大家上难度了,整一篇简单但很实用的文章给大伙瞧瞧好了。相信这个标题一出来,尤其对于PCB设计工程师来说,心就立马凉了半截。他们辛辛苦苦进行PCB的过孔设计,高速先生居然说设计多大的过孔他们不关心!另外估计这时候就跳出很多“挑刺”的粉丝了哈,因为翻看很多以往的文章,高速先生都表达了过孔孔径对高速性能的影响是很大的哦!咋滴,今天居然说孔径不关心了?别,别急哈,听高速先生在这篇文章中娓娓道来。首先还是要对各位设计工程师的设计表示肯定,毕竟像我
    一博科技 2025-01-21 16:17 100浏览
  • 数字隔离芯片是一种实现电气隔离功能的集成电路,在工业自动化、汽车电子、光伏储能与电力通信等领域的电气系统中发挥着至关重要的作用。其不仅可令高、低压系统之间相互独立,提高低压系统的抗干扰能力,同时还可确保高、低压系统之间的安全交互,使系统稳定工作,并避免操作者遭受来自高压系统的电击伤害。典型数字隔离芯片的简化原理图值得一提的是,数字隔离芯片历经多年发展,其应用范围已十分广泛,凡涉及到在高、低压系统之间进行信号传输的场景中基本都需要应用到此种芯片。那么,电气工程师在进行电路设计时到底该如何评估选择一
    华普微HOPERF 2025-01-20 16:50 73浏览
  • 临近春节,各方社交及应酬也变得多起来了,甚至一月份就排满了各式约见。有的是关系好的专业朋友的周末“恳谈会”,基本是关于2025年经济预判的话题,以及如何稳定工作等话题;但更多的预约是来自几个客户老板及副总裁们的见面,他们为今年的经济预判与企业发展焦虑而来。在聊天过程中,我发现今年的聊天有个很有意思的“点”,挺多人尤其关心我到底是怎么成长成现在的多领域风格的,还能掌握一些经济趋势的分析能力,到底学过哪些专业、在企业管过哪些具体事情?单单就这个一个月内,我就重复了数次“为什么”,再辅以我上次写的:《
    牛言喵语 2025-01-22 17:10 41浏览
  • 现在为止,我们已经完成了Purple Pi OH主板的串口调试和部分配件的连接,接下来,让我们趁热打铁,完成剩余配件的连接!注:配件连接前请断开主板所有供电,避免敏感电路损坏!1.1 耳机接口主板有一路OTMP 标准四节耳机座J6,具备进行音频输出及录音功能,接入耳机后声音将优先从耳机输出,如下图所示:1.21.2 相机接口MIPI CSI 接口如上图所示,支持OV5648 和OV8858 摄像头模组。接入摄像头模组后,使用系统相机软件打开相机拍照和录像,如下图所示:1.3 以太网接口主板有一路
    Industio_触觉智能 2025-01-20 11:04 150浏览
  • 2024年是很平淡的一年,能保住饭碗就是万幸了,公司业绩不好,跳槽又不敢跳,还有一个原因就是老板对我们这些员工还是很好的,碍于人情也不能在公司困难时去雪上加霜。在工作其间遇到的大问题没有,小问题还是有不少,这里就举一两个来说一下。第一个就是,先看下下面的这个封装,你能猜出它的引脚间距是多少吗?这种排线座比较常规的是0.6mm间距(即排线是0.3mm间距)的,而这个规格也是我们用得最多的,所以我们按惯性思维来看的话,就会认为这个座子就是0.6mm间距的,这样往往就不会去细看规格书了,所以这次的运气
    wuliangu 2025-01-21 00:15 186浏览
  • 本文介绍瑞芯微开发板/主板Android配置APK默认开启性能模式方法,开启性能模式后,APK的CPU使用优先级会有所提高。触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。源码修改修改源码根目录下文件device/rockchip/rk3562/package_performance.xml并添加以下内容,注意"+"号为添加内容,"com.tencent.mm"为AP
    Industio_触觉智能 2025-01-17 14:09 164浏览
  •  万万没想到!科幻电影中的人形机器人,正在一步步走进我们人类的日常生活中来了。1月17日,乐聚将第100台全尺寸人形机器人交付北汽越野车,再次吹响了人形机器人疯狂进厂打工的号角。无独有尔,银河通用机器人作为一家成立不到两年时间的创业公司,在短短一年多时间内推出革命性的第一代产品Galbot G1,这是一款轮式、双臂、身体可折叠的人形机器人,得到了美团战投、经纬创投、IDG资本等众多投资方的认可。作为一家成立仅仅只有两年多时间的企业,智元机器人也把机器人从梦想带进了现实。2024年8月1
    刘旷 2025-01-21 11:15 399浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦