(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf_第1页
(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf_第2页
(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf_第3页
(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf_第4页
(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(通信与信息系统专业论文)10100M以太网芯片的Ilt2gtC接口模块的FPGA设计.pdf.pdf 免费下载

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

文档简介

摘要 本文结合“1 0 m 1 0 0 m 以太网交换芯片的设计”课题,介绍了以太网技术发展 的概况和i pc o r e 、s o c 的设计方法,阐述了以太网交换原理及关键技术,研究 了c s m a c d 协议、交换机、v l a n 的原理和数据流优先技术及流量控制,在此基 础上完成了1 0 m 1 0 0 m 以太网交换芯片的主要模块的设计方案和实现框图。同时 结合p h i l i p 公司的1 2 c 总线协议,通过研究1 2 c 总线的工作原理,给出了1 0 m 1 0 0 m 以太网交换芯片的设计方案中的 2 c 接口模块的设计方案,并用v h d l 语言给出 1 2 c 接口模块的f p g a 设计的验证和仿真,并对仿真结果进行分析比较,验证了1 2 c 接口模块设计的正确性和实用性,并对程序进行了优化。最后说明本文所设计的 1 2 c 接口模块可以作为一个软核来使用。 关键字:以太网交换芯片s o ci 2 c 接口f p g a软核 a b s t r a c t a s a p r o j e c ta b o u t “t h e d e s i g n o f l 0 m 1 0 0 m e t h e r n e ts w i t c h c h i p ”,t h e p a p e r i n t r o d u c e st h ed e v e l o p m e n t a lt e c h n i co fe t h e m e ta n dt h em e t h o do f d e s i g no n i pc o r e a n ds o c , e x p o u n d st h es w i t c hp r i n c i p l eo f e t h e r n e ta n dk e yt e c h n i c ,s t u d i e dn o t o n l yt h ep r o t o c o lo fc s m a c da n ds w i t c ha n dv l a n b u ta l s ot h ep r i o r i t yo i ld a t a s t r e a ma n df l o wc o n t r o l ,o nt h e s eb a s e s ,g i v e dt h ed e s i g np r o j e c to fm o s t l yp a r t so n 1 0 m 1 0 0 me t h e m e ts w i t c hc h i pa n dt h er e a l i z a t i o n 脚o t a n dt h e nc o m b i n e dt h e p r o t o c o lo f l 2 c b u s o f t h e p h i l i pc o m p a n y ,g i v e d t h ed e s i g n p r o j e c to f m o s t l y p a r t s o n i o m i o o me t h e r n e ts w i t c hc h i pa b o u tt h ed e s i g no f1 2 ci n t e r f a c e ,a n dg i v e dt h e v a l i d a t i o na n ds i m u l a t et ou s ev h d l l a n g u a g ea b o u tf p g ad e s i g no n1 2 ci n t e r f a c e p a r t ,a n d t h e na n a l y z e da n dc o m p a r e dt h er e s u l to f s i m u l a t e ,v a l i d a t e dt h er e s u l to f t h e d e s i g no f l 2 c i n t e r f a c ep a r ti sc o r r e c t ,a tt h es a m et i m e ,o p t i m i z e dt h ep r o g r a m a tt h e e n do f ,g i v et h ec o n c l u s i o na b o u tt h ed e s i g no fi z ci n t e r f a c ep a r tc a nb eu s e da sas o f t c o r e k e y w o r d :e t h e r n e t s w i t c h c h i p s o c1 2 ci n t e r f a c e f p g as o f tc o r e 独创性声明 孽啊帆 铴7 舌 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果:也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:挫塑: 日期 k 哪 # - ,2 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文在解密后遵 守此规定) 本人签名:缝堡鱼 导师签名:垂玺至 r 期乙一6 ,忙 日期垫堕! 鱼! ! 第一章绪论 第一章绪论 1 1 以太网技术发展概述 以太网是目前使用最广泛的局域网技术,统计数字表明,目前全球8 5 的网 络采用以太网技术并且世界上使用的以太网的接口已超过一亿。它们连接着个人 计算机、服务器、网络互连设备、打印机、测试设备、电话交换机、有线电视机 顶盒等设备,数量庞大并且日益增长。随着以太网技术的不断发展和完善,以太 网在城域网的应用已经逐渐走向成熟,有人预测,未来十年将是城域以太网技术 高速发展的时期。 以太网的发展已经经历了三个阶段,即以太网阶段、快速以太网阶段和千兆 以太网阶段。千兆以太网发展起来后,由于它具有成本低廉、互连性好、升级容 易、组网简单、技术支撑厂家多、技术发展快的优势,千兆局域网已占据了整个 局域网市场的大部分份额。最近1 0 g 以太网技术已日趋成熟,使得以太网的速度 可以达到万兆。虽然以太网速度在不断提高,但是其基本帧格式( m a c 帧) 仍保 持不变。在设备方面,交换机合并了典型路由器中相互分离的桥接( 第二层) 和路 f h ( 第三层) 功能。这些技术的结合提供了一个能大大改进扩充能力的网络体系结 构。它可以支持各种路由协议,并且拥有同路由器同样丰富的路由协议和大容量 的路由表。在业务能力方面,以太网除了可以提供传统的v l a n 、v l l 、t l s 等 业务,通过与m p l s 技术结合可以提供更多种类的业务。例如利用m p l s 建立t u n n e l l s p ,使用各种信令协议互换v cl a b e l 等。在安全性方面。以太网采用各种包过滤 技术,根据v l a n 、源或目的m a c 地址及源或目的p 地址等对报文进行过滤。 基于以太网技术的广泛应用及其优点,我们根据课题1 0 m 1 0 0 m 以太网交换 芯片的设计,根据以太网交换的基本原理和i e e e s 0 2 3 协议的m a c 部分,做出 1 0 m 1 1 0 0 m 以太网交换芯片的主要模块的i pc o r e ,为以后进一步研究高速以太网 交换芯片的设计打下基础。 1 2f p g a 及其设计方法 一、f p g a 、c p l d 简介 当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路 11 0 1 0 0 m 以太网芯片的l ”c 接口模块的f p g a 砹i 本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路、 发展到超大规模集成电路以及许多具有特定功能的专用集成电路。但是,随着微 电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。 系统设计师们更愿意自己设计专用集成电路( a s i c ) 芯片,而且希望a s i c 的设计 周期尽可能短,最好是在实验室罩就能设计出合适的a s i c 芯片,并且立即投入实 际应用之中,因而出现了现场可编程逻辑器件( f p l d ) ,其中应用最广泛的当属现 场可编程门阵列( f p g a ) 和复杂可编程逻辑器件( c p l d ) 。 早期的可编程逻辑器件只有可编程只读存贮器( p r o m ) 、紫外线可擦除只读存 贮器( e p r o m ) 和电可擦除只读存贮器( e e p r o m ) 三种。出于结构的限制,它们只 能完成简单的数字逻辑功能。其后,出现了一类结构上稍复杂的可编程芯片,即 可编程逻辑器件( p l d ) ,它能够完成各种数字逻辑功能,这一阶段的产品主要有 p a l ( 可编程阵列逻辑) 和g a l ( 通用阵列逻辑) 。这些早期的p l d 器件的个共同 特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实 现规模较小的电路。 为了弥补这一缺陷,2 0 世纪8 0 年代中期。a l t e r a 和x i l i n x 分别推出了类似于 p a l 结构的扩展型c p l d ( c o m p l e xp r o g r a m m a b i el o g i cd e v i c e ) 和与标准门阵列类 似的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 r a y ) ,它们都具有体系结构和逻辑单元灵活、 集成度高以及适用范围宽等特点。这两种器件兼容了p l d 和通用门阵列的优点, 可实现较大规模的电路,编程也很灵活。与门阵列等其它a s i c 相比,它们又具有 设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳 定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产( 一 般在1 0 ,0 0 0 件以下) 之中。几乎所有应用门阵列、p l d 和中小规模通用数字集成 电路的场合均可应用f p g a 和c p u ) 器件。 对用户而言,c p l d 与f p g a 的内部结构稍有不同,但用法一样,所以多数情 况下,不加以区分。c p l d 与f p g a 概括起来是由三大部分组成的:( 1 ) 个二维 的逻辑块阵列,构成了p l d 器件的逻辑组成核心。( 2 ) 输入输出块:连接逻辑 块的互连资源。( 3 ) 连线资源:由各种长度的连线线段组成,其中也有些可编 程的连接开关,它们用于逻辑块之间、逻辑块与输入输出块之间的连接。 f p g a c p l d 芯片都是特殊的a s i c 芯片,它们除了具有a s i c 的特点之外, 还具有以下几个优点: ( 1 ) 随着v l s i ( 超大规模集成电路) 工艺的不断提高单一芯片内部可以容纳 上百万个晶体管,f p g a c p l d 芯片的规模也越来越大,其单片逻辑门数已达到 上百万门,它所能实现的功能也越来越强,同时也可以实现系统集成。 第一章绪论 ( 2 ) f p g a c p l d 芯片在出厂之自u 都做过百分之百的测试,不需要设计人员 承担投片风险和费用,设计人员只需在自己的实验室罩就可以通过相关的软硬件 环境来完成芯片的最终功能设计。所以,f p g a c p l d 的资金投入小,节省了许 多潜在的花费。 ( 3 ) 用户可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同 软件就可实现不同的功能。所以,用f p g a c p l d 试制样片,能以最快的速度占 领市场。f p g a c p l d 软件包中有各种输入工具和仿真工具,及版图设计工具和 编程器等全线产品,电路设计人员在很短的时间内就可完成电路的输入、编译、 优化、仿真,直至最后芯片的制作。当电路有少量改动时,更能显示出f p g a c p l d 的优势。电路设计人员使用f p g a c p l d 进行电路设计时,不需要具备专 门的i c ( 集成电路) 深层次的知识,f p g a c p l d 软件易学易用,可以使设计人员 更能集中精力进行电路设计,快速将产品推向市场。 二、f p g a 设计方法 可编程逻辑器件的设计是指利用开发软件和编程工具对器件进行开发的过 程。高密度可编程逻辑器件的设计流程如图1 1 所示,它包括五个过程: 1 设计准备 图1 1 可编程逻辑器件设计流程图 在对可编程逻辑器件的芯片进行设计之前,首先要进行方案论证,系统设计 和器件选择等设计准备工作。设计者首先要根据任务要求,如系统所完成的功能 和复杂程度,对工作速度和器件本身的资源和成本连线的可布性等方面进行权衡, 选择合适的方案和合适的器件类型。 一4 1 0 1 0 0 m 以太网芯片的l _ c 接口模块的f p ( j a 设计 2 设计输入 设计者将所设计的系统或电路以丌发软件要求的某种形式表示出来并送入计 算机的过程称为设计输入。常用的有三种方式,即原理图、硬件描述语言( h d l ) 、 波形输入。本论文的1 0 m 1 0 0 m 以太网交换芯片的i 2 c 接口模块的设计是采用 v h d l 文本的方式和系统的框图形式来作为输入的。 3 设计处理 这是器件设计中的核心环节,在设计处理过程中,编译软件将对设计输入的 文件进行逻辑化简、综合优化,并且适当地用一片或多片器件自动地进行适配, 最后产生编程用的编程文件。设计处理应当包括以下五个过程:语法检查和设计 规则检查、逻辑优化和综合、适配和分割、布局布线、生成编程数据文件。 4 设计校验 设计校验包括功能仿真和时序仿真,这两项工作是在设计处理过程中同时进 行的。功能仿真是在设计输入完成之后,选择具体的器件进行编译之前进行的逻 辑功能验证,此时仿真无时延信息,对于系统初步的功能检测非常方便。仿真前 首先要利用波形编辑器或硬件描述语言建立测试向量( 一般的e d a 工具都可以方 便的产生测试向量) ,仿真结果以报告的形式或波形的形式输出,从中可以看出各 个节点的错误,如果有错误,则返回设计输入中修改逻辑设计,系统功能仿真的 结果直接决定着时序仿真的正确性,所以在功能仿真时要格外小心。时序仿真是 在选择了具体器件并完成布局布线之后进行的时序关系仿真。由于不同的器件内 部的延时不一样,不同的布局、布线方案等也给延时造成不同的影响,因此在设 计处理完以后,对系统和各模块进行时序仿真、分析其时序关系,估计设计的性 能以及检查和消除竞争冒险是非常有必要的。实际上这也是与实际器件工作情况 基本相同的仿真。 5 器件编程 编程是将编程数据放到可编程器件中去。器件编程要满足一定的条件,如编 程电压、编程时序和算法等。器件编程完毕之后,可以用编译时产生的文件进行 检验、加密等工作。对于具有边界扫描测试能力和在系统编程能力的器件来说, 测试起来就更加方便。 第一章绪论 1 3i pc o r e 和s o c 今天在单个芯片上已可以集成成千上万乃至上亿个晶体管,实现了以前需要 印刷电路板甚至机架才能完成的功能。在这样高的集成度下,设计难度已变得非 常高,设计代价事实上主导了芯片的代价。这不仅要求设计者必须具备系统和芯 片两方面的知识,同时也必须充分考虑市场竞争的压力,最大限度地缩短设计周 期。j 、l 事从零作起的思路显然不能适应这种新情况。而采用前人成功的设计经验 和设计资料是解决这个问题的明智选择。具有知识产权的内核( i n t e l l e c t u a l p r o p e r t y c o r e ) 是一个经过验证的集成电路设计,可以被他人重用。i pc o r e 通常具备比较 复杂的功能,而且经过验证,i pc o r e 设计资料内不仅仅包含些物理功能和技术 特性,更重要的是包含了设计者的创造性思维,具有很强的知识内涵。 从实现形式和应用层次上来看,i pc o r e 可以有三种不同的表现形式:软核 ( s o f t c o r e ) 、固核( f i r m c o r e ) 、硬核( h a r d c o r e ) 。 软核以硬件描述语言豹形式提交,其性能通过时序模拟进行验证。由于软核 不依赖于任何实现工艺或实现技术,具有很大的灵活性。使用者可以方便地将其 映射到自己所使用的工艺上去,可复用性很高。软核的另外一个优点是使用者可 拥有全部源代码。使用者可以通过修改源代码,可以方便地生成同样功能且有自 主版权的新软核,从而可避免向原有软核的作者支付版税。 硬核是以集成电路版图( l a y o u t ) 的形式提交,并且经过了实际工艺流片验证。 显然,硬核强烈地依赖于某一特定的实现工艺,而且在具体的物理尺寸,物理形 态上具有不可更改性。这些特定对使用者来说有喜有忧。喜的是硬核已经通过验 证并具有最优的面积代价和性能的设计,使用者不需考虑与此相关的优化问题。 忧的是硬核与工艺豹强相关性迫使使用者只能使用该工艺来完成电路其它部分的 设计,而且要在布局布线( p l a c e & r o u t e ) 时注意遵守硬核的物理限制。显然,硬 核的特点决定了使用者进行电路设计时的灵活性很小,希望通过获得硬核以生成 其它硬核的可能性也基本上没有。即使有,也受到加工工艺、经费和知识产权等 方面的限制,也会失去意义。从另外一个角度来看,难是因为硬核的这些缺点, 它的使用价格在软核、固核、硬核三种皿核中是最低的。处于软核和硬核之间的 固核以电路网表( n e t i i s t ) 的形式提交并通常采用硬件进行验证,硬件验证的方式 有很多种,比如可以采用可编程逻辑器件( f p g a 、c p l d ) 进行验证,采用硬件 仿真器( h a r d w a r ee m u l a t o r ) 进行验证等。 固核往往对应于一个特定的实现工艺,在该实现工艺条件下固核具有最优秀 的面积和性能特性。对使用者来况不需要对固核的功能给予过多地关注,可以减 1 0 j 1 0 0 m 以太网芯片的i :c 接口模块的f p g a 设计 少许多相关性的设计工作,同时由于固核的时序特性是经过严格检验的,设计者 只要保证在布局布线过程中电路关键路径的分布参数不会引起时序混乱就可以保 证芯片的设计成功。但是固核也有其自身的缺点,那就是它与实现工艺的相关性 及其网表的难读性,与实现工艺的相关性限制了固核的使用范围,网表的难读性 使得布局布线后发生的时序违反的排除变得比较困难。由于固核在使用的方便程 度上和开放程度上均介于软核和硬核之划,其价格也介于软核和硬核之间。 s o c 是一个片上集成系统( s y s t e m o nac h i p ) ,它必须是实现复杂功能的超大 规模集成电路,它的规模决定了芯片的设计者不仅需要集成电路的知识,更要具 备系统的知识,也要对芯片的应用有透彻的了解。s o c 的主要特性有:1 实现复 杂系统功能的超大规模集成电路;2 采用深亚微米的工艺技术;3 使用一个嵌入 式的c p u 或信号处理器;4 具备对外部电路进行编程的功能;5 主要采用第三方 的口核进行设计。 s o c 设计方法大致包含三个主要的内容。首先是系统级的设计方法。传统的 集成电路设计基本上属于硬件设计的范畴,少数软件也往往通过固化的方法在芯 片中实现。而在s o c 设计当中,设计者必须面对一个新的挑战,那就是他不仅要 面对复杂的逻辑设计,而且要考虑软件,特别是那些可以改变芯片功能豹外部应 用软件的设计,如何在软件和硬件设计中取得平衡,获得最优的设计结果非常值 得探讨。其次是i pc o r e 的设计和使用。i pc o r e 是s o c 设计中非常重要的内容, 它包含两个方面内容,首先是撙核的使用,其次是p 核的生成。m 核的使用绝不 等同于集成电路设计中的单元库的使用,它所涉及的内容几乎覆盖了集成电路设 计中所有的经典课题,包括测试、验证、模拟、低功耗设计等。坤核的生成绝不 是简单的设计抽取和整理,它所涉及的设计思路、时序的要求、性能的要求均需 要人们重新审视我们已经熟知的设计方法。其次是深亚微米集成电路设计。尽管 这个课题的提出已经有了相当长的时间,但是研究方法仍然在面向逻辑的设计中 徘徊,也许布局规划和时序驱动的方法还能够解决当前大部分的实际问题,但是 当我们面对o 1 5 微米甚至更细的线条的时候,又有谁能保证现在的做法有效呢? 深亚微米集成电路设计方法的根本突破显然是s o c 设计方法学中最有挑战的。 本文所设计的i o m i o o m 以太网交换芯片的1 2 c 接口模块的输入是用硬件描述 语言v h d l 写的,它可以以v h d l 文档的形式给出,作为一个p 软核来为s o c 使用; 此外,通过f p g a 的时序、布局布线的验证,使得本文所设计的1 0 m 1 0 0 m 以太 网交换芯片的1 2 c 接口模块还可以以网表的形式给出,所以该接口模块还可以当作 固核来用。 第一章绪论 1 4 本文的主要工作 本文所讨论的课题1 0 m 1 0 0 m 以太网交换芯片的设计主要是把主要模块设计 成i p c o r e 形式,由于工作量较大,根据分工的不同,本文的内容安排如下: 第一章绪论里主要介绍了f p g a 和其设计方法、i pc o r e 和s o c 。 第二章介绍了以太网的交换原理和关键技术。 第三章给出了1 0 m 1 0 0 m 以太网交换芯片的设计方案中主要模块的设计方案 和实现框图及流程图。 第四章是用v h d l 给出对1 0 m l o o m 以太网交换芯片的设计方案中的1 2 c 接 口模块的f p g a 设计的验证和仿真,并把外接e e p r o m 和寄存器模块连接起来进 行仿真,并对仿真结果进行了分析比较,说明了i 2 c 接1 2 1 模块的设计可以作为软核 和固核来使用。 第五章是结束语,对全文工作进行了总结,指出本文的不足,便于后续工作 进行。 第二章以太网交换原理及关键技术 第二章以太网交换原理及关键技术 2 1以太网基础 以太网是基于分层的o s i 参考模型的。以太网的物理层对应着o s i 参考模型 的第一层,以太网m a c ( 媒体接入控制) 子层、数据链路层对应着o s ! 参考模型 的第二层。 2 1 1物理层 物理层( p h y ) 协议可规定电气信号、符号、线路状态、时钟要求、数据编 码和数据传输用的连接器。以太网传输介质主要使用同轴电缆、双绞线、光纤。 1 0 m b p s 以太网使用曼彻颠特编码,1 0 0 m b p s 快速以太网使用4 b 5 b 编码,1 g b p s 以太网使用8 b 1 0 b 编码,1 0 g b p s 以太网使用6 4 b 6 6 b 编码。 2 1 2m a c 子层 m a c 子层负责执行c s m a c d 协议。m a c 子层的主要作用有 1 发送和接收数据封包 ( 1 ) 帧处理( 帧定界,帧同步) ( 2 ) 寻址( 源地址和目的地址处理) ( 3 ) 错误检测( 物理介质传输错误) m a c 子层负责格式化传输帧。这要求帧的相应域以正确的顺序发送,最开始 是f 确的前导、s f d 序列,接着是真f 的帧内容( 包括d a 、s a 长度类型以及数 据) ,最后是作为f c s 域的计算出的c r c 序列。m a c 子层应有效地将主机传输给 它的面向字节的数据进行转化,并将其串行化成可在网络介质上进行传输的位流。 当进行接收时,m a c 子层必须将输入的位流重新转化为由字节构成的帧。当 一个接收数据包开始时,m a c 子层的接收功能要检查到来的位流以找出帧起始。 前导和帧起始将被接收m a c 所丢弃。一旦检测到s f d ,m a c 子层必须从接收帧 中得到d a 域并与相应所存储的地址( 依赖于所有的目的地址类型) 进行比较。 如果不匹配,m a c 子层将丢弃接收帧并等待介质变得不活动。如果匹配则m a c 予层将接收到来的帧,独立计算其c r c ,并将其与接收帧的f c s 域中得到的c r c 一1 0 1 0 i 1 0 0 m 以太网;? 57 4 的t 。c 接口模块的f p o a 殴计 ( 最后4 个字节) 相比较。 如果在发送端和接收端分别计算c r c 值不相匹配,m a c 子层就必须报告一 个错误。如果帧中包含正确数目的字节,它将报告一个“c r c 错误”。如果收到部 分字节,m a c 子层必须报告一个“对齐错误”而不是“c r c 错误”。因为接收方 的c r c 是根据所接收的完整字节数目所计算的,而对齐错误刚表明由于在对接到 的数掘进行译码的过程中发生了某些错误而使帧中丢失( 或增加) 了某些位。 值得注意的是一种被称之为“流位”( d r i b b l i n gb i t s ) 的现象会导致在接收端检 测到多余位。这种现象在通常的网络运行中会出现,其主要产生原因是信号路径 上各种收发器中容许偏差。这种情况下m a c 子层丢失数据包术尾端的1 7 个流 位而不产生任何影响。但是如果有八个和更多的流位,接收器就检测到一个完成 的多余字节,从而引发c r c 错误( 因为作后一个字节是由流位组成,而并非真正 的f c s 字节) 。通常情况下正常配置和运行的网络不会增加八个流位。 m a c 子层负责实现发送和接收过程中的关键特性,并负责向上层和或某一 管理实体报告其在接收端检测到的各种由介质引起的错误;m a c 子层还可以监控 和或报告其他种类的错误,但这些错误与物理连接有更大的关系,在这里就不一 一叙述。 2 介质存取管理 ( 1 ) 介质分配( 冲突避免) ( 2 ) 竞争化解( 冲突处理) 所有处于同一以太网的设备都必需同时共享公用通信介质。网络中的所有节 点对介质拥有相同的存取优先权。多个节点可以同时从介质上接收数据,但任一 时刻只能有一个节点被允许发送。想要进行发送的站点必须探测介质当前是否活 动状态。p l s 功能负责检测并向m a c 子层报告“载波帧听”状态。如果网络当前 处于“忙”状态,载波帧听处于活动状态。这时站点将推迟其发送,直到活动停 止,另外再加上一段预定的寂静期。这段非活动期被称为包问间隔( i p g ) 。i p g 将每一数据包分隔开来( 采用9 6 b i t 时间) 以使所有站点可以探测到不活动的载 波帧听状态。 一旦时间超过了口g ,站点就被允许对介质进行存取并可以开始发送。如果此 时有两个( 或更多的) 站点在一直等候对介质的存取,那么它们将在同一时刻丌 始发送。由于介质是共享的,它们的发送将相互干扰并变得混乱,从而导致一次 “冲突”。所有的站点都必须具有“冲突检测”的能力。这些f 在发送的站点将会 检测到冲突并发出一个“拥塞”序列,也就是在检测到冲突之后继续发送一段预 第二章以太网交换原理及关键技术 定的时问。如果冲突是在自i 导发送期间被探测到,那么它将继续发送完前导s f d 序列( 全部6 4 位) 再加上3 2 位的拥塞序列。这个过程定义了最小的合法冲突“片 断”长度为9 6 位。如果检测到冲突之前前导已被发送完,站点将再发送3 2 位的 拥塞系列。拥塞序列可以是任何固定或随机模式,但不能是某一特定帧的c r c 序 列( 典型情况下采用交替的“1 0 ”模式) 。拥塞序列保证了在网络两端的站点也可 以检测到冲突情况。由于每一个站点发送完拥塞序列之后将停止发送,于是网络 在最后一个站点停止之后将恢复为不活动状态。这些刚进行发送的站点将执行+ 种“后退”算法,以使它们在稍后的某一时刻再进行发送。后退时间由各个站点 独自采用伪随机序列发生器计算。其目的是使冲突站点在不同的间隔上重新进行 下一次发送尝试,从而避免了下一次冲突。 用于保证一个站点能够探测到冲突的时间是由整个网络的来回延迟所决定 的,假定个站点开始发送一条消息,该消息通过网络向某一个远处站点进行传 播,而该站点又正好在其消息达到时刻开始发送。该远方站点将几乎立刻就检测 到一次冲突( 依赖于具体实现) 。但起始的发送站点在该冲突事件通过网络传播回 来之前是不知道有冲突的,所以来回延迟,被称为“时间槽”,决定了检测一次冲 突所需的时间。时间槽限定了最大的网络长度,以保证在一预定时间内冲突可以 被检测到。对于8 0 2 3 以太网而言时间槽为5 1 2 位时间。 在一个时间槽内发生冲突的发送将由发送节点自动重发。而发生在一个时间 槽5 1 2 位) 之后的冲突将导致一次“迟冲突”,这时节点将立即丢弃该发送。 在具有高网络流量的繁忙网络中,冲突现象是介质存取协议的一个正常部分。 在节点丢弃对某一特定数据包( 或帧) 的发送前允许有1 5 次重发( 总共有1 6 次 发送机会) 。重发处理由以太网l a n 控制器来负责进行。控制器将基于“整数二进 制指数后退”( t b e b ) 算法计算重发之前的间隔时间。该算法提供了一个可控制 的伪随机机制来实现在重发送之前的冲突后退间隔。 结束执行冲突( 拥塞) 之后,c s m a c d 子层在试图重新发送前延迟一段时间。 该延迟是时间槽的整数倍。自进行第i q 次重发之前延迟的时间槽数目为在一 - y 0 范 围内均匀分布的一随机整数r : 0 r 2 “ 其中k = m i n ( n ,1 0 ) 在这里要说明一点,根据该算法,随着重发尝试次数的增加( 随着n 逐渐增 大) ,重发间隔的可选择数目( r ,随机选择的整数) 也变大。从而随机性保证了在 网络负荷较重和多个站点发生冲突的情况下重发可以分散丌来,以此试图缓和网 络搁塞。 里1 0 j 1 0 0 m 以太网芯片的i ”c 接口模块的f p g ai 殳i 如果在所有1 6 次尝试之后发送仍不成功,m a c 子层将放弃发送该帧并向、l 层软件和或管理实体通报,由其来负责采取相应动作。 m a c 子层的协议数据单元( p d u ) 是m a c 帧。图2 1 画出了基本的m a c 帧 格式。 7 字甘1 字1 ,6 字节6 字节2 字1 ,0 1 5 0 0 字1 y0 4 6 字。1 ,4 字 前导码帧开始目的地址源地址长度数据填充校验码 类型f c s r 图2 1 基本的m a c 帧结构 前导码:由0 、1 间隔代码组成,可以通知目标站接收准备。i e e e 8 0 2 3 帧的 前导码占用7 个字节,紧随其后的是长度为1 个字节的帧首定界符( s f d ) 。 帧首定界符( s f d ) :i e e e 8 0 2 3 帧的定界字节( 0 0 0 0 0 0 1 1 ) ,以两个连续的代 码1 1 结尾,表示一帧的开始。 目的地址和源地址:表示发送和接收帧的工作站的地址,各占据6 个字节。 其中,目的地址可以是单址,也可以使多点传送或广播地址。 长度类型:占用2 个字节,该域表示数据的长度或帧类型:如果长度类型 的值 1 5 3 6 ,该值指定m a c 客户子层的协议类型。 数据:i e e e 8 0 2 3 帧的数据段包含上一层递交的数据单位。如果数据段长度过 小,使帧的总长度无法达到6 4 个字节的最小值时,那么相应软件将会自动填充数 据段,以确保整个帧的长度不小于6 4 个字节。 帧校验序列( f c s ) :该序列包含长度为4 个字节的循环冗余校验值( c r c ) , 由发送设备计算产生,在接收方被重新计算后以确定帧在传送过程中是否被损坏。 2 1 3l l c 子层 l l c 子层向上提供四种服务类型, 带确认的无连接服务、高速传送服务。 予层才和所连接的局域网类型有关。 即:不确认的无连接服务、面向连接服务、 局域网对l l c 予层是透明的,只有m a c 第一:章 以太网交换原理及关键技术 2 2 交换式集线器 2 2 1集线器在网络系统中的作用 集线器是一种重要的网络部件,它是星形结构网络的中心,用于将多个客户 机和服务器连接到一个中央区的网络上。也就是说,集线器可以将多个网络段连 接起来。集线器是网络的重要构件,是网络结构化的重要特征。集线器能将一个 网络段上接收到的信号进行扩播放大后发送到另一网络段上,即具有中继器的功 能。 集线器能够方便的扩展网络的直径和网络中的用户数目,使得网络具有较好 的可扩展性。除此而外,它还可以提高网络的可维护性和管理性,使得故障的查 找及修复,以及网络的管理更加方便,易于实施。 集线器从体系结构的角度,大体可以分为两种:共享式集线器和交换式集线 器。 2 2 2 交换式集线器的工作原理 交换式集线器是一种网络开关( s w i t c h ) ,也称交换器,由于和电话交换机对 出入线的选择有相似的原理,因此也有人译为交换枧,但出入线数比较小,一般 在8 2 4 之问。网络开关被定义成一个能接收发来的信息帧,加以暂时存储,然后 发到另一端的网络部件。交换式集线器具有网络开关的一般特征。 交换式集线器由四个基本元素组成:端口、缓冲区、信息帧的转发机构和背 板体系结构。交换式集线器可以同时接收多个端口信息,并可以同时将这些信息 发向多个目标地址对应的端口。交换式集线器还可以将从一个端口接收的信息发 向多个端口。由于每个端日都有其专用的转发通道,从而避免了共享式集线器中 因共享传输通道所造成的冲突。但是,交换式集线器中冲突依然存在,如果两个 接收端口都要向同一个输出端口转发时,就形成了冲突。交换式集线器端口之间 的冲突可以通过集线器内部的功能来协调。还有一种形式的冲突,就是如果交换 式集线器端口连接到一个传统的以太网段上,该以太网段中仍存在冲突,这种冲 突可以由c s m a c d 协议来处理。 11 0 1 0 0 m 以太网芯片的i :6 接【_ l 模块的f p ( ;a 设计 2 2 3 网桥、交换式集线器和交换机的区别 1 网桥与交换式集线器的区别 以太网网桥技术出现1 9 8 5 年左右,它是用来把一个以太网分成独立的以太局 域网的两端口设备。这种设备连接两个l a n ,在它们之间形成一座桥,即网桥。 随着网桥器件价格的下降和网桥芯片性能的提高,在网桥里构造更多端口和更强 大的功能成为可能。带两个以上网桥端口的设备被称为交换式集线器。交换式集 线器可以被看作具有同时支持多种桥接操作能力的复杂的网桥。 2 交换式集线器与交换机的区别 交换机也叫交换式集线器,它通过对信息进行重新生成,并经过内部处理后 转发至指定端口,具备自动寻址能力和交换作用,由于交换机根据所传递信息包 的目的地址,将每一信息包独立地从源端日送至目的端口,避免了和其他端口发 生碰撞,因此,交换机可以同时互不影响的传送这些信息包,并防止传输碰撞, 提高了网络的实际吞吐。 交换机( s w i t c h ) 与交换式集线器( s w i t h c h e dh u b ) 从功能上讲指的是同一 种设备。“交换式集线器”一般指工作组级别的交换机,“交换桃”则用于指主 干交换机。两者的基本功能是一致的,只是在性能要求上有些差别。交换机的出 现是为了提高原有网络的性能,同时又保护原有投资,降低网络响应速度,提高 网络负载能力。交换机技术在不断更新发展,功能不断加强,可以实现信息流优 先级、虚拟局域网、组播,远程监控( r m o n ) 、流量控制、内嵌网络代理等。 2 39 5 l 桥的工作原理 网桥通过地址学习逻辑,建立起m a c 地址和端口的对应关系表一源地址表。 数据帧到达网桥端口后,根据帧中目的m a c 地址,通过转发查询逻辑在源地址表 中查找输出端口,然后转发。如墨2 2 所示。 第一章 以太网交换原理硬天键技术 1 过滤转发查表逻辑 图2 2 网桥过滤转发逻辑 该模块确定交换机接收的m a c 帧的去向。交换机一旦接收到m a c 帧,该模 块就检查目的地址并查找源地址表,这时可能遇到几种情况: ( 1 ) 如果m a c 帧的目的地址在源地址表中能找到,但该目的地址对应的网桥 的端口不同于接收到该m a c 帧的端口,则该m a c 帧被转发到目的地址所对应的 端口。 ( 2 ) 如果m a c 帧的目的地址在源地址表中能找到,并且目标地址对应的网桥 的端口与接收到该m a c 帧的端口相同,则该m a c 帧被过滤掉,即丢弃。 ( 3 ) 如果目标地址在源地址表中没有找到,则该m a c 帧就被广播到所有端口。 2 学习逻辑 学习逻辑的功能是维护、更新源地址表( s a t ) 。源地址表是动态变化的,当网 桥加电初始化时,源地址表不含以太网的任何m a c 地址的信息。通过学习过程, 网桥收集各端口m a c 地址以及相对应的端口信息,不断地填充和更新源地址表。 学习过程是针对每一个接收到的m a c 帧,学习逻辑查询源地址表,若是新的m a c 地址,则在源地址表添加新的地址项,若已存在该m a c 地址项,则更新老化计数 器。 3 p o r t 接口 该模块完成同物理端口的逻辑接口。 4 源地址表( s a t ) 源地址表是网桥智能地控制m a c 帧流动的基础。源地址表项的内容主要包 括m a c 地址和相对应的端口号。源地址表由学习过程获得和更新,被用于m a c 1 0 1 0 0 m 以太网芯片的i :c 接口模块的f p g a 波引 帧的转发和过滤决定。源地址表中的每项有一个相对应的老化计数器,当该计数 器的计数值达到某个门限,则网桥可以丢弃相对应的m a c 地址项信息。源地址表 决定了网桥的能力。由于源地址表的大小有限,因而源地址表的大小决定了m a c 地址项的数量。 2 4 交换式以太网关键技术 2 4 1v l a n 技术 根据以太网交换机的工作原理,当其检测到广播数据帧时,会向其它的端口 转发该数据帧。这一特点决定了当以太网任何一个站点发出了广播帧后,会由各 个以太网交换机传播至整个以太网的范围,若以太网规模很大,由几十甚至上百 台主机组成时,每个主机发出的广播帧合起来会像风暴一样席卷整个交换式以太 网。为了解决大型交换式以太网的广播风暴问题,就必须限制其广播域的范围, 从而产生了虚拟局域网技术( v l a n ) 。用交换机建立虚拟网就是使原来的一个大 广播域逻辑地分为若干个子广播域,在子广播域里的广播包只会在该广播域内传 送,其它的广播域是收不到的。v l a n 通过交换技术将通信量进行有效分离,从 而更好地利用带宽,不可从逻辑的角度出发将实际的l a n 基础设施分隔成多个子 网。 1 v l a n 定义 v l a n 可以根据端口、m a c 地址、协议类型和礤地址来定义。 ( 1 ) 端口定义v l a n 可以根据端口来定义,端口属于哪个v l a n 。例如一个有四端口的交换机, 端1 :11 、2 和4 属于v l a n i ,端口3 属于v l a n 2 ( 如图2 3 ) 。这种方法比较成熟, 目前用的较多。但它的缺点在于它不允许用户移动,如果一个用户移动到另一个 位置,网管必须重新配置v l a n 。 第一章 以太网交换原理及天键技术 p o r tv l a n 11 2l 32 41 幽23端口分配不同的v l a n ( 2 ) 基于m a c 地址定义v l a n 这是根据主机的m a c 地址来定义v l a n ,当主机移动时,不需要重新配鼍而 允许主机仍在同一个v l a n 里( 如图2 4 ) 。这种方法的主要缺点在于v l a n 成员 需要初始化分配,当用户比较多时,就比较麻烦,同时也潜藏着遭受m a c 欺诈攻 击的隐患。 m a ca d d r e s sv l a n 1 2 1 2 3 5 4 1 4 5 1 2 1 2 3 8 9 2 3 4 8 7 3 7 42 3 0 4 5 8 3 4 7 5 8 4 42 5 4 8 3 5 7 3 4 7 5 8 41 图2 4m a c 地址分配给不同的v l a n ( 3 ) 基于协议类型定义v l a n 可以依据第二层头部的协议类型域定义v l a n ( 如图2 5 ) 。 p r o t o c o lv l a n i pl 碑x2 图2 5协议类型分配给不同的v l a n ( 4 ) 基于m 地址定义v l a n 根据i p 地址划分是将属于同一球广播组的计算机都划分为同一v l a n 。例如, i p 子网地址可以用来划分v l a n 成员( 如图2 6 ) ,虽然这种v l a n 分类基于第三 层协议,但与网路的路由无关,地址只是用来作为一种对应关系来决定v l a n 的成员,并不需要对i p 地址进行处理。在基于第三层v l a n 中,用户可以移动它 们的终端而不需要重新配置网络地址。但是涉及到第三层的处理,比较复杂。 i 11 0 1 0 0 m 以太网芯片的1 1 c 接口模块的f p g a 没汁 i ps u b n e tv l a n 2 3 2 2 4 x x x1 2 3 2 2 1 x x x2 图2 6i p 子网地址分配给不同的v l a n 2 v l a n 成员间的通信 如果一个v l a n 的所有成员都连在同一交换机上,成员间的通信非常简单, 只需将广播帧在属于同一v l a n 的端口组简单的广播即可。但是当一个v l a n 的 所有成员不在同交换机上,不同交换机的同一v l a n 成员间该如何通信呢? 我 们借助v l a n 标记来解决这个问题。我们把两个交换机互连的端口称“标记端口”, 并且把该端口配置成所有v l a n 的成员。当广播帧在交换机间“标记端口”传输 时,它被注上标明v l a n 成员的标记,另一个间还击在收到该v l a n 中广播了。 交换机除去该标记,然后向该v l a n 成员所连接的其它端口发送该广播帧。 第一字节 第= 字节 8 t65d32

温馨提示

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

评论

0/150

提交评论