Hieliche Schisse!
by
EvilTwinSkippy
·
· Score: 4, Interesting
This guy is hard core. Look at his parts list: NAND gates, NOR gates. I don't care if this thing doesn't do more than run a train set, just the work that went into it was impressive.
I remember playing with this stuff in VLSI. It's quite another thing to actually lay it out on hardware and wire the sucker up. He designed his own ALU, register paths, everything. God, and I can barly find time to play with my Mindstorms kit.
Macht Spass Jung!
-- "Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
$$$ to fabricate? Try man-months of fabrication and development time. This guy had to invent his own assembly code, and C compiler.
As an Undergrad in EE I designed a hell of a lot of CPU's. I never built one. In the lab we used the old trusty Motorola 68000 series. Must have been Drexel's 10 week terms or something. LOL
-- "Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
Re:All the news that's
by
Sharth
·
· Score: 3, Interesting
basically, everyone but us americans do the date correctly. that format is dd/mm/yy
Seriously, though, I like that he added the LCD status display. Most people would just use the video for display, but after having worked on boxes with those on board LCDs for status info, I've learned to love em.
I did some of this on paper
by
earthforce_1
·
· Score: 3, Interesting
Back in the 1970's when I was a teenager, and the 8080 was the newest thing on the block. But I hated the stupid instruction set. Around that time, Heathkit sold my (almost) dream computer, a PDP 11/03 clone with a paper tape reader, that would have cost me 15 years of work on my paper route. I eventually bought just the manuals, which was all that I could afford. Eventually I bought a cheaper 6800 based kit they sold, with a whopping 512 bytes of RAM, but that is another story.
I had a lot of 7400 series TTL manuals handy however, and the reading the PDP manuals gave me a lot of hints as to what I wanted in my (then) dream CPU - a 16 bit instruction set, with lots of general purpose registers, lots of fancy addressing modes, a hardware multiplier/divider, and a much larger address space so I could run a real compiler - not that interpretive BASIC crap that was all the rage back then. (I kind of knew that even if I could bring my vision to life, writing a decent compiler would be even tougher than building the CPU, but one battle at a time....) I worked out the instruction set, and designed most of the ALU, although I got stuck on trying to make the divider work. I was also somewhat disappointed in that it appeared I wouldn't be able to get the damned thing to go any faster than about 12 MHz, the TTL wouldn't work any faster. I was also stuck on what to do for memory.
I couldn't go much beyond a paper design, the parts would have cost me close to $1000, not including the UV eraser and the PROM programmers. But it was still educational. I dropped the project for good when I saw the first 68000 datasheet. Here was the CPU I had been trying to design for the past 3 or 4 years. It had an nice instruction set a lot like the PDP, plenty of registers, plenty of indexed addressing modes, and a hardware integer multiplier/divider. In 1984 I bought my first "real" computer, a 128K "thin" Mac, which sported a 6MHz 68000, and to this day, still resides in my parents closet!
(The flyback xfmr burned out years ago, a common problem with the original macs)
-- My rights don't need management.
Re:big deal
by
jackb_guppy
·
· Score: 4, Interesting
He has done a very nice job in documenting it. That is what is so great about his site.
But doing it is not new...
In 1980 as class project, my lab partner and I took 20 chips and built a 4 bit computer in about 3 hours. The instruction set was based on the 4 bit ALU. We were trying to prove the possiblity of new course for the collage. The course was to take people who wanted to be computer science to get their hands dirty and build a machine. Also taught alot about low and high logic.
My first emulator was for a Z-80A processor and was written in tiny basic on Attena 8085 machine. It had three programs, an editor, a 1-2-3 compiler and the emulator. My college advisor (was also one of the profs in mathimatics and computers) had hours of fun with it.
Re:big deal
by
Anonymous Coward
·
· Score: 0, Interesting
As other posters have pointed out, gate arrays are a quick way to get a CPU set up.
However, from what I could read before the site crashed and burned - this guy has done it using EPROM memory to emulate a CPU using logic tables. Probably along the lines of "instruction 2 does these logic operations". Sure, it's slow, but it's quite ingenius and it explains how he's able to easily emulate different CPUs.
No gate arrays, no fabrication. A virtual CPU very similar to the approach Transmeta took (although Transmeta did it all on one chip).
Not too far out--really!
by
Hacker+Cracker
·
· Score: 5, Interesting
Not that long ago we had to build a functioning RISC computer from logic ICs at Cal Poly Pomona. And not as a part of an EE program either--it was a part of the CS curriculum!
In all the time I spent there, that was one of the most interesting things I've ever done. Luckily for us, we didn't have to design and etch the boards, but we did have to come up with the microcode and burn it into EPROMs as well as solder a bunch of components and IC sockets onto said board. We also had to write an assembler for it as well and of course the whole thing had to work if you wanted to pass the course!
It was only capable of handling 4 bits at a time and was manually clocked (keep flipping faster! I need those spreadsheet values by tomorrow!) but by God the thing actually worked. And you could actually understand how it worked.
Even though you could conceivably expand the thing to 32 or 64 bits, I can't imagine why anyone would. Except of course if you're living in a post-apocalyptic (or post NGSCB) world where you can't walk into a store and buy one...
-- Shamus
This space for rent! EZ terms!
Re:Not too far out--really!
by
kd5ujz
·
· Score: 2, Interesting
Why the manual clock? Why not use a 555?
-- -William
God is everything science has yet to explain.
I can't get to this guy's website, but reading other people's replies gives me a good idea of what it's all about.
I've designed a few CPUs back when I was in college, using 74xx ALUs, etc. Never acutally implemented one, though a friend did. What I have done is buy a bunch of used relays and had my teen-age children build full adders with them. Now that's fun. You get a real sense of accomplishment when you flip some switches, listen to the relays click, and see a row of light bulbs display the sum.
They say the first thing to go is your penis. Well, it's either that or your brain. I forget which...
Re:Babelfish
by
epiphani
·
· Score: 2, Interesting
Believe me, its not too far off. I just got back a forbidden message from the webserver (im assuming its slashdotted), and after it ran through babelfish, this was the output.
Forbidden
You don't have by mission ton of ACCESS/mycpu-g.htm on this servers.
-- .
Re:All the news that's
by
conradp
·
· Score: 4, Interesting
neither does Japan, and possibly other Asian countries, although I do not know which ones in particular. Japan has traditionally used CCYY-MM-DD. Actually Japan has "traditionally" used, and still often uses, "[Emperor name] [year of emperor's reign]" as their common date format. You can't describe future dates without guessing how long the emperor will live, and you have to know how many years each emperor lived in order to count back very far. To further complicate things, the year that an emperor dies has two descriptions, e.g. Showa 64 is the same as Heisei 1.
They've probably started adopting the YYYY-MM-DD because that's the ISO 8601 international standard date format. I'd encourage everyone to get into the habit of using it. It sorts nicely, it's language independent, and there is less opportunity for ambiguity. When you see "03/04/02" you have to wonder whether it's American or European, but "2003-04-02" can only mean 2 April 2003. Ok, I suppose some total idiot could think it was 4 February 2003, but that would be as wholly illogical as the common American date format of MM/DD/YY.
-- "To be absolutely certain about something, one must know everything or nothing about it." -- Olin Miller
I remember playing with this stuff in VLSI. It's quite another thing to actually lay it out on hardware and wire the sucker up. He designed his own ALU, register paths, everything. God, and I can barly find time to play with my Mindstorms kit.
Macht Spass Jung!
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
As an Undergrad in EE I designed a hell of a lot of CPU's. I never built one. In the lab we used the old trusty Motorola 68000 series. Must have been Drexel's 10 week terms or something. LOL
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
basically, everyone but us americans do the date correctly. that format is dd/mm/yy
But can I play Quake on it?
Seriously, though, I like that he added the LCD status display. Most people would just use the video for display, but after having worked on boxes with those on board LCDs for status info, I've learned to love em.
Back in the 1970's when I was a teenager, and the 8080 was the newest thing on the block. But I hated the stupid instruction set. Around that time, Heathkit sold my (almost) dream computer, a PDP 11/03 clone with a paper tape reader, that would have cost me 15 years of work on my paper route. I eventually bought just the manuals, which was all that I could afford. Eventually I bought a cheaper 6800 based kit they sold, with a whopping 512 bytes of RAM, but that is another story.
I had a lot of 7400 series TTL manuals handy however, and the reading the PDP manuals gave me a lot of hints as to what I wanted in my (then) dream CPU - a 16 bit instruction set, with lots of general purpose registers, lots of fancy addressing modes, a hardware multiplier/divider, and a much larger address space so I could run a real compiler - not that interpretive BASIC crap that was all the rage back then. (I kind of knew that even if I could bring my vision to life, writing a decent compiler would be even tougher than building the CPU, but one battle at a time....) I worked out the instruction set, and designed most of the ALU, although I got stuck on trying to make the divider work. I was also somewhat disappointed in that it appeared I wouldn't be able to get the damned thing to go any faster than about 12 MHz, the TTL wouldn't work any faster. I was also stuck on what to do for memory.
I couldn't go much beyond a paper design, the parts would have cost me close to $1000, not including the UV eraser and the PROM programmers. But it was still educational. I dropped the project for good when I saw the first 68000 datasheet. Here was the CPU I had been trying to design for the past 3 or 4 years. It had an nice instruction set a lot like the PDP, plenty of registers, plenty of indexed addressing modes, and a hardware integer multiplier/divider. In 1984 I bought my first "real" computer, a 128K "thin" Mac, which sported a 6MHz 68000, and to this day, still resides in my parents closet!
(The flyback xfmr burned out years ago, a common problem with the original macs)
My rights don't need management.
He has done a very nice job in documenting it. That is what is so great about his site.
But doing it is not new...
In 1980 as class project, my lab partner and I took 20 chips and built a 4 bit computer in about 3 hours. The instruction set was based on the 4 bit ALU. We were trying to prove the possiblity of new course for the collage. The course was to take people who wanted to be computer science to get their hands dirty and build a machine. Also taught alot about low and high logic.
My first emulator was for a Z-80A processor and was written in tiny basic on Attena 8085 machine. It had three programs, an editor, a 1-2-3 compiler and the emulator. My college advisor (was also one of the profs in mathimatics and computers) had hours of fun with it.
As other posters have pointed out, gate arrays are a quick way to get a CPU set up.
However, from what I could read before the site crashed and burned - this guy has done it using EPROM memory to emulate a CPU using logic tables. Probably along the lines of "instruction 2 does these logic operations". Sure, it's slow, but it's quite ingenius and it explains how he's able to easily emulate different CPUs.
No gate arrays, no fabrication. A virtual CPU very similar to the approach Transmeta took (although Transmeta did it all on one chip).
Not that long ago we had to build a functioning RISC computer from logic ICs at Cal Poly Pomona. And not as a part of an EE program either--it was a part of the CS curriculum!
In all the time I spent there, that was one of the most interesting things I've ever done. Luckily for us, we didn't have to design and etch the boards, but we did have to come up with the microcode and burn it into EPROMs as well as solder a bunch of components and IC sockets onto said board. We also had to write an assembler for it as well and of course the whole thing had to work if you wanted to pass the course!
It was only capable of handling 4 bits at a time and was manually clocked (keep flipping faster! I need those spreadsheet values by tomorrow!) but by God the thing actually worked. And you could actually understand how it worked.
Even though you could conceivably expand the thing to 32 or 64 bits, I can't imagine why anyone would. Except of course if you're living in a post-apocalyptic (or post NGSCB) world where you can't walk into a store and buy one...
-- Shamus
This space for rent! EZ terms!
I've designed a few CPUs back when I was in college, using 74xx ALUs, etc. Never acutally implemented one, though a friend did. What I have done is buy a bunch of used relays and had my teen-age children build full adders with them. Now that's fun. You get a real sense of accomplishment when you flip some switches, listen to the relays click, and see a row of light bulbs display the sum.
Nothing for 6-digit uids?
They say the first thing to go is your penis. Well, it's either that or your brain. I forget which...
.
neither does Japan, and possibly other Asian countries, although I do not know which ones in particular. Japan has traditionally used CCYY-MM-DD.
Actually Japan has "traditionally" used, and still often uses, "[Emperor name] [year of emperor's reign]" as their common date format. You can't describe future dates without guessing how long the emperor will live, and you have to know how many years each emperor lived in order to count back very far. To further complicate things, the year that an emperor dies has two descriptions, e.g. Showa 64 is the same as Heisei 1.
They've probably started adopting the YYYY-MM-DD because that's the ISO 8601 international standard date format. I'd encourage everyone to get into the habit of using it. It sorts nicely, it's language independent, and there is less opportunity for ambiguity. When you see "03/04/02" you have to wonder whether it's American or European, but "2003-04-02" can only mean 2 April 2003. Ok, I suppose some total idiot could think it was 4 February 2003, but that would be as wholly illogical as the common American date format of MM/DD/YY.
"To be absolutely certain about something, one must know everything or nothing about it." -- Olin Miller