
Preliminary Data Sheet
W6694 Passive USB-ISDN S/T-Controller
-16-
Publication Release Date: March., 2000
Revision 0.93
interface. The disabled XFIFO can be enabled by command XEN on each channel. An enabled XFIFO can receive data
from USB, and send data to USB host.
Software decides the size of data to transmit depending on available XFIFO space, which is indicated by XFR flag
carried by Isochronous-IN packet. When XFR is reported to host, it means that XFIFO has at least half of the total XFIFO
size available for that channel. Each channel has its own XFIFO and status flags.
If the incoming Isochronous-OUT packet is detected error, some action will be automatically taken for D and B channel
XFIFO. For D channel, the XFIFO is reset and automatically enabled. For B channel, the XFIFO are not reset, and the data
remained in XFIFO are still valid and will be transmitted to ISDN later. But the new incoming B channel data will be
replaced by FFh, and stored into XFIFO. The continuous FFh will later be transmitted to corresponding B channel of ISDN
interface. This Isochronous-OUT packet error will be reported to host, by setting bit ISOE of Isochronous-IN packet to 1. D
channel FIFO will recognize and only accept data within HDLC frame (including opening and closing flag), all other data
outside HDLC frame are ignored and not stored in FIFO. B channel FIFO accept any data after it is enabled.
The packet format of Isochronous-OUT is as below:
Bit 7
6
5
4
3
D_DATA (1
st
byte)
D_DATA (2
nd
byte)
D_DATA (3
rd
byte)
B_LEN3
B_LEN2
B1_DATA
...
B2_DATA
...
D_LEN1-0
D Channel Data Length
These bits indicate the data length of the subsequent data for D channel. The length should be from 1 and 3 bytes
inclusively, otherwise a transmit FIFO under-run or overflow condition may occur. The valid data are HDLC frame,
including opening and closing flag (7Eh), and bit-stuffed data in between. Note that software should transmit the first data
byte as opening flag in byte (8-bits) boundary. Due to the nature of HDLC framing, the closing flag may not be in byte-
boundary. Software should stuff the remaining bit positions (if any) with binary ‘1’, to fill the last byte, unless the last byte is
7Eh.
D_D
ATA
D Channel Data
These are D channel data space, which always occupy 3 bytes in the packet. Software should put actual data length in
D_LEN. If the data length is less then 3, the remaining bytes position should fill with FFh.
B_LEN3-0
B Channel Data Length
These bits indicate the data length of subsequent data for each B channel. The length should be from 7 to 9 bytes
inclusively, otherwise a transmit FIFO under run or overflow condition may occur. Note that two B channels have same data
length.
B1_DATA
B1 Channel Data
These are B1 channel data, the length is indicated by B_LEN.
B2_DATA
B2 Channel Data
These are B2 channel data, the length is indicated by B_LEN.
2
1
0
D_LEN1
D_LEN0
B_LEN1
B_LEN0