throbber
United States Patent [19J
`Amoni et al.
`
`I lllll llllllll Ill lllll lllll lllll lllll lllll 111111111111111111111111111111111
`US005884086A
`[11] Patent Number:
`[45] Date of Patent:
`
`5,884,086
`Mar. 16, 1999
`
`[54] SYSTEM AND METHOD FOR VOLTAGE
`SWITCHING TO SUPPLY VARIOUS
`VOLTAGES AND POWER LEVELS TO A
`PERIPHERAL DEVICE
`
`[75]
`
`Inventors: Sergio Amoni, Raleigh; Paul Daniel
`Kangas, Cary; John David Landers,
`Jr., Raleigh, all of N.C.
`
`[73] Assignee: International Business Machines
`Corporation, Armonk, N.Y.
`
`[21] Appl. No.: 842,695
`
`[22] Filed:
`
`Apr. 15, 1997
`
`Int. Cl.6
`........................................................ G06F 1/26
`[51]
`[52] U.S. Cl. ................................ 395/750.01; 395/750.02;
`364/492
`[58] Field of Search ......................... 395/750.01, 750.03,
`3951750.07, 750.06; 364/707, 492
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,782,355
`4,884,287
`4,901,217
`5,121,500
`5,179,710
`5,313,642
`5,408,669
`5,483,656
`5,493,684
`5,514,859
`
`11/1988 Sakai et al. ............................... 396/72
`11/1989 Jones et al. ............................. 375/377
`2/1990 Wilson .................................... 363/126
`6/1992 Arlington et al. ................. 395/750.07
`1/1993 Coschieri ........................... 395/750.01
`5/1994 Seigel ................................. 3951750.05
`4/1995 Stewart et al. ..................... 395/750.01
`1/1996 Oprescu et al. ................... 3951750.03
`2/1996 Gephardt et al. .................. 395/750.04
`5/1996 Seigel ...................................... 235/462
`
`5,560,022
`5,652,895
`5,742,514
`
`9/1996 Dunstan et al. ................... 395/750.01
`7/1997 Poisner ............................... 395/750.04
`4/1998 Bonola .................................... 379/258
`
`OTHER PUBLICATIONS
`
`Halfhill, T. R., "The New PC," BYTE, Oct. 1995, pp. 52-64.
`Klein, R. H., "Bus Pass for Serial Killers," New Electronics,
`9 Jan. 1996, pp. 18-19.
`Universal Serial Bus Specification, 1.0 Final Draft Revision,
`Nov. 13, 1995, Copyright ©1995, Compaq Computer Cor(cid:173)
`poration, et al.
`Wright, M., Ed., "USE and IEEE 1394: Pretenders, Con(cid:173)
`tenders, or Locks for Ubiquitous Desktop Deployment?"
`EDN, Apr. 25, 1996, pp. 79-91.
`
`Primary Examiner---Gopal C. Ray
`Attorney, Agent, or Firm-John D. Flynn; Winstead,
`Sechrest & Minick, PC
`
`[57]
`
`ABSTRACT
`
`Within a data processing system, such as a personal
`computer, non-standard, or auxiliary, voltage and current
`may be supplied to an attached peripheral device along with
`standard Universal Standard Bus (USE) power and signal(cid:173)
`ling. A communication protocol is enabled between the host
`system and the peripheral device to permit the peripheral
`device to communicate its power requirements to the host
`device so that the host device can switch the proper voltage
`and current through the USE cable to the peripheral device.
`This allows the peripheral device to obtain power without
`having to connect to an AC power supply.
`
`21 Claims, 9 Drawing Sheets
`
`HUB/FUNCTION
`
`HUB/FUNCTION
`
`HOST/HUB
`
`702
`
`701
`
`105
`
`104
`
`702
`
`702
`
`701
`
`702
`
`106
`
`108
`
`1
`
`1
`
`1
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`109
`
`t
`
`HUB
`
`ZTE/SAMSUNG 1015-0001
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 1 of 9
`
`5,884,086
`
`HUB/FUNCTION
`
`HUB/FUNCTION
`
`HOST/HUB
`
`j 103
`
`j 102
`
`701
`
`702
`
`701
`
`105
`
`104
`
`1
`
`702
`
`702
`
`106
`
`1
`
`1
`
`108
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`FUNCTION
`
`FIG. 1
`
`j 101
`
`701
`
`702
`
`HUB
`
`109
`
`f
`
`HUB
`
`ZTE/SAMSUNG 1015-0002
`IPR2018-00276
`
`

`

`=
`
`0--,
`00
`~ ....
`00
`00
`....
`Ul
`
`\C
`.....,
`0
`N
`~ .....
`=-~
`
`'Jl
`
`\C
`\C
`'"""'
`\C
`'"""'
`~~
`~
`~
`~
`
`=
`
`......
`~
`......
`~
`~
`•
`\JJ.
`d •
`
`}~9
`.
`
`•
`
`207
`
`}
`
`SIGNAL
`+5V/GND
`AUX VOLT
`
`SIGNAL
`+5V/GND
`AUXVOLT
`
`}as
`AUX VOLT }03
`
`SIGNAL
`+5V/GND
`AUX VOLT
`
`SIGNAL
`+5V/GND
`
`N
`
`N
`
`;N
`
`I'll
`
`•
`•
`•
`
`223
`
`~m
`
`SELECT
`CIRCUIT
`SWITCH
`
`VOLTAGE N
`VOLTAGE 2
`VOLTAGE 1
`
`VOLTAGE N • SELECT
`VOLTAGE 2 • CIRCUIT
`SWITCH
`VOLTAGE 1
`FET
`
`•
`
`221
`
`VOLTAGE N • SELECT
`CIRCUIT
`VOLTAGE 2
`SWITCH
`VOLTAGE 1
`FET
`
`•
`•
`
`VOLTAGE N • SELECT
`•
`• CIRCUIT
`VOLTAGE 2
`SWITCH
`VOLTAGE 1
`FET
`
`&
`
`REPEATER
`
`HUB
`
`PAIR
`SIGNAL
`USB
`
`217
`
`PAIR
`SIGNAL
`USB
`219
`
`LOGIC
`USB
`
`LOGIC
`MAIN
`HOST
`
`I
`I ~ ROLLER
`CONT-
`
`I
`
`211 I
`
`LOGIC
`CODER
`
`DE-
`
`1 TOX
`
`I SELE7
`VOLTAGE
`I I
`
`I
`
`I
`
`I
`
`FIG.2
`
`238 /
`
`I
`
`EXPANSION H
`
`1/0 BUS
`
`I I
`
`I
`
`' .. I
`
`I
`
`I
`
`I ..
`
`I ..
`
`BIOS
`236 >
`
`HOD
`235'
`
`CONTROLLER
`
`FOO
`FOO
`PARALLEL
`2~ SERIAL
`
`233
`
`/220
`
`+5V
`
`•
`• VOLTAGE N
`•
`VOLTAGE 2
`VOLTAGE 1
`A/C INPUT
`
`SUPPLY
`POWER
`HOST
`
`VIDEO µ I
`
`++-!
`
`232,
`
`CONTROLLER
`
`201
`
`& AUXILIARY POWER
`WI INTEGRATED HUB
`
`HOST COMPUTER
`
`PROCESSING
`
`CENTRAL
`
`UNIT
`
`231
`
`~
`230
`
`ZTE/SAMSUNG 1015-0003
`IPR2018-00276
`
`

`

