




已阅读5页,还剩70页未读, 继续免费阅读
(计算机应用技术专业论文)基于fpga的pci总线从接口ip核的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
江苏大学硕士学位论文 摘要 在当前处理器速度越来越快,外设存储越来越大的情况下,人们对计算机总 线性能提出了更高要求。p c i 局部总线由于其速度快、可靠性高、成本低、兼容 性好等特点,在各种计算机总线标准中占主导地位,采用基于p c i 标准的接口设 计已成为相关项目开发中的优先选择。同时在芯片设计中采用i p ( i n t e l l e c t u a l p r 叩e r t ) r ) 技术是i c 设计发展到s o c 时代的必然选择,建立i p 库能为以后的设 计节省大量的人力,提高设计效率。基于这样的思想,针对p c i 接口使用的广泛 性,本文讨论了基于f p g a 的p c i 总线从接口i p 核的设计技术。 在本论文的研究中,重点分析了p c i 总线从接口i p 核的设计。对p c i 总线 协议的分析理解是进行p c i 总线从接口i p 核设计的前提,而对p c i 总线从接口 i p 核的功能分析和结构化分析是设计的关键。本论文在对p c i 总线从接口i p 核 的功能分析和结构分析的基础上,对p c i 总线从接口i p 核的整体设计和子模块 的划分和实现进行了详细的分析阐述。 本论文以功能模块的设计和实现为线索,阐述了p c i 总线从接口i p 核设计、 仿真及综合验证的各个步骤。通过本论文的研究,完成了p c i 总线从接口i p 核 的设计,并且通过编写测试激励程序完成了总线从接口i p 核功能仿真,以及布 局布线后的时序仿真,并利用a 1 t e m 的p c i 开发板进行了测试,证明所实现的 p c i 总线从接口i p 核完成了要求的功能。 然后,论文对设备驱动程序的设计及实现进行了研究。首先,介绍了 啪o w s 2 0 0 0 环境下的设备驱动程序技术,包括驱动程序的发展和现状,详 细地论述了w i n d o w s 2 0 0 0 下w d m 驱动程序的结构和相应的开发技术。最后, 针对a l t e m 的p c i 开发板的工作特点,给出了设备驱动程序和应用程序的设计、 调试、测试过程。 总结本课题的研究工作,与采用p c i 专用芯片来实现p c i 总线从接口相比, 本论文采用f p g a 设计的p c i 总线从接口i p 核具有灵活性,同时p c i 总线本身 又具有广泛的应用,这都使得本论文的研究具有一定的理论价值和重要的应用意 义。 关键字:p c i 总线f p g a 状态机i p 核 江苏大学硕士学位论文 a b s t r a c t n o w a d a y st h ep r o c e s s i n gs p e e do fc p u h a sb e e nb e i n gh i g h e ra n dh i g h e r ,a n d t t l ec 印a b i l i 够o ft h ee x t e m a lm e m o d ,h a sb e e ni n c r e a s i i l g l y 乒e 砷e r - a sar e s u l t ,t l l e h i g h e rp e r f o n n a n c eo fc o m p u t e rb u sh a sb e e nd e i n a n d e d b e c a u s eo fh i g h e r s p e e d ,b e t t e rr e l i a b i l i 吼l o w e rc o s t ,锄dm o r ee x c e l l e n tc o m p a t i b i l i t y p c ib u sh a s t a 玉汜nu pt h el e a d i i l gp o s i t i o na tv 撕o u sp cb u s i ti st h ef i r s tc h o i c et oa d o p tp c ib u s i l lm ed e v e l o p m e n to fr e l a t i v ep r o j e c t s a t l es 锄et i m e ,u s i n gi p ( i n t e i l e c t u a l p r o p e r t ) r ) i s 锄i n e v 妇b l ec h o i c ei ns o cd e s i 印b u i l d 证g 加i p1 i b m l 哕c 锄s a v e m c h t i m ea n dm 龇l p o w e rf o ft h ed e s i 擘皿l a t e r t h u st h ee f h c i e l l c yo fi cd e s i 星mw i l lb e i m p m v e d b a s e do nt h ei d e a ,t 1 1 ed e s i g no ft h ep c i - s l a v ei n t e r f a c ei pc o r eb a s e d o n f p g aa r ed i s c u s s e d 1 1 1t h i sr e s e a r c h ,t h ed e s i 趼o fp c ib u st a r g e tc o n t r o l l e ri sm a i l l l yd i s c u s s e d i t s p r e i i l i s ei sp c i b u ss p e c i f i c a t i o na l l di t ss t i c k i l l gp o i n ti st 0 锄a l y s i st h e 丘m c t i o na n d a r c h i t e c t u 】哈o fp c ib u sc o n t r o u e r a us u bm o d u l e so fp c ib u sc o n t r o u e r w h i c h i i l c l u d e sm a s t e rd e v i c ea i l dt h r 2 e td e v i c ea r ea l s od i s c u s s e di i ld e t a i li nt l l i sp a p e r t h i sd i s s e n a t i o ni sc l u e db vt h ed e s i 霉皿a 1 1 di m p l e m e n t a t i o no f 氕m c t i o nm o d u l e , a n di te x p a t i a t e so nt h es u b i e c to fp c ib u sc o n 仃o l l e r ,w h i c hi 1 1 v o l v e sa l lp r o c e s s e so f d e s i g n ,s i m u l a t i o n ,s ) ,i l t h e s i s 锄dt e s t i i lt l l i sr e s e a r c h ,m ed e s i g no fp c ib u st a 唱e t c o n t r o l l e ri sn l a i l l l yd i s c u s s e d i i sp r e m i s ei sp c ib u ss p e c i f i c a t i o na n di t ss t i c k i l l g p o i n ti st 0a n a l v s i st h e 缸l c t i o n 粕da r c h i t e c t u r eo fp cb u sc o n t r o l l e r 1 1 1 i s d i s s e r c a t i o nf m i s h e st h ed e s i f mo fp c i b u sc o n 仃o n e r a n di th a sa l s oc o m p l e t e dt l l e 缸l c t i o ns i m u l a t i o no ft l l i sm o d u l ea sw e ua st i m i n gs i m u l a t i o na n du s m ga l t e r ap c i d e v e l o p m e n tb o a r df o rt e s tw h i c hp m v ei tr i g h t i l e s sa tl a s t t h e n ,t h i sd i s s e r t a t i o nr e s e a r c h e sm ed e s i p 皿a n di m p l e m e n 侧o no fd e v i c e 埘v e r f i r s t l y , t h e t e c l l i l o l o g y o fd e v i c e“v e ri nw i n d o w s2 0 0 0i s i n 仃o d u c e d ,i 1 1 c l u d i i l gt h ed e v e l o p i i l ga n ds t a t u so ft h ed e v i c ed r i v e r w n t i n gw i n d o w s w d md e v i c ed r i v e rh a sb e e nd e m o n s t r a t e di 1 1d e t a i l a tl a s t ,t h ep m c e s so fh o wt o c o d e ,d e b u g ,t e s t 龇l dr e l e a s et h ed r i v e ra n da p p l i c a t i o nf - o ra l t e r ap c id e v e l o p m e n t b o a r dw i l lb ep u tf o n v a r d t h ew h o l ew o r ki ss u m m a d z e d ,i nc o m p a s o nw i t hp c ib u sc o n 仃d l l e r i m p l e m e n t e di 1 1s p e c i a l p u r p o s ep c ic h i p s ,t l l i sd e s i g nh 懿s o m ef l e x i b l ep r o p e n i e s d u et ot h e s et v v of e a t u r e s ,t o g e t h e rw i t ht h ee x t e n s i v ea p p l i c a t i o n so fp c ib u s ,t h e w o r k i n gr e s u l t so ft 1 1 i st h e s i sh a v ec e r t a i nm e 锄i n g sb o mi 1 1t l l e o r e t i c a lm v e s t i g a t i o n a n di np r a c t i c a la p p l i c a t i o n k e yw o r d s :p c ib u sf p g as t a t em a c h i i l e i pc o r e 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权江苏大学可以将本学位论文的全部 内容或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 本学位论文属于 保密口,在 年解密后适用本授权书。 不保密口。 学位论文作者签名:鸬吾 班6 月户日 独创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容以外,本 论文不包含任何其它个人或集体已经发表或撰写过的作品成果。对本 文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期:部年日 p , 土刍月筠6 江苏大学硕士学位论文 第一章绪论 1 1课题研究的目的与意义 总线是计算机系统中广泛采用的一种技术,任何一个处理器都要与一定数量 的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与 c p u 直接连接,那么连线将会错综复杂,甚至难以实现。为了简化硬件电路设计 和系统结构,常用一组线路,配置以适当的接口电路,与各部件和外围设备连接, 这样的共用连接线路被称为总线。微型计算机系统中广泛采用总线结构,其优点 是系统成本低、组态灵活、维修方便。采用总线标准设计、生产的硬件模块兼容 性强,并通过系统总线可以方便的组合在一起,以构成满足不同需要的微机系统。 计算机总线技术包括通道控制功能、使用方法、仲裁方法和传输方式等。任 何系统的研制和外围模块的开发,都必须服从一定的总线规范,总线的结构不同, 性能差别很大。计算机总线的主要职能是负责计算机各模块问的信息传输,因此, 对总线性能的衡量,也是围绕着这一职能而定义、测试和比较的,总线的传输率 是其性能的主要技术指标。另外,总线的可操作性、兼容性和性能价格比,也是 很重要的技术特征。 随着计算机技术的不断发展,微型计算机的体系结构发生了显著的变化。如 c p u 运行速度的提高,多处理器结构的出现,高速缓冲存储器的广泛采用等,都 要求有高速的总线来传输数据,从而出现了多总线结构。多总线结构是指c p u 与存储器、i 0 等设备之间有两种以上的总线,这样可以将慢速的设备和快速的 设备挂在不同的总线上,减少总线竞争现象,使系统的效率大大提高。 在多总线结构中,局部总线( l o c a lb u s ) 的发展最令人瞩目。局部总线是 指来自处理器的延伸线路,与处理器同步操作。外部设备如果直接挂到局部总线 上,就能以c p u 的速度运行。由于局部总线具有极高的数据传输率,因此在c p u 与高速缓冲存储器( c a c h e ) 、c p u 与高速图形卡等需要高速传输信息的场合得到 了广泛的应用。 p c i 总线是先进的高性能局部总线,在结构上,p c i 总线采用数据地址总线 合一的复用结构、3 2 6 4 位可选总线带宽、具有多处理器功能却又独立于处理器, 以及与其他类型总线联合工作的结构扩展功能;在电气指标上,p c i 总线采用 3 3 6 6 m h z 可选主频、5 0 3 3v 可选电压;在通讯协议上,p c i 总线采用猝发数 据传输( b u r s t ) 为缺省模式。具有这么多高端性能的总线无疑在众多总线中具有 压倒性的优势,成为p c 机局部总线的首选。 江苏大学硕士学位论文 从应用角度看,p c i 总线是构建微计算机系统的基础,也是嵌入式计算机系 统和工业控制计算机系统与微机系统互联的重要实现方式,研究p c i 总线规范及 其实现具有重要的理论和应用意义。于是p c i 总线接口电路的设计方法就必然成 为从事超大规模集成电路设计工作的机构所面临的挑战性课题。 1 2 国内外研究现状和发展趋势 p c i 总线作为一种同步的独立于处理器的高性能局部总线,是目前技术成熟 的总线中速度最快,性能最稳定的,最能充分利用系统资源的总线形式,已广泛 用于p c 、工作站及其他许多封闭式和开放式系统,p c i 芯片的市场需求将是十分 巨大的。针对这种趋势,国外许多芯片厂家设计生产了各种各样的p c i 专用接口 芯片。但是这些专用芯片功能繁杂、不能灵活配置、不利于系统的升级优化。为 此,各大f p g a 厂商纷纷推出基于各自可编程逻辑器件结构与工艺的p c i 的i p ( i n t e l l e c t u a lp r o p e r t y ,知识产权) 模块( 软核、固核或硬核) 。 x i l i n x ,a 1 t e r a ,a c t e l 及q u i c k l o g i c 等公司的p c i 核在国内都有广泛应 用,它们各有特色,总体而言,x i l i n x 的p c i 核是一含有布局布线信息的 h d l ( h a r d w a r e d e s c r i p ti o nl a n g u a g e 硬件描述语言) 门级网表格式,便于v h d l ( v e r yh i g hs p e e di 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 ,甚高速集成电路硬件 描述语言) 方法设计及第三方e d a 软件环境下的仿真验证;a 1 t e r a 的p c i 核为 a h d l 格式,通过a c f 文件提供布局布线时的约束,其用户侧的信号数量较少, 功能简单,便于实现;a c t e l 及q u i c k l o g i c 公司的反熔丝结构,使其可编程芯 片在速度与性能上有一定的优势,但p c i 核的功能则相对较弱瞳3 。 国内目前有许多的工控计算机开发厂商,他们现在也都在开发p c i 总线的设 备,同时p c i 总线设备也是今后开发的方向和重点。所以p c i 总线的设备前景很 好,当然p c i 总线控制芯片作为此类设备的核心,市场需求将会很大。目前国内 系统厂家的p c i 总线接口绝大部分采用国外的p c i 专用芯片,如t u n d r a 公司的 q s p a n 、p l x 公司9 0 5 4 和9 0 5 2 、i n t e l 公司的2 1 5 5 4 等。目前国内也有自主开发 的p c i 接口芯片但很少,例如南京沁恒公司的c h 3 6 5 ,而具有自主知识产权的p c i 总线接口i p 核几乎没有。 总的来说,由于p c i 总线规范的复杂性,其接口的实现难度比i s a 和e i s a 大大提高。目前,p c i 总线接口电路的选择主要以下两种方案3 : 用专用i p 核来实现p c i 接口功能,设计者只需知道i p 函数的功能,以及如 何使用,而不必关心p c i 规范的具体内容。设计者将i p 函数与用户逻辑综合在 一起,采用f p g a 器件就可设计出性能价格比很高的单芯片p c i 接口板卡。这样 节省了宝贵的板卡面积。采用这种方式的另一个优点就是i p 核函数的可重复使 2 江苏大学硕士学位论文 用。其缺点就是整套开发系统价格过于昂贵( 如果买一个全功能的p c ic o r e 需 要几万人民币) ,不适用于高校及中小企业的实验研究使用。 用专用集成电路芯片来实现p c i 接口功能,设计者需要详细的了解a s i c 芯 片的使用方法,而一般a s i c 的使用是比较复杂的,如a m c c 的5 5 9 3 3 ,详细了解 其功能用法和对其编程,是需要一些时间的。另外用户可能只用到了部分的p c i 接口功能,这样造成了一定的逻辑资源浪费,对于大批量生产的产品会造成极高 的成本浪费,同时设计缺少灵活性,这些都是其缺点。用a s i cp c i 接口芯片的 优点就是功能强,可靠性高,设计者不必掌握复杂的p c i 规范协议,而且其价格 也不贵。 随着集成电路设计规模的不断增加,产业界对设计速度和质量提出了更高 的要求,进一步加大重用设计规模的呼声与日俱增。i p 核的复用可以简化系统设 计,缩短设计时间,加速了s o c 的发展。在这里作者综合考虑以上因素,用一块 可编程器件f p g a 自己设计p c i 接口i p 核,实现从模式3 2b i t s ,3 3 删z 的p c i 接口功能。用f p g a 自己设计p c i 接口i p 核,设计者既可免去购买专用i p 及开 发板的昂贵费用,又能节省使用a s i c 所需的宝贵的板卡面积。设计者可结合具 体应用,有选择性的实现p c i 接口功能,然后连同用户逻辑一起集成在单个芯片 中,使整个设计灵活方便。当系统升级时,只需对可编程器件重新进行逻辑设计, 而无需更新p c b 版图。但这种方法要求设计者对整个p c i 规范有很深入的理解。 尽管采用可编程逻辑器件设计p c i 总线接口在技术上具有挑战性,但它具有较强 的实用性和社会经济价值。 1 3 课题的研究内容 本论文选题来源基于如下考虑:在导师领导的课题组与江苏绿扬电子仪器 集团有限公司合作的大功率晶体管特性图示仪项目中,使用的工控卡接口是 由p c i 接口专用芯片9 0 5 4 实现的,控制逻辑是通过f p g a 实现的。在此基础上提 出采用f p g a 作为硬件载体,v e r i l o g 语言进行功能描述,对p c i 总线接口进行 研究、设计与实现。文章详细讨论了p c i 接口i p 核系统结构和核心部分的内部 功能模块,给出具体的仿真结果,完成对a l t e r ap c i 开发板驱动程序、测试程 序的开发,利用a 1 t e r a 的p c i 开发板进行测试,完成基于f p g a 的p c i 从接口 i p 核的设计。 对于p c i 总线从接口i p 核的研究,本论文主要研究内容与具体工作如下: 1 p c i 总线从接口i p 核的研究和设计 学习p c i 总线2 2 版本协议、a s i c 设计、f p g a 设计的基本流程和方法。在 深刻理解p c i 总线协议的基础上,研究p c ii pc o r e 的各个功能及实现方法,采 江苏大学硕士学位论文 用状态机技术协调各个功能模块的工作和实现p c i 总线复杂的时序信号。设计的 目标是用v e r i l o gh d l 语言完成p c i 的接口模块设计,实现稳定的p c i 接口功能。 2 p c i 总线从接口i p 核的仿真、综合验证 学习q u a r t u s 开发平台、m o d e l s i m 仿真系统和仿真技术,在此基础上采用 基准测试方法,模拟p c i 总线和本地端设备,对p c i 总线从接口i p 核进行功能 时序仿真验证。尤其在t e s t b e n c h 中设置各种异常情况的出现来对p c i 总线从接 口i p 核进行全面的仿真验证,保证p c i 总线从接口i p 核的“健康”度。 3 开发底层驱动程序、测试应用程序并进行板级测试 由于系统环境是w i n 2 0 0 0 ,所以必须将w i n 2 0 0 0 下的驱动程序w d m 作为标准 设备驱动程序模型来编制设备驱动程序,另外软件设计还包括测试软件人机界面 的定义与设计、与其它一些上层应用程序等。在此基础上再利用a l t e r a 的p c i 总线开发板对设计进行验证调试包括修改完善设计完成驱动调试、测试程序调试 及最后的软硬件联调。 1 4 本文的组织结构 本论文是按照p c i 总线从接口i p 核的设计与实现过程来安排的,论文的重 点在p c i 总线从接口i p 核的功能模块设计、实现及验证上。 第一章绪论,介绍了课题的背景及来源,国内外研究现状等。 第二章f p g a 与i p 核技术,介绍了f p g a 的概念、设计流程和i p 技术的基 本概念等。 第三章p c i 总线技术研究,介绍了计算机总线技术的发展和p c i 总线的系 统结构、p c i 总线信号、传输特点以及总线具体的操作过程等。 第四章p c i 总线从接口i p 核的设计,主要介绍了设计思路、从接口i p 核 的结构划分,并详细分析了每个子模块电路的功能及设计。 第五章p c i 总线从接口i p 核的仿真,介绍了接口i p 核的仿真验证方法, 并给出了不同操作时的仿真结果、综合情况。 第六章p c i 总线从接口i p 核的板级验证,介绍了a l t e r ap c i 开发板及基 于此开发板的驱动程序、应用程序的设计和基于开发板的验证结果。 第七章总结与展望,总结已完成的工作,并给出下一步研究工作的思路。 4 江苏大学硕士学位论文 本文所研究的p c i 总线从接口i p 核的设计与实现是基于f p g a 芯片的,用 v e r i l o g 语言设计实现的,所以在详细设计之前对f p g a 开发技术和i p 核进行简 要介绍。 2 1 f p g a 技术 2 1 1 f p g a 简介 现场可编程门阵列f p g a ( f i e l dp r o g r 咖a b l eg a t ea r r a y ) h 1 是x i l i n x 公司在1 9 8 5 年推出的一种高密度可编程逻辑器件。f p g a 将很多基本逻辑单元集 成在一个芯片中,采用r a m 、f l a s h 或反熔丝等工艺,使这种特殊芯片具有可配 置性和可编程性。近年来,f p g a 市场发展十分迅速,f p g a 器件已经广泛应用于 通信、自动控制、信息处理等领域。 简化的f p g a 基本由6 部分组成,分别为可编程输入输出单元、基本可编程 逻辑单元、嵌入式块r a m 、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核 等。 可编程i o 单元是f p g a 内部的一个重要单元,它提供了器件引脚和内部逻 辑阵列之间的连接,通常排列在芯片的四周。通过配置相应的选项,可使i 0 单元适配不同的i 0 接口标准,不同的器件可支持的i 0 标准不同。 基本可编程逻辑单元是可编程逻辑的主体,可以根据设计灵活地改变其内部 连接与配置,完成不同的逻辑功能。f p g a 一般是基于s r a m 工艺的,其基本可编 程逻辑单元几乎都是由查找表( l u t ,l o o ku pt a b l e ) 和寄存器( r e g i s t e r ) 组成的。 嵌入式块r a m ( b l o c kr a m ) 是f p g a 的一个重要资源,在片内集成r a m 是f p g a 的优势之一,高端f p g a 的片内r a m 规模越来越大,应用也越来越广泛,是可编 程片上系统( s o p c ;s y s t e o nap r o g r 锄a b l ec h i p ) 的有力硬件支持。使用片 内r a m 可实现单口r a m 、双口r a m 、同步异步f i f 0 、r o m 等常用的单元模块。 布线资源连通f p g a 内部所有单元,连线的长度和工艺决定着信号在连线上 的驱动能力和传输速度。f p g a 内部有着非常丰富的布线资源,这些布线资源将 各个c l b 和i 0 单元之间互相连接起来,构成各种复杂的系统。 底层嵌入功能单元的概念比较笼统,这里我们指的是那些通用程度较高的嵌 入式功育邑模块,比女口p l l ( p h a s el o c k e dl o o p ) 、d l l ( d e l a yl o c k e dl o o p ) 、d s p 、 江苏大学硕士学位论文 c p u 等。随着f p g a 的发展,这些模块被越来越多地嵌入到f p g a 的内部,以满足 不同场合的需求。 这里的内嵌专用硬核与前面的“底层嵌入单元”是有区分的,这里讲的内嵌 专用硬核主要指那些通用性相对较弱,不是所有f p g a 器件都包含硬核( h a r d c o r e ) 。 随着f p g a 资源总量的增加,可在其上实现不同层次的任务,最大限度地利 用算法的并行性。f p g a 的应用从早期的胶连逻辑( 9 1 u e1 0 9 i c ) 发展到现在作为 系统内重要的计算加速单元。 2 1 2f p g a 设计流程 f p g a ( f i e l dp r o g r a 咖a b l eg a t ea r r a y ) 设计流程是指利用f p g a 开发软件 和编程工具,采用可编程逻辑器件实现待设计芯片的过程。一般来说,完整的 f p g a 设计流程包括电路设计与输入、功能仿真、综合、综合后仿真、实现、布 线后仿真与验证、板级仿真验证与调试等主要步骤,如图2 1 所示。本文后续将 要介绍的p c ii p 软核正是按照此设计流程实现的畸3 。 ( 1 )电路设计与输入 电路设计与输入是指通过某些规范的描述方式,将工程师电路构思输入给 e d a 工具。常用的设计输入方法有硬件描述语言( h d l ) 和原理图设计输入方法等。 原理图设计输入法在早期应用得比较广泛,它根据设计要求,选用器件、绘制原 理图、完成输入过程。这种方法的优点是直观、便于理解、元器件库资源丰富。 但是在大型设计中,这种方法的可维护性较差,不利于模块构造与重用。更主要 的缺点是当所选用芯片升级换代后,所有的原理图都要做相应的改动。目前进行 大型工程设计时,最常用的设计方法是h d l 设计输入法,其中影响最为广泛的 h d l 语言是v h d l 和v e r i l o gh d l 。它们的共同特点是利于自项向下设计,利于模 块的划分与复用,可移植性好,通用性好,设计不因芯片的工艺与结构的不同而 变化,更利于向a s i c 的移植。波形输入和状态机输入方法是两种常用的辅助设 计输入方法:使用波形输入法时,只要绘制出激励波形和输出波形,e d a 软件就 能自动地根据响应关系进行设计;使用状态机输入法时,设计者只需画出状态转 移图,e d a 软件就能生成相应的皿l 代码或者原理图,使用十分方便。但是需要 指出的是,波形输入和状态机输入方法只能在某些特殊情况下缓解设计者的工作 量,并不适合所有的设计。 ( 2 ) 功能仿真 电路设计完成后,要用专用的仿真工具对设计进行功能仿真,验证电路功能 是否符合设计要求。功能仿真有时也被称为前仿真。常用的仿真工具有m o d e l 6 江苏大学硕士学位论文 图2 1 完整的f p g a c p l d 设计流程 7 江苏大学硕士学位论文 t e c h 公司的m o d e l s i m 、s y n o p s y s 公司的v c s 、c a d e n c e 公司的n c v e r i l o g 和 n c v l 、a l d e c 公司的a c t i y eh d lv h d l v e r i l o gh d l 等。通过仿真能及时发 现设计中的错误,加快设计进度,提高设计的可靠性。 ( 3 ) 综合优化 综合优化( s y n t h e s i z e ) 是指将l d l 语言、原理图等设计输入翻译成由与、或、 非门,r a m ,触发器等基本逻辑单元组成的逻辑连接( 网表) ,并根据目标与要求( 约 束条件) 优化所生成的逻辑连接,输出e d f 和e d n 等标准格式的网表文件,供 f p g a c p l d 厂家的布局布线器进行实现。常用的专业综合优化工具有s y n p l i c i t y 公司的s y n p l i f y s y n p l i f yp r o 、a m p l i f y ,s y n o p s y s 公司的f p g ac o m p i l e r i i ( s y n o p s y s 公司将停止发展f p g ae x p r e s s 软件,致力于f p g ac o m p i l e ri i 平 台的开发) ,m e n t o r 公司旗下e x e m p l a rl o g i c 公司出品的l e o n a r d o s p e c t r u m 和 l e n t o rg r a p h i c s 公司出品的p r e c i s i o nr t l 等。另外,f p g a c p l d 厂商的集成 开发环境也自带综合工具。 ( 4 ) 综合后仿真 综合完成后需要检查综合结果是否与原设计一致,做综合后仿真。在仿真时, 把综合生成的标准延时文件反标注到综合仿真模型中去,可估计门延时带来的影 响。综合后仿真虽然比功能仿真精确一些,但是只能估计门延时,不能估计线延 时,仿真结果与布线后的实际情况还有一定的差距,并不十分准确。这种仿真的 主要目的在于检查综合器的综合结果是否与设计输入一致。目前丰流综合工具日 益成熟,对于一般性设计,如果设计者确信自己表述明确,没有综合歧义发生, 则可以省略综合后仿真步骤。但是如果在布局布线后仿真时发现有电路结构与设 计意图不符的现象,则常常需要回溯到综合后仿真以确认是否是由于综合歧义造 成的问题。在功能仿真中介绍的仿真工具一般都支持综合后仿真功能。 ( 5 ) 实现与布局布线 综合结果的本质是一些由与、或、非门,触发器,r a m 等基本逻辑单元组成 的逻辑网表,它与芯片实际的配置情况还有较大差距。此时应该使用f p g a c p l d 厂商提供的软件工具,根据所选芯片的型号,将综合输出的逻辑网表适配到具体 f p g a c p l d 器件上,这个过程就叫做实现过程哺1 。因为只有器件开发商最了解器 件的内部结构,所以实现步骤必须选用器件开发商提供的工具。在实现过程中最 主要的过程是布局布线( p a r ,p l a c ea n dr o u t e ) :所谓布局( p 1 a e ) 是指将逻辑网 表中的硬件原语或者底层单元合理地适配到f p g a 内部的固有硬件结构上,布局 的优劣对设计的最终实现结果( 在速度和面积两个方面) 影响很大;所谓布线 ( r o u t e ) 是指根据布局的拓扑结构,利用f p g a 内部的各种连线资源,合理正确连 接各个元件的过程。f p g a 的结构相对复杂,为了获得更好的实现结果,特别是 江苏大学硕士学位论文 保证能够满足设计的时序条件,一般采用时序驱动的引擎进行布局布线,所以对 于不同的设计输入,特别是不同的时序约束,获得的布局布线结果一般有较大差 异。c p l d 结构相对简单得多,其资源有限而且布线资源一般为交叉连接矩阵, 故c p l d 的布局布线过程相对简单明朗得多,一般被称为适配过程。一般情况下, 用户可以通过设置参数指定布局布线的优化准则,总的来说优化目标主要有两个 方面:面积和速度。一般根据设计的主要矛盾,选择面积或者速度或者平衡两者 等优化目标,但是当两者冲突时,一般满足时序约束要求更重要一些,此时选择 速度或时序优化目标效果更佳。 ( 6 ) 时序仿真与验证 将布局布线的时延信息反标注到设计网表中,所进行的仿真就叫时序仿真或 布局布线后仿真,简称后仿真。布局布线之后生成的仿真时延文件包含的时延信 息最全,不仅包含门延时,还包含实际布线延时,所以布线后仿真最准确,能较 好地反映芯片的实际工作情况。一般来说,布线后仿真步骤必须进行,通过布局 布线后仿真能检查设计时序与f p g a 实际运行情况是否一致,确保设计的可靠性 和稳定性。布局布线后仿真的主要目的在于发现时序违规( t i m i n gv i o l a t i o n ) , 即不满足时序约束条件或者器件固有时序规则( 建立时间、保持时间等) 的情况。 在功能仿真中介绍的仿真工具一般都支持布局布线后仿真功能。 到此我们介绍了f p g a c p l d 设计流程中3 个不同阶段的仿真,请大家明确这 些仿真的本质和目的,功能仿真的主要目的在于验证语言设计的电路结构和功能 是否和设计意图相符;综合后仿真的丰要目的在于验证综合后的电路结构是否与 设计意图相符,是否存在歧义综合结果;布局布线后仿真,即时序仿真的主要目 的在于验证是否存在时序违规。这些不同阶段不同层次的仿真配合使用,能够更 好地确保设计的正确性,明确问题定位,节约调试时间。 有时为了保证设计的可靠性,在时序仿真后还要做一些验证。验证的手段比 较丰富,可以用q u a r t u si i 内嵌时序分析工具完成静态时序分析( s t a ,s t a t i c t i m i n ga n a l y z e r ) ;也可以用第三方验证工具( 如s y n o p s y s 的f o 珈a l i t y 验证工 具、p r i m e t i m e 静态时序分析工具等) ;也可以用q u a r t u si i 内嵌的c h i pe d i t o r 分析芯片内部的连接与配置情况。 ( 7 ) 板级仿真与验证 在有些高速设计情况下还需要使用第三方的板级验证工具进行仿真与验证, 如m e n t o rt a u 、f o r t ed e s i g n t i m i n gd e s i g n e r 、m e n t o rh y p e r l y n x 、m e n t o ri c x 、 c a d e n c es p e c c t r a q u e s t 、s y n o p s y sh s p i c e 。这些工具通过对设计的i b i s 、h s p i c e 等模型的仿真,能较好地分析高速设计的信号完整性、电磁干扰( e m i ) 等电路特 性等。 9 江苏大学硕士学位论文 ( 8 ) 调试与加载配置 设计开发的最后步骤就是在线调试或者将牛成的配置文件写入芯片中进行 测试。示波器和逻辑分析仪( l a ,l o g i ca n a l y z e r ) 是逻辑设计的主要调试工具。 传统的逻辑功能板级验证手段是用逻辑分析仪分析信号,设计时要求f p g a 和p c b 设计人员保留一定数量f p g a 管脚作为测试管脚,编写f p g a 代码时将需要观察的 信号作为模块的输出信号,在综合实现时再把这些输出信号锁定到测试管脚上, 然后连接逻辑分析仪的探头到这些测试脚,设定触发条件,进行观测。逻辑分析 仪的特点是专业、高速、触发逻辑可以相对复杂。缺点是价格昂贵( 好一些的l a 需要几十万甚至上百万元人民币) ,灵活性差。p c b 布线后测试脚的数量就固定 了,不能灵活增加,当测试脚不够用时影响测试,如果测试脚太多又影响p c b 布局布线。 对于相对简单一些的设计,使用q u a r t u si i 内嵌的s i g n a l t a pi i 对设计进 行在线逻辑分析可以较好地解决上述矛盾。s i g n a l t a pi i 是一种f p g a 在线片内 信号分析工具,它的主要功能是通过j t a g 口,在线、实时地读出f p g a 的内部信 号。其基本原理是利用f p g a 中未使用的b 1 0 c kr a m ,根据用户设定的触发条件 将信号实时地保存到这些b 1 0 c kr a m 中,然后通过j t a g 口传送到计算机,最后 在计算机屏幕上显示出时序波形。 任何仿真或验证步骤出现问题,都需要根据错误的定位返回到相应的步骤更 改或者重新设计。 2 2 知识产权核ip 技术 i p 是微电子技术中的一个新技术,其含义是知识产权口1 。i p 内核模块是一 种预先设计好的甚至已经过验证的具有某种确定功能的集成电路、器件或部件。 它有几种不同形式。i p 内核模块有行为( b e h a v i o r ) 、结构( s t r u c t u r e ) 和物理 ( p h y s i c a l ) 三级不同程度的设计,对应有主要描述功能行为的“软i p 内核( s o f t i pc o r e ) 、完成结构描述的“固i p 内核( f i 珈i pc o r e ) ”和基于物理描述并 经过工艺验证的“硬i p 内核( h a r di pc o r e ) 三个层次。这相当于集成电路( 器 件或部件) 的毛坯、半成品和成品的设计技术。i p 通常可以按照存在的形式分为 三种:软i p 、硬i p 和固i p 。 软i p 内核通常是用某种h d l 文本提交用户,已经过行为级设计优化和功能 验证,不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级网表, 并可以进行后续结构设计,具有最大的灵活性,可以很容易地借助于综合工具与 其他外部逻辑电路结合成一体,根据不同的半导体工艺,设计成具有不同性能的 器件。可以商品化的软i p 内核一般电路结构总门数都在5 0 0 0 门以上。软i p 内 1 0 江苏大学硕士学位论文 核义称作虚拟器件。 硬i p 内核是基于某种半导体工艺的物理设计,已有固定的拓扑布局和具体 工艺,并已经过工艺验证,具有可保证的性能。其提供给用户的形式是电路物理 结构掩模版图和全套工艺文件,是可以拿来就用的全套技术。 固i p 内核的设计深度则是介于软i p 内核和硬i p 内核之问,除了完成硬i p 内核所有的设计外,还完成了门电路级综合和时序仿真等设计环节。一般以门电 路级网表形式提交用户使用旧1 。 单个系统芯片上要实现的功能非常复杂,如果芯片上的所有功能元件都从头 开始设计,所需要的工作量将非常大。所以,e d a ( e 1 e c t r o n i cd e s i g na u t o m a t i o n ) 工具大多支持i p 库的使用,在i p 库中包含已经过验证的i p 模块。大型芯片设 计公司为了提高集成电路的设计效率,需要尽可能多地使用已有的电路模块,包 括从其他公司购买所需要的i p ,然后再将这些i p 模块通过某种方式“拼装 成 符合功能要求的芯片。这就是i p 重用技术( i pr e u s e ) 。这样,在设计过程中需 要某个功能模块时,直接从i p 库中调出该i p 模块即可,使得设计人员的主要精 力集中到系统功能的实现和功能模块之间的关系上,从而加快芯片的设计过程。 i p 库中也可以随时加入一些专用的i p 模块,以备将来使用阳 。 基于f p g a 的i p 核构造s o p c 系统是未来电子系统发展的方向n 们,目前, 它已成为国际信息产业领域的热门技术,具有广阔的应用前景。i p 核专营公司 日见增多。目前自主开发和经营i p 核的公司有6 d 洲、m 1 p st e c h n 0 1 0 画e s 、r 锄出u s 及v i r a g el o g 等。以a r m 公司为例,从1 9 8 5 年设计开发出第一块r j s c 处理器 i p 核模块,到1 9 9 0 年首次将其i p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年眼科病例分析训练试题答案及解析
- 农发行内江市威远县2025秋招群面案例总结模板
- 农发行重庆市渝中区2025秋招笔试EPI能力测试题专练及答案
- 2025年医学检验(师)题库检测试题打印(综合卷)附答案详解
- 北京市2025北京市劳动人民文化宫事业单位招聘9人笔试历年参考题库附带答案详解
- 物业管理中的信息保密措施
- 大力水手的海洋航行冒险规定
- 仪表工业标准化认证细则
- 医院净化工程施工组织设计
- 房屋买卖合同纠纷调解与仲裁协议
- 无仓储危化品经营单位应急预案
- 洗胃机的使用课件
- 混播草草坪施工方案
- GB/T 33881-2017罐车用铝合金板、带材
- GB/T 2951.2-1997电缆绝缘和护套材料通用试验方法第1部分:通用试验方法第2节:热老化试验方法
- 安全生产知识题库(2000道)
- 完形填空完整版教学设计
- ICU患者的人文关怀课件
- 《概率论与数理统计》-教学教案
- 放射培训考试习题及答案
- DB33∕1050-2016 城市建筑工程日照分析技术规程
评论
0/150
提交评论