首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

基于FPGA的以太网控制器(MAC)设计(上)

今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第一篇,上篇,以太网基本原理以及以太网控制器(MAC)的基本框架。话不多说,上货。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。...二、以太网控制器(MAC)的基本框架 下面将要介绍的以太网控制器(MAC)实现了以太网标准的第二层协议——MAC(媒体访问控制)协议,完全符合 IEEE 802.3 和 IEEE 802.3u 规范所规定的...图 6 以太网控制器 这个以太网控制器具体实现了以下内容。 • 符合 IEEE 802.3x 规定的全双工帧控制。 • 半双工传输模式下的 CSMA/CD 协议。...针对以太网控制器需要完成的任务,本节将设计以太网控制器的程序框架,并对各个重要部分进行讲解,如图 7 所示。 ? 图 10-7 以太网控制器程序框架 以太网控制器的程序框架包括如下几个主要部分。

1.1K10

基于FPGA的以太网控制器(MAC)设计(中)

今天给大侠带来基于FPGA的以太网控制器(MAC)设计,由于篇幅较长,分三篇。今天带来第二篇,中篇,以太网控制器(MAC)程序的实现。话不多说,上货。...本章将 通过 FPGA 实现一个以太网控制器(MAC)的实例,详细介绍实现过程。...三、以太网控制器(MAC)程序的实现 本篇主要介绍以太网控制器(MAC)程序的主要模块。...3.2 媒体无关接口模块(Media Independent Interface Module) 媒体无关接口模块提供一个连接到外部以太网 PHY 控制器的接口,用来设置 PHY 控制器的寄存器并获得其状态信息...3.5 控制模块 前面介绍的数据发送模块和数据接收模块单独工作时,以太网控制器工作在半双工状态。当以太网控制器工作在 100Mbit/s 全双工时,数据流程由控制模块控制。控制模块由两部分组成。

1.1K30

基于FPGA的以太网控制器(MAC)设计(下)

图 12 以太网控制器程序 Testbench 的结构 从图 12 上可以看到仿真程序应该包括:顶层程序、模拟 PHY 程序、模拟主机程序和以太网控制程序。...PHY 芯片通过 MIIM(媒体无关接口管理模块)来连接以太网控制器,因此: • 当以太网控制器向 PHY 芯片模拟程序发送数据时,PHY 芯片模拟程序控制数据按照协议的进行传输; • 当 PHY 芯片向以太网控制器发送数据时...,外部 PHY 芯片模拟程序首先按照协议要求产生需要传输的数据,然后发送到以太网控制器。...图16 半双工模式下发送和接收数据全过程的测试结果 五、总结 本篇介绍了一个以太网控制器(MAC)的实例。首先介绍了以太网的基本原理,然后介绍了以太网控制器程序的主要结构和主要功能模块的实现过程。...本章为读者设计自己的以太网控制器提供了一个有用的方案,并且有助于加深对以太网协议的理解。 ? 本篇到此结束,各位大侠,有缘再见!

43020

基于FPGA的以太网控制器(MAC)设计(附代码)

这里也给出前两篇的超链接: 基于FPGA的以太网控制器(MAC)设计(上) 基于FPGA的以太网控制器(MAC)设计(中) 导读 当前,互联网已经极大地改变了我们的生产和生活。...PHY 芯片通过 MIIM(媒体无关接口管理模块)来连接以太网控制器,因此: • 当以太网控制器向 PHY 芯片模拟程序发送数据时,PHY 芯片模拟程序控制数据按照协议的进行传输; • 当 PHY 芯片向以太网控制器发送数据时...,外部 PHY 芯片模拟程序首先按照协议要求产生需要传输的数据,然后发送到以太网控制器。...图16 半双工模式下发送和接收数据全过程的测试结果 五、总结 本篇介绍了一个以太网控制器(MAC)的实例。首先介绍了以太网的基本原理,然后介绍了以太网控制器程序的主要结构和主要功能模块的实现过程。...本章为读者设计自己的以太网控制器提供了一个有用的方案,并且有助于加深对以太网协议的理解。 本篇到此结束,各位大侠,有缘再见!

1.6K20

以太网

