The Icache and Dcache controllers are sending
out invalid accesses to Wishbone address space
that is not wired to peripherals, due to a old
Microwat workaround being re-added.
This commit removes the workaround and reenables
the lower address bits, re-aligning the *Cache and
Wishbone address spaces, thus allowing access to
the peripherals.
This partially resolves bug #812
# nmigen understands I/O directions (defined by i_ and o_ prefixes)
ibus, dbus, dmi = self.ibus, self.dbus, self.dmi
- # sigh, microwatt wishbone address is borked, it contains the 3 LSBs
ibus_adr = Signal(32)
dbus_adr = Signal(32)
- m.d.comb += ibus.adr.eq(ibus_adr[3:])
- m.d.comb += dbus.adr.eq(dbus_adr[3:])
+ m.d.comb += ibus.adr.eq(ibus_adr)
+ m.d.comb += dbus.adr.eq(dbus_adr)
kwargs = {
# clock/reset signals