Aliasing - quick description : LUSENET : ece342 : One Thread

A description of aliasing should be available from any CompOrg level textbook, but I will give a brief description here.

The 68K uses 24-bit addresses. If you want to put a byte-wide register somewhere in that address space so that only *one* specific address will access it, then you need to specify all 24 bits of the address. Let's say the address is $200000. Now let's assume that you don't specify *all* of the address bits; we'll leave ADDR(7 DOWNTO 4) as don't cares, since we don't want to hook them up to our circuit. The address now looks like $2000X0.

We've saved hooking up 4 bits of address. What addresses will access the register now? We can use $200000, $200010, $200020, ..., $2000F0 and they will all access our register. Said another way, it looks like there are 16 (2^4) copies of our register scattered throughout memory. They all access the same register, though. The addressing scheme is no longer unique, it is many-to-one. If we know that none of these addresses is being used by anyone else, then this is fine. Of course you can ignore even more address bits, and you will create more 'copies', but as long as no other devices decodes to that range it will work fine.


-- Robin Grindley (, January 25, 1999

Moderation questions? read the FAQ