发明名称 Small block write operations in non-volatile memory systems
摘要 A first portion of an asymmetric memory is configured as temporary storage for application data units with sizes corresponding to a small memory block that is smaller than the size of a logical write unit associated with the asymmetric memory. A portion of the remaining asymmetric memory is configured as a reconciled storage for application data units with varying sizes. A first application data unit is received for writing to the asymmetric memory. Based on computing the size of the first application data unit as corresponding to the small memory block, the first application data unit is written to the temporary storage. Upon determining that a threshold is reached, a memory write operation is performed for writing the application data units from the temporary storage to the reconciled storage. The application data units written to the reconciled storage are removed from the temporary storage.
申请公布号 US9021188(B1) 申请公布日期 2015.04.28
申请号 US201313843511 申请日期 2013.03.15
申请人 Virident Systems Inc. 发明人 Karamcheti Vijay;Singhai Ashish;Mondal Shibabrata;Gowda Swamy
分类号 G06F12/00;G06F13/00;G06F12/02 主分类号 G06F12/00
代理机构 Fish & Richardson P.C. 代理人 Fish & Richardson P.C.
主权项 1. A system comprising a non-transitory computer-readable medium storing instructions that are executable by a processor and upon such execution, configured with modules to cause the processor to perform operations, the modules comprising: a first configuring module that divides a first portion of an asymmetric memory into a set of buffers, wherein each buffer in the set is configured for temporary storage of application data units with sizes corresponding to a small memory block that is smaller than the size of a logical write unit associated with the asymmetric memory, wherein latency of read operations is different from latency of write operations in the asymmetric memory; an association modules that associates, with each buffer in the set, context information that is different from the context information corresponding to other buffers in the set; a second configuring module that configures a portion of the remaining asymmetric memory as a reconciled storage for application data units with varying sizes; a receiving module that receives a first application data unit for writing to the asymmetric memory, the first application data unit of a size corresponding to the small memory block; a tagging module that tags the first application data unit with context information; a selecting module that selects, from the set of buffers, a first buffer for temporary storage of the first application data unit, wherein selection of the first buffer is based on a match of the context information associated with the first buffer and the context information associated with the first application data unit; and a writing module that writes the first application data unit to the first buffer.
地址 Milpitas CA US