NVMe High-Speed Data Capture and Recorder
The Data Capture and Recording Challenge
After FPGA pre-processing, there are many streaming data sources customers want to capture or record, but achieving this at high speed (100 Gb/s) is challenging—that is where we can help!
What is a Reference Design?
BittWare offers Reference Designs for users who have their own FPGA engineering team and application IP, but would benefit from having a proven application framework—the Reference Design. This allows customers to focus on their application-specific IP.
These Reference Designs use a small part of the FPGA, leaving room for customer IP like filtering, decimation, signal processing and more. Our customers have requirements of 40 Gb/s or greater and minutes to hours of recording time at line rate.
What do we mean by Data Capture and Data Recorder?
For Data Capture, sensor data passes through the FPGA and CPU to host DDR4 DRAM memory.
The capture depth is typically limited to a few seconds for high data rates. DDR4 DRAM is relatively expensive.
For direct Data Record, sensor data passes through the FPGA directly to the SSD NVMe FLASH via a Molex cable assembly.
The record depth can be many hours at high data rates using standard off-the-shelf SSDs.
What sensor inputs are possible?
BittWare’s Data Capture and direct Data Recorder reference designs are based on a network packet generator and capture design using the 250-SoC accelerator card. This is a dual 100GbE product, however BittWare has a rich portfolio of other FPGA cards allowing data ingress from other sensor sources. Examples include: digital I/O, multi-channel RF ADC and video. Please contact BittWare for details.
Design #1: PCIe Data Capture and Recorder
This approach uses the standard PCIe interface of a BittWare FPGA card for data capture to host memory, and record to FLASH NVMe SSDs.
This reference design is included free with applicable BittWare hardware as described in the Deliverables. The majority of FPGA resources reserved for customer application IP. Customers can program their application using their preferred tool flow.
Extension to Design #1: Dual PCIe Data Capture
This is an extension of Design #1: using a second PCIe interface, we can achieve up to approximately 200 Gb/s to host memory. This is achieved by using BittWare’s on-board expansion ports to add a second PCIe connection to the one FPGA card. The second connection goes in an adjacent PCIe slot.
Customers can readily build this configuration through consultation with BittWare.
Design #2: NVMe Direct Data Recorder
The Data Recorder takes a different approach to Data Capture. The sensor data is streamed directly from the FPGA to the NVMe FLASH SSDs via a cable assembly that taps into the server mid-plane.
BittWare Recorder IP (subject to license), implemented in the FPGA, deals with NVMe access for the host application running on the CPU. This offloads significant processing burdens from the CPU and implements them efficiently in the FPGA. Customers can then record for many hours at high data rates. The CPU becomes supervisory in function, and therefore can be low cost, low power.
The NVMe drives are still exposed to the host application for optional read/write to the recorded data using standard NVMe drivers.
This reference design is included (conditions apply) with applicable BittWare hardware as described in the Deliverables. The majority of FPGA resources reserved for customer application IP. Customers can program their application using their preferred tool flow.
Hardware Platform Options
BittWare reference designs are initially supported on Xilinx-based products. Contact us to learn about support for Achronix- and Intel-based products.
Ready to Learn More?
Details on our NVMe High-Speed Data Capture and Recorder are available upon request. Get in touch with us to learn more!