AR# 21632

我如何在 IBIS 文件中整合在 IBIS 存档中提供的每引脚寄生封装数据(采用 .pkg 文件格式)?在生成定制 IBIS 文件时,我如何确保 write_ibis/IBISWriter 使用的是最新 IBIS 模型和封装模型?

描述

Xilinx 以两种方式提供 IBIS 模型:跨越整合模型的通用系列(直接从 Web)、通过 IBISWriter 程序(作为 ISE 设计环境的一部分提供)以及最近在 Vivado 中使用 write_ibis 命令的方法。

IBISWriter 是一款实用程序,不仅可纳入设计实现 (.ncd) 文件,而且还可针对设计输出定制 IBIS 文件。

Vivado write_ibis 不仅可获取综合或实现网表(或 DCP),同时还可为设计创建定制 IBIS 模型。

Xilinx IBIS 模型包括两类信息:

  1. 根据其 I/O 标准描述一个引脚的模拟行为的 I/O 模型。
  2. 描述粗封装最小、典型、最大延迟或(如果有)详细封装寄生模型(查看 .pkg 文件)的封装模型;除了封装焊球延迟的每引脚晶片焊盘外,这些封装寄生模型还可实现封装串扰仿真。

解决方案

有几种纳入封装寄生数据的方法,每一种都有其自身的优势。

要在您的 IBIS 仿真中注释封装寄生数据,可使用以下选项之一:

您想使用多个专用引脚时,在通用 IBIS 模型中手动插入 .pkg 信息(选项 1)是最有效的选项,但没有包含设计信息的 NCD 文件或 DCP。

使用 IBISWRITER 或 Vivado write_ibis(选项 2)是这 3 种方法中最便捷的一种,如果您有采用 IOSTANDARD 和设计位置集创建的 NCD 或 Vivado 网表,这也是最有效的选项。

选项 3 是手动方法,如果您希望使用专用非耦合引脚寄生数据快速仿真引脚,该方法可便捷编辑通用 IBIS 模型。



选项 1:使用通用 IBIS 文件时:

a) 该系列基本通用 IBIS 文件在 Xilinx 下载中心提供。

b) 该器件系列的每引脚封装寄生数据(如果有)可通过从 Xilinx 下载中心下载的 IBIS 存档文件纳入。 

每个 .pkg 文件代表该系列中的一个晶片/封装组合。封装命名惯例:<PackageName_DieName_ibis>.pkg。 

必要时,请联系 Xilinx 技术支持,帮助您为您的目标器件及封装获得 .pkg 文件。

i) 如若不行:

  1. 请使用在该系列 IBIS 文件 (<family>.ibs) 中提供的粗封装寄生。
  2. 发现目标封装并取消对数据 R_pkg、C_pkg 和 L_pkg 标识符的注释。
  3. 注释所有其它封装(IBIS 中的注释字符为“|”)。
  4. 仿真。


ii) 如果有的话,最便捷的方式是在 Vivado 中采用 ISE 或 write_ibis 命令使用 IBISWriter 实用程序。 

如果 IBISWriter 或 write_ibis 命令不能将该封装寄生数据整合在 IBIS 中,您可以手动编辑 IBIS(具有 .pkg 文件提供的数据)。请参考以下步骤。

1) 在 [pin] 部分编辑并确保器件/封装中的每个通用引脚都经过定义并分配有一个网络名和模型名称。下面是编辑引脚部分的实例。

[Pin] signal_name model_name

AD12 CLK_IN_P LVDS_HP_I

AD11 CLK_IN_N LVDS_HP_I

B17 DDR_DQS_P DIFF_SSTL135_T_DCI

B18 DDR_DQS_N DIFF_SSTL135_T_DCI

...

2) 在目标 .pkg 文件中查找带有 [Define Package Model] 和 [End Package Model] 关键词的行。

3) 在 IBIS 文件最后一行(具有 IBIS 关键词 [End] 的行)前面的正中间位置插入这两行及所有相关内容。

4) 在首先出现 [Model] 行的上方,输入:[Package Model] <pkg_model_name>。 

<pkg_model_name> 位于以上步骤中复制的 [Define Package Model] 行旁边。确保 <pkg_model_name>s 匹配这两行。

[Package Model] ffg900_xc7k325t

//Model section

[Model] LVDS_HP_I

//model parameters

[Model] DIFF_SSTL135_T_DCI

//model parameters

...

[Define Package Model] ffg900_xc7k325t


5) 仿真。




选项 2:使用定制 IBIS 文件(IBISWriter 实用程序)时:

