{"title":"Design and implementation of non-volatile memory express","authors":"Sivashankar, S. Ramasamy","doi":"10.1109/ICRTIT.2014.6996190","DOIUrl":null,"url":null,"abstract":"Flash-memory-based solid-state disks (SSDs) provide faster random access and data transfer rates than electromechanical drives and today it can often serve as rotating-disk replacements, but the host interface to SSDs remains a performance bottleneck and also I/O subsystem causes unnecessary latencies, translations in the Read/Write commands. In order to completely utilize the performance of SSDs a Non Volatile Memory Subsystem was designed based on the NVM Express Specification. The communication to this I/O subsystem is through PCI Express interface and the command set is based on NVMe 1.0c Specification. The designed sub-system typically consists of PCIe Core, PCIe controller, NVMe controller, NAND Flash Controller and several NAND Chips. The present paper deals with the design and implementation of PCIe controller and the NVMe controller. The PCIe controller was designed as a generic bridge between any PCIe device and the PCIe Core. The NVMe controller was designed as a PCIe device which implements the NVMe Specification.","PeriodicalId":422275,"journal":{"name":"2014 International Conference on Recent Trends in Information Technology","volume":"22 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 International Conference on Recent Trends in Information Technology","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICRTIT.2014.6996190","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
Abstract
Flash-memory-based solid-state disks (SSDs) provide faster random access and data transfer rates than electromechanical drives and today it can often serve as rotating-disk replacements, but the host interface to SSDs remains a performance bottleneck and also I/O subsystem causes unnecessary latencies, translations in the Read/Write commands. In order to completely utilize the performance of SSDs a Non Volatile Memory Subsystem was designed based on the NVM Express Specification. The communication to this I/O subsystem is through PCI Express interface and the command set is based on NVMe 1.0c Specification. The designed sub-system typically consists of PCIe Core, PCIe controller, NVMe controller, NAND Flash Controller and several NAND Chips. The present paper deals with the design and implementation of PCIe controller and the NVMe controller. The PCIe controller was designed as a generic bridge between any PCIe device and the PCIe Core. The NVMe controller was designed as a PCIe device which implements the NVMe Specification.