This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

About ascess Ram's certain address

Dear sir,

i just got a testing board,which contain a P89c51rd2.
The port 0 and port 2 (lower 4 bit) is connect to a external ram DS1643(8k).

As the DS1643 contain a real time clock inside it at the final eight byte.

I want to ask that
1. how can i know the starting and ending
address of the external ram.

2. Moreover, when a external rom is also
connected to it, how can i know the
rom's address?

3. Is it possible for me to allocate
address to it?

would you my give some advice to me, and any referance material from the web?

thx!

Raul

Parents

  • 1. It depends on your board. Check your manual and schematic to see how the address lines are decoded. Most likely, your 8k RAM is at addresses X:0 through X:fff. (Only 12 pins of address bus are connected?)

    The datasheet for your processor will describe any fancy address mapping logic it might have internally.

    2. The address space for the program store in a 8051 is separate from the data store. It seems as though your parts have built-in flash to serve as program store. Depending on how your board is wired, that internal flash can be disabled entirely; if not, it looks as though the internal flash occupies the lower 16/32/64k of address space. There's also a 1k boot ROM that lives at the very top of the memory space. The external porogram ROM would be visible at any address not obscured by the internal program store.

    The data sheet says "up to 64kbytes external program memory if the internal program memory", which could mean either that you have less external memory visible, or that you have to disable the internal memory to see any external memory at all. You'll have to read the datasheet closely to be sure.

    3. Again, take a look at the data sheet. It doesn't look like to me that there's any internal address mapping hardware. Your eval board may have that feature, as well.


Reply

  • 1. It depends on your board. Check your manual and schematic to see how the address lines are decoded. Most likely, your 8k RAM is at addresses X:0 through X:fff. (Only 12 pins of address bus are connected?)

    The datasheet for your processor will describe any fancy address mapping logic it might have internally.

    2. The address space for the program store in a 8051 is separate from the data store. It seems as though your parts have built-in flash to serve as program store. Depending on how your board is wired, that internal flash can be disabled entirely; if not, it looks as though the internal flash occupies the lower 16/32/64k of address space. There's also a 1k boot ROM that lives at the very top of the memory space. The external porogram ROM would be visible at any address not obscured by the internal program store.

    The data sheet says "up to 64kbytes external program memory if the internal program memory", which could mean either that you have less external memory visible, or that you have to disable the internal memory to see any external memory at all. You'll have to read the datasheet closely to be sure.

    3. Again, take a look at the data sheet. It doesn't look like to me that there's any internal address mapping hardware. Your eval board may have that feature, as well.


Children