新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Vivado IPI 为 Aurora 设计开放 FPGA 共享资源

Vivado IPI 为 Aurora 设计开放 FPGA 共享资源

作者:赛灵思时间:2016-01-27来源:电子产品世界收藏

  赛灵思的 IP Integrator 工具可帮助您改善设计输入生产力和多核  设计的资源优化。

本文引用地址:http://www.eepw.com.cn/article/201601/286363.htm

  作者:

  K Krishna Deepak

  赛灵思高级设计工程师

  kde@xilinx.com

  Dinesh Kumar

  赛灵思高级工程经理

  dineshk@xilinx.com

  Jayaram PVSS

  赛灵思高级工程经理

  jayaram@xilinx.com

  Ketan Mehta

  赛灵思高级IP产品经理

  ketanm@xilinx.com

  客户在必须由单个 FPGA 实现的大型设计中使用多个知识产权 (IP) 实例时,面临的主要挑战之一是如何在整个系统中有效共享资源。赛灵思  串行通信内核的共享逻辑特性使用户可以在多个实例中共享资源。 设计套件中的 IP Integrator 工具对于充分利用共享资源至关重要。

  电子行业正快速转向高速串行连接解决方案,同时逐渐舍弃并行通信标准。行业标准串行协议具有固定的线路速率和确定的信道宽度,有时无法充分利用千兆位串行收发器的功能。

   是赛灵思的高速串行通信协议,一直在行业内非常受欢迎。当某些应用领域中的行业协议实现过程太过复杂或者太耗费资源时,Aurora 通常是首选方案。Aurora 能实现低成本、高数据速率的可扩展IP解决方案,可用于灵活地构建高速串行数据通道。

  需要同时对线路速率和通道宽度进行扩展的高性能系统和应用正在期待将 Aurora 作为解决方案。此外,Aurora 还被应用于 ASIC 设计以及包含多块 FPGA 的系统(用背板传输千兆位的数据)中。Aurora 采用简单的帧结构,并具有协议扩展流量控制功能,可用于封装现有协议的数据。它的电气要求与产品设备兼容。赛灵思提供 Aurora 64b66b 和 Aurora 8b10b 内核,作为  设计套件 IP 目录的一部分。

   IP Integrator (IPI) 是用于复杂多核系统中资源优化的重要工具。就这一点而言,IPI 将帮助您充分利用 Aurora 64b66b 和 Aurora 8b10b 内核中的共享资源,尤其是“共享逻辑”特性。为了方便起见,我们重点介绍 Aurora 64b66b IP,同时您要了解类似技术也适用于 Aurora 8b10b 内核。

  AURORA 的共享资源一览

  图 1 是 Aurora 64b66b 内核的典型方框图。突出显示部分为时钟资源,例如混合模式时钟管理器 (MMCM)、BUFG 和 IBUFDS;以及千兆位收发器 (GT) 资源,例如 GT common 和 GT 通道,在图中标示为赛灵思 7 系列器件双路设计的 GT1 和 GT2。

    

1.jpg

 

  图 1–用橙色突出显示的 Aurora 64b66b 内核中的共享资源

  就像 Kintex-7 FPGA KC705 评估套件那样,典型 16 路 Aurora 64b66b 内核所需的时钟和 GT 资源已在表 1 中列出。

  FPGA 中的时钟和 GT 资源取决于所选的器件和封装类型。多个 IP 内核经常要求在系统级使用资源。因此,必须要优化利用这些宝贵资源,以降低系统成本和功耗。

  IPI 工具将内核作为顶层模块进行可视化;标准接口之间的连接现在更加直观和智能化,在有些情况下甚至可实现自动化。正确的设计规则检查被置入工具以及 IP 周围,以确保突出显示错误连接,以便设计人员在设计输入时发现它们。该工具能自动生成顶层封装文件以及调用正确的引脚级 I/O 要求,因此可帮助系统设计人员提高生产力。如果您已经设计了定制子模块,可以考虑

  AURORA 资源共享

  因为多款基于 GT 的赛灵思内核都支持共享逻辑特性,Aurora 内核可配置为“内核(主机)中的共享逻辑”或“实例设计(从机)中的共享逻辑”。当在系统级进行实例化时,两种配置的组合可支持在主机与从机之间共享时钟和 GT 资源。

  对于需要使用共享逻辑特性的应用,手动建立多个 IP 之间的连接有可能会产生错误,并增加总的设计输入时间。借助工具进行设计输入是一种解决该问题的方法,而赛灵思的 IP Integrator 能游刃有余地完成这个任务。

  依照赛灵思应用指南 1168,“针对 Vivado IP Integrator 打包定制 AXI IP”(XAPP1168) 对设计进行打包,并在 IPI 中使用子模块。

  Aurora 的共享逻辑特性不仅可让用户在多个实例中共享资源,而且还能在相同 GT Quad 封装中使用 GT 通道,无需编辑 GT common、PLL、时钟以及相关模块。唯一的约束是“共享”内核的线路速率应该相同(允许存在谐波,只要您能接受其对时钟资源的影响即可)。

  典型的共享逻辑设计在一个 Guad 中包含一个主机以及一个或多个从机实例。与大多数其它通信 IP 不同,Aurora不仅限于单个 Guad 共享。Aurora 内核的共享逻辑定义可扩展用于任意数量的受支持信道。

  下面的一些实例展示了 Aurora 共享逻辑特性的应用情况。

  多个单信道设计

  单部 FPGA 中的多个单信道设计与多信道设计的不同之处在于前者需要通道绑定。我们可以直观地看到多个单信道设计所需的资源会在系统级线性增加。让我们考虑不同情况,并了解共享逻辑特性如何在每种情况下起作用。

  我们首先从包含四条单信道的设计开始。通过实例化四个单信道 Aurora 内核,您可直接构建这类设计。如果我们实际执行该实现方案,会发现每个 Aurora 设计都有一个 GT common 实例;因此,该设计的布局和资源利用会遍及四个 GT Guad。这种方法消耗太多资源,不一定总是可行。

  表 1–Kintex-7 FPGA KC705 评估套件上的时钟和 GT 资源利用率

  为实现更好的布局以及在功耗和资源方面精心优化的解决方案,所选的四个 GT 应来自同一个 GT Guad。

  如果没有共享逻辑特性,而是通过手动处理所生成的设计来满足该要求,需要花费很大精力。要想有效使用共享逻辑特性,您需要生成一个主机模式的 Aurora 内核以及其它三个从机模式的 Aurora 内核,如图 2 所示。另外,还有一些其它的系统级考虑因素,例如主机内核控制了进入从机内核的时钟,所以需要对内核复位。只有用相同的线路速率配置 Aurora 内核,才能立即实现这种配置和资源优化。表 2 定量地说明了在系统中为四个单信道设计使用共享逻辑特性所能实现的优势。

    

2.jpg

 

  图 2–使用一个主机 Aurora 内核(左)和三个从机的共享逻辑设计

  占用 12 个 GT 通道的设计

  对于 7 系列 FPGA 而言,基于南北时钟的要求是如果从中间 Guad 中选择单个参考时钟源,其最多可服务 12 个 GT 通道。

  让我们考虑下这种使用情况,其需要 12 个单信道设计使用尽可能少的时钟资源。

  如果您将图 2 所示的“一个主机加三个从机”配置进行延伸,便可节省时钟资源。如果将这种 1+3 配置延伸为三个 Guad,那么设计一共需要六个差分时钟资源。不过,如果您选择让其中两个主机设计接受一个单端 INIT_CLK 和一个 GT 参考时钟,那么还能节省更多资源。这样我们可将该系统的差分时钟输入从六个减少至两个,从而节省 IBUFDS/IBUFDS_GTE2 资源需求(参见表 3)。设计中的 IBUFDS_GTE2 资源节省实际上还意味着可以节省外部时钟资源以及设计管脚。

  表 2–在包含四条单信道的设计中使用共享逻辑所实现的资源利用率优势

  此外,还可针对 MMCM 进行类似的优化。

  表 3–在包含 12 条单信道的设计中使用共享逻辑功能所实现的资源优势


上一页 1 2 下一页

关键词: Vivado Aurora

评论


相关推荐

技术专区

关闭