Intel
®
81341 and 81342—SMBus Interface Unit
Intel
®
81341 and 81342 I/O Processors
Developer’s Manual
December 2007
868
Order Number: 315037-002US
the clock until such time that the data is delivered. Note that per the SMBus
specification, this cannot be longer than 25 ms. To set up an internal access, the
command register write is followed by four ADDR byte writes. Depending on the type of
access, these four bytes indicate either the Bus number, Device, Function, Extended
Register Offset, and Register Offset, or the Memory-mapped region selected and the
address within the region. The configuration type access utilizes the traditional bus
number, device, function, and register offset; but in addition, also uses an extended
register offset which expands the addressable register space from 256 bytes to
4 Kbytes. The memory-mapped type access redefines these bytes to be a memory-
mapped region selection byte, a filler byte which today is all zeroes, and then the
memory address within the region. Refer to the earlier tables, which display this
information. Note that the filler byte is today not utilized but enforces that both types
of accesses have the same number of address bytes, and allows for future expansion.
The Command Register (CMD) indicates the type and size of transfer. All configuration
accesses from the SMBus port are initiated by writing to the Command register. While a
command is in progress, all future writes or reads are NACKed by the 81341 and 81342
to avoid having registers overwritten while in use. There are two command size fields
to allow for more flexibility on how the data payload is transferred, both internally and
externally. Refer to the Command Register for more details on the size supported. The
command register also provides a begin bit and an end bit. These two bits support the
breaking of the SMBus transactions up into smaller transfers, by defining the start and
finish of an overall transfer.
The 81341 and 81342 SMBus interface supports byte, word, or block transfer sizes. A
byte size indicates that the data payload is transferred one byte at a time per SMBus
transaction. A word size indicates that the data payload is transferred one word (2
bytes) at a time in a single SMBus transaction. A block size allows a variable size data
payload to be transferred in a single SMBus transaction. When a block transfer is to be
performed an 8-bit byte-count field follows the command register. This byte-count field
provides the 81341 and 81342 target with the expected number of bytes to anticipate
from the SMBus Master. For a block read transaction, the 81341 and 81342 returns a
byte-count value to the master when returning read data. This provides the master
with a byte-count to anticipate. Note that on 81341 and 81342, the block transfer size
is limited to only a maximum of four bytes.