Abstract:
An improved portable storage device is disclosed having an interface, a controller in communication with this interface, a memory in communication with the controller, and a light-emitting-diode assembly in communication with the controller. The light-emitting-diode assembly has a first and a second light-emitting-diode element, the first and second light-emitting-diode elements emitting a first and a second color of light, respectively. The first light-emitting-diode element and said second light-emitting-diode element each independently controlled by the controller via pulse-width-modulation, to produce a third color which appears to be in between the first and second colors in wavelength, this third color indicative of the percent completion of an I/O task or the usage of the memory.

Description:
FIELD OF THE INVENTION 
   The present invention relates to the field of multicolor visual feedback for portable, non-volatile storage devices. 
   BACKGROUND OF THE INVENTION 
   Traditional portable non-volatile storage devices, such as USB storage devices commonly referred to as “thumb drives” or MP3 players, have a single-color light-emitting-diode, which is toggled on and off by an internal controller. This single-color light-emitting-diode gives no differentiation between reading data to, or writing data from, the thumb drive. Furthermore, this LED gives no indication whether the memory is full or whether there is a problem with the thumb drive. 
   SUMMARY OF THE INVENTION 
   The present invention provides multicolor visual feedback for portable solid state storage devices. For example, one color is used to indicate read operations, another indicates write operations, and yet another color indicates either I/O problems or a memory full condition. 
   The present invention also provides a progression of color from the multicolor visual feedback to indicate the used capacity of the portable, non-volatile storage. 
   The present invention also provides a progression of color from the multicolor visual feedback to indicate the percent completion of an I/O job writing to or reading from the portable, non-volatile storage. 
   Further aspects of the invention will become apparent as the following description proceeds and the features of novelty which characterize this invention are pointed out with particularity in the claims annexed to and forming a part of this specification. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The novel features that are considered characteristic of the invention are set forth with particularity in the appended claims. The invention itself; however, both as to its structure and operation together with the additional objects and advantages thereof are best understood through the following description of the preferred embodiment of the present invention when read in conjunction with the accompanying drawings, wherein: 
       FIG. 1  shows a block-diagram of a USB storage device; 
       FIG. 2  shows a side view of a cross-section of a multicolor light-emitting-diode assembly; and 
       FIG. 3  shows pulse-width-modulation of the multicolor light-emitting-diode assembly. 
   

   DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   While the invention has been shown and described with reference to a particular embodiment thereof, it will be understood to those skilled in the art, that various changes in form and details may be made therein without departing from the spirit and scope of the invention. 
     FIG. 1  shows a block diagram of portable storage device  100  which has exterior case  110  and removable end-cap  130 . End-cap  130  protects interface  120 . Interface  120  communicates with a mating interface in a laptop, notebook, or desktop computer (not shown) for the transfer of data. Interface  120  is typically a USB interface. However, interface  120  could alternately be a SCSI (Small Computer System Interface), iSCSI (Internet SCSI, where SCSI commands are embedded into a different protocol such as Ethernet), Ethernet, Fibre Channel, Serial Attached SCSI (SAS), Serial ATA (SATA, or Serial Advanced Technology Attachment), IDE (Integrated Drive Electronics), TCP/IP (Transmission Control Protocol/Internet Protocol), or Bluetooth interface. 
   Exterior case  110  protects electrical components: controller  140 , memory  150 , multicolor light-emitting-diode (LED) assembly  160 , and crystal oscillator  180 . Controller  140  and interface  120  share one or more data flow lines  145  and one or more electrical power lines  146 . Controller  140  and memory  150  share one or more data flow lines  155  and one or more electrical power lines  156 . Controller  140  and crystal oscillator  180  share clock-in line  181  and clock-out line  182 . 
   Crystal oscillator  180  oscillates in the MegaHertz range, for example 6 MHz, and its timing pulses are used to regulate the activity of controller  140  and the data flow in and out of memory  150 . 
   Memory  150  can be a solid-state EEPROM (Electrically Erasable Programmable Read Only Memory), which is a nonvolatile memory so that data stored in memory  150  is retained after storage device  100  is detached from its host, such as a laptop, notebook, or desktop computer, and power is no longer provided to storage device  100 . It is the use of EEPROM which gives the portability to the thumb drive without need of a battery inside of storage device  100 . A special type of solid-state EEPROM is Flash memory, where data is written, read, or erased in blocks, rather than by individual bytes. Because of the inherent efficiency of this block-level access, Flash memory is the preferred rewritable solid-state memory for memory  150 . Alternately, memory  150  could be a solid-state PROM (programmable read only memory) which is written only once, but can be read any number of times. Random Access Memory is unsuitable for memory  150 , as that memory completely loses its stored data when no longer supplied with power. 
   An alternative to using an EEPROM, Flash, or PROM for memory  150  is publicly known as Millipede, which is based on Micro-Electrical-Mechanical-Systems (MEMS) components borrowed from Atomic Force Microscopy (AFM). Tiny depressions which are created with an AFM tip in a polymer medium represent stored data bits. This AFM tip is typically a microscopic cantilevered beam with a nano-sized indenter at the end. These stored bits in the polymer medium are non-volatile and can later be read back by the same AFM tip. Data written in this way can also be erased using the same AFM tip, and the polymer medium can be reused thousands of times. This thermo-mechanical storage technique is the nano-mechanical equivalent of the punched card of the 1900&#39;s, and it is capable of achieving data densities exceeding 1 Terabit per square-inch, well beyond the expected limits of magnetic recording. One Terabit is a million-million bits, and 1 Terabit per square inch is equivalent to 155 Gigabits per square-centimeter. Use of a millipede chip for memory  150  in storage device  100  could enable a thumb drive to hold approximately 20 Gigabytes of data. 
   Although the read-back rate of an individual probe is limited, high data rates can still be achieved by making use of massive parallelism of an array of probes. An array consisting of thousands of thermo-mechanical probes can operate in a highly parallel manner, with each individual probe capable of reading, writing and erasing data in its own small storage field. The read- and write-array can be fabricated as a single memory chip  150 , using well-established, low-cost semiconductor micro-fabrication techniques. 
   Controller  140  and memory  150  could be separate chips, as illustrated in  FIG. 1 , or integrated into a single chip in order to reduce interconnections such as one or more data flow lines  155  and one or more electrical power lines  156 . 
   Referring to  FIGS. 1-2 , LED assembly  160  is connected to controller  140  via common cathode  165 , red anode  164 , and green anode  166 . One LED assembly  160  contains both a red LED element  174  and a greed LED element  176  within case  161 . Top cover  162  of LED assembly  160  is where the light exits. Top cover  162  may be a lens, such as a convex lens or a Fresnel lens. Red LED element  174  is connected to red anode  164  and common cathode  165 . Greed LED element  176  is connected to green anode  166  and common cathode  165 . To make LED assembly  160  glow green, controller  140  directs electric current through green anode  166 , through green LED element  176 , to common cathode  165 . To make LED assembly  160  glow red, controller  140  directs electric current through red anode  164 , through red LED element  174 , to common cathode  165 . 
   An example of LED assembly  160  is HLMP-4000 and HLMP-0800 manufactured by Hewlett Packard. Examples of USB controllers are PS2045 by PHISON and i5062-ZD by iCreate Technologies, but presently, both of these controllers only have a single cathode and anode line to control single-color LED, and both controllers would have to be modified to have electrical ports for common cathode  165 , red anode  164 , and green anode  166 . 
   
     
       
             
           
             
             
             
           
         
             
               TABLE 1 
             
           
           
             
                 
             
             
               Wavelengths of Visible Light 
             
           
        
         
             
                 
               Color 
               Range of Wavelength in nanometers 
             
             
                 
                 
             
             
                 
               Violet 
               400-424 nm 
             
             
                 
               Blue 
               424-491 nm 
             
             
                 
               Green 
               491-575 nm 
             
             
                 
               Yellow 
               575-585 nm 
             
             
                 
               Orange 
               585-647 nm 
             
             
                 
               Red 
               647-700 nm 
             
             
                 
                 
             
           
        
       
     
   
   Table 1 shows color versus wavelengths of light. Referring to both Table 1 and  FIG. 3 , LED assembly  160  will appear to glow orange along timeline  301 , to the human eye, if red LED element  174  is electrically pulse-width-modulated with a duty cycle  374  of about 60-70% and green LED element  176  with a duty cycle  376  of about 40-30%, and when one LED element is illuminated, the other LED element is not. In this regard, as shown in  FIG. 3 , one complete red-green cycle is deemed to be 100%. LED assembly  160  will appear to glow yellow along timeline  302 , to the human eye, if red LED element  174  is electrically pulse-width-modulated with a duty cycle  474  of about 30-40% and green LED element  176  with a duty cycle  476  of about 70-60%, and when one LED element is illuminated, the other LED element is not. This alternating pulse-width-modulation of the fundamental colors of red and green is superimposed by the human eye to appear as the intermediary colors of orange or yellow, even though neither orange nor yellow light is actually produced by LED assembly  160 . Other color combinations are possible if different LED elements are used. For example, if LED element  174  produces yellow light and LED element  176  produces blue light, pulse-width-modulating these two elements each with a duty cycle of 50% will produce light which appears to be green to the human eye. LED elements  174  and  176  are typically illuminated with identical direct-current (DC) voltages; however, LED elements  174  and  176  may be driven with different DC voltages, if the illumination intensities of LED elements  174  and  176  vary. 
   This pulse-width-modulation of LED assembly  160  occurs at a frequency of at least 30 Hertz (Hz), which is the frequency at which television screens are refreshed in the United States. This frequency of pulse-width-modulation is the number of red-green cycles in one second, meaning that at 30 Hz, there are 30 red-green pulse-width-modulated cycles in one second. A higher frequency of pulse-width-modulation may be desirable, such as 100-1000 Hz. Controller  140  establishes the pulse-width-modulation of LED assembly  160  via alternately sending electrical current to red anode  164  or green anode  166 , and then receiving that current across common cathode  165 . Thus, controller  140  determines whether LED assembly  160  appears to the human eye as red (100% red, 0% green), orange (60-70% red, 40-30% green), yellow (30-40% red, 70-60% green), or green (0% red, 100% green). 
   LED assembly  160  can be controlled by controller  140  to appear as red for indicating read operations from memory  150 , green for indicating write operations to memory  150 . 
   Alternately, LED assembly  160  can be pulse-width-modulated by controller  140  based on what percent that memory  150  is filled with data, where the percent memory filled is denoted by X. For example, the pulse-width-modulation could be given by eqn. (1A).
 
