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 :

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.

Simple-CPU is based on a 32bits RISC architecture using load store mémory access. Communication is mainly based a Wishbone bus for a total connectivity with free IP distributed by OpenCores project.

A full software suite is delivred with that processor:

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.

June 2005:
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

PhaseStarting DateEnding DateStatus
Creating instruction set and documentation07/01/200508/02/2005Ending
General architecture document07/10/200507/30/2005Running
CPU core coding and tests08/01/200511/01/2005Running
CPU interfaces and wishbone11/01/200501/01/2006To do
Adding peripherical02/01/200605/01/2006To do
Assembly compiler10/15/200501/30/2006Running
Java simulator10/15/200503/15/2006Soon
Loader coding03/01/200606/01/2006To do
GCC portingNANAStarting
XINU portingNANATo plan
eCos portingNANATo plan
Linux portingNANATo 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.


Simple-Cpu The Simple CPU project The Simple CPU project
Un projet de disk91
Small CPU project