I. Simple-CPU project's objectives
The Simple-CPU project is done to create a free RISC processor (delivered under GPL). It will be based on :
- A simple architecture and a reduced instruction set for an easy use for teaching.
- A full software suite for a reduced time to market target for industrial applications.
This processor is written in VHDL and the target development component is a Xilinx FPGA. Initialy it is based on a Spartan-3 starter kit. All development tools run under Linux.
A full software suite is delivred with that processor:
- Java written assembly program
- Java written simulator and debugger
- A C compiler based on GCC
- Operating system : Xinu, eCos, Linux ...
II. Project status
February 2006 :
I have a lot of work to do in my job, plus lots of hours to preparre lessons and some personal projects. So Simple-cpu still live slower but IUT students are finishing assembly compiler and start simulator. Gcc project is in stand by as this task is too much for there projects hours. I'm gonna publish some Gcc porting description pages soon with the main elements of that sub-project.
December 2005 :
Not a lot of activity on the CPU core during the last month. However, a lot of things apends : first of all, Wilfrid and Michel join me to realize a GCC compiler adaptation for SC91. More over, Bacem, Jing and Guillaume, start to realize an assembly compiler. All these code will be commited into the CVS space.
November 2005 :
Simple-CPU is now written, mainly, interruptions and test still have to be done. During November, assembly compiler and simulator sub-project should start ; these task will help during the testing phase. This month, GCC porting project has started too. Alpha version of SC91-A code is ready to be downloaded in the associated zone.
October 2005 :
Processor actually runs 7 simple instructions, w/o RAM on a small ROM. Devlopment still running with the objectiv of quicky commit a source code first version with the entire instruction set coverage.
September 2005 :
Registers file implementation is done, test looks nice and Linux development suite is smart. Implementation will so contiune !
July 2005 :
Planning is really short but, instruction set is now defined and related documentation written. I'm so able to start the hardware implementation soon.
Idea are more and more precises so I can start to write on that project on the web. Summer is gona be a nice period for development and documentation will be a key point for that project as target is industy and educational.
May 2005 :
Xilinx starter kit is myne, compilation suite is installed on my linux desktop ... I have now to think more on that project !
III. Project Phases
|Phase||Starting Date||Ending Date||Status|
|Creating instruction set and documentation||07/01/2005||08/02/2005||Ending|
|General architecture document||07/10/2005||07/30/2005||Running|
|CPU core coding and tests||08/01/2005||11/01/2005||Running|
|CPU interfaces and wishbone||11/01/2005||01/01/2006||To do|
|Adding peripherical||02/01/2006||05/01/2006||To do|
|Loader coding||03/01/2006||06/01/2006||To do|
|XINU porting||NA||NA||To plan|
|eCos porting||NA||NA||To plan|
|Linux porting||NA||NA||To plan|
IV. Project sources
This project was born from different ideas, first my own wish to work on an hardware project as my proffesionnal activity drive me on
software since the two last years. Next,since a lot of years, I really like to realize a complete computer system starting from scratch
as pioneer did during sixtees (with help of modern technilogy). This to learn and explain how digital systems works.
I hope this project will help some of you to understand how a computer works internaly. I'd like to offer to community some materials for lessons and practicles. More over, I hope some other else will realize and sell well products based on it.
That project is element as many other in free computing world, this one where you don't only buid things for the return on assets. This world where you can do it for fun and to offer it to the community. I hope this work will help some of you to create more complex and society usefull applications.
Any kind of contributor is welcomed on that project as I can't realized it totaly myself, so contact me to help me to keep it alive.