beautypg.com

2 80515 architectural overview, 1 memory organization, Program memory – Maxim Integrated 71M6521BE Energy Meter IC Family Software User Manual

Page 103: External data memory, 80515 architectural overview, Memory organization

background image

71M652X Software User’s Guide

Revision 1.7

TERIDIAN Proprietary

103 of 138

© Copyright 2005-2007 TERIDIAN Semiconductor Corporation

6.2 80515 ARCHITECTURAL OVERVIEW

6.2.1 Memory organization

The 80515 MPU core incorporates the Harvard architecture with separate code and data spaces.

Memory organization in the 80515 is similar to that of the industry standard 8051. There are three memory areas:
program memory (External Flash), external data memory (External RAM), and internal data memory (Internal RAM).

P rogram m em ory

FF FF H

0000H

E x ternal data m em ory

8000H

4000H

C 000H

00H

FFH

Internal data m em ory

FF FF H

0000H

8000H

4000H

C 000H

Figure 6-1: Memory Map

Program Memory

The 80515 can address up to 64kB of program memory space from 0000H to FFFFH. Program memory is read when
the MPU fetches instructions or performs a MOVC.

After reset, the MPU starts program execution from location 0000H. The lower part of the program memory includes a
reset and interrupt vectors. The interrupt vectors are spaced at 8-byte intervals, starting from 0003H.

External Data Memory

The 80515 can address up to 64kB of external data memory in the space from 0000H to FFFFH. The 80515 writes into
external data memory when the MPU executes a MOVX @Ri,A or MOVX @DPTR,A instruction. The external data
memory is read when the MPU executes a MOVX A,@Ri or MOVX A,@DPTR instruction.

There is an improved variable length access for the MOVX instructions to access fast or slow external RAM and
external peripherals. The three low ordered bits of the CKCON register define the stretch memory cycles. Setting all the
CKCON stretch bits to one allows access to very slow external RAM or external peripherals.

Table 6-2 shows how the signals of the External Memory Interface change when stretch values are set from 0 to 7. The
widths of the signals are counted in MPU clock cycles. The post-reset state of the CKCON register, which is in bold in
the table, performs the MOVX instructions with a stretch value equal to 1.