WO1994019746B1 - Flash solid state drive emulating a disk drive to processing elements - Google Patents
Flash solid state drive emulating a disk drive to processing elementsInfo
- Publication number
- WO1994019746B1 WO1994019746B1 PCT/US1994/001698 US9401698W WO9419746B1 WO 1994019746 B1 WO1994019746 B1 WO 1994019746B1 US 9401698 W US9401698 W US 9401698W WO 9419746 B1 WO9419746 B1 WO 9419746B1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- solid state
- sector
- stored
- state memory
- data
- Prior art date
Links
- 239000007787 solid Substances 0.000 title claims abstract 40
- 206010008415 Chediak-Higashi syndrome Diseases 0.000 claims 5
- 238000007906 compression Methods 0.000 claims 3
- 238000001514 detection method Methods 0.000 claims 2
- 230000004044 response Effects 0.000 claims 1
Abstract
A flash solid state drive, having a flash solid state memory (27) compatible with ATA/IDE Interface standards to be connected to a host for storing or retrieving sectors of data, where each sector contains 512 bytes of data, each sector is addressed by a cylinder, head and sector number (CHS) and said host provides for a read or write operation, said solid state memory (27) having stored therein a header for each CHS address that can be issued by said host, said header having indicia identifying the data block and indicating where the data for said data block is stored in said solid state memory (27), said flash solid state device comprising a translation means (19) for translating said CHS address into a logic sector number LSN for identifying sectors in said flash solid state drive and a control means (17 and 20) for converting said sectors received from the host into a variable length sector to be stored in said flash solid state memory (27).
Claims
1. A solid state drive having a solid state memory connected to a host for receiving and sending fixed length data blocks to and from the host, said solid state drive comprising: control means for converting said fixed length data blocks received from the host into a variable length data blocks to be stored in said solid state memory as data blocks of nonuniform length.
2. The solid state drive of Claim 1 wherein said control means comprises: compression means for compressing said fixed length data block received from the host to form a compressed data block of a nonuniform length; storing means for storing said compressed data in said solid state memory as data blocks of nonuniform length and for retrieving data blocks of nonuniform length from said solid state memory; and decompression means for decompressing a said compressed data block read from said solid state memory to recover said received data block as received from the host.
3. The solid state drive of Claim 1 wherein said control means further comprises: selection means for controlling whether said fixed length data blocks received from the host is to be stored as a fixed length data block or as a variable length data block in said solid state memory; and marking means for generating indicia to be stored with said data block indicating whether that said data block was stored as a fixed length or variable length data block. - 49 -
4. The solid state drive of Claim 1 wherein said solid state memory further comprises: translation means for translating said drive address into a block number for identifying a data block within said solid state drive.
5. A flash solid state drive, having a flash solid state memory compatible with ATA/IDE Interface standards to be connected to a host for storing or retrieving sectors of data, where each sector contains 512 bytes of data, each sector is addressed by a cylinder, head and sector number CHS and said host provides for a read operation the number of sectors to be retrieved, the CHS for each sector to be retrieved and for a write operation the number of sectors to be stored, the CHS for each sector to be stored and the data for the sectors to be stored, said solid state memory having stored therein a header for each CHS address that can be issued by said host said header having indicia identifying the data block and indicating where the data for said data block is stored in said solid state memory, said flash solid state device comprising: translation means for translating said CHS address into a logic sector number LSN for identifying sectors in said flash solid state drive; and control means for converting said fixed length sectors received from the host into variable length sectors to be stored in said flash solid state memory as sectors of nonuniform length. - 50 -
6. The flash solid state drive of Claim 5 wherein said control means further comprises: compression means for compressing said fixed length sector received from the host to form a compressed sector of a non defined length; storage means for storing said compressed sector being stored in said flash solid state memory as compressed sectors of nonuniform length and for retrieving compressed data sectors of nonuniform length from said flash solid state memory; and decompression means for decompressing a said compressed sector read from said flash solid state memory to recover said received sector from said compressed sector.
7. The flash solid state drive of Claim 5 wherein said control means further comprises: selection means for controlling whether said fixed length sector received from the host is to be stored as a fixed length sector or as a variable length sector in said flash solid state memory; and marking means for generating indicia to be stored with each said sector indicating whether said sector was stored as a fixed length or variable length sector.
8. The solid state drive of Claim 5 further comprising: ECC generating means for generating ECC data for each fixed and variable length sector prior to said sector being stored in said flash solid state memory, said ECC data being stored with said sector generating said ECC data in said flash solid state memory; ECC detection means for determining if a sector read from said flash solid state memory was in error; and error correcting means for correcting the error detected by said ECC detection. - 51 -
9. The flash solid state drive of Claim 6 further comprising: size detector for generating a first signal if the number of bytes of compressed data for a sector after compression by said compressor means is greater than 512 bytes of data; second control means in response to said first signal for routing said compressed sector giving rise to said first signal through said decompression means to recover the uncompressed sector such that said uncompressed sector will be stored as a fixed length sector in said flash solid state memory.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/019,860 US5459850A (en) | 1993-02-19 | 1993-02-19 | Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks |
US08/019,860 | 1993-02-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1994019746A1 WO1994019746A1 (en) | 1994-09-01 |
WO1994019746B1 true WO1994019746B1 (en) | 1994-10-27 |
Family
ID=21795418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1994/001698 WO1994019746A1 (en) | 1993-02-19 | 1994-02-15 | Flash solid state drive emulating a disk drive to processing elements |
Country Status (2)
Country | Link |
---|---|
US (1) | US5459850A (en) |
WO (1) | WO1994019746A1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US8935302B2 (en) | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
US9122579B2 (en) | 2010-01-06 | 2015-09-01 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for a storage layer |
US9251052B2 (en) | 2012-01-12 | 2016-02-02 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer |
US9250817B2 (en) | 2011-03-18 | 2016-02-02 | SanDisk Technologies, Inc. | Systems and methods for contextual storage |
US9563555B2 (en) | 2011-03-18 | 2017-02-07 | Sandisk Technologies Llc | Systems and methods for storage allocation |
US9600184B2 (en) | 2007-12-06 | 2017-03-21 | Sandisk Technologies Llc | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
Families Citing this family (195)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5218691A (en) * | 1988-07-26 | 1993-06-08 | Disk Emulation Systems, Inc. | Disk emulation system |
US5581723A (en) * | 1993-02-19 | 1996-12-03 | Intel Corporation | Method and apparatus for retaining flash block structure data during erase operations in a flash EEPROM memory array |
US5519843A (en) * | 1993-03-15 | 1996-05-21 | M-Systems | Flash memory system providing both BIOS and user storage capability |
JP3215237B2 (en) * | 1993-10-01 | 2001-10-02 | 富士通株式会社 | Storage device and method for writing / erasing storage device |
US5668976A (en) * | 1993-11-04 | 1997-09-16 | Cirrus Logic, Inc. | Error correction method and apparatus for disk drive emulator |
US5603001A (en) * | 1994-05-09 | 1997-02-11 | Kabushiki Kaisha Toshiba | Semiconductor disk system having a plurality of flash memories |
JPH08137634A (en) * | 1994-11-09 | 1996-05-31 | Mitsubishi Electric Corp | Flash disk card |
DE19540915A1 (en) * | 1994-11-10 | 1996-05-15 | Raymond Engineering | Redundant arrangement of solid state memory modules |
JP3706167B2 (en) * | 1995-02-16 | 2005-10-12 | 株式会社ルネサステクノロジ | Semiconductor disk device |
US5761464A (en) * | 1995-05-22 | 1998-06-02 | Emc Corporation | Prefetching variable length data |
JP3782840B2 (en) | 1995-07-14 | 2006-06-07 | 株式会社ルネサステクノロジ | External storage device and memory access control method thereof |
US5930815A (en) * | 1995-07-31 | 1999-07-27 | Lexar Media, Inc. | Moving sequential sectors within a block of information in a flash memory mass storage architecture |
GB2291991A (en) * | 1995-09-27 | 1996-02-07 | Memory Corp Plc | Disk drive emulation with a block-erasable memory |
JP3693721B2 (en) * | 1995-11-10 | 2005-09-07 | Necエレクトロニクス株式会社 | Microcomputer with built-in flash memory and test method thereof |
US5850513A (en) * | 1996-01-05 | 1998-12-15 | Unisys Corporation | Processor path emulation system providing fast readout and verification of main memory by maintenance controller interface to maintenance subsystem |
KR100308173B1 (en) | 1996-02-29 | 2001-11-02 | 가나이 쓰도무 | Semiconductor memory device having faulty cells |
US5802080A (en) * | 1996-03-28 | 1998-09-01 | Seagate Technology, Inc. | CRC checking using a CRC generator in a multi-port design |
DE69706991T2 (en) * | 1996-07-19 | 2002-04-25 | Tokyo Electron Device Ltd | FLASH MEMORY CARD |
US5787484A (en) | 1996-08-08 | 1998-07-28 | Micron Technology, Inc. | System and method which compares data preread from memory cells to data to be written to the cells |
US5754567A (en) | 1996-10-15 | 1998-05-19 | Micron Quantum Devices, Inc. | Write reduction in flash memory systems through ECC usage |
US6135648A (en) * | 1996-11-12 | 2000-10-24 | Lsi Logic Corporation | Hard disk rotational latency simulator |
US5745418A (en) * | 1996-11-25 | 1998-04-28 | Macronix International Co., Ltd. | Flash memory mass storage system |
US5956473A (en) * | 1996-11-25 | 1999-09-21 | Macronix International Co., Ltd. | Method and system for managing a flash memory mass storage system |
US6279069B1 (en) | 1996-12-26 | 2001-08-21 | Intel Corporation | Interface for flash EEPROM memory arrays |
US5937423A (en) * | 1996-12-26 | 1999-08-10 | Intel Corporation | Register interface for flash EEPROM memory arrays |
DE19708755A1 (en) | 1997-03-04 | 1998-09-17 | Michael Tasler | Flexible interface |
US6523105B1 (en) * | 1997-04-16 | 2003-02-18 | Sony Corporation | Recording medium control device and method |
EP0874368A3 (en) * | 1997-04-25 | 2003-03-19 | Sony Corporation | Information recording apparatus and method, and information reproducing apparatus and method |
US5943692A (en) * | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Mobile client computer system with flash memory management utilizing a virtual address map and variable length data |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
US6145068A (en) * | 1997-09-16 | 2000-11-07 | Phoenix Technologies Ltd. | Data transfer to a non-volatile storage medium |
US5937425A (en) * | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
GB9801373D0 (en) * | 1998-01-22 | 1998-03-18 | Memory Corp Plc | Memory system |
US6324604B1 (en) | 1998-07-07 | 2001-11-27 | Emc Corporation | Magnetic disk storage for storing data in disk block size from fixed length of host block in non-integer multiple of the disk block size |
JP2000066948A (en) * | 1998-08-19 | 2000-03-03 | Nec Corp | Memory lsi with compressed data input/output function |
US6574588B1 (en) * | 1998-09-23 | 2003-06-03 | Microsoft Corporation | Solid-state memory device that emulates a known storage device |
US7058563B1 (en) * | 1998-09-23 | 2006-06-06 | Microsoft Corporation | Device driver auto-load |
US6490649B2 (en) * | 1998-11-10 | 2002-12-03 | Lexar Media, Inc. | Memory device |
US6370614B1 (en) | 1999-01-26 | 2002-04-09 | Motive Power, Inc. | I/O cache with user configurable preload |
US6463509B1 (en) | 1999-01-26 | 2002-10-08 | Motive Power, Inc. | Preloading data in a cache memory according to user-specified preload criteria |
US6885319B2 (en) * | 1999-01-29 | 2005-04-26 | Quickshift, Inc. | System and method for generating optimally compressed data from a plurality of data compression/decompression engines implementing different data compression algorithms |
US6145069A (en) * | 1999-01-29 | 2000-11-07 | Interactive Silicon, Inc. | Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices |
US6819271B2 (en) | 1999-01-29 | 2004-11-16 | Quickshift, Inc. | Parallel compression and decompression system and method having multiple parallel compression and decompression engines |
US7538694B2 (en) * | 1999-01-29 | 2009-05-26 | Mossman Holdings Llc | Network device with improved storage density and access speed using compression techniques |
US6148354A (en) | 1999-04-05 | 2000-11-14 | M-Systems Flash Disk Pioneers Ltd. | Architecture for a universal serial bus-based PC flash disk |
US6467015B1 (en) * | 1999-04-15 | 2002-10-15 | Dell Products, L.P. | High speed bus interface for non-volatile integrated circuit memory supporting continuous transfer |
US6401161B1 (en) | 1999-04-15 | 2002-06-04 | Dell Products, Lp | High speed bus interface for non-volatile integrated circuit memory supporting continuous transfer |
US6772383B1 (en) * | 1999-05-27 | 2004-08-03 | Intel Corporation | Combined tag and data ECC for enhanced soft error recovery from cache tag errors |
US6507881B1 (en) * | 1999-06-10 | 2003-01-14 | Mediatek Inc. | Method and system for programming a peripheral flash memory via an IDE bus |
US7089300B1 (en) * | 1999-10-18 | 2006-08-08 | Apple Computer, Inc. | Method and apparatus for administering the operating system of a net-booted environment |
CN1088218C (en) * | 1999-11-14 | 2002-07-24 | 邓国顺 | Electronic flash storage method and device for data processing system |
JP2001175419A (en) * | 1999-12-17 | 2001-06-29 | Fujitsu Ltd | Emulation processing method for storage device and storage device |
US6647480B1 (en) | 2000-03-31 | 2003-11-11 | International Business Machines Corporation | Data block update utilizing flash memory having unused memory size smaller than the data block size |
JP4832635B2 (en) * | 2000-12-05 | 2011-12-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Data transmission system, data transmission method, data recording apparatus, and computer system |
TWI246028B (en) * | 2001-06-28 | 2005-12-21 | Trek 2000 Int Ltd | A portable device having biometrics-based authentication capabilities |
CN1122281C (en) * | 2001-06-30 | 2003-09-24 | 深圳市朗科科技有限公司 | Multifunctional semiconductor storage device |
US7165137B2 (en) * | 2001-08-06 | 2007-01-16 | Sandisk Corporation | System and method for booting from a non-volatile application and file storage device |
DE10152235B4 (en) * | 2001-10-20 | 2015-01-08 | Robert Bosch Gmbh | Method for detecting errors during data transmission within a CAN controller and a CAN controller for carrying out this method |
US6751686B2 (en) * | 2002-03-08 | 2004-06-15 | Hewlett-Packard Development Company, L.P. | Automated transfer of a data unit comprising a plurality of fundamental data units between a host device and a storage medium |
WO2004001605A1 (en) * | 2002-06-19 | 2003-12-31 | Tokyo Electron Device Limited | Memory device, memory managing method and program |
TW567411B (en) * | 2002-09-09 | 2003-12-21 | Hon Hai Prec Ind Co Ltd | The method and apparatus of CRC code allocation in flash ROM |
US7730155B1 (en) | 2002-10-01 | 2010-06-01 | Apple Inc. | Method and apparatus for dynamically locating resources |
US7082525B2 (en) * | 2002-10-02 | 2006-07-25 | Sandisk Corporation | Booting from non-linear memory |
US7171536B2 (en) * | 2002-10-28 | 2007-01-30 | Sandisk Corporation | Unusable block management within a non-volatile memory system |
KR100591973B1 (en) * | 2002-11-29 | 2006-06-22 | 후지쯔 가부시끼가이샤 | Data recording and reproducing apparatus and data recording and reproducing method |
US7003621B2 (en) * | 2003-03-25 | 2006-02-21 | M-System Flash Disk Pioneers Ltd. | Methods of sanitizing a flash-based data storage device |
US20040243284A1 (en) * | 2003-05-28 | 2004-12-02 | Caterpillar Inc. | Methods and systems for modifying flash files |
US7774774B1 (en) * | 2003-10-22 | 2010-08-10 | Apple Inc. | Software setup system |
US7350127B2 (en) * | 2003-12-12 | 2008-03-25 | Hewlett-Packard Development Company, L.P. | Error correction method and system |
DE102004006645A1 (en) * | 2004-02-11 | 2005-09-22 | Giesecke & Devrient Gmbh | Method for the reliable calculation of a checksum |
US7434150B1 (en) * | 2004-03-03 | 2008-10-07 | Marvell Israel (M.I.S.L.) Ltd. | Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations |
US8019925B1 (en) | 2004-05-06 | 2011-09-13 | Seagate Technology Llc | Methods and structure for dynamically mapped mass storage device |
US7322002B2 (en) * | 2004-05-26 | 2008-01-22 | Micron Technology, Inc. | Erasure pointer error correction |
KR100621631B1 (en) * | 2005-01-11 | 2006-09-13 | 삼성전자주식회사 | Solid state disk controller apparatus |
JP2006209900A (en) * | 2005-01-31 | 2006-08-10 | Matsushita Electric Ind Co Ltd | Memory circuit |
US7916421B1 (en) | 2005-05-05 | 2011-03-29 | Seagate Technology Llc | Methods and structure for recovery of write fault errors in a dynamically mapped mass storage device |
US7620772B1 (en) | 2005-05-05 | 2009-11-17 | Seagate Technology, Llc | Methods and structure for dynamic data density in a dynamically mapped mass storage device |
US7653847B1 (en) | 2005-05-05 | 2010-01-26 | Seagate Technology Llc | Methods and structure for field flawscan in a dynamically mapped mass storage device |
US7685360B1 (en) | 2005-05-05 | 2010-03-23 | Seagate Technology Llc | Methods and structure for dynamic appended metadata in a dynamically mapped mass storage device |
US7617358B1 (en) | 2005-05-05 | 2009-11-10 | Seagate Technology, Llc | Methods and structure for writing lead-in sequences for head stability in a dynamically mapped mass storage device |
US7752491B1 (en) | 2005-05-05 | 2010-07-06 | Seagate Technology Llc | Methods and structure for on-the-fly head depopulation in a dynamically mapped mass storage device |
US7603530B1 (en) | 2005-05-05 | 2009-10-13 | Seagate Technology Llc | Methods and structure for dynamic multiple indirections in a dynamically mapped mass storage device |
US7698495B2 (en) * | 2005-07-01 | 2010-04-13 | QNZ Software Systems GmbH & Co. KG | Computer system having logically ordered cache management |
US7681109B2 (en) * | 2005-10-13 | 2010-03-16 | Ramot At Tel Aviv University Ltd. | Method of error correction in MBC flash memory |
US20070100893A1 (en) * | 2005-10-31 | 2007-05-03 | Sigmatel, Inc. | System and method for accessing data from a memory device |
US9270976B2 (en) * | 2005-11-02 | 2016-02-23 | Exelis Inc. | Multi-user stereoscopic 3-D panoramic vision system and method |
US7469368B2 (en) * | 2005-11-29 | 2008-12-23 | Broadcom Corporation | Method and system for a non-volatile memory with multiple bits error correction and detection for improving production yield |
US7810017B2 (en) | 2006-03-20 | 2010-10-05 | Micron Technology, Inc. | Variable sector-count ECC |
JP4956068B2 (en) * | 2006-06-30 | 2012-06-20 | 株式会社東芝 | Semiconductor memory device and control method thereof |
US7739576B2 (en) * | 2006-08-31 | 2010-06-15 | Micron Technology, Inc. | Variable strength ECC |
US9104599B2 (en) | 2007-12-06 | 2015-08-11 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for destaging cached data |
US8296337B2 (en) | 2006-12-06 | 2012-10-23 | Fusion-Io, Inc. | Apparatus, system, and method for managing data from a requesting device with an empty data token directive |
EP1939751A1 (en) * | 2006-12-22 | 2008-07-02 | Telefonaktiebolaget LM Ericsson (publ) | Storing compressed data |
US9885739B2 (en) | 2006-12-29 | 2018-02-06 | Electro Industries/Gauge Tech | Intelligent electronic device capable of operating as a USB master device and a USB slave device |
US9063181B2 (en) * | 2006-12-29 | 2015-06-23 | Electro Industries/Gauge Tech | Memory management for an intelligent electronic device |
TW200832440A (en) * | 2007-01-25 | 2008-08-01 | Genesys Logic Inc | Flash memory translation layer system |
KR100877609B1 (en) * | 2007-01-29 | 2009-01-09 | 삼성전자주식회사 | Semiconductor memory system performing data error correction using flag cell array of buffer memory and driving method thereof |
US9207876B2 (en) * | 2007-04-19 | 2015-12-08 | Microsoft Technology Licensing, Llc | Remove-on-delete technologies for solid state drive optimization |
US20090042523A1 (en) * | 2007-08-09 | 2009-02-12 | Alpha Imaging Technology Corporation | Multi-media Data Processing Method |
US8959307B1 (en) | 2007-11-16 | 2015-02-17 | Bitmicro Networks, Inc. | Reduced latency memory read transactions in storage devices |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
US8473707B2 (en) * | 2008-03-27 | 2013-06-25 | Open Invention Network, Llc | Method for achieving sequential I/O performance from a random workload |
JP5218228B2 (en) * | 2008-04-23 | 2013-06-26 | 新東工業株式会社 | Conveying device and blasting device |
US8064205B2 (en) * | 2008-05-19 | 2011-11-22 | Dell Products, Lp | Storage devices including different sets of contacts |
US9772936B2 (en) | 2008-07-10 | 2017-09-26 | Micron Technology, Inc. | Data collection and compression in a solid state storage device |
US8213229B2 (en) * | 2008-08-22 | 2012-07-03 | HGST Netherlands, B.V. | Error control in a flash memory device |
US8341311B1 (en) | 2008-11-18 | 2012-12-25 | Entorian Technologies, Inc | System and method for reduced latency data transfers from flash memory to host by utilizing concurrent transfers into RAM buffer memory and FIFO host interface |
US8473815B2 (en) * | 2008-12-22 | 2013-06-25 | Industrial Technology Research Institute | Methods and systems of a flash memory controller and an error correction code (ECC) controller using variable-length segmented ECC data |
US8468417B2 (en) * | 2009-02-18 | 2013-06-18 | Micron Technology, Inc. | Data integrity in memory controllers and methods |
US8009502B2 (en) * | 2009-06-24 | 2011-08-30 | Seagate Technology Llc | Systems, methods and devices for power control in mass storage devices |
US8504860B2 (en) * | 2009-06-26 | 2013-08-06 | Seagate Technology Llc | Systems, methods and devices for configurable power control with storage devices |
US8627117B2 (en) | 2009-06-26 | 2014-01-07 | Seagate Technology Llc | Device with power control feature involving backup power reservoir circuit |
US8065562B2 (en) * | 2009-06-26 | 2011-11-22 | Seagate Technology Llc | Systems, methods and devices for backup power control in data storage devices |
US8479032B2 (en) * | 2009-06-26 | 2013-07-02 | Seagate Technology Llc | Systems, methods and devices for regulation or isolation of backup power in memory devices |
US8468379B2 (en) * | 2009-06-26 | 2013-06-18 | Seagate Technology Llc | Systems, methods and devices for control and generation of programming voltages for solid-state data memory devices |
US8031551B2 (en) * | 2009-06-26 | 2011-10-04 | Seagate Technology Llc | Systems, methods and devices for monitoring capacitive elements in devices storing sensitive data |
US8607076B2 (en) * | 2009-06-26 | 2013-12-10 | Seagate Technology Llc | Circuit apparatus with memory and power control responsive to circuit-based deterioration characteristics |
US8230257B2 (en) * | 2009-06-26 | 2012-07-24 | Seagate Technology Llc | Systems, methods and devices for controlling backup power provided to memory devices and used for storing of sensitive data |
US8510497B2 (en) * | 2009-07-29 | 2013-08-13 | Stec, Inc. | Flash storage device with flexible data format |
US9195858B2 (en) * | 2009-08-04 | 2015-11-24 | Seagate Technology Llc | Encrypted data storage device |
US20120150527A1 (en) * | 2009-08-21 | 2012-06-14 | Tadhg Creedon | Storage peripheral device emulation |
US9135190B1 (en) | 2009-09-04 | 2015-09-15 | Bitmicro Networks, Inc. | Multi-profile memory controller for computing devices |
US8665601B1 (en) | 2009-09-04 | 2014-03-04 | Bitmicro Networks, Inc. | Solid state drive with improved enclosure assembly |
US8447908B2 (en) | 2009-09-07 | 2013-05-21 | Bitmicro Networks, Inc. | Multilevel memory bus system for solid-state mass storage |
US8560804B2 (en) | 2009-09-14 | 2013-10-15 | Bitmicro Networks, Inc. | Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device |
US8468370B2 (en) | 2009-09-16 | 2013-06-18 | Seagate Technology Llc | Systems, methods and devices for control of the operation of data storage devices using solid-state memory and monitoring energy used therein |
US20130297840A1 (en) | 2009-12-01 | 2013-11-07 | Electro Industries/Gaugetech | Intelligent electronic device capable of operating as a usb master device and a usb slave device |
US8533564B2 (en) * | 2009-12-23 | 2013-09-10 | Sandisk Technologies Inc. | System and method of error correction of control data at a memory device |
TWI456579B (en) * | 2010-03-26 | 2014-10-11 | Silicon Motion Inc | Method for enhancing error correction capability, and associated memory device and controller thereof |
KR20110112125A (en) * | 2010-04-06 | 2011-10-12 | 삼성전자주식회사 | Disk device and write method |
CN102236585B (en) * | 2010-04-20 | 2015-06-03 | 慧荣科技股份有限公司 | Method for improving error correction capacity and related memory device and controller of memory device |
US9330105B1 (en) * | 2010-05-07 | 2016-05-03 | Emc Corporation | Systems, methods, and computer readable media for lazy compression of data incoming to a data storage entity |
US8380949B2 (en) | 2010-05-20 | 2013-02-19 | International Business Machines Corporation | Managing write operations to an extent of tracks migrated between storage devices |
US9311002B1 (en) | 2010-06-29 | 2016-04-12 | Emc Corporation | Systems, methods, and computer readable media for compressing data at a virtually provisioned storage entity |
US8458568B2 (en) * | 2010-09-24 | 2013-06-04 | International Business Machines Corporation | Systems and methods for memory devices |
US20120239860A1 (en) | 2010-12-17 | 2012-09-20 | Fusion-Io, Inc. | Apparatus, system, and method for persistent data management on a non-volatile storage media |
US9092337B2 (en) | 2011-01-31 | 2015-07-28 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for managing eviction of data |
US9201677B2 (en) | 2011-05-23 | 2015-12-01 | Intelligent Intellectual Property Holdings 2 Llc | Managing data input/output operations |
US9141527B2 (en) | 2011-02-25 | 2015-09-22 | Intelligent Intellectual Property Holdings 2 Llc | Managing cache pools |
US8868869B2 (en) | 2011-08-08 | 2014-10-21 | International Business Machines Corporation | Enhanced copy-on-write operation for solid state drives |
US9372755B1 (en) | 2011-10-05 | 2016-06-21 | Bitmicro Networks, Inc. | Adaptive power cycle sequences for data recovery |
US9767032B2 (en) | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
US10102117B2 (en) | 2012-01-12 | 2018-10-16 | Sandisk Technologies Llc | Systems and methods for cache and storage device coordination |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US10359972B2 (en) | 2012-08-31 | 2019-07-23 | Sandisk Technologies Llc | Systems, methods, and interfaces for adaptive persistence |
US9116812B2 (en) | 2012-01-27 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a de-duplication cache |
US10019353B2 (en) | 2012-03-02 | 2018-07-10 | Longitude Enterprise Flash S.A.R.L. | Systems and methods for referencing data on a storage medium |
US9170758B2 (en) * | 2012-04-25 | 2015-10-27 | Hewlett-Packard Indigo B.V. | Automatic load balancer for presses |
US9043669B1 (en) | 2012-05-18 | 2015-05-26 | Bitmicro Networks, Inc. | Distributed ECC engine for storage media |
US9612966B2 (en) | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
US10339056B2 (en) | 2012-07-03 | 2019-07-02 | Sandisk Technologies Llc | Systems, methods and apparatus for cache transfers |
US10318495B2 (en) | 2012-09-24 | 2019-06-11 | Sandisk Technologies Llc | Snapshots for a non-volatile device |
US10509776B2 (en) | 2012-09-24 | 2019-12-17 | Sandisk Technologies Llc | Time sequence data management |
KR102081980B1 (en) * | 2012-10-08 | 2020-02-27 | 삼성전자 주식회사 | Method for performing write operation or read operation in memory system |
US9542172B2 (en) | 2013-02-05 | 2017-01-10 | Apple Inc. | Automatic updating of applications |
US9423457B2 (en) | 2013-03-14 | 2016-08-23 | Bitmicro Networks, Inc. | Self-test solution for delay locked loops |
US9842053B2 (en) | 2013-03-15 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for persistent cache logging |
US9501436B1 (en) | 2013-03-15 | 2016-11-22 | Bitmicro Networks, Inc. | Multi-level message passing descriptor |
US9842024B1 (en) | 2013-03-15 | 2017-12-12 | Bitmicro Networks, Inc. | Flash electronic disk with RAID controller |
US9934045B1 (en) | 2013-03-15 | 2018-04-03 | Bitmicro Networks, Inc. | Embedded system boot from a storage device |
US9875205B1 (en) | 2013-03-15 | 2018-01-23 | Bitmicro Networks, Inc. | Network of memory systems |
US9916213B1 (en) | 2013-03-15 | 2018-03-13 | Bitmicro Networks, Inc. | Bus arbitration with routing and failover mechanism |
US9971524B1 (en) | 2013-03-15 | 2018-05-15 | Bitmicro Networks, Inc. | Scatter-gather approach for parallel data transfer in a mass storage system |
US9720603B1 (en) | 2013-03-15 | 2017-08-01 | Bitmicro Networks, Inc. | IOC to IOC distributed caching architecture |
US9400617B2 (en) | 2013-03-15 | 2016-07-26 | Bitmicro Networks, Inc. | Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained |
US9734067B1 (en) | 2013-03-15 | 2017-08-15 | Bitmicro Networks, Inc. | Write buffering |
US9798688B1 (en) | 2013-03-15 | 2017-10-24 | Bitmicro Networks, Inc. | Bus arbitration with routing and failover mechanism |
US10120694B2 (en) | 2013-03-15 | 2018-11-06 | Bitmicro Networks, Inc. | Embedded system boot from a storage device |
US10489318B1 (en) | 2013-03-15 | 2019-11-26 | Bitmicro Networks, Inc. | Scatter-gather approach for parallel data transfer in a mass storage system |
US9430386B2 (en) | 2013-03-15 | 2016-08-30 | Bitmicro Networks, Inc. | Multi-leveled cache management in a hybrid storage system |
US9672178B1 (en) | 2013-03-15 | 2017-06-06 | Bitmicro Networks, Inc. | Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system |
US10102144B2 (en) | 2013-04-16 | 2018-10-16 | Sandisk Technologies Llc | Systems, methods and interfaces for data virtualization |
US10558561B2 (en) | 2013-04-16 | 2020-02-11 | Sandisk Technologies Llc | Systems and methods for storage metadata management |
US8886874B1 (en) * | 2013-06-24 | 2014-11-11 | Freescale Semiconductor, Inc. | System and method for low-latency addressing in flash memory |
US9842128B2 (en) | 2013-08-01 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for atomic storage operations |
US10019320B2 (en) | 2013-10-18 | 2018-07-10 | Sandisk Technologies Llc | Systems and methods for distributed atomic storage operations |
US10073630B2 (en) | 2013-11-08 | 2018-09-11 | Sandisk Technologies Llc | Systems and methods for log coordination |
US9952991B1 (en) | 2014-04-17 | 2018-04-24 | Bitmicro Networks, Inc. | Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation |
US9811461B1 (en) | 2014-04-17 | 2017-11-07 | Bitmicro Networks, Inc. | Data storage system |
US10078604B1 (en) | 2014-04-17 | 2018-09-18 | Bitmicro Networks, Inc. | Interrupt coalescing |
US10042792B1 (en) | 2014-04-17 | 2018-08-07 | Bitmicro Networks, Inc. | Method for transferring and receiving frames across PCI express bus for SSD device |
US10055150B1 (en) | 2014-04-17 | 2018-08-21 | Bitmicro Networks, Inc. | Writing volatile scattered memory metadata to flash device |
US10025736B1 (en) | 2014-04-17 | 2018-07-17 | Bitmicro Networks, Inc. | Exchange message protocol message transmission between two devices |
US9927470B2 (en) | 2014-05-22 | 2018-03-27 | Electro Industries/Gauge Tech | Intelligent electronic device having a memory structure for preventing data loss upon power loss |
US10360051B2 (en) | 2014-12-22 | 2019-07-23 | International Business Machines Corporation | Emulated device firmware testable by native operating system tools |
US9946607B2 (en) | 2015-03-04 | 2018-04-17 | Sandisk Technologies Llc | Systems and methods for storage error management |
US10552050B1 (en) | 2017-04-07 | 2020-02-04 | Bitmicro Llc | Multi-dimensional computer storage system |
US11204826B2 (en) * | 2018-09-28 | 2021-12-21 | Taiwan Semiconductor Manufacturing Company, Ltd. | Memory error detection and correction |
KR20210004322A (en) * | 2019-07-04 | 2021-01-13 | 에스케이하이닉스 주식회사 | Apparatus and method for transmitting map information and read count in memory system |
KR20200123684A (en) | 2019-04-22 | 2020-10-30 | 에스케이하이닉스 주식회사 | Apparatus for transmitting map information in memory system |
KR20200137181A (en) | 2019-05-29 | 2020-12-09 | 에스케이하이닉스 주식회사 | Apparatus for transmitting map information in memory system |
KR20200139433A (en) | 2019-06-04 | 2020-12-14 | 에스케이하이닉스 주식회사 | Operating method of controller and memory system |
US11422942B2 (en) | 2019-04-02 | 2022-08-23 | SK Hynix Inc. | Memory system for utilizing a memory included in an external device |
KR20210004502A (en) | 2019-07-05 | 2021-01-13 | 에스케이하이닉스 주식회사 | Memory system, memory controller and operating method of memory system |
USD939988S1 (en) | 2019-09-26 | 2022-01-04 | Electro Industries/Gauge Tech | Electronic power meter |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1211219A (en) * | 1982-06-30 | 1986-09-09 | Hideo Kuroda | Digital data code conversion circuit for variable- word-length data code |
JPS6097435A (en) * | 1983-11-02 | 1985-05-31 | Hitachi Ltd | Arithmetic processor |
US4958315A (en) * | 1985-07-02 | 1990-09-18 | The United States Of America As Represented By The Secretary Of The Navy | Solid state electronic emulator of a multiple track motor driven rotating magnetic memory |
US5034914A (en) * | 1986-05-15 | 1991-07-23 | Aquidneck Systems International, Inc. | Optical disk data storage method and apparatus with buffered interface |
US5301304A (en) * | 1988-05-20 | 1994-04-05 | International Business Machines Corporation | Emulating records in one record format in another record format |
US5218691A (en) * | 1988-07-26 | 1993-06-08 | Disk Emulation Systems, Inc. | Disk emulation system |
US5070474A (en) * | 1988-07-26 | 1991-12-03 | Disk Emulation Systems, Inc. | Disk emulation system |
US4947319A (en) * | 1988-09-15 | 1990-08-07 | International Business Machines Corporation | Arbitral dynamic cache using processor storage |
US5131089A (en) * | 1989-06-12 | 1992-07-14 | Grid Systems Corporation | Solid state disk drive emulation |
US5274772A (en) * | 1989-06-28 | 1993-12-28 | International Business Machines Corporation | Data processing systems having means for selectively combining records into signal blocks for recording in a record medium |
US5335328A (en) * | 1989-06-28 | 1994-08-02 | International Business Machines Corporation | Methods for recording and reading data from a record member having data in any one of a plurality of block formats including determining length of records being transferred |
US5166686A (en) * | 1989-06-30 | 1992-11-24 | Nec Corporation | Variable length block coding with changing characteristics of input samples |
US5210660A (en) * | 1990-01-17 | 1993-05-11 | International Business Machines Corporation | Sectored servo independent of data architecture |
US5237675A (en) * | 1990-06-04 | 1993-08-17 | Maxtor Corporation | Apparatus and method for efficient organization of compressed data on a hard disk utilizing an estimated compression factor |
US5206939A (en) * | 1990-09-24 | 1993-04-27 | Emc Corporation | System and method for disk mapping and data retrieval |
US5170263A (en) * | 1990-10-10 | 1992-12-08 | Fuji Xerox Co., Ltd. | Image processing system |
US5293388A (en) * | 1990-11-13 | 1994-03-08 | Hewlett-Packard Company | Compression/decompress with ECC data flow architecture |
US5237460A (en) * | 1990-12-14 | 1993-08-17 | Ceram, Inc. | Storage of compressed data on random access storage devices |
US5291584A (en) * | 1991-07-23 | 1994-03-01 | Nexcom Technology, Inc. | Methods and apparatus for hard disk emulation |
US5293565A (en) * | 1992-02-04 | 1994-03-08 | International Business Machines Corporation | Fortmat for data-storing disk media wherein addressable track angular length is independent of disk revolutions |
-
1993
- 1993-02-19 US US08/019,860 patent/US5459850A/en not_active Expired - Lifetime
-
1994
- 1994-02-15 WO PCT/US1994/001698 patent/WO1994019746A1/en active Application Filing
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8935302B2 (en) | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
US9600184B2 (en) | 2007-12-06 | 2017-03-21 | Sandisk Technologies Llc | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
US9122579B2 (en) | 2010-01-06 | 2015-09-01 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for a storage layer |
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
US9250817B2 (en) | 2011-03-18 | 2016-02-02 | SanDisk Technologies, Inc. | Systems and methods for contextual storage |
US9563555B2 (en) | 2011-03-18 | 2017-02-07 | Sandisk Technologies Llc | Systems and methods for storage allocation |
US9251052B2 (en) | 2012-01-12 | 2016-02-02 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO1994019746B1 (en) | Flash solid state drive emulating a disk drive to processing elements | |
US5459850A (en) | Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks | |
US5394534A (en) | Data compression/decompression and storage of compressed and uncompressed data on a same removable data storage medium | |
US5237460A (en) | Storage of compressed data on random access storage devices | |
US7958331B2 (en) | Storage device with opportunistic address space | |
US6389503B1 (en) | Tape drive emulation by removable disk drive and media formatted therefor | |
JP3763845B2 (en) | Packing variable-length records in fixed blocks | |
US5734892A (en) | Efficient method and apparatus for access and storage of compressed data | |
KR980010784A (en) | Compressed Data Cache Storage System | |
US20040049627A1 (en) | Method and system for controlling compact flash memory | |
JP4124886B2 (en) | How to format host data | |
CN103620564A (en) | Data compression and compacting for memory devices | |
US6571362B1 (en) | Method and system of reformatting data blocks for storage as larger size data blocks | |
US6654851B1 (en) | System, apparatus, and method for using a disk drive for sequential data access | |
EP0689208A1 (en) | Method for block oriented addressing | |
US6044431A (en) | Data buffer using dummy data | |
US7219259B2 (en) | Apparatus and method to preserve data integrity during a power loss | |
US6904492B2 (en) | Write-once memory device including non-volatile memory for temporary storage | |
US6266671B1 (en) | Data storage apparatus, method, and medium with variable data storage structure | |
US7062603B2 (en) | External storage device for selectively storing data between first and second recording media | |
US6215748B1 (en) | Data storage with data masking array, apparatus and method therefor | |
US7206908B2 (en) | Apparatus and method to convert a plurality of sectors from a first sector format to a second sector format | |
CN102456400B (en) | Control method and controller for flash memory | |
JP2000039969A (en) | Method for adjusting data | |
JP4124887B2 (en) | How to order data received from a data source |