深入解析以太网PHY寄存器:从基础原理到嵌入式网络实战调优

📅 2026/7/27 22:19:58
深入解析以太网PHY寄存器:从基础原理到嵌入式网络实战调优
1. 以太网PHY寄存器嵌入式网络开发的基石在嵌入式网络开发中尤其是基于MCU的以太网应用我们常常会接触到“MAC”和“PHY”这两个核心部件。MAC媒体访问控制器负责数据链路层的帧组装、CRC校验和流量控制通常集成在微控制器内部。而PHY物理层收发器则是真正负责将数字信号转换为能在网线上传输的模拟信号并处理所有物理层细节的“翻译官”。很多开发者对MAC层的驱动编写比较熟悉但对PHY的配置往往停留在“调用库函数初始化”的层面一旦遇到链路不稳、自协商失败或需要深度诊断时就感到无从下手。实际上PHY内部是一个高度可配置的状态机其所有行为——从链路建立、速度双工协商到信号质量监测、错误报告——都通过一系列寄存器来控制与反馈。以德州仪器TI的Tiva™ TM4C129x系列微控制器为例其内部集成的以太网控制器就包含了一套完整的PHY寄存器组。深入理解这些寄存器意味着你不仅能解决棘手的网络连接问题还能对链路性能进行精细调优例如在严苛的工业环境中实现更快的链路恢复或优化功耗。今天我们就以这套寄存器为蓝本抛开晦涩的数据手册语言从一线开发者的视角拆解PHY寄存器中断、状态与配置的实战逻辑。2. PHY寄存器全景与访问机制解析在深入每个寄存器之前我们必须先建立两个核心认知PHY寄存器的组织架构以及如何通过MCU安全地访问它们。这就像在操作一台精密仪器前必须先看懂它的控制面板和操作手册。2.1 寄存器地图标准与扩展以太网PHY的寄存器遵循IEEE 802.3标准定义同时芯片厂商会在此基础上增加扩展功能。标准寄存器地址从0x00到0x0F通常被称为“MII管理寄存器”或“基本寄存器集”。我们讨论的Tiva™ PHY寄存器EPHYBMCR, EPHYBMSR等正是对应这部分。地址0x10及以后则属于厂商特定Vendor Specific的扩展寄存器用于实现芯片的独特功能如Tiva™中的EPHYCFG1、EPHYCFG2。访问这些寄存器需要通过一个名为MDIOManagement Data Input/Output的双线串行接口。在Tiva™系列中这部分硬件逻辑已被集成到以太网MAC模块内我们只需通过内存映射的寄存器地址如EPHYBMCR对应的地址0x000进行读写即可。但请注意这里的“地址0x000”是PHY内部的偏移地址MCU需要通过特定的MAC管理接口寄存器如EMACMIIADDR,EMACMIIDATA来发起一次MDIO读写事务从而间接操作PHY寄存器。许多驱动库如TivaWare已经封装了PHYRead和PHYWrite函数简化了这个过程。注意在进行任何PHY寄存器写操作时务必遵循“读-修改-写”原则。即先读取整个寄存器的当前值只修改目标位再将新值写回。这是因为PHY寄存器中通常包含大量“保留位Reserved”和“只读位RO”。盲目地直接写入一个值可能会意外改变保留位的状态影响芯片的兼容性与稳定性。数据手册中反复强调“Software should not rely on the value of a reserved bit.” 并且在读写操作中应保持保留位的值不变。2.2 核心寄存器功能分类为了便于理解我们可以将PHY寄存器按功能分为四大类控制类寄存器用于命令PHY执行某项操作或进入某种模式。典型代表是EPHYBMCR基本模式控制寄存器你可以通过它复位PHY、启停自协商、设置强制速度/双工、甚至进入环回测试模式。这类寄存器通常是“只写一次生效”或“自清零”。状态类寄存器用于反映PHY的当前运行状况和链路能力。EPHYBMSR基本模式状态寄存器是最重要的一个它实时告诉你链路是否已建立LINKSTAT、自协商是否完成ANC、远端是否报告故障RFAULT。这类寄存器是只读的是诊断问题的第一手资料。标识与能力类寄存器用于标识PHY的“身份”和“天赋”。EPHYID1和EPHYID2组成了PHY的全球唯一标识符OUI型号版本。EPHYANA自协商通告寄存器则宣告了本设备支持的能力如“我支持100M全双工和流量控制”。中断与特殊功能类寄存器用于管理事件通知和配置高级特性。EPHYRIS/EPHYIM/EPHYMISC构成了完整的中断状态、屏蔽和清除机制。EPHYCFG1和EPHYCFG2则提供了诸如快速自协商、增强型MDI/MDIX自动翻转、链路丢失恢复等高级调优选项。理解这个分类有助于我们在解决问题时快速定位该查阅哪个寄存器。接下来我们将深入最核心、最常用的几组寄存器。3. 中断管理寄存器组详解与实战编程中断是嵌入式系统实现高效事件响应的关键。PHY中断能够及时通知MCU链路状态的变化如链路断开Link Down、自协商完成、或发生远端故障避免MCU不断轮询状态寄存器。Tiva™的PHY中断管理由三个寄存器精密配合完成原始中断状态、中断屏蔽和已屏蔽中断状态/清除寄存器。3.1 EPHYRIS原始中断状态寄存器EPHYRIS寄存器是中断信号的源头。它只有一个有效位INT (Bit 0)。当这个位被置为1时表示PHY检测到了一个需要报告的事件并通过EN0INTR硬件信号线向MCU的中断控制器发出了中断请求。关键点只读RO软件不能直接写此寄存器来清除中断标志。试图写入是无效的。触发源中断可能来自内部集成PHY也可能来自通过EN0INTR引脚连接的外部PHY。这为系统设计提供了灵活性。状态锁存一旦事件发生INT位会保持为1直到通过特定方式清除。如果不清除即使中断条件已消失该位依然为1可能导致软件误判。在驱动程序中我们通常不会直接频繁读取EPHYRIS因为它反映的是所有未被屏蔽的原始中断。更常见的做法是读取EPHYMISC。3.2 EPHYIM中断屏蔽寄存器EPHYIM寄存器用于控制哪些中断事件能真正传递到系统中断控制器。它同样只有**INT (Bit 0)**一个可读写位。写入0屏蔽PHY中断。即使EPHYRIS.INT1也不会向MCU内核产生中断信号。写入1使能PHY中断。当EPHYRIS.INT1时中断信号会被放行。在系统初始化时通常先屏蔽中断EPHYIM 0完成所有配置后再使能。在进入低功耗模式前也可能需要屏蔽此中断。3.3 EPHYMISC已屏蔽中断状态与清除寄存器这是中断处理流程中的核心操作寄存器。它的设计非常巧妙将状态查询和清除功能合二为一。读操作读取EPHYMISC返回的值是EPHYRIS EPHYIM的结果。即它只显示那些已使能且已发生的中断状态。这是你在中断服务程序ISR中首先要读取的寄存器以确认中断来源。写操作向EPHYMISC的INT位写入1会清除EPHYRIS寄存器中对应的INT位。写入0无效。这是一种“写1清除”Write-1-to-Clear机制。中断处理实战流程 假设我们已使能了PHY中断EPHYIM.INT 1。当链路状态发生变化时硬件流程如下PHY内部事件触发置位EPHYRIS.INT 1。由于中断已使能该信号传递至MCU中断控制器触发以太网MAC中断因为PHY中断是汇总到MAC中断的。MCU跳转到以太网中断服务程序ISR。在ISR中首先读取EPHYMISC。若其INT位为1则表明当前触发的正是PHY中断。随后向EPHYMISC的INT位写入1以清除EPHYRIS中的中断标志位。这是至关重要的一步不清除会导致中断持续触发。最后根据具体需求读取EPHYBMSR等状态寄存器判断是链路建立、断开还是其他故障并执行相应的应用层逻辑如重连、报警等。避坑指南数据手册的Note部分特别提醒“The Ethernet MAC interrupt is an ORd summary of both the masked EMACRIS register output and this register.” 这意味着以太网MAC中断是MAC自身中断如发送完成、接收就绪和已屏蔽的PHY中断EPHYMISC状态的“或”结果。因此在你的MAC中断服务程序中必须同时检查MAC状态寄存器如EMACRIS和EPHYMISC以准确区分中断源。一个常见的错误是只检查了MAC状态忽略了PHY中断导致链路变化事件得不到处理。4. 核心控制与状态寄存器链路建立的指挥官如果说中断寄存器是系统的“警报器”那么控制与状态寄存器就是指挥链路建立与运行的“控制台”和“仪表盘”。EPHYBMCR和EPHYBMSR是使用频率最高的两个寄存器。4.1 EPHYBMCR基本模式控制寄存器这是一个典型的命令寄存器通过写入特定的位来驱使PHY行动。我们逐位分析其关键作用MIIRESET (Bit 15 软件复位)向此位写1将复位PHY的MII管理接口相关寄存器EPHYBMCR,EPHYANA,EPHYANNPTR。复位操作完成后该位会自动清零。这是一个异步过程通常需要延时1-2ms以确保复位完成。在PHY初始化开始时执行一次软复位是标准操作。MIILOOPBK (Bit 14 MII环回)置1后PHY内部将发送器数据直接环回到接收器。此模式仅用于芯片自测试和驱动调试可以验证MAC到PHY的数据路径是否正常。在正常网络通信时务必确保此位为0。SPEED (Bit 13 速度选择)与DUPLEXM (Bit 8 双工模式)这两个位在**自协商禁用ANEN0**时才有效。它们用于强制设置端口速率100Mbps/10Mbps和双工模式全双工/半双工。在自协商模式下这些位的设置会被忽略。ANEN (Bit 12 自协商使能)这是最重要的位之一。置1启用自协商PHY将与对端设备自动协商最佳的速度和双工模式。置0则禁用自协商此时必须由软件通过SPEED和DUPLEXM位强制指定模式。现代网络环境中强烈建议启用自协商除非连接到一个已知的、不支持自协商的特定设备。RESTARTAN (Bit 9 重启自协商)向此位写1可以手动触发一次新的自协商过程。这在链路参数改变后或者怀疑自协商僵住时非常有用。该位是自清零的。ISOLATE (Bit 10 端口隔离)置1会隔离PHY与MII接口仅管理接口MDIO/MDC除外。这可以用于软件复位期间防止异常数据或在节能模式下关闭数据通路。PWRDWN (Bit 11 掉电模式)置1使PHY进入低功耗模式。在此模式下只有部分寄存器可访问所有收发功能关闭。唤醒需要清除此位并等待PHY重新初始化。配置示例强制100M全双工// 假设通过MDIO接口写PHY寄存器函数为 PHYWrite(phyAddr, regAddr, data) // 1. 先读取当前值 uint16_t bmcr_value PHYRead(PHY_ADDR, EPHYBMCR); // 2. 清除ANEN设置SPEED1 (100M), DUPLEXM1 (Full) bmcr_value ~(1 12); // 清除ANEN (Bit12) bmcr_value | (1 13); // 设置SPEED1 bmcr_value | (1 8); // 设置DUPLEXM1 // 3. 写回寄存器 PHYWrite(PHY_ADDR, EPHYBMCR, bmcr_value);4.2 EPHYBMSR基本模式状态寄存器这是一个只读的“信息显示屏”实时反馈PHY的当前状态和固有能力。LINKSTAT (Bit 2 链路状态)这是最常被轮询的位。为1表示链路已正常建立无论10M还是100M为0表示链路断开。你可以结合中断在链路状态变化时快速响应。ANC (Bit 5 自协商完成)为1表示自协商过程已成功完成。在启用自协商后软件应轮询此位或等待足够时间以确保协商完成然后再进行后续网络操作。RFAULT (Bit 4 远端故障)为1表示对端设备通过自协商报文报告了故障。这是一个重要的诊断信息。此位在读取后会自动清零或者通过PHY复位清零。能力指示位 (Bits 11-14)10BTHD,10BTFD,100BTXHD,100BTXFD。这些只读位表明了本PHY硬件所支持的能力。例如一个仅支持10M半双工的老旧PHY其100BTXFD位就是0。这些信息通常用于UI显示或日志记录。JABBER (Bit 1 干扰检测)检测到过长的非法帧“Jabber”帧时此位会被锁存为1直到读取该寄存器后清零。这有助于诊断物理层干扰问题。状态检查与诊断流程 当网络连接不稳定时一个基础的诊断步骤就是读取EPHYBMSR。检查LINKSTAT确认物理链路是否正常。如果自协商启用检查ANC确认协商是否成功完成。检查RFAULT确认对端是否报告问题。检查能力位确认本地PHY支持的模式是否符合预期。如果问题持续可以尝试读取EPHYANLPA自协商链路伙伴能力寄存器查看对端设备通告了哪些能力以判断协商结果是否合理。5. 自协商寄存器组链路建立的“外交协议”自协商是以太网设备之间自动确定最佳通信模式速度、双工、流量控制的协议。它通过在一端发送快速链路脉冲FLP序列其中包含“链路代码字”LCW来交换彼此的能力信息。EPHYANA、EPHYANLPA、EPHYANER等寄存器正是这一过程的控制和反馈窗口。5.1 EPHYANA自协商通告寄存器这个寄存器用于宣告本设备的能力。在自协商过程中PHY会将此寄存器的内容编码到FLP脉冲中发送给对端。你需要根据设备实际能力来配置它。技术能力位 (Bits 5-9)10BT,10BTFD,100BTX,100BTXFD,100BT4。你的PHY支持哪些模式就把对应的位置1。例如一个常见的100M PHY会设置10BT1,10BTFD1,100BTX1,100BTXFD1表示支持10M半/全双工和100M半/全双工。流量控制位 (Bits 10-11)PAUSE对称暂停和ASMDUP非对称暂停。这是实现IEEE 802.3x流量控制的关键。如果你的MAC层支持流量控制并希望启用它就需要正确设置这些位。例如若设备支持发送和接收PAUSE帧则设置PAUSE1。协商结果会反映在EPHYCTL寄存器中。NP (Bit 15 下一页)指示本设备是否希望进行“下一页”交换。下一页用于交换标准能力之外的自定义信息普通应用通常设置为0。配置示例通告支持100M全双工及流量控制uint16_t ana_value 0; ana_value | (1 0); // SELECT字段固定为0x1表示IEEE 802.3 ana_value | (1 5); // 10BT ana_value | (1 6); // 10BTFD ana_value | (1 7); // 100BTX ana_value | (1 8); // 100BTXFD ana_value | (1 10); // PAUSE (对称流量控制) // 注意不设置ASMDUP表示不支持非对称流量控制 PHYWrite(PHY_ADDR, EPHYANA, ana_value);5.2 EPHYANLPA自协商链路伙伴能力寄存器这是一个只读寄存器用于查看对端设备通告的能力。自协商完成后这里的内容就固定下来直到下一次协商。它的位定义与EPHYANA基本对应。诊断价值当链路协商结果不符合预期时例如你希望是100M全双工但实际只建立了10M半双工读取EPHYANLPA是首要的诊断步骤。你可以看到对端到底通告了哪些能力。可能的原因有网线质量差导致100M协商失败、对端设备是老旧设备只支持10M半双工、或者对端强制指定了模式且未开启自协商。ACK (Bit 14 确认)此位为1表示对端已确认收到本端的能力通告。这是自协商握手成功的标志之一。5.3 EPHYANER自协商扩展寄存器这个寄存器提供了自协商过程的额外状态信息对于调试复杂的协商问题很有帮助。LPANABLE (Bit 0)为1表示链路伙伴支持自协商。如果此位为0但LINKSTAT却为1说明链路是通过“并行检测”机制建立的即一端自协商另一端强制模式。PDF (Bit 4 并行检测故障)当一端启用自协商另一端为强制模式时PHY会尝试并行检测。如果此过程检测到故障例如信号不兼容此位会被置1。NPABLE (Bit 2) LPNPABLE (Bit 3)分别表示本端和对端是否支持“下一页”功能。自协商失败排查思路检查物理连接网线、接头、对端设备是否通电。读取EPHYBMSR确认LINKSTAT和ANC。如果LINKSTAT1但ANC0可能是并行检测模式。读取EPHYANLPA检查对端通告的能力是否包含你期望的模式。如果对端能力为空或很低问题可能在对端。检查EPHYANER查看LPANABLE确认对端是否支持自协商。查看PDF确认并行检测是否报错。核对EPHYANA配置确认本端通告的能力是否正确、完整。尝试强制模式作为临时测试或最终解决方案可以禁用自协商EPHYBMCR.ANEN0并强制设置速度和双工。但这可能牺牲兼容性且必须确保对端也设置为相同的强制模式。6. 高级配置与调优寄存器实战应用除了标准功能Tiva™ PHY还通过EPHYCFG1和EPHYCFG2提供了一系列高级配置选项用于应对特殊场景和性能调优。这些是解决疑难杂症的“高级工具箱”。6.1 EPHYCFG1链路行为与性能调优FASTANEN 与 FANSEL (Bits 4, 3:2 快速自协商)标准自协商过程可能需要数百毫秒。在需要快速建立链路的工业控制或高可用性系统中这个延迟可能不可接受。FASTANEN置1启用快速自协商模式FANSEL用于选择具体的超时参数如Break Link Timer, Link Fail Inhibit Timer。使用时必须确保链路两端PHY都支持并配置了相同的快速自协商参数否则可能导致协商失败或链路不稳定。LLR (Bit 7 链路丢失恢复)在噪声较大的环境中短暂的信号干扰可能导致链路频繁地“Up/Down”抖动。启用LLR机制后PHY在检测到信号丢失时会等待一个短暂的“恢复期”约几百微秒而不是立即报告链路断开。如果干扰在恢复期内消失链路可以保持UP状态避免了不必要的链路震荡和上层协议如TCP的超时重传。FAMDIX 与 RAMDIX (Bits 6, 5 自动MDI/MDIX)MDI/MDIX自动翻转功能允许使用直连网线或交叉网线连接任意两个设备。FAMDIX在强制100M模式下加速翻转过程。RAMDIX则是一种“鲁棒”模式用于解决一端自协商、一端强制模式时可能出现的MDI/MDIX死锁问题。在复杂的网络拓扑或使用老旧设备时启用RAMDIX可以增加连接成功率。TDRAR (Bit 8 链路断开时自动运行TDR)TDR时域反射计是一种电缆故障诊断功能。启用此位后每次链路断开PHY都会自动执行一次TDR测试其结果可以用于分析电缆长度或故障点如开路、短路。这对于需要远程监控线路质量的场景非常有用。6.2 EPHYCFG2信号检测与接口控制RXERRIDLE (Bit 2)在IDLE状态无数据传输时下检测接收符号错误。启用此功能可以帮助发现持续的底层信号质量问题这些问题在数据传输时可能被掩盖。ENLEDLINK (Bit 4 增强LED功能)通常PHY的链路LED在任意链路建立时都会点亮。将此位置1后LED仅在100M全双工链路建立时才点亮。这为现场维护人员提供了一个快速识别高速、全双工优质链路的视觉指示。EXTFD (Bit 5 扩展全双工能力)这是一个特殊的兼容性选项。当本端PHY设置为自协商或强制100M且对端为强制100M模式时若此位置1PHY将强制以全双工模式工作。这可以解决与某些不按标准实现的全双工设备的兼容性问题但需谨慎使用。实战配置案例优化工业环境下的链路稳定性假设我们开发一款用于工厂车间的工业网关网络环境存在一定电气噪声且要求设备上电后能快速建立网络连接。// 1. 首先进行标准PHY初始化复位、设置自协商通告等 PHY_StandardInit(); // 2. 读取当前CFG1配置 uint16_t cfg1 PHYRead(PHY_ADDR, EPHYCFG1); // 3. 启用链路丢失恢复防止短暂干扰导致链路抖动 cfg1 | (1 7); // 设置LLR位 // 4. 启用鲁棒自动MDI/MDIX应对复杂的线缆连接情况 cfg1 | (1 5); // 设置RAMDIX位 // 5. 可选启用快速自协商缩短上电后的联网时间 // 注意需确认对端交换机也支持快速自协商否则可能适得其反 // cfg1 | (1 4); // 设置FASTANEN位 // cfg1 ~(0x3 2); // 清除FANSEL旧值 // cfg1 | (0x1 2); // 设置FANSEL为01b (中等速度) // 6. 写回配置 PHYWrite(PHY_ADDR, EPHYCFG1, cfg1); // 7. 设置配置完成标志唤醒PHY如果之前处于配置保持模式 // 通常PHY初始化流程的最后一步会设置EPHYCFG1的DONE位 uint16_t cfg1_done PHYRead(PHY_ADDR, EPHYCFG1); cfg1_done | (1 15); // 设置DONE位 PHYWrite(PHY_ADDR, EPHYCFG1, cfg1_done);7. 常见问题排查与调试技巧实录基于寄存器理解的深度调试是解决网络疑难杂症的终极手段。以下是我在实际项目中积累的一些典型问题场景和排查技巧。7.1 链路无法建立Link Down症状EPHYBMSR.LINKSTAT始终为0。排查步骤硬件检查测量PHY的电源、复位信号、时钟输入25MHz是否正常。检查MDIO/MDC上拉电阻用示波器查看波形是否干净。软件通信检查尝试读取EPHYID1和EPHYID2寄存器。如果能正确读出OUI和型号TI的应为0x2000和0xA221证明MDIO管理接口通信正常。如果读失败检查MDIO初始化时序和引脚配置。检查强制模式冲突确认EPHYBMCR.ANEN自协商使能的设置。如果一端强制100M全双工ANEN0, SPEED1, DUPLEXM1而另一端强制10M半双工链路必然无法建立。尝试将两端都改为自协商模式ANEN1是最通用的解决方法。检查隔离与掉电确认EPHYBMCR.ISOLATE和EPHYBMCR.PWRDWN位是否为0。如果被意外置位PHY的数据通道或整个芯片会被关闭。查看对端能力如果自协商启用读取EPHYANLPA。如果值为0或很小可能是对端设备未上电、网线断开或对端PHY故障。7.2 自协商失败或结果不理想症状EPHYBMSR.LINKSTAT1但ANC0或者链路速率/双工不是预期值如期望100M全双工实际是10M半双工。排查步骤对比通告与接收能力分别读取本端的EPHYANA和对端的EPHYANLPA。找出双方共同支持的最高优先级模式通常是100M全双工 100M半双工 10M全双工 10M半双工。如果共同支持的模式中没有你期望的那结果就是合理的。检查并行检测读取EPHYANER.LPANABLE。如果为0说明对端未启用自协商链路是通过并行检测建立的。并行检测只能确定速度10M或100M双工模式默认为半双工。这解释了为什么有时协商出100M半双工。解决方案是确保对端也启用自协商或本端也改为与对端匹配的强制模式。检查EPHYANER.PDF如果并行检测故障位置1说明在强制模式检测过程中遇到了信号兼容性问题。高级调优对于不稳定的自协商可以尝试调整EPHYCFG1中的FASTANEN/FANSEL快速自协商或LLR链路丢失恢复参数。在长距离或质量差的网线上有时需要禁用快速自协商使用标准更长的超时来增加成功率。7.3 网络通信时断时续症状Ping包偶尔超时LINKSTAT位可能发生频繁变化。排查步骤启用中断监控配置好PHY中断在中断服务程序中记录EPHYBMSR.LINKSTAT的变化。这能帮你确认是物理链路在频繁震荡还是上层协议问题。检查错误计数器除了标准寄存器PHY通常还有扩展寄存器用于统计各种错误FCS错误、符号错误、冲突等。定期读取这些计数器如果某个计数器增长迅速指向了特定的物理层问题如干扰、阻抗不匹配。利用EPHYCFG2.RXERRIDLE启用此功能观察在链路空闲时是否也有错误产生这有助于判断是持续的背景噪声问题。检查流量控制如果通信双方都支持流量控制但未正确协商在全双工模式下可能导致缓冲区溢出和丢包。检查EPHYANA中的PAUSE位设置并确认协商后的EPHYCTL寄存器中的流量控制状态。进行环回测试将EPHYBMCR.MIILOOPBK置1然后从MAC层发送数据包并接收。如果环回测试成功则问题可能在于网线、对端设备或外部干扰。如果环回测试也失败则问题可能在本地MAC-PHY之间的数据路径上。7.4 调试技巧与工具心得寄存器初始化日志在驱动初始化阶段将所有重要PHY寄存器的初始值、配置后的值打印到日志中。这为后续对比分析提供了基准。状态监控线程创建一个低优先级的后台任务定期如每秒一次读取并记录EPHYBMSR、EPHYANLPA以及错误计数器的值。当问题复现时这些历史数据是无价之宝。利用PHY标识符在系统启动时读取EPHYID1/2并与预期值比较。这可以早期发现硬件焊接错误或使用了不兼容的PHY芯片。理解“保留位”数据手册中反复强调不要修改保留位。在调试时如果你发现某个保留位的值在每次读回时都异常这有时可能是硬件故障如电源噪声、信号完整性差的一个微弱信号。