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

小梅哥 2019-03-30 00:00

新书预告


        由小梅哥编写,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器件的产品的独特优势能够对硬件进行升级。即使产品已经交付给客户,仍可以定期升级。这些特性可以解决很多问题:

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

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

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


小梅哥 更新芯航线团队出品的各种资料
评论
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 71浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 122浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 106浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 108浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 84浏览
  • TOF多区传感器: ND06   ND06是一款微型多区高集成度ToF测距传感器,其支持24个区域(6 x 4)同步测距,测距范围远达5m,具有测距范围广、精度高、测距稳定等特点。适用于投影仪的无感自动对焦和梯形校正、AIoT、手势识别、智能面板和智能灯具等多种场景。                 如果用ND06进行手势识别,只需要经过三个步骤: 第一步&
    esad0 2024-12-04 11:20 50浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 68浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 100浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 120浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 101浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 98浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 119浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 78浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