Patents Assigned to Skyera, LLC
  • Patent number: 9529710
    Abstract: A solid state drive (SSD) includes: non-volatile semiconductor memory (NVSM); a first plurality of flash controllers, each flash controller having a processor; and a second plurality of channels, each consecutive channel assigned to a different flash controller.
    Type: Grant
    Filed: February 19, 2014
    Date of Patent: December 27, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Justin Jones, Rodney N. Mullendore
  • Patent number: 9507523
    Abstract: A data storage device may comprise an array of flash memory devices comprising a plurality of blocks, each comprising a plurality of physical pages. A controller may be coupled to and configured to program and read data from the array responsive to host commands. The controller may be configured to store data in a plurality of logical pages (L-Pages) of different sizes, each associated with an L-Page number that is configured to enable the host to logically reference data stored in one or more of the physical pages; and maintain a logical-to-physical address translation map configured to enable the controller to determine a location, within one or more physical pages, of the data referenced by each L-Page number. The translation map may comprise a plurality of mapping entries arranged by L-Page numbers, each comprising a complete starting physical address of an L-Page within one of the physical pages.
    Type: Grant
    Filed: October 12, 2012
    Date of Patent: November 29, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Rodney N. Mullendore, Radoslav Danilak, Justin Jones, Andrew J. Tomlin
  • Patent number: 9507529
    Abstract: Various systems, methods, apparatuses, and computer-readable media for accessing a storage device are described. In certain example embodiments, an active/active fault-tolerant storage device comprising two or more controllers may be implemented. In one aspect, each controller may have two or more processing entities for distributing the processing of the I/O requests. In one embodiment, the configuration of the components, modules and the controller board may be arranged in a manner to enhance heat dissipation, reduce power consumption, spread the power and work load, and reduce latency. In one embodiment, each controller may be coupled to the non-volatile memory (NVM) blades comprising the non-volatile memory (NVM) storage medium. In one example implementation, a standardized protocol, such as the Peripheral Component Interconnect Express protocol may be used for communicating amongst the various components of the controller and also the NVM storage medium.
    Type: Grant
    Filed: December 7, 2015
    Date of Patent: November 29, 2016
    Assignee: Skyera, LLC
    Inventors: Radoslav Danilak, William Radke
  • Patent number: 9489296
    Abstract: A data storage device may comprise non-volatile memory devices, each configured to store a plurality of physical pages, a controller and a first volatile memory configured to store a logical-to-physical address translation map that enables the controller to determine a physical location of logical pages. The controller may maintain, in the memory devices, a plurality of journals defining physical-to-logical page correspondences, each entry of which associating one or more physical pages to a logical page. Garbage collection may be carried out by reading entries of the journals; determining a validity of each logical page referenced by the read entries through a comparison with a corresponding entry in the map, the logical pages referenced by the read entries being stored in first physical pages; writing logical pages determined to be valid to second physical pages and updating the map accordingly; and designating at least the first physical pages as free space.
    Type: Grant
    Filed: October 17, 2012
    Date of Patent: November 8, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Andrew J. Tomlin, Rodney N. Mullendore, Justin Jones
  • Patent number: 9471242
    Abstract: A data storage system includes: non-volatile solid state memory including non-volatile storage units and a temporary register; a data storage controller configured to receive a write command including a plurality of logical segments of data from a host; a write buffer allocated to receive a portion of the plurality of logical segments of data and accumulate a physical segment of data corresponding to a write unit of the solid state memory; a solid state memory controller configured to transmit the accumulated data from the write buffer to the temporary storage register each time the write buffer accumulates a physical segment of data. The data storage controller acknowledges completion of the write command to the host after the last logical segment of data is written to the write buffer; and deallocates the write buffer after the solid state memory completes reception of the accumulated data into the temporary storage register.
    Type: Grant
    Filed: October 20, 2015
    Date of Patent: October 18, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Justin Jones, Andrew J. Tomlin, Rodney N. Mullendore, Radoslav Danilak
  • Patent number: 9454474
    Abstract: A data storage device comprises a non-volatile memory comprising a plurality of blocks, each configured to store a plurality of physical pages at predetermined physical locations. A controller programs and reads data stored in a plurality of logical pages. A volatile memory comprises a logical-to-physical address translation map configured to enabling determination of the physical location, within one or more physical pages, of the data stored in each logical page. A plurality of journals may be stored, each comprising a plurality of entries associating one or more physical pages to each logical page. At startup, the controller may read at least some of the plurality of journals in an order and rebuild the map; indicate a readiness to service data access commands after the map is rebuilt; rebuild a table from the map and, based thereon, select block(s) for garbage collection after having indicated the readiness to process the commands.
    Type: Grant
    Filed: March 5, 2013
    Date of Patent: September 27, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Andrew J. Tomlin, Justin Jones, Rodney N. Mullendore
  • Patent number: 9384088
    Abstract: A method for writing data in a data storage device includes: writing data to a physical memory location in a non-volatile memory; writing, for a first time, to a location in a volatile memory corresponding to a logical address of the data, a physical address of the physical memory location of the non-volatile memory containing the data; and writing, for a second time, to the location in the volatile memory corresponding to the logical address of the data, the address of the physical memory location of the non-volatile memory containing the data. The physical address of the physical memory location is written with appended error detection code information, and the error detection code information is determined based on the logical address of the data.
    Type: Grant
    Filed: April 10, 2014
    Date of Patent: July 5, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Justin Jones, Andrew J. Tomlin, Rodney N. Mullendore
  • Patent number: 9363315
    Abstract: An integrated networked storage and switching apparatus comprises one or more flash memory controllers, a system controller, and a network switch integrated within a common chassis. The integration of storage and switching enables the components to share a common power supply and temperature regulation system, achieving efficient use of available space and power, and eliminating added complexity of external cables between the switch a storage devices. Additionally, the architecture enables substantial flexibility and optimization of network traffic policies for both network and storage-related traffic.
    Type: Grant
    Filed: August 28, 2012
    Date of Patent: June 7, 2016
    Assignee: Skyera, LLC
    Inventor: Radoslav Danilak
  • Patent number: 9354955
    Abstract: A method for managing garbage collection of memory locations in an DSD having a plurality of dies each having a plurality of memory blocks includes: selecting a physical region of memory to be garbage collected, the selected physical region being a subset of a block management region; and garbage collecting the selected physical region. The garbage collecting includes: determining one or more journals corresponding to the selected physical region, the journal comprising transaction entries indicating what logical data are written to memory locations in the selected physical region; determining whether the memory locations within the physical region contain valid data based on a comparison of information in the journal and a mapping table; and if valid data exists, copying valid data into memory locations in memory regions other than the selected physical region of memory. The selected physical region of memory is erased when the block management region is erased.
    Type: Grant
    Filed: April 10, 2014
    Date of Patent: May 31, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Justin Jones, Andrew J. Tomlin, Paul Sweazey, Johnny A. Lam, Rodney N. Mullendore
  • Patent number: 9336134
    Abstract: Various systems, methods, apparatuses, and computer-readable media for accessing a storage device are described. In certain example embodiments, an active/active fault tolerant storage device comprising two or more controllers may be implemented. In one embodiment, each controller may be coupled to the non-volatile memory (NVM) blades comprising the non-volatile memory (NVM) storage medium. In one example implementation, a standardized protocol, such as Peripheral Component Interconnect Express protocol may be used for communicating amongst the various components of the controller and also the NVM storage medium.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: May 10, 2016
    Assignee: Skyera, LLC
    Inventors: Radoslav Danilak, William Radke
  • Patent number: 9317083
    Abstract: A chassis for a storage system contains a digital chamber that houses conventional electronic components and a thermal chamber that houses non-volatile solid state memory such as flash memory. A temperature regulating system monitors temperature within the digital chamber to keep the components therein below their maximum junction temperature. The temperature regulating system tightly regulates the temperature of solid state memory chips to within a nominal operating temperature range selected to extend the lifetime and/or improve the endurance and reliability of the solid state memory. The temperature regulating system may regulate different memory chips to different nominal temperatures based on the operations being performed and lifetime factors for the memory chips including current health and prior use.
    Type: Grant
    Filed: February 22, 2013
    Date of Patent: April 19, 2016
    Assignee: Skyera, LLC
    Inventor: Dmitry Vyshetsky
  • Patent number: 9304557
    Abstract: In various embodiments, a high-density solid-state storage unit includes a base section and a cassette section having plurality of flash cards. The cassette section can be removably attached to the base section to provide security of data stored on the plurality of flash cards. The cassette section provides for physical security of the flash cards in part through packaging of the enclosure and energy transfer to the base station. The cassette section further provides for security of the data stored on the flash cards in part through a trusted platform module (TPM) embodied as a removable module connected to a universal serial bus (USB) style connector.
    Type: Grant
    Filed: November 21, 2013
    Date of Patent: April 5, 2016
    Assignee: Skyera, LLC
    Inventors: Pinchas Herman, William Radke, Radoslav Danilak
  • Patent number: 9304709
    Abstract: A method of writing data to a range of logical blocks in a storage medium includes: receiving a command including a starting logical block address, a value indicating a range of logical block addresses to be written, and a logical block of data; storing the logical block in a first temporary storage; generating a logical page by duplicating the logical block a plurality of times corresponding to a number of logical blocks in a logical page and transporting the generated logical page to a second temporary storage and storing the generated logical page in the second temporary storage; writing the generated logical page from the second temporary storage into the storage medium beginning from the starting logical block address; and performing a read-modify-write operation if the first write operation does not begin on a logical page boundary or the last write operation does not end on a logical page boundary.
    Type: Grant
    Filed: September 6, 2013
    Date of Patent: April 5, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Jack W. Flinsbaugh, Justin Jones, Rodney N. Mullendore, Andrew J. Tomlin
  • Patent number: 9301402
    Abstract: A rack mountable 1U storage unit includes a plurality of memory modules arranged in two groups. The storage unit also has control circuitry. The memory modules have a dedicated exhaust channel to draw heat away from the memory modules. The exhaust channel for the memory modules is disposed over and is physically separated from the exhaust channel for the control circuitry. The storage unit can accommodate up to 42 memory modules due to a unique method of placing the individual memory modules.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: March 29, 2016
    Assignee: Skyera, LLC
    Inventors: Pinchas Herman, William Radke, Radoslav Danilak
  • Patent number: 9286176
    Abstract: A solid state drive (SSD), includes: a plurality of solid state memory devices, each solid state memory device including a plurality of memory blocks arranged in a plurality of planes; a storage; and an SSD controller configured to: write data to memory blocks in a predefined sequence, detect a defective memory block in the plurality of solid state memory devices, mark the detected memory block as defective and store an address of a next non-defective memory block, and in response to data to be written to the marked memory block, the controller skips the marked memory block and writes the data to the next non-marked memory block.
    Type: Grant
    Filed: January 15, 2014
    Date of Patent: March 15, 2016
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Andrew J. Tomlin, Justin Jones, Rodney N. Mullendore, Radoslav Danilak
  • Patent number: 9268682
    Abstract: A data storage device comprises a plurality of non-volatile memory devices storing physical pages, each stored at a predetermined physical location. A controller may be coupled to the memory devices and configured to access data stored in a plurality of logical pages (L-Pages), each associated with an L-Page number that enables the controller to logically reference data stored in the physical pages. A volatile memory may comprise a logical-to-physical address translation map that enables the controller to determine a physical location, within the physical pages, of data stored in each L-Page. The controller may be configured to maintain, in the memory devices, journals defining physical-to-logical correspondences, each journal covering a predetermined range of physical pages and comprising a plurality of entries that associate one or more physical pages to each L-Page. The controller may read the journals upon startup and rebuild the address translation map from the read journals.
    Type: Grant
    Filed: October 5, 2012
    Date of Patent: February 23, 2016
    Assignees: Skyera, LLC, Western Digital Technologies, Inc.
    Inventors: Andrew J. Tomlin, Rodney N. Mullendore, Justin Jones, Radoslav Danilak
  • Patent number: 9250828
    Abstract: A memory system including parent data and clone data is disclosed, where the clone data represents a clone of the parent data. The system determines whether clone data to be accessed is different from corresponding data in the parent. The system also determines a physical location of the data to be accessed based on whether the data to be accessed is different from the corresponding parent data. The system also accesses the data based on the physical location.
    Type: Grant
    Filed: October 29, 2013
    Date of Patent: February 2, 2016
    Assignee: Skyera, LLC
    Inventor: Qi Wu
  • Patent number: 9229855
    Abstract: Various systems, methods, apparatuses, and computer-readable media for accessing a storage device are described. In certain example embodiments, an active/active fault-tolerant storage device comprising two or more controllers may be implemented. In one aspect, each controller may have two or more processing entities for distributing the processing of the I/O requests. In one embodiment, the configuration of the components, modules and the controller board may be arranged in a manner to enhance heat dissipation, reduce power consumption, spread the power and work load, and reduce latency. In one embodiment, each controller may be coupled to the non-volatile memory (NVM) blades comprising the non-volatile memory (NVM) storage medium. In one example implementation, a standardized protocol, such as the Peripheral Component Interconnect Express protocol may be used for communicating amongst the various components of the controller and also the NVM storage medium.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: January 5, 2016
    Assignee: Skyera, LLC
    Inventors: Radoslav Danilak, William Radke
  • Patent number: 9218279
    Abstract: A method of performing an atomic write command in a data storage device comprising a volatile memory and a plurality of non-volatile memory devices configured to store a plurality of physical pages. The method may comprise storing data in a plurality of logical pages (L-Pages), each associated with a logical address. A logical-to-physical address translation map may be maintained in the volatile memory, and may be configured to enable determination of a physical location, within one or more of the physical pages, of the data referenced by each logical address. The data specified by a received atomic write command may be stored one or more L-Pages. Updates to the entry or entries in the translation map associated with the L-Page(s) storing the data specified by the atomic write command may be deferred until all L-Pages storing data specified by the atomic write command have been written in a power-safe manner.
    Type: Grant
    Filed: May 15, 2013
    Date of Patent: December 22, 2015
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Andrew J. Tomlin, Justin Jones, Rodney N. Mullendore
  • Patent number: 9177638
    Abstract: A data storage device may comprise a plurality of Multi-Level Cell (MLC) non-volatile memory devices comprising a plurality of lower pages and a corresponding plurality of higher-order pages. A controller may be configured to write data to and read data from the plurality of lower pages and the corresponding plurality of higher-order pages. A buffer may be coupled to the controller, which may be configured to accumulate data to be written to the MLC non-volatile memory devices, allocate space in the buffer and write the accumulated data to the allocated space. At least a portion of the accumulated data may be written in a lower page of the MLC non-volatile memory devices and the space in the buffer that stores data written to the lower page may be de-allocated when all higher-order pages corresponding to the lower page have been written in the MLC non-volatile memory devices.
    Type: Grant
    Filed: November 13, 2012
    Date of Patent: November 3, 2015
    Assignees: Western Digital Technologies, Inc., Skyera, LLC
    Inventors: Radoslav Danilak, Rodney N. Mullendore, Andrew J. Tomlin, Justin Jones, Jui-Yao Yang