(Red,Green)=( X %,[100− X ]%)  eqn. (1A)
 
(Green,Red)=( X %,[100− X ]%)  eqn. (1B)
 
   With eqn. (1A), I/O storage device  100  with an empty or nearly empty memory  150  would be indicated by green light from LED assembly  160 . As memory  150  fills and X increases in magnitude, the light from LED assembly  160  would appear to go from green to yellow, from yellow to orange, to finally from orange to red. Red light from LED assembly  160  could indicated that memory  150  was filled or nearly filled. Similarly, with eqn. (1A), as data is erased from memory  150 , light from LED assembly  160  would appear to go from red to orange, from orange to yellow, to finally from yellow to green, as all or nearly all data were being erased from memory  150 . 
   Alternately, with eqn. (1B), I/O storage device  100  with an empty or nearly empty memory  150  would be indicated by red light from LED assembly  160 . As memory  150  fills and X increases in magnitude, the light from LED assembly  160  would appear to go from red to orange, from orange to yellow, and then from yellow to green. Green light from LED assembly  160  could indicated that memory  150  was filled or nearly filled. Similarly, with eqn. (1B), as data is erased from memory  150 , light from LED assembly  160  would appear to go from green to yellow, from yellow to orange, to finally from orange to red, as all or nearly all data were being erased from memory  150 . 
   Thus, implementing either eqn. (1A) or eqn. (1B) by controller  140  would give a visual indication of the percentage of memory  150  which is filled with data by use of a single multi-color LED assembly  160 . 
   Eqn. (1A) and eqn. (1B) could also be applied to individual logical partitions of memory  150 . A logical partition of memory  150  is the equivalent of partitioning a hard disk drive into a C: and D: drive on a laptop, notebook, or desktop computer. Then, eqn. (1A) can be applied to what partition of memory is currently being accessed, by controller  140 . Assuming that eqn. (1A) is used, it is interesting to note that one logical partition of memory  150  could be completely filled with data and per eqn. (1A) and LED  160  would show as red for I/O to the filled partition, while other logical partitions of memory  150  could have available capacity and LED  160  could appear as giving green, yellow, or orange light for I/O to the unfilled logical partitions. 
   Still other visual embodiments are possible. For example, flashing orange or yellow could indicate an I/O problem. Other color and sequencing combinations are possible, such as eqn. (2A), where the percentage P of the size of the file to be read or written is used by controller  140  to pulse-width-modulate LED assembly  160 .
 
