19.07.2014 Views

PIC24HJ64 Datasheet

PIC24HJ64 Datasheet

PIC24HJ64 Datasheet

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

PIC24HJ32GP302/304, <strong>PIC24HJ64</strong>GPX02/X04, AND PIC24HJ128GPX02/X04<br />

3.0 MEMORY ORGANIZATION<br />

Note: This data sheet summarizes the features<br />

of the PIC24HJ32GP302/304,<br />

<strong>PIC24HJ64</strong>GPX02/X04,<br />

and<br />

PIC24HJ128GPX02/X04 families of<br />

devices. It is not intended to be a comprehensive<br />

reference source. To complement<br />

the information in this data sheet, refer to<br />

the PIC24H Family Reference Manual,<br />

“Section 4. Program Memory”<br />

(DS70238), which is available from the<br />

Microchip website (www.microchip.com).<br />

The PIC24HJ32GP302/304, <strong>PIC24HJ64</strong>GPX02/X04,<br />

and PIC24HJ128GPX02/X04 architecture features<br />

separate program and data memory spaces and<br />

buses. This architecture also allows the direct access<br />

of program memory from the data space during code<br />

execution.<br />

3.1 Program Address Space<br />

The program address memory space of the<br />

PIC24HJ32GP302/304, <strong>PIC24HJ64</strong>GPX02/X04, and<br />

PIC24HJ128GPX02/X04 devices is 4M instructions.<br />

The space is addressable by a 24-bit value derived<br />

either from the 23-bit Program Counter (PC) during<br />

program execution, or from table operation or data<br />

space remapping as described in Section 3.4<br />

“Interfacing Program and Data Memory Spaces”.<br />

User application access to the program memory space<br />

is restricted to the lower half of the address range<br />

(0x000000 to 0x7FFFFF). The exception is the use of<br />

TBLRD/TBLWT operations, which use TBLPAG to<br />

permit access to the Configuration bits and Device ID<br />

sections of the configuration memory space.<br />

The memory map for the PIC24HJ32GP302/304,<br />

<strong>PIC24HJ64</strong>GPX02/X04, and PIC24HJ128GPX02/X04<br />

devices is shown in Figure 3-1.<br />

FIGURE 3-1:<br />

PROGRAM MEMORY MAP FOR PIC24HJ32GP302/304, <strong>PIC24HJ64</strong>GPX02/X04,<br />

AND PIC24HJ128GPX02/X04 DEVICES<br />

Configuration Memory Space User Memory Space<br />

Note:<br />

PIC24HJ32GP302/304<br />

GOTO Instruction<br />

Reset Address<br />

Interrupt Vector Table<br />

Reserved<br />

Alternate Vector Table<br />

User Program<br />

Flash Memory<br />

(11264 instructions)<br />

Unimplemented<br />

(Read ‘0’s)<br />

Reserved<br />

Device Configuration<br />

Registers<br />

Reserved<br />

DEVID (2)<br />

Memory areas are not shown to scale.<br />

<strong>PIC24HJ64</strong>GPX02/X04<br />

GOTO Instruction<br />

Reset Address<br />

Interrupt Vector Table<br />

Reserved<br />

Alternate Vector Table<br />

User Program<br />

Flash Memory<br />

(22016 instructions)<br />

Unimplemented<br />

(Read ‘0’s)<br />

Reserved<br />

Device Configuration<br />

Registers<br />

Reserved<br />

DEVID (2)<br />

PIC24HJ128GPX02/X04<br />

GOTO Instruction<br />

Reset Address<br />

Interrupt Vector Table<br />

Reserved<br />

Alternate Vector Table<br />

User Program<br />

Flash Memory<br />

(44032 instructions)<br />

Unimplemented<br />

(Read ‘0’s)<br />

Reserved<br />

Device Configuration<br />

Registers<br />

Reserved<br />

DEVID (2)<br />

Reserved Reserved Reserved<br />

0x000000<br />

0x000002<br />

0x000004<br />

0x0000FE<br />

0x000100<br />

0x000104<br />

0x0001FE<br />

0x000200<br />

0x0057FE<br />

0x005800<br />

0x00ABFE<br />

0x00AC00<br />

0x0157FE<br />

0x015800<br />

0x7FFFFE<br />

0x800000<br />

0xF7FFFE<br />

0xF80000<br />

0xF80017<br />

0xF80018<br />

0xFEFFFE<br />

0xFF0000<br />

0xFF0002<br />

0xFFFFFE<br />

© 2008 Microchip Technology Inc. Preliminary DS70293B-page 19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!