一种基于FPGA的可重构计算系统设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用专用特定的集成电路.以完全硬件的方式来实现计算任务。 这种方法的主要特点是为特定计算任务专门设计.充分挖掘问 题本身的并行性,利用大规模并行电路进行计算。可得到很高 的运算速度及效率.但这种方法的最大缺陷是它几乎没有任何 灵活性。或者说是不可编程的,任务稍有变化就必须修改电路。 其二是通用微处理器方法.选择处理器的指令依某种算法构成 一个新的指令序列.就成了完成特定计算任务的软件。通过修 改软件便可达到改变系统功能的目的.而硬件无需做任何改 动.这种方法灵活性强,或者说是可编程的,然而这种可编程性 是以牺牲系统的性能和速度为代价换来的。可重构计算
复位状态:配置状态 圈2
二二甄西’‘二>I<画垂巫亟
’初始化状态:工作状态
…二r—一
PS配置时序圈
PS配置过程为:nCONFIG信号首先产生一个最少40p,s的 低脉冲.nSTATUS、CONF DONE信号被拉低,FPGA进入复位 状态:nCONFIG变高后。nSTATUS随后变高,FPGA进入配置状
nCONFIG低脉 冲延迟40p,s CONF-DONE=0
&nslATUS=I
依次读兀FO 并串变换 低位在前 DATA数据有效 开始配置H,GA
CONF DONE=0
&RD_EMPrY=o DCLK有效 延迟40us
&nSTATUS=I
RDJMPrY=0
&RD_EMPTY=I
j
DCU(停止 配置暂停
store
concept
are
of reconfigurable
on
computing FPGA
and the feature of
sort
FPGA
devices
which
use
SRAM
cells
to
configuration data
structure
introduced.Based
devices,a
nSTATUS=I
FPGA器件完成在线配置.通过I/O FPGA中的PCI—X桥
开始 厂
。_T——————一'o\ REsTAR7I’-1
配置完成
CONF_DONE=I nSTATUS=0 &nSTATUS=I
及高速串行接口传输计算数据.计算逻辑完成数据计算处理。
系统工作时Computing FPGA器件可以免插拔在线重配置.完 成对器件内部计算逻辑的实时重构. 系统实现可重构关键是对Computing FPGA器件中的计 算逻辑的重新配置.其核心部分即I/O FPGA中的配置控制电 路。如图3所示配置控制电路由控制寄存器、控制逻辑、FIFO 和FPGA配置逻辑模块组成。控制寄存器及FIFO通过内部总 线与PCI—X桥连接.控制寄存器存储控制指令及系统工作状 态,FIFO缓存Computing FPGA的配置数据;FPGA配置逻辑
文章编号1002—8331一(2006)21—0074—04
Design of Reconfigurable Computing System Based on FPGA Wu Dongdon91'2 Yang Xiaojunl Liu Xinchunl Jiang Xianyan91
1(Institute of Computing Technology,Chinese Academy of Sciences,Beijing 100080) 2(Graduate School of the Chinese Academy of Sciences。Beijing 100039) Abstract:Firs@,the
态.至少延迟40p,s后。时钟DCLK和数据DA’队有效,FPGA
在时钟上升沿锁定数据.数据低位在前高位在后串行传输, DCLK最高频率为100MHz:在FPGA接收到最后一位数据后,
CONF
DONE信号拉高,FPGA进入初始化状态:在内置振荡器
圉1可t构加速卡结构图
驱动下经过一段时间后FPGA完成初始化.进入工作状态:
VCCVCC l,0 VCC
n乜A
仲裁
EP2530 FpGA
FPP I配置 I—————————————v—J I器件 CONF
DON亡一
FIFO(4KB) 控 制 寄 存 器
配置 逻辑 模块
控制l
L—J
INrr DoNE Computing FPGA Computing FPGA (B)
逻辑I
(A) 高速串行数据接口(A) 高速串行数据接口(B)
are
control
register,control
presented
are
in
emphasis.Finally,the
are
developing
direction of reeonfigurable computing research and some problems Keywords:reconfigurable computing,FPGA,online
of
reconfigurable
computing system is
proposed.
The
of
online
reeonfiguration circuit,main function moduls including FIFO,FPGA configuration logic module,
109ic,ete,and working flow of this system that
配置电路。FO FPGA器件为Stratix II EP2S30实现数据接口
3可重构的实现方法
可重构系统利用FPGA的资源可重配鬣特性.设计一种电 路结构.在不影响系统正常使用的前提下完成FPGA的免插拔
和配置管理.由一片厂商提供的专用配置器件在系统上电时自 动配置.专用配置器件由专用下载电缆烧写。系统工作时I/O FPGA器件本身不能免插拔在线重配置。
INIT
DATA————b逗少逗少
USER I/O DONE
...,..................................! .......................................一 ;基i吐=墨
....。....................,.............!........................................一
I/O
在线重配置.实现FPGA内部逻辑电路的实时重构。 3.1
FPGA配置方式
ALTERA公司的Stratix II系列FPGA器件的配置方式主
要有FPP(快速被动并行)、Ps(被动串行)、AS(主动串行)等嘲, 其中PS配置方式的时序如图2所示。
L—J
CONl;_DONE——]
DcLK
FPGA由厂商提供的专用配置器件在上电时自动配置.不
we
facing with currently
discussed briefly.
reconfiguration
1
引言
计算目标的实现主要有两种方式:其一是ASIC方法.即使
用芯片逻辑资源提供了新的发展方向【4】。对于数字信号处理、图
像处理、模式识别、密码学、生物信息处理等计算密集型应用,
可重构计算技术可以发挥巨大的优势。 基于SRAM工艺的FPGA具有易失性的特点.每次重新加 电FPGA都要重配置。这一特点一度被很多用户认为是个不利 因素.但由此导致的FPGA器件的资源配置可改变特性刚好满
l计算逻辑l 广覆百夏磊]
I计算逻辑I
广覆百瘌
呈
N.C nCEO
PCI-X 64bits/133MHz Bridge
赢
圈3
1塞
FPGA在线配置电路结构圈 计算机工程与应用2006.21
75
万方数据
Computing I/O
FPGA器件为两片Stratix II EP2S130.它们由
RESTART=0 nSTATUS=0
足可重构体系结构的要求.这一特征成为FPGA在许多新领域
获得广泛应用的关键.并成为了可重构计算系统发展的持续驱 动力量闭.
2可重构计算系统结构
可重构计算系统的高性能是靠大规模并行计算电路得到 的,在处理无法并行执行的任务时效率往往非常低下.因此最 好将可重构计算部件与通用微处理器结合起来组成一个系统. 既保持了系统的灵活性.在处理特定应用时又可以获得非常高 的性能。在超级计算机领域也可以引入可重构计算技术。通过 在计算节点内的I/O扩展插槽上增加可实时重构(Run-time Reeonfiguration)的计算加速卡.搭建一个可实时重构的超级计 算机。 现阶段的计算节点普遍提供PCI—X扩展插槽.因此基于 PCI—X接口的可重构计算加速卡具有很大的应用前景。当前工 艺下的FPGA器件还无法实现逻辑资源局部重配置.而在全局 重配置时器件所有的I/O管脚都呈高阻或特定电平状态.因
一种基于FPGA的可重构计算系统设计
吴冬冬-,2杨晓君1刘新春1江先阳1 -(中国科学院计算技术研究所,北京100080) 2(中国科学院研究生院,北京100039)
E—mail:wdd@ncie.ac.en
摘要介绍可重构计算的概念和基于SRAM工艺的FPGA器件的特点。设计了一种基于FPGA器件的*-Tt构计算系 统。着重讲述了该系统的在线重配置电路的总体结构,FIFO、FPGA配置逻辑模块、控制寄存器和控制逻辑等功能模块及 系统的工作流程。最后探讨了可重构计算相关研究面临的问题和发展方向。 关键词 可重构计算FPGA在线重配置 文献标识码A 中图分类号TP302.1
INIT
DONE为FPGA器件的一个可选信号.它由配置数据的 EN031_初在.低为出输后能使被号信
系统采用ALTERA公司的Stratix II系列FPGA器件.该 系列器件提供大量自适应逻辑模块(ALM)、片内RAM块、高速 I/O信号接口、DSP模块等资源.利用厂商提供或自行编写的IP Core能比较方便地实现PCI—X接口、DDR SDRAM控制器、高 速串行数据通路等逻辑模块。 本文主要介绍系统可重构的实现.即FPGA的配置控制. 对于加速卡的其它逻辑模块的实现不着重讲述。
(Reconfigurable Computing)恰好补充了两者的缺陷.它利用硬
件电路进行计算.具有极高的系统性能.同时它还具有可编程 性.可以根据应用或中间结果的需要动态配置电路的实现形 式.不同的应用在同一可重构计算硬件平台上都能获得非常高 的计算加速比llJ。可重构计算系统的关键特征是通过硬件完成 计算从而提高性能.并保留软件手段的灵活性【3]。 应用软件的性能需求不断超越计算平台的能力极限.为适 应性能需求芯片需要集成各种功能模块.不断复杂化的体系结 构导致芯片的晶体管数目不断增加.但是性能的提升速度低于 复杂度和集成度的提升速度。可重构的体系结构能够根据不同 的计算应用调整自身的硬件资源.可重构计算为如何更有效利
最初几个字节配置.INIT
始化完成后跳变为高.表示FPGA器件进入工作状态。在配置 过程中一旦出现错误.nSTATUS信号将被拉低。系统重新开始 配置。DCLK没有最小工作频率要求.因此在配置状态下可以 通过暂停时钟的方式延迟配置. 3.2
FPGA在线配置电路结构
图3所示电路结构为可重构计算系统的FPGA器件在线
基金项目:国家自然科学基金资助项目(编号:60403025)
74
2006.21计算机工程与应用
万方数据
此.如果用单片大容量FPGA实现接口电路和可重构计算.那 么在重配置FPGA时I,O管脚的状态变化相当于热插拔PCI— X加速卡.可能导致计算节点操作系统崩溃。 另一种方案是使用现成的PCI桥接芯片配合FPGA工作. 桥接芯片的PCI接口连接计算节点.二级总线接口连接FPGA 配置控制电路并为FPGA提供数据通路翻。该方案的问题是桥 接芯片提供的二级总线接口带宽限制、FPGA配置控制电路的 软件操作及同样存在“热插拔”处理问题。 本文设计了一种使用多片FPGA的结构.如图l所示。
nCONFIG..一
nSTATUS——————.,———————————————一.
L—一
I-------------u----—・---・-—-・、-----—。
几r 徊D_.一
能实时重构.可重构计算由Computing FPGA完成。I/O FPGA 实现PCI—X桥接,控制Computing “热插拔”的高速串行数据通路。 FPGA配置,并为其提供可
模块读取FIFO中的数据配置Computinz FPGA;控制逻辑根据 控制寄存器内的指令控制FPGA配置逻辑模块的状态.实时修 改控制寄存器内的状态位.并提供Computing FPGA内用户逻 辑工作所需的RESET信号。 系统的两片Computing FPGA采用PS方式实现在线配 置。器件(A)的片选nCE接地,nCEO接器件(B)的nCE。首先配 置器件(A)时其nCEO输出为高,完成配置后nCEO输出变为 低选中器件(B)继续配置。配置信号线CONF_DONE、nSTATUS、