Datasheet
  71M6543F/71M6543G Data Sheet 
v2    69 
SPI Safe Mode 
Sometimes it is desirable to prevent the SPI interface from writing to arbitrary RAM locations and thus 
disturbing MPU and CE operation. This is especially true in AFE applications. For this reason, the SPI 
SAFE mode was created. In SPI SAFE mode, SPI write operations are disabled except for a 16 byte 
transfer region at address 0x400 to 0x40F. If the SPI host needs to write to other addresses, it must use 
the SPI_CMD register to request the write operation from the MPU. SPI SAFE mode is enabled by the 
SPI_SAFE bit (I/O RAM 0x270C[3]). 
Single-Byte Transaction 
If a transaction is a single byte, the byte is interpreted as SPI_CMD. Regardless of the byte value, 
single-byte transactions always update the SPI_CMD register and cause an SPI interrupt to be generated.  
Multi-Byte Transaction 
As shown in Figure 23, multi-byte operations consist of a 16 bit address field, an 8 bit CMD, a status byte, 
and a sequence of data bytes. A multi byte transaction is three or more bytes. 
A15 A14 A1
A0
C0
0 31
x
D6 D1 D0 D7 D6 D1 D0
C5C6C7
(From Host) SPI_CSZ
(From Host) SPI_CK
(From Host) SPI_DI
(From 6543) SPI_DO
8 bit CMD
16 bit Address DATA[ADDR]
DATA[ADDR+1]
15 16 23 24 32 39
Extended Read . . .
SERIAL READ
A15
A14
A1 A0 C0C5C6C7x
8 bit CMD16 bit Address
DATA[ADDR]
DATA[ADDR+1]
Extended Write . . .
SERIAL WRITE
D6 D1 D0 D7 D6 D1 D0
x
HI Z
HI Z
Status Byte
ST7 ST6 ST5 ST0 D7
40 47
0 31
15 16 23 24 32 39 40 47
Status Byte
D7
ST7 ST6 ST5 ST0
(From Host) SPI_CSZ
(From Host) SPI_CK
(From Host) SPI_DI
(From 6543) SPI_DO
Figure 23: SPI Slave Port - Typical Multi-Byte Read and Write operations 
Table 57: SPI Command Sequences 
Command Sequence  Description 
ADDR 1xxx xxxx STATUS 
Byte0 ... ByteN 
Read data starting at ADDR. ADDR is auto-incremented until SPI_CSZ 
is raised. Upon completion, SPI_CMD (SFR 0xFD) is updated to 1xxx xxxx 
and an SPI interrupt is generated. The exception is if the command 
byte is 1000 0000. In this case, no MPU interrupt is generated and 
SPI_CMD is not updated. 
ADDR 0xxx xxxx STATUS 
Byte0 ... ByteN 
Write data starting at ADDR. ADDR is auto-incremented until SPI_CSZ is 
raised. Upon completion, SPI_CMD is updated to 0xxx xxxx and an SPI 
interrupt is generated. The exception is if the command byte is 0000 
0000. In this case, no MPU interrupt is generated and SPI_CMD is not 
updated. 
Table 58: SPI Registers 
Name  Location  Rst  Wk  Dir  Description 
EX_SPI 
2701[7] 
0 
0 
R/W 
SPI interrupt enable bit. 
SPI_CMD 
SFR FD[7:0] 
– 
– 
R 
SPI command.  The 8-bit command from the bus master. 
SPI_E 
270C[4]  1  1  R/W 
SPI port enable bit.  It enables the SPI interface on pins 
SEGDIO36 – SEGDIO39. 
IE_SPI 
SFR F8[7] 
0 
0 
R/W 
SPI interrupt flag.  Set by hardware, cleared by writing a 0. 










