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

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

3天内不再提示

NVMe IP开发速成: 三个月不是梦

高速传输与存储 来源:高速传输与存储 作者:高速传输与存储 2025-04-14 19:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1开发NVME Host IP难在哪?

这里强调的是做商用IP,而不是只是以功能或性能验证为目的。

它主要由以下两大因素困扰:

1)协议复杂性:NVMe协议相对复杂,过程调试不尽如意。
2)开发周期长:即使有xilinx开发板,但是采用开发板上机调试,首先是编译时间长,增加调试时间;其次是不清楚如何排查问题,种种原因导致目前开发NVMe IP成为难点。

wKgZPGdSq7qABpp6AAKUM70t0XM692.png

2 基于UVM的Xilinx PCIE4 NVMe IP开发工具

目前应用NVMe IP主流器件大都采用xilinx的ultrascale或ultrascale+系列,如V,K和Zynq系列。虽然PC端已经支持PCIe5,但是FPGA端还停留在PCIe3.0或PCIe4.0.而PCIE4提供向下兼容,故推出配套的UVM验证工具选用支持PCIe4系列是符合目前开发需求。

3什么是Xilinx PCIE4

Xilinx PCIE4是Xilinx公司开发的AMD UltraScale+™ 设备集成块,全程为AMD UltraScale+™ Devices Integrated Block for PCI Express® (PCIe®) solution IP core, 此IP是一种高带宽、可扩展且可靠的串行互连构建模块,适用于 UltraScale+ 设备。AMD 在 UltraScale+ 架构中提供了两种 PCIe 集成块:PCIE4 集成块和 PCIE4C 集成块。PCIE4 块是 UltraScale+ 设备中使用的,支持 PCIe IP。配备高带宽存储器 (HBM) 的 AMD Virtex™ UltraScale+™ 设备包含 PCIE4 块和增强型 PCIE4C 块的混合配置。

PCIE4 块支持 1-lane、2-lane、4-lane、8-lane 和 16-lane 配置,包括 Gen1 (2.5 GT/s)、Gen2 (5.0 GT/s) 和 Gen3 (8 GT/s) 的速度,符合 PCI Express 基本规范 3.1 版。PCIE4C 块在功能上等同于 PCIE4 块,并且额外支持 Gen4 (16 GT/s) 的速度,支持 1-lane、2-lane、4-lane 和 8-lane 配置,符合 PCI Express 基本规范 4.0 版。该解决方案支持 AXI4-Stream 接口作为用户接口。

wKgZO2dSseOAbptvAADbLe43Y2I416.png

PCIe调用示意图

4 为什么么要在PCIE4上开发NVMe IP

1. 高带宽和高性能
支持 Gen1 (2.5 GT/s)、Gen2 (5.0 GT/s)、Gen3 (8 GT/s) 和 Gen4 (16 GT/s) 的不同速率。
可以根据实际需求选择不同的带宽和速率,满足不同应用对性能的要求。
2. 灵活的配置选项
提供 1-lane、2-lane、4-lane、8-lane 和 16-lane 配置选项,可以根据需要进行扩展,提供灵活的设计空间。
支持多种配置选项,可以根据系统的需求来平衡带宽和硬件资源。
3. 兼容性和标准化
PCIe 4.0 版本(PCIE4C块)支持 16 GT/s 速度,并与 PCI Express Base Specification, Revision 4.0 兼容。这样可以确保设备在未来的系统中保持兼容性,支持最新的高速传输标准。
PCIe 3.1 版本(PCIE4块)与 PCI Express Base Specification, Revision 3.1 兼容,确保它与现有设备和平台的兼容性。
4. 扩展性和可定制性
提供多个数据通道配置,支持 AXI4-Stream 接口,使得设计者可以根据具体应用需求灵活调整系统架构,进行扩展。
支持与多个设备之间的高效通信,增强了数据传输的灵活性和可定制性。

wKgZO2dSsm2AKS50AAA5tsCBoDA970.png

