注:本文转自赛灵思中文社区论坛,源文链接在此。本文原作者为XILINX工程师。
以下是个人翻译,仅供个人学习记录参考。如有遗漏,请不吝赐教。
赛灵思为 FPGA 和 MPSoC 所有支持的设备 I/O 标准提供了 I/O 缓存信息规范 (I/O Buffer Information Specification, IBIS) 模型。
本文旨在提供如何编程逻辑 (PL) 和处理器系统 (PS) 多用途 I/O (MIO) 进行 IBIS 解码模型名称的指导信息。 本文主要分 3 个部分。
-
PL I/O 标准
-
PS MIO 标准
-
PS DDR I/O 标准
赛灵思 PL 和 PS IBIS 模型解码器
07-22-202003:05 PM
赛灵思为 FPGA 和 MPSoC 所有支持的设备 I/O 标准提供了 I/O 缓存信息规范 (/O uffer nformation pecification, IBIS) 模型。
本文旨在提供如何编程逻辑 (PL) 和处理器系统 (PS) 多用途 I/O (MIO) 进行 IBIS 解码模型名称的指导信息。
本文主要分 3 个部分。
- PL I/O 标准
- PS MIO 标准
- PS DDR I/O 标准
在这 3 一章包含多个解码器表格,逐一列出模型名称的每个部分,并提供一些模型名称示例。
PL IBIS 解码器可用于所有可编程逻辑 I/O 执行 PL IBIS 模型解码。 它适用于 Zynq MPSoC PL I/O。
表 1:PL IBIS 解码器
基本模型 |
BANK-TYPE_IOSTANDARD_SLEW_OUTPUT-IMPEDANCE*_INPUT-ODT_PRE-EMPHASIS *OUTPUT-IMPEDANCE 或 OUTPUT-DRIVE-STRENGTH(视 IOSTANDARD 而定) |
|
BANK-TYPE |
HP、HR 和 HD |
(UG571) 第 1 章“I/O 拼块 (Tile) 简介” |
IOSTANDARD |
请参阅对应 BANK-TYPE 受支持的 I/O 标准 |
HP 和 HR:(UG571) 第 1 章“受支持的 I/O 标准和终端” HD:(UG571) 第 3 章“HD I/O 支持的标准” |
SLEW |
FAST、MEDIUM、SLOW |
(UG571) 第 1 章“输出斜率属性” |
OUTPUT-IMPEDANCE (Ohm)* |
40、48、60 或 None |
(UG571) 第 1 章“输出阻抗属性 (OUTPUT_IMPEDANCE)” |
OUTPUT-STRENGTH (mA)* |
4、8、12 或 16 |
(UG571) 第 1 章“输出驱动强度属性” |
INPUT-ODT (Ohm) |
40、48、60、120、240 或 None |
(UG571) 第 1 章“片上端接 (ODT) 属性” |
PRE-EMPHASIS |
PE1600 或 PE2400 |
(UG571) 第 1 章“发射器预加重” |
所有模型(LVDS 除外*)都将包含“bank 类型 (Bank Type)”、“I/O 标准 (IOStandard)”、“斜率 (Slew Rate)”和“输出阻抗/驱动强度 (Output Impedance/Drive Strength)”。
*LVDS 模型将包含“bank 类型 (Bank Type)”、“LVDS”、“I/O 标准 (IOStandard)”和“数字端接 (Digital Termination)”。
内部 100-ohm 差分终端仅在以 1.8V (LVDS) 或 2.5V (LVDS_25) 加电的 bank 中可用。 请参阅 (UG571) v1.12 第 103 页以获取详细信息。
并非每个 IBIS 模型都包含所有模型设置。
如果模型名称中不含某项设置,即表示此模型不支持该项设置。
表 2 和表 3 提供了适用于 DDR4 和 SelectIO 的 PL IBIS 模型示例。
表 2:PL DDR4 IBIS 模型
DQ、DQS、DM |
HP_POD12_DCI_F_OUT40_IN40_PE2400 |
bank 类型:HP I/O 标准:POD bank 电压:1.2V 数控阻抗 (DCI) 斜率:Fast 输出阻抗:40 ohm 输入 ODT:40 Ohm 启用预加重 |
时钟、地址和命令 |
HP_SSTL12_DCI_F_OUT40 |
bank 类型:HP I/O 标准:SSTL bank 电压:1.2V DCI 斜率:Fast 输出阻抗:40 ohm |
*时钟和 DQS 为差分信号。 单端模型分配到每个分支。
差分信号在 IBIS 文件中的“[Diff Pin]”关键字下指定。
表 3:PL SelectIO IBIS 模型
HP_SSTL18_I_DCI_M_OUT40_IN60 |
bank 类型 = HP I/O 标准 = SSTL_I bank 电压 = 1.8V 数控阻抗 斜率 = Fast 输出阻抗 = 40 ohm 输入 ODT = 60 Ohm |
HP_LVCMOS15_M_4 |
bank 类型 = HP I/O 标准 = LVCMOS bank 电压 = 1.5V 斜率 = Medium 驱动强度 = 4mA |
HP_HSTL_I_F_OUT40 |
bank 类型 = HP I/O 标准 = HSTL_I bank 电压 = 1.5V 斜率 = Fast 输出阻抗 = 40 ohm * 此模型仅含输出,无 DCI |
HP_LVDS_DT_I |
bank 类型 = HP I/O 标准 = LVDS bank 电压 = 1.8V 差分终端 |
HD_SSTL135_II_S_IN50 |
bank 类型 = HD I/O 标准 = SSTL_II bank 电压 = 1.35V 斜率 = Slow 输入 ODT = 50 Ohm |
Zynq MPSoC MIO 管脚支持 LVCMOS,可提供以下选项
- 接口电压:1.8V、2.5V 或 3.3V
- 驱动强度:2mA、4mA、8mA 或 12mA
- 斜率:Slow 或 Fast
MIO IBIS 模型格式为 M0_PADH_02_F_NA_PBIDIR_18_18_NT_DR_H。
表 4 对每个 IBIS 模型的驱动设置进行了解释。
表 4:PS MIO IBIS 模型
M0_PADH_02_F_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 2mA;斜率 = Fast |
M3_PADH_02_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 2mA;斜率 = Slow |
M6_PADH_04_F_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 4mA;斜率 = Fast |
M9_PADH_04_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 4mA;斜率 = Slow |
M12_PADH_08_F_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 8mA;斜率 = Fast |
M15_PADH_08_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 8mA;斜率 = Slow |
M18_PADH_12_F_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 12mA;斜率 = Fast |
M21_PADH_12_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 1.8V;驱动强度 = 12mA;斜率 = Slow |
M0_PADH_02_F_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 2mA;斜率 = Fast |
M3_PADH_02_S_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 2mA;斜率 = Slow |
M6_PADH_04_F_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 4mA;斜率 = Fast |
M9_PADH_04_S_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 4mA;斜率 = Slow |
M12_PADH_08_F_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 8mA;斜率 = Fast |
M15_PADH_08_S_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 8mA;斜率 = Slow |
M18_PADH_12_F_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 12mA;斜率 = Fast |
M21_PADH_12_S_NA_PBIDIR_25_25_NT_DR_H |
LVCMOS 2.5V;驱动强度 = 12mA;斜率 = Slow |
M0_PADH_02_F_NA_PBIDIR_33_33_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 2mA;斜率 = Fast |
M3_PADH_02_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 2mA;斜率 = Slow |
M6_PADH_04_F_NA_PBIDIR_33_33_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 4mA;斜率 = Fast |
M9_PADH_04_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 4mA;斜率 = Slow |
M12_PADH_08_F_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 8mA;斜率 = Fast |
M15_PADH_08_S_NA_PBIDIR_18_18_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 8mA;斜率 = Slow |
M18_PADH_12_F_NA_PBIDIR_33_33_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 12mA;斜率 = Fast |
M21_PADH_12_S_NA_PBIDIR_33_33_NT_DR_H |
LVCMOS 3.3V;驱动强度 = 12mA;斜率 = Slow |
Zynq MPSoC PS DDR IBIS 信号与所有其它信号都不同。
表 5 显示了适用于 Zynq MPSoC PS DDR IBIS 模型的解码器。
其中为每一种 DDR 内存类型的 IBIS 模型都提供了相应的示例。
表 5:PS DDR IBIS 解码器
基本模型 |
DWC_D5M |
C |
时钟、命令、控制和地址 |
P |
数据、数据掩码 |
Q |
数据选通 |
3 |
DDR3 |
3L |
DDR3L |
L3 |
LPDDR3 |
4 |
DDR4 |
L4 |
LPDDR4 |
*输出和终端阻抗在 PS DDR 控制器上不可调。 |
|
xx |
输出阻抗 xx = 34 ohms (DDR4) xx = 40 ohms(DDR3、DDR3L、LPDDR3、LPDDR4) |
ODTxx |
输入端接 xx = 40 ohms(DDR3、DDR3L) |
xxODTyy |
输出阻抗(含输入端接) (DDR4、LPDDR3 和 LPDDR4) xx = 34 ohms (DDR4) xx = 40 ohms (LPDDR3) xx = 80 ohms (LPDDR4) yy = 40 ohms(DDR4 和 LPDDR4) yy = 120 ohms (LPDDR3) |
DQ 和 DQS 模型支持“模型选择器 (Model Selector)”功能。 该功能以“_MS”后缀来表示。 这将指引仿真器参阅 IBIS 文件中的 [Model Selector] 关键字。 [Model Selector] 关键字用于定义 ODT 行为。 |
表 6 到 10 提供了对应受支持的 PS DDR 技术的 Zynq PS DDR IBIS 示例。
表 6:PS DDR3
PS_DDR3_CK_P/N (OUT) |
DWC_D5MC3_40 |
|
PS_DDR3_A* (OUT) |
DWC_D5MC3_40 |
适用于地址、命令和控制 |
PS_DDR3_DQ* (IN/OUT) |
DWC_D5MP3_ODT_MS |
请参阅模型选择器示例 |
PS_DDR3_DQS* (IN/OUT) |
DWC_D5MQ3_ODT_MS |
请参阅模型选择器示例 |
DWC_D5MP3_ODT_MS |
DWC_D5MP3_40 或 DWC_D5MP3_ODT40 |
|
DWC_D5MQ3_ODT_MS |
DWC_D5MQ3_40 或 DWC_D5MQ3_ODT40 |
表 7:PS DDR3L
PS_DDR3L_CK_P/N (OUT) |
DWC_D5MC3L_40 |
|
PS_DDR3L_A* (OUT) |
DWC_D5MC3L_40 |
适用于地址、命令和控制 |
PS_DDR3L_DQ* (IN/OUT) |
DWC_D5MP3L_ODT_MS |
请参阅模型选择器示例 |
PS_DDR3L_DQS* (IN/OUT) |
DWC_D5MQ3L_ODT_MS |
请参阅模型选择器示例 |
DWC_D5MP3L_ODT_MS |
DWC_D5MP3L_40 或 DWC_D5MP3L_ODT40 |
|
DWC_D5MQ3L_ODT_MS |
DWC_D5MQ3L_40 或 DWC_D5MQ3L_ODT40 |
表 8:PS LPDDR3
PS_LPDDR3_CK_P/N (OUT) |
DWC_D5MCL3_40 |
|
PS_LPDDR3_A* (OUT) |
DWC_D5MCL3_40 |
适用于地址、命令和控制 |
PS_LPDDR3_DQ* (IN/OUT) |
DWC_D5MPL3_40ODT_MS |
请参阅模型选择器示例 |
PS_LPDDR3_DQS* (IN/OUT) |
DWC_D5MQL3_40ODT_MS |
请参阅模型选择器示例 |
DWC_D5MPL3_40ODT_MS |
DWC_D5MPL3_40 或 DWC_D5MPL3_40ODT120 |
|
DWC_D5MQL3_40ODT_MS |
DWC_D5MQL3_40 或 DWC_D5MQL3_40ODT120 |
表 9:PS DDR4
PS_DDR4_CK_P/N (OUT) |
DWC_D5MC4_34 |
|
PS_DDR4_A* (OUT) |
DWC_D5MC4_34 |
适用于地址、命令和控制 |
PS_DDR4_DQ* (IN/OUT) |
DWC_D5MP4_34ODT_MS |
请参阅模型选择器示例 |
PS_DDR4_DQS* (IN/OUT) |
DWC_D5MQ4_34ODT_MS |
请参阅模型选择器示例 |
DWC_D5MP4_34ODT_MS |
DWC_D5MP4_34 或 DWC_D5MP4_34ODT40 |
|
DWC_D5MQ4_34ODT_MS |
DWC_D5MP4_34 或 DWC_D5MP4_34ODT40 |
表 10:PS LPDDR4
PS_LPDDR4_CK_P/N (OUT) |
DWC_D5MCL4_40 |
|
PS_LPDDR4_A* (OUT) |
DWC_D5MCL4_40 |
适用于地址、命令和控制 |
PS_LPDDR4_DQ* (IN/OUT) |
DWC_D5MPL4_80ODT_MS |
请参阅模型选择器示例 |
PS_LPDDR4_DQS* (IN/OUT) |
DWC_D5MQL4_80ODT_MS |
请参阅模型选择器示例 |
DWC_D5MPL4_80ODT_MS |
DWC_D5MPL4_40 或 DWC_D5MPL4_80ODT40 |
|
DWC_D5MQL4_80ODT_MS |
DWC_D5MQL4_40 或 DWC_D5MQL4_80ODT40 |