3 based on Anton Blanchard microwatt common.vhdl
6 from nmutil
.iocontrol
import RecordObject
7 from nmigen
import Signal
10 class DcacheToLoadStore1Type(RecordObject
):
15 self
.store_done
= Signal()
17 self
.cache_paradox
= Signal()
20 class DcacheToMmuType(RecordObject
):
26 self
.data
= Signal(64)
28 class LoadStore1ToDcacheType(RecordObject
):
32 self
.load
= Signal() # this is a load
36 self
.reserve
= Signal()
37 self
.virt_mode
= Signal()
38 self
.priv_mode
= Signal()
41 self
.byte_sel
= Signal()
43 class LoadStore1ToMmuType(RecordObject
):
53 self
.sprn
= Signal(10)
54 self
.addr
= Signal(64)
57 class MmuToLoadStore1Type(RecordObject
):
62 self
.invalid
= Signal()
63 self
.badtree
= Signal()
64 self
.segerr
= Signal()
65 self
.perm_error
= Signal()
66 self
.rc_error
= Signal()
67 self
.sprval
= Signal(64)
69 class MmuToDcacheType(RecordObject
):
76 self
.addr
= Signal(64)
79 class MmuToIcacheType(RecordObject
):
85 self
.addr
= Signal(64)