`~ .... = 00
`
`0--,
`
`00
`00
`....
`Ul
`
`\C
`0 .....,
`~
`
`~ .....
`'Jl =(cid:173)~
`
`\C
`\C
`""""
`\C
`"""" ~~
`!"'l
`~
`~
`
`~ = ......
`~ ......
`~
`•
`\JJ.
`d •
`
`/ N
`
`/N
`
`/N
`
`• •
`•
`
`" 311
`
`"331
`
`CODER
`
`DE-
`
`,__
`
`CONTROLLER
`
`HUB
`
`I
`
`FIG. 3
`
`}3~7
`.
`}3~5
`
`--
`
`~
`
`}303
`
`+SV/GND -
`AUX VOLT -
`
`--
`
`321
`
`-
`
`- --
`
`+SV/GND
`AUX VOLT -
`
`'
`
`h,
`
`/
`322
`'
`~
`
`+SV/GND
`AUX VOLT
`
`SWITCH
`FET
`
`VOLTAGE N_!_
`•
`VOLTAGE 2-.-
`VOLTAGE 1-
`
`SWITCH
`FET
`
`VOLTAGE N-1.
`VOLTAGE 2----.--
`VOLTAGE 1-
`
`SWITCH
`FET
`
`VOLTAGE N__!._
`•
`VOLTAGE 2---.--
`VOLTAGE 1-
`
`x
`
`--
`
`-
`
`2
`
`1
`
`REPEATER
`
`HUB
`1 TOX
`
`+SV
`
`-t
`
`317 "'
`
`GND
`
`\)
`
`-
`
`+SV
`
`-
`
`PAIR
`SIGNAL
`
`I
`
`USB SIGNAUVOL T
`
`STANDARD
`
`CABLE
`
`313,
`
`/320
`
`,___+SV
`~VOLTAGEN
`~VOLTAGE2
`1--VOLTAGE 1
`
`•
`
`SUPPLY
`POWER
`
`HUB
`
`-
`
`"""
`
`A/C POWER
`
`HUB
`
`301,
`
`300
`
`RY
`
`WITH AUXILIA
`USB HUB
`
`POWER
`
`ZTE/SAMSUNG 1015-0004
`IPR2018-00276
`
`

`

