An Expresso family device
Data Sheet
OXPCIe840 PCI Express Bridge to Parallel Port Features Configuration General IEEE 1284 parallel port ExpressCard™, Mini CARD™ & AIC PCI Express® End‐point Controller compatible Single lane with integrated SerDes 8 user‐configurable GPIOs /PWMs PCI Express base spec 1.1 compliant Device parameters configurable via EEPROM PCI Power Management 1.2 compliant 3.3‐V operation MSI compatible 1.8‐V, 2.5‐V or 3.3‐V GPIO I/O voltage ASPM (L0S, L1) Link power management 120‐pin TFBGA package Industrial temperature range ‐40°C to 85°C Parallel Port Parallel port compatible with device drivers IEEE 1284‐compliant SPP/EPP/ECP supplied with Windows Vista™, Windows® XP, Windows 2000, Windows CE & Linux operating systems Description The OXPCIe840 is a single‐chip solution for PCI Express‐based high performance parallel connectivity that provides a combination of rich features and user configurability to enable highly differentiated end products. The device combines a fully integrated, single‐lane PCI Express end‐point controller and SerDes with an IEEE1284 compliant SPP/EPP/ECP parallel port and user‐defined GPIOs/PWMs. The device accommodates popular Add‐in Card formats and with comprehensive power management support and the reassurance of industrial temperature range, the OXPCIe840 is the ideal choice for power and temperature sensitive ExpressCard and Mini CARD applications. The OXPCIe840 achieves outstanding performance by combining Oxford’s high performance parallel port technology with advanced system management features, such as MSI interrupt handling, to substantially reduce CPU and system overheads. The device can be configured at power‐up using an external EEPROM to take advantage of a range of possible device and in‐system customizations that are easily defined and programmed using Oxide, the Oxford Semiconductor graphical development tool. Parallel port functionality is supported by standard operating system device drivers and a dedicated device driver is not required.
DS-0049 Mar 06 08 External—Free Release 1 Oxford Semiconductor, Inc.
Contents Features 1
Description 1
Contents 2
Device Modes 3
OXPCIe840 Pin Descriptions 5
Configuration Space & Base Address Registers 9 OXPCIe840 Configuration Space ------9 Base Address Register Allocation ------11
System Overview 12 OXPCIe840 Clocking and Reset Scheme ------12 Personality Application ------12 Interrupt Management ------13 PCI Express Interface ------14 Power Management ------14 Power Supply Management ------14
OXPCIe840 Functions 15 Parallel Port Function ------15 GPIO Function ------18
EEPROM Interface & Programming Capabilities 27 Overview ------27 EEPROM Zone Allocation ------29
Operating Conditions 32 Maximum Ratings ------32 Electrical Characteristics ------33 AC Electrical Characteristics ------34
Package Mechanical Drawings 37
Ordering Information 38
Contacting Oxford Semiconductor 38
Revision Information 39
2 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
Device The OXPCIe840 allows one parallel device to be efficiently connected to a PCI Express‐enabled host PC. Note that the OXPCIe840 parallel port is Modes intended for use with standard operating system drivers.
Table 1 shows the PCI Express functions available with the OXPCIe840.
Table 1 PCI Express Function Usage for the OXPCIe840
GPIO_EN Function 0 Function 1 Function 2 Function 3 Pin
1(3) PPORT(1) not visible GPIO(2) not visible
Notes: 1These functions are driven by standard operating system drivers. 2These functions are driven by Oxford Semiconductor drivers. 3Setting this pin to logic 0 disables the GPIO function.
DS-0049 Mar 06 08 External—Free Release 3 Oxford Semiconductor, Inc.
Figure 1 shows the OXPCIe840 architecture.
Figure 1 OXPCIe840 Block Diagram
PCI Express PHY Interface EEPROM EEPROM PCI Express Controller Interface PHY PCI Express Control Interface
Downstream Bridge
Upstream Bridge PCI Express Endpoint Controller
Interrupt Parallel Port Parallel Controller Controller Port Interface
Power Management
Configuration & GPIO GPIO[7:0] Clock/Reset Control
4 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
OXPCIe840 Table 2 lists the OXPCIe840 pins and descriptions. Pin Descriptions
Table 2 OXPCIe840 Pin Descriptions (Sheet 1 of 4)
Pin No Type Name Description Bits
Microwire™ EEPROM (4 pins)(1)
M4 1 M_O_6 EECK EEPROM serial clock (745 kHz).
M3 1 M_O_6 EECS EEPROM chip select (active high).
N3 1 M_I_6 EEDI EEPROM data in.
N5 1 M_O_6 EEDO EEPROM data out.
GPIO (8 pins)(2)
D1, D2, D3, C2, 8 M_B_6 GPIO_[7:0] General Purpose IO. B1, A1, B2, C3
PCI Express Control (3 pins)(3)
A4 1 5_O_T nWAKE PCI Express edge connector wake (WAKE#).
B4 1 5_O_T nCLKREQ PCI Express edge connector clock request (CLKREQ#).
A3 1 5_I_S nPERST PCI Express edge connector reset (PERST#).
Parallel Port (18 pins)(3)
B11,A11,B10,A10, 8 5_B_8 P_DATA[7:0] Data bus B9, A9,C9,C8
C11 1 5_I nERR SPP mode => nFault (active low). Set low by the peripheral to indicate that an error has occurred.
C12 1 5_I SLCT SPP mode => Select (active high). Set high by the peripheral to indicate that the peripheral is online.
C13 1 5_I BUSY SPP mode => Busy (active high). Driven high by the peripheral to indicate that he peripheral is not ready to receive data. EPP mode => nWait (active low). Driven inactive as a positive acknowledgment from the peripheral that transfer of data or address is completed. It should be driven active as an indication that the device is ready for the next address or data transfer.
B12 1 5_I PE SPP mode => PError (active high). Driven high by the peripheral to indicate that the peripheral has encountered an error in its paper path.
DS-0049 Mar 06 08 External—Free Release 5 Oxford Semiconductor, Inc.
Table 2 OXPCIe840 Pin Descriptions (Sheet 2 of 4)
Pin No Type Name Description Bits
A12 1 5_I nACK SPP mode => nAck. Pulsed low by the peripheral to acknowledge transfer of the data byte from the host. EPP mode => Intr (active low). Pulsed low by the peripheral to interrupt the host.
B8 1 5_O_8_T nINIT SPP mode => nInit (active low). Pulsed low in conjunction with IEEE 1284 Active low to reset the interface and force a return to Compatibility Mode idle phase. 5_O_8 EPP mode => nInit (active low). When driven low this signal initiates a termination cycle that results in the interface returning to Compatibility Mode.
B7 1 5_O_8_T nAFD SPP mode => nAutoFd (active low). Set low by the host to put printer into auto line feed mode. 5_O_8 EPP mode => nDStrb (active low). Used to denote a data cycle.
A8 1 5_O_8_T nSTB SPP mode => nStrobe (active low). Set active low to transfer data into the input latch of the peripheral. Data is valid while nStrobe is low. 5_O_8 EPP mode => nWrite (active low). Set low to denote an address or data write operation to the peripheral. Set high to denote an address or data read operation from the peripheral.
C6 1 5_O_8_T nSLIN SPP mode => nSelectIn (active low). Set low by host to select peripheral. 5_O_8 EPP mode => nAStrb (active low). Used to denote an address cycle.
A7 1 5_O_8 DIR Line driver bidirectional control. Logic ‘1’ => data is output. Logic ‘0’ => data is input.
PCI Express PHY (8 pins)
K1 1 O TX_P High speed differential transmit line.
K2 1 O TX_N High speed differential transmit line.
H1 1 I RX_P High speed differential receive line.
H2 1 I RX_N High speed differential receive line.
F1 1 I REFCLK_P Differential reference clock input.
F2 1 I REFCLK_N Differential reference clock input.
G3 1 A REXT Reference resistor connection. 191Ω 1% 100ppm/deg C precision resistor to ground.
M2 1 A PCIe_TEST PCI Express PHY test pin (active high). Should be tied to VSS for normal operation.
6 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
Table 2 OXPCIe840 Pin Descriptions (Sheet 3 of 4)
Pin No Type Name Description Bits
Integrated 3.3V -> 1.2V PMU (5 pins)
D12 1 3_I SHUTDOWN PMU shutdown pin (active high). Should be tied to VSS for normal operation.
D11 1 5_O_8 POWERGOOD PMU 1.2V output supply status good flag (active high).
G13,G12 2 O VOUT PMU buck 1.2V switch output.
E13 1 I FB Feedback signal for PMU comparator.
MISC (3 pins)
B6 1 5_I TEST(3) OXPCIe840 test pin (active high). Should be tied to VSS for normal operation.
N6 1 M_I GPIO_EN(1) GPIO enable pin (active high)
B3 1 5_I_S nPOWER_RST(3) Power on reset input. See section “Resets” on page 12 for timing of this signal.
Unused (16 pins)
H12, J12, J13, K12, No connection L11, L12, L13, M8, M9, M10, M11, M13, N9, N10, N11, N12,
Power and Ground (55 pins)
E2, J3 2 P VP_1V2 PCI Express PHY 1.2V power supply.
E1, K3 2 P VP_3V3 PCI Express PHY 3.3V power supply.
G1, G2, J1 3 P GND PCI Express PHY ground.
E11 1 P VINQ PMU quiet supply for switcher.
F13, F12 2 P VIN[1:0] PMU supply for DC-DC.
E12 1 P VSSQ_D PMU digital ground for switcher.
D13 1 P VSSQ_A PMU analogue ground for switcher.
B13, C7, A2 3 P VDDIO0 IO power supply for 3V (5V tolerant) interface (parallel port, mode, config)
C1 1 P VDDIO1 IO power supply for GPIO interface (1.8V, 2.5V or 3.3V)
N2, N4, N8, M12, 5 P VDDIO2 Common IO power supply for EEPROM interface and K13, GPIO_EN (1.8V, 2.5V or 3.3V)
C4, C10, H11, K11, 8 P VDDCORE Core power supply (1.2V) L4, L6, L8, L10
DS-0049 Mar 06 08 External—Free Release 7 Oxford Semiconductor, Inc.
Table 2 OXPCIe840 Pin Descriptions (Sheet 4 of 4)
Pin No Type Name Description Bits
A5, A6, B5, A13, C5, 17 P VSS Digital I/O and core ground F3, F11, G11, H3, J2, J11, L1, L2, L3, L5, L7, L9, M6, N1, N7, N13
E3, M1, M5, M7, H13 5 P VGG 3.3V reference for Multi-voltage IO
Notes: 1 Powered by multi voltage power supply VDDIO2 2 Powered by multi voltage power supply VDDIO1 3 Powered by 3.3V power supply VDDIO0 4Type Key: format is [(W_)X(Y)(_Z(A))] where the following conventions apply:
W-Tolerance(1) X-Type Y -Pull Z-Drive(2) A-Other
5 5V I Input U Pull up 4 4mA T Tristate
3 3.3V O Output D Pull down 6 6mA Normal
2 2.5V B Bidirectional None 8 8mA S Schmitt
M Multivoltage: A Analogue @ 1.8V is 2.5V tolerant. @2.5V is 3.3V tolerant.
P Power
Notes: 1When parameter W value is M, denotes multi‐voltage cell. The power group can be set to 1.8, 2.5 or 3.3V. 2When parameter W value is M and Z is 6, output drive depends on VDDIO. If 1.8V then drive value is 6mA. If 2.5V or 3.3V then output drive value is 10mA.
8 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
Configuration The register descriptions for the OXPCIe840 individual functions are located in the sections describing those interfaces later in this document. Space & Base The OXPCIe840 configuration space and base address register locations Address are described below. Registers OXPCIe840 Configuration Space
Figure 2 shows the OXPCIe840 configuration space, which is allocated for each function and is always 32 bits wide.
Figure 2 OXPCIe840 Configuration Space (Per Function)
31 16 15 0 Device ID Vendor ID 00h Not Targeted 04h Classcode Revision ID 08h Note Targeted 0Ch BAR0 10h BAR1 14h BAR2 18h 1Ch BAR[5:3] Disabled 20h 24h Not Targeted 28h Subsystem ID Subsystem Vendor ID 2Ch Not Targeted 30h 34h 38h 3Ch
Device ID
Each OXPCIe840 function provides a unique device ID, as shown in Table 3 on page 9. The device ID and subsystem device ID fields are derived from the GPIO_EN pin. The number of the target function is also incorporated.
Table 3 Device ID Field Bit 151413121110987654 3 2 1 0 Description 110000010MODE[2:0](1) UART_EN GPIO_EN function number(1) Notes: 1#1 As defined in “Device Modes” on page 3.
DS-0049 Mar 06 08 External—Free Release 9 Oxford Semiconductor, Inc.
Vendor ID
The Vendor ID defaults to 1415h. This can be set to a customer‐specific value using the Oxford Semiconductor Oxide utility.
Class Code
Each supported PCI Express function on the OXPCIe840 has a default class‐code definition, as shown in Table 4.
Table 4 Default Class Code Definition Category Class Code Parallel port 0x070102 GPIO 0x088000
Revision ID
The Revision ID defaults to 0000h. This can be set to a customer‐specific value using the Oxford Semiconductor Oxide utility.
Subsystem ID
The Subsystem ID defaults to the same value as the Device ID. This can be set to a customer‐specific value using the Oxford Semiconductor Oxide utility.
Subsystem Vendor ID
The Subsystem Vendor ID defaults to the same value as the Vendor ID. This can be set to a customer‐specific value using the Oxford Semiconductor Oxide utility.
Device Serial Number—PCI Express DSN
A 64‐bit IEEE‐EUI64 is assigned to the OXPCIe840; it can be read using the DSN capability of the configuration space in Function 0. The hexadecimal encoding is shown in Table 5 on page 10.
Table 5 Device Serial Number Bits Description Read/Write Reset EEPROM PCI Express 63:40 Reserved (Oxford Semiconductor W R 0x0030E0 organizationally unique identifier (OUI)) 39:0 Reserved W R 0x1111000000
10 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
Base Address Register Allocation
Each OXPCIe840 function has access to a unique set of base address registers (BARs).
Parallel Port BAR Allocation
The parallel port is always a PCIe legacy‐mode device. Being a legacy device, the BAR allocation is mandated by standard operating system legacy driver software. Any function with a PPORT has a BAR map as shown in Table 6.
Table 6 Parallel Port BAR Allocation BAR Type Size Target Base Address at Module 0 IO 8 0x000 (PPORT) 1 IO 4 0x008 (PPORT) 2 to 5 n/a 0 n/a
GPIO BAR Allocation
When the GPIO is enabled, its allocated function has access to two BARs as follows:
GPIO accesses a 1‐Kbyte memory space accessed via BAR 0 BAR 1 is used to support EEPROM programming via the Oxford Semiconductor Oxide utility
Table 7 shows the GPIO BAR allocation.
Table 7 GPIO BAR Allocation BAR Type Size Target Base Address at Module 0 MEM 1K 0x000 GPIO 1 MEM 2M ALL visible Modules & MSI-X (Used for EEPROM) 2 to 5 n/a 0 n/a Note: 1See Table 11 for full details on register mapping
DS-0049 Mar 06 08 External—Free Release 11 Oxford Semiconductor, Inc.
System This section gives an overall view of the OXPCIe840. Subsequent sections Overview deal with the OXPCIe840 external interfaces. OXPCIe840 Clocking and Reset Scheme
Clock Sources
The 100‐MHz clock supplied via the PCI Express edge connector is the only external clock source for the OXPCIe840. The internal system clock, supplied by the PCI express PHY PLL, is carefully managed within the device. A number of techniques are used to ensure a low internal clock toggle rate, which contributes to the low overall power consumption of the device.
The system clock is dynamically replaced by a very low frequency, internally generated, standby clock, which the device uses when the
device goes into D3COLD (as defined in the PCI Bus Power Management
Interface Specification 1.2). On exiting D3COLD the low frequency clock is seamlessly replaced by the PCI Express PHY PLL generated clock.
Resets
The PCI Express power management system requires the use of sticky registers, which are not cleared on receiving the external reset‐pulse from the PCI Express edge connector nPERST. They maintain their context while the auxiliary PCI Express power supply, 3v3aux, is present.
The sticky registers, however, must be initialized at power‐up time to their default values, as specified by the PCI Express 1.1 standard, for which the OXPCIe840 PCI Express core provides two reset domains. This requires an additional power‐on reset signal, nPOWER_RST, which is used to signal the initial device power‐up. In addition, nPOWER_RST gates the nPERST signal, so that the whole device remains fully in reset until the power‐on reset has finished.
Personality Application
The OXPCIe840 personality is specified by a combination of the GPIO enable (GPIO_EN) pin and the contents of the external configuration EEPROM.
At power up, the OXPCIe840 performs a two‐pass personality assignment. In the first pass the I/O pins are interrogated for configuration information, the device is put into the appropriate functional mode and the required functions are made available. The second pass involves reading the EEPROM and transferring the information contained in it to appropriate device registers.
12 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
The EEPROM is organized into five separate zones, each dedicated to enabling parameter customization of a specific part of the OXPCIe840, as shown in Table 8.
Table 8 OXPCIe840 EEPROM Zones EEPROM Zone OXPCIe840 Function Access Zone 0 EEPROM Content Description Zone 1 PCI Express configuration space & PHY access Zone 2 Not used Zone 3 Parallel port Zone 4 GPIO Zone 5 Not used Take care when modifying the default configuration of the PCI Express registers—incorrect settings may make the device inaccessible to the host system.
Interrupt Management
The OXPCIe840 fully supports MSI. The MSI capability is as defined in the PCI Local Bus Specification, Revision 3.0.
The OXPCIe840 is capable of generating both level‐ and edge‐triggered interrupt messaging. By default the legacy PCI‐based INTx level sensitive wired OR interrupt emulation is the main mechanism for sending interrupts from the device to the host system. Newer operating systems, such as Windows Vista and Linux 2.6 support MSI as the native interrupt mechanism of PCI Express, which is specified in the PCI standard but is not supported by older operating systems including Windows XP. The OXPCIe840 supports both styles of interrupts.
Table 9 shows which interrupt type is supported by specific OXPCIe840 functions.
Table 9 Interrupt Types Per Function Mapping Legacy INT_x Support MSI—Single Vector MSI-X PPORT legacy mode yes yes no GPIO native mode yes yes no
Each function has full MSI capability as mandated by the PCI Express specification.
The global registers supporting GPIO interrupts are shown in Table 14.
DS-0049 Mar 06 08 External—Free Release 13 Oxford Semiconductor, Inc.
PCI Express Interface
The OXPCIe840 provides a fully‐featured X1 (single‐lane) PCI EXPRESS interface which is fully compliant with both the PCI EXPRESS Base Specification, Revision 1.1 and the PCI Bus Power Management Interface Specification, Revision 1.2.
Power Management
The OXPCIe840 includes the complete PCI Express Power management capabilities as defined in the PCI Bus Power Management Interface Specification, Revision. 1.2, including full support for D0 and D3 device states and PME message support.
Power Supply Management
All OXPCIe840 power supply requirements can be met from a single 3.3‐ V power source, which is typically provided by the PCI Express edge connector.
The GPIO interface can be configured to operate at 1.8V, 2.5V or 3.3V by connecting the power supply pins associated with the appropriate functional pin grouping to the required interface voltage. In cases other than 3.3V, the system designer must ensure that a suitable voltage source is available.
The OXPCIe840 low‐power 1.2V internal core is supplied via the integral power supply system, PMU, which provides high efficiency energy conversion from 3.3V to 1.2V.
It is recommended that sequencing of the multi‐voltage IO power supplies should be performed. For power up, after the core voltage is stable (flagged by the POWER_GOOD pin) the IO supplies must be sequenced with the lowest supply (1.8V) first to the highest supply last (3.3V). Once all supplies are stable the power on reset (nPOWER_RST) pin can be de‐asserted to allow start of operation for the OXPCIe840. This sequencing (with timing) is given in Figure 3 on page 15.
14 External—Free Release DS-0049 Mar 06 08 Oxford Semiconductor, Inc.
Figure 3 Power-up Sequence
3.3 V (Main)
VDDCORE (1.2 V)
POWER_GOOD
MV-VDDIO (1.8 V)
MV-VDDIO (2.5 V)
MV-VDDIO (3.3 V)
nPOWER_RST
2ms 1ms 1ms 1ms 1ms (min) (min) (min) (min ) (min)
50ms (max)