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.
step by step cpu design using altera fpga
Started by ●January 26, 2011
Reply by ●January 26, 20112011-01-26
People go for Michael D. Celitti's book.
Hennesy and Peterson's Computer Architercture.. which uses MIPS is also
good.
You can find online manuals related to this.
--
Muhammad Yasin
Lecturer,
Department of Electrical Engineering
COMSATS Institute of Inforamtion Technology
M-A Jinnah Campus, Lahore
Hennesy and Peterson's Computer Architercture.. which uses MIPS is also
good.
You can find online manuals related to this.
--
Muhammad Yasin
Lecturer,
Department of Electrical Engineering
COMSATS Institute of Inforamtion Technology
M-A Jinnah Campus, Lahore
Reply by ●January 26, 20112011-01-26
There are a lot of different aspects of CPU design to teach. What are you
trying to teach exactly? Do you have a list of topics you wish to cover or are
you looking for the book to guide you in that?
What level do you assume for your students? Do they understand digital logic design? Do they know an HDL? When you say starts from "scratch", how basic is that?
There are tons of books on computer architecture. The question is where do you want to start, what do you want to cover and how detailed do you want to get?
Rick
What level do you assume for your students? Do they understand digital logic design? Do they know an HDL? When you say starts from "scratch", how basic is that?
There are tons of books on computer architecture. The question is where do you want to start, what do you want to cover and how detailed do you want to get?
Rick
Reply by ●January 26, 20112011-01-26
HelloYou can use the OpenCores cpu lecture.It is well documented core, also
includes a compiler.http://opencores.org/project,cpu_lecture .Also you can try
the mu0 which have been developed for educational purposes. ( better but lacks
of step by step
description)http://www.ece.uah.edu/~lacasa/tutorials/mu0/mu0tutorial.htmlKind
regards.
Hasan Erdem Yant
Istanbul Yeditepe University
Department of Computer Engineering
Department of Electrical & Electronics Engineering
Hasan Erdem Yant
Istanbul Yeditepe University
Department of Computer Engineering
Department of Electrical & Electronics Engineering
Reply by ●January 26, 20112011-01-26
Hi,
On Wed, 2011-01-26 at 12:39 +0000, SNFEDOGAN wrote:
> 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.
there is a single book which covers everything from gates,
combinational logic design, sequential logic design, and
digital building blocks, up to instruction set architecture
and its implementation by computer microarchitecture:
"Digital Design and Computer Architecture" by David Money Harris
and Sarah L. Harris (Morgan Kaufman, 2007).
This book is in many aspects a condensation of two other
good books, which I took some years ago to design a course
similar to the one you describe:
J. Wakerly: Digital Design
D.A. Patterson, J.L. Hennessy: Computer Organization & Design
In this course the students design an alphanumeric terminal,
an interface for a PC keyboard, an interface to a Flash-ROM,
and finally a 32-bit CPU with a reduced instruction set. They
have to implement the whole system on a Spartan-3 FPGA, which
is mounted on a board designed by XESS ( http://www.xess.com ).
Hellwig
On Wed, 2011-01-26 at 12:39 +0000, SNFEDOGAN wrote:
> 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.
there is a single book which covers everything from gates,
combinational logic design, sequential logic design, and
digital building blocks, up to instruction set architecture
and its implementation by computer microarchitecture:
"Digital Design and Computer Architecture" by David Money Harris
and Sarah L. Harris (Morgan Kaufman, 2007).
This book is in many aspects a condensation of two other
good books, which I took some years ago to design a course
similar to the one you describe:
J. Wakerly: Digital Design
D.A. Patterson, J.L. Hennessy: Computer Organization & Design
In this course the students design an alphanumeric terminal,
an interface for a PC keyboard, an interface to a Flash-ROM,
and finally a 32-bit CPU with a reduced instruction set. They
have to implement the whole system on a Spartan-3 FPGA, which
is mounted on a board designed by XESS ( http://www.xess.com ).
Hellwig
Reply by ●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
> 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
Reply by ●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.
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 ●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
>
> 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 ●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
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 ●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
>(...)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