Reply by Tommy Thorn February 28, 20112011-02-28
FWIW, you could also look at YARI: http://yari.thorn.ws

Tommy
Reply by rtstofer February 27, 20112011-02-27
--- In f..., FIRAT DOGAN wrote:
>
> Thanks for the reply but
>
> I have the several answers from the various people from the fpga group. Thanks,
> every reply was very helpful. But lastly, I found Patterson' book COD
> Hardware/software interface very helpful also harris's book.
>
> Do you think can it be used as a main text (i am sure its used in several arch
> courses) to cover basic principles of comp architecture ? How can we add fpga
> lab's align with Patterson's book.
>
> Regards

At what level is the course to be taught? How much logic design have the students already mastered? I can see using Patterson & Hennessy for a 3d or 4th year course for students majoring in hardware design. Certainly it can be used in post grad. OTOH, if this is also an intro to logic design course, there is no way that the students will get a lot out of P&H.

FWIW, there is a MIPS clone at opencores.org. It lacks some of the unaligned data handling instructions that are patented.

Also, what is the purpose of the course? Is it to teach processor design or is it to teach how to work with FPGAs? There would be, in my mind, a significant difference.

Were I teaching the course (and I am totally unqualified), I might use P&H for the lectures because it deals with some very advanced concepts. There are several other good texts for this as well. But, for the lab, I would have everyone implement Al Williams' BLUE project: http://opencores.org/project,blue This is an update to a very primitive 16 bit CPU and it adds a lot of capability. It is an important project, not because of the CPU or FPGA but because it also has all of the software necessary to get it to do something useful. The students actually take away something from a lab class that can be used in real life - an embedded CPU for any FPGA project. And it will work in practice, not just in theory.

Of course, there must be some change to the BLUE project to make it an individual effort rather than just copy and paste. You'll have to work that out.

Richard
Reply by FIRAT DOGAN February 25, 20112011-02-25
Nothing to say but ..... I cannot keep my mouth close.

have you born with cpu design principles, comp architecture and fpga in your
mind ? Is it only in your hands ? I did not say that i do not have
the requisiteness... More importantly, forget all.

isn't there any reason to learn it or improve ourselves ?

Regards
Reply by FIRAT DOGAN February 25, 20112011-02-25
Thanks for the reply but

I have the several answers from the various people from the fpga group. Thanks,
every reply was very helpful. But lastly, I found Patterson' book COD
Hardware/software interface very helpful also harris's book.

Do you think can it be used as a main text (i am sure its used in several arch
courses) to cover basic principles of comp architecture ? How can we add fpga
lab's align with Patterson's book.

Regards
Reply by Ed Corter February 12, 20112011-02-12
What is your FPGA CPU question ?

Ed
Reply by Tomasz Sztejka February 12, 20112011-02-12
I know I will sound rude. Or even very rude, but:

>(...)i am quite new to fpga, cpu design (...)

together with:

>(...)I am trying to prepare "Computer Architecture" class for
> computer engineer (...) my students (...)

makes me strongly surprised. I do have a strong feeling that You are NOT a right person to teach future engineers about CPU design.

As I'm not a right person to teach about modern sculpture.

Regards,
Tomasz Sztejka
Reply by "Younger, Arthur Steven" January 28, 20112011-01-28
All:

An old book on CPU design that I have found useful is "Bit-Slice Microprocessor Design" by John Mick and Jim Brick. (c) 1980 ISBN 0-07-041781-4.

As the title says, it is about Bit-Slice designs. which are a pre-FPGA technology. However, there are a lot of similarities with VHDL/FPGA and it may be worth the trouble to converting to FPGA.

The book covers general CPU design, and has lots of details. And it is well-written.

When I was doing bit-slice in the late 1980's , we considered it the "bible" of the field.

-Steve Younger
Reply by rtstofer January 28, 20112011-01-28
--- In f..., "SNFEDOGAN" wrote:
>
> Hi everyone i am quite new to fpga, cpu design and group as well ...
>
> I am sure its asked zillion of times in this group but I need urgent help
>
> is there any book, internet page, tutorial etc, which starts from scratch and goes up to design a simple cpu, including features such as, registers, in. sets, alu etc....
>
> I am trying to prepare "Computer Architecture" class for computer engineers and planning to use alteras fpga to design a very simple cpu.
>
> I am not interested with ready codes or ip's , I would like to let my students and ta to follow single book for this purpose.
>
> Kind regards.
>

There is a very old book "Computer Architecture" by Caxton Foster that has a VERY complete description of an elementary computer called BLUE - the color of the box. In subsequent chapters the design is expanded with index registers and such.

There are some 'front panel' details that won't translate directly to VHDL but these are easily modified.

A modern implemntation by Al Williams complete with an assembler is described here:
http://blue.hotsolder.com/wiki/Main_Page

There is a video here:
http://www.youtube.com/watch?v=dt4zezZP8w8

All of the code is available at OpenCores and the instruction set (and hardware) has been expanded greatly. I haven't implemented it but it looks like an interesting project.

Porting to the Altera platform should be straightforward.

I have the second edition of the book (c) 1976. It is worthwhile to note that the original book was written in 1970 so MUCH of the material is seriously obsolete. The book is available from www.alibris.com for about $1.

Richard
Reply by Nige...@uwe.ac.uk January 27, 20112011-01-27
I've been teaching a similar course to second year undergraduates for a
number of years and have been using Computer Systems, Organization &
Architecture, John D Carpinelli as the core text. He doesn't offer an
implementation in HDL but provides very clear explanations of the basic
structures that are straghtforward to implement.

His 'Relatively Simple CPU' forms an excellent base on which the students
can extend the design. He provides both hard-wired and micro sequencer
control units, discusses pipelines, interrupts etc.

It runs well in an Altera FPGA although I had to add wait states into the
load accumulator instruction.

Other texts worth considering, covering both VHDL and providing a simple
CPU example are

Digital Design with VHDL, Mark Zwolinski
and
Digital Design, An Embedded Systems Approach Using VHDL, Peter J Ashenden.

The latter book is available in a Verilog version as well.

Regards,
Nigel.
Reply by Leon Heller January 26, 20112011-01-26
On 26/01/2011 12:39, SNFEDOGAN wrote:
> Hi everyone i am quite new to fpga, cpu design and group as well ...
>
> I am sure its asked zillion of times in this group but I need urgent help
>
> is there any book, internet page, tutorial etc, which starts from scratch and goes up to design a simple cpu, including features such as, registers, in. sets, alu etc....
>
> I am trying to prepare "Computer Architecture" class for computer engineers and planning to use alteras fpga to design a very simple cpu.
>
> I am not interested with ready codes or ip's , I would like to let my students and ta to follow single book for this purpose.

Rapid Prototyping of Digital Systems by Hamblen et al is very good. I
got my copy cheap via Amazon, it's normally an expensive book.

Leon
--
Leon Heller
G1HSM