微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > FPGA和CPLD > 基于FPGA的动态可重构系统设计与实现

基于FPGA的动态可重构系统设计与实现

时间:10-08 来源:互联网 点击:
系统的硬件组成及各部分功能

(1)演示验证系统的硬件组成,如图4所示。ARM处理器片内具有256 KB的片上SRAM存储器、2 MB容量FLAsH存储器。主要是对sPARTEN-3AN系列的FPGA进行控制,控制其调取FLASH存储器中的重构方案;FLAsH存储器的并行数据通过ARM转换成串行;ARM中自带的FLAsH存储器用来存放程序;



(2)SPARTEN3AN系列的FPGA,是基于非易失性存储的FPGA,主要作为PCI总线和ARM处理器之间的双端口;放置Spw IP核、UART IP核、1553 IP核;模拟JTAG口;

(3)两个XCVSX55的FPGA专用JTAG,进行配置文件的下载。Xilinx FPGA基于SRAM技术,因此是易失性的。如果关掉器件的电源,其配置就会丢失。在生产型环境中,FPGA通常使用外部存储器件(如PROM)防止停电时丢失配置数据;

(4)FLASH存储器容量为16 M×32 b,用于处理器的上电引导和存放多个用于模块级FPGA重构方案;

(5)两个PROM-XCF32P。Virtex4系列XC4-VSX55FPGA,其配置PROM为XCF32P,32 Mb存储容量。利用XCF32P的设计修订(Design.Revisiorling)功能将FPGA多种配置存储为不同的修订版本,从而简化FPGA配置更改。上电时,由配置PROM的内部逻辑对设计修订版本选择输入(引脚或控制位)进行采样;

(6)两组测试线,每组4根,cl_Test[3..O]和C2-Testl[3..O]分别测试两个XCVSX55系列FPGA的重构和反馈重构结果;

(7)两通道的PROM控制信号线,C1(C2)_PROG,C1(C2)_DIN,C1(C2)_DONE,C1(C2)_INT,C1(C2)_CCLK用于实现两个XCVSX55系列FPGA的PROM方式的下载。由于JTAG(边界扫描)链在其中一个部件发生故障时会影响整个JTAG链的正常功能,因此多使用:PROM的下载方式备用;

(8)一路RS-232驱动接收器,实现和外部通信的接口;

(9)PCI总线,通过该总线实现计算机与外界交互的外部接口。

3.2 演示验证系统的工作原理

3.2.1 上电复位

在上电复位时,要确保ARM和FPGA同步复位。Xilinx公司的FPGA上电时需要200 ms左右的配置时间,在此期间I/O引脚处于三态状态,因此对关键的输入/输出信号(如IRQx,NWAIT,2.56兆输出数据及输出时钟)有必要采取的上下拉,以确保ARM及外围接口信号处于正常的状态,避免信号冲突。

3.2.2 初始化

主要的初始化工作有2部分,分别由ARM和FPGA完成。

(1)ARM执行的初始化工作。包括监控程序自举→监控程序执行ARM内部寄存器初始化→硬件自检→加载标志检测→(软件更新加载)→FPGA参数设定→用户软件加载及完整性正确性校验→控制权叫用户软件→用户软件初始化→用户软件运行。

(2)FPGA执行的初始化工作。主要有FPGA内部寄存器和逻辑状态的初始值、内部缓冲区数据清零依靠复位信号来完成。其中的“FPGA参数设定”由监控程序负责执行或由FPGA使用缺省参数完成。数据融合格式、输入/输出码速率等FPGA参数存储在ARM的片内FLASH中的FPGA参数区中,上电或复位时有监控软件负责加载和初始化。

3.2.3 重构过程

可重构演示验证系统的结构如图4所示,当出现错误和发生故障时,由ARM处理器读取FLASH存储器中的重构方案。但是,FLASH存储器取舍众多重构方案却是受外部1553B,Spw,UART的控制。由ARM处理器更新FLASH存储器或给完成并/串转换的FPGA发出控制命令来对可重构应用单元进行操作。模拟JTAG口的FPGA与两个应用FPGA的JTAG口边界扫描链(Boundary-Scan Chain),在ARM处理器的控制下,对被重构的FPGA进行重构。FPGA的主要任务是通过ARM控制器将事先存入FLASH中逻辑系统的不同功能配置信息,按用户的系统时序要求和外部控制,逐一下载到SRAM编程的FPGA之中,以实现系统功能的动态局部重构。在系统工作过程中,FPGA将根据不同的要求,在处理器的控制下,不断重构其逻辑功能,通过模板级重构,满足不同数字图像处理和其他逻辑运算的要求。

3.3 实现局部动态可重构的FPGA的选型和配置模式

3.3.1 Xilinx公司的Virtex-4系列FPGA

在选择器件时,必须保证器件资源留有一定余量,这样不仅可以避免布线拥挤,也便于测试修改和功能扩展。根据系统的需求和扩展性,选择Virtex-4系列FPGA。它是Xilinx公司推出的一系列实现动态局部重构的FPGA芯片,也是基于查找表的。Virtex-4系列芯片将高级硅片组合模块(ASMBL)架构与种类繁多的灵活功能相结合,大大提高了可编程逻辑设计能力,从而成为替代ASIC技术的强有力产品。采用Virtex-4选用Xilinx公司的Virtex-4系列产品XC4VSX55。XC4VSX55具有128列×48行阵列,55 296个逻辑单元,24 576个Slice,最大分布式RAM384 KB,512个XtremeDSPSlice),320个18 KB块RAM,最大块RAM存储容量5 760 KB,8个DCM,4个相位匹配时钟分频器(PMCD),13个I/O组,最大用户I/O数640个。根据目前已有的算法,其性能和资源可以较好地满足图像匹配算法和目标识别算法对硬件资源(逻辑门数、RAM大小、乘法加法器等)的需求。Virtex-4硬IP核块的庞大阵列包括PowerPC处理器(带有新型APU接口)、三态以太网MAC,622 Mb/s到6.5 Gb/s串行收发器、专用DSP S1ice、高速时钟管理电路和源同步接口块。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top