WO2016036387A1 - Memory device redundancy - Google Patents

Memory device redundancy Download PDF

Info

Publication number
WO2016036387A1
WO2016036387A1 PCT/US2014/054376 US2014054376W WO2016036387A1 WO 2016036387 A1 WO2016036387 A1 WO 2016036387A1 US 2014054376 W US2014054376 W US 2014054376W WO 2016036387 A1 WO2016036387 A1 WO 2016036387A1
Authority
WO
WIPO (PCT)
Prior art keywords
memory
device
memory device
memory card
apparatus
Prior art date
Application number
PCT/US2014/054376
Other languages
French (fr)
Inventor
Allen Shorter
Original Assignee
Hewlett-Packard Development Company, L.P.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett-Packard Development Company, L.P. filed Critical Hewlett-Packard Development Company, L.P.
Priority to PCT/US2014/054376 priority Critical patent/WO2016036387A1/en
Publication of WO2016036387A1 publication Critical patent/WO2016036387A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Abstract

An example apparatus includes an interface to communicate with a computing device; a first memory device; a second memory device, wherein the second memory device provides redundancy for the first memory device; and circuitry to provide access to the first memory device and the second memory device through the interface.

Description

MEMORY DEVICE REDUNDANCY

BACKGROUND

[0001] Computing devices are often provided with a re-boot disc to allow the user to restore or recover the operating system for the computing device in the event of a failure. Re-boot or recovery may also be desired if the computing device is being scrubbed for re-sale or other transfer. Typically, a re-boot disc, such as a CD-ROM or a DVD-ROM, is provided with the device.

BRIEF DESCRIPTION OF THE DRAWINGS

[0002] For a more complete understanding of various examples, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:

[0003] Figure 1 A is a perspective view of an example universal serial bus (USB) key;

[0004] Figure IB is a perspective view of the example USB key of Figure 1A with removable memory cards;

[0005] Figure 2 schematically illustrates an example USB key;

[0006] Figure 3 schematically illustrates an example system using an example USB key;

[0007] Figure 4 schematically illustrates another example USB key; and

[0008] Figure 5 illustrates an example method for using an example device to obtain boot-up information for a computing device.

DETAILED DESCRIPTION

[0009] Various examples described below provide for an apparatus, such as a USB key, which can interface with a computing device, such as a server, through a USB interface. The apparatus is provided with multiple memory devices, such as removable SD cards, which can provide redundancy for stored information, such as boot-up information for the server.

[0010] Referring now to Figures 1A and IB, perspective views of an example apparatus are illustrated. In various examples, the apparatus 100 includes a housing 110 and a physical interface 120 for connecting the apparatus to a computing device, such as a server, desktop computer, laptop, tablet or other computing device. In the illustrated example, the apparatus 100 is a USB key, and the physical interface 120 is a USB interface. The USB interface may be used to provide a standardized connection with a multitude of computing devices available to users. Of course, those skilled in the art will appreciate that any of a variety of types of interfaces may be used and are contemplated within the scope of the present disclosure.

[0011] The apparatus 100 is provided with a plurality of memory devices, such as the first memory device 130 and the second memory device 140. The memory devices allow for storage of, for example, data or other types of information. In various examples, the first and second memory devices 130, 140 are removable from the apparatus 100. In this regard, the memory devices 130, 140 may be removed and replaced.

[0012] The memory devices 130, 140 may be any of a variety of types of storage devices. In one example, the memory devices 130, 140 are secure digital (SD) memory cards. The amount of storage available on such memory devices 130, 140 may vary and may be selected for needs of a particular application.

[0013] In one example, the memory devices 130, 140 are provided with the apparatus 100 (e.g., a USB key) to a user along with the computing device (e.g., a server). The memory devices 130, 140 may have stored thereon boot-up information that may be used, for example, to restore the computing device to factory settings. The use of multiple memory devices 130, 140 may allow for redundancy in the boot-up information provided to the user. For example, the memory devices 130, 140 may include the boot-up information with redundancy at a particular RAID ("Redundant Array of Independent Disks") level, either the RAID 0 level or the RAID 1 level.

