Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > build a simple cpu

Reply
Thread Tools

build a simple cpu

 
 
LIMITSTATE@yahoo.com
Guest
Posts: n/a
 
      03-11-2005
Hello i am a student in 3rd year of a diploma course in electronics my
project is to build a simple 8-bit cpu. I have to produce a schematic
of the whole thing using flip flops and gates. Then test each separate
building block. And finally produce hardware. What's the simplest way
to start this daunting task?

 
Reply With Quote
 
 
 
 
Wing Fong Wong
Guest
Posts: n/a
 
      03-11-2005
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> Hello i am a student in 3rd year of a diploma course in electronics my
> project is to build a simple 8-bit cpu. I have to produce a schematic
> of the whole thing using flip flops and gates. Then test each separate
> building block. And finally produce hardware. What's the simplest way
> to start this daunting task?
>


ALU, CU, Bus and Registers. Have I missed anything?

--

Wing Wong.
Webpage: http://wing.ucc.asn.au
 
Reply With Quote
 
 
 
 
Ralf Hildebrandt
Guest
Posts: n/a
 
      03-11-2005
(E-Mail Removed) wrote:


> Hello i am a student in 3rd year of a diploma course in electronics my
> project is to build a simple 8-bit cpu. I have to produce a schematic
> of the whole thing using flip flops and gates. Then test each separate
> building block. And finally produce hardware. What's the simplest way
> to start this daunting task?


First think about the capabilities the CPU. Easy are the operations of the ALU (move, add,
bit test, jump...). More challanging are addressing modes (register, indirect,
indexed...). Think about the time each of these operations and addressing modes consume
(all in a fixed number of clock cycles or dependent on the task).

Then think about an architecture (where to place the ALU, how many busses, how many
registers...).

Then think about how to solve every operation with every addressing mode on the chosen
architecture. This means you have to find something like the states of a state machine.
Re-Work your requirements (operations, addressing modes, architecture) to find a suitable
state machine.

Don't forget to think about the instruction format! Fetching one instruction word or more
leads to big differences in the state machine. Try to code every operation and every
addressing mode in a "smart" way.

And then ... well I think then you are clear how to solve it.


Do you really have start without any constraints? Finding a suitable instruction set,
helpful addressing modes and finally coding them (hopefully in an orthogonal way) into
some instruction opcodes is not that easy.
Maybe it is helpful to look at common microcontrollers to get aninspiration of the
instruction set. I prefer the Texas Insruments MSP430 as nice RISC CPU. The Zilog Z80 and
the Microchip PIC are not structured so clear like the MSP430.


Ralf
 
Reply With Quote
 
Pete Fraser
Guest
Posts: n/a
 
      03-11-2005
<(E-Mail Removed)> wrote in message
news:(E-Mail Removed) oups.com...
> Hello i am a student in 3rd year of a diploma course in electronics my
> project is to build a simple 8-bit cpu. I have to produce a schematic
> of the whole thing using flip flops and gates. Then test each separate
> building block. And finally produce hardware. What's the simplest way
> to start this daunting task?
>


Ashenden's book (The Designer's Guide to VHDL) has a case
study on a CPU design. It may be overkill for you, but might show
the way.

He also developed a CPU in the (free) pdf precursor to the book:

http://tech-www.informatik.uni-hambu...L-Cookbook.pdf


 
Reply With Quote
 
Pablo Bleyer Kocik
Guest
Posts: n/a
 
      03-11-2005
Ralf Hildebrandt wrote:
> Maybe it is helpful to look at common microcontrollers to get

aninspiration of the
> instruction set. I prefer the Texas Insruments MSP430 as nice RISC

CPU. The Zilog Z80 and
> the Microchip PIC are not structured so clear like the MSP430.
>
>
> Ralf


And if you are not afraid of Verilog and bold enough you may take a
peek at my PacoBlaze and S430 projects as a starting point. They are a
PicoBlaze and MSP430 clones respectively, available at:

http://bleyer.org/pacoblaze/
http://www.nongnu.org/s430/

Don't hesitate to email me if you have any questions.

HaPpY hAcKiNg!


-- /"It would appear that we have reached the limits of
PabloBleyerKocik/ what it is possible to achieve with computer
technology,
pablo / although one should be careful with such statements,
as
@bleyer.org / they tend to sound pretty silly in 5 years."-J.von
Neumann

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
How CPU Features Affect CPU Performance Ian Front Page News 0 02-18-2010 03:28 PM
How , system cpu and user cpu times calculates pavunkumar C Programming 1 02-27-2009 08:29 AM
HELP! Trying to understand the logic behind CPU core speeds and whole CPU speed. dimon Computer Support 4 11-10-2006 04:01 PM
SWsoft Acronis Disk Director Suite 9.0 Build 508, Acronis OS Selector 8.0 Build 917, Acronis Partition Expert 2003 Build 292, Acronis Power Utilities 2004 Build 502, F-SECURE.ANTI vIRUS.PROXY v1.10.17.WINALL, F-SECURE.ANTI vIRUS v5.50.10260 for CITRI vvcd Computer Support 0 09-25-2004 01:38 AM
Pentium CPU vs Intel Celeron CPU and the Wireless Mouse kirk lives! Computer Support 4 05-02-2004 06:59 PM



Advertisments