目录
[1. RMII概述](#1. RMII概述)
[1.1. RMII核心参数](#1.1. RMII核心参数)
[1.2. RMII设计](#1.2. RMII设计)
[2. RMII测试方案](#2. RMII测试方案)
[2.1. 测试设备](#2.1. 测试设备)
[2.2. 测试环境](#2.2. 测试环境)
[2.3. 测试项目](#2.3. 测试项目)
[2.3.1. 硬件信号完整性测试(物理层)](#2.3.1. 硬件信号完整性测试(物理层))
[2.3.2. 功能与协议测试(链路层)](#2.3.2. 功能与协议测试(链路层))
[2.3.3. 性能与压力测试](#2.3.3. 性能与压力测试)
[3. RMII测试问题排查](#3. RMII测试问题排查)
1. RMII概述
RMII(Reduced Media Independent Interface,精简介质独立接口)是MII(Media Independent Interface)的简化版本。
核心作用:主要用于以太网中MAC(媒体访问控制)与PHY(物理层)芯片之间的连接。
核心设计目标:是在保证10/100Mbps传输速率的前提下,大幅减少引脚数量,降低PCB布线复杂度和系统成本,广泛应用于资源受限的嵌入式系统(如IoT设备、工业控制、低端路由器等)。

1.1. RMII核心参数
- 速率能力:
仅支持 10Mbps / 100Mbps ,不支持千兆以太网;千兆场景需选用 RGMII 等接口。
- 时钟与速率原理:
-
基准时钟:固定 50MHz
-
100Mbps:双比特传输 × 50MHz = 100Mbps
-
10Mbps:时钟分频为 5MHz,双比特传输 × 5MHz = 10Mbps
-
传输方式:内部做并串 / 串并转换,双边沿采样实现双比特吞吐
- 位宽与引脚:
-
数据位宽:2bit(双比特传输)
-
引脚总数:7 根
-
对比标准 MII(16 根引脚),引脚大幅精简,有效降低 PCB 布线难度与硬件成本。

1.2. RMII设计
RMII(Reduced Media Independent Interface)接口其实就是MII接口的简化版本,将TX_CLK和RX_CLK合并为双向时钟线REF_CLK,由外部的晶振同时给PHY芯片和MAC主控芯片提供时钟信号。将4位的数据线简化为2位。
RMII接口的信号连接如图所示(图中PHY的TX和RX按照MAC侧定义的,即MAC的TX应连接PHY的RX,MAC的RX连接PHY的TX):

| 信号 | 方向 | 位宽 | 含义 |
|---|---|---|---|
REF_CLK |
I(输入,对 MAC 而言) | 1 | 参考时钟,外部晶振产生,100Mbps 时为 50MHz,10Mbps 时为 5MHz。 |
CRS_DV |
O(输出,PHY→MAC) | 1 | 高电平表示接收数据有效(同时包含载波检测与数据有效)。 |
RX_ER |
O(输出,PHY→MAC) | 1 | 高电平表示接收数据错误,接收端不接受该数据。 |
RX_D |
O(输出,PHY→MAC) | 2 | 接收数据总线(RMII 标准为 2bit 数据,通过 DDR 采样实现 10/100Mbps 速率)。 |
TX_EN |
I(输入,MAC→PHY) | 1 | 高电平表示发送数据有效。 |
TX_D |
I(输入,MAC→PHY) | 2 | 发送数据总线(RMII 标准为 2bit 数据) |

- 时钟信号
REF_CLK:这是整个接口的核心,固定由外部提供 50MHz 时钟(100Mbps),10Mbps 模式下通过分频得到 5MHz。
-
它是单向的,由外部晶振 / 时钟源驱动,不随收发方向变化。
-
所有数据信号都以它为基准进行双边沿采样,因此时钟质量直接影响通信稳定性。
功能: MAC 芯片通过这两条线向 PHY 芯片发送要传输的数据帧。
- 在 100Mbps 模式下,数据在 REF_CLK 的每个上升沿发送;
- 在 10Mbps 模式下,数据在每 10 个 REF_CLK 周期(即 100ns)发送一次,并在该周期内保持稳定。
- 接收信号(PHY → MAC)
-
CRS_DV:RMII 的关键复用信号,同时实现了标准 MII 中CRS(载波检测)和RX_DV(接收数据有效)的功能。 -
RX_D[1:0]:2bit 并行数据,在时钟的上升沿和下降沿各传输一组数据,通过 DDR 方式实现双倍吞吐。 -
RX_ER:可选信号,用于上报接收错误,部分精简设计会省略。
- 发送信号(MAC → PHY)
-
TX_EN:发送使能,有效时表示TX_D上的数据是有效的以太网帧数据。 -
TX_D[1:0]:2bit 并行发送数据,同样以 DDR 方式传输。

2. RMII测试方案
2.1. 测试设备
| 设备 | 要求 | 用途 |
|---|---|---|
| 示波器 | 带宽≥1GHz,采样率≥5GSa/s | 眼图、抖动、时序、信号完整性测试 |
| 逻辑分析仪 | 支持 50MHz 同步采样 | 捕获 RMII 数字信号,分析协议帧结构 |
| 以太网测试仪 | 支持 10/100Mbps,带误码率统计 | 吞吐量、丢包率、误码率测试 |
| 可调电源 | 支持纹波噪声测试 | 验证电源波动对 RMII 通信的影响 |
| 测试夹具 / 探针 | 接地弹簧探针 | 减少探头引入的信号反射 |
2.2. 测试环境
- 被测件(DUT):主控(MAC)+ PHY 芯片,工作在 RMII 模式
- 参考时钟源:外部 50MHz 晶振(或主控 / PHY 提供的 REF_CLK)
- 链路配置:
- 回环模式:PHY 内部回环(优先),无需外接网线
- 链路模式:PHY 通过网线连接交换机 / 测试仪器
2.3. 测试项目
2.3.1. 硬件信号完整性测试(物理层)
- REF_CLK 时钟测试
测试点:MAC 侧与 PHY 侧的 REF_CLK 引脚
| 测试项目 | 指标要求 | 测试方法 |
|---|---|---|
| 频率 / 周期 | 100Mbps:50MHz(周期 20ns)10Mbps:5MHz(周期 200ns) | 示波器单次测量频率,统计偏差≤±100ppm |
| 时钟抖动 | 周期抖动(Cycle-Cycle)≤500psRMS 抖动≤50ps | 示波器开启抖动分析功能,长时间统计 |
| 电平参数 | 高电平≥0.7×VDDIO低电平≤0.3×VDDIO峰峰值≥1.8V(典型 3.3V) | 示波器光标测量,避免过冲 / 下冲超过 20% VDD |
| 上升 / 下降时间 | ≤5ns(典型≤2ns) | 测量 10%~90% 电平的边沿时间 |
- 数据 / 控制信号测试(TX/RX)
测试点:TXD1:0、TX_EN、RXD1:0、CRS_DV、RX_ER
| 测试项目 | 测试条件/触发方式 | 核心技术指标要求 | 异常判定与问题说明 |
|---|---|---|---|
| 电平与边沿测试 | 测试TXD、TX_EN、RXD、CRS_DV等所有数据/控制信号,参考REF_CLK信号标准 | 1. 高低电平标准、上升/下降时间与REF_CLK保持一致; 2. 信号过冲/下冲 ≤ 20% VDDIO; 3. 无异常电压波动。 | 过冲/下冲超标,易造成IO端口损坏、电平误触发,导致随机通信报错、链路不稳定。 |
| 眼图测试(关键项) | 以REF_CLK为参考时钟,开启示波器Persist波形叠加模式,100Mbps速率测试 | 1. 眼高 ≥ 150mV; 2. 眼宽 ≥ 0.4UI(100Mbps下UI=10ns,眼宽≥4ns);3. 确定性抖动 ≤ 1ns;4. 随机抖动符合以太网RMII标准。 | 眼图张开不足、轮廓模糊或闭合,说明PCB存在阻抗不匹配、信号串扰、时序偏移问题,会引发丢包、误码、高速速率协商失败。 |
| 建立/保持时序验证 | 以REF_CLK上升沿为基准,分别测试TX、RX双向信号时序 | TX方向(MAC→PHY):TXD、TX_EN建立时间≥2ns,保持时间≥2ns; RX方向(PHY→MAC):RXD、CRS_DV建立时间≥2ns,保持时间≥2ns;时钟数据相对偏移:±0.5ns以内。 | 建立/保持时间不满足、时序偏移超标,会导致信号采样错误、数据解析异常,是RMII接口丢包、通信不稳定的核心时序问题。 |


2.3.2. 功能与协议测试(链路层)
- 硬件回环测试(最底层验证)
目的:验证 MAC 与 PHY 之间的 RMII 接口硬件通路,隔离外部链路影响
-
配置 PHY 寄存器进入内部回环模式(如 Loopback 位使能)
-
MAC 发送递增计数测试帧(如 0x00~0xFF 循环数据),带 CRC 校验
-
接收端对比数据完整性,统计错误帧、丢包数
-
判定:连续发送≥10^6 帧无错误,说明 RMII 接口硬件正常

- 协议层连通性测试
(1)基础连通性
-
测试方法:DUT ping 测试仪器 IP,ping 包大小从 64 字节到 1500 字节递增
-
指标:无丢包、无超时,往返延迟稳定(100Mbps 下≤1ms)
(2)数据收发正确性
-
发送固定模式数据(如全 0、全 1、递增 / 递减数据)
-
接收端通过 Wireshark 抓包,验证数据完整性、CRC 校验结果
-
验证 CRS_DV/TX_EN 信号与数据帧的同步关系(帧开始拉高,帧结束拉低)

2.3.3. 性能与压力测试
- 吞吐量与丢包率测试
-
测试方法:以太网测试仪发送线速流量(100Mbps),持续≥1 小时
-
指标:
-
吞吐量≥95Mbps(无流量控制时)
-
丢包率 = 0,误码率 = 0
-
不同帧长(64/128/512/1500 字节)下性能稳定
-

- 环境与稳定性测试
-
电源波动测试:±10% VDDIO 变化下,链路无中断、无丢包
-
温度循环测试:-40℃~+85℃工作温度,连续工作≥24 小时,无通信异常
-
长时间老化测试:持续发送 / 接收数据≥72 小时,统计错误率

3. RMII测试问题排查
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 链路协商失败 | REF_CLK 质量差、模式配置错误 | 测量时钟频率 / 抖动,检查 PHY 寄存器配置 |
| 随机丢包 | 时序不满足建立 / 保持时间、信号完整性差 | 示波器测 Setup/Hold 时间、眼图,检查等长布线 |
| 大流量下丢包率上升 | 眼图闭合、时钟抖动超标 | 调整终端电阻、优化布线,改善电源滤波 |
| 10Mbps 正常,100Mbps 异常 | 时钟分频 / 倍频错误、带宽不足 | 验证 50MHz 时钟稳定性,检查 IO 带宽设置 |