Re: Memory map?
- From: fox@xxxxxxxxxxxxxxxxxxx
- Date: 28 Apr 2006 20:07:44 -0700
If you have an address space that is larger than the amount of
memory you are going to use then you use some address bits
or combinations of them to select io connections.
If you have a small address space and it is filled with memory
you have to disable the memory access circuits in addition
to enable your io on the addresses you use. If you used a 3-and
of address bit-15, address bit-1 and address bit-0 you would
get a true when addressing only addresses where those
bits were true. If you have only 32K or less of memory then
access to address 8003h would enable the io device connected.
In fact if you only used 3 bits in your decoder any address
above 8000h that had bits 0 and 1 true would select this
device, 8003, 8007, 800B, 800F, ... FFF3, FFF7, FFFB, FFFF
If you only needed two io devices you could use two bits,
if you needed 32 registers you would need to decode 6 bits
in your io device select circuit etc.
One advantage of using a memory mapped io design is that
you will use the regular memory access instructions and you
won't need any special or restricted 'port' access opcodes
to complicate things.
.
- References:
- Memory map?
- From: Fizzy
- Memory map?
- Prev by Date: Re: give some reference
- Next by Date: Re: PLEASE!
- Previous by thread: Re: Memory map?
- Next by thread: give some reference
- Index(es):
Relevant Pages
|