跳转至

LVDS硬件和软件

  • 参考文档

    1. DS1700_ELF5_Datasheet.pdf
    2. TN1704_安路科技EF5系列FPGA IO用户指南.pdf
    3. DS1300_PH1P_Datasheet.pdf
    4. UG1311_安路科技PH1P系列FPGA IO用户手册.pdf
    5. IEEE Std 1596.3-1996.pdf
  • 迁移文档

    1. 引脚迁移.xlsx
    2. 功能迁移.pdf
  • 注意事项

    1. 其它型号找对应Datasheet和IO用户手册即可
    2. LVDS差分管脚和L不完全兼容, 如果用到差分,需要对下引脚迁移.xlsx
    3. 真差分大部分情况都带内部100Ω,伪差分不带,再叠加精度问题,尽量用外部100Ω
    4. 如果板子空间有限,只能内部100Ω,需要核对具体型号引脚是否存在内部100Ω和差模是否小于500mV
    5. 交流耦合必须有编码做直流平衡,否则长期0或1导致数据过不去电容

1. LVDS基本定义

  1. 共模:接收端100欧姆终端电阻=两个50欧姆串联,串联点稳定为对地电压1.2V
  2. 差模:接收端100欧姆终端电阻两端电压差为350mV,因为3.5mA电流源流过
  3. 3.5mA电流从上往下流, 则上端对地 1.2V + 50Ωx3.5mA = 1.375V
  4. 3.5mA电流从下往上流, 则上端对地 1.2V - 50Ωx3.5mA = 1.025V
  5. 差分探头两端直接测电阻上下端,则为+350mV和-350mV来回切换
  6. 发送端结构:为带1.2V偏置的3.5mA电流源
  7. 接收端结构:为比较器,需要一定范围偏置(共模)和电压差(差模)来正常工作

  8. BANK供电决定LVDS命名后缀:引脚输出的共模+差模一定不能超过供电电压
    供电3.3V则LVDS33,供电2.5V则LVDS25,供电1.8V则LVDS18

  9. 后续表格均为最小值-典型值-最大值顺序描述,精确到小数点后2位,多的位直接舍去
    手册没有写明典型值则1.2V和0.35V占位

1.1 LVDS33

  • PH1A100:不支持LVDS33的输出,LVDS33的输入限制参考如下文档
    TR702_PH1器件LVDS33 25 18兼容说明文档.pdf
器件型号和BANK 输入共模 输入差模 输出共模 输出差模
EF2/EF3/EG4 0.60-1.20-3.15 0.15-0.35-0.80 0.60-1.20-1.40 0.15-0.25-0.35
PH1P_HRIO 0.50-1.20-1.40 0.10-0.35-0.60 不支持 不支持
EF5 0.6-1.20-3.15 0.15-0.35-0.80 0.80-1.20-1.40 0.20-0.35-0.48
PH2A_HDIO 0.30-1.20-1.42 0.10-0.35-0.60 不支持 不支持
PH1A100/PH1A/DR1/PH2A_HPIO 不支持 不支持 不支持 不支持

1.2 LVDS25

  • PH1P_HRIO:PH1P50,PH1P35相对PH1P100共模(1.0V)最小值可以到0.8V
器件型号和BANK 输入共模 输入差模 输出共模 输出差模
EF2/EF3/EG4 0.05-1.2-2.35 0.15-0.35-0.80 0.60-1.20-1.40 0.15-0.25-0.35
PH1A100 0.80-1.25-1.40 0.10-0.30-0.40 0.90-1.10-1.30 0.20-0.25-0.30
PH1A_HRIO/DR1 0.90-1.25-1.40 0.10-0.30-0.40 0.90-1.25-1.40 0.20-0.35-0.40
PH1P_HRIO 0.50-1.20-1.40 0.10-0.35-0.60 1.00-1.20-1.35 0.20-0.30-0.32
EF5 0.05-1.20-2.35 0.15-0.35-0.80 0.80-1.20-1.40 0.20-0.35-0.48
PH2A_HDIO 0.30-1.20-1.42 0.10-0.35-0.60 不支持 不支持
PH1A_HPIO/PH2A_HPIO 不支持 不支持 不支持 不支持

1.3 LVDS18

  • PH1A_HRIO/DR1:如果用外部 100Ω,输入共模最大1.0V
  • PH1A_HPIO:输入时内部存在固定的 2.2K~3.4K 下拉电阻无法关闭
  • PH2A_HPIO:输入时内部存在固定的 2.9K~3.8K 下拉电阻无法关闭
  • PH1P_DDRIO:DDR I/O 内部无 100Ω电阻
