Achieving beyond 7GB/s transfer speeds on NVMe Gen4 SSD with next generation FPGA IP Core

Welcome to our video in the Storage IP series. Today, we will showcase the powerful functionality of NVMeG4 IP core on the AMD Xilinx evaluation board. 

Our solution breaks barriers by enabling intermediate-grade FPGAs that lack PCIe Gen4 Hard IP, featuring only PCIe Gen3 Hard IPs or transceivers, to access NVMe Gen4 SSD. 

With the NVMeG4 IP, you can achieve data transfer at speed of 7400 Mbytes/sec, doubling the speed compared to NVMe Gen3 SSDs. 

This means you can achieve exceptional throughput even on cost-effective FPGA models. 

Design Gateway offers two types of NVMe IP cores: the NVMe IP using the PCIe Hard IP and the NVMe IP including the PCIe Soft IP. 

Compare the concepts behind these two types

First, let’s take a brief look at the NVMe IP using the Hard IP. 

In this configuration, the NVMe Gen4 SSD is connected to the PCIe Gen4 Hard IP, which incorporates an FPGA transceiver for high-speed data transfer. 

The NVMe IP core facilitates direct connectivity between the SSD and the Hard IP, enabling the NVMe host function.

To initiate data transfer with the SSD, the User Logic can simply generate Write or Read command requests. 

Moving on to the second type of our NVMe IP core, it is designed for FPGAs that lack the PCIe Hard IP. 

In this scenario, only the transceiver is available for connecting with the SSD. 

To operate the PCIe Hard IP function, the PCIe Soft IP becomes necessary for interfacing with the transceiver. We refer to this configuration as the NVMeG4 IP, which includes the built-in PCIe Soft IP. 

Despite not utilizing the PCIe Gen4 Hard IP, it still provides the NVMe host function.

Example comparing the FPGA models when using NVMeG4 IP and NVMe IP

In this example, we’ll be focusing on the Kintex UltraScale+ model, the AMD Xilinx FPGA. 

From the provided table, we can observe that the smallest device model, KU3P, is capable of integrating the NVMeG4 IP. The unit price for this device is approximately 2,000 USD. 

On the other hand, using the NVMe IP requires a device that includes the PCIe Hard IP, the KU19P, which comes with a unit price of around 10,000 USD. Using the NVMeG4 IP can save significantly on the device cost. 

However, the resource utilization of the NVMeG4 IP, in comparison to the NVMe IP, is considerably larger due to the implementation of the PCIe Soft IP. 

Therefore, it depends on the users to determine which IP option best aligns with their system specifications.

Board Setup

To prepare the hardware for running the NVMeG4 IP demo, we will need the following components. 

  • First is the ZCU102 board 
  • Second is AB17 M2FMC adapter board from Design Gateway 
  • Last one is an NVMe Gen4 SSD 
  • To begin, connect an NVMe Gen4 SSD to Drive1 M.2 slot on the AB17 adapter
  • Then, connect the AB17 adapter to HPC connector on ZCU102 board 
  • Use two micro USB cables for JTAG programming and Serial console 
  • Finally, plug in the Xilinx power adapter to power the FPGA board 

By assembling and connecting these hardware components, we will be ready to proceed with the NVMeG4 IP demo. 

Write and Read Performance

Now, let’s execute two commands: Write and Read, to showcase the performance of the NVMeG4 IP.

In the demonstration, the left console will display the Write operation, while the right console will show the Read operation.

To ensure consistent and accurate results, we will set the transfer size to 64 Gbytes using the LFSR (Linear Feedback Shift Register) test pattern.

Write Performance
Read Performance

The Read operation achieves an impressive data transfer speed of 7,400 Mbytes/sec.

Read Performance

On the other hand, the Write speed is approximately 7,000 Mbytes/sec. 

Write Performance

Performance comparison: NVMe IP operating at Gen3 speed and NVMeG4 IP

The NVMeG4 IP surpasses its predecessor with impressive performance improvements. It achieves data transfer speeds, surpassing 7400 Mbytes/sec. 

In contrast, the NVMe IP operating at Gen3 speed only reaches 3300 Mbytes/sec. 

This significant performance boost showcases the enhanced efficiency of FPGA systems equipped with only PCIe Gen3 hard IP when using the NVMeG4 IP for data transfer with SSDs. 

To demonstrate the capabilities of our NVMeG4 IP, we offer a free evaluation demo that can be accessed through our website. 

Visit our website today to learn more and access the evaluation demo.