(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf_第1页
(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf_第2页
(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf_第3页
(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf_第4页
(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机应用技术专业论文)基于pci总线的高速串行通信研究与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 国家8 6 3 项目“飞行控制计算机系统f c 通信卡研制”的任务是研究、设计、 制做符合c p c i 总线标准的f c 通信卡,并设计高速串行通信接口,实现多计算机 系统间高速串行通信。 本文以此项目为背景,利用e d a 技术对基于p c 总线的高速串行通信接口进 行研究与实现。首先介绍p c i 总线接口的一些常用实现方法,然后采用基于f p g a + p c i 软核的方法实现了p c i 总线接口。在此基础上,研究r o c k e t i o 及a u r o r a 设 计技术,并利用这两个i p 核来实现高速串行数据的收发功能,最后设计两个异步 f i f o 用于连接p c i 总线接口模块与高速串行数据收发模块,完整地实现一个基于 p c i 总线的高速串行通信接口功能,高速串行数据使用光纤通道进行传输。整个接 口方案依次进行仿真、验证,并实现下载到f p g a 芯片中。 设计选用硬件描述语言v e r i l o g h d l ,在开发工具x i l i n xi s e 7 1 中完成整个系统 的设计、综合、布局布线,利用m o d e l s i m 进行功能及时序仿真,利用i s e 内嵌的 c h i p s c o p ep r o 对设计进行在线逻辑分析。系统设计过程按照自上而下的设计方法, 设计验证方法采取由里及外的方式,验证流程是功能仿真、时序仿真、板级调试。 本设计通过了系统测试,功能得到验证,最终下载到开发板中进行物理仿真,运行 正常。 本设计基于f p g a 进行开发设计,大幅度提高调试速度,缩短开发周期,提高 电路板的集成度和系统的性能。另外,接口设计紧凑,方案确实可行,具有传输速 率高的特点。 文章对系统进行了验证及性能分析,最后指出工作中的不足之处和需要进一步 完善的地方。 关键字:f p g a ;p c i 总线;高速串行通信; a b s t r a c t a b s t r a c t n en a t i o n a l8 6 3p r o j e c t d e v e l o p m e n to ff l i g h t - c o n t r o l i n gc o m p u 把rs y s t e mf c b o a r d i st or e s e a r c ha n dd e s i g na nf cb o a r dc o m p l i a n tw i mc p c ib u ss t a n d a r d , a n dt o d e s i g nah i g h s p e e ds e r i a lc o m m u n i c a t i o ni n t e r f a c e f o ri m p l e m e n t i n gt h eh i 曲- s p e e d s e r i a lc o m m u n i c a t i o ni nm u l t i - c o m p u t e rs y s t e m s i nt h i sb a c k g r o u n d ,t h i st h e s i sr e s e a r c h e sa n di m p l e m e n t sah i 曲- s p e e ds e r i a l c o m m u n i c a t i o ni n t e r f a c es y s t e mb a s e do np c ib u sw i t he d at e c h n i q u e a tf a s t , i n t r o d u c es o m eb a s i cm e t h o d sa n di m p l e m e n tt h ep c ib u si n t e r f a c ew i t hf p g a + p c is o f t c o r e t h e nc a r r yo u tt h eh i g h s p e e ds e r i a ld a t at r a n s c e i v e r 、 r i mr o c k e ti oa n da u r o r ai p c o r e ,a n dd e s i g nt w oa s y n c h r o n o u sf i f o st oc o n n e c tt h ep c ib u si n t e r f a c em o d d ea n d t h et r a n s c e i v e rm o d u l e t h e r e f o r , ah i 曲- s p e e ds e r i a lc o m m u n i c a t i o ni n t e r f a c es y s t e mi s i m p l e m e n t e dw h o l e l ya n ds e r i a ld a t ai st r a n s c i e v e di nh i g h s p e e dt h r o u g hf i b e rc h a n n e l n ew h o l ed e s i g nh a sb e e ns i m u l a t e d ,v e r i f i e d ,i m p l e m e n t e da n dd o w n l o a d e di nt h e f p g a t h i sd e s i g nu s e sv e r i l o g h d la n dx i l i n xi s e 7 1t oc o m p l e t et h ed e s i g n ,s y n t h e s i s , p l a c e & r o u t e ,a n dp r o c e s s e sf u n c t i o na n dt i m i n gs i m u l a t i o ni nm o d e l s i m , a n du s e s c h i p s c o p e p r oe m b e d d e di ni s et oa n a l y z et h ed e s i g no n l i n e t l l i ss y s t e md e s i g nf o l l o w s t h et o p - t o d o w nm e t h o da n di sv e r i f i e df r o mi n s i d et oo u t s i d e 。t h ev e r i f i c a t i o nf o l l o w s f u n c t i o ns i m u l a t i o n ,t i m i n gs i m u l a t i o na n do n b o a r dd e b u gt om a k es u r et h ed e s i g np a s s s y s t e m i ct e s t f i n a l l y , t h es y s t e mi sd o w n l o a d e dt ot h ed e v e l o p m e n tb o a r da n dw o r kw e l l a f t e rb e i n gv e r i f i e da n di m p l e m e n t e d t h es y s t e md e s i g ni sb a s e do nf p g a s oi ts p e e d su pt e s tp r o c e s sa n dr e d u c e s d e v e l o pp e r i o d ,a n di m p r o v e ss y s t e mp e r f o r m a n c e b e s i d e s ,t h ei n t e r f a c es y s t e mi s c o m p a c t a b l ea n df e a s i b l ew i mh i 曲- s p e e dd a t ar a t e ,a n di su s e f u lf o rt h ef u r t h e rw o r k a tl a s t ,t h i st h e s i sm a k e sas u m m a r ya n dp u tf o r w a r dt h ef u r t h e rw o r k k e yw o r d s :f p g a ;p c ib u s ;h i 曲s p e e ds e r i a lc o m m u n i c a t i o n : 厦门大学学位论文原创性声明 兹呈交的学位论文,是本人在导师指导下独立完成的研究成果。本 人在论文写作中参考的其他个人或集体的研究成果,均在文中以明确方 式标明。本人依法享有和承担由此论文产生的权利和责任。 声明人( 签名) :泛 霉铭 砷易年6 月日 厦门大学学位论文著作权使用声明 本人完全了解厦门大学有关保留、使用学位论文的规定。厦门大学 有权保留并向国家主管部门或其指定机构送交论文的纸质版和电子版, 有权将学位论文用于非赢利目的的少量复制并允许论文进入学校图书 馆被查阅,有权将学位论文的内容编入有关数据库进行检索,有权将学 位论文的标题和摘要汇编出版。保密的学位论文在解密后适用本规定。 本学位论文属于 1 、保密() ,在年解密后适用本授权书。 2 、不保密( ) 。 ( 请在以上相应括号内打“”) 作者签名:灵 霆、务毛 日期:弦形年石月日 导师签名:仫主l日期:川年月日 第一章绪论 1 1 概述 第一章绪论 随着各领域对控制系统的可靠性要求不断提高,集群式高性能互连计算机系统 的应用越来越广泛。当前,在系统级互连设计中,高速串行技术【1 1 正迅速取代传统 的并行技术正成为业界趋势。这是因为,虽然增加并行总线宽度可以提高数据吞吐 量,但是,总线数目及传输速率的加快会陡增p c b 布线的难度和信号的延时或偏移, 同时极容易受到电磁干扰( e m i ) 的影响及自身也会产生电磁干扰,从而使提高总 线数据吞吐率的要求面临一个极限。当信号超越1 g b p s 时,并行信号加外部源时钟 同步设计很难保持同步,实现很困难。 高速串行互连技术将时钟与数据合并进行传输,克服了时钟和数据的抖动问 题,极大地提高传输速度,降低i c 外围引脚数,降低功耗并获得较佳的信号完整 性,能够带来更高的性能、更低的成本和更简化的设计。高速串行互连技术的发展 克服了并行互连的速度瓶颈,被越来越广泛地应用于各种系统设计中,如p c 、海 量存储器、服务器、通信网络、工业计算和控制等。迄今业界已经发展出了多种串 行系统接口标准,如p c i 2 e x p r e s s 、串行r a p i di o 、i n f i r l i b a n d 、千兆以太网、1 0 g b i t 以太网x a u i 等。 尽管高速串行互连技术与传统并行互连技术相比具有明显的技术优势,但迄今 为止还没有灵活、低成本及通用的硅片解决方案,加上各种新的接口不断涌现,接 口标准在短期内还难以实现统一。 可编程逻辑器件随着微电子制造工艺的发展取得了长足的进步,现已发展成为 可以完成超大规模的复杂组合逻辑与时序逻辑的现场可编辑逻辑器件f p g a 。新一 代的f p g a 甚至集成了中央处理器内核和多吉比特高速串行通信接口m g t ( m u l t i g i g a b i t t r a n s c e i v e r ) ,可在片f p g a 上进行软硬件协同设计,为实现片上 可编程系统s o p c 提供了强大的硬件支持。f p g a 具有许多优点,既继承了a s i c ( 专用集成电路) 的大规模、高集成度、高可靠性的优点,又克服了普通a s i c 设 计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电路设计的理想首选。 f p g a 可以方便地通过对逻辑结构的修改和配置,完成对系统和设备的升级,以便 基于p c i 总线的高速串行通信研究与实现 迅速适应市场的变化;f p g a 可以支持多种通信协议和接口标准,并可以随着标准 和协议的演变而改变功能。因此采用配置灵活的f p g a 担任不同i o 的高速转换装 置,设计高速串行接口可以带来很大的灵活性。 现代航空电子系统为适应电子元器件市场的变化,采用开放式的系统结构。开 放式系统结构的主导思想是利用当今先进的工业标准总线结构,采用标准模块组成 高性能的先进系统,用标准接口提供产品使用在电气、协议、语言及环境规范符合 一定的接口标准,研制厂家仅需按性能和功能要求实现标准模块的功能和标准接 口,形成通用的部件,对特殊功能的模块只要用户自行设计和制造,保证接口的标 准就可以和通用部件组成使用的子系统部件。在软件设计中,选择相对硬件独立的 语言和开发系统,按功能模块实现整个系统的性能要求。开放式的系统结构提供了 通用的硬件和软件平台,保证在未来元器件发生变化时硬件和软件的变化最小,以 利于产品的升级换代。 1 2 飞控计算机系统通信卡介绍 1 2 1 项目来源及意义 厦门大学计算机系与清华大学智能技术与系统国家重点实验室合作的国家8 6 3 项目,为飞行控制计算机系统设计高速串行通信接口。其飞行控制计算机系统采用 多机系统结构,根据工作的要求,为保障系统的可靠性工作,飞行控制计算机采用 三余度容错系统,使整个系统达到一次计算机故障工作,二次故障安全的设计原则。 飞行控制计算机系统单机部分确定为c p c i 总线标准的工控机结构,c p u 之间的通 信信道确定为光纤通道。 设计采用了v i r t e x i ip r of p g a 器件作为通信卡的核心控制芯片,实现高速串 行数据的收发、内部数据的封装处理、以及和主机c p u 的p c i 接口功能。同时利 用芯片中配置有的3 0 0 m h z i b m p o w e r p c4 0 5c p u 可以极大地增强通信接口的数 据处理及控制能力,构成“智能通信卡”,这一方面可以减轻主机c p u 的通信处理 负担,另一方面可以满足不同通信协议对数据链路层功能的变化需求。 l 。2 2 通信卡的设计要求 光纤通信自阿世以来,以其通信容量大、传输距离长、抗电磁干扰能力强、保 密性好、重量轻等优点,已经广泛应用于长途通信、电力、广播电视、计算机网络 2 第一章绪论 等领域,并已逐渐应用于用户系统。光纤通道提供了低延迟、损耗低、高带宽的通 讯链路。飞控计算机系统需要高速的传输系统,为了满足这个要求,光纤通道成为 数据传输的首选方案。 通信卡技术指标包括: 采用c p c i 总线标准,3 u 规格( 1 0 0 m m x1 6 0 m m ) : 配置两套f c 通道接口( 每套一发一收) ; 通道的通信速率 1 0 g b i t s ; c p c i 总线采用3 2 位字长、3 3 m h z 、3 3 v 逻辑电平标准; 通信卡应具有高可靠性,具有自检功能: 1 2 3 设计方案的制定及核心芯片的选择 飞行控制计算机系统采用三机冗余的多c p u 结构,通信方式及具体接口的选 择直接影响着控制系统的整体性能。采用光纤无疑是比较理想的一种选择。其高速 串行和抗干扰能力是其它方式很难比较的。设计方案为每个f c 通信卡配置2 套独 立的光纤通道,使每套单机控制系统分别与另外两套系统连接,构成3 机双向环形 拓扑结构,如图1 1 所示,确保通信信道的高可靠性。 图1 1 三机互连双向环形结构 v i r t e x i i p r o 系列产品是x i l i n x 推出的高端f p g a 产品,它利用i p 植入技术, 无缝嵌入了3 2 位的i b m p o w e r p c4 0 5 r i s c 处理器内核和r o c k e t i o 多路吉比特串 行收发器m g t 。通过在v i r t e x i ip r o 系列产品中内嵌3 2 位的r i s c 处理群内核和 3 1 2 5 g b s 的r o c k e ti o 高速串彳亍接口,为网络和通信系统提供了极高的带宽、极强 的灵活性和极高的处理能力。因此通信卡采用了v i r t e x i ip r o 的器件来实现高速串 行数据的收发、内部数据的封装处理、以及和主机通信的p c i 接口功能。 基于p c i 总线的高速串行通信研究与实现 1 2 4 通信卡系统体系结构 如图l 一2 所示,通信卡的完整体系结构包括:硬件平台、设备驱动程序和应 用程序。 应用程序 设备驱动程序 l f p g a l 飞控通信卡硬件平台 图1 2 飞控通信卡体系结构框图 ( 1 ) 通信卡硬件平台 硬件平台的设计是项目要完成的任务之一。通信卡的核心控制芯片是f p g a , 要使通信卡工作还必须设计高速串行通信接口的数字系统,而设计高速串行通信接 口是项目要完成的重点任务。 ( 2 ) 设备驱动程序 设备驱动程序是连接k 层应用软件与低层硬件的桥梁和纽带。每个设备均有自 己的设备驱动程序,为用户提供用于设备操作的较抽象的操作函数集。 ( 3 ) 应用程序 应用程序直接面对操作用户,通过直观、友好的测控操作与显示界面、丰富的 数据与处理功能,完成用户所需的测试任务。 1 2 5 高速串行通信接口的两种设计方案 通信卡的大部分功能是由f p g a 来实现的,因此,f p g a 片内逻辑设计( 即高 速串行通信接口) 是通信卡设计的难点和核心。高速串行通信接口的设计拟采用两 种方案: 方案:利用f p g a 内嵌的p o w e r p c4 0 5 处理器构建嵌入式系统,在f p g a 内 部实现系统的总线架构,利用r o c k e ti o 及a u r o r a 这两个i p 核实现高速串行数据 的收发功能,采用o p b p c i 桥接核实现了p c i 接口逻辑,完整实现一个s o p c 片上 可编程系统,实现高速串行通信接口功能。 第一章绪论 方案= :采用基于f p g a + p c i 软核的方法实现了p c i 总线接口,并利用r o c k e t i o 及a u r o r a 这两个i p 核来实现高速串行数据的收发功能,展后设计两个异步f i f o 用于连接p c i 总线接口模块与高速串行数据收发模块,完整地实现个基于p c i 总 线的高速串行通信接口功能。整个接口直接以硬件控制为主进行工作。 1 3 本课题的研究内容及创新之处 本课题采用的方案二的设计方法,具体的研究内容包括: 1 - 研究并实现基于f p g a 的p c i 总线接口; 2 研究并应用a u r o r a 链路层协议,以实现高速串行数据收发器; 3 在l 和2 基础上,构建基于p c i 总线的高速串行通信接口系统; 4 熟悉x i l i n x 开发板资料和开发p c i 设备的驱动程序,对系统进行仿真和验 证,并给出实验结果和性能分析。 本课题的主要特点是基于f p g a 进行开发设计,使用f p g a 代替了a s i c 作为 光纡通道数据通信处理芯片,灵活性高,可适应各种不同场合和不同的标准。因此, 大幅度提高调试速度,缩短开发周期,提高电路板的集成度和系统的性能。另外, 接口设计紧凑,采用p c i 接口+ 异步f i f o + 多吉比特收发器m g t 的设计方案确实 可行,具有传输速率高的特点,为下一步工作奠定了基础。 1 4 本文的组织结构 以下为本文每章内容概要: 第一章:绪论。概述了相关领域的背景情况,对飞控计算机系统通信卡进行 整体介绍进而提出本文的研究内容及创新之处。 第二章:数字系统设计的基础知识介绍。本章分别对数字系统硬件设计的方 法、硬件描述语言、f p g a 基础知识和设计流程、以及i p 核的概念等加以简单介绍。 本部分是设计的理论及技术基础。 第三章:基于p c i 总线的高速串行通信接口系统设计。本章将提出一种基于 p c i 总线的高速串行通信接口设计方案,然后对设计中各个主要功能模块一一进行 研究并设计实现。本部分是论文的核心部分。 第四章:系统验证与分析。本章介绍系统验证的硬件平台、p c i 驱动程序的 基于p c i 总线的高速串行通信研究与实现 开发、设计的系统验证及结果分析。本部分是论文的重要组成部分。 第五章:结束语。总结了论文所做的工作,指出工作中的不足之处,强调下 一步工作方向。 第二章数字系统设计的基础知识介绍 第二章数字系统设计的基础知识介绍 本章对数字系统设计的相关基础知识加以简介,主要有数字系统硬件设计的方 法、硬件描述语言、f p g a 基础知识与设计流程、i p 核的概念以及x i l i n x 公司的f p g a 芯片等相关内容。 2 1 数字系统硬件设计概述 在计算机辅助电子系统设计出现以前,人们一直采用传统的硬件电路设计方法 来设计系统的硬件。这种硬件设计方法【2 l 主要有以下几个特征; ( 1 ) 采用自下而上( b o t t o m u p ) 的设计方法 ( 2 ) 采用通用的逻辑元、器件 ( 3 ) 在系统硬件设计的后期进行仿真和测试 ( 4 ) 主要设计文件是电原理图 而现在的数字系统硬件设计大多采用硬件描述语言来设计。所谓硬件描述语 言,就是可以描述硬件电路的功能,信号连接关系及定时关系的语言。它能比电原 理图更有效地表示硬件电路的特性。利用硬件描述语言编程来表示逻辑器件及系统 硬件的功能和行为,这是该设计方法的一个重要特征。利用h d l 语言设计硬件系 统的方法,归纳起来有以下几个特点: ( 1 ) 采用自上而下( t o p d o w n ) 的设计方法 所谓自上而下的设计方法,就是从系统总体要求出发,自上而下地逐步将设计 内容细化,最后完成系统硬件的整体设计。自上而下的设计思想如图2 1 所示。 图2 1自上而下的设计思想 基于p c i 总线的高速串行通信研究与实现 ( 2 ) 系统中可大量采用a s i c 芯片 硬件设计人员在设计硬件电路时,无须受只能使用通用元、器件的限制,而可 以根据硬件电路设计需要,设计自用的a s i c 芯片或可编程逻辑器件,这样最终会 使系统电路设计更合理,体积也可大为缩小。 ( 3 ) 采用系统早期仿真 与自上而下的设计过程对应,要进行三级仿真,即行为层次仿真、r t l 层次仿 真和门级层次仿真。它们贯穿设计的全过程,从而可以在系统设计早期发现设计中 存在的问题,大大缩短系统的设计周期,节约大量的人力和物力。 ( 4 ) 降低了硬件电路设计难度 用h d l 语言设计硬件电路,免除编写逻辑表达式或真值表之苦,设计难度大 幅下降,缩短了硬件电路的设计周期。 ( 5 ) 主要设计文件是用h d l 语言编写的源程序 采用h d l 语言设计硬件电路,主要设计文件是用h d l 语言编写的源程序,这 些源程序作为归档文件有很多好处。其一是资料量小,便于保存。其二是可继承性 好。其三是阅读方便。 2 2 硬件描述语言h i ) l 硬件描述语言 3 】【4 】( 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 ) 是一种用形式化方 法来描述数字电路和设计数字逻辑系统的语言。数字逻辑电路设计者利用这种语言 可以从上层到下层( 从抽象到具体) ,逐层描述自己的设计思想,用一系列分层次 的模块来表示极其复杂的数字系统。 目前,最常用的两种标准化的硬件描述语言为:v h d l 和v e r i l o gh d l 。v h d l 由美国军方组织开发,在1 9 8 7 年成为i e e e 标准。v e r i l o gh d l 则是从一个普通的 民间公司的私有财产转化而来,首创于1 9 8 3 年,基于其优越性,在1 9 9 5 年成为i e e e 标准。 v e r i l o gh d l 与v h d l 作为描述硬件电路设计的语言,它们的共同特点是利于 由顶向下设计,利于模块的划分与复用,可移植性好,通用性好,设计不因:芯片的 工艺与结构的变化而变化,更利于向a s i c 的移植。 v h d l 描述语言层次较高,不易控制底层电路,因而对v h d l 综合器的综合性 第二章数字系统设计的基础知识介绍 能要求较高,而且v h d l 入门较难,因为v h d l 不很直观,需要有a d a 编程基础。 v e r i l o g 拥有更广泛的设计群体,成熟的资源也远比v h d l 丰富,而且它易于掌握, 风格类似于c 语言。 v e r i l o g 较为适合系统级( s y s t e m ) 、算法级( a l o g r i t h e m ) 、寄存器传输级( r t l ) 、 逻辑级( l o g i c ) 、门级( g a t e ) 和电路开关极( s w i t c h ) 的设计,而对于特大型( 千 万门级以上) 的系统级( s y s t e m ) 设计,则v h d l 更为适合。由于两种语言仍处在 不断发展的过程中,它们都会逐步地完善自己。 2 3 i p 核的概念 i p ( i n t e l l e c t u a lp r o p e r t y ) 就是常说的知识产权。美国d a t a q u e s t 咨询公司将半 导体产业的i p 定义为用于a s i c 、a s s p 和p l d 等当中,并且是预先设计好的电路 模块。i p 核模块有行为、结构和物理三级不同程度的设计,对应描述功能行为的不 同分为三类:软核、完成结构描述的固核和基于物理描述并经过工艺验证的硬核。 软核( s o f t i p c o r e ) i p 软核通常是用h d l 文本形式提交给用户,它经过r t l 级设计优化和功能验证, 但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级设计网 表,并可以进行后续的结构设计,具有很大的灵活性,借助于e d a 综合工具可以很 容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺,设计成具有不同 性能的器件。软i p 内核也称为虚拟组件( v c v i r t u a lc o m p o n e n t ) 。 硬核( h a r di p c o r e ) i p 硬核是基于半导体工艺的物理设计,已有固定的拓扑布局和具体工艺,并已 经过工艺验证,具有可保证的性能。其提供给用户的形式是电路物理结构掩模版图 和全套工艺文件,是可以拿来就用的全套技术。 固核( f i r m i p c o r e ) i p 固核的设计程度则介于软核和硬核之间,除了完成软核所有的设计外,还完 成门级电路综合和时序仿真等设计环节。一般以门级电路网表的形式提供给用户。 选择i p 模块设计时,一般要考虑的因素有:i p 与目标系统的配合程度、评估 i p 模块的品质、集成的方便程度以及可重用性,并考虑i p 开发者提供的技术支持 程度等。 基于p c i 总线的高速串行通信研究与实现 2 4 f p g a 简介 在数字化、信息化的时代,数字集成电路应用得非常广泛。可编程逻辑器件随 着微电子制造工艺的发展取得了长足的进步。从早期的只能存储少量数据,完成简 单逻辑功能的可编程只读存储器( p r o m ) 、紫外线可擦除只读存储器( e p r o m ) 和电可擦除只读存储器( e e p r o m ) ,发展到能完成中大规模的数字逻辑功能的可 编程阵列逻辑( p a l ) 和通用阵列逻辑( g a l ) ,今天已经发展成为可以完成超大规 模的复杂组合逻辑与时序逻辑的现场可编程逻辑器件( f p g a ) 和复杂可编程逻辑 器件( c p l d ) 。新一代的f p g a 甚至集成了中央处理器( c p u ) 或数字处理器( d s p ) 内核,在一片f p g a 上进行软硬件协同设计,为实现片上可编程系统( s o p c :s y s t e m o np r o g r a m m a b l ec h i p ) 提供了强大的硬件支持。 2 4 1f p g a 的基本原理 简化的f p g a 基本由6 部分组成5 1 :可编程输入输出单元、基本可编程逻辑单 元、嵌入式块r a m 、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核,如图2 2 所示。 图2 2 可编程逻辑器件的结构原理图 第二章数字系统设计的基础知识介绍 ( 1 ) 可编程输入输出单元 输入输出单元简称i o 单元,它们是芯片与外界电路的接口部分,完成不同电 气特性下对输入输出信号的驱动与匹配需求。为了使f p g a 有更灵活的应用,目前 大多数f p g a 的i o 单元被设计为可编程模式,即通过软件的灵活设置,可以匹配 不同的电气标准与i o 物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整 输出驱动电流的大小等。 ( 2 ) 基本可编程逻辑单元 基本可编程逻辑单元是可编程逻辑的主体,可以根据设计灵活地改变其内部连 接与配置,完成不同的逻辑功能。f p g a 一般是基于s r a m 工艺的,其基本可编程 逻辑单元通常是由查找表( l u t :l o o k u p t a b l e ) 和寄存器( r e g i s t e r ) 组成的。查 找表般完成纯组合逻辑功能。f p g a 内部寄存器结构相当灵活,f p g a 中一般依 赖寄存器完成同步时序逻辑设计。比较经典的基本可编程单元配置为一个寄存器加 一个查找表。但是不同厂商的寄存器和查找表的内部结构有一定的差异,而且寄存 器和查找表的组合模式也不同。 ( 3 ) 嵌入式块r a m 大多数f p g a 都有内嵌的块r a m ( b l o c k r a m ) 。f p g a 内部嵌入可编程r a m 模块,大大地拓展了f p g a 的应用范围和使用灵活性。f p g a 内嵌的块r a m 一般 可以灵活地配置为单口r a m ( s p r a m :s i n g l e p o r t r a m ) 、双口r a m ( d p r a m : d o u b l ep o r t sr a m ) 、伪双口r a m ( p s e u d od p r a m ) 、c a m ( c o n t e n ta d d r e s s a b l e m e m o r y ) 和f i f o ( f i r s ti nf i r s to u t ) 等常用存储结构。 除了块r a m 以外,x i l i n x 和l a t t i c ef p g a 还可以灵活的将u j t 配置成r a m 、 r o m 、f i f o 等存储结构,这种技术被称为分布式r a m ( d i s t r i b u t e dr a m ) 。分布 式r a m 适用于多块小容量r a m 的设计。 ( 4 ) 丰富的布线资源 布线资源连通f p g a 内部所有单元,连线的长度和工艺决定着信号在连线上的 驱动能力和传输速度。布线资源可分为全局性的专用布线资源、长线资源、短线资 源及各种专用时钟、复位等控制信号线。设计者通常不需要直接选择布线资源,实 现过程中般是由布局布线器自动根据输入的逻辑网表的拓扑结构和约束条件选 择可用的布线资源连通所用的底层单元模块,所以设计者通常忽略布线资源。 ( 5 ) 底层嵌入功能单元 1 1 基于p c i 总线的高速串行通信研究与实现 这里指的是那些通用程度较高的嵌入式功能模块,比如p l l ( p h a s el o c k e d l 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 产品将包含d s p 或c p u 等软处理核,从而f p g a 将由传统的硬件设计手段逐步过 渡为系统级设计工具。 ( 6 ) 内嵌专用硬核 内嵌专用硬核是相对“底层嵌入功能单元”而言的,它主要指那些通用性相对 较差,不为大多数f p g a 器件所包含的硬核。为了提高f p g a 性能,适用高速通信 总线与接口标准,很多高端f p g a 集成了s e r d e s ( 串并收发器) 等专用硬核。例 如x i l i n x 的v i r t e xi ip r o 内部集成了3 1 2 5 gs e r d e s ,支持r o c k e ti o 标准。 2 4 2f p g a 的特点 f p g a 既继承了a s i c 的大规模、高集成度、高可靠性的优点,又克服了普通 a s i c 设计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电路设计的 理想首选。当代f p g a 有以下特点: 规模越来越大。芯片的规模越大所能实现的功能就越强,同时也更适于实现 片上系统( s o c ) 。 开发过程投资小。f p g a 芯片在出厂之前都做过百分之百的测试,而且f p g a 设计灵活,发现错误时可直接更改设计,减少了投片风险,节省了许多潜在的花费。 f p g a 一般可以反复地编程、擦除。在不改变外围电路的情况下,设计不同片 内逻辑就能实现不同的电路功能。 f p g a 开发工具智能化,功能强大。f p g a 开发工具种类繁多、智能化高、功 能强大。应用各种工具可以完成从输入、综合、实现到配置芯片等一系列功能。还 有很多工具可以完成对设计的仿真、优化、约束、在线调试等功能。这些工具易学 易用,使设计人员更能集中精力进行电路设计,快速将产品推向市场。 新型f p g a 内嵌c p u 或d s p 内核,支持软硬件协同设计,可以作为片上可编 程系统( s o p c ) 的硬件平台。 2 4 3f p g a 的设计流程 一般来说,完整的f p g a 设计流程包括电路设计与输入、功能仿真、综合、综 合后仿真、实现、布线后仿真与验证和下板调试等主要步骤,如图2 3 所示。 1 2 第二章数字系统设计的基础知识介绍 图2 3 完整的f p g a 设计流程 ( 1 ) 电路设计与输入 电路设计与输入是根据工程师的设计方法将所设计的功能描述给e d a 软件。 常用的设计输入方法有硬件描述语言和原理图设计输入法。波形输入和状态机输入 方法是藤种常用的辅助设计输入方法。 ( 2 ) 功能仿真 电路设计完成后,要用专用的仿真工具对设计进行功能仿真,验证电路功能是 否符合设计要求。功能仿真有时也被称为前仿真。通过仿真能及时发现设计中的错 误,加快设计进度,提高设计的可靠性。 ( 3 ) 综合优化 综合优化( s y n t h e s i z e ) 是指将h d l 语言、原理图等设计输入翻译成由与、或、 基于p c i 总线的高速串行通信研究与实现 非门,r a m ,触发器等基本逻辑单元组成的逻辑连接( 网表) ,并根据目标与要求 ( 约束条件) 优化所生成的逻辑连接,输出e d f 和e d n 等文件,供f p g a 厂家的布 局布线器进行实现。常用的专业综合优化工具有s y n p l i c i t y 公司的s y n p l i f y s y n p l 坶 p r o 、a m p l i f y ,x i l i n xi s e 中的x s t ,s y n o p s y 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 等。 ( 4 ) 综合后仿真 仿真时,把综合生成的延时文件反标到综合仿真模型中去,可估计门延时带来 的影响,进而检查综合器的综合结果是否与设计输入一致。综合后仿真比功能仿真 精确一些,但只能估计门延时,不能估计线延时。 ( 5 ) 实现 使用f p g a 厂商提供的工具软件,根据所选芯片的型号,将综合输出的逻辑网 表适配到具体f p g a 器件上,这个过程叫做实现( i m p l e m e n t a t i o n ) 。x i l i n x 的实现 过程分为翻译( t r a n s l a t e ) 、映射( m a p ) 和布局布线( p l a c e r o u t e ) 等3 个步骤。 因为只有器件开发商最了解器件的内部结构,所以实现步骤必须选用器件开发商提 供的工具软件。 ( 6 ) 时序仿真与验证 布局布线后应做时序仿真,即将布局布线的时延文件反标到设计中,使仿真既 包含门延时,又包含线延时信息。时序仿真最为全面、准确,能较好地反映芯片的 实际工作情况。在时序仿真后的验证手段比较丰富,可用i s e 内嵌时序分析工具完 成静态时序分析( s t a ,s t a t i ct i m i n ga n a l y z e r ) ,也可用第三方验证工具( 如s y n o p s y s 的f o r m a l i t y 验证工具,p r i m e t i m e 静态时序分析工具等) 进行验证。可以用i s e 内 嵌的f p g ae d i t o r 和c h i pv i e w e r 观察芯片内部的连接与配置情况,或用i s e 内嵌的 c h i p s c o p ep r o 对设计进行在线逻辑分析。 ( 7 ) 调试与加载配置 最后步骤是在线调试或将生成的配置文件写入芯片中进行测试。在i s e 中对应 的工具是i m p a c t 。 任何仿真或验证步骤出现问题,就需要根据错误的定位返回到相应的步骤更改 或重新设计。 第二章数字系统设计的基础知识介绍 2 5x i l i n xf p g a 器件简介 2 5 1x f l i n xf p g a 器件分类 x i l i n x 的f p g a 分为两大类,s p a r t a n 系列和v i r t e x 系列。 s p a r t a n 系列f p g a 高性价比的f p g a ,侧重低成本应用,容量中等,性能可以满足一般的数字逻 辑设计要求,包括s p a r t a n 、s p a r t a n i i 、s p a r t a n i i e 以及s p a r t a n - 3 。s p a r t a n 3 3 l 3 e 成本低廉,总体性能指标不是很优秀,适合低成本应用场合,是x i l i n x 未来几年在 低端f p g a 市场上的主要产品。 v i r t e x 系列f p g a 高性能的f p g a ,侧重于高性能应用,容量大,性能能满足各类高端应用。包 括v i r t e x ,v i r t e x e ,v i r t e x i i ,v i r t e x - i ip r o ,v i r t e x i ip r ox 以及最新的v i r t e x 4 。v i r t e x 和v i r t e x e 是早期产品,现己逐步淡出市场:v i r t e x i i 是2 0 0 2 年推出的大规模高端 f p g a 产品,是比较成功的产品,目前在高端产品中使用广泛:v i r t e x i i p r o d ( 基于 v i r t e x - i i 的结构,内部集成p o w e r p c c p u 和高速串行接口r o c k e t i o 的f p g a 产品; v i r t e x 4 系列是x i l i n x 最新一代高端f p g a 产品,具有更高的集成度,包含三个子 系列:l x 、s x 和f x 。其中v i r t e x 4l x 侧重普通逻辑应用,v i r t e x 4s x 侧重数字 信号处理,d s p 模块比较多,r t e x 一4f x 集成p o w e r p c 和高速接口收发模块。 2 5 2v i r t e x i ip r of p g a 器件描述 v i r t e x i ip r of p g a 6 1 基于v i r t e x i i 架构,嵌入了r o c k e ti o 和3 2 位的i b m p o w e r p c 4 0 5 处理器内核,从而成为世界上第一个集成了p o w e r - p c 处理器和多个 g b p s 速率串行收发器的f p g a 产品,具有了高性能系统设计所需要的两个关键技 术:r i s c 处理和高速串行技术。结合原有v i r t e x i i 结构中的先进互连( a c t i v e i n t e r c o n n e c t ) 、块r a m 和时钟管理功能,v i r t e x i ip r o 解决方案第一次实现了超高 带宽s o c ( 系统缎芯片) 设计,将可编程技术的使用模式从逻辑器件层次提升到系 统一级。 v i r t e x i ip r o 拥有丰富的内部资源: 可编程逻辑块c l b ( c o n f i g u r a b l el o g i cb l o c k ) : 可编程输入输出模块i o b ( i n p u t o u t p u tb l o c k s ) ; 15 基于p c i 总线的高速串行通信研究与实现 可编程内部连线资源p i c ( p r o g r a m m a b l ei n t e r c o n n e c t ) : 块存储区b r a m ( b l o c kr a m ) ,作为f p g a 内部的专用存储器模块,每块大小 为1 8 k b i t s ,可配置成单端口或完全的双端口,并且具

温馨提示

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

评论

0/150

提交评论