0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Xilinx NVMe AXI4主机控制器,AXI4接口高性能版本介绍

axpro 来源:axpro 作者:axpro 2024-07-18 09:17 次阅读

NVMe AXI4 Host Controller IP

介绍

NVMe AXI4 Host Controller IP可以连接高速存储PCIe SSD,无需CPU,自动加速处理所有的NVMe协议命令,具备独立的数据写入和读取AXI4接口,不但适用高性能、顺序访问的应用,也适用于随机访问的应用,同时结合外部存储器(比如DDR),使得Host端的数据访问管理更加灵活。

无需CPU,NVMe Host Controller IP自动执行对PCIe SSD的PCIe设备枚举和配置、NVMe控制器识别和初始化、NVMe队列设置和初始化,实现必须以及可选的NVMe Admin Command Set和NVM Command Set,实现对PCIe SSD的复位/断电/SMART/Error Information/Device Self-test管理、IO(Page)读写、DMA读写和数据擦除功能,提供用户一个简单高效的接口实现高性能存储解决方案。

NVMe AXI4 Host Controller IP读写的顺序传输长度是RTL运行时动态可配置的,最小是4K-Byte,最大是512K-Byte。每次读写访问,用户可以指定本次传输的顺序传输长度(4K~512K Byte),不同的顺序传输长度对应不同的DMA读写性能。

针对多路数据通道访问PCIe SSD,使用NVMe的多队列特性,NVMe AXI4 Host Controller IP支持灵活配置DMA读写的通道个数,按照NVMe队列优先级仲裁(循环仲裁或加权循环仲裁)机制,实现多个DMA通道对同一块PCIe SSD的高效访问,从而达到多路数据通道访问的并行需求和QoS要求。

特性

支持Ultrascale+,Ultrascale,7 Series FPGA

支持PCIe Gen4,PCIe Gen3,PCIe Gen2 SSD

无需CPU

自动实现对PCIe SSD的PCIe设备枚举、NVMe控制器识别和NVMe队列设置

支持对PCIe SSD的NVM Subsystem Reset、Controller Reset和Shutdown

支持NVMe Admin Command Set:Identify、SMART、Error Information、Device Self-test、Create/Delete IO Submission/Completion Queue、Set Features – Volatile Write Cache/Arbitration

支持NVMe NVM Command Set:Write、Read、Flush、Dataset Management

提供1个Admin命令接口,实现对PCIe SSD的复位/断电/SMART/Error Information/Device Self-test管理功能

提供1个IO命令接口,实现对PCIe SSD的IO(Page)读写、Cache Flush和逻辑数据块擦除功能;提供1个IO-AXI4-MM接口读写IO(page)数据

提供1个DMA命令接口,实现对PCIe SSD的DMA读写功能

提供1个DMA-AXI4接口实现DMA数据的输入和输出

DMA读写的顺序传输长度可以动态配置,4K-Byte~512K-Byte;不同的顺序传输长度对应不同的DMA读写性能

针对多通道DMA需求,可以配置4个DMA命令接口,1个DMA-AXI4接口

NVMe队列的个数(配置DMA通道的个数)和深度可配置,平衡对PCIe SSD的DMA性能和消耗的逻辑资源

支持循环仲裁(Round Robin Arbitration)和加权循环仲裁(Weighted Round Robin Arbitration)

支持NVMe Admin和IO命令的超时和错误处理恢复机制,提供详尽以及扩展的访问错误状态输出

支持的NVMe设备:

Base Class Code:01h(mass storage),Sub Class Code:08h(Non-volatile),Programming Interface:02h(NVMHCI)

MPSMIN(Memory Page Size Minimum):0(4K-byte)

MDTS(Maximum Data Transfer Size):大于等于顺序传输长度或0(无限制)

LBA Unit:512-byte,1024-byte,2048-byte或4096-byte

一个NVMe AXI4 Host Controller IP直接连接到PCIe SSD

易于集成的同步、可综合Verilog设计

通过完全验证的NVMe AXI4 Host Controller IP

概述

NVMe AXI4 Host Controller IP作为一个对PCIe SSD的高性能存储控制器,不但提供对PCIe SSD的配置管理功能,而且提供对PCIe SSD的IO(Page)读写以及DMA读写功能。

NVMe AXI4 Host Controller IP具备PCIe SSD Management,实现对PCIe SSD的复位/断电/SMART/Error Information/Device Self-test管理功能。

