CPC700 User’s Manual—Preliminary
8-3
The slave data buffer is an exact copy of the master data buffer. The data contained in this buffer is either
received from the IIC bus when the IIC interface is addressed as a slave during a write operation, or is sent
out onto the IIC bus when the IIC interface is addressed as a slave during a read operation.
The Lo and Hi master address registers are used to form the address that the IIC interface transmits on the
IIC bus. The Hi master address register is only used for 10-bit addressing and need not be programmed in
7-bit addressing mode.
The control register is used to start and stop IIC interface master transfers on the IIC bus. When a transfer
is started, the IIC interface uses the values in this register to determine the type and size of the transfer.
The mode control register is used to set the major modes of operation on the IIC bus. In addition, the mas-
ter and slave data buffers can be forced into the empty state.
The status register contains a summarized view of the current state of the IIC interface.
The extended status register contains additional information describing the current state of the IIC inter-
face.
The Lo and Hi slave address registers are used to program the slave address of the IIC interface. The Hi
slave address register is only used for 10-bit addressing and need not be programmed in 7-bit addressing
mode.
The clock divide register is used to establish a frame of reference between the IIC interface’s system clock
and the IIC bus’s serial clock.
The interrupt mask register is used to control which interrupts can be issued.
The transfer count register is used to indicate the number of bytes actually transferred across the IIC bus in
a master or a slave operation.
The extended control and slave status register provides additional control of some internal IIC interface
functions and contains the status for slave operations.
The direct control register provides direct control and monitoring of the IIC clock (SCL) and data (SDA) sig-
nals for error recovery functions. These signals are IIC0_SCL and IIC0_SDA for the IIC0 interface, and
IIC1_SCL and IIC1_SDA for the IIC1 interface.
8.4 IIC Register Definitions
The following sections contains the bit definitions for the various registers in the IIC interface.
Note: Register bit definitions are shown in big-endian notation. (bit-0 is msb and bit 7 is lsb.)
8.4.1 Master and Slave Data Buffers
The master data buffer is a FIFO, not a register in the conventional sense. It is four-bytes deep by one-byte
wide and can be accessed via byte or double-byte (halfword) operations. When the buffer is written with
one byte, the byte is put into the FIFO and the hardware automatically pushes the byte into deepest unoc-
cupied location in the FIFO. The byte advances one FIFO stage per clock. Thus, if the FIFO is empty, a
total of four clocks are needed, one for each stage, for the byte to walk to the first stage of the FIFO. This
timing is important to consider when the program is going to try to read the FIFO immediately after data
was written. When a master transfer is requested, the IIC interface handles this latency. When the buffer is
written with two bytes via one double-byte access, and the FIFO is empty, byte 0, the most significant byte
Содержание CPC700
Страница 1: ...CPC700 Memory Controller and PCI Bridge User s Manual Version 1 1 Issue Date 3 22 00 Preliminary...
Страница 10: ...Table of Contents x Table of Contents...
Страница 16: ...Tables xvi List of Tables...
Страница 28: ...1 12 CPC700 User s Manual Preliminary...
Страница 72: ...3 36 Processor Interface...
Страница 132: ...4 60 Memory Controller...
Страница 184: ...5 52 PCI Interface...
Страница 194: ...6 10 Clock Power Management and Reset...
Страница 224: ...8 18 IIC...
Страница 244: ...10 10 Interrupt Controller...
Страница 246: ...I 11 2 JTAG...
Страница 250: ...12 4 Processor Local Bus PLB...
Страница 262: ...14 10 Register Summary...
Страница 267: ...CPC700 User s Manual Preliminary...