HOME       UP       PREV       FURTHER NOTES       NEXT (A Basic Micro-Controller)  

Memory Address Mapping and Decode

-------  -----     -----------------------
Start    End       Resource
-------  -----     -----------------------
0000     03FF      EPROM
0400     3FFF      Unused images of EPROM
4000     7FFF      RAM
8000     BFFF      Unused
C000     C001      Registers in the UART
C002     FFFF      Unused images of the UART
-------  -----     -----------------------
The following RTL describes the required glue logic for the memory map:

  module address_decode(abus, rom_cs, ram_cs, uart_cs);
     input [15:14] abus;
     output rom_cs, ram_cs, uart_cs;
     assign rom_cs = (abus == 2'b00);  // 0x0000
     assign ram_cs = (abus == 2'b01);  // 0x4000
     assign uart_cs = !(abus == 2'b11);// 0xC000
  endmodule


5: (C) 2008-12, DJ Greaves, University of Cambridge, Computer Laboratory.