`
`
`
`.EXAMINER ......
`
`’!i’, !’
`
`a.
`a.
`
`r r:" ~.::!~: . :4....E.
`
`:,i:! ; ,... ~’.* " i...li"..i;".L~
`
`O._.H y’ ............
`
`
`
`I::iJ,.l i: i =,~:~i-.;... ....... , ,.r l::!i:ili",i~i’ii~i! ,. ....... ~..~.;...~ ~ "~.,, ........ ! ~:: ...... i:-. I ii. i:::’.~::,i’:i:.’;’~
`
`00USO,lO on°°on.m= no IOOO. .Y
`
`Verified andAeknowledged ~v.=_mlner’s Initials I ~ ,I !...:t,’.:~
`
`.EOE,VEO .0.
`
`’i~ i :1. ill! i:i i:l I:! I ~’.,i\l~ I;HI:I: .. ]. ii. :;i: l:i
`
`’ ’ ,.:If .~ L..;’.’~ ::~’:.’.I :’:;!.! I "" .i .’::L~;
`
`9
`
`U.S. DEPT. -OF COMM./PAT. & TM~PTO-436L
`
`PARTS OF APPLICATION
`FILED SEPARATELY
`
`NOTICE OF A~.LOWANCE MAILEDI
`
`I ISSUE FEE
`
`Amount Du~.~ Date Paid
`
`Assistant Examiner
`
`i
`
`CLAIMS ALLOWED ’
`
`Total Claims . ,~
`
`35
`
`.... DRAWING "~ .
`
`Sheets Drwg. Figs. Drwg.
`
`Print Fig,
`
`U
`
`Prma~ Examiner:
`
`BATCH.
`NUMBER
`
`Label
`Area
`
`PREPARED FOR ISSUE
`
`J .........
`
`WARNING: The information disclosed herein may be restrictec! Unauthorized :d!s~closUre may be prohibited
`by the United States Code ~tle 35, Sections !22~ 181 and 368,.. Possession outside the U.S.
`Patent & Trademark Office is restricted to authorized employeeSand Contractors only.
`
`Form PTO-436A
`(Rev. 8/92)
`
`~C
`
`(FACE~
`
`
`
`BLACKBERRY Ex. 1006, page 2
`
`
`
`Date
`Entered
`or
`Counted
`
`,,flu
`
`CONTENTS
`
`papers.
`
`SEP 12 9729
`Date
`Received
`or
`Mailed
`
`~,",.~,"<kl
`
`i!,,
`
`(FRONT)
`
`
`
`BLACKBERRY Ex. 1006, page 3
`
`
`
`Staple Issue Slip Here
`
`,!
`
`POSITION
`
`CLASSIFIER
`
`EXAMINER
`TYPIST
`VERIFIER
`CORPS CORR.
`SPEC. HAND
`FILE MAINT.
`DRAFTING
`
`ID NO.
`
`DATE
`
`%/
`
`.
`
`INDEX OF CLAIMS
`
`~-8 L~.I r- j]_ ~
`,
`~. 2
`3 a ’-’I
`
`5 6 ~’ "=
`6 7 J
`7 8 ~’
`
`i
`b’
`=-
`
`/
`
`/
`
`1
`
`12
`~...
`i,i
`~?. 13 ~..~
`I~ 14
`,t
`
`----4
`
`A~._ .~: ...............
`17 v"
`
`Date
`
`-~
`r-
`iT
`
`._
`C:~
`.t-
`
`O
`51
`52
`53
`~54
`-- 55
`56 "
`57
`58
`59
`60
`61
`62
`63
`64
`65
`:66
`67
`68
`69
`
`,.,=
`...-
`.,
`
`24 ._ ~__
`25 _ .." ...........
`>~J:’v
`~’5 27 ,...-
`.~f, 28
`~,’
`7._7_? 29
`,.J
`~ 30
`,..
`7~’~ 31
`,..,
`_aa... _ ...............
`3 I )r 34 ,/
`~z, 35
`36
`37
`38
`39
`40
`41
`42
`
`43
`44
`
`45
`46
`47
`48
`49
`5O
`
`70
`
`71
`
`72
`73
`74
`75
`76
`
`77
`78
`
`79
`80
`81
`82
`83
`84
`85
`86
`87
`188
`89
`90
`91
`92
`93
`94
`95
`96
`97
`98
`
`1001
`
`.... 4
`
`SYMBOLS
`
`Rejected
`............................... Allowed
`. (Through numbe,’at) ~a~eled
`+ ................................. Resh’icled
`N ................................. Non-~lect~d
`I
`................................. Inlede~r~o
`A ................................. Appeal
`0 ................................. Ohjecled
`
`r
`
`(LEFT INSIDE)
`
`BLACKBERRY Ex. 1006, page 4
`
`
`
`SEARCHED
`
`Class
`
`Sub.
`
`Date
`
`Exmr,
`
`car
`
`Sub.
`
`SEARCHEJ7!
`Date fxmr,
`
`SEARCH NOTES
`
`Date
`
`Exmr.
`
`i
`
`BLACKBERRY Ex. 1006, page 5
`
`
`
`STAPLE
`
`AREA
`
`
`
`BLACKBERRY Ex. 1006, page 6
`
`
`
`a8/886923
`II III III IIIIIIII II II
`aT/a2/97
`PATENT APPLICATION SERIAL NO.
`
`68104 U.S. PTO
`
`U.S. DEPARTMENT OF COMMERCE
`PATENT AND TRADEMARK OFFICE
`FEE RECORD SHEET
`
`PTO-1556
`(5/87)
`
`
`
`BLACKBERRY Ex. 1006, page 7
`
`
`
`Attorney Docket No. A .tR-1120
`
`27
`
`ABSTRACT OF THE DISCLOSURE
`
`A system and method for reconfiguring a peripheral device connected by a computer
`
`bus and port to a host from a first generic configuration to a second manufacturer specific
`
`configuration is provided in which the configuration of a peripheral device may be
`
`electronically reset. A peripheral interface device for a standardized computer peripheral
`
`device bus and port is also provided in which a physical disconnection and reconnection of
`
`the peripheral device is emulated to reconfigure the bus and port for a particular peripheral
`
`device.
`
`¯ ii: i~
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 8
`
`
`
`IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
`
`UTILITY PATENT APPLICATION
`
`For:
`
`BUS INTERFACE SYSTEM AND METHOD
`
`Inventors:
`
`Ronald H. Sartore
`Steven P. Larky
`
`Prepared by:
`
`GRAY CARY WARE & FREIDENRICH
`400 Hamilton Avenue
`Palo Alto, CA 94301
`(415) 833-2159
`
`EXPRESS MAIL number: TB898280174US
`
`Date of Deposit July 2, 1997
`
`I hereby certify.that this paper is being deposited with the United States Postal Service "EXPRESS MAIL Post Office to Addressee" service
`under 37 CFR 1.10 on the date indicated above and is addressed to BOX PATENT APPLICATION, Commissioner of Patents and Trademarks;
`Washington, DC 20231.
`
`as A. Cave
`
`
`
`BLACKBERRY Ex. 1006, page 9
`
`
`
`Attorney Docket No. A!
`
`R-1120
`
`BUS INTERFACE SYSTEM AND METHOD
`
`Background of the Invention
`
`This invention relates generally to a system and method for connecting a computer
`
`system to a computer bus and in particular to a system and method for interfacing a computer
`
`system to a standard universal serial peripheral device bus.
`
`In a typical computer system, a computer having a microprocessor may be connected
`
`to a plurality of peripheral devices, such as a printer or a modem, by one or more electrical
`
`10
`
`buses and several different communications ports. Different peripheral devices have
`
`interfaces with different form factors and electrical characteristics, and these communications
`
`ports are used for a variety of different peripheral devices¯ A typical desktop computer may
`
`have a modem, a primer, a keyboard and a mouse connected to it. The modem may be
`
`connected to a serial port, the printer may be connected to a parallel port, the keyboard may
`
`15
`
`be connected to a dedicated keyboard port and the mouse may be connected to a dedicated
`
`mouse port. Each of these communication ports may have different electrical characteristics,
`
`¯ require different connectors and each has a different cable that runs from the peripheral
`
`device to the connector which connects to the computer communications port. For example,
`
`the serial port, the parallel port, the keyboard port and the mouse port all have different
`
`20 characteristics, cables and different connectors. The result is a large number of diverse
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 10
`
`
`
`Attorney Docket No. Ai R-1120
`
`2
`
`interfaces and cables that must be used. In addition, the electrical design of these
`
`communications ports typically requires that the computer be turned off before connecting
`
`and/or disconnecting a peripheral device from the port because the port may be permanently
`
`damaged otherwise. This prompted the design of a single standardized peripheral interface
`
`connection system which reduces the need for multiple connectors and cables, and permits
`
`the connection and disconnection of a peripheral device while the computer is turned on.
`
`A new emerging technology called the Universal Serial Bus (USB) is a system
`
`intended to create a single standardized peripheral device connection system. The USB
`
`10 makes the task of connecting peripheral devices to computers easier and more reliable since it
`
`?
`
`::)
`
`uses a standardized connector and form factor, and makes operating those peripheral devices
`
`with the computer, easier and more reliable than with the various different types of
`
`communication ports. The computer to which these peripheral devices are connected by the
`
`USB is known as the "host computer". The USB replaces the multiple cable and connector
`
`15
`
`types with a single standardized connection system. The USB also permits the connection
`
`and disconnection of USB compatible peripheral devices while the computer is turned on
`
`which eliminates the typical turning off and rebooting of the computer in order to connect or
`
`disconnect a peripheral device to the computer.
`
`2O
`
`When a peripheral device is first connected to the USB and the host computer
`
`through a standard USB communications port, the presence of the connected peripheral
`
`device is detected and a configuration process of the USB for the connected peripheral
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 11
`
`
`
`Attorney Docket No. A~ R-1120
`
`device, known as device enumeration, begins. The enumeration process assigns a unique
`
`USB address to the connected peripheral device, queries the connected peripheral device
`
`about its requirements and capabilities, writes data about the connected peripheral device into
`
`the host computer’s operating system, and loads the appropriate software device driver from
`
`5 a storage location into the host computer’s operating system. During the query, a data table
`
`stored in the peripheral device, which contains the particular peripheral device’s configuration
`
`information, is read from the peripheral device into the host computer’s memory. Upon
`
`completion of the enumeration process, the connected peripheral device is recognized by the
`
`host computer’s operating system and may be used by application software being executed by
`
`10
`
`the microprocessor of the host computer. The association of the device with the software
`
`device driver cannot be subsequently changed.
`
`In a serial bus system, such as the USB, the only opportunity for associating software
`
`device drivers with a peripheral device is at the time when the peripheral device is plugged
`
`15
`
`into the USB and the enumeration process occurs. Thus, to alter the configuration or
`
`personality of a peripheral device, such as downloading new code or configuration
`
`information into the memory of the peripheral device, the host computer system must detect a
`
`peripheral device connection or a disconnection and then a reconnection.
`
`20
`
`The USB provides a number of advantages, as described above, over standard
`
`peripheral device connection techniques. The USB, however, does not provide a system and
`
`method for easily altering the configuration data for a peripheral device. In addition, the
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 12
`
`
`
`Attorney Docket No. A? R-1120
`
`4
`
`USB also does not provide a method for easily changing the software device driver
`
`associated with a particular peripheral device.
`
`Thus, there is a need for a system and method for interfacing to a universal serial bus
`
`which avoids these and other problems of known systems and methods, and it is to this end
`
`that the present invention is directed.
`
`Summary of the Invention
`
`~i:~:~::
`
`10
`
`The invention provides a universal serial bus interface system and method in which
`
`the configuration information for a plurality of different peripheral devices may be stored in
`
`the host computer rather than in the peripheral devices themselves. The flexibility of the
`
`universal serial bus is thereby increased because each peripheral device does not need to store
`
`configuration information. In addition, the configuration information for any peripheral
`
`15
`
`device may be easily modified to accommodate changes in the peripheral devices or to take
`
`advantage of other peripheral device features because it is located in the file system of the
`
`host computers. The configuration information may include configuration data,
`
`microprocessor code to be executed on the CPU in the peripheral device, and logic
`
`configuration data. The configuration information may be downloaded from the host
`
`20 computer into the peripheral device.
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 13
`
`
`
`Attorney Docket No. A] R-1120
`
`5
`
`In addition, the universal serial bus interface system and method permits the
`
`configuration information associated with the peripheral device to be electronically altered to
`
`match changes in the peripheral devices. Instead of physically disconnecting and
`
`reconnecting a peripheral device to reconfigure it, a peripheral device may be electronically
`
`disconnected and then reconnected to the USB (e.g. the disconnect/connect cycle may be
`
`electrically simulated) so that a change in the configuration information for a particular
`
`peripheral device may be implemented. One of many advantages of the electrical simulation
`
`of the disconnect and reconnect cycle is that since the peripheral device is physically
`
`connected to the bus during the electrical simulation, the peripheral device may utilize the
`
`10
`
`electrical power supplied by the bus to operate the peripheral device. If the peripheral device
`
`, ii
`
`is physically disconnected as in a conventional USB system, the peripheral device would
`
`require its own electrical power source. Thus, the computer system may, without human
`
`assistance, reconfigure a peripheral device connected to the USB.
`
`: ;i¸
`
`15
`
`In addition, the universal serial bus interface system and method may be a single
`
`semiconductor chip which may be incorporated into a plurality of peripheral devices made by
`
`a plurality of manufacturers. The chip may initially have a generic configuration (e.g., not
`
`specific to a particular peripheral device). Then, the appropriate configuration information
`
`for a particular peripheral device and manufacturer may be downloaded to the chip, an
`
`20
`
`electronic simulation of the disconnection and reconnection of the peripheral device occurs,
`
`the peripheral device is recognized as a new, manufacturer specific peripheral device and the
`
`appropriate soPtware device driver is loaded into the memory of the host computer.
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 14
`
`
`
`Attorney Docket No. A2
`
`IR-1120
`
`In accordance with the invention, a system and method for reconfiguring a peripheral
`
`device connected by a computer bus and port to a host computer is provided in which a host
`
`computer detects a peripheral device connected to the port in which the peripheral device has
`
`a first configuration. A second set of configuration information may be downloaded from
`
`the host computer into the peripheral device over the computer bus, and the configuration of
`
`the peripheral device is electronically reset from said first configuration to a second
`
`configuration based on the second set of configuration information.
`
`10
`
`In accordance with another aspect of the invention, a peripheral interface device for a
`
`standardized computer peripheral device bus and port is provided in which a peripheral
`
`device is physically connected to a computer system through a computer peripheral bus and
`
`port and the peripheral device has a first configuration. A second set of configuration
`
`information may be received from a computer system, and a physical disconnection and
`
`15
`
`reconnection of the peripheral device is simulated to reconfigure the peripheral device to a
`
`second configuration based on the second configuration information.
`
`Brief Description of the Drawings
`
`2O
`
`Figure 1 is a diagram illustrating a conventional universal serial bus system in a
`
`computer system;
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 15
`
`
`
`Attorney Docket No. A2 IR-1120
`
`7
`
`Figure 2 is a diagram illustrating a universal serial bus system in accordance with the
`
`invention;
`
`Figure 3 is a diagram illustrating a conventional universal serial bus interface circuit;
`
`Figure 4 is a diagram illustrating a universal serial bus interface circuit in accordance
`
`with the invention;
`
`Figure 5 is a diagram illustrating a peripheral device with a first configuration being
`
`connected to a computer system through a USB port and configured in accordance with the
`
`invention;
`
`Figure 6 is a diagram illustrating a peripheral device being configured with a second
`
`10
`
`configuration in accordance with the invention;
`
`Figure 7 is a diagram illustrating a peripheral device being reconfigured with a third
`
`configuration in accordance with the invention; and
`
`Figure 8 is a flowchart illustrating a method for changing the configuration
`
`’!i !i
`
`information for a peripheral device connected to a universal serial bus in accordance with the
`
`15
`
`invention.
`
`Detailed Description of a Preferred Embodiment
`
`The invention is particularly applicable to a universal serial bus interface system and
`
`2O
`
`method. It is in this context that the invention will be described. It will be appreciated,
`
`however, that the system and method in accordance with the invention has greater utility,
`
`such as with other different computer buses and standardized interfaces.
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 16
`
`
`
`Attorney Docket No. A2 ~R-1120
`
`8
`
`i~ ~i~ :?
`
`~i ;i~
`
`ii! i
`
`Figure 1 is a diagram illustrating a standardized bus interface, such as a conventional
`
`computer system 20, that may include a host computer system 22 and a peripheral device 24.
`
`The peripheral device is connected to the host computer by a universal serial bus (USB) 26.
`
`The host computer may include a central processing unit (CPU) 28 connected to a USB
`
`interface (I/F) circuit 30, and the USB standard provides a universal electrical and physical
`
`interface for the peripheral devices via bus 26. The CPU executes software application code
`
`located in a memory 31 and communicates data to and from the peripheral device through the
`
`USB interface and the USB 26. The host computer may also include an operating system 32
`
`10
`
`which may include a software device driver 33. The peripheral device 24 may include a USB
`
`interface circuit 34, a CPU 36 and a non-volatile memory 38 that may store configuration
`
`information describing the characteristics of the peripheral device. The non-volatile memory
`
`may be a read only memory (ROM) or an erasable programmable read only memory
`
`(EPROM).
`
`15
`
`When the peripheral device is initially connected to the USB, an enumeration process
`
`is conducted in which the host computer determines the characteristics of the peripheral
`
`device by receiving the configuration information from the memory 38 within the peripheral
`
`device, and configures the USB according to the characteristics of the peripheral device. As
`
`20
`
`shown, the configuration information about the characteristics of the peripheral device in a
`
`conventional USB system is stored in a non-volatile memory 3 8 on the peripheral device.
`
`The data about the characteristics of the peripheral device is programmed into the non-
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 17
`
`
`
`Attorney Docket No. A1 R-1120
`
`volatile memory at the factory, and the characteristics of the peripheral device may not be
`
`easily altered. In addition, the memory in the peripheral device stores all of the configuration
`
`information about the peripheral device which may require a large amount of memory in the
`
`peripheral device.
`
`Once the enumeration process has been completed, the CPU of the host computer
`
`may load an appropriate software device driver 33 for the peripheral device and the software
`
`applications being executed by that CPU of the host computer may communicate with the
`
`peripheral device using the USB. When the first peripheral device is disconnected and
`
`il¸ ~
`
`~;~ii i~
`
`10
`
`another peripheral device is connected to the USB, the enumeration process for the new
`
`peripheral device may be conducted and another software device driver may be loaded. The
`
`configuration of the peripheral device cannot be easily altered. Now, a universal serial bus
`
`system and method in accordance with the invention will be described.
`
`15
`
`Figure 2 is a diagram illustrating a computer system 50 that may have a universal
`
`serial bus system in accordance with the invention. The computer system may include a host
`
`computer 52 connected to a peripheral device 54 by a universal serial bus (USB) 60. The
`
`host computer may include a CPU 62, a memory 64, an operating system 65 and a USB
`
`interface circuit 66. One or more peripheral device drivers, such as a first peripheral device
`
`20
`
`driver 68, may be stored in the operating system 65. Each device driver contains information
`
`about the proper configuration of the USB for a particular class of peripheral devices. The
`
`operating system within the host computer may also contain a plurality of different
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 18
`
`
`
`Attorney Docket No. A2 3~-1120
`
`10
`
`configuration information sets 70, which may include configuration data for a particular
`
`peripheral device (including which device driver to use), microprocessor code to be executed
`
`by a CPU located in the peripheral device, or logic configuration data to configure logic
`
`circuits in the peripheral device. This invention advantageously enables these configuration
`
`information sets to be updated or altered easily since they are located in the host computer
`
`and not in a non-volatile memory in the peripheral device,
`
`The peripheral device 54 may include a USB interface system 71 and a CPU 72. The
`
`USB interface system may include an alterable memory 74 such as a random access memory
`
`10
`
`(RAM) or a flash electrically erasable programmable read only memory (flash EPROM), and
`
`a USB interface circuit 76. The memory 74 may initially contain an identification code to
`
`indicate which configuration information set should be downloaded to the peripheral device.
`
`The USB interface system 71 may be a semiconductor chip containing the USB interface
`
`circuit as well as the memory that may be added onto the peripheral device. The USB
`
`15
`
`interface circuit in accordance with the invention is designed to meet USB standard
`
`specifications, such as communications protocols, electrical specifications and the USB form
`
`factor, and may permit the peripheral device to be disconnected and connected to the USB
`
`without the physical disconnection or connection of the peripheral device, as described
`
`below.
`
`20
`
`The various configuration information sets are stored in the host computer so that
`
`they may be easily updated or altered and then, using the electronic disconnect and reconnect
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 19
`
`
`
`Attorney Docket No. A2 N-1120
`
`11
`
`method in accordance with the invention, the peripheral devices attached to the host
`
`computer may be dynamically reconfigured using the updated configuration information sets
`
`without the necessity to physically disconnect and reconnect the peripheral devices.
`
`In operation, during the initial factory configuration of the peripheral device with the
`
`USB interface system in accordance with the invention, the memory may store an
`
`identification code indicating the appropriate configuration information set to be loaded.
`
`Thus, when the peripheral device is first connected to the USB, the configuration information
`
`70, including any microprocessor code applicable to the peripheral device and the appropriate
`
`10
`
`configuration data for the peripheral device may be downloaded over the USB into the
`
`memory 74 of the peripheral device 54 as shown by the dashed arrow 78. The electrical
`
`simulation of the disconnection and reconnection of the peripheral device from the USB, as
`
`described below, may be initiated and a re-enumeration processrnay occur. During the re-
`
`enumeration process, the newly downloaded configuration information may be used to
`
`15
`
`reconfigure the USB for the peripheral device and the host computer may select the
`
`appropriate software device driver 68 for the peripheral device based on the configuration
`
`information and load the device driver into memory 64 as shown by arrow 80. For example,
`
`a plurality of different peripheral devices manufactured by different companies may each
`
`include a USB interface system in accordance with the invention. The USB interface system
`
`20
`
`for each peripheral device is identical (e.g. has a USB interface circuit and a memory) except
`
`that each memory may contain an identification code that is unique to, for examplel a
`
`particular manufacturer. When one of the peripheral devices is connected to the USB and the
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 20
`
`
`
`Attorney Docket No. A_ ~-1120
`
`12
`
`host computer, the appropriate configuration information for the peripheral device, based on
`
`the identification code, is downloaded over the USB to the memory of the peripheral device
`
`and the appropriate software device driver is loaded into the memory of the host computer.
`
`Thus, a plurality of different peripheral device may include the same USB interface system
`
`hardware since the configuration information is located in the operating system of the host
`
`computer. Now, a conventional USB interface circuit and the universal serial bus interface
`
`circuit in accordance with the invention that permits the electronic disconnection and
`
`reconnection of the peripheral device will be described.
`
`10
`
`Figure 3 is a diagram illustrating a conventional host computer universal serial bus
`
`interface circuit 100 and a peripheral device USB interface circuit 101. The host computer
`
`USB interface 100 may include two USB data leads 102, 103 that may be labeled D+ and D-,
`
`which are both connected to ground through a resistor 112, 113 respectively. The peripheral
`
`device USB interface 101 may include a buffer amplifier 104, having a first normal outpl~t of
`
`15
`
`the buffer (D+) 106 and a second inverted output of the buffer (D-) 108. The D+ output of
`
`the buffer may be connected to a supply voltage, which may be 3.3 volts for example,
`
`through a 1.5 k~ resistor 110. In operation, the host computer detects the connection of a
`
`peripheral device by monitoring the voltage levels of one of the two USB data leads. In
`
`particular, in the computer host, the D+ data line is terminated with a 15 k~ resistor 112 to
`
`2O
`
`ground. Thus, when the D+ line is not connected to a peripheral device, the measured
`
`voltage of the D+ line is approximately zero volts and the host computer determines that no
`
`peripheral device is connected to the USB port. When a peripheral device is connected to the
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 21
`
`
`
`Attorney Docket No. A~ ~R-1120
`
`13
`
`USB port, the 1.5k~) resistor 110 connected to a supply voltage of the peripheral device USB
`
`interface 101 adds a voltage to the D+ line and the D+ line at the host computer is pulled to
`
`above 3 volts which is detected as a connected peripheral device by the host computer and
`
`the host computer begins the enumeration process. Now, the USB interface circuit in
`
`accordance with the invention will be described.
`
`Figure 4 is a diagram illustrating a USB interface circuit for a peripheral device in
`
`accordance with the invention which permits the peripheral device to be electronically
`
`disconnected and/or reconnected to the USB without physically disconnecting and
`
`:,:/)
`
`10
`
`reconnecting the peripheral device from the USB (e.g., the electric simulation of a
`
`disconnect/connect cycle). As with the conventional USB interface, the host computer USB
`
`interface circuit 100 may include two USB data leads 102, 103 which may be labeled as D+
`
`and D- as shown. As above, each data lead is connected to ground through a resistor and a
`
`15 k~ resistor 112 connects the D+ data lead to ground. A peripheral device USB interface
`
`15 circuit 120 in accordance with the invention will now be described.
`
`The peripheral USB interface circuit 120 may include a buffer amplifier 122, a first
`
`buffer output 124 labeled D+ and a second buffer output 126 labeled D-. In accordance with
`
`the invention, the D+ data lead may be connected to a supply voltage, which may be 3.3
`
`20
`
`volts, through a 1.5 lc.Q resistor 128 and an electrical switch 130, that may be a
`
`semiconductor switch such as a field effect transistor (FET). The electrical switch may have
`
`a control lead 132 which may control the operation of the electrical switch. The electrical
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 22
`
`
`
`Attorney Docket No. A], ~R-1120
`
`14
`
`switch is normally controlled by the peripheral device, but the host computer may download
`
`configuration information containing a command instructing the peripheral device to actuate
`
`the electrical switch. Thus, both the peripheral device itself and the host computer may
`
`control the electrical switch. As above, when no peripheral device is physically connected to
`
`the USB, the host computer reads zero volts on the D+ data lead.
`
`When a peripheral device is connected to the USB, the electrical switch permits the
`
`peripheral device to disconnect and then reconnect itself to the USB without the physical
`
`disconnection of the peripheral device from the USB. In particular, if the peripheral device is
`
`10
`
`physically connected to the USB, but the electrical switch is open, the D+ data lead is no
`
`longer connected to the supply voltage and the host computer determines that the peripheral
`
`device has been disconnected even though the peripheral device is still physically connected
`
`to the USB. Similarly, when the electrical switch is closed again, the D+ data lead is again
`
`connected to the supply voltage and the host computer will detect that the peripheral device
`
`5 5
`
`15
`
`has been reconnected to the USB. Therefore, the physical disconnection and/or connection
`
`of the peripheral device may be effected without actually physically disconnection and/or
`
`connecting the peripheral device. This electronic disconnection and reconnection of the
`
`peripheral device, as described above, in combination with the storage of the configuration
`
`information sets on the host computer permits the configuration of the peripheral devices to
`
`20
`
`be changed easily without requiring the physical disconnection and reconnection of a
`
`peripheral device. Now, an example of a system for connecting a plurality of different
`
`PA\642118.4
`
`BLACKBERRY Ex. 1006, page 23
`
`
`
`Attorney Docket No. A5 ~-1120
`
`15
`
`peripheral devices each containing a USB interface system in accordance with the invention,
`
`to a computer system will be described.
`
`Figures 5, 6, and 7 are diagrams illustrating three different peripheral devices from
`
`different manufacturers, for example, being connected to a host computer in accordance with
`
`the invention. In each Figure, a computer system 140 may include a host computer 142, a
`
`plurality of peripheral devices, such as peripheral device "A" 144 (shown in Figure 5),
`
`peripheral device "B" 146 (shown in Figure 6), peripheral device "C" 148 (shown in Figure
`
`7) and a USB bus 149. The host computer 142 may include a CPU 150, a memory 152, an
`
`10
`
`operating system 154 and a USB interface circuit 156. The operating system, in this
`
`example, may include a plurality of so,ware device drivers, such as device driver "A" 158,
`
`device driver "B" 160 and device driver "C" 162, and a plurality of configuration information
`
`sets, such as device "A" characteristics 164, device "B" characteristics 166 and device "C"
`
`characteristics 168.
`
`15
`
`Each peripheral device 144, 146, 148 may include a universal USB interface system
`
`170 that may include a USB interface circuit 172 as shown in Figure 4 and a loadable
`
`memory 174. Each peripheral device may also include a CPU 176 and a non-volatile memory
`
`178. The non-volatile memory may store a unique manufacture signature or identifier that
`
`2O
`
`identifies the appropriate configuration information to be downloaded into the peripheral
`
`device. Now, the connection of each of these peripheral device to the computer system will
`
`be described.
`
`PA\642118.4
`
`
`
`BLACKBERRY Ex. 1006, page 24
`
`
`
`Attorney Docket No. A
`
`!R-1120
`
`16
`
`As shown in Figure 5, peripheral device "A" 144 may have a unique manufacturer
`
`signature in the non-volatile memory 178. When the peripheral device is connected to the
`
`computer system, the enumeration process begins in which the USB interface system 170 is
`
`recognized by the USB as a generic device and the unique manufacturer signature is read
`
`from the non-volatile memory by the CPU 150 over the USB 149. The unique signature
`
`identifies device "A" characteristics 164 as the appropriate configuration information and that
`
`configuration information may be downloaded over the USB 149 into the memory 174 of the
`
`peripheral device as shown by dashed arrow 180. Then the electrical simulation of the
`
`~ ~ i!
`
`disconnection and reconnection of the peripheral device occurs, as described above, which
`
`cause re-enumeration of the peripheral device. During re-enumeration, device driver "A"
`
`158, which is identified by device "A" characteristics 164 as the appropriate device driver, is
`
`loaded from the operating system into the memory, as shown by arrow 182, such that the
`
`peripheral device is now recognized as a peripheral device with device "A" characteristics.
`
`Thus, a generic hardware USB interface system may be incorporated into a peripheral device
`
`and the particular characteristics for the particular peripheral device may be later downloaded
`
`from the host computer into the peripheral device.
`
`Similarly, as shown i