




已阅读5页,还剩59页未读, 继续免费阅读
(通信与信息系统专业论文)hinoc网络mac层调度算法的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 涨燃y 2 0 6 8 4 9 3 h i n o c 网络( h i 曲p e r f 0 肌a i l c en e t w o r ko v e rc o a ) 【) 是在当前f t t b 已经存在 和普遍应用的情况下,利用有线电视网已有的同轴电缆线路和现有网络,组建最 后1 0 0 米范围内的宽带接入网。该技术完全利用有线电视网同轴电缆的网络布线, 仅增加h i n o cb r i d g e ( h b ) 和h i n o cm o d e m ( h m ) 等相关设备,便可实现i p t v 、 s d t v h d t v 、上网等宽带应用。该技术对消除接入网带宽瓶颈,加速“三网融合 的进程具有重要意义。 本文结合实验室承担的国家8 6 3 计划项目一利用有线电视网带外信道的多业 务宽带接入网技术研究,利用f a r a d a y a 3 2 0 开发板,设计出符合h i n o c 网络m a c 协议的s o c 实现方案,并主要研究该方案中调度算法的设计和实现。 首先,本文分析了h i n o c 网络的技术特点,并根据具体的协议设计了m a c 层在a 3 2 0 开发板上的实现方案。然后根据h o c 网络时分复用和多业务宽带接 入的特点,在分析现有的调度算法的基础上,提出了适合h o c 网络的调度算法 具有最低保障的分层共享调度算法( h s s a l g ) 。最后介绍了调度系统的工作 流程和f p g a 内部调度模块的具体实现,该模块通过与c p u 配合,能够将接收到 的数据帧调度入队,并严格按照控制帧分配的发送时间将h i m a c 帧调度出队进行 发送。通过m o d e l s i m 对调度模块进行仿真,证明该模块能够按照要求顺利地完成 调度任务。 关键词:h i n o c 网络m a c 层调度算法f p g a a b s t r a c t h i n o c ( h i 曲p e 渤加a 1 1 c en e r ko v e rc o a x ) m d g e st h el a s t 1o om e t e r s b r o a d b 锄da c c e s sn e t w o r ku s i n gt l l eo u t - o f b 锄dc h a i l i l e lo fc o r m n u l l i 够舢l t e 姗【at v ( c a = i v ) c o a x i a lc a b l ei i l t 1 1 ec 弱eo ff t t bi s w i d e l yd e p l o y e da n du s e d 1 1 1 i s t e c l l i l o l o g yu s i i l gt h ee x i s t i n gc o a ) 【i a lc a b l e ,o l d ya d d i n gc o 玎e l a t i v eh i n o cb r i d g e ( h b ) a i l dh i n o cm o d 咖( h m ) ,c o u l dp r o v i d et 1 1 es e n ,i c e so fi p t vs d t v h d t va 1 1 d s u i 西n gt l l ei i i t e m e t 1 th a sg r e a ts i g l l i f i c 锄c ef o rr e m o v i n gr e s t r i c to fb r o a d b a n da u c c e s s 锄da c c e l e r a t i l l gt h ep r o c e s so fn e t w o r kc o r e 玛e n c e b a s e do nt l l en a t i o 眦l8 6 3p r o g 阳m j r e s e a r c ho fm u l t i - s e i c ea i l db r o a d b a i l d a c c e s sn e t 、o r ku s i n gt h eo u t - o f b a i l dc h 锄n e lo fc o m m u i 】j t ) ra n t e l l n at vc o a x i a l c a b l e ”,t h es o cr e a l i z a t i o na d a p tt 0h r n o cn e 铆o r km a cl a y e ri i lf a r a d a ya 3 2 0 p l a t f o mi sd e s i g i l e di nt h j st h e s i s ,w h i c hf o c u s e so nt h ed e s 咖a n dr e a l i z a t i o no f s c h e d u l i n ga l g o r i t h mi n 也ep r o j e c t f i r s to fa l l ,t l l ec h a r a c t e r i s t i co fh i n o cn e t w o r ki sa 1 1 a l y s e d ,觚dt h er e a l i z a t i o no f m a cl a y e ri i la 3 2 0p l a t f o 肌b a s e do nh i n o cp r o t o c o l i sd e s i 印e d n l e l l ,撒e r a i l a l y s e dt h ee x i s ts c h d u l i n ga l g o r i t h m ,n l es c h e d u l i n ga 1 9 0 僦 l i ns u i t a b l ef o rh i n o c n e t w o r ki sp r e s e n t e d ,w m c hi sc a l l e dh i e r a r c l l i c a ls h a r i l l gs c h e d u l i n ga l g o r i t h mw i t h l o w e s tg u a r 锄t e e ( h s s a l g ) a tl a s t ,n l ew o r kp r o c e s so fs c h e d u l i n gs y s t e ma i l dm c i m p l e m e n t a t i o no fs c h e d u i i n g m o d u l ei nf p g aa r ei n 仃0 d u c e di i lt l l i st h e s i s c o o p e r a t i n g 谢t hc p u ,t l l es c h e d u l i n gm o d u l ec o u l dt a l ( et h er e c e i v e d 觑l i i l e si n t ot h e c o 玎e s p o n d i n gq u e u e s ,a i l dt a k en l eh i n o c 丘咖e so u to ft h eq u e u e sa c c o r d i n gt ot l l e 劬ed i s t r i b u t e db yc o n t r o l l i n g 矗a m e s e m u la t i 甜b ym o d e l s i m ,i ti sp r o v e dt h a tt l l i s m o d u l ec 锄a c c o m p l i s ht 1 1 es c h e d u l i n gt a s ks u c c e s s f h l l y k e y w o r d :h i n o cn e l w o r k m a c l a y e rs c h e d u l i n ga i g o r i t h m f p g a 第一章绪论 第一章绪论 1 1 研究背景、目的和意义 目前,广播电视网、电信网和计算机网的“三网融合”已成为不可阻挡的趋 势,我国十一五规划纲要中明确指出了积极推进“三网融合”的发展目标【l 】。三网 融合在现阶段并不是指三大网络的物理合一,而是指高层业务应用的融合。其表 现为技术上趋于一致,网络层上实现互联互通,形成无缝覆盖,业务层上互相渗 透和交叉等【2 j 。近来出现的i p t v ( i n t e m e tp r o t o c o lt e l e v i s i o n ) 、v o d ( d e oo n d e m a i l d ) 等应用为“三网融合 在业务层面上找到了突破口,被认为是“三网融 合”的最佳切入点。按目前的编码方式,传输一路数字标清电视( s t a i l d a r d d e f i l l i t i o n t v ,s d t v ) 信号需要约6 m b p s 带宽,传输一路数字高清电视( h i 曲d e 觚t i o nt v , h d t v ) 信号,需要至少2 5 m b p s 带宽。若一个家庭用户同时收看l 套h d t v 和l 套s d t v 节目,并进行高速上网,则至少需要4 0 m b p s 的业务带宽【3 】。这必将对网 络提出更高要求。 随着我国光纤通信技术日趋成熟,骨干网光纤化已基本完成,接入网速率限 制成为影响业务融合的瓶颈。当前主要接入方式有以太网接入、光纤到户、电话 线接入、电力线接入、同轴电缆接入和无线接入等类型。但是由于带宽低、成本 高、需要重新布线以及用户接受程度等方面原因,这些接入技术都难以提供完善 可行的接入网解决方案1 4 j 。 我国现有1 3 亿有线电视网用户,分布广泛的楼道和户内分配同轴电缆网络具 有得天独厚的频带宽、容量大、抗干扰能力强等优点。当前,基于同轴电缆的接 入技术应用最广泛的是c a b l em o d e m 技术,该技术存在着两种相互竞争的规 范一一i e e e8 0 2 1 4 和d o c s i s 【5 j 【6 j 。i e e e8 0 2 1 4 未得到广泛应用,d o c s i s ( d a :t a o v e rc a b l es e i c ei n t e r f a c es p e c i f i c a t i o n s ) 是事实上的c a b l em o d e m 接入标准【7 1 。 采用d o c s i s 规范的c a b l em o d e m 接入技术,其逻辑拓扑结构为星型,采用点到 多点方式收发数据,下行信道工作于8 8 8 6 0 m h z 之间的频带,上行信道工作范 围为5 4 2 m h z 【s 】【9 】。c a b l em o d e m 接入技术在美国和欧洲得到了广泛应用,但在 我国其应用存在以下问题:1 ) 该技术必须对现有同轴线网络进行双向改造,工程 量大i l 们。2 ) 上行通道工作频率( 5 4 2 m h z ) 内,有较多工业和民用电器噪声干 扰。3 ) 当前我国的h f c 网的光纤结点覆盖用户较多,c a b l em o d e m 技术上下行信 道内数据速率由多个用户共享,每个用户实际获得的带宽有限,难以满足用户对 宽带业务的需求【l l 】【1 2 1 。因此,研究具有我国自主知识产权的基于有线电视网同轴 电缆的宽带接入解决方案,提高接入网速率,己成为三网融合进程中的迫切需要。 2 h i n o c 网络c 层调度算法的设计与实现 在我国有线电视网中,8 6 0 m h z 以下频段用于传输广播电视节目,而8 6 0 m h z 以上信道没有使用,本文称其为带外信道。据测算,在该带外信道内有超过2 g b p s 的可用物理带宽,若利用该带外信道提供宽带接入解决方案,无需重新布线或改 造即可提供多业务宽带接入。由于各种原因,我国有线电视网络条件较为复杂, 带外信道的性能可能与国外有较大差异。我国已将研究低成本同轴电缆高速接入 技术列入中国高技术研究发展计划( 8 6 3 计划) 新一代高可信网络重大项目,h i n o c ( h i g l lp e r f o 肌a n c en e 咖r ko v e rc o a x ) 技术就是利用有线电视同轴电缆的带外信 道组建多业务宽带接入网的一种新的接入技术。构建h i n o c 网络的目的是在当前 f 1 盯b 普遍应用的前提下,利用有线电视网已有的同轴电缆线路和分配网络,连接 光纤结点到住户,组建最后1 0 0 米范围内的宽带接入网。该技术完全利用现有有 线电视网同轴电缆的网络布线,仅增加h i n o c 桥( h b ,h i n o cb r i d g e ) 和h i n o c 调制解调器( h m ,h i n o cm o d e m ) ,实现高速和高质量多业务接入,可提供给用 户语音、i p t v 、s d t v h d t v 和上网等宽带应用4 0 m b p s 以上的业务带宽。 1 2 1 应用场景 1 2h i n o c 接入技术 很多地区已经现实了光纤到楼( f t t b ) 或光纤到户( 外) ( f t t h ) ,光结点 到用户家庭已经只有1 0 0 m 的距离。而且在这段1 0 0 m 的距离内,存在着现成的有 线电视楼内分配网络;选择同轴电缆作为入户接入手段,无需重新布线,成本低 廉,且易于为用户接受;电缆终端盒位置最靠近用户多媒体终端设备( 电视机) , 提供多媒体宽带业务十分便利;另外,由于不占用现有的电视频段,因此可以在 未进行数字电视整体转换的情况下,提供多业务宽带接入。故h 玳o c 技术将主要 用于最后l o o 米的组网,利用同轴电缆带外信道构建楼内或户内一段的接入网。 f t t b 、f t t h 和h i n o c 技术相结合,将提供新的宽带接入手段。 h i n o c 技术的主要技术指标是:单信道模拟带宽为1 6 m h z ,单用户m a c 层 接入速率可达到4 0 m b p s 以上;m a c 层网络拓扑支持点到多点的组网方式,单信 道支持最大结点数不低于3 2 个;网络覆盖范围不小于1 0 0 米,可实现包括 h d t v s d t v 等流媒体在内的多业务宽带接入。 以下两种组网方案将是h i n o c 技术较常见的组网形式: 1 ) f t t b + 楼内分配网络的组网方案 该方案是当前最为可行的接入方式,其结构如图2 1 所示。图中左右两个虚线 圈分别代表两个独立的有线电视楼内分配网络。在该分配网络内,采用频分复用 的方式将c a b l e 的带外信道分割成多个带宽为1 6 m h z 的频带( 称为h i n o c 信道) , 在每个h i n o c 信道上建立一个h i n o c 接入网,该1 6 m h z 频带由同一h i n o c 网 第一章绪论 络内的h b 和多个h m 结点共享。利用f t t b 线路,g b e ( g i g ab i te m e m e t ,千兆 以太网) 信号通过舳结点进入楼内分配网络,并被调制到c a b l e 的某个h i n o c 信道上,经分配网络到达处于同一h i n o c 网络的某个h m 结点,由该h m 结点将 信号解调后送到终端设备,如计算机或者机顶盒( s t b ,s e tt 0 pb o x ) 等。h i n o c 信道的划分方式非常灵活,最典型的配置是每个用户( 家庭) 分配一个h i n o c 信 道,这样每个用户的多台h m 设备共享该信道提供的至少4 0 m b p s 的用户接入带宽。 图1 1f r m + 楼内分配网络的组网方案 2 ) f t t h + 户内分配网络的组网方案 该组网方案如图2 2 所示。由于光纤已经到达用户门口,h i n o c 接入技术主 要解决户内接入组网的问题。g b e 信号经过g e p o n 的光分路器和光网络单元 ( o n u ,o p t i c a ln e t 、o r ku n i t ) 进入耶节点后,被调制到某个h i n o c 信道上, 调制后的信号进入户内分配网络,然后由处于同一h i n o c 网络中的某个h m 节点 将该信号解调后送至终端设备。在该方案中,h i n o c 技术用于在家庭内部组建电 缆接入网,每个用户独享4 0 m b p s 的接入带宽,这一带宽由户内的h b 和多个h m 设备共享。本方案要求光纤到住户门口,因此目前这种应用尚有一定局限。 4 h i n o c 网络m a c 层调度算法的设计与实现 1 2 2 拓扑结构 图1 2f t t h + 户内分配网络的组网方案 在单个h i n o c 信道内,其物理拓扑结构为总线型,易于扩展,各节点共享带 宽。如图2 3 所示。 一聆 鳓嘴猁 h m 翱嚆捌麴糍黝锄魄俐确睨删 扣m瑚蛐m 獭睨俐 h m 图1 - 3h m o c 网络总线型物理结构 h i n o c 网络逻辑拓扑为星型结构,即点对多点结构,如图2 4 所示。h b 作为 中心结点可以连接若干个子结点h m ,删相互之间不能互相通信,只能和h b 通 信。h b 发给h m 的帧称为下行帧,h m 发给h b 的帧称为上行帧。 图1 4h i n o c 网络星型逻辑结构 第一章绪论 5 1 2 3h i n o c 系统协议栈参考模型 h i n o c 系统协议栈包括物理层和m a c 层,其中m a c 层又包括位于上部的 汇聚子层( c o n v e r g e n c es u b l a y e r ,c s ) 和位于下部的公共部分子层( c o n 蚰o n p a i t s u b l a y e r ,c p s ) 如图2 5 所示。 i 高层 l j 汇聚子层( c s ) m a c 公共部分子层( c p s ) j 物理层 p h y 1 图1 5h i n o c 系统协议栈 物理层采用了o f d m 方式实现调制,0 f d m 方式具有较高的频谱利用率,使 得h i n o c 系统在同样的载波带宽下可以提供更高的传输速率。同时,0 f d m 方式 在抵抗多径效应、频率选择性衰落或窄带干扰上也具有明显的优势。 m a c 层主要功能包括:节点接纳、多址接入控制、链路维护、带宽请求与分 配等功能。 汇聚子层从层次上讲是m a c 层的一个功能子层,主要处理数据业务与公共部 分子层之间的适配,逻辑上来讲是位于m a c 层的上部,主要完成数据封装、转发 与解封装等功能,使得上层业务能够通过h i n o c 网络透明传输。 h i n o c 网络采用t d d ( t i m ed i v i s i o nd u p l e x ,时分双工) 方式实现双工通信。 采用t d d 的优点之一是实现简单,另一优点是在主结点的统一协调下可以非常灵 活的实现上、下行带宽的分配。 h i n o c 网络下行( h b h m ) 采用t d m ( t i m ed i v i s i o nm u l t i p l e x i n g ,时分 复用) ,上行( v i _ h b ) 采用t d m a ( t i m ed i v i s i o nm u l t i p l ea c c e s s ,时分多 址) ,即t d m 厂r d m a 。t d m a 机制需要各结点间较为严格的时钟同步,但由于电 缆接入网范围非常小,因此可以通过主结点定期发送系统时间很容易的保证各结 点的同步。 为避免接入冲突,引入预约许可机制。协议采用的t d m a 是动态的和全协调 的,当h m 有数据要发送时,首先会发送预约请求给h b ,然后h b 根据收到的各 结点的预约,进行带宽分配并将分配结果通知给网络各结点。各结点根据h b 的指 配进行信息传送。这样,所有结点( 包括h b 本身) 何时发送信息,何时接收信息, 完全由h b 控制和动态调度,因此整个通信过程中是没有任何冲突的。 6 h l n o c 网络m a c 层调度算法的设计与实现 1 3 本文的主要工作和内容安排 本文课题来源于国家高技术研究发展计划( 8 6 3 计划) 利用有线电视网带 外信道的多业务宽带接入网技术研究。本文在深入分析已有的h i n o c 协议的基础 上,利用f 缸a d a ya 3 2 0 开发板设计了m a c 协议的总体实现方案,在分析现有调度 算法的基础上提出了适合h i n o c 网络的调度算法,并实现了在本调度算法下 f p g a 内部调度模块的设计与仿真。 第一章分析了h i n o c 接入技术的研究背景,并介绍了应用场景和结构特点。 第二章介绍了h i n o c 网络m a c 层( 即h i m a c ) s o c 的整体设计方案、工 作流程,并介绍了作为主要模块的f p g a 的内部结构。 第三章详细介绍了h i n o c 网络m a c 协议,并通过分析现有的调度算法,结 合h i n o c 网络的技术特点,提出了适合h i n o c 网络的调度算法。 第四章分析了h i m a cs o c 中调度系统的整个工作流程,用v e r i l o gh d l 设计 和实现了f p g a 内部调度模块,并用m o d e l s i m 进行了仿真验证。 第二章h i n o c 网络m a c 层整体设计方案 7 第二章h o c 网络m a c 层整体设计方案 本章首先介绍了s o c 开发板的选择,并介绍了该开发板上主要模块的功能和 作用。然后对s o c 的工作流程进行了分析。最后给出了系统中f p g a 内部各个模 块的整体设计方案。 2 1s o c 开发板介绍 依据本项目设计的h i m a cs o c 芯片要求,其h i m a c 模块应完成以下功能: 依据h i m a c 协议实现数据帧的打包及拆包功能 在h i m a c 协议的控制下实现控制帧和数据帧的接收和发送 设计的h i n o cs o c 芯片可应用于h i n o c 网络的h b h m 设备 眦层网络拓扑支持点到多点的组网方式 每个h b 支持连接3 2 个h m 具备地址自学习功能 提供3 个优先级的q o s 服务 能支持一路l o l o o m 以太网业务流,上行业务速率达到4 0 m b p s 通过对以上功能的实现进行分析和讨论,决定选用f 嬲池ys o c r e a t i v e ! a 3 2 0 增强型开发板,其主要的硬件配置如图2 1 所示【1 3 】: 图2 1a 3 2 0s o c 板主要功能模块 该开发板主要包括以下几个模块: 8 h o c 网络m a c 层调度算法的设计与实现 c p uf a 5 2 6 :3 2 位嵌入式对s c 处理器; b u sc o n n 0 1 1 e r :a h b 总线控制器,其主要作用是提供一种控制多用户使 用总线的机制; d m ac o n t r o l l e r :简称d m a c 模块,负责控制内存和外围设备之间以d m a 方式进行高速数据传输; n e x 4f p g a :本设计的主要功能模块,完成组帧拆帧、地址学习和转发 功能; h i p h y :实现h i n o c 网络c a b l e 端物理层功能; 下面对其中的几个主要模块进行介绍。 2 1 1c p uf a 5 2 6 模块 f a 5 2 6 是一种有着广泛用途的3 2 位对s c 处理器,它包含同步c p u 内核 ( c o r e ) 、独立的指令数据缓存( c a c h e ) 、独立的指令数据暂存器( s c r a :t c h p a d s ) 、 写缓存( w t i t eb u 疵r ) 、内存管理单元( m e m o 巧m a l l a g e m e n tu m t ) 和j 1 a g 在线仿 真( i c e ) 接口。c p u 内核是6 级流水线的哈佛结构,包括取指令、解码、搬移、 执行、数据访存和写回等。为了提高整体性能,f a 5 2 6c p u 还包含了一个分支运 算缓存( b m c h 伽g e tb u 脏r :b t b ) ,可减少分支运算的开销。f a 5 2 6c p u 的内 核指令与a r mv 4 结构兼容,它通过a m b aa h b 接口与外部设备进行通讯。因 此,f a 5 2 6c p u 有着广泛的应用领域,特别是针对那些需要高性能和低功耗的应 用。f a 5 2 6c p u 内核采用完全同步方式,其基于单相时钟的结构可以很容易集成 到s o c 中。f a 5 2 6c p u 内核方框图如图2 2 所示。 图2 2 c p u 内核方框图 第二章h 烈o c 网络m a c 层整体设计方案 9 2 1 2b u sc o n 仃0 l l e r 模块 在本开发板中,b u sc o i 岫l l e r 即为a h b 总线控制器,其主要作用是提供一种 多用户共享总线的机制。在这种机制下,允许多个m a s t e r 和多个s l a v e 挂接在总线 上,m a s t e r 是数据传输的主动发起者,而s l a v e 只能作为传输的响应者。当多个 m a s t e r 同时申请占用总线时,由仲裁器根据优先级来决定哪个m a s t e r 占用总线。 a h b 总线控制器包括以下三个部分: a 、仲裁器( a r b i t e r ) b 、译码器( d e c o d e r ) c 、多路复用器( m u l t i p l e x e r ) 其中,多路复用器包括地址和控制复用、写数据复用、读数据复用。各模块 详细的连线情况如图2 3 所示: 图2 3a h b 总线控制器各模块详细连线图 各部分主要功能如下: a ) 仲裁器 仲裁器的主要功能是对a h bm a s t e r 的数据接入请求做出仲裁。如果几个 l o h i n o c 网络m a c 层调度算法的设计与实现 m 2 l s t e r 同时发出请求,则仲裁器利用优先级表来决定当前哪个m a s t e r 有最高优先 级。仲裁器支持多级别和轮询功能。多级别支持两个级别的运算法则,级别l 和 级别0 ,级别1 比级别o 的优先级高。当级别l 的m a s t e r 和级别0 的m a s t e r 同时 请求总线时,总线总是先批准级别1 的m a s t e r 。轮询法则使当前被授权使用总线的 m a s t e r 在下一次仲裁时成为同一优先级中级别最低的m a s t e r 。所有的m a s t e r 都能 设置为级别1 和级别0 。 比如:设备a ,b ,c 优先级为l ,设备d ,e ,f 优先级为o 。若当前优先级为 a b c d e f ,那么a 传输过数据后,优先级就变为b c a d e f o b ) 译码器 a h b 总线控制器中的译码器用来实现集中地址译码功能。这模块的主要功 能是,当某一m a s t e r 被授权占用总线时,多路复用器将此m a s t e r 要读写的地址信 号输出,译码器便对这一地址进行译码,产生相应的s l a v e 片选信号对s l a v e 进行 片选。 c ) 多路复用器 所有a h bm a s t e r 的信号经多路复用器连接到a h bs l a v e ,所有a h bs l a v e 的 应答信号也经多路复用器连接到a h bm a s t e r 。多路复用器实现这样的功能:在多 个m 础r 中,只选择占用总线的m a s t e r 的地址、数据和控制信号发送到s l a v e ;在 多个s l a v e 中,只选择被译码器选中的s l a v e 的数据和控制信号发送到m a s t e r 。 2 1 3d m ac o n t r o l l e r 模块 d m a ( 存储器直接访问) 是指一种高速的数据传输操作,允许在外部设备和 存储器之间直接搬移数据,其数据传输操作是在d m a 控制器的控制下进行的,处 理器除了在数据传输开始和结束时做一点处理外,在传输过程中,处理器可以进 行其他的工作,d m a 控制器的设计宗旨是通过允许外部器件直接访问系统内存来 提高整个系统的性能。 d m ac o n 仃0 l l e r 模块的整体框架如图2 4 所示: 第二章h i n o c 网络m a c 层整体设计方案 l l 图2 4d m ac o n 仃0 l l e r 功能框图 框图中各个部分的作用如下: a h bm a l s t e ri n t e m l 七:d m a c 具有两个m a s t e r 接口,用于实现系统与d m a c 内部f i f o 间的数据传输。 a h bs l a v ei n t e r f a c e :d m a c 具有一个s l a v e 接口,用于对d m a c 内部寄存器 进行配置。 d m ac o r e :d m ac o r e 为四通道的d m a 引擎,用于实现数据在两个m 嬲t e r 接口间数据传输,每一个通道都可以被配置成不同的优先级。 p r i o r i t i z i n ga r b i t e r :d m a c 仲裁器,基于每个通道的优先级进行仲裁。如果通 道间优先级相同,采用轮询各个通道的方式进行数据发送。 d m ac o i m o l l e r 的工作流程如下: 对d m a 通道编程并使能; 等待外设的d m a 请求; 当同时满足以下情况时,d m a c 开始进行数据传输: d m a 请求信号有效; 一d m a 数据流优先级最高; 一d m a c 拥有总线控制权。 如果传输过程出错,将产生一个中断,同时结束d m a 数据传输,数据无 效; 如果d m a c 负责计数,每完成一次传输计数器都要重新赋值; 当计数器减为o ,代表一次数据流的传输结束; 1 2 h i n o c 网络m a c 层调度算法的设计与实现 2 1 4v i r t e x 一4f p g a v i r t e x 4 器件是用户可编程的门阵列,具有针对高密度和高性能系统设计优化 的各种可配置元件和嵌入式核【1 4 l 。v i r t e x - 4 器件可实现以下功能: 1 ) i o 块提供连接封装引脚和内部可配置逻辑的接口,可编程i o 块( i o b ) 支持大多数流行的前沿i o 标准。i o b 针对源同步应用进行了增强,源同步优化包 括逐比特去s k e w 、数据串行器解串器、时钟分频器及专用的本地时钟资源。 2 ) 可配置逻辑块( c l b ) 是x i l i l l ) ( f p g a 的基本逻辑元件,用于提供组合和 同步逻辑及分布式存储器和s i u l 6 移位寄存器功能。 3 ) b l o c kr a m 模块提供灵活的1 8 k b 真双端口删,这种洲可级联为 更大的存储器模块。另外,b l o c kr a m 包含的可选可编程f i f o 逻辑可提高器件的 利用率。 4 1 可级联的嵌入式x 他m e d s ps l i c e ,具有1 8 幸1 8 位专用乘法器、集成加法 器和4 8 位累加器。 5 ) 数字时钟管理器( d c m ) 块为时钟分配延迟补偿及时钟乘法除法,粗 细粒度时钟相移提供自标准全数字解决方案。 2 2 工作流程 在h i m a cs o c 中有多个模块,这些模块共同完成对h i m a c 帧和e m a c 帧 的处理过程,包括接收、入队、存储、转发等操作。如何设计帧在系统中的传输 流程,减少对c p u 的中断,降低对总线的争用,使系统能够高效地完成帧的处理 过程将直接影响最终系统的性能。 下面介绍系统工作的数据流程: 1 ) 对于来自以太网的数据帧( e m a c 帧) :f p g a 把从以太网传来的数据帧 ( 通过f p g a 内部的e m a c 模块) 接收进来,进行转发及队列管理等相应处理之 后,f p g a 把发往h i p h y 的帧放入相应的h i m a c 队列,把发往以太网端口的帧 放入以太网队列; 2 ) 对于来自h i p h y 的数据帧( h i m a c 帧) :h i p h y 把从c a b l e 接收到的数 据帧,通过a h b 总线以d m a 方式传到f p g a 内部,f p g a 对h i m a c 帧进行拆 帧、转发及队列管理等相应处理之后,以以太网帧的形式放入相应的队列; 3 ) 对于要发往以太网的数据帧:调度模块将该帧调度出队,通过e m a c 端 口经e p h y 发送; 4 ) 对于要发往h i p h y 的数据帧:调度模块将h i m a c 帧中所包含的e m a c 帧从队列中一个一个地出队,然后在h i m a c 发送端口进行组帧,组好的h i m a c 帧通过a h b 总线以d m a 的方式搬移到h i p h y ; 第二章h i n o c 网络m a c 层整体设计方案 1 3 5 ) 对于h i 队c 中的控制帧( 预约请求帧和m a p 帧) :控制帧并不进入f p g a , 而是直接搬移到内存s d r a m 中交由c p u 处理;c p u 组好控制帧后,直接将控制 帧在合适的时间搬移到h i p h y 上进行发送。 2 3h i m a cf p g a 整体方案设计 以上介绍了整个系统的组成和工作流程。在整个系统的组成中,f p g a 是一个 重要的组成部分,完成了组帧拆帧、转发和入队出队等操作,也是系统设计的重 点。 通过对h i m a c 总体功能和数据流程的分析,结合a 3 2 0 开发板的具体情况, 我们将h i m a cf p g a 内部划分为如图2 5 所示的几个模块: 图2 5h i m a cf p g a 整体框图 下面对图中主要模块做简要的介绍。 2 3 1h i m a ci o 控制模块 h m 队ci o 控制模块分为h i m a c 帧接收缓存、接收控制、h i m a c 帧发送缓 存和发送控制四个部分,其中,接收缓存和发送缓存都是由两个4 6 k 大小的 d p r a m 构成,d p m 由i s e 自动生成,每个d p 洲可以存储一个最大的h i m a c 帧。两个d p r a m 可以实现乒乓操作,提高运行速度。 接收控制模块根据h i m a c 帧的帧头依次提取h i m a c 中每个以太网帧的信 息,这些信息包括:以太网帧长、d p 删地址、目的m a c 地址、源m a c 地址、 源h mm 、优先级等。接收控制模块将这些信息交由调度模块进行处理,调度模 块通过转发表获得要发往的h mi d ,通过队列管理模块获得帧在内存中要存储的 地址,然后通知内部总线控制模块进行数据帧的搬移。内部总线控制模块通过与 1 4 h 跗o c 网络m a c 层调度算法的设计与实现 接收控制模块的配合,将数据帧从d p r a m 搬移到分组内存。h i m a c 帧中的以太 网帧就这样一个一个地从d p 凡蝴搬移到分组内存,在此过程中便完成了拆帧的 功能。 发送控制模块的功能相对简单。调度模块安排每个h i m a c 帧的发送顺序,并 通知内部总线控制模块。内部总线控制模块在发送控制模块的配合下,将h i m a c 帧中的以太网帧一个一个地从分组内存搬移到h i m a ci o 模块。发送控制模块按 照h i m a c 帧的结构特性将每一个帧放到相应的位置,并填写帧头,完成h i m a c 帧的组帧。 2 3 2e m a c 模块 d 舱c 模块的具体功能包括: 1 ) 通过一个4 b i t s 的m i i 接口( 工作频率2 5 m h z ) 与1 0 0m b p s 以太网p h y 进行无缝连接。 2 ) 能够以正确的帧间隔( i f g ) 进行数据帧的背靠背发送。 3 ) 为发送帧加上前导字节和s f d 。 4 ) 在发送过程中对长度不足的帧进行填充。 5 ) 1o 1 0 0m b p s 模式下,可以工作在全双工或半双工方式。e m a c 工作在半 双工模式时支持各种冲突解决,包括j a m m i n g ,b a c k - o f f 和自动重发;e m a c 工作在全双工模式时具有标准流量控制机制。 6 、可编程的m a c 地址。在发送时,自动插入源m a c 地址( 可选择) ;在 接收时,抛弃掉与目的地址不匹配的帧( 广播除外,也可设置成接收所有 收到的帧) 。 7 1 在发送数据的过程中进行循环冗余校验码( c r c ) 的计算( 可选择由上层 直接填写c r c ) ,在数据末端加上计算出来的c r c 校验码。在接收时同 样进行c r c 计算( 可选择不进行c r c 校验) ,并把计算出来的校验码与 接收到的校验码进行比较,丢弃c r c 校验码不匹配的数据帧。 2 3 3e m a ci o 控制模块 e m a ci o 控制模块分为e m a c 帧接收缓存、接收控制、e m a c 帧发送缓存 和发送控制四个部分。其中,接收缓存和发送缓存都是由两个2 k 大小的f i f o 构 成,f i f o 由i s e 自动生成,用来存储e m a c 帧。每一个2 k 大小的f i f o 存储一 个以太网帧,两个f i f 0 可以实现乒乓操作,提高运行速度。 接收控制模块在将数据帧从e m a c 模块接收到接收缓存的时候提取e m a c 帧 的信息,这些信息包括:e m a c 帧长、目的m a c 地址、源m a c 地址等。接收控 第二章h i n o c 网络m a c 层整体设计方案 1 5 制模块将这些信息交由调度模块进行处理,调度模块通过转发表获得要发往的h m i d ,通过队列管理模块获得帧在内存中要存储的地址,然后通知内部总线控制模 块进行数据帧的搬移。内部总线控制模块通过与接收控制模块的配合,将数据帧 从接收缓存搬移到分组内存。 发送控制模块的功能如下:调度模块安排每个e m a c 帧的发送顺序,并通知 内部总线控制模块。内部总线控制模块在发送控制模块的配合下,将e m a c 帧从 分组内存搬移到e m a ci o 模块的发送缓存中,然后由发送控制模块将帧通过 e m a c 模块发送出去。 2 3 4 转发表模块 转发表模块包括学习转发控制模块和学习转发表。学习转发控制模块接收调 度模块发来的源m a c 地址、目的m a c 地址和源h m 节点i d 信息,然后对学习 转发表进行学习和查表操作,如果发现是新的源m a c 地址,则添加一个新的源源 m a c 地址和h m 节点i d 对应关系的表项来更新转发表,完成地址学习过程;本 模块同时根据目的m a c 地址查找转发表,得到对应转发的目的端口号,并把查询 结果告诉调度模块,通过调度模块和队列管理模块完成e m a c 帧的入队操作。 同时还设计了c p u 通过a h b 总线连接到转发表模块的接口,c p u 可以对转 发表进行维护和管理等操作。 本设计中转发表中m a c 地址和目的端口的对应关系中的m a c 地址都是以太 网的m a c 地址。h i m a c 帧接收模块首先把收到的h m 丛c 帧拆成若干个e m a c 帧以后,通过调度模块对转发表进行更新和查找,由于h i m a c 帧接收模块和 e m a c 帧接收模块需要共用一个转发表,任何时候只能有这两个模块之中的一个 模块来对转发表进行地址学习和查找匹配。因此这两个模块对转发表的更新和查 表操作由调度模块来协调。 2 3 5 内部总线控制模块 根据读写调度发来的信息,内部总线控制模块完成帧的数据从接收缓存到分 组内存和从分组内存到发送缓存的搬移,并在搬移完成后通知接收控制模块和发 送控制模块做相应处理。 1 6 h 玳o c 网络m a c 层调度算法的设计与实现 图2 6 内部总线控制模块结构框图 在结构方面,内部总线模块采用基于m a s t e r - s l a v e 结构的交叉互联结构,如图 2 6 所示。 两个b u ss l a v e 模块分别连接h i m a c 端口和e m a c 端口,实现这两个端口 数据帧的接收和发送。b l l si n t e r c o n 模块实现b u s _ s l a v e 和b 叫硪r 的交叉互联。 b u sm a u s t e r 模块作为主动控制模块,从调度结果缓存( s o f 0 ) 中读取最终的调度 结果,控制其余模块完成数据帧从接收缓存到分组内存或从分组内存到发送缓存 的搬移。 内部总线宽度设为3 2 位,以实现与接收b u 位r 和发送b u 虢r 中的数据位宽统 2 3 6 队列管理模块 在整个交换模块中,帧的信息调度和数据搬移分开完成。队列管理模块在调 度模块的控制下,完成数据帧控制信息在系统中的传递,并控制内部总线控制模 块完成数据在各个存储模块( i o 模块、分组内存) 的真正转移。 根据需求分析以及协议的要求,设计中采用共享存储器的方式实现基本的交 换功能,存储器由f p g a 内嵌的b l o c kra m 提供。考虑到每个h b 要支持3 2 个 h m ,1 个以太网口,并且协议要求每个h m 有3 个优先级,即每个蹦三个输出 第二章h o c 网络m a c 层整体设计方案 1 7 队列,所以形成9 7 个输出队列。在设计中使用链表组织每个输出队列,链表节点 ( n o d e ) 由一个专门用于存放数据帧的da _ t ae l e m e n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025四川绵竹市中医医院人才招聘计划(第一批)招聘22人考试参考题库附答案解析
- 2025安徽马鞍山市当涂县面向全省选调事业单位工作人员7人备考题库及答案解析
- 2025福建福州市园开新海开发建设有限公司招聘1人笔试模拟试题及答案解析
- 2025广东梅州市肇庆市退役军人服务机构招聘7人笔试备考题库及答案解析
- 智能建造施工危险源识别及风险预防控制措施
- 2025北京航空航天大学招聘56人备考题库及答案解析
- 2025甘肃临夏州积石山县招聘第三批城镇公益性岗位人员的笔试备考试题及答案解析
- 影视制作项目经理管理职责
- 2025年微生物学实验室技术应用考试答案及解析
- 2025年整形外科美容手术术前术后管理考核答案及解析
- 2025年湖南湘西自治州州直事业单位招聘考试笔试试卷附答案
- 幼儿园安全责任书及后勤管理制度
- 消防车辆事故课件
- 2026届四川省宜宾市普通高中高一化学第一学期期末统考试题含解析
- 《2型糖尿病中医防治指南(2024版)》解读课件
- 剑阁县普安镇污水处理厂扩容建设项目环评报告
- 商务楼宇管理办法
- 肺炎护理试题填空及答案
- 社用手机管理办法
- 心电监护操作常见并发症预防及处理
- 学校食堂各种检查记录表格表册11
评论
0/150
提交评论