a) 设计专用定制 IBIS 文件可通过 IBISWriter(作为 ISE 设计环境的一部分提供)生成,IBISWriter 则可纳入设计实现 (.ncd) 文件中,而且 IBISWriter 可输出一个随时可用于仿真的定制/设计专用 IBIS 文件。

b) 每引脚封装寄生数据(如果有)可纳入定制 IBIS 文件。

i) 从命令行:使用 -pin 选项或按照以上 1.b.ii 段所述方法手动插入定制 IBIS 文件。

ii) 在 ISE GUI 中:

在处理窗口中:

  1. 扩展实现设计目录树。
  2. 扩展布置及走线目录树。
  3. 右键点击生成 IBIS 模型并选择属性。
  4. 启用生成详细封装寄生复选框。
  5. 双击生成 IBIS 模型,以创建输出文件。

c) 为确保定制/设计专用 IBIS 文件包含最新的 I/O 模型及封装寄生数据:

i) 对于 Virtex-4 与 Virtex-5,请在启动 BISWriter 之前运行 XilinxUpdate。XilinxUpdate 可在 ISE 数据库(具有 Xilinx 下载中心提供的最新 IBIS 数据)下同步该数据文件。

ii) 对于其它器件,如果 Xilinx 下载中心的 IBIS 数据可在 ISE 版本之后更新,随后 IBISWriter 实用程序就无法使用,您必须采用以下步骤手动配置 I/O 模型及封装模型:


  1. 从下载中心下载所提供的最新 IBIS 模型。
  2. I/O 模型的手动升级:
    -- 对于您设计中使用的所有模型,请查找 [Model] 关键词并复制直至下一个 [Model] 关键词的所有内容。
    -- 注释引脚列表,以便使用最新 I/O 连接每一个 I/O 引脚:查找 [Pin] 关键词。对于您设计中的所有 I/O,如果还没有列出,随后请在这里给它添加一个参考;如果已经列出,请验证它是否可以参考适当的模型。
    在这个部分,每个封装引脚都应该有一行。语法是:< 引脚数 > < 用户提供的引脚名称 > < [Model] 关键词定义的模型名称 >。
  3. 封装模型的手动更新:
    -- 该过程在以上 1.b 段有详细说明。

选项 2:使用 Vivado write_ibis 时:

a) 您可以打开综合的或者实现的设计网表,也可以使用 Vivado 打开设计检查点 (DCP)

b) 您既可以从 Tcl 操控台使用 write_ibis,也可以在 GUI 中使用 write_ibis。

  1. 从操控台使用的语法是:write_ibis -file your_file_name.ibs。这将选择安装的 ibis 模型和封装文件。您可使用 –ibs 开关及 –pin 选项覆盖这个具有不同通用 IBIS 模型的文件,指定您自己的 PKG 文件来注释模型。
  2. 从 GUI 使用,您需要选择 File > Export > IBIS 模型。这将弹出 write_ibis 窗口。必要时,从那里您可以覆盖默认的 IBIS 模型和 PKG 文件。



选项 3:如果您只想仿真快速引脚专用数据,但没有 .ncd 文件,您可以只编辑通用封装信息(具有从 .pkg 文件获得的非耦合引脚专用详细信息)。

下列示例在 Spartan-6 LX16 CS324 的 A2 引脚上使用 HSTL_I。 

打开 spartan6_ibis.zip 文件(在 xilinx.com 上提供)中名为 cs324_6slx16_ibis.pkg 的文件。 

第 359 行和第 360 行如下:

[Row] A2
0.187482

即,对于该引脚而言,R_pin 为 0.187482。

第 855 行和第 856 行如下:

[Row] A2
A2 7.34996e-009

即 L_pin 为 7.34996e-009

第 1351 行和第 1352 行如下:

[Row] A2
A2 1.07694e-012

即 C_pin 为 1.07694e-012。

比如说其 Vccaux 为 2.5V。A2 引脚就在上部分组 Bank0 中。 

也就是说它们将在其仿真中使用 HSTL_I_TB_25 模型。 

在 spartan6_v1p5_prelim_110822.ibs 文件中,该模型与 155 的 [Pin] 部分中的引脚数有关。

对于 155 引脚而言,您将需要改变行号 425,如下:

从这:

155 HSTL_I_TB_25 HSTL_I_TB_25

将其改为这:

155 HSTL_I_TB_25 HSTL_I_TB_25 0.187482 7.34996nH 1.07694pF

现在,仿真器将为该引脚使用每引脚 RLC 信息(它可覆盖 R_pkg、L_pkg、C_pkg)。

AR# 21632
日期 03/20/2017
状态 Active
Type 综合文章
器件 More Less