精华内容
下载资源
问答
  • 以太网MAC协议–CSMA/CD协议 @(计算机网络) 为了通信的方便,以太网采用了两种重要的措施: CSMA/CD协议 采用无连接的工作方式:传输数据之前不用建立连接 对发送的帧不进行编号,也不要求接收方发回确认帧。这样...

    以太网MAC协议–CSMA/CD协议
    @(计算机网络)

    为了通信的方便,以太网采用了两种重要的措施:

    CSMA/CD协议

    采用无连接的工作方式:传输数据之前不用建立连接
    对发送的帧不进行编号,也不要求接收方发回确认帧。这样做的理由:局域网的信道质量非常好,因为信道质量产生的错误的概率非常小。区别于数据链路层协议。
    所以,以太网提供的是无连接不可靠的服务。尽最大努力交付即可。

    关于CSMA/CD协议,我只是单纯的学习了这些协议的特点,没有看到它们就是以太网的具体采用的协议。

    中文名称是:载波监听多路访问/冲突检测协议。

    所以有必要解释一下中文的含义:

    载波监听:站点发送数据前,先检查总线上是不是已经有数据在传输,如果有就暂缓发送,避免冲突。实质是:冲突发生前尽量避免。
    多路访问:即总线型网络。以太网就是总线型网路。
    冲突检测:边发送边对介质上电压信号进行检测,当电压摆动值超过一定门限时就认为发生了冲突。一旦发生冲突就停止发送数据,然后根据协议进行重传。
    退避算法总结:以太网采用截断二进制指数回退算法解决冲突后重发问题。核心思想是:发生冲突后的站点在停止发送数据后,不是立即重发而是推迟一个随机的时间。

    具体做法是:

    确定单位回退时间。通常取冲突窗口的值,即传输512bit数据用时,叫作时槽。
    定义参数k,等于重传次数,不能超过10,即k = min(n,10)
    取r,0≤r<2kr,0≤r<2k,重传的时延就是r倍的单位回退时间。
    重传达到16次仍然不成功,表示当前同时发送数据的站点过多,连续发生冲突,丢弃该帧,向上层报告,任务完不成。。
    这里看出来,重传次数越多,等待时间越长。动态退避,利于系统稳定。


    ————————————————
    版权声明:本文为CSDN博主「DrCrypto」的原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u011240016/article/details/53200258

    展开全文
  • 以太网MAC协议

    万次阅读 2018-08-07 17:31:11
     MAC发送模块可将上层协议提供的数据封装之后通过MII接口发送给PHY。发送模块可接收主机接口模块的数据帧开始和数据帧结束标志,并通过 主机接口从外部存储器中读取要发送的数据,然后对数据进行封装,然后通过PHY...

    MAC发送模块

      MAC发送模块可将上层协议提供的数据封装之后通过MII接口发送给PHY。发送模块可接收主机接口模块的数据帧开始和数据帧结束标志,并通过 主机接口从外部存储器中读取要发送的数据,然后对数据进行封装,然后通过PHY提供的载波侦听和冲突检测信号,在信道空闲时通过MII接口将数据以4位的 宽度发送给PHY,最后由PHY将数据发送到网络上。
      发送模块由CRC生成模块(crc_gen)、随机数生成模块(random_gen)、发送计数模块(tx_cnt) 和发送状态机(tx_statem_模块等四个子模块组成。

    CRC生成模块(crc_gen)

      该模块用于计算发送数据的CRC值,并将CRC值添加到数据帧的帧校验序列字段(FCS)内。为了提高效率,并考虑到MAC与PHY的数据通道 为4位,设计时可采用4位并行CRC计算方法,算法中可使用一个次态函数,并通过循环迭代来模拟移位操作。这样,发送模块就可以在边发送数据到PHY的同 时,一边计算CRC,这样当数据发送完时,CRC值也计算完成了。

    随机数生成模块(random_gen)

      如在发送过程中检测到冲突,发送模块就先发送拥塞码(jam),随后停止发送。在下次重新发送之前,发送模块会先执行一个后退 (backoff)操作,即发送模块等待一个半随机(生成的随机数有范围限制)的时间之后再开始发送。该随机数就是由随机数生成模块产生的,它采用经典的 截断二元指数后退算法,后退的时间是一个与发生冲突次数有关的随机数,随着冲突的次数增多,用于生成该随机数的范同也将逐渐增大,以减少冲突的概率。

    发送计数模块(tx_cnt)

      发送计数模块由半字节计数器(nibcnt)、字节计数器和重试次数计数器(retrycnt)三个计数器组成。其中重试次数计数器 (retrycnt)可对发送某个帧时产生冲突次数进行计数。当计数器的值达到最大重试次数时,它将放弃重试,并丢弃发送缓冲器内的数据。同时,重试计数 器的值还被随机数生成模块用于计算下次重试之前需要后退(backoff)的时隙的个数。
      半字节计数器和字节计数器分别用于对发送过程中的半字节(bibble)和字节进行计数。
      信道忙时,发送模块会一直等待,半字节计算器一直计数。当计数到额定等待时间时(最大帧长度的两倍,即3036字节时间),系统会根据设置放弃 发送或是一直等待(可选功能)。一旦信道空闲再进入帧间间隙周期(≥96个比特时间),南半字节计数器从零开始计数。帧间间隙分为两个部分,在前2/3个 周期中,如果检测到信道忙信号,则半字节计数器复位,发送模块重新开始等待;在后l/3周期中,即使检测到信道忙信号,半字节计数器也不会复位,而是继续 计数,以保证每个站点公平的竞争信道。而当半字节计数器的值达到帧问间隙周期时,此时如果有数据等待发送,发送模块就开始发送数据。此外,半字节计算器还 用于前序码的生成和短帧的判断,在数据帧的长度小于最小帧时,发送模块必须根据系统设置进行填充或不填充。
      字节计算器还可用于滞后冲突(late collision)和超长帧的判断。当滞后冲突发生时,正在发送的数据将被丢弃。超长帧的判断则是从对帧内容(包括FCS)进行字节计数,如果字节计数 器的值大于最大有效帧的长度(1518个字节),发送模块就根据系统设置(是否支持超长帧)丢弃或发送。

    发送状态机模块(tx_statem)

      发送状态机模块是整个发送模块的核心,主要用于控制整个发送过程。发送状态机由I-die_State、Preamble_State、 Data0_State、 Da-tal_State、 PAD_State、 FCS_State、 IPG_State、Jam_State、BackOff_State、Defer_State等十个状态组成。
      系统复位后,发送模块即进入Defer_State状态,并一直检测载波侦听(CarrierSense)信号。当载波侦听信号变成无效(表示 信道空闲)时,状态机进人IPG_State状态。尔后,在等待一个帧间间隙之后,状态机则进入Idle_State状态。如果在帧间间隙的前2/3个周 期检测到信道忙信号,状态机将重新回到Defer_State状态。
      状态机进入Idle_State状态之后,发送模块将检测载波侦听信号和主机接口的发送请求。若主机模块请求发送,状态机将进入 Preamble_State状态,发送模块即通知PHY发送开始,同时开始发送前序码(7个0x5),然后发送帧起始定界符(SFD,0xd)。状态机 进入Data0_State后,发送模块将发送一个数据字节的低4位(LSB nibble),将当其进入Data1_State状态后,发送模块则发送数据字节的高4位(MSB nibble)。随后,状态机一直在data0和data1之间循环,直到数据发送完毕。当还剩一个字节时,主机模块将通过发送帧结束信号来通知发送模 块。如果数据帧的长度大于最小帧并且小于最大帧,状态机就进入FCS_State状态,此时发送模块则将CRC生成模块生成的CRC值添加到帧的FCS字 段中并发送给PHY。帧发送完之后,状态机进入Defer_State状态,之后是IPG_State和Idle_State状态。此后状态机又回到初始 状态,以重新等待新的发送请求。
      如果数据帧的长度小于最短帧,状态机就进入PAD_State状态,发送模块根据系统设置是否在数据之后来添加填充码。然后,状态机进入 FCS_State状态。如果数据帧的长度大于最大帧,而系统设置又支持发送超长帧,那么,状态机就进入FCS_State状态;如果不支持发送超长帧, 发送模块将放弃发送,状态机直接进入Defer状态,然后是IPG状态,最后回到Idle状态。
      在发送数据的过程中,发送模块会一直检查冲突检测信号(collision detected)。如果发现冲突且状态机正处于Preamble_State,状态机将在发送完前序码和SFD之后进入Jam_State,并发送拥塞 码,然后进入BackOff状态,以等待重试。之后,状态机经过Defer和IPG回到Idle状态。如果此时重试次数计数器的值没有达到额定值,发送模 块将重新开始发送刚才的帧,并将重试次数计数器的值加1;如果发现冲突且状态机处于data0、da-tal或FCS状态,而且没有超过冲突时间窗,那么 状态机将马上进入Jam状态发送拥塞码,之后经过BackOff、Defer、IPG、回到Idle,并根据重试计数器的值决定是否重新发送刚才的数据 帧;如果检测到发生冲突的时间超过了冲突时间窗,状态机将进入Defer状态,然后经过IPG到IDLE状态,并放弃重试。
      在全双工模式中发送帧时,不会进行延迟(defer),发送的过程中也不会产生冲突。此时,发送模块将忽略PHY的载波侦听和冲突检测信号。当 然,帧与帧之间仍然需遵守帧间间隙的规则。因此,全双工模式下的发送状态机没有Jam_State、。BackOff_State、 Defer_State三个状态。

    MAC接收模块

      MAC接收模块负责数据帧的接收。当外部PHY将通信信道的串行数据转换为半字节长的并行数据并发送给接收模块后,接收模块会将这些半字节数据 转换为字节数据,然后经过地址识别、CRC校验、长度判断等操作后,再通过主机接口写入外部存储器,并在主机接口模块的接收队列中记录帧的相关信息。此 外,接收模块还负责前序码和CRC的移除。
      接收模块由CRC校验模块、地址识别模块、接收计数器模块和接收状态机模块等四部分组成。
      接收模块中的CRC校验模块可通过检查输入帧的CRC值来验证帧的正确性。其算法与CRC生成模块相同。
      地址识别模块用于决定是否接收收到的帧,接收模块首先接收输入帧而不管目的地址,随后由地址识别模块检查帧中的目的地址。若MAC被设置为混杂模式(Promiscuous mode)且目的地址为广播地址,同时允许接收广播帧,帧则被接收。否则,帧被丢弃。
      接收计数器模块由字节计数器(Bytecnt)和帧间间隙计数器(IFGcnt)组成。字节计数器在接收帧过程中将对字节进行计数,以用于识别 帧中的各个字段(前序码、目的地址字段、数据、FCS等)以及判断超长帧。帧间间隙计数器则对两帧之间的间隔时间进行计数,以用于判断下一帧数据的开始。 IEEE 802.3规定,两帧之间的间隔至少必须为96个比特时间(10 Mbps中为9 600ns,100 Mbps中为960 ns)。如果两帧之间的间隔小于要求,帧将被丢弃。
      接收状态机为接收模块的核心,用于控制整个接收过程。接收状态机由Idle_State、Drop_State、Preamble_State、 SFD_State、 Da-ta0_State、Data1_State等六个状态组成。
      系统复位后,状态机处于Drop_State。如果此时MII的数据有效信号(MRxDV)无效,状态机马上进入Idle_State状态,并一直处于Idle等待接收输入帧。
      当接收模块检测到数据有效信号之后,状态机将进入Preamble_State,并开始接收前序码。此后再状态机进入SFD_State,接收 一个字节的帧起始定界符,之后,根据IFGcnt计数器的值进入不同的状态。如果,IFGcnt所确定的时间大于96个比特时间,状态机将进入Data0 状态以接收字节的低4位,然后是Data1状态,并接收字节的高4位,之后又回到Data0状态。状态机就一直在这两个状态之间循环,直到数据接收完毕 (PHY清除MRxDV信号)后进入Idle,以重新等待接收新的数据;如果接收到帧起始定界符时,IFGcnt计数器所确定的时间小于96个比特时间, 那么状态机将进入Drop_State状态,并一直维持该状态直到数据有效信号结束(PHY清除MRxDV信号)。之后,状态机再同到Idle等待接收新 的数据。
      如果在接收前序码、帧起始定界符和数据期间,数据有效信号被清除,那么,状态机将回到Idle。

    MII管理模块

      MII管理模块用于控制MAC与外部PHY之间的接口,以用于对PHY进行配置并读取其状态信息。该接口由时钟信号MDC和双向数据信号MDIO组成。MII管理模块则由时钟生成模块、移位寄存器模块和输出控制模块三部分组成。
      时钟生成模块可以根据系统时钟和系统设置中的分频系数来产生MII管理模块的时钟信号MDC(10 Mbps速率时为2.5 MHz,100 Mbps速率时为25 MHz)。
      移位寄存器模块既可用于对PHY的控制数据进行写入操作,也可用于对PHY的状态信息进行读出操作。写控制数据时,移位寄存器根据其他模块的控 制信号将并行控制数据转换为串行数据;而在读状态信息时,移位寄存器则将PHY的串行数据转换为并行数据,MAC中的其他模块可将该并行数据写入适当的寄 存器。
      由于MDIO是双向信号,因此,输出控制模块就用来决定MDIO是处于输入状态还是输出状态。当MDIO处于输出状态时,移位寄存器输出的串行控制数据在经过时钟同步后发送到PHY;当MDIO处于输入状态时,移位寄存器将数据线上的串行数据转换为并行数据。

    主机接口模块

      主机接口是运行以太网的上层协议(如TCP/IP协议)与MAC控制器的接口。通过该接口,上层协议可以设置MAC的工作模式并读取MAC的状态信息。该接口还可用于上层协议与MAC之间的数据交换。
      主机接口模块内有一组寄存器,可用于存储上层协议对MAC设置的参数以及MAC的状态信息。上层协议对MAC设置的参数包括接收超短帧的使能、 添加填充码使能、持发送超长帧的使能、添加CRC校验值使能、全双工模式或半双工模式、持超长延迟(Defer)使能、混杂模式 (Promiscuous)、接收广播帧使能、发送和接收使能、中断源和中断使能、帧间间隙的长度、最大帧和最小帧的长度、重试限制和冲突时间窗、MII 地址和MII控制命令、接收和发送队列的长度以及本机MAC地址等。
      上层协议通过MAC发送和接收数据的操作主要由主机接口模块内的两个队列来进行管理,这两个队列用于对等待发送的多个帧和接收到的多个帧进行排队。
      发送队列主要记录等待发送的帧的相关信息、发送该帧时对MAC的设置以及该帧发送完之后产生的状态信息。帧的相关信息包括帧的长度、帧在外部存 储器中的地址、该帧是否准备好发送以及队列中是否还有其它帧等待发送;对MAC的设置则包括中断使能、填充使能、CRC使能;产生的状态信息包括成功发送 之前的重试次数、由于达到重试限制而放弃发送、发送时产生的滞后冲突以及成功发送之前发生过的延迟。
      接收队列主要对接收到的数据帧进行排队并记录每个接收到的帧信息。这些信息包括帧的长度、是控制帧还是普通数据帧、帧中包含无效符号、接收到的 帧太长或太短、发生CRC错误、接收的过程中发生滞后冲突、帧是否接收完、队列中是否还有其它已接收到的帧以及帧存储在外部存储器中的地址等。该位同时队 列中还有针对每个帧的设置位,用来设置是否在接收到帧时产生中断。
      发送队列和接收队列的长度都可以在控制寄存器中进行设置。

    展开全文
  • 以太网MAC协议研究与FPGA实现
  • 在设计MAC逻辑之前,要先清楚MAC与PHY之间的接口以及以太网协议细节,这样才能保证网络的兼容性。本文内容多来自Xilinx官方文档pg051 tri-mode-eth-mac.1.GMII接口此处使用较简单的GMII接口,接口列表及说明如下:TX...

    eee3e19314d1aa548f471529983465ef.png

    上篇该系列博文中通过MDIO接口实现了PHY芯片的状态检测,验证其已处于1000M 全双工工作模式。在设计MAC逻辑之前,要先清楚MAC与PHY之间的接口以及以太网协议细节,这样才能保证网络的兼容性。本文内容多来自Xilinx官方文档pg051 tri-mode-eth-mac.

    1.GMII接口

    此处使用较简单的GMII接口,接口列表及说明如下:18183b097ea7af2f763e089344818722.png

    TX方向时钟tx_mac_aclk由FPGA给出,RX方向时钟gmii_rx_clk由PHY芯片经过内部CDR模块从接收数据中恢复出来,时钟频率均为125MHz。TX和RX方向基本均由三个信号组成:d en/dv er。查看开发板上使用的以太网PHY芯片RTL8211EG-VB datasheet中AC Characteristics:50caa76b5b8cb389683cf8b4d3e660b4.png

    数据在时钟上升沿采样,因此TX端可在时钟下降沿更新数据,RX端时钟上升沿接收数据即可。

    2.以太网协议规范

    MAC层的功能就是“成帧解帧”,接下来查看以太网数据帧结构和规则。f032dfe591079d04735e7b652acf4405.png

    前导码、帧头符以及FCS在TX方向被MAC添加,在RX方向被剔除。接收端MAC逻辑会将SFD作为接收帧起始时刻。

    关于长度/类型字段之前有所提及,Ethernet II帧长度/类型域解释为上层协议类型(字段值大于等于1536,即十六进制的0x0600),而IEEE802.3同样位置是长度字段(字段值小于等于1500,即十六进制的0x05DC)。若为EthernetII帧,接收端MAC不做处理。若为IEEE802.3帧,MAC则检测帧长度是否与该字段匹配,并在必要时去除pad域。

    Pad域用来确保前导码和SFD之后的部分长度在64byte以上,也就是保证pad+data≥46byte。当data≥46byte时,不需要pad域。

    FCS采用CRC32,多项式为:d0a3e3276a7e5155d65bbfd21076aad1.png

    接收端MAC会检测每个帧的FCS值,如果接收FCS错误,则MAC指示给上层用户接收到一个错误帧。

    IEEE 802.3-2008规定,以太网帧间隔为96-bit时间以上。对于千兆网来说,t = Tbit*96 = (1/1000*1000*1000)*96s = 96ns。

    3.流量控制高级话题

    当收发两端的时钟频率出现细微偏差,持续一段时间后会导致频率较慢的一方缓存溢出。此时较慢一方需要告诉另一方暂停一段时间发送数据包以减轻自身缓存压力。“告诉”这一动作通过发送指定控制帧完成。72f9dde15d9633d7fe3eac05e38e54fe.png

    其中mac control parameters代表对方暂停的时间单位个数,在千兆网中若该数据为1则表示对方需暂停发送数据包512ns。当一方缓存即将溢出,则发送暂停帧。若此时正在发送数据帧,则等待当前帧发送完成。接收方收到pause帧后,依次检测目的地址及类型域,若目的地址为多播地址(01-80-c2-00-00-01)且符合pause帧操作码,则提取控制参数数值并通过拉低发送侧rdy信号来暂停发送。

    4.系统设计

    先定义MAC接口:用户侧包括发送数据通道,接收数据通道以及事件统计通道。PHY芯片侧同样有发送通道 接收通道和MDIO管理通道。用户侧数据位宽32bit,PHY芯片侧位宽8bit。23357df7eb3e45431aeea7a30b162551.png

    MAC内部设计结构可以参照Altera的以太网MAC IP核,可见内部主要由发送和接收处理逻辑、缓存部分、配置与统计以及MDIO控制模块五部分组成。b1e940093602ea7f012150a606cde922.png

    模块划分和接口定义完成后,开始写RTL代码。后续以发送方向为例,完成代码设计、行为仿真、时序约束及STA、板级调试。

    展开全文
  • 在设计MAC逻辑之前,要先清楚MAC与PHY之间的接口以及以太网协议细节,这样才能保证网络的兼容性。本文内容多来自Xilinx官方文档pg051 tri-mode-eth-mac. 1.GMII接口  此处使用较简单的GMII接口,接口列表及说明...

      上篇该系列博文中通过MDIO接口实现了PHY芯片的状态检测,验证其已处于1000M 全双工工作模式。在设计MAC逻辑之前,要先清楚MAC与PHY之间的接口以及以太网协议细节,这样才能保证网络的兼容性。本文内容多来自Xilinx官方文档pg051 tri-mode-eth-mac.

    1.GMII接口

      此处使用较简单的GMII接口,接口列表及说明如下:

       TX方向时钟tx_mac_aclk由FPGA给出,RX方向时钟gmii_rx_clk由PHY芯片经过内部CDR模块从接收数据中恢复出来,时钟频率均为125MHz。TX和RX方向基本均由三个信号组成:d en/dv er。查看开发板上使用的以太网PHY芯片RTL8211EG-VB datasheet中AC Characteristics:

      数据在时钟上升沿采样,因此TX端可在时钟下降沿更新数据,RX端时钟上升沿接收数据即可。

    2.以太网协议规范

      MAC层的功能就是“成帧解帧”,接下来查看以太网数据帧结构和规则。

      前导码、帧头符以及FCS在TX方向被MAC添加,在RX方向被剔除。接收端MAC逻辑会将SFD作为接收帧起始时刻。

      关于长度/类型字段之前有所提及,Ethernet II帧长度/类型域解释为上层协议类型(字段值大于等于1536,即十六进制的0x0600),而IEEE802.3同样位置是长度字段(字段值小于等于1500,即十六进制的0x05DC)。若为EthernetII帧,接收端MAC不做处理。若为IEEE802.3帧,MAC则检测帧长度是否与该字段匹配,并在必要时去除pad域。

      Pad域用来确保前导码和SFD之后的部分长度在64byte以上,也就是保证pad+data≥46byte。当data≥46byte时,不需要pad域。

      FCS采用CRC32,多项式为:

      接收端MAC会检测每个帧的FCS值,如果接收FCS错误,则MAC指示给上层用户接收到一个错误帧。

       IEEE 802.3-2008规定,以太网帧间隔为96-bit时间以上。对于千兆网来说,t = Tbit*96 = (1/1000*1000*1000)*96s = 96ns。

    3.流量控制高级话题

      当收发两端的时钟频率出现细微偏差,持续一段时间后会导致频率较慢的一方缓存溢出。此时较慢一方需要告诉另一方暂停一段时间发送数据包以减轻自身缓存压力。“告诉”这一动作通过发送指定控制帧完成。

      其中mac control parameters代表对方暂停的时间单位个数,在千兆网中若该数据为1则表示对方需暂停发送数据包512ns。当一方缓存即将溢出,则发送暂停帧。若此时正在发送数据帧,则等待当前帧发送完成。接收方收到pause帧后,依次检测目的地址及类型域,若目的地址为多播地址(01-80-c2-00-00-01)且符合pause帧操作码,则提取控制参数数值并通过拉低发送侧rdy信号来暂停发送。

    4.系统设计

      先定义MAC接口:用户侧包括发送数据通道,接收数据通道以及事件统计通道。PHY芯片侧同样有发送通道 接收通道和MDIO管理通道。用户侧数据位宽32bit,PHY芯片侧位宽8bit。

      MAC内部设计结构可以参照Altera的以太网MAC IP核,可见内部主要由发送和接收处理逻辑、缓存部分、配置与统计以及MDIO控制模块五部分组成。

      模块划分和接口定义完成后,开始写RTL代码。后续以发送方向为例,完成代码设计、行为仿真、时序约束及STA、板级调试。

    转载于:https://www.cnblogs.com/moluoqishi/p/9728344.html

    展开全文
  • 摘要: 本文介绍了基于现场可编程门阵列(FPGA) 的以太网MAC 子层协议的硬件实现方法. 硬件结构上由控制模 块、发送模块和接收模块3个部分组成,发送模块和接收模块采用状态机控制数据发送和接收的过程,完成数据的封装...
  • 基于FPGA_的以太网MAC_子层协议设计实现
  • 文章提出一种基于AMBA 协议的双通道以太网MAC 架构,通过设计RGMII 接口单元,实现双通道以太网MAC 接口 的引脚复用,有效地降低了芯片管脚数目,同时通过设计PLB2AHB 协议转换单元,实现通信数据AHB 总线与PLB 总 ...
  • 之前上课一直模糊的CSMA/CD进行系统性整理。...在以太网中,多个节点共用一个channel,保证channel可以有效的为节点提供数据传输服务,CSMA/CD就是其中一个MAC协议 提供不可靠的服务。 工作原理: (1)发...
  • 基于FPGA的以太网MAC子层协议设计实现 作者:徐洪波 俞承芳时间:2006-11-29来源:电子设计信息网-www.edires.net 摘要: 本文介绍了基于现场可编程门阵列(FPGA) 的以太网MAC 子层协议的硬件实现方法. 硬件...
  • 以太网MAC帧格式

    万次阅读 2018-05-06 18:48:10
     常用的以太网MAC帧格式有两种标准 :DIX Ethernet II标准,IEEE 的 802.3 标准。 Ethernet II和IEEE802.3的帧格式比较类似,主要的不同点在于前者定义的2字节为包类型,而后者定义的2字节...
  • MAC地址和以太网协议

    2019-11-20 18:04:13
    MAC地址:每个物理设备唯一的地址:ipconfig /all查看 ----------------------------------------------------------------------------------------...以太网的格式如下: 目的地址和源地址就是上面的MAC地...
  • 作者原创,转载注明出处
  • 以太网IEEE802.3协议根据LAN的特点,把数据链路层分成LLC(逻辑链路控制)和MAC(介质访问控 制)两个子层.MAC层协议作为数据帧...介绍了基于FPGA的10M/100M以太网MAC控制器的设计,整个设计用 VErilog语言实现.
  • 还会接触到协议两个字,只要拥抱协议,狗跟猫也可以快乐地通信~初学数据链路层,读者可能会突然有点懵,数据链路层和物理层啥区别?如果将物理层比喻为水泥路,那么交通工具比如汽车就是数据链路层提供的服务,实际...
  • 以太网MAC是什么?

    千次阅读 2015-09-12 21:43:16
    MAC即Media Access Control,即媒体访问控制子层协议.该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与...在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送
  • 介绍了基于FPGA的以太网MAC控制器的设计,主要实现了半双工模式下CSMA/CD协议、全双工模式下Pause帧的收发,以及对物理层芯片中寄存器的读写访问。设计采用Verilog硬件描述语,按照自顶向下的设计流程描述了以太网的...
  • 文章目录认识以太网简介以太网帧格式认识MAC地址对比理解IP地址与MAC地址认识MTUMTU对IP数据报进行分组重组认识ARP协议认识DNS协议 认识以太网 简介 以太网是现实世界中最普遍的一种计算机网络。以太网有两类:第一...
  • 以太网物理层(MAC)接口协议

    千次阅读 2020-03-14 21:09:30
    常见的以太网物理层接口协议项目总结常见的以太网物理层接口协议MII接口GMII接口RGMII接口总结 项目总结 ‘本次的以太网协议,我们将完成与前面DDR3相类似的实验内容,也就是FPGA开发板发送视频内容,在电脑的上位机...
  • 之前在使用Altera的三速以太网MAC IP的基础上,完成了UDP协议数据传输。此次为了将设计移植到xilinx FPGA上,需要用到xilinx的三速以太网MAC IP核,当然也可以自己用HDL编写,但必须对数据链路层协议有非常清晰的...
  • 以太网数据包协议格式MAC层ARP层IP层ICMPUDPTCP、UDP数据包大小的限制 MAC层 帧格式: 帧介绍: 帧间隙(IFG): 网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备。 不管 10M/100M/...
  • 文章目录MAC地址以太网交换机 MAC地址 Individual/Group 单站、组、广播 ,Global/Local 全球、本地管理 前插入:7个前同步码,实现比特同步,可能是为了比特前面一样好看吧。。。最后一个是表示MAC的声明符 6...
  • 本文是基于FPGA高性价比、可灵活配置的特点,也是当前流行的“微控制 器+FPGA”的嵌入式系统设计方式,所以我们提出了基于FPGA的实现...等网络协议)以及以太网MAC协议,并提供标准MII接口,通过外接PHY实现 网络连接。
  • 以太网协议

    2019-11-20 11:21:39
    TCP/IP四层模型中,以太网协议采用RFC894格式,如下图: 格式如下: 1、目的地址与源地址: 这里都指的是 MAC 地址。每一个主机对应唯一的一个 MAC 地址,是由网卡决定的,长度是 48 位,所以这里的目的地址与源...
  • 针对嵌入式设备接入以太网的需求,搭建了基于LPC23/24XX微控制器和DM9161A器件的硬件平台,在对LPC23/24XX以太网MAC(介质访问控制层)控制器的特性进行分析的基础上,开发和移植LwIP协议栈的网络接口层和操作系统模拟...
  • 以太网的分类 最初的以太网是有施乐公司的Palo Alto研究中心(PARC)于1976年创建的。数据速率为10Mbps的...以太网的媒体访问控制(MAC) 当节点或者站点被连接到一条共同的链路或使用一条共同的链路时,叫做多...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,444
精华内容 977
关键字:

以太网mac协议