(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf_第1页
(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf_第2页
(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf_第3页
(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf_第4页
(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(计算机软件与理论专业论文)FPGA软硬件性能基准测试的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

f p g a 软硬件性能基准测试的研究 摘要 f p g a 软硬件性能基准测试的研究 专业名称:计算机软件与理论 申请者姓名:冀亮 导师姓名:金京林 现场可编程门阵列f p g a 具有性能好、规模大、可重复编程、开发投资小等优 点,在现代电子产品中应用得越来越广泛。随着微电子技术的高速发展,成本的 不断下降,f p g a 正逐渐成为各种电子产品不可或缺的重要部件。 f p g a 软件复杂的设置和不同的算法、f p g a 硬件多样的结构和丰富的功能、各 个厂商互不兼容的软硬件等差异,都不仅使如何挑选合适的软硬件用于产品设计 成为f p g a 用户棘手的问题,而且使构造一个精确合理的f p g a 软硬件性能的测试方 法变得十分复杂。 基准测试是用一个基准设计集按照统一的测试规范评估和量化目标系统的 软件或硬件性能,是目前计算机领域应用最广泛、最主要的性能测试技术。 通过分析影响f p g a 软硬件性能基准测试的诸多因素,比如基准设计的挑选、 基准设计的优化,f p g a 软件的设置和约等,本文基于设计和硬件分类、优化策略 分类的基准测试规范,提出了一组详尽的度量指标。 基准测试的规范如下,首先根据测试目的配置测试环境、挑选基准设计和硬 件分类,针对不同的f p g a 软硬件优化基准设计,然后按照速度优先最少优化、速 度优先最大优化、资源和功耗优先最少优化、资源和功耗优先最大优化四种优化 策略分别编译基准设计,并收集延时、成本、功耗和编译时间这四种性能数据, 最后使用速度优先最少优化下的性能集、速度优先最少优化性能集、资源和功耗 优先最少优化下的性能集、资源和功耗优先最大优化下的性能集、速度优先最少 f p g a 软硬件性能堆准测试的研究 和最大优化之间性能集的差、速度优先最少优化下性能集的比较等十个度量指标 量化性能,生成测试报告。 最后,本基准测试规范被应用于评估和比较a l t e r a 矛i x i1 i n x 两厂商软硬件在 低成本领域带处理器应用方面的性能。 关键词:f p g a ,f p g a 性能,基准测试,测试规范,度量指标 f p g a 软硬件性能皋准测试的研究 a b s t r a c t s t u d yo n f p g as o f t w a r ea n dh a r d w a r ep e r f o r m a n c e b e n c h m a r kin g m a j o r :c o m p u t e rs o f t w a r ea n dt h e o r y n a m e :l i a n gj i s u p e r v i s o r :j i n g l i nj i n f i e l dp r o g r a m m a b l eg a t ea r r a yi sw i d e l yu s e di nm o d e me l e c t r o n i cp r o d u c t sf o r i t sg o o dp e r f o r m a n c e ,l a r g es i z e ,r e p r o g r a m m a b l ea n dl o wc a p i t a l i z e dc o s t w i t h h i g h s p e e dd e v e l o p m e n to fm i c r o e l e c t r o n i ct e c h n o l o g ya n dc o n s t a n td e c l i n eo fc o s t , f p g ab e c o m e si n d i s p e n s a b l ek e yc o m p o n e n to fa l lk i n d so fe l e c t r o n i cp r o d u c t s g r a d u a l l y a se a c hf p g as o f t w a r eh a ss o p h i s t i c a t e ds e t t i n g sa n dd i f f e r e n ta l g o r i t h m ,e a c h f p g ah a r d w a r eh a sd i v e r s ea r c h i t e c t u r ea n dr i c hf u n c t i o n ,e a c hf p g a c o m p a n y s s o f t w a r ea n dh a r d w a r ea r ei n c o m p a t i b l e ,i t sn o to n l yh a r df o rf p g au s e rt oc h o o s e s u i t a b l es o f t w a r ea n dh a r d w a r ef o rp r o d u c td e s i g n ,b u ta l s oc o m p l i c a t e dt oc o n s t r u c ta p r e c i s ea n dr e a s o n a b l et e s tm e t h o d o l o g yo ff p g a s o f t w a r ea n dh a r d w a r e p e r f o r m a n c e b e n c h m a r k i n gi sw i d e l ya p p l i e da n dp r i m a r yi m p o r t a n c ep e r f o r m a n c et e s t t e c h n o l o g yi nt h ec o m p u t e rf i e l da tp r e s e n t i t ss p e c i f i cm e t h o di sb a s e do n a b e n c h m a r kd e s i g ns e tt oe v a l u a t ea n dq u a n t i f ys o f t w a r eo rh a r d w a r ep e r f o r m a n c eo f t h et a r g e ts y s t e ma c c o r d i n gt ot h et e s ts p e c i f i c a t i o n b ya n a l y z i n gm a n yf a c t o r sw h i c ha f f e c tf p g as o f t w a r ea n dh a r d w a r e i i i p e r f o r m a n c eb e n c h m a r k i n g ,s u c ha sb e n c h m a r kd e s i g ns e l e c t i o n ,b e n c h m a r kd e s i g n o p t i m i z a t i o n ,s o f t w a r es e t t i n g sa n dc o n s t r a i n t s ,t h i sp a p e rp u t sf o r w a r da b e n c h m a r k i n gs p e c i f i c a t i o nb a s e do nb e n c h m a r kd e s i g na n dh a r d w a r ec l a s s i f i c a t i o n a n do p t i m i z a t i o ns t r a t e g yc l a s s i f i c a t i o n ,a n dp r o p o s e sas e to fd e t a i l e dm e t r i ci n d e x e s t h eb e n c h m a r k i n gs p e c i f i c a t i o ni sd e s c r i b e da sf o l l o w s f i r s t l y , c o n f i g u r et e s t e n v i r o n m e n ta n dc h o o s eb e n c h m a r kd e s i g na n dh a r d w a r ec l a s s i f i c a t i o nf o r b e n c h m a r k i n gg o a l ,o p t i m i z eb e n c h m a r kd e s i g n sf o rd i f f e r e n tf p g a s o f t w a r ea n d h a r d w a r e s e c o n d l y , c o m p i l eb e n c h m a r kd e s i g nr e s p e c t i v e l yw i t hs p e e dp r i o rl e a s t e f f o r t ,s p e e dp r i o rb e s te f f o r t ,r e s o u r c ea n dp o w e rp r i o rl e a s te f f o r t ,r e s o u r c ea n d p o w e rp r i o rb e s te f f o r tf o u ro p t i m i z a t i o ns t r a t e g i e s ,a n dc o l l e c td e l a y , c o s t ,p o w e r , c o m p i l et i m ef o u rp e r f o r m a n c ed a t a s f i n a l l y , q u a n t i f yp e r f o r m a n c e a n dc r e a t et e s t r e p o r tw i t ht e nm e t r i ci n d e x e s ,s u c h a sp e r f o r m a n c es e tw i t hs p e e dp r i o rl e a s te f f o r t o p t i m i z a t i o n ,p e r f o r m a n c es e tw i t hs p e e dp r i o r b e s te f f o r to p t i m i z a t i o n ,p e r f o r m a n c e s e tw i t hr e s o u r c ea n dp o w e rp r i o rl e a s te f f o r to p t i m i z a t i o n ,p e r f o r m a n c es e tw i t h r e s o u r c ea n dp o w e rp r i o rl e a s tb e s to p t i m i z a t i o n ,d i f f e r e n c eo fp e r f o r m a n c es e tw i t h s p e e dp r i o rb e t w e e n l e a s te f f o r ta n db e s te f f o r to p t i m i z a t i o n ,a n dc o m p a r i s o no f p e r f o r m a n c e s e tw i t hs p e e dp r i o rl e a s te f f o r to p t i m i z a t i o n a te n do ft h i sp a p e r , t h eb e n c h m a r k i n gs p e c i f i c a t i o ni sa p p l i e dt oe v a l u a t ea n d c o m p a r ep e r f o r m a n c eo f a l t e r aa n dx i l i n xc o m p a n i e s s o f t w a r ea n dh a r d w a r e ,w h e n t h e ya r eu s e dw i t hp r o c e s s o r i nt h el o wc o s tf i e l d k e yw o r d s :f p g a ,f p g a p e r f o r m a n c e ,b e n c h m a r k i n g ,t e s ts p e c i f i c a t i o n , m e t r i ci n d e x i v 华南师范大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文 的研究做出重要贡献的个人和集体,均已在文中以明确的方式标明。 本人完全意识到此声明的法律结果由本人承担。 论文作者签名:鹫亩佑义作石,佥铂:墨彤 日期:阳谚年舌月伞日 学位论文使用授权声明 本人完全了解华南师范大学有关收集、保留和使用学位论文的规 定,即:研究生在校攻读学位期间论文工作的知识产权单位属华南师 范大学。学校有权保留并向国家主管部门或其指定机构送交论文的电 子版和纸质版,允许学位论文被检索、查阅和借阅。学校可以公布学 位论文的全部或部分内容,可以允许采用影印、缩印、数字化或其他 复制手段保存、汇编学位论文。( 保密的论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密范围,在年后解密适用 本授权书。非保密论文注释:本学位论文不属于保密范围,适用本授权 书。 论文作者签名:劈表 日期:加谚年占月年日 导师签名: 令车牡 日期年6 月日 f p g a 软硬件性能基准测试的研究 绪论 f p g a ( f i e l dp r o g r a m m a b l eg a t ea r r a y ,现场可编程门阵列) ,是一种高性 能可编程逻辑硬件。f p g a 于1 9 8 4 年就已经出现,不过过去十多年时间内f p g a 都未受到太多的重视,原因是f p g a 的功耗用电、电路密度、频率效能、电路成 本等都不如a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ,专用集成电路) 。在这十多年时间内,f p g a 多半只用在一些特殊领域,例如芯片业者针对新产 品测试市场反应,即便初期产品未达量产规模,也能先以f p g a 制成产品测试, 或者有些芯片设计公司承接了小型的设计项目,在量产规模不足时也一样使用 f p g a ,或如政府、军方的特殊要求,不期望使用开放、标准性的芯片与电路,也 会倾向使用f p g a 。 成 本 工艺掩膜成本 0 0 9p m 0 1 8p m 0 2 5p m 0 3 5p m 钔,0 0 0 0 0 0 $ 2 5 0 :0 0 0 $ 12 0 ,0 0 0 $ 6 0 ,0 0 0 产品数量 图0 - i 产品数量和成本、工艺和掩膜成本的关系 如图0 - i 所示乜1 ,随着工艺的进步,掩膜成本也不断上升,使得愈来愈多芯 片无法使用a s i c 这种开设掩膜模式投产。这些芯片如果要上市,就只好以f p g a 模式来生产,因为f p g a 模式不受掩膜成本的影响。同时,掩膜的开设时间无法 缩短,每次都需要数十天的时间。然而当今的芯片市场已从信息、通讯市场转移 至消费性电子市场,过去资通讯芯片的特点是少样多量,相同一致的芯片需求量 极高,开设一次掩膜后可使用很久,并量产出极多芯片,相对的当今的消费性电 子的特性是少量多样( 变化多) 、变化快速,掩膜使用一段时间后就必须因应市场 的改变而修改电路,使整组掩膜中有数张掩膜无法适用,必须重新开设,所以, f p g a 软硬件性能基准测试的研究 即便掩膜成本没有节节攀升,其变更速度也一样不适合今日的芯片市场,因此许 多无晶圆厂业者已逐渐舍弃使用a s i c ,而用f p g a 来推出其设计的芯片。 所幸f p g a 也受益于摩尔定律,在工艺技术不断提升下,晶体管愈来愈缩密 化,原本相较a s i c 逊色的电路密度过低、频率效能过低、电路成本过高等问题, 在新一代f p g a 上,早已拉近与a s i c 间的表现差距。根据g a r t n e rd a t a q u e s t 的分析报告显示:2 0 0 5 年a s i c 和f p g a p l d 的增长率分别为3 9 和5 8 , 而2 0 0 6 年,两者的增长率分别是8 3 和1 3 4 。可以看到f p g a 的发展速度 明显高于a s i c ,越来越多的系统厂商选用f p g a 来实现最终产品,或者为大型a s i c 设计作初期的原型设计。 目前,f p g a 市场的主要厂商有a l t e r a 、x i l i n x 、a c t e l 和l a t t i c e ,其中前 两个厂商的硬件产品占据了绝大部分的市场,如图0 - 2 所示口1 。a l t e r a 厂商f p g a 主要硬件产品有高端s t r a t i x 和低端c y c l o n e 两大家族,x i l i n x 厂商f p g a 主要 产品的高端v i r t e x 和低端s p a r t a n 两大家族。 x i l i n x a c r e l a i t e r a l a 髓i c e 图0 - 2 各f p g a 厂商的市场份额 要想将设想的设计转化为具体的实现,离不开f p g a 软件。f p g a 厂商推出了 支持该厂商硬件的、可以涵盖从源代码编写到最后仿真调试各个阶段的开发环 境,如a l t e r a 的q u a r t u si i 集成开发环境,x i l i n x 公司的i s e 集成开发环境。 f p g a 软件复杂的设置和不同的算法、f p g a 硬件多样的结构和丰富的功能、 各个厂商互不兼容的软硬件等差异,都使如何挑选合适的软硬件用于产品设计成 为f p g a 用户棘手的问题。 f p g a 软硬件性能基准测试的研究 第一章f p g a 软硬件性能基准测试概述 1 1f p g a 软硬件性能基准测试的发展现状 虽然很多公司和机构在f p g a 软硬件性能基准测试( b e n c h m a r k i n g ) 方面都 投入大量的资源,但是,到目前为止,业内还没有一个由官方标准化组织发布基 准测试规范( b e n c h m a r k i n gs p e c i f i c a t i o n ) ,即使是生产厂商,也很少发布测 试规范( t e s ts p e c i f i c a t i o n ) 和基准测试报告。而且,大多数生产厂商的许可 协议禁止获许可者公布任何使用他们的软硬件获得的比较性的基准测试报告h 1 , 这就使得使用f p g a 软硬件的公司或者科研机构更少公布结果和规范了。 p r e p 基准测试规范是最早一个测试规范,由p r e p ( p r o g r a m m a b l e e l e c t r o n i c sp e r f o r m a n c ec o r p o r a t i o n ) 公司提出并负责完善。该公司始建于 1 9 9 1 年,是由a c t e l 、a l t e r a 和x i l i n x 三家公司发起,数十家公司参与的一个 独立公司,主要研究可编程逻辑硬软件,为用户使用可编程逻辑软硬件提供帮助。 表1 - 1p e r p 基准设计集 p r e p 基准设计序号p r e p 基准设计内容 b e n c m 哦r k # 1 数据通道,包括组合逻辑和寄存器 b e n c h m a r k # 2 8 位定时器计数器 b e n c h m a r k # 3 典型有限状态机( 8 个状态) b e n c m 似r k # 4 大型状态机,包含1 6 个状态,4 0 个转换状态 b e n c 姒r k # 5 数学电路单元 b e n c h m a r k # 6 1 6 位累加器 1 6 位二进制计数器,包含同步置位,同步计 b e n c h m a r k # 7 数使能和异步复位 b e n c h v i a r k # 816 位二进制计数器,可分频至6 5 3 5 6 b e n c h m a r k # 9 存储映射器 p e r p 基准测试规范可以用来比较f p g a 硬软件嫡1 ,它的基准设计集 ( b e n c h m a r kd e s i g ns e t ) 是具有一定的代表性,基本上覆盖了各种类型的电路, 而且其规模大小也比较适中,并且能通过重复来很方便地扩大规模。同时,对这 f p g a 软硬件性能基准测试的研究 些设计只规定了电路规范和时序要求,具体采用哪种设计方式则没有规定。f p g a 厂商或用户可以用原理图或不同的硬件描述语言来进行设计,如v e r i l o gh d l 或v h d l 。该测试规范是首先重复或迭代相同的基准设计以充满整个硬件,然后 计算使用了多少个基准设计和所能达到的最小时钟周期,最后用这两个数据比较 不同硬件的容量和速度。这种重复和迭代简单功能的过程被认为是不足的响儿7 】, 因为一些复杂的设计会显著降低硬件的利用率。 由于各个f p g a 厂商的f p g a 硬件的结构各不相同,以致要使用一套公认的基 准设计和测试规范来进行基准测试越来越难,p r e p 公司也已经解散。 目前各个f p g a 厂商多选用一些特定的用户电子设计和一套常用的电子设计 来进行基准测试,并将结果公布。由于用户的电子设计本身涉及到知识产权的问 题而往往不能公开,其测试报告对用户而言是不透明的,也就不具有可比性,很 难被用户接受。 作为f p g a 厂商,目前基准测试的意义更多地是对自己发布的软件的各个版 本之间的质量进行评判。相对于同一批基准设计而言,不同版本的测试报告至少 能反映软件质量的变化趋势,在推动用户升级到新的软件版本时能提供一定的参 考作用。 四大厂商中的a c t e l 厂商的f p g a 硬件是基于非易失性配置技术的,而其他 三家都是基于易失性配置技术的。对于a c t e l 厂商,用和其他厂商相似的某种硬 件产品结合软件进行比较性的基准测试并不是那么紧要。他们将主要精力放在跟 踪自身软硬件代与代之间的发展过程,其基准测试报告体现了产品的升级,且很 少公布基准测试规范。本节主要考察了a l t e r a 、x i l i n x 、l a t t i c e 三家厂商在制 定基准测试方法时的特点。 a l t e r a 厂商提出了一种可以测量和监控他们公司及其竞争公司软硬件关键 性能的方法。这种方法包括一个广泛的和典型的测试环境,一种为不同技术和 i p 核之间差异自动补偿的技术,和一种为获得最优化结果自动生成综合和布局 布线设计约束条件的技术。该方法公平地考虑了他们公司及其竞争公司软硬件的 复杂性和最优化问题,顾及到了很多方面的条件( 特别是最终用户的操作情况) , 是建立在编译了大量的工业基准设计基础上的,强调实验环境的变动和确定实验 结果的趋势。 4 f p g a 软硬件性能基准测试的研究 x i l i n x 厂商也拥有大量的电子设计来评估软硬件,并且尽可能地让基准测 试过程和真实的用户实践保持一致。他们认为约束设计的方法或运行软件的方法 将二到三倍地影响结果。即使是针对逻辑单元的基准测试,无约束地或是不现实 约束地执行设计都是没有意义的。 l a t t i c es e m i c o n d u c t o r 厂商的基准测试主要关注从旧一代到新一代软硬件 的改进。和a l t e r a 公司类似,该公司将综合和布局布线的贡献与硬件的能力隔 离。他们把电子设计分成不同的类别,比如,测量软硬件已知功能性能的详细且 精确的设计,普通的用户定制的在特殊生僻环境下使用的或包含不同结构的设 计。另外,l a t t i c es e m i c o n d u c t o r 厂商非常重视对i p 核的基准测试,而不是 对普通的软硬件结构特征的基准测试。 1 2f p g a 软硬件性能基准测试的目的和意义 评价f p o a 软硬件的一种常用方法是基准测试,然而构造一个对f p g a 软硬件 性能精确合理的基准测试是十分复杂困难的事情,且差的基准测试规范将导致不 确定的甚至是错误的结果。本文尝试为f p g a 软硬件基准测试提出了一个测试规 范,尽可能多地揭示f p g a 软硬件信息。该测试规范不仅可以用于比较f p g a 的软 硬件的性能,而且可以深入观察f p g a 软硬件的特性。 f p g a 软硬件性能基准测试的目的和意义在于: ( 1 ) 用来评价f p g a 软硬件的性能。由于基准测试所用的基准设计具有一定 的代表性,其编译的结果也就能在一定程度上反映该软件的性能哺1 。这样就能避 免由于特意挑选基准设计所造成的测试报告的误导性。 ( 2 ) 用来确定软件在某一类的电子设计中的最佳配置。由于目前软件的参 数选项太多,操作也很复杂,对于某一类的电子设计,基准测试的结果可以展示 如何配置软件从而使生成电路的性能最优。另外,对于f p g a 厂商来说,在给软 件选择缺省的约束条件时,其重要依据之一便是基准测试的报告,这样就使得发 布到市场上的f p g a 软件在大多数情况下具有很好的性能。 ( 3 ) 与各个f p g a 厂商的软硬件进行比较,对厂商的作用是为软硬件产品进 行市场宣传和发现系统的瓶颈,对用户的作用是指导产品的选择。 ( 4 ) 基准测试最具吸引力的特点就是一个好的基准测试规范对于电子设计 领域的技术发展有积极的导向作用,它会引导f p g a 厂商采用新技术改进产品。 f p g a 软硬件性能基准测试的研究 1 3 论文结构 本文前三章介绍f p g a 软硬件性能基准测试发展现状、目的和意义,f p g a 的 软硬件和基准测试技术,第四章分析了影响f p g a 软硬件性能基准测试的因素, 第五章构造f p g a 软硬件性能基准测试的规范,第六章用一个举例说明本基准测 试规范,最后一章总结本文和展望以后的工作。 6 f p g a 软硬件性能基准测试的研究 第二章f p g a 软硬件 2 1 可编程逻辑技术简介 本节在讨论可编程逻辑硬件发展简史的基础上简述目前常用的可编程逻辑 硬件的分类。 2 1 1 可编程逻辑硬件发展简史 随着微电子设计技术与工艺的发展,数字集成电路从电子管、晶体管、中小 规模集成电路、超大规模集成电路逐步发展到今天的a s i c 。a s i c 因其设计周期 长,改版投资大,灵活性差等缺陷制约着它的应用范围。硬件工程师希望有一种 更灵活的设计方法,根据需要,在实验室就能设计、更改大规模数字逻辑,研制 自己的a s i c 并马上投入使用,这是提出可编程逻辑硬件的基本思想嘲。 可编程逻辑硬件随着微电子制造工艺的发展取得了长足的进步,如今已经发 展成为可以完成超大规模的复杂组合逻辑与时序逻辑的现场可编程逻辑硬件 ( f p g a ) 和复杂可编程逻辑硬件( c p l d ) 。随着工艺技术的发展与市场需要,超大 规模、高速、低功耗的新型f p g a c p l d 不断推陈出新,新一代的f p g a 甚至集成 了中央处理器( c p u ) 或数字处理器( d s p ) 内核。 2 1 2 可编程逻辑硬件的分类 目前常用的可编程逻辑硬件主要有现场可编程逻辑阵列( f p g a ) 和复杂可编 程硬件( c p l d ) 两大类。 f p g a 是在c p l d 的基础上发展起来的新型高性能可编程逻辑硬件,它一般采 用基于s r a m 的结构,也有一些专用硬件采用基于f l a s h 或反熔丝( a n t i f u s e ) 结构等。f p g a 的集成度很高,其硬件密度从数万系统门到数千万系统门不等, 可以完成极其复杂的时序与组合逻辑电路功能,适用于高速、高密度的高端数字 逻辑电路设计领域。f p g a 的基本组成部分有可编程输入输出单元、基本可编程 逻辑单元、嵌入式块r a m 、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核。 c p l d ( c o m p l e xp r o g r a m m a b l el o g i cd e v i c e ) ,即复杂可编程逻辑硬件。 c p l d 一般采用e 2 c m o s 工艺,也有少数厂商采用f l a s h 工艺,其基本结构由可 编程i o 单元、基本逻辑单元、布线池和其他辅助功能模块构成。c p l d 可实现 f p g a 软硬件性能慕准测试的研究 的逻辑功能强大,一般可以完成设计中比较复杂、较高速度的逻辑功能,如接口 转换、总线控制等。 2 2 3 可编程逻辑硬件的发展趋势 可编程逻辑技术正处于高速发展的阶段。新型的f p g a c p l d 规模越来越大, 成本越来越低。高性价比使可编程硬件在硬件设计领域扮演着日益重要的角色。 低端c p l d 已经逐步取代了7 4 系列等传统的数字元件,高端的f p g a 也在不断 地夺取a s i c 的市场份额,特别是目前大规模f p g a 多数支持可编程片上系统, 并与c p u 或d s pc o r e 有机结合,使f p g a 已经不仅仅是传统的硬件电路设计 手段,而且正在逐步升华为系统实现工具。 近期可编程逻辑硬件的发展趋势主要表现在:最先进a s i c 生产工艺将被更 广泛的应用于以f p g a 为代表的可编过程逻辑硬件;越来越多的高端f p g a 产品 将包含d s p 或c p u 等处理器内核,从而f p g a 将由传统的硬件设计手段逐步过 渡为系统级设计平台;f p g a 将包含功能越来越丰富的硬核( h a r di pc o r e ) ,与 传统a s i c 进一步融合,并通过结构化a s i c 技术加快占领部分a s i c 市场;低 成本f p g a 的密度越来越高,价格越来越合理,将成为f p g a 发展的中坚力量。 这个四个发展趋势可简称为先进工艺、处理器内核、硬核与结构化a s i c 、低成 本硬件。 2 2f p g a 硬件的基本结构和举例 由于基于f l a s h 或反熔丝结构的f p g a 是不可重复编程的,使用此类硬件的 用户较少,生产此类硬件的厂商现在仅剩a c t e l 一家,所以本文重点介绍基于 s r a m 结构的f p g a 硬件,并以x i l i n x 厂商的s p a r t a n - 3 和a l t e r a 厂商的c y c l o n e i i 为例子。 2 2 1 基于s r a m 的结构 基于s r a m 结构的f p g a 是通过对硬件里的s r a m 存储器配置来实现对硬件的 编程,由s r a m 的特性决定了这类硬件的功能是掉电丢失的,需要每次加电重新 进行配置,因此需要通过加载电缆人工进行配置,或者从p r o m 或闪存等附加的 存储器自动进行配置。s r a m 无限制的配置次数是其最大的特点,也是得到广泛 应用的主要原因。生产基于s r a m 结构f p g a 硬件的有a l t e r a 、x i l i n x 和l a t t i c e 8 f p g a 软硬件性能基准测试的研究 三家厂商。 实现s r a m 存储器的方法是查找表( l o o k u p t a b l e ) ,简称为l u t 。目前f p g a 中多使用4 输入的l u t ,每一个l u t 可以看成一个有4 位地址线的1 6 x l 的r a m n 引。 当用户通过原理图或h d l 语言描述了一个逻辑电路以后,f p g a 开发软件会自动 计算逻辑电路的所有可能的结果,并把结果事先写入r a m ,这样,每输入一个信 号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出 即可。下面是一个4 输入与门的例子。 实际逻辑电路l i l t 的实现方式 地址线 a i) i 毫 输出 ;量 p 一砌 b 1 6 x ir 胁 c d咖) 气b ,c ,d 输入 逻辑输出地址r 栅中存储的内容 0 0 0 000 0 0 0 0 0 0 0 l00 0 0 l0 00 | 1 1 1 1 1 1 1 1 1l i 图2 - 1 实际逻辑电路和l u t 的差别 2 2 2f p g a 的基本结构 下面分别是c y c l o n ei i 和s p a r t a n - 3 结构原理图引。 f p g a 软硬件性能基准测试的研究 e m b e d d e d m u l t i p l i e r s m 4 kb l o c k s :l 霉嘲l o e s曩誓- 强 l o q i cl o gt cl o g i cl o g i c l o e sl o e s a r r a ya r r a y a t i a ya r r a y l 誓曩鞠 l o e s誓一 搿翰嘲 翻髓强固 图2 - 2c y c l o n ei i 结构原理图 m - 口口口口口口口 口口口口口口口 口口口口口口口 。,口口口口口口口 “,口口口口口口口 | 口口口口口口口 。:口口口口口口口 ? 口口口口口口口 m 4 kb l o c k s 图2 3s p a r t a n 一3 结构原理图 简化的f p g a 硬件基本由六部分组成,分别是基本可编程逻辑单元、可编程 输入输出单元、嵌入式可编程的块r a m 、布线资源、底层嵌入功能单元、内嵌 专用硬核。这六部分通称f p g a 资源,每种资源的基本概念介绍如下: 基本可编程逻辑单元资源 1 0 口口口口口口口口口口口口口口口口 f p g a 软硬件性能基准测试的研究 基本可编程逻辑单元,c y c l o n ei i 中的l e s ( l o g i ce l e m e n t s ) 、s p a r t a n 一3 中的c l b s ( c o m b i n a t i o n a ll o g i cb l o c k s ) ,是可编程逻辑的主体,可灵活改变 其内部连接与配置,完成不同的逻辑功能,通常由l u t 和寄存器组成。它们在硬 件中排列成阵列,是f p g a 的基本组成和核心部分,几乎所有的逻辑功能和时序 都是由它们完成的。下图是c y c l o n ei i 中可编程逻辑单元的结构图。 | a b d r l i 麓c l f 2 c h i p - w i d e b e s e t ( o e v 。鼻l r n ) r e 。i 熟卦c t l e l n r o u t i n gf r o m p r e v i o u sl e 图2 4c y c l o n ei i 中可编程逻辑单元的结构图 可编程输入输出单元资源 可编程输入输出单元,c y c l o n ei i 中的l o e s ( i n p u t o u t p u te l e m e n t s ) 、 s p a r t a n 一3 中的i o b s ( i n p u t o u t p u tb l o c k s ) ,分布在f p g a 硬件四周的引脚上, 是与外界电路连通的接口部分,完成电气特性下对输入输出信号的驱动和匹配要 求。为了使f p g a 有更灵活的应用,目前大多数i o 单元被设计为可编程式,即 通过软件的灵活设置,可以匹配不同的电气标准与i o 物理特性,可以调整匹配 阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等。 嵌入式可编程的块r a m 资源 c y c l o n ei i 中的m 4 kb l o c k s 、s p a r t a n 一3 中的b l o c kr a m ,由于用l u t 配置 成r a m 将需要消耗大量的l u t ,且这样的r a m 存取速度也不高,所以目前大多数 f p g a 都内嵌了可编程的块r a m ,用来实现硬件内部的数据随机存取,这样就大大 徽勰b 逸 f p g a 软硬件性能基准测试的研究 地拓展了应用范围和使用灵活性。它们可灵活的配置为单口r a m 、双口r a m 、伪 双口r a m 和f i f o 等常用结构。 布线资源 布线资源环绕在可编程逻辑单元、块r a m 等f p g a 内部单元的周围,通过配 置,各个可编程逻辑块和块r a m 等构成了一个高速动作的统一整体。连线的长度 和工艺决定着信号在连线上的驱动能力和传输速度。实现过程中,设计者一般不 需要直接选择布线资源,而是由布局布线器自动根据输入的逻辑网表的拓扑结构 和约束条件选择可用的布线资源连通所用的底层单元模块,所以设计者常常忽略 布线资源。其实布线资源的优化与使用和设计的实现结果( 包含速度和资源两个 方面) 有直接关系。 底层嵌入功能单元资源 底层嵌入功能单元指那些通用度较高的嵌入功能模块,比如c y c l o n ei i 中 的p l l ( p h a s el o c k e dl o o p ) 和e m b e d d e dm u l t i p l i e r s 、s p a r t a n 3 中的d c m ( d i g i t a lc l o c km a n a g e r ) 和m u l t i p l i e r 。f p g a 中甚至可以嵌入d s p 块,c p u 硬核,如x i l i n x 公司的v i r t e xi i 系列就嵌入了p o w e rp c4 5 0 处理器硬核。随 着f p g a 的发展,这些模块被越来越多地嵌入到f p g a 硬件的内部,以满足不同场 合的需求。 内嵌专用硬核资源 内嵌专用硬核是相对于前面的“底层嵌入功能单元”而言,不为大多数f p g a 所包含的硬核。比如为了提高f p g a 性能,适用高速通信总线与接口标准,a l t e r a 的s t r a t i x - i ig x 系列的硬件内部集成了3 1 8 7 5 g b i t s 的串并收发器s e r d e s , x i li n x 的对应系列是v i r t e x 一4f x 。 2 2 3i p 的概念 随着数字系统设计越来越复杂,将系统中的每个模块都从头开始设计是一件 十分困难的事,而正会大大延长设计周期,甚至增加系统的不稳定因素。 i p ( i n t e l l e c t u a lp r o p e r t y ) 的出现使得设计过程变得十分简单,用户甚至只需 要将不同的模块连接起来,就可以实现一个完整的系统。这样对减少产品的上市 时间,赚取早期利润非常有利。 i p 就是常说的知识产权。美国d a t a q u e s t 咨询公司将半导体产业的i p 定义 f p g a 软硬件性能基准测试的研究 为用于a s i c 、a s s p 、p l d 等芯片当中的,并且是预先设计好的电路功能模块。 在可编程逻辑硬件领域,i p 核是指将一些在数字电路今常用但比较复杂的 功能块,如f i r 滤波器、s d r a m 控制器、p c i 接口等,设计成参数可修改的模块, 让其他用户可以直接调用这些模块。 随着c p l d f p g a 的规模越来越大,设计越来越复杂,使用i p 核是一个发展 趋势。用户可以在自己的f p g a 设计中使用这些经过严格测试和优化过的模块, 减少设计和调试时间,降低开发成本,提高开发效率。 根据实现的不同,i p 可以分为软i p 、固i p 和硬i p 。 软l p 用h d l 硬件描述语言的形式描述功能块的行为,但是并不涉及用 什么电路和电路元件实现这些行为。软i p 的最终产品基本上与通常的 应用软件类似,开发过程与应用软件的开发过程类似,只是所需的开发 软、硬件环境要求较高,尤其是e d a 工具软件价格很昂贵。软i p 的设 计周期短、设计投入少,由于不涉及物理实现,为后续设计留有很大的 发挥空间,增大了1 p 的灵活性和适应性。软i p 的缺点是设计中会有一 定比例的后续工序无法适应软工p 设计,从而造成一定程度的软i p 修正。 固i p 是完成了综合的功能块,有较大的设计深度,以网表的形式提交 客户使用。如果客户与固i p 使用同一个生产线的单元库,i p 的成功率 会比较高。 硬i p 提供设计的最终阶段产品掩膜。随着设计深度的提高,后续 工序所需要做的事情就越少,当然,灵活性也就越低。 2 3f p g a 的开发软件和设计流程 开发f p g a 需要了解两个部分,一个是f p g a 硬件,另外一个是f p g a 开发 软件。通常比较大的完整的项目应该采用层次化的描述方法:分成几个较大的功 能模块,定义好各功能模块之间的接口,然后各个模块再细分去具体实现,这也 就是自顶向下的设计方法。 目前,这种高层次的方法已被广泛采用。高层次设计只是定义系统的行为特 性,可以不涉及实现工艺,利用综合优化工具将高层次描述转换成针对某种工艺 优化的网络表,使工艺转化变得轻而易举。 2 3 1f p g a 设计软件 f p g a 软硬件性能基准测试的研究 o u a r t u si i 和i s e 软件分别是a l t e r a 和x i l i n x 厂商的综合性集成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论