package MemoryMap;
/*=== Project imports ==== */
import defined_types::*;
- import socgen::*;
+ import fast_memory_map::*;
import slow_memory_map::*;
`include "instance_defines.bsv"
`include "core_parameters.bsv"
/*========================= */
-function Tuple2 #(Bool, Bit#(TLog#(Num_Slaves)))
+function Tuple2 #(Bool, Bit#(TLog#(Num_Fast_Slaves)))
fn_addr_to_slave_num (Bit#(`PADDR) addr);
- let ft = FastTuple2(addr);
+ let ft = fn_addr_to_fastslave_num(addr);
Bool isfast = tpl_1(ft);
- Bit#(TLog#(Num_Slaves)) x = tpl_2(ft);
+ Bit#(TLog#(Num_Fast_Slaves)) x = tpl_2(ft);
- let st = SlowTuple2(addr);
+ let st = fn_slow_address_mapping(addr);
Bool isslow = tpl_1(st);
Bit#(TLog#(Num_Slow_Slaves)) y = tpl_2(st);
if (isfast)
function Bool is_IO_Addr(Bit#(`PADDR) addr); // TODO Shuold be PADDR
if(addr>=`DebugBase && addr<=`DebugEnd)
return (True);
- else if(addr>=`SDRAMMemBase && addr<=`SDRAMMemEnd)
- `ifdef FlexBus
- return (True);
- `else
- return (False);
+ else
+ `ifdef SDR0_0_Base
+ if(addr>=`SDR0_0_Base && addr<=`SDR0_0_End)
+ `ifdef FlexBus
+ return (True);
+ `else
+ return (False);
+ `endif
+ `else
+ return (False);
`endif
`ifdef BOOTROM
else if(addr>=`BootRomBase && addr<=`BootRomEnd)