`
`
`EXHIBIT 1004
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`PNY Exhibit 1004
`Inter Partes Review of
`US Patent No. 7,518,879
`
`
`
`(12) United States Patent
`Deng et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,829,672 B1
`Dec. 7, 2004
`
`US006829672B1
`
`.................. .. 711/1
`5,696,917 A * 12/1997 Mills et al.
`5,822,244 A * 10/1998 Hansen et al.
`.
`. 365/185.11
`5,928,347 A *
`7/1999 Jones . . . . . . . . . . . .
`. . . . . .. 710/305
`
`
`
`3/2000 Terme
`6>038>640 A :
`gag et at.
`31 *
`W711/103
`8/2001 Rgbfrisilsnletiiali
`6,279,069 B1 *
`.2... 710/1
`9/2001 Tsuyuguchi et 51......
`6,289,397 B1 *
`711/163
`6:330:648 B1 * 12/2001 Wambach et al.
`710/310
`6,338,109 B1 *
`1/2002 Snyder et al.
`6,466,464 B1 * 10/2002 Drobnik .................... .. 363/34
`
`711/115
`
`EP
`EP
`W0
`W0
`
`FOREIGN PATENT DOCUMENTS
`08830834 A1
`12/1998
`0929043 A1
`7/1999
`W0 93/0395
`1/1993
`WO 99/45460
`3/1999
`
`* cited by examiner
`
`Primary Examiner—Matthew Kim
`Assistant Examiner—Zhuo Li
`
`(57)
`
`ABSTRACT
`
`An electronic flash memory external storage method and
`device for data processing system, comprising firmware
`which directly controls the access of electronic storage
`media and implements standard interface functions, adopts
`particular reading and writing formats of the external storage
`media, receives power via USB, externally stores data by
`flash memory and access control circuit with cooperation of
`the firmware, and the driver with the operating system, and
`has write-protection so that the data can be safely trans-
`ferred. The method according to the present invention is
`highly efficient and all parts involved are assembled as a
`monolithic piece so that it has large-capacity with small size
`and high speed. The device operates in static-state and is
`driven by the software. It is plug-and-play and adapted to
`micro-data processing system.
`
`22 Claims, 8 Drawing Sheets
`
`(54) ELECTRONIC FLASH MEMORY EXTERNAL
`STORAGE METHOD AND DEVICE
`
`(76)
`
`Inventors: Guoshun Deng, Netac Technology Co.,
`Ltd., 24A, Electronic Science &
`Technology Building C’ No" 2070
`Shennan Zhong R°ad> Sh"“Zhe“>
`518031 (CN); Xi30hua CheI1g>N€taC
`Technology Co, Ltd., 24A, Electronic
`Science & Technology Building C, No.
`2070 Shennan Zhong Road, Shenzhen,
`518031 (CN)
`,
`,
`,
`,
`Subject. to any disclaimer, the term of this
`patent 1S extended or adjusted under 35
`U.S.C. 154(b) by 251 days.
`
`,
`( * ) Notice:
`
`(21) Appl. No.: 09/687,869
`
`(22)
`
`Filed:
`
`Oct. 13, 2000
`
`(30)
`
`Foreign Application Priority Data
`
`NOV. 14, 1999
`Feb. 23, 2000
`
`(CN) ...................................... .. 99117225 A
`(CN) ...................................... .. 00114081 A
`
`Int. Cl.7 .............................................. .. G06F 12/00
`(51)
`(52) U.s. Cl.
`......................... .. 711/103, 711/102, 711/4,
`711/115, 713/1, 713/2, 713/100, 365/189.01;
`365/185.11; 365/185.08; 365/185.33; 710/305,
`710/306; 710/313, 710/314, 710/315, 710/316
`(58) Field of Search ........................ .. 710/105, 36, 305,
`710/306, 313-316; 711/103, 115, 365/189.01,
`185.11, 185.08, 185.33; 713/1, 2, 100
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`4,469,990 A *
`5,404,485 A
`5,596,738 A *
`5,666,540 A *
`
`9/1984 Maruyama et al.
`4/1995 Ban et 211.
`1/1997 Pope ........................ .. 711/103
`
`9/1997 Hagiwara et al.
`713/323
`
`.... .. 315/241 P
`
`Plug into
`Initialization.
`
`
`
`
`
`Now the npnvallng symm
`to assign on axtomol storage driver.
`
`S2
`
`
`
`Waiting for the
`
`
`
`
`
`5‘
`
`P|ug—and-play or pth-r
`ouppartaato upemfl0n7
`S9
`Y s
`
`
`
`Ive!
`Spaclficul operation for convertlng
`mognotio dlik opuarmn Into ctacirqnin:
`flash memory exlornal xtnmge device.
`
`Spcnlficully operate oloctmnia flush
`;_l___
`mumary external storage device to
`package it
`in the rarmot dafinzd by usa.
`
`S5
`
`S5
`
`Send 0:: packaged op-rgtion to
`$7 in. firmware vlu mo op_Iratmn system
`and wait (or wemhon mum.
`._JReturn
`Process inlnrmution av
`result or stoto etc.
`
`S5
`
`
`
`procasszng operation.
`
`510
`
`.
`‘3°‘""‘
`Prams mlormabon 0'
`result or state eta.
`
`S11
`
`Pull out
`
`the operating symm to mum
`Not:
`fytm mm/able storage device.
`
`512
`
`PNY EXHIBIT ‘IOO4
`
`
`
`U.S. Patent
`
`m
`
`M027:
`
`.mhS
`
`1
`
`6
`
`6
`
`1
`
`Dmm
`
`
`
`%s_o>coon
`
`mEzxsmom
`
`< 91993 EISFI
`
`ESQEOUmmi
`
`fl5__ot:oU-Eu._2
`
`R.
`
`
`
`boE2>___mmE._o:ob:oUoofitfifimmb
`
`
`_mm
`
`
`
`
`
`
`
`SqEU;o:>>m:o.:oo__oio..:>>::8._Uo:_:mum%:oam:mA
`
`
`
`
`
`BnnFDE
`
`9,EIIIII1I.III2_1.I:.I.E!I.II.zi8,istun:
`
`
`
`
`
`
`
`U.S. Patent
`
`Dec. 7, 2004
`
`Sheet 2 of 8
`
`US 6,829,672 B1
`
`Fig. 2
`
`
`
`U.S. Patent
`
`Dec. 7, 2004
`
`Sheet 3 of 8
`
`US 6,829,672 B1
`
`
`
`owm:o>UD-UQ_IIIfIl1lI1I
`
`2
`
`9
`
`N
`
`«J
`
`HSCu
`
`Sfiswom
`
`__m._
`
`_mm
`
`.~Ow0®fiGO©
`
`____
`
`
`
`
`
`\CoE2»_smfim$:o::oUoomocotzmmD
`
`mm
`
`v;8.;>m5.502052.56
`
`5$=o::oU-oB:2
`
`
`
`
`
`
`U.S. Patent
`
`wD
`
`M02.1,
`
`h
`
`US 6,829,672 B1
`
`v
`
`
`
`
`
`~_o...§>m:OEo0~O._n~0a.C>/
`
`I I I 1 I I I I I I I I I 1 I I I I I I I I
`
`«N
`
`2:85oE:mu~$Eo%=m
`
`S_
`
`fl$:ob:oU-oS:2M_w_
`
`_m
`
`____
`
`
`__mm
`
`
`
`
`
`boE2>_zmmi8:05:00ouster:«of
`
`__m__
`_mm
`
`
`
`SfiswomNWowm:o>DQOD~IIIIIIIIIIIMIIIIIIIIII
`
`
`
`.o.8==oUcom.
`
`
`
`
`
`
`
`U S Patent
`
`Dec. 7 2004
`
`Sheet 5 of 8
`
`US 6,829,672 B1
`
`
`
`Upper Layer of
`
`Operating System
`
` Flash Electronic Memory
`
`External Storage Driver
`
`
`
`
`
`
`Lower layer of
`
`Operating System
`
`Flash Electronic
`
`Memory External
`
`
`
`
`
`U.S. Patent
`
`Dec. 7, 2004
`
`Sheet 7 of 8
`
`US 6,829,672 B1
`
`Plug into
`
`3‘
`
`Notify the operating system
`to assign an external storage driver.
`
`32
`
`Waiting for the
`operation request. 33
`
`
`
`Operate the
`agnetic disk"
`
`
`
` S4-
`
`No
`
`
`
`Yes
`
`Yes
`
`Specifical operation for converting
`55 magnetic disk operation into electronic
`flash memory external storage device.
`
`S6
`
`Specifically operate electronic flash
`memory external storage device to
`package it
`in the format defined by USB.
`
`
`
`P|ug—and—play or other
`supportable operation?
`
`
`
`S9
`
`Send the packaged operation to
`$7 the firmware via the operation system
`and wait for operation return.
`
`_
`_
`processing operation.
`
`510
`
`Return
`S8 Process information of
`result or state etc.
`
`_
`Return
`Process information of
`result or state etc.
`
`S11
`
`Pull out
`
`the movable storage device.
`
`Notify the operating system to remove
`
`$12
`
`FIG. 7
`
`
`
`U.S. Patent
`
`Dec. 7, 2004
`
`Sheet 8 of 8
`
`US 6,829,672 B1
`
`Plug into
`
`Initialization.
`
`S1
`
`S2
`
`8.3
`
`Waiting for the
`
`
`Standard
`
`USB operation?
`
`
`
`No
`
`S6
`pecial operation for
`the flash electronic external
`
`
`
`storage device?
`
`
`
`
`Yes
`
`Process the special operation
`request for the flash electronic 37
`external storage device.
`
`result or state etc.
`
`Return
`Process information of 35
`
`Pull out
`
`FIG. 8
`
`Yes
`
`Process standard USB
`
`operation request.
`
`
`
`Return
`35 Process information of
`result or state etc.
`
`
`
`US 6,829,672 B1
`
`1
`ELECTRONIC FLASH MEMORY EXTERNAL
`STORAGE METHOD AND DEVICE
`
`FIELD OF THE INVENTION
`
`This invention is related to storage device for data pro-
`cessing system, especially related to external storage method
`and its device for micro, handheld and portable data pro-
`cessing systems.
`BACKGROUD OF THE INVENTION
`
`Since the invention of computer, people have been paying
`close attention to the improvement of computer external
`storage device, from magnetic drum, magnetic tape to floppy
`disk and hard disk to exchange, save and backup data and
`file. For more than a decade, personal computer technology
`has been improved quickly, but the technology of floppy
`disk as a removable external storage has no substantial
`improvement. The only improvement of floppy disk is that
`the size was reduced from 8 inches, to 5.25 inches, and to 3.5
`inches, and the capacity was increased to 1.44 MB. Other
`than the above improvements, the floppy disk technology
`stays as what it was ten years ago and there is no further
`improvement. As we all know, floppy disk has the following
`disadvantages: small capacity,
`low speed, easy to be
`damaged, low reliability. Especially, floppy disk drive is big
`and heavy. All these disadvantages have caused great incon-
`venience to users. In the past few years, there are some other
`storage devices in the market, such as high-capacity ZIP
`disk, removable optic disc MO etc. These devices have some
`advantages that floppy disk does not have, such as larger
`capacity, better reliability than floppy disk, etc. But they still
`have such disadvantages: big, heavy, requiring physical
`drive, difficult to carry, complicated to use, requiring exter-
`nal power supply, hard to popularize, high price and so on.
`Only very small number of computers are equipped with
`physical drives for such storage devices. In addition, in order
`to install such an internal drive, you must
`turn off the
`computer, open computer casing and find a place in the
`computer to mount it. Then you need to close the casing,
`power on your computer and install software driver for the
`device. You can not use the device until all the above steps
`have been finished. Obviously, ordinary computer users,
`even computer specialists may find such storage devices too
`troublesome to use, not to mention those users who are not
`familiar with computers.
`To sum up, a new kind of computer storage device is
`urgently needed to replace or complement floppy disk and
`other external storage device using existing technology. The
`need is especially urgent for those increasingly popular
`notebooks and handheld devices. Floppy disk drive and
`other physical drives, due to their big size and heavy weight,
`are not suitable for notebooks and handheld devices which
`
`must be light, convenient, small and portable. In fact, more
`and more notebooks don’t have build-in floppy disk drive or
`CDROM drive for the purposes of compactness and conve-
`nience.
`
`Universal Serial Bus (USB) is a new computer technology
`in recent years. Its standard is defined by some international
`big companies such as Intel, Microsoft and Compaq etc. The
`purposes of USB are to make the use of personal computers
`simpler, easier and faster, and to replace existing serial port,
`parallel port and keyboard port etc. Today, all Pentium II or
`above computers (including compatible computers) are
`equipped with USB. USB has become a new industry
`standard for personal computer. There may be some other
`high-speed universal bus standards in the future.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`At the time when USB is widely available today, users can
`no longer tolerate the situation that micro or portable data
`processing devices can not install built-in floppy disk or
`other similar storage devices. Users also can hardly tolerate
`low-capacity, low-speed and vulnerable storage devices like
`floppy disk, especially can not tolerate the defects that drives
`for such devices are big and hard to install.
`SUMMARY OF THE INVENTION
`
`invention provides an electronic flash
`The present
`memory external storage method to overcome the shortages
`of current storage technology. The method uses electronic
`flash memory, standard universal bus and plug-and-play
`technology to provide a new external storage device to
`computer users. All parts and PCB of the external storage
`device are assembled as a monolithic piece. The high-
`capacity and high-speed device is simple, light, convenient,
`portable, easy to use and highly reliable. The invention only
`uses software to implement external storage functions and
`can be implemented on different operating system. It is
`applicable to various data processing systems supporting
`standard universal bus.
`
`The objects of the present invention are accomplished by
`the following technical scheme:
`The scheme adopts an electronic flash memory external
`storage method that includes the use of DC power supply
`and storage media, and has the following characteristics:
`said storage media is flash memory, and:
`all components and PCB (printed circuit board) used are
`assembled as a monolithic piece,
`said storage method uses software to implement external
`storage functions (to replace physical drive),
`every part is physically at a standstill during the process
`of access.
`
`Said external storage method involves flash memory and the
`connecting universal bus interface controller, microproces-
`sor and suspend/resume circuit. The external storage device
`is connected with data processing system through universal
`bus interface. The firmware of the external storage device is
`designed inside the microprocessor. After initialization, the
`firmware can process standard interface operation requests
`and special operation requests to the external storage device.
`After processing the requests, the firmware sends the results
`back to the requesters. Meanwhile, the driver of the external
`storage device is implemented and installed in the operating
`system. The driver is initialized when the external storage
`device is plugged into host computer. During initialization,
`the driver instructs upper layer operating system to generate
`a removable external storage device and assign a corre-
`sponding device symbol for it. Afterwards, in response to
`conventional magnetic disk operation requests, the driver
`converts these requests into special
`instructions for the
`external storage device. The driver then sends the converted
`instructions to the firmware of the external storage device
`through bottom layer operating system and universal bus
`interface control circuit. The firmware executes the instruc-
`
`tions and sends results and status back to the driver through
`the operating system. There are two categories of instruc-
`tions for the external storage device: read and write. Due to
`the characteristic that valid data of the flash memory can not
`be overwritten, a write command is therefore converted into
`three steps: read, internal erasing, data merge and writing
`back.
`
`An electronic flash memory external storage device,
`which comprises storage media and DC power supply, is
`designed and implemented. All parts and PCB (printed
`
`
`
`US 6,829,672 B1
`
`3
`
`circuit board) used for the external storage device are
`assembled as a monolithic piece. It uses software to imple-
`ment external storage functions. The external storage device,
`including all of its parts, is physically at a standstill during
`the process of access.
`There is an access control circuit on said PCB, which
`comprises micro-controller, USB interface controller, USB
`connector and suspend/resume circuit. Said storage media is
`flash memory. Said micro-controller is connected with USB
`interface controller, suspend/resume circuit and flash
`memory respectively. The USB interface controller is con-
`nected with USB connector, suspend/resume circuit, flash
`memory and micro-controller respectively. The USB con-
`nector is connected with data processing host machine
`through USB cable.
`Said external storage device is driven by the driver and the
`firmware. The firmware resides in the microprocessor and
`the driver is loaded between upper layer operating system
`and bottom layer operating system of the host computer.
`An application example of the external storage device is
`to utilize it in data processing system. The device is con-
`nected with the system through universal bus interface.
`Driver for the external storage device is installed in the
`operating system of the data processing system. Under the
`management of the operating system, users can operate the
`external storage device the same way operating a classical
`disk. The driver receives standard disk operation requests
`from operating system and converts the requests into special
`instructions for the external storage device. The driver then
`sends the converted instructions to the firmware through
`bottom layer operating system and universal bus interface
`control circuit. The firmware executes the instructions and
`
`sends results and status back to the driver through the
`operating system. Up to this point,
`the data exchange
`procedure between the external storage device and data
`processing system is completed. The recognition procedure
`of the external device when it
`is plugged into the host
`machine includes device plug-in, device registration and
`allocation of device symbol. The external storage device is
`plug-and-play without shutting down the host machine when
`plugging in or pulling out the device.
`BRIEF DESCRIPTION OF THE
`ACCOMPANYING DRAWINGS
`
`FIG. 1 shows the general hardware block diagram of the
`electronic flash memory external storage device of the
`present invention.
`FIG. 2 shows a hardware section diagram of the electronic
`flash memory external storage device.
`FIG. 3 shows the hardware block diagram of the elec-
`tronic flash memory external storage device implemented
`with USB interface.
`
`FIG. 4 shows the hardware block diagram of the elec-
`tronic flash memory external storage device implemented
`with IEEE1394 interface.
`
`FIG. 5 shows the software block diagram of the electronic
`flash memory external storage device.
`FIG. 6 shows circuit schematics of the electronic flash
`
`memory external storage device implemented with USB
`interface.
`FIG. 7 shows the driver flowchart.
`FIG. 8 shows the firmware flowchart.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`Following is the description of a preferred embodiment of
`the present invention, which description should be taken in
`conjunction with the accompanying drawings.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`An electronic flash memory external storage method,
`which includes the use of DC power supply and storage
`media, wherein with the following characteristics:
`said storage media is flash memory, and:
`all components and PCB (printed circuit board) used are
`assembled as a monolithic piece,
`said storage method uses software to implement external
`storage functions (to replace physical drive),
`every part is physically at a standstill during the process
`of access. Said storage method includes:
`the establishment of data exchange channel between data
`processing system and external storage device,
`connecting method of the power supply source,
`method of setting up physical storage media of the
`external storage device and its internal data structure,
`method of reading and writing the external storage media,
`method of interpreting and executing read and write
`commands,
`method of transferring data between the host computer
`and the external storage device,
`installation procedures of driver of the external storage
`device,
`method of data exchange between the operating system
`and said driver.
`
`Said storage method also includes a firmware that resides
`in the electronic flash memory external device and directly
`controls the access of flash memory and implements stan-
`dard interface functions. The firmware resides in the micro-
`
`processor and works according to the firmware flowchart as
`shown in FIG. 8. When the external storage device is
`plugged into the data processing host, the firmware coordi-
`nates with the driver in the operating system to accomplish
`the initialization of the device (step 801), then waits for the
`operation request (step 802). According to the requirements
`of operating system and the driver,
`if the request
`is a
`interface standard operation, the firmware executes standard
`interface operation instructions and returns back the pro-
`cessing result or status information etc. (steps 803, 804,
`805); If not but a special operation for the external storage
`device, the firmware executes the special operation instruc-
`tions and returns back the processing result or status infor-
`mation etc. (steps 803, 806, 807, 808); Or else the firmware
`ignores the operation request and return back to step 802.
`Said driver works according to the software flowchart for
`the driver as shown in FIG. 7. When the external storage
`device is plugged into the data processing host, the driver
`coordinates with the firmware to accomplish the initializa-
`tion of the device and notifies the operating system to assign
`and display a device symbol for the external storage device
`(steps S1, S2), then waits for the operation request (step S3).
`The driver needs to process the operation requests sent from
`the operating system to the external storage device. At
`present, the operation request is mainly in magnetic disk
`operation format. It needs to be converted by the driver into
`special operation instruction for the external storage device
`(step S4, S5), packaged in the format defined by the uni-
`versal bus standards and sent to the firmware for execution
`
`the driver needs to process
`(steps S6, S7). In addition,
`plug-and-play operation or other supportable operation coor-
`dinating with the operating system (steps S9, S10). After
`processing these request, the driver returns back the result
`and status information etc. (steps S8, S11). Once the external
`storage device is pulled out,
`the driver will immediately
`notify the operating system to remove the corresponding
`device symbol of the external storage device (step S12).
`
`
`
`US 6,829,672 B1
`
`5
`Said storage method, which can be applied to all data
`processing systems supporting universal bus, includes the
`following contents:
`The data exchange channel between said data processing
`system and said external storage device is universal bus. It
`does not need extra interface card, big physical drive or
`mechanical moving parts. It is light in weight, quick to start
`up and plug and play. The working power for the device is
`supplied from the universal bus. No extra external power
`supply is needed. It is convenient and easy to use. At present,
`the universal bus adopted is USB (Universal Serial Bus).
`USB is a new international standard for computer peripheral
`devices, which can replace the legacy parallel ports, serial
`ports, keyboard interface and mouse interface etc. The
`purpose of USB is to provide unified interface for computer
`peripheral devices,
`to improve transferring speed,
`to
`increase number of connectable devices, to increase trans-
`ferring distance and to facilitate computer users. Today
`many computer peripheral devices such as scanner, printer,
`digital camera, keyboard and mouse have adopted USB
`interface.
`The storage media of said external storage device is flash
`memory. This flash memory is a kind of large-capacity
`electronic memory chip with small size and high speed. Data
`of the flash memory can be randomly or sequentially read
`and written. Data can also be erased. Erasing operation is in
`unit of data block, which can be erased for up to 1 million
`times. Flash memory is an excellent data storage media with
`the capability to store data for more than 10 years without
`power supply. This kind of flash memory has another feature
`that if the target memory area of a write operation contains
`valid data, the valid data in this memory area must be read
`out first before the memory area will be erased and then the
`new data can be successfully written in, wherein said valid
`data is the useful data that should be saved and can not be
`
`erased. This feature is perfect to protect the valid data in the
`flash memory though it makes the write operation more
`complicated. The capacity of an external storage device
`using flash memory is normally five to six times larger than
`a floppy disk. The data inside the flash memory is organized
`in a uniform block model. At present, one data block of the
`flash memory provides 8K bytes, 16K bytes or even 32K
`bytes or 128K bytes available storage capacity. With the
`advancement of technology, flash memory with even bigger
`capacity in a single block will probably be available for
`external storage device.
`Said read command for the external storage device com-
`prises the following steps:
`upper layer operating system receives the read command
`from user, wherein the command format is the familiar
`format used by legacy magnetic disk,
`operating system sends said read command to the driver,
`the driver converts the read command used by magnetic
`disk operation into special read instruction which can
`be understood and executed by the firmware, and
`transfers said converted read instruction to bottom layer
`operating system,
`bottom layer operating system transfers said converted
`read instruction to the firmware through control circuit
`of the universal bus,
`the firmware executes said converted read instruction, and
`transfers results and status back to the driver through
`operating system.
`Said write command of the external storage device com-
`prises the following steps:
`operating system receives the write command from user,
`wherein the command format is the familiar format
`
`used by legacy magnetic disk,
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`operating system sends said write command to the driver,
`the driver checks whether the external storage device
`has in write protection status or not,
`if no write
`protection, the driver continues to execute the follow-
`ing steps,
`the driver converts the write command used by magnetic
`disk operation into several special instructions which
`can be understood and executed by the firmware, and
`transfers said converted instructions one by one to
`bottom layer operating system,
`bottom layer operating system transfers said converted
`instructions to the firmware through control circuit of
`the universal bus,
`the firmware executes a read instruction to the target
`memory area of the write command and transfers data
`read out back to the driver through operating system,
`the firmware executes an erase instruction to said target
`memory area and transfers erase result back to the
`driver through operating system,
`the driver merges the data read out and the data to be
`written to said target memory area, and sends the
`merged data and a write instruction to the firmware,
`then the firmware writes the merged data back to said
`target memory area,
`the firmware transfers write operation results and status
`back to the driver through the operating system.
`The data exchange method between the data processing
`system and the external storage device is the standard
`method defined by the universal bus specifications, not the
`specifically self-defined internal method for the external
`storage device. Driver or firmware packages data according
`to the standard communication protocol before the data is
`transferred from driver to firmware or from firmware to
`driver.
`
`Said working power of the external storage device is
`supplied from USB instead of special power supply from the
`system. This power supply scheme eliminates power adapter
`and maximizes the convenience of plug-and-play.
`In other examples of implementation,
`the standard
`IEEE1394 bus can be adopted as the data exchange channel
`between the data processing host machine and the external
`storage device. In this case, working power of the external
`storage device can be provided from IEEE1394 bus and the
`data exchange method between the data processing host
`machine and the external storage device is the standard
`method defined by IEEE1394.
`The present invention uniquely designs a toggle switch
`that is connected to the write protection pin WP of flash
`memory. The status of the write protection pin is either
`pending or connected to ground by the switch. Write pro-
`tection function of the external storage device is jointly
`implemented by the WP pin and the firmware detection of
`the WP pin status. The write protection pin WP has hardware
`write protection function, that is, it can physically protect the
`contents of the flash memory from being modified or erased.
`On the other hand, driver and firmware provide software
`write protection function for the external storage device.
`When the WP pin is at the write protection status (WP pin
`is connected to ground), the firmware notifies this status to
`the driver and the driver in turn notifies this status to the
`
`the contents in the flash
`operating system. As a result,
`memory can not be modified or erased and the data saved by
`the users can be protected. Especially in this case,
`the
`external storage device is impossible to be infected by virus.
`The general hardware block diagram of the external
`storage device of the present invention is shown in FIG. 1.
`
`
`
`US 6,829,672 B1
`
`7
`FIG. 2 shows the hardware section diagram of the external
`storage device using USB interface 231. Said storage device
`is completely contained inside a single casing 5. All com-
`ponents are mounted on a PCB 51 that is contained in the
`casing 5. The device uses software to implement data
`storage access functions. The external storage device and its
`every part are physically at a standstill when the device is at
`working state.
`A flash memory 1, a DC-DC voltage regulator 3 and an
`access control circuit 2 are mounted on the PCB 51 of the
`
`external storage device. Because the flash memory 1 and the
`access control circuit 2 only comprise electronic compo-
`nents without any mechanical moving parts, the external
`storage device can be very small, almost the same size of a
`thumb, and it is very convenient in using and carrying.
`FIG. 3 shows the hardware block diagram of the external
`storage device of the present preferred embodiment imple-
`mented with USB interface. The access control circuit 2
`
`includes a microprocessor 21, a USB interface controller
`221, a USB interface 231 and a suspend/resume circuit 24.
`The storage media is flash memory 1. The microprocessor
`21 is connected with the USB interface controller 221, the
`suspend/resume circuit 24 and the flash memory 1, with
`signal flowing in uni-direction or bi-direction. The USB
`interface controller 221 is respectively connected with the
`USB interface 231, the suspend/resume circuit 24 and the
`flash memory 1, with signal flowing in uni-direction or
`bi-direction. The USB interface 231 is connected with the
`
`data processing system through USB cable. A write protec-
`tion switch 4 is connected with the flash memory 1 and the
`microprocessor 21, with signal flowing in uni-direction.
`The power supply of the DC-DC voltage regulator 3 is
`provided from the USB interface 231, and is connected with
`the microprocessor 21, the USB interface controller 221 and
`the suspend/resume circuit 24. The output pin of the DC-DC
`voltage regulator 3 is connected with the power supply pin
`of the flash memory 1.
`FIG. 4 shows the hardware block diagram of the external
`storage device of the present preferred embodiment imple-
`mented with IEEE1394 interface, wherein the universal bud
`interface is IEEE1394 interface 232, and the universal bus
`interface controller is IEEE1394 interface controller 222.
`
`Today almost all Pentium II or above computers
`(including compatible computers) are equipped with USB
`interface. USB has become the new industry standard of
`personal computer. Therefore, many computers can support
`the electronic flash memory external storage device of the
`present invention. Like floppy disk and CDROM, the exter-
`nal storage device will probably become a standard com-
`puter peripheral and will eventually replace floppy disk and
`floppy drive.
`FIG. 6, the corresponding figure of FIG. 3, shows the
`circuit schematics of the external storage device of the
`present preferred embodiment. The microprocessor 21 is
`used to control the USB interface controller 221, the flash
`memory 1 and the suspend/resume circuit 24. The micro-
`processor 21 comprises a microprocessing chip D4 and two
`4053 analog multiplexer/de-multiplexer chips D5 and D6.
`Pin 12, 1 and 3 of the chip D5 and pin 12 of the chip D6 are
`connected together and then to pin 12 of the chip D4. Pin 13,
`2, 5 of the chip D5 and pin 13 of the chip D6 are connected
`together and then to pin 13 of the chip D4. Pin 11, 10, 9 of
`the chip D5 and pin 11 of the chip D6 are respectively
`connected to pin 44, 1, 2 and 3 of the chip D4. DATAO to
`DATA7 of the chip D4 are respectively connected to the
`corresponding data bus of chip D2 of the USB interface
`controller 221 and chip D1 of the flash memory 1. Pin 4 of
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`the chip D5 is connected to pin 4 of the flash memory chip
`D1. Pin 14 of the chip D6 is connected to pin 42 of the flash
`memory chip D1. Pin 14 and 15 of the chip D5 are
`respectively connected to pin 15 and 16 of the chip D2.
`Said USB interface controller 221 comprises a chip D2
`with part number PDIUSBD12, a crystal oscillator Y1,
`capacitors C1-C2 and C7-C8, resistors R1—R3 and R10, and
`a LED V3. The crystal oscillator Y1 and the capacitors C1
`and C2 are serially connected as a closed circuit. The two
`pins of the crystal oscillator Y1 are respectively connected
`to pin 22 and 23 of the chip D2. Pin 25 and 26 of the chip
`D2 are respectively connected to pin 2 and pin 3 of the USB
`connector 231 through the resistors R2 and R1. The USB
`interface controller 221 is responsible for USB data input,
`data output and data flow control. It is compliant to USB
`Specifications 1.0 and 1.1. The USB interface controller 221
`has an 8-bit high-speed and yet simple parallel bus interface
`capable of interfacing with most micro-controller, and also
`supports DMA function. The flash memory 1 is used for data
`storage. The part numbers of the flash memory chip D1 can
`be