以太网已经从最开始的10Mbps的速度发展到了今天的100Gbps的速度。以太网最早由美国的Xerox公司设计。...之后,IEEE802.3将以太网进行了标准化。 以太网因不同的通信介质,所以通信速度会有所差异。...以太网是不可靠,面向无连接的服务。以太网将错误的包直接丢弃掉。 以太网帧的前端有一个叫做前导码的部分。它由0,1交替形成,表示一个以太网帧的开始,也是对端网卡能够保持同步的标志。...在这之后就是以太网帧本体。前导码和SFD部分一共占据了8字节。 以太网首部占据了14个字节。...在以太网数据帧的末尾还会有一个FCS,它用于检查帧是否损坏。发送端会计算FCS,接收端也会计算FCS。 LLC,SNAP实际上是逻辑链路控制。

88920

用ModelSim搭建可看代码覆盖率的千兆以太网控制器的仿真环境!

一、把所有代码分为设计代码文件夹hdl和仿真文件夹sim 在hdl文件夹下是对应所有的设计代码,本文中选用opencores网站中十百千自适应的MAC控制器作为设计代码。...testbench下存放最顶层的testbench.v;bfm文件夹下存放以太网phy的简单模型产生以太网数据包的激励,时钟复位产生模块及数据对比模块;filelist文件夹下存放验证环境中所有的.v文件列表文件...(内附开源C代码));in_out下就存放每个不同的测试例对应的激励数据包和经过MAC核控制器后出去的数据包;run目录下存放运行的批处理文件和sim的tcl脚本文件;testcase下存在各种不同的测试例

1.1K20

以太网用户侧接口(以太网协议转换方案)

图2:以太网连接器处地平面挖空处理 图3:以太网连接器处保护地和数字地分割处理 图4:以太网连接器处数字地处理 那么哪一个是正确的呢?...以太网布局和地平面的功能 为了进一步了解以太网系统和连接器不同部分下面的接地层的概念,让我们简要介绍一下以太网和RJ45连接器的布线要求。...通常首选较短的布线,尤其是在较高频率(如千兆以太网和更高)下,以减少损耗。每个使用以太网的人都非常清楚这些要求。...在非屏蔽电缆上使用屏蔽连接器在抑制电缆中接收到的 EMI 方面没有任何好处,但在实际的以太网系统中也不会造成问题。 千兆以太网和更快的以太网将使用类似的方案,在磁性元件中有四个差分对和共模扼流圈。...对于速度较低的以太网,漏电感将主导噪声传输,因为载波频率较低。相比之下,电容寄生将在更高的以太网速度下占主导地位,因为载波频率更高。

1K20

车载以太网(上)

: 车载以太网的物理连接 从硬件的角度看,以太网接口电路主要由MAC(Media Access Control)控制器和物理层接口PHY(Physical Layer,PHY)两大部分构成,如下图所示...考虑到芯片面积及模拟/数字混合架构的原因,通常,将MAC集成进微控制器而将PHY留在片外。...,因嵌入式芯片厂商一般都将MAC集成在MCU内部,而PHY芯片则由OEM或控制器供应商自己选择: CPU不集成MAC与PHY,MAC与PHY采用集成芯片。...从上面可知,车载以太网主要采用基于一对双绞线进行数据传输的100BASE-T1或1000BASE-T1标准,而我们电脑则使用RJ45接口采用基于4对双绞线进行数据传输的1000BASE-TX标准,因此当我们用电脑测量控制器以太网时...以太网Packet: 对于以太网II帧的传输,以太网控制器在开头插入前同步码和起始帧定界符(SFD),用于指示传输开始。前同步码,开始帧定界符和以太帧的组合称为以太网数据包。

1.8K31

以太网自协商

以太网自协商一、自动协商模式自动协商模式是端口根据另一端设备的连接速度和双工模式,自动把它的速度调节到最高的公共水平,即线路两端能具有的最快速度和双工模式。...自动协商标准允许不同以太网标准的设备-从10BasT到1000BaseT,在网络中共存,减少网络不兼容的风险,使以太网可以平滑的向快速以太网和千兆以太网过度。...随着同轴千兆以太网的出现,网络上需要支持三种速率的设备:10M、100M和1000M。为此IEEE提出一种自动协商技术来消除不同技术之间的接口兼容性问题。...link code word并不是以太网通信结点的有效数据,只被PHY接口模块识别。以太网端口电口工作模式简单介绍。...1.以太网口的两端工作模式(10M半双工、10M全双工、100M半双工、100M全双工、自协商)必须设置一致。

