Besides, in this day and age, anything this clueful deserves a brownie point or two. If you think otherwise, try working around all the A+ certified ijits (that I call coworkers) for 8 hours.
Give the guy a break!
by
PHAEDRU5
·
· Score: 4, Insightful
I remember dreaming my own CPU with bit slice logic. In fact, I'm pretty sure I can find some BYTE photocopies and other notes from my first attempt in like 1980, or so.
I remember dreaming of building cards to hook to an S100 bus, including a Z-80 CPU with a ROM and redirection logic.
I mean, I can see how things change. It's kind of interesting to see a whole generation of hardware hackers think in terms of gate arrays, or their children. Who never smelt solder.
-- 668: Neighbour of the Beast
For All You "Does it run Linux folks"
by
jtshaw
·
· Score: 3, Insightful
You can build your own CPU in and FPGA these days and run linux on it..... Though a big FPGA isn't exactly cheap.
Anyway, most of us that went through college engineering programs did something similar to this at one time. Whether it was building a computer out of parts or designing and architecture in VHDL and throwing it with some assembly code on an FPGA. It is a good way to learn how architectures really work.
Re:big deal
by
Anonymous Coward
·
· Score: 5, Insightful
Undergrads at most universities build their own CPUs. It's just a matter of coughing up the $$ to fabricate them.
So what you meant to say was Undergrads at most universites design their own cpus. Using your definition I could go build another Great Pyramid. I just wouldn't have to actually BUILD it, just draw some pictures.
Re:All the news that's
by
Captain+Nitpick
·
· Score: 3, Insightful
I use year/month/day. It makes sense logically, and is understood by Americans.
It's also the ISO standard ordering, and is useful in filenames since sorting by name also sorts by date.
-- But then again, I could be wrong.
Re:And the point?
by
Skim123
·
· Score: 5, Insightful
Yeah, it lacks a point. Kind of like playing computer games, reading, watching TV, or any other hobby. Oh wait, all those things are fun and enjoyable (save the watching TV part). Maybe that's why he did it?
--
I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.
Yep, big deal
by
duck_prime
·
· Score: 4, Insightful
Undergrads at most universities build their own CPUs. It's just a matter of coughing up the $$ to fabricate them.
At Berkeley in the early 90's we were still doing this. So the guy's claim is hardly unique.
That said... It is pretty hard, and is something to be proud of. This guy's accomplishment is going past a basic fetch-ALU-store implementation and actually building something useful on top. Also, his documentation is superb. This last is a jewel beyond price in professional IT.
Making your own CPU has great pedagogical value too... it really demystifies what goes on inside the machine, and gets you ready for ars technica digests!;)
Designing a CPU is not difficult. What IS difficult, is to design something sophisticated like a Pentium-4. But a simple CPU can be done in 1-2 days. Basically, when you already know a hardware language like VHDL or Verilog, and know how a CPU works in general, it's just as simple as designing a software virtual machine (like JAVA) or an interpreted tokenized language (like some BASIC dialects).
The main problem with self-designed CPUs is that you don't have any support tool chain. You have to write your own assembler (and possibly disassembler), or adapt one of those meta-assemblers (eg XCASM). And you have to write your own C compiler, or port one of the free ones (LCC or GCC), if you want to do larger projects with your CPU.
In most cases it is not worth the hassle to design your own CPU, because recently the FPGA vendors started to give out CPUs for free (eg NIOS, or MicroBlaze/PicoBlaze) with free toolchain support (usually GCC).
When you start a CPU design TODAY, it's usually for one of these reasons:
- educational (many textbooks design a CPU while teaching logic)
- prototype a new revolutionary approach (like eg PACT's XPP)
- you need a little bit more than a statemachine, but the smallest "real"
CPU is already too big for you (in this case, the toolchain problem is
non-existant - you can code the "firmware" manually)
Never heard of an FPGA?
Besides, in this day and age, anything this clueful deserves a brownie point or two. If you think otherwise, try working around all the A+ certified ijits (that I call coworkers) for 8 hours.
I remember dreaming my own CPU with bit slice logic. In fact, I'm pretty sure I can find some BYTE photocopies and other notes from my first attempt in like 1980, or so.
I remember dreaming of building cards to hook to an S100 bus, including a Z-80 CPU with a ROM and redirection logic.
I mean, I can see how things change. It's kind of interesting to see a whole generation of hardware hackers think in terms of gate arrays, or their children. Who never smelt solder.
668: Neighbour of the Beast
You can build your own CPU in and FPGA these days and run linux on it..... Though a big FPGA isn't exactly cheap.
Anyway, most of us that went through college engineering programs did something similar to this at one time. Whether it was building a computer out of parts or designing and architecture in VHDL and throwing it with some assembly code on an FPGA. It is a good way to learn how architectures really work.
Undergrads at most universities build their own CPUs. It's just a matter of coughing up the $$ to fabricate them.
So what you meant to say was Undergrads at most universites design their own cpus. Using your definition I could go build another Great Pyramid. I just wouldn't have to actually BUILD it, just draw some pictures.
It's also the ISO standard ordering, and is useful in filenames since sorting by name also sorts by date.
But then again, I could be wrong.
Yeah, it lacks a point. Kind of like playing computer games, reading, watching TV, or any other hobby. Oh wait, all those things are fun and enjoyable (save the watching TV part). Maybe that's why he did it?
I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.
That said... It is pretty hard, and is something to be proud of. This guy's accomplishment is going past a basic fetch-ALU-store implementation and actually building something useful on top. Also, his documentation is superb. This last is a jewel beyond price in professional IT.
Making your own CPU has great pedagogical value too
> Yes, but did you design your own CPU?
Designing a CPU is not difficult. What IS difficult, is to design something
sophisticated like a Pentium-4. But a simple CPU can be done in 1-2 days.
Basically, when you already know a hardware language like VHDL or Verilog,
and know how a CPU works in general, it's just as simple as designing a
software virtual machine (like JAVA) or an interpreted tokenized language
(like some BASIC dialects).
The main problem with self-designed CPUs is that you don't have any support
tool chain. You have to write your own assembler (and possibly disassembler),
or adapt one of those meta-assemblers (eg XCASM). And you have to write
your own C compiler, or port one of the free ones (LCC or GCC), if you want
to do larger projects with your CPU.
In most cases it is not worth the hassle to design your own CPU, because
recently the FPGA vendors started to give out CPUs for free (eg NIOS, or
MicroBlaze/PicoBlaze) with free toolchain support (usually GCC).
When you start a CPU design TODAY, it's usually for one of these reasons:
- educational (many textbooks design a CPU while teaching logic)
- prototype a new revolutionary approach (like eg PACT's XPP)
- you need a little bit more than a statemachine, but the smallest "real"
CPU is already too big for you (in this case, the toolchain problem is
non-existant - you can code the "firmware" manually)
Marc