以太网基于fpga的千兆以太网控制器的设计---副本

以太网控制器是什么  时间:2021-04-23  阅读:()

基于FPGA的千兆以太网控制器的设计摘要:网络正在成为当今社会通信的骨干力量,现代化的设备迫切需要解决如何简捷高速的接入问题,本文描述了基于FPGA的嵌入式技术。千兆以太网(G ig ait  h n t)技术目前被广泛应用于局域网中,千兆以太网二层(C层)交换芯片是千兆以太网中的关键芯片。文章介绍了一种由P实现的以太网控制器的设计方法该控制器能支持1000 Mbps的传输速率以及半双工和全双工模式,并且给出了仿真验证结果。结果表明,该设计方案是可行的。

关键词:千兆以太网;PGA;以太网控制器

A Des gn of ont oller or Ggabit Etere  Based o GA

D gZh 

(a zho n iver  ity f S c  ne n  hnoo  Dep tment o Elec  ronic Sc  ece and echno

oy,uhan  00  C hia)

Ab tr c :N wok bcmes he fundation of md n cmmon counications, i  ’s urget to  olvethe accs  t the sys  ew t the the net siply a ffi ient y. The apr deals with the tehnology ofem  de syste  se o the FPGA Gigait Ehernet tech l y  s w   y usd in oal Area wor (L) rec  t  y, L er 2 (C)switch cip is he ky chp ased nhic igabit hrne   ech l y can be sed. In th s paer,a m hod that im  emnts Gigbit  herne  con rol er on FA  s ntrdu  ,wh ch cn suppot

100Mbps transm ssi  at w th h lf-ulex andfulldplex mod, and the simulatin nd ve     c 

on reslts are  vn.

Ky ords Gga  t Et  n t; FPA; te    otro llr

目录

 引言错误未定义书签。

2千兆以太网技术简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

3千兆以太网的工作原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

 千兆以太网控制器的FPGA实现. . . . . . . . . . . . . . . . . .错误未定义书签。

5千兆以太网的具体设计方案错误未定义书签。

.1 MA发送模块错误未定义书签。

5  A接收模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

5. C的其它模块. . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

6仿真结果错误未定义书签。

7结束语. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

8 参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1引言

目前,I电视、视频流、网络游戏以及多媒体互动等业务逐步成为关注的焦点。然而高清晰度的交互视频是带宽的巨大消耗者 进一步提升接入带宽已经迫在眉睫。 FPGA产品设计完善,可以直接编程。还具备可定制的灵活性,避免了较高的NRE(不可回收)成本。这都使得基于SOPC的嵌入式开发逐渐成为新技术发展的最前沿。嵌入式系统不同于通用型PC,具有以下特点:①低功耗、体积小、集成度高;②严格约束,嵌入式系统的硬件和软件都必须高效率地设计;③实时性,有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。

目前,以太网 2 3协议和TPIP协议是现今嵌入式系统接入Inter nt的首选协议。而以太网(E t her n t)的核心思想是多用户使用共享的公共传输信道它通过带冲突检测的载波侦听多路访问协议(CSC)来控制对介质的访问。

本文给出了完全用FPGA的控制逻辑来实现嵌入式系统 te r ne接入中的底层以太网控制器的设计方法。并最终设计出符合IEE 82.标准的控制器从而实现了100 bp两种传输速率以及半双工和全双工两种工作模式,并可通过IEE02.标准定义的介质独立接口(MII)与以太网物理层芯片相连接。

2 千兆以太网技术简介

