首页 / 资讯中心 / 文章详情

DP接口硬件方案与PCB Layout:AUX、HPD及眼图验收

DP接口硬件方案与PCB Layout:AUX、HPD及眼图验收 ★ FEATURED ARTICLE
简介围绕DisplayPort接口展开的系统性技术文档面向从事视频处理、硬件设计与PCB layout的工程师及学习者用于打通从协议原理到电路实现、测试验证的完整链路。内容按章节递进先梳理DP接口的由来以及标准口与Mini-DP的形态差异再逐版对比DP 1.0至2.0在带宽、MST多流传输、DSC压缩与HDR支持上的演进随后讲解基于微报文的数据包化传输机制与多通道时分复用原理并落实到DP输出端的信号发生、时钟恢复、编码器设计以及接收端的均衡、解码与时钟恢复电路最后给出眼图测试与I2C测试的实操要点。压缩包共1个docx文件约1.93MB文档含完整目录与章节编号便于按模块跳读检索。目前已有5737人学习适合需要快速建立DP接口整体认知、对照原理图与layout要点自查的中高级硬件从业者。1. 从一块4K视频处理板说起DP接口方案要先解决什么很多团队把DP接口当成四对差分线一拉就完事结果4K屏偶发闪黑拆机重做一版仍找不到原因——问题往往不在FPGA内部而在AUX通道、HPD时序和隔直电容位置。DP接口硬件方案、原理图与PCB layout资料汇总要解决的正是从接口选型、链路训练到眼图验收的一条完整落地路径。它适合正在做视频处理板卡、显示采集卡或FPGA图像传输课设的人前端有4K60视频流后端是标准DP或Mini-DP座子中间需要把主链路、辅助通道、热插拔和供电一次设计对。下面按需求、总体设计、原理图、layout、排查和验收展开能直接照着搭一版可调试的DP链路。2. 需求与选型链路速率、DP版本和接口形态怎么定硬件方案第一步不是画原理图而是把视频处理链路的需求锁死。DP版本不是越高越好选高了芯片成本、layout难度和测试设备都上去选低了4K60可能跑不满。我一般的做法是先用带宽账把版本卡住再决定接口形态和是否需要增强芯片最后把需求冻结成一张表后面原理图和layout都按这张表走。2.1 从视频处理链路反推带宽与DP版本先算视频流本身需要多少有效数据率。以4K60、8bit RGB为例像素时钟约594MHz每像素24bit再考虑消隐区和协议开销有效数据率大约在12.5Gbps这个量级。DP 1.2的HBR2四通道总带宽21.6Gbps8b/10b编码后有效数据率17.28Gbps跑4K60 8bit是够的如果上到4K120、10bit或者HDR就要看DP 1.3/1.4的HBR3或者用DSC压缩再往上才是DP 2.0的UHBR。版本选择不要只看“支持8K”这种宣传口径要看每通道速率、通道数、编码方式和是否支持DSC。下表把常用版本放在一起对比参数按项目正文和公开规范整理做课设或方案评审时可以直接引用。版本每通道速率四通道总带宽编码典型落地场景DP 1.0/1.1a1.62/2.7Gbps10.8Gbps8b/10b1080p、2K早期设备DP 1.2/1.2a5.4Gbps21.6Gbps8b/10b4K60 8bit、多流MSTDP 1.38.1Gbps32.4Gbps8b/10b4K120、5K60DP 1.4/1.4a8.1Gbps32.4Gbps8b/10b DSC4K120 10bit、HDR、8K30DP 2.010/13.5/20Gbps80Gbps128b/132b8K60、4K240、双屏4K144把分辨率、刷新率和色深代入一个小脚本能快速判断需要几通道、什么速率。下面这段Python只做估算blanking开销按5%粗算实际要以显示器EDID和时序参数为准。# 估算视频流有效数据率单位Gbps def payload_gbps(width, height, refresh, bpp, overhead1.05): # bpp是每像素总位数RGB 8bit就是24 return width * height * refresh * bpp * overhead / 1e9 cases [ (4K60 8bit, 3840, 2160, 60, 24), (4K120 10bit, 3840, 2160, 120, 30), (8K60 8bit, 7680, 4320, 60, 24), ] for name, w, h, r, bpp in cases: need payload_gbps(w, h, r, bpp) # HBR2四通道有效17.28GbpsHBR3四通道有效25.92Gbps print(f{name}: {need:.2f} Gbps)参数说明overhead不是协议精确开销只用于早期选型bpp按RGB三通道相加10bit就是30。脚本输出如果超过17.28Gbps就不要再用DP 1.2硬扛超过25.92Gbps就要考虑DSC或DP 2.0。这个账算清楚后面选增强芯片和测试设备才不会反复。2.2 标准DP与Mini-DP的选型边界标准DP和Mini-DP在电气协议上是一回事差别在物理座子、引脚间距、锁扣和板边强度。标准DP是20pin方形座金属壳大插拔受力好适合桌面设备、板卡前面板、需要频繁插拔的工装Mini-DP体积小适合紧凑型设备或板内空间紧张的课设板但座子引脚密焊接和ESD器件摆放要更小心。选型时不要只看体积。标准DP座子金属壳面积大接地和屏蔽好做Mini-DP座子小金属壳与系统地之间的隔离、ESD器件的结电容、差分对出线顺序都更容易翻车。我的习惯是板边空间够、线缆可能被频繁插拔优先标准DP设备厚度受限、线缆固定不动再考虑Mini-DP。两种座子的引脚定义要按所选座子手册核对不能拿一种座子的顺序直接套另一种。2.3 增强芯片与FPGA直出的取舍如果FPGA内部已经带DP TX/RX板内距离短、速率不超过HBR2直出加ESD就能工作成本最低。但只要信号要出前面板、走1米以上线缆或者速率上到HBR3主链路余量就会变得很紧这时通常要在FPGA和DP座之间加一颗预增强/均衡芯片。DP130类芯片支持到DP 1.4b既能做输出预增强也能做输入均衡适合作为双向链路的中间件。选型时看四个点第一芯片是否支持目标链路速率和通道数第二AUX能不能直通或旁路接收端AUX往往要直接给FPGA第三I2C控制接口和地址配置是否够用第四封装和供电是否适合当前板卡。下面这张决策表可以作为评审时的快速判断。场景建议理由板内10cmHBR2FPGA自带DP直出ESD省芯片、省调试前面板DP座线缆1mHBR3加预增强芯片补偿高频损耗接收端长线或工装夹具加均衡芯片打开输入眼图需要DSC/HDR/8K确认芯片支持DP 1.4以上版本和带宽要匹配2.4 需求清单模板与选型冻结选型定完后我会写一张需求冻结表后面原理图、layout、测试都按它验收。表里至少包含分辨率、刷新率、色深、通道数、链路速率、接口形态、线缆长度、供电能力、调试接口和测试点。比如“4K60、8bit RGB、4lane、HBR2、标准DP座、线长1.5m、5V/0.5A、预留AUX测试点”这样评审时谁都能看懂边界。冻结表还有一个作用防止后期有人临时把4K60改成4K120却不动芯片和layout。DP链路是系统工程速率一变预加重、均衡、隔直电容、测试模板都要跟着变。需求表定下来后面每一章才有验收依据。3. 总体设计主链路、AUX、HPD与供电的通道划分DP不是一根视频线而是一组通道。总体设计先把通道职责画清四对主链路跑视频和音频AUX跑握手HPD跑插拔和中断5V跑供电DDC/CTL跑EDID和芯片控制。哪个信号进FPGA、哪个进增强芯片要在框图阶段定死不能等到画原理图时再临时改。3.1 四对主链路与时钟恢复主链路是单向、高带宽、低延迟的通道分1、2、4对差分对也就是lane。每对lane交流耦合差分阻抗按100Ω控制所有使能的lane必须跑同一链路速率。DP 1.4的HBR3是8.1Gbps/lane四通道总带宽32.4Gbps8b/10b编码后有效25.92GbpsDP 2.0换成128b/132b总带宽到80Gbps。主链路没有专用时钟通道时钟从数据流里恢复这一点决定了layout上不能按“时钟线数据线”的老思路去处理。链路速率和像素速率是解耦的像素时钟靠MSA里的Mvid/Nvid时间戳恢复。设计时要让FPGA或增强芯片根据EDID和DPCD能力选择链路速率不要一上来就锁最高速率。良好设计的source会优先用较少lane和较低电压摆幅把功耗和EMI压下来只有余量不够时才加预加重或提速率。这个策略在调试时很有用先降速跑通再逐级提速能快速判断问题在链路余量还是握手。3.2 AUX通道与DPCD/EDID的握手路径AUX是双向半双工差分通道速率约1Mbps交流耦合差分100Ω。source通过AUX读sink的DPCD寄存器拿到lane数、链路速率、电压摆幅、预加重、均衡等能力再读EDID拿到显示器支持的分辨率、色深、音频格式。链路训练期间source写DPCD配置目标链路sink把训练结果写回DPCD双方迭代到link建立然后发MSA和SDP才开始传视频。把握手顺序写成状态机调试时对着抓包记录逐条核对比盲目换线有效。下面这段是伪代码寄存器地址要按规范核对不能直接当驱动用。# DP链路建立状态机伪代码用于调试顺序 state WAIT_HPD while True: if state WAIT_HPD: if hpd_is_high(): state READ_DPCD elif state READ_DPCD: caps aux_read(0x00000, 16) # 接收器能力字段 if caps: state READ_EDID elif state READ_EDID: edid aux_read_i2c(0x50, 0, 128) if edid[:8] bytes.fromhex(00ffffffffffff00): state LINK_TRAIN elif state LINK_TRAIN: set_link_rate_and_lanes() if training_done(): state SEND_MSA elif state SEND_MSA: start_video() break这段状态机的关键不是代码本身而是顺序HPD先到DPCD能读EDID头正确才谈link training。很多“黑屏”问题卡在EDID头读不到却去调预加重方向就错了。调试时用AUX监视工具看DPCD读写比万用表量电压更快。3.3 HPD、供电与ESD的边界设计HPD是sink到source的信号接3.3V或拉高表示sink存在拉低超过2ms表示sink拔出拉低0.5ms到1ms可以作为中断请求source再通过AUX读DPCD的IRQ寄存器判断中断类型。HPD上拉电阻放在source侧走线不要和高速差分并排太长。DP连接器还有5V/0.5A的供电引脚给本地设备供电电源入口要加限流和ESD。ESD器件要放在连接器侧选低结电容型号别让保护器件把高速眼图吃掉。金属座接地与系统地之间通常做隔离常用1MΩ电阻并联1nF高压电容具体值按产品安规和EMC要求调整。接收端和输出端的HPD接法不完全一样下一章会分开讲。3.4 地址与I2C总线规划DP链路上有两条容易混淆的I2CDDC用于读EDIDCTL用于增强芯片控制。输出端DDC要上拉通常10K到3.3V接收端没有显示器信息DDC可以直接NC。CTL总线输出端上拉10K接收端按芯片要求可能用2K。ADDR引脚用于多芯片地址配置地址不同可以挂在同一条I2C上。信号方向电平上拉注意DDC_SCL/SDA双向3.3V10K输出端接接收端可NCCTL_SCL/SDA双向3.3V10K/2K按芯片手册地址勿冲突HPDsink到source3.3Vsource侧中断脉宽0.5~1msAUX/-双向差分交流耦合无100Ω差分勿当普通GPIO4. 原理图实现DP输出与接收链路的器件参数和连接关系原理图阶段最容易犯的错是“协议上知道了引脚上接错了”。输出和接收两条链路要分开看输出是把FPGA的serdes送到DP座接收是把DP座送到FPGA。DP130类芯片在两条链路里的AUX、DDC、HPD接法不一样不能照抄。4.1 输出链路FPGA到增强芯片到DP座输出链路里FPGA的DP信号先到增强芯片做预增强再转给DP座。差分输入是serdes信号要小电容隔直隔直电容放在增强芯片端输出到DP座同样要隔直电容靠近接口摆放。AUX按100Ω差分处理源端接FPGAsink端接DP座注意上下拉。DDC的I2C负责EDIDCTL的I2C负责其他控制信号两条总线都做3.3V上拉常用10K。ADDR按地址配置多芯片共用总线时地址不能撞。信号连接关系关键参数注意主链路差分FPGA→芯片→DP座100Ω差分AC耦合隔直电容分两端放AUX差分FPGA↔DP座100Ω差分上下拉按源端要求DDC芯片/FPGA↔DP座3.3V上拉10K读EDID用CTLFPGA↔芯片3.3V上拉10K地址勿冲突HPDDP座→FPGA3.3V中断脉宽注意5V电源→DP座5V/0.5A限流ESD上电后先用I2C工具扫一遍地址确认DDC和CTL都挂上了再读EDID头。下面两条命令是调试时最常用的-y表示跳过交互确认总线号按实际板卡改。# 扫描I2C总线确认DDC/CTL设备地址 i2cdetect -y 1 # 读取EDID头第一个字节正常应能读到0x00连续读8字节应为00 ff ff ff ff ff ff 00 i2cget -y 1 0x50 0x00如果i2cdetect能看到0x50但读EDID头不对先查DDC上拉和AUX链路不要急着换芯片。输出端的ESD器件要放在DP座附近金属壳地与系统地隔离避免插拔时静电直接打进增强芯片。4.2 接收链路DP座到增强芯片到FPGA接收链路反过来DP座的信号进增强芯片做均衡再送给FPGA。这里最大的差别是AUX。增强芯片作为DP输入时AUX不需要经过芯片直接从DP座取出来通过小电容隔直送给FPGADDC在接收端没有显示器信息要读可以直接NCCTL仍然要接上拉按芯片手册常见2K。HPD有两种接法一种由DP座直接给FPGA一种经过芯片再给FPGA按调试便利性选一种不要两套都接。接收端主链路的隔直电容靠近FPGA摆放输出给FPGA的serdes同样要AC耦合。AUX从DP座出来一方面给芯片一方面隔直给FPGA差分100Ω控制上下拉不要漏。HPD走线远离高速差分ESD放在座子侧。接收端最容易翻车的是把DDC也照输出端上拉结果地址冲突或读不到调试时先确认DDC是否真的需要。4.3 电源、地分割与保护器件增强芯片通常需要3.3V和1.8V具体按手册。电源入口加去耦0.1uF靠近引脚10uF放在电源入口。DP座5V引脚加限流和ESD避免外设短路把主板拉死。金属壳地与系统地之间做隔离常用1MΩ并联1nF高压电容既给静电泄放路径又不在低频形成地环路。ESD器件的结电容要低尤其是主链路和AUX。结电容大了眼图会闭合AUX波形也会变缓。保护器件放在连接器侧先保护后走线不要放在芯片端。电源时序按芯片手册先核电压再核IO避免上电瞬间倒灌。4.4 原理图评审清单检查项合格标准常见错误主链路隔直输入靠芯片输出靠接口电容全堆在FPGA端AUX差分100Ω交直流路径正确当单端GPIO处理DDC上拉输出端10K接收端按需接收端误上拉CTL上拉输出10K输入2K上拉值照抄HPD只选一种接法两套并联ESD连接器侧低结电容放在芯片端金属壳与系统地隔离直接短接地址多芯片不冲突ADDR悬空5. PCB layout与常见问题排查差分、隔直、ESD和AUX的翻车点layout阶段DP的坑最集中。原理图对了板子不一定能跑眼图闭合、AUX读不到EDID、插拔死机多数是layout和器件摆放问题。这一章把layout规则和排查顺序放在一起照着走能少走弯路。5.1 主链路差分对100Ω、等长与参考平面主链路四对差分按100Ω±10%控制对内等长建议控制在5mil以内lane之间也要做一定等长具体按接口速率和芯片手册。隔直电容的焊盘要按差分阻抗设计别让电容焊盘成为突兀的阻抗台阶电容尽量靠近规定的一端输出端靠接口输入端靠芯片。差分对换层时加地过孔参考平面保持完整不要跨分割。项目建议原因差分阻抗100Ω±10%匹配链路对内等长≤5mil减小偏斜lane间等长按手册通常≤50mil保持通道一致参考平面完整不跨分割防止回流断裂过孔尽量少换层加地孔减小寄生隔直电容焊盘优化位置固定避免阻抗突变ESD连接器侧低结电容先保护后走线5.2 AUX与I2C慢速链路也要按差分走AUX只有1Mbps左右很多人就把它当普通GPIO拉线结果link training时好时坏。AUX是交流耦合差分对仍要按100Ω差分走尽量和主链路同层、同参考平面远离电源和时钟。DDC/CTL的I2C虽然慢但上拉位置要靠近源端走线不要和高速差分长距离并排ESD结电容要小。HPD是单端信号走线远离差分对上拉电阻放在source侧。AUX的隔直电容靠近连接器或芯片按链路方向定不要两边都放。调试时如果AUX波形幅度不对先看上下拉和隔直电容再看芯片配置。5.3 常见问题排查五类翻车点第一类上电黑屏HPD正常但link training失败。现象是source能检测到sinkAUX读写却超时。原因通常是AUX差分极性反了、隔直电容漏贴或上拉缺失。解决方法是先量HPD再用AUX监视工具看DPCD读写确认AUX/-没反、电容没漏、上拉电阻在位。第二类4K偶发闪黑降速到1080p就正常。现象是低速率稳定高速率间歇性黑屏。原因多半是主链路余量不足预加重/均衡配置不对、隔直电容离接口太远、参考平面被割裂。解决方法是先降速验证再逐级提速率同时检查差分对阻抗和过孔必要时调整芯片预加重档位。第三类I2C读EDID失败。现象是i2cdetect能看到0x50但读出来全FF或头不对。原因可能是DDC上拉值不对、地址冲突、ESD器件漏电或者AUX根本没通。解决方法是先断开ESD测波形再核对上拉和地址最后回到AUX链路。第四类插拔后死机或芯片损坏。现象是热插拔几次后系统不识别或芯片发热。原因通常是ESD防护不足、金属壳未隔离、电源没有限流。解决方法是把ESD放到连接器侧金属壳做阻容隔离5V加限流插拔测试时监控电流。第五类眼图测试结果和实际不符。现象是实验室眼图很好现场还是闪黑。原因可能是测试点选错输入眼图和输出眼图模板不一样探头带宽或夹具影响了结果。解决方法是按芯片手册规定的测试点测输入看TTP2输出看TTP4这类模板要对应探头和夹具先做校准。5.4 调试记录模板与定位顺序顺序检查项正常判据异常先查1电源3.3V/1.8V/5V在范围限流、时序2HPD插入拉高拔出拉低上拉、座子3AUXDPCD能读极性、隔直、上拉4EDID头8字节正确DDC上拉、地址5Link训练速率/通道配置成功预加重、均衡6眼图满足模板测试点、探头7压力多次插拔不黑屏ESD、电源6. 验收与答辩眼图、I2C和链路训练怎么一次讲清验收不要一上来就测眼图先把链路握手跑通。我的顺序是静态检查原理图和layout确认差分阻抗、隔直电容、上拉和ESD上电测3.3V、1.8V、5V插线看HPD用AUX工具读DPCD读EDID头跑link training最后才是眼图和压力测试。这个顺序能保证眼图测的是“已经工作的链路”不是拿一台没握手的板子硬调预加重。答辩时老师或评审最想听的不是“DP有几个版本”而是“你怎么证明这版设计能跑”。把测试点图、AUX读写记录、EDID头、link training结果和眼图模板放在一页里比讲十分钟原理有用。眼图要标清楚测试点输入和输出模板不一样探头带宽和夹具影响要提前说明I2C测试要给出地址、上拉值和读写结果压力测试至少做多次插拔和长时间播放记录有没有闪黑。验收项交付证据常见扣分点原理图检查表、关键网络隔直电容位置错Layout阻抗、等长、叠层差分跨分割HPD插拔波形中断脉宽不对AUX/DPCD读写记录只测电压不看协议EDID头8字节上拉或地址错Link训练速率/通道记录直接锁最高速率眼图测试点模板测试点选错压力插拔/播放记录只测一次从那以后我每次出DP板都会先把HPD、AUX、EDID三件事在调试记录里走一遍再谈眼图这套资料我也按原理图检查表、layout约束和测试记录模板归档需要对照做板时按目录取用即可。希望帮到你。本文还有配套的精品资源点击获取
阅读完成 · 觉得有帮助?
咨询建站