"Homebuilt" 6502 cpu's
-
Isolationist
- Posts: 8
- Joined: 11 Mar 2003
I made an attempt to make a simple 4-bit adding device. I fried all five chips (actually they just got VERY hot then made the outputs link directly to V+).
When you refur to 'making' 6502's, do you mean making them directly from NOT AND OR and XOR chips, by buying arithmetic chips or doing something else?
When you refur to 'making' 6502's, do you mean making them directly from NOT AND OR and XOR chips, by buying arithmetic chips or doing something else?
There is no expedient to which a man will not go to avoid the labour of thinking.
- GARTHWILSON
- Forum Moderator
- Posts: 8773
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
> actually they just got VERY hot then made the outputs link directly to V+)
It sounds like you may have had a latch-up problem. That's more serious than just shorting outputs to outputs or to Vcc or ground. You can see the various latch-up modes and how to avoid them from different manufacturer's ap notes and the pages we tend to skip over in the fronts of the data books.
> When you refur to 'making' 6502's, do you mean making them directly from...
What is normally meant is writing the gate code in a hardware description language like Verilog or VHDL, and then programming it into programmable gate arrays. Then you genuinely get your microprocessor creation into a single IC.
Garth
[Edit, many years later:]
Closely related is my large look-up tables, including for trig & log functions. You can probably implement them even if your computer is already built up, the address space is full, and your I/O is almost all taken. See the accompanying article, with links to the tables and pages telling how the tables were formed and how to use them, plus rational-number approximations (accurate to 8 digits or better), and how Intel Hex files work, at http://wilsonminesco.com/16bitMathTables/ . This is for 16-bit scaled-integer math. (Note that I did not say "fixed-point" which is a limited subset of scaled-integer.) There are 2MB of tables, with most tables consisting of 128K, ie, 64K two-byte answers, such that every single answer is there, pre-calculated, accurate to all 16 bits, with no interpolation required. The inverse table (ie, 1/X) is 256KB, having four bytes per entry, so you can get at least 16 bits of accuracy regardless of input, even if you don't use all 32. The inverse is good partly for division, since you can multiply by the inverse, and speed up the multiply using the multiplication table. In extreme cases, looking up an answer is nearly a thousand times as fast as having to actually calculate it. It's much faster than CORDIC too.
It sounds like you may have had a latch-up problem. That's more serious than just shorting outputs to outputs or to Vcc or ground. You can see the various latch-up modes and how to avoid them from different manufacturer's ap notes and the pages we tend to skip over in the fronts of the data books.
> When you refur to 'making' 6502's, do you mean making them directly from...
What is normally meant is writing the gate code in a hardware description language like Verilog or VHDL, and then programming it into programmable gate arrays. Then you genuinely get your microprocessor creation into a single IC.
Garth
[Edit, many years later:]
Wally Daniels wrote:
I wondered if anyone on the list had investigated using a Coprocessor with the 02 or 816. Are there any Coprocessors availible that can be used with the 65xx family ?
Closely related is my large look-up tables, including for trig & log functions. You can probably implement them even if your computer is already built up, the address space is full, and your I/O is almost all taken. See the accompanying article, with links to the tables and pages telling how the tables were formed and how to use them, plus rational-number approximations (accurate to 8 digits or better), and how Intel Hex files work, at http://wilsonminesco.com/16bitMathTables/ . This is for 16-bit scaled-integer math. (Note that I did not say "fixed-point" which is a limited subset of scaled-integer.) There are 2MB of tables, with most tables consisting of 128K, ie, 64K two-byte answers, such that every single answer is there, pre-calculated, accurate to all 16 bits, with no interpolation required. The inverse table (ie, 1/X) is 256KB, having four bytes per entry, so you can get at least 16 bits of accuracy regardless of input, even if you don't use all 32. The inverse is good partly for division, since you can multiply by the inverse, and speed up the multiply using the multiplication table. In extreme cases, looking up an answer is nearly a thousand times as fast as having to actually calculate it. It's much faster than CORDIC too.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
GARTHWILSON wrote:
What is normally meant is writing the gate code in a hardware description language like Verilog or VHDL, and then programming it into programmable gate arrays. Then you genuinely get your microprocessor creation into a single IC.
Garth
Garth
I designed and implemented a 4-bit and 8-bit discrete component CPU once in my life, and I'd like to follow up with a 16-bit stack architecture processor that is, unlike its 8-bit predecessor, actually useful for something. I did this without the benefit of software simulation tools, too; indeed, I was only 17 when my 4-bit CPU ran for the first time. Needless to say, I was overjoyed.
GARTHWILSON wrote:
This link just appeared on the 6502 Yahoo forum:
Then there's Ruud Groetjes, a Dutchman, working on a 32-bit 6502, the 65GZ032, with a lot of big-computer features. See the 65GZ032 Yahoo forum. See also http://Ruud.C64.org .
Then there's Ruud Groetjes, a Dutchman, working on a 32-bit 6502, the 65GZ032, with a lot of big-computer features. See the 65GZ032 Yahoo forum. See also http://Ruud.C64.org .
- GARTHWILSON
- Forum Moderator
- Posts: 8773
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Oops-- sorry. Yes, Baltissen does sound right. Ruud has been on this forum for awhile now too and didn't correct me. Maybe he never got around to reading this part, or maybe he was quietly sitting at home enjoying a private laugh.
Another computer forum I'm on has someone named Foobar, and another one with another such name (which I can't remember right now) that we often give to hypothetical variables in example code. They're in some African nation, IIRC.
Another computer forum I'm on has someone named Foobar, and another one with another such name (which I can't remember right now) that we often give to hypothetical variables in example code. They're in some African nation, IIRC.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
the Big Mess of Wires
kc5tja wrote:
That being said, creating a CPU by hand using discrete component TTL or similar logic family is very instructional in ways that VHDL/Verilog simply can't be. Indeed, it is the only to truely get "hands on" experience in CPU design.
I designed and implemented a 4-bit and 8-bit discrete component CPU once in my life [...] I did this without the benefit of software simulation tools, too; indeed, I was only 17 when my 4-bit CPU ran for the first time. Needless to say, I was overjoyed.
I designed and implemented a 4-bit and 8-bit discrete component CPU once in my life [...] I did this without the benefit of software simulation tools, too; indeed, I was only 17 when my 4-bit CPU ran for the first time. Needless to say, I was overjoyed.
(I found this old thread looking for references to homebuilt 6502s - looking for somewhere to place a pointer to Steve Chamberlin's wire-wrapped 74-series-based 6502-like SBC. Actually it's somewhat like a 65816.)
Just a cross-reference: this topic has referred to homebuilts, 6502 custom instructions, and 6502 co-processors. My post today in the Forth section discusses a homebuilt 65C02 computer with custom instructions executed by a coprocessor. In case anyone's interested and hasn't seen it...
-- Jeff
-- Jeff