已阅读5页,还剩56页未读, 继续免费阅读
(计算机应用技术专业论文)基于fpga的图像处理算法研究及硬件设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大翘士学位论文 摘要 随着图像分辨率的越来越高。软件实现的图像处理无法满足实时性的需求;同时 f p g a 等可编程器件的快速发展使得硬件实现图像处理变得可行。如今基于f p g a 的图 像处理研究成为了国内外的一个热门领域。 本文在f p g a 平台上,用v e r i i o g h d l 实现了一个研究图像处理算法的可重复配置 的硬件模块架构。架构包括p c 机预处理和通信软件,控制模块,计算单元,存储器模 块和通信适配模块五个部分。其中的计算模块负责具体算法的实现,根据不同的图像处 理算法可以独立实现。架构为计算模块实现了个可添加、移出接口,不同的算法设计 只要符合该接口就可以方便的加入到模块架构中来进行调试和运行。 在硬件架构的基磴上本文实现了捧序滤波,中值滤波,卷积运算及商斯滤波,形态 学算子运算等经典的图像处理算法。讨论了f p g a 的图像处理算法的设计方法及优化策 略,通过性能分析,f p g a 实现图像处理在时间上比软件处理有t * i 大的提高;通过结 果的比较,发现f p g a 的处理结果达到了软件处理几乎同等的效果水平。最后本文在实 现较大图片处理和图像处理窗口的大小可配置性方面做了一定程度的讨论和改进,提高 了算法的可用性,同时为进一步的研究提供了更加便利的平台。 整个设计都是在i s e 8 2 和m o d e l s i m 第三方仿真软件环境下开发的,在x i l i n x 的 s p a r t a a - 3 ex c 3 s 5 0 0 e 硬件平台上实现在软件仿真过程中科用了i s e 8 2 自带仿真工具 和m o d e l s i m 结合使用。 本课题为制造f p g a 的专用图像处理芯片做了有益的探索性研究,为实现f p g a 为 核心处理芯片的实时图像处理系统有着积极的作用, 关键词:f p g a ;v e r i l o gb d l ;图像处理 大连理工大学硕士学位论文 r e s e a r c ho fi m a g ep r o c e s s i n ga l g o r i t h m sa n dh a r d w a r ed e s i g nb a s e do n f p g a a b s t r a c t a st h ei m a g es i z eb e c o m i n gl a r g e ra n dl a r g e r , i m a g ep r o c e s s i n gw i t hs o f t w a r ec 锄tm e e t w i t ht h er e a l - t i m ed e m a n do fi m a g ep r o c e s s i n gs y s t e m ;w i mt h eg r o a td e v d o p m e n to ft h e p r o g r a m m a b l ec h i p ,s u c ha sf p g a s ,i m a g e - p r o c e s s i n g 诵t hh a r d w a r eb e c o m e sf e a s i b l e c u r r e n t l y , t h ei m a g e - p r o c e s s i n gb a s e d o nf p g ah a r d w a r e sah o tr e s e a r c hf i e l d t h i st h e s i sb u i l tar e c o n f i g u r a b l ea r c h i t e c t u r et h a tc o n s i s t e do fi m a g e - p r e p r o c c s s i n ga n d c o m m u n i c a t i o ns o f h j v a r e0 1 1p c ,c o n t r o la u t o m a t i o n , c o m p u t a t i o nb l o c k ,r a ma n d c o m m u n i c a t i o na d a p t e rf o ri m a g e - p r o c e s s i n gr e s e a r c hb a s e do i lf p g ah a r d w a r eu s i n g v e r i l o g h d ll a n g u a g e 1 1 kc o m p u t a t i o nb l o c k w h i c hw a si m p l e m e n t e di n d e p e n d e n t l yf o r e v e r ya l g o r i t h m ,t o o kc h a r g eo ft h ec o m p u t a t i o no ft h es p e c i f i e da l g o r i t h m ap o r t a b l e i n t e r f a c ei nt h er e c o n f i g u r a b l ea r c h i t e c t u r ew a sd e s i g n e df o rt h ec o m p u t a t i o nb l o c k , w i m w h i c ha n yc o m p u t a t i o nu n i to fa n ya l g o r i t h mt h a tw a sc o m p a t i b l ew i t l it h ei n t e r f a c ec o u l db e a d d e di no rr e m o v e do u to f t h ea r c h i t e c t u r ef o rd e b u g g i n go rr u n n i n g b a s e do nt h ea r c h i t e c t u r e ,s e v e r a lt y p i c a li m a g ep r o c e s s i n ga l g o r i t h m s ,w h i c hi n d u d a d o r d e rf i l t e r , m e d i a nf i l t e r , c o n v o l u t i o na n dg a u s sf i l t e r , m o r p h o l o g i c a lo p e r a t o re t c ,w e r e i m p l e m e n t e di nv e r i l o g h d l t h e nt h ef p g a - b a s e di m a g ep r o c e s s i n gm e t h o d sa n dt h e o p t i m i z e ds t r a t e g i 懿f o rt h eh a r d w a r e 司e s i g aa l g o r i t h mw o r ed i s c u s s e d w i t ht h ep e r f o r m a n c e a n a l y z i n g , i tw a sf o u n dt h a tt h et i m e c o n s u m i n go fh a r d w a r ep r o c e s s i n gw a sg r e a t l yr e d u c e d t h a nt h a to fs o t 6 0 a r ep r o c e s s i n g ;c o m p a r i s o nb e t w 嘲h a r d w a r ea n ds o f t w a r ep r o c e s s i n g s h o w e dt h a tb o t ho ft h er e s u l t sw e r ei d e n t i c a l i nt h el a s ts e c t i o n , t e c h n i q u e sf o rl a r g ei m a g e p r o c e s s i n ga n da r b i t r a r y - s i z e w i n d o wd e s i g nw e r ed e v e l o p e d ,a n dt h e i ro p t i m i z a t i o n s t t a t e g i e sw e r es h o w n n i ef l l l ld e s i g n so fa l lm o d u l e sw 四es y n t h e s i z e da n ds i m u l a t e do rx i l i n xi s e 8 2a n d m o d e l s i m , a n dw o r ei m p l e m e n t e do nt h ex i l i n xs p a r t a n - 3 ex c 3 s 5 0 0h a l d w a r ep l a t f o r m 1 r 1 1 i st h e s i si n v e s t i g a t e dt h ed e s i g nt e c h n o l o g i e so fs p e c i f i cc h i pf o ri m a g ep r o c e s s i n g u s i n gf p g aa n d 舯o h d e dp r e l i m i n a r ys t u d yf o rt h er e a l - t i m ei m a g ep r o c e s s i n gs y s t e mb a s e d 0 n f p g a k e yw o r d s :f p g a ;v e r i l o g h d l ;i m a g ep r o c e s s i n g 独创性说明 作者郑重声明:本硕士学位论文是我个人在导师指导下进行的研究工 作及取得研究成果尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得大连理 工大学或者其他单位的学位或证书所使用过的材料与我一同工作的同志 对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意 作者签名:么杰勉日期:塑! :主 大连理工大学硕 j 研究生学位沦文 大连理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连理工大学硕士、博士学位 论文版权使用规定”,同意大连理工大学保留并向国家有关部门或机构送 交学位论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连理 工大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也 可采用影印、缩印或扫描等复制手段保存和汇编学位论文。 储虢鱼垄筮 锄繇塑叠 盟年上月卫闩 大连理工大学硕士学位论文 1 绪论 数字图像处理技术是目前国内外研究和开发的一个热点【”,应用也极其广泛,在通 信科学、生产与管理、多媒体技术、高清晰度电视、医用图像处理、商品电子化、目标 跟踪等领域起着十分重要的作用【2 】。 同时近年来,现场可编程门阵列( f p g a ) 作为专用集成电路( a s c ) 领域中的一种半 定制电路而出现,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的 缺点。因此f p g a 成为可重复配置电路模块的最适宜的开发方式。f p g a 的发展遵循摩 尔定律,每1 5 年速度翻倍,时钟频率1 2 倍。f p g a 技术和性能已经达到可以用来实 现图像处理的算法,其独特架构使得该技术可以用于几乎所有图像处理的应用当中。 随着图像分辨率的越来越大,单纯使用软件来实现图像处理交得越来越困难,甚至 力不从心。基于f p g a 的硬件处理方法可以使得图像处理速度大大提高,这己成为目前 国内外研究的一个热门领域 1 1图像处理算法的发展现状 对于图像算法的处理可以用软件或者硬件来实现吼通常来说,出于简便和成本考 虑,一般利用软件来实现大部分操作,除非需要更高的速度以满足性能指标。软件可以 优化,但有时是不够的。如果需要更高的速度,利用硬件来处理算法是一个不错的选择。 图像处理的硬件设计有两种技术方案,一是全定制的专用集成电路( a s i c ) ,二是半定制 的数字信号处理器( d s p ) 以及现场可编程门阵列( f p g a ) ,它们在设计中的运用都可以 大大加快对信息的处理速度。 一般来说,图像处理速度的提高,主要有两种手段,一是改变图像处理算法,使算 法更简单。但最为耗时的图像低级处理算法己相当成熟,其运算的复杂性也相对固定, 所以改变算法同时又能够保证精度是非常困难的。二是改变实现算法的手段。目前,实 现图像处理算法的手段针对不同的应用需求主要有以下几种【4 】。一、通用计算机;二、 并行处理;三、专用集成电路( a s i c ) ;四、数字信号处理器( d s p ) ;五、现场可编程门 阵列( f p g a ) 。 第一是通用计算机。通用计算机是基于冯诺依曼结构的,通过高级语言( c ,e h 等) 编写程序代码,经过编译后转换成指令代码,每一条指令代码又包括许多条微指令, 每条微指令都需要数个机器周期。虽然现在通用计算机技术发展非常快,但通用计算机 属于标准串行机,大部分工作是存储器和a l u 之间交换数据,整个过程是单指令单数 据的串行处理过程,在很多情况下该系统结构上的局限性使它对低级图像处理不能够满 基于f l e a 的图像处理算法研究及硬件设计 足实时高速的要求。因此,基于通用计算机,采用高级语言编程,它适合各种图像处理 算法的验证,适用于一些实时性要求不高的场合。 第二是并行处理机。在许多场合下,单个c p u 不能够实现实时数据处理的时候, 采用多个c p u 同时工作的并行处理为解决此问题提供了可能。各国学者在这方面作了 大量的工作,并己经研究出多种并行结构和编程语言,它克服了单个处理器串行工作的 局限性,提高了系统的性能。虽然对并行处理进行了大量的研究,但这个领域仍不成熟。 处理单元负载不均衡,并行算法编程困难,理论上并行处理所应达到的性能和实际性能 相比有较大差距。 第三是专用集成电路。专用集成电路【5 ( a s i c ) 是针对于某一固定算法或应用而专门 设计的硬件芯片。许多图像处理算法采用通用处理器和d s p 来实现难以满足速度需要, 而必须采用a s i c 来实现,在各种算法实现方案中使用a s i c 来实现是最快的。但是, a s i c 在实际应用中也有其缺点:a s i c 从设计到应用需要较长的时间周期;a s i c 因为 属于专用硬件芯片,所以需求数量较少,成本也就非常高:由于a s i c 是为专用目的设 计的,当设计成型并且流片成功就不能改动,所以在设计中当算法因故需要改变时就要 设计者重新设计芯片和硬件电路;当a s i c 里存在硬件设计的错误时,并且在投入生产 前未能发现的话,唯一解决的办法是把产品回收,而这样做的后果往往是芯片商付出沉 重的经济代价。a s i c 极低灵活度往往使其局限于非常有限的应用中并容易产生性能瓶 颈,因此由a s i c 构建的图像处理系统,缺乏灵活性。 第四是数字信号处理器。数字信号处理器1 6 ( d s p ) ,是专门为快速实现各种数字信 号处理算法而设计的、具有特殊结构的微处理器,通常使用c 语言进行编程,其处理速 度可达到2 0 0 0 m i p s ,比最快的c p u 还快1 0 5 0 倍。数字信号处理器的内部采用专用硬 件实现一些数字信号处理常用的运算,所以它进行这些运算速度非常快如乘加( m a c ) 运算只需要一个时钟周期。 但是从根本上来说,d s p 只是对某些固定的运算提供硬件优化,其体系仍是串行指 令执行系统,并且这些固定优化运算并不能够满足众多算法的需要,这使得它的使用受 到限制。v i s i c o m 公司的一份技术报告指出在中值滤波实现中,d s p 处理器需要6 7 个 周期完成该算法,采用f p g a 器件只需要运行在2 5 m h z ,因为f p g a 可并行实现该功能, 而d s p 要达到同样的性能则需要运行在超过1 5 g h z 频率。在这一特定的应用中,f p g a 解决方案比一个1 0 0 m h z 的d s p 处理器要强大约1 7 倍。 最后是现场可编程门阵列。现场可编程门阵列【1 7 】( f p g a ) 器件是当今运用极为广泛 的可编程逻辑器件,也被称为可编程a s i c 。f p g a 器件在结构上具有逻辑功能块排列, 可编程的内部连线连接这些功能模块来实现一定的逻辑功能。f p g a 器件的功能由逻辑 一2 一 大连理工大学硕士学位论文 结构的配置数据决定。工作时,这些配置数据存放在片内的$ r a m 。使用s r a m 的f p g a 器件,在工作前需要从芯片外部加载配置数据,配置数据可以存储在片外的e p r n m 或 其他存储体上,设计者可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场编 程。利用它用户不仅可以方便地设计出所需的硬件逻辑,而且可以进行静态重复编程和 动态在系统重配置,使系统的硬件功能可以像软件一样编程来修改,从而可以实时地进 行灵活而方便的更新和开发,大大提高了系统设计的灵活性和通用性。与此同时,f p g a 自身也在迅速发展,其集成度、工作速度不断提高,包含的资源越来越丰富,可实现的 功能也越来越强。 f p g a 能在设计上在实现硬件并行和流水线( p i p e l i n e ) 技术【耵,而这些都不能在d s p 上实现。因此,对于实时图像处理而言,与本质上仍然是依靠串行执行指令来完成相应 图像处理算法的d s p 系统相比,f p ( 3 a 有很强的灵活性,可以根据需要进行重构配置, 有较强的通用性,适于模块化设计;同时其开发周期短,系统易于维护和扩展,适合实 时的信号处理,能够大大地提高了图像数据的处理速度,达到了系统的实时性要求,因 此采用f p g a 器件是个不错的选择。 1 2f p g a 的发展现状 前年是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 ) 发明2 0 周年,今年是晶体发明6 0 周集成电路平面工艺发明5 0 周年。在这几十年,尤其是 f p g a 发明的二十几年内,集成电路产业得到了快速的发展。2 0 0 6 年x i l i n x 和a l t e r a 公司 采用6 5 r i m 技术分别推出了最先进的f f g a 系列,v i r t o x 5 系列和s t r a t i x 3 系列。f p g a 发展 主要有以下几个方向。 首先规模越来越大,集成度越来越高。早期的f p g a 规模只有几千门,2 0 0 6 年5 月份, x i l i n x 公司推出世界上第一个6 5 r i mf p g a 系列v i r t e x 5 。基于6 5 衄三极栅氧化层技术、 1 1 层铜布工艺、低k 材料、新型镍硅自对准技术、新型e x p r e s s f a b d c 技术和a s m b l 架构, 可以提供3 3 0 ,0 0 0 逻辑单元( 可编程逻辑门约6 6 0 万门) 和1 2 0 0 卟 用户f o 。 其次速度不断提高,性能不断提升。x i l i n x 2 0 0 6 年推出的v i r t e x 5 l x 性能和利用率很 高,同时功耗大幅度降低。v i r t e x 5l xf p ( 3 a 比一代9 0 n mf p g a 提供高出3 0 的性能, 少占用4 5 的硅片面积,以及提供比上一代9 0 m nf p g a 低3 5 的业界最低动态功耗。 v i r t e x 5 l x 系列还通过性能优化的口块拥有了5 5 0 m h z 时钟频率。高性能s d e c t i o 特性提 供了到6 6 7 m b p sd d r 2s d r a m 和1 2 0 0 m b p sq d r i is r a m 等外部存储器的最快连接。 a l t e r a 公司于2 0 0 6 年1 1 月份推出s t r a t i xi i i 的6 5 a m f p g a 系列,比前一代器件快2 5 ,密 基于f i r 3 a 的图像处理算法研究及硬件设计 度是前一代f p g a 的2 倍,功耗降低了5 0 ,支持四十多个f o 接口标准,具有业界一流 的性能、灵活性和信号完整性。 第= i p 库的利用。当前具有口内核的系统级f p g a 的开发主要体现在两个方面:一 方面是f p g a 厂商将p 硬核( 指完成版图设计的功能单元模块) 嵌入到f p g a 器件中;另一 方面是大力扩充优化的口软核( 指利用h d l 语言设计并经过综合验证的功能单元模块) , 用户可以直接利用这些预定义的、经过测试和验证的口核资源,有效地完成复杂的片上 系统设计。 第四价格越来越低。f p g a 市场的激烈竞争推动了价格的不断下调。基于s r a m 的 f p g a 的价格下降很快,每1 万门的单价在2 0 0 4 - 年底降至1 美元,到2 0 0 5 年降至0 5 美元。 a l t e r a 公司于2 0 0 5 年第二季度开始批量生产的低端f p g ac y c l o n e l i ,其约3 3 万门的产品 将以2 2 美元的价格供货。相当于每一万门的单价为0 6 5 美元左右。 第五向可编程系统芯片( s o p c ) 方向发展。可编程系统级芯片( s o p c ) 具有a s i c 的高 集成度、低功耗、小尺寸、低成本的优点,同时具有f p g a 的低风险、灵活和快速上市 的优点。a l t e m 推出的支持新款c y c l o n ei if p g a 系列的n i o si i 嵌入式处理器,允许设计 者在很短的时间内构建一个完整的可编程系统芯片,风险和成本比中小规模的a s i c j 、。 实现p s o c 主要有两种途径,一种是在f p g a 中嵌入专用功能的口核,实现s o c 的功能,另 一种是将可编程逻辑口核嵌入到s o c 中。 1 3 基于f p g a 的图像处理技术 图像处理系统的结构受多方面因素影响,特别是c p u 、计算机总线、操作系统、网 络数据库和集成电路水平的影响。8 0 年代开始出现以图像帧存为中心的图像处理结构, 随着新型p c i 总线的问世,9 0 年代出现了以计算机内存为中心的图像处理系统,为了 提高速度,又增加一些硬件处理。硬件处理的功能包括卷积、图像分割和灰度变换等。 f p g a 用作图像处理主要有两种方式,一是用这图像协处理器,一种是单独作为图 像视频的处理器。 a t h a n a s 和s i l v e r m a n 在他们开发的系统p l a d o 中引入了一个可重复配置的平台作 为其通用微处理器的协处理器【9 】。p l a d o 是一个软硬件平台协作的原型系统,运行在 一个特定微处理器上的软件负责分析和分离出实时性强的运算,并将这部分运算转移到 可配置算法的协处理器上,这个可重复配置的协处理器就是用p f g a 开发的。 l a z a r u s 和m e y e r 使用f p g a 开发了一个更加方便雕j - - 重复配置的协处理器【l 川,用 于满足他们的设计的雷达的数字信号处理的实时性需求。他们建立了一个优化了的滤波 算法类库,可以供各种信号处理需求使用。 一4 一 大连理工大学硕士学位论文 c h a n 等人使用f p g a 和d s p 协同工作组成了一个实时图像处理的系统【i l 】。d s p 负 责所有的高级算术操作,f p g a 则主要负责位数较低的运算和字节级运算。 a n t h o n ye d w a r dn e l s o n 在他的硕士论文中研究了用f p g a 实现图像处理算法【l 朋。 a n t h o n ye d w a r dn e l s o n 实现了排序滤波,卷积和形态学算子的f p g a 的硬件电路的设 计,并在x i l i n x 和a l t e r a 两个公司平台上实现了算法的不同版本。a n t h o n y e d w a r d n e l s o n 在关于算法的硬件实现时仅仅考虑了算法的可用性,并没有对硬件算法进行优化和深层 次的挖掘f p g a 的并行潜力。 南昌信息工程学院的付昱强在其硕士论文中研究了f p g a 实现图像处理算法的电 路设计方法【l3 1 。付昱强硕士对几种经典的图像处理算法,如排序滤波,中值滤波,形态 学算子,卷积运算和高斯滤波等进行了研究,设计出了其算法的电路实现,并在一定程 度上对算法的f p g a 实现进行了优化。但是付昱强硕士的工作主要是在软件仿真的层次 上完成的,他的工作并没有真正的实现硬件的运行处理。他在卷积运算和高斯滤波的算 法优化中,没有最大限度的挖掘出f p g a 的并行能力。本文将在他们工作的基础上实现 算法的进一步优化,并将算法在真正的f p g a 硬件平台上运行,并将硬件的处理结果与 软件处理做以比较;同时本文根据f p g a 的本身特点对算法进行了深层次优化,力求最 大限度的挖掘出f p g a 的并行能力。 1 4 本文主要内容 本文主要致力于说明f p g a 上图像处理算法的实现方法及其优化过程。首先本文 实现了一个图像算法研究的硬件平台模块架构,然后再次基础上研究了几种经典图像算 法的硬件实现,通过这个过程来探讨图像算法的f p g a 实现一般方法。本文实现的图像 算法包括排序滤波,中值滤波,卷积运算及高斯滤波,形态学算子等,对传统算法根据 f p g a 的特点所进行的优化,使得系统处理速度有了大大提高。最后本文在大图片分块 处理和算法窗口可配置化方面做了一定讨论,使得算法具有了更大的灵活性和可用性。 本文的剩下部分章节安排如下: 第l 章介绍了f p g a 的设计方法和设计流程。 第2 章介绍基于s p a r t a n - 3 e 的f p g a 图像算法研究平台及其模块架构。 第3 章介绍几种经典图像算法的硬件电路实现,并对算法优化方面做了一定探讨。 第4 章主要讨论了大图片处理方法和滑动窗口大小的可配置算法。 最后结论总结了本文的研究成果,并对下一步工作做了一定展望。 一5 一 基于f p g a 的图像处理算法研究及硬件设计 2f p g a 的设计方法 2 1 硬件描述语言 2 1 1 硬件描述语言简介 硬件描述语言h d l ( h a r d w a r ed e s c r i p t i o nl a n g u a g e ) 是一种用形式化方法来描述数字 电路和系统的语言。数字电路系统的设计者利用这种语言可以从上层到下层( 从抽象到 具体) ,逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。 然后利用电子设计自动化工具逐层进行仿真验证,再把其中需要变为具体物理电路的模 块经由自动综合工具转换到门级电路网表,最后再用专用集成电路或现场可编程门阵列 自动布局布线工具,把网表转换成具体的电路布线结构【1 4 l 硬件描述语言发展至今己有 2 0 多年的历史,并成功地应用于设计的各个阶段建模、仿真、验证和综合等。到2 0 世 纪8 0 年代,已出现了上百种硬件描述语言,它们对设计自动化曾起到了极大的促进和 推动作用。到2 0 世纪8 0 年代后期,硬件描述语言向着标准化的方向发展。最终,v h d l 和v e r i l o gh d l 语言适应了这种趋势的要求,先后成为i e e e 标准。 2 1 2 v e r i o gi - i d l 语言简介 v e r i l o gh d l 是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计 层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子 数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。 v e r i l o gh d l 语言具有下述描述能力:设计的行为特性、设计的数据流特性、设计 的结构组成以及包含响应监控和设计验证方面的时延和波形产生机制。所有这些都使用 同一种建模语言。此外,v e r i l o gh d l 语言提供了编程语言接口,通过该接口可以在模 拟、验证期间从设计外部访问设计,包括模拟的具体控制和运行 2 1 3v h d l 语言简介 v h d l 诞生于1 9 8 2 年【1 5 i 。1 9 8 7 年底,v h d l 被i e e e 和美国国防部确认为标准硬 件描述语言。 v h d l 主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件 特征的语句外,v h d l 的语言形式和描述风格与句法是十分类似于一般的计算机高级语 言。v h d l 的程序结构特点是将一项工程设计,或称设计实体分成外部和内部,既涉及 实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开 6 一 大连理工大学硕士学位论文 发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念 是v h d l 系统设计的基本点。 表2 1 比较了v h d l 和v e r i l o gh d l 两种硬件描述语言,本文选择了v e r i l o gh d l 语言作为硬目的开发语言。 表2 1v e r i l o g t l d l 和v h d l 的比较 t a b 2 1 c o m p a r i s o no f v e r i l o gh d l v h d l 2 2f p o a 的开发平台 2 2 1 f p e , a 的软件平台 现代电子设计技术的核心已日趋转向基于计算机的电子设计自动化技术。即 e d a ( e l e c t r o n i cd e s i g na u t o m a t i o n ) 技术。e d a 技术就是依赖功能强大的计算机,在e d a 工具软件平台上,对以硬件描述语言为系统逻辑描述手段完成的设计文件,自动地完成 逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合以及逻辑优化和仿真测试,直至 实现既定的电子线路系统功能。e d a 技术使得设计者的工作仅限于利用软件的方式j 即利用硬件描述语言和e d a 软件来完成对系统硬件功能的实现,这是电子设计技术的 一个巨大进步o j 。 i s e 8 2 是x i l i n x 提供的f p g a c p l d 开发集成环境,它界面友好,使用便捷,在其 上可以完成f p g a 设计的所有流程,它提供了一种与结构无关的设计环境,使设计者能 方便地进行设计输入,快速处理和器件编程。 i s e 8 2 提供了完整的多平台设计环境,能满足各种特定设计的需要,也是单芯片可 编程系统( s o p c ) 设计的综合性环境和s o p c 开发的基本设计工具,并为x i l i n xd s p 开 发包进行系统模型设计提供了集成综合环境。 i s e 8 2 具有模块化的编译器。编译器包括的功能模块主要有综合器( s y n t h e s i s ) ,它 将设计输入综合成门级网表:适配器( f i n e r ) ,它将每个逻辑功能分配给最佳逻辑单元位 置,进行布线和时序分析,并选定相应的互连路径和引脚分配;时序分析器( t i m i n g a n a l y z e r ) ,分析设计中的所有逻辑,报告最大时钟频率( 6 缸) ,建立时间( t s u ) ,保持时 间( 等设计参数,并有助于指导适配器( f i t t e r ) 达到设计中的时序要求;汇编器 基于f p g a 的图像处理算法研究及硬件设计 ( a s s e m b l e r ) ,产生编程文件,最后由编程器( p r o g m n m e r ) 通过f l a g 口下载至芯片内。 i s e 8 2 中还有一些辅助功能模块,像r t l 查看器( r t lv i e w e r ) ,可以用图形方式查看 r t l 的连接关系;分配编辑器( a s s i g n m e n te d i t o r ) ,可以完成管脚的分配工作这些功 能模块为高效完成f p 蝴p l d 设计任务提供了强有力的支持。 m o d e l s i m 最大的特点是其强大的调试功能,先进的数据流窗口,可以迅速追踪到 产生不定或错误状态的原因;性能分析工具帮助分析性能瓶颈,加速仿真代码覆盖率检 查能确保测试的完备;多种模式的波形比较功能,可以为用户提供良好的人机交互接口; 先进的s i g n a l s p y 功能,可以方便地仿真v h d l ,v e r i l o g 或者二者混合设计的底层信号; 支持加密口;可以实现与m a t l a b 的s i m u l i n k 的联合仿真 i s e 8 2 为m o d e l s i m 提供了第三方的插件接口。 2 2 2f p g 的硬件平台 x i n l i x 是全球著名的芯片生产商。赛灵思公司推出s p a r t a n - 3 ef p g a 系列,其第四 个采用先进的9 0 r i m 制造工艺技术生产的系列产品。s p a r t a n - 3 e 系列的器件密度范围为 1 0 万到1 6 0 万系统门。通过以超低价位提供范围广泛的平台级特性,s p a r t a n - 3 e 系列致 力于降低器件成本和总体系统成本。例如,s p a r t a n - 3 e 系列能够以标准产品价格实现微 处理器、微控制器和数字信号处理器功能,包括实际成本为o 4 8 美元的3 2 位m i c r o b l a z e t m 嵌入式处理器、不到0 1 0 美元的8 位p i c o b l a z e 嵌入式处理器以及不到l 美元的 d s p 性价比。s p a r t a n 3 e 器件还包括一系列针对消费电子市场的特色功能,例如支持1 8 种通用f o 标准,包括p c i6 4 6 6 、p c i - x1 0 0 、r s d s 和m i n i l v d s ,以及普通d d r 存 储接口。这些特性减少了对其它分立器件的需求,从而可降低总体系统成本并简化设计。 s p a r t a n - 3 e 系列还通过串行和并行闪存进行器件配置以及x i l i n xp l a t f o r mf l a s h 解决方 案来降低系统成本。由于许多大批量系统中已经包含了有数兆位未用容量的闪存,f p g a 配置存储器可以不用增加任何成本。 本项目使用的s p a r t a n - 3 ex c 3 s 5 0 0 芯片,包含5 0 0 1 ( 的系统门,1 0 4 7 6 个逻辑单元, 2 0 个1 8 x1 8 的乘法器,3 6 0 k 个b l o c kr a m 位,7 3 k 个d i s t r i b u t e dr a m 位,4 个锁相 环d c m s ,9 2 个最大差分f o 。 2 3f p g a 的设计方法 2 3 1自顶向下的设计方法 现代集成电路制造工艺技术的改进,使得在一个芯片上集成数十乃至数百万个器件 成为可能,仅由一个设计师独立设计如此大规模的电路很难不出错误。利用层次化、结 8 一 大连理工大学硕士学位论文 构化的设计方法。一个完整的硬件设计任务首先由总设计师划分为若干个可操作的模 块,编制出相应的模型,通过仿真加以验证后,再把这些模块分配给下一层的设计师, 这就允许多个设计者同时设计一个硬件系统中的不同模块,其中每个设计者负责自己所 承担的部分,而由上一层设计师对其下层设计者完成的设计,用行为级上层模块对其所 做的设计进行验证【1 刀。图2 1 为自上而下( t ( p d o w n ) 的示意图,以设计树的形式绘出。 图2 1 自项向下设计思想 f i g 2 1t o p - d o w nd e s i g ni d e a 自上而下的设计是从系统级开始,把系统划分为基本单元,然后再把每个基本单元 划分为下一层次的基本单元,一直这样做下去,直到可以直接用e d a 元件库中的元件 来实现为止。 对于设计开发整机电子产品的单位和个人来说,新产品的开发总是从系统设计入 手,先进行方案的总体论证、功能描述、任务和指标的分配。随着系统变得复杂和庞大, 特别需要在样机问世之前,对产品的全貌要有一定的预见性。目前,e d a 技术的发展 使得设计师有可能实现真正的自上而下的设计。 2 3 2 自底向上的设计方法 与自上而下的设计方法相对应是自下而上的设计方法,它也是一种多层次的设计方 法。这种方法是从现成的数字器件或子系统开始设计。它的基本过程是根据用户要求, 对现有的组件或较小的系统或相似的系统加以修改、扩大和相互连接,直到构成能满足 用户要求的新系统为止,此过程的图示与图2 1 刚好相反。 一9 一 基于f p g a 的图像处理算法研究及硬件设计 自上而下的设计过程遵循。设计一验证一修改设计一再验证”的原则【l 羽,通常认为所 获得的设计结果将能与所要求的完全一致。但是,这种方法较难在设计之初预测所要求 采用的电路结构和器件,因此,为满足逻辑功能与运算、价格、功耗和可靠性等非逻辑 约束因素,往往不得不反复地修改设计和权衡利弊。而自下而上的设计方法是从具体的 器件和部件开始的,这些器件和部件的逻辑性能和非逻辑特性都是己知的,设计者凭借 经验和知识加以修改,能够较快地设计出所要求的系统,因此设计成本较低,且可充分 利用已有的设计成果,但是此方法设计的系统结构有时不是最佳的,因为设计是从低级 别开始的,在这个级别所做出的判别和决策,从全局或高级别来看未必是最佳的。所以, 大多数的设计需要自上而下和自下而上地循环几次才能达到要求。 2 3 3f p g 的设计流程 面向f p g a 的设计过程就是利用e d a 软件进行设计的过程。根据e d a 软件使用的 不同,f p g a 的设计流程也稍有不同,但大体上都会遵循图2 2 所示的过程。由于本文 采用s p a r t a n - 3 e 的x c 3 s 5 0 0 e 的硬件平台,因此软件采用x i l i n x 的i s e 8 2 开发工具, 仿真工具采用i s e 集成仿真工具和m o d e l s i m 相结合。 ( 1 ) 设计输入 设计输入一般包括图形输入和硬件描述语言文本输入。图形输入通常包括原理图输 入、状态图输入和波形图输入等方法。原理图输入方法是一种类似于传统电子设计方法 的原理图编辑的输入方式,即在e d a 软件的图形编辑界面上绘制能完成特定功能的电 路原理图。原理图由逻辑器件和连接线构成,图中的逻辑器件是e d a 软件库中预制的 功能模块。状态图输入方法就是根据电路的控制条件和不同的转换方式,用绘图的方式, 在e d a 工具的状态图编辑器上绘出状态图,然后由e d a 编译器和综合器将此状态图形 编译综合成电路网表。波形图输入方法则是将待设计的电路看成是一个黑盒子,只需告 诉e d a 工具该黑盒子电路的输入和输出时序波形图,e d a 工具即能据此完成黑盒子电 路的设计。硬件描述语言的文本输入与传统的计算机软件语言编辑输入方式基本上一 致,就是使用了某种硬件描述语言的电路设计文本,如v e r i l o g h d l 的源程序,进行编 辑输入。 ( 2 ) 功能仿真 功能仿真也叫前仿真,对设计的电路的逻辑功能进行测试模拟。仿真过程不涉及任 何具体器件的硬件特性,对于初步的功能验证很方便。目前主要有两种输入方式,一种 是波形文件输入,另一种是测试台( t e s t b e n c h ) 方式。波形方式是由波形编辑器编辑生成 所需要的测试波形,然后从输出波形中人工检查是否符合期望要求。而测试台的方法则 大连理工大学硕士学位论文 是用硬件描述语言文本的方式编写测试程序,从某个文件读取测试数据通入待仿真的模 块,所得的结果和期望数据进行比较来确定功能是否满足要求。i s e 8 2 提供自带的仿真 工具,也可以安装第三方的仿真工具m o d e l s i m 。 图2 2f p g 的设计流程 f i g 2 2 f p g a d e s i g nf l o w c h l l r t ( 3 ) 综合 综合就是将电路的高级语言描述( 如行为描述) 转换成低级的,可以与f p g a 基本结 构相映射的网表文件或程序约束控制条件。在进行综合之前,可以根据实际需要对此模 块设定如速度、面积等方面的要求。综合器会尽力达到设计者的约束要求。 ( 4 ) 布局布线 时序仿真又称为后仿真。由于不同器件的内部延时不一样,不同的布局布线方案也 给延时造成了不同的影响,因此在布局布线之后,对器件进行编程和配置之前,对系统 一i l 基于f p g a 的图像处理算法研究及硬件设计 和各模块进行时序仿真,分析其时序关系,估计设计性能,以及检查和消除竞争冒险是 非常有必要的。时序仿真也是在m o d e l s i m 中进行的。 ( 5 ) 编程配置 适配后会生成下载或配置文件,通过编程器或编程电缆向f p g a 或c p l d 进行下载, 以便进行硬件调试和验证。i s e 8 2 中自带了编程下载器,通过j t a g 口将程序下载到 f p g a 上。 大连理工大学硕士学位论文 3 基于f p g a 的可重复配置图像处理硬件平台 3 1 赛灵思s p a r t a n - 3 e 开发版 本项目采用s p a r t a n - 3 es t a r t e rk i t 开发板作为硬件开发平台。s p a r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026湖南郴州市第一人民医院招聘58人备考题库及答案详解【网校专用】
- 2025吉林省吉林大学材料科学与工程学院郎兴友教授团队博士后招聘1人备考题库及答案详解(典优)
- 2026广东警官学院招聘事业单位人员5人备考题库带答案详解(培优b卷)
- 2026广东汕头大学医学院第一批招聘6人备考题库附答案详解(典型题)
- 2026湖北长江产业资产经营管理有限公司所属企业招聘12人备考题库及答案详解【夺冠系列】
- 2026浙江师范大学行知学院招聘辅导员9人备考题库及1套参考答案详解
- 2026广东湛江市雷州供销助禾农业科技服务有限公司招聘5人备考题库附答案详解(精练)
- 2026广东广州市白云区嘉禾街道综合事务中心合同制聘员招聘7人备考题库带答案详解(研优卷)
- 2026江苏保险公司销售人员招聘备考题库带答案详解(培优a卷)
- 2026江苏保险公司销售人员招聘备考题库附参考答案详解(达标题)
- 2026年电网大面积停电应急演练方案
- 2026 年浙江大学招聘考试题库解析
- 2026上半年北京事业单位统考大兴区招聘137人备考题库(第一批)及参考答案详解【考试直接用】
- 2026年湖南省长沙市高二下学期第一次月考化学模拟试卷02(人教版)(试卷及参考答案)
- 成都交易集团有限公司2026年第一批社会集中公开招聘笔试备考题库及答案解析
- 2026年山西经贸职业学院单招综合素质考试题库附答案详解(综合题)
- GB/T 14983-2008耐火材料抗碱性试验方法
- GA 576-2018防尾随联动互锁安全门通用技术条件
- 2023年同等学力申硕法语真题答案
- 卓越教育学管师工作标准手册
- 中国石油大学(华东)PPT模板
评论
0/150
提交评论