(Red,Green)=( P %,[100− P ]%)  eqn. (2A)
 
(Green,Red)=( P %,[100− P ]%)  eqn. (2B)
 
   In Eqn. (2A), LED assembly  160  glows green when the I/O job first starts. As the job progresses and the percentage P of the I/O job completed increases, the color of light which appears to be coming from LED assembly  160  changes from green to yellow, from yellow to orange, and then from orange to red, as the I/O job is completed. Percentage P is measured by controller  140  as the total number of megabytes of data written or read so far, divided by the total number of megabytes of data in the write or read job. So, when the job starts, P=0% and the light is all green from LED assembly  160 , and when the job concludes, P=100% and the light is all red from LED assembly  160 . When percentage P is between 0% and 100%, the light from LED assembly  160  would appear to change from green to yellow, from yellow to orange, and then from orange to red, as percentage P increases towards 100%. 
   Alternately, in eqn. (2B), LED assembly  160  glows red when the I/O job first starts. As the job progresses and the percentage P of the I/O job completed increases, the color of light which appears to be coming from LED assembly  160  changes from red to orange, from orange to yellow, and then from yellow to green, as the I/O job is completed. When the job starts, P=0% and the light is all red from LED assembly  160 , and when the job concludes, P=100% and the light is all green from LED assembly  160 . When percentage P is between 0% and 100%, the light from LED assembly  160  would appear to change from red to orange, from orange to yellow, and then from yellow to green, as percentage P increases towards 100%. 
   A portion  190  of memory  150 ,  FIG. 1 , can be used to store the user&#39;s selection as to whether eqn. (1A), eqn. (1B), eqn. (2A), or eqn. (2B) is applied by controller  140  to LED assembly  160 . The user makes his or her choice at the host level, such as a laptop or notebook, and then stores that choice in memory portion  190 . Controller then accesses memory portion  190  and pulse-width-modulates LED assembly  160  accordingly. Other control algorithms are possible. 
   While the invention has been shown and described with reference to a particular embodiment thereof, it will be understood to those skilled in the art, that various changes in form and details may be made therein without departing from the spirit and scope of the invention.