Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products
or to discontinue any product or service without notice, and advise customers to obtain the latest
version of relevant information to verify , before placing orders, that information being relied on
is current and complete. All products are sold subject to the terms and conditions of sale supplied
at the time of order acknowledgement, including those pertaining to warranty, patent
infringement, and limitation of liability.
TI warrants performance of its semiconductor products to the specifications applicable at the
time of sale in accordance with TI’s standard warranty. Testing and other quality control
techniques are utilized to the extent TI deems necessary to support this warranty . Specific testing
of all parameters of each device is not necessarily performed, except those mandated by
government requirements.
CERTAIN APPLICATIONS USING SEMICONDUCTOR PRODUCTS MAY INVOLVE
POTENTIAL RISKS OF DEATH, PERSONAL INJURY, OR SEVERE PROPERTY OR
ENVIRONMENTAL DAMAGE (“CRITICAL APPLICATIONS”). TI SEMICONDUCTOR
PRODUCTS ARE NOT DESIGNED, AUTHORIZED, OR WARRANTED TO BE SUIT ABLE FOR
USE IN LIFE-SUPPORT DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS.
INCLUSION OF TI PRODUCTS IN SUCH APPLICATIONS IS UNDERSTOOD TO BE FULLY
AT THE CUSTOMER’S RISK.
In order to minimize risks associated with the customer’s applications, adequate design and
operating safeguards must be provided by the customer to minimize inherent or procedural
hazards.
TI assumes no liability for applications assistance or customer product design. TI does not
warrant or represent that any license, either express or implied, is granted under any patent right,
copyright, mask work right, or other intellectual property right of TI covering or relating to any
combination, machine, or process in which such semiconductor products or services might be
or are used. TI’s publication of information regarding any third party’s products or services does
not constitute TI’s approval, warranty or endorsement thereof.
The TI PCI1420, the industry’s first 208-pin controller to meet the
for PCI to CardBus Bridges
sockets compliant with the
bridging between PCI and PC Cards in both notebook and desktop computers. The
the 16-bit PC Card specification defined in
capable of full 32-bit data transfers at 33 MHz. The PCI1420 supports any combination of 16-bit and CardBus PC
Cards in the two sockets, powered at 5 V or 3.3 V, as required.
The PCI1420 is compliant with the
device or a PCI slave device. The PCI bus mastering is initiated during 16-bit PC Card DMA transfers or CardBus
PC Card bridging transactions. The PCI1420 is also compliant with the latest
Specification
All card signals are internally buffered to allow hot insertion and removal without external buffering. The PCI1420 is
register compatible with the Intel 82365SL-DF and 82365SL ExCA controllers. The PCI1420 internal data path logic
allows the host to access 8-, 16-, and 32-bit cards using full 32-bit PCI cycles for maximum performance. Independent
buffering and a pipeline architecture provide an unsurpassed performance level with sustained bursting. The
PCI1420 can also be programmed to accept fast posted writes to improve system-bus utilization.
Multiple system-interrupt signaling options are provided, including: parallel PCI, parallel ISA, serialized ISA, and
serialized PCI. Furthermore, general-purpose inputs and outputs are provided for the board designer to implement
sideband functions. Many other features designed into the PCI1420, such as socket activity light-emitting diode (LED)
outputs, are discussed in detail throughout the design specification.
An advanced complementary metal-oxide semiconductor (CMOS) process achieves low system power consumption
while operating at PCI clock rates up to 33 MHz. Several low-power modes enable the host power management
system to further reduce power consumption.
.
, is a high-performance PCI-to-CardBus controller that supports two independent card
1997 PC Card Standard
. The PCI1420 provides features that make it the best choice for
PCI Local Bus Specification
PCI Local Bus Specification
PCI Bus Power Management Interface Specification
1997 PC Card Standard
and defines the new 32-bit PC Card, CardBus,
, and its PCI interface can act as either a PCI master
retains
PCI Bus Power Management Interface
1.2Features
The PCI1420 supports the following features:
•Fully compatible with the Intel 430TX (Mobile Triton II) chipset
Table 2–1 and Table 2–2 show the terminal assignments for the CardBus PC Card; Table 2–3 and Table 2–4 show
SIGNAL NAME
SIGNAL NAME
SIGNAL NAME
SIGNAL NAME
the terminal assignments for the 16-bit PC Card. Table 2–1 and Table 2–3 show the CardBus PC Card and the 16-bit
PC Card terminals sorted alphanumerically by the associated GHK package terminal number. Table 2–2 and
Table 2–4 show the CardBus PC Card and the 16-bit PC Card terminals sorted alphanumerically by the signal name
and its associated terminal numbers. Pin E5 is a no connection identification ball.
Table 2–1. CardBus PC Card Signal Names by GHK/PDV Pin Number
The terminals are grouped in tables by functionality, such as PCI system function, power-supply function, etc. The
terminal numbers are also listed for convenient reference.
Table 2–5. Power Supply
TERMINAL
DESCRIPTION
GND
V
V
CCA
V
CCB
V
CCI
V
CCP
CC
NO.
PDVGHK
13, 22, 44, 75,
96, 129, 153,
167, 181, 194,
207
7, 31, 64, 86,
113, 143, 164,
187, 201
B10, C5, E8,
E18, F12, G2,
J5, K18, P2,
P9, V14
B14, C9, E7,
F3, G19, L3,
N15, U7, W12
Device ground terminals
Power supply terminal for core logic (3.3 V)
120M17Clamp voltage for PC Card A interface. Matches Card A signaling environment, 5 V or 3.3 V.
38M5Clamp voltage for PC Card B interface. Matches Card B signaling environment, 5 V or 3.3 V.
148F18Clamp voltage for interrupt subsystem interface and miscellaneous I/O, 5 V or 3.3 V
1, 178D1, E11Clamp voltage for PCI signaling, 5 V or 3.3 V
TERMINAL
NO.
I/ODESCRIPTION
PDV GHK
CLOCK151E19I/O
DATA152F14O
LATCH150F17O
Table 2–6. PC Card Power Switch
Power switch clock. Information on the DAT A line is sampled at the rising edge of CLOCK. CLOCK defaults
to an input, but can be changed to a PCI1420 output by using bit 27 (P2CCLK) in the system control register
(see Section 4.29). The TPS2206 defines the maximum frequency of this signal to be 2 MHz.
If a system design defines this terminal as an output, then this terminal requires an external pulldown
resistor. The frequency of the PCI1420 output CLOCK is derived from dividing the PCI CLK by 36.
Power switch data. DATA is used to serially communicate socket power control information to the power
switch.
Power switch latch. LATCH is asserted by the PCI1420 to indicate to the power switch that the data on the
DATA line is valid. When a pulldown resistor is implemented on this terminal, the MFUNC1 and MFUNC4
terminals provide the serial EEPROM SDA and SCL interface.
2–8
TERMINAL
NAME
NO.
PDV GHK
GRST175A11I
PCLK180A10I
PRST
166A14I
Table 2–7. PCI System
I/ODESCRIPTION
Global reset. When the global reset is asserted, the GRST signal causes the PCI1420 to place all output
buffers in a high-impedance state and reset all internal registers. When GRST
completely in its default state. For systems that require wake-up from D3, GRST
only during initial boot. PRST
transitioning from D3 to D0. For systems that do not require wake-up from D3, GRST
When the SUSPEND
preserved. All outputs are placed in a high-impedance state, but the contents of the registers are preserved.
PCI bus clock. PCLK provides timing for all transactions on the PCI bus. All PCI signals are sampled at the
rising edge of PCLK.
PCI reset. When the PCI bus reset is asserted, PRST causes the PCI1420 to place all output buffers in a
high-impedance state and reset internal registers. When PRST
nonfunctional. After PRST
When the SUSPEND
preserved. All outputs are placed in a high-impedance state, but the contents of the registers are preserved.
should be asserted following initial boot so that PME context is retained when
mode is enabled, the device is protected from the GRST , and the internal registers are
is asserted, the device is completely
is deasserted, the PCI1420 is in a default state.
mode is enabled, the device is protected from the PRST , and the internal registers are
PCI address/data bus. These signals make up the multiplexed PCI address and data bus on the primary
interface. During the address phase of a primary bus PCI cycle, AD31–AD0 contain a 32-bit address or other
I/O
destination information. During the data phase, AD31–AD0 contain data.
PCI bus commands and byte enables. These signals are multiplexed on the same PCI terminals. During
the address phase of a primary bus PCI cycle, C/BE3
phase, this 4-bit bus is used as byte enables. The byte enables determine which byte paths of the full 32-bit
I/O
data bus carry meaningful data. C/BE0
C/BE2
applies to byte 2 (AD23–AD16), and C/BE3 applies to byte 3 (AD31–AD24).
PCI bus parity. In all PCI bus read and write cycles, the PCI1420 calculates even parity across the
AD31–AD0 and C/BE3
indicator with a one-PCLK delay. As a target during PCI cycles, the calculated parity is compared to the
initiator’s parity indicator. A compare error results in the assertion of a parity error (PERR
–C/BE0 buses. As an initiator during PCI cycles, the PCI1420 outputs this parity
applies to byte 0 (AD7–AD0), C/BE1 applies to byte 1 (AD15–AD8),
–C/BE0 define the bus command. During the data
).
2–10
TERMINAL
NAME
NO.
PDV GHK
DEVSEL
FRAME
GNT
IDSEL182C10I
IRDY
PERR
REQ
SERR
STOP
TRDY
197C7I/O
193F8I/O
168C13I
195A7I/O
199A6I/O
169B13OPCI bus request. REQ is asserted by the PCI1420 to request access to the PCI bus as an initiator.
200B6O
198F7I/O
196B7I/O
Table 2–9. PCI Interface Control
I/ODESCRIPTION
PCI device select. The PCI1420 asserts DEVSEL to claim a PCI cycle as the target device. As a PCI initiator
on the bus, the PCI1420 monitors DEVSEL
occurs, then the PCI1420 terminates the cycle with an initiator abort.
PCI cycle frame. FRAME is driven by the initiator of a bus cycle. FRAME is asserted to indicate that a bus
transaction is beginning, and data transfers continue while this signal is asserted. When FRAME
deasserted, the PCI bus transaction is in the final data phase.
PCI bus grant. GNT is driven by the PCI bus arbiter to grant the PCI1420 access to the PCI bus after the
current data transaction has completed. GNT
bus parking algorithm.
Initialization device select. IDSEL selects the PCI1420 during configuration space accesses. IDSEL can be
connected to one of the upper 24 PCI address lines on the PCI bus.
PCI initiator ready. IRDY indicates the PCI bus initiator’s ability to complete the current data phase of the
transaction. A data phase is completed on a rising edge of PCLK where both IRDY
Until IRDY
PCI parity error indicator. PERR is driven by a PCI device to indicate that calculated parity does not match
PAR when PERR
PCI system error. SERR is an output that is pulsed from the PCI1420 when enabled through bit 8 of the
command register (see Section 4.4) indicating a system error has occurred. The PCI1420 need not be the
target of the PCI cycle to assert this signal. When SERR
pulses, indicating that an address parity error has occurred on a CardBus interface.
PCI cycle stop signal. STOP is driven by a PCI target to request the initiator to stop the current PCI bus
transaction. STOP
support burst data transfers.
PCI target ready. TRDY indicates the primary bus target’s ability to complete the current data phase of the
transaction. A data phase is completed on a rising edge of PCLK when both IRDY
Until both IRDY
and TRDY are both sampled asserted, wait states are inserted.
is enabled through bit 6 of the command register (see Section 4.4).
is used for target disconnects and is commonly asserted by target devices that do not
and TRDY are asserted, wait states are inserted.
until a target responds. If no target responds before timeout
may or may not follow a PCI bus request, depending on the PCI
and TRDY are asserted.
is enabled in the command register, this signal also
and TRDY are asserted.
is
2–11
TERMINAL
NAME
NO.
PDV GHK
MFUNC0154F15I/O
MFUNC1155E17I/O
MFUNC2157A16I/O
MFUNC3158C15I/O
MFUNC4159E14I/O
MFUNC5160F13I/O
MFUNC6161B15I/O
RI_OUT/PME163C14O
SPKROUT
SUSPEND156D19I
149G15O
Table 2–10. Multifunction and Miscellaneous Pins
I/ODESCRIPTION
Multifunction terminal 0. MFUNC0 can be configured as parallel PCI interrupt INT A, GPI0, GPO0, socket
activity LED output, ZV switching outputs, CardBus audio PWM, GPE
Section 4.30,
Multifunction terminal 1. MFUNC1 can be configured as parallel PCI interrupt INTB, GPI1, GPO1, socket
activity LED output, ZV switching outputs, CardBus audio PWM, GPE
Section 4.30,
Serial data (SDA). When LATCH is detected low after a PCI reset, the MFUNC1 terminal provides the
SDA signaling for the serial bus interface. The two-pin serial interface loads the subsystem identification
and other register defaults from an EEPROM after a PCI reset. See Section 3.6.1,
Implementation
Multifunction terminal 2. MFUNC2 can be configured as PC/PCI DMA request, GPI2, GPO2, socket
activity LED output, ZV switching outputs, CardBus audio PWM, GPE
Section 4.30,
Multifunction terminal 3. MFUNC3 can be configured as a parallel IRQ or the serialized interrupt signal
IRQSER. See Section 4.30,
Multifunction terminal 4. MFUNC4 can be configured as PCI LOCK, GPI3, GPO3, socket activity LED
output, ZV switching outputs, CardBus audio PWM, GPE
Multifunction Routing Register
Serial clock (SCL). When LATCH is detected low after a PCI reset, the MFUNC4 terminal provides the
SCL signaling for the serial bus interface. The two-pin serial interface loads the subsystem identification
and other register defaults from an EEPROM after a PCI reset. See Section 3.6.1,
Implementation
Multifunction terminal 5. MFUNC5 can be configured as PC/PCI DMA grant, GPI4, GPO4, socket activity
LED output, ZV switching outputs, CardBus audio PWM, GPE
Multifunction Routing Register
Multifunction terminal 6. MFUNC6 can be configured as a PCI CLKRUN or a parallel IRQ. See
Section 4.30,
Ring indicate out and power management event output. T erminal provides an output for ring-indicate or
PME
signals.
Speaker output. SPKROUT is the output to the host system that can carry SPKR or CAUDIO through
the PCI1420 from the PC Card interface. SPKROUT is driven as the exclusive-OR combination of card
SPKR
Suspend. SUSPEND protects the internal registers from clearing when the GRST or PRST signal is
asserted. See Section 3.8.4,
Multifunction Routing Register
Multifunction Routing Register
, for details on other serial bus applications.
Multifunction Routing Register
, for details on other serial bus applications.
Multifunction Routing Register
//CAUDIO inputs.
, for configuration details.
, for configuration details.
, for configuration details.
Multifunction Routing Register
, for configuration details.
, for configuration details.
, for configuration details.
Suspend Mode
, for details.
, RI_OUT , or a parallel IRQ. See Section 4.30,
, for configuration details.
, or a parallel IRQ. See Section 4.30,
, or a parallel IRQ. See
, or a parallel IRQ. See
Serial Bus Interface
, RI_OUT, or a parallel IRQ. See
Serial Bus Interface
2–12
Table 2–11. 16-Bit PC Card Address and Data (Slots A and B)
OPC Card address. 16-bit PC Card address lines. A25 is the most significant bit.
I/OPC Card data. 16-bit PC Card data lines. D15 is the most significant bit.
2–13
Table 2–12. 16-Bit PC Card Interface Control (Slots A and B)
I/O
DESCRIPTION
TERMINAL
NUMBER
NAME
PDVGHKPDVGHK
BVD1
(STSCHG
BVD2
(SPKR
CD1
CD2
CE1
CE2
INPACK127L1461R7I
IORD
IOWR
†
Terminal name for slot A is preceded with A_. For example, the full name for terminals 127 and L14 are A_INPACK.
‡
Terminal name for slot B is preceded with B_. For example, the full name for terminals 61 and R7 are B_INPACK
138H1972V9I
/RI)
137J1571W9I
)
82
140
9497P13
99W1533L5O
101V1535M2O
SLOT A
†
V11
H171674
R132830
SLOT B
‡
H3
R9
K6
L2
Battery voltage detect 1. BVD1 is generated by 16-bit memory PC Cards that
include batteries. BVD1 is used with BVD2 as an indication of the condition of the
batteries on a memory PC Card. Both BVD1 and BVD2 are high when the battery
is good. When BVD2 is low and BVD1 is high, the battery is weak and should be
replaced. When BVD1 is low, the battery is no longer serviceable and the data in
the memory PC Card is lost. See Section 5.6,
Configuration Register
Status-Change Register
status bits for this signal.
Status change. STSCHG is used to alert the system to a change in the READY,
write protect, or battery voltage dead condition of a 16-bit I/O PC Card.
Ring indicate. RI
Battery voltage detect 2. BVD2 is generated by 16-bit memory PC Cards that
include batteries. BVD2 is used with BVD1 as an indication of the condition of the
batteries on a memory PC Card. Both BVD1 and BVD2 are high when the battery
is good. When BVD2 is low and BVD1 is high, the battery is weak and should be
replaced. When BVD1 is low, the battery is no longer serviceable and the data in
the memory PC Card is lost. See Section 5.6,
Configuration Register
Status-Change Register
status bits for this signal.
Speaker. SPKR is an optional binary audio signal available only when the card and
socket have been configured for the 16-bit I/O interface. The audio signals from
cards A and B are combined by the PCI1420 and are output on SPKROUT.
DMA request. BVD2 can be used as the DMA request signal during DMA
operations to a 16-bit PC Card that supports DMA. The PC Card asserts BVD2 to
indicate a request for a DMA operation.
Card detect 1 and Card detect 2. CD1 and CD2 are internally connected to ground
on the PC Card. When a PC Card is inserted into a socket, CD1
I
low. For signal status, see
Card enable 1 and card enable 2. CE1 and CE2 enable even- and odd-numbered
address bytes. CE1
O
odd-numbered address bytes.
Input acknowledge. INPACK is asserted by the PC Card when it can respond to an
I/O read cycle at the current address.
DMA request. INPACK can be used as the DMA request signal during DMA
operations from a 16-bit PC Card that supports DMA. If it is used as a strobe, then
the PC Card asserts this signal to indicate a request for a DMA operation.
I/O read. IORD is asserted by the PCI1420 to enable 16-bit I/O PC Card data output
during host I/O read cycles.
DMA write. IORD is used as the DMA write strobe during DMA operations from a
16-bit PC Card that supports DMA. The PCI1420 asserts IORD
transfers from the PC Card to host memory.
I/O write. IOWR is driven low by the PCI1420 to strobe write data into 16-bit I/O PC
Cards during host I/O write cycles.
DMA read. IOWR is used as the DMA write strobe during DMA operations from a
16-bit PC Card that supports DMA. The PCI1420 asserts IOWR
from host memory to the PC Card.
, for enable bits. See Section 5.5,
, and Section 5.2,
is used by 16-bit modem cards to indicate a ring detection.
, for enable bits. See Section 5.5,
, and Section 5.2,
Section 5.2,
enables even-numbered address bytes, and CE2 enables
ExCA Card Status-Change-Interrupt
ExCA Interface Status Register
ExCA Card Status-Change-Interrupt
ExCA Interface Status Register
ExCA Interface Status Register
ExCA Card
, for the
ExCA Card
, for the
and CD2 are pulled
.
during DMA
during transfers
.
2–14
Table 2–12. 16-Bit PC Card Interface Control (Slots A and B) (Continued)
I/O
DESCRIPTION
TERMINAL
NUMBER
NAME
PDV GHKPDV GHK
OE98U1432L6O
READY
(IREQ
REG
RESET124L1858W5OPC Card reset. RESET forces a hard reset to a 16-bit PC Card.
WAIT
WE110R1946P3O
WP
(IOIS16
VS1
VS2
†
Terminal name for slot A is preceded with A_. For example, the full name for terminals 110 and R19 are A_WE.
‡
Terminal name for slot B is preceded with B_. For example, the full name for terminals 46 and P3 are B_WE
135J1769V8I
)
130K1763P8O
136J1470W8I
139H1873U9I
)
134
122
†
SLOT A
J18
M196856U8P7
SLOT B
‡
Output enable. OE is driven low by the PCI1420 to enable 16-bit memory PC Card data
output during host memory read cycles.
DMA terminal count. OE is used as terminal count (TC) during DMA operations to a 16-bit
PC Card that supports DMA. The PCI1420 asserts OE
operation.
Ready. The ready function is provided by READY when the 16-bit PC Card and the host
socket are configured for the memory-only interface. READY is driven low by the 16-bit
memory PC Cards to indicate that the memory card circuits are busy processing a previous
write command. READY is driven high when the 16-bit memory PC Card is ready to accept
a new data transfer command.
Interrupt request. IREQ
device on the 16-bit I /O PC Card requires service by the host software. IREQ
(deasserted) when no interrupt is requested.
Attribute memory select. REG remains high for all common memory accesses. When REG
is asserted, access is limited to attribute memory (OE or WE active) and to the I/O space
(IORD
or IOWR active). Attribute memory is a separately accessed section of card memory
and is generally used to record card capacity and other configuration and attribute
information.
DMA acknowledge. REG
to a 16-bit PC Card that supports DMA. The PCI1420 asserts REG
operation. REG
strobes to transfer data.
Bus cycle wait. WAIT is driven by a 16-bit PC Card to extend the completion of the memory
or I/O cycle in progress.
Write enable. WE is used to strobe memory write data into 16-bit memory PC Cards. WE
is also used for memory PC Cards that employ programmable memory technologies.
DMA terminal count. WE
supports DMA. The PCI1420 asserts WE
Write protect. WP applies to 16-bit memory PC Cards. WP reflects the status of the
write-protect switch on 16-bit memory PC Cards. For 16-bit I/O cards, WP is used for the
16-bit port (IOIS16
I/O is 16 bits. IOIS16
when the address on the bus corresponds to an address to which the 16-bit PC Card
responds, and the I/O port that is addressed is capable of 16-bit accesses.
DMA request. WP can be used as the DMA request signal during DMA operations to a 16-bit
PC Card that supports DMA. If used, then the PC Card asserts WP to indicate a request for
a DMA operation.
Voltage sense 1 and voltage sense 2. VS1 and VS2, when used in conjunction with each
I/O
other, determine the operating voltage of the PC Card.
is asserted by a 16-bit I/O PC Card to indicate to the host that a
is used as a DMA acknowledge (DACK) during DMA operations
is used in conjunction with the DMA read (IOWR) or DMA write (IORD)
is used as TC during DMA operations to a 16-bit PC Card that
to indicate TC for a DMA read operation.
) function.
applies to 16-bit I/O PC Cards. IOIS16 is asserted by the 16-bit PC Card
to indicate TC for a DMA write
is high
to indicate a DMA
.
2–15
Table 2–13. CardBus PC Card Interface System (Slots A and B)
I/O
DESCRIPTION
TERMINAL
NUMBER
NAME
PDVGHKPDVGHK
CCLK112P1848P6O
CCLKRUN
CRST
†
Terminal name for slot A is preceded with A_. For example, the full name for terminals 112 and P18 are A_CCLK.
‡
Terminal name for slot B is preceded with B_. For example, the full name for terminals 48 and P6 are B_CCLK.
139H1873U9O
124L1858W5I/O
SLOT A
†
SLOT B
‡
CardBus clock. CCLK provides synchronous timing for all transactions on the
CardBus interface. All signals except CRST
CCD2
, CCD1, CVS2, and CVS1 are sampled on the rising edge of CCLK, and all
timing parameters are defined with the rising edge of this signal. CCLK operates at
the PCI bus clock frequency, but it can be stopped in the low state or slowed down
for power savings.
CardBus clock run. CCLKRUN is used by a CardBus PC Card to request an increase
in the CCLK frequency, and by the PCI1420 to indicate that the CCLK frequency is
going to be decreased.
CardBus reset. CRST brings CardBus PC Card-specific registers, sequencers, and
signals to a known state. When CRST
placed in a high-impedance state, and the PCI1420 drives these signals to a valid
logic level. Assertion can be asynchronous to CCLK, but deassertion must be
synchronous to CCLK.
, CCLKRUN, CINT , CSTSCHG, CAUDIO,
is asserted, all CardBus PC Card signals are
2–16
Table 2–14. CardBus PC Card Address and Data (Slots A and B)
CardBus address and data. These signals make up the multiplexed CardBus address
and data bus on the CardBus interface. During the address phase of a CardBus cycle,
I/O
CAD31–CAD0 contain a 32-bit address. During the data phase of a CardBus cycle,
CAD31–CAD0 contain data. CAD31 is the most significant bit.
CardBus bus commands and byte enables. CC/BE3–CC/BE0 are multiplexed on the
same CardBus terminals. During the address phase of a CardBus cycle,
CC/BE3
–CC/BE0 define the bus command. During the data phase, this 4-bit bus is used
as byte enables. The byte enables determine which byte paths of the full 32-bit data bus
CardBus parity. In all CardBus read and write cycles, the PCI1420 calculates even parity
across the CAD and CC/BE
outputs CP AR with a one-CCLK delay. As a target during CardBus cycles, the calculated
parity is compared to the initiator’s parity indicator; a compare error results in a parity
error assertion.
applies to byte 0 (CAD7–CAD0), CC/BE1 applies to
applies to byte 2 (CAD23–CAD8), and CC/BE3 applies
buses. As an initiator during CardBus cycles, the PCI1420
2–17
Table 2–15. CardBus PC Card Interface Control (Slots A and B)
I/O
DESCRIPTION
I
ith CVS1
CVS2 to identif
I/O
i
ith CCD1
CCD2 to identif
TERMINAL
NUMBER
NAME
PDVGHKPDVGHK
CAUDIO137J1571W9I
CBLOCK
CCD1
CCD2
CDEVSEL
CFRAME
CGNT
CINT
CIRDY
CPERR
CREQ
CSERR
CSTOP
CSTSCHG
CTRDY
CVS1134J1868U8
CVS2122M1956P7
†
Terminal name for slot A is preceded with A_. For example, the full name for terminals 137 and J15 are A_CAUDIO.
‡
Terminal name for slot B is preceded with B_. For example, the full name for terminals 71 and W9 are B_CAUDIO.
107P1542N6I/O
82V1116H3
140H1774R9
111P1747R1I/O
116N1751R3I/O
110R1946P3I
135J1769V8I
115M1450P5I/O
108N1443P1I/O
127L1461R7I
136J1470W8I
109R1845N5I/O
138H1972V9I
114P1949R2I/O
SLOT A
†
SLOT B
‡
CardBus audio. CAUDIO is a digital input signal from a PC Card to the system
speaker. The PCI1420 supports the binary audio mode and outputs a binary signal
from the card to SPKROUT.
CardBus lock. CBLOCK is used to gain exclusive access to a target.
CardBus detect 1 and CardBus detect 2. CCD1 and CCD2 are used in conjunction
w
operating voltage and card type.
CardBus device select. The PCI1420 asserts CDEVSEL to claim a CardBus cycle as
the target device. As a CardBus initiator on the bus, the PCI1420 monitors CDEVSEL
until a target responds. If no target responds before timeout occurs, then the PCI1420
terminates the cycle with an initiator abort.
CardBus cycle frame. CFRAME is driven by the initiator of a CardBus bus cycle.
CFRAME
transfers continue while this signal is asserted. When CFRAME
CardBus bus transaction is in the final data phase.
CardBus bus grant. CGNT is driven by the PCI1420 to grant a CardBus PC Card
access to the CardBus bus after the current data transaction has been completed.
CardBus interrupt. CINT is asserted low by a CardBus PC Card to request interrupt
servicing from the host.
CardBus initiator ready. CIRDY indicates the CardBus initiator’s ability to complete
the current data phase of the transaction. A data phase is completed on a rising edge
of CCLK when both CIRDY
both sampled asserted, wait states are inserted.
CardBus parity error. CPERR reports parity errors during CardBus transactions,
except during special cycles. It is driven low by a target two clocks following that data
when a parity error is detected.
CardBus request. CREQ indicates to the arbiter that the CardBus PC Card desires
use of the CardBus bus as an initiator.
CardBus system error. CSERR reports address parity errors and other system errors
that could lead to catastrophic results. CSERR
CCLK, but deasserted by a weak pullup, and may take several CCLK periods. The
PCI1420 can report CSERR
CardBus stop. CSTOP is driven by a CardBus target to request the initiator to stop
the current CardBus transaction. CSTOP
commonly asserted by target devices that do not support burst data transfers.
CardBus status change. CSTSCHG alerts the system to a change in the card’s
status, and is used as a wake-up mechanism.
CardBus target ready. CTRDY indicates the CardBus target’ s ability to complete the
current data phase of the transaction. A data phase is completed on a rising edge of
CCLK, when both CIRDY
inserted.
CardBus voltage sense 1 and CardBus voltage sense 2. CVS1 and CVS2 are used
n conjunction w
to determine the operating voltage and card type.
and
is asserted to indicate that a bus transaction is beginning, and data
y card insertion and interrogate cards to determine the
and CTRDY are asserted. Until CIRDY and CTRDY are
is driven by the card synchronous to
to the system by assertion of SERR on the PCI interface.
is used for target disconnects, and is
and CTRDY are asserted; until this time, wait states are
and
y card insertion and interrogate cards
is deasserted, the
2–18
3 Feature/Protocol Descriptions
The following sections give an overview of the PCI1420. Figure 3–1 shows a simplified block diagram of the PCI1420.
The PCI interface includes all address/data and control signals for PCI protocol. The interrupt interface includes
terminals for parallel PCI, parallel ISA, and serialized PCI and ISA signaling. Miscellaneous system interface
terminals include multifunction terminals: SUSPEND
SPKROUT.
, RI_OUT/PME (power management control signal), and
PCI Bus
Activity LED’s
TPS2206
Power
Switch
PC Card
Socket A
PC Card
Socket B
External ZV Port
NOTE: The PC Card interface is 68 pins for CardBus and 16-bit PC Cards. In zoomed video mode 23 pins are used for routing the zoomed
video signals to the VGA controller.
3
PCI1420
6868
23
23
IRQSER
3
PCI930
ZV Switch
IRQSER
Deserializer
Zoomed Video
Zoomed Video
INTA
INTB
PCI950
19
4
Interrupt
Controller
IRQ2–15
VGA
Controller
Audio
Subsystem
Figure 3–1. PCI1420 Simplified Block Diagram
3.1Power Supply Sequencing
The PCI1420 contains 3.3-V I/O buffers with 5-V tolerance requiring a core power supply and clamp voltages. The
core power supply is always 3.3 V. The clamp voltages can be either 3.3 V or 5 V, depending on the interface. The
following power-up and power-down sequences are recommended.
The power-up sequence is:
1. Apply 3.3-V power to the core.
2. Assert GRST
to the device to disable the outputs during power-up. Output drivers must be powered up in
the high-impedance state to prevent high current levels through the clamp diodes to the 5-V supply.
3. Apply the clamp voltage.
The power-down sequence is:
1. Use GRST
to switch outputs to a high-impedance state.
2. Remove the clamp voltage.
3. Remove the 3.3-V power from the core.
3–1
3.2I/O Characteristics
Figure 3–2 shows a 3-state bidirectional buffer. Section 8.2,
Recommended Operating Conditions
, provides the
electrical characteristics of the inputs and outputs.
NOTE:The PCI1420 meets the ac specifications of the
1997 PC Card Standard
and
PCI Local
Bus Specification.
V
Tied for Open Drain
OE
CCP
Pad
Figure 3–2. 3-State Bidirectional Buffer
NOTE:Unused pins (input or I/O) must be held high or low to prevent them from floating.
3.3Clamping Voltages
The clamping voltages are set to match whatever external environment the PCI1420 will be interfaced with: 3.3 V
or 5 V. The I/O sites can be pulled through a clamping diode to a voltage rail that protects the core from external
signals. The core power supply is always 3.3 V and is independent of the clamping voltages. For example, PCI
signaling can be either 3.3 V or 5 V, and the PCI1420 must reliably accommodate both voltage levels. This is
accomplished by using a 3.3-V I/O buffer that is 5-V tolerant, with the applicable clamping voltage applied. If a system
designer desires a 5-V PCI bus, then V
The PCI1420 requires four separate clamping voltages because it supports a wide range of features. The four
voltages are listed and defined in Section 8.2,
The PCI1420 is fully compliant with the
PCI master or slave operation, and may operate in either a 5-V or 3.3-V signaling environment by connecting the V
terminals to the desired voltage level. In addition to the mandatory PCI signals, the PCI1420 provides the optional
interrupt signals INTA
and INTB.
3.4.1PCI Bus Lock (LOCK)
The bus-locking protocol defined in the
the PCI1420 as an additional compatibility feature. The PCI LOCK
the multifunction routing register. See Section 4.30,
LOCK
is only supported by PCI-to-CardBus bridges in the downstream direction (away from the processor).
PCI LOCK
nonexclusive transactions can proceed to an address that is not currently locked. A grant to start a transaction on
the PCI bus does not guarantee control of LOCK
for different initiators to use the PCI bus while a single master retains ownership of LOCK
signal for this protocol is CBLOCK
An agent may need to do an exclusive operation because a critical access to memory might be broken into several
transactions, but the master wants exclusive rights to a region of memory. The granularity of the lock is defined by
PCI to be 16 bytes, aligned. The LOCK
without interfering with nonexclusive real-time data transfer, such as video.
The PCI bus arbiter may be designed to support only complete bus locks using the LOCK
the arbiter will not grant the bus to any other agent (other than the LOCK
indicates an atomic operation that may require multiple transactions to complete. When LOCK is asserted,
PCI Local Bus Specification
PCI Local Bus Specification
. The PCI1420 provides all required signals for
is not highly recommended, but is provided on
signal can be routed to the MFUNC4 terminal via
Multifunction Routing Register
; control of LOCK is obtained under its own protocol. It is possible
to avoid confusion with the bus clock.
protocol defined by the
PCI Local Bus Specification
master) while LOCK is asserted. A complete
CCP
,for details. Note that the use of
. Note that the CardBus
allows a resource lock
protocol. In this scenario,
3–2
bus lock may have a significant impact on the performance of the video. The arbiter that supports complete bus lock
must grant the bus to the cache to perform a writeback due to a snoop to a modified line when a locked operation
is in progress.
The PCI1420 supports all LOCK protocol associated with PCI-to-PCI bridges, as also defined for PCI-to-CardBus
bridges. This includes disabling write posting while a locked operation is in progress, which can solve a potential
deadlock when using devices such as PCI-to-PCI bridges. The potential deadlock can occur if a CardBus target
supports delayed transactions and blocks access to the target until it completes a delayed read. This target
characteristic is prohibited by the
LOCK
.
PCI Local Bus Specification
, and the issue is resolved by the PCI master using
3.4.2Loading Subsystem Identification
The subsystem vendor ID register (see Section 4.26) and subsystem ID register (see Section 4.27) make up a
doubleword of PCI configuration space located at offset 40h for functions 0 and 1. This doubleword register is used
for system and option card (mobile dock) identification purposes and is required by some operating systems.
Implementation of this unique identifier register is a PC 99 requirement.
The PCI1420 offers two mechanisms to load a read-only value into the subsystem registers. The first mechanism
relies upon the system BIOS providing the subsystem ID value. The default access mode to the subsystem registers
is read-only, but can be made read/write by setting bit 5 (SUBSYSRW) in the system control register (see
Section 4.29) at PCI offset 80h. Once this bit is set, the BIOS can write a subsystem identification value into the
registers at PCI offset 40h. The BIOS must clear the SUBSYSRW bit such that the subsystem vendor ID register and
subsystem ID register is limited to read-only access. This approach saves the added cost of implementing the serial
electrically erasable programmable ROM (EEPROM).
In some conditions, such as in a docking environment, the subsystem vendor ID register and subsystem ID register
must be loaded with a unique identifier via a serial EEPROM. The PCI1420 loads the data from the serial EEPROM
after a reset of the primary bus. Note that the SUSPEND
including the serial bus state machine (see Section 3.8.4,
The PCI1420 provides a two-line serial bus host controller that can interface to a serial EEPROM. See Section 3.6,
Serial Bus Interface
,for details on the two-wire serial bus controller and applications.
input gates the PCI reset from the entire PCI1420 core,
Suspend Mode
, for details on using SUSPEND).
3.5PC Card Applications
This section describes the PC Card interfaces of the PCI1420:
•Card insertion/removal and recognition
2
•P
C power-switch interface
•Zoomed video support
•Speaker and audio applications
•LED socket activity indicators
•PC Card-16 DMA support
•CardBus socket registers
3.5.1PC Card Insertion/Removal and Recognition
The
1997 PC Card Standard
procedure that the socket must initiate on card insertion into a cold, nonpowered socket. Through this interrogation,
card voltage requirements and interface (16-bit versus CardBus) are determined.
addresses the card-detection and recognition process through an interrogation
The scheme uses the card detect and voltage sense signals. The configuration of these four terminals identifies the
card type and voltage requirements of the PC Card interface. The encoding scheme is defined in the
Standard
and in Table 3–1.
1997 PC Card
3–3
Table 3–1. PC Card Card-Detect and Voltage-Sense Connections
GroundGroundOpenOpen5 V16-bit PC Card5 V
GroundGroundOpenGround5 V16-bit PC Card5 V and 3.3 V
GroundGroundGroundGround5 V16-bit PC Card5 V, 3.3 V, and X.X V
GroundGroundOpenGroundLV16-bit PC Card3.3 V
GroundConnect to CVS1OpenConnect to CCD1LVCardBus PC Card3.3 V
GroundGroundGroundGroundLV16-bit PC Card3.3 V and X.X V
Connect to CVS2GroundConnect to CCD2GroundLVCardBus PC Card3.3 V and X.X V
Connect to CVS1GroundGroundConnect to CCD2LVCardBus PC Card3.3 V, X.X V, and Y.Y V
GroundGroundGroundOpenLV16-bit PC CardY.Y V
Connect to CVS2GroundConnect to CCD2OpenLVCardBus PC CardY.Y V
GroundConnect to CVS2Connect to CCD1OpenLVCardBus PC CardX.X V and Y .Y V
Connect to CVS1GroundOpenConnect to CCD2LVCardBus PC CardY.Y V
GroundConnect to CVS1GroundConnect to CCD1Reserved
GroundConnect to CVS2Connect to CCD1GroundReserved
3.5.2P2C Power-Switch Interface (TPS2206/2216)
The PCI1420 provides a P2C (PCMCIA Peripheral Control) interface for control of the PC Card power switch. The
CLOCK, DATA, and LATCH terminals interface with the TI TPS2206/2216 dual-slot PC Card power interface
switches to provide power switch support. Figure 3–3 shows the terminal assignments of the TPS2206, and
Figure 3–4 illustrates a typical application where the PCI1420 represents the PCMCIA controller.
5 V
5 V
DATA
CLOCK
LATCH
RESET
12 V
A VPP
A VCC
A VCC
A VCC
GND
NC
RESET
3.3 V
NC – No internal connection
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
5 V
NC
NC
NC
NC
NC
12 V
BVPP
BVCC
BVCC
BVCC
NC
OC
3.3 V
3.3 V
Figure 3–3. TPS2206 Terminal Assignments
The CLOCK terminal on the PCI1420 can be an input or an output. The PCI1420 defaults the CLOCK terminal as
an input to control the serial interface and the internal state machine. Bit 27 (P2CCLK) in the system control register
(see Section 4.29) can be set by the platform BIOS to enable the PCI1420 to generate and drive the CLOCK internally
from the PCI clock. When the system design implements CLOCK as an output from the PCI1420, an external
pulldown resistor is required.
3–4
Power Supply
12 V
5 V
3.3 V
Supervisor
12 V
5 V
3.3 V
RESET
RESET
TPS2206
AVPP
AVCC
AVCC
AVCC
V
V
V
V
PP1
PP2
CC
CC
PC Card
A
PCI1420
(PCMCIA
Controller)
CLOCK
DATA
LATCH
BVPP
BVCC
BVCC
BVCC
V
V
V
V
PP1
PP2
CC
CC
PC Card
B
Figure 3–4. TPS2206 Typical Application
3.5.3Zoomed Video Support
The PCI1420 allows for the implementation of zoomed video for PC Cards. Zoomed video is supported by setting
bit 6 (ZVENABLE) in the card control register (see Section 4.32) on a per socket function basis. Setting this bit puts
PC Card 16 address lines A25–A4 of the PC Card interface in the high-impedance state. These lines can then transfer
video and audio data directly to the appropriate controller. Card address lines A3–A0 can still access PC Card CIS
registers for PC Card configuration. Figure 3–5 illustrates a PCI1420 ZV implementation.
Audio
Codec
Speakers
PCM
Audio
Input
PC Card
19
PC Card
Interface
Video
Audio
CRT
Motherboard
PCI Bus
VGA
Controller
Zoomed Video
Port
194
PCI1420
4
Figure 3–5. Zoomed Video Implementation Using PCI1420
Not shown in Figure 3–5 is the multiplexing scheme used to route either socket 0 or socket 1 ZV source to the graphics
controller. The PCI1420 provides ZVSTAT, ZVSEL0
, and ZVSEL1 signals on the multifunction terminals to switch
external bus drivers. Figure 3–6 shows an implementation for switching between three ZV streams using external
logic.
3–5
2
PCI1420
ZVSTAT
ZVSEL0
ZVSEL1
01
Figure 3–6. Zoomed Video Switching Application
Figure 3–6 illustrates an implementation using standard three-state bus drivers with active-low output enables.
ZVSEL0
is an active-low output indicating that the Socket 0 ZV mode is enabled, and ZVSEL1 is an active-low output
indicating that Socket 1 ZV is enabled. When both sockets have ZV mode enabled, the PCI1420 defaults to indicating
socket 0 enabled through ZVSEL0
; however , bit 5 (PORT_SEL) in the card control register (see Section 4.32) allows
software to select the socket ZV source priority. Table 3–2 illustrates the functionality of the ZV output signals.
Table 3–2. PC Card Card-Detect and Voltage-Sense Connections
Also shown in Figure 3–6 is a third ZV source that may be provided from a source such as a high-speed serial bus
like IEEE1394. The ZVST AT signal provides a mechanism to switch the third ZV source. ZVSTAT is an active-high
output indicating that one of the PCI1420 sockets is enabled for ZV mode. The implementation shown in Figure 3–6
can be used if PC Card ZV is prioritized over other sources.
3.5.4Ultra Zoomed Video
Ultra zoomed video is an enhancement to the PCI1420’s DMA engine and is intended to improve the 16-bit bandwidth
for MPEG I and MPEG II decoder PC Cards. This enhancement allows the PCI1420 to fetch 32 bits of data from
memory versus the 11XX/12XX 16-bit fetch capability. This enhancement allows a higher sustained throughput to
the 16-bit PC Card because the PCI1420 prefetches an extra 16 bits (32 bits total) during each PCI read transaction.
If the PCI bus becomes busy, then the PCI1420 has an extra 16 bits of data to perform back-to-back 16-bit
transactions to the PC Card before having to fetch more data. This feature is built into the DMA engine and software
is not required to enable this enhancement.
NOTE:The 11XX and 12XX series CardBus controllers have enough 16-bit bandwidth to
support MPEG II PC Card decoders. But it was decided to improve the bandwidth even more
in the 14XX series CardBus controllers.
3–6
3.5.5Internal Ring Oscillator
SIGNAL NAME
The internal ring oscillator provides an internal clock source for the PCI1420 so that neither the PCI clock nor an
external clock is required in order for the PCI1420 to power down a socket or interrogate a PC Card. This internal
oscillator operates nominally at 16 kHz and can be enabled by setting bit 27 (P2CCLK) of the system control register
(see Section 4.29) at PCI offset 80h to a 1. This function is disabled by default.
3.5.6Integrated Pullup Resistors
The
1997 PC Card Standard
configurations. Unlike the PCI1220/1225 which required external pullup resistors, the PCI1420 has integrated all of
these pullup resistors.
BVD1(STSCHG)/CSTSCHGH19138V972
requires pullup resistors on various terminals to support both CardBus and 16-bit card
SPKROUT carries the digital audio signal from the PC Card to the system. When a 16-bit PC Card is configured for
I/O mode, the BVD2 pin becomes SPKR
referred to as CAUDIO. SPKR
also can pass a single-amplitude binary waveform. The binary audio signals from the two PC Card sockets are
XOR’ed in the PCI1420 to produce SPKROUT. This output is enabled by bit 1 (SPKROUTEN) in the card control
register (see Section 4.32).
Older controllers support CAUDIO in binary or PWM mode but use the same pin (SPKROUT). Some audio chips may
not support both modes on one pin and may have a separate pin for binary and PWM. The PCI1420 implementation
includes a signal for PWM, CAUDPWM, which can be routed to a MFUNC terminal. Bit 2 (AUD2MUX) located in the
card control register is programmed on a per socket function basis to route a CardBus CAUDIO PWM terminal to
CAUDPWM. If both CardBus functions enable CAUDIO PWM routing to CAUDPWM, then socket 0 audio takes
precedence. See Section 4.30,
Figure 3–7 provides an illustration of a sample application using SPKROUT and CAUDPWM.
. This terminal is also used in CardBus binary audio applications, and is
passes a TTL level digital audio signal to the PCI1420. The CardBus CAUDIO signal
Multifunction Routing Register
, for details on configuring the MFUNC terminals.
3–7
System
Core Logic
BINARY_SPKR
Speaker
Subsystem
PWM_SPKR
PCI1420
SPKROUT
CAUDPWM
Figure 3–7. Sample Application of SPKROUT and CAUDPWM
3.5.8LED Socket Activity Indicators
The socket activity LEDs are provided to indicate when a PC Card is being accessed. The LEDA1 and LEDA2 signals
can be routed to the multifunction terminals. When configured for LED outputs, these terminals output an active high
signal to indicate socket activity. LEDA1 indicates socket 0 (card A) activity, and LEDA2 indicates socket 1 (card B)
activity. The LED_SKT output indicates socket activity to either socket 0 or socket 1. See Section 4.30,
Routing Register
,for details on configuring the multifunction terminals.
The LED signal is active high and is driven for 64-ms durations. When the LED is not being driven high, it is driven
to a low state. Either of the two circuits shown in Figure 3–8 can be implemented to provide LED signaling and it is
left for the board designer to implement the circuit that best fits the application.
The LED activity signals are valid when a card is inserted, powered, and not in reset. For PC Card-16, the LED activity
signals are pulsed when READY/IREQ
IRDY
, or CREQ are active.
is low. For CardBus cards, the LED activity signals are pulsed if CFRAME,
Current Limiting
R ≈ 500 Ω
Multifunction
PCI1420
PCI1420
Application-
Specific Delay
Current Limiting
R ≈ 500 Ω
LED
LED
Figure 3–8. Two Sample LED Circuits
As indicated, the LED signals are driven for a period of 64 ms by a counter circuit. T o avoid the possibility of the LEDs
appearing to be stuck when the PCI clock is stopped, the LED signaling is cut-off when the SUSPEND
signal is
asserted, when the PCI clock is to be stopped during the clock run protocol, or when in the D2 or D1 power state.
If any additional socket activity occurs during this counter cycle, then the counter is reset and the LED signal remains
driven. If socket activity is frequent (at least once every 64 ms), then the LED signals remain driven.
3.5.9PC Card-16 Distributed DMA Support
The PCI1420 supports a distributed DMA slave engine for 16-bit PC Card DMA support. The distributed DMA (DDMA)
slave register set provides the programmability necessary for the slave DDMA engine. The DDMA register
configuration is provided in Table 3–3.
3–8
Two socket function dependent PCI configuration header registers that are critical for DDMA are the socket DMA
Reserved
Page
Reserved
Reserved
Reserved
Reserved
Reserved
register 0 (see Section 4.35) and the socket DMA register 1 (see Section 4.36). Distributed DMA is enabled through
socket DMA register 0 and the contents of this register configure the PC Card-16 terminal (SPKR
which is used for the DMA request signal, DREQ
. The base address of the DDMA slave registers and the transfer
, IOIS16, or INP ACK)
size (bytes or words) are programmed through the socket DMA register 1. Refer to the programming model and
register descriptions for details.
Table 3–3. Distributed DMA Registers
DMA
TYPEREGISTER NAME
R
W
R
W
RN/A
WMode
RMultichannel
WMask
Master clear
Current address00h
Base address
Current count04h
Base count
N/AStatus08h
RequestCommand
N/A
BASE ADDRESS
OFFSET
0Ch
The DDMA registers contain control and status information consistent with the 8237 DMA controller; however, the
register locations are reordered and expanded in some cases. While the DDMA register definitions are identical to
those in the 8237 DMA controller of the same name, some register bits defined in the 8237 DMA controller do not
apply to distributed DMA in a PCI environment. In such cases, the PCI1420 implements these obsolete register bits
as read-only , nonfunctional bits. The reserved registers shown in T able 3–3 are implemented as read-only and return
0s when read. Write transactions to reserved registers have no effect.
The DDMA transfer is prefaced by several configuration steps that are specific to the PC Card and must be completed
after the PC Card is inserted and interrogated. These steps include setting the proper DREQ
signal assignment,
setting the data transfer width, and mapping and enabling the DDMA register set. As discussed above, this is done
through socket DMA register 0
8237 controller, and the PCI1420 awaits a DREQ
and socket DMA register 1. The DMA register set is then programmed similarly to an
assertion from the PC Card requesting a DMA transfer.
DMA writes transfer data from the PC Card-to-PCI memory addresses. The PCI1420 accepts data 8 or 16 bits at a
time, depending on the programmed data width, and then requests access to the PCI bus by asserting its REQ
signal.
Once the PCI bus is granted in an idle state, the PCI1420 initiates a PCI memory write command to the current
memory address and transfers the data in a single data phase. After terminating the PCI cycle, the PCI1420 accepts
the next byte(s) from the PC Card until the transfer count expires.
DMA reads transfer data from PCI memory addresses to the PC Card application. Upon the assertion of DREQ
PCI1420 asserts REQ
to acquire the PCI bus. Once the bus is granted in an idle state, the PCI1420 initiates a PCI
, the
memory read operation to the current memory address and accepts 8 or 16 bits of data, depending on the
programmed data width. After terminating the PCI cycle, the data is passed onto the PC Card. After terminating the
PC Card cycle, the PCI1420 requests access to the PCI bus again until the transfer count has expired.
The PCI1420 target interface acts normally during this procedure and accepts I/O reads and writes to the DDMA
registers. While a DDMA transfer is in progress and the host resets the DMA channel, the PCI1420 asserts TC and
ends the PC Card cycle(s). TC is indicated in the DMA status register (see Section 7.5). At the PC Card interface,
the PCI1420 supports demand mode transfers. The PCI1420 asserts DACK during the transfer unless DREQ
deasserted before TC. TC is mapped to the OE
PC Card terminal for DMA write operations and is mapped to WE
is
PC Card terminal for DMA read operations. The DACK signal is mapped to the PC Card REG signal in all transfers,
and the DREQ
terminal is routed to one of three options which is programmed through socket DMA register 0.
3–9
3.5.10 PC Card-16 PC/PCI DMA
DMACHANNEL
DATA WIDTH
Some chip sets provide a way for legacy I/O devices to do DMA transfers on the PCI bus. In the PC/PCI DMA protocol,
the PCI1420 acts as a PCI target device to certain DMA related I/O addresses. The PCI1420 PCREQ
signals are provided as a point-to-point connection to a chipset supporting PC/PCI DMA. The PCREQ and PCGNT
signals may be routed to the MFUNC2 and MFUNC5 terminals, respectively . See Section 4.30,
Register
,for details on configuring the multifunction terminals.
Multifunction Routing
Under the PC/PCI protocol, a PCI DMA slave device (such as the PCI1420) requests a DMA transfer on a particular
channel using a serialized protocol on PCREQ
channel through a serialized protocol on PCGNT
. The I/O DMA bus master arbitrates for the PCI bus and grants the
when it is ready for the transfer. The I/O cycle and memory cycles
are then presented on the PCI bus, which performs the DMA transfers similarly to legacy DMA master devices.
PC/PCI DMA is enabled for each PC Card-16 slot by setting bit 19 (CDREQEN) in the respective system control
register (see Section 4.29). On power up this bit is reset and the card PC/PCI DMA is disabled. Bit 3 (CDMA_EN)
of the system control register is a global enable for PC/PCI DMA, and is set at power-up and never cleared if the
PC/PCI DMA mechanism is implemented. The desired DMA channel for each PC Card-16 slot must be configured
through bits 18–16 (CDMACHAN field) in the system control register. The channels are configured as indicated in
Table 3–4.
As in distributed DMA, the PC Card terminal mapped to DREQ must be configured through socket DMA register 0
(see Section 4.35). The data transfer width is a function of channel number and the DDMA slave registers are not
used. When a DREQ
addresses listed in Table 3–5 and performs actions dependent upon the address.
When the PC/PCI DMA is used as a PC Card-16 DMA mechanism, it may not provide the performance levels of
DDMA; however, the design of a PCI target implementing PC/PCI DMA is considerably less complex. No bus master
state machine is required to support PC/PCI DMA, since the DMA control is centralized in the chipset. This DMA
scheme is often referred to as centralized DMA for this reason.
3.5.11 CardBus Socket Registers
The PCI1420 contains all registers for compatibility with the latest
the CardBus socket registers and are listed in Table 3–6.
3–10
is received from a PC Card and the channel has been granted, the PCI1420 decodes the I/O
Table 3–5. I/O Addresses Used for PC/PCI DMA
DMA I/O ADDRESSDMA CYCLE TYPETERMINAL COUNTPCI CYCLE TYPE
The PCI1420 provides a serial bus interface to load subsystem identification and select register defaults through a
serial EEPROM and to provide a PC Card power switch interface alternative to P
Power-Switch Interface (TPS2206/2216)
, for details. The PCI1420 serial bus interface is compatible with various I2C
2
C. See Section 3.5.2,
P2C
and SMBus components.
3.6.1Serial Bus Interface Implementation
The PCI1420 defaults to serial bus interface are disabled. To enable the serial interface, a pulldown resistor must
be implemented on the LATCH terminal and the appropriate pullup resistor must be implemented on the SDA and
SCL signals, that is, the MFUNC1 and MFUNC4 terminals. When the interface is detected, bit 3 (SBDETECT) in the
serial bus control and status register (see Section 4.50) is set. The SBDETECT bit is cleared by a write back of 1.
The PCI1420 implements a two-pin serial interface with one clock signal (SCL) and one data signal (SDA). When
a pulldown resistor is provided on the LATCH terminal, the SCL signal is mapped to the MFUNC4 terminal and the
SDA signal is mapped to the MFUNC1 terminal. The PCI1420 drives SCL at nearly 100 kHz during data transfers,
which is the maximum specified frequency for standard mode I
A0h. Figure 3–9 illustrates an example application implementing the two-wire serial bus.
V
CC
Serial
EEPROM
SCL
SDA
2
C. The serial EEPROM must be located at address
PCI1420
LATCH
MFUNC4
MFUNC1
Figure 3–9. Serial EEPROM Application
Some serial device applications may include PC Card power switches, ZV source switches, card ejectors, or other
devices that may enhance the user’s PC Card experience. The serial EEPROM device and PC Card power switches
are discussed in the sections that follow.
3.6.2Serial Bus Interface Protocol
The SCL and SDA signals are bidirectional, open-drain signals and require pullup resistors as shown in Figure 3–9.
The PCI1420 supports up to 100 Kb/s data transfer rate and is compatible with standard mode I
addressing.
2
C using 7-bit
3–11
All data transfers are initiated by the serial bus master. The beginning of a data transfer is indicated by a start
condition, which is signalled when the SDA line transitions to low state while SCL is in the high state, as illustrated
in Figure 3–10. The end of a requested data transfer is indicated by a stop condition, which is signalled by a
low-to-high transition of SDA while SCL is in the high state, as shown in Figure 3–10. Data on SDA must remain stable
during the high state of the SCL signal, as changes on the SDA signal during the high state of SCL are interpreted
as control signals, that is, a start or a stop condition.
SDA
SCL
Start
Condition
Stop
Condition
Change of
Data Allowed
Data Line Stable,
Data Valid
Figure 3–10. Serial Bus Start/Stop Conditions and Bit Transfers
Data is transferred serially in 8-bit bytes. The number of bytes that may be transmitted during a data transfer is
unlimited, however, each byte must be completed with an acknowledge bit. An acknowledge (ACK) is indicated by
the receiver pulling the SDA signal low so that it remains low during the high state of the SCL signal. Figure 3–11
illustrates the acknowledge protocol.
SCL From
Master
SDA Output
By Transmitter
SDA Output
By Receiver
123789
Figure 3–11. Serial Bus Protocol Acknowledge
The PCI1420 is a serial bus master; all other devices connected to the serial bus external to the PCI1420 are slave
devices. As the bus master, the PCI1420 drives the SCL clock at nearly 100 kHz during bus cycles and places SCL
in a high-impedance state (zero frequency) during idle states.
Typically, the PCI1420 masters byte reads and byte writes under software control. Doubleword reads are performed
by the serial EEPROM initialization circuitry upon a PCI reset and may not be generated under software control. See
Section 3.6.3,
Serial Bus EEPROM Application
, for details on how the PCI1420 automatically loads the subsystem
identification and other register defaults through a serial bus EEPROM.
Figure 3–12 illustrates a byte write. The PCI1420 issues a start condition and sends the 7-bit slave device address
and the command bit zero. A 0 in the R/W
command bit indicates that the data transfer is a write. The slave device
acknowledges if it recognizes the address. If there is no acknowledgment received by the PCI1420, then an
appropriate status bit is set in the serial bus control and status register (see Section 4.50). The word address byte
is then sent by the PCI1420 and another slave acknowledgment is expected. Then the PCI1420 delivers the data
byte MSB first and expects a final acknowledgment before issuing the stop condition.
Figure 3–13 illustrates a byte read. The read protocol is very similar to the write protocol except the R/W
command
bit must be set to 1 to indicate a read-data transfer. In addition, the PCI1420 master must acknowledge reception
of the read bytes from the slave transmitter. The slave transmitter drives the SDA signal during read data transfers.
The SCL signal remains driven by the PCI1420 master.
Figure 3–14. EEPROM Interface Doubleword Data Collection
3.6.3Serial Bus EEPROM Application
When the PCI bus is reset and the serial bus interface is detected, the PCI1420 attempts to read the subsystem
identification and other register defaults from a serial EEPROM. The registers and corresponding bits that may be
loaded with defaults through the EEPROM are provided in Table 3–7.
Table 3–7. Registers and Bits Loadable Through Serial EEPROM
Figure 3–15 details the EEPROM data format. This format must be followed for the PCI1420 to properly load
initializations from a serial EEPROM. Any undefined condition results in a terminated load and sets the ROM_ERR
bit in the serial bus control and status register (see Section 4.50).
The byte at the EEPROM word address 00h must either contain a valid offset reference, as listed in Table 3–7, or
an end-of-list (EOL) indicator. The EOL indicator is a byte value of FFh, and indicates the end of the data to load from
the EEPROM. Only doubleword registers are loaded from the EEPROM, and all bit fields must be considered when
programming the EEPROM.
The serial EEPROM is addressed at slave address 1010000b by the PCI1420. All hardware address bits for the
EEPROM should be tied to the appropriate level to achieve this address. The serial EEPROM chip in the sample
application circuit (Figure 3–9) assumes the 1010b high address nibble. The lower three address bits are terminal
inputs to the chip, and the sample application shows these terminal inputs tied to GND.
When a valid offset reference is read, four bytes are read from the EEPROM, MSB first, as illustrated in Figure 3–14.
The address autoincrements after every byte transfer according to the doubleword read protocol. Note that the word
addresses align with the data format illustrated in Figure 3–15. The PCI1420 continues to load data from the serial
EEPROM until an end-of-list indicator is read. Three reserved bytes are stuffed to maintain eight-byte data structures.
Note, the eight-byte data structure is important to provide correct addressing per the doubleword read format shown
in Figure 3–14. In addition, the reference offsets must be loaded in the EEPROM in sequential order, that is 01h, 02h,
03h, 04h. If the offsets are not sequential, then the registers may be loaded incorrectly.
3.6.4Serial Bus Power Switch Application
The PCI1420 does not automatically control a serial bus power switch transparently to host software as it does for
2
P
C power switches. But, the PCI1420 serial bus interface can be used in conjunction with the power status, GPE,
output, and support software to control a serial bus power switch. If a serial bus power switch interface is implemented,
then a pulldown resistor must be provided on the PCI1420 CLOCK terminal to reduce power consumption.
The PCI1420 supports two common SMBus data write protocols, write byte and send byte formats. The write byte
protocol using a word address of 00h is discussed in Section 3.6.2,
protocol is shown in Figure 3–16 using a slave address 101001x. Bit 7 (PROT_SEL) in the serial bus control and
status register, see Table 4–25, allows the serial bus interface to operate with the send byte protocol. For more
information on programming the serial bus interface, see Section 3.6.5,
The power switch may support an interrupt mode to indicate over current or other power switch related events. The
PCI1420 does not implement logic to respond to these events, but does implement a flexible general-purpose
interface to control these events through ACPI and other handlers. See the
Interface (ACPI) Specification
for details on implementing the PCI1420 in an ACPI system.
Advanced Configuration and Power
3.6.5Accessing Serial Bus Devices Through Software
The PCI1420 provides a programming mechanism to control serial bus devices through software. The programming
is accomplished through a doubleword of PCI configuration space at offset B0h. Table 3–8 lists the registers used
to program a serial bus device through software.
Table 3–8. PCI1420 Registers Used to Program Serial Bus Devices
PCI OFFSETREGISTER NAMEDESCRIPTION
B0hSerial bus dataContains the data byte to send on write commands or the received data byte on read commands.
B1hSerial bus index
B2h
B3h
Serial bus slave
address
Serial bus control
and status
The content of this register is sent as the word address on byte writes or reads. This register is not used
in the quick command protocol.
Write transactions to this register initiate a serial bus transaction. The slave device address and the R/W
command selector are programmed through this register.
Read data valid, general busy, and general error status are communicated through this register. In
addition, the protocol select bit is programmed through this register.
3.7Programmable Interrupt Subsystem
Interrupts provide a way for I/O devices to let the microprocessor know that they require servicing. The dynamic
nature of PC Cards and the abundance of PC Card I/O applications require substantial interrupt support from the
PCI1420. The PCI1420 provides several interrupt signaling schemes to accommodate the needs of a variety of
platforms. The different mechanisms for dealing with interrupts in this device are based on various specifications and
industry standards. The ExCA register set provides interrupt control for some 16-bit PC Card functions, and the
CardBus socket register set provides interrupt control for the CardBus PC Card functions. The PCI1420 is, therefore,
backward compatible with existing interrupt control register definitions, and new registers have been defined where
required.
The PCI1420 detects PC Card interrupts and events at the PC Card interface and notifies the host controller using
one of several interrupt signaling protocols. T o simplify the discussion of interrupts in the PCI1420, PC Card interrupts
are classified as either card status change (CSC) or as functional interrupts.
The method by which any type of PCI1420 interrupt is communicated to the host interrupt controller varies from
system to system. The PCI1420 offers system designers the choice of using parallel PCI interrupt signaling, parallel
ISA-type IRQ interrupt signaling, or the IRQSER serialized ISA and/or PCI interrupt protocol. It is possible to use the
parallel PCI interrupts in combination with either parallel IRQs or serialized IRQs, as detailed in the sections that
follow. All interrupt signalling is provided through the seven multifunction terminals, MFUNC0–MFUNC6.
3.7.1PC Card Functional and Card Status Change Interrupts
PC Card functional interrupts are defined as requests from a PC Card application for interrupt service and are
indicated by asserting specially-defined signals on the PC Card interface. Functional interrupts are generated by
16-bit I/O PC Cards and by CardBus PC Cards.
3–15
Card status change (CSC)-type interrupts are defined as events at the PC Card interface that are detected by the
16-bit I/O
CardBus
PCI1420 and may warrant notification of host card and socket services software for service. CSC events include both
card insertion and removal from PC Card sockets, as well as transitions of certain PC Card signals.
Table 3–9 summarizes the sources of PC Card interrupts and the type of card associated with them. CSC and
functional interrupt sources are dependent on the type of card inserted in the PC Card socket. The three types of cards
that can be inserted into any PC Card socket are:
•16-bit memory card
•16-bit I/O card
•CardBus cards
Table 3–9. Interrupt Mask and Flag Registers
CARD TYPEEVENTMASKFLAG
16-bit
memory
All 16-bit
PC Cards
Battery conditions
(BVD1, BVD2)
Wait states
(READY)
Change in card status
(STSCHG
Interrupt request
Power cycle complete
Change in card status
(CSTSCHG)
Interrupt request
Power cycle complete
Card insertion or
removal
(IREQ
(CINT
)
)
)
ExCA offset 05h/45h/805h
bits 1 and 0
ExCA offset 05h/45h/805h
bit 2
ExCA offset 05h/45h/805h
bit 0
Always enabled
ExCA offset 05h/45h/805h
bit 3
Socket mask
bit 0
Always enabled
Socket mask
bit 3
Socket mask
bits 2 and 1
ExCA offset 04h/44h/804h
bits 1 and 0
ExCA offset 04h/44h/804h
bit 2
ExCA offset 04h/44h/804h
bit 0
PCI configuration offset 91h
bit 0
ExCA offset 04h/44h/804h
bit 3
Socket event
bit 0
PCI configuration offset 91h
bit 0
Socket event
bit 3
Socket event
bits 2 and 1
Functional interrupt events are valid only for 16-bit I/O and CardBus cards; that is, the functional interrupts are not
valid for 16-bit memory cards. Furthermore, card insertion and removal-type CSC interrupts are independent of the
card type.
3–16
Table 3–10. PC Card Interrupt Events and Description
y
CSC
16-bit I/O
CardBus
CARD TYPEEVENTTYPESIGNALDESCRIPTION
A transition on BVD1 indicates a change in the
PC Card battery conditions.
A transition on BVD2 indicates a change in the
PC Card battery conditions.
A transition on READY indicates a change in the ability
of the memory PC Card to accept or provide data.
The assertion of STSCHG indicates a status change
on the PC Card.
The assertion of IREQ indicates an interrupt request
from the PC Card.
The assertion of CSTSCHG indicates a status change
on the PC Card.
The assertion of CINT indicates an interrupt request
from the PC Card.
A transition on either CD1//CCD1 or CD2//CCD2
indicates an insertion or removal of a 16-bit or CardBus
PC Card.
An interrupt is generated when a PC Card power-up
cycle has completed.
16-bit
memory
All PC Cards
Battery conditions
(BVD1, BVD2)
Wait states
(READY)
Change in card
status (STSCHG)
Interrupt request
(IREQ)
Change in card
status (CSTSCHG)
Interrupt request
(CINT
)
Card insertion
or removal
Power cycle
complete
BVD1(STSCHG)//CSTSCHG
BVD2(SPKR)//CAUDIO
CSCREADY(IREQ)//CINT
CSCBVD1(STSCHG)//CSTSCHG
FunctionalREADY(IREQ)//CINT
CSCBVD1(STSCHG)//CSTSCHG
FunctionalREADY(IREQ)//CINT
CSC
CSCN/A
CD1//CCD1,
CD2
//CCD2
The naming convention for PC Card signals describes the function for 16-bit memory , I/O cards, and CardBus. For
example, READY(IREQ
)//CINT includes READY for 16-bit memory cards, IREQ for 16-bit I/O cards, and CINT for
CardBus cards. The 16-bit memory card signal name is first, with the I/O card signal name second, enclosed in
parentheses. The CardBus signal name follows after a forward double slash (//).
The
1997 PC Card Standard
insertion event occurs and the host requests that the socket V
describes the power-up sequence that must be followed by the PCI1420 when an
and VPP be powered. Upon completion of this
CC
power-up sequence, the PCI1420 interrupt scheme can be used to notify the host system (see T able 3–10), denoted
by the power cycle complete event. This interrupt source is considered a PCI1420 internal event because it depends
on the completion of applying power to the socket rather than on a signal change at the PC Card interface.
3.7.2Interrupt Masks and Flags
Host software may individually mask (or disable) most of the potential interrupt sources listed in T able 3–10 by setting
the appropriate bits in the PCI1420. By individually masking the interrupt sources listed, software can control those
events that cause a PCI1420 interrupt. Host software has some control over the system interrupt the PCI1420 asserts
by programming the appropriate routing registers. The PCI1420 allows host software to route PC Card CSC and PC
Card functional interrupts to separate system interrupts. Interrupt routing somewhat specific to the interrupt signaling
method used is discussed in more detail in the following sections.
When an interrupt is signaled by the PCI1420, the interrupt service routine must determine which of the events listed
in T able 3–9 caused the interrupt. Internal registers in the PCI1420 provide flags that report the source of an interrupt.
By reading these status bits, the interrupt service routine can determine the action to be taken.
T able 3–9 details the registers and bits associated with masking and reporting potential interrupts. All interrupts can
be masked except the functional PC Card interrupts, and an interrupt status flag is available for all types of interrupts.
Notice that there is not a mask bit to stop the PCI1420 from passing PC Card functional interrupts through to the
appropriate interrupt scheme. These interrupts are not valid until the card is properly powered, and there should never
be a card interrupt that does not require service after proper initialization.
Table 3–9 lists the various methods of clearing the interrupt flag bits. The flag bits in the ExCA registers (16-bit PC
Card-related interrupt flags) can be cleared using two different methods. One method is an explicit write of 1 to the
flag bit to clear and the other is by reading the flag bit register. The selection of flag bit clearing is made by bit 2
(IFCMODE) in the ExCA global control register (see Section 5.22), located at ExCA offset 1Eh/5Eh/81Eh, and
defaults to the
flag cleared on read
method.
3–17
The CardBus-related interrupt flags can be cleared by an explicit write of 1 to the interrupt flag in the socket event
register (see Section 6.1). Although some of the functionality is shared between the CardBus registers and the ExCA
registers, software should not program the chip through both register sets when a CardBus card is functioning.
3.7.3Using Parallel IRQ Interrupts
The seven multifunction terminals, MFUNC6–MFUNC0, implemented in the PCI1420 may be routed to obtain a
subset of the ISA IRQs . The IRQ choices provide ultimate flexibility in PC Card host interruptions. T o use the parallel
ISA type IRQ interrupt signaling, software must program the device control register (see Section 4.33), located at PCI
offset 92h, to select the parallel IRQ signaling scheme. See Section 4.30,
on configuring the multifunction terminals.
Multifunction Routing Register
, for details
A system using parallel IRQs requires (at a minimum) one PCI terminal, INT A
is dictated by certain card and socket services software. The INT A
for INT A
signaling. The INTRTIE bit is used, in this case, to route socket B interrupt events to INTA. This leaves (at
requirement calls for routing the MFUNC0 terminal
, to signal CSC events. This requirement
a maximum) six different IRQs to support legacy 16-bit PC Card functions.
As an example, suppose the six IRQs used by legacy PC Card applications are IRQ3, IRQ4, IRQ5, IRQ10, IRQ1 1,
and IRQ15. The multifunction routing register must be programmed to a value of 0x0FBA5432. This value routes the
MFUNC0 terminal to INTA
that INT A
must also be routed to the programmable interrupt controller (PIC), or to some circuitry that provides parallel
signaling and routes the remaining terminals as illustrated in Figure 3–17. Not shown is
PCI interrupts to the host.
PCI1420PIC
MFUNC1
MFUNC2
MFUNC3
MFUNC4
MFUNC5
MFUNC6
IRQ3
IRQ4
IRQ5
IRQ10
IRQ11
IRQ15
Figure 3–17. IRQ Implementation
Power-on software is responsible for programming the multifunction routing register to reflect the IRQ configuration
of a system implementing the PCI1420. The multifunction routing register is shared between the two PCI1420
functions, and only one write to function 0 or 1 is necessary to configure the MFUNC6–MFUNC0 signals. Writing to
only function 0 is recommended. See Section 4.30,
Multifunction Routing Register
,for details on configuring the
multifunction terminals.
The parallel ISA type IRQ signaling from the MFUNC6–MFUNC0 terminals is compatible with those input directly into
the 8259 PIC. The parallel IRQ option is provided for system designs that require legacy ISA IRQs. Design constraints
may demand more MFUNC6–MFUNC0 IRQ terminals than the PCI1420 makes available.
3.7.4Using Parallel PCI Interrupts
Parallel PCI interrupts are available when exclusively in parallel PCI interrupt mode parallel ISA IRQ signaling mode,
and when only IRQs are serialized with the IRQSER protocol. Both INT A
(MFUNC0 and MFUNC1). However, both socket functions’ interrupts can be routed to INTA
(INTRTIE) is set in the system control register (see Section 4.29).
The INTRTIE bit affects the read-only value provided through accesses to the interrupt pin register (see Section 4.24).
When INTRTIE bit is set, both functions return a value of 0x01 on reads from the interrupt pin register for both parallel
and serial PCI interrupts. Table 3–11 summarizes the interrupt signalling modes.
The serialized interrupt protocol implemented in the PCI1420 uses a single terminal to communicate all interrupt
status information to the host controller. The protocol defines a serial packet consisting of a start cycle, multiple
interrupt indication cycles, and a stop cycle. All data in the packet is synchronous with the PCI clock. The packet data
describes 16 parallel ISA IRQ signals and the optional 4 PCI interrupts INT A
the IRQSER protocol refer to the document
Serialized IRQ Support for PCI Systems
, INTB, INTC, and INTD. For details on
.
3.7.6SMI Support in the PCI1420
The PCI1420 provides a mechanism for interrupting the system when power changes have been made to the PC
Card socket interfaces. The interrupt mechanism is designed to fit into a system maintenance interrupt (SMI) scheme.
SMI interrupts are generated by the PCI1420, when enabled, after a write cycle to either the socket control register
(see Section 6.5) of the CardBus register set or the ExCA power control register (see Section 5.3) causes a power
cycle change sequence sent on the power switch interface.
The SMI control is programmed through three bits in the system control register (see Section 4.29). These bits are
SMIROUTE (bit 26), SMIST ATUS (bit 25), and SMIENB (bit 24). Table 3–12 describes the SMI control bits function.
Table 3–12. SMI Control
BIT NAMEFUNCTION
SMIROUTEThis shared bit controls whether the SMI interrupts are sent as a CSC interrupt or as IRQ2.
SMISTATThis socket dependent bit is set when an SMI interrupt is pending. This status flag is cleared by writing back a 1.
SMIENBWhen set, SMI interrupt generation is enabled. This bit is shared by functions 0 and 1.
If CSC SMI interrupts are selected, then the SMI interrupt is sent as the CSC on a per socket basis. The CSC interrupt
can be either level or edge mode, depending upon the CSCMODE bit in the ExCA global control register (see
Section 5.22).
If IRQ2 is selected by SMIROUTE, then the IRQSER signaling protocol supports SMI signaling in the IRQ2 IRQ/Data
slot. In a parallel ISA IRQ system, the support for an active low IRQ2 is provided only if IRQ2 is routed to either
MFUNC3 or MFUNC6 through the multifunction routing register (see Section 4.30).
3.8Power Management Overview
In addition to the low-power CMOS technology process used for the PCI1420, various features are designed into the
device to allow implementation of popular power-saving techniques. These features and techniques are discussed
in this section.
3–19
3.8.1Clock Run Protocol
The PCI CLKRUN feature is the primary method of power management on the PCI interface of the PCI1420. CLKRUN
signalling is provided through the MFUNC6 terminal. Since some chip sets do not implement CLKRUN, this is not
always available to the system designer, and alternate power savings features are provided. For details on the
CLKRUN
The PCI1420 does not permit the central resource to stop the PCI clock under any of the following conditions:
The PCI1420 restarts the PCI clock using the CLKRUN protocol under any of the following conditions:
protocol see the
•Bit 1 (KEEPCLK) in the system control register (see Section 4.29) is set.
•The PC Card-16 resource manager is busy.
•The PCI1420 CardBus master state machine is busy. A cycle may be in progress on CardBus.
•The PCI1420 master is busy. There may be posted data from CardBus to PCI in the PCI1420.
•Interrupts are pending.
•The CardBus CCLK for either socket has not been stopped by the PCI1420 CCLKRUN
•A PC Card-16 IREQ or a CardBus CINT has been asserted by either card.
PCI Mobile Design Guide
.
manager.
•A CardBus CBWAKE (CSTSCHG) or PC Card-16 STSCHG
•A CardBus attempts to start the CCLK using CCLKRUN
•A CardBus card arbitrates for the CardBus bus using CREQ
•A 16-bit DMA PC Card asserts DREQ
.
/RI event occurs in either socket.
.
.
3.8.2CardBus PC Card Power Management
The PCI1420 implements its own card power management engine that can turn off the CCLK to a socket when there
is no activity to the CardBus PC Card. The PCI clock-run protocol is followed on the CardBus CCLKRUN
to control this clock management.
interface
3.8.316-Bit PC Card Power Management
The COE (bit 7, ExCA power control register) and PWRDWN (bit 0, ExCA global control register) bits are provided
for 16-bit PC Card power management. The COE bit places the card interface in a high-impedance state to save
power. The power savings when using this feature are minimal. The COE bit will reset the PC Card when used, and
the PWRDWN bit will not. Furthermore, the PWRDWN bit is an automatic COE, that is, the PWRDWN performs the
COE function when there is no card activity.
NOTE:The 16-bit PC Card must implement the proper pullup resistors for the COE and
PWRDWN modes.
3.8.4Suspend Mode
The SUSPEND signal, provided for backward compatibility , gates the PRST (PCI reset) signal and the GRST (global
reset) signal from the PCI1420. Besides gating PRST
in order to minimize power consumption.
Gating PCLK does not create any issues with respect to the power switch interface in the PCI1420. This is because
the PCI1420 does not depend on the PCI clock to clock the power switch interface. There are two methods to clock
the power switch interface in the PCI1420:
•Use an external clock to the PCI1420 CLOCK pin
•Use the internal oscillator
3–20
and GRST, SUSPEND also gates PCLK inside the PCI1420
It should also be noted that asynchronous signals, such as card status change interrupts and RI_OUT , can be passed
to the host system without a PCI clock. However, if card status change interrupts are routed over the serial interrupt
stream, then the PCI clock will have to be restarted in order to pass the interrupt, because neither the internal oscillator
nor an external clock is routed to the serial interrupt state machine. Figure 3–18 is a functional implementation
diagram.
RESET
RESETIN
PCI1420
Core
SUSPEND
GNT
PCLK
SUSPENDIN
Figure 3–18. Suspend Functional Implementation
Figure 3–19 is a signal diagram of the suspend function.
RESET
GNT
SUSPEND
PCLK
PCLKIN
External T erminals
Internal Signals
RESETIN
SUSPENDIN
PCLKIN
Figure 3–19. Signal Diagram of Suspend Function
3.8.5Requirements for Suspend Mode
The suspend mode prevents the clearing of all register contents on the assertion of reset (PRST or GRST) which
would require the reconfiguration of the PCI1420 by software. Asserting the SUSPEND
PCI outputs in a high impedance state and gates the PCLK signal internally to the controller unless a PCI transaction
is currently in process (GNT
SUSPEND
is asserted because the outputs are in a high impedance state.
The GPIOs, MFUNC signals, and RI_OUT
is asserted). It is important that the PCI bus not be parked on the PCI1420 when
signals are all active during SUSPEND, unless they are disabled in the
appropriate PCI1420 registers.
signal places the controller’s
3–21
3.8.6Ring Indicate
The RI_OUT output is an important feature in power management, allowing a system to go into a suspended mode
and wake up on modem rings and other card events. TI designed flexibility permits this signal to fit wide platform
requirements. RI_OUT
on the PCI1420 can be asserted under any of the following conditions:
•A 16-bit PC Card modem in a powered socket asserts RI
to indicate to the system the presence of an
incoming call.
•A powered down CardBus card asserts CSTSCHG (CBWAKE) requesting system and interface wake up.
•A powered CardBus card asserts CSTSCHG from the insertion/removal of cards or change in battery
voltage levels.
Figure 3–20 shows various enable bits for the PCI1420 RI_OUT
function; however, it does not show the masking of
CSC events. See Table 3–9 for a detailed description of CSC interrupt masks and flags.
RI_OUT Function
CSTSMASK
PC Card
Socket 0
Card
PC Card
Socket 1
Card
I/F
I/F
CSC
RINGEN
RI
CDRESUME
CSC
CSTSMASK
CSC
RINGEN
RI
CDRESUME
RIENB
RI_OUT
CSC
Figure 3–20. RI_OUT Functional Diagram
RI
from the 16-bit PC Card interface is masked by bit 7 (RINGEN) in the ExCA interrupt and general control register
(see Section 5.4). This is programmed on a per-socket basis and is only applicable when a 16-bit card is powered
in the socket.
The CBWAKE signaling to RI_OUT
is enabled through the same mask as the CSC event for CSTSCHG. The mask
bit (bit 0, CSTSMASK) is programmed through the socket mask register (see Section 6.2) in the CardBus socket
registers.
3.8.7PCI Power Management
The
PCI Bus Power Management Interface Specification for PCI to CardBus Bridges
required to let the operating system control the power of PCI functions. This is done by defining a standard PCI
interface and operations to manage the power of PCI functions on the bus. The PCI bus and the PCI functions can
be assigned one of four software-visible power management states that result in varying levels of power savings.
establishes the infrastructure
3–22
The four power management states of PCI functions are:
•D0 – Fully-on state
•D1 and D2 – Intermediate states
•D3 – Off state
Similarly , bus power states of the PCI bus are B0–B3. The bus power states B0–B3 are derived from the device power
state of the originating bridge device.
For the operating system (OS) to power manage the device power states on the PCI bus, the PCI function should
support four power management operations. These operations are:
•Capabilities reporting
•Power status reporting
•Setting the power state
•System wake up
The OS identifies the capabilities of the PCI function by traversing the new capabilities list. The presence of
capabilities in addition to the standard PCI capabilities is indicated by a 1 in bit 4 (CAPLIST) of the status register (see
Section 4.5).
The capabilities pointer provides access to the first item in the linked list of capabilities. For the PCI1420, a CardBus
bridge with PCI configuration space header type 2, the capabilities pointer is mapped to an offset of 14h. The first
byte of each capability register block is required to be a unique ID of that capability . PCI power management has been
assigned an ID of 01h. The next byte is a pointer to the next pointer item in the list of capabilities. If there are no more
items in the list, then the next item pointer should be set to 0. The registers following the next item pointer are specific
to the function’s capability. The PCI power management capability implements the register block outlined in
Table 3–13.
Table 3–13. Power Management Registers
REGISTER NAMEOFFSET
Power management capabilitiesNext item pointerCapability IDA0h
DataPMCSR bridge support extensionsPower management control status (CSR)A4h
The power management capabilities register (see Section 4.39) is a static read-only register that provides information
on the capabilities of the function related to power management. The PMCSR register (see Section 4.40) enables
control of power management states and enables/monitors power management events. The data register is an
optional register that can provide dynamic data.
For more information on PCI power management, see the
PCI to CardBus Bridges
.
PCI Bus Power Management Interface Specification for
3.8.8CardBus Bridge Power Management
The
PCI Bus Power Management Interface Specification for PCI to CardBus Bridges
December of 1997. This specification follows the device and bus state definitions provided in the
Management Interface Specification
in the
PCI Bus Power Management Interface Specification for PCI to CardBus Bridges
published by the PCI Special Interest Group (SIG). The main issue addressed
without losing wake-up context (also called PME context).
The specific issues addressed by the
PCI Bus Power Management Interface Specification for PCI to CardBus Bridges
for D3 wake up are as follows:
•Preservation of device context: The specification states that a reset must occur when transitioning from D3
to D0. Some method to preserve wake-up context must be implemented so that the reset does not clear
the PME context registers.
was approved by PCMCIA in
PCI Bus Power
is wake-up from D3
hot
or D3
cold
•Power source in D3
if wake-up support is required from this state.
cold
3–23
The Texas Instruments PCI1420 addresses these D3 wake-up issues in the following manner:
•Two resets are provided to handle preservation of PME
–Global reset (GRST
) is used only on the initial boot up of the system after power up. It places the
context bits:
PCI1420 in its default state and requires BIOS to configure the device before becoming fully functional.
–PCI reset (PRST
enabled, then PME
PCI reset. Please see the master list of PME
•Power source in D3
auxiliary power source must be supplied to the PCI1420 V
Guide for D3 Wake-Up
) now has dual functionality based on whether PME is enabled or not. If PME is
context is preserved. If PME is not enabled, then PRST acts the same as a normal
context bits in Section 3.8.10.
if wake-up support is required from this state. Since VCC is removed in D3
cold
pins. Consult the
or the
PCI Power Management Interface Specification for PCI to CardBus Bridges
CC
PCI14xx Implemenation
cold
, an
for further information.
3.8.9ACPI Support
The
Advanced Configuration and Power Interface (ACPI) Specification
pieces of hardware to be described to the ACPI driver. The PCI1420 of fers a generic interface that is compliant with
ACPI design rules.
Two doublewords of general-purpose ACPI programming bits reside in PCI1420 PCI configuration space at offset
A8h. The programming model is broken into status and control functions. In compliance with ACPI, the top level event
status and enable bits reside in general-purpose event status (see Section 4.43) and general-purpose event enable
(see Section 4.44) registers. The status and enable bits are implemented as defined by ACPI and illustrated in
Figure 3–21.
Status Bit
provides a mechanism that allows unique
Event Input
Enable Bit
Event Output
Figure 3–21. Block Diagram of a Status/Enable Cell
The status and enable bits generate an event that allows the ACPI driver to call a control method associated with the
pending status bit. The control method can then control the hardware by manipulating the hardware control bits or
by investigating child status bits and calling their respective control methods. A hierarchical implementation would
be somewhat limiting, however, as upstream devices would have to remain in some level of power state to report
events.
For more information of ACPI, see the
Advanced Configuration and Power Interface (ACPI) Specification.
3.8.10 Master List of PME Context Bits and Global Reset Only Bits
If the PME enable bit (PCI offset A4h, bit 8) is asserted, then the assertion of PRST will not clear the following PME
context bits. If the PME enable bit is not asserted, then the PME context bits are cleared with PRST . The PME context
bits are:
•Bridge control register (PCI offset 3Eh): bit 22
•System control register (PCI offset 80h): bits 10, 9, 8
Global reset will place all registers in their default state regardless of the state of the PME enable bit. The GRST signal
is gated only by the SUSPEND
thus preserving all register contents. The registers cleared by GRST
signal. This means that assertion of SUSPEND blocks the GRST signal internally,
are:
•Status register (PCI offset 06h): bits 15–11, 8
•Secondary status register (PCI offset 16h): bits 15–11, 8
•Serial bus slave address register (PCI offset B2h): bits 7–0
•Serial bus control and status register (PCI offset B3h): bits 7, 5–0
•ExCA identification and revision register (ExCA offset 00h): bits 7–0
•ExCA global control register (ExCA offset 1Eh): bits 2–0
•Socket present state register (CardBus offset 08h): bit 29
•Socket power management (CardBus offset 20h): bits 25, 24
3–25
3–26
4 PC Card Controller Programming Model
This section describes the PCI1420 PCI configuration registers that make up the 256-byte PCI configuration header
for each PCI1420 function. As noted, some bits are global in nature and are accessed only through function 0.
4.1PCI Configuration Registers (Functions 0 and 1)
The PCI1420 is a multifunction PCI device, and the PC Card controller is integrated as PCI functions 0 and 1. The
configuration header is compliant with the
compliant as well. Table 4–1 shows the PCI configuration header , which includes both the predefined portion of the
configuration space and the user-definable registers.
Table 4–1. PCI Configuration Registers (Functions 0 and 1)
Device IDVendor ID00h
StatusCommand04h
Class codeRevision ID08h
BISTHeader typeLatency timerCache line size0Ch
CardBus socket/ExCA base address10h
Secondary statusReservedCapability pointer14h
CardBus latency timerSubordinate bus numberCardBus bus numberPCI bus number18h
Serial bus control/statusSerial bus slave addressSerial bus indexSerial bus dataB0h
PMCSR bridge support
extensions
PCI Local Bus Specification
REGISTER NAMEOFFSET
CardBus I/O base register 02Ch
CardBus I/O limit register 030h
CardBus I/O base register 134h
CardBus I/O limit register 138h
Reserved48h–7Ch
System control80h
Reserved84h–88h
Multifunction routing8Ch
Socket DMA register 094h
Socket DMA register 198h
Reserved9Ch
Power management control/statusA4h
ReservedB4h–FCh
as a CardBus bridge header and is PC 99
4–1
4.2Vendor ID Register
This 16-bit register contains a value allocated by the PCI SIG (special interest group) and identifies the manufacturer
of the PCI device. The vendor ID assigned to TI is 104Ch.
Bit1514131211109876543210
NameVendor ID
TypeRRRRRRRRRRRRRRRR
Default0001000001001100
Register:Vendor ID
Type:Read-only
Offset:00h (functions 0, 1)
Default:104Ch
4.3Device ID Register
This 16-bit register contains a value assigned to the PCI1420 by TI. The device identification for the PCI1420 is
AC51h.
Bit1514131211109876543210
NameDevice ID
TypeRRRRRRRRRRRRRRRR
Default1010110001010001
Register:Device ID
Type:Read-only
Offset:02h (functions 0, 1)
Default:AC51h
4–2
4.4Command Register
The command register provides control over the PCI1420 interface to the PCI bus. All bit functions adhere to the
definitions in
PCI1420 PCI functions. Two command registers exist in the PCI1420, one for each function. Software must
manipulate the two PCI1420 functions as separate entities when enabling functionality through the command
register. The SERR_EN and PERR_EN enable bits in this register are internally wired-OR between the two functions,
and these control bits appear separately according to their software function. See Table 4–2 for the complete
description of the register contents.
Fast back-to-back enable. The PCI1420 does not generate fast back-to-back transactions; therefore, bit 9
returns 0 when read.
System Error (SERR) enable. Bit 8 controls the enable for the SERR driver on the PCI interface. SERR can
be asserted after detecting an address parity error on the PCI bus. Both bits 8 and 6 must be set for the
PCI1420 to report address parity errors.
0 = Disable SERR
1 = Enable SERR
Address/data stepping control. The PCI1420 does not support address/data stepping; therefore, bit 7 is
hardwired to 0.
Parity error response enable. Bit 6 controls the PCI1420’s response to parity errors through PERR. Data
parity errors are indicated by asserting PERR
SERR
VGA palette snoop. Bit 5 controls how PCI devices handle accesses to video graphics array (VGA) palette
registers.
Memory write and invalidate enable. Bit 4 controls whether a PCI initiator device can generate memory write
and Invalidate commands. The PCI1420 controller does not support memory write and invalidate
commands, it uses memory write commands instead; therefore, this bit is hardwired to 0.
Special cycles. Bit 3 controls whether or not a PCI device ignores PCI special cycles. The PCI1420 does
not respond to special cycle operations; therefore, this bit is hardwired to 0.
Bus master control. Bit 2 controls whether or not the PCI1420 can act as a PCI bus initiator (master). The
PCI1420 can take control of the PCI bus only when this bit is set.
0 = Disables the PCI1420’s ability to generate PCI bus accesses (default)
1 = Enables the PCI1420’s ability to generate PCI bus accesses
Memory space enable. Bit 1 controls whether or not the PCI1420 can claim cycles in PCI memory space.
0 = Disables the PCI1420’s response to memory space accesses (default)
1 = Enables the PCI1420’s response to memory space accesses
I/O space control. Bit 0 controls whether or not the PCI1420 can claim cycles in PCI I/O space.
0 = Disables the PCI1420 from responding to I/O space accesses (default)
1 = Enables the PCI1420 to respond to I/O space accesses
output driver (default)
output driver
, whereas address parity errors are indicated by asserting
4–3
4.5Status Register
The status register provides device information to the host system. Bits in this register may be read normally. A bit
in the status register is reset when a 1 is written to that bit location; a 0 written to a bit location has no effect. All bit
functions adhere to the definitions in the
See Table 4–3 for the complete description of the register contents.
Register:Status
Type:Read-only, Read/Write to Clear
Offset:06h (functions 0, 1)
Default:0210h
BITSIGNALTYPEFUNCTION
15PAR_ERRR/CDetected parity error. Bit 15 is set when a parity error is detected (either address or data).
14SYS_ERRR/C
13MABORTR/C
12TABT_RECR/C
11TABT_SIGR/C
10–9PCI_SPEEDR
8DATAPARR/C
7FBB_CAPR
6UDFR
566MHZR
4CAPLISTR
3–0RSVDRReserved. Bits 3–0 return 0s when read.
Signaled system error. Bit 14 is set when SERR is enabled and the PCI1420 signals a system error to the
host.
Received master abort. Bit 13 is set when a cycle initiated by the PCI1420 on the PCI bus has been
terminated by a master abort.
Received target abort. Bit 12 is set when a cycle initiated by the PCI1420 on the PCI bus was terminated
by a target abort.
Signaled target abort. Bit 11 is set by the PCI1420 when it terminates a transaction on the PCI bus with a
target abort.
DEVSEL timing. These bits encode the timing of DEVSEL and are hardwired 01b, indicating that the
PCI1420 asserts PCI_SPEED at a medium speed on nonconfiguration cycle accesses.
Data parity error detected.
0 = The conditions for setting bit 8 have not been met.
1 = A data parity error occurred, and the following conditions were met:
Fast back-to-back capable. The PCI1420 cannot accept fast back-to-back transactions; therefore, bit 7 is
hardwired to 0.
User-definable feature support. The PCI1420 does not support the user-definable features; therefore, bit 6
is hardwired to 0.
66-MHz capable. The PCI1420 operates at a maximum PCLK frequency of 33 MHz; therefore, bit 5 is
hardwired to 0.
Capabilities list. Bit 4 returns 1 when read. This bit indicates that capabilities in addition to standard PCI
capabilities are implemented. The linked list of PCI power management capabilities is implemented in this
function.
PCI Local Bus Specification
. PCI bus status is shown through each function.
Table 4–3. Status Register
a. PERR
b. The PCI1420 was the bus master during the data parity error.
c. The parity error response bit is set in the command.
was asserted by any PCI device including the PCI1420.
4–4
4.6Revision ID Register
The revision ID register indicates the silicon revision of the PCI1420.
Bit76543210
NameRevision ID
TypeRRRRRRRR
Default00000001
Register:Revision ID
Type:Read-only
Offset:08h (functions 0, 1)
Default:01h
4.7PCI Class Code Register
The class code register recognizes the PCI1420 functions 0 and 1 as a bridge device (06h) and CardBus bridge
device (07h) with a 00h programming interface.
Bit2322 21201918 1716151413 1211109876543210
NamePCI class code
Register:PCI class code
Type:Read-only
Offset:09h (functions 0, 1)
Default:060700h
4.8Cache Line Size Register
The cache line size register is programmed by host software to indicate the system cache line size.
Bit76543210
NameCache line size
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:Cache line size
Type:Read/Write
Offset:0Ch (functions 0, 1)
Default:00h
4–5
4.9Latency Timer Register
The latency timer register specifies the latency timer for the PCI1420 in units of PCI clock cycles. When the PCI1420
is a PCI bus initiator and asserts FRAME
before the PCI1420 transaction has terminated, then the PCI1420 terminates the transaction when its GNT
, the latency timer begins counting from zero. If the latency timer expires
is
deasserted. This register is separate for each of the two PCI1420 functions. This allows platforms to prioritize the two
PCI1420 functions’ use of the PCI bus.
This register returns 82h when read, indicating that the PCI1420 functions 0 and 1 configuration spaces adhere to
the CardBus bridge PCI header. The CardBus bridge PCI header ranges from PCI register 0 to 7Fh, and 80h–FFh
is user-definable extension registers.
Bit76543210
NameHeader type
TypeRRRRRRRR
Default10000010
Register:Header type
Type:Read-only
Offset:0Eh (functions 0, 1)
Default:82h
4.11 BIST Register
Because the PCI1420 does not support a built-in self-test (BIST), this register returns the value of 00h when read.
The CardBus socket/ExCA base-address register is programmed with a base address referencing the CardBus
socket registers and the memory-mapped ExCA register set. Bits 31–12 are read/write and allow the base address
to be located anywhere in the 32-bit PCI memory address space on a 4-Kbyte boundary. Bits 11–0 are read-only,
returning 0s when read. When software writes all 1s to this register, the value read back is FFFF F000h, indicating
that at least 4K bytes of memory address space are required. The CardBus registers start at offset 000h, and the
memory-mapped ExCA registers begin at offset 800h. Since this register is not shared by functions 0 and 1, mapping
of each socket control is performed separately.
The capability pointer register provides a pointer into the PCI configuration header where the PCI power management
register block resides. PCI header doublewords at A0h and A4h provide the power management (PM) registers. Each
socket has its own capability pointer register. This register returns A0h when read.
The secondary status register is compatible with the PCI-to-PCI bridge secondary status register and indicates
CardBus-related device information to the host system. This register is very similar to the PCI status register (offset
06h); status bits are cleared by writing a 1.
Bit1514131211109876543210
NameSecondary status
TypeR/CR/CR/CR/CR/CRRR/CRRRRRRRR
Default0000001000000000
Register:Secondary status
Type:Read-only, Read/Write to Clear
Offset:16h
Default:0200h
Table 4–4. Secondary Status Register
BITSIGNALTYPEFUNCTION
15CBPARITYR/CDetected parity error. Bit 15 is set when a CardBus parity error is detected (either address or data).
14CBSERRR/C
13CBMABORTR/C
12REC_CBTAR/C
11SIG_CBT AR/C
10–9CB_SPEEDR
8CB_DPARR/C
7CBFBB_CAPR
6CB_UDFR
5CB66MHZR
4–0RSVDRReserved. Bits 4–0 return 0s when read.
Signaled system error. Bit 14 is set when CSERR is signaled by a CardBus card. The PCI1420 does not
assert CSERR
Received master abort. Bit 13 is set when a cycle initiated by the PCI1420 on the CardBus bus has been
terminated by a master abort.
Received target abort. Bit 12 is set when a cycle initiated by the PCI1420 on the CardBus bus is terminated
by a target abort.
Signaled target abort. Bit 1 1 is set by the PCI1420 when it terminates a transaction on the CardBus bus
with a target abort.
CDEVSEL timing. These bits encode the timing of CDEVSEL and are hardwired 01b, indicating that the
PCI1420 asserts CB_SPEED at a medium speed.
CardBus data parity error detected.
0 = The conditions for setting bit 8 have not been met.
1 = A data parity error occurred and the following conditions were met:
Fast back-to-back capable. The PCI1420 cannot accept fast back-to-back transactions; therefore, bit 7
is hardwired to 0.
User-definable feature support. The PCI1420 does not support the user-definable features; therefore, bit 6
is hardwired to 0.
66-MHz capable. The PCI1420 CardBus interface operates at a maximum CCLK frequency of 33 MHz;
therefore, bit 5 is hardwired to 0.
.
a. CPERR
b. The PCI1420 was the bus master during the data parity error.
c. The parity error response bit is set in the bridge control.
was asserted on the CardBus interface.
4–8
4.15 PCI Bus Number Register
This register is programmed by the host system to indicate the bus number of the PCI bus to which the PCI1420 is
connected. The PCI1420 uses this register in conjunction with the CardBus bus number and subordinate bus number
registers to determine when to forward PCI configuration cycles to its secondary buses.
Bit76543210
NamePCI bus number
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:PCI bus number
Type:Read/Write
Offset:18h (functions 0, 1)
Default:00h
4.16 CardBus Bus Number Register
This register is programmed by the host system to indicate the bus number of the CardBus bus to which the PCI1420
is connected. The PCI1420 uses this register in conjunction with the PCI bus number and subordinate bus number
registers to determine when to forward PCI configuration cycles to its secondary buses. This register is separate for
each PCI1420 controller function.
Bit76543210
NameCardBus bus number
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:CardBus bus number
Type:Read/Write
Offset:19h
Default:00h
4.17 Subordinate Bus Number Register
This register is programmed by the host system to indicate the highest-numbered bus below the CardBus bus. The
PCI1420 uses this register in conjunction with the PCI bus number and CardBus bus number registers to determine
when to forward PCI configuration cycles to its secondary buses. This register is separate for each CardBus controller
function.
Bit76543210
NameSubordinate bus number
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:Subordinate bus number
Type:Read/Write
Offset:1Ah
Default:00h
4–9
4.18 CardBus Latency Timer Register
This register is programmed by the host system to specify the latency timer for the PCI1420 CardBus interface in units
of CCLK cycles. When the PCI1420 is a CardBus initiator and asserts CFRAME
, the CardBus latency timer begins
counting. If the latency timer expires before the PCI1420 transaction has terminated, then the PCI1420 terminates
the transaction at the end of the next data phase. A recommended minimum value for this register is 40h, which allows
most transactions to be completed.
The memory base registers indicate the lower address of a PCI memory address range. These registers are used
by the PCI1420 to determine when to forward a memory transaction to the CardBus bus and when to forward a
CardBus cycle to PCI. Bits 31–12 of these registers are read/write and allow the memory base to be located anywhere
in the 32-bit PCI memory space on 4-Kbyte boundaries. Bits 11–0 are read-only and always return 0s. Write
transactions to these bits have no effect. Bits 8 and 9 of the bridge control register specify whether memory windows
0 and 1 are prefetchable or nonprefetchable. The memory base register or the memory limit register must be nonzero
for the PCI1420 to claim any memory transactions through CardBus memory windows (that is, these windows are
not enabled by default to pass the first 4K bytes of memory to CardBus).
Bit31302928272625242322212019181716
NameMemory base registers 0, 1
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameMemory base registers 0, 1
TypeR/WR/WR/WR/WRRRRRRRRRRRR
Default0000000000000000
The memory limit registers indicate the upper address of a PCI memory address range. These registers are used
by the PCI1420 to determine when to forward a memory transaction to the CardBus bus and when to forward a
CardBus cycle to PCI. Bits 31–12 of these registers are read/write and allow the memory base to be located anywhere
in the 32-bit PCI memory space on 4-Kbyte boundaries. Bits 11–0 are read-only and always return 0s. Write
transactions to these bits have no effect. Bits 8 and 9 of the bridge control register specify whether memory windows
0 and 1 are prefetchable or nonprefetchable. The memory base register or the memory limit register must be nonzero
for the PCI1420 to claim any memory transactions through CardBus memory windows (that is, these windows are
not enabled by default to pass the first 4K bytes of memory to CardBus).
The I/O base registers indicate the lower address of a PCI I/O address range. These registers are used by the
PCI1420 to determine when to forward an I/O transaction to the CardBus bus and when to forward a CardBus cycle
to the PCI bus. The lower 16 bits of this register locate the bottom of the I/O window within a 64-Kbyte page, and the
upper 16 bits (31–16) are a page register which locates this 64-Kbyte page in 32-bit PCI I/O address space. Bits 31–2
are read/write. Bits 1 and 0 are read-only and always return 0s, forcing I/O windows to be aligned on a natural
doubleword boundary.
NOTE:Either the I/O base or the I/O limit register must be nonzero to enable any I/O
transactions.
Bit31302928272625242322212019181716
NameI/O base registers 0, 1
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NameI/O base registers 0, 1
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WRR
Default0000000000000000
The I/O limit registers indicate the upper address of a PCI I/O address range. These registers are used by the PCI1420
to determine when to forward an I/O transaction to the CardBus bus and when to forward a CardBus cycle to PCI.
The lower 16 bits of this register locate the top of the I/O window within a 64-Kbyte page, and the upper 16 bits are
a page register that locates this 64-Kbyte page in 32-bit PCI I/O address space. Bits 15–2 are read/write and allow
the I/O limit address to be located anywhere in the 64-Kbyte page (indicated by bits 31–16 of the appropriate I/O base)
on doubleword boundaries.
Bits 31–16 are read-only and always return 0s when read. The page is set in the I/O base register. Bits 1 and 0 are
read-only and always return 0s, forcing I/O windows to be aligned on a natural doubleword boundary. Write
transactions to read-only bits have no effect. The PCI1420 assumes that the lower 2 bits of the limit address are 1s.
NOTE:The I/O base or the I/O limit register must be nonzero to enable an I/O transaction.
The interrupt line register communicates interrupt line routing information. Each PCI1420 function has an interrupt
line register.
Bit76543210
NameInterrupt line
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default11111111
Register:Interrupt line
Type:Read/Write
Offset:3Ch
Default:FFh
4–12
4.24 Interrupt Pin Register
The value read from the interrupt pin register is function dependent and depends on the interrupt signaling mode,
selected through bits 2–1 (INTMODE field) of the device control register (see Section 4.33) and the state of bit 29
(INTRTIE) in the system control register (see Section 4.29). When the INTRTIE bit is set, this register reads 0x01
(INTA
) for both functions. See Table 4–5 for the complete description of the register contents.
Parallel PCI interrupts only00x01 (INTA)0x02 (INTB)
Parallel IRQ and parallel PCI interrupts00x01 (INTA)0x02 (INTB)
IRQ serialized (IRQSER) and parallel PCI interrupts00x01 (INTA)0x02 (INTB)
IRQ and PCI serialized (IRQSER) interrupts (default)00x01 (INTA)0x02 (INTB)
Parallel PCI interrupts only10x01 (INTA)0x01 (INTA)
Parallel IRQ and parallel PCI interrupts10x01 (INTA)0x01 (INT A)
IRQ serialized (IRQSER) and parallel PCI interrupts10x01 (INTA)0x01 (INTA)
IRQ and PCI serialized (IRQSER) interrupts10x01 (INTA)0x01 (INTA)
INTRTIE
BIT
INTPIN
FUNCTION 0
INTPIN
FUNCTION 1
4–13
4.25 Bridge Control Register
The bridge control register provides control over various PCI1420 bridging functions. Some bits in this register are
global and are accessed only through function 0. See Table 4–6 for a complete description of the register contents.
Bit1514131211109876543210
NameBridge control
TypeRRRRRR/WR/WR/WR/WR/WR/WRR/WR/WR/WR/W
Default0000001101000000
Register:Bridge control
Type:Read-only, Read/Write
Offset:3Eh (functions 0, 1)
Default:0340h
Table 4–6. Bridge Control Register
BITSIGNALTYPEFUNCTION
15–1 1RSVDRReserved. Bits 15–11 return 0s when read.
Write posting enable. Enables write posting to and from the CardBus sockets. Write posting enables
10POSTENR/W
9PREFETCH1R/W
8PREFETCH0R/W
7INTRR/W
6CRSTR/W
†
5
MABTMODER/W
4RSVDRReserved. Bit 4 returns 0 when read.
3VGAENR/W
2ISAENR/W
†
1
0
†
This bit is global and is accessed only through function 0.
CSERRENR/W
†
CPERRENR/W
posting of write data on burst cycles. Operating with write posting disabled inhibits performance on burst
cycles. Note that bursted write data can be posted, but various write transactions may not. Bit 10 is socket
dependent and is not shared between functions 0 and 1.
Memory window 1 type. Bit 9 specifies whether or not memory window 1 is prefetchable. This bit is socket
dependent. Bit 9 is encoded as:
0 = Memory window 1 is nonprefetchable.
1 = Memory window 1 is prefetchable (default).
Memory window 0 type. Bit 8 specifies whether or not memory window 0 is prefetchable. This bit is
encoded as:
0 = Memory window 0 is nonprefetchable.
1 = Memory window 0 is prefetchable (default).
PCI interrupt – IREQ routing enable. Bit 7 selects whether PC Card functional interrupts are routed to PCI
interrupts or the IRQ specified in the ExCA registers.
0 = Functional interrupts routed to PCI interrupts (default)
1 = Functional interrupts routed by ExCAs
CardBus reset. When bit 6 is set, CRST is asserted on the CardBus interface. CRST can also be asserted
by passing a PRST
0 = CRST
1 = CRST
Master abort mode. Bit 5 controls how the PCI1420 responds to a master abort when the PCI1420 is an
initiator on the CardBus interface. This bit is common between each socket.
0 = Master aborts not reported (default)
1 = Signal target abort on PCI and SERR
VGA enable. Bit 3 affects how the PCI1420 responds to VGA addresses. When this bit is set, accesses
to VGA addresses are forwarded.
ISA mode enable. Bit 2 affects how the PCI1420 passes I/O cycles within the 64-Kbyte ISA range. This
bit is not common between sockets. When this bit is set, the PCI1420 does not forward the last 768 bytes
of each 1K I/O range to CardBus.
CSERR enable. Bit 1 controls the response of the PCI1420 to CSERR signals on the CardBus bus. This
bit is common between the two sockets.
0 = CSERR
1 = CSERR
CardBus parity error response enable. Bit 0 controls the response of the PCI1420 to CardBus parity errors.
This bit is common between the two sockets.
0 = CardBus parity errors are ignored.
1 = CardBus parity errors are reported using CPERR
assertion to CardBus.
deasserted
asserted (default)
(if enabled)
is not forwarded to PCI SERR.
is forwarded to PCI SERR.
.
4–14
4.26 Subsystem Vendor ID Register
The subsystem vendor ID register is used for system and option-card identification purposes and may be required
for certain operating systems. This register is read-only or read/write, depending on the setting of bit 5 (SUBSYSRW)
in the system control register (see Section 4.29).
Bit1514131211109876543210
NameSubsystem vendor ID
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:Subsystem vendor ID
Type:Read-only (Read/Write if enabled by SUBSYSRW)
Offset:40h (functions 0, 1)
Default:0000h
4.27 Subsystem ID Register
The subsystem ID register is used for system and option-card identification purposes and may be required for certain
operating systems. This register is read-only or read/write, depending on the setting of bit 5 (SUBSYSRW) in the
system control register (see Section 4.29).
Bit1514131211109876543210
NameSubsystem ID
TypeRRRRRRRRRRRRRRRR
Default0000000000000000
Register:Subsystem ID
Type:Read-only (Read/Write if enabled by SUBSYSRW)
Offset:42h (functions 0, 1)
Default:0000h
4.28 PC Card 16-bit I/F Legacy-Mode Base Address Register
The PCI1420 supports the index/data scheme of accessing the ExCA registers, which is mapped by this register. An
address written to this register is the address for the index register and the address + 1 is the data address. Using
this access method, applications requiring index/data ExCA access can be supported. The base address can be
mapped anywhere in 32-bit I/O space on a word boundary; hence, bit 0 is read-only, returning 1 when read. As
specified in the
and 1. See Section 5,
Bit31302928272625242322212019181716
NamePC Card 16-bit I/F legacy-mode base address
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000000000000
Bit1514131211109876543210
NamePC Card 16-bit I/F legacy-mode base address
TypeR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR/WR
Default0000000000000001
System-level initializations are performed through programming this doubleword register. Some of the bits are global
and are written only through function 0. See Table 4–7 for a complete description of the register contents.
Bit31302928272625242322212019181716
NameSystem control
TypeR/WR/WR/WRR/WR/WR/CR/WR/WR/WR/WR/WR/WR/WR/WR/W
Default0000000001000100
Bit1514131211109876543210
NameSystem control
TypeR/WR/WRRRRRRRR/WR/WR/WR/WR/WR/WR/W
Default1001000001100000
Register:System control
Type:Read-only, Read/Write, Read/Write to Clear
Offset:80h (functions 0, 1)
Default:0044 9060h
4–16
Table 4–7. System Control Register
BITSIGNALTYPEFUNCTION
Serialized PCI interrupt routing step. Bits 31 and 30 configure the serialized PCI interrupt stream
signaling and accomplish an even distribution of interrupts signaled on the four PCI interrupt slots.
†
31–30
†
29
28RSVDRReserved. Bit 28 returns 0 when read.
†
27
26SMIROUTER/W
25SMISTATUSR/C
†
24
23PCIPMENR/W
22CBRSVDR/W
21VCCPROTR/W
20REDUCEZVR/W
19CDREQENR/W
18–16CDMACHANR/W
†
This bit is global and is accessed only through function 0.
SER_STEPR/W
INTRTIER/W
P2CCLKR/W
SMIENBR/W
Bits 31 and 30 are global to all PCI1420 functions.
00 = INTA
01 = INTA
10 = INTA
11 = INTA
Tie internal PCI interrupts. When this bit is set, the INTA and INTB signals are tied together internally
and are signaled as INTA
to all PCI1420 functions.
When configuring the PCI1420 functions to share PCI interrupts, multifunction terminal MFUNC3 must
be configured as IRQSER prior to setting the INTRTIE bit.
P2C power switch clock. The PCI1420’s CLOCK is used to clock the serial interface power switch and
the internal state machine. The default state for bit 27 is 0, requiring an external clock source provided
to the CLOCK pin (pin number E19 for the GHK package or pin number 151 for the PDV package). Bit 27
can be set to 1 allowing the internal oscillator to provide the clock signal.
0 = CLOCK provided externally, input to PCI1420 (default)
1 = CLOCK generated by internal oscillator and driven by PCI1420.
SMI interrupt routing. Bit 26 is shared between functions 0 and 1, and selects whether IRQ2 or CSC
is signaled when a write occurs to power a PC Card socket.
0 = PC Card power change interrupts routed to IRQ2 (default)
1 = A CSC interrupt is generated on PC Card power changes.
SMI interrupt status. This socket-dependent bit is set when bit 24 (SMIENB) is set and a write occurs
to set the socket power. Writing a 1 to bit 25 clears the status.
SMI interrupt mode enable. When bit 24 is set and a write to the socket power control occurs, the SMI
interrupt signaling is enabled and generates an interrupt. This bit is shared and defaults to 0 (disabled).
PCI bus power management interface specification revision 1.1 enable.
0 = Use PCI bus power management interface specification revision 1.0 implementation (default)
1 = Use PCI bus power management interface specification revision 1.1 implementation
CardBus reserved terminals signaling. When a CardBus card is inserted and bit 22 is set, the RSVD
CardBus terminals are driven low. When this bit is 0, these signals are placed in a high-impedance state.
VCC protection enable. Bit 21 is socket dependent.
0 = VCC protection enabled for 16-bit cards (default)
1 = VCC protection disabled for 16-bit cards
Reduced zoomed video enable. When this bit is enabled, pins A25–A22 of the card interface for PC
Card-16 cards are placed in the high-impedance state. This bit should not be set for normal ZV
operation. This bit is encoded as:
0 = Reduced zoomed video disabled (default)
1 = Reduced zoomed video enabled
PC/PCI DMA card enable. When bit 19 is set, the PCI1420 allows 16-bit PC Cards to request PC/PCI
DMA using the DREQ
0 = Ignore DREQ
1 = Signal DMA request on DREQ
PC/PCI DMA channel assignment. Bits 18–16 are encoded as:
0–3 = 8-bit DMA channels
4 = PCI master; not used (default).
5–7 = 16-bit DMA channels
/INTB signal in INTA/INTB IRQSER slots
/INTB signal in INTB/INTC IRQSER slots
/INTB signal in INTC/INTD IRQSER slots
/INTB signal in INTD/INTA IRQSER slots
. INTA can then be shifted by using bits 31–30 (SER_STEP). This bit is global
signaling. DREQ is selected through the socket DMA register 0.
signaling from PC Cards (default)
4–17
Table 4–7. System Control Register (Continued)
BITSIGNALTYPEFUNCTION
Memory read burst enable downstream. When bit 15 is set, memory read transactions are allowed to burst
†
15
14
11
10
†
This bit is global and is accessed only through function 0.
MRBURSTDNR/W
†
MRBURSTUPR/W
13SOCACTIVER
12RSVDRReserved. Bit 12 returns 1 when read.
†
PWRSTREAMR
†
†
9
8INTERROGATER
7RSVDRReserved. Bit 7 returns 0 when read.
6PWRSAVINGSR/W
†
5
†
4
†
3
2ExCAPowerR/W
†
1
0RIMUXR/W
DELAYUPR
DELAYDOWNR
SUBSYSRWR/W
CB_DPARR/W
CDMA_ENR/W
KEEPCLKR/W
downstream.
0 = Downstream memory read burst is disabled.
1 = Downstream memory read burst is enabled (default).
Memory read burst enable upstream. When bit 14 is set, the PCI1420 allows memory read transactions
to burst upstream.
0 = Upstream memory read burst is disabled (default).
1 = Upstream memory read burst is enabled.
Socket activity status. When set, bit 13 indicates access has been performed to or from a PC card and
is cleared upon read of this status bit. This bit is socket-dependent.
0 = No socket activity (default)
1 = Socket activity
Power stream in progress status bit. When set, bit 11 indicates that a power stream to the power switch
is in progress and a powering change has been requested. This bit is cleared when the power stream is
complete.
0 = Power stream is complete and delay has expired.
1 = Power stream is in progress.
Power-up delay in progress status. When set, bit 9 indicates that a power-up stream has been sent to the
power switch and proper power may not yet be stable. This bit is cleared when the power-up delay has
expired.
Power-down delay in progress status. When set, bit 10 indicates that a power-down stream has been sent
to the power switch and proper power may not yet be stable. This bit is cleared when the power-down delay
has expired.
Interrogation in progress. When set, bit 8 indicates an interrogation is in progress and clears when
interrogation completes. This bit is socket dependent.
0 = Interrogation not in progress (default)
1 = Interrogation in progress
Power savings mode enable. When this bit is set, if a CB card is inserted, idle, and without a CB clock,
then the applicable CB state machine will not be clocked.
Subsystem ID (see Section 4.27), subsystem vendor ID (see Section 4.26), ExCA identification and
revision (see Section 5.1) registers read/write enable. Bit 5 is shared by functions 0 and 1.
0 = Subsystem ID, subsystem vendor ID, ExCA identification and revision registers are read/write.
1 = Subsystem ID, subsystem vendor ID, ExCA identification and revision registers are read-only
(default).
CardBus data parity SERR signaling enable
0 = CardBus data parity not signaled on PCI SERR
1 = CardBus data parity signaled on PCI SERR
PC/PCI DMA enable. Bit 3 enables PC/PCI DMA when set if MFUNC0–MFUNC6 are configured for
centralized DMA.
Keep clock. This bit works with PCI and CB CLKRUN protocols.
0 = Allows normal functioning of both CLKRUN
1 = Does not allow CB clock or PCI clock to be stopped using the CLKRUN
RI_OUT/PME multiplex enable.
0 = RI_OUT
same time, then RI_OUT
1 = Only PME
and PME are both routed to the RI_OUT/PME terminal. If both are enabled at the
has precedence over PME.
is routed to the RI_OUT/PME terminal.
protocols.(default)
protocols.
4–18
4.30 Multifunction Routing Register
The multifunction routing register is used to configure the MFUNC0–MFUNC6 terminals. These terminals may be
configured for various functions. All multifunction terminals default to the general-purpose input configuration. This
register is intended to be programmed once at power-on initialization. The default value for this register may also be
loaded through a serial bus EEPROM.
The retry status register enables the retry timeout counters and displays the retry expiration status. The flags are set
when the PCI1420 retries a PCI or CardBus master request and the master does not return within 2
15
PCI clock
cycles. The flags are cleared by writing a 1 to the bit. These bits are expected to be incorporated into the PCI
command, PCI status, and bridge control registers by the PCI SIG. Access this register only through function 0. See
Table 4–9 for a complete description of the register contents.
Bit76543210
NameRetry status
TypeR/WR/WR/CRR/CRR/CR
Default11000000
Register:Retry status
Type:Read-only, Read/Write, Read/Write to Clear
Offset:90h (functions 0, 1)
Default:C0h
Table 4–9. Retry Status Register
BITSIGNALTYPEFUNCTION
PCI retry timeout counter enable. Bit 7 is encoded:
7PCIRETRYR/W
†
6
3
†
This bit is global and is accessed only through function 0.
CardBus target B retry expired. Write a 1 to clear bit 5.
0 = Inactive (default)
1 = Retry has expired
CardBus target A retry expired. Write a 1 to clear bit 3.
0 = Inactive (default)
1 = Retry has expired.
PCI target retry expired. Write a 1 to clear bit 1.
0 = Inactive (default)
1 = Retry has expired.
4–21
4.32 Card Control Register
The card control register is provided for PCI1130 compatibility. RI_OUT is enabled through this register, and the
enable bit is shared between functions 0 and 1. See Table 4–10 for a complete description of the register contents.
Bit76543210
NameCard control
TypeR/WR/WR/WRRR/WR/WR/C
Default00000000
Register:Card control
Type:Read-only, Read/Write, Read/Write to Clear
Offset:91h
Default:00h
Table 4–10. Card Control Register
BITSIGNALTYPEFUNCTION
Ring indicate output enable.
†
7
6ZVENABLER/W
5PORT_SELR/W
4–3RSVDRReserved. Bits 4 and 3 return 0 when read.
2AUD2MUXR/W
1SPKROUTENR/W
0IFGR/C
†
This bit is global and is accessed only through function 0.
RIENBR/W
0 = Disables any routing of RI_OUT
1 = Enables RI_OUT
and for routing to MFUNC2 or MFUNC4.
Compatibility ZV mode enable. When set, the corresponding PC Card socket interface ZV terminals enter
a high-impedance state. This bit defaults to 0.
Port select. This bit controls the priority for the ZVSEL0 and ZVSEL1 signaling if bit 6 (ZVENABLE) is set
in both functions.
0 = Socket 0 takes priority, as signaled through ZVSEL0
1 = Socket 1 takes priority, as signaled through ZVSEL1
CardBus audio-to-IRQMUX. When set, the CAUDIO CardBus signal is routed to the corresponding
multifunction terminal which may be configured for CAUDPWM. When both socket 0 and 1 functions have
AUD2MUX set, socket 0 takes precedence.
Speaker out enable. When bit 1 is set, SPKR on the PC Card is enabled and is routed to SPKROUT . The
SPKR
signal from socket 0 is exclusive ORed with the SPKR signal from socket 1 and sent to SPKROUT .
The SPKROUT terminal drives data only when either function’s SPKROUTEN bit is set. This bit is encoded
as:
0 = SPKR
1 = SPKR
Interrupt flag. Bit 0 is the interrupt flag for 16-bit I/O PC Cards and for CardBus cards. Bit 0 is set when a
functional interrupt is signaled from a PC Card interface and is socket dependent (that is, not global). Write
back a 1 to clear this bit.
0 = No PC Card functional interrupt detected (default).
1 = PC Card functional interrupt detected.
to SPKROUT not enabled
to SPKROUT enabled
signal for routing to the RI_OUT/PME terminal, when RIMUX is set to 0,
signal (default).
, when both sockets are in ZV mode.
, when both sockets are in ZV mode.
4–22
4.33 Device Control Register
The device control register is provided for PCI1130 compatibility and contains bits that are shared between functions
0 and 1. The interrupt mode select is programmed through this register which is composed of PCI1420 global bits.
The socket-capable force bits are also programmed through this register. See Table 4–11 for a complete description
of the register contents.
Bit76543210
NameDevice control
TypeR/WR/WR/WRR/WR/WR/WR/W
Default01100110
Register:Device control
Type:Read-only, Read/Write
Offset:92h (functions 0, 1)
Default:66h
Table 4–11. Device Control Register
BITSIGNALTYPEFUNCTION
Socket power lock bit. When this bit is set to 1, software will not be able to power down the PC Card
7SKTPWR_LOCKR/W
†
6
5IO16V2R/WDiagnostic bit. This bit defaults to 1.
4RSVDRReserved. Bit 4 returns 0 when read.
3
2–1INTMODER/W
0
†
This bit is global and is accessed only through function 0.
3VCAPABLER/W
†
†
TESTR/WTI test. Only a 0 should be written to bit 3.
RSVDR/WReserved. Bit 0 is reserved for test purposes. Only 0 should be written to this bit.
socket while in D3. This may be necessary to support wake on LAN or RING if the operating system
is programmed to power down a socket when the CardBus controller is placed in the D3 state.
3-V socket capable force
0 = Not 3-V capable
1 = 3-V capable (default)
Interrupt signaling mode. Bits 2 and 1 select the interrupt signaling mode. The interrupt signaling
mode bits are encoded:
00 = Parallel PCI interrupts only
01 = Parallel IRQ and parallel PCI interrupts
10 = IRQ serialized interrupts and parallel PCI interrupt
11 = IRQ and PCI serialized interrupts (default)
4–23
4.34 Diagnostic Register
The diagnostic register is provided for internal TI test purposes. It is a read/write register, but only 0s should be written
to it. See Table 4–12 for a complete description of the register contents.
This bit is global and is accessed only through function 0.
TRUE_VALR/W
DIAG4R/WDiagnostic RETRY_DIS. Delayed transaction disable.
DIAG3R/WDiagnostic RETRY_EXT. Extends the latency from 16 to 64.
DIAG2R/WDiagnostic DISCARD_TIM_SEL_CB. Set = 210, reset = 215.
DIAG1R/WDiagnostic DISCARD_TIM_SEL_PCI. Set = 210, reset = 215.
This bit defaults to 0. This bit is encoded as:
0 = Reads true values in PCI vendor ID and PCI device ID registers (default)
1 = Reads all 1s in reads to the PCI vendor ID and PCI device ID registers
Auto oscillator enable. This bit provides fail safe for the oscillator power management logic. If the
problem arises with the logic, then this bit disables all the power management features of the
oscillator. This bit is encoded as:
0 = Oscillator power management features enabled (default)
1 = Oscillator power management features disabled
CSC interrupt routing control
0 = CSC interrupts routed to PCI if ExCA 803 bit 4 = 1
1 = CSC interrupts routed to PCI if ExCA 805 bits 7–4 = 0000b. (default)
In this case, the setting of ExCA 803 bit 4 is a “don’t care”
Asynchronous interrupt enable.
0 = CSC interrupt is not generated asynchronously
1 = CSC interrupt is generated asynchronously (default)
4–24
4.35 Socket DMA Register 0
The socket DMA register 0 provides control over the PC Card DMA request (DREQ) signaling. See Table 4–13 for
a complete description of the register contents.
DMA request (DREQ). Bits 1 and 0 indicate which pin on the 16-bit PC Card interface acts as DREQ during
DMA transfers. This field is encoded as:
1–0DREQPINR/W
00 = Socket not configured for DMA (default).
01 = DREQ
10 = DREQ
11 = DREQ
uses SPKR.
uses IOIS16.
uses INPACK.
4–25
4.36 Socket DMA Register 1
The socket DMA register 1 provides control over the distributed DMA (DDMA) registers and the PCI portion of DMA
transfers. The DMA base address locates the DDMA registers in a 16-byte region within the first 64K bytes of PCI
I/O address space. See Table 4–14 for a complete description of the register contents.
NOTE:32-bit transfers are not supported; the maximum transfer possible for 16-bit PC Cards
is 16 bits.
31–16RSVDRReserved. Bits 31–16 return 0s when read.
DMA base address. Locates the socket’s DMA registers in PCI I/O space. This field represents a 16-bit PCI
15–4DMABASER/W
3EXTMODERExtended addressing. This feature is not supported by the PCI1420 and always returns a 0.
2–1XFERSIZER/W
0DDMAENR/W
I/O address. The upper 16 bits of the address are hardwired to 0, forcing this window to within the lower 64K
bytes of I/O address space. The lower 4 bits are hardwired to 0 and are included in the address decode.
Thus, the window is aligned to a natural 16-byte boundary.
Transfer size. Bits 2 and 1 specify the width of the DMA transfer on the PC Card interface and are
encoded as:
00 = Transfers are 8 bits (default).
01 = Transfers are 16 bits.
10 = Reserved
11 = Reserved
DDMA registers decode enable. Enables the decoding of the distributed DMA registers based on the value
of DMABASE.
0 = Disabled (default)
1 = Enabled
4–26
4.37 Capability ID Register
The capability ID register identifies the linked list item as the register for PCI power management. The register returns
01h when read, which is the unique ID assigned by the PCI SIG for the PCI location of the capabilities pointer and
the value.
Bit76543210
NameCapability ID
TypeRRRRRRRR
Default00000001
Register:Capability ID
Type:Read-only
Offset:A0h
Default:01h
4.38 Next-Item Pointer Register
The next-item pointer register indicates the next item in the linked list of the PCI power management capabilities.
Because the PCI1420 functions include only one capabilities item, this register returns 0s when read.
This register contains information on the capabilities of the PC Card function related to power management. Both
PCI1420 CardBus bridge functions support D0, D1, D2, and D3 power states. See Table 4–15 for a complete
description of the register contents.
Table 4–15. Power Management Capabilities Register
BITSIGNALTYPEFUNCTION
PME support. This 5-bit field indicates the power states from which the PCI1420 device functions may
assert PME
power state. These five bits return 11111b when read. Each of these bits is described below:
15PME_SupportR/WBit 15 defaults to the value 1 indicating the PME signal can be asserted from the D3
14–1 1PME_SupportRBit 14 contains the value 1, indicating that the PME signal can be asserted from D3
10D2_SupportR
9D1_SupportR
8–6RSVDRReserved. Bits 8–6 return 0s when read.
5DSIR
4AUX_PWRR
3PMECLKR
2–0VERSIONR
R/W because wake-up support from D3
to the VCC terminals. If the system designer chooses not to provide an auxiliary power source to the V
terminals for D3
Bit 13 contains the value 1, indicating that the PME
Bit 12 contains the value 1, indicating that the PME
Bit 11 contains the value 1, indicating that the PME
D2 support. Bit 10 returns a 1 when read, indicating that the CardBus function supports the D2 device
power state.
D1 support. Bit 9 returns a 1 when read, indicating that the CardBus function supports the D1 device
power state.
Device-specific initialization. Bit 5 returns 1 when read, indicating that the CardBus controller function
require special initialization (beyond the standard PCI configuration header) before the generic class
device driver is able to use it.
Auxiliary power source. Bit 4 is meaningful only if bit 15 (PME_Support, D3
it indicates that support for PME
proprietary delivery vehicle. When bit 4 is 0, it indicates that the function supplies its own auxiliary power
source.
PME clock. Bit 3 returns 0 when read, indicating that no host bus clock is required for the PCI1420 to
generate PME
Version. Bits 2–0 return 001b when read, indicating that there are four bytes of general-purpose power
management (PM) registers as described in the
. A 0 (zero) for any bit indicates that the function cannot assert the PME signal while in that
state. This bit is
is contingent on the system providing an auxiliary power source
cold
wake-up support, then BIOS should write a 0 to this bit.
cold
signal can be asserted from D2 state.
signal can be asserted from D1 state.
signal can be asserted from the D0 state.
in D3
.
requires auxiliary power supplied by the system by way of a
cold
PCI Bus Power Management Interface Specification
cold
cold
CC
state.
hot
) is set. When bit 4 is set,
.
4–28
4.40 Power Management Control/Status Register
The power management control/status register determines and changes the current power state of the PCI1420
CardBus function. The contents of this register are not affected by the internally-generated reset caused by the
transition from D3
transition. TI-specific registers, PCI power management registers, and the legacy base address register are not reset.
See Table 4–16 for a complete description of the register contents.
to D0 state. All PCI, ExCA, and CardBus registers are reset as a result of a D3
hot
Table 4–16. Power Management Control/Status Register
PME status. Bit 15 is set when the CardBus function would normally assert PME, independent
of the state of bit 8 (PME_EN). Bit 15 is cleared by a write back of 1, and this also clears the PME
signal if PME was asserted by this function. Writing a 0 to this bit has no effect.
Data scale. This 2-bit field returns 0s when read. The CardBus function does not return any
dynamic data.
Data select. This 4-bit field returns 0s when read. The CardBus function does not return any
dynamic data.
PME enable. Bit 8 enables the function to assert PME. If this bit is cleared, then assertion of PME
is disabled.
Power state. This 2-bit field is used both to determine the current power state of a function and
to set the function into a new power state. This field is encoded as:
00 = D0
01 = D1
10 = D2
11 = D3
hot
to D0 state
hot
4–29
4.41 Power Management Control/Status Register Bridge Support Extensions
The power management control/status register bridge support extensions support PCI bridge specific functionality .
See Table 4–17 for a complete description of the register contents.
Bit76543210
NamePower management control/status register bridge support extensions
TypeRRRRRRRR
Default11000000
Table 4–17. Power Management Control/Status Register Bridge Support Extensions
BITSIGNALTYPEFUNCTION
BPCC_Enable. Bus power/clock control enable. This bit returns 1 when read.
This bit is encoded as:
0 = Bus power/clock control is disabled.
1 = Bus power/clock control is enabled (default).
7BPCC_ENR
6B2_B3R
5–0RSVDRReserved. Bits 5–0 return 0s when read.
A 0 indicates that the bus power/clock control policies defined in the
Interface Specification
the bridge’s power management control/status register power state field (see Section 4.40, bits 1–0)
cannot be used by the system software to control the power or the clock of the bridge’s secondary bus.
A 1 indicates that the bus power/clock control mechanism is enabled.
B2/B3 support for D3
programming the function to D3
as:
0 = when the bridge is programmed to D3
1 = when the bridge function is programmed to D3
stopped (B2). (Default)
are disabled. When the bus power/clock control enable mechanism is disabled,
. The state of this bit determines the action that is to occur as a direct result of
hot
. This bit is only meaningful if bit 7 (BPCC_EN) is a 1. This bit is encoded
hot
, its secondary bus will have its power removed (B3).
hot
, its secondary bus’s PCI clock will be
hot
PCI Bus Power Management
4.42 Power Management Data Register
The power management data register returns 0s when read, since the CardBus functions do not report dynamic data.
Bit76543210
NamePower management data
TypeRRRRRRRR
Default00000000
Register:Power management data
Type:Read-only
Offset:A7h (functions 0, 1)
Default:00h
4–30
4.43 General-Purpose Event Status Register
The general-purpose event status register contains status bits that are set when events occur that are controlled by
the general-purpose control register. The bits in this register and the corresponding GPE
to the corresponding bit location. The status bits in this register do not depend upon the state of a corresponding bit
in the general-purpose enable register. Access this register only through function 0. See Table 4–18 for a complete
description of the register contents.
Bit1514131211109876543210
NameGeneral-purpose event status
TypeR/CR/CRRR/CRRR/CRRRR/CR/CR/CR/CR/C
Default0000000000000000
Register:General-purpose event status
Type:Read-only, Read/Write to Clear
Offset:A8h (function 0)
Default:0000h
Table 4–18. General-Purpose Event Status Register
BITSIGNALTYPEFUNCTION
15ZV0_STSR/C
14ZV1_STSR/C
13–12RSVDRReserved. Bits 13 and 12 return 0s when read.
11PWR_STSR/C
10–9RSVDRReserved. Bits 10 and 9 return 0s when read.
8VPP12_STSR/C
7–5RSVDRReserved. Bits 7–5 return 0s when read.
4GP4_STSR/CGPI4 Status. Bit 4 is set on a change in status of the MFUNC5 terminal input level.
3GP3_STSR/CGPI3 Status. Bit 3 is set on a change in status of the MFUNC4 terminal input level .
2GP2_STSR/CGPI2 Status. Bit 2 is set on a change in status of the MFUNC2 terminal input level.
1GP1_STSR/CGPI1 Status. Bit 1 is set on a change in status of the MFUNC1 terminal input level.
0GP0_STSR/CGPI0 Status. Bit 0 is set on a change in status of the MFUNC0 terminal input level.
PC card socket 0 ZV status. Bit 15 is set on a change in status of bit 6 (ZVENABLE) in the function 0 PC
card controller function (see Section 4.32).
PC card socket 1 ZV status. Bit 14 is set on a change in status of bit 6 (ZVENABLE) in the function 1 PC
card controller function (see Section 4.32).
Power change status. Bit 11 is set when software has changed the power state of either socket. A change
in either VCC or VPP for either socket causes this bit to be set.
12-Volt VPP request status. Bit 8 is set when software has changed the requested Vpp level to or from
12 Volts for either of the 2 PC Card sockets.
are cleared by writing a 1
4–31
4.44 General-Purpose Event Enable Register
The general-purpose event enable register contains bits that are set to enable a GPE signal. The GPE signal is driven
until the corresponding status bit is cleared and the event is serviced. The GPE
multifunction terminals, MFUNC6–MFUNC0, is configured for GPE
signaling. Access this register only through
function 0. See Table 4–19 for a complete description of the register contents.
13–12RSVDRReserved. Bits 13 and 12 return 0s when read.
11PWR_ENR/W
10–9RSVDRReserved. Bits 10 and 9 return 0s when read.
8VPP12_ENR/W
7–5RSVDRReserved. Bits 7–5 return 0s when read.
4GP4_ENR/W
3GP3_ENR/W
2GP2_ENR/W
1GP1_ENR/W
0GP0_ENR/W
PC card socket 0 ZV enable. When bit 15 is set, a GPE is signaled on a change in status of bit 6
(ZVENABLE) in the function 0 PC Card controller function (see Section 4.32).
PC card socket 1 ZV enable. When bit 14 is set, a GPE is signaled on a change in status of bit 6
(ZVENABLE) in the function 1 PC Card controller function (see Section 4.32).
Power change enable. When bit 11 is set, a GPE is signaled on when software has changed the power
state of either socket.
12 Volt VPP request enable. When bit 8 is set, a GPE is signaled when software has changed the requested
VPP level to or from 12 Volts for either card socket.
GPI4 enable. When bit 4 is set, a GPE is signaled when there has been a change in status of the MFUNC5
terminal input level if configured as GPI4.
GPI3 enable. When bit 3 is set, a GPE is signaled when there has been a change in status of the MFUNC4
terminal input level if configured as GPI3.
GPI2 enable. When bit 2 is set, a GPE is signaled when there has been a change in status of the MFUNC2
terminal input if configured as GPI2.
GPI1 enable. When bit 1 is set, a GPE is signaled when there has been a change in status of the MFUNC1
terminal input if configured as GPI1.
GPI0 enable. When bit 0 is set, a GPE is signaled when there has been a change in status of the MFUNC0
terminal input if configured as GPI0.
can only be signaled if one of the
4–32
4.45 General-Purpose Input Register
The general-purpose input register provides the logical value of the data input from the GPI terminals, MFUNC5,
MFUNC4, and MFUNC2–MFUNC0. Access this register only through function 0. See Table 4–20 for a complete
description of the register contents.
GPI4 data bit. The value read from bit 4 represents the logical value of the data input from the MFUNC5
terminal.
GPI3 data bit. The value read from bit 3 represents the logical value of the data input from the MFUNC4
terminal.
GPI2 data bit. The value read from bit 2 represents the logical value of the data input from the MFUNC2
terminal.
GPI1 data bit. The value read from bit 1 represents the logical value of the data input from the MFUNC1
terminal.
GPI0 data bit. The value read from bit 0 represents the logical value of the data input from the MFUNC0
terminal.
4–33
4.46 General-Purpose Output Register
The general-purpose output register is used for control of the general-purpose outputs. Access this register only
through function 0. See Table 4–21 for a complete description of the register contents.
GPO4 data bit. The value written to bit 4 represents the logical value of the data driven to the MFUNC5
terminal if configured as GPO4. Read transactions return the last data value written.
GPIO3 data bit. The value written to bit 3 represents the logical value of the data driven to the MFUNC4
terminal if configured as GPO3. Read transactions return the last data value written.
GPO2 data bit. The value written to bit 2 represents the logical value of the data driven to the MFUNC2
terminal if configured as GPO2. Read transactions return the last data value written.
GPO1 data bit. The value written to bit 1 represents the logical value of the data driven to the MFUNC1
terminal if configured as GPO1. Read transactions return the last data value written.
GPO0 data bit. The value written to bit 0 represents the logical value of the data driven to the MFUNC0
terminal if configured as GPO0. Read transactions return the last data value written.
4.47 Serial Bus Data Register
The serial bus data register is for programmable serial bus byte reads and writes. This register represents the data
when generating cycles on the serial bus interface. To write a byte, this register must be programmed with the data,
the serial bus index register must be programmed with the byte address, the serial bus slave address must be
programmed with both the 7-bit slave address, and the read/write indicator bit must be reset.
On byte reads, the byte address is programmed into the serial bus index register
be programmed with both the 7-bit slave address and the read/write indicator bit must be set, and bit 5 (REQBUSY)
in the serial bus control and status register (see Section 4.50)
must be polled until clear. Then the contents of this
register are valid read data from the serial bus interface. See Table 4–22 for a complete description of the register
contents.
Bit76543210
NameSerial bus data
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:Serial bus data
Type:Read/Write
Offset:B0h (function 0)
Default:00h
Table 4–22. Serial Bus Data Register
BITSIGNALTYPEFUNCTION
7–0SBDATAR/W
Serial bus data. This bit field represents the data byte in a read or write transaction on the serial interface.
On reads, the REQBUSY bit must be polled to verify that the contents of this register are valid.
,
the serial bus slave address must
4–34
4.48 Serial Bus Index Register
The serial bus index register is for programmable serial bus byte reads and writes. This register represents the byte
address when generating cycles on the serial bus interface. To write a byte, the serial bus data register must be
programmed with the data, this register must be programmed with the byte address, and the serial bus slave address
must be programmed with both the 7-bit slave address and the read/write indicator.
On byte reads, the word address is programmed into this register
with both the 7-bit slave address and the read/write indicator bit must be set, and bit 5 (REQBUSY) in the serial bus
control and status register (see Section 4.50) must be polled until clear. Then the contents of the serial bus data
register are valid read data from the serial bus interface. See Table 4–23 for a complete description of the register
contents.
Bit76543210
NameSerial bus index
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:Serial bus index
Type:Read/Write
Offset:B1h (function 0)
Default:00h
Table 4–23. Serial Bus Index Register
BITSIGNALTYPEFUNCTION
7–0SBINDEXR/WSerial bus index. This bit field represents the byte address in a read or write transaction on the serial interface.
,
the serial bus slave address must be programmed
4.49 Serial Bus Slave Address Register
The serial bus slave address register is for programmable serial bus byte read and write transactions. To write a byte,
the serial bus data register must be programmed with the data, the serial bus index register must be programmed
with the byte address, and this register must be programmed with both the 7-bit slave address and the read/write
indicator bit.
On byte reads, the byte address is programmed into the serial bus index register
with both the 7-bit slave address and the read/write indicator bit must be set, and bit 5 (REQBUSY) in the serial bus
control and status register (see Section 4.50) must be polled until clear. Then the contents of the serial bus data
register are valid read data from the serial bus interface. See Table 4–24 for a complete description of the register
contents.
Bit76543210
NameSerial bus slave address
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:Serial bus slave address
Type:Read/Write
Offset:B2h (function 0)
Default:00h
Table 4–24. Serial Bus Slave Address Register
BITSIGNALTYPEFUNCTION
7–1SLAVADDRR/W
0RWCMDR/W
Serial bus slave address. This bit field represents the slave address of a read or write transaction on the
serial interface.
Read/write command. Bit 0 indicates the read/write command bit presented to the serial bus on byte read
and write accesses
0 = A byte write access is requested to the serial bus interface
1 = A byte read access is requested to the serial bus interface
,
this register must be programmed
4–35
4.50 Serial Bus Control and Status Register
The serial bus control and status register communicates serial bus status information and select the quick command
protocol. Bit 5 (REQBUSY) in this register must be polled during serial bus byte reads to indicate when data is valid
in the serial bus data register. See Table 4–25 for a complete description of the register contents.
Bit76543210
NameSerial bus control and status
TypeR/WRRRR/CR/WR/CR/C
Default00000000
Register:Serial bus control and status
Type:Read-only, Read/Write, Read/Write to Clear
Offset:B3h (function 0)
Default:00h
Table 4–25. Serial Bus Control and Status Register
BITSIGNALTYPEFUNCTION
Protocol select. When bit 7 is set, the send byte protocol is used on write requests and the receive byte
7PROT_SELR/W
6RSVDRReserved. Bit 6 returns 0 when read.
5REQBUSYR
4ROMBUSYR
3SBDETECTR/C
2SBTESTR/W
1REQ_ERRR/C
0ROM_ERRR/C
protocol is used on read commands. The word address byte in the serial bus index register (see
Section 4.48) is not output by the PCI1420 when bit 7 is set.
Requested serial bus access busy. Bit 5 indicates that a requested serial bus access (byte read or write)
is in progress. A request is made, and bit 5 is set, by writing to the serial bus slave address register (see
Section 4.49). Bit 5 must be polled on reads from the serial interface. After the byte read access has been
requested, the read data is valid in the serial bus data register.
Serial EEPROM Busy status. Bit 4 indicates the status of the PCI1420 serial EEPROM circuitry. Bit 4 is set
during the loading of the subsystem ID and other default values from the serial bus EEPROM.
0 = Serial EEPROM circuitry is not busy
1 = Serial EEPROM circuitry is busy
Serial bus detect. When bit 3 is set, it indicates that the serial bus interface is detected. A pulldown resistor
must be implemented on the LATCH terminal for bit 3 to be set. If bit 3 is reset, then the MFUNC4 and
MFUNC1 terminals can be used for alternate functions such as general-purpose inputs and outputs.
0 = Serial bus interface not detected
1 = Serial bus interface detected
Serial bus test. When bit 2 is set, the serial bus clock frequency is increased for test purposes.
0 = Serial bus clock at normal operating frequency, 100 kHz (default)
1 = Serial bus clock frequency increased for test purposes
Requested serial bus access error. Bit 1 indicates when a data error occurs on the serial interface during
a requested cycle and may be set due to a missing acknowledge. Bit 1 is cleared by a write back of 1.
0 = No error detected during user requested byte read or write cycle
1 = Data error detected during user requested byte read or write cycle
EEPROM data error status. Bit 0 indicates when a data error occurs on the serial interface during the
auto-load from the serial bus EEPROM and may be set due to a missing acknowledge. Bit 0 is also set on
invalid EEPROM data formats. See Section 3.6.1,
EEPROM data format. Bit 0 is cleared by a write back of 1.
0 = No error detected during auto-load from serial bus EEPROM
1 = Data error detected during auto-load from serial bus EEPROM
Serial Bus Interface Implementation
, for details on
4–36
5 ExCA Compatibility Registers (Functions 0 and 1)
The ExCA registers implemented in the PCI1420 are register-compatible with the Intel 82365SL–DF PCMCIA
controller. ExCA registers are identified by an of fset value that is compatible with the legacy I/O index/data scheme
used on the Intel 82365 ISA controller. The ExCA registers are accessed through this scheme by writing the register
offset value into the index register (I/O base) and reading or writing the data register (I/O base + 1). The I/O base
address used in the index/data scheme is programmed in the PC Card 16-bit I/F legacy mode base address register
(see Section 4.28), which is shared by both card sockets. The offsets from this base address run contiguous from
00h to 3Fh for socket A, and from 40h to 7Fh for socket B. See Figure 5–1 for an ExCA I/O mapping illustration.
PCI1420 Configuration Registers
CardBus Socket/ExCA Base Address
16-Bit Legacy-Mode Base Address
NOTE: The 16-bit legacy mode base address register is shared by functions 0 and 1 as indicated by the shading.
Offset
10h
44h
Host I/O Space
Index
Data
PC Card A
ExCA
Registers
PC Card B
ExCA
Registers
Offset
00h
3Fh
40h
7Fh
Figure 5–1. ExCA Register Access Through I/O
The TI PCI1420 also provides a memory mapped alias of the ExCA registers by directly mapping them into PCI
memory space. They are located through the CardBus socket registers/ExCA base address register (see
Section 4.12) at memory offset 800h. Each socket has a separate base address programmable by function. See
Figure 5–2 for an ExCA memory mapping illustration. Note that memory offsets are 800h–844h for both functions
0 and 1. This illustration also identifies the CardBus socket register mapping, which is mapped into the same 4K
window at memory offset 0h.
5–1
PCI1420 Configuration Registers
Host
Memory Space
Offset
Host
Memory Space
OffsetOffset
CardBus
Socket A
CardBus Socket/ExCA Base Address
16-Bit Legacy-Mode Base Address
NOTE: The CardBus socket/ExCA base address mode register is separate for functions 0 and 1.
10h
44h
Registers
ExCA
Registers
Card A
00h
20h
800h
844h
CardBus
Socket B
Registers
ExCA
Registers
Card B
00h
20h
800h
844h
Figure 5–2. ExCA Register Access Through Memory
The interrupt registers, as defined by the 82365SL–DL Specification, in the ExCA register set control such card
functions as reset, type, interrupt routing, and interrupt enables. Special attention must be paid to the interrupt routing
registers and the host interrupt signaling method selected for the PCI1420 to ensure that all possible PCI1420
interrupts can potentially be routed to the programmable interrupt controller. The ExCA registers that are critical to
the interrupt signaling are the ExCA interrupt and general control register (see Section 5.4) and the ExCA card
status-change-interrupt configuration register (see Section 5.6).
Access to I/O mapped 16-bit PC cards is available to the host system via two ExCA I/O windows. These are regions
of host I/O address space into which the card I/O space is mapped. These windows are defined by start, end, and
offset addresses programmed in the ExCA registers described in this section. I/O windows have byte granularity.
Access to memory mapped 16-bit PC Cards is available to the host system via five ExCA memory windows. These
are regions of host memory space into which the card memory space is mapped. These windows are defined by start,
end, and offset addresses programmed in the ExCA registers described in this section. Table 5–1 identifies each
ExCA register and its respective ExCA offset. Memory windows have 4K-byte granularity.
5–2
Table 5–1. ExCA Registers and Offsets
EXCA REGISTER NAME
PCI MEMORY ADDRESS
OFFSET (HEX)
Identification and revision8000040
Interface status8010141
Power control8020242
Interrupt and general control8030343
Card status change8040444
Card status-change-interrupt configuration8050545
Address window enable8060646
I / O window control8070747
I / O window 0 start-address low byte8080848
I / O window 0 start-address high byte8090949
I / O window 0 end-address low byte80A0A4A
I / O window 0 end-address high byte80B0B4B
I / O window 1 start-address low byte80C0C4C
I / O window 1 start-address high byte80D0D4D
I / O window 1 end-address low byte80E0E4E
I / O window 1 end-address high byte80F0F4F
Memory window 0 start-address low byte8101050
Memory window 0 start-address high byte8111151
Memory window 0 end-address low byte8121252
Memory window 0 end-address high byte8131353
Memory window 0 offset-address low byte8141454
Memory window 0 offset-address high byte8151555
Card detect and general control8161656
Reserved8171757
Memory window 1 start-address low byte8181858
Memory window 1 start-address high byte8191959
Memory window 1 end-address low byte81A1A5A
5.1ExCA Identification and Revision Register (Index 00h)
The ExCA identification and revision register provides host software with information on 16-bit PC Card support and
Intel 82365SL-DF compatibility. This register is read-only or read/write, depending on the setting of bit 5
(SUBSYSRW) in the system control register (see Section 4.29). See Table 5–2 for a complete description of the
register contents.
Bit76543210
NameExCA identification and revision
TypeRRR/WR/WR/WR/WR/WR/W
Default10000100
Register:ExCA identification and revision
Type:Read-only, Read/Write
Offset:CardBus socket address + 800h; Card A ExCA offset 00h
Card B ExCA offset 40h
Default:84h
Table 5–2. ExCA Identification and Revision Register (Index 00h)
BITSIGNALTYPEFUNCTION
7–6IFTYPER
5–4RSVDR/WReserved. Bits 5 and 4 can be used for Intel82365SL-DF emulation.
3–0365REVR/W
Interface type. These bits, which are hardwired as 10b, identify the 16-bit PC Card support provided by the
PCI1420. The PCI1420 supports both I/O and memory 16-bit PC cards.
Intel82365SL-DF revision. This field stores the Intel82365SL-DF revision supported by the PCI1420. Host
software can read this field to determine compatibility to the Intel
this field puts the controller in 82365SL mode.
82365SL-DF register set. Writing 0010b to
5–5
5.2ExCA Interface Status Register (Index 01h)
The ExCA interface status register provides information on the current status of the PC Card interface. An X in the
default bit value indicates that the value of the bit after reset depends on the state of the PC Card interface. See
Table 5–3 for a complete description of the register contents.
Bit76543210
NameExCA interface status
TypeRRRRRRRR
Default00XXXXXX
Register:ExCA interface status
Type:Read-only
Offset:CardBus socket address + 801h; Card A ExCA offset 01h
Card B ExCA offset 41h
Default:00XX XXXXb
Table 5–3. ExCA Interface Status Register (Index 01h)
BITSIGNALTYPEFUNCTION
7RSVDRReserved. Bit 7 returns 0 when read.
Card Power. Bit 6 indicates the current power status of the PC Card socket. This bit reflects how the ExCA
6CARDPWRR
5READYR
4CARDWPR
3CDETECT2R
2CDETECT1R
1–0BVDSTATR
power control register (see Section 5.3) is programmed. Bit 6 is encoded as:
0 = VCC and VPP to the socket turned off (default)
1 = VCC and VPP to the socket turned on
Ready. Bit 5 indicates the current status of the READY signal at the PC Card interface.
0 = PC Card not ready for data transfer
1 = PC Card ready for data transfer
Card write protect. Bit 4 indicates the current status of WP at the PC Card interface. This signal reports to
the PCI1420 whether or not the memory card is write protected. Furthermore, write protection for an entire
PCI1420 16-bit memory window is available by setting the appropriate bit in the memory window
offset-address high-byte register .
0 = WP is 0. PC Card is read/write.
1 = WP is 1. PC Card is read-only.
Card detect 2. Bit 3 indicates the status of CD2 at the PC Card interface. Software may use this and bit 2
(CDETECT1) to determine if a PC Card is fully seated in the socket.
0 = CD2
is 1. No PC Card is inserted.
1 = CD2
is 0. PC Card is at least partially inserted.
Card detect 1. Bit 2 indicates the status of CD1 at the PC Card interface. Software may use this and bit 3
(CDETECT2) to determine if a PC Card is fully seated in the socket.
0 = CD1
is 1. No PC Card is inserted.
1 = CD1
is 0. PC Card is at least partially inserted.
Battery voltage detect. When a 16-bit memory card is inserted, the field indicates the status of the battery
voltage detect signals (BVD1, BVD2) at the PC Card interface, where bit 1 reflects the BVD2 status and bit 0
reflects BVD1.
00 = Battery dead
01 = Battery dead
10 = Battery low; warning
11 = Battery good
When a 16-bit I/O card is inserted, this field indicates the status of SPKR
PC Card interface. In this case, the two bits in this field directly reflect the current state of these card outputs.
(bit 1) and STSCHG (bit 0) at the
5–6
5.3ExCA Power Control Register (Index 02h)
The ExCA power control register provides PC Card power control. Bit 7 (COE) of this register controls the 16-bit output
enables on the socket interface, and can be used for power management in 16-bit PC Card applications. See
Table 5–4 and Table 5–5 for a complete description of the register contents.
Bit76543210
NameExCA power control
TypeR/WRRR/WR/WRR/WR/W
Default00000000
Register:ExCA power control
Type:Read-only, Read/Write
Offset:CardBus socket address + 802h; Card A ExCA offset 02h
Card B ExCA offset 42h
Default:00h
Table 5–4. ExCA Power Control Register 82365SL Support (Index 02h)
BITSIGNALTYPEFUNCTION
Card output enable. Bit 7 controls the state of all of the 16-bit outputs on the PCI1420. This bit is
7COER/W
6RSVDRReserved. Bit 6 returns 0 when read.
5AUTOPWRSWENR/W
4CAPWRENR/W
3–2RSVDRReserved. Bits 3 and 2 return 0s when read.
1–0EXCAVPPR/W
encoded as:
0 = 16-bit PC Card outputs disabled (default)
1 = 16-bit PC Card outputs enabled
Auto power switch enable.
0 = Automatic socket power switching based on card detects is disabled.
1 = Automatic socket power switching based on card detects is enabled.
PC Card power enable.
0 = VCC = No connection
1 = VCC is enabled and controlled by bit 2 (ExCAPower) of the system control register
(see Section 4.29).
PC Card VPP power control. Bits 1 and 0 are used to request changes to card VPP. The PCI1420 ignores
this field unless VCC to the socket is enabled. This field is encoded as:
00 = No connection (default)
01 = V
CC
10 = 12 V
11 = Reserved
Table 5–5. ExCA Power Control Register 82365SL-DF Support (Index 02h)
BITSIGNALTYPEFUNCTION
Card output enable. Bit 7 controls the state of all of the 16-bit outputs on the PCI1420. This bit is encoded as:
7COER/W
6–5RSVDRReserved. Bits 6 and 5 return 0s when read.
4–3EXCAVCCR/W
2RSVDRReserved. Bit 2 returns 0 when read.
1–0EXCAVPPR/W
0 = 16-bit PC Card outputs disabled (default)
1 = 16-bit PC Card outputs enabled
VCC. Bits 4 and 3 are used to request changes to card VCC. This field is encoded as:
00 = 0 V (default)
01 = 0 V reserved
10 = 5 V
11 = 3 V
VPP. Bits 1 and 0 are used to request changes to card VPP. The PCI1420 ignores this field unless VCC to
the socket is enabled. This field is encoded as:
00 = No connection (default)
01 = V
CC
10 = 12 V
11 = Reserved
5–7
5.4ExCA Interrupt and General Control Register (Index 03h)
The ExCA interrupt and general control register controls interrupt routing for I/O interrupts, as well as other critical
16-bit PC Card functions. See Table 5–6 for a complete description of the register contents.
Bit76543210
NameExCA interrupt and general control
TypeR/WR/WR/WR/WR/WR/WR/WR/W
Default00000000
Register:ExCA interrupt and general control
Type:Read/Write
Offset:CardBus socket address + 803h; Card A ExCA offset 03h
Card B ExCA offset 43h
Default:00h
Table 5–6. ExCA Interrupt and General Control Register (Index 03h)
BITSIGNALTYPEFUNCTION
Card ring indicate enable. Bit 7 enables the ring indicate function of BVD1/RI. This bit is encoded as:
7RINGENR/W
6RESETR/W
5CARDTYPER/W
4CSCROUTER/W
3–0INTSELECTR/W
0 = Ring indicate disabled (default)
1 = Ring indicate enabled
Card reset. Bit 6 controls the 16-bit PC Card RESET, and allows host software to force a card reset. Bit 6
affects 16-bit cards only. This bit is encoded as:
0 = RESET signal asserted (default)
1 = RESET signal deasserted
Card type. Bit 5 indicates the PC card type. This bit is encoded as:
0 = Memory PC Card installed (default)
1 = I/O PC Card installed
PCI Interrupt CSC routing enable bit. When bit 4 is set (high), the card status change interrupts are routed
to PCI interrupts. When low, the card status change interrupts are routed using bits 7–4 (CSCSELECT field)
in the ExCA card status change interrupt configuration register (see Section 5.6). This bit is encoded as:
0 = CSC interrupts are routed by ExCA registers (default).
1 = CSC interrupts are routed to PCI interrupts.
Card interrupt select for I/O PC Card functional interrupts. Bits 3–0 select the interrupt routing for I/O
PC Card functional interrupts. This field is encoded as:
0000 = No interrupt routing (default) . CSC interrupts routed to PCI interrupts. This bit setting is