[0014] RAID 0 redundancy refers to storage of information in two storage devices with data split evenly across the two storage devices. In this regard, the stored information may be split as striped sets. RAID 0 may be used, for example, when a single storage device is insufficient to accommodate the entire boot-up information. While RAID 0 does not provide true redundancy of data, storing the information using RAID 0 redundancy across the two storage devices may provide improved performance in accessing the stored information.

[0015] RAID 1 redundancy refers to providing an exact copy of the data on the two storage devices. Thus, the entirety of the boot-up information is provided on each storage device 130, 140. [0016] Referring now to Figure 2, an example USB key is schematically illustrated. The USB key 200 is provided with circuitry 205 to facilitate operation of the USB key 200. In the illustrated example, the circuitry 205 includes a processor 210 to control various components of the USB key 200. In some examples, the processor 210 may be an application-specific integrated circuit (ASIC) or other such component. The processor 210 allows a computing device (not shown) to use a physical interface (e.g., the USB interface 220) to access memory card slots 230, 240 and any memory cards that may be inserted into the slots 230, 240.

[0017] The circuitry205 may also include an internal storage device, such as a flash memory 250. The flash memory 250 may be used to store any type of information, such as data stored by a user, for example.

[0018] Those skilled in the art will appreciate that the circuitry 205 may include additional components. For example, the circuitry 205 may include power regulators to provide and control power to the various components. In this regard, the USB key 200 may obtain power from the computing device through the physical USB interface 220 and provide power to, for example, the processor 210 and other components.

[0019] Referring now to Figure 3, an example system using the USB key 200 of Figure 2 is schematically illustrated. In various examples, as described above, the USB key may be used to provide boot-up information to a computing device, such as a server 300. As illustrated in Figure 3, the server 300 may be connected to the USB key 200 through a physical interface, such as the USB interface 220. The USB key 200 may be provided with memory cards, such as SD memory cards 130, 140, inserted into the memory card slots 230, 240, respectively. As noted above, in various examples, the SD memory cards 130, 140 may be provided with boot-up information for the server 300. As further noted above, the boot-up information may be provided on the SD memory cards 130, 140 with redundancy, such as RAID 0 or RAID 1 redundancy. The server may access the boot-up information to restore or recover factory settings for the operating system, for example.

[0020] In various examples, the server 300 may first access the first memory card (e.g., SD memory card 130) to obtain the boot-up information. If the server 300 is unable to obtain the boot-up information from the first memory card 130, the boot-up information may be obtained from the second memory card 140. For example, the server 300 may be unable to obtain the boot-up information from the first memory card 130 if the first memory card 130 has become corrupted or the boot-up information on the first memory card 130 has become otherwise inaccessible. The server 300 may then access the second memory card 140 to obtain the boot-up information.

[0021] In some examples, the server 300 may be provided with software to automatically switch to the second memory card 140 upon determining that the boot-up information cannot be obtained from the first memory card 130. In other examples, user interaction may be required to switch from the first memory card 130 to the second memory card. In still other examples, the USB key may be provided with functionality to achieve automatic use of the redundancy of the boot-up information. For example, Figure 4 illustrates an example USB key 400 with such functionality.

[0022] The example USB key 400 of Figure 4 is similar to the example USB key 200 described above with reference to Figures 2 and 3 and includes a processor 410, a USB interface 420 and memory card slots 430, 440. In addition, the example USB key 400 is provided with a redundancy module 460 which may be executed by the processor 410. The redundancy module 460 may be provided within the processor 410 or may be stored in the flash memory 450 for execution by the processor 410. The redundancy module 460 may cause the processor 410 to determine if the boot-up information requested by a computing device (e.g., the server 300 of Figure 3) cannot be obtained from the first memory card (not shown in Figure 4) inserted into the first memory card slot 430. In this case, the redundancy module 460 may cause the processor to, without either user input or any instruction from the computing device, access the redundant boot-up information from a second memory card (not shown in Figure 4) inserted into the second memory card slot 440.

[0023] Referring now to Figure 5, an example method is illustrated for using an example USB key to obtain boot-up information for a computing device. The example method 500 may be executed by the computing device or the USB key (e.g., the redundancy module 460 of Figure 4) or a combination of the computing device and the USB key, for example.

