beautypg.com

Rainbow Electronics W79E8213R User Manual

Page 68

background image

Preliminary W79E8213/W79E8213R Data Sheet

Publication Release Date: July 11, 2008

- 68 -

Revision A2

16. TIME ACCESS PROCTECTION

The W79E8213 series have a new feature, like the Watchdog Timer which is a crucial to proper
operation of the system. If left unprotected, errant code may write to the Watchdog control bits
resulting in incorrect operation and loss of control. In order to prevent this, the W79E8213 series have
a protection scheme which controls the write access to critical bits. This protection scheme is done
using a timed access.

In this method, the bits which are to be protected have a timed write enable window. A write is
successful only if this window is active, otherwise the write will be discarded. This write enable window
is open for 3 machine cycles if certain conditions are met. After 3 machine cycles, this window
automatically closes. The window is opened by writing AAh and immediately 55h to the Timed Access
(TA) SFR. This SFR is located at address C7h. The suggested code for opening the timed access
window is

TA

REG

0C7h

;

Define

new

register

TA,

@0C7h

MOV

TA, #0AAh

MOV

TA,

#055h


When the software writes AAh to the TA SFR, a counter is started. This counter waits for 3 machine
cycles looking for a write of 55h to TA. If the second write (55h) occurs within 3 machine cycles of the
first write (AAh), then the timed access window is opened. It remains open for 3 machine cycles,
during which the user may write to the protected bits. Once the window closes the procedure must be
repeated to access the other protected bits.


Examples of Timed Assessing are shown below.

Example 1: Valid access

MOV

TA, #0AAh

; 3 M/C Note: M/C = Machine Cycles

MOV

TA,

#055h

;

3

M/C

MOV

WDCON,

#00h

;

3

M/C

Example 2: Valid access

MOV

TA,

#0AAh

;

3

M/C

MOV

TA,

#055h

;

3

M/C

NOP

; 1 M/C

SETB

EWRST ;

2

M/C

Example 3: Valid access

MOV

TA, #0AAh

; 3 M/C

MOV

TA,

#055h

;

3

M/C

ORL

WDCON,

#00000010B

;

3M/C

Example 4: Invalid access

MOV

TA,

#0AAh

;

3

M/C

MOV

TA,

#055h

;

3

M/C

NOP

; 1 M/C

NOP

; 1 M/C

CLR

EWT

; 2 M/C