[HN Gopher] MOnSter 6502: a working transistor-scale replica of ...
       ___________________________________________________________________
        
       MOnSter 6502: a working transistor-scale replica of the classic MOS
       6502
        
       Author : harporoeder
       Score  : 214 points
       Date   : 2024-04-03 19:31 UTC (1 days ago)
        
 (HTM) web link (monster6502.com)
 (TXT) w3m dump (monster6502.com)
        
       | tombert wrote:
       | Wait, so if I understand this correctly (what I don't know about
       | hardware is a lot!), is this basically a "macroprocessor"? As in,
       | it functions the same way as a vanilla 6502, but done at a larger
       | scale?
       | 
       | Actually pretty cool that it's able to get 1/20th the speed when
       | it's this big!
        
         | dhosek wrote:
         | Yep. The bummer is that the Apple ][ relies on the clock speed
         | of the 6502 to handle some of its functionality (most notably
         | video handling), so you can't just run a cable to the CPU
         | socket on the Apple motherboard. I wonder if any of the other
         | classic 6502 machines (Commodore, Atari, Acorn, BBC, etc.)
         | would work?
        
           | tombert wrote:
           | Again, I know basically nothing about hardware, so this is
           | likely a dumb question: could you conceivably get an
           | oscillator/clock chip that also operates at 1/20th the speed,
           | wire that into the Apple ][, and then wire in this giant CPU?
        
             | duskwuff wrote:
             | Unfortunately, no. The CPU would work, but memory retention
             | would be unreliable (because the DRAM is now going ~20x too
             | long between refreshes), and the composite video output
             | would fail to display on a monitor (because it's the wrong
             | frequency).
        
               | tombert wrote:
               | Well now I'm wondering; it might not directly run an
               | Apple ][, but what about the Apple ][ compatibles like
               | the Laser 128 [1]? It doesn't use the same ROM as Apple,
               | they licensed Microsoft Basic directly from Microsoft and
               | then added the missing functionality themselves.
               | 
               | I guess someone would have to see how similar it is to a
               | vanilla Apple ][.
               | 
               | [1] https://en.wikipedia.org/wiki/Laser_128
        
               | duskwuff wrote:
               | From what I can tell from documents like [1], the Laser
               | 128 was very similar (possibly even identical) to an
               | Apple II on a hardware level. It'd have the same issues
               | running at a higher/lower clock speed than it was
               | designed for.
               | 
               | [1]: http://www.applelogic.org/files/VTECHL128.pdf
        
               | anyfoo wrote:
               | Again, the answer is almost certainly no, unfortunately.
               | 
               | A Laser 128 isn't that fundamentally different to an
               | actual Apple II. In fact, from a wider point of view,
               | they are "almost identical".
               | 
               | DRAM needing timely refresh is universal to DRAM itself:
               | It's because DRAM is literally made of a transistor and a
               | capacitor holding your bit, and if you don't access it
               | every so often, that capacitor discharges eventually. The
               | most realistic path to "slow DRAM" would be to replace
               | DRAM with SRAM altogether, which is effectively made of
               | transistors only, and holds its content as long as just
               | power is applied. It's not that hard to replace DRAM with
               | SRAM: Apart from not needing refresh, SRAM behaves
               | similar to DRAM. It's just more expensive (and usually
               | faster, which is also not a drawback), and the DRAM
               | refresh, while not doing anything useful, wouldn't hurt.
               | 
               | But as for video output, that's just a consequence of how
               | Apple II's (most microcomputers of that era, actually)
               | video output works: By literally controlling the electron
               | gun in the CRT, with only some analogue electronics in
               | between. The monitor however wants to move the electron
               | beam at a certain speed (or, if you had a fancy Multisync
               | monitor, a set or range of speeds). But even if that
               | wasn't the case, the phosphor on the screen glows only
               | for a short amount of time, so draw your picture too
               | slow, and you will only see small parts of it.
               | 
               | The latter can be demonstrated by just pointing a camera
               | at a CRT. In all likeliness, the camera's frequency will
               | be slightly off from the CRT's frequency, so that you
               | capture different parts of the beam's path at each frame,
               | simulating what it would look like if you'd slow down the
               | beam itself: https://pub.mdpi-
               | res.com/sensors/sensors-22-01871/article_de...
               | 
               | Would it be possible to decouple the video output circuit
               | from the microprocessor's timing? Absolutely! And this is
               | in fact what virtually any modern computers has been
               | doing for many decades by now: Even if you still can find
               | analogue VGA with a CRT, that VGA card had its own clock
               | that is completely independent of the CPU's clock. But
               | that's just not how simple home computers of that era
               | usually operated.
        
               | CamperBob2 wrote:
               | 1.023 MHz is basically the Apple ]['s fine structure
               | constant. Change that, even by a tiny amount, and the
               | whole universe comes unglued. Video, disk access, you
               | name it.
               | 
               | There were accelerator boards, but they ran at integer
               | multiples of the original clock speed for that reason.
        
             | jameshart wrote:
             | You'd need to run an NTSC screen at 3Hz
        
               | basementcat wrote:
               | You'll need additional circuitry to "upscan" your 3Hz
               | display to 60Hz.
               | 
               | There was a moment many years ago when I considered
               | constructing a mechanical 6502. I quickly learned that
               | transistors are fabricated in silicon for economic
               | reasons.
        
               | anyfoo wrote:
               | The fun path would be to modify the display to run at 3Hz
               | (and also implying the much slower horizontal scan rate),
               | but due to the phosphor coating's short persistence,
               | you'd at best see only a small sliver of the full picture
               | at any time. Exactly like you see if you point a video
               | camera to a CRT whose frequency does not match up
               | exactly.
               | 
               | But if you'd take a long exposure photo of the CRT, it
               | would likely work! (EDIT: Might fry your phosphor,
               | though... as for any other components, like filters or
               | components that may get damaged by the now only slowly
               | changing current, I just assume you replaced or retuned
               | that as part of the conversion process.)
        
               | userbinator wrote:
               | There are CRTs with long-persistence phosphors too; they
               | found applications in radar and the like:
               | 
               | https://en.wikipedia.org/wiki/Phosphor#Standard_phosphor_
               | typ...
               | 
               | https://tubetime.us/index.php/2015/10/31/crt-phosphor-
               | video/
               | 
               | http://www.labguysworld.com/crt_phosphor_research.pdf
               | 
               | The P10 phosphor there claims "Persistence from several
               | seconds to several months"(!)
        
             | pulvinar wrote:
             | Due to the way the video is interleaved with CPU cycles,
             | you'd have to do something like divide the 1 MHz CPU clock
             | by 20, and then when writing carefully only put data on the
             | data bus for one of those 20 cycles. And the disk accesses
             | would surely fail due to the CPU not keeping up, among
             | other problems.
             | 
             | http://www.apple-
             | iigs.info/doc/fichiers/TheappleIIcircuitdes...
        
               | anyfoo wrote:
               | Thinking more and more about it in this thread (yes, I'm
               | procrastinating doing something else), I'm beginning to
               | come to the conclusion that the way with the least
               | modifications to the computer itself is to replace the
               | DRAM with SRAM, and to "just" slow the video circuit down
               | as well (including color burst, horizontal scan, etc.),
               | but to attach a custom buffered display instead of a
               | regular monitor to the computer.
               | 
               | However, I wouldn't be surprised in the slightest if any
               | other of the integrated circuits don't work at the slower
               | speed for some reason. (Filters etc. you'd just
               | replace/retune.)
        
             | rogerbinns wrote:
             | It is well worth understanding how these older computers
             | worked. All the components were doing double or triple
             | duty, so that together all the tasks like refreshing
             | memory, reading/writing memory, generating video,
             | generating audio, and I/O worked. This involved
             | interleaving bus access and similar "tricks".
             | 
             | There are an excellent series of talks at CCC titled "The
             | Ultimate X talk" [0] where you are shown exactly how. I
             | recommend The Ultimate Acorn Archimedes Talk [1] which
             | introduced the ARM chip, but also shows how shared bus
             | access and optimisation was the core principle of
             | performant designs at the time.
             | 
             | [0] https://media.ccc.de/search/?q=the+ultimate+talk
             | 
             | [1] https://media.ccc.de/v/36c3-10703-the_ultimate_acorn_ar
             | chime...
        
           | basementcat wrote:
           | This is true of the Commodore 64 as the VIC-II chip timing is
           | closely coupled to the NTSC color burst (note below joke
           | about "up-scanning to 60 Hz")
           | 
           | Also disk I/O and RS-232 are bit-banged.
        
             | anyfoo wrote:
             | > Also disk I/O and RS-232 are bit-banged.
             | 
             | You could easily slow that down as well.
             | 
             | The big problem is really the CRT (and possibly other ICs
             | in the computer that don't like the extreme slowdown). As
             | noted below, if you went through the arduous process of
             | replacing and retuning components to be able to slow the
             | beam down, your phosphor coating is still too fast, and
             | probably doesn't like having the beam passing only slowly
             | over it. (You thought regular burn-in was bad!)
             | 
             | However, replace the CRT with something else, like an LCD
             | with some extra buffering circuit, and it could work. Yes,
             | the color burst will be at a much lower frequency as well,
             | but just demodulate color at this lower frequency, then.
        
               | dhosek wrote:
               | Yeah, I'm thinking that the solution would be something
               | that takes the analog monitor signal and uses it to
               | control a digital display.
        
           | geon wrote:
           | Still, you could compile your own custom microsoft basic like
           | Ben Eater did on youtube recently.
        
             | anyfoo wrote:
             | The software is really not an issue. I saw the MOnSter 6502
             | live running BASIC, and it was MS BASIC as far as I recall.
             | It just wasn't simply hooked up as the CPU of an Apple II
             | or similar.
        
         | kazinator wrote:
         | It's a discrete CPU. This is how processors were made before
         | microprocessors. Before 1970, we had discrete component
         | mainframe machines, in fact running at multi-MHz speeds (e.g.
         | CDC 6600).
         | 
         | https://en.wikipedia.org/wiki/CDC_6600
         | 
         | 60 bit, 10 MHz processor, introduced in 1964.
         | 
         | Article says that was 10 times faster than other contemporary
         | machines; but that still leaves those at around a solid
         | megahertz.
         | 
         | Discrete logic circuits can be fast because they have a lot of
         | area over which to dissipate heat and can guzzle current.
        
           | magicalhippo wrote:
           | The main issue isn't the CPU as such, it's memory. You can
           | reasonably make a usable CPU using relays even, but a non-
           | trivial amount of memory takes up sooo much space.
        
             | jfoutz wrote:
             | I learned this in Minecraft. I'd wired up ttls in college
             | for intro to ee for cs majors, which was fun. But ram was a
             | beast. I guess I'll build another tower and upgrade to a
             | full 1k.
             | 
             | Ram takes so much space.
        
               | vintermann wrote:
               | The Virtual Circuit Board game/sandbox at Steam offers an
               | external memory, presumably for this reason.
               | 
               | I remember a Minecraft mod from way back that let you do
               | "modular" redstone, going "into" blocks to build redstone
               | inside them, which you could then reuse as a single
               | block. I wonder if it's been updated.
        
           | mschuster91 wrote:
           | > Discrete logic circuits can be fast because they have a lot
           | of area over which to dissipate heat and can guzzle current.
           | 
           | ... but not too fast either, because the long trace lengths
           | are antennas so you'll end up in EMF emission regulations
           | hell on the one side, and signal integrity issues on the
           | other side. On top of that come losses from inductive and
           | capacitive coupling.
        
           | userbinator wrote:
           | _Discrete logic circuits can be fast because they have a lot
           | of area over which to dissipate heat and can guzzle current._
           | 
           | Moreover, most of them used either ECL or TTL, which are
           | logic families much faster than P/N/CMOS. This being a
           | transistor-level replica of an NMOS 6502, it can't go much
           | faster.
        
       | grishka wrote:
       | A macroprocessor.
        
       | apantel wrote:
       | This is the Japanese Cloisonne of circuit boards. Beautiful,
       | well-done.
        
         | warbled_tongue wrote:
         | I'm always slightly disappointed that I can't just Buy Now one
         | of these passion projects for my wall. Truly wonderful art.
        
           | saulpw wrote:
           | It's a shame not everything is for sale.
        
           | VectorLock wrote:
           | Take my money please!
        
       | hyperthesis wrote:
       | what nm node is this?
       | 
       | when would it have been state of the art?
        
         | Palomides wrote:
         | maybe around 1956 or so
         | 
         | I think it's a question of mm rather than nm!
        
           | actionfromafar wrote:
           | https://en.wikipedia.org/wiki/Bendix_G-15 was much slower.
        
             | anyfoo wrote:
             | And had much larger "nodes", given that those tubes are
             | much, much larger and farther apart than the SMT
             | transistors on this 6502 replica. It's not even close.
             | 
             | But I think IBM's SLT from the 1960s might come close:
             | https://en.wikipedia.org/wiki/Solid_Logic_Technology
             | 
             | Those little square "chips" are not actually integrated
             | circuits, but effectively small PCBs with surface mounted
             | discrete components (including transistors).
        
               | NikkiA wrote:
               | The early PDPs used discrete CPUs, so they'd probably be
               | the closest examples, the 12-bit PDP-5 is the smallest
               | those CPUs went though, which isn't hideously more
               | complex than a 8-bit CPU.
        
               | anyfoo wrote:
               | I thought about CPUs with either discrete transistors, or
               | with e.g. 74xx ICs. But the former intuitively seemed too
               | big to me (because I was assuming they use large
               | transistor packages instead of SMT), and the latter too
               | small (because a single 74xx logic chip can pack a lot of
               | transistors).
               | 
               | So this "hybrid" of having SMT components in a can by IBM
               | seemed close.
               | 
               | Happy to learn more!
        
           | dboreham wrote:
           | Before my time but isn't 1956 too early for Silicon
           | transistors?
           | 
           | I'd have put it around 1963. Before DTL chips, introduced in
           | 1964. Non-military TTL came along in 1966.
        
         | offmycloud wrote:
         | One millimeter is 1,000,000 nanometers. So that's roughly the
         | 1950s. :)
        
       | ooterness wrote:
       | I love this art/engineering project. The whole concept of extra-
       | large unintegrated circuits is just so amusing.
       | 
       | The team behind this project sells kits for two classic ICs, the
       | 741 op-amp [1] and the 555 timer [2]. Sadly, they've said the
       | Monster6502 is too big and complex to make a practical kit.
       | 
       | [1] https://shop.evilmadscientist.com/tinykitlist/762 [2]
       | https://shop.evilmadscientist.com/tinykitlist/652
        
         | lnx01 wrote:
         | The Apple A8X, found in the iPad Air 2, contains about 3
         | billion transistors. (This is comparable to the number of
         | transistors in modern desktop computer CPUs as well.) At the
         | scale of the MOnSter 6502, that would take about 885,000 square
         | feet (over 20 acres or 8 hectares) -- an area about 940 ft (286
         | m) square.
        
           | MBCook wrote:
           | I wonder how slow it would have to run and how many kilowatts
           | it would use.
        
             | mrguyorama wrote:
             | It takes about a full microsecond for a signal to go from
             | one edge of the "wafer" to the other, so that constrains
             | your cycle time considerably.
        
           | xcv123 wrote:
           | The Apple A8X is 10 years old.
           | 
           | The current iPhone processor (Apple A17) contains 19 billion
           | transistors. So now we have 126 acres in a pocket.
           | 
           | https://en.wikipedia.org/wiki/Apple_A17
        
         | floating-io wrote:
         | There's also the fact that they were recently acquired [1],
         | unfortunately (IMO).
         | 
         | I've said it before: I would totally buy one of those just to
         | hang on my wall. It's a truly awesome project, and I love
         | blinkenlights!
         | 
         | [1] https://www.evilmadscientist.com/2024/bantam-tools/
        
         | allenrb wrote:
         | Unintegrated or, perhaps... Dis-integrated?
        
           | Max-q wrote:
           | The correct term is discrete circuit.
           | 
           | We used to have circuits, and when integrated on one piece of
           | silicone, we called them "integrated circuits", while the old
           | ones became "discrete circuits".
        
         | sumtechguy wrote:
         | I have been kicking around the idea of doing this to something
         | like a NES. Then selling them preassembled. But then I remember
         | I can solder at all and it is decently expensive to do.
        
           | JPLeRouzic wrote:
           | You don't have to solder yourself, some PCB providers can do
           | it for you (indeed they buy components).
        
       | pnw wrote:
       | I signed up for the mailing list when it was first on HN a few
       | years ago, but haven't seen many signs of progress. Website still
       | says mid 2023 for a launch.
       | 
       | 6502 was my first CPU so I'm totally down to buy one, even though
       | it's going to be pretty expensive. I'd be pleased if they could
       | make them for less than $5k.
        
       | dylan604 wrote:
       | This would be a great piece of art for a very niche space, like
       | my office =)
       | 
       | The fact that it actually works is just bonus.
        
       | dang wrote:
       | Related. Others?
       | 
       |  _Complete working transistor-scale replica of the classic
       | MOS6502 microprocessor_ -
       | https://news.ycombinator.com/item?id=33841901 - Dec 2022 (38
       | comments)
       | 
       |  _MOnSter 6502_ - https://news.ycombinator.com/item?id=26507525 -
       | March 2021 (31 comments)
       | 
       |  _The MOnSter 6502: transistor-scale replica of classic MOS 6502
       | microprocessor_ - https://news.ycombinator.com/item?id=17969472 -
       | Sept 2018 (81 comments)
       | 
       |  _A working, transistor-scale replica of the MOS 6502
       | microprocessor_ - https://news.ycombinator.com/item?id=14386413 -
       | May 2017 (44 comments)
       | 
       |  _The MOnSter 6502_ -
       | https://news.ycombinator.com/item?id=11703596 - May 2016 (74
       | comments)
        
       | tocs3 wrote:
       | I would like to see a mechanical version of something like this.
        
       | henry_bone wrote:
       | I wonder if it's correct right down to the errata. Was there
       | undocumented instructions on the 6502? If so, I wonder if it
       | supports those.
        
         | zik wrote:
         | Yes, there are some undocumented instructions [1]. They say
         | it's a transistor-for-transistor replica so it should be 100%
         | compatible with them.
         | 
         | [1] https://www.masswerk.at/nowgobang/2021/6502-illegal-opcodes
        
       | th4tg41 wrote:
       | Wonder if it's feasable and how much work it would be to record a
       | run of eg Super Mario Land and play the processor instructions
       | back on this thing hanging on the wall. Would be a nice
       | conversation piece.
        
         | th4tg41 wrote:
         | Plus a small LCD in the frame that displays the level and a
         | progress bar for that level.
        
           | th4tg41 wrote:
           | Dot matrix display. Progress bar is underneath the Level
           | indicator. Plus presence sensor. Not PIR. And RTC in/on
           | whatever plays the instructions to always seemlessly pick up
           | on the loop.
        
       | johnwbyrd wrote:
       | Fun project, but fairly old news at this point.
        
         | djmips wrote:
         | Old to you but not to a lot of people! https://xkcd.com/1053/
        
       | cancerhacker wrote:
       | It's mentioned in the page, but the emulation at
       | http://www.visual6502.org/JSSim/expert.html is worth a visit.
        
         | russdill wrote:
         | I'd be pretty happy with a piece of visual art that recreates
         | something like that
        
       | namuol wrote:
       | See also: https://gigatron.io/
       | 
       | Gigatron is a retro 8-bit computer with no microprocessor.
       | Instead, its processing is done through thoughtful application of
       | "TTL" logic chips. It's another project that helps you "see" the
       | processor's internals. Kits aren't for sale anymore through the
       | official website, but you can find unpopulated PCBs and the
       | components shouldn't be hard to find.
        
       | pclmulqdq wrote:
       | Beautiful work, and a great choice of processor to emulate. As I
       | understand it, they also tried to get close to the layout of the
       | actual chip, not just make a functional equivalent circuit.
       | 
       | The next time I have some time, I would love to do a discrete
       | RISC-V, but I know how big a project this sort of thing is.
        
         | jecel wrote:
         | I compared the sizes of several processors[1] including these
         | RISC-V: Glacial, SERV, PicoRV32, VexRiscv and Darkriscv.
         | Compiled to NAND gates the results were 2063, 3595, 34463,
         | 49214 and 50424 gates respectively. Multiply these numbers by 4
         | to know how many transistors a CMOS implementation would need.
         | 
         | I also implemented them in a bunch of different FPGAs, though
         | that is less relevant here.
         | 
         | Glacial is an 8 bit processor optimized to emulate a 32 bit
         | RISC-V and SERV is a serial implementation of a 32 bit RISC-V.
         | They save transistors at the cost of many clocks per
         | instruction.
         | 
         | There are several projects that implement RISC-V using TTLs but
         | I have not heard of one using individual transistors.
         | 
         | [1] https://www.mdpi.com/2079-9292/13/4/781
        
           | pclmulqdq wrote:
           | I have my own core design that I would probably use, and you
           | definitely don't need to use CMOS logic with your discretes.
           | You can also get away with a lot more things than verilog
           | lets you do, like you can use shared buses with internal
           | 3-state drivers. That stuff cuts down your transistor count a
           | lot.
        
       | KingOfCoders wrote:
       | I'd love to have a Z80 version.
        
       | playa1 wrote:
       | Projects like this are a great way to appreciate how much can fit
       | into an IC.
       | 
       | Reminds me of the Megaprocessor project.
       | 
       | https://www.megaprocessor.com/index.html
        
         | KWxIUElW8Xt0tD9 wrote:
         | 4 trillion transistor wafer-scale integration
         | 
         | https://www.cerebras.net/blog/cerebras-cs3
        
       | lloeki wrote:
       | > Does it run at the full speed of an original 6502 chip?
       | 
       | > No; it's relatively slow. The MOnSter 6502 runs at about 1/20th
       | the speed of the original, thanks to the much larger capacitance
       | of the design. The maximum reliable clock rate is around 50 kHz.
       | The primary limit to the clock speed is the gate capacitance of
       | the MOSFETs that we are using, which is much larger than the
       | capacitance of the MOSFETs on an original 6502 die.
       | 
       | Now I'm curious but in way over my head.
       | 
       | Could the speed be improved by using MOSFETs with better
       | capacitance?
       | 
       | Can the full 1.023 Mhz be attained by throwing money at it or are
       | there physical limitations at that scale?
        
         | junon wrote:
         | I'm not an expert but a hobbyist. Take what I say with a grain
         | of salt.
         | 
         | > Could the speed be improved by using MOSFETs with better
         | capacitance?
         | 
         | Not using MOSFETs would make it faster, in theory. MOSFETs have
         | a delay time and are considered slow. But it appears they want
         | to be true to how the original was made. There definitely exist
         | mosfets indistinguishable from dust - I made the mistake of
         | designing with a few at one point. So probably, yes.
         | 
         | Another thing I noticed is that the distance between the
         | components on the board is quite high. They might have done
         | that to replicate the original layout, or maybe I'm just not
         | seeing it correctly. But everything - including the traces on
         | the board - has some capacitance.
         | 
         | > Can the full 1.023 Mhz be attained by throwing money at it or
         | are there physical limitations at that scale?
         | 
         | Hard to answer without measuring, though I'd imagine it's
         | possible. 1MHz isn't that fast, but if you have high
         | capacitances or they don't switch fast enough (e.g. MOSFETs)
         | then your signals are going to get muddy.
         | 
         | EDIT: to be clear, not ragging on the project. This stuff is
         | beyond cool.
        
           | codeflo wrote:
           | The real question is why would you. This is an educational
           | project that visually demonstrates how a CPU operates. It
           | could clock at 0.5 Hz for that purpose.
        
             | junon wrote:
             | Why do anything?
        
           | sebcat wrote:
           | > Not using MOSFETs would make it faster, in theory.
           | 
           | My understanding is that the MOS 6502 was MOS, so MOSFET. Not
           | using MOSFETs would make it less of a replica.
           | 
           | Implementing the replica in an integrated circuit instead of
           | discrete transistors would lower capacitance.
           | 
           | The delay time is a consequence of the capacitance.
        
             | junon wrote:
             | I'm aware of all of this (I even mentioned the MOSFET vs
             | not in my comment), I was just answering the OPs questions.
        
           | skissane wrote:
           | This is basically a second generation computer, whose heyday
           | was in the first half of the 1960s - after vacuum tubes, but
           | before the first integrated circuits.
           | 
           | It makes me wonder, what transistor family would give you the
           | best performance for this (very unusual nowadays) use case?
           | Obviously not MOSFETs.
           | 
           | From what I understand, germanium transistors were most
           | common for 2nd generation computers, because (at the time)
           | silicon transistor technology wasn't sufficiently mature to
           | be used for that application.
        
             | fallous wrote:
             | Maybe try ECL?
        
               | TheOtherHobbes wrote:
               | ECL would definitely be faster. Switching time is around
               | 1nS, which is a solid order of magnitude faster than
               | NMOS.
               | 
               | But it would need something like 2 to 4 times the surface
               | area, and would make a nice room heater.
        
         | zokier wrote:
         | its unfortunate they don't have any details on what components
         | were used so its difficult to say how much room for improvement
         | there is still.
        
         | Pet_Ant wrote:
         | > The maximum reliable clock rate is around 50 kHz.
         | 
         | For those too lazy to do the math: the original did 1 MHz to 3
         | MHz.
         | 
         | Note the units -which I missed the first time- kHz vs mHz.
         | 
         | https://en.wikipedia.org/wiki/MOS_Technology_6502
        
         | generuso wrote:
         | I assume they use garden variety MOSFETs like 2N7002, which
         | cost a few pennies when bought in bulk.
         | 
         | The gate capacitance is 20 pF. One logic gate output is
         | typically driving several inputs, so the typical load is
         | several-fold of this capacitance. One could check the
         | schematics for the maximum fan-out in the real circuit. The
         | longest, one foot long traces on the PCB add another few tens
         | of pF. So the capacitance seen by an output of a logic gate
         | will probably be in the range of 20-100 pF most of the time.
         | But it is the slowest gates which determine the speed of the
         | whole circuit, so the worst case could be much worse.
         | 
         | These transistors themselves are extremely fast and can switch
         | on and off in about 3 ns. Their channel resistance is in single
         | Ohm range even at the lowish gate voltages, so the RC time
         | constant is also very small 100pF * 3 Ohms = 0.3 ns. Thus this
         | is also not an issue. The slowness of the circuit comes from
         | elsewhere.
         | 
         | First, from the resistors which pull the logic gate outputs to
         | the supply voltage. There is one for each logic gate, so a
         | total of one thousand of these, and in the first approximation
         | half of them conduct at any given time. To keep power
         | consumption low, these resistors must have relatively high
         | resistance values. If we limit the current for the logic to 1 A
         | total, that is 2 mA for each of the 500 resistors. Therefore
         | the resistors must be 2.5 kOhm for 5 V supply voltage. Thus
         | charging of the nodes of the circuit through these 2.5 kOhm
         | resistors is almost a thousand times slower than discharging
         | the same nodes through the 3 Ohm channel resistance of a fully
         | open transistor. Still, this is not too bad -- on the order of
         | 250 ns of delay per gate.
         | 
         | But the frequency for the whole circuit is determined by delay
         | not through just one, but through many gates in series, plus
         | there are probably parts of the circuit topology which are not
         | optimal for implementing them with discrete transistors, where
         | the delay does not follow from such a simple reasoning as
         | above.
         | 
         | The speed can probably be easily increased by an order of
         | magnitude if one were willing to spend 50W instead of 5W for
         | the circuit. Beyond that, one would want a CPU circuit designed
         | specifically for implementation in discrete transistors, not a
         | discrete element copy of a monolithic chip.
        
       ___________________________________________________________________
       (page generated 2024-04-04 23:02 UTC)