当前位置:首页 > 工业控制 > 电子设计自动化
[导读]主要FPGA供应商已经开始销售集成了硬核处理器内核的低成本FPGA器件,SoC类FPGA器件最终会成为主流。为能够充分发挥所有重要FPGA的灵活性,这些器件提供了FPGA设计人员和软件工程师还不熟悉的新特性。设计人员需要考虑

主要FPGA供应商已经开始销售集成了硬核处理器内核的低成本FPGA器件,SoC类FPGA器件最终会成为主流。为能够充分发挥所有重要FPGA的灵活性,这些器件提供了FPGA设计人员和软件工程师还不熟悉的新特性。设计人员需要考虑怎样在FPGA和处理器之间初始化这些资源并进行分配,管理复杂的连接,以及处理器外设的各种设置。

I/O限制

您可能会说,“I/O有什么问题?FPGA有很多I/O!”然而,FPGA现在采用了功能强大的双核Cortex-A9处理器,需要高性能存储器系统。如果您不需要处理器,您不用购买器件,因此,连接DDR2/3存储器来提高性能是最重要的。这需要72个专用引脚。这里不仅有功能强大的处理器,而且还有多种有用的标准外设(例如USB、以太网等)-这就需要更多的引脚。增加一系列电源和地引脚以实现良好的信号完整性,这会使得以前足够用的BGA引脚开始显得捉襟见肘。对于硬件外设,好在这些器件具有复用功能,因此,您可以简单地选择并引出您需要的外设。

引脚配置

对FPGA器件进行编程的比特流含有怎样配置I/O引脚的信息。实际上,SoC FPGA器件的工作方式相似,但是有两种不同的引脚配置过程-一种用于FPGA I/O,一种用于处理器专用I/O(这也包括配置硬件外设复用、I/O引脚和DDR控制器设置),如图1.之所以需要DDR控制器设置,是因为需要为某些器件和电路板布局调整高性能存储器控制器,以实现最优存储器性能。在FPGA硬件开发工具中进行处理器专用I/O和存储器控制器设置,其方式与FPGA引脚相似。如果您不对FPGA进行编程,所有这些配置数据是怎样进入器件中的呢?

图1,Altera SoC FPGA系统,显示了专用处理器和FPGA I/O引脚(右侧)

图1,Altera SoC FPGA系统,显示了专用处理器和FPGA I/O引脚(右侧)

处理器启动

低成本微控制器简化了从片内ROM的启动,而高端处理器从外部ROM(例如x86 BIOS)启动,然后,装入第二个启动加载程序。与微控制器相似,SoC FPGA器件有硬线片内启动ROM,含有启动处理器的启动代码,但是这些代码也配置I/O引脚,这些引脚用于从FPGA、闪存或者SD卡中读取数据。这样,系统将第二个启动加载程序镜像装入片内RAM.

第二个启动加载程序二进制代码和专用I/O引脚配置设置内置在一个镜像文件中,这一镜像也含有FPGA配置数据、处理器软件(操作系统(OS)启动加载程序、OS以及应用软件)。这一镜像文件存储在介质中,成为处理器的启动源。当处理器从片内ROM启动时,它读取外部引脚的状态,选择启动源,将第二个启动加载程序装入片内RAM,然后运行它。这些代码设置处理器,配置外部存储器控制器和专用外设I/O引脚,允许用户应用程序代码(可以是OS的启动加载程序)从启动源装入到DDR存储器中。在这一阶段,配置处理器和所有处理器专用I/O-因此,OS启动加载程序(例如U-Boot)甚至可以通过外设(例如通过以太网)来装入OS二进制代码。

图2,典型的SoC FPGA启动过程

图2,典型的SoC FPGA启动过程

软外设

最后,我们有经过全面配置的芯片,可以启动OS或者应用程序-而有可能还没有配置FPGA.OS/应用程序一般会在启动时初始化所有外设,但是在这一例子中,可能还没有外设!一种简单的方法是,在出现这种情况之前对FPGA进行配置,但是,如果您需要软件从一组不同的配置中进行选择,会怎样呢?您甚至可能希望随时重新配置FPGA,改变外设。

