SNIU028D February 2016 – September 2020 UCD3138 , UCD3138064 , UCD3138064A , UCD3138128 , UCD3138A , UCD3138A64
The Block Write protocol is similar to a Write Word in its structure, with the exception of transmission of more than 2 data bytes in the message. Additionally, the first data byte following the command byte specifies the length of the block of data bytes. As with a majority of the message protocols, the PEC byte can be appended to the end of the write data to the Slave.
To initiate a Block Write message on the PMBus, the Master Control Register is programmed with the block length in the Byte Count bits. The block length is the number of data bytes, excluding the command byte and the first data byte that contains the block length. The PMBus Interface will automatically insert the block length into the message if the number of data bytes specified by the firmware exceeds 2. The initial write data is loaded into the Transmit Data Register. With bits 7-0 representing the command byte, the remaining 3 bytes represent the first three data bytes following the block length.
Following programming of the Master Control Register, the Block Write message is initiated on the PMBus. If the block length exceeds three bytes, the PMBus Interface will provide a data request interrupt, indicating the need for additional data bytes in the Transmit Data Register. The PMBus Interface assumes that if more than 4 bytes are needed to complete the message, the firmware will utilize all 4 bytes when programming the Transmit Data Register. If less than 4 bytes are needed to finish the Block Write message, the firmware only needs to program the appropriate bits of the Transmit Data Register.
Upon completion of the message, the PMBus Interface issues an EOM interrupt. The interface can be checked to verify the slave accepted the block of write data.