9 ms·
MOnSter 6502: a working transistor-scale replica of the classic MOS 6502
- _spduchamp 3y agoI want a MOnSter 6581
- tombert 3y agoWait, 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 3y agoYep. 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?
- basementcat 3y agoThis 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 3y ago> 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 3y agoYeah, I’m thinking that the solution would be something that takes the analog monitor signal and uses it to control a digital display.
- tombert 3y agoAgain, 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 3y agoUnfortunately, 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 3y agoWell 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 https://en.wikipedia.org/wiki/Laser_128
- duskwuff 3y agoFrom 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 http://www.applelogic.org/files/VTECHL128.pdf
- anyfoo 3y agoAgain, 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_deploy/html/images/sensors-22-01871-g010.png?1646125960 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.
- geon 3y agoStill, you could compile your own custom microsoft basic like Ben Eater did on youtube recently.
- anyfoo 3y agoThe 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 3y agoIt'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 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 3y agoThe 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 3y agoI 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 3y agoThe 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.
- deleted 3y ago[deleted]
- mschuster91 3y ago> 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.
- deleted 3y ago[deleted]
- grishka 3y agoA macroprocessor.
- apantel 3y agoThis is the Japanese Cloisonné of circuit boards. Beautiful, well-done.
- warbled_tongue 3y agoI'm always slightly disappointed that I can't just Buy Now one of these passion projects for my wall. Truly wonderful art.
- saulpw 3y agoIt's a shame not everything is for sale.
- VectorLock 3y agoTake my money please!
- hyperthesis 3y agowhat nm node is this? when would it have been state of the art?
- Palomides 3y agomaybe around 1956 or so I think it's a question of mm rather than nm!
- actionfromafar 3y agohttps://en.wikipedia.org/wiki/Bendix_G-15 https://en.wikipedia.org/wiki/Bendix_G-15 was much slower.
- anyfoo 3y agoAnd 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 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 3y agoThe 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 3y agoI 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!
- jpl56 3y agoGreat project! Ben Eater needs this in his videos, he would show us how the registers change.
- ooterness 3y agoI 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 https://shop.evilmadscientist.com/tinykitlist/762 [2] https://shop.evilmadscientist.com/tinykitlist/652 https://shop.evilmadscientist.com/tinykitlist/652
- lnx01 3y agoThe 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 3y agoI wonder how slow it would have to run and how many kilowatts it would use.
- mrguyorama 3y agoIt 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 3y agoThe 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 https://en.wikipedia.org/wiki/Apple_A17
- floating-io 3y agoThere'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/ https://www.evilmadscientist.com/2024/bantam-tools/
- pnw 3y agoI 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.
- randomcarbloke 3y agoI'd even just buy the trace for the pcb!
- dylan604 3y agoThis 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 3y agoRelated. Others? Complete working transistor-scale replica of the classic MOS6502 microprocessor - https://news.ycombinator.com/item?id=33841901 https://news.ycombinator.com/item?id=33841901 - Dec 2022 (38 comments) MOnSter 6502 - https://news.ycombinator.com/item?id=26507525 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 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 https://news.ycombinator.com/item?id=14386413 - May 2017 (44 comments) The MOnSter 6502 - https://news.ycombinator.com/item?id=11703596 https://news.ycombinator.com/item?id=11703596 - May 2016 (74 comments)
- tocs3 3y agoI would like to see a mechanical version of something like this.
- henry_bone 3y agoI 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 3y agoYes, 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 https://www.masswerk.at/nowgobang/2021/6502-illegal-opcodes
- th4tg41 3y agoWonder 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 3y agoPlus a small LCD in the frame that displays the level and a progress bar for that level.
- th4tg41 3y agoDot 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 3y agoFun project, but fairly old news at this point.
- djmips 3y agoOld to you but not to a lot of people! https://xkcd.com/1053/ https://xkcd.com/1053/
- deleted 3y ago[deleted]
- cancerhacker 3y agoIt’s mentioned in the page, but the emulation at http://www.visual6502.org/JSSim/expert.html http://www.visual6502.org/JSSim/expert.html is worth a visit.
- russdill 3y agoI'd be pretty happy with a piece of visual art that recreates something like that
- Linda231 3y ago[dead]
- namuol 3y agoSee also: https://gigatron.io/ 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.
- deleted 3y ago[deleted]
- pclmulqdq 3y agoBeautiful 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 3y agoI 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 https://www.mdpi.com/2079-9292/13/4/781
- pclmulqdq 3y agoI 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.
- snvzz 3y agoNote QERV[0] exists. Slightly larger but much faster 4bit-at-once variant of SERV. 0. https://github.com/olofk/qerv https://github.com/olofk/qerv
- KingOfCoders 3y agoI'd love to have a Z80 version.
- playa1 3y agoProjects 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 https://www.megaprocessor.com/index.html
- KWxIUElW8Xt0tD9 3y ago4 trillion transistor wafer-scale integration https://www.cerebras.net/blog/cerebras-cs3 https://www.cerebras.net/blog/cerebras-cs3
- lloeki 3y ago> 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 3y agoI'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.