OX16CB950 Intelligent UART with 3.3v PCI/Cardbus Interface • • • • • • • • • • • • • • • • • • • Single 16C950 High performance UART channel Cardbus/3.3v PCI compliant, single-function target controller. Fully compliant to PC Card Standard 7.0*, and PCI Bus Specification 2.2, Power Management 1.0. Function access to pre-configure UART prior to handover to generic device drivers. UART fully software compatible with 16C550-type devices. Baud rates up to 15Mbps in asynchronous mode and 60Mbps in external 1x clock mode 128-byte deep FIFO per transmitter and receiver Flexible clock prescaler from 1 to 31.875 Automated in-band flow control using programmable Xon/Xoff in both directions Automated out-of-band flow control using CTS#/RTS# and/or DSR#/DTR# Arbitrary trigger levels for receiver and transmitter FIFO interrupts and automatic in-band and out-ofband flow control Infra-red (IrDA) receiver and transmitter operation 9-bit data framing as well as 5,6,7 and 8 Global Interrupt Status and readable FIFO levels to facilitate implementation of efficient device drivers Detection of bad data in the receiver FIFO Operation via IO or memory mapping. 2 Multi-purpose I/O pins which can be configured as interrupt input or ‘wake-up’ pins Can be reconfigured using optional Microwire based non-volatile configuration memory (EEPROM). The EEPROM is autodetected. 3.3V operation 100 TQFP package *Compliance to PC Card Standard 7.1 requires external circuitry The OX16CB950 is a single chip UART solution for either cardbus or PCI-based serial add-in cards. It is a single function device, offering memory or IO mapped access to the ultra-high performance OX16C950 UART. This UART is the fastest available PC-compatible UART, offering data rates up to 15Mbps and 128-byte deep transmitter and receiver FIFOs. The deep FIFOs reduce CPU overhead and allow utilisation of higher data rates. The UART is software compatible with the widely used industry-standard 16C550 devices and compatibles, as well as the OX16C95x family of high performance UARTs. In addition to increased performance and FIFO size, the UART also provides the full set of OX16C95x enhanced features including automated in-band flow control, readable FIFO levels etc. A set of local registers is available to enhance device driver efficiency and reduce interrupt latency. The internal UART has features such as shadowed FIFO fill levels, an interrupt source register and Good-Data Status, readable in one DWORD register visible to logical function0 in IO space and memory space. The efficient 32-bit, 33MHz target-only interface is compliant with both the cardbus sections of the PC CARD Standard, release 7.0*, and the PCI bus specifications version 2.2 and version 1.0 of PCI Power Management Specification. For full flexibility, all the default register values can be overwritten using an optional MicrowireTM serial EEPROM. This EEPROM can also be used to provide function access to pre-configure the UART into enhanced modes prior to any cardbus/PCI configuration accesses and before control is handed to generic device drivers. AD[31:0] C/BE[3:0] SOUT CLK SIN FRAME# DEVSEL# RTS IRDY# TRDY# PAR SERR# PCI 3.3V or CardBus Interface PERR# RST# IDSEL INTA# INTB# PME# DTR CTS Internal Data/Control Bus STOP# Function 0 UART DSR DCD RI SLEW_RATE XTALO XTALI Interrupt logic MIO pins MIO[1:0] Clock & Baud rate Generator EE_DO EE_DI EE_CK EEPROM interface EE_CS Block Diagram of the OX16CB950