Le 04/01/13 09:24, David Jin a écrit :
> Hi Yann,
>
> I am interested in LM32 CPU. I had seed the mmu code that you commit
> in the mikymist git hub.
> Because of my limited CPU knowledge, so I understand it more difficult
> without document and design chart etc.
>
> If you have some design document or train of thought, do you can share
> to me?
> Ithink that these documents will helps me to understand LM32 and MMU.
>
>
Hi David,

Please post to Milkymist mailing list as well, as the MMU project is a
child of the Milkymist project, the MMU project
is a work in progress of the Milkymist community I started a year ago.
If you are searching for informations about LatticeMico32 processor,
then you can have a look at its datasheet which explains pretty well the
basics (pipeline architecture, registers, exceptions, cache, instruction
set architecture).
A bit of informations over there:
http://www.latticesemi.com/products/intellectualproperty/ipcores/mico32/index.cfm
You can check out LatticeMico32 datasheet over there:
http://www.latticesemi.com/documents/lm32_archman.pdf

Most up to date LM32 MMU code is available over there since Michael
Walle (aka mwalle on IRC) did an awesome job of
cleaning/fixing/implementing new features on the MMU project:
https://github.com/mwalle/milkymist/commits/mmu

The basic idea of LM32 MMU is to do the TLB (translation lookaside
buffer) lookup in parallel of the cache lookup.
Therefore both I/D cache and I/D TLB are virtually indexed (using lowest
significant bits of virtual address as indexes) and cache is physically
tagged (using the page frame number which is the most significant bits).
TLB is virtually tagged though.
For now the supported page size is 4 kB.

Unfortunately I don't think we have any drawing/schematic about the MMU
design, there has been discussions about it on this Mailing list and on
#milkymist IRC channel on Freenode.
You can search for MMU keyword over there in IRC logs:
http://en.qi-hardware.com/mmlogs/
You can try to read these threads in the mailing list archives:

-
http://lists.milkymist.org/pipermail/devel-milkymist.org/2012-June/003043.html
-
http://lists.milkymist.org/pipermail/devel-milkymist.org/2012-July/003062.html
-
http://lists.milkymist.org/pipermail/devel-milkymist.org/2012-July/003063.html
-
http://lists.milkymist.org/pipermail/devel-milkymist.org/2012-July/003133.html
-
http://lists.milkymist.org/pipermail/devel-milkymist.org/2012-October/003162.html

If you have any question regarding LM32 MMU implementation please ask away !

Best regards,

-- 
Yann Sionneau
_______________________________________________
http://lists.milkymist.org/listinfo.cgi/devel-milkymist.org
IRC: #milkymist@Freenode

Reply via email to