[Libre-soc-dev] daily kan-ban update 01mar2021
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Mon Mar 1 19:36:12 GMT 2021
---
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
On Mon, Mar 1, 2021 at 7:22 PM Tobias Platen
<libre-soc at platen-software.de> wrote:
>
> On Mon, 1 Mar 2021 19:08:30 +0000
> Luke Kenneth Casson Leighton <lkcl at lkcl.net> wrote:
>
> > On Mon, Mar 1, 2021 at 6:05 PM Tobias Platen
> > <libre-soc at platen-software.de> wrote:
> > >
> > > today: more work on MMU integration
> >
> > great. my feeling is that it's going to be easier to have something
> > side-by-side to compare against (ISACaller) you _could_ stare
> > manually for hours at debug logs. an alternative is to get ISACaller
> > RADIX support added, then let simulations do all the work.
> >
> > l.
> After adding the RADIX support, I can do faster debugging.
> Today I found out that the "fix" for #607 causes my unit test to break.
2730d379d0 - rom mmu test works (doesn't end, but works)
> I also know that there are more bugs in my code, that need to be debugged first.
understood.
ok what's going on.
lkcl at fizzy:~/src/libresoc/soc/src/soc$ grep -r mmu0_spr_dec
simple/core.py: self.decoders["mmu0"].mmu0_spr_dec =
self.decoders["spr0"]
ah. right. this is a bad hack :) it needs special commenting and an
explanation. i've reverted this below for now:
- if self.fn_name=="MMU":
- # mmu is special case: needs SPR opcode as well
- mmu0 = self.mmu0_spr_dec
- with m.If(((mmu0.dec.op.internal_op == MicrOp.OP_MTSPR) |
- (mmu0.dec.op.internal_op == MicrOp.OP_MFSPR))):
- comb += self.do_copy("insn_type", mmu0.op_get("internal_op"))
- with m.Else():
- comb += self.do_copy("insn_type", self.op_get("internal_op"))
- else:
- comb += self.do_copy("insn_type", self.op_get("internal_op"))
+ # FIX https://bugs.libre-soc.org/show_bug.cgi?id=607
+ comb += self.do_copy("insn_type", self.op_get("internal_op"))
More information about the Libre-soc-dev
mailing list