(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf_第1页
(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf_第2页
(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf_第3页
(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf_第4页
(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(信号与信息处理专业论文)一种高速路由器交换控制代码的分析及优化.pdf.pdf 免费下载

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

文档简介

摘要 悃特网的高速发展使得网络上的p 流量急剧增加,对能够提供高速接入、 具有高速i p 包转发功能的i p 路由器的需求也因此急剧增加。为满足此需求,各 公司纷纷设计出不同种类的高性能、宽带接入的i p 路由器,7 笨论文研究的交换 控制代码正是在此类高性能i p 路由器的交换网板上运行的控制软件。 本论文首先叙述了路由器的发展现状、趋势及本课题讨论的路由器的基本结 构;接着介绍了路由器交换网板的各功能单元的硬件结构及工作原理;在此基础 上对交换控制代码进行了详细分析,包括软件流程、模块划分、以及两个重点功 能模块运行机制的研究,其中重点讨论了通过h d l c 通道与主控板进行数据通 信的功能请求的处理机制。然后,通过对原有代码进行改进,形成了一个便于调 试修改版本,并通过试验验证了该版本的正确性。最后,应用该版本成功地改正 了温度监控模块的“温度超限多次上报”的错误。 - l 详细分析交换控制代码并形成便于修改版本,有利于对控制代码进行升级和 优化,能够使路由器更加高效、稳定的工作。) ,一 关键词: 路由器。 交换控制代码。 h d l c 通道。 d s 8 0 c 3 2 0 微控制器“ 队列的链式存储 a b s t r a c t b e c a u s eo fr e c e n tr a p i dg r o w t ho f t h ei n t e r n e ta n di n t r a n e t s ,i pt r a f f i cw h i c hr u n s o v e rl a n sa n dw a n sh a sb e e ni n c r e a s i n g e x p l o s i v e l y i nt h a t e n v i r o n m e n t t h e r e q u i r e m e r i tf o ri pr o u t e r sw h i c hc a na c c o m m o d a t em a n yh i g h - s p e e dp o r t sa n dh a v e h i g hi pf o r w a r d i n gp e r f o r m a n c ei si n c r e a s i n g i no r d e rt om e e tt h o s ed e m a n d s ,s o m e k i n d so fh i g h p e r f o r m a n c ea n dw i d e - b a n d w i d t hi pr o u t e t sh a v eb e e nd e v e l o p e d s w i t c hc o n t r o lc o d ea n a l y z e di nt h i sp a p e ri sr u n n i n go no n ek i n do f h i g h - s p e e di p r e u t e l l t h ed e v e l o p m e n ta n dt e n d e n c yo fr o u t e ra r ep r e s e n t e di nt h i sp a p e l ln e x t ,t h e h a r d w a r es t r u c t u r ea n dt h et h e o r yo fs o m em a i nf u n c t i o nu n i t so ns w i t c hb o a r da r e d i s c u s s e di nd e t a i la n dt h es w i t c hc o n t r o lc o d ei sa n a l y z e di nd e t a i l w h i c hi n e l u d e s f l o w c h a r ta n a l y z i n g ,f u n c t i o nm o d u l e d i v i d i n ga n d t w o i m p o r t a n t m o d u l e r e s e a r c h i n g t h ed i s p o s a im e c h a n i s mo fd a t ac o m m a i l i c a t e dw i t hh i g h e rc e n t r e lc o d ei sm a i n l y d i s c u s s e d f u r t h e r m o r e ,ar e v i s i o no fs w i t c hc o n t r o lc o d e ,w h i c hi se a s yt ob e m o d i f i e d ,i sc r e m e da n dt e s t i f i e dc o r r e c tb yd e b u g g i n go nl i n e a tl a s t ,b a s e do nt h i s r e v i s i o nw es u c c e s s i n c o r r e c t i n g r e p o r t i n gr e p e a t e d l y o n t e m p e r a t u r e o v e r t h r e s h o l d o na n a l y z i n gt h es w i t c hc o n t r o lc o d ea n dc r e a t i n gt h er e v i s i o ne a s yt ob e m o d i f i e d ,i tb e c o m ep o s s i b l et h a to p t i m i z i n gt h ec o n t r o lc o d et om a k et h er o u t e r r u n n i n gm o r ee f f i c i e n t l ya n ds t r o n g l y k e y w o r d r o u t e r s w i t c hc o n t r o lc o d e h d l cc h a n n e l d s 8 0 c 3 2 0m i e r o c o n t r o l l e r q u e u e i nc h a i nm o d e 立塑型塑主兰堡堡壅 苎二童笪堡 第一章绪论 近年来,路由器的发展有起有伏。2 0 世纪9 0 年代中期,传统路由器成为制约 因特网发展的瓶颈,被a t m 交换机取而代之,成为i p 骨干网的核心,路由器变 成了配角。进入9 0 年代末期,i n t e m e t 规模进一步扩大,流量每半年翻一番,a t m 网又成为瓶颈,路由器东山再起。吉比特路由交换机在1 9 9 7 年面世后,人们又开 始以吉比特路由交换机取代a t m 交换机,架构以路由器为核心的骨干网。 作为核心设备,路由器在m 网上处于至关重要的位置。随着因特网应用的普 及,网络带宽的迅速增加,用户对服务质量要求的提高,路由器的未来也面临着新 的变革。 本课题的研究对象即是作为口骨干网核心设备的高速路由器上的交换控制代 码。 1 1 路由器的基本概念及发展趋势 一、路由器的基本概念 路由器是一种连接多个网络或网段的网络设备,它能将不同网络或网段之间的 数据信息进行“翻译”,以使它们能够相互“读”懂对方的数据,从而构成一个更 大的网络。 路由器有两大典型功能,即数据通道功能和控制功能。数据通道功能包括转发 决定、转发以及输出数据链路调度等,一般由硬件来完成;控制功能一般用软件来 实现,包括与相邻路由器之间的信息交换、系统配置、系统管理等。 二、路由器的基本功能介绍 传统上,路由器工作于所谓网络7 层协议模型中的第3 层,其主要任务是接收 来自一个网络接口的数据包,根据其中所含的目的地址,决定转发到哪个目的地, 町能是路由器也可能就是最终目的点,并决定从哪个网络接口转发出去。这是路由 器的最基本功能数据包转发功能。 根据t c p 口协议,路由器的数据包具体转发过程是: 1 网络接口接收数据包。不同的物理网络介质,决定了不同的网络接口。如 对应于1 0 b a s r t 以太网,路由器有1 0 b 鹊e t 以太网接口;对应于d d n ,路由 器有v3 5 接口。 2 根据网络物理接口,路由器调用相应的链路层以解释处理数据中的链路层 协议。这一步处理主要是对数据完整性的验证。 3 在链路层完成对数据帧的完整性验证后,路由器开始处理此数据帧的口 层。根据数据帧中的目的口地址,路由器在路由表中查找下一地址,并计算新 的校验和。如果接收数据帧的网络接口类型与转发数据帧的网络接口类型不同,则 口数据包还可能因为最大帧长度的限制而对其进行分段或重组。 凡津大学硕士学位论文 第一章绪论 4 根据在路由表中所查到的下一口地址,印数据包送往相应的输出链路层, 最后经网络物理输出接口发送出去。 为了维护和使用路由器,路由器还需要有配置或者说控制功能。 控制功能是由一系列规则所提供的,举例来说,可能是优先权、拒绝访问或提 供记账数据。当数据包进入路由器时,这些相关的规则也同样作用于数据包。在基 于软件的路由器中,这些规则被存储在一个软件数据库内,每个数据包通过时都必 须与该数据库进行核对。 三、路由器的发展趋势 当前i t 产业中,芯片速度每1 8 个月翻一番,而因特网的流量却是每6 个月翻 一番。作为因特网的枢纽,路由器正在朝速度更快、服务质量更好和更易于综合化 管理这三个方向发展。 1 速度更快 传统意义上的路由器通常被认为是网络速度的瓶颈。在局域网速度早已达到上 百m b p s 时,传统路由器的处理速度至多只到几十m b p s 。这几年伴随着因特网用 户的爆炸式增长,大家对路由器的研究也重点体现在提高路由器的处理速度上。 1 9 9 6 1 9 9 7 年间,美国出现了一批极具创新精神的小公司,如n e x a b i t 、 j u n i p e r 、a v i e i 等以提高路由器的处理速度为研发重点,在很快的时间内相继推出 了吉比特( g b p s 数量级) 路由器,连c i s c o 公司在速度方面部只能望其项背。由于这 些高速路由器无一例外地都引入了交换的结构,因此它们也被称作吉比特交换路由 器( o s r - g i g a b i t s w i t c h r o u t e r ) 。这些路由器的光接口速度也很快从o c 1 2 ( 6 2 2 m b p l 升到o c - 4 8 ( 25 g b p s ) ,再升到o c 1 9 2 ( 1 0 g b p s ) ,这样的速度早已把a t m 交换 机远远地甩在后面。从此,a t m 在核心网络中不可代替的地位彻底发生了动摇。 不过,p 路由器速度的提高是直接得益于a t m 的概念和技术的,在毋领域中提 出的许多新概念和新技术也有相当一部分是直接或间接来源于a t m ,两种优秀的 技术逐渐开始融合。具体来说,口路由器速度的急剧提高来源于以下四方面的技 术进展: ( 1 ) 硬件体系结构:路由器的硬件体系结构大致经历了6 次变化,从最早期的 单总线、单c p u 结构发展到单总线、多c p u 再到多总线多c p u 。到现在,高速 m 路由器中多借鉴a t m 的方法,采用交叉开关方式( c r o s s b a r ) 实现各端口之间的线 速无阻塞互连。高速交叉开关的技术已经十分成熟,在a t m 和高速并行计算机中 早已得到广泛应用,市场上可直接购买到的高速交叉开关的速率就高达5 0 g b p s 。 伴随着高速交叉开关的引入,也同时引入了一些相应的技术问题,特别是针对口 多搔、广播以及服务质量( q o s ) ,采用成熟的调度策略和算法,这些问题都得到了 很好的解决。 ( 2 ) a s i c 技术:这些年,出于成本和性能的考虑,a s i c 应用得越来越广泛。 在路由器中要极大地提高速度,首先想到的也是a s i c 。有的用a s i c 做包转发, 有的用a s i c 查路由,并且查找i p v 4 路由的a s i c 芯片已经开始上市销售。由于 a s i c 的设计生产投入相当大,一般来说,a s i c 只用于已完全标准化的过程,而网 络的结构和协议又变化相当快,因此相应地在网络设备这一领域内出现了“可编程 a s i c ”。目前,有两种类型的所谓“可编程a s i c ”。一种以3 c o m 公司的 2 天津大学硕士学位论文 第一章绪论 f m e ( f i e x i b l e i n t e l l i g e n t r o u t i n g e n g i n e ) 芯片为代表,这颗a s i c 芯片中内嵌了一颗 c p u ,因此具有一定的灵活性;另一种以v e r t e xn e t w o r k s 的h i s c 专用芯片为代 表,该芯片是一颗专门为通信协议处理的c p u ,其体系结构的设计专门适应协议 处理,通过改写微代码,可使这颗专用芯片具有处理不同协议的能力,以适应类似 从i p v 4 至u p v 6 的变化。 ( 3 ) 3 层交换技术:这是协议处理过程的一次革命性突破,也是现在g s r ( 吉比 特路由器) 和t s r ( 太比特路由器) 名称的来源。自从名不见经传的i p s i l o n 公司在 1 9 9 4 年推出“一次路由,然后交换”的i ps w i t c h 技术之后,各大公司纷纷推出自 己专有的3 层交换技术。如c i s c o 的t a gs w i t c h 、3 c o m 的l a b e ls w i t c h 等。综合这 些专有技术的优点,i e t f 在1 9 9 8 年推出了性能优越的多协议标记交换( m p l s ) 。 ( 4 归o v e rs d h ,i p o v e rd w d m :这方面的技术进展完全源于光纤通信技术的 进展。随着m 的核心地位逐渐被认同,i p o v o r a t m ,然后a t m o v e l s d h 的方式 被p 直接o v e rs d h 的方式取代。s d h 采用时分复用的方式承载多路数据。因此 在核心网中需大量采用复用器交叉连接器,d w d m ( 密集波分复用1 使得一根光纤上 可用不同的波长传送多路信号。 2 服务质量更好 前面所述的路由器在速度上的提高仍只不过是为了适应数据流量的急剧增加。 而路由器发展趋势更本质、更深刻的变化是:以m 为基础的包交换数据将在未来 几年内迅速取代已发展了近百年的电路交换通信方式,成为通信业务模式的主流。 这意味着,d 路由器不仅要提供更快的速度以适应急剧增长的传统的计算机数据 流量,而且口路由器也将逐步提供原电信网络所提供的种种业务。但是传统的口 路由器并不关心也不知道口包的业务类型,一般只是按先进先出的原则转发数据 包,语音电话、实时视频、因特网浏览等各种业务类型的数据都被不加区分地对 待。 由此可见,m 路由器要想提供包括电信、广播在内的所有业务,提高服务质 量( q o s ) 是其关键。这也正是目前各大网络设备厂商( 包括c i s c o ,3 c o m ,n o r t e l 等) 所努力推进的方向。各大厂商新推出的高、中、低档路由器中都不同程度地支持 q o s ,如c i s c o 的最高档1 2 0 0 0 系列,从硬件和软件协议两方丽都对q o s 有很强的 支持,而其新推出的低端产品2 6 0 0 系列也支持语音电话这样的新业务应用。事实 上,q o s 不仅是路由器的一个发展趋势,以路由器为核心的整个m 网络都在朝这 个方向发展。 3 管理更加智能化 随着网络流量的爆炸式增长,网络规模曰益膨胀以及对网络服务质数的要求越 来越高,路由器上的网络管理系统变得曰益重要,网络连接已成为日常工作、生活 中不可缺少的部分。在保证质量的情况下最大限度地利用带宽、及早发现并诊断设 备故障,迅速方便地根据需要改变配置,这些网络管理功能都日益成为直接影响网 络用户和网络运营商利益的重要因素。在网络协议七层模型中,网络管理属于高层 应用,目前各厂家网络管理的一个重要发展趋势是向智能化方向发展。而智能化又 体现在两个方面,一是网络设备( 路由器) 之间信息交互的智能化;二是网络设备与 网络管理者之间信息交互的智能化。在网络管理智能化的大趋势中,“基于策略的 管理”和“流量工程”这两个技术概念是目前最引人注目的。 天津大学硕士学位论文 第一章鳍论 当今世界,网络技术的发展曰新月异。当我们沉浸在以口为基础的因特网给 我们带来的巨大喜悦中时。路由器技术特别是核心路由器技术正经历着巨大的变 化,交换式路由技术就是这一领域的热门技术。它不仅解决了通信流量问题,而 且具有更高的网络控制能力和管理能力。 1 2 高速路由器的功能原理及本课题的任务 一、路由器技术的发展 第一代路由器是由软件集中进行口包转发的,所有的讲包都要经过中央c p u 进行转发处理,吞吐率比较低,转发能力约几万包每秒。 第二代路由器是基于软件的分布式转发,每个接口板上都有c p u ,主控板生 成的路由表被下放到各接口板,每块接口板根据转发表独立进行转发工作,转发能 力超过1 0 0 万包每秒。第二代路由器的技术特点是各接口板转发表的刷新和同步技 术。 第三代路由器被称为交换式路由器、基于硬件的路由器或线速路由器。此种高 速路由器是由专用硬件完成路由查找。一个典型的交换式路由器是由共享内存或 c r o s s b a r 组成交换网络及路由查找的a s i c 实现的。路由器的吞吐量一般为几个 g i g a b i t ,并且代价相对较低。交换式路由器的结构如图1 1 所示。 图1 - 1 交换式路由器的体系结构图 图中,端口处理物理层和链路层的封装及拆包;转发及输出调度a s i c 完成输 入数据包的路由查找及输出队列的管理;通用处理器处理路由协议、维护路由表、 并负责将更新的路由表分发到各转发及输出调度a s i c ,交换网络负责数据包的高 速交换。 凡律大学硕f 学位论文 第一章绪论 路由交换机除了完成基本的路由功能外,一般还提供l f 列功能: 替代p 网中的任何路由器 支持r s v p ( 应用资源预留协议) 和多优先级排队: 支持口多址通信。 :、本课题分析的高速路由器的基本结构 这里谈到的高速路由器主要由主控板、交换板和线路接口板组成,它们通过高 速背板连接,插在一个具有电源、风扇的机框中。结构示意图如图1 - 2 。 图l - 2 高速路由器组成结构示意图 ( 1 ) 主控板:主控板是路由器的控制中心,c p u 和存储器位于主控板中。主控 板负责整个路由器的管理和控制,m 路由协议在主控板上运行。主控板直接接收 来自网管中心的指令,并下发到备接口板执行指令,同时各接口板把运行状态和统 计数据传送到主控板,由主控板进行必要的处理,需要时发给网管中心。网络管理 员配置的静态路由以及通过运行路由协议生成的动态路由由主控板进行管理,并下 发到各接口板,使各接口板可以独赢的进行数据包的转发i :作。 主控板的作用举足轻重,一旦它发生故障,整个路由器将不能正常上作。对j 二 电信网的核心网络设备来说,要求可用率达到9 99 9 9 ,即1 年的停机时间不超过 5 m i n 。所以主控板通常配有两块,一般以主、备方式工作。主、备板周期性地交 换握手信号,一旦备用板收不到主用板的握手信号,则会启动到换流程,接替主用 板工作。反之,若主用板接收不到备用板的握手信号,则会发出告警,提醒管理人 员检修或更换备用板。 ( 2 ) 交换板:高速路由器的整机吞吐量很大,早期路由器的基于背板共享总线 传递数据的方式已不能满足高速数据传递的需要。高速路由器设有专门的交换网板 处理高速数据交换,现有的交换网络一种是采用共享缓存方式,一种使用c r o s s b a r 交叉辟关交换方式。两种方式各有利弊,本课题分析的交换网板使用两片共享缓存 力式的交换:占片处理数据,每片交换芯片有1 6 个端口,交换容量为2 8 4 g b p s ,两片 进行外部速度扩展使交换容量达到5 68 g b p s 。 盔! 达兰堡圭兰丝堡茎 蔓二童堕堡 由于交换网板的故障也会导致整机的瘫痪,所以通常也设有备用板。另外,大 容量交换网通常是多平面的,由多块交换网板组成,所以主备方式通常是n1 。本 系统仅使用一个备用板。 ( 3 ) 线路接口板:线路接口板提供多种线路接口,目前常见的有i o m 、1 0 0 m 、 1 0 0 0 m 、1 0 g b i t s 以太网口,1 5 5 m 、6 2 2 m 、25 g 、1 0 c , b i t s 的p o s 接口,1 5 5 m 、 6 2 2 m 、2 5 g b i q s 的a t m 接口等。线路接口板从不同的物理层和数据层信息中提取 出m 数据包提交给专用a s i c 或网络处理器进行处理。 ( 4 ) 高速背板:传统路由器一般使用共享式总线传递数据,并在近几年引入了 越来越高速的共享式总线,从i s a 到e i s a 和现在的p c i ,但依然存在很大的缺 陷。在高速路由器中引入交换网后,在背板上用点到点的高速连线把用户板连接到 交换网,进行高速数据传递。由于交换网是备份的,背板上的数据线也是双套的。 同时背板上仍存在控制总线,用于交换控制信息,当然控制信息也可以在数据通道 的带内传送。由于高速连线众多,背板的设计和加工也比较复杂,通常采用几十层 的p c b 设计。 ( 5 ) 风扇和电源:高速路由器内部芯片密集,功耗很大,对风扇和电源同样有 很高的要求。在风扇的设计上充分考虑机箱内各器件的位置,使各器件产生的热量 能及时排放出去。同时风扇的转速根据机箱内温度可以调节,风扇损坏后可进行告 警,并可以方便的进行更换。电源模块既在功率上留有裕量,又设计了备份电源。 三、本课题所要完成的任务 随着路由器设计中交换容量的不断扩大,高速路由器结构中的交换网板的作用 变得更加重要,本科研课题就是对一种高速路由器交换网板的控制代码进行分析及 优化。主要完成以下几个阶段的任务: l ,详细了解交换网板上各功能模块的组成结构、工作原理。 2 ,分析控制交换网板正常运行的控制代码的运行流程及各功能的具体实现。 3 ,在分析源文件的基础上形成便于修改的版本,并对新的版本进行实际运行 调试确保其正确性,以利于将来对控制代码做进一步修改。 6 天津大学硕士学位论文 第二章 交换网板系统的硬件结构 第二章交换网板系统的硬件结构 在高速路由器中,由于主控板、交换板一旦发生故障,整个路由器将不能正常 t 作。所以,主控板、交换网板通常都配有两块,以主备方式工作。本课题所涉及 的交换网板就是这样的主备机制的系统。图2 1 表示了交换网板在系统中的位置。 图2 1 交换网板在系统中的位置 交换网板主要由交换模块和控制模块两部分组成。交换模块由两片交换芯片组 成,在控制模块的控制下完成数据交换;控制模块是交换网板的控制核心,可以与 主控板通过串行控制总线进行通信,还可以通过r s 2 3 2 串口与p c 机进行通信。 控制模块主要由8 0 c 3 2 0 处理器和一些外围器件构成,其主要功能是负责网板 和主控板之间的通信联络,实现对网板内的各功能模块的状态检测和控制。详细的 控制模块组成结构如图2 2 所示 7 童塑堕曼塑型羔堕坐望巳一 篁三童銮垫塑堡墨竺塑塑生丝塑 图2 - 2 控制模块的组成结构图 2 1 交换芯片的结构及功能 本系统的交换模块由两片交换芯片p r s 2 $ g 构成,交换芯片p r s 2 8 g 属于 i b m 公司的第二代高性能包路由交换产品,端口速率达到o c 4 8 ( 25 g b p s ) ,是数据 帧和信元交换系统的理想解决方案。该芯片的内部逻辑结构框图如图2 - 3 所示。 图2 - 3 交换芯片p r s 2 8 g 的内部逻辑框图 天津大学硕士学位论文第二章 交换网板系统的硬件结构 p r s 2 8 g 采用共享输出缓存的结构,每片p r s 2 8 g 的交换容量为2 84 g b p s 。 p r s 2 8 g 支持基于帧结构的固定长度的数据流交换,帧的长度可以通过程序设定。 p r s 2 8 g 具有很好的扩展性,通过速率扩展或者端口扩展,可以构造出更大容量的 交换网络。 f r s 2 8 g 支持4 种优先级的数据交换,从而提供q o s ( q u a l i t yo f s e r v i c e ) 保证。 p r s 2 8 g 的核心是共享存储器,主要用于存储数据包。共享存储器分为主存储 体和从存储体两组,每组都有一个写入端口和一个读出端口。每组存储器可分为 5 1 2 行,每行的容量为2 0 字节。根据数据包的长度,决定每次访问1 6 2 0 个字 节。在p r s 2 8 g 内,通过地址管理器来维护可用的共享存储器空间的地址表。 具体操作是输入控制器检查输入数据包的包头,利用头字节的奇偶校验位检奁 数据的完整性( i n t e g r i t y ) ,接着将合法数据包存储在共享存储器中,其存储地址以 及包的优先级、输出端口位图( b i t m a p ) 进一步通过输出队列寻址管理器处理。根 据包的优先级及位图域将存储地址排队入f i f o 队列( 每个输出端口的每个优先级 在逻辑上分配一个f i f o ) ,数据包根据它们在输出队列中的位置一一发送出去( 由 输出队列读取管理器根据队列中的地址指针从共享存储器中取出数据包来发送) , 高优先级的包先于低优先级的包发送。 广播数据包的处理方法类似。只是一个广播包在共享存储器中只存储一次,其 存储地址由包的输出端口位图域标明,排入所有的输出队列。广播包根据在输出队 列中的位置传输,不必要求同时在所有的端口传输。 中心地址管理器可理解为一个含有共享存储器的可用空间地址的“池子”,为 输入控制器提供新的存储地址。数据包一经传输出去,它的地址就会被自动返回 “池子”,重新使用。对于广播包而言,其地址要被使用多次,管理器跟踪广播地 址剩余的被使用次数,此数减到0 ,地址才返回“可用地址池”以备重新使用。 控制包可以从任意的端口接收,一一传给本地处理器,芯片中存在一个控制 包的地址队列可存储小于1 6 个控制包地址。同时,控制包也可由本地处理器传往 任意输出端口,控制包没有优先级,但总是先于其他数据包传送。本地处理器访问 比包数据传输负载的速度慢,但由于控制包传输线的并不经常发生,所以不会影响 到高优先级的流传送。 为控制交换芯片正常工作,交换芯片内部包含一个状态寄存器、3 2 个应用寄 存器及一个o c m 接口。o c m 接口提供串行接口到本地处理器,用于编程应用寄 存器或是读取寄存器内容。具体连接见图2 - 4 。 9 天津大学硕士学位论文 第二章 交换网板系统的硬件结构 图2 _ 4p r s 2 8 g 内部寄存器及其访问连接 图中,e p l d 内设置特定寄存器空间用于o c m 数据与本地处理器间的串并转 换,本地处理器向e p l d 特定寄存器写数据,数据通过e p l d 输出为 e m b _ d a t a _ i n 串行信号,写入o c m 指令寄存器,再根据o c m 的指令集定义, 决定其操作( 包括读写应用寄存器,读取状态寄存器,交换芯片复位等) 。每次操作 的结果存储在响应寄存器中,在本地处理器控制下通过e m bd a t ao u t 信号移 入e p l d 特定地址空间,供本地处理器读取。表2 1 所列为3 2 个应用寄存器的功 能概述。 表2 - 1p r s 2 8 g 的应用寄存器 寄襻臻蛾城 菘豢糍| | l l 城ij 澄阈凑豢蓦 。“、一”2 w :,一:四瓣翱;姻潮l “= ;一:、;:;、: :i ( 卡溅绷:1 1 。:一5 醚辫滋豢黼| o0脚 模式寄存器 ll洲 配置寄存器0 2 2脚配置寄存器1 33删 端口允许寄存器 44i v w 输出队列阈值寄存器 55洲 共享存储器的胡值寄存器:优先级0 和优 先级1 66l v w 共享存储器的阈值寄存器:优先级2 和优 先级3 77r 九 掩码寄存器 88洲 同步状态和同步搜索寄存器 99删 同步包发送寄存器 1 0ar c r c 端口号寄存器 1 1br c r c 错误计数寄存器 1 2cr 信号丢失检测寄存器 1 0 天津大学硕士学位论文第二章交换网板系统的硬件结构 1 3dr 流控信号冲突的端口号寄存器 1 4er 其它状态寄存器 1 5 f保留 1 61 0r 输出队列状态寄存器0 1 71 1r 输出队列状态寄存器1 1 81 2r输出队列状态寄存器2 1 91 3r 输出队列状态寄存器3 2 01 4咖 表指针寄存器 2 l1 5洲 表数据寄存器 2 21 6洲 共享存储器行地址哿存器 2 31 7洲命令寄存器 2 41 8咖控制包目的寄存器 2 51 9洲路由过滤寄存器 2 6l ar 黄包接收寄存器 2 7l b洲p l l 配置寄存器 2 8i c洲m 3 处理器地址寄存器 2 9l dr ,、m 3 处理器数据寄存器 3 0l e洲b i s t 数据寄存器 3 ll f删b i s t 控制寄存器 2 2 微处理器及其外围电路 微处理器是交换网板上控制模块的核心,该系统选用d a l l a s 公司的8 位微处 理器d $ 8 0 c 3 2 0 ,此芯片属于该公司的高速处理器系列,工作频率为3 2 m h z ,每个 指令周期仅包括四个机器周期。具有2 5 6 个字节的内部随机存储空间,同时可以访 i n 6 4 k 字节的指令空间和6 4 k 字节的数据空间。处理器不含片i 勾r o m ,所以控制代 码仔储在f l a s h 中,系统初始化对,完成程序的下载和搬移。 处理器通过数据和地址总线与f l a s h 、r a m 、串行通信控制器以及e p l d 相 连,通过1 2 c 总线与两片e e p r o m 和两片温度传感器相连。8 0 c 3 2 0 还提供一个异 步通信接口r s 一2 3 2 供调试时使用。 处理器与外围电路连接如图2 5 所示。 天津大学硕士学位论文 第二章交换网扳系统的硬件结构 - _ 片选及读写信号线牟= = = = = 0 数据信号线仁= = = = = 地址信号线 图2 5 微处理器及外围电路连接简图 由图可见,8 0 c 3 2 0 的p o 端口作为数据与地址复用,一方面直接连接f l a s h 、 r a m 、串行通信控制器的数据总线,另一方面通过e p l d 进行地址锁存后输出低位 地址给f l a s h 、外部r a m :8 0 c 3 2 0 的p 2 端口输出高位地址线给f l a s h 、外部 r a m ;f l a s h 的最高位3 条地址线、片选信号线及读写信号线以及外部r a m 及串 行通信控制器的片选信号均由e p l d 逻辑产生;8 0 c 3 2 0 使用p i 4 及p 15 脚与两片温 度传感器、两片e e p r o m 的s c l 、s d a 脚相连,用软件模拟1 2 c 总线。 系统中的f l a s h 分为b o o tf l a s h 和e x tf l a s h ,网板上电时程序的运行总 是从b o o tf l a s h 开始,然后根据控制信号来决定是否执行e x tf l a s h 中的代 码。b o o tf l a s h 和e x t f l a s h 都采用的是a m d 公司生产的a m 2 9 f 0 1 0 。其容量 为1 2 8 k 字节。 r a m 供8 0 c 3 2 0 存储运行时的临时数据,采用c y p r e s s 的c y 7 c 1 0 0 9 2 0 v c 其 容量为1 2 8 k 字节。 串行通信控制器( h s c x ) 采用的是s i e m e n s 公司的s a b 8 2 5 2 5 。 e p l d 主要完成控制信号的逻辑功能,足微处理器和其它功能模块的控制信号 接口,e p l d 采用的是a l t e r a 公司的e p m 7 5 1 2 。 串行通信控制器及e p l d 将在后续两节中介绍。 2 3 串行通信控制器的结构及功能 在此使用的串行通信控制器为s i e m e n s 公司的s a b 8 2 5 2 5 芯片,它可用于实 现高级链路控制( h d l c ) 协议的高速串行通信,最高传输速率可达到4 mb i f f s 。 s a b 8 2 5 2 5 可提供2 个独立的全双工h d l c 通道,在不同的操作模式下支持不同的 第二层协议。 图2 - 6 是s a b 8 2 5 2 5 的硬件结构框图。按照功能原理,硬件结构分为两个组成 部分:总线接口和串行通道控制电路。总线接口由c p u 接口和d m a 接口组成。 塑塑苎型竖堡堡塞 墨三兰銮垫塑堡墨堕塑堡竺堕塑 串行通道控制电路包含两个完全独立的全双工h d l c 串行通道控制电路。图中只 画出了通道a 的结构框图,通道b 的结构框图与通道a 完全相同。 堆址苴缱 矗据总缱 拉朝缱 爰中断缱 图2 - 6s a b 8 2 5 2 5 硬件结构图 s a b 8 2 5 2 5 的c p u 接口包括8 位数据线,7 位地址线,3 条控制线和1 条中断 请求线。微处理器和s a b 8 2 5 2 5 之间的通信按通信目的可分为两类:微处理器对 s a b 8 2 5 2 5 进行控制和两者之间的数据传送。微处理器对s a b 8 2 5 2 5 的控制是通过 读写s a b 8 2 5 2 5 的内部寄存器来实现的。与s a b 8 2 5 2 5 之间的数据传送分为两种方 式:d m a 方式和中断方式。使用中断方式时,当s a b 8 2 5 2 5 满足发生中断的条件 ( 如接收到数据帧) ,就会向微处理器发出中断请求。微处理器读取中断寄存器 i s t a 、e x i r 确定中断发生的原因,并做出相应的处理。中断发生的原因可分为三 类:接收中断、发送中断和特殊状态中断。本系统采用中断处理方式,d m a 接口 未用到。 s a b 8 2 5 2 5 的串行通道控制电路包含两个结构相同的控制模块,它们提供了两 条完全独立的h d l c 通道。每个控制模块由时钟控制、编码冲突检测、发送和接 收f i f o 等功能模块组成。时钟控制模块包含波特率发生器( b r g ) 和数字锁相环 ( d p l l ) 电路。b r g 能够产生时钟信号,d p l l 则用于从接收到的数据流中恢复 时钟信号。发送时钟和接收时钟也可以通过r x c l k 、t x c l k 管脚由外部时钟来提 供。在发送方向和接收方向,各有一个6 4 字节的f i f o ,用于串行通道和总线接口 之间的数据缓存。每一个f i f o 分为两个3 2 字节f i f o ,微处理器或d m a 控制器 只能对其中的一个3 2 字节f i f o 进行读写,另外一部分用来缓存接下来要发送或 接收的数据。 s a b 8 2 5 2 5 用于主控板与交换网板间的数据通信,包括主控板发送、交换网板 接收的功能请求,交换网板发送、主控板接收的应答及上报。所以每个板子上都要 配有此:笛片。本系统采用冗余机制,故主控板与交换网板间h s c x 通道的连接为 带碰撞检测的多主配置方式,如图2 7 所示 大津大学硕士学位论文 第二章交换网板系统的硬件结构 h b l c 通i 萱a i l l;il;i;l + + c x d t x d h d c x n t x d h d c x 蹦t x d h d c x d t x d r x d 强b 8 2 5 2 5弘聃2 5 2 5 s a b 8 2 5 2 5髓b 8 2 s 2 5 c x d bt x d br x d bc x d bt x d br x d b c x t x d br x 肺c x d bt x d br i d b + + | ili l|l 1ii 7 h d l c 通道b 图2 7 交换网板与主控板的串行通信控制器的连接 2 4e p l d 的功能模块 本系统中使用e p l d 作为微处理器和其它功能模块的控制信号接口,实现控制 信号的逻辑功能。e p l d 采用的是a l t e r a 公司的e p m 7 5 1 2 。 e p m 7 5 1 2 属于a l t e r a 的m a x 7 0 0 0 系列器件。逻辑阵列块( l a b ) 、可编程 连线阵n ( p i a ) 、和f o 控制块构成m a x 7 0 0 0 器件的主体。每个逻辑阵列块由1 6 个宏单元组成,多个l a b 是通过p i a 和全局总线连在一起。l a b 的输入信号有: 1 ) 来自p i a 的3 6 个信号;2 ) 用于寄存器辅助功能的全局控制信号;3 ) v o 控制 块到l a b 的输入信号。此外,每个m a x 7 0 0 0 器件都有四个专用输入g c l k l 、 g c l k 2 、o e l 和o c l r n 。它们可以作为通用输入,也可以用在宏单元和f o 的全 局控制信号。宏单元由逻辑阵列、乘积项选择阵列和可编程触发器三个功能块组 成。由于m a x 7 0 0 0 系列新增加扩展乘积项这一结构,使得在实现逻辑综合时,保 证用尽可能少的逻辑资源得到尽可能快的工作速度。 e p m 7 5 1 2 的器件特性为 可用的门数:1 0 ,0 0 0 l a b 数:3 2 t p d :75 n s t f s u :30 n s 岛q t :1 1 63 m h z 宏单元数:5 1 2 最大的用户f o 引脚:2 1 2 t s u :56 n s t c o l :47 n s 人津大学硕士学位论文 第二章 交换网板系统的硬件结构 本系统中e p l d 的按照功能划分为以下几个模块: 1 、单片机接口模块:主要实现低位地址的锁存,一些器件的片选信号。通过 这些片选信号,将微处理器可寻址的6 4 k 字节数据空间分配给不同的器件。地址 分配如下: 0 x 0 0 0 0 0 x 0 0 1 f :o c m 接口地址 0 x 0 0 2 0 0 x 0 0 7 f :e p l d 的内部寄存器 o x 0 0 8 0 o x 0 0 f f :串行通信控制器s a b 8 2 5 2 5 内部寄存器 0 x 4 0 0 0 0 x 7 f f f :e x tf l a s h 的逻辑地址空间 0 x 8 0 0 0 o x f f f f :外部r a m 2 、o c m 控制模块:提供微处理器与交换芯片之间的接口,实现微处理器对 交换;酷片内部寄存器的读写。微处理器通过按一定规则对0 x 0 0 0 0 0 x 0 0 1 f 中的寄 存器进行并行读写,由e p l d 完成并串或串并转换,输出数据到o c m 指令寄存 器或从o c m 响应寄存器读取数据。 3 、主、备倒换控制模块:实现网板发生严重故障时的主备倒换。 4 、l e d 显示模块:用于交换网板指示灯控制。 5 、p o r t a v a i l a b l e i n o u t 模块:用于实现交换网板与线路板的端口同步控制。 6 、复位逻辑模块:实现交换网板的复位逻辑,包括看门狗复位。 7 、f l a s h 控制模块:为f l a s h 提供高位地址以及读、写和片选信号。 8 、h d l c 控制模块:完成h d l c 通信的部分控制功能。包括s a b 8 2 5 2 5 的复 位信号,两个通道数据输出使能信号,时钟使能信号都做在e p l d 中。 9 、e r r o r 模块:完成交换网板的故障检测。 10 、c l o c ki n t e r l o c k 模块:完成交换网板的时钟检测和互锁。 天律大学硕士学位论文 第三章交换踊板控制微码的软件分析 第三章交换网板控制微码的软件分析 本章主要分析驱动控制模块正常运行的控制微码的软件结构、流程以及一些重 点功能模块的软件实现。控制微码是以二进制b i n 格式存储在f l a s h 中的,在系 统上电时下载到微处理器d s 8 0 c 3 2 0 中运行。d s 8 0 c 3 2 0 处理器执行m c s 5 1 系列 单片机汇编指令集,本课题所分析的软件即为与b i n 格式的控制微码相对应的单 片机汇编语言源文件。 源文件经过分析发现,控制微码主要完成以下几个主要功能: l 、执行交换网板的上电自检及其错误记录。 2 、根据缺省值初始化交换网板上的各功能器件。 3 、处理来自h d l c 通道和串口的功能请求。 4 、在主控板控制代码的作用下,执行激活或禁止端口操作,完成d a s l 链路 同步化的过程。 5 、监测控制选定器件的工作( 如控制灯、温度传感器) 。 6 、执行整个网板的后台检测,记录发生的错误。 7 、黄包管理。 8 、流量控制的监控。 9 、检测网板不同电压的电源情况。 1 0 、代码下载( f l a s h 的在线升级、。 1 l 、进行生产测试。 1 2 、对交换网板主备冗余机制的支持。 下面主要分析主函数流程、以及两个重要的功能模块的实现过程。 3 1 主函数的流程分析 主函数的流程图如图3 - 1 所示 立塑坠苎兰坠竺塑塑鱼茎一 兰三兰奎垫塑堡丝! ! 堡堕塑墼堡坌塑 立童2 苎型型苎竺塑垒苎一 苎三童銮垫旦堡丝型墼塑塑鏊堡坌堑 兰塑2 苎塑望兰:堡塑 苎三皇 奎垫塑堡鳖查! 垡塑堕竺竺坌塑 图:3 - 1 控制代码主函数流程图 1 9 走津犬学硕士学位论文 第三蕈交换网板控制微码的软件分析 南流程图可以看出,在完成了各个部分的上电自检及初始化后,网板进入不断 循环检测各功能模块的

温馨提示

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

评论

0/150

提交评论