ERROR DETECTION
The errors detected and recorded in the STATUS register are
defined as follows:
The alternating 1’s and 0’s between information bits are used
to check whether the GP521 is synchronized with the
prgramming unit. The information bits are defined as:
f (function bit) f = 0 Write data to specified memory
address
TRANSMISSION ERROR
This error occurs whenever an incoming parity error is
detectedand/ortheGP521detectsthatitisnotsynchronized
with the programming unit. This type of error sets a STATUS
bit and puts the circuit in unsynchronized mode. The
STATUS bit clears after a successful read/write operation.
f = 1 Read data from specified memory
address
a6a5a4a3a2a1a0
d6d5d4d3d2d1d0
7 bit address to read/write to
7 bit data to write to memory
BAD ADDRESS and / or OPERATION ERROR:
Status register is set when:
pO
parity bit for information from
program unit (odd parity)
- any write operation is attempted while an EEPROM
write is in progress
r6r5r4r3r2r1r0
7 bit data. If f=0, the data will echo the
7 bit data sent by the programming
unit. If f=1, the data is read from the
memory address.
- a write operation is attempted on the ID register
- any operation is attempted on an unused address.
This type of error sets a STATUS bit and sets the parity bit of
p1
Parity bit for data sent by GP521
(odd parity)
the returned data stream to the incorrect value. This bit is
resetattheconclusionofa acceptablereadorwriteoperation.
SYNCHRONIZATION OF THE GP521 WITH PROGRAMMER
The synchronization of the program with the GP521 is done
using a code in the data stream which cannot occur during a
correct dialogue. The GP521 looks for the following data
sequence in the data stream:
COMMUNICATION FORMAT
The dialogue between the programming unit and the GP521
consists of 32 bits being sent to the GP521 which responds by
returning16bitstotheprogrammingunit. Acompletedialogue
consisting of 48 bits as seen on the DATA line is as follows:
DATA = 1010
where the final synchronization bit is a low. The next bit
following the 4 bit synch code is assumed to be part of a valid
dialogue. Once the GP521 is synchronized with the program
unit, it is possible to perform a continuous sequence of dia-
logues without having to re-synchronize unless transmission
errors occur. It is also possible to pause and continue the
transmissionprovidedtheproperrelationshipbetweenCLOCK
and DATA is maintained.
From Program Unit:
f
1 a0 0 a1 1 a2 0 a3 1 a4 0 a5
1 a6
1 p0
0
0
d0 1 d1 0 d2 1 d3 0 d4 1 d5 0 d6
From GP521:
r0 1 r1 0 r2 1 r3 0 r4 1 r5 0 r6 1 p1 0
To guarantee that the circuit synchronizes properly, the inter-
nal shift registers should be cleared by preceding the synch
code with a string of bits containing a synch error.
The dialogue begins with the bit f and ends with the two bits p1,
0. The data and synchronization bits must be correct on the
falling edge of CLOCK. This relationship is shown in Figure 12.
An example of the data sequence that guarantees a correctly
synchronized circuit is:
DATA = 11111010
CLOCK
aO
a1
f
DATA
Synch bit alternates 1 0 1 0 1 ...
Fig. 12
510 - 79 - 06
7