I am new at programming PIC24FJ1024GB610, and I just started reading the Manual.

On page 45/468, at Chapter 3.0 CPU. It is mentioned that:

The lower 32 Kbytes of the Data Space (DS) can be accessed linearly. The upper 32 Kbytes of the Data Space are referred to as Extended Data Space (EDS), to which the extended data RAM, EPMP memory space or program memory can be mapped.

What do they mean by that paragraph?

Is the EDS inside the Program Memory (as in the picture below)? If so how come it have Extended Data RAM and EPMP, when they are 16 bit addressable, and Program Memory Space is 24 bit addressable?

enter image description here

Kindly help me on this question.

  • \$\begingroup\$ Any findings? I am also facing similar question \$\endgroup\$
    – abhiarora
    Commented Mar 11, 2019 at 19:38

1 Answer 1


The passage you quote of course assumes you have already read the general architecture document. You need to go read that to understand data space addressing in general.

Briefly, the original architecture only envisioned 32 kB of RAM. The high bit of the 16-bit address was originally used to select the PSV (program space visibility) window. Since program memory can be much larger than this PSV window in data memory, a separate register (PSVPAG if I remember right) is used to select where in program memory the start of the PSV window is mapped to.

Extended data memory uses a similar mechanism. There is a additional register (don't remember its name right now) that specifies what part of extended memory is mapped to the start of a special extended data space window in the data address space.

  • \$\begingroup\$ If you mean did I read Harvard Arch. No, I just opened PIC24FJ... Manual, and started reading. So let me get that straight the MSB of the Data Bus, will be used to set a bit in a register, that will open an "Extended Data Space" in the upper 32KB of the Program Memory. Am I getting it right. (Sorry I am new to PIC24 Microcontrollers). \$\endgroup\$ Commented May 18, 2017 at 13:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.