[0024] The example method 500 may initiated with the connection of the USB key with the computing device or upon execution of a re-boot or recover procedure launched by the user. Upon initiation of the example method 500, the first memory device of a plurality of memory devices on the USB key may be accessed (block 510). A determination may be made as to whether the boot-up information was obtained from the first memory device (block 520). In one example, this determination may include detecting that the first memory device was not accessible or that the boot-up information from the first memory device was corrupted.

[0025] If the boot-up information is obtained from the first memory device, the method proceeds to block 540. On the other hand, if the boot-up information is not obtained from the first memory device, then the method proceeds to access the second memory device to obtain the boot-up information (block 530). As noted above, resorting to access of the second device may be initiated by a redundancy module in the USB key (e.g., the redundancy module 460 of Figure 4) or may be initiated by the boot-up or recovery procedure of the computing device.

[0026] At block 540, the boot-up information may be obtained for the computing device from either the first memory device or the second memory device. The boot-up or recovery procedure of the computing device may then be executed.

[0027] In the various example described herein, USB keys are shown with two memory devices. In other examples, USB keys may be provided with more than two memory devices. While two memory devices may provide redundancy at either the RAID 0 or RAID 1 levels described above, higher levels of redundancy (e.g., RAID 2 to RAID 6) may be achieved with additional memory devices.

[0028] Thus, in various examples of the present disclosure, a device or apparatus may be provided with multiple memory devices and an interface to allow a computing device to access the multiple memory devices. The multiple memory devices may be used to store information with redundancy to provide improved reliability.

[0029] The various examples set forth herein are described in terms of example block diagrams, flow charts and other illustrations. Those skilled in the art will appreciate that the illustrated examples and their various alternatives can be implemented without confinement to the illustrated examples. For example, block diagrams and their accompanying description should not be construed as mandating a particular architecture or configuration.

Claims

WHAT IS CLAIMED IS
1. An apparatus, comprising:
an interface to communicate with a computing device;
a first memory device;
a second memory device, wherein the second memory device provides redundancy for the first memory device; and
circuitry to provide access to the first memory device and the second memory device through the interface.
2. The apparatus of claim 1, wherein the interface is a universal serial bus (USB) interface.
3. The apparatus of claim 1, wherein the first memory device and the second memory device are removable from the apparatus.
4. The apparatus of claim 3, wherein the first memory device and the second memory device are secure digital (SD) memory cards.
5. The apparatus of claim 1, wherein the redundancy is either RAID 0 redundancy or RAID 1 redundancy.
6. The apparatus of claim 1, wherein the first memory device and the second memory device include boot-up information for the computing device.
7. A device, comprising:
a universal serial bus (USB) interface to communicate with a computing device;
a first memory card slot to removably receive a first memory card therein;
a second memory card slot to removably receive a second memory card therein; and a processor to provide access to the first memory card slot and the second memory card slot through the USB interface.
8. The device of claim 7, wherein the first memory card in the first memory card slot and the second memory card in the second memory card slot provide redundancy.
9. The device of claim 8, wherein the redundancy is either RAID 0 redundancy or RAID 1 redundancy.
10. The device of claim 7, wherein the first memory card slot and the second memory card slot are to removably receive secure digital (SD) memory cards therein.
11. The device of claim 7, further comprising:
a first memory card removably inserted in the first memory card slot; and
a second memory card removably inserted in the second memory card slot,
wherein the first memory card and the second memory card include boot-up information for the computing device.
12. A method, comprising:
accessing a first memory device of a plurality of memory devices on an apparatus, the apparatus being in communication with a computing device through a physical interface;
determining that the first memory device is corrupted;
accessing a second memory device of the plurality of memory devices on the apparatus, the second memory device providing redundancy of the first memory device; and
obtaining boot-up information from the second memory device for the computing device.
13. The method of claim 12, wherein the physical interface is a universal serial bus (USB) interface.
14. The method of claim 12, wherein the first memory device and the second memory device are removable from the apparatus.
15. The apparatus of claim 14, wherein the first memory device and the second memory device are secure digital (SD) memory cards.
PCT/US2014/054376 2014-09-05 2014-09-05 Memory device redundancy WO2016036387A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2014/054376 WO2016036387A1 (en) 2014-09-05 2014-09-05 Memory device redundancy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2014/054376 WO2016036387A1 (en) 2014-09-05 2014-09-05 Memory device redundancy

Publications (1)

Publication Number Publication Date
WO2016036387A1 true WO2016036387A1 (en) 2016-03-10

