深入浅出:从 MIPI 速率到示波器选型,我们到底在抓什么时钟?

深入浅出:从 MIPI 速率到示波器选型,我们到底在抓什么时钟? 在我们用探头戳向 PCB 板子之前我们得先认清手里的武器示波器以及我们要狩猎的猎物MIPI 信号。一、 示波器的“双煞”带宽与采样率很多人会把带宽和采样率搞混认为采样率高就行了。其实它们把控的是信号的不同维度带宽 (Bandwidth)示波器的模拟前端能让多高频率的信号无损通过。你可以把它理解为“水管的粗细”。对于正弦波带宽就是信号衰减到 -3dB约 70.7%时的频率。但我们测的是方波数字信号方波是由基频和无数次高次谐波组成的。为了在屏幕上看到边缘陡峭的方波而不是一个圆滑的正弦波业界有一个“5倍法则”即示波器带宽至少要是被测时钟频率的 5 倍才能捕获到第 5 次谐波。采样率 (Sampling Rate, GSa/s)信号进入示波器后ADC模数转换器每秒抓取离散数据点的次数。这就好比“相机的快门连拍速度”。哪怕你水管带宽够粗如果连拍速度太慢你也拼凑不出信号的完整原貌。通常采样率需要是带宽的 2.5 倍到 3 倍以上。总结一下单位MHz / GHz频率单位用来描述时钟跳变的速度或者示波器的模拟带宽。GSa/s (Giga-samples per second)采样率单位专属示波器/ADC表示每秒采集多少十亿个点。二、 MIPI 的速率迷局Gbps、Mbps 与 MHz 的关系在看 MIPI D-PHY最常用的显示/摄像头接口手册时你经常会看到这几个单位混用让人十分崩溃。我们来拆解一下Lane Rate (线速率, Mbps / Gbps)这是数据线 (Data Lane)上实际吞吐数据的能力。比如手册上写“单 Lane 最高支持 1.5 Gbps”。这代表这根线上每秒可以传输 1.5 * 10^9 个比特Bit。MIPI Clock Frequency (物理时钟频率, MHz)MIPI D-PHY 采用的是DDR (Double Data Rate)传输方式。意思是时钟的上升沿和下降沿都在传输数据。所以物理时钟线Clock Lane的翻转频率只需要是数据速率的一半。公式非常简单举个例子如果你的数据线速率是 1000 Mbps (1 Gbps)那么物理探头上量到的 MIPI 时钟频率就是 500 MHz。三、 灵魂拷问我们在示波器上抓的是 Pixel Clock 还是 Lane Rate直接上结论你用示波器探头在 PCB 走线上抓到的是基于 Lane Rate 换算出来的 MIPI Clock物理时钟以及 Data 线的波形绝对不是 Pixel Clock要理解这个我们需要区分“逻辑协议层”和“物理层”Pixel Clock (像素时钟)这是“协议层”的逻辑概念。它代表显示控制器SoC 内部每秒钟往外吐多少个像素点。计算公式是$Pixel\ Clock H_{total} \times V_{total} \times Refresh\ Rate$。比如一个典型的 1080P 60Hz 屏幕加上消隐区BlankingPixel Clock 大约在148.5 MHz。这只是一个数学算出来的理论出图速度。Lane Rate / MIPI Clock这是“物理层”的真实电平。SoC 会把这 148.5 MHz 的像素点每个像素拆成 24 根毛24-bit RGB加上各种同步包Vsync/Hsync和协议头最后“揉碎并打包”像流水线一样平均分配到 4 根 MIPI 数据线Data Lanes上并配上一根时钟线Clock Lane进行高速发送。在示波器上能看到什么你无法在物理线上找到一根按 148.5 MHz 稳定翻转的线。你看到的是打包装箱后的高速射频波形。你会看到 MIPI 时钟线在一个特定的极高频率比如几百 MHz下持续翻转在 HS 高速模式下以及在极短暂的时间里退回到特定的高电平状态LP 低功耗模式。四、 实战推演算一算你需要多贵的老板预算当你负责点亮一块屏幕并排查花屏/闪屏问题时如果你需要向老板申请一台示波器你应该怎么计算需要的参数实战场景假设你要驱动一块1920x1080 60Hz的屏幕RGB888 (24 bpp)使用4-LaneMIPI D-PHY 接口。算 Pixel Clock像素时钟算总带宽需求算 Lane Rate每根数据线的速率算 MIPI Clock你要抓的物理时钟推导示波器需求最小带宽445MHz x5 (五倍法则) 2.225GHz最小采样率至少是带宽的 2.5 倍所以需要约 5.5GSa/s 的采样率。这就意味着如果你拿一台 500 MHz 带宽、1 GSa/s 采样率的入门级示波器去测这个 MIPI 信号你看到的时钟波形将会是一个幅度严重衰减、边缘被磨平的正弦波眼图更是完全没法看它会掩盖掉很多真实的硬件问题。