`~ .... = 00
`
`0--,
`
`00
`00
`....
`Ul
`
`\C
`0 ......,
`.i;;..
`~ ......
`'Jl =(cid:173)~
`
`\C
`\C
`"'""
`\C
`"'"" ~~
`!"l
`~
`~
`
`~ = ......
`~ ......
`~
`•
`\JJ.
`d •
`
`FIG. 4
`
`" 417
`
`~ ..
`
`·~
`
`CONTROLLER
`
`MICRO
`
`•
`
`I --
`
`LOGIC
`MAIN
`DEVICE
`
`'
`
`401
`
`-
`--
`
`l • "419
`
`:
`
`I
`I
`I
`
`SWITCH
`
`FET
`
`REGULATOR
`
`-
`
`/ 403
`
`T'~ +5V
`
`_1
`'
`/l -y -y .....,,....
`-1---
`.L
`
`-
`
`l
`
`GND
`
`VOLT
`AUX.
`
`SI
`UNIF
`
`\
`
`413 "'
`
`USB 1/0 DEVICE
`
`400
`
`WITH AUXILIARY
`
`USB DEVICE
`
`POWER
`
`ZTE/SAMSUNG 1015-0005
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 5 of 9
`
`5,884,086
`
`w
`:::::c:::
`:::::c::: I-
`<( w :r:
`(_)
`:r: :::::c::: I-
`<(
`Cf) (_) -
`II
`Cl<(~
`z Cl..
`Cl
`<(
`Cl..
`:r:
`
`1-w
`:::::c:::
`(_)
`<(
`Cl..
`
`~ <(
`
`Cl
`
`Cl..
`:::>
`1-
`1- w w Cf)
`II
`:::::c::'.
`(_) w
`<( Cl..
`~~ Wo
`
`:::::C:::-
`0 Cl..
`I- :r:
`I-
`~
`
`Lt> .
`CJ -LL
`
`Cl
`Cl..
`
`(_) a:
`
`(_)
`
`~ Cl
`
`Cl..
`:::>
`1-w
`
`Cf)
`
`Cf)
`
`(_) a:
`
`(_)
`
`Cl.. z w
`
`Cf)
`
`Cf) w a:
`
`Cl
`Cl
`<(
`
`z
`a:
`
`w s Cl..
`
`(_) z
`>(cid:173)Cf)
`
`ZTE/SAMSUNG 1015-0006
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 6 of 9
`
`5,884,086
`
`START ENUMERATION
`OF ATIACHED DEVICES
`
`CLEAR POWER ACCUMULATORS
`CLEAR OVERPOWER FLAGS
`
`HOST GETS PORT STATUS
`VIA STATUS PIPE DEVICE
`IN ATIACHED STATE
`
`HOST QUERIES HUB FOR
`NATURE OF A STATUS CHANGE
`
`USBPORTENABLEDAND
`PORT IS RESET
`
`100MA PROVIDED TO STANDARD +5V
`LINE DEVICE IN POWERED STATE
`
`HOST READS DEVICE DESCRIPTOR
`
`615
`
`601
`
`603
`
`605
`
`607
`
`609
`
`611
`
`613
`
`DOES
`DEVICE
`REQUIRE AUX.
`POWER?
`
`YES
`
`STORE VOLTAGE, V
`AND CURRENT, I
`
`CALCULATE
`POWER= VXI
`
`FIG. GA
`
`NO "r-------~
`
`617
`
`618
`
`c
`
`ZTE/SAMSUNG 1015-0007
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 7 of 9
`
`5,884,086
`
`A
`
`c
`
`IS
`POWER(V) +
`ACCUMULATOR(V)>
`MAX
`THRESHOLD
`
`YES
`
`621
`
`623
`
`ADD POWER(V) TO
`ACCUMULA TOR(V)
`
`SET
`OVERPOWER(V) FLAG
`
`625
`
`627
`
`629
`
`631
`
`ENABLE REQUIRED VOLTAGE TO
`PORT DEVICE IN AUX POWERED
`STATE
`
`DEVICE ASSIGNED UNIQUE ADDRESS
`IN ADDRESSED STATE
`
`HOST READS DEVICE
`CONFIGURATION DATA
`
`INCREMENT TO NEXT
`CONNECTED DEVICE
`
`YES
`
`END ENUMERATION
`
`635
`
`FIG. 68
`
`ZTE/SAMSUNG 1015-0008
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 8 of 9
`
`5,884,086
`
`'701
`
`703
`
`FIG. 7
`
`ZTE/SAMSUNG 1015-0009
`IPR2018-00276
`
`

`

`U.S. Patent
`
`Mar. 16, 1999
`
`Sheet 9 of 9
`
`5,884,086
`
`803
`
`FIG. 8
`
`ZTE/SAMSUNG 1015-0010
`IPR2018-00276
`
`

`

`5,884,086
`
`1
`SYSTEM AND METHOD FOR VOLTAGE
`SWITCHING TO SUPPLY VARIOUS
`VOLTAGES AND POWER LEVELS TO A
`PERIPHERAL DEVICE
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application for patent is related to co-pending U.S.
`patent application Ser. No. 08/807,493, filed Feb. 27, 1997,
`entitled "ENHANCED UNIVERSAL SERIAL BUS,"
`which is hereby incorporated by reference herein.
`
`TECHNICAL FIELD
`
`The present invention relates to supplying various volt(cid:173)
`ages and power levels via a standard bus interface. More
`particularly, it relates to supplying multiple voltages via a
`Universal Serial Bus compatible interface.
`
`BACKGROUND INFORMATION
`
`Recently, personal computers ("PCs") used a variety of
`techniques for providing input and output. These included a
`serial port, usually an RS232, a parallel port and several ISA
`expansion slots included on the mother board. Connecting
`the PCs to anything more complicated than a mouse, modem
`or printer required the lid to be taken off and dip switches to
`be set and software configured. SCSI (small computer
`systems interface) permitted access to external storage
`devices, but required a large cable connector with the need
`to manually set ID numbers and have a terminator.
`The universal serial bus ("USE") is specified to be an
`industry standard extension to the PC architecture with a
`focus on computer telephony interface, consumer and pro(cid:173)
`ductivity applications. The USE architecture provides for 35
`ease of use of peripheral expansion, transfer rates up to 12
`megabits per second, protocol flexibility for mixed modes,
`isochronous data transfers, and asynchronous messaging.
`USE is a cable bus supporting data transfer between the host
`PC and a range of simultaneously testable peripherals. One 40
`host controller can support up to 127 physical devices using
`a tiered topology. The hub is at the center of each star with
`each wire segment creating a point-to-point connection of up
`to 5 meters. The 5 meter limitation may be between a host
`and a hub or a hub function or a hub connected to another 45
`hub or function.
`Alternatively, a number of peripherals can be daisy
`chained together through compound hubs via the 4-wire
`USE cable. One of the 4 wires referred to as VBUS provides
`a DC voltage of +5 volts and another wire provides a ground
`signal. The USE cable provides power to the devices along
`the chain. Signaling takes place over two wires between two
`end points. The signals of each end point are driven differ(cid:173)
`entially over a 90 ohm impedance with each receiver fea(cid:173)
`turing input sensitivity of at least 200 millivolts. A non- 55
`return to zero invert (NRZI) with bit stuffing to insure
`adequate transitions is used to carry the bus clock down the
`chain. A sync field precedes each data package to allow the
`receivers to synchronize their bit recovery clocks. The serial
`interface provides a bandwidth of 12 megabits per second 60
`and can connect as many as 127 devices to a host system.
`USE relies on a tiered star topology. Physically USE
`devices ranging from a mouse or joystick to telephones
`connect to a host via layers of multiport hubs. The requisite
`hub called "the root hub" is located in the host and can 65
`include multiple ports. Hubs are linked to USE devices via
`point-to-point connections. The host views all USE devices
`
`10
`
`2
`as if they connect in a true star arrangement. USE supports
`both the standard devices that operate a full 12 megabit rate
`and low end devices that use only a 1.5 megabit sub-channel.
`Hubs support 12 megabit operations and insure that 12
`5 megabit transmissions do not go to 1.5 megabit devices.
`USE cables that carry 12 megabit traffic require a shielded
`twisted pair construction on the signal pair and can be no
`longer than 5 meters. Low speed cables can be no longer
`than 3 meters and require no shielding or twisting of the
`signaling pair. The host uses a master slave protocol to
`control the bidirectional communications with USE devices.
`The interface employs a 1 KHZ bus clock that instigates
`bussing a new frame every 1 millisecond. The interface
`handles multiple transactions including time critical isoch-
`15 ronous transactions within each frame in 1 millisecond
`periods and 12 megabit per second bandwidth limits the type
`of isochronous data streams that the interface can success(cid:173)
`fully carry.
`One problem with the universal serial bus is that it
`20 provides only one voltage. Devices that operate at different
`voltages or have high power requirements are required to
`supply their own voltage sources and power sources. In
`some environments, for instance, the retail point-of-sale
`environment, this additional cabling for power creates a
`25 non-aesthetic appearance at the store front.
`These unresolved problems and deficiencies are clearly
`felt in the art and are solved by the invention in the manner
`described below.
`
`30
`
`SUMMARY OF THE INVENTION
`
`The foregoing need is addressed by the present invention
`which provides for the communication of auxiliary (non(cid:173)
`standard USE) voltage and current to downstream hub and
`peripheral devices in accordance with the needs of the
`downstream hub and/or peripheral devices. This is per(cid:173)
`formed over an enhanced USE connection, whereby stan(cid:173)
`dard USE signalling is provided along with the auxiliary
`power.
`Communication of auxiliary power requirements is pro(cid:173)
`vided from the peripheral device to the upstream hub or host,
`which then utilizes one or more switches to connect the
`auxiliary power to the port coupled to the downstream
`hub/peripheral device.
`The foregoing has outlined rather broadly the features and
`technical advantages of the present invention in order that
`the detailed description of the invention that follows may be
`better understood. Additional features and advantages of the
`invention will be described hereinafter which form the
`50 subject of the claims of the invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`For a more complete understanding of the present
`invention, and the advantages thereof, reference is now
`made to the following descriptions taken in conjunction with
`the accompanying drawings, in which:
`FIG. 1 illustrates a data processing system configured in
`accordance with the present invention;
`FIG. 2 illustrates a host computer with integrated hub and
`auxiliary power;
`FIG. 3 illustrates a hub with auxiliary power capabilities;
`FIG. 4 illustrates a peripheral device with auxiliary
`power;
`FIG. 5 illustrates a communication protocol for commu(cid:173)
`nicating auxiliary power requirements to the host from a
`peripheral device;
`
`ZTE/SAMSUNG 1015-0011
`IPR2018-00276
`
`

`

`5,884,086
`
`3
`FIG. 6 illustrates with FIGS. 6A and 6B a enumeration
`process for determining the auxiliary power requirements of
`peripheral devices;
`FIG. 7 illustrates a standard USE plug; and
`FIG. 8 illustrates a non-standard USE plug.
`
`DETAILED DESCRIPTION
`
`4
`conductor to supply the extra voltage. Of course other
`voltages could be added so that a single cable may supply
`three or more voltages with the addition of other conductors
`or wires. For purposes of clarity of understanding, the
`5 present invention will be described with respect to two
`conductor types in the cable. Cables with at least one other
`conductor (i.e., for instance 5 wire) are referred to as
`auxiliary (or non-standard) cables in that they supply or are
`capable of supplying auxiliary power. The auxiliary cables
`10 are designed to operate seamless with non-auxiliary pow(cid:173)
`ered devices.
`In other words, some of cables 702 and corresponding
`connectors 701 illustrated in FIG. 1 may implement non(cid:173)
`standard USE, or auxiliary, configurations for providing
`15 other than standard USE voltages to hubs or peripherals.
`Referring next to FIG. 8, there is illustrated auxiliary plug
`801, which further includes a non-standard USE portion
`804, which may communicate non-standard USE power
`transmission, such as auxiliary voltage signals and corre-
`20 sponding ground signals. Plug 801 has overmold 806 cor(cid:173)
`responding to overmold 704, standard USE portion (plug
`housing) 803 corresponding to shielded standard portion
`(plug housing) 703, and bus 802 corresponding to bus 702,
`except that additional hardware and parts have been added
`25 to implement non-standard USE portion 804. Housing 804
`may include a housing having cut-out portion 805, which
`enables housing 804 to mate with a non-standard USE
`receptacle through specifically designed chassis cut-outs.
`Please refer to cross-referenced patent application Ser. No.
`08/807,493, filed Feb. 27, 1997 for a further discussion of
`such chassis cut-outs and non-standard plug 801.
`Using the auxiliary cable, peripheral devices can be
`supplied power at two or more distinct voltages: the standard
`USE voltage of +5 and one or more other voltages. The
`35 voltage and power requirements for the auxiliary power can
`be negotiated with the host or hub. The auxiliary powered
`USE hub or function uses the standard USE communica(cid:173)
`tions and standard USE power to request a second voltage
`and power.
`Auxiliary Host Device
`FIG. 2 illustrates a host device 230 with multiple auxiliary
`USE ports 203, 205, 207, 209. The host device 230 could be
`the same as host/hub 101 illustrated in FIG. 1. The host
`device 230 may include central processing unit 231, video
`controller 232, serial parallel floppy disk drive controller
`233, floppy disk drive 234, hard disk drive 235, bias 236,
`expansion 1/0 bus 237, and host main logic 238. Naturally,
`host 230 may include other well-known data processing
`system elements. Note that a standard USE device can use
`an auxiliary USE port by using a standard USE cable.
`The power supply 201 takes AC input and provides a
`plurality of DC voltages, including the USE standard volt(cid:173)
`age +5 volts. Other voltages may include +12, -12, +24,
`-24, or -3 volts. Any suitable voltages may be selected. The
`55 non-standard voltages are supplied by conductors (not
`shown) to switch circuits 220-223 provided for each of the
`ports 203, 205, 207, 209, respectively. In addition to the
`standard +5 volts, each port 203, 205, 207, 209 shown in
`FIG. 2 is capable of providing an auxiliary voltage from one
`60 of the many voltages output by the power supply 201. The
`host 230 can select which ports are provided with which
`auxiliary voltages using the decoder 211. The decoder 211
`can direct each of the switches 220-223 to select the
`appropriate voltage for each of the ports 203, 205, 207, 209
`65 as requested by the auxiliary peripheral device.
`A ltoX hub repeater and controller 217 provides for data
`communications from the host 230 to the peripherals and
`
`In the following description, numerous specific details are
`set forth such as specific voltages and currents to provide a
`thorough understanding of the present invention. However,
`it will be obvious to those skilled in the art that the present
`invention may be practiced without such specific details. In
`other instances, well-known circuits have been shown in
`block diagram form in order not to obscure the present
`invention in unnecessary detail. For the most part, details
`concerning timing considerations and the like have been
`omitted inasmuch as such details are not necessary to obtain
`a complete understanding of the present invention and are
`within the skills of persons of ordinary skill in the relevant
`art.
`Refer now to the drawings wherein depicted elements are
`not necessarily shown to scale and wherein like or similar
`elements are designated by the same reference numeral
`through the several views.
`Within the following description, a standard universal
`serial bus connector, receptacle, plug, and signalling all refer
`to the USE architecture described within the "Universal
`Serial Bus Specification," 1.0 Final Draft Revision, Copy(cid:173)
`right Nov. 13, 1995, which is hereby incorporated by ref- 30
`erence herein. While an embodiment of the invention will be
`illustrated using the Universal Serial Bus, it is not limited to
`the USE.
`Referring to FIG. 1, there is illustrated a diagram of how
`hubs provide connectivity in a desktop computer environ(cid:173)
`ment. The data processing system shown in FIG. 1 includes
`computer (PC) 101, monitor 102, and keyboard 103.
`Coupled to PC 101 are phone 108 and another hub 109.
`Coupled to monitor 102 are speaker 106 and microphone
`(MIC) 107. Coupled to keyboard 103 are pen 104 and mouse 40
`105. PC 101 is coupled to monitor 102, which is coupled to
`keyboard 103. Coupling is via USE buses 702 with USE
`plug connectors 701 (see FIG. 7).
`A function is a USE device that is able to transmit or
`receive data or control information over the bus. A function
`is typically implemented as a separate peripheral device with
`a cable that plugs into a port on a hub. However, a physical
`package may implement multiple functions and an embed(cid:173)
`ded hub with a single USE cable. This is known as a
`compound device. A compound device appears to the host as
`a hub with one or more permanently attached USE devices.
`Each function contains configuration information that
`describes its capabilities and resource requirements. Before
`a function can be used, it must be configured by the host.
`This configuration includes allocating USE bandwidth and
`selecting function specific configuration options.
`Referring next to FIG. 7, there is illustrated standard USE
`cable plug 701 having bus 702 coupled thereto. Plug 701
`includes a standard USE shielded plug housing 703, which
`conforms to the standard USE architecture described in the
`Universal Serial Bus specification referenced above. Stan(cid:173)
`dard USE shielded plug housing 703 operates to commu(cid:173)
`nicate differentially driven data signals D+ and D-, a 5-volt
`signal, and a ground signal.
`Some or all portions of the topology shown in FIG. 1 may
`use a modified (enhanced) USE cable having an extra
`
`50
`
`45
`
`ZTE/SAMSUNG 1015-0012
`IPR2018-00276
`
`

`

`5,884,086
`
`5
`hubs (see FIG. 1) and also provides the host 230 with data
`communications from the peripherals and hubs. The USE
`host/hub 230 is generally a Very Large Scale Integrated
`(VLSI) state machine which is controlled by the host CPU
`231. The Auxiliary USE logic is shown in function block 5
`219. The USE logic 219 handles standard USE functions as
`well as auxiliary power requests.
`Auxiliary Hub
`FIG. 3 illustrates a functional block diagram of an aux(cid:173)
`iliary hub 300 which could be keyboard 103 or monitor 102. 10
`The auxiliary hub 300 provides for three auxiliary powered
`USE ports 303, 305 and 307 although more could be added.
`Each of the ports 303, 305, 307 provide a standard USE port
`with the additional auxiliary voltage. The auxiliary hub 300
`is connected to the host 230 (see FIG. 1) via standard USE 15
`cable 313. Although discussed as connecting to the host/hub
`230, cable 313 may connect to another hub (not shown),
`which may be connected to another hub (not shown) even(cid:173)
`tually reaching the host/hub 230.
`The auxiliary hub 300 contains its own AC/DC power 20
`supply 301, which is capable of outputting at least one
`voltage other than 5 volts (i.e., at least one auxiliary voltage)
`and can produce a plurality of voltages including the USE
`standard +5 volts. The USE standard voltage may be sup(cid:173)
`plied to the auxiliary ports 303, 305 and 307 from the host 25
`230 via the host-to-hub cable 313 rather than from the power
`supply 301.
`The non-USE standard voltages are supplied by conduc(cid:173)
`tors (not shown) to switch circuits 320-322. Switch circuits
`320--322 are associated with each of the ports 303, 305 and 30
`307. In addition to the standard +5 volts, each port 303, 305,
`307 is capable of providing an auxiliary voltage from one of
`the many voltages output by the power supply 301.
`The hub 300 can select which ports are provided with
`which auxiliary voltages, if any, using the decoder 311. The 35
`decoder 311 can direct each of the switches 320-322 to
`select the appropriate voltage for each of the ports 303, 305,
`307, respectively, as requested by the auxiliary peripheral
`device.
`The hub controller 331 is coupled to the decoder 311 and
`ltoX hub repeater 317. The repeater 317 makes sure (1) data
`sent from cable 313 makes its way to the addressed
`peripheral, and (2) data flowing upstream makes it way to
`the host 230.
`Use of the power supply 301 in the hub 300 requires that 45
`NC power be supplied to the hub 300. This entails use of a
`power cord and access to NC outlet. Normally this would be
`an AC outlet on the host computer. Use of the power cord
`can be eliminated by using upstream auxiliary power in a
`DC-DC converter if a different voltage is required by the 50
`peripheral devices. The power available to downstream
`devices would be limited, since total power received from
`the upstream auxiliary power source is divided among the
`downstream devices.
`In FIG. 3, this would be implemented by replacing 55
`standard USE cable 313 with an enhanced USE cable with
`auxiliary power conductors, as is disclosed herein. The
`auxiliary power conductors would flow to downstream
`ports. Note, however, that the downstream ports would then
`no longer be able to request any type of auxiliary voltage. An 60
`allowance would need to be made for hub 300 to request a
`specific auxiliary voltage from the upstream host (e.g., the
`highest available voltage from the host). Then, during the
`auxiliary power request phase of step 615 in FIG. 6A, host
`software could request downstream devices to resubmit their 65
`request based on available voltage. A device could then
`signal a new power request or that it does not have DC-DC
`
`6
`capability and cannot be configured, or the host could
`determine that the request exceeds the host power supply
`capacity and not configure the device.
`The implications to the upstream power management is
`that the upstream power management for the auxiliary
`power is dictated by the host computer power management
`protocol. Auxiliary power should be viewed as the device's
`"local power supply" for power management purposes.
`Please refer to section 7.2.1.2 on "Self-Powered Hubs," and
`section 4.3.2 on "Power Management" within the Universal
`Serial Bus Specification referenced above.
`Peripheral Devices
`FIG. 4 illustrates a peripheral device 400 that can make
`use of auxiliary power. The auxiliary peripheral 400 is
`coupled to the auxiliary cable 413 as shown. The auxiliary
`cable 413 may be coupled to host 230, or hub 300. The
`auxiliary peripheral device ("APD") 400 makes use of
`standard USE signals to request auxiliary power. Thus,
`when the cable 413 is hot plugged, USE standard power
`signals (+5 volts) provide power to the microcontroller 417
`via regulator 403. The microcontroller 417 then can request
`an auxiliary voltage and power allocation using standard
`USE communications described below. As shown in FIG. 4,
`the APD 400 may include a switch 419 under control of the
`microcontroller 417. The switch 419 can prevent damage to
`the APD 400 by not permitting a connection from the
`auxiliary voltage line to the peripheral device's main logic
`401 until the microcontroller 417 has received input from
`the auxiliary host 230 or hub 300 that its auxiliary power
`request can be granted.
`Auxiliary Power Communication Protocol
`The auxiliary USE peripheral 400 makes use of an
`auxiliary power enumeration process that uses native USE
`power and communications. The USE communication pro(cid:173)
`tocol uses four types of transactions: Control, Bulk, Interrupt
`and Isochronous. The Control transaction is used during
`device enumeration to communicate device configuration
`information to the host. This is done in two stages: Setup and
`40 Status. The Setup stage contains three packets: Token, Data
`and Handshake. The Setup stage serial bit stream showing
`the three packets is illustrated in FIG. 5. The Data packet is
`formatted as shown in Table 1.
`
`TABLE I
`
`FIELD DESCRIPTION
`
`BYTES
`
`Request Type
`Request
`Value
`Index
`Length
`
`2
`2
`2
`
`The APD 400 can communicate its auxiliary power
`requirements in several ways. The first makes use of device
`descriptor data field as shown in Table II. The device
`descriptor data structure is returned to a host in response to
`a GET_DESCRIPTOR request type and has the following
`format:
`
`TABLE II
`
`FIELD DESCRIPTION
`
`BYTES
`
`Length of Descriptor
`Descriptor Type
`USE Specification Number
`
`2
`
`ZTE/SAMSUNG 1015-0013
`IPR2018-00276
`
`

`

`5,884,086
`
`7
`
`TABLE II-continued
`
`FIELD DESCRIPTION
`
`BYTES
`
`Device Class(vendor specific type
`~Ox FF)
`Device Sub-Class
`Device Protocol
`Max Packet Size
`Vendor ID
`Product ID
`Device Release Number
`Manufacturer ID String Index
`Product ID String Index
`Serial Number Index
`Number of Configurations
`
`2
`2
`2
`
`One way of transferring auxiliary power requirements
`from the device is to assign a vendor specific Device Class
`(OxFF) and designate a unique device sub-class assignment
`with unique encoded voltage and power requirements. Using
`a single byte: two bits (V2, Vl) could be allocated to voltage
`selection with the remaining six bits (C6,C5,C4,C3,C2,Cl)
`allocated to current requirements. For current, one of 64
`different levels could be specified or a fixed increment could
`be allocated such as 50 ma with bits Cl-C6 indicating in
`binary the number of increments. A fixed current increment
`eliminates the need for a look-up table in the ADP.
`A second way for the APD 400 to specify power require(cid:173)
`ments is to use a Product String Index pointing to a string
`containing voltage and current requirements. This string
`may be text format and include a voltage request (ie., "12V")
`and a current request (i.e., "800 ma"). The index to a product
`string is contained in the Device Descriptor at offset 15 (see
`section 9.6.1 of the Universal Serial Bus Specification
`referenced above). The index points to the location of a text
`string in UNICODE format (see section 9.6.5 of the Uni(cid:173)
`versal Serial Bus Specification).
`A third way of encoding the auxiliary power requirements
`is to use an iConfiguration Index located in the Configura(cid:173)
`tion Descriptor. This may also be specified in text format.
`The index to a configuration is located in the Configuration
`Descriptor at offset 6 (see section 9.6.2 of the Universal
`Serial Bus Specification) and points to the location of a text
`string of UNICODE format (see section 9.6.5 of the Uni(cid:173)
`versal Serial Bus Specification).
`Referring next to FIG. 6, which comprises FIGS. 6A and
`6B, there is illustrated a flow diagram illustrating a process,
`which may be implemented within USE logic 219 and/or
`within hub 300 for responding to request for auxiliary power
`from peripheral device 400. The process begins at step 601,
`wherein enumeration of all attached devices is begun. For
`example, one or more peripheral devices 400 may be
`coupled to ports 203, 205, 207 and/or 209, or to ports 303,
`305 and/or 307.
`In step 603, power accumulators are cleared and over(cid:173)
`power flags are cleared. The power accumulator is a math(cid:173)
`ematical variable stored in a specific host memory location.
`Its purpose is to store a running total of supplied auxiliary
`power from the host NC power supply. This variable is
`tested against the known maximum available power from
`the host power supply to prevent a host overpower condi(cid:173)
`tion.
`The subscript "v" indicates that there could be a separate
`power accumulator for each different voltage line. Power
`supplies generally limit maximum power on each voltage
`line, as well as an overall maximum power.
`The overpower flags are also variables and are used to
`store the condition that the host power supply cannot supply
`
`30
`
`8
`additional auxiliary power. There may be a separate over(cid:173)
`power flag for each auxiliary voltage (i.e., +12v, +24v, etc.).
`Thereafter, in step 605, the host/hub obtains port status via
`status pipe. Device is now in attached state. When a hub
`5 detects that a USE cable has been plugged into one of its
`downstream ports, it signals to host software that a change
`has occurred through Port Commands. An expanded dia(cid:173)
`gram of detecting a port status changed is shown in section
`11.8.

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket