PCIE学习笔记(四)Xilinx FPGA PCI Express 硬核配置 |
您所在的位置:网站首页 › 设置pcie › PCIE学习笔记(四)Xilinx FPGA PCI Express 硬核配置 |
目录 2.3.2 配置核IP生成 2.3.2.1 Base模式 2.3.2.2 Advanced模式 本文主要介绍Xilinx 7系列FPGA的 IP 核配置与应用,使用的工具版本为VIVADO 2019。 2.3.2 配置核IP生成打开VIVADO工具,点击 IP Catalog 搜索“PCIE”,双击打开”7 Series Integrated Block for Express(3.3)”.在7系列的PCIe IP核的配置包括两种模式:Base模式和Advanced模式,接下来我们主要介绍这两种模式的页面配置。 2.3.2.1 Base模式Base模式的配置页面如下。该模式用来定义IP核的基本参数,包括组建名称、通道数和链路速率。 Basic 页面设置详解在Mode中选择Basic。 Device /Port Type:选择终端模式还是Root Port模式。 PCIe Block Location:选择PCIe所在quad,该选择会生成特定的引脚和区域约束文件和引脚分配。 Xilinx Development Board:选择Xilinx开发板来生成开发板专用的约束文件,比如可以选择官方的KC705 REVA开发板。 Silicon Revision:选择Silicon版本,有Initial_ES或者GES_and_Production。 Number of Lanes:通道数。 Maximum Link Speed:最大的链路速率。 AXI Interface Frequency:AXI接口速率。也是用户的时钟速率。推荐使用默认的速率。参见下图。 1. 接口的数据位宽为静态选择的,不能通过动态链路的更改而改变。 2. Artix-7设备不支持250MHz。 AXI Interface Width:AXI接口的数据位宽。 Reference Clock Frequency:参考时钟频率,请根据sys_clk提供的参考时钟的频率进行选择。 Tandem Configuration:Tandem配置方式,分为None,PROM和PCIe三种。Tandem支持的设备有K325T,K410T,K420T,V485T和K160T。 PIPE Mode Simulations:管道模式仿真。该选项组提供了三个单选按钮,用来选择两种仿真机制中的一种。 1. None:不启用仿真的PIPE模型。(默认)。 2. Enable Pipe Simulation:该选项产生一个连接到IP核的用来仿真的PIPE接口。该选项适用于终端和Root Port模式,并且只有在配置了Shared Logic (clocking) in example design option。才能被选中。 3. Enable External PIPE Interface:该选项使用了外部第三方的总线功能模块(BFM)连接到PIPE接口。 Enable External Startup Primitive:启用STARTUP元件。 Enable External GT Channel DRP: 启用额外的GT和DRP 端口 Additional Transceiver Control and Status Ports:额外的收发器的监控接口。 IDs 页面设置详解IDs标签页用来配置IP核的初始化参数,分类代码和卡总线CIS指针信息。 Vendor ID:供应商ID,Xilinx默认的Vendor ID为10EEh, 表示该IP核是Xilinx的产品。 Device ID:设备识别码,默认的设值为70h。该属性可以根据实际的应用被设置为任意值。如图中所示配置PCIE IP 核为2.5 Gps,X1 模式,其Device ID的只即为0x7011 Revision ID:设备或应用的版本号。默认为00h。 Subsystem Vendor ID:子系统供应商号,默认10EE。默认与Vendor ID相同。 Subsystem ID:子系统号,是Vendor的补充信息,默认与Device ID相同。 Class Code Look-up Assistant:提供了辅助设置Class Code的工具,可以根据设备通用的功能,自动设置Class Code中的参数。(建议选择)。 Class Code标签页是IP核的按用途分类信息,分类代码寄存器是只读的,用于标识设备的总体功能。有如下三部分组成。 Base Class:设备的基本类型,如选择内存控制 (Memory controller) 则对应的值为05。 Sub-Class:类型的进一步的细分类型,如选择RAM 则对应的值为00。 Interface:定义了专用的寄存器级的编程接口。允许不依赖于设备的软件,与该设备通讯。 Cardbus CIS Pointer:用于cardbus系统,并指向cardbus卡的卡片信息结构。如果该字段非零,则必须在正确的位置存在适当的卡片信息结构。默认值是0000_0000h;值范围是0000_0000h-FFFF_FFFFh。 BARs 页面配置详解Base Address Registers (BARs)页面如下,用来配置基地址寄存器,BAR0~5为32bit的参数。 终端模式的IP核的配置空间,支持6个32-bit的BAR或者3个64 bit的BAR(如Bar0使用了64bit则Bar1将会被自动disable),以及扩展的ROM BAR。 而Root Port配置空间支持2个32bit的BAR,或则1个64bit的BAR,以及扩展的ROM BAR。 32-bit BAR:存储和I/O寻址空间在128B—2GB之间。 64-bit BAR:存储和I/O寻址空间在128B—8GB之间。 BARx Enabled:使能该BAR。 Type:该BAR为存储还是I/O类型。 Size:BAR大小。 BAR的大小的设置参考下图。 Prefetchable:存储空间是否具有预读取的能力。 Value:BARx基地址。 Expansion ROM Base Address Register:扩展的ROM基地址寄存器。按照PCI 3.0的总线规范,该BAR的大小不能超过16MB。 建议在新的设计中避免使用I/O类型的BAR。 建议将不使用的BAR disable掉。 Core Capabilities 页面设置详解 Core Capabilities 页面用来配置IP的初始化参数,Class Code和Cardbus CIS指针信息。 Capabilities Register: Capability Version:定义了PCI-SIG®定义的PCIe capability structure的版本号,该值不能更改。Device Port Type:定义了PCI Express逻辑设备的类型。Slot Implemented:指定与该端口链路连接的槽。(只在Root Port模式下使用)。Capabilities寄存器:表示Capabilities寄存器的值,不可修改。Device Capabilities Register: Max Payload Size:设置PCIE支持的最大数据包,可配置128B、256B、512B、1024B。Device Capabilities Register:设备功能寄存器的值,不可修改。Block RAM配置选项: Buffering Optimized for Bus Mastering Applications:该选项将会告诉远端设备,其授权机制专门为总线管理应用而优化过。Performance Level:选择性能的级别,该选项将会决定接收器和发送器的大小尺寸。性能越高,相对地消耗的资源越大。Device Capabilities2 Register:显示Device Capabilities2寄存器的值,不可修改。 Interrupt 页面配置详解Interrupt页面用来设置PCI兼容的中断和MSI中断仿真的参数。PCIE支持两种中断方式,第一种是PCI总线的中断方式,模拟中断 引脚INTx的中断通知方式,与现行的PCI总线驱动程序核操作系统兼容;第二种是MSI(Message Signaled Interrupt)方式。MSI中断是通过存储器写操作边沿触发的,和原来的INTx方式驱动不兼容。 Enable INTX:使能INTX(PCI兼容传统的PCI中断信号)。 Interrupt PIN:只支持INTA的中断信号。 Enable MSI Capability Structure:使能MSI功能结构。 64 bit Address Capable:该选项可以发送64-bit的消息地址。 Multiple Message Capable:选择向Root Complex请求的中断矢量的数量,最大256个。 Per Vector Masking Capable:该选项可以指定为每个中断矢量启用掩码功能。 2.3.2.2 Advanced模式 Basic页面设置详解Basic标签页,中的Mode选择Advanced模式,即进入高级配置模式 与Basic模式相同。 Enable External GT Channel DRP:该选项将产生一个DRP接口,用来给用户动态配置IP核属性。(不建议用户使用,需要在Xilinx技术支持的指导下操作)。 Identifiers (IDs)与Basic模式相同。 Address Registers (BARs)与Basic模式相同。 Core Capabilities页面配置本节仅描述和base模式不一样的部分: Device Capabilities寄存器配置参数有: Extended Tag Field:扩展的发送包的标志字段,启用时为Tag字段为8-bit,不启用时Tag字段为5-bit。Extended Tag Default:默认的扩展标记。启用时Device Control寄存器的第8Bit位被设置为1,用来支持拓展的Tag使能(ECN)。Phantom Functions:表示支持使用未声明的函数号,以通过逻辑地将未声明的函数号(称为Phantom函数)与标记标识符结合,来扩展未完成的事务数。Acceptable L0s Latency:表示由于从L0s状态转换到L0状态,端口能够承受的可接受的总延迟。Acceptable L1 Latency:表示从L1状态转换到L0状态时,端点可以承受的可接受延迟。 PCIe 2.1 Specific: UR Atomic:如果选中,内核将自动响应原子操作请求,并发出不支持的请求。如果未选中,内核将原子操作TLPs传递给用户。32-bit AtomicOp Completer Support:表示支持32-bit的原子响应完成机制。64-bit AtomicOp Completer Support:表示支持64-bit的原子响应完成机制。128-bit CAS Completer Support:表示支持128-bit的比较和交换的完成机制。TPH Completer Supported:表示支持TPH的完成机制。 Link Registers页面配置Enable Slot Clock Configuration:表示终端模式下使用的是连接器提供的物理的参考时钟,如果使用的是独立的参考时钟,则必须不能选中该选项。 Interrupts页面配置详解Table Size:表的大小。 Table Offset:表基地址相对基地址寄存器的偏移。 BAR Indicator:表示在配置空间中映射MSI-X表的基地址寄存器。如果基地址寄存器为64-bit,则由低的DW来表示。 MSIx Pending Bit Array (PBA) Settings:定义了MSI-X的PBA结构。PBA Offset:MSI-X PBA基地址相对基地址寄存器的偏移。 PBA BAR Indicator:表示在配置空间中映射MSI-X PBA的基地址寄存器。 其他选项通base 模式。 Power Management页面配置 该标签页用来设置电源管理寄存器的参数,功率消耗(power consumption包括整个应用的功率消耗,如I/O扇出的功率等)和功率耗散(power dissipation 只包括芯片自身的热消耗和电阻压降等)的参数。 (暂略)。 Extended Capabilities 2页面配置(暂略)。 TL Settings页面配置(暂略)。 DL and PL Settings 页面配置(暂略)。 Shared Logic页面配置设置在example中的多个实例中共享时钟还是共享GT_COMMON。 Core Interface Parameters页面配置用户可以选择要使用的核心接口参数。默认情况下,所有端口都被取出。对于某些情况,如果不使用某些接口,您可能会选择禁用它们。当禁用时,接口(端口)将从核心顶部删除。 Add. Debug Options 页面配置该选项使能JTAG调试功能。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |