今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第三篇,下篇,程序的仿真与测试和总结。话不多说,上货。...这里也给出前两篇的超链接: 基于FPGA的以太网控制器(MAC)设计(上) 基于FPGA的以太网控制器(MAC)设计(中) 导读 当前,互联网已经极大地改变了我们的生产和生活。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。 第三篇内容摘要:本篇会介绍程序的仿真与测试和总结,包括顶层程序、外部 PHY 芯片模拟程序、仿真结果等相关内容。..." `include "eth_defines.v" `include "timescale.v" module tb_ethernet(); //寄存器与连线 reg wb_clk; ……...图16 半双工模式下发送和接收数据全过程的测试结果 五、总结 本篇介绍了一个以太网控制器(MAC)的实例。首先介绍了以太网的基本原理,然后介绍了以太网控制器程序的主要结构和主要功能模块的实现过程。
MAC地址全世界的每块网卡在出厂前都有一个唯一的代码,称为介质访问控制(MAC)地址一.网络适配器(网卡)要将计算机连接到以太网,需要使用相应的网络适配器(Adapter),网络适配器一般简称为“网卡”...二.MAC地址每块网卡中的MAC地址称为物理地址,MAC地址长6字节,一般由连字符(或冒号)分隔的12个十六进制数表示,如02-60-8c-e4-b1-21.高24位为厂商代码,低24位为厂商自行分配的网卡序列号...MAC地址与网卡一般情况下,普通用户计算机中往往会包含两块网卡:一块是用于接入有线局域网的以太网卡另一块是用于接入无线局域网的Wi-Fi网卡每块网卡都有一个全球唯一的MAC地址。...以太网的MAC帧引入:由于总线上使用的是广播信道,因此网卡在网络上每收到一个MAC帧,首先要用硬件检查MAC帧中的MAC地址.如果是发往本栈的帧,那么就收下,否则就丢弃....MAC帧时,就简单将其丢弃,以太网的数据链路层没有重传机制。
2020 以太网数据帧、MAC YuLong XiaoZhan 玉 龙 小 栈 以太网链路传输的数据包称做以太帧,或者以太网数据帧。...在以太网中,网络访问层的软件必须把数据转换成能够通过网络适配器硬件进行传输的格式。二层交换机设备维护CAM表,而CAM表中存放的是MAC地址。今天给大家介绍一下以太网数据帧格式和MAC地址格式。...以太网数据帧 以太网II帧格式 ? Ethernet_II 帧类型值大于等于1536 (0x0600)。 以太网数据帧的长度在64-1518字节之间。 802.3帧格式 ?...网卡) MAC构成 MAC地址一共6byte,48bit,由两部分组成名分别是供应商代码和序列号。...其中前24位代表该供应商代码,由IEEE管理和分配。后24位由厂商自行分配。 ?
全球管理需要购买,本地管理用户自定义,不过以太网几乎不会去理会这个用户自定义的。...适配器检查 MAC 地址 适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址,然后检查这个帧是否是下面的其中一种,如果不是就丢弃,如果是就收下然后转发。...1️⃣ 单播 (unicast) 帧(一对一) 2️⃣ 广播 (broadcast) 帧(一对全体) 3️⃣ 多播 (multicast) 帧(一对多) MAC 帧的格式 常用的以太网 MAC 帧格式有两种标准...\space Ethernet \space V2DIX Ethernet V2 标准 ✅ IEEE的802.3IEEE 的 802.3IEEE的802.3 标准 最常用的 MACMACMAC 帧是以太网...最后提一下与 IEEE 802.3 MAC帧IEEE \space802.3\space MAC 帧IEEE 802.3 MAC帧 的区别: IEEE 802.3 规定的 MAC 帧的第三个字段是“长度
文章目录 一、 以太网 ( Ethernet ) 概述 二、 以太网 ( Ethernet ) 服务 三、 以太网 ( Ethernet ) 发展 四、 10BASE-T 以太网 五、 适配器 与 MAC...地址 六、 以太网 MAC 帧 七、高速以太网 一、 以太网 ( Ethernet ) 概述 ---- 以太网 ( Ethernet ) 概述 : ① 开发者 : 由 Xerox 公司创建 , 由 Xerox...存储器包括 RAM 和 ROM ; ③ MAC 地址 存储 : ROM 上存储有计算机的 MAC 地址 ; 该 MAC 地址又称为 硬件地址 , 物理地址 ; ④ MAC 地址 组成 : 48 位...二进制地址 , 前 24 位 代表厂家 , 后 24 位 由厂家自己指定 ; 48 位刚好是 6 字节 , 可以使用 6 个十六进制数字表示 ; 六、 以太网 MAC 帧 ----...MAC 帧前 , 加入 1 字节的前导码 ; ⑤ 帧间隔 : 帧与帧之间有一定的空白间隙 , 如果一段信号没有电压变化 , 说明这是帧间隔 ; 七、高速以太网 ---- 高速以太网 : 速率大于
一,系统概述从硬件的角度来分析,以太网的电路接口一般由CPU、MAC(Media Access Control)控制器和物理层接口(physical Layer PHY)组成,如下图所示:对于上述三部分...它是IEEE-802.3定义的以太网行业标准。MII接口提供了MAC与PHY之间、PHY与STA(Station Management)之间的互联技术。...IEEE-802.3标准定义了以太网PHY包括MII/GMII(介质独立接口)子层、PCS(物理编码子层)、PMA(物理介质附加)子层、PMD(物理介质相关)子层、MDI子层。...四,总结MAC 就是以太网控制器,属于OSI的数字链路层。 phy 属于OSI的物理层(Physical layer),所以叫phy。...PHY在数据接受时, 进行如上所述的逆操作,将模拟信号转化为数字信号,解码,并行化后,传给MAC。基础以太网物理层非常简单:它是一种物理层收发器(发射器和接收器),能将一个设备物理地连接到另一个设备。
例如,若干网络中某个网卡除了故障,不停地发送帧,此时集线器可以检测到这个问题,在内部断开与出故障的网卡的连线,使整个以太网仍然能正常工作 这是一个使用集线器和双绞线电缆互联了四台主机的星型拓扑的以太网...此时,集线器可以检测到问题,在内部断开与出故障网卡的连线,使整个以太网仍然能正常工作。 以太网交换机通常都有多个接口。每个接口都可以直接与一台主机或另一个以太网交换机相连。一般都工作在全双工方式。...直通交换:采用基于硬件的交叉矩阵(交换时延非常小,但不检测帧是否有差错) 以太网交换机自学习和转发帧的流程 以太网交换机在数据链路层(也包括物理层) 以太网交换机收到帧后,在帧交表中查找帧的目的MAC地址所对应的接口号...如图 相互连接的两台以太网交换机,各自连接了三台主机,构成了一个交换式以太网,为了简单起见,各主机中网卡上固定化的 MAC 地址仅用一个大写字母表示,各主机互不相同,为了将重点放在以太网交换机学习和转发帧的流程上...以太网交换机收到帧后,在帧交换表中查找帧的目的 MAC 地址所对应的接口号,然后通过该接口转发帧 MAC 地址又称为硬件地址或物理地址。
今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第一篇,上篇,以太网基本原理以及以太网控制器(MAC)的基本框架。话不多说,上货。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。...第一篇内容摘要:本篇会介绍以太网基本原理,包括以太网协议的参考模型、MAC 子层、媒体无关接口(Media Independent Interface)等相关内容,还会介绍以太网控制器(MAC)的基本框架等相关内容...1.2 MAC子层 MAC 子层在上层协议和以太网网络之间传输和接收数据,其主要功能是确保以太网上每一帧数据的传输都遵循了 IEEE 802.3 规范所规定的介质存取规则。...二、以太网控制器(MAC)的基本框架 下面将要介绍的以太网控制器(MAC)实现了以太网标准的第二层协议——MAC(媒体访问控制)协议,完全符合 IEEE 802.3 和 IEEE 802.3u 规范所规定的
今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第二篇,中篇,以太网控制器(MAC)程序的实现。话不多说,上货。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。...第二篇内容摘要:本篇会介绍以太网控制器(MAC)程序的实现,包括顶层程序、媒体无关接口模块(Media Independent Interface Module)、数据发送模块、数据接收模块、控制模块等相关内容...三、以太网控制器(MAC)程序的实现 本篇主要介绍以太网控制器(MAC)程序的主要模块。...本篇到此结束,下一篇带来基于FPGA的以太网控制器(MAC)设计(下),会介绍程序的仿真与测试和总结,包括顶层程序、外部 PHY 芯片模拟程序、仿真结果等相关内容。
以太网首部 目地MAC地址(8字节)源MAC地址(8字节)类型(2字节) 1、IP头的结构 版本(4位)头长度(4位)服务类型(8位)封包总长度(16位)封包标识(16位)标志(3位)片断偏移地址(...2、ICMP协议的头结构 类型(8位)代码(8位)校验和(8位)类型或者代码 (1)类型:一个8位类型字段,表示ICMP数据包类型。(2)代码:一个8位代码域,表示指定类型中的一个功能。...如果一个类型中只有一种功能,代码域置为0。(3)检验和:数据包中ICMP部分上的一个16位检验和。...(9)RST:连线复位,首先断开连接,然后重建。 (10)SYN:同步连线序号,用来建立连线。 (11)FIN:结束连线。如果FIN为0是结束连线请求,FIN为1表示结束连线。...(4-5字节)源IP地址(0-1字节)源IP地址(2-3字节)目标硬件地址(0-1字节)目标硬件地址(2-5字节)目标IP地址(0-3字节) (1)硬件类型字段指明了发送方想知道的硬件接口类型,以太网的值为
今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第三篇,下篇,程序的仿真与测试和总结。话不多说,上货。 导读 当前,互联网已经极大地改变了我们的生产和生活。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。 第三篇内容摘要:本篇会介绍程序的仿真与测试和总结,包括顶层程序、外部 PHY 芯片模拟程序、仿真结果等相关内容。..." `include "eth_defines.v" `include "timescale.v" module tb_ethernet(); //寄存器与连线 reg wb_clk; ……...(0, 21); //测试全双工方式下传输数据 test_mac_full_duplex_receive(0, 13); //测试全双工方式下接收数据 test_mac_full_duplex_flow_control...图16 半双工模式下发送和接收数据全过程的测试结果 五、总结 本篇介绍了一个以太网控制器(MAC)的实例。首先介绍了以太网的基本原理,然后介绍了以太网控制器程序的主要结构和主要功能模块的实现过程。
在没入手2017款的Apple MacBook Pro 13.3寸笔记本之前,也曾幻想mac应该是一个兼具了linux和windows优点的操作系统,实际上,macbook也有不少坑,如:散热差...以下分享这段时间使用mac的一些心得,希望对你有所帮助。 ?...终端与shell 终端是程序员操作电脑的首选,默认的terminal并不好用,改用 iTerm,shell选择oh-my-zsh 包管理工具 Homebrew Homebrew 是mac的包管理器,类似于...gif录制 LICEcap LICEcap绝对是良心软件,免费,多平台(支持windows和mac),生成的gif画质要甩qq录制的gif好几条街,且容量很小。...代码编辑器 使用 jetbrains全家桶,并全部用vim插件,写起代码来,真是爽得飞起。再也不用去折腾其他编辑器,记各种快捷键。
该层协议是以太网 MAC,由 IEEE-802. 3 以太网标准定义。最新的 MAC 同时支持 10Mbps 和100Mbps 两种速率。 ...以太网数据链路层其实包含 MAC(介质访问控制)子层和 LLC(逻辑链路控制)子层。...一块以太网卡 MAC 芯片的作用不但要实现 MAC 子层和 LLC 子层的功能,还要提供符合规范的 PCI 界面以实现和主机的数据交换。 ...在 MII 接口的连线中,如果 TX_ER 信号线没有用到,必须将它下拉接地。...以太网帧的格式为:前导符+开始位+目的mac地址+源mac地址+类型/长度+数据+padding(optional)+32bitCRC。
MAC 地址怎么使用? 最常用的以太网和无线局域网,都是使用 MAC 地址作为地址标识符进行通信的。 以太网 有线局域网中普遍使用以太网,以太网标准简单,传输速率高。常见的网络拓扑结构如下图。...以太网 什么是网络拓扑? 网络的连接和构成的形态称为网络拓扑。它不仅可以直观的看到网络物理连接方式,还可以表示网络的逻辑结构。...以太网数据格式 当今最常用的以太网协议标准是 ETHERNET II 标准。ETHERNET II 标准定义的数据帧格式如下图。...这 8 个字节表示以太网帧的开始,也是对端网卡能够确保与其同步的标志。帧起始定界符的最后两位比特被定义为 11 ,之后就是以太网数据帧的本体。...VLAN 标签是用来区分数据帧所属 VLAN 的,是 4 个字节长度的字段,插入到以太网帧头部上。
MAC 地址怎么使用? 最常用的以太网和无线局域网,都是使用 MAC 地址作为地址标识符进行通信的。 以太网 有线局域网中普遍使用以太网,以太网标准简单,传输速率高。常见的网络拓扑结构如下图。 ?...以太网 什么是网络拓扑? 网络的连接和构成的形态称为网络拓扑。它不仅可以直观的看到网络物理连接方式,还可以表示网络的逻辑结构。...以太网数据格式 当今最常用的以太网协议标准是 ETHERNET II 标准。ETHERNET II 标准定义的数据帧格式如下图。 ?...这 8 个字节表示以太网帧的开始,也是对端网卡能够确保与其同步的标志。帧起始定界符的最后两位比特被定义为 11 ,之后就是以太网数据帧的本体。 ?...VLAN 标签是用来区分数据帧所属 VLAN 的,是 4 个字节长度的字段,插入到以太网帧头部上。
这还是个技术活,需要进行全面的改进,也发现所谓的计算机之间的连线只能传送0、1信号,另一台计算并不知道那么多0、1代表什么,而且“小鹿”又发现不同厂商的生产的计算机既然有连线实现通信也是很麻烦的,干脆定义一套规则吧...6.1 物理层 物理层,顾名思义,用物理手段将电脑连接起来,就像我们上边讲到的计算机之间的物理连线。...”(具体的以太网协议内容下节内容详细讲解)。...7.2 数据链路层 上回讲到数据链路层中规定的“以太网协议”来规定电信号的分组形式,什么是以太网,以太网的数据包是什么样子的?...ARP 协议发出一个数据包,包含在以太网的数据包中(其中包含对方的 IP 地址,对方的 MAC 地址栏是 FF:FF:FF:FF:FF:FF)。
集线器工作 信号传递到整个网络之后将会广播到整个网络,在第一章“以太网MAC头部”当中介绍了MAC地址中包含了接收方的“收货地址”,集线器负责以太网架构中对于信号进行广播的角色。...为了详细解释,首先说一下什么是直连线,什么是交叉线。 直连线:网线两端都是按T568A或者T568B排序。 交叉线:一端是按T568A排序,一端是按T568B排序。...然而随着技术的发展和迭代现代设备对于网线接口的依赖其实并不是特别强,同种设备使用直连线也是可以兼容的,所以上面的这条规则只能作为一个参考。...以太网端口为例, 路由器的端口具有 MAC 地址 ,因此它就能够成为以太网的发送方和接收方,此外端口还具有 IP 地址,所以他可以充当网卡使用。...二层和三层交换机 二层交换机通常用于连接以太网中的网络设备和客户端设备,以识别与转发数据包中的MAC地址。
在使用Xilinx FPGA芯片中SGMII IP核进行千兆以太网调试时,经常会遇到以太网接口收到的前导码长度不足7个字节55的情况,但这种情况确实正常现象。...这就要求在设计代码处理前导码时不能将55的个数作为判据,而是只要有55转换为D5,就应该认为前导码接收成功了。...的代码,使1G MAC中gmii_rxd、gmii_rx_dv、gmii_rx_er同步打拍,原设计中没有同步打拍)。...3、PHY芯片功能模式设置 正常情况下,我们常用的PHY芯片功能模式有以下: 全双工/半双工模式 千兆/百兆/十兆模式 自协商速率/固定速率 RGMII/SGMII模式 交叉线/直连线模式 当交换机出现无法连接网口...; 以太网数据帧FCS域结束后,tx_er信号拉高。
在数据传输中出现差错时,帧定界符的作用更加明显; 封装成帧 2,透明传输; 帧开始符和帧结束符: 帧开始符和帧结束符最好是不会出现在帧的数据部分的字符,通常我们电脑键盘能够输入的字符是ASCII字符代码表中打印字符...,在ASCII字符代码表中,还有非打印控制字符,在非打印字符中有两个字符专门用来做帧定界符,代码SOH(Start Of Header)作为帧开始定界符,对应的二进制编码为0000 0001,代码EOT...当数据率(网速)一定时,以太网的连线长度受到限制,否则t会太长;以太网的帧长不能太短,否则T0太小,使a太大。...byte,以太网的帧最短是64个字节,这也就是为什么IP数据报的最短长度为46字节; MAC帧格式 前8个字节的作用是实现比特同步,第一个字段共7个字节,称为前同步码,作用是实现快速MAC帧的比特同步...数量扩展 2,在数据链路层考虑扩展; 使用网桥优化以太网: 网桥工作在数据链路层,它根据MAC帧的目的地址对收到的帧进行转发。网桥具有过滤帧的功能。
最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。 工作原理:交换机工作于OSI参考模型的第二层,即数据链路层。...交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,形成一张MAC表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。...实验设备 Switch_2960 1台;PC 2台;直连线 PC1 IP: 192.168.1.2 Submask: 255.255.255.0
领取专属 10元无门槛券
手把手带您无忧上云