beautypg.com

8 special function registers, Pecial, Unction – Maxim Integrated Secure Microcontroller User Manual

Page 33: Egisters

background image

Secure Microcontroller User’s Guide

33 of 187

Figure 4-8. Reloading a DS5001/DS5002 Series Device































4.8 Special Function Registers

The secure microcontroller uses SFRs to control most functions. In many cases, an SFR contains 8 bits,
each of which control a function or report status on a function. The SFRs reside in register locations
80–FFh. They can be accessed using MOV instructions with direct addressing. In addition, some of the
SFRs are bit addressable. This can be particularly useful when enabling a function without modifying
others in the register since an SFR can contain eight unrelated control and status functions.

With a few minor exceptions, the secure microcontroller provides identical SFRs to a standard 8051, plus
extra locations to control unique functions. Modifications to the standard 8051 SFR map are that the
PCON register GF1 (PCON.3) and GF0 (PCON.2) have been replaced by the enable power-fail interrupt
and the enable watchdog-timer bits, respectively. In addition, the secure microcontroller requires a timed-
access procedure before allowing software to modify the STOP bit (PCON.1). This prevents errant
software from creating a unrecoverable situation for the watchdog timer. The remaining SFRs are either
identical to the 8051 or new to the architecture.

There are some differences between the DS5000 series and the DS5001/DS5002 series SFRs.

Figure 4-9

and

Figure 4-10

show an overview of their respective SFR maps. Detailed descriptions follow.

Differences are denoted under the particular register. In some cases, the DS5001 and DS5002 have
registers that do not appear in the DS5000 (noted under the particular register).

DATA

MEMORY

SPACE

DATA

MEMORY

SPACE

DATA

MEMORY

SPACE

PROGRAM

MEMORY

SPACE

PROGRAM

MEMORY

SPACE

PROGRAM

MEMORY

SPACE

BEFORE LOADING
PA3-0 = 0100b

DURING LOADING
PA3-0 = 0001b

AFTER LOADING
PA3-0 = 1010b

7FFFh

A000h

4000h

1000h

0000h

RANGE (32kB)

NEW PARTITION (24kB)

OLD PARTITION (16kB)

TEMP PARTITION (2kB)

0kB

= NO RAM PROGRAM MEMORY


= NV RAM DATA MEMORY