以太网技术是当今应用广泛的网络技术千兆以太网技术继承了以往以太网技术的许多优点,同时又具有诸多新特性例如传输介质包括光纤和铜缆,使用8B 10B的编解码方案,采用载波扩展和分组突发技术等。正是因为具有良好的继承性和许多优秀的新特性,千兆以太网已经成为目前局域网的主流解决方案[  。

千兆以太网利用原以太网标准所规定的全部技术规范其中包括CMA/CD协议、以太网帧、全双工、流量控制以及IEE802.3标准中所定义的管理对象。千兆以太网的关键技术是千兆以太网的C 层和以太网接口的实现。随着多媒体应用的普及千兆以太网必然得到广泛应用[2。

3千兆以太网的工作原理

本文介绍的千兆以太网交换芯片按照IEEE802. 标准实现了8个独立千兆端口之间的AC帧交换,同时向下兼容10 Mb/s和100M/ 的A帧交换。其最基本的工作原理可概括为“学习转发”。它包括“学习” 和“转发”两个部分。

芯片中包含一个MAC地址表,地址表的每个存储单元为一条如表所示的2比特的A地址索引信息。AC地址表一共可以存储096条MAC地址索引信息。

表1 MAC地址索引信息结构表

端口接收到MAC帧后,提取MC帧的源地址,并在表中查找与之对应的条目,如果没有找到,就把源地址和接收到该帧的端口编号捆绑成一条新的MAC地址索引信息,存储到MAC地址索引表中这个过程为“学习” 。通过学习,就可以知道主机的地址和端口的映射关系。有时还需要记录VLAN和端口的对应信息,建立L索引表。

从端口接收到一个要求转发的MA帧后,提取MC帧中的目的地址,并在MC地址表中查找与之对应的条目从中得到目的地址对应的端口号,将MC帧转发到相应的端口,这个过程为“转发” 。

芯片设计的关键技术在于AC帧的帧头信息提取和MAC地址表的管理。对于帧头信息的提取包括判断是以太网帧还是

802.3帧,提取源地址和目的地址、 VLA信息和一些I帧头信息计算当前帧的优先级,根据不同的帧头信息进行相应的协议处理等。

为了实现 00/ 的MA帧交换,M AC地址表必须满足三个要求:必须能在几个时钟周期内查找到A地址相应的端口号 以满足千兆以太网需求的高吞吐量;必须及时 “学习”到新MAC帧的地址索引信息老化掉长时间没有访问到的MAC地址索引信息。为了达到这些要求,本芯片中采用了HAS H[3]算法。4千兆以太网控制器的FA实现

整个控制器的结构框图如图所示,整个控制器由接口帧缓

存、MAC帧处理模块、交换处理模块、 内存管理模块、寄存器以及R    接口组成。

芯片内部有一个容量为108字节的双端口S RAM用于缓存接收到的MAC 帧,内存管理模块负责该S RA M存储空间的分配、 释放和读写控制。

包处理来自交

换处理模块

图千兆以太网控制器结构框图

芯片内部核心部分工作时钟频率为125M ,端口有可能会接在 0 Mb/s或0 Mb/ 的网段上,此时接口的工作时钟为25Hz 因此需要一个接口缓存模块来缓存数据。 该模块一般是IO。

RS 23 接口是芯片与用户的接口通过该接口,用户可以读取寄存器的值来了解芯片的工作状态,可以配置寄存器来调整芯片的工作模式。

交换处理模块是整个芯片的核心模块,帧头信息提取和M地址表的管理都在这个模块中实现,其结构框图如图所示。

帧头信息分析模块接收到AC帧处理模块送来的帧头信息

后,提取出目的地址、源地址、VLAN以及P头中的优先级等信息,并将其转发到学习转发控制模块。并根据帧头、帧尾以及帧有效信号产生帧状态指示信号发送到端口记录模块。

图2交换处理模块结构框图

 千兆以太网的具体设计方案

以太网控制器的F P GA设计工作包括以太网AC子层的P GA设计、MAC子层与上层协议的接口设计以及C与物理层PHY)的II接口设计。 图3为M AC接口结构框图。

图3 MAC接口结构框图

5.1 MAC发送模块

M发送模块可将上层协议提供的数据封装之后通过MII接口发送给PHY。发送模块可接收主机接口模块的数据帧开始和数据帧结束标志,并通过主机接口从外部存储器中读取要发送的数据,然后对数据进行封装,然后通过Y提供的载波侦听和冲突检测信号,在信道空闲时通过II接口将数据以4位的宽度发送给PY最后由H将数据发送到网络上[] 。

发送模块由CRC生成模块(crc_ge n、随机数生成模块(r do_gn)、发送计数模块(tx_ct和发送状态机(t_s tte模块等四个子模块组成。

5.1 1 CRC生成模块(cr_gen

该模块用于计算发送数据的RC值并将C值添加到数据帧的帧校验序列字段CS内。为了提高效率并考虑到AC与HY的数据通道为位,设计时可采用位并行C RC计算方法[4 ,算法中可使用一个次态函数并通过循环迭代来模拟移位操作。这样,发送模块就可以在边发送数据到PY的同时,一边计算CRC,这样当数据发送完时,CRC值也计算完成了。

5.1 2随机数生成模块(rado_ge n

如在发送过程中检测到冲突,发送模块就先发送拥塞码(am随后停止发送。在下次重新发送之前,发送模块会先执行一

个后退(bcko ff)操作 即发送模块等待一个半随机(生成的随机数有范围限制的时间之后再开始发送。该随机数就是由随机数生成模块产生的,它采用经典的截断二元指数后退算法,后退的时间是一个与发生冲突次数有关的随机数,随着冲突的次数增多,用于生成该随机数的范围也将逐渐增大 以减少冲突的概率。

5.  .3 发送计数模块tx_c  

发送计数模块由半字节计数器ibct)、字节计数器和重试次数计数器(rtrycn )三个计数器组成。其中重试次数计数器

re  rycn )可对发送某个帧时产生冲突次数进行计数。当计数器的值达到最大重试次数时它将放弃重试,并丢弃发送缓冲器内的数据。同时,重试计数器的值还被随机数生成模块用于计算下次重试之前需要后退(bakof)的时隙的个数。

半字节计数器和字节计数器分别用于对发送过程中的半字节

bibbl)和字节进行计数。

字节计算器还可用于滞后冲突(lat o llis on)和超长帧的判断。当滞后冲突发生时,正在发送的数据将被丢弃。超长帧的判断则是从对帧内容包括FS)进行字节计数,如果字节计数器的值大于最大有效帧的长度(1  18个字节 ,发送模块就根据系统设置(是否支持超长帧)丢弃或发送。

 .1.4发送状态机模块(tx_s tte m

发送状态机模块是整个发送模块的核心主要用于控制整个发送过程。发送状态机由 -d e_St  e、 PrambleSate、

piayun(pia云)240元/季起云服务器,香港限时季付活动,cn2线路,4核4G15M

pia云怎么样?pia云是一家2018的开办的国人商家,原名叫哔哔云,目前整合到了魔方云平台上,商家主要销售VPS服务,采用KVM虚拟架构 ,机房有美国洛杉矶、中国香港和深圳地区,洛杉矶为crea机房,三网回程CN2 GIA,带20G防御。目前,Pia云优惠促销,年付全场8折起,香港超极速CN2季付活动,4核4G15M云服务器仅240元/季起,香港CN2、美国三网CN2深圳BGP优质云服务器超高性...

RackNerd美国大硬盘服务器促销:120G SSD+192TB HDD,1Gbps大带宽,月付$599,促销美国月付$服务器促销带宽

racknerd怎么样?racknerd最近发布了一些便宜美国服务器促销,包括大硬盘服务器,提供120G SSD+192TB HDD,有AMD和Intel两个选择,默认32G内存,1Gbps带宽,每个月100TB流量,5个IP地址,月付$599。价格非常便宜,需要存储服务器的朋友可以关注一下。RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新泽西机房基于KVM虚拟化的VPS、...

HaBangNet(6.95美元/月)美国vps 5TB流量/德国vps 香港双向CN2 GIA VPS

HaBangNet支持支付宝和微信支付,只是价格偏贵,之前国内用户并不多。这次HaBangNet推出三个特价套餐,其中美国机房和德国机房价格也还可以,但是香港机房虽然是双向CN2 GIA线路,但是还是贵的惊人,需要美国和德国机房的可以参考下。HaBangNet是一家成立于2014年的香港IDC商家,中文译名:哈邦网络公司,主营中国香港、新加坡、澳大利亚、荷兰、美国、德国机房的虚拟主机、vps、专用...

以太网控制器是什么为你推荐
pcllenchrome三星iphonecomputationgraph我研制千万亿次超级电脑支持ipadipad连不上wifiiPad mini WiFi开关成灰色无法连接,怎么办css下拉菜单如何使用HTML和CSS制作下拉菜单tcpip上的netbiostcpip上的netbios是什么用的,有安全隐患吗?开启还是关上fusionchartsFusionCharts连接数据库你是怎么解决的,能告诉我吗?谢谢啦win7如何关闭445端口如何判断445端口是否关闭
VPS之家 怎么申请域名 a5域名交易 搬瓦工官网 gateone 商务主机 阿里校园 服务器是干什么的 新世界服务器 cxz lamp是什么意思 卡巴斯基试用版下载 开心online cdn加速技术 globalsign gotoassist 达拉斯 byebyelove 回程 企业私有云存储 更多