Abstract:
A portable storage device for storage of data. The portable storage device comprises a first non-volatile memory of a first character; a second non-volatile memory of a second character, the second character being different to the first character; and a controller for determining to which of the first and second non-volatile memory the data is to be sent. The determining is based on a defined relationship between the first and second non-volatile memories, the defined relationship being buffer or backup.

Description:
FIELD OF THE INVENTION 
       [0001]    This invention relates to an interface for non-volatile memories and refers particularly, though not exclusively, to an interface between non-volatile memories of different categories. 
       BACKGROUND OF THE INVENTION 
       [0002]    Portable memory devices such as, for example, flash drives, thumbdrives, and MP3 players, often have memory of a single character. It is not possible to have two or more memories of a difference character such as, for example, flash memory and a hard disk drive, in such devices. 
       SUMMARY OF THE INVENTION 
       [0003]    In accordance with a first preferred aspect there is provided a portable storage device for storage of data, the portable storage device comprising:
       (a) a first non-volatile memory of a first character;   (b) a second non-volatile memory of a second character, the second character being different to the first character; and   (c) a controller for determining to which of the first and second non-volatile memory the data is to be sent.       
 
         [0007]    The determination may be based on a defined relationship between the first and second non-volatile memories. The relationship may be that the first non-volatile memory is a buffer or a backup for the second non-volatile memory. The relationship may be preset, or may be user set. 
         [0008]    The first non-volatile memory may be a flash memory, and the second non-volatile memory may be a hard disk drive. The controller may comprise at least one of a flash controller, a hard disk controller and a bridge controller. The bridge controller may comprise a flash-to-hard-disk-drive controller. 
         [0009]    The hard disk may further comprise an integrated device electronics interface. The controller may comprise a flash memory controller and a hard disk drive controller. 
         [0010]    The bridge controller and the flash memory may be on the same bus. The bridge controller may be a dedicated controller for reading address data, and the data, from the flash memory, and for writing the data to the hard disk drive. 
         [0011]    According to a second aspect there is provided a method for storing data in a portable storage device, the portable storage device comprising:
       (a) a first non-volatile memory of a first character;   (b) a second non-volatile memory of a second character, the second character being different to the first character; and   (c) a controller for determining to which of the first and second non-volatile memory the data is to be sent;       
 
         [0015]    the method comprising:
       (d) determining a relationship between the first and second non-volatile memories and sending the data based on that relationship.       
 
         [0017]    The relationship may be one of: the first non-volatile memory is a data buffer for the second non-volatile memory, and the first non-volatile memory is a data backup for the second non-volatile memory. 
         [0018]    For both aspect the data may be first stored in the first non-volatile memory, then stored in the second non-volatile memory; the first non-volatile memory being a data buffer for the second non-volatile memory. Alternatively or additionally, the first non-volatile memory may be a data backup for the second non-volatile memory. In such a case, the data may be stored in the first and second non-volatile memories sequentially or simultaneously. 
         [0019]    The first non-volatile memory controller was first send the data to the controller, and the controller may convert the data for storage on the second non-volatile memory. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0020]    In order that the present invention may be fully understood and readily put into practical effect, there shall now be described by way of non-limitative example only preferred embodiments of the present invention, the description being with reference to the accompanying illustrative drawings. 
           [0021]    In the drawings: 
           [0022]      FIG. 1  is a block diagram of a first embodiment; 
           [0023]      FIG. 2  is a block diagram of a second embodiment; 
           [0024]      FIG. 3  is a block diagram of a third embodiment; and 
           [0025]      FIG. 4  is a flow chart for the preferred method. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0026]    The embodiments illustrate structures and various methodologies for interfacing between a first form or category of a non-volatile memory such as, for example, a hard disk drive, and a second form or category of non-volatile memory such as, for example, a solid state memory. The solid state memory may be a flash memory. 
         [0027]    The interfacing is based on a defined relationship between the two memories. The relationship may be backup, or buffer. The relationship may be preset, or may be user set or selected. 
         [0028]    In  FIG. 1  there is a flash memory  10  acting as a data buffer during a data transfer from host computer  12  to the hard disk drive  14  or from the hard disk drive  14  to the host computer  10 . During downloading, the data will flow from the host computer  12  to the USB flash controller  16 . The function of the flash controller  16  is to store data to the flash memory  10 ; and to store to the flash memory the address data being where the data will be stored on the hard disk drive  14 . The USB flash controller  16  then sends a signal to the flash-to-bridge controller  18  to initiate data transfer from flash memory  10  to hard disk drive  14 . The data transfer then takes place. The bridge controller  18  includes a disk drive interface  20  that may be an integrated device electronics (“IDE”) device. The bridge controller  18  is a dedicated controller to read the address data, and the data, from the flash memory  10  and to write it to the hard disk drive  14  via the interface  20  of the hard disk drive  14 . The hard disk drive  14  interface  20  may be an IDE interface, ATA, Serial ATA or Compact flash Type II interface. 
         [0029]    In  FIG. 2  the flash memory  10  is for data backup. When data flows from the host computer  12  to the combined USB flash and hard disk drive controller  22 , it will be written to both the hard disk drive  14  and the flash memory  10 . When reading the data, the user will have the option of reading from the hard disk drive  14  or the flash memory  10 . The default setting for the reading of data will be from the hard disk drive  14 . Data may be written to one storage medium at a time: flash memory  10  and hard disk drive  14  sequentially. This may be hard disk drive  14  first then flash memory  10  or, as illustrated, flash memory  10  then hard disk drive  14 . The data is first completely downloaded to one and, when that download is completed, backed-up to the other. This may be on the basis of all data (backup after all data is the first) or on a file-by-file basis (backup after each file). 
         [0030]      FIG. 3  show where data can be written into flash memory  10  and hard disk drive  14  simultaneously. Here, the data will flow from host computer  12  to the USB flash controller  16  and then to both the flash memory  10  and the flash-to-IDE bridge controller  18  at same time. The IDE bridge controller  18  will then interpret the flash memory command and convert it to an IDE command to store the data to the hard disk drive  14 . In this case the data can be written simultaneously to the flash memory  10  and hard disk drive  14 . The bridge controller  18  and the flash memory  10  may be on the same bus. 
         [0031]    When uploading data from hard disk drive  14  and/or flash memory  10 , the reverse process takes place. 
         [0032]    Referring to  FIG. 4 , the process is that when data download is initiated ( 41 ) the relationship between the hard disk drive  14  and flash memory  10  is important. This may be pre-set, or user defined. If user defined, the user selects buffer ( 42 ) or backup ( 43 ). If backup ( 43 ), it may be either alternatively, or simultaneously. For buffer ( 42 ), the flash controller  16  operates ( 44 ) to store the data to the flash memory  10  ( 45 ) and stores the address data relating to the address on the hard disk drive for the data ( 46 ). 
         [0033]    The flash controller  16  then sends an initiating signal to the bridge controller  18  ( 47 ), and the data to the hard disk drive  14  via the bridge controller  18  ( 48 ). 
         [0034]    For backup ( 43 ), if alternatively, the data is processed by the flash and hard disk drive controller  22  ( 49 ) and stored to the flash memory  10  ( 50 ). From the flash memory  10  it is stored to the hard disk drive  14  ( 51 ). The storage steps  50  and  51  may be in the reverse order with storage being first to hard disk drive  14  then to flash memory  10 . The second storage (backup) is after storage to the first is complete. This may be for the complete data, or on a file-by-file basis. 
         [0035]    For backup ( 43 ), if simultaneously, the USB controller  16  sends the data ( 52 ) simultaneously to the flash memory  10  ( 53 ) and the bridge controller  18  ( 54 ) for the hard disk drive  14 . 
         [0036]    Naturally, if preset the process will go directly from the data step ( 41 ) to one of steps  44 ,  49  and  52  according to the preset relationship. 
         [0037]    Whilst there has been described in the foregoing description preferred embodiments of the present invention, it will be understood by those skilled in the technology concerned that many variations or modifications in details of design or construction may be made without departing from the present invention.