Please fill in the form below, so we can support you in your request.
Please fill in the form below, so we can support you in your request.


    ASICAMD (Xilinx)AchronixIntel (Altera)LatticeMicrochip (MicroSemi)Other

    By submitting this form you are consenting to being contacted by the MLE via email and receiving marketing information.

    X
    CONTACT MLE
    CONTACT MLE
    We are glad that you preferred to contact us. Please fill our short form and one of our friendly team members will contact you back.


      ASICAMD (Xilinx)AchronixIntel (Altera)LatticeMicrochip (MicroSemi)Other

      By submitting this form you are consenting to being contacted by the MLE via email and receiving marketing information.

      X
      CONTACT MLE

      100/200/400G NVMe FPGA RAID

      Accelerate NVMe RAID Data Recording and Replay

      Some High-Speed Data Acquisition Systems do require storing the data in non-volatile memory. For those cases where the read/write data rate exceeds the capabilities of even the highest performance NVMe SSDs, MLE has developed an FPGA-based NVMe RAID solution:

      400G NVMe FPGA RAID Data Recorder Application Scenario
      MLE’s 400G NVMe FPGA RAID can transfer bulky data from multiple sensors to the NVMe RAID SSD at the speed up to 400Gbps. It supports channel aggregation of multiple protocols from different input sources, and each channel has its dedicated engine and storage space.

      Now, you can transfer bulky data from multiple sensors to a RAID of NVMe SSDs at speeds up to 400 Gbps. MLE’s NVMe FPGA RAID implements a channel-based architecture, supports data-in-motion pre- and post-processing and is highly scalable with regards to bandwidth and recording capacity. Multiple systems can further be cascaded via high-accuracy IEEE time-synchronization for faster or deeper recording.

      Adaptable signal front-ends support many different I/O standards in a “mix & match” fashion. 

      MLE’s NVMe FPGA RAID is compatible with Linux Software-RAID (via the Linux MD driver). This allows recording at high data rates and replaying at slower speeds, or vice versa.

      Channel-based Architecture of NVMe FPGA RAID

      MLE’s NVMe FPGA RAID implements a channel-based architecture where each data source/sink can be associated with a dedicated RAID engine and a dedicated storage space. Each channel can have 10/25/50/75/100 Gbps, or combinations thereof.

      This channel-based architecture along with the combination of FPGA NVMe Recording Stack plus a well-tuned PCIe setup, delivers a best-in-class price/performance ratio for high-speed data acquisition, recording and replay. MLE’s multi-core NVMe Host Controller Subsystem supports dedicated NVMe queues per SSD in a PCIe Peer-to-Peer communication.

      Edit Template

      Applications

        • Autonomous Vehicle Path Record & Replay
        • Automotive / Medical / Industrial Test Equipment
        • High-speed Radar / Lidar / Camera Data Acquisition & Storage
        • Very Deep Network Packet Capture of Ethernet or IPv4 or TCP/UDP Data

      Key Features

        • Scalable from 100Gbps to 400Gbps
        • Cascading of multiple systems with time-synch
        • Start-Pause-Stop Data Recording
        • Pre-trigger Data Recording in circular buffers
        • Adaptable signal front-ends
        • Read/write compatible with Linux Software-RAID

      Scalability

      MLE’s NVMe FPGA RAID supports a wide range of NVMe SSDs and can be scaled from M.2 SSDs for small and light-weight embedded systems up to large 19” racks using high-performance U.2 or U.3 SSDs. Scalability also includes selecting from different SSD capacities and Drive-Writes-per-Day (DWPD) models. Here a table of possible recording times in minutes:

       Recording Speed (Gbps)
      Storage (TiB) 100150200250300350400
      57.24.83.62.92.421.8
      1014.39.57.25.74.84.13.6
      1521.514.310.78.67.26.15.4
      2028.619.114.311.59.58.27.2
      2535.823.917.914.311.910.28.9
      3042.928.621.517.214.312.310.7
      3550.133.425.120.016.714.312.5
      4057.338.228.622.919.116.414.3
      4564.442.932.225.821.518.416.1
      5071.647.735.828.623.920.517.9
      Recording Time in Minute(s)

      High Speed Data Recording Use Cases

      Besides record/replay of raw data we support data-in-motion pre- and post-processing that enables you to add your custom algorithms for indexing and metadata generation, on-the-fly data decimation, or running in “spy-mode” as a transparent data proxy.

      • Ingress data from the high-speed sensors are transferred and recorded at-speed and as-is onto the NVMe FPGA RAID.
      MLE400G NVMe RAID FPGA-based data recorder - Raw Data Recording
      • Communication from a high-speed data source can be transported to a data sink while this data is also recorded at-speed.
      MLE400G NVMe RAID FPGA-based data recorder - Raw Data Recording
      • Unwanted pieces of the ingress data is removed on-the-fly prior to storage. This can, for example, be a selection of certain regions-of-interest (ROI).
      • Ingress data can be analyzed on-the-fly to generate indexing information for later search, for example. This metadata is then recorded along with the ingress data. Metadata can, for example, be: Hardware timestamps, regions-of-interest, search indexes.
      MLE 400G NVMe RAID FPGA-based data recorder - Indexing and Metadata

      Exemplary Evaluation Reference Design of NVMe FPGA RAID

      The implementation example of MLE 100/200/400G NVMe FPGA RAID is built with AMD EPYC server-grade motherboard, NVMe FPGA RAID cards, and U.3 SSDs. This evaluation reference design is available now for testing with your front-end devices or SSDs.

      Test with Your Front-End Device Now!

      Test with Your SSDs Now!

      Pricing

      MLE’s license fee structure reflects the needs for best-in-class price/performance ratio for 100/200/400G NVMe FPGA RAID:

      Product Name DeliverablesExample Pricing

      Evaluation Reference Design (ERD)

      Available upon request as FPGA design project, with optional customizations (different target device, different transceivers, etc)

      Upon Request

      Inquire

      Turnkey System

      Completely hardware-software integrated ready-to-use system, available sizes from medium-sized embedded PC to 19″ rack mount, lab-use or ruggedized. You can bring your own SSDs, or choose SSDs from our many options depending on the storage capacity required.

      Starting at $14,8000.- (depends on FPGA device, line rate, and SSDs)

      Inquire

      NVMe FPGA RAID Card

      NVMe FPGA RAID Card based on off-the-shelf 3rd party FPGA cards, including AMD Alveo U50 / U55C with Ultrascale+ and HBM, AMD Alveo V80 with Versal and HBM, and Intel/Altera Agilex 7 AGF014 with DDR4.

      Starting at $8,000.-

      Inquire 

      Edit Template

      Documentation

      Frequently Asked Questions​

      No, the MLE 100/200/400G NVMe FPGA RAID data recorder is so-called Block Storage. So, no file systems are not supported. For each data transfer the user application logic selects a start and maximum end address, and then data is written to flash in a linear fashion. This achieves best performance and avoids write amplifications.

      Partitions are not explicitly supported. However, the user application logic can use the 100/200/400G NVMe FPGA RAID data recorder to read the SSD’s partition table and then set up transfers with start and maximum end address to be aligned to partitions.

      The standards for the 100/200/400G NVMe FPGA RAID data recorder is 4/8/16 SSDs. The number of SSDs can be adjusted to your application within certain limits, for example: the accumulated sustained write speed should be faster then the incoming data stream, or to many SSDs can cause latency issues.  However, we can customize the 100/200/400G NVMe FPGA RAID data recorder for your application to support more complex PCIe topologies. Please ask us for more details.

      The 100/200/400G NVMe FPGA RAID data recorder currently supports one single IO Queue per SSD. This IO Queue can have up to 128 entries, each with up to 128 KiB data. I.e. you can have up to 16 MiB of “data in flight” per SSD. If needed, we can change the depth and size of this IO Queue. However, given the needs of streaming applications increasing the number of IO Queues may not be advantageous.

      Yes, this is supported. Peer-to-Peer transfers can be very attractive as it frees up the host CPU. Team MLE can customize the 100/200/400G NVMe FPGA RAID data recorder for your application to support many more complex PCIe topologies, including multiple direct-attached SSDs, multiple SSDs connected via a 3rd party PCIe switch chip, including PCIe Peer-to-Peer. Please ask us for more details.

      The 100/200/400G NVMe FPGA RAID data recorder can be configured via an AXI4-Lite register space which can also be handled by a provided Linux handler. This register space is also used to set up and control streaming transfers. The actual data exchange then is handled via an AXI4-Stream master and slave. Some GPIO style status signals for informational purposes, like LEDs, are provided as well. This is documented in our developers guide.

      Currently, the 100/200/400G NVMe FPGA RAID data recorder handles 16 independent data streams. To save resources, the number of streams can be reduced without loosing the overall performance by widening the data paths. 

      Yes. Because the 100/200/400G NVMe FPGA RAID data recorder is agnostic to the formfactor of your SSD m.2, u.3/u.3, EDSFF and so on are supported, as long as your SSD “speaks the NVMe protocol” and not SATA nor SAS.

      While, again, the 100/200/400G NVMe FPGA RAID data recorder is compatible to work with any NVMe SSD, there are a couple of other aspects to keep in mind when selecting an NVMe SSD: Noise, vibration, harshness, temperature throttling, local RAM buffers, SLC, MLC, TLC, QLC, 3D-XPoint, etc. To enable our customers to deliver dependable performance solutions, we have worked with a set of 3rd party SSD vendors and would be happy to give you technical guidance in your project. Please inquire.