User's Manual
Table Of Contents
- 2035-UM1xx.book
- Table of Contents
- List of Figures
- List of Tables
- Section 1: Introduction
- Section 2: Hardware System Overview
- Section 3: BCM2035 Usage Models
- Section 4: Hardware Configuration
- Section 5: Software Configuration
- Introduction
- Hardware Power-Up Sequence
- Boot ROM Power-Up Sequence
- Firmware Power-Up Sequence
- BCM2035 Mini-Drivers
- Loading Mini-Drivers from USB
- Load Mini-Drivers From UART
- SCO Configuration
- Frequency Trimming
- UART Sleep Mode Operation
- Section 6: Configuration Data File System
- Section 7: Vendor-Specific HCI Command Reference
- Section 8: ASCII Hex File Download Protocol
- Section 9: ASCII HEX File Format
- Section 10: Configuration Data Download Protocol
- Section 11: Configuration Data Image Format
- Section 12: UART Start-up Sequence
- Section 13: USB Start-up Sequence
9/29/2004 OV4F2
C
O
N
F
I
D
E
N
T
I
A
L
F
O
R
W
I
S
T
R
O
N
C
O
R
P
O
R
A
T
I
O
N
BCM2035 User Manual
04/23/03
Broadcom Corporation
Page 16 Peripheral Transport Unit Document 2035-UM100-R
SLOT MAPPING
The
BCM2035 supports up to 3 simultaneous full duplex SCO channels. These 3 channels are time
multiplexed onto the single PCM interface by using a time slotting scheme where the 8 kHz audio sample
interval is divided into up to 16 slots. The number of slots is dependant on the selected interface rate of 128,
256, 512, 1024, or 2048 kHz. The corresponding number of slots for these interface rates is 1, 2, 4, 8 and 16
respectively. Transmit and receive PCM data from an SCO channel is always mapped to the same slot. The
PCM data output driver tri-states its output on unused slots to allow other devices to share the same PCM
interface signals. The data output driver tri-states its output after the falling edge of the PCM clock during the
last bit of the slot.
FRAME SYNC
The
BCM2035 supports both short and long frame sync types in both master and slave configurations. In the
short frame sync mode, the frame sync signal is an active high pulse at the 8 kHz audio frame rate that is a
single bit period in width and synchronized to the rising edge of the bit clock. The PCM slave will look for a high
on the falling edge of the bit clock and expect the first bit of the first slot to start at the next rising edge of the
clock. In the long frame sync mode, the frame sync signal is again an active high pulse at the 8 kHz audio frame
rate; however, the duration is 3 bit periods and the pulse starts coincident with the first bit of the first slot.
DATA FORMATTING
The
BCM2035 may be configured to generate and accept several different data formats. The BCM2035 uses
13 of the 16 bits in each PCM frame. The location and order of these 13 bits is configurable to support various
data formats on the PCM interface. The remaining three bits will be ignored on the input, and may be filled
with 0's, 1's, sign bit, or a programmed value on the output. The default format is 13-bit 2's complement data,
left justified and clocked most significant bit first.
USB INTERFACE
The USB port is a USB 1.1 high-speed compliant slave interface, with on-chip USB transceiver. The USB
interface on the
BCM2035 complies with the HCI USB specification as described in the Specification of the
Bluetooth System Version 1.1.
The BCM2035 detects automatically detects activity on the USB interface when connected, so no special
configuration is needed to select HCI as the transport. The USB interface cannot be used simultaneously with
HCI UART.
The USB port contains three logical interfaces. Interface 0 contains a Control Endpoint (Endpoint 0x00) for HCI
commands, a Bulk In Endpoint (Endpoint 0x82) for receiving ACL data, a Bulk Out Endpoint (Endpoint 0x02)
for transmitting ACL data, and an Interrupt Endpoint (Endpoint 0x81) for HCI events.
Interface 1 contains Isochronous In and Out Endpoints (Endpoints 0x83 and 0x03) for SCO traffic. Several
alternate settings of Interface 1 are available to reserve the proper bandwidth for the isochronous data
depending on the application.
Interface 2 contains Bulk In and Bulk Out Endpoints (Endpoints 0x84 and 0x04) which are used for proprietary
testing and debugging support and may be ignored during normal operation.