1210

千兆以太网(3):发送——组建以太网心跳包

二、心跳包粗略框架   本次以太网的心跳包结构如下所示:   本次发送 64 个全为0的数据,当然这个数据是自定义的,因此心跳包总长度为118。...(1) 校验和字段清0   假设有一段以太网包前面没有对 IP 校验和字段清0,而是赋了别的值,例如 IP 首部为:45 00 00 30 80 4c 40 00 80 06 b5 2e d3 43 11...可以看到,IP 伪头部包含了 IP 源地址,IP 目的地址,一个字节的 0,协议号和 UDP_len ,在前面做的千兆以太网图像传输项目中 IP 源地址,IP 目的地址,协议号都是固定的,而通过上一篇博客设计的...3、计算的时序安排   ip_checksum 和 udp_checksum 计算完成,该数据填充的位置已经经过,那么就没办法将数据填充到原来填充 0 的位置了,但我们想要将其组成完整的以太网包,这一步是不可避免的...至此,我们组建了以太网发送的心跳包,下一步就可以发送了。 参考资料:威三学院FPGA教程

1.3K20

再谈以太网帧格式

又重新读了一遍《tcp/ip详解》,又重温了一遍万年知识以太网,为了不能忘却的回忆,我决定原文摘抄一遍。 以太网这个术语是指DEC、Intel和Xerox公司在1982年联合公布的一个标准。...不幸的 是,802.3定义了一个与以太网不同的帧格式。 下图定义了两种不同形式的封装格式: ?...在以太网帧格式中,类型字段之后就是数据,而在802帧格式中,跟随在后面的3字节的802.2LLC和5字节的802.2SNAP。 目的服务访问(DSAP)和源服务访问点(SSAP)的值都设为0xaa。...再接下来的2个字节类型字段和以以太网帧格式一样。 CRC字段用于帧内后续字节差错的循环冗余码检验。 802.3标准定义的帧和以太网的帧都有最小长度要求。...802.3规定数据部分必须至少为38字节,而对于以太网,则要求最少要有46字节。为了保证这一点,必须在不足的空间插入填充字节。 最后注意一下,mtu的大小只是指帧内容的大小,不包括帧头。

98220

以太网基础知识

theme: condensed-night-purple 以太网 以太网是一种为多台计算机能够彼此自由和廉价地相互通信而设计的通信技术 以太网原型-网线 以太网最初是通过一根网线连接的,还有一个收发器设备是用来连接不同网线之间信号的...中继式集线器:在以太网(10BASE-T/100BASE-TX)中简称集线器。如果需要区分仅对信号进行放大中继的传统集线器和交换式集线器,则将前者称为中继式集线器,也叫共享式集线器。...c中采用交换式集线器(交换机)的结构连接网络设备,现在采用的以太网结构也是这种,集线器会判断接受发mac地址发送给指定设备,因此网络包只会流向真正处理这个网络包的设备。...以太网性质 尽管以太网经历了数次变迁,但其基本的3个性质至今仍未改变,即将包发送到MAC头部的接收方MAC地址代表的目的地,用发送方MAC地址识别发送方,用以太类型识别包的内容。...因此,大家可以认为具备这3个性质的网络就是以太网 无线局域网 类似以太网不过无线局域网没有以太类型是另外一个属性表示包的内容,所以可以将无线局域网也看成以太网

60720

-控制器

控制器是你整个应用的核心,因为它们决定了 HTTP 请求将被如何处理。 什么是控制器? 让我们试试看:Hello World!...什么是控制器? 简而言之,一个控制器就是一个类文件,是以一种能够和 URI 关联在一起的方式来命名的。...定义默认控制器 CodeIgniter 可以设置一个默认的控制器,当 URI 没有分段参数时加载,例如当用户直接访问你网站的首页时。...每当控制器被加载时, 这些辅助文件将自动加载到内存中,这样就可以在控制器的任何地方使用它们的方法。...你可以在任何地方处理,你会发现控制器中的一些情况比模型简单,反之亦然。 就这样了! OK,总的来说,这就是关于控制器的所有内容了。

3.6K20
领券