A student's question

C

Chen Bin

Guest
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions about
it?

I mean,what steps should I take to obtain this dream,and at each step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Hi Chen Bin,
I would suggest that you take some classes in computer architecture
to understand how many advanced processor are implemented. Also take
a class in digital design which usually covers ALU / Microprocessor
design.

Jon

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions about
it?

I mean,what steps should I take to obtain this dream,and at each step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Hi Jon,

I am in China,and universities in our coutry only teach us how to pass their
exam,not to teach us how to do it.
By the way,I have studied digital design and Computer Architecture,what is
the next step?

I mean,book,emulator,compiler,tools,hardware,language...

Thank you!

Chen Bin
"Jon" <jon8spam@yahoo.com> ????
news:d68b01eb.0309010736.5bc030d6@posting.google.com...
Hi Chen Bin,
I would suggest that you take some classes in computer architecture
to understand how many advanced processor are implemented. Also take
a class in digital design which usually covers ALU / Microprocessor
design.

Jon

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message
news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it
has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions
about
it?

I mean,what steps should I take to obtain this dream,and at each
step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Hi Chen!


I am a colledge student,one of my dreams is to design a 16-bit CPU,it has
some basic functions,such as arithmatic and MMU and so on.
Is it "your own CPU" or a implementation of an already developed CPU
(like x86-compatible)?

If it is the second, read the users manual and study the assembler. Next
step is to decode every instruction. After this, it should be possible
to develop a data path.

If it is your own CPU, take a look at other CPU manuals, expecially the
assembler.

Ralf
 
Hi,

Last year I created a so-called mini CPU. It made simple operations, like
writing and reading for memory, adding, subtracting, shifting, etc.
Well in this CPU I created these blocks:

ALU
StateMachine (core of the CPU)
MMU
RAM
Inport Block (reads data)
Outport Block (writes data)
Register Blocks
and other relative simple logic blocks

With this blocks you can create a simple CPU.
The statemachine i created controlled all of the operations.
You have first to define the format of the input data.
In my case I had a 16 bit bus with 8 bits for the operation and
8 bits for data. Something like:

0001 0011 -> mov ra,1

And the statemachine detects this operation and controls all the other
blocks for doing this.

I think you got the picture. Remember that this CPU (if you can call it)
was really very simple.

Pedro Claro

Yes, I

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions about
it?

I mean,what steps should I take to obtain this dream,and at each step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Can you tell me the process in detail?
What steps you had taken to get it?


"Pedro Claro" <orgulhosamenteso@hotmail.com> ????
news:25c2602a.0309020752.1dc11005@posting.google.com...
Hi,

Last year I created a so-called mini CPU. It made simple operations, like
writing and reading for memory, adding, subtracting, shifting, etc.
Well in this CPU I created these blocks:

ALU
StateMachine (core of the CPU)
MMU
RAM
Inport Block (reads data)
Outport Block (writes data)
Register Blocks
and other relative simple logic blocks

With this blocks you can create a simple CPU.
The statemachine i created controlled all of the operations.
You have first to define the format of the input data.
In my case I had a 16 bit bus with 8 bits for the operation and
8 bits for data. Something like:

0001 0011 -> mov ra,1

And the statemachine detects this operation and controls all the other
blocks for doing this.

I think you got the picture. Remember that this CPU (if you can call it)
was really very simple.

Pedro Claro

Yes, I

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message
news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it
has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions
about
it?

I mean,what steps should I take to obtain this dream,and at each
step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Hi,

Okay, I will try to explain it.
Okay first i developed the architecture.
You need something to store a program (a set of assembly instructions)->
a memory block. Then something to store values that you need to compute ->
a GPR (group of registers). You also need something to compute the values ->
an ALU. You need a block to control all of these things (i find it easier
to do a statemachine).

First I think it's better if you try to build a simple ALU that takes two
operatands and one operator. If you can make the ALU work then you can go
to the next step, building the register block. Try to store values in the
registers and then make the ALU get them. After this, try to make a
statemachine giving orders and getting values from the GPR to the ALU and then
get the result. This result should be also stored in a register.
Play around with this blocks and then you will see that you can complicate
things more.

Pedro Claro


"Chen Bin" <sunwen_ling@hotmail.com> wrote in message news:<bj3igj$23lo$1@mail.cn99.com>...
Can you tell me the process in detail?
What steps you had taken to get it?


"Pedro Claro" <orgulhosamenteso@hotmail.com> ????
news:25c2602a.0309020752.1dc11005@posting.google.com...
Hi,

Last year I created a so-called mini CPU. It made simple operations, like
writing and reading for memory, adding, subtracting, shifting, etc.
Well in this CPU I created these blocks:

ALU
StateMachine (core of the CPU)
MMU
RAM
Inport Block (reads data)
Outport Block (writes data)
Register Blocks
and other relative simple logic blocks

With this blocks you can create a simple CPU.
The statemachine i created controlled all of the operations.
You have first to define the format of the input data.
In my case I had a 16 bit bus with 8 bits for the operation and
8 bits for data. Something like:

0001 0011 -> mov ra,1

And the statemachine detects this operation and controls all the other
blocks for doing this.

I think you got the picture. Remember that this CPU (if you can call it)
was really very simple.

Pedro Claro

Yes, I

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message
news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it
has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions
about
it?

I mean,what steps should I take to obtain this dream,and at each
step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 
Hi, Chen Bin,

How about doing it together?
I'm an engineer who happen to be doing digital
designs in vhdl. I also was thinking about making a
very simple processor. Of course there're free open cores
but I think it worth it to do it myself.

If you want to do it then email me at jihwan2@hotmail.com
with "VHDL - Processor" in subject line.

Jihwan Song

"Chen Bin" <sunwen_ling@hotmail.com> wrote in message news:<biroom$23rc$1@mail.cn99.com>...
Hi,
I am a colledge student,one of my dreams is to design a 16-bit CPU,it has
some basic functions,such as arithmatic and MMU and so on.

But I don't have any idea how to get it.Can you give some suggestions about
it?

I mean,what steps should I take to obtain this dream,and at each step,which
book should I read,how long will I get the dream?

Any help appreciated!!

This is a cry from a puzzled student for your help.

Chen Bin
 

Welcome to EDABoard.com

Sponsor

Back
Top