nnARM is a synthesizeable soft core that is compatible with ARM7. It is designed as a high performance core with compact size and low power consumption.
This core is very similar to ARM7 from a programmer's view, but its internal structure does not have any connection with that of ARM7. It has been designed using a brand new architecture for it. For details concerning this architecture, please refer to the documentation section of this site.
All source code of the current release is available on this site for free. Also, there is some assembly source code (compiled on ARM SDT 2.5) used as part of a testbench for nnARM. For more details regarding this testbench, please refer to the testbench section of this site.
The design team of nnARM welcomes any kind of help from anybody, if you are interested in this project, please contact us. For details of what help we need, please refer to introduction section of this site.
Current Status:
This core now supports most of the instructions of ARM7
The pipeline interlock and result forwarding features run correctly in all testbenches.
For more detail about what it can do and what it can not do please refer to the introduction section of this site
Next Step:
Make its memory and cache controller synthesizeable.
Support more complex instructions such as data swap and block data transfer.
Support more internal devices such as Timer and DMA.