5. 为何需要基于UVM 的NVMe IP开发工具
作为NVMe IP开发者,在构建IP时总是需要不断修改,然后编译上板测试,每一次编译,少则20分钟,多则两三个小时,对IP的热情总是在满怀期待的希望等待中磨灭,NVMe IP开发工具作为一个仿真验证环境,有以下特点
1)基于UVM验证环境,对熟悉UVM的伙伴非常友好,便于后续特定测试用例的编写与修改

wKgZPGdSsqeAK05aAABIh9BwEI0769.png

架构图


2) 提供完整的NVMe测试用例,包括PCIE初始化,枚举,NVME初始化,NVMe读写事务一目了然。

wKgZO2dSsu-ABONcAAGF3rk04OM059.png

3) 提供基于三星980pro编写的Refence Model,可模拟全场景下的NVMe设备行为。极大提高上板成功概率,在上板前解决各种疑难问题
4) 极大缩短验证所需的时间,根据传输的数据量不同,在1-5分钟即可完成波形仿真。
5) 可做仿真极限压力测试,经测试,在128位AXIS,时钟频率250MHz下,NVMe读写峰值可达到3500 MB/s

感兴趣的可以看B站视频:
https://www.bilibili.com/video/BV1SnzGYsEh8/?spm_id_from=333.337.search-card.all.click&vd_source=c355545d27a44fe96188b7caefeda6e7
或者B站搜用户名: 专注与守望 上面有更多相关视频
或CSDN: https://mp.csdn.net/mp_blog/manage/article?spm=1011.2124.3001.5298

