




已阅读5页,还剩61页未读, 继续免费阅读
(计算机系统结构专业论文)基于fpga的sci串行通信接口的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 国家8 6 3 项目“飞行控制计算机系统f c 通信卡研制的任务是研究设计符合 c p c i 总线标准的f c 通信卡。本课题是这个项目的进一步引伸,用于设计s c i 串行 通信接口,以实现环上多计算机系统问的高速串行通信。 本文以此项目为背景,对基于f p g a 的s c i 串行通信接口进行研究与实现。论 文先概述s c i 协议,接着对s c i 串行通信接口的两个模块:s c i 节点模型模块和c p c i 总线接口模块的功能和实现进行了详细的论述。 s c i 节模型包含a u r o r a 收发模块、中断进程、旁路f i f 0 、接受和发送存储器、 地址解码、m u x 。在s c i 节点模型的实现上,利用f p g a 内嵌的r o c k e t l o 高速串行 收发器实现主机之间的高速串行通信,并利用a u r o r ai p 核实现了a u r o r a 链路层协 议;设计一个同步f i f 0 实现旁路f i f 0 ;利用f p g a 上的块r a m 实现发送和接收存储 器;中断进程、地址解码和多路复合分别在控制逻辑中实现。 c p c i 总线接口包括p c i 核、p c i 核的配置模块以及用户逻辑三个部分。本课题 中,采用f p g a + p c i 软核的方法来实现c p c i 总线接口。p c i 核作为p c i 总线与用 户逻辑之间的桥梁:p c i 核的配置模块负责对p c i 核进行配置,得到用户需要的p c i 核;用户逻辑模块负责实现整个通信接口具体的内部逻辑功能;并引入中断机制来 提高s c i 通信接口与主机之间数据交换的速率。 设计选用硬件描述语言v e r i l o g h d l 和v h d l ,在开发工具x i l i n xi s e 7 1 中完 成整个系统的设计、综合、布局布线,利用m o d e l s i m 进行功能及时序仿真,使用 d r i v e r w o r k s 为s c i 串行通信接口编写w i n x p 下的驱动程序,用v c * 6 0 编写相 应的测试应用程序。最后,将f p g a 设计下载到f c 通信卡中运行,并利用i s e 内 嵌的c h i p s c o p ep r o 虚拟逻辑分析仪对设计进行验证,运行结果正常。 文章最后分析传输性能上的原因,指出工作中的不足之处和需要进一步完善的 地方。 关键字:f p g a ;s c i ;串行通信;p c i ;w d m 驱动; a b s t r a c t 1 1 1 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 cb o a r df o rt h ef l i g h t - c o n t r o l l i n g c o m p u t e rs y s t e m ”i st od e s i g na l lf cb o a r dc o m p l i a n tw i n lc p c ib u ss t a n d a r d t l l i s s u b j e c ti s t h ef u r t h e re x t e n s i o no ft h ep r o j e a , w h i c hi st od e s i g ns c is 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 ef o rh i g h - s p e e ds e r i a lc o m m u n i c a t i o na m o n gm u l t i p r o c e s s o r s y s t e m s u n d e rt h i sb a c k g r o u n d ,t h es c is e r i a lc o m m u n i c a t i o ni n t e r f a c ei sr e s e a r c h e d a n dd e s i g n e di nt h i st h e s i s n es c ip r o t o c o li si n t r o d u c e di ng e n e r a l , t h e 缸c t i o na n d i m p l e m e n t a t i o no ft h et w om o d u l e so f t h es c is 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 ,s c i n o d em o d u l ea n dc p c ib u si n t e r f a c e , a r ea l s od i s c u s s e d s c in o d em o d u l ei n c l u d e sa u r o r aw r m o d u l e ,i n t e r r u p tp r o c e s s ,b y p a s sf i f o , s e n d i n ga n dr e c e i v i n gr a m s ,a d d r e s sd e c o d i n gm o d u l e ,a n dm u x i tu s e st h e r e s o u r c ei nt h ef p g at oi m p l e m e n tt h es c i n o d em o d e l i ti sw i t ht h er o c k e t l ot o i m p l e m e n tt h eh i g h - s p e e dc o m m u n i c a t i o na n dw i ma u r o r ai pc o r et oi m p l e m e n tt h e a u r o r al i n kl a y e rp r o t o c 0 1 d e s i g nas y n c h r o n o u sf i f ot oi m p l e m e n tt h eb y p a s s f i f o i ti sw i t ht h eb l o c kr a mt od e s i g nt h es e n d i n ga n dr e c e i v i n gr a m s t h e i n t e r r u p tp r o c e s s ,a d d r e s sd e c o d e ra n dm u x a r ei m p l e m e n t e di nt h ec o n t r o ll o g i c c p c ib u si n t e r f a c ei n c l u d ep c ic o r e , t h ec o n f i g u r a t i o nm o d u l ea n du s e rl o g i c i n t h i st h e s i s ,i m p l e m e n tt h ec p c ib u si n t e r f a c ew i t hf p g a + p c is o f tc o r e p c ic o r ea s t h eb r i d g eo fp c ib u sa n du s e rl o g i c ;t h r o wt h ec o n f i g u r a t i o nm o d u l e ,c a ng e tt h ep c i c o r ew h i c hu s e re x p e c t ;a n du s e rl o g i cw i t hr e s p o n s i b i l i t yf o rt h ew h o l e c o m m u n i c a t i o ni n t e r f a c e si n t e r i o rl o g i c t h e ni m p o r tt h ei n t e r r u p tm e c h a n i s mt o i m p r o v et h es p e e db e t w e e ns c is e r i a lc o m m u n i c a t i o ni n t e r f a ca n dp c t h i sd e s i g nu s e sv e r i l o gh d l ,v 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 sc h i p s c o p ep 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 h ew i n x p d r i v e rf o rs c is e r i a lc o m m u n i c a t i o ni n t e r f a c ei sw r i t eb yu s i n gd r i v e r w o r k s ;a n d u s e sv c + + 6 ot od e v e l o pt h et e s tp r o g r a m 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 e d e v e l o p m e n tb o a r da n dw o r kw e l la 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 n er e a s o no ft h el o wt r a n s f e r - s p e e di sd i s c u s s e da tt h ee n do ft h i st h e s i s i ta l s o p o i n t so u tt h ep r o b l e m sa n dt h ef u r t h e rw o r k k e yw o r d s :f p g a :s c i ;s e r i a lc o m m u n i c a t i o n ;p c i : w d m : 厦门大学学位论文原创性声明 兹呈交的学位论文,是本人在导师指导下独立完成的研究成果。 本人在论文写作中参考的其他个人或集体的研究成果,均在文中以 明确方式标明。本人依法享有和承担由此论文产生的权利和责任。 声明人c :探亨互矽 矿,妒年6 只j e l 厦门大学学位论文著作权使用声明 本人完全了解厦门大学有关保留、使用学位论文的规定。厦门大学 有权保留并向国家主管部门或其指定机构送交论文的纸质版和电子版, 有权将学位论文用于非赢利目的的少量复制并允许论文进入学校图书 馆被查阅,有权将学位论文的内容编入有关数据库进行检索,有权将学 位论文的标题和摘要汇编出版。保密的学位论文在解密后适用本规定。 本学位论文属于 1 、保密() ,在年解密后适用本授权书。 2 、不保密( o 。 ( 请在以上相应括号内打“4 ”) 作者签名:毛勿日期:纠年月2 日 聊虢弘屯嗍硝年多月日 1 1 概述 第一章绪论 随着各领域对控制系统的可靠性要求不断提高,集群式高性能互连计算机系 统的应用越来越广泛。当前,在系统级互连设计中,高速串行技术t q i e 迅速取代 传统的并行技术正成为业界趋势。这是因为,虽然增加并行总线宽度可以提高数 据吞吐量,但是,总线数目及传输速率的加快会陡增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 n 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 tt 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 的s c i 串行通信接u 的研究与实现 的理想首选。f p g a 可以方便地通过对逻辑结构的修改和配置,完成对系统和设 备的升级,以便迅速适应市场的变化;f p g a 可以支持多种通信协议和接口标准, 并可以随着标准和协议的演变而改变功能。因此采用配置灵活的f p g a 担任不同 i o 的高速转换装置,设计高速串行接口可以带来很大的灵活性。 1 2 项目来源及意义 厦门大学计算机系与清华大学智能技术与系统国家重点实验室合作的国家 “8 6 3 项目“飞行控制计算机系统f c 通信卡的研制 ,任务是为飞行控制计算 机系统设计高速串行通信接口。其飞行控制计算机系统采用多机系统结构,根据 工作的要求,为保障系统的可靠性工作,飞行控制计算机采用三余度容错系统, 使整个系统达到一次计算机故障工作,二次故障安全的设计原则。飞行控制计算 机系统单机部分确定为c p c i 总线标准的工控机结构,计算机之间的通信信道为 光纤通道。 本课题是上述8 6 3 项目一飞控计算机通讯卡的进一步引伸,即采用f p g a 芯 片设计实现s c i 串行通信接口,以将多台机子以一定的拓扑结构连接起来完成某 些功能。本课题采用v i r t e x i ip r of p g a t 7 】器件作为串行通信接口的核心控制芯 片,实现c p c i 总线接口模块和s c i 协议的基本节点模型,以及设计s c i 节点的 传输包格式,并在主机与s c i 串行通信接口之间引入中断机制,以提高了数据交 换的速率。 1 3 研究内容 本课题的工作内容包括以下几个方面: 1 研究s c i 协议并在f p g a 芯片上构建s c i 节点,设计并完善适合s c i 串 行通信接口的传输包格式; 2 研究并应用a u r o r a 链路层协议,以实现s c i 节点的高速串行通信; 3 利用p c i 核实现了c p c i 总线接口; 4 引入中断机制,提高s c i 串行通信接口与主机交换数据的速率; 5 为通讯卡编写相应的硬件驱动程序和测试应用程序; 6 最后对整个系统进行仿真和验证,并给出实验结果和性能分析。 2 第一章绪论 本文主要阐述基于s c i 的串行通信接口的实现,探讨了s c i 节点模型以及 传输包的设计,阐述了如何利用r o c k e t l o 及a u r o r a 核实现系统之间通过光纤通 道进行数据高速串行通信,介绍使用p c i 核实现通信接口与主机的通信,和如何 引入中断机制来提高效率,最后介绍通信卡w d m 驱动的编写。整个接口设计紧 凑,在一块f p g a 器件内实现了全部逻辑设计,实现了用于多机互联并高速串行 通信的s c i 串行通信接口。 1 4 本文的组织结构 以下为本文结构安排各内容概要: 第一章:绪论。概述了相关领域的背景情况,说明项目的背景并提出本 文的研究内容。 第二章:设计开发背景知识介绍。本章分别对s c i 协议、数字系统设计、 f p g a 和通信卡硬件平台做了简单介绍。本部分是设计的技术基础。 第三章:s c i 节点模型的逻辑设计。本章先介绍s c i 串行通信接口的f p g a 整体逻辑划分,接着详细介绍s c i 串行通信接口中s c i 节点模型模块的设计与实 现。本部分是论文的重点部分。 第四章:c p c i 总线接口模块的设计。本章介绍s c i 串行通信接口中c p c i 接口模块的实现,详细介绍了p c i 核的使用。本部分是论文的第二个重点。 第五章:系统测试及性能分析。本章介绍p c i 驱动程序的开发,以及对 系统进行验证与测试,给出了测试结果并对测试结果进行了分析。本部分是论文 的重要组成部分。 第六章:结束语。对论文所做的工作进行了总结,指出了设计中存在的不 足之处,强调了今后的工作和努力的方向。 3 第二章设计开发背景知识介绍 2 1s c i 协议简介 2 1 1s c i 协议产生的背景和基本内容 随着计算机应用领域的拓展与加深,对计算机性能的要求也越来越高。进而 对系统中的信息交互提出了更高的要求。 传统的总线技术是一种共享介质,在某一时刻只能被一个发送器占用。因此, 系统总带宽的上限受介质传输率的限制。由于每一时刻只能有一个发送器访问总 线介质。因此每个节点所拥有的网络带宽随节点数的增加而递减,消息延时却随 着节点数的增加而递增。因此总线限制了总线上节点的数目。传统的总线技术由 于存在以上固有的限制已成为阻碍系统性能提高的瓶颈。 可扩展的一致性接口s c i 的出现克服了总线技术的不足,大大改善了信息交 互的效率,带宽满足了系统中和系统间的互连要求,成为先进互连技术的代表。 其低延迟高带宽的特点完全可胜任各种关键应用领域,美国的j a s t 联合先进攻 击计划组已把s c i 及其实时版本s c i r t 作为第四代先进航电系统的首选互连技 术。 s c i 针对总线方式带来的种种问题采用以下技术加以解决: 1 点到点链路 将总线方式也改变为点到点的连接。采用差分信号进行数据传输,并且消除 多连接器和分接头,只允许存在单个发送器和单个接收器。 2 单向环 保持恒定的驱动电流。有利于消除驱动开关的开断,以及接地电流的归零所 带来的噪声干扰。如图2 一l 。 3 并行化 总线同一时刻仅允许一个事务。而s c i 协议允许环上的多个节点可同时发送 和接收环中的消息。从而提高了环上事务处理的效率。 4 支持灵活的互连 5 基于f p g a 的s c i 串行通信接口的研究与实现 协议中链路可以以多种形式存在。两个节点可通过直接连接其输入和输出链 路进行通信。多个节点可以菊花链的形式组成一个环。环与环之间通过s w it c h 或a g e n t 进行互连。针对不同的应用而支持各种灵活的拓扑结构,例如r i n g , m e s h ,c u b e ,碟型等等。 5 分布式的时钟 由于集中式时钟比较昂贵,且不易扩展,系统的每个节点都应有自己的时钟 晶振。发送器的时钟应被包含在发送的数据之中,以简化接收器的工作。 6 数据包的长度优化 较长的数据包会长时间的占据路径资源,阻塞其它的交通。因而会增加平均 延迟。数据包过短会降低网络带宽的利用率。可行的数据包的下限应使得数据与 包头有大致相同的大小,其上限也应使得包头的开销占到百分之几。 接口 图2 - - 1从总线到s c i 环的演化 s c i 协议制订的目的是希望定义一种可支持高性能多处理器,一致性内存共 享,以及系统规模高度可扩展的互联标准。其中节点可以是处理器,内存,i 0 , 总线适配器,桥,或交换机等。该协议包括两个层次:物理层和逻辑层。物理层 定义了各种连接设备的电器,物理和热特性。逻辑层定义了地址空间,数据传输 协议,缓存一致性机制,同步原语,控制和状态寄存器以及初始化和故障恢复机 制。s c i 和网络的根本区别在于s c i 采用了基于内存访问的模型和缓存一致性模 型。尽管s c l 支持的距离可超过1 0 米,但实际应用中还取决于对性能的要求。 2 1 2s c l 节点接口结构 s c i 协议为每个节点定义了输入输出f i f o s 支持同时收发包。当数据包到达 6 第= 章设计开发基础 某节点后,节点的地址解码罂先对包进行地址解析,如果该包是发给本节点的则 送入输入f i f o 中等待处理,否则通过旁路f i f o 转发鲶下一个节点。在节点的 输出端,待输出的数据包存储在输出f i f o 中,只有当旁路f i f o 为空时节点才 能输出包为了清空f i f o ,可以在数据包之侧插入空闲包。另外,输入和输出 f i f o s 还能匹配节点较低的处理速度和链路的高速传输,如图2 2 : 咱马辫鼬 畦业盛整型塑墅芷生生! 蛩釜纽 o m 嘣- - 2 1 3s c l 拓扑结构 口 图2 - - 2s c i 节点模型 h d “ s c l 支持灵活的拓扑结构,最基本的拓扑结构是环。与传统的环不同,s c i 可支持多对节点问消息的并发传输。另外,环形拓扑既可咀采用顺序连接,也可 以采用交叉连接的方式。前者的布线比较长,而后者能极大的缩短布线的长度, 适合空间比较小的环境,如图2 3 和2 4 。s c i 还能通过桥或交换机实现更高 性能的互连,也可以通过具有多个s c i 接口的节点构成2 d m e s h ,3 d m e s h ,和 蝶形等更为复杂的拓扑结构。 图2 3 环的顺序连接 一濑 基于f p g a 的s c i 串行通信接口的研究与实现 图2 4环的交叉连接 2 2 数字系统设计概述 本章对本课题设计的相关开发基础知识加以简介,主要有数字系统硬件设计 的方法、硬件描述语言、f p g a 基础知识与设计流程、坤核的概念以及x i l i n x 公 司的f p g a 芯片等相关内容。 2 2 1 硬件描述语言 硬件描述语言【3 】【4 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 ) 是一种用形式化 方法来描述数字电路和设计数字逻辑系统的语言。数字逻辑电路设计者利用这种 语言可以从上层到下层( 从抽象到具体) ,逐层描述自己的设计思想,用一系列 分层次的模块来表示极其复杂的数字系统。 目前,最常用的两种标准化的硬件描述语言为:v h d l 和v e r i l o g h 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 ) 、逻辑级 b 时间传输速率 ( 单位:m 字节)( 单位:秒) ( 单位:m 字节秒) 0 80 1 5 65 1 4 8 9 l l - 8 1 24 9 2 4 2 58 6 7 34 9 0 1 5 6 63 1 8 2 34 9 2 1 经过另一台机子的转发f i f o 回收到本机:在r e m o t e a d d r e s s 中输入本地 机子的地址;然后通过在本地计算机上点击传送文件按钮,可以选择本 地计算机上的文件通过通信卡传送给远程的计算机;之后,经过邻近机 子转发后,回收到本地机子。在e l a p s e t i m e 文本框中显示的是文件发送 消耗的时间,可以根据这个时间来计算传输速率。表5 2 为在机子 a b a 之间传输不同大小的文件所需的时间及其传输速率,在文件传 输过程中有发现少许误码,目前正在调试。 表5 2文件传输结果 文件大小a - b - a 时间传输速率 ( 单位:m 字节)( 单位:秒)( 单位:m 字节秒) 0 8o 2 1 9 3 6 5 8 9 l2 5 4 73 5 0 4 2 51 2 1 4 23 4 9 1 5 6 6 4 4 8 4 23 4 9 5 4 3 性能分析 设计中通信卡采用光纤进行通信,光纤的传输速率为1 2 5 g b p s ,由于 r o c k e t l o 采用8 b 1 0 b 进行编码,因而实际上传输数据的最高速率应为1 2 5 m b s 。 从表5 2 中的结果可以看出,利用通信卡在二台计算机之间传输文件,其 传输速率约为4 9 m b s ,要远远小于数据传输的最高速率;从表5 3 中的结果 可以看出,而经过旁路f i f o 转发的传送速度为3 4 m b s ,本部分主要探讨影响 通信卡传输速率的因素。 第五章系统测试及性能分析 1 两机间直接传输的硬件传输速率分析 本部分主要从硬件角度分析a u r o r a 模块的传输速率。 假设共有n 个字节数据的一帧数据需要传送,a u r o r a 模块传输过程中,发 送帧头、帧尾信息需要4 个字节,每1 0 0 0 0 字节中有1 2 字节为时钟修正信息。 因此,可以得出a u r o r a 模块的数据传输效率,如下式所示: 一 n 丘2 1 厅 露+ q 十一 9 9 8 8 当r o c k c t l o 传输数据为1 2 5 g b p s 时,数据宽度为3 2 位( 4 字节) 时,用户参 考时钟为3 1 2 5 m h z 。假设要发送的一帧数据大小为x 字节,则发送一帧数据所 需的时间t 为: x 上x + 4 + 1 2 x r : 1 2 茎! q ! : 窆2 婴 因此,当要发送的数据大小为4 k ( k 为1 0 2 4 ) 字节时,可以得出发送的时 间: 4 七+ 4 + 1 2 x 4 k = 9 9 8 8 1 2 5 1 0 6 = 0 0 3 7 7 1 0 3 s 由此得出a u r o r a 模块发送一帧大小4 k 字节数据的传输速率e 为: p :4 x1 0 2 4 :1 0 8 6 5 m b s p = 一= j 乃七 2 通过f i f o 转发的硬件传输率分析 只通过f i f o 转发一次,一帧4 k b 大小的数据从一个源节点传输到目的节 点所花费的总时间为:发送端发送的时间+ 接收端接收的时间k + 源节点与转发节点协调时间和转发节点和目的节点的协调时间岬,即: = + 乙咖+ 邺 由于帧大小为4 k b 且每个时钟传输一个4 b 大小数据,所以发送端的发送 基于f p g a 的s c i 串行通信接口的研究与实现 时间和接收端的接收时间都是i k 个时钟,那么总共是2 k 个时钟,即 + k = i k + i k = 2 2 阶时钟 为了得出在实际传输中的源节点与转发节点协调时间和转发节点和目的节 点的最小的协调时间,做了下面的测试,这里只传输两个数据。由于在本测试中, 发送端和接收端是同一个,所以可以同时观察发送情况和接收情况。图5 - 1 2 就 是在测试时从c h i p s c o p e 中抓取出来的测试图。图5 - 1 2 ( a ) 和图5 1 2 ( b ) 实际上是 在从c h i p s c o p e 抓取出来的同一张图中,为了显示的需求,分为两张。 o234 5b7 | & 懵塔i 事谢 xo 曰口iiiiiiii t l a s t r a r _ o0 0x1x li t m _ s w c d t d b j l 00 0x it - t _ s f j ol 6x | t a t m f _ l k lo l x lx it i _ d 3 l :0 1饭n 啪o i 0 l 0 0 0 0 0 嵌0 0 0 1 0 0 0 1 x l z t - f _ j ll i l “一f 一 ll r i _ a 3 1 :0 1 h :赋b c虻l c b c i c e c e e e c o b c l:e c l x :1 c l c c 1 cx 1 c b c l c 日妇c 1 c b c l 妇c b c l c 曲c l c b c l 矗c 1 c 。 l l i n w e _ r d l r _ m ll 图s - 1 2 ( a ) 开始发送数据 加7 7 27 37 47 57 6 7 7 & 蓐s 鲫一 xo iiit回i移li t i l t 声叠u oo x 0 t x m r e j r d t _ 一 l l t | _ i f 二 1l t x _ e e f _ m l1 t zd s t :町o 删00 0 眦0 0 0 1 r - t l 二 ol 1x0x r xe o fnlo 1xlx ,i i a t :o l o o 蹦0 l 0 l1c b c lc e 妇c 1c b c l ) bc b g lc 啦0 0 0 0 0 0 0 0 x0 0 0 1 0 0 0 1x b o lc b c b b c b c lc l r t _ m r e _ r d l r i oo 1xlx1xlx 图s - l z ( b ) 接收到数据 从图5 1 2 ( a ) - i 以看出在在第一个时钟时,即图5 - 1 2 ( a ) 中的o 线,发送端发 送完两个数据。从图5 1 3 ( b ) - i 以看出在第7 3 个时钟时,即图5 一1 3 ( b ) 中的x 线, 接收端接收到第一个数据。那么协调时间总共花了7 2 个时钟。即: 毛舢= 7 2 个时钟 第五章系统测试及性能分析 由于时钟频率为3 1 2 5 m h z ,则总时间= ( 1 k + i k + 7 2 ) ( 3 1 2 5 1 0 6 ) s 那 么,经过f i f o 一次转发的传输速率e 为: e :竺:三! :兰兰:! 壁! 6 0 4 坳s ( 1 七+ l k + 7 2 ) 3 系统实际传输速率 从表5 一l 中可以得出系统的传输速率大约为4 9 m b 秒,与硬件能达到的传 输速率还有很大的差距。因为通信双方是同步的,所以通信速度是在接收方计算 的,下面以接收一祯数据为例来分析原因。 首先是s c i 通信卡收到一祯数据,将其写入接收块r a m 中,从图5 8 中可 以看出s c i 通信卡在收发4 个字节只用一个时钟周期;接着给p c i 总线发出中断, 通知主机来取走这一祯数据,这里需要花费的时间有:中断响应,p c i 总线仲裁, 从图5 1 3 中i n t rn 信号可以看出中断响应就要大约6 0 0 个时钟周期;最后,主 机开始通过p c i 取走接收块r a m 中的数据,从图5 - - 6 ( a ) 中可以看出p c i 读4 个字节需要2 0 个时钟周期;设计中,数据帧的大小是4 k b ,那接收一祯数据需 要的时间为: 一 1 木1 0 2 4 + 6 0 0 + 2 0 幸1 0 2 4 3 】2 5 木1 0 0 所以接收数据的速度为v = 等5 8 m b s 自i 柚8 0 伽 拥2 柏瑚铷姗枷枷4 5 铷5 舳6 删l 啪髓 融媾爝啊讨 xo 啊目i 。i i i 。i i i i i i i 1 i i 雹,i i i l f 哆 0o 一l i f e r m oo ,”f i f ow r * 吨2no 一f i f - ,t ,ll f “d t 呻t , oo i a t x _ alll f i f , _ r s t o0 卜t z m a t k i m , i t i 。 4 4 卜豫j d 泣- - l t 79 7x 8 图5 - 1 3 接收端p c i 中断响应时间 以上分析可以知道影响数据传输速率的主要因素是p c i 总线的工作方式。 在系统设计中,p c i 总线的工作方式虽然引入了中断机制,但不支持d m a 工作 基于f p g a 的s c i 串行通信接口的研究与实现 方式,这大大降低了数据的传输速率;其次,p c i 总线是共享式总线,由多个设 备共用总线;另外,使用的操作系统不是实时性操作系统,对p c i 总线的数据交 易实时性支持较差。 经过旁路f i f o 转发的两机间的速度比两机直接传输的速度慢,是由于增 加了旁路f i f o 的转发,且目前设计的f i f o 控制逻辑是等f i f o 接收完一帧数据 才将f i f o 中的数据转发往下一个机子,尚未设计为一有数据就立即发送出去; 在写f i f o 和读f i f o 的过程中,发送端和接收端要等待a u r o r a 允许发送和a u r o r a 允许接收,因而会需要更多的时间。 6 1 工作总结 第六章结束语 本课题主要研究了基于f p g a 的s c i 串行通信接口的实现,经过近两年的 努力,经历了学习、方案设计、f p g a 逻辑设计和驱动程序编写以及反复测试等 阶段,最终利用f p g a 基本上实现s c i 节点并进行通信,取得了一定的成果: 1 研究s c i 协议并在f p g a 芯片上构建s c i 节点,设计并完善适合s c i 串 行通信接口的传输包格式; 2 研究并应用a u r o r a 链路层协议,以实现s c i 节点的高速串行通信: 3 利用p c i 核实现了c p c i 总线接口; 4 引入中断机制,提高s c i 串行通信接口与主机交换数据的速率; 5 为通讯卡编写相应的硬件驱动程序和测试应用程序。 6 2 存在问题及今后工作 由于课题的开发时间有限、涉及内容较多以及自身能力有限,只能保证完 成系统的基本功能,在许多地方还存在着不足和需要改进的地方,如系统的传输 速率较低、系统的功能还不够完善等。 为了整个系统更加完善,今后还需要进行许多的工作,包括以下几个方面: 1 使用p c i 总线d m a 功能,提高p c i 总线的传输速率; 2 加入数据校验功能,对数据的误码进行处理,提高数据传输的可靠性; 3 考虑将f i f o 功能修改为一有数据就发送,以提高旁路f i f o 的转发速度; 4 完善s c i 节点的其他功能,如加入数据优先级,完善传输帧格式等; 5 使用d d k 开发驱动程序; 所有的这些工作都需要花费许多的时间和精力,来对系统进行完善和测试。 因为时间和经验所限,在工作中还有一些不太满意的地方都有待于在今后的工作 中进一步进行完善。 6 1 参考文献 i i 孙航x i l i n x 可编程逻辑器件的高级应用与设计技巧 m 北京:电子工业出版社, 2 0 0 4 ,8 2 侯伯亨,顾新v h d l 硬件描述语言与数字逻辑电路设计 m 西安:西安电子科技 大学出版社,1 9 9 9 3 夏宇闻v e r i l o g 数字系统设计教程 m 北京:北京航空航天大学出版社,2 0 0 3 4 潘松,王国栋v t t d l 实用教程 m 成都:电子科技大学出版社,2 0 0 1 5 2 王诚,薛小刚,钟信潮f p g a c p l d 设计工具:x i l i n xi s e 使用详解 m 】北京: 人民邮电出版社,2 0 0 5 ,1 6 徐欣,于红旗,易凡,卢启中基于f p g a 的嵌入式系统设计 m 北京:机械工 业出版社,2 0 0 4 ,9 7 】x ili n x v i r t e x - i ip r op l a t f o r mf p g au s e rg u i d e z 2 0 0 4 ,4 8 x ili n x v i r t e x - i ip r op l a t f o r mf p g a s c o m p l e t ed a t as h e e t z 2 0 0 4 ,4 9 杨刚,周宗仪基于r o c k e ti o 模块的高速i 0 设计 j 电子技术应用, 2 0 0 4 ,( 6 ) :7 7 8 0 c l o 美 t o ms h a n l e y ,d o na n d e r s o n ,刘晖等译p c i 系统结构( 第四版) m 北京: 电子工业出版社,2 0 0 0 ,7 1 1 路锦文基于f p g a 的c p c i 卡的研究与设计 d 】天津工业大学硕士学位论文,2 0 0 3 , 1 2 1 2 别晓嫒p c i 总线接口的研究与实现【d 】西北工业大学硕士学位论文,2 0 0 4 ,3 5 1 3 雷艳静,苗克坚,康继昌高速通信网卡中p c i 接口的研究与实现【j 】计算机应用, 2 0 0 5 ,2 5 ( 1 ) :1 7 3 一1 7 1 4 苗克坚,陆尧,车立昌微机p c i 总线接口的研究与设计 j 航空计算技术, 2 0 0 0 ,3 0 ( 2 ) :4 9 5 1 1 5 胡和平,田宜波 基于f p g a 的p c i 接口设计 j 】计算机工程,2 0 0 3 ,2 9 ( 8 ) :1 5 6 1 5 7 1 6 江培华,杜海波,刘国满,高梅国基于r o c k e ti o 的光纤数传板设计 j 微 计算机信息,2 0 0 5 ,2 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年芜湖安徽鑫时代工程项目管理有限公司工作人员招聘备考练习题库及答案解析
- 城中村改造项目后期维护与保养方案
- 施工现场物资管理方案
- 数学试卷初三及答案
- 2025年齐齐哈尔泰来县公益性岗位招聘9人备考练习题库及答案解析
- 2025年第九期云南砚山县第二人民医院招聘编外驾驶员1人备考练习试题及答案解析
- 2025年动物免疫考试题及答案
- 2025年电信转正试题及答案
- 2025江苏南通市通州区劳服劳务开发有限公司招聘护理员1人考试参考试题及答案解析
- 2025中国能建电规总院招聘(北京)备考练习题库及答案解析
- CRH380B型动车组制动系统
- 植入式静脉给药装置(输液港)-中华护理学会团体标准2023
- SH石油化工金属管道布置设计规范
- 统一帕金森病评定量表-UPDRS
- 外国文学史第二版马工程课件 第四章 17世纪文学
- 皮肤的结构与生理功能
- 院感培训试题及
- 开发区财政管理改革研究
- 三维数字城市建模及数据获取课件
- 电气照明系统课件
- 收纳整理PPT成品课件
评论
0/150
提交评论