NVMe AXI4 Host Controller IP具备ASQ/ACQ引擎,实现NVMe Admin Command Set:Identify、SMART、Error Information、Device Self-test、Create/Delete IO Submission/Completion Queue、Set Features – Volatile Write Cache/Arbitration。

NVMe AXI4 Host Controller IP具备IO(Page) Wr/Rd引擎和SQ1/CQ1引擎,实现对PCIe SSD的IO(Page)读写、Cache Flush和逻辑数据块擦除功能。

NVMe AXI4 Host Controller IP具备DMA Wr/Rd引擎和SQn/CQn引擎,实现对PCIe SSD的DMA读写功能。

上电后,NVMe AXI4 Host Controller IP内置的PCIe Device Enumerate & Configuration自动实现对PCIe SSD的PCIe设备枚举和配置;然后内置的NVMe Controller Identify & Initialization自动实现对PCIe SSD的NVMe控制器识别和初始化;最后内置的Queue Setup & Initialization自动实现对PCIe SSD的NVMe队列设置和初始化。至此,NVMe AXI4 Host Controller IP完成对PCIe SSD的所有配置和初始化工作,可以开始提供对PCIe SSD的读写、擦除、复位、断电、SMART、Device Self-test操作。

wKgZomaX58qAJdpBAAHSYGh3ItM420.png

图 2 NVMe AXI4 Host Controller IP结构框图

产品规格

性能

PCIe配置参数:Max Payload Size=256-byte,Max Read Request Size=512-byte

PCIe Gen3 SSD(三星990 Pro 4TB),Seq=512KB,1个DMA通道:

DMA写入速度3380MB/s

DMA读取速度3550MB/s

PCIe Gen3 SSD(三星970EVO Plus 1TB),Seq=512KB,1个DMA通道:

DMA写入速度3320MB/s

DMA读取速度3480MB/s

PCIe Gen3 SSD(Intel D5-P5530 3.84TB),Seq=512KB,1个DMA通道:

DMA写入速度3350MB/s

DMA读取速度3440MB/s

PCIe Gen3 SSD(三星980 Pro 1TB),Seq=512KB,1个DMA通道:

DMA写入速度2950MB/s

DMA读取速度3430MB/s

资源

KU040

表3.1 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,1-DMA

LUTs FFs BRAMs PCIe
总资源 16016 21927 21 1
NVMe Host Controller 10518 13878 4 0
PCIe Bridge 5499 8049 17 1

表3.2 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,2-DMA

LUTs FFs BRAMs PCIe
总资源 20546 26994 25 1
NVMe Host Controller 15043 18949 8 0
PCIe Bridge 5499 8049 17 1

表3.3 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,4-DMA

LUTs FFs BRAMs PCIe
总资源 29686 36972 33 1
NVMe Host Controller 24188 28933 16 0
PCIe Bridge 5499 8049 17 1

ZU7EV

表3.4 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,1-DMA

LUTs FFs BRAMs PCIe
总资源 21920 31099 38 1
NVMe Host Controller 10558 13962 4 0
PCIe Bridge 11363 17137 34 1

表3.5 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,2-DMA

LUTs FFs BRAMs PCIe
总资源 26448 36126 42 1
NVMe Host Controller 15083 19029 8 0
PCIe Bridge 11363 17137 34 1

表3.6 PCIe Gen3 SSD,Seq=512K,Queue Depth=8,4-DMA

LUTs FFs BRAMs PCIe
总资源 35462 46253 50 1
NVMe Host Controller 24045 29160 16 0
PCIe Bridge 11363 17137 34 1



审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PCIe
    +关注

    关注

    15

    文章

    1217

    浏览量

    82423
  • 主机控制器
    +关注

    关注

    0

    文章

    16

    浏览量

    11773
  • AXI4
    +关注

    关注

    0

    文章

    20

    浏览量

    8880
  • nvme
    +关注

    关注

    0

    文章

    217

    浏览量

    22580
