(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf_第1页
(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf_第2页
(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf_第3页
(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf_第4页
(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf_第5页
已阅读5页,还剩79页未读 继续免费阅读

(电子科学与技术专业论文)基于fpga实现的usb串口通信.pdf.pdf 免费下载

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

文档简介

t h ei m p l e m e n t a t i o no fu s bs e r i a lc o m m u n i c a t i o nb a s e do n f p g a at h e s i ss u b m i t t e dt o d a l i a nm a r i t i m eu n i v e r s i t y i np a r t i a lf u l f i l l m e n to ft h er e q u i r e m e n t sf o rt h ed e g r e eo f m a s t e ro fe n g i n e e r i n g b y z h a n gz h i q i a n g ( e l e c t r o n i c ss c i e n c ea n dt e c h n o l o g y ) t h e s i ss u p e r v i s o r :p r o f e s s o rb ic h u n n a j u n e2 0 1 1 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成博硕士学位论文= = 基王墼q 塞理的堕墨旦圭旦通信:。除论文中已经 注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明 确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已经公开发表 或未公开发表的成果。本声明的法律责任由本人承担。 学位论文作者签名:猩垄丝 学位论文版权使用授权书 本学位论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学 位论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。同意将本学位论文收录到中国优秀博硕士 学位论文全文数据库( 中国学术期刊( 光盘版) 电子杂志社) 、中国学位论 文全文数据库( 中国科学技术信息研究所) 等数据库中,并以电子出版物形式 出版发行和提供信息服务。保密的论文在解密后遵守此规定。 本学位论文属于:保密口在年解密后适用本授权书。 不保密口( 请在以上方框内打“4 ) 论文作者签名:私毒穆 导师签名: 日期:驯年钿彤日 中文摘要 摘要 随着现代科学技术的进步和集成电路技术的飞速发展,计算机的性能得到很 大的提升,从而对计算机与外围设备之间的接口提出了更高的技术要求。通用串 行总线( u n i v e r s a ls e r i a lb u su s b ) 具有即插即用和热插拔等特性,在传输速率和价 格方面有较高的性价比,因此现今已成为电脑外围设备的一种接口标准,并且广 泛地应用于各种电子数码产品当中,在通讯和工业领域也同样有着广阔的应用前 景。 论文首先介绍了f p g a 设计流程以及开发环境i s e ,仿真环境m o d e l s i m ;然 后介绍了u s b 2 0 协议,并分别对u s b 2 0 的物理接口、拓扑结构、数据流模型、 端点和管道两个概念以及数据格式等进行了分析。最后针对u s b 2 0 接口的具体功 能要求,提出了基于f p g a 的u s b 设备接口的总体设计方案。该方案采用自顶向 下的模块化设计方法,降低了设计的复杂度,使得整个设计结构清晰。同时采用 硬件描述语言v e r i l o gh d l 编程,辅以原理图输入方式,有利于在各种不同的应用 环境中进行优化,也大大提高了u s b 接口的传输速度。设计中将系统划分成u t m i , 协议层,寄存器,存储器、仲裁和功能接口五个子模块,之后在系统级描述的基 础上,依次对各个功能模块进行进一步的结构和功能划分。 本文重点对系统的u t m i 接口、u s b 协议层、存储器和仲裁3 个子模块进行 了详细的研究,做了较多的分析工作,使用v e r i l o gh d l 硬件描述语言完成对各子 模块的功能描述,并得到了相应的模块图,同时使用m o d e l s i m 做了相应的仿真工 作,仿真结果基本符合设计要求。 关键词:f p g a ;u s b ;接口 英文摘要 a b s t r a c t a b s t r a c t - - t h ep e r f o r m a n c eo fc o m p u t e rh a si m p r o v e dg r e a t l y , w h i c hr e q u i r e h i g h e rt e c h o l o g ya b o u tt h ei n t e r f a c eb e t w e e nc o m p u t e ra n dp e r i p h e r a ld e v i c e ,w i t ht h e r a p i dd e v e l o p m e n to fm o r d e ns c i e n c ea n dt e c h o l o g ya n di n t e g r a t e dc i r c u i t u n i v e r s a l s e r i a lb u s ( u s b ) s u p p o r tf o rp l u ga n dp l a ya n dh o tp l u gw i t hh i g hs p e e da n dl o wc o s t s ot h a ti ti sc o n s i d e r e da si n t e r f a c es t a n d a r do fp e r i p h e r a le q u i p m e n to fp c i tn o to n l y h a sb e e nw i d e l yu s e di nd i f f e r e n tk i n d so fd i g i t a lp r o d u c t sb u ta l s oh a sab r o a d a p p i l i c a t i o np r o s p e c t t h i s p a p e r i n t r o d u c e st h e d e v e l o p i n g e n v i r o n m e n ti s ea n ds i m u l a t i o n e n v i r o n m e n t - - m o d e l s i mf i r s t l y t h e nu s b2 0p r o t o c o li sd e s c r i b e d t a k e naf u r t h e r s t e p ,t h e y a r et h ep h y s i c a l i n t e r f a c e ,t o p o l o g i c a ls t r u c t u r e s ,d a t a f l o wm o d e l ,t w o c o n c e p t sa n dd a t af o r m a ta b o u tt h eu s b2 0 t h a th a v eb e e na n a l y z e dr e s p e c t i v e l y a c c o r d i n gt ot h es p e c i f i cf u n c t i o na b o u tu s b2 0i n t e r f a c e ,s c l l e m ef o rt h eo v e r a l l d e s i g na b o u tu s bi n t e r f a c ei sp r o p o s e db a s e do nf 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 ) t h ew h o l es y s t e mi sr e a l i z e db ym o d e l s w h i c he m p l o yt h et o pd o w n m e t h o dt o r e d u c et h ed e s i g nc o m p l e x i t i e sa n dm a k et h es t r u c t u r ec l e a r w h a t sm o r e ,l a n g u a g e p r o g r a mb a s e do nt h ev e r i l o gh d l i sa d o p t e d b e s i d e s ,t h es y s t e mc h o o s es c h e m a t i c d i a g r a mt oa s s i s tt h em u t i l a n g u a g ep r o g r a ma sw e l l t h e s em e t h o d sa r ec o n v e n i e n tf o r t h es y s t e mt oo p t i m i z ei nd i f f e r e n ta p p l i c a t i o ne n v i r o n m e n t s m o r e o v e r , t h e yi m p r o v e t h es p e e do fu s bc o n t r o l l e r i nt h ed e s i g n ,t h es y s t e mi sd i v i d e di n t od i f f e r e n tm o d e l s c a l l e du s b 2 0t r a n s c e i v e rm a c r o c e l li n t e r f a c e ( u t m i ) ,p r o t o c o ll a y e r , r e g i s t e r , m e m o r yi n t e r f a n ea n da r b i t e rp a r t sa n df u n c t i o ni n t e r f a c e e a c ho ft h e mi sf u r t h e r d i v i d e do nt h eb a s i so fs y s t e ml e v e ld e s c r i p t i o n t h i sp a p e rf o c u s e so nt h eu t m i ,p r o t o c o ll a y e ra n dm e m o r ya n da r b i t r a t i o np a r t s t h e s em o d e l sa r em a d ed e e pr e s e a r c ha n dt h ec o r r e s p o n d i n gm o d u l ed i a g r a m sa r e o b t a i n e d t h ef u n c t i o no fe a c hm o d e li sd e s c r i b e du s i n gv e r i l o gh d la n di ss i m u l a t e d r e s p e c t i v e l y t h er e s u l t ss a t i s f yt h ed e s i g nr e q u i r e m e n t k e yw o r d s :f p g a ;u s b ;p o r t 目录 目录 第1 章绪论1 1 1 课题的背景与意义1 1 2 国内外研究现状1 1 2 1 u s b 与其他接口的比较l 1 2 2 国内外研究现状2 1 2 3u s b 接口芯片硬件实现方式3 1 3 论文研究内容4 1 4 论文结构安排4 第2 章系统开发环境5 2 1f p g a 简介5 2 1 1f p g a 的发展历程5 2 1 2f p g a 基本工作原理6 。 2 1 3f p g a 设计流程9 2 2 系统硬件开发平台1 3 2 2 1 系统硬件资源1 3 2 2 2x u p v 2 p r o 主控板模块简介一1 6 2 2 3 片内微处理器p o w e r p c 简介17 2 3 开发工具i s e 简介2 l 2 4 仿真环境m o d e l s i m 简介2 3 第3 章u s b 2 0 协议介绍2 5 3 1u s b 通信协议总揽2 5 3 2u s b 的物理接口一2 5 3 2 1 电气特性2 5 3 2 2 机械特性2 6 3 3u s b 的系统结构一2 6 3 3 1 总线拓扑结构2 6 3 3 2 数据流模型2 6 3 4u s b 的两个重要概念2 8 3 4 1 端点2 8 3 4 2 管j 酋2 9 3 5u s b 的数据格式2 9 3 5 1 域2 9 3 5 2 包3 0 3 5 3 事务3l 3 5 4 传输3 2 3 6u s b 3 0 简介3 5 3 6 1 发展现状3 5 3 6 2 技术兼容性3 5 3 6 3 接口结构3 5 3 6 4 工作原理3 6 3 6 5 应用前景3 8 3 7 小结3 8 第4 章u s b 设备接口的设计3 9 4 1u s b 设备接口的总体框架3 9 4 2u t m i 模块的设计3 9 4 2 1u t m i 模块总体框架3 9 4 2 2u t m i 模块端口信息4 0 4 3 协议层模块的设计。4 2 4 3 1 协议层模块的总体设计4 2 4 3 2i d m a 模块。4 3 4 3 3 包拆卸器模块4 4 4 3 4 包装配器模块4 5 4 3 5 协议引擎模块4 6 4 4 存储器、仲裁模块设计5 0 4 5 寄存器模块的设计。5 2 4 5 1u s b 控n 状态寄存器。5 3 4 5 2 端点寄存器5 3 4 6 功能接口模块的设计5 3 第5 章u s b 接口的仿真与性能分析。5 6 5 1 系统仿真分析5 6 5 1 1u t m i 接口模块仿真5 6 5 1 2 协议层模块仿真5 6 5 1 3 存储器、仲裁模块仿真5 9 5 1 4 功能接口模块仿真5 9 5 2 下载配置6 0 5 3 系统性能分析6 4 第6 章总结和展望一6 5 参考文献。6 6 致谢6 8 研究生履历6 9 基于f p g a 实现的u s b 串口通信 第1 章绪论 1 1 课题的背景与意义 随着电脑外设和数码产品的不断发展,各种设备之间的接口和互连成为当前 开发各类数码电子产品非常重要的问题。早期的串行外围设备是r s 2 3 2 ,这种总 线传输速度慢、不能热插拔逐渐成为计算机与外部设备通信的瓶颈。后来开发的 1 3 9 4 总线和u s b 总线解决了传输速度慢和热插拔的问题,但1 3 9 4 总线价格比较昂 贵,而u s b 总线以其高的性价比在计算机接口领域得以广泛的应用【l 】。 u s b 是英文u n i v e r s a ls e r i a lb u s 的缩写,即通用串行总线。它是c o m p a q , d i g i t a l ,e q u i p m e n t ,i b m ,i n t e l ,m i c r o s o f t ,n e e 和n o r t h e r n t e l e c o m f l l j 定的一 种计算机外设连接规范,具有快速、双向、即插即用且价格低廉的特点。版本经 历了多年的发展,至今已经发展为广泛使用的u s b2 0 版本和即将大规模推广的 u s b3 0 版本,成为目前电脑中的标准扩展接口。u s b 最大的优点就是速度快,在 u s b l 1 版本中,速度就可以达至u 1 2 m b p s ( 1 5 m b s ) ,而在u s b 2 0 中,速度可以 达至0 4 8 0 m b p s ( 6 0 m b s ) ,到了u s b 3 0 以后,速度更是达到了不可思议的4 8 g b p s ( 6 0 0 m b s ) 。因此u s b # b 设层出不穷,从优盘至u m p 3 、m p 4 播放器,从数码相机 到打印机,u s b 接口几乎应用到了所有种类的外设上面。 1 2 国内外研究现状 1 2 1u s b 与其他接口的比较 u s b 与其他常用接口的比较如表1 1 所示 第1 章绪论 表1 1u s b 与其他接口的比较 t a b 1 1d i f f e r e n c e sb e t w e e nu s ba n do t h e r s 最大设备最大长度最大速度 接口名称传输格式用途 数( 英尺)( b s ) 鼠标、键盘、硬盘、音频 u s b 2 0 异步串行 1 2 79 64 8 0 m 播放器、数码相机 r s 2 3 2 异步串行 25 0 - 1 0 01 1 5 k 鼠标、调制解调器 i r d h红外261 1 5 k 移动电话、打印机 m i c r o w i r e同步串行81 02 m 微处理器通信 s p i 同步串行 81 02 1 m微处理器通信 i e e e 。1 3 9 4 串行 6 41 54 0 0 m - 3 2 g 大容量存储设备 并行打印 并行21 0 3 08 m 打印机、扫描仪,硬件 端口 1 2 2 国内外研究现状 目前,u s b2 0 已经得到了p c 厂商普遍认可,接口更成为了硬件厂商接口必 备。因此世界上很多硬件厂商生产实现u s b2 0 协议的接口芯片,对u s b2 0 接 口的开发主要有两类。 1 ) 一些生产厂商本着通用性原则,将通用微处理器嵌入到接口芯片中,如 c y p r e s s 公司的e z u s b 系列、m o t o r o l a 的m c 6 8 h c 0 8 系列、i n t e r 的8 x 9 3 0 h x 、 8 x 9 3 0 a 8 x 9 31 a 系列等,这类芯片特点是开发比较方便,但价格相对偏高。 2 ) 专用u s b 接口芯片有n e c 的p d 7 2 0 1 0 0 、v i a 的v t 6 2 0 2 、n s 的 u s b n 9 6 0 2 、u s b n 9 6 0 3 、p h i l i p s 的p d i u s b d 11 、n e t c h i p 的n e t 2 8 8 8 、朗讯的 u s s 8 2 0 8 2 5 等。这类芯片价格低廉、连接方便、可靠性高、适合于便携式仪器的 开发。 随着数字媒体的日益普及以及传输文件的不断增大甚至超过2 5 g b ,快速 同步即时传输已经成为必要的性能需求,而市面上u s b2 0 的规格有全速 ( f u l l s p e e d ) 和高速( h i g h - s p e e d ) 两种。其中高速理论传输速率是4 8 0 m b p s , 即6 0 m b s 。全速理论传输速率是1 2 m b p s ,即1 5 m b s 。u s b2 0 的速度已经无法满 基于f p g a 实现的u s b 串口通信 足应用需要。因此英特尔公司( i n t e l ) 和业界领先的公司一起携手组建了u s b3 0 推广组,旨在开发速度超过当今l o 倍的超高效u s b 互联技术,且p u s b3 0 技术【2 1 。 u s b3 0 简要规范如下:提供了更高的每秒4 8 g b 传输速度;对需要更大电力 支持的设备提供了更好的支撑;最大化了总线的电力供应,增加了新的电源管理 职能;全双工数据通信,提供了更快的传输速度;向下兼容u s b2 0 设备。 u s b 3 0 的时代已经到来,在2 0 1 0 年,通过了u s b i f 认证的u s b 3 0 产品数量已 增加到了1 6 5 个。采用u s b 3 0 接口的商用电子产品如u s b 3 0 主板,u s b 3 0u 盘, u s b 3 0 移动硬盘,p c i e 转u s b 3 0 转接卡等为全球各地的消费者带来了高性能、超 快速的数据传输。 作为全球唯一一家能提供u s b3 0 从发送端到接收端,从物理层到协议层完 整测试解决方案的厂商,力科公司于2 0 1l f l z 4 月1 2 日一1 3 日的i d f2 0 11 ( 2 0 11 年i n t e l 信息技术峰会) 上展示了从物理层上的s d a8 z i a 示波器平台到应用层上的 v o y a g e r 协议验证系统。同时,为帮助研发者增力i i u s b3 0 方面的专业知识,迎接 u s b 3 0 设计和验证上的挑战,力科公司携手多家u s b 3 0 行业的技术领袖共同举办 u s b 3 0 相关技术的专题研讨会。研讨会深入探讨从u s b2 0 至i j u s b3 0 过渡期间所 面临的关键问题,聚焦于开发u s b 3 0 方案中的验证和测试技术。此外, u s b 3 0 的协议层特点的概述将使您更多了解到u s b i f 定义的链路层一致性规范 3 】。 1 2 3u s b 接口芯片硬件实现方式 u s b 接口芯片硬件实现方式有多种,比如基于微处理器、基于d s p 的实现方 式或是基于f p g a 的实现方式,主流的实现方式都是基于f p g a 的,由此可见, f p g a 的实现方式必有它的优越性。 基于f p g a 设计u s b 通信接口采用自顶向下模块化的设计方法,降低了设计 的复杂度,使得整个设计结构清晰、明了。由于f p g a 的现场可编程能力,提高了 系统设计的灵活性【4 】。同时在设计当中,全部采用硬件描述语言进行编写,有利于 在各种不同的应用环境中进行优化,也大大提高了u s b 接口的传输速度。 本设计就是基于f p g a 进行的系统设计。 第1 章绪论 1 3 论文研究内容 基于f p g a 的u s b 接口涉及到f p g a 设计方法、u s b 2 0 协议。本文根据u s b 2 0 协议的具体要求,参考相关产品的功能、实现方法来进行设计。 论文研究内容主要包括: ( 1 ) f p g a 设计流程及系统开发平台。 ( 2 ) u s b 2 0 协议分析及接口设计。 ( 3 ) 系统各功能模块的软件设计和硬件调试。 1 。4 论文结构安排 本文共分六章,具体章节安排如下: 第l 章绪论阐述了课题的研究背景与意义、国内外研究现状以及论文研究任务 与论文结构描述。 第2 章描述了系统开发环境。包括基于f p g a 开发系统的硬件环境与软件环境。 第3 章详细介绍了系统开发涉及到的u s b 2 0 协议与u s b 3 0 协议。 第4 章详细描述了u s b 接口的总体设计,并给出了软件实现方案和各模块的 设计及硬件语言描述。 第5 章系统软件仿真分析及电路测试,完成系统软硬件调试。 第6 章总结与展望。本章对整个论文进行了总结,指出了存在的不足并提出了 以后还需要进一步进行的工作。 基于f p g a 实现的u s b 串口通信 第2 章系统开发环境 2 1f p g a 简介 f p g a 是现场可编程门阵歹o ( f i e l dp r o g r a m a b l eg a t ea r r a y ) 的简称,x i l i n x 公司 是f p g a 的发明者,是世界上最大的f p g a 厂商之一。它于1 9 8 5 年首次推出商业 产品,现在占据了全球一半以上的p l d 市场份额,超过所有其他p l d 企业的总额。 x i l i n x 公司发明的f p g a 器件是在p a l 、g a l 、e p l d 等可编程器件的基础上进一 步发展的产物,既克服了定制电路的缺点,又解决了原来可编程器件门电路数的 限制,可以负责任的的讲,f p g a 能够成功地完成任何数字器件的功能,上至性能 复杂的c p u ,下至功能简单的7 4 电路,都可以用f p g a 来实现。这就使得电子系 统的设计工程师利用与f p g a 器件相关的e d a 软件,在实验室或办公室就可以设 计自己的系统,实现用户规定的各种专门用途的a s i c 芯片【5 1 。 本章主要介绍f p g a 的基础知识、设计流程以及强大的功能。 2 1 1f p g a 的发展历程 , 。 当今社会数字集成电路广泛应用,是数字化的社会。数字集成电路本身也在 不断的进行着更新换代,它由早期的电子管、晶体管以及小中规模集成电路,发 展到超大规模集成电路( v l s i c ,几万门以上) 以及许多具有特定功能的专用集成 电路( a s i c ) 。这种更新换代的步伐越来越快,导致这一现象的根本原因在于半导 体生产制造和电子设计技术的进步。 著名的摩尔先生曾经对半导体的发展做过预言:大约每1 8 个月,芯片的集成 度提高1 倍,功耗下降为原来的1 2 。他的预言被人们称为摩尔定律( m o o r e s l o w ) 。几十年来,集成电路的发展与这个预言惊人地吻合,数字器件经历了从 s s i ( s m a l ls c a l ei n t e g r a t e dc i r c u i t e s ,小规模集成电路) 、m s i ( m e d i u ms c a l e i n t e g r a t e dc i r c u i t e s ,中规模集成电路) 、l s i ( l a r g es c a l ei n t e g r a t e dc i r c u i t e s ,大规 模集成电路) 、v l s i ( v e r yl a r g es c a l ei n t e g r a t e dc i r c u i t e s ,超大规模集成电路) 到 u l s i ( u l t r al a r g es c a l ei n t e g r a t e sc i r c u i t e s ,甚大规模集成电路) ,直到现在的 s o c ( s y s t e mo nc h i p ,系统级芯片) 。目前我们已经能把一个完整的电子系统集成在 一个芯片上。此外,还有一种器件的发明与使用使我们设计制作电子系统的方法 大为改观,这就是可编程逻辑器件( p r o g r a m m a b l el o g i cd e v i c e ,p l d ) 。p l d 器件 是2 0 世纪7 0 年代后在a s i c 设计的基础上发展起来的新型逻辑器件,它可以利用 软件将设计者用硬件语言描述的电路特性转化为硬件电路。在实际应用中它简化 第2 章系统开发环境 了电路设计,降低了开发成本等,因此p l d 器件的出现给数字系统的设计方式带 来了革命性的变化。 p l d 器件自出现以来,其工艺和结构经历了不断地发展与变革。 在2 0 世纪7 0 年代初,可编程器件只有简单的可编程只读存储器( p r o m ) 、 紫外线可擦除只读存储器( e p r o m ) 和电可擦除只读存储器:( e e p r o m ) 。由于机构的 限制,它们只能完成简单的数字逻辑功能。 2 0 世纪7 0 年代中期,可编程逻辑阵y u ( p r o g r a m m a b l el o g i ca r r a y ,p l a ) 与可 编程阵列逻辑( p r o g r a m m a b l ea r r a yl o g i c ,p a l ) 相继出现了。p l a 器件在结构上由 一个可编程的与阵列和一个可编程的或阵列构成,阵列规模小,变成也比较繁琐: p a l 器件由一个可编程的与阵列和一个固定的或阵列构成,采用熔丝编程方式, 其设计较灵活,期间速度快,因而成为第一个得到普遍应用的p l d 器件。 2 0 世纪8 0 年代初,美国的l a t t i c e 公司发明了通用阵列逻辑( g e n e r i ca r r a y l o g i c ,g a l ) 。g a l 器件采用了输出逻辑宏单元( o u t p u tl o g i cm i c r o c e l l ,o l m c ) 结构和e e p r o m 工艺,具有可编程、可擦除、可长期保存数据的优点,且使用灵 活,所以得到了广泛的应用。 这些早期的p l d 器件虽然有较快的逻辑运算速度,但其过于简单的结构也使 它们只能用于规模较小的电路。为了弥补这一缺陷,在2 0 世纪8 0 年代中期以后, 相继出现了现场可编程门阵y u ( 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 ) 器件和复杂 可编程门阵y l j ( 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 ) 。 f p g a 是1 9 8 5 年美国x i l i n x 公司推出的一种采用单元型结构的新型p l d 器件。 它采用c m o s 、s r a m 工艺制作,在结构上与简单的阵列型p l d 不同,它的内部 由许多独立的可编程逻辑单元构成,各逻辑单元之间可以灵活地相互连接,具有 密度高、速度快、编程灵活、可重新配置等优点。因此,f p g a 成为当前主流的 p l d 器件之一。 现在p l d 器件仍向着高密度、高速度、低功耗的方向发展。特别是f p g a 器 件,现在它的集成度已经不能和以前的f p g a 相提并论。另外,由于专用集成电 路( a s i c ) 芯片设计具有周期长、难点多、耗资大等缺点,因此用p l d 器件来代替 一般的a s i c 芯片进行设计已经成为一种发展趋势【6 】。 2 1 2f p g a 基本工作原理 x i l i n x 公司生产的f p g a 采用基于s r a m 编程的查找表( l o o k u p t a b l e ) 结构, f p g a 内部的信息都由s r a m 中存储的配置数据决定,用户可以根据具体的设计生 基于f p g a 实现的u s b 串口通信 成这些配置数据。这就使得基于s r a m 编程技术的f p g a 器件具有以下特点:可以 反复编程,对于一般规模的器件,上电几十毫秒就可以完成配置数据的加载;开 发设计不需要专门的编程器;与c m o s 工艺的存储器兼容,价格较低。但由于f p g a 器件掉电后s r a m 容易丢失配置数据,因而常常在f p g a 外部添加一个只读存储器 p r o m 或e p r o m 来保存这些配置数据。 查找表( l o o k u p t a b l e ) 简称为l ,u t ,u j t 本质上就是一个r a m 7 。目前x i l i n x f p g a 中多采用4 输入的l u t 结构( v i r t e x 5 器件中采用6 输x , l u t ) ,所以每一个u j t 可以看成一个1 6 1 的r a m ,内含地址线为4 位。用户一般通过原理图或h d l 语言 来设计数字逻辑电路,此时,p l d f p g a 开发软件会自动计算该数字逻辑电路产生 的所有可能结果,然后把结果写入r a m 中。这样,当输入一个信号进行逻辑运算 后,就相当于输入一个地址进行查找表,并找出地址所相关的内容,然后输出结 果即可【8 】o f p g a 的芯片由可配置逻辑块( c o n f i g u r a b l el o g i cb l o c k ,c l b ) 、可编程输入 输出块( i n p u t o u t p u tb l o c k ,i o b ) 和可编程内部连线( p r o g r a m m a b l ei n t e r c o n n e c t , p i ) 三部分组成,其中可编程内部连线包括互联资源和开关编程矩阵两部分【9 1 。芯 片结构如图2 1 所示。 ooo 鲁 田 一1 _ 1 l o bj 一 l o b c l bc l b p l p 生 c l b c l b i o b i 司i fi 司;l | ;! 图2 1f p g a 芯片结构 f i g 2 1s t r u c t u r eo ff p g a 第2 章系统开发环境 1 、可配置逻辑块( c o n f i g u r a b l el o g i cb l o c k ,c l b ) 作为f p g a 的核心,c l b 是一种粗粒度的基本逻辑单元,用于实现用户指定 的逻辑功能。每个c l b 包含4 个s l i c e ,如图2 2 所示。 ( 1 ) 布线资源提供在同一个c l b 内s l i c e 之间的连接,以及和相邻c l b 之间 的连接。 ( 2 ) 切换矩阵模块提供s l i c e 与通用布线资源的连接。 ( 3 ) c l b 中包含2 个三态缓冲,可以被1 6 个输出访问。 1 ns l i c e i 陟l 趴 n i i 1 ln 、 f 1 ns l i c ep l 交叉 、0y u ln 1 瓦 矩阵 c d u tc t n 逐 t 二划s l i c e 一 卜 侧 v yl u 1n l lt 卜 t 一r 、 n : y l “”1u n ;y ii 图2 2c l b 的结构 f i g 2 2s n u c t l l r eo fc l b 2 、可编程输入输出块( i n p u t o u t p u tb l o c k ,i o b ) f p g a 的l o b 提供外部封闭引脚与内部逻辑阵列之间的可编程的接口。它主 要由输入触发器、输入缓冲器、输出触发器锁存器和输出缓冲器组成。每个输入 输出模块控制一个引脚,它们可以被配置为输入、输出或双向输入输出功能。 3 、可编程内部连线( p r o g r a m m a b l ei n t e r c o n n e c t ,p i ) c l b 布线通道:分布在c l b 阵列的行和列之间: l o b 布线通道:围绕在c l b 阵列的四周,连接i o 口和布线通道; 全局布线通道:时钟信号和高扇出系数的控制信号( 复位、置位、使能等) 。 基于f p g a 实现的u s b 串口通信 2 1 3f p g a 设计流程 f p g a 的设计流程是利用e d a 开发软件和编程工具对f p g a 芯片进行开发的过 程。f p g a 设计流程如图2 3 所示,包括电路功能定义、设计输入、功能仿真、逻辑 综合、综合后仿真、实现与布局布线、时序仿真与验证、板级仿真与验证以及芯 片编程与调试等主要步骤【1 0 1 。 现。 图2 3f p g a 设计流程 f i g 2 3p r o c e s so ff p g ad e s i g n 各个阶段都可以用不同的方法和工具实现,下面简要的介绍下各个步骤的实 ( 1 ) 电路功能定义 在电路系统设计时,首先进行的是一些准备工作,包括方案论证、系统设计 和f p g a 芯片选择等主要阶段。系统设计工程师会依照任务要求,对系统电路工作 速率和芯片自身的成本、资源等方面进行权量,选择最佳的设计方案和合理的器 件配置。电路功能定义通常都采用自顶而下的结构层次设计方法,把系统分成多 第2 章系统开发环境 个子模块,然后把每个子模块划分为下一层次的子模块,如此反复,直到可以直 接使用e d a 元件库中的基本单元( 与、非门等) 为止0 0 。 ( 2 ) 设计输入 设计输入是根据电路功能定义阶段的要求将设计的系统或电路用硬件描述语 言( h d l ) 或原理图等输入方式表示出来,然后输入给e d a 工具的过程。 原理图输入方式是最传统的设计输入方式,它直接调用e d a 元件库中的器件, 画成原理图,在可编程芯片发展的初期应用特别广泛。这种方法优点是直观且易 于仿真,但缺点显而易见的是效率低,并且维护困难,不便于模块的构造和重用, 更重要的缺点是可移植性差,必须把所有的器件原理图都作一定的改动后才能进 行芯片升级。因此,在当前实际开发应用中h d l 语言输入法使用最广泛,它利用 文本描述进行设计,把要实现的电路描述出来。主要有普通h d l 和行为h d l 两种。 普通h d l 通常用于简单的小型设计,包括支持逻辑方程、真值表和状态机等表达 方式的a b e l 、c u r 等。而在中、大型设计的工程中,一般使用行为h d l ,其语言 有很多种,目前流行和通用的只有r t l 风格v h d l 或v e r i l o gh d l 两种。它们都是 美国电气与电子工程师协会( i e e e ) 的标准,具有h d l 语言与芯片的工艺无关,利用 自顶向下方法设计,可移植性好,具有较强的逻辑描述和仿真功能,而且输入效 率很高等共同的突出特点。 v h d l 是v h s i c 硬件描述语言( v h s i ch a r d w a r ed e s c r i p t i o nl a n g u a g e ) 的缩写, 而v h s i c 又是超高速集成电路( v e r yh i g h s p e e di n t e g r a t e dc i r c u i t ) 的缩写。v h d l 是1 9 8 0 年在美国国防部的指导下开发的,于1 9 8 3 年完成。1 9 8 7 年被i e e e 和美国 国防部确认为标准的硬件描述语言【1 1 1 。主要用于描述芯片的输入输出、结构、 行为、功能和接口。v h d l 的语言形式和描述风格与句法区分于一般的计算 机高级语言的是含有许多硬件特征的语句。v h d l 的程序结构特点是将一项 工程设计实体分成可视部分( 或称外部) ,及不可视部分(

温馨提示

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

评论

0/150

提交评论