tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: [Milkymist-devel] [Milkymist port] virtual memory management

> Indeed the MMU does not have support for Address Space ID [...]

> Moreover, adding new instructions is not that simple and I would
> prefer using the less possible resources for the MMU and save the
> very small amount of unused opcodes for other projects.

This _can_ be done without needing additional instructions.  For
example, you could have three MMU registers: one holds an ASID and
maybe an access size indication, one holds an address, and one holds
data.  To read/write some other ASID, you stuff the ASID in the first
register, the address in the second, and then read/write the third.
I'm sure there are lots of other possible designs.

It may be better to do it with special-purpose opcodes (eg the SPARC's
ld*a and st*a instructions), but it is by no means necessary.

/~\ The ASCII                             Mouse
\ / Ribbon Campaign
 X  Against HTML      
/ \ Email!           7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B

Home | Main Index | Thread Index | Old Index