Functional Description
2
I C Read
This command allows the ICH10 to perform block reads to certain I2C devices, such as
serial E2PROMs. The SMBus Block Read supports the 7-bit addressing mode only.
However, this does not allow access to devices using the I2C “Combined Format” that
has data bytes after the address. Typically these data bytes correspond to an offset
(address) within the serial memory chips.
Note:
This command is supported independent of the setting of the I2C_EN bit. The I2C Read
command with the PEC_EN bit set produces undefined results. Software must force
both the PEC_EN and AAC bit to 0 when running this command.
For I2C Read command, the value written into bit 0 of the Transmit Slave Address
Register (SMB I/O register, offset 04h) needs to be 0.
The format that is used for the command is shown in Table 5-48.
Table 5-48. I2C Block Read
Bit
Description
1
8:2
9
Start
Slave Address — 7 bits
Write
10
Acknowledge from slave
Send DATA1 register
Acknowledge from slave
Repeated Start
18:11
19
20
27:21
28
Slave Address — 7 bits
Read
29
Acknowledge from slave
Data byte 1 from slave — 8 bits
Acknowledge
37:30
38
46:39
47
Data byte 2 from slave — 8 bits
Acknowledge
–
Data bytes from slave / Acknowledge
Data byte N from slave — 8 bits
NOT Acknowledge
–
–
–
Stop
The ICH10 will continue reading data from the peripheral until the NAK is received.
218
Datasheet