您的位置 首页 IOT

根据FPGA的可重构体系规划及结构剖析详解

基于FPGA的可重构系统设计及结构分析详解-电子系统功能实现的模式不外硬件和软件两种。基于冯。诺依曼或者哈佛体系结构的通用微处理器(MPU、MCU、DSP等)系统是软件实现模式,其硬件电路结构固定,通过串行执行指令实现功能。软件设计灵活、易升级,但执行速度慢、效率低;而专用集成电路(ASIC)采用硬件模式,通过固化的特定运算和单元电路完成功能。指令并行执行,执行速度快、效率高,但开发周期长、缺乏灵活性。在一些实时性和灵活性要求都比较高的场合,采用通用微处理器或者ASIC效果都欠佳。

1 导言

电子体系功用完结的方法不过硬件和软件两种。依据冯。诺依曼或许哈佛体系结构的通用微处理器(MPU、MCUDSP等)体系是软件完结方法,其硬件电路结构固定,经过串行履行指令完结功用。软件规划灵敏、易晋级,但履行速度慢、功率低;而专用集成电路ASIC)选用硬件方法,经过固化的特定运算和单元电路完结功用。指令并行履行,履行速度快、功率高,但开发周期长、缺少灵敏性。在一些实时性和灵敏性要求都比较高的场合,选用通用微处理器或许ASIC效果都欠佳。

依据FPGA的可重构体系规划及结构剖析详解

大规划的电子体系是各种逻辑功用模块的组合。从时刻轴上来看,体系中的各个功用模块并不是任何时刻都在作业,而是依据体系外部的全体要求,轮番或循环地激活或作业。跟着体系规划的扩展,各功用模块电路的资源运用率反而下降。因而,体系规划要从传统的寻求大规划、高密度的方向,转向怎么进步资源运用率上来,充沛运用有限的资源去完结更大规划的逻辑规划。

依据大规划可编程器材FPGA的可重构体系(Reconfigurable System),便是运用FPGA能够屡次重复编程装备的特色,完结实时电路重构(Reconfiguration of circuitry at runTIme,简称RCR),即在电子体系的作业情况下,动态改动电路的结构,其实质是完结FPGA内部悉数或部分逻辑资源的时分复用,使在时刻上离散的逻辑电路功用能在同一FPGA中次序完结。

尽管可重构体系的概念早在1960年就现已提出来,但因为没有抱负的可重构器材等原因,这方面的研讨一向没有很大打破。1990年以来,跟着大规划集成电路的敏捷开展,特别是大规划可编程器材FPGA的呈现,研发可重构电子体系的硬件条件已根本具有,实时电路重构的思维逐步引起了学术界的留意,然后引发了对可重构体系的研讨热潮。自从2000年以来,依据FPGA的重构在国际上得到了越来越多的重视和研讨。

2 FPGA可重构规划的根底

2.1 FPGA可重构规划的结构根底

可重构规划是指运用可重用的软、硬件资源,依据不同的运用需求,灵敏地改动本身体系结构的规划办法。FPGA器材可屡次重复装备逻辑的特性使可重构体系成为可能,使体系兼具灵敏、快捷、硬件资源可复用等功用。

FPGA器材的结构首要有两种:一是依据反熔丝技能,二是依据SRAM或FLASH编程。用反熔丝开关作根本元件,具有非易失性,编程完结后,FPGA的装备数据不再改动,无法重构。而依据SRAM或FLASH编程的FPGA经过阵列中的SRAM或FLASH单元对FPGA进行编程。SRAM单元由一个RAM和一个PIP晶体管组成,RAM中储存着PIP晶体管的通断信息,体系上电时,这些信息码由外部电路写入到FPGA内部的RAM中,电源断开后,RAM中的数据将丢掉。因而SRAM或FLASH编程型FPGA是易失性的,每次从头加电,FPGA都要从头加载数据。这样,运转中的FPGA功用体系在掉电后能够从头下载新的装备数据,以完结不同的功用。这一特色成为FPGA在许多新领域取得广泛运用的要害,特别成为可重构体系开展的持续驱动力。

2.2 FPGA的重构办法

依据重构的办法不同,FPGA的重构可分为静态重构和动态重构两种,前者是指在体系闲暇期间进行在线编程,即断开从前的电路功用后,从头下载存贮器中不同的方针数据来改动方针体系逻辑功用。惯例SRAM FPGA都可完结静态重构。后者则是指在体系实时运转中对FPGA芯片进行动态装备(即在改动电路功用的一起依然坚持电路的作业情况),使其悉数或部分逻辑资源完结在体系的高速的功用改换和时分复用。动态重构技能需求特定的依据SRAM或FLASH结构的新式FPGA的支撑。跟着其产品和技能的相对老练,动态重构FPGA的规划理论和规划办法现已逐步成为新的研讨热门。

依据完结重构的面积不同,可重构FPGA又能够分为大局重构和部分重构。