Family

ID=55440236

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2014/054376 WO2016036387A1 (en) 2014-09-05 2014-09-05 Memory device redundancy

Country Status (1)

Country Link
WO (1) WO2016036387A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050109841A1 (en) * 2003-11-17 2005-05-26 Ryan Dennis J. Multi-interface compact personal token apparatus and methods of use
US20050160223A1 (en) * 2004-01-15 2005-07-21 Super Talent Electronics Inc. Dual-Mode Flash Storage Exchanger that Transfers Flash-Card Data to a Removable USB Flash Key-Drive With or Without a PC Host
US20070180509A1 (en) * 2005-12-07 2007-08-02 Swartz Alon R Practical platform for high risk applications
US20100115257A1 (en) * 2008-11-06 2010-05-06 Dell Products L.P. Systems and Methods to Provide Failover Support for Booting Embedded Hypervisor From an Internal Non-Volatile Memory Card
US20100313225A1 (en) * 2009-06-08 2010-12-09 Chris Cholas Media bridge apparatus and methods
US20100312980A1 (en) * 2007-10-30 2010-12-09 Unidue Co., Ltd. Memory card changer, method for reading or writing data in memory card changer

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050109841A1 (en) * 2003-11-17 2005-05-26 Ryan Dennis J. Multi-interface compact personal token apparatus and methods of use
US20050160223A1 (en) * 2004-01-15 2005-07-21 Super Talent Electronics Inc. Dual-Mode Flash Storage Exchanger that Transfers Flash-Card Data to a Removable USB Flash Key-Drive With or Without a PC Host
US20070180509A1 (en) * 2005-12-07 2007-08-02 Swartz Alon R Practical platform for high risk applications
US20100312980A1 (en) * 2007-10-30 2010-12-09 Unidue Co., Ltd. Memory card changer, method for reading or writing data in memory card changer
US20100115257A1 (en) * 2008-11-06 2010-05-06 Dell Products L.P. Systems and Methods to Provide Failover Support for Booting Embedded Hypervisor From an Internal Non-Volatile Memory Card
US20100313225A1 (en) * 2009-06-08 2010-12-09 Chris Cholas Media bridge apparatus and methods

Similar Documents

Publication Publication Date Title
US9081718B2 (en) Systems and methods for storing and recovering controller data in non-volatile memory devices
US6631442B1 (en) Methods and apparatus for interfacing to a data storage system
US8402209B1 (en) Provisioning space in a data storage system
US9128872B2 (en) Techniques for providing data redundancy after reducing memory writes
JP5909264B2 (en) Secure recovery apparatus and method
US6816982B2 (en) Method of and apparatus for computer hard disk drive protection and recovery
US20050228950A1 (en) External encapsulation of a volume into a LUN to allow booting and installation on a complex volume
US20080141054A1 (en) System, method, and computer program product for providing data redundancy in a plurality of storage devices
US8041913B2 (en) Data protection method
US20110197011A1 (en) Storage apparatus and interface expansion authentication method therefor
US20020194528A1 (en) Method, disaster recovery record, back-up apparatus and RAID array controller for use in restoring a configuration of a RAID device
US20060218434A1 (en) Disk drive with integrated tape drive
US6931522B1 (en) Method for a computer using the system image on one of the partitions to boot itself to a known state in the event of a failure
CN101589592B (en) Multi-protocol removable storage device
DE102013112672A1 (en) Data store for a remote environment
US9342423B2 (en) Selective restoration of data from non-volatile storage to volatile memory
US20040133742A1 (en) System and method for raid configuration
US20070094472A1 (en) Method for persistent mapping of disk drive identifiers to server connection slots
US8082231B1 (en) Techniques using identifiers and signatures with data operations
US8171379B2 (en) Methods, systems and media for data recovery using global parity for multiple independent RAID levels
US7725704B1 (en) Techniques for performing a prioritized data restoration operation
US20040162926A1 (en) Serial advanced technology attachment interface
CN103348331A (en) Tiered data storage system with data management and method of operation thereof
US7627464B2 (en) Bootable solid state floppy disk drive
US20070192538A1 (en) Automatic RAID disk performance profiling for creating optimal RAID sets

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14901317

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14901317

Country of ref document: EP

Kind code of ref document: A1