收藏 人收藏

    评论

    相关推荐

    AMBA AXI4接口协议概述

    AMBA AXI4(高级可扩展接口 4)是 ARM 推出的第四代 AMBA 接口规范。AMD Vivado Design Suite 2014 和 ISE Design Suite 1
    的头像 发表于 10-28 10:46 150次阅读
    AMBA <b class='flag-5'>AXI4</b><b class='flag-5'>接口</b>协议概述

    有关PL端利用AXI总线控制PS端DDR进行读写(从机wready信号一直不拉高)

    怎么判断他到底采用了这三种握手里面的哪种握手,这实在令人费解。还是PS端的DDR的机制的问题。 5.31 update: 问题找到部分: 情形一:接口的设置上,如果是设置为AXI4,如图所示, 那么
    发表于 05-31 12:04

    SoC设计中总线协议AXI4AXI3的主要区别详解

    AXI4AXI3是高级扩展接口(Advanced eXtensible Interface)的两个不同版本,它们都是用于SoC(System on Chip)设计中的总线协议,用于处
    的头像 发表于 05-10 11:29 5998次阅读
    SoC设计中总线协议<b class='flag-5'>AXI4</b>与<b class='flag-5'>AXI</b>3的主要区别详解

    高性能NVMe主机控制器Xilinx FPGA PCIe 3

    独立的数据写入AXI4-Stream/FIFO接口和数据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,
    发表于 04-20 14:41

    FPGA通过AXI总线读写DDR3实现方式

    AXI总线由一些核心组成,包括AXI主处理接口AXI4)、AXI处理
    发表于 04-18 11:41 1207次阅读

    高性能NVMe主机控制器Xilinx FPGA NVMe Host Accelerator IP

    独立的数据写入AXI4-Stream/FIFO接口和数据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,
    发表于 04-10 22:55

    Xilinx FPGA高性能NVMe SSD主机控制器NVMe Host Controller IP

    独立的数据写入AXI4-Stream/FIFO接口和数据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,
    发表于 03-27 17:23

    Xilinx FPGA NVMe主机控制器IP,高性能版本介绍应用

    独立的数据写入AXI4-Stream/FIFO接口和数据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,
    发表于 03-09 13:56

    PCIe-AXI-Cont用户手册

    Transaction layer的所有功能特性,不仅内置DMA控制器,而且具备AXI4用户接口,提供一个高性能,易于使用,可定制化的PCIe-AX
    发表于 02-22 09:15 3次下载

    PCIe控制器(FPGA或ASIC),PCIe-AXI-Controller

    Transaction Layer的所有功能特性,不仅内置DMA控制器,而且具备AXI4用户接口,提供一个高性能,易于使用,可定制化的PCIe-AX
    的头像 发表于 02-21 15:15 825次阅读
    PCIe<b class='flag-5'>控制器</b>(FPGA或ASIC),PCIe-<b class='flag-5'>AXI</b>-Controller

    Xilinx FPGA NVMe Host Controller IP,NVMe主机控制器

    独立的数据写入AXI4-Stream/FIFO接口和数据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,
    发表于 02-21 10:16

    Xilinx FPGA NVMe控制器NVMe Host Controller IP

    据读取AXI4-Stream/FIFO接口,非常适合于超高容量和超高性能的应用。此外,NVMe Host Controller IP支持RAID存储,从而可实现更高存储
    的头像 发表于 02-18 11:27 841次阅读
    <b class='flag-5'>Xilinx</b> FPGA <b class='flag-5'>NVMe</b><b class='flag-5'>控制器</b>,<b class='flag-5'>NVMe</b> Host Controller IP

    漫谈AMBA总线-AXI4协议的基本介绍

    本文主要集中在AMBA协议中的AXI4协议。之所以选择AXI4作为讲解,是因为这个协议在SoC、IC设计中应用比较广泛。
    发表于 01-17 12:21 2141次阅读
    漫谈AMBA总线-<b class='flag-5'>AXI4</b>协议的基本<b class='flag-5'>介绍</b>

    AXI总线协议总结

    由数据线、地址线、控制线等构成。 接口是一种连接标准,又常常被称之为物理接口。 协议是传输数据的规则。 1.简介 AXI4总线协议是 ARM 公司 提出的AMBA( Ad vanced
    的头像 发表于 12-16 15:55 768次阅读

    XILINX FPGA IP之AXI Traffic Generator

    AXI Traffic Generator IP 用于在AXI4AXI4-Stream互连以及其他AXI4系统外设上生成特定序列(流量)。它根据IP的编程和选择的操作模式生成各种类型
    的头像 发表于 11-23 16:03 2338次阅读
    <b class='flag-5'>XILINX</b> FPGA IP之<b class='flag-5'>AXI</b> Traffic Generator