(1)大局重构:对FPGA器材或体系能且只能进行悉数的从头装备,在装备进程中,核算的中心成果有必要取出存放在额定的存储区,直到新的装备功用悉数下载完停止。重构前后电路彼此独立,没有相关。一般,能够给FPGA串连一个EPROM来存储装备数据,完结前后功用的转化。惯例依据SRAM的FPGA的静态重构均为大局重构。

(2)部分重构:对重构器材或体系的一部分进行从头装备,重构进程中,其余部分的作业情况不受影响。这种重构办法减小了重构规划和单元数目,FPGA的重构时刻大大缩短,占有适当的速度优势。运用FPGA动态部分重构功用使硬件规划愈加灵敏,可用于硬件的长途晋级、体系容错和演化硬件以及通讯渠道规划等。动态部分重构能够经过两种办法完结:依据模块化的规划办法(Module-Based ParTIal ReconfiguraTIon)和依据不同的规划办法(Difference-Based ParTIal Reconfiguration)。

显着,动态重构比静态重构优胜,因为静态重构将整个内部的逻辑单元都从头装备,此刻FPGA被挂起不能履行正常操作,重构完结后才干恢复作业,影响体系实时性。动态重构在体系运转中能实时悉数或部分重构,且不中止正常逻辑输出,因而更有灵敏性和高速度。

大多数FPGA都是依据LUT查找表结构,它们只适用于静态重构,经过向LUT一次下载悉数装备数据而设定FPGA的逻辑功用。依据FPGA的容量不同、装备办法不同,悉数重构时刻为几ms到几秒不等。

关于惯例FPGA来说,重载办法多种多样。在体系调试阶段,一般是经过JTAG电缆从主机下载装备数据,调试完毕后正式运转时一般是将装备数据放在串行PROM中,上电时向FPGA加载逻辑。但关于体系实践运转还有一些更快更灵敏的装备办法,能够缩短FPGA的重构时刻,完结灵敏重构。如ALTERA公司的FPGA可选用串行被迫(PS)办法装备,关于2万逻辑门规划的EP1K10装备数据为20KB,在30MHz的装备时钟下只需5ms即可悉数重构。这个速度尽管比不上动态装备的FPGA,但也比JTAG下载、串行PROM装备办法快多了,权且称之为准动态重构(bogus dynamic restructuring)。并且在许多体系中FPGA并不时刻都在作业,而是以必定的重复频率履行使命,只需在FPGA的闲暇时刻来得及对其进行从头装备,那么在体系微观的视点就能够认为是动态装备的,即实时重构。

2.3 支撑重构的FPGA器材

近年来,跟着FPGA技能的开展,支撑重构的FPGA器材新品迭现。Xilinx、Altera、Lattice的FPGA器材都是SRAM查找表结构。Xilinx支撑模块化动态部分重构的器材族有XC6200系列,90nm工艺Spartan-3和Virtex-4 、Virtex-II-E和Virtex-II Pro [7]。Acmel公司的AT6000系列相同依据SRAM结构,仅仅SRAM的各单元能够独自拜访装备,即支撑部分重构。Lattice公司的依据Flash的FPGA经过在Flash上存储多种逻辑功用的装备数据流,经过装备完结不同逻辑功用,严厉意义上讲归于静态可重构技能。Altera公司的Flex系列、ACEX、APEX、Cyclone系列也是依据SRAM的可重构逻辑。支撑重构的FPGA器材有数量逐步添加的趋势。但现在价格相对偏高。

3 依据FPGA的可重构体系结构剖析

因为可重构体系的研讨前史很短,现在没有构成规范的结构方法,在此仅依据已有的运用做开始剖析。

按重构的粒度和办法,可重构体系能够粗略地分为两种。一种是粗粒度重构单元的模块级重构,即重构时改动某一个或若干个子模块的结构。此刻不只电路逻辑改动,连线资源也从头分配。重构所需的电路输出装备信息事先由编译软件生成。一般重构时体系需求暂停作业,待重构完结后再持续。这种重构体系规划简略,但灵敏性缺乏,且有时不能彻底发挥出硬件运算的功率。较合适运用于嵌入式体系中。

另一种细粒度的重构单元的元件级重构,即重构时仅改动若干元件的逻辑功用。一般情况下重构时连线资源的分配情况不作修正,重构所需的电路装备信息在体系运转进程中动态产生。重构时体系能够边重构边作业。这种重构体系规划杂乱,但灵敏性大,能充沛发挥出硬件运算的功率,较合适高速数字滤波器、演化核算、定制核算等方面的运用。

从现有的可重构体系安排结构看,能够依据运用类型加以区别,在中低端运用中,首要选用通用微处理器MPU(MCU/DSP)+FPGA方法;在高端运用中,首要选用处理器集成型,行将处理器、存储器、I/O口、LVDS、CDR等体系规划需求的资源集成到一个FPGA芯片上,构建成一个可编程的片上体系SoPC(System on Programmable Chip)。

