WO1998018292A1 - Architecture for a universal serial bus-based pc speaker controller - Google Patents
Architecture for a universal serial bus-based pc speaker controller Download PDFInfo
- Publication number
- WO1998018292A1 WO1998018292A1 PCT/US1997/019478 US9719478W WO9818292A1 WO 1998018292 A1 WO1998018292 A1 WO 1998018292A1 US 9719478 W US9719478 W US 9719478W WO 9818292 A1 WO9818292 A1 WO 9818292A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- usb
- powered
- speaker
- loudspeaker
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
Definitions
- TITLE ARCHITECTURE FOR A UNIVERSAL SERIAL BUS-BASED PC SPEAKER
- the present invention relates to speakers for personal computers and particularly to an architecture for a Umversal Se ⁇ al Bus-based PC speaker controller
- the Umversal Se ⁇ al Bus (USB) specification is a proposed standard recently promulgated by a group of computer companies including Compaq Computer Corporauon, Digital Equipment Corporation, IBM. Intel Corporauon, Microsoft Corporauon and Northern Telecom Desc ⁇ bed below are va ⁇ ous aspects of the Umversal Se ⁇ al Bus Further background concerning the Universal Senal Bus may be obtained from the Umversal Se ⁇ al Bus SpecificaUon. Revision 1 0. which is hereby incorporated by reference The Umversal Senal Bus is intended as a bi-direcuonal.
- the Umversal Se ⁇ al Bus provides two-wire point-to-point signaling in which the signals are differenually d ⁇ ven at a bit rate of 12 megabits per second
- the Universal Se ⁇ al Bus includes support for both isochronous and asvnchronous messaging at the 12 megabit per second data speed
- the Universal Se ⁇ al Bus specificaUon defines a Umversal Se ⁇ al Bus system in terms of Umversal Se ⁇ al Bus 'interconnects", "'devices' " , and "hosts"
- a Umversal Se ⁇ al Bus interconnect defines the manner in which devices are connected to and communicate with the host, including bus topology, data flow models scheduling, and interlaver relaUonships In any given Universal Se ⁇ al Bus topology, there is only one host
- Umversal Se ⁇ al Bus devices include hubs and functions Hubs provide addiUonal attachment points to the Umversal Se ⁇ al Bus and may be integrated with a host, which ordina ⁇ ly provides only one attachment point for connecung a hub or a funcUon Functions provide capabi Ues to the system, such as joystick. keyboard, microphone, and speaker capabihUes
- Fig 1 is a diagram of the basic packet transfer 1000 of the Umversal Se ⁇ al Bus
- the basic transfer 1000 includes a token packet 1002, a data packet 1004, and a handshake packet 1006
- Each packet is preceded by a synchronizaUon field SYNC which is used by input circuitrv to align incoming data with the local clock It is defined to be 8 bits in length and is stripped out bv the connector interface
- PID(T) packet identifier
- PED(D) for the data packet.
- PDD(H) for the handshake packet, and PID(S) for the start-of-frame packet, which may be considered a type of token packet
- the packet identifiers PID(T), PID(D), PJTJ(H) and PID(S) include a 4- bit identification field and a 4-b ⁇ t check field used to identify the format of the packet and type
- There are two types of token 1002 packet ID fields PID(T) denote (l) a data transfer from the funcuon to the host, and (u) a data uansfer from the host to the function
- the token packet includes an 8-bit address field ADDR and a 3-bit end point field.
- the address field ADDR of the token packet specifies the funcUon that it is to receive or send the data packet
- the end-point field ENDP permits addressing of more than one subchannel of an individual function Only one type of start-of-frame packet idenUficaUon field 1008, PID(S), is defined a start of frame
- Ume stamp The address and endpomt fields of the token packet are replaced in the start of frame packet with a ume-stamp field
- the time-stamp field for the start of frame packet provides a clock Uck which is available to all devices on the bus
- the start-of-frame packet is sent by the host every 1 ms ⁇ 0 01%
- addiUon for both the token and start-of-frame packets, a 5 -bit cyclical redundancy checksum (CRC) field is provided
- the data packet 1004 includes a packet identifier PED(D), a data field DATA, and a 16-bit cyclical redundancy checksum field, CRC 16 Two types of packet IDs for the data field, data 0 and data 1, identify whether the data packet is being sent for the first Ume or whether being sent as a retry
- the data field DATA may varv in length from 0 to N bytes Failure of the cyclical redundancy checksum on the data field DATA causes the receiver to issue an error ERR handshake
- the handshake packet 1006 includes onlv a packet identifier PID(H), of which there are four types An acknowledge handshake.
- ACK indicates that the receiver will accept the data and that the CRC has succeeded
- NACK indicates that the receiver cannot accept the data or that the source cannot send the data
- An ERR field indicates that the receiver will accept the data, but that the CRC has failed
- a stall handshake packet, STALL indicates that the transmission or recepuon pipe is stalled
- a stall handshake is defined only for stream-o ⁇ ented end-points (as disUnguished from message-o ⁇ ented endpoints discussed below)
- Data flow on the Universal Se ⁇ al Bus is defined in terms of pipes " A pipe is a connecuon between a host and an endpoint
- the Universal Se ⁇ al Bus defines 'stream ' and "message" pipes
- Data flows in at one end of the stream pipe and out the other end in the same order Stream mode thus includes flow con ol and emplovs no defined USB structure
- a request is first sent to the device which is followed at some later Ume by a response from the end-point
- Message pipes thus impose a structure on the data flow, which allows commands to be commu cated These commands can include band-width allocauon
- the Umversal Se ⁇ al Bus supports isochronous, asynchronous, and asynchronous interactive data flow
- For isochronous data access to USB bandwidth is guaranteed A constant data rate through the pipe is provided, and in the case of delivery failure due to error, there is no attempt to retry to deliver the data
- Scheduling of the Umversal Se ⁇ al Bus is defined in terms of '"slots " ', "'frames " and ' super frames", as lllus ated in Fig 2, which shows an exemplary USB schedule 1100 Frames 1104b and 1104a begin with a start of frame packet, 1108a and 1108b, respectively Each frame has a duration of time equal to 1 ⁇ N ms Each frame. 1104a. 1104b is subdivided into one or more slots 1102a. 1102b for example Each slot corresponds to some USB transaction, e g , 1110a. 1110b, 1110c.
- Each slot is large enough to contain the worst case transmission time of the transaction to which it corresponds, and includes the effects of bit-stuffing, propagation delay through cables and hubs, response delays, and clocking differences between the host and the end-point
- a super frame 1106 consists of a repeatable sequence of individual frames, and is the largest schedulable portion of time permitted.
- the Umversal Se ⁇ al Bus provides both penodic service and ape ⁇ odic service
- penodic service corresponding to isochronous data
- a fixed pe ⁇ od exists between the delivery of start of frame packets to a specific end-point
- ape ⁇ odic service is characte ⁇ zed by a varying pe ⁇ od between delivery of start of frame tokens for a given end-point
- Penodic service is given a higher p ⁇ o ⁇ ty in scheduling than apenodic service
- a Umversal Se ⁇ al Bus device such as a hub or funcUon Umversal Se ⁇ al Bus device 1200 includes a device interface 1202 and a class interface 1204
- Device interface 1202 includes device information and control block 1206. which is required for the USB device to attach to the USB and is independent of the funcuonalitv provided by the device
- the device interface further includes se ⁇ al bus interface engine 1210, which provide for management of the bus interface, including performing acknowledgments and recognizing packets that are addressed to the USB device In addiuon.
- the interface engine 1210 provides for stripping the SYNC field from incoming packets
- the class interface 1204 includes class information and control block 1214 which depends upon the functionality of the device (for example, hubs and locators) Class interface 1204 further includes function engine 1216 which relates to the functionality implemented by the device
- a USB device further includes logical buffers, such as packet buffer 1208 and elasticity buffer 1212
- the packet buffer defines the maximum packet size which the USB device can receive or send
- the elasucity buffer relates to how flexible the scheduled generator may be in allocating band-width for the associated end-point and determines the maximum amount of data the device end-point can handle
- the vanous functional blocks of the USB device are not shown connected to one another in Fig 3 because as discussed in the USB specification, the relationship between die components may be implementation-dependent
- a Umversal Senal Bus device may include storage space, local to the USB device, though addressable by the host, and vendor space, which may be defined by the vendor of the device While me Umversal Senal Bus is
- Umversal Se ⁇ al Bus SpecificaUon does not define die relationship between components in Umversal Se ⁇ al Bus devices
- the USB specification defines signaling whereby a USB device or hub controller may wake the network from a low power mode
- the USB specification does not define a mechamsm whereby the devices may power themselves down or awaken m response to the signaling
- the USB compatible speaker and/or microphone having power management capabilities
- random power fluctuations either at power-up or du ⁇ ng normal operation, can feed through the speakers and cause annoving "pops '" and "hisses ' to be transmitted through the speakers In the extreme case, these can cause damage to the speaker Accordingly, there is a need to provide a USB compatible speaker and/or microphone
- the powered speaker includes a speaker d ⁇ ven by a power amplifier coupled to a power supply Both the amplifier and the power supply, m turn, are coupled to a Umversal Se ⁇ al Bus controller
- the controller is configured to provide Universal Se ⁇ al Bus functionality and compatibility
- a phase locked loop (PLL) for recove ⁇ ng a timer clock from the received data stream is provided
- PLL phase locked loop
- One embodiment of the present system further includes a function whereby the absence of data on the relevant channel is detected and the output to the speakers is muted in response thereto
- a further circuit is provided that controls when the output to the speaker is turned on such that no clicks or pops occur at power-up or when the dev ice or bus is not stable In addiuon.
- tone control including bass and treble filters, volume control, and balance between left and nght outputs (in a stereo version) are provided Furthermore, power management functionality is provided If the USB has been idle for a predetermined pe ⁇ od of time, the system can place itself into a low power sleep mode, or die loudspeaker can be placed into a sleep mode via software from the host
- a microphone compatible with the Umversal Se ⁇ al Bus specification may also be provided, either as a discrete unit or integrated with the loudspeaker
- the microphone includes a microphone input d ⁇ ving an amplifier coupled to a power feed and gain control Both are coupled to audio data circuitry, which includes an analog-to-digital converter and vanous filters, tone and volume control, and a circuit for providing 3D audio effects Both the gain control and the audio data block are coupled to a Umversal Se ⁇ al Bus controller
- the conttoller is configured to provide Umversal Se ⁇ al Bus functionality and compatibility
- a circuit for integrating the microphone signal into an isochronous USB signal is prov ided
- a power control circuit for use with a USB microphone/speaker includes a mechamsm for momto ⁇ ng activity on the Umversal Senal Bus If the USB has been idle for a predetermined penod, the control mechamsm will power down the speaker
- the circuit may be configured to momtor activity levels on a particular channel of the USB.
- the control circuit will cause the power to the device to shut off or down In this power down state, however, the circuit will momtor the bus for host signals indicating that the speaker is to be powered up once more In the case of the microphone, the circuit will also momtor the audio input and cause the microphone to power up in response to receiving an input signal Circuitry is also provided for the microphone to awaken the rest of the system Circuitry may also be provided to momtor the level and duration of die input signal Thus, the microphone will not power up unless the input exceeds a predetermined activ ltv and duration threshold In this wav the microphone will not waken the network to process transient undesired inputs
- one problem with controlling power to loudspeakers is that of voltage tiansients causing hisses or clicks Accordingly, there is provided a mechanism to monitor the DC voltage level and turn off the power if it goes below a predetermined threshold The volume is ramped to zero after which power may be turned off After a predetermined Ume, allowing the transient to subside, the volume may be ramped back to the onginal level
- the circuit will momtor the cyclical redundancy checksum for failure and look for random noise signals Either can be a source of clicks or hisses Once either is detected, the circuit will ramp the volume down, after a predetermined time v olume w ill be ramped back to die onginal level
- the momtonng circuit will continue momto ⁇ ng while the volume is down and, when the enor condition is no longer detected, restore the volume to its onginal level
- high pass filtenng may be provided to reject low frequency noise
- Fig. 1 is a representation of a data packet tiansfer along with a Umversal Senal Bus
- Fig 2 is a representation of a scheduling paradigm for the Universal Se ⁇ al Bus
- Fig 3 is a block diagram of an exemplary Universal Se ⁇ al Bus device
- Fig 4 is a block diagram of a computer svstem with audio functionality according to one aspect of die claimed invenuon
- Fig 5 is a block diagram of a computer speaker system according to one embodiment of the present invenuon
- Fig 6 is a block diagram of a USB controller for a powered loudspeaker according to one embodiment of the present invention
- Fig 7 is a more detailed block diagram of a speaker control according to one aspect of the present invention.
- Fig 8 is a block diagram of a USB controller for a microphone according to one embodiment of the present invention
- Computer system 50 includes a CPU 52 and a cache memory 55 coupled to a CPU bus 56
- CPU 52 may be any of a vanety of microprocessors, including processors compatible with the x86, PowerPC, and 68000 senes instruction sets
- CPU bus 56 is coupled to bus b ⁇ dge 58, which provides an interface to expansion bus 60
- Bus bndge 58 may include a vanety of system support logic including cache and memory controls as well as providing host/expansion bndge functionality
- bus b ⁇ dge 58 may include a h se ⁇ al bus host interface 64, preferably a Umversal Serial Bus host interface, which provides connectivity to microphone 66 and speaker 68 via a senal bus or Umversal Senal Bus 76
- audio data from microphone 66 is transmitted to USB host 64 via USB 76 From there, it is
- Computer audio system 100 is exemplary of. for example, the computer system 50 shown in Fig 4
- Computer audio system 100 includes a computer system 102.
- USB Controller 112 is preferably a single integrated circuit USB controller 112 is shown in greater detail in Fig 6
- a USB connector (not shown) receives USB cable 106 (Fig 5)
- the USB connector provides the USB signal to connector interface 200 and function interface 204 Connector interface 200 provides the physical layer translation between the USB differentiallv -d ⁇ ven signal levels and internal logic levels
- Function interface 204 receives die translated signal from connector interface 200 and provides the control functions required of all Umversal Senal
- isochronous timing extractor 210 employs a digital phase locked loop to denve internal audio clocks Isochronous timing extractor 210 provides the clock to audio data block 212, which will be descnbed in greater detail below Isochronous timing extractor 210 is further coupled to channel extractor 206
- Channel extractor 205 separates the audio subchannel from the other data subchannels on the Umversal Senal Bus As discussed above each device subchannel on the Umversal Senal Bus corresponds to a particular address and endpoint combination Audio data, for example, conesponds to a particular address and endpoint received Control data conesponds to another address and endpoint combination
- the channel extractor 206 momtors the vanous umque endpoints and separates them out from one another As will be discussed in more detail below, this control data can include volume, balance and tone information It should further be noted that this information may be provided on separate channels Since one channel on the bus is reserved for bus control, this leaves a capability of up to a total of six speaker control channels
- Channel extractor 206 provides the data from the audio control subchannel or subchannels to speaker controller 208 and the audio data from the audio subchannel to audio data block 212
- Audio data block 212 can include a mono or stereo digital-to-analog converter and filter 214 coupled to an analog audio block 216
- Analog audio block 216 performs analog filtenng, and provides tone, balance, volume adjustment and muting Controls for these functions mav be provided from speaker control 208 or from analog potentiometers directly affixed to the speaker itself
- audio data block 212 can include a 3D audio block 213 provides stereo enhancement for a multi-dimensional "feel" to the sound
- the audio data block 22 is a digital audio data block
- Speaker control 208 reads the control channel received from channel extractor 206 and provides it to audio data block 212
- the control channel or channels can include volume, balance, and tone informauon.
- the filtered audio data signal is provided to an output dnver 218, and is then provided to amplifier 114 of Fig 4 and then to speaker 116
- die tone volume, and balance contiols mav be provided digitally via the Universal Se ⁇ al Bus and hence software, in alternate embodiments, such controls mav be provided via physical hardware such as analog potentiometers and the like
- Speaker control 208 also momtors the audio channel and detects the absence of data for entenng a sleep mode If such an absence is detected, speaker control 208 will power down the speaker More generally, speaker control 208 momtors whether or not the Universal Se ⁇ al Bus is idle Speaker control 208 mav detect, for example, the absence of audio data or clock data If the bus is idle, the speaker control circmt 208 will turn off the power to the speaker in a gradual, controlled fashion Power is restored only after the Umversal Se ⁇ al Bus becomes active once again In this way, power may be conserved when the speaker is not in use Further, the speaker conttol circmt provides a control to die audio data circuitry to mute die audio output until die power is restored In this fashion, hisses due to the absence of data and clicks and noises at power-up can be avoided More particularly, the system may be configured such that the volume may be gradualh ramped to zero in response to any of a member of warning conditions This can also include turning off the power completely upon ramp-down These can include the detection of an
- the powered speaker can be placed into a powered-down mode through a software command from the PC
- the powered loudspeaker may be powered up after a predetermined time, or by command from the host PC
- high pass filtenng preferably at about 20 Hz. may be provided for rejecuon of low frequency "hiss" and 'pop-' components introduced due to too low a DC level
- Speaker conttol 208 includes a bus monitor 2000 and a click suppression or power management unit 2002 Both bus momtor 2000 and click suppression or po er management unit 2002 are coupled to the power supply (not shown) and are coupled to receive die USB input signal from the channel extractor (not shown) Bus monitor 2000 and click suppression unit 2002 are further coupled to one another
- Bus momtor 2000 is configured to momtor the USB input signal For example, it may monitor the audio data signal or the clock signal When the bus momtor detects that the USB is idle, it will transmit a signal to the power supply, causing the power to shut off A counter 2004 may be provided, which will count to a predetermined value upon detection of the absence of data on the bus When the value is reached, if there is still no data on the bus. the power may be shut off P ⁇ or to sending the power off control signal to the po er supply, bus momtor 2000 may also send a control signal to click suppression umt 2002, causing the click suppression unit 2002 to ramp the volume down to zero before shutting off the power
- Bus momtor 2000 will continue to monitor the USB du ⁇ ng the power down mode If the bus momtor 2000 detects activity on die bus, the monitor will cause the power supply to restore power Once power is turned back on, the bus momtor 2000 may send a control signal to the click suppression unit to cause it to ramp the volume back up In addition to responding to the po er-on/power-off modes controlled bv the bus monitor 2000, click suppression umt 2002 will also monitor the audio input for the presence of enor conditions These can include momto ⁇ ng for too low a DC level, momtonng for a failed CRC.
- high pass filtenng may be provided to reject the low frequency noise components If any of these conditions are detected, die click suppression umt will cause the volume to ramp do n to zero Click suppression unit 2002 may continue to momtor the input and.
- click suppression umt 2002 may also be coupled to turn off the power if the enor condition persists Once the enor condition has been cleared, click suppression unit may restore power, and cause the volume to ramp back to its onginal level
- click suppression umt 2002 can include a counter 2006 which will begin counting when an error condition has been detected and volume ramping has begun After a preset count, the click suppression umt may be configured to ramp die volume back up, rather than momtonng dunng the rampmg condition
- the click suppression unit 2002 and the bus momtor 2000 are shown as discrete units, thev may be part of an integrated power/volume control umt Thus.
- Fig 7 is exemplary only Turning now to Fig 8, there is shown a block diagram of a Universal Se ⁇ al Bus-based microphone
- control umt 5208 is configured to momtor the clock
- the audio input and the USB for activity Conttol umt 5208 is configured to turn off power to die microphone on command from the host, or upon detection of a lack of bus or clock activity It is noted that vanous of these features may be initialized as desired by software command
- die microphone 5112 mav be operative in a low power mode such that the USB link mav be powered down while the control umt 5208 momtors the audio input for activity If input activity is detected, the conttol unit will "wake up "' the USB link
- gain conttol 5208 serves to provide conttol signals to audio effects unit 5216
- Audio effects unit 5216 provides analog filtenng, volume and pan conttol.
- Audio effects unit 5216 is further coupled to analog-to-digital converter 5214 It is noted that in alternate embodiments, vanous components such as the audio effects umt may be implemented with either analog or digital circuitry
Abstract
There is provided a novel powered loudspeaker implemented to be compatible with the USB specification. The powered speaker includes a speaker driven by a power amplifier coupled to a power supply. Both the amplifier and the power supply, in turn, are coupled to a USB controller. The controller is configured to provide USB functionality and compatibility. In addition, it provides a phase locked loop (PLL) for recovering a timer clock from the received data stream. The present invention further includes a function whereby the absence of data on the relevant channel is detected and the output to the speakers is muted in response thereto. A further circuit is provided that controls when the output to the speaker is turned on such that no clicks or pops occur at power-up or when the device or bus is not stable. In addition, tone control, including base and treble filters, volume control, and balance between left and right outputs (in a stereo version) are provided. Furthermore, power management functionality is provided. If the USB has been idle for a predetermined period of time, the system can place itself into a low power sleep mode, or the loudspeaker can be placed into a sleep mode via software from the host.
Description
TITLE: ARCHITECTURE FOR A UNIVERSAL SERIAL BUS-BASED PC SPEAKER
CONTROLLER
BACKGROUND OF THE INVENTION
Field of the Invention
The present invention relates to speakers for personal computers and particularly to an architecture for a Umversal Seπal Bus-based PC speaker controller
Descπption of the Related Art
The Umversal Seπal Bus (USB) specification is a proposed standard recently promulgated by a group of computer companies including Compaq Computer Corporauon, Digital Equipment Corporation, IBM. Intel Corporauon, Microsoft Corporauon and Northern Telecom Descπbed below are vaπous aspects of the Umversal Seπal Bus Further background concerning the Universal Senal Bus may be obtained from the Umversal Seπal Bus SpecificaUon. Revision 1 0. which is hereby incorporated by reference The Umversal Senal Bus is intended as a bi-direcuonal. isochronous, low-cost, dynamicalh attachable, seπal interface to promote easy PC peπpheral expansion and provide full support for real-time voice, audio, and compressed video data The Umversal Seπal Bus provides two-wire point-to-point signaling in which the signals are differenually dπven at a bit rate of 12 megabits per second The Universal Seπal Bus includes support for both isochronous and asvnchronous messaging at the 12 megabit per second data speed
The Universal Seπal Bus specificaUon defines a Umversal Seπal Bus system in terms of Umversal Seπal Bus 'interconnects", "'devices'", and "hosts" A Umversal Seπal Bus interconnect defines the manner in which devices are connected to and communicate with the host, including bus topology, data flow models scheduling, and interlaver relaUonships In any given Universal Seπal Bus topology, there is only one host
Umversal Seπal Bus devices include hubs and functions Hubs provide addiUonal attachment points to the Umversal Seπal Bus and may be integrated with a host, which ordinaπly provides only one attachment point for connecung a hub or a funcUon Functions provide capabi Ues to the system, such as joystick. keyboard, microphone, and speaker capabihUes
The basic data transfer protocol of the Umversal Seπal Bus is descπbed as follows, with particular attenUon to Fig 1 Fig 1 is a diagram of the basic packet transfer 1000 of the Umversal Seπal Bus The basic transfer 1000 includes a token packet 1002, a data packet 1004, and a handshake packet 1006 Each packet is preceded by a synchronizaUon field SYNC which is used by input circuitrv to align incoming data with the local clock It is defined to be 8 bits in length and is stripped out bv the connector interface
Following the SYNC field in each packet is a packet identifier (PID(T) for the token packet. PED(D) for the data packet. PDD(H) for the handshake packet, and PID(S) for the start-of-frame packet, which may be considered a type of token packet) The packet identifiers PID(T), PID(D), PJTJ(H) and PID(S) include a 4- bit identification field and a 4-bιt check field used to identify the format of the packet and type There are two types of token 1002 packet ID fields PID(T) These denote (l) a data transfer from the funcuon to the
host, and (u) a data uansfer from the host to the function In addition to the packet ID PID(T), the token packet includes an 8-bit address field ADDR and a 3-bit end point field. ENDP The address field ADDR of the token packet specifies the funcUon that it is to receive or send the data packet The end-point field ENDP permits addressing of more than one subchannel of an individual function Only one type of start-of-frame packet idenUficaUon field 1008, PID(S), is defined a start of frame
Ume stamp The address and endpomt fields of the token packet are replaced in the start of frame packet with a ume-stamp field The time-stamp field for the start of frame packet provides a clock Uck which is available to all devices on the bus The start-of-frame packet is sent by the host every 1 ms ± 0 01% In addiUon, for both the token and start-of-frame packets, a 5 -bit cyclical redundancy checksum (CRC) field is provided
The data packet 1004 includes a packet identifier PED(D), a data field DATA, and a 16-bit cyclical redundancy checksum field, CRC 16 Two types of packet IDs for the data field, data 0 and data 1, identify whether the data packet is being sent for the first Ume or whether being sent as a retry The data field DATA may varv in length from 0 to N bytes Failure of the cyclical redundancy checksum on the data field DATA causes the receiver to issue an error ERR handshake
The handshake packet 1006 includes onlv a packet identifier PID(H), of which there are four types An acknowledge handshake. ACK, indicates that the receiver will accept the data and that the CRC has succeeded A negative acknowledge. NACK. indicates that the receiver cannot accept the data or that the source cannot send the data An ERR field indicates that the receiver will accept the data, but that the CRC has failed A stall handshake packet, STALL, indicates that the transmission or recepuon pipe is stalled A stall handshake is defined only for stream-oπented end-points (as disUnguished from message-oπented endpoints discussed below)
Data flow on the Universal Seπal Bus is defined in terms of pipes " A pipe is a connecuon between a host and an endpoint The Universal Seπal Bus defines 'stream ' and "message" pipes For a stream pipe, data is delivered in prenegouated packet sizes Data flows in at one end of the stream pipe and out the other end in the same order Stream mode thus includes flow con ol and emplovs no defined USB structure For a message pipe, however, a request is first sent to the device which is followed at some later Ume by a response from the end-point Message pipes thus impose a structure on the data flow, which allows commands to be commu cated These commands can include band-width allocauon The Umversal Seπal Bus supports isochronous, asynchronous, and asynchronous interactive data flow For isochronous data, access to USB bandwidth is guaranteed A constant data rate through the pipe is provided, and in the case of delivery failure due to error, there is no attempt to retry to deliver the data Asynchronous interactive data flow provides a guaranteed service rate for the pipe, and the retry of failed transfer attempts Asynchronous data flow accommodates access to the USB on a band-width available basis and also permits retry of data transfers
Scheduling of the Umversal Seπal Bus is defined in terms of '"slots"', "'frames " and ' super frames", as lllus ated in Fig 2, which shows an exemplary USB schedule 1100 Frames 1104b and 1104a begin with a start of frame packet, 1108a and 1108b, respectively Each frame has a duration of time equal to 1 ± N ms
Each frame. 1104a. 1104b is subdivided into one or more slots 1102a. 1102b for example Each slot corresponds to some USB transaction, e g , 1110a. 1110b, 1110c. 11 lOd Each slot is large enough to contain the worst case transmission time of the transaction to which it corresponds, and includes the effects of bit-stuffing, propagation delay through cables and hubs, response delays, and clocking differences between the host and the end-point A super frame 1106 consists of a repeatable sequence of individual frames, and is the largest schedulable portion of time permitted.
The Umversal Seπal Bus provides both penodic service and apeπodic service For penodic service corresponding to isochronous data, a fixed peπod exists between the delivery of start of frame packets to a specific end-point However, apeπodic service is characteπzed by a varying peπod between delivery of start of frame tokens for a given end-point Penodic service is given a higher pπoπty in scheduling than apenodic service
Turning now to Fig 3, there is lllusttated an abstracted block diagram of a Umversal Seπal Bus device, such as a hub or funcUon Umversal Seπal Bus device 1200 includes a device interface 1202 and a class interface 1204 Device interface 1202 includes device information and control block 1206. which is required for the USB device to attach to the USB and is independent of the funcuonalitv provided by the device The device interface further includes seπal bus interface engine 1210, which provide for management of the bus interface, including performing acknowledgments and recognizing packets that are addressed to the USB device In addiuon. the interface engine 1210 provides for stripping the SYNC field from incoming packets The class interface 1204 includes class information and control block 1214 which depends upon the functionality of the device (for example, hubs and locators) Class interface 1204 further includes function engine 1216 which relates to the functionality implemented by the device A USB device further includes logical buffers, such as packet buffer 1208 and elasticity buffer 1212 The packet buffer defines the maximum packet size which the USB device can receive or send The elasucity buffer relates to how flexible the scheduled generator may be in allocating band-width for the associated end-point and determines the maximum amount of data the device end-point can handle The vanous functional blocks of the USB device are not shown connected to one another in Fig 3 because as discussed in the USB specification, the relationship between die components may be implementation-dependent In addition, a Umversal Senal Bus device may include storage space, local to the USB device, though addressable by the host, and vendor space, which may be defined by the vendor of the device While me Umversal Senal Bus is intended to be an industry-wide standard penpheral interface, die
Umversal Seπal Bus SpecificaUon does not define die relationship between components in Umversal Seπal Bus devices There is therefore a need to provide novel architectures for Umversal Seπal Bus devices More particularly, there is a need to define a novel architecture for a powered speaker and/or microphone compatible with the Umversal Seπal Bus Specification In addition, while the USB specification defines signaling whereby a USB device or hub controller may wake the network from a low power mode, the USB specification does not define a mechamsm whereby the devices may power themselves down or awaken m response to the signaling There is therefore a need to provide a USB compatible speaker and/or microphone having power management capabilities
Moreover, in the case of a USB speaker and/or microphone, random power fluctuations, either at power-up or duπng normal operation, can feed through the speakers and cause annoving "pops'" and "hisses ' to be transmitted through the speakers In the extreme case, these can cause damage to the speaker Accordingly, there is a need to provide a USB compatible speaker and/or microphone having click suppression when the USB is unstable or duπng power-up and power-down
SUMMARY OF THE INVENTION
Accordingly, there is provided a novel powered loudspeaker implemented to be compatible with a seπal bus standard and, particularly, die Umversal Senal Bus specification The powered speaker includes a speaker dπven by a power amplifier coupled to a power supply Both the amplifier and the power supply, m turn, are coupled to a Umversal Seπal Bus controller The controller is configured to provide Universal Seπal Bus functionality and compatibility In addition, a phase locked loop (PLL) for recoveπng a timer clock from the received data stream is provided One embodiment of the present system further includes a function whereby the absence of data on the relevant channel is detected and the output to the speakers is muted in response thereto A further circuit is provided that controls when the output to the speaker is turned on such that no clicks or pops occur at power-up or when the dev ice or bus is not stable In addiuon. tone control, including bass and treble filters, volume control, and balance between left and nght outputs (in a stereo version) are provided Furthermore, power management functionality is provided If the USB has been idle for a predetermined peπod of time, the system can place itself into a low power sleep mode, or die loudspeaker can be placed into a sleep mode via software from the host
A microphone compatible with the Umversal Seπal Bus specification may also be provided, either as a discrete unit or integrated with the loudspeaker The microphone includes a microphone input dπving an amplifier coupled to a power feed and gain control Both are coupled to audio data circuitry, which includes an analog-to-digital converter and vanous filters, tone and volume control, and a circuit for providing 3D audio effects Both the gain control and the audio data block are coupled to a Umversal Seπal Bus controller The conttoller is configured to provide Umversal Seπal Bus functionality and compatibility In addition, a circuit for integrating the microphone signal into an isochronous USB signal is prov ided
A power control circuit for use with a USB microphone/speaker includes a mechamsm for momtoπng activity on the Umversal Senal Bus If the USB has been idle for a predetermined penod, the control mechamsm will power down the speaker For example, the circuit may be configured to momtor activity levels on a particular channel of the USB. If the activity levels are below a predetermined threshold for a predetermined peπod, the control circuit will cause the power to the device to shut off or down In this power down state, however, the circuit will momtor the bus for host signals indicating that the speaker is to be powered up once more In the case of the microphone, the circuit will also momtor the audio input and cause the microphone to power up in response to receiving an input signal Circuitry is also provided for the microphone to awaken the rest of the system Circuitry may also be provided to momtor the level and duration of die input signal Thus, the microphone will not power up unless the input exceeds a
predetermined activ ltv and duration threshold In this wav the microphone will not waken the network to process transient undesired inputs
As noted above, one problem with controlling power to loudspeakers is that of voltage tiansients causing hisses or clicks Accordingly, there is provided a mechanism to monitor the DC voltage level and turn off the power if it goes below a predetermined threshold The volume is ramped to zero after which power may be turned off After a predetermined Ume, allowing the transient to subside, the volume may be ramped back to the onginal level In addition to momtonng the DC voltage level, the circuit will momtor the cyclical redundancy checksum for failure and look for random noise signals Either can be a source of clicks or hisses Once either is detected, the circuit will ramp the volume down, after a predetermined time v olume w ill be ramped back to die onginal level In another embodiment, the momtonng circuit will continue momtoπng while the volume is down and, when the enor condition is no longer detected, restore the volume to its onginal level In addition high pass filtenng may be provided to reject low frequency noise
BRIEF DESCRIPTION OF THE DRAWINGS
A better understanding of the present invention can be obtained when the following detailed descnption of the prefened embodiment is considered in conjunction with the following drawings, in which
Fig. 1 is a representation of a data packet tiansfer along with a Umversal Senal Bus
Fig 2 is a representation of a scheduling paradigm for the Universal Seπal Bus
Fig 3 is a block diagram of an exemplary Universal Seπal Bus device
Fig 4 is a block diagram of a computer svstem with audio functionality according to one aspect of die claimed invenuon
Fig 5 is a block diagram of a computer speaker system according to one embodiment of the present invenuon
Fig 6 is a block diagram of a USB controller for a powered loudspeaker according to one embodiment of the present invention
Fig 7 is a more detailed block diagram of a speaker control according to one aspect of the present invention
Fig 8 is a block diagram of a USB controller for a microphone according to one embodiment of the
present invention
While the invention is suscepuble to vanous modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be descnbed in detail It should be understood, however, that the drawings and detailed descnption thereto are not intended to limit the invenuon to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spiπt and scope of the present invention as defined by the appended claims
DETAILED DESCRIPTION OF THE INVENTION
Turning now to the drawings, and with particular attention to Fig 4, a computer system 50 is shown according to one embodiment of die present invention Computer system 50 includes a CPU 52 and a cache memory 55 coupled to a CPU bus 56 CPU 52 may be any of a vanety of microprocessors, including processors compatible with the x86, PowerPC, and 68000 senes instruction sets CPU bus 56 is coupled to bus bπdge 58, which provides an interface to expansion bus 60 Also coupled to bus bndge 58 is a main memory 54 Bus bndge 58 may include a vanety of system support logic including cache and memory controls as well as providing host/expansion bndge functionality In addition, bus bπdge 58 may include a h seπal bus host interface 64, preferably a Umversal Serial Bus host interface, which provides connectivity to microphone 66 and speaker 68 via a senal bus or Umversal Senal Bus 76 Thus, for example, audio data from microphone 66 is transmitted to USB host 64 via USB 76 From there, it is transferred to main memory 54, from which it is accessible to audio logic 62 Expansion bus 60 may be any of a vanety of types of expansion buses, including buses compatible with the industry standard architecture (ISA), the extended industry standard architecture (EISA), the MicroChannel architecture (MCA) or the Penpheral Component Interface (PCI) bus architecture It is to be noted that the architecture shown in Fig 4 is exemplary only and that other configurations are envisaged Expansion bus 60 may further couple one or more additional bus bπdges 70. to one or more additional expansion buses 72, to which penpheral device 74 may be coupled Turning now to Fig 5, a more detailed block diagram of a computer audio system 100 is shown Computer audio system 100 is exemplary of. for example, the computer system 50 shown in Fig 4 Computer audio system 100 includes a computer system 102. which includes a Umversal Seπal Bus host interface 104 Computer system 102 is coupled via a USB cable 106 to powered loudspeaker 108 Powered loudspeaker 108 is coupled to the USB cable 106 at a USB connector (not shown) The USB signals are input to USB controller 112, which provides an audio signal along line 122 to power amplifier 114, which dnves speaker 116 USB controller 112 further provides an amplifier control signal along line 118 to amplifier 114, and a power supply control signal along line 124 to power supply 110 Power supply 1 10 further provides a control along line 120 to amplifier 114 USB Controller 112 is preferably a single integrated circuit
USB controller 112 is shown in greater detail in Fig 6 A USB connector (not shown) receives USB cable 106 (Fig 5) The USB connector provides the USB signal to connector interface 200 and function interface 204 Connector interface 200 provides the physical layer translation between the USB differentiallv -dπven signal levels and internal logic levels Function interface 204 receives die translated signal from connector interface 200 and provides the control functions required of all Umversal Senal Bus functions Thus, for example, function interface 204 acts as the senal bus interface engine and as device and class informauon and contiol blocks discussed with regard to Fig 3 above Function interface 204 serves to receive the USB signal, stnp off the SYNC field, and provide the signal to the function engine 203
More particularly, die data will be received at the 1 ms USB frame rate with the packet size value based on the audio data sampling rate The Umversal Seπal Bus signal is provided to channel extractor 206 and isochronous timing extractor 210 The received signal is provided in isochronous mode because the audio signal should be provided in real-time Isochronous signal timing on the Universal Senal Bus is implied by the steady rate at which the data is received Thus, for example, data will be received penodically in penodic mode along the bus based on the sampling requirements of audio data Because timing on the Umversal Senal Bus dunng isochronous mode is implied, the clock must be extracted from the penodic data Thus, isochronous timing extractor 210 employs a digital phase locked loop to denve internal audio clocks Isochronous timing extractor 210 provides the clock to audio data block 212, which will be descnbed in greater detail below Isochronous timing extractor 210 is further coupled to channel extractor 206
Channel extractor 205 separates the audio subchannel from the other data subchannels on the Umversal Senal Bus As discussed above each device subchannel on the Umversal Senal Bus corresponds to a particular address and endpoint combination Audio data, for example, conesponds to a particular address and endpoint received Control data conesponds to another address and endpoint combination The channel extractor 206 momtors the vanous umque endpoints and separates them out from one another As will be discussed in more detail below, this control data can include volume, balance and tone information It should further be noted that this information may be provided on separate channels Since one channel on the bus is reserved for bus control, this leaves a capability of up to a total of six speaker control channels Channel extractor 206 provides the data from the audio control subchannel or subchannels to speaker controller 208 and the audio data from the audio subchannel to audio data block 212
Audio data block 212 can include a mono or stereo digital-to-analog converter and filter 214 coupled to an analog audio block 216 Analog audio block 216 performs analog filtenng, and provides tone, balance, volume adjustment and muting Controls for these functions mav be provided from speaker control 208 or from analog potentiometers directly affixed to the speaker itself In addition, audio data block 212 can include a 3D audio block 213 provides stereo enhancement for a multi-dimensional "feel" to the sound It is noted that in alternative embodiments, the audio data block 22 is a digital audio data block Speaker control 208 reads the control channel received from channel extractor 206 and provides it to audio data block 212 In particular, the control channel or channels can include volume, balance, and tone informauon. as well as a vanety of filtenng The filtered audio data signal is provided to an output dnver 218, and is then provided to amplifier 114 of Fig 4 and then to speaker 116 It should be noted that while
die tone volume, and balance contiols mav be provided digitally via the Universal Seπal Bus and hence software, in alternate embodiments, such controls mav be provided via physical hardware such as analog potentiometers and the like
Speaker control 208 also momtors the audio channel and detects the absence of data for entenng a sleep mode If such an absence is detected, speaker control 208 will power down the speaker More generally, speaker control 208 momtors whether or not the Universal Seπal Bus is idle Speaker control 208 mav detect, for example, the absence of audio data or clock data If the bus is idle, the speaker control circmt 208 will turn off the power to the speaker in a gradual, controlled fashion Power is restored only after the Umversal Seπal Bus becomes active once again In this way, power may be conserved when the speaker is not in use Further, the speaker conttol circmt provides a control to die audio data circuitry to mute die audio output until die power is restored In this fashion, hisses due to the absence of data and clicks and noises at power-up can be avoided More particularly, the system may be configured such that the volume may be gradualh ramped to zero in response to any of a member of warning conditions This can also include turning off the power completely upon ramp-down These can include the detection of an abenational DC level, a bad CRC, or other random values Power mav be restored through ramping the volume back to the onginal level, after a predetermined Ume. or after the warning condition no longer exists Additional functionality may be provided wherein the powered speaker can be placed into a powered-down mode through a software command from the PC The powered loudspeaker may be powered up after a predetermined time, or by command from the host PC Furthermore, high pass filtenng, preferably at about 20 Hz. may be provided for rejecuon of low frequency "hiss" and 'pop-' components introduced due to too low a DC level
Turning now to Fig 7. a more detailed block diagram of speaker control 208 is shown Speaker conttol 208 includes a bus monitor 2000 and a click suppression or power management unit 2002 Both bus momtor 2000 and click suppression or po er management unit 2002 are coupled to the power supply (not shown) and are coupled to receive die USB input signal from the channel extractor (not shown) Bus monitor 2000 and click suppression unit 2002 are further coupled to one another
Bus momtor 2000 is configured to momtor the USB input signal For example, it may monitor the audio data signal or the clock signal When the bus momtor detects that the USB is idle, it will transmit a signal to the power supply, causing the power to shut off A counter 2004 may be provided, which will count to a predetermined value upon detection of the absence of data on the bus When the value is reached, if there is still no data on the bus. the power may be shut off Pπor to sending the power off control signal to the po er supply, bus momtor 2000 may also send a control signal to click suppression umt 2002, causing the click suppression unit 2002 to ramp the volume down to zero before shutting off the power
Bus momtor 2000 will continue to monitor the USB duπng the power down mode If the bus momtor 2000 detects activity on die bus, the monitor will cause the power supply to restore power Once power is turned back on, the bus momtor 2000 may send a control signal to the click suppression unit to cause it to ramp the volume back up
In addition to responding to the po er-on/power-off modes controlled bv the bus monitor 2000, click suppression umt 2002 will also monitor the audio input for the presence of enor conditions These can include momtoπng for too low a DC level, momtonng for a failed CRC. and momtonng for random noise In addition, high pass filtenng may be provided to reject the low frequency noise components If any of these conditions are detected, die click suppression umt will cause the volume to ramp do n to zero Click suppression unit 2002 may continue to momtor the input and. when the enor condiuon has cleared, restore the volume in a gradual ramp, so as to avoid clicks, etc The click suppression umt 2002 may also be coupled to turn off the power if the enor condition persists Once the enor condition has been cleared, click suppression unit may restore power, and cause the volume to ramp back to its onginal level In a still further embodiment, click suppression umt 2002 can include a counter 2006 which will begin counting when an error condition has been detected and volume ramping has begun After a preset count, the click suppression umt may be configured to ramp die volume back up, rather than momtonng dunng the rampmg condition It is to be noted that while the click suppression unit 2002 and the bus momtor 2000 are shown as discrete units, thev may be part of an integrated power/volume control umt Thus. Fig 7 is exemplary only Turning now to Fig 8, there is shown a block diagram of a Universal Seπal Bus-based microphone
5112 An audio signal is provided from an external microphone (not shown) to microphone amplifier 5218 and power feed 5220 Power feed 5220 in turn is coupled to receive a control signal from control umt 5208 Control umt 5208 is further coupled to amplifier 5218 and audio data umt 5212 Control umt 5208 is configured to provide power management functions Thus, control umt 5208 is configured to momtor the clock, the audio input and the USB for activity Conttol umt 5208 is configured to turn off power to die microphone on command from the host, or upon detection of a lack of bus or clock activity It is noted that vanous of these features may be initialized as desired by software command In addition, die microphone 5112 mav be operative in a low power mode such that the USB link mav be powered down while the control umt 5208 momtors the audio input for activity If input activity is detected, the conttol unit will "wake up"' the USB link
In addition, in a manner similar to that descnbed above for the speaker, gain conttol 5208 serves to provide conttol signals to audio effects unit 5216 Audio effects unit 5216 provides analog filtenng, volume and pan conttol. among other things Audio effects unit 5216 is further coupled to analog-to-digital converter 5214 It is noted that in alternate embodiments, vanous components such as the audio effects umt may be implemented with either analog or digital circuitry
Numerous vaπations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated It is intended that the following claims be interpreted to embrace all such vaπations and modifications
Claims
WHAT IS CLAIMED IS:
1 A powered loudspeaker for use with a personal computer compπsing
a USB interface for coupling said loudspeaker to a Universal Senal Bus, wherein said USB provides
USB data to said powered loudspeaker,
an extractor circuit coupled to said USB interface configured to extract a plurality of data streams from said USB data, wherein said data streams include clock data, digital audio data, and control data,
a speaker controller coupled to receive said control data and configured to provide conttol signals to an external power supply and amplifier,
an audio data circuit coupled to receive said clock data and said audio data, said audio data circmt including a digital to analog converter for converting said audio data to an analog audio signal, wherein said audio data circuit is further configured to receive an audio control signal from said speaker controller, and
an output dnver coupled to provide said analog audio signal to a speaker
2 The powered loudspeaker of claim 1, wherein said extractor circmt includes an isochronous timing extractor
3 The powered loudspeaker of claim 1, wherein said audio data circmt includes at least one of filter, tone, volume, 3D effects, and balance circuits for shaping said analog audio data signal
4 The powered loudspeaker of claim 1, wherem said speaker control circuit includes circuitry for poweπng down said powered loudspeaker responsive to a predetermined condition
5 The powered loudspeaker of claim 4, wherein said predetermined condition is the absence of audio
6 The powered loudspeaker of claim 4, wherein said predetermined condition is the absence of valid clock data on said USB
7 The powered loudspeaker of claim 4, wherein said predetermined condition is a command from said personal computer
8. The powered loudspeaker of claim 4, wherein said speaker control includes circuitry for muting said analog audio signal when said powered loudspeaker is powered down, and restoring said analog audio output a predetermined time after said powered loudspeaker is powered up.
9. The powered loudspeaker of claim 1, wherein said speaker conttol includes circuitry for muting said audio output signal in the absence of data.
10. The powered loudspeaker of claim 4, wherein said speaker control includes circuitry for powering up said powered loudspeaker responsive to a command from said PC.
11. The powered loudspeaker of claim 2, wherein said isochronous timing extractor is a phase locked loop.
12. The powered loudspeaker of claim 3, wherein at least one of said filter, tone, volume, 3D effects, and balance circuits is responsive to external hardware.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE69714460T DE69714460T2 (en) | 1996-10-23 | 1997-10-22 | CONTROL ARCHITECTURE FOR A UNIVERSAL SERIAL BUS-BASED PC SPEAKER |
EP97946330A EP0941631B1 (en) | 1996-10-23 | 1997-10-22 | Architecture for a universal serial bus-based pc speaker controller |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/731,956 US5818948A (en) | 1996-10-23 | 1996-10-23 | Architecture for a universal serial bus-based PC speaker controller |
US08/731,956 | 1996-10-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1998018292A1 true WO1998018292A1 (en) | 1998-04-30 |
Family
ID=24941600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1997/019478 WO1998018292A1 (en) | 1996-10-23 | 1997-10-22 | Architecture for a universal serial bus-based pc speaker controller |
Country Status (4)
Country | Link |
---|---|
US (1) | US5818948A (en) |
EP (1) | EP0941631B1 (en) |
DE (1) | DE69714460T2 (en) |
WO (1) | WO1998018292A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1009209A2 (en) * | 1998-10-30 | 2000-06-14 | Siemens Aktiengesellschaft | Power supply means for a bus system |
Families Citing this family (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5914877A (en) * | 1996-10-23 | 1999-06-22 | Advanced Micro Devices, Inc. | USB based microphone system |
US6216052B1 (en) * | 1996-10-23 | 2001-04-10 | Advanced Micro Devices, Inc. | Noise elimination in a USB codec |
US6122749A (en) * | 1996-10-23 | 2000-09-19 | Advanced Micro Devices, Inc. | Audio peripheral device having controller for power management |
US5958027A (en) * | 1997-08-05 | 1999-09-28 | Advanced Micro Devices, Inc. | Method and system for optimizing the flow of isochronous data and clock rate information |
US5944801A (en) * | 1997-08-05 | 1999-08-31 | Advanced Micro Devices, Inc. | Isochronous buffers for MMx-equipped microprocessors |
US6058440A (en) * | 1997-09-05 | 2000-05-02 | Intel Corporation | Programmable and adaptive resource allocation device and resource use recorder |
US6230226B1 (en) * | 1997-09-30 | 2001-05-08 | Intel Corporation | Compound device implementing hub and function endpoints on a single chip |
US6577337B1 (en) | 1997-12-01 | 2003-06-10 | Samsung Electronics Co., Ltd. | Display apparatus for visual communication |
US6128732A (en) * | 1997-12-15 | 2000-10-03 | Compaq Computer Corporation | Implementing universal serial bus support with a minimum of system RAM |
US6029248A (en) * | 1997-12-15 | 2000-02-22 | Lucent Technologies Inc. Corporation | Locking system to protect a powered component interface from erroneous access by an attached, powered-off component |
US6122676A (en) * | 1998-01-07 | 2000-09-19 | National Semiconductor Corporation | Apparatus and method for transmitting and receiving data into and out of a universal serial bus device |
US6157975A (en) * | 1998-01-07 | 2000-12-05 | National Semiconductor Corporation | Apparatus and method for providing an interface to a compound Universal Serial Bus controller |
US6205501B1 (en) | 1998-01-07 | 2001-03-20 | National Semiconductor Corp. | Apparatus and method for handling universal serial bus control transfers |
US6353866B1 (en) | 1998-01-07 | 2002-03-05 | National Semiconductor Corporation | Apparatus and method for initializing a universal serial bus device |
US6044428A (en) * | 1998-03-17 | 2000-03-28 | Fairchild Semiconductor Corporation | Configurable universal serial bus node |
JP3440984B2 (en) * | 1998-03-18 | 2003-08-25 | ソニー株式会社 | Information processing apparatus and method, and recording medium |
US6119194A (en) * | 1998-03-19 | 2000-09-12 | Advanced Micro Devices, Inc. | Method and apparatus for monitoring universal serial bus activity |
US6715071B2 (en) * | 1998-06-26 | 2004-03-30 | Canon Kabushiki Kaisha | System having devices connected via communication lines |
US6816934B2 (en) * | 2000-12-22 | 2004-11-09 | Hewlett-Packard Development Company, L.P. | Computer system with registered peripheral component interconnect device for processing extended commands and attributes according to a registered peripheral component interconnect protocol |
JP2000105638A (en) * | 1998-09-29 | 2000-04-11 | Nec Corp | Usb device and usb connection system |
EP1157376A1 (en) * | 1999-02-18 | 2001-11-28 | Andrea Electronics Corporation | System, method and apparatus for cancelling noise |
US6363345B1 (en) * | 1999-02-18 | 2002-03-26 | Andrea Electronics Corporation | System, method and apparatus for cancelling noise |
US6618774B1 (en) * | 1999-03-17 | 2003-09-09 | Adder Technology Ltd. | Computer signal transmission system |
US6567875B1 (en) | 1999-04-05 | 2003-05-20 | Opti, Inc. | USB data serializer |
WO2000067103A1 (en) * | 1999-04-30 | 2000-11-09 | Daniel Kelvin Jackson | Method and apparatus for extending communications over usb |
US6765954B1 (en) * | 1999-08-16 | 2004-07-20 | Globespanvirata, Inc. | System and method for implementing a delta-sigma modulator integrity supervisor |
US6959274B1 (en) * | 1999-09-22 | 2005-10-25 | Mindspeed Technologies, Inc. | Fixed rate speech compression system and method |
US20020019891A1 (en) * | 1999-12-30 | 2002-02-14 | James Morrow | Generic device controller unit and method |
US9235955B2 (en) | 2000-12-22 | 2016-01-12 | Bally Gaming, Inc. | Universal game monitoring unit and system |
US6928329B1 (en) * | 2000-02-29 | 2005-08-09 | Microsoft Corporation | Enabling separate chat and selective enablement of microphone |
US7240093B1 (en) * | 2000-02-29 | 2007-07-03 | Microsoft Corporation | Use of online messaging to facilitate selection of participants in game play |
US7031476B1 (en) * | 2000-06-13 | 2006-04-18 | Sharp Laboratories Of America, Inc. | Method and apparatus for intelligent speaker |
US6343364B1 (en) * | 2000-07-13 | 2002-01-29 | Schlumberger Malco Inc. | Method and device for local clock generation using universal serial bus downstream received signals DP and DM |
KR100392451B1 (en) * | 2000-11-17 | 2003-07-22 | 삼성전자주식회사 | Portable computer system and controlling method thereof |
KR20020042980A (en) * | 2000-12-01 | 2002-06-08 | 김기원 | Multiadapter for Computer |
KR100711914B1 (en) * | 2001-09-15 | 2007-04-27 | 엘지전자 주식회사 | An apparatus for power saving of USB hub |
US6621353B2 (en) | 2001-11-07 | 2003-09-16 | International Business Machines Corporation | Phase locked loop reconfiguration |
US20030107478A1 (en) * | 2001-12-06 | 2003-06-12 | Hendricks Richard S. | Architectural sound enhancement system |
US7395208B2 (en) * | 2002-09-27 | 2008-07-01 | Microsoft Corporation | Integrating external voices |
US20040103235A1 (en) * | 2002-11-27 | 2004-05-27 | Pei-Chung Liu | USB based terminal device |
DE10262079A1 (en) * | 2002-12-23 | 2004-11-18 | Infineon Technologies Ag | Method and device for extracting a clock frequency on which a data stream is based |
EP1646150B1 (en) | 2002-12-23 | 2007-02-14 | Infineon Technologies AG | Method and device for extracting a clock pulse frequency underlying a data flow |
DE10260656B4 (en) * | 2002-12-23 | 2006-03-30 | Infineon Technologies Ag | Method and device for extracting a clock frequency underlying a data stream |
US7668321B2 (en) * | 2003-06-17 | 2010-02-23 | Texas Instruments Incorporated | Automatic power foldback for audio applications |
US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
US8086752B2 (en) | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
US9207905B2 (en) | 2003-07-28 | 2015-12-08 | Sonos, Inc. | Method and apparatus for providing synchrony group status information |
US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
JP4040654B2 (en) * | 2003-09-16 | 2008-01-30 | 富士通株式会社 | Communication control circuit and communication control method |
EP1565034A1 (en) * | 2004-02-16 | 2005-08-17 | STMicroelectronics S.r.l. | Packaged digital microphone device with auxiliary line-in function |
US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
US8024055B1 (en) | 2004-05-15 | 2011-09-20 | Sonos, Inc. | Method and system for controlling amplifiers |
US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
US20060198540A1 (en) * | 2005-02-04 | 2006-09-07 | Jonson Paul E | Apparatus for mixing, controlling and distributing audio signals |
US7346728B1 (en) | 2005-04-18 | 2008-03-18 | Intel Corporation | Method and apparatus for a hub capable of being self-powered for use in a USB-compliant system |
KR20070011826A (en) * | 2005-07-21 | 2007-01-25 | 넥스콘 테크놀러지 주식회사 | Digital amp for pc using usb |
TWM295843U (en) * | 2006-01-20 | 2006-08-11 | Wing Span Entpr Co Ltd | USB hub |
DK200600151A (en) * | 2006-02-03 | 2007-08-04 | Remedan Af 1985 Aps | Audio amplifier with speaker protection against transients |
TW200802033A (en) * | 2006-06-23 | 2008-01-01 | Alcor Micro Corp | Expandable switching device of computer systems |
US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
TWI382657B (en) * | 2007-03-01 | 2013-01-11 | Princeton Technology Corp | Audio processing system |
WO2009086599A1 (en) * | 2008-01-07 | 2009-07-16 | Avega Systems Pty Ltd | A user interface for managing the operation of networked media playback devices |
KR101566004B1 (en) * | 2009-03-05 | 2015-11-06 | 삼성전자주식회사 | Semiconductor device capable of dividing a end point into majority |
US20100229008A1 (en) * | 2009-03-06 | 2010-09-09 | Tsuoe-Hsiang Liao | Sound Effect Power Supply Configuration |
TWI383583B (en) * | 2009-10-02 | 2013-01-21 | Himax Media Solutions Inc | Audio output devices |
TWI410806B (en) * | 2009-10-16 | 2013-10-01 | Elan Microelectronics Corp | A method and a circuit for correcting the frequency of the USB device, and a method of identifying whether or not the input packet is a tag packet |
US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
US8938312B2 (en) | 2011-04-18 | 2015-01-20 | Sonos, Inc. | Smart line-in processing |
US9042556B2 (en) | 2011-07-19 | 2015-05-26 | Sonos, Inc | Shaping sound responsive to speaker orientation |
US9158496B2 (en) * | 2012-02-16 | 2015-10-13 | High Sec Labs Ltd. | Secure audio peripheral device |
US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
US9244516B2 (en) | 2013-09-30 | 2016-01-26 | Sonos, Inc. | Media playback system using standby mode in a mesh network |
US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
EP3139639A1 (en) * | 2015-09-04 | 2017-03-08 | Music Group IP Ltd. | Method for determining a connection order of nodes on a powered audio bus |
EP3139630A1 (en) * | 2015-09-04 | 2017-03-08 | Music Group IP Ltd. | Method for controlling power consumption of a loudspeaker system |
CN105578354B (en) * | 2015-12-25 | 2018-12-25 | 山东海量信息技术研究院 | A kind of loudspeaker noise-reduction method based on platform of soaring |
US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
US11929722B2 (en) * | 2020-12-10 | 2024-03-12 | Realtek Semiconductor Corp. | Audio control circuit and associated control method |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4344175A (en) * | 1980-12-22 | 1982-08-10 | General Electric Company | Muting circuit |
EP0641139A2 (en) * | 1993-07-13 | 1995-03-01 | Hewlett-Packard Company | Merging audio and telephone data for a computer |
US5414386A (en) * | 1993-02-15 | 1995-05-09 | Pioneer Electronic Corporation | Muting apparatus in car audio system |
WO1996008108A1 (en) * | 1994-09-06 | 1996-03-14 | Unilearn, Inc. | A computer controlled video interactive learning system |
EP0703713A2 (en) * | 1994-09-22 | 1996-03-27 | Sony Corporation | Packet receiving device |
EP0720142A1 (en) * | 1994-12-26 | 1996-07-03 | Yamaha Corporation | Automatic performance device |
DE29610940U1 (en) * | 1996-06-23 | 1996-09-05 | Schulte Joerg Dipl Ing | Connection of a decoding module or a radio clock for the DCF-77 radio signal to a controller or a computer or PC via the USB interface |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3860921A (en) * | 1973-11-15 | 1975-01-14 | Nasa | Simultaneous acquisition of tracking data from two stations |
US5689534A (en) * | 1992-05-12 | 1997-11-18 | Apple Computer, Inc. | Audio functional unit and system and method for configuring the same |
US5596647A (en) * | 1993-06-01 | 1997-01-21 | Matsushita Avionics Development Corporation | Integrated video and audio signal distribution system and method for use on commercial aircraft and other vehicles |
US5553220A (en) * | 1993-09-07 | 1996-09-03 | Cirrus Logic, Inc. | Managing audio data using a graphics display controller |
US5563952A (en) * | 1994-02-16 | 1996-10-08 | Tandy Corporation | Automatic dynamic VOX circuit |
US5615404A (en) * | 1994-10-31 | 1997-03-25 | Intel Corporation | System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals |
US6421754B1 (en) * | 1994-12-22 | 2002-07-16 | Texas Instruments Incorporated | System management mode circuits, systems and methods |
US5675813A (en) * | 1995-10-26 | 1997-10-07 | Microsoft Corporation | System and method for power control in a universal serial bus |
US5652895A (en) * | 1995-12-26 | 1997-07-29 | Intel Corporation | Computer system having a power conservation mode and utilizing a bus arbiter device which is operable to control the power conservation mode |
-
1996
- 1996-10-23 US US08/731,956 patent/US5818948A/en not_active Expired - Lifetime
-
1997
- 1997-10-22 WO PCT/US1997/019478 patent/WO1998018292A1/en active IP Right Grant
- 1997-10-22 DE DE69714460T patent/DE69714460T2/en not_active Expired - Lifetime
- 1997-10-22 EP EP97946330A patent/EP0941631B1/en not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4344175A (en) * | 1980-12-22 | 1982-08-10 | General Electric Company | Muting circuit |
US5414386A (en) * | 1993-02-15 | 1995-05-09 | Pioneer Electronic Corporation | Muting apparatus in car audio system |
EP0641139A2 (en) * | 1993-07-13 | 1995-03-01 | Hewlett-Packard Company | Merging audio and telephone data for a computer |
WO1996008108A1 (en) * | 1994-09-06 | 1996-03-14 | Unilearn, Inc. | A computer controlled video interactive learning system |
EP0703713A2 (en) * | 1994-09-22 | 1996-03-27 | Sony Corporation | Packet receiving device |
EP0720142A1 (en) * | 1994-12-26 | 1996-07-03 | Yamaha Corporation | Automatic performance device |
DE29610940U1 (en) * | 1996-06-23 | 1996-09-05 | Schulte Joerg Dipl Ing | Connection of a decoding module or a radio clock for the DCF-77 radio signal to a controller or a computer or PC via the USB interface |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1009209A2 (en) * | 1998-10-30 | 2000-06-14 | Siemens Aktiengesellschaft | Power supply means for a bus system |
EP1009209A3 (en) * | 1998-10-30 | 2006-12-06 | Siemens Aktiengesellschaft | Power supply means for a bus system |
Also Published As
Publication number | Publication date |
---|---|
DE69714460T2 (en) | 2003-04-03 |
US5818948A (en) | 1998-10-06 |
EP0941631B1 (en) | 2002-07-31 |
DE69714460D1 (en) | 2002-09-05 |
EP0941631A1 (en) | 1999-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0941631B1 (en) | Architecture for a universal serial bus-based pc speaker controller | |
US6122749A (en) | Audio peripheral device having controller for power management | |
US6473663B2 (en) | Noise elimination in a USB codec | |
US5914877A (en) | USB based microphone system | |
US5778218A (en) | Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates | |
EP1002278B1 (en) | Method and system for optimizing the flow of isochronous data and clock rate information | |
EP2856688B1 (en) | System for master-slave data transmission based on a flexible serial bus for use in hearing devices | |
US20180060269A1 (en) | Systems and techniques for remote bus enable | |
US20100191995A1 (en) | In-Band Sleep Protocol for Embedded Bus | |
US6240166B1 (en) | LAN connection using analog modems via telephone wiring | |
US8332566B2 (en) | Methods and apparatuses for serial bus sideband communications | |
JP6742465B2 (en) | Method, device and bluetooth speaker for continuous wakeup delay reduction in bluetooth speaker | |
CN1584789B (en) | Method, apparatus and system for operating data processing devices | |
JP5042478B2 (en) | Extended USB protocol | |
US6754209B1 (en) | Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus | |
JP3742474B2 (en) | Computer system having an audio device | |
CN105027104B (en) | Method and apparatus for multiple-limb number bus | |
US20100131783A1 (en) | System and Method of Dynamically Switching Queue Threshold | |
US6061411A (en) | Method and apparatus for synchronizing a serial bus clock to a serial bus function clock | |
EP2487858B1 (en) | Systems and methods for encoding control messages in an audio bitstream | |
WO2023050128A1 (en) | Data transmission method and apparatus | |
CN113778923A (en) | Multifunctional electronic equipment | |
CN113311933B (en) | Equipment peripheral setting method and device of large-screen intelligent equipment and large-screen intelligent equipment | |
CN216086918U (en) | Conference call device | |
CN1795427A (en) | Device for signal connection and energy supply for consumer electronics apparatuses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1997946330 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1997946330 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1997946330 Country of ref document: EP |