资讯详情

88e6321/88e6320 寄存器调试配置配置

Marvell 88E6390X

芯片作为PHY和SERDES使用

MII 连接标准接口 MAC 和 PHY。MII 是 IEEE-802.3 定义以太网标准, MII 可同时控制多个接口 PHY。

MII包括两个接口:

1.数据接口,用户 MAC 和 PHY 之间收发 Ethernet 数据 2.管理接口通常被称为 MDIO,MIIM 或者 SMI。    这个接口用于 MAC 从 PHY 读取相关管理寄存器的值或 PHY 将数据写入管理寄存器。

MDIO 也被称为 MIIM,或者,它是 IEEE802.3 定义标准 MII 用于接口的一部分 MAC 配置 PHY。MDIO 有以下两条信号线:

1. MDC 时钟线:MDIO 时钟信号,由 MAC 驱动 PHY  2. MDIO 数据线:双向数据线 MAC 和 PHY 传输配置信息

MDIO 总线只支持 MAC 作为主要设备,PHY 从设备。MIDO 分别支持两个时序.

MDIO接口最初是由IEEE RFC802.3中22号条款的定义在初始定义中是单独的MDIO可访问32个不同的接口PHY提供状态和控制信息的32个寄存器,例如:连接状态、传输速度能力、当前选择的传速、低压消耗时的下电情况、全双工还是半双工、自动协商、错误提示以及反馈信息等等。

为了满足10G在以太网设备的普及和发展中IEEE 802.3ae 第45条MDIO界面提供了额外的规范:

1)65536个寄存器可通过32个端口访问32个不同设备;

2)为访问10G以太网提供额外的OP码和ST可直接访问寄存器地址;

3)端到端报错信号;

4)环回模式控制;

5)低压电气标准。

22号条款

22号条款的MDIO帧格式定义如下:

45号条款

为了弥补22号条款中定义的缺陷,45号条款增加了对低压设备的支持,最低可达1.2V,同时扩展帧格式,可以访问更多的设备和寄存器。

45号MDIO通信帧格式如下:

第45号条款的主要变化是如何访问寄存器。在第22中,一个单独的帧指定要读或写的地址和数据,同时完成了这些工作。45号中改变这种范式,第一个地址帧发送到指定的MMD与寄存器一起,然后发送第二帧进行读写。

该芯片有两种寻址模式:单芯片寻址和多芯片寻址。

对于多芯片搜索,需要为芯片设置非零SMI地址(ADDR[4:0]反码)。在多芯片搜索模式下,只有两个寄存器(0x00:SMI Command Register 0x01:SMI Data Register)它可以在内部使用PORT两个寄存器间接访问寄存器。

通过向SMI Command Register[9:5]写入内部SMI内部写入设备地址[4:0]SMI访问每个寄存器地址Port决定前是写入还是读出内部寄存器。

通过向SMI Data Register[15:0]位写入或读取SMI Command Register设置的寄存器内容。

对于单芯片寻址,它SMI地址为0x00(针对整个芯片)ADDR[4:0]=0x1F。

在单芯片搜索模式下,Port都有各自的SMI地址(针对每个内部Port),Port0-Port9对应的SMI地址分别为0x0-0x(直接访问),port10对应0xA。

若Port0、1、2等。PHY,必须使用以下内容SMI地址,0x00对应Port0,0x01对应Port1,这样PPU自动轮询各个PHY获取连接状态、速度、双工状态、流控状态等信息PHY需要使用Global2 offset 0x18、0x19进行访问。对于Port3a、Port4的内部PHY地址映射为0x03、0x04;Port9、Port10的内部SERDES映射为0x9、0xa,同样,它也需要使用Global2 offset 0x18、0x19进行访问。

前面提到的两个非常重要的寄存器,即Global2 offset 0x18、0x在单芯片寻址模式下,19寄存器PHY和SERDES这两个寄存器必须间接访问寄存器。

Global2 offset 0x18 (SMI PHY Command Register)寄存器

bit[12]指定帧协议是22号时序还是45号时序。在22号协议下,可以访问多芯片存储Command Register寄存器一样,[9:5]写入SMI将设备地址写入[4:0]SMI访问每个寄存器地址Port内部寄存器,[11:10]决定是写入还是读出。45号协议,[9:5]指定port,[4:0]指定设备类别。

与SMI Data Register同样,通过[15:0]位写入或读取SMI Command Register设置的寄存器内容。

第一个地址帧在45号协议下发送到指定的MMD还有寄存器,我们要把它拿走PHY Command Reg[11:10]0x00=write Address register,也就是说,在第一帧的最后16位数据中,指定要操作的寄存器的地址。然后在第二个数据帧中PHY Command Reg[11:10]0x01=write data register,也就是说,数据写在第二帧的最后16位。

Uboot 中访问 MDIO (SMI/MIIM)

在项目开发中,往往需要 uboot 阶段通过 MDIO 总线去配置 PHY 或者 SWITCH。

更多指令

示例:

6390x config  **配置端口10** //0xa:P10   //0x34a: //      bit[3:0]-0xa-接口配置模式-SGMII //        bit[6]  -0x1-EEE(Energy Efficient Ethernet)Enabled //        bit[9:8]-0x3 = 10Gb or 2500Mbps miiwrite 0xa 0 0x34a  **配置端口5**  //p5        p177  p355 //addr:0x1c   //regi:0x19  SMI Data register //regi:0x18  SMI Command register //在45号条款中 ///发送到指定的第一个地址帧MMD和寄存器,然后发送第二帧进行读写。  miiwrite 0x1c 0x19 0x2000   //将数据0x2000写到PHY data寄存器0x19中 miiwrite 0x1c 0x18 0x82a4    //将数据0x82a4写到PHY Command寄存器中 //0x82a4  //bit[15]:0x1-这个位置是第一次操作SMI时,要放在1,并且在操作中SMI完成后会自动清零 //bit[14:13]:0x0-内部访问-用于访问该设备中包含的内部PHYs和/或serde。 //bit[12]:0x0——SMI MODE——Generate IEEE 802.3 Clause 45 SMI frames //bit[11:10]:0x0—— Write Address Register //bit[9:5]:写入SMI设备地址-0x15——Port 10 Lane 1 = Port 5 & its registers are accessed at MI address 0x15
//bit[4:0]:device class(clause 45)
//第一个地址帧的后16位为Addr,即data register中的数据0x2000

miiwrite 0x1c 0x19 0x8140    //将数据0x8140写到PHY data寄存器0x19中
miiwrite 0x1c 0x18 0x86a4    //将数据0x86a4写到PHY Command寄存器中
bit[11:10]:0x01—— Write data Register
//第二个帧,后16位为要写入的数据,即data register中的数据0x8140

标签: 9a传速表传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台