IDT SMBus Interfaces
PES24N3A User Manual
6 - 8
April 10, 2008
Notes
An example of an event that may lead to a state conflict is a hot reset. When a hot reset occurs, one or
more hot-plug register control fields may be re-initialized to its default value. When this occurs, the internal
PES24N3A state of the hot-plug signals is in conflict with the state of I/O expander hot-plug output signals.
In such a situation, the PES24N3A will initiate an SMBus transaction to modify the state of the I/O expander
hot-plug outputs.
Each I/O expander has an open drain interrupt output that is asserted when a pin configured as an input
changes state from the value previously read. Each interrupt output from an I/O expander should be
connected to the corresponding PES24N3A I/O expander interrupt input. Since the PES24N3A I/O
expander interrupt inputs are GPIO alternate functions, the corresponding GPIOs should be initialized
during configuration to operate in alternate function mode. See Chapter 5, General Purpose I/O.
Whenever the PES24N3A needs to change the state of an I/O expander signal output, a master SMBus
transaction is initiated to update the state of the I/O expander. This write operation causes the corre-
sponding I/O expander to change the state of its output(s). The PES24N3A will not update the state of an I/
O expander output more frequently than once every 40 milliseconds. This 40 millisecond time interval is
referred to as the I/O expander update period.
Whenever an input to the I/O expander changes state from the value previously read, the interrupt
output of the I/O expander is asserted. This causes the PES24N3A to issue a master SMBus transaction to
read the updated state of the I/O expander inputs. Regardless of the state of the interrupt output of the I/O
expander, the PES24N3A will not issue a master SMBus transaction to read the updated state of the I/O
expander inputs more frequently than once every 40 milliseconds (i.e., the I/O expander update period).
This delay in sampling may be used to eliminate external debounce circuitry.
The I/O expander interrupt request output is negated whenever the input values are read or when the
input pin changes state back to the value previously read. The PES24N3A ensures that I/O expander trans-
actions are initiated on the master SMBus in a fair manner. This guarantees that all I/O expanders have
equal service latencies. Any errors detected during I/O expander SMBus read or write transactions is
reflected in the status bits of the SMBus Status (SMBUSSTS) register.
The I/O Expander Interface (IOEXPINTF) register allows direct testing and debugging of the I/O
expander functionality. The Select (SEL) field in the IOEXPINTF register selects the I/O expander number
on which other fields in the register operate.
The I/O Expander Data field in the IOEXPINTF register reflects the current state, as viewed by the
PES24N3A, of the I/O expander inputs and outputs selected by the SEL field.
Writing a one to the Reload I/O Expander Signals (RELOADIOEX) bit in the IOEXPINTF register causes
the PES24N3A to generate SMBus write and read transactions to the I/O expander number selected in the
SEL field. This results in the value of the IOEDATA field being updated to reflect the current state of the
corresponding I/O expander signals. This feature may be used to aid in debugging I/O expander operation.
For example, a user who neglects to configure a GPIO as an alternate function may use this feature to
determine that master SMBus transactions to the I/O expander function properly and that the issue is with
the interrupt logic.
The IO Expander Test Mode (IOEXTM) bit in the IOEXPTINF register allows an I/O expander test mode
to be entered. When this bit is set, the PES24N3A core logic outputs are ignored and the values written to
the I/O expander for output bits are the values in the IOEDATA field. In this mode, the PES24N3A issues a
transaction to update the state of the I/O expander whenever a bit corresponding to an I/O expander output
changes state due to a write to the IOEDATA field. Bits in the IOEDATA field that correspond to outputs are
dependent on the I/O expander number selected in the SEL field in the IOEXPINTF register. The outputs for
each I/O expander number are shown in Tables 6.5 through 6.7.
Summary of Contents for 89HPES24N3A
Page 10: ...IDT Table of Contents PES24N3A User Manual iv April 10 2008 Notes...
Page 12: ...IDT List of Tables PES24N3A User Manual vi April 10 2008 Notes...
Page 14: ...IDT List of Figures PES24N3A User Manual viii April 10 2008 Notes...
Page 18: ...IDT Register List PES24N3A User Manual xii April 10 2008 Notes...
Page 64: ...IDT Link Operation PES24N3A User Manual 4 8 April 10 2008 Notes...
Page 88: ...IDT Power Management PES24N3A User Manual 7 4 April 10 2008 Notes...
Page 160: ...IDT Configuration Registers PES24N3A User Manual 9 66 April 10 2008 Notes...