器件型号和BANK 输入共模 输入差模 输出共模 输出差模
PH1A100 0.35-0.45-0.55 0.10-0.30-0.40 0.35-0.45-0.55 0.20-0.25-0.30
PH1A_HRIO/DR1 0.40-0.60-0.80 0.10-0.30-0.40 0.30-0.60-0.80 0.20-0.35-0.50
PH1A_HPIO 0.30-1.20-1.42 0.20-0.35-0.60 0.90-1.20-1.50 0.20-0.35-0.50
PH1P_HRIO 0.50-1.20-1.40 0.10-0.35-0.60 0.90-1.10-1.20 0.30-0.35-0.60
PH1P_DDRIO 0.50-1.20-1.42 0.10-0.35-0.60 不支持 不支持
PH1P_MIPIIO 无参数 0.10-0.30-0.40 1.00-1.20-1.30 0.30-0.35-0.45
EF5 0.60-1.20-1.40 0.15-0.35-0.80 0.80-1.20-1.40 0.20-0.35-0.40
EF3L50/70/A0 0.60-0.90-1.40 0.15-0.35-0.80 0.70-0.90-1.00 0.15-0.25-0.35
PH2A_HDIO 0.30-1.20-1.42 0.10-0.35-0.60 不支持 不支持
PH2A_HPIO 0.30-1.20-1.42 0.10-0.35-0.60 0.80-1.25-1.30 0.20-0.35-0.40
EF2/EG4/EF3L15(25/45/40/90) 不支持 不支持 不支持 不支持

2. 真差分和伪差分区别

  • 目前差分应用除了MLVDS应用(1总多从),其它点对点LVDS只推荐真差分
  • 真差分命名:IO_R4P_2/IO_R4N_2 不带E为真差分对
  • 伪差分命名:IO_BE4P_3/IO_BE4N_3 带E为伪差分对
差分类型 输入 输出 理论速率
真差分 比较器 3.5mA电流源 最小800Mbps以上
伪差分 比较器 3.3V/0V电压对需要增加电阻网络 最大300Mbps左右

2.1 真差分电路

  • 两端供电一致且差模共模匹配,则可以直流耦合
  • 两端供电不一致或者差模和共模无法匹配,建议交流耦合
  • 两端供电不一致想直流耦合,需要评估两端差模和共模是否匹配,
    以及上电时刻两端电压对彼此影响评估

2.2 伪差分电路

  • 通过电阻网络分压得到合适的共模和差模,速率限制即为单端IO速率限制
  • 应用举例:MLVDS一主多从结构,100Mbps速率

3. 软件约束

  • 简单LVDS应用:IO约束界面中P端引脚选择LVDS25或者其它,N端自动匹配
    差分对是两个引脚,顶层只能写一个,不要去定义N端
  • 复杂LVDS应用:查看对应型号IO手册和原语手册, 部分型号支持P和N分开延时

4. AMD LVDS收发供电不一致

4.1 AMD论坛LVDS双向直流耦合

  1. 两端芯片供电必须一致
  2. 共模和差模必须在符合各自范围

4.2 AMD论坛LVDS输出直流耦合

  1. 两端芯片供电必须一致
  2. 共模和差模必须在符合各自范围

4.3 AMD论坛LVDS输入直流耦合

  • 支持原因可能是LVDS接收器是VCCAUX(1.8V)供电而不是VCCIO供电
    1. 输入的差分信号一端对地最大值不能大于VCCIO供电+0.2V
    2. 共模和差模必须在符合各自范围
    3. 需要板上外部终端电阻, 不能用内部

5. 安路这边LVDS收发供电不一致直连

  • LVDS如果收发供电不一致可以AC耦合重建共模差模(最简单省心)

  • LVDS如果收发供电不一致直连需要具体问题具体分析(也有很多客户实际用)

  • 上电配置阶段假设100ms,安路除了EF5(弱下拉),都是高阻和弱上拉,
    这个电流最大只有100uA,3.3V和2.5V IO直连基本没影响。
    等芯片运行后(done起来)是电流模式输入输出,正常运行。

  • 安路LVDS18差异比较大, LVDS25和33基本都是共模1.2V差模350mV

5.1 两端器件都是安路

  1. 共模和差模匹配即可

5.2 安路端为LVDS接收

  1. 共模和差模匹配即可,安路接收供电LVDS25/33基本都可以,看具体器件
    常见的就是高速ADC的LVDS18输出

  2. 配置阶段为弱上拉输入状态,运行阶段为输入状态,外部输入电平基本没影响
    判断下对端器件上电阶段不会输出高的强电平大于安路供电电平,一般不会有这种情况

5.3 安路端为LVDS发送

  1. 共模和差模匹配即可,
    常见的为输出驱动LVDS屏幕

  2. 判断下对端器件上电阶段不会输出高的强电平,
    运行阶段会输出lvds电平,如果对端上电阶段有强电平输出要注意
    如果对端是弱上拉这种则没问题