管理接口状态机分析(三)


1. (RESET_MAC_RX)对核操作

对地址(0x404)写入32'h90000000;//bit 28:Receiver Enable **** bit31:rest

2. (RESET_MAC_TX)对核操作

对地址(0x408)写入32'h90000000;//bit 28:Receiver Enable **** bit31:rest

3. (CNFG_MDIO)对核操作

配置管理寄存器,对地址(500)写入“68”。使能MDIO及配置其速率。

4. (CNFG_FLOW)

配置管理寄存器,对地址(40C)写入“0”。这是流控制配置字。

5. (CNFG_FILTER)

“design_on_board”是个标志位,由(4)来决定的,如果没有管理接口则为0

这里我们设置为1,故将核心设置为混杂模式。对地址“708”写入1

image.png 

混杂模式:如果此位设置为1,则帧过滤器将设置为混杂模式。无论目标地址如何,所有帧都将传递到接收方客户端。

6. (CNFG_FRM_FILTER_1)

配置管理寄存器,对地址(701)写入“32'h040302DA”。

7. (CNFG_FRM_FILTER_MASK_1)

配置管理寄存器,对地址(750)写入“32' hFFFFFFFF“。帧过滤器掩码值

8. (CNFG_FRM_FILTER_2)

配置管理寄存器,对地址(714)写入“32' h025A0605 “。帧过滤器相关

9. (CNFG_FRM_FILTER_MASK_2)

配置管理寄存器,对地址(754)写入“32' hFFFFFFFF“。帧过滤器相关

10. (CNFG_FRM_FILTER_3)

配置管理寄存器,对地址(758)写入“32'h06050403“。帧过滤器相关

11. (CNFG_FRM_FILTER_MASK_3)

配置管理寄存器,对地址(750)写入“32' hFFFFFFFF“。帧过滤器相关

12. (CHECK_SPEED)

如果收到“update_speed_reg”信号后进入“(2)UPDATE_SPEED”状态更新以太网速率。

“serial_command”这个先不考虑,大致流程是搞懂了

通过管理接口访问MDIO接口完全是寄存器映射。表2-37显示了MDIO寄存器列表。有关详细信息,请参阅MDIO接口。仅当使用可选MDIO接口生成内核时,这些寄存器才可用。

image.png 

表4.1 MDIO配置寄存器释义

映射地址为0x500,设定

默认值

类型

描述

31:7

N/A

Ro

保留

6

0

R/W

MDIO启用:

此位为1时,MDIO接口可用于访问连接的PHY设备。

该位为0时,MDIO接口被禁用,MDIO信号保持无效。

只有将Clock Divide设置为非零值时,才允许写入该位。

5:0

0

R/W

这个是配置mdc频率的,规范要求mdc频率不能大于2.5M,为了防止超出规范,Clock Divide值默认为0,也就不启用。

例如例子,s_axi_aclk=100M,Clock Divide为24,mdc = 2M

image.png 

映射地址为0x504,Mido的控制字

默认值

类型

描述

31:29

N/A

Ro

保留

28:24

0

R/W

TX_PHYAD:这可以控制正在访问的PHY地址。

23:21

N/A

Ro

保留

20:16

0

R/W

TX_REGAD:它控制被访问的寄存器地址。

15:14

0

R/W

TX_OP:该字段控制写入1以启动时执行的访问类型。

01写访问

10读访问

13:12

N/A

Ro

保留

11

0

WO

启动:向此位写入1将启动MDIO传输

10:8

N/A

Ro

保留

7

0

RO

MDIO就绪:设置后,MDIO已启用并准备好进行新传输。这也用于识别先前的事务何时完成(例如,读取数据有效)。

6:0

N/A

Ro

保留

映射地址为0x508,Mido的写数据

31:16

N/A

Ro

保留

15:0

0

R/W

写数据

映射地址为0x50C,Mido的读数据

31:17

N/A

RO

保留

16

0

RO

MDIO Ready:这是MDIO控制字的位[7]的副本

15:0

0

RO

读数据

映射地址为0x410,MAC波特率的配置

31:30

10

R/W

MAC的速率配置

00:10Mb/s

01:100Mb/s

10:1Gb/s

当为1Gb/s或2.5Gb/s的速度支持生成TEMAC解决方案时,位[31:30]被硬编码为值10。

当生成TEMAC解决方案以支持10Mb/s和100Mb/s的速度时,位[31:30]仅接受值00来配置10Mb/s的操作,或者接受01来配置100Mb/s的操作 操作。

29:0

N/A

RO

读数据

 






快来扫描下方二维码关注公众号,领取站内所有相关资料,所有哦~

有建议、有需求、有疑问、联系我

<