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

(计算机应用技术专业论文)基于pci的串行通信控制器的研究和实现.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 路由器是将局域网连接成广域网的常用设备,路由器上的中低速广域网卡 常常是采用基于p c i 总线的高速同异步串行通信控制器( s e r i a lc o m m u n i c a t i o n c o n t r o l l e r ,缩写为s c c ) 来控制发送和接收数据。 虽然a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e d c i r c u i t ) 芯片d s c c 4 ( d m a s u p p o r t e d s e r i a lc o m m u n i c a t i o nc o n t r o l l e rw i t h4c h a n n e l s ) 在串行通信控制方面 应用广泛,但它仍然存在很多应用问题,比如8 d ( b u f f e r d e s c r i p t o r ) 和中断操作 过于复杂,占用资源较多,芯片在实际应用中存在些b u g ,同时成本也较高。 所以研究基于p c i 总线的高速同异步串行通信控制器具有重要的实际意义。 课题参考d s c c 4 设计方法,全新设计了s c c 的b d 数据结构,数据流的 控制流程以及中断处理流程,提出既能实现d s c c 4 的全部功能,同时又在性 能上有相当改进的技术方案,最后详细探讨了串行通信控制器的驱动程序设计 过程,并且给出了驱动程序设计和调试的方法与经验。 本文在分析p c i 总线协议与部分网络接口协议的基础上,描述了s c c 的具 体业务需求,提出了s c c 的总体设计。在总体方案中,不仅包括了s c c 的应 用平台介绍、硬件和软件系统设计,而且对中断处理过程、流控和服务质量进 行了分析与设计。同时重点介绍了s c c 驱动程序的设计,主要从驱动程序的模 块功能和组成出发,讨论了任务的规划与实现,详述了s c c 驱动程序的重要数 据结构和重要模块的设计,并给出了s c c 的调试和测试、驱动开发的经验,最 终得出了性能提升的结论。 关键词:s c c ;b d 环;中断处理;驱动程序 西南交通大学硕士研究生学位论文第1 i 页 a b s t r a c t r o u t e ri st h eg e n e r a ld e v i c eo fc o n n e c t i n gl a n t ow a n t h em e d i u mo r1 0 w e r s p e e d a nc a r do nr o u t e rt r a n s m i t sa n dr e c e i v e sd a t aw h i c hi s c o n t r o l l e db yf a s t s y n c h r o n i z a t i o n a s y n c h r o n i s ms e r i a lc o m m u n i c a t i o nc o n t r o l l e r ( s c qw i t hp c i b u s t h o u - g l ld s c c 4 ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ) w h i c hi s o n e t y p e o f a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ) c h i p s h a sw i d eu s ei n s e r i a l c o m m u n i c a t i o nc o n t r o lf i e l d ,i ts t i l lh a sm a n ya p p l i c a t i o np r o b l e m s ,s u c ha st h e c o m p l e xo p e r a t i o no fb d ( b u f f e rd e s c r i p t o r ) a n di n t e r r u p t i o n ,e x p e n d i n gt o om u c h r e s o u r c e s ,s o m eb u g si na p p l i c a t i o n sa n dh i 曲c o s te t c t h e r e f o r ei ti si m p o r t a n tt o r e s e a r c hf a s ts y n c h r o n i z a t i o n a s y n c h r o n i s ms e r i a lc o m m u n i c a t i o nc o n t r o l l e r m a k i n g r e f c f e n c e st od s c c 4 sd e s i g n t h i st h e s i sd e s i g n san e wd a t as t m c t u r eo f b d an e wc o n t r o lc o u r s eo fd a t af l o wa n di n t e r r u p tp r o c e s s i o n i ta l s op u t sf o r w a r d at e e h n i q u es c h e m ew i t hd s c c 4 sf u l lf u n c t i o na n db e t t e rp e r f o r m a n c e i nt h ee n d , i td i s c u s s e si nd e t a i lt h ed e s i g no ft h es e r i a lc o m m u n i e a t i o nc o n t r o l l e r sd r i v e ra n d t e l l so ft h ew a ya n d e x p e r i e n c eo f d r i v e rd e s i g na n dd e b u g w i t ha n a l y s i so ft h ep r o t o c o lo fp c ib u sa n ds o m en e t w o r ki n t e r f a c e s ,t h i st h e s i s t a k e sa no v e r v i e wo fa l lr e q u i r e m e n t so fs c c ,a n dp r e s e n t st h eg e n e r a ld e s i g no f s c c i nt h e g e n e r a ld e s i g n 。i t i n c l u d e st h ei n t r o d u c t i o no fs c c s a p p l i c a t i o n p l a t f o r m ,t h ed e s c r i l ;l t i o n o fd e s i g no fs c c sh a r d w a r ea n ds o f t w a r es y s t e m ,t h e a n a l y s i sa n dd e s i g no fi n t e r r u p tp r o c e s s i o n ,f l o wc o n t r o la n dq o s ( q u a l i t yo fs e r v i c e ) a st h em o s ti m p o r t a n tp a r to ft h et h e s i s ,t h es c cd r i v e r sd e s i g ni n c l u d e sd i s c u s s i o n o ft h ef u n c t i o na n db u i l d u po fd r i v e rm o d u l e ,t h ei a y o u ta n di m p l e m e n t a t i o no ft a s k , t h e d e s i g n o f i m p o r t a n t d a t as t r u c t u r ea n dm o d u l eo f s c c s d r i v e r , a n dm y e x p e r i e n c ei nd e s i g n i n g a tl a s t ,t h et h e s i sg i v e sab r i e f i n t r o d u c t i o no fs c c sd e b u g a n dt e s t ,t h e nd r a w st h ec o n c l u s i o no fi t sb e t t e rp e r f o r r n a n c e k e yw o r d s = s a c ;b d 斑1 1 9 ;i n t e r r u p tp r o c e s s ;d r i v e r 西南交通大学硕士研究生学位论文第1 页 绪论 1 1课题背景 网络产品的急剧增长导致了特定应用的芯片需求量不断攀升,因此a s i c 芯 片已经不能满足需求的增长。同时,各式各样的功能需求又不可能让a s i c 生产 厂家面面俱到。a s i c 芯片的使用又可能影响产品开发的灵活性以及技术的连续 和进步性。 随着可编程逻辑器件密度和速度的提高,可编程逻辑器件非常适合用户特殊 的需求,比如实现p c i 总线的应用,设计者只要将p c ic o r e 与用户逻辑综合到 一起,可设计出性能价格比较好的单芯片p c i 总线接口卡。f p g a 技术的进步使 得它可以取代中小型a s i c 产品,另外c p l d ( c o m p l e xp r o g r a m m a b l el o g i c d e v i c e s ) 的技术也发展也推动了一些大中型企业自主研发芯片的进程。 1 2课题研究的内容 路由器是将局域网连接成广域网的常用设备,路由器与广域网连接的接口称 之为广域网接口( w a n 接口) 。在中低速应用中,路由器的广域网接口卡般都 是用高速串行通信控僚器进行控锘4 的。虽然d s c c 4 在串行通信控制方面应用广 泛,但是它仍然存在应用的很多问题,比如b d 和中断操作过于复杂,且占用资源 也较多,芯片在实际应用中存在一些b u g ,以及成本过高。考虑到p c i 的总线技 术的先进性牟口成熟住,为,技术挫片j 的进步性和稳定往,所以据出基于k i 总线 的串行通信控制器的研究,并且采用f p g a 实现的课题。 基于p c i 总线的串行通信控制器的研究课题目的是实现如图i - i 所示的以下 功能: ( 1 ) 一个符合p c i 局部总线规范2 3 版本的p c i 总线接口,与应用系统中的 p c i 总线直接接口; ( 2 ) 多个独立的串行通信控制器的通道,每个通道的物理接口都具有完备的 同异步串口信号。每个通道均支持同异步h d l c 。同步串口最高速率2 m ( n 6 4 k ) , 异步串口最蔺i 速率1 1 5 2 k ( 课题暂时实现4 个通道) ; ( 3 ) 个本地扩展总线接口。 西南交通大学硕士研究生学位论文第2 页 基于 p c i 总线 的串 干亍通 信控 制器 同屏步串口1 同异步串0 2 同,异步串口n 本地扩展总线接口 图1 1 基于p c i 总线的串行通信控制器 课题重点从驱动角度出发,参考d s c c 4 的芯片设计方法,全新的设计了s c c 的b d 数据结构,数据流的控制流程以及中断处理流程,提出既能实现d s c c a 的全部功能,同时又在性能上有相当改进的技术方案,最后详细的探讨了s c c 的 驱动程序设计过程,并且给出了驱动程序设计和调试的方法和经验。 1 3课题研究的意义 ( 1 ) 由于p c i 总线主要用于大批量的数据传输,所以能够提高网络带宽,提高 网络的整体性能,推进串行通信技术的发展; ( 2 ) 由于采用了比较便宜的可编程逻辑器件f p g a ( f i e l d p r o g r a m m a b l e g a t e a r t a v l 实现了昂贵d s c c 4 的全部功能,所以可以提高产品的性价比; ( 3 ) 课题重点从驱动角度探讨技术的改进,可以推动驱动开发技术的发展,为这 类控制芯片的驱动提供技术参考; ( 4 ) 锻炼自我的研究开发能力特别是嵌入式驱动开发的能力。培养团队精神。 1 4国内外技术现状 1 d s c c 4 应用现状 目前d s c c 4 系列( p e b p e f 2 0 5 3 4 v e r s i o n 2 1 ) 广泛的作为串行通信控制芯 片。中低端路由器为了实现同步和异步串行通信的广域网接口,大量的采用 d s c c 4 作为串行通信控制器。而大多数应用都存在不同表现的硬件缺陷,比如业 务量大的时候中断f i f o 溢出、初始化发送通道时候时序错误等缺陷,虽然可以 采用软件加以规避,但是软件往往为了一个缺陷添加不少代码量,影响了软件的 整体性能。而且芯片成本仍然相当高。 2 p c i 的现状分析 p c i 总线是高速同步总线,具有3 2 b i t 总线宽度,工作频率是3 3 m h z ,最大 传输率为1 3 2 m b y t e s ,远远大于i s a 总线5 m b y t e s 的速率。p i c m g 伊c i 工业计 算机制造商联盟) 制定的更加坚固耐用的c o m p a c tp c i 总线规范,支持6 4 位总线 西南交通大学硕士研究生学位论文第3 页 宽度,6 6 m h z 作频率,最大传输率为5 2 8 m b y e s 。基于p c 机的高速数据采集系 统和各种虚拟仪器,几乎都选择了p c 总线。在现代高速通讯、测试等领域的嵌 入式应用中,c o m p a c t p c i 总线大有超过v m e 和v x i 总线的趋势。p c i 的高性能、 高效率以及与现有标准的兼容性和充裕的发展潜力,是其它总线所不能及的。 在多总线结构中( 处理器总线,p c i 局部总线,i s a 或者e i s a 总线) ,局部 总线发展令人瞩目。它是由i n t e l 发起,p c i s i g 组织进行标准的制定。1 9 9 2 年 6 月推出1 0 版本,1 9 9 3 年4 月推出2 0 ,1 9 9 9 年2 月推出2 2 版,2 0 0 1 年1 0 月 推出2 3 版,2 0 0 4 年已经推出最新的下一代p c i 总线标准p c i e x p r e s s 。 p c i e x p r e s s 和以往的版本既有共同点也有差别,最重要的地方被保留了,比 如l o a d - s t o r e 架构;p c ie x p r e s s 采用串行的机制,比如串行接口的硬盘;p c i e x p r e s s 较之p c i 也更加灵活了,比如支持多种传输速率,而且传输速率有很大 的提高;p c ie x p r e s s 也支持更多先进的技术,比如r a s 和支持热插拔;p c ie x p r e s s 还支持q o s 。 p c i 局部总线支持6 4 位数据传输、多总线主控和线性突发( b u r s t ) 方式, 其数据传输率为1 3 2 她s ,完全可以满足图形操作系统和高速网络的要求。但是 i s a 总线的最大传输率仅为8 m b s ,而e i a s 的最大传输率也才3 3 m b s 。除了高的 传输率特点外,推动p c i 发展的原因还有它可以降低系统成本。同时它独立于任 何c p u ,只需要个p c i 的北桥就可以连接任何c p u 了。 在设计总线的时候,不但要着眼于当前系统应达到的性价比,更重要的是要 求总线能够适应将来系统的要求,能在多种平台和体系结构上应用,有很好的可 扩展性。 3 f p g a 的发展现状 可编程逻辑技术目前已经能与a s i c 和a s s p ( 专用标准产品) 争夺市场,并 逐渐呈现出取代a s i c 和a s s p 的趋势。f p g a 产品在逻辑密度、性能和功能上有了 极大的提高,同时器件成本也大幅下降。 c p l d 也是一种可编程的逻辑器件,但是它的触发器没有f p g a 丰富,而且集 成度不如f p g a 高,所以逻辑复杂的大型系统常选用f p g a 实现。 f p g a 技术现目前正在向密度更高,速度更快,频带更宽的百万系统级方向发 展,比如比较盛行的a l t e r aa p e x s t r a t i x ,使用它们可以大大缩短系统的研制 周期:向低成本,低价格的片上系统方向发展( a l t e r a 的n i o s ) ;低电压、低功 耗和绿色化方向发展:同时i p c o r e 得到了相当的进展,o p e n 工pc o r e 将会象自 由软件一样得到飞速发展;f p g a 与a s i c 界限日趋模糊,相互融合,f p g a 的成本 西南交通大学硕士研究生学位论文第4 页 不断下降,产品上市周期压力曰趋严重,使得f p g a 在很多领域将成为a s i c 的替 代品;先进的百万门级f p g a 开发工具是s o p c ( s y s t e m0 nap r o g r a m b l ec h i p ) 的主要平台,处理器i p c o r e 解决了s o p c 的最关键问题,可以预见s o p c 时代即将 到来。基于f p g a 的嵌入式系统设计发展方向可以使项目进度可控,后期b u g s 解 决变得非常容易,大大节省产品后期维护工作量,缩短了产品的稳定周期。同时 在有线通信领域,f p g a 可以适应不断变化的标准。 1 5开发环境介绍 硬件平台: 处理器:m p c 8 2 4 52 6 6 m h z f l a s h :8 m s d r a m :6 4 m 路由器m p 2 6 9 2 为开发平台( 已经包含上述配置) 程序下载调试线一根,网线一根,堵头一个等 软件平台: v x w o r k so s ; t o r n a d 0 2 0 集成开发环境 s o r c e l n s i d e 程序编辑工具 s m a r t b i t s6 0 0 0 b 发包测试工具 l _ 6 本人承担的主要工作 由于课题研究的s c c 的应用环境是路由器,它体现了整个路由器开发团队的 集体智慧,要让它在路由器上正常工作,必须需要路由器很多公共模块的支持, 所以本课题不必着意的去设计很多必须的但是又已经成形的公共模块。因正匕,该 课题着重是在串行通信控制器的硬件架构和驱动的设计上。所以本人承担的主要 工作包括如下: ( 1 ) p c i 协议的深入理解和嵌入式应用; ( 2 ) t c p i p 的网络接口层( o s i r m 的链路层和物理层) 的协议分析与研究; ( 3 ) 参与串行通信控制器的架构设计,提出总体设计方案; ( 4 ) 串行通信控制器的驱动程序的设计; ( 5 ) 控制器的调试和测试。 西南交通大学硕士研究生学位论文第5 页 p g i 协议与部分网络接口层的协议分析 1 7p c i 总线接口协议分析 p c i ( p e r i p h e r a lc o m p o n e n t i n t e r c o n n e c t ) 总线是一种先进的高性能局部总线, 以其高性能、高效率、与现有标准的兼容性和充裕的发展潜力,成为计算机界公 认的局部总线标准。在嵌入式应用领域中,也是如此。 1 7 1 p c i 局部总线的主要特点 ( 1 ) 数据传输率高。在3 3 m h z 的时钟频率下,3 2 位p c i 总线的峰值数据传 输率可达1 3 2 m b s ;6 4 位p c i 总线可达2 6 4 m b s ,对于在6 6 m i - i z 的时钟频率下, 可达5 2 8 m b ,s 。 ( 2 ) 支持突发传输能力。减少了无谓的地址操作,更有效地利用数据总线带宽, 可确保数据线满载数据。 ( 3 ) 自动配置功能。每个p c i 设备有2 5 6 字节的配置寄存器,可以实现设备 的即插即用。 ( 4 ) 数据完整性。p c i 提供的数据、命令和地址奇偶校验功能,保证了数据 的完整性和准确性。 ( 5 ) 软件透明性。在与p c i 设备或面向扩展总线的同类设备通信时,软件驱 动程序使用相同的命令集和状态定义。 1 7 2 p c i 总线命令和总线操作 在p c i 实际应用系统中,p c i 总线设备常被分成两类:主设备( m a s t e r ) 和 从设备( t a r g e t ) 。作为主设备时,它取得了总线控制权,可以访问其他p c i 总线 设备及其系统的其他资源;作为从设备时,可以实现基本的传送要求。与此对应 p c i 总线接口也可分为主模式和从模式2 种m 。 总线命令地作用是用来规定主、从设备之间地传输类型,它出现于地址期的命 令和字节使能线上,主设备指通过仲裁获得总线控制权的设备,从设备是指被地 址线上地址所选中的设备。 p c i 总线上的操作主要有以下几种: ( 1 ) i o 读命令 该命令用来从一个映射到i o 地址空间的设备中读取数据地址总线上提供 一个字节的地址,全部3 2 位地址必须完全译码。而字节使能信号表示传送数据的 西南交通大学硕士研究生学位论文第6 页 多少,必须与字节她址致。 ( 2 ) i o 写命令 该命令用来从一个映射到i o 地址空间的设备中写入数据,全部3 2 位必须 完全译码。而字节使能信号表示传送数据的多少,必须与字节地址一致。 ( 3 ) 存储器读命令 该命令用来从一个映射到存储器地址空间的设备读取数据,如果能保证无副 作用产生时,从设备可以为该命令进行预先读取。另外,目标设备也要保证在本 次p c i 传输之后保存于临时缓冲器中的数据的一致性。这个缓冲器在任何同步事 件通过此访问通路之前必须被置为无效。 ( 4 ) 存储器写命令 该命令用来向一个映射到存储器空间的设备写入数据。当从设备发出“准备 好”信号后,它已经准备对所涉及的数据的一致性负责。因此,对于该命令的实 现可采用完全同步的方式,或采用去其他的方法。 但应保证在任何同步事件通过该访问路径之前使数据缓冲器被刷新。也就是 说,主设各在使用了该命令之后可以立即创造一个同步事件。 ( 5 ) 配景读命令 该命令用来从每个设备的配置空间读取数据。如果一个设备的i d s e l 引脚有 效,且a d 1 :0 = 0 0 时,那么该设备即被选定为配置寄存器读命令的目标。 在 一个配置命令的地址期内,a d 【7 :2 】用于从每个设备的配置空间中的6 4 个双字寄 存器中选出一个。a d 3 i :i i 无意义,a d 1 0 :8 表示一个多功能设备的那个功能 设备被选中。 ( 6 ) 配置写命令 该命令用来向每个设备的配置空间写入数据。一个设备被选中的条件是: 它的i d s e l 信号有效并且a d i :0 1 = 0 0 。其余的和配黉读命令相同。 ( 7 ) 存储器多行读命令 该命令的作用是企图在主设备断开连接之前预读取多行的c a c h e 数据。存储 器控制器应保证只要f r a m e # 有效,就连续不断的以流水方式发存储器请求命 令。该命令预定用于大块连续数据的传输。这种传输方式在p c i 规范中定义为 b u r s tm o d e 。 1 7 3p c i 的配置空间 p c i 由三种地址空间:i o 地址空间,存储器地址空间,配置空间。所有空间 西南交通大学硕士研究生学位论文第7 页 , c p u 都可以访问。每一个p c i 设备都要有一个p c i 的配鬣空间,容量最大为2 5 6 字节,是一系列配置寄存器,它们是p c i 设备的硬件与p c i 设备的初始化软件及 其错误处理软件之间的信息交互区,以便软件对p c i 设备进行识别和控制以及p c i 设备向软件反应设备状态和要求m 。 1 7 3 1 配置空间的结构 配置空间分成6 4 字节的配置头标区和1 9 2 字节的设备关联区。对于如图2 1 所示的所有p c i 设备头标区的寄存器分布和格式是一样的,而是否使用设备关联 区则要根据设备本身的需求,一个p c i 设备因本身的特殊功能所需设置的专门寄 存器只能放在设备关联区。 3 1 61 50 图1 2p c i 配置空间的头标区 位于头标区的分类代码目前只规定了0 0 h 和0 1 h 两个头标类型:0 1 类型规 定用于p c i - t o - p c i 桥,0 0 用于其余常用的p c i 设备。 h h h h h h h h h h h h h h h h h 鲫 帱 皑 ” ” 如 鹳 勰 粥 鲫 聪 姆 ” 曲 西南交通大学硕士研究生学位论文第8 页 1 7 3 2 配置空间的功能 类型0 配置空间头标区里的寄存器实现了很多功能,此文只介绍和软件编程 相关的几类。 1 设备识别 设备头标区有五个寄存器是与一个p c i 设备识别有关的,配置软件根据这些 寄存器很容易确定在该p c i 总线上有哪些p c i 设备。五个寄存器都是只读的,它 们是设备标识、厂商标识、修改版本标识、头标类型和分类代码寄存器。头标类 型表明头标区中1 0 h 到3 f i - 字节空间的布局类型和该设备是否是多功能设备。 2 设备控制 位子配置空间0 4 h 处的命令寄存器是控制一个p c i 设备产生和响应p c i 周期 的能力。命令寄存器是一个读写寄存器,软件常用的位有v o 空间使能位和存储 器空间使能位,分别控制本设备对f o 和存储空间的访问。 3 基地址 系统第一次上电时,p o s t ( 系统配置软件) 必须扫描在系统中的不同总线, 确定什么设备存在和它们什么配置要求。在头标区有6 个双字的基地址寄存器, 这6 个基地址寄存器的内容向p o s t 软件反应该设备需要多少存储空间和i 0 空 间。p o s t 软件通过各设备内的基址寄存器了解到p c i 总线上有哪些存储设备和 i 0 设备,根据各自的容量需求把它们映射定位到适当的存储器地址和i o 地址, 并把初始地址再写入到基地址寄存器,然后引导系统。 基地址寄存器 基地址寄存器提供了一种为设备指定存储空间和i o 空间的机制。操作系统 在管理系统之前要判断系统中有多少个寄存器,系统中的o 设备需要多少地址 空间,根据这些判断,自动配置系统的寄存器空间和f o 空间,实现设备的无关 管理。 基地址寄存器有两个作用,是存放基地址,另一个作用是存放定义的空间 长度( 以4 字节为单位) 。如果写入数据的最高位b i t 3 1 为1 ,写入数据则是定义 的空间长度,反之则是基地址。 在p c i 的所有基地址寄存器中,最低位b i t 0 是只读的用于区别该地址寄存器 存放的是存储器基地址还是o 基地址。b i t 2 和b i t l 是类型码,表示该存储空间 的映射要求。 地址映射 西南交通大学硕士研究生学位论文第9 页 p o s t 软件对设备存储器和f o 设备地址的映射是这样的:首先读取各设备 中基地址寄存器,查明各个设备所想要的空间和容量,经统一协商和分配后,向 各个寄存器的高位字段写入所分配的空间的基地址,把寄存器所对应的存储器或 者i ,o 映射到系统的物理地址空间中去。 ( 1 ) 设备所需空间的大小的确定 从p c i 总线写全1 到一个指定的基地址寄存器( o 一4 号) ,然后读回该寄存 器,通过该回读值中o 的个数来确定空间的大小。存储空间从b i t 3 位开始计算, 以1 6 字节为单位;i o 空间从b i t l 开始计数,以4 字节为单位。如返回值为 f f f f f f f o h ,设备所需要的存储空间是1 6 字节,返回值为f f f f f f e o h ,设备需 要的存储空间是3 2 字节,如果返回值为f f f f f f f d h ( b i t 0 为1 ) 则表示需要4 字节的l o 空间。 ( 2 ) 基地址的确定 在确定了设备所需要的地址空间之后,需要设置基地址寄存器,以确定设备 的物理地址。如基地址的第一个寄存器返回值是f f f f f f f c h ,表示是一个f o 空 间,然后向该寄存器写入0 0 0 0 0 3 0 0 h ,这就意味着1 6 个3 2 b i t 宽的寄存器被安排 在0 0 0 0 0 3 0 0 h 到0 0 0 0 0 3 3 f h 之间。这儿要注意的是,根据所需要的大小,基地 址应该在与地址空间大小成整数倍的地址边界上。 1 7 3 3p c i 总线上设备发现过程 p c i 扫描实际上是读p c i 的配置。上电时,调用p c is c a nd e v 扫描所有 可能存在的p c i 设备,扫描的方法是读取各个设备的p c i 的配置空间的厂商 v e n d o r i d 和设备d e v i c e i d ,若读出的数不为f f f f h 或者0 0 0 0 h ,则表明该b u s , d e v 和f u n i d 对应的p c i 设备存在。实际上,b u s 和d e v 的i d 号是不出现在p c i 地址周期的,b u s 和d e v 的i d 号实际上是交给c p u 的p c i 控制器使用,出其选 通相应的p c i 设备。基地址寄存器是主机为p c i 设备分配的p c i 空间的首地址, 主机一旦访问到该p c i 空间的地址,就会访问到读p c 设备,同理,芯片只有对 属于自己的配置空间的地址访问才会应答。 1 7 4p c i 设备的中断复用 中断线寄存器是一个8 位的寄存器,由系统中的所有中断源共同使用。该寄 存器的值说明设备中断引脚连接到系统的哪一个中断上。设备驱动程序和操作系 统用这些信息来判断设备优先级和设备中断矢量。 西南交通大学硕士研究生学位论文第1 0 页 根据p c i 规范,所有p c i 设备都将复用4 个中断级别,即a 、b 、c 和d 中 断。中断引脚寄存器的值表示设备( 设备功能) 使用了哪个中断线。如果没有使 用中断线,则必须将该寄存器清0 。 1 8物理层 办议分析 物理层是o s i 参考模型的最低一层,也可认为是t c p i p 中网络接口层( 只 是定义了t c p i p 与各种物理网络之间的网络接口,没有规定新的物理层和数据 链路层协议 2 1 ) 的最低层。物理层并不是指连接的具体物理设备或具体的传输介 质,而是对有关连接接口的标准和特性的描述。物理层为数据链路层提供一个物 理连接,构成一个透明通信信道以传输各种数据的比特流。物理层也是为了屏蔽 传输介质和通信方式等差异而给上层数据链路层提供统一的服务。 1 8 1 物理层的模型 物理层的模型是为了抽象现实物理介质连接的模型,是物理协议体系结构的 出发点。大多数网络采用的是如图2 2 的d t e d c e 模型。 圈1 - 8d t e d c e 模型 d t er d a t at c 蕊i n a l e q u i p m e n t ) 表示数据终端设备,也可认为是网络中信源 或者信宿设备,即网络用户端设备,如主机、终端和各种i o 设备。d c e ( d a t a c i r c u i t e q u i p m e n t n a m e d b yc c i t t ,o r d a t ac o m m u n i c a t i o n e q u i p m e n t n a m e d b y e i a ) 表 示数据线路设备或者数据通信设备,它是对网络设备的通称,是用户端设备入网 的连接点,如调制调解器,多路复用器等,它负责物理层转换工作,把d t e 的小 范围通信端1 3 性能转换成适合长距离通信的线路接1 3 格式。所谓的数据通信实际 上是d t e 和d c e 之间的通信【3 】。物理层协议是关于d t e 和d c e 或者其它通信 设备接口的一组约定,主要解决网络节点物理链路如何连接的问题。物理层协议 也称为物理层接口标准。 1 8 2 物理层的功能 o s i 参考模型对物理层的描述为:在物理信道实体之间合理地通过中间系统 为比特传输所需的物理连接的建立、维持和拆除提供机械性的、电气性的、功能 西南交通大学硕士研究生学位论文第1l 页 性的和规程性的手段。所以物理层主要有以下几个基本功能: 1 物理连接的建立、维持和拆除 当上层数据链路层实体有建立物理连接的请求时,物理层实体使用有关的接 口协议来完成连接。在数据信号传输过程中要维持这个连接,当传输结束之后要 拆除连接。 2 数据传输 在物理连接存在期间,在物理层协议控制下完成物理层数据单元比特的传 输。传输方式可以采用同步或者异步传输方式。 3 物理层管理 对物理层的一切活动进行管理。 1 8 3 物理层接口 物理层接口通常为两个端点之间简单的点对点连接或链接提供服务。另外, 共享介质( 如无线电) 的物理层为信号“广播”提供服务,把信号从共享通信介 质的许多设备中一个设备传给其它的设备f 4 】。 物理接口类型主要包括d t e 到d c e 的接口、线路接口或者总线接口( 对称 的点对点的接口) 和共享介质的接口( 点对多点的接口) 三种类型。 1 8 3 1d t e 到d c e 的接口功能 用户网络接1 :3 ( u n i ) 常采用d t e 到d c e 的接1 :3 ,各种类型的d c e 的基本 功能如下: 把d t e 的物理接口转换成适合长距离通信的线路接口形式,有时还有必 要提供数字膜拟信号转换; 长距离线路的网络终端服务,为线路和网络提供所需的功率; 把从网络上接收的数据分送到d t e ,或者把d t e 接收的数据转发到网络 上: 按照d t e 的请求,建立物理连接来形成介质以及解除这种连接; 在数据传输阶段,对d t e 的数据传输进行计时和比特同步。 1 8 3 皇常用的d t e 到d c e 的接口类型 作为d c e 设备时,同步串口可以配置波特率,而作为d t e 时不需要配置波 特率,双方互连时,线路上的速率由d c e 配鼍的波特率确定。常用的d t e 到d c e 西南交通大学硕士研究生学位论文第i 2 页 的接口类型( 常常称为串口协议) 所对应的d c e 侧波特率配置决定的速率范围 如下: 表1 1 常用串口协议的速率 串口协议串口常用速率串r 1 支持最高速率 v 2 4 1 2 8 k b p s 1 2 8 k b 口s v 3 5 2 m b p s8 m b p s v 3 6 2 m b p s8 m b p s x 2 l 2 m b p s8 m b p s 1 8 8 3d t e d c e 的控制信号简介 由u - t 的v 2 4 和e i a - 2 3 2 所定义的控制信号使用范围最广,网络产品也常 常使用这种控制信号的定义,具体的定义参考表2 - 2 。 表1 2 由e i ar s 一2 3 2 f f u t 的v 2 4 所定义的d t e d c e 控制信号 信号代码信号含义二进刳散“1 ”或“标记”的信号含义 靖除发送从d c e 到d i e ,“我己准备好” d c d数据载渡检测 从d c e 到d t e “我正在接收载波信号” d s r数据准备好 从d c e 到d i e ,“我已准备好发送数据” f r r 数据终端准备好从d t e 到d c e ,4 我已准备好通信” g n d接地 信号地,电压参考位 r i铃声指示器 从d c e 到d t e “我有来电” r 船 发送请求从d t e 到d c e ,“请发送我的数据” r x d 接收数据在这个管脚上,d 程接收来自d c e 的数据 t x d发送数据 在这个管脚上,d t e 把数据发送给d c e t c 发送方时钟发送时钟信号( 从d c e 到d i e ) r c 接收方时钟接收时钟信号( 从d c e 到d t e ) 1 9高级数据链路层控制( h d l c ) 协议 数据链路层的数据传输以帧为单位,在o s i 中,帧被称为数据链路层协议数 据单元。h d l c 协议具有高效率,高可靠性以及能传输任意代码等特点,所以广 泛采用。p p p 协议是h d l c 协议的子集,所以支持h d l c 协议也同时支持p p p 协议。 1 9 1h d l c 协议链路结构 h d l c 定义了主站、次站和复合站三种站类型,不同类型功能各不相同。 主站在通信过程中负责对数据链路实行全面的管理,包括发起传输、组 西南交通大学硕士研究生学位论文第1 3 页 织数据流、执行链路级差错控制与恢复等; 次站受控于主站,他只能按照主站的命令执行相应的操作; 复合站是指具有主站和次站双重功能的站,两个复合站之间可以对等通 信,所以具有平衡的链路控制能力。 由h d l c 三种类型构成了两种链路结构: ( 1 ) 不平衡式链路结构。由一个主站和多个次站通过一条链路连接而成。 该链路可以是点到点或者点到多点、双向交替或双向同时、交换或者非交换状态; ( 2 ) 平衡式链路结构。由两个复合站以点到点方式连接丽成。这种链路可 以是双向交替或双向同时、交换或者非交换的状态。 1 9 2 h d l c 协议操作方式 h d l c 规定了三种数据传送操作方式:正常响应方式( n r m ,n o r m a l r e s p o n s e m o d e ) 、异步响应方式( a r m ,a s y n c h r o n o u sr e s p o n s em o d e ) 、异步平衡方式( a b m , a s y n c h r o n o u s b a l a n c em o d e ) 。 ( 1 ) 在n r m 方式下,次站只有在接收到主站允许传输命令之后才可以开始响应, 传输数据帧时保持占线状态。次站必须明确地表示哪一帧是最后的响应帧。次站 在发出最后的响应帧后,将停止发送,直到再次收到主站发来的允许传输命令。 ( 2 ) 在a r m 方式下,次站不管是否收到主站的允许传输的命令就可以传输数据 帧。这种方式既可以用来传输数据,也可以用来传输次站的状态信息。 ( 3 ) 在a b m 方式下,复合站可以自主的决定数据的传输。它也可以用来传输数 据,同时也可以传输发送站的状态信息。 1 9 3h d l c 协议的帧格式 在h d l c 中,数据和控制报文均以帧的标准格式传送,帧格式如图2 3 所示: 一个有效的帧的首部或尾部f l a g 是一串标志码( 7 e h ) ,当接收端识别到这 样的标志后,可以认为是帧间标记,标志了帧头或者帧尾。当线路处于有连续的 标志位出现的状态叫作线路空闲态。 a d d r e s s 是地址段( 可以扩展) ,它的具体内容取决于所采用的操作方式,在 不平衡式链路结构中的n r m 和a r m 传送方式下,写入的是次站的地址,而在 平衡式链路结构中则总是写入响应站的地址。c o n t r o l 是控制段,用于规划接收时 的一些行为,用于标识和区别帧的类型和功能,根据控制字段前两个b j t 位的不 同可以分成信息帧( i n f o r m a t i o nf r a m e ) 、监督帧( s u p e r v i s o r yf r a m e ) 年e l 无编码帧 ( u n n u m b e r e df r a m e ) 。 西南交通大学硕士研究生学位论文第1 4 页 i n f o r m a “o n f r a m e ( d a t a ) b i t s s u p e n t i s e r y 卜阳m e b i t s u n n u m b e r e d f r a m e ( l i n ks t ar t ) 0 s e n d fp o 咿f r e c e d e s e q u e i 1 c e n o l f i n a i is e q u e n c en o 图1 - 4h o l c 帧格式说明 1 9 4 h d l c 协议的通信过程 按照h d l c 协议,两站之间的通信过程包括三个阶段 ( 1 ) 建立链路,确定收发关系; ( 2 ) 传输数据 ( 3 ) 链路拆除 西南交通大学硕士研究生学位论文第1 5 页 s c c 功能需求描述 1 1 0s c c 应用需求的产生 数据通信中的串行通信是数据通过一根传输线路逐位传送,适用于长距离的 数据通信领域。广域网的连接方式通常是通过路由器进行的,路由器上的串口卡 是广域网接口卡之一,它的串行通信过程采用s c c 控制。虽然现在网络应用都趋 于高速化,特别是在广域网的连接上。但是为了节约网络建设的费用,还是存在 不少的中低速应用,特别是采用串行通信方式,仍然市场较广,通常是在网络层 次的接入层,如语音等这种贴近用户的中低速应用还比较多。 路由器 8 m ,土,业务汇聚点 r 。一1 、 ,一刃云孓: ji 2 m i ; 卜吖乎卜- 撕。 n 6 4 k 、霉。n + 6 4 k 图1 - 5s c c 网络应用模型 1 _ 1 ls c c 的具体业务功能需求 1 1 1 1 总线接口功能 ( 1 ) 实现p c i 的总线接口,通过p c i 总线实现路由器的处理器和芯片

温馨提示

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

评论

0/150

提交评论