Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Help wanted! What doest the "memory mapping" mean

Status
Not open for further replies.

johnli100

Member level 1
Joined
Apr 13, 2004
Messages
32
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Activity points
243
when we do the SoC design, I always hear the word "memroy mapping". now we have a case that all the memories in the SoC are mapped into one memory, and it includes h/w registers, stack, interrupt vectors, and code rom, etc.This memory has the sequential addressing.

Right now I have the difficult to understand this concept: why we can mapp all these different memories into one memory? can both ROM and RAM be mapped into this memory? Since the address of this mapping memory is sequential, how can we access the different parts at the same time? In one word, how to understand memory mapping?

Your prompty reply is highly appreciated! Thanks a lot!
 

Re: Help wanted! What doest the "memory mapping" m

johnli100 said:
when we do the SoC design, I always hear the word "memroy mapping". now we have a case that all the memories in the SoC are mapped into one memory, and it includes h/w registers, stack, interrupt vectors, and code rom, etc.This memory has the sequential addressing.

Right now I have the difficult to understand this concept: why we can mapp all these different memories into one memory? can both ROM and RAM be mapped into this memory? Since the address of this mapping memory is sequential, how can we access the different parts at the same time? In one word, how to understand memory mapping?

Your prompty reply is highly appreciated! Thanks a lot!

Hi John..
Memory mapping means that you allocate same memory is used for storing different data for different purpose as you have mentioned.

The Advantage of all memories mapped to same memory is that it save Area. ROM and RAM cannot be mapped on the same memory because RAM losses data when it is switched of where are ROM retains it. Also RAM allows write operation which ROM does not allow. In short they are quite different in there functionality.

The addressing of this memory need not to be squential. In case you are able to access two different location of memories at the same time then you might be using multiport memories which allows simutaneous reading at different addresses.

I hope it helps..
 

    johnli100

    Points: 2
    Helpful Answer Positive Rating
Re: Help wanted! What doest the "memory mapping" m

NITU, thank u so much!
I marked ur reply as helped. Meanwhile, I want to clarify one thing: how could a memory be multiport? If we mapped all the memory blocks into one memory, this should have be a single port or dual port one, right? Could u please explain me the mapped memory structure therefore i can understand it.

thanks a lot!

nitu said:
Hi John..
Memory mapping means that you allocate same memory is used for storing different data for different purpose as you have mentioned.

The Advantage of all memories mapped to same memory is that it save Area. ROM and RAM cannot be mapped on the same memory because RAM losses data when it is switched of where are ROM retains it. Also RAM allows write operation which ROM does not allow. In short they are quite different in there functionality.

The addressing of this memory need not to be squential. In case you are able to access two different location of memories at the same time then you might be using multiport memories which allows simutaneous reading at different addresses.

I hope it helps..
 

Re: Help wanted! What doest the "memory mapping" m

Thanks John..

Let us start with some example :
Suppose I have memory of 512x8 ...

I assign first 128 addresses for register file..
Next 128 addresses for Stacks..
Next 256 to some code vector...

In case our RAM is single port then we cannot have data for Stack and vector at the same time. There would be atleast one clock cycle delay between these two different data. Now suppose we want both data to get output at the same time we then require dual port memory one port of which we would give Stack address and on the other port we would give the vector address. Note that we can have dual pors in which we do not need synchronization between clocks of both the ports.

For accessing all three data simutaneously we would need memory with more than 2 ports which is called multiport in general.

There could be controller which can manage addressing issues but the addressing need not be squential.
 

Thank you NITU, now I understand.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top