3.1 MPU+FPGA结构的可重构体系的结构特色

通用微处理器具有杰出的接口功用,便于构建可重构体系。依照MPU与FPGA之间的彼此关系以及在体系中所起的效果,首要能够分为两类:MPU操控FPGA作业的可重构体系和MPU协同FPGA作业的可重构体系。

3.1.1 MPU操控FPGA作业的可重构体系

这类体系选用MPU作为体系的操控中心,在FPGA中完结操控器的外设电路功用。实质上,这是传统MPU操控体系的承继与开展,依据体系需求,在FPGA中定制完结各分立的外部设备与接口,如SRAM、键盘与显现接口以及总线的扩展等运用。

例如在某多通道超声信号高速收集处理体系中,所需处理的数据流巨大,对它的处理是核算密集型使命。选用DSP+FPGA结构方法,以FPGA作为DSP的协处理器,能够以硬件的速度进行并行核算,一起运用其在线可重构特性,灵敏地改动内部逻辑装备来完结多种不同算法的使命。

因为首要操控使命在MPU上完结,体系逻辑完结的要点在编制MPU程序上,而FPGA则更多地运用IP (Intellectual Property)核完结根本功用模块,软件开发在整个体系规划进程中所占比重较大。

3.1.2 MPU协同FPGA作业的可重构体系

这类体系一般以可编程逻辑器材为中心,在其内部完结面向运用的逻辑操控功用(一般以情况机FSM完结),而MPU则占有非必须位置(充任FPGA操控器的外设)。应该说,这类体系充沛运用了可编程逻辑器材和MCU的特色,完结了优势互补。它首要运用在面向实时性运用、并行处理以及高速等环境中。例如,运用高密度FPGA进行多路A/D高速采样,经内部处理模块处理后,并行输出成果,整个进程的时序操控在FPGA内部完结;而MPU只担任对FPGA各功用模块的参数装载、发动指令发送及FPGA作业情况监控等外围使命。

这类体系的开发要点首要在FPGA逻辑功用的硬件完结上,而MPU的操控软件比较简略。

在实践运用中,体系的特色并不像以上两种类型这么显着,普遍存在的是兼具以上特色的体系,仅仅所占比重不同罢了。

3.2 单片FPGA上的SoC—SoPC

将片上体系SOC和FPGA各自的长处相结合,完结现场可编程、可重构的新式SoC便是片上体系SoPC。

以Altera Stratix FPGA器材为例,Stratix体系把硬件、软件和IP功用从技能上融合到依据模块的规划中。这个新的体系结构选用CPU软核Nios和DirectDriveTM的MultiTrackTM互联布线结构。Nios II系列32位嵌入式处理器是一款通用的RISC结构的CPU,它定坐落广泛的嵌入式运用。可编程的NiosII核含有许多可装备的接口模块,用户可依据规划要求,运用Altera的Quartus II软件以及SoPC Builder东西,答应规划者轻松地将Nios II处理器嵌入到他们的体系中。用户还可经过Matlab和DSP Builder,或直接用VHDL等硬件描绘言语,为NiosII嵌入式处理器规划各类硬件模块,并以指令的方法加入到NiosII的指令体系中,使其成为NiosII体系的一个接口设备,与整个片内嵌入式体系融为一体,而不是直接下载到FPGA中生成巨大的硬件体系。正是NiosII所具有的这些重要特色,使得可重构SoPC的规划成为可能。市场上盛行的SoPC器材厂商Xilinx和Altera都供给功用强大的SoPC规划渠道,并供给很多的IP核和参阅规划,这是SoPC的一大优势。

当然,可重构体系的方法并没有彻底定型,各类型间的分界对错常含糊的,乃至是穿插重合的。能够预见,跟着可重构技能的开展,还会有新的体系结构呈现。

4 依据FPGA的可重构体系的运用简析

依据FPGA的可重构体系优胜的运用功用首要体现在:①能以硬件的速度履行算法,一起又具有灵敏的可装备性;②当作缓存逻辑,在不同的时刻段向FPGA加载不同的逻辑装备,完结硬件复用,进步资源运用率,减小体系规划功耗;③可结构自动式数字容错体系,在体系产生毛病时从头装备FPGA到达自修正;④完结可进化的硬件,对不断改动的环境能敏捷适配;⑤可使规划者用更为简略的硬件和更短的规划周期来完结更多的功用,下降体系的本钱。因而,依据FPGA的可重构体系在军事方针匹配、声纳波束组成、基因组匹配、图画纹路填充、遗传学方面基因组剖析、集成电路的核算机辅助规划、网络安全、光互连、高速数字滤波器、图画紧缩、嵌入式体系等方面,都有着广泛的运用远景。信任跟着FPGA技能的开展,该技能将进入更多运用领域,为人类带来更多的便当。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/iot/336960.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部