Multi-user NVMe-IP (muNVMe-IP) PCIe Gen4 IP cores introduction
NVMe PCIe Gen4 SSD offer very high performance and low latency on single SSD device. Making it possible to share the single SSD with multiple users at the same time.
We would like to introduce the new data storage IP core which can allow multiple data stream access simultaneously to NVMe PCIe Gen4 SSD. Utilizing the latest NVMe SSD more efficiently and maximizing systems performance.
This article will show you 4 topics
- NVMe SSD performance vs PCIe speed
- Example data rate requirements
- Simultaneous & multiple data stream access application
- muNVMe-IP for Gen4 Solutions
Maximum data bandwidth is double over each PCI Express generation. NVMe SSD uses 4 PCI express lane, which mean a theoretical maximum speed for each generation are
- 2GB/s for Gen2
- 4GB/s for Gen3
- 8GB/s for Gen4
From our test with high performance NVMe SSD model, we found that practical SSD performance is around 75% as shown in this chart.
Anyway, 6GB/s performance from NVMe Gen4 SSD is very high and possible for sharing access among multiple users.
Let see data rate requirements in some high-end application.
In 8K raw video stream, 8k resolution with 24bit color and 30 frame per second, need to handle date rate around 2,848MB/s
In 4K raw video stream, 4k resolution with 24bit color and 60 frame per second, need to handle date rate around 1,424MB/s
One of the example application is 8K ultra HD video recording at 120 frames per second. This application requires about 2,800 MBs/s at sustain data rate, which can be implemented based on our NVMe-IP Core DDR reference design.
One of the example application is 4K ultra HD video recording at 120 frames per second. This application requires about 1,400 MBs/s at sustain data rate, which can be implemented based on our NVMe-IP Core DDR reference design.
In 5G wideband receiver or 5G radio data logger, with 10 Giga sampling per second, need to handle date rate around 1,250MB/s per 5G radio channel.
In High-end 640-slice CT Scanner, has the capability to scan 1,000 times more images per second than traditional CT scanner, need to handle data rate around 1,800MB/s or more.
Above example requires 1~3GB/s data rate per direction which still have room utilize remaining bandwidth for multiple access.
muNVMe-IP : Multi User NVMe IP
Multiple Data Stream Access To NVMe SSD Simultaneously Without CPU!
Comparing with standard NVMe-IP core which is designed to operate with single user only. NVMe-IP core can execute only one command from 1 user at time. While muNVMe-IP core is designed to support up to 4 users and can execute command from each user simultaneously.
Both IP can be configured with 2 different buffer modes
- 1MB buffer size for high-speed & high-performance application
- 256KB buffer size for normal application
Here is systems overview of muNVMe-IP core
- Support up to 4 users interface and able to execute each user command simultaneously
- Each user can send read or write command at time
- First user can support 6 commands included with: 4 SSD management command (Identify, Shutdown, SMART, Flush) and 2 transfer command (Read and Write)
- The IP is designed to interface directly with PCIe Gen4 Hard IP in root complex mode
- Internal buffer size can be configured in 2 modes: 1MB size and 256KB size
Next, let see possible application for muNVMe-IP for NVMe Gen4 SSD.
First, example application, multiple 8K and 4K video stream recording.
NVMe Gen4 SSD is capable to record 1 x 8K Video stream and 2 x 4K Video stream at the same time. Each video stream can directly interface with each user interface of muNVMe-IP. Allowing to create multiple video channel recording systems without no CPU and OS.
Second, example application is 5G radio data logger.
Each 5G radio channel is captured at 10 giga sampling per second, which is around 1,250MB/s. Multiple 5G radio channel recording at the same time is possible by muNVMe-IP Core and high performance NVMe PCIe Gen4 SSD.
While real-time recording, you can use available user interface to read recorded data from SSD for monitoring or radio data processing without need to stop the recording systems.
The last example application is high performance CT Scanner for medical application.
For 640-slice CT Scanner, raw data rate from CT scanner is around 1,800MB/s. For more advance and higher performance such as 1024-slice capable, raw data rate may be around 2,900MB/s.
High performance recording speed up to 3,000MB/s, while simultaneous read for data analytics should enable highly efficient CT Scanner operate and usage to server as much as possible patient.
Hope these 3 example applications could show you the possible use cases and potential of muNVMe-IP Core.