UCB1500 is a PCI-to-AC97 Bridge/Host Controller for modem or audio codecs
equipped with the AC-link interface. It integrates a PCI 2.2 compliant interface for
communication with the host PC, with built in support for PPMI (PCI Power
Management Interface) and wake-up. It also integrates an AC97 Rev. 2.1 compliant
host controller for connection to up to two AC-Link codecs, including analog modem
front ends such as the Philips UCB1510, and audio codecs.
Optional
EEPROM
c
c
PCI Interface
UCB1500
Host PC
Fig 1. Application with Philips UCB1510 analog modem front end
2.Features
■ 32-bit PCI 2.2 interface with bus master support
◆ Support up to two PCI functions with independent scatter/gather DMA
◆ PPMI and wake-up support via PME and V
◆ Download of subsystem IDs and auxiliary power consumption via optional
serial EEPROM
◆ 5 V tolerant interface for motherboard/PC add-on
slave mode: output only during data read phase.
master mode: output during address phase and data write phase.
49, 50, 52, 54, 55,
56, 57, 59, 60, 62
CBE[3:0]14, 28, 39, 51T/SPCI command/byte-enable, input during slave, output during master.
PAR38T/SPCI parity.
INTA77O/D
PME63O/DOpen drain, V
[2]
PCI interrupt.
pins are V
powered PCI power management pin. SDA TAIN[1:0]
AUX
powered and can trigger PME.
AUX
SERR36O/DPCI system error
PERR35S/T/SPCI parity error
CLKRUN78S/T/SPrimary PCI bus clock run. Used by the central resource to stop the PCI
clock or to slow it down
AC link controller interface
BITCLK75ISerial data clock; or input for secondary codecs.
SDATAIN[1:0] 65. 64IInput from AC97/MC97 codecs. V
SDATAOUT70OOutput to AC97/MC97 codecs. Driven to 0 at power-up or when
powered and can trigger PME.
AUX
RST
asserted.
SYNC71OAC97 sync. Driven to 0 at power-up or when
AC97_RST66OAC97 reset. Driven to 0 at power-up or when RST asserted. V
RST asserted.
AUX
powered.
Serial EEPROM interface
EEPCLK73OEEPROM clock.
EEPD74I/OEEPROM serial data port.
Power management; miscellaneous
_AV69IAuxiliary power available, V
V
AUX
powered.
AUX
TEST79ITest mode.
Power pins
V
DD
1, 11, 22, 27, 37,
S3.3 V power pins.
43, 53, 61
V
SS
6, 16, 21, 32, 40,
SGround pins.
48, 58, 72, 76
V
AUX
67SAuxiliary power. If auxiliary power is not available or not necessary, this pin
must be connected to V
DD
.
[1] S/T/S: Sustained Tri-State is an active-LOW tri-state signal owned anddriven by one agent at a time. The agent that drives an S/T/S pin
LOW must drive it HIGH for at least one clock before letting it float. A new agent cannot start driving a S/T/S signal any sooner than one
clock after the previous owner tri-states it.
[2] O/D: Open Drain allows multiple devices to share as a wired OR.
9397 750 06854
Objective specificationRev. 01 — 4 February 20004 of 58
By default, UCB1500 supports a single modem function. Under control of BIOS or an
external serial EEPROM, UCB1500 can support a maximum of two PCI functions,
which are typically one modem plus one audio functions. To allow IHV to overwrite
parameters such as Device ID, Vendor ID, Subsystem Vendor ID, Subsystem ID,
Class Code and Power Management Capabilities, UCB1500 provides two schemes:
For each function, Device ID, Vendor ID, Subsystem Vendor ID, Subsystem ID,
•
Class Code and Power Management Capabilities are placed in a dedicated PCI
configuration read/write area accessible by the corresponding function. An enable
bit for Function 1 is placed in a dedicated read/write area accessible byFunction 0.
This allows IHVs to enable Function 1 and change the corresponding read-only
parameters of Functions 0 and 1 (if enabled) in the BIOS POST routine when
UCB1500 is used as a motherboard device.
In case UCB1500 is used as a PCI card which BIOS cannot control, the above
•
parameters, together with Function 1 enable, can be changed by the external
serial EEPROM.
UCB1500
PCI to AC97 bridge/host controller
The EEPROM data map is given in Table 3.
Table 3:EEPROM data map
Byte addressTagDescription
00-01hsignature1516h = valid signature, otherwise disable autoloading.
02-03hcontrolBit 0: 1=enable function 1, 0=disable function 1
Bit 1: 1=enable function 0 auto-loading from address 04-9Dh
Bit 2: 1=enable function 0 auto-loading from address 0A-11h
Bit 3: 1=enable function 1 auto-loading from address 10-17h
Bit 4: 1=enable function 1 auto-loading from address 18-1Fh
Other bits: reserved and must be 0s.
04-05hsub_vendorIDFunction 0 subsystem vendor ID, PCI configuration space address 2C-2Dh.
06-07hsubsystemIDFunction 0 subsystem ID, PCI configuration space address 2E-2Fh.
08-09hpmcFunction 0 power management capabilities, PCI configuration space address 82h.
0A-0BhvendorIDFunction 0 vendor ID, PCI configuration space address 00-01h.
0C-0DhdeviceIDFunction 0 device ID, PCI configuration space address 02-03h.
0Eh--Reserved.
0F-11hclassCodeFunction 0 Class Code, PCI configuration space address 09-0Bh.
12-13hsub_vendorIDFunction 1 subsystem vendor ID, PCI configuration space address 2C-2Dh.
14-15hsubsystemIDFunction 1 subsystem ID, PCI configuration space address 2E-2Fh.
16-17hpmcFunction 1 power management capabilities, PCI configuration space offset 82h.
18-19hvendorIDFunction 1 vendor ID, PCI configuration space address 00-01h.
1A-1BhdeviceIDFunction 1 device ID, PCI configuration space address 02-03h.
1Ch--Reserved.
1D-1FhclassCodeFunction 1 Class Code, PCI configuration space address 09-0Bh.
9397 750 06854
Objective specificationRev. 01 — 4 February 20005 of 58
UCB1500 supports the PCI configuration cycle to control the UCB1500 access. It
sets up the PCI configuration bits and the UCB1500 IO port address. The following
table shows the supported PCI registers and their default values. Some of the
registers are programmable through the EEPROM interface (See EEPROM section
for details).
Remark: All registers are read/write, unless specified otherwise. Shaded registers
are read-only. A register with (S) means it is powered by V
sticky or otherwise stated, all read/write registers defaults to zero at PCI reset. All
reserved or unimplemented registers are hardwired to 0.
Table 4:Function 0 configuration registers
31-2423-1615-87-0Address
Device ID = 3400
Modified by BIOS via writing to 42h or EEPROM auto
loading
Status = 0290Command = 000004h
Class Code = 070300
Simple communication controller, generic modem.
Modified by BIOS via writing to 45h or EEPROM auto loading.
BIST = 00Header Type
If multifunction,
header type = 80h,
otherwise 00h
I/O port Base Address [31:16]
Hardwired to 0000h
Reserved.14h-2Bh
Subsystem ID = 3400
Modified by BIOS via writing to 6Eh or EEPROM auto
loading
Reserved30h
Reserved
Reserved38h
Reserved
Device ID Write = 3400Vendor ID Write = 113140h
Class Code Write = 070300
ReservedEEPROM Status =0048h
Reserved4C-4Fh
Reserved
Reserved54-67h
PMC Write = C801Reserved68h
Vendor ID = 1131
Modified by BIOS via writing to 40h or EEPROM auto
loading
Revision ID = 0108h
Latency Timer = 00Cache Line Size = 000Ch
I/O port Base Address[15:0] = 000110h
Subsystem Vendor ID = 1131
Modified by BIOS via writing to 6Ch or EEPROM auto
loading
Capability Pointer = 8034h
Interrupt Pin = 01Interrupt Line = 003Ch
Revision ID = 0144h
Test Register = 0050
and is sticky. Unless
AUX
00h
2Ch
9397 750 06854
Objective specificationRev. 01 — 4 February 20006 of 58
31-2423-1615-87-0Address
Subsystem ID Write = 3400Subsystem Vendor ID Write = 11316Ch
Reserved70-7Fh
PMC =
4801 (V
C801 (V
Modified by BIOS via writing to 6Ah, or EEPROM
autoloading to PCI-PM1.1
ReservedPMCSR = 0000 (S)84h
= 0, no autoload)
AUX_AV
= 1, no autoload)
AUX_AV
…continued
Next Item Per = 00Capability ID = 0180h
[01-00]: Vendor ID (read only): Programmable through EEPROM interface, or
register 40h. Default value = 1131h
[03-02]: Device ID (read only): Programmable through EEPROM interface, or
register 42h. Default value = 3400h
[05-04]: Command Register
Table 5:Command Register bit description
BitDescription
15-10Reserved.
9(r)Fast Back-to-back Transactions
Always 0, fast back-to-back transactions is not supported.
8
7(r)Address/Data Stepping
6Parity Error Response
5(r)VGA Snooping
4(r)Memory Write and Invalidate Command
3(r)Special Cycle Response
2Bus Master Control
1(r)Memory Space Response
0I/O Space Control
SERR enable
If set,
SERR driver is enabled; if 0, SERR is disabled.
Always 0, address/data stepping is not implemented.
When set, the device must take its normal action when a parity error is detected.
If this bit is 0, the devicemust ignore any parity errors that it detects and continue
normal operation.
Always 0, not implemented.
Always 0, UCB1500 does not generate memory write and invalidate command.
Always 0, UCB1500 ignores all special cycles.
PCI Master access enable; this bit must be enabled to activate UCB1500 DMA
register.
1 = enable.
Always 0, UCB1500 does not respond to memory space accesses.
UCB1500 control register I/O space access enable.
1 = enable.
9397 750 06854
Objective specificationRev. 01 — 4 February 20007 of 58
[6A-6B]: Power Management capabilities Write: This register contains a copy of
the Power Management capabilities register. Writing to this register will update the
original Power Management capabilities register (offset 82h-83h).
[6C-6F]: Subsystem-ID Write / Vendor ID Write: This register contains a copy of
the Subsystem-ID/Vendor ID register. Writing to this register will update the original
Subsystem-ID/Vendor ID registers (offset 2Ch-2Fh).
[80]: Capability Identifier (read only): This register is set to 01h to indicate power
management interface registers.
UCB1500
PCI to AC97 bridge/host controller
If set, chip operates under test mode. If ‘0’, chip operates normally.
If set, EEPROM autoload is disabled. If `0', EEPROM autoload sequence
operates as normal, depending on the EEPROM signature. This bit is for testing
only.
[81]: Next Item Pointer (read only): This field provides an offset into the function's
PCI Configuration Space pointing to the location of next item in the function's
capability list. This register is set to zero, signifying that there are no additional items
in the capability list.
9397 750 06854
Objective specificationRev. 01 — 4 February 200010 of 58
Table 12: Power Management Capabilities register bit description
Read only
BitDescription
15-11(r)PME support
10(r)D2 support
9(r)D1 support
8-6(r)Aux_Current
5(r)DSI
4(r)Reserved.
3(r)PME Clock
2:0(r)Version
UCB1500
PCI to AC97 bridge/host controller
This 5-bit field indicates the power states in which the function may assert
Value is set to 11001 b if V
D3cold and D0. If V
AUX_AV
= 1 to indicate PME can be asserted from
AUX_AV
= 0, this field is set to 01001b to indicate PME can be
asserted from D3hot and D0.
The entire setting can be overwritten by BIOS via writing to 6Ah, or an external
EEPROM. If V
= 0, bit 15 shall always be zero. If V
AUX_AV
= 1, bit 15 shall
AUX
reflect the setting of 6Ah, or that loaded from EEPROM.
This bit is set to ‘0’ to indicate that function does not support the D2 power
management state. This setting can be overwritten by BIOS via 6Ah, or with the
external EEPROM.
This bit is set to ‘0’ to indicate that function does not support the D1 power
management state. This setting can be overwritten by BIOS via 6Ah, or with the
external EEPROM.
These bits are set to ‘0’ for PCI-PM 1.0 compliance. For PCI-PM 1.1 compliance,
these bits are overwritten by BIOS via 6Ah, or loaded from an external EEPROM
to reflect the 3.3V
current requirement.
AUX
The Device Specific Initialization bit indicates whether special initialization of this
function is required (beyond the standard PCI configuration header) before the
generic class device driver is able to use it. This register is set to ‘0’ to indicate
that it does not require special initialization.
This bit is a ‘0’, indicating that the function does not rely on the presence of the
PCI clock for
PME operation.
This register is set to 001b, indicating that this function complies with Rev 1.0 of
PCI Power Management Interface Specification
the
. These bits can also be
overwritten by BIOS via 6Ah, or loaded from an external EEPROM to 010b for
compliance with PCI-PM 1.1.
PME.
9397 750 06854
Objective specificationRev. 01 — 4 February 200011 of 58
Table 13: Power Management Control/Status register bit description
BitDescription
15PME Status - Sticky Bit
This bit is set when the function would normally assert the
independent of the state of the PME_EN bit. This bit is set when a power
management event occurs.
Writing a ‘1’ to this bit will clear it and cause the function to stop asserting a
(if enabled). Writing a ‘0’ has no effect.
14-13(r)Data scale
Not implemented.
12-9Data select
This 4-bit field is used to select which data is to be reported through the Data
register and Data scale field. This function is not implemented in this chip.
8PME_EN - Sticky Bit
A ‘1’ enables the function to assert
7-2(r)Reserved.
1-0Power 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. The definition of the field values is
given below.
00b - D0
01b - D1
10b - D2
11b - D3hot
If software writes D1 or D2 and the corresponding bit 10 or 9 or register 82
indicates it is not supported, the state change is discarded.
PME. When ‘0’, PME assertion is disabled.
PME signal
PME
[86-87]: Reserved.
9397 750 06854
Objective specificationRev. 01 — 4 February 200012 of 58
Always 0, fast back-to-back transactions is not supported.
SERR enable
If set,
SERR driver is enabled; if 0, SERR is disabled.
Always 0, address/data stepping is not implemented.
When set, the device must take its normal action when a parity error is detected.
If this bit is 0, the devicemust ignore any parity errors that it detects and continue
normal operation.
Always 0, not implemented.
Always 0, UCB1500 does not generate memory write and invalidate command.
Always 0, UCB1500 ignores all special cycles.
PCI Master access enable; this bit must be enabled to activate UCB1500 DMA
register.
1 = enable.
Always 0, UCB1500 does not respond to memory space accesses.
UCB1500 control register I/O space access enable.
1 = enable.
9397 750 06854
Objective specificationRev. 01 — 4 February 200014 of 58
[6A-6B]: Power Management capabilities Write: This register contains a copy of
the Power Management capabilities register. Writing to this register will update the
original Power Management capabilities register (offset 82h-83h).
[6C-6F]: Subsystem-ID Write / Vendor ID Write: This register contains a copy of
the Subsystem-ID/Vendor ID register. Writing to this register will update the original
Subsystem-ID/Vendor ID registers (offset 2Ch-2Fh).
[80]:Capability Identifier (read only): This register is set to 01h to indicate power
management interface registers.
UCB1500
PCI to AC97 bridge/host controller
If set, chip operates under test mode. If ‘0’, chip operates normally.
If set, EEPROM autoload is disabled. If ‘0’, EEPROM autoload sequence
operates as normal, depending on the EEPROM signature. This bit is for testing
only.
[81]: Next Item Pointer (read only): This field provides an offset into the function's
PCI Configuration Space pointing to the location of next item in the function's
capability list. This register is set to zero, signifying that there are no additional items
in the capability list.
9397 750 06854
Objective specificationRev. 01 — 4 February 200017 of 58
Table 22: Power Management Capabilities register bit description
Read only
BitDescription
15-11(r)PME support
10(r)D2 support
9(r)D1 support
8-6(r)Aux_Current
5(r)DSI
4(r)Reserved.
3(r)PME Clock
2:0(r)Version
UCB1500
PCI to AC97 bridge/host controller
This 5-bit field indicates the power states in which the function may assert
Value is set to 00000b to indicate no
The entire setting can be overwritten by BIOS via writing to 6Ah, or an external
EEPROM. If V
reflect the setting of 6Ah, or that loaded from EEPROM.
This bit is set to ‘1’ to indicate that function supports the D2 power management
state. This setting can be overwritten by BIOS via 6Ah, or with the external
EEPROM.
This bit is set to ‘0’ to indicate that function does not support the D1 power
management state. This setting can be overwritten by BIOS via 6Ah, or with the
external EEPROM.
These bits are set to ‘0’ for PCI-PM 1.0 compliance. For PCI-PM 1.1 compliance,
these bits are overwritten by BIOS via 6Ah, or loaded from an external EEPROM
to reflect the 3.3V
The Device Specific Initialization bit indicates whether special initialization of this
function is required (beyond the standard PCI configuration header) before the
generic class device driver is able to use it. This register is set to ‘0’ to indicate
that it does not require special initialization.
This bit is a ‘0’, indicating that the function does not rely on the presence of the
PCI clock for
This register is set to 001b, indicating that this function complies with Rev 1.0 of
PCI Power Management Interface Specification
the
overwritten by BIOS via 6Ah, or loaded from an external EEPROM to 010b for
compliance with PCI-PM 1.1.
PME operation.
= 0, bit 15 shall always be zero. If V
AUX_AV
current requirement.
AUX
PME can be asserted.
AUX
. These bits can also be
= 1, bit 15 shall
PME.
9397 750 06854
Objective specificationRev. 01 — 4 February 200018 of 58