Logo
Dune NVMe Storage Support
DuneNvme  1.0.2
This is a simple NVMe test environment that allows experimentation with the low level PCIe NVMe interfaces as available on a Xilinx FPGA environment.
Design Unit List
Here is a list of all design unit members with links to the Entities they belong to:
[detail level 12]
 NstreamSwitch
 CstreamSwitch.Behavioral
 CAxilClockConverterAXI Lite "bus" clock domain crossing module
 CAxilClockConverter.Behavioral
 CAxis_clock_converterThe Xilinx AXI4 Stream clock doamin crossing IP
 CAxisClockConverterAxisStream clock domain crossing module
 CAxisClockConverter.Behavioral
 CAxisDataConvertFifoAXI Stream data Fifo with conversion from 256 to 128 bits
 CAxisDataConvertFifo.Behavioral
 CCdcThis is a simple module to pass a set of signals across a clock domain
 CCdc.Behavioral
 CCdcSingleThis is a simple module to pass a single bit wide signal across a clock domain
 CCdcSingle.Behavioral
 CDuneNvmeTestOsperoTopThis module implements a complete test design for the NvmeStorage system with the KCU104 and Ospero OP47 boards
 CDuneNvmeTestOsperoTop.Behavioral
 CDuneNvmeTestTopThis module implements a complete test design for the NvmeStorage system with the KCU104 and AB17-M2FMC boards
 CDuneNvmeTestTop.Behavioral
 CFifoThis module provides a simple, single clocked FWFT FIFO
 CFifo.Behavioral
 CNvmeConfigThis module configures a Nvme device for operation
 CNvmeConfig.Behavioral
 CNvmeQueuesThis module implements the Nvme request/reply queues in RAM
 CNvmeQueues.Behavioral
 CNvmeReadThis module performs the Nvme read data functionality
 CNvmeRead.Behavioral
 CNvmeSimThis is a very basic module to simulate an NVMe device connected via PCIe to the Xilinx PCIe Gen3 IP block
 CNvmeSim.Behavioral
 CNvmeStorageThis is the main top level NvmeStorage module that provides access to the NVMe devices over the Axil bus and Axis request/reply streams
 CNvmeStorage.Behavioral
 CNvmeStorageUnitThis is the main Nvme control module for a single Nvme device
 CNvmeStorageUnit.Behavioral
 CNvmeStreamMuxThis module Multiplexes/De-multiplexes a 128bit Axis stream into two streams based on which Nvme device the packets are for/from
 CNvmeStreamMux.Behavioral
 CNvmeWriteThis module performs the Nvme write data functionality
 CNvmeWrite.Behavioral
 CPcie_hostThe Xilinx PCIe XDMA endpoint for host communications with the FPGA
 CPcie_hostThe Xilinx PCIe XDMA endpoint for host communications with the FPGA
 CPcie_hostThe Xilinx PCIe XDMA endpoint for host communications with the FPGA
 CPcie_nvme0The Xilinx PCIe Gen3 hard block interface to NVMe device
 CPcieStreamMuxThis module Multiplexes/De-multiplexes a PCIe 128 bit stream into two streams using the 128bit header
 CPcieStreamMux.Behavioral
 CPcieStreamMuxFifoThis module implements a simple 1/2 stage Fifo for the PcieStreamMux module
 CPcieStreamMuxFifo.Behavioral
 CRamThis module provides a simple dual ported RAM module that will be implemented in blockram if large enough
 CRam.Behavioral
 CRegAccessClockConvertorThis module passes register access signals across a clock domain
 CRegAccessClockConvertor.Behavioral
 CStreamSwitchThis module implements a PCIe packet switch transfering packets between streams
 CTestDataThis module provides a simple test data source for testing the NvmeStorage system
 CTestData.Behavioral
 CTestDataStreamThis module provides a simple test data source for testing the NvmeStorage system
 CTestDataStream.Behavioral