开发基于FPGA的外设系统相对简单,FPGA供应商提供IP库以及基于GUI的设计工具,使您很容易连接外设IP和硬核处理器。对此,设计流程与使用Nios II处理器等软核CPU的流程完全相同。一般不能修改硬核处理器系统的特性,您需要做的是在基于GUI的工具中配置专用引脚复用功能,连接外设IP.

FPGA设计工具以头文件的形式实现了软件开发工具链的所有硬件相关数据(基本地址等),这一头文件可以用于生成预构建应用程序,从而匹配每一FPGA配置和外设。但是,如果您使用OS,这可能带来问题,理想情况下,您需要外设驱动软件应用程序。

好在大部分OS支持动态驱动装入和卸载,因此,可以读取外设,让OS装入相应的驱动。如果您重新配置FPGA,只需要卸载驱动,然后重新装入含有新配置的驱动。这看起来是一项很难的工作,但是,大部分OS支持这样做,Linux甚至提供一种名为器件树的功能,实际专门用于在Linux文件系统中存储外设相关数据。每一FPGA配置会有一个匹配器件树文件,因此,对于Linux,您需要做的是,装入正确的器件树,Linux就会装入正确的驱动。图2是一个典型的SoC FPGA启动过程。

结论

由于处理器和FPGA紧密集成到一个器件中,与标准FPGA相比,开发这些新器件会稍微复杂一些,而SoCFPGA器件供应商提供支持工具流和机制,管理所需的功能要相对简单-即使您以前从未使用过FPGA中的处理器。

0次

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

MOS管,即金属-氧化物半导体场效应晶体管,是电子学中常用的一种半导体器件。它具有高频率、低噪声、高输入阻抗等特点,被广泛应用于各种电子设备和系统中。本文将详细介绍MOS管的作用。

关键字: 半导体 场效应晶体管 器件

厦门2023年9月21日 /美通社/ -- 声学滤波器作为射频前端解决方案关键器件之一,在通信系统的演进中也需要技术的迭代及突破。随着第五代(5G)移动通信技术的广泛推进,现实网络环境频谱复杂度提升。在3GPP发布PC1...

关键字: SAW HP 滤波器 器件

用电路元件符号表示电路连接的图,叫电路图。电路图是人们为研究、工程规划的需要,用物理电学标准化的符号绘制的一种表示各元器件组成及器件关系的原理布局图

关键字: 可编程 电源 器件

连接器是连接电气线路的组件之一,主要是在器件与组件、组件与机柜、系统与子系统之间起电连接和信号传递的作用,并且保持系统与系统之间不发生信号失真和能量损失,其品质好坏关系到系统设备整体运作的可靠性,属于主机厂商的重要配套产...

关键字: 连接器 器件 组件

深圳2023年8月14日 /美通社/ -- 近日,国际公认的测试、检验和认证机构SGS与深圳开阳电子股份有限公司(以下简称“开阳电子”)在深圳举行AEC-Q系列认证颁证仪式,双方继合作完成AMT630H和ARK1668E...

关键字: 器件 电子 AEC-Q100 MT

微波炉是现代生活中广泛使用的一种厨房电器,可以快速加热食物。它的内部结构是由多个器件组合而成的,这些器件共同协作,实现高效的加热和烹饪功能。在本文中,我们将探讨微波炉内部器件结构的组合方式,带您了解微波炉的工作原理和内部...

关键字: 微波炉 厨房电器 器件

DSP是Digital Signal Processing的缩写,表示数字信号处理器,信息化的基础是数字化,数字化的核心技术之一是数字信号处理,数字信号处理的任务在很大程度上需要由DSP器件来完成

关键字: DSP芯片 器件 芯片设计

如今,无线充电已经广为人知,不再是一个新鲜词汇,众多行业对这一技术的接受度越来越高,其相比传统的有线插拔、触点方式,优势明显。

关键字: 无线 充电 解决方案

可编程逻辑器件 英文全称为:programmable logic device 即 PLD。PLD是做为一种通用集成电路产生的,他的逻辑功能按照用户对器件编程来确定。

关键字: 可编程 逻辑 器件

通过按键操作,可使数码管显示不同类别的实时数据和运行参数,数据名称数码管显示 3 位符号,第一位为字母,表示当前正在查看的数据类别,后面两位用数字表示正在查看数据的编号。 数据类别用字母表示, F 表示频率类别,...

关键字: 振弦采集仪 振弦传感器 工程监测 工程设备 无线网络 解决方案
关闭
关闭