这类系统通常以可编程逻辑器件为核心,在其内部实现面向应用的逻辑控制功能(通常以状态机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技术的发展,该技术将进入更多应用领域,为人类带来更多的便利。
本文关键字:暂无联系方式DSP/FPGA技术,单片机-工控设备 - DSP/FPGA技术