1. 高速信号概述

做硬件设计这些年,我经常被问到同一个问题:“到底多快的信号才算高速?”

有人说频率超过 50MHz 就算高速。也有人说,只要信号边沿够陡,哪怕只有 1MHz 也算高速。嗯,这两种说法都有道理,但都不够全面。今天咱们就把这事彻底说清楚。

1.1 什么是高速信号

先给个我自己的定义:当信号的传输延迟与信号上升时间可比拟时,它就是高速信号。

说白了,不是看时钟频率多高,而是看信号从 0 变到 1 那一下有多快。你想想看,一个 1MHz 的方波,如果上升时间只有 100ps,那它的高频分量能到 GHz 级别。这时候走线长度哪怕只有几厘米,也得按传输线来处理。

核心判断标准:

  • 当走线长度 > 信号上升沿空间长度的 1/6 时,必须按高速信号处理
  • 上升沿空间长度 = 上升时间 × 信号传播速度(约 15cm/ns 在 FR4 上)

我在项目中遇到过最典型的例子:一块低速板卡,主频才 10MHz,但用了 1ns 上升时间的缓冲器。结果板子跑起来各种串扰、反射,折腾了两周才发现是边沿太陡惹的祸。从那以后,我选器件时一定会看 datasheet 里的上升时间参数。

1.2 信号上升时间与带宽的关系

这里有个经典公式,做高速设计的人必须刻在脑子里:

BW = 0.35 / Tr

其中 BW 是信号带宽(单位 GHz),Tr 是上升时间(单位 ns)。

举个例子:一个上升时间为 1ns 的信号,它的带宽大约是 350MHz。这意味着什么?意味着你的 PCB 走线、过孔、连接器,都得能支持到 350MHz 的频段,否则信号就会失真。

上升时间 (Tr) 信号带宽 (BW) 典型应用
10 ns 35 MHz 传统 TTL 逻辑
1 ns 350 MHz DDR3 / LVDS
100 ps 3.5 GHz DDR5 / PCIe Gen4
35 ps 10 GHz SerDes / 光模块

我的经验:选器件时别只看工作频率,一定要看上升时间。两个标称频率相同的芯片,上升时间可能差 5 倍,设计难度天差地别。

为什么会是 0.35 这个系数?它来自高斯响应的上升时间与截止频率的关系。实际工程中,我们常用 0.35 作为保守估计。如果信号边沿更接近梯形波,有时也会用到 0.5。我个人习惯用 0.35,留点余量总没错。

1.3 高速设计的挑战

好,现在我们知道什么是高速信号了。那实际设计时会遇到哪些坑?我列几个最常见的:

1.3.1 信号反射

阻抗不匹配时,信号会在传输线上来回弹。就像你对着山谷喊话,回声会干扰原声。我曾经调试一块 FPGA 板,DDR 数据线眼图总是不开,最后发现是走线阻抗做了 55Ω,而芯片要求 50Ω,差了 10% 就导致反射严重。

1.3.2 串扰

相邻走线之间的电磁耦合。你走线上跑的信号,会“串”到旁边的线上去。我记得有一次做 8 层板,两根平行走了 5cm 的时钟线,间距只有 3W,结果一根线上的抖动直接让另一根线的时序裕量归零。

1.3.3 电源完整性

高速开关时,芯片瞬间抽取大电流,如果电源路径阻抗太高,电压就会掉下去。我见过最夸张的一次,一个 1.8V 的 DDR 供电,在读写时跌到了 1.6V,直接导致数据出错。

1.3.4 时序收敛

信号跑得快,但也要跑得准。建立时间和保持时间必须满足。随着频率提高,时序窗口越来越窄,走线长度差几个毫米都可能出问题。

避坑指南:我曾经在 10Gbps 的 SerDes 设计中,因为忽略了过孔的残桩效应,导致眼图完全闭合。后来在过孔下方加了背钻,才把问题解决。记住:每多一个过孔,就是多一个阻抗不连续点。

下面这张图总结了高速信号的核心知识体系:

高速信号知识体系 高速信号 定义:Tr vs 走线延迟 带宽:BW = 0.35/Tr 挑战:四大难题 信号反射 串扰 电源完整性 时序收敛 设计要点总结 • 判断高速信号:走线长度 > Tr × 15cm/ns ÷ 6 • 带宽估算:BW(GHz) = 0.35 / Tr(ns) • 四大挑战:反射、串扰、电源、时序 • 设计原则:阻抗连续、间距足够、电源低阻、时序留裕

总结一下今天的内容:高速信号的核心不是频率,而是上升时间。上升时间决定了信号带宽,带宽决定了你的 PCB 设计难度。反射、串扰、电源完整性、时序收敛,这四大挑战会贯穿整个高速设计流程。

嗯,这一章先到这里。记住那个 0.35 的公式,后面每一章都会用到它。