审核编辑 黄宇

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

    关注

    1655

    文章

    22288

    浏览量

    630340
  • IP
    IP
    +关注

    关注

    5

    文章

    1849

    浏览量

    154929
  • nvme
    +关注

    关注

    0

    文章

    287

    浏览量

    23721
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Xilinx高性能NVMe Host控制器IP+PCIe 3.0软核控制器IP,纯逻辑实现,AXI4和AXI4-Stream DMA接口,支持PCIe 3.0和4.0

    )读写、DMA读写和数据擦除功能,提供用户一简单高效的接口实现高性能存储解决方案。NVMe AXI4 Host Controller IP读写的顺序传输长度是RTL运行时动态可配置的,最小
    发表于 11-14 22:40

    NVMe高速传输之摆脱XDMA设计43:如何上板验证?

    本文主要交流设计思路,在本博客已给出相关博文几十篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求,请看B站视频后联系。 在完成
    发表于 10-30 18:10

    资本狂潮涌向XR:10家企业3个月狂吸金,最高拿下6亿巨资

    一领域的布局。在国内市场,XR领域的融资活动同样如火如荼地进行着。 电子发烧友网统计了4至今的融资事件发现,有10家XR领域的企业在这三个月左右的时间里完成新一轮融资,包括AR智能眼镜企业、显示芯片企业、XR芯片企业、AI智能眼镜企业。 从翻
    的头像 发表于 07-15 09:04 1.1w次阅读
    资本狂潮涌向XR:10家企业3<b class='flag-5'>个月</b>狂吸金,最高拿下6亿巨资

    NVMe IP高速传输却不依赖XDMA设计之:系统架构

    所设计的新系统架构中,Nvme over PCIe IP通过 PCIe 3.0x4 接口连接 NVMe固态硬盘, 并提供 AXI4-Lite 接口用于系统控制, 以及 AXI4 接口用于数据传输
    的头像 发表于 06-29 17:46 897次阅读
    <b class='flag-5'>NVMe</b> <b class='flag-5'>IP</b>高速传输却不依赖XDMA设计之<b class='flag-5'>三</b>:系统架构

    NVMe IP高速传输却不依赖便利的XDMA设计之:系统架构

    结合目前应用需求,以及前面基础分析,确定IP应具有如下特色: (1) 通用性 前端数据采集系统基于 FPGA 开发。 一方面, 设备类型多, 使用的 FPGA型号各不相同, 需要实现的设计能够在多种
    发表于 06-29 17:42

    NVMe协议研究扫盲

    电子科技大学的王琳琳基于Zynq完成了NVMe SSD的读写控制,通过在的PS端运行Linux系统,在PL端通过PCIe硬核IP连接NVMe SSD,实现了135 MB/s的写入速度和143 MB/s的读取
    发表于 06-02 23:28

    NVMe IP之AXI4总线分析

    针对不同的应用场景,制定了三个不同类型的接口,其中包括AXI4-Full、AXI4-Lite以及AXI4-Stream。表1为种AXI4总线的对比。 表1种AXI4总线对比 总线名称
    发表于 06-02 23:05

    充电桩出海,缩短三个月项目周期,竟是因为它?

    现在的智能充电桩,不止是“充电”这么简单 用户希望操作简单,厂商希望更节能 而 “人来亮屏、人走熄屏” 这种小细节 正成为体验感拉满的 关键点 某头部充电桩品牌在做一功能时 选用的雷达模组 虽功能已全部实现 但该模组无 CE 认证 致使整机认证时间拉长 项目出海受阻 客户急需性能稳定、认证齐全的方案 便找到了安信可的科技 Rd-03 模组 安信可推出的Rd-03人体感应雷达模组 凭借完整的CE、FCC认证、出色的产品性能与售后服务支持 等优势脱颖而
    的头像 发表于 05-28 11:45 418次阅读
    充电桩出海,缩短<b class='flag-5'>三个月</b>项目周期,竟是因为它?

    nvme IP开发之PCIe上

    ,获取其它设备的响应。 PCIe层次结构 PCIe 总线是一种分层协议总线,采用数据包进行数据传输。数据包在收发过程中需要经过事务层、数据链路层和物理层三个层次的处理和转发。PCIe总线的分层结构如图2
    发表于 05-17 14:54

    NVMe协议简要分析

    项的释放; (5)Status Field:状态域。 4 NVMe工作流程 NVMe协议中的Admin命令和IO命令执行流程相同,主要通过SQ、CQ和DB寄存器三个关键部件之间的相互协作来完成
    发表于 05-15 00:34

    NVMe控制器IP设计之接口转换

    这是NVMe控制器IP设计系列博客之一,其他的见本博客或csdn搜用户名:tiantianuser。相关视频见B站用户名:专注与守望。 接口转换模块负责完成AXI4接口与控制器内部的自定义接口之间
    发表于 05-10 14:33

    NVME控制器设计1

    功能划分为命令控制模块、 队列管理模块、 PRP 管理模块三个部分。 图1NVMe 控制模块架构图 指令控制模块负责 NVMe 指令的组装、分配、注销。在NVMe协议中, 一条
    发表于 04-24 09:45

    黄仁勋时隔3个月再次到访北京 黄仁勋:中国是英伟达非常重要的市场

    今天 (417日)英伟达公司首席执行官黄仁勋应中国贸促会的邀请抵达北京。这是黄仁勋时隔3个月后再次到访北京。 早在三个月前,黄仁勋按照既定计划参加英伟达台湾分公司的年会,与英伟达员工及其家人,一同
    的头像 发表于 04-17 19:26 947次阅读

    星芯片部门获准每周工作64小时

    SamMobile报道称;星半导体研发部门延长工时的申请获得劳动部京畿道分支机构的批准。韩国政府允许星半导体研发部门的员工每周工作最长 64 小时,具体来说,在前三个月每周工作最长 64 小时,随后
    的头像 发表于 04-16 11:20 758次阅读

    ALINX NVME SPCle IP 特性详解

    NVMe SPCle IP 正是为这样的场景量身定制。通过结合 PCIe 软核 IPNVMe 主机控制器,让开发人员 在无硬核的情
    的头像 发表于 02-20 15:35 786次阅读
    ALINX <b class='flag-5'>NVME</b> SPCle <b class='flag-5'>IP</b> 特性详解