axpro的个人空间 https://blog.eetop.cn/424254 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

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

已有 448 次阅读| 2024-7-15 23:28 |个人分类:交流共享|系统分类:芯片设计| nvme, axi4, ssd, pcie

NVMe AXI4 Host Controller IP

1      介绍

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

无需CPUNVMe Host Controller IP自动执行对PCIe SSDPCIe设备枚举和配置、NVMe控制器识别和初始化、NVMe队列设置和初始化,实现必须以及可选的NVMe Admin Command SetNVM Command Set,实现对PCIe SSD的复位/断电/SMART/Error Information/Device Self-test管理、IOPage)读写、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要求。

1.1      特性

Ø  支持Ultrascale+Ultrascale7 Series FPGA

Ø  支持PCIe Gen4PCIe Gen3PCIe Gen2 SSD

Ø  无需CPU

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

Ø  支持对PCIe SSDNVM Subsystem ResetController ResetShutdown

Ø  支持NVMe Admin Command SetIdentifySMARTError InformationDevice Self-testCreate/Delete IO Submission/Completion QueueSet Features – Volatile Write Cache/Arbitration

Ø  支持NVMe NVM Command SetWriteReadFlushDataset Management

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

Ø  提供1IO命令接口,实现对PCIe SSDIOPage)读写、Cache Flush和逻辑数据块擦除功能;提供1IO-AXI4-MM接口读写IOpage)数据

Ø  提供1DMA命令接口,实现对PCIe SSDDMA读写功能

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

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

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

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

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

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

Ø  支持的NVMe设备:

n  Base Class Code01hmass storage),Sub Class Code08hNon-volatile),Programming Interface02hNVMHCI

n  MPSMINMemory Page Size Minimum):04K-byte

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

n  LBA Unit512-byte1024-byte2048-byte4096-byte

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

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

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

2      概述

NVMe AXI4 Host Controller IP作为一个对PCIe SSD的高性能存储控制器,不但提供对PCIe SSD的配置管理功能,而且提供对PCIe SSDIOPage)读写以及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 SetIdentifySMARTError InformationDevice Self-testCreate/Delete IO Submission/Completion QueueSet Features – Volatile Write Cache/Arbitration

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

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

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

                                             nvme-axi4-host-controller-ip-diagram.JPG

2 NVMe AXI4 Host Controller IP结构框图

3   产品规格

3.1 性能

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

1.     PCIe Gen3 SSD(三星990 Pro 4TB),Seq=512KB1DMA通道:

a)       DMA写入速度3380MB/s

b)       DMA读取速度3550MB/s

2.     PCIe Gen3 SSD(三星970EVO Plus 1TB),Seq=512KB1DMA通道:

a)       DMA写入速度3320MB/s

b)       DMA读取速度3480MB/s

3.     PCIe Gen3 SSDIntel D5-P5530 3.84TB),Seq=512KB1DMA通道:

a)       DMA写入速度3350MB/s

b)       DMA读取速度3440MB/s

4.     PCIe Gen3 SSD(三星980 Pro 1TB),Seq=512KB1DMA通道:

a)       DMA写入速度2950MB/s

b)       DMA读取速度3430MB/s

3.2            资源

1.    KU040

3.1 PCIe Gen3 SSDSeq=512KQueue Depth=81-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 SSDSeq=512KQueue Depth=82-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 SSDSeq=512KQueue Depth=84-DMA


LUTs

FFs

BRAMs

PCIe

总资源

29686

36972

33

1

NVMe Host Controller

24188

28933

16

0

PCIe Bridge

5499

8049

17

1

 

2.    ZU7EV

3.4 PCIe Gen3 SSDSeq=512KQueue Depth=81-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 SSDSeq=512KQueue Depth=82-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 SSDSeq=512KQueue Depth=84-DMA


LUTs

FFs

BRAMs

PCIe

总资源

35462

46253

50

1

NVMe Host Controller

24045

29160

16

0

PCIe Bridge

11363

17137

34

1





点赞

发表评论 评论 (2 个评论)

回复 axpro 2024-8-30 12:52
NVMe主机控制器使用手册,AMBA-AXI-Stream接口,AMBA-AXI4接口,Xilinx FPGA

NVMe A4S Host Controller User Guide

NVMe AXI4 Host Controller User Guide
回复 axpro 2024-9-11 23:18
Email:neteasy163z@163.com

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 9

    粉丝
  • 9

    好友
  • 2

    获赞
  • 23

    评论
  • 2304

    访问数
关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-31 00:30 , Processed in 0.025588 second(s), 16 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部