文章 ID: 000073644 内容类型: 故障排除 上次审核日期: 2021 年 08 月 27 日

为什么适用于 PCI* Express 的 Avalon-MM 英特尔® Stratix® 10 硬核 IP 和面向 PCI* Express 的英特尔 P-Tile Avalon® -MM IP 的突发Avalon-MM Master (BAM) 接口有不正确的地址?

环境

  • 英特尔® Quartus® Prime Pro Edition
  • 适用于 PCI Express* 的 Avalon-MM 英特尔® Stratix® 10 硬核 IP
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT

    关键问题

    说明

    由于英特尔® Quartus® Prime 专业版软件版本 19.3 出现问题,适合 PCI Express 的英特尔® P-Tile/H-Tile Avalon®内存映射 (Avalon-MM) IP 配置了多个不同尺寸的 BAR,BAM 上层地址不会根据 BAR 大小正确进行屏蔽。如果系统不将 BAR 物理地址与最高 BAR 大小对齐,则用户侧大小上的地址字段将不正确。

    例如,BAR0:64KB 和 BAR2:1MB,系统分配以下物理地址:

    面向 BAR0 的 F021000

    面向 BAR2 的 F020000

    BAM 地址为 20 位

    当系统发出针对 BAR0 偏移0x800的写入或读取请求时,BAM 接口将输出地址0x10800,而不是0x00800

    解决方法

    为解决英特尔® Quartus® Prime Pro Edition 软件版本 19.3 和 19.4 的这一问题,应用可以在外部使用 BAM BAR 管道 (bam_bar_o) 和 BAR 大小实施地址遮盖。

    例如:

    分配 bam_address_fix = (bam_bar_o== 3'b000) ?{4'b0,bam_address_o [15:0]} :bam_address_o;

     

    英特尔® Quartus® Prime Pro Edition 软件版本 20.1 解决了此问题。

    相关产品

    本文适用于 2 产品

    英特尔® Agilex™ 7 FPGA 和 SoC FPGA
    英特尔® Stratix® 10 FPGA 和 SoC FPGA

    本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。