3. 板级传输线基础与Lattice FPGA接口
当Lattice FPGA的IO速率进入数百Mbps乃至Gbps级别时,PCB走线不再是可以忽略的“导线”,而必须按传输线来对待。传输线的基本模型由单位长度的电感L和电容C构成,特征阻抗Z₀=√(L/C),传播延迟由介质材料与几何结构共同决定。理解微带线、带状线的结构差异,掌握特征阻抗、传播延迟和反射系数的计算与判断方法,是Lattice FPGA高速IO走线建模的基础。
微带线与带状线的结构差异
微带线(Microstrip)是PCB外层走线最常见的传输线形式:信号走线位于顶层或底层,下方是介质层,再下方是完整的参考平面。微带线结构简单、便于布线和探测,但走线暴露在空气中,电磁场一部分在介质中、一部分在空气中,等效介电常数介于空气(εr=1)和板材(εr≈4.2~4.6)之间,通常取有效介电常数εr_eff≈0.475εr+0.67(近似经验式)。这导致微带线的传播延迟对频率和阻焊层厚度较敏感,且容易向外辐射,串扰风险较高。
带状线(Stripline)则将信号走线夹在两个参考平面之间,上下均为介质层。电磁场完全被介质包围,有效介电常数等于板材介电常数εr,传播延迟更稳定,辐射和串扰显著降低。代价是布线层数增加、过孔引入的阻抗不连续更复杂,且无法像微带线那样直接在表层探测信号。对于Lattice FPGA的SerDes通道、DDR接口等对信号完整性要求较高的网络,优先选择带状线布线是常见做法。
特征阻抗的计算与Lattice FPGA IO的匹配要求
特征阻抗Z₀是传输线最重要的参数,它决定了信号在走线上传播时看到的瞬时阻抗。对于微带线,常用IPC-2141近似公式:Z₀ = 87/√(εr+1.41) × ln(5.98H/(0.8W+T)),其中H为介质厚度(mil),W为线宽(mil),T为铜厚(mil)。对于带状线,Z₀ = 60/√εr × ln(4H/(0.67πW(0.8+T/W)))。这些公式的精度在±10%以内,适合工程估算,精确值需通过场求解器或PCB厂商的阻抗计算工具获取。
Lattice FPGA的IO标准(如LVCMOS、LVDS、SSTL等)对走线阻抗有明确要求。以常见的LVCMOS33为例,单端阻抗通常要求50Ω±10%;LVDS差分对要求差分阻抗100Ω±10%。如果走线阻抗偏离目标值,信号在源端和负载端会产生反射,导致过冲、下冲和振铃。反射系数Γ = (Z_L - Z₀)/(Z_L + Z₀),当Z_L = Z₀时Γ=0,无反射;当Z_L = ∞(开路)时Γ=+1,全反射;当Z_L = 0(短路)时Γ=-1,负全反射。实际设计中,FPGA输出端通常串联22Ω~33Ω的源端匹配电阻,使驱动端输出阻抗与走线阻抗接近,从而抑制二次反射。
传播延迟与Lattice FPGA的时序约束
传播延迟tpd = √(LC) = 1/v,其中v为信号在介质中的传播速度。对于FR-4板材,微带线的tpd约为140~160 ps/inch,带状线约为170~180 ps/inch。这个差异在Lattice FPGA的时序约束中必须体现:例如,一个125MHz的DDR接口,时钟周期为8ns,若走线长度为2英寸,微带线延迟约300ps,带状线延迟约350ps,两者相差50ps,约占周期的0.6%。对于更高速的SerDes通道(如Lattice CertusPro-NX的10Gbps SerDes),单位间隔UI仅为100ps,50ps的延迟差异足以影响眼图张开度,必须通过精确的走线长度匹配和延迟补偿来消除。
在实际建模中,建议按以下流程操作:首先根据Lattice FPGA的IO标准确定目标阻抗(单端50Ω或差分100Ω);然后选择传输线类型(微带线或带状线),利用PCB厂商提供的叠层参数计算线宽;接着用场求解器或阻抗计算工具验证Z₀和tpd;最后在时序约束中写入走线延迟,并预留±10%的余量。对于差分对,还需控制线间距S,使差分阻抗Zdiff = 2Z₀(1 - 0.48exp(-0.96S/H))达到目标值。
反射系数的判断与端接策略
反射系数Γ的绝对值越大,反射越严重。工程上通常要求|Γ| < 0.1,即阻抗偏差控制在±10%以内。当|Γ| > 0.2时,过冲可能超过电源电压的20%,对Lattice FPGA的IO可靠性构成威胁。常见的端接策略包括:源端串联端接(适用于点对点、单负载)、终端并联端接(适用于多负载、总线)、戴维南端接(适用于TTL/CMOS电平)、RC端接(适用于低功耗场景)。对于Lattice FPGA的LVDS输出,通常采用100Ω差分终端电阻跨接在接收端,同时保持差分对内部走线等长(长度偏差 < 5mil)。
下面给出一个可直接参考的Lattice FPGA高速IO走线建模参数表,以FR-4板材、4层板为例:
| 参数 | 微带线(外层) | 带状线(内层) | Lattice FPGA要求 |
|---|---|---|---|
| 目标单端阻抗 Z₀ | 50Ω ± 10% | 50Ω ± 10% | LVCMOS33/LVCMOS25 |
| 目标差分阻抗 Zdiff | 100Ω ± 10% | 100Ω ± 10% | LVDS/Sub-LVDS |
| 介质厚度 H | 6 mil | 8 mil | 由叠层决定 |
| 线宽 W(50Ω) | 约 10 mil | 约 6 mil | 按厂商叠层计算 |
| 传播延迟 tpd | 约 150 ps/inch | 约 175 ps/inch | 时序约束需写入 |
| 差分对间距 S | 约 8 mil | 约 6 mil | 控制Zdiff=100Ω |
| 等长偏差 | ≤ 5 mil | ≤ 5 mil | 差分对内 |
总结来说,Lattice FPGA高速IO的PCB走线建模需要同时关注三个维度:结构选择(微带线或带状线)、参数计算(Z₀、tpd、Γ)和端接匹配(源端串联或终端并联)。只有将这三者结合,才能在实际布线中保证信号完整性,使Lattice FPGA的IO性能达到数据手册标称的水平。