6 ms·
If I remember correctly there are actual simulations of a 6502 (the CPU used in C64 and other machines of that time) around, e.g. there was one done in Javascri
by pixelfarmer 3y ago
If I remember correctly there are actual simulations of a 6502 (the CPU used in C64 and other machines of that time) around, e.g. there was one done in Javascript even. Simulation as in simulating all the gates of the actual chip, and you can follow the process of what is happening.
People have been recreating CPU parts and I think also full blown CPUs in Minecraft with this redstone stuff (and had to "de-pig" their machines). That runs at about the same level as the above simulation, sort of.
There is also no "black magic" to a 7400, but with just superficial knowledge there is no way to break through that wall, i.e. you will have to go down that rabbit hole for quite some time before all the puzzle pieces fall into place. Then you should also be able to recreate a full 7400 on a breadboard, however, it may not look 1:1, but by then you are able to say why.
What I wonder though: What do you hope to gain from that? These are "just" transistor circuits, you provide power, they are "ready". Yes, there are timings involved: Nothing is instant, power is ramped up, signal distribution takes time. There are many 8 bit CPUs/SoCs around, just grab one of the manuals, often they are split into 2, one aiming at the hardware side of things (voltages, currents, frequencies / timings, etc.), and one at the "logic" and how to program all the parts and pieces. One thing that is shared by all of them: A reset line or at least some reset timings for things to settle in the chip to a defined state, because, as noted, things are not instant. Afterwards the initial piece of software takes over.
- MichaelZuo 3y agoI don't understand how the behaviour of simulations and Minecraft CPUs relate to the real world. Can you explain how you know they are correct approximations? From my perspective it seems to still require knowledge, of the actual SN7400 for example, to verify.
- pixelfarmer 3y agoHave a look at http://www.visual6502.org/JSSim/ http://www.visual6502.org/JSSim/ That aside, I'm still wondering what you are on about. The "internal logic" of something like a 7400 is fully defined by the transistors, so to understand that, you have to understand how transistors work. Luckily, we are not dealing with analogue computers, but digital/binary ones, so things can be simplified to on/off. Transistors are something like switchable resistors, ideally between zero resistance ("on") and infinite one ("off"). This state is controlled by the "base" (BJT) or "gate" (FET). Which means if this base/gate has a defined state, the output will have a defined state, and that is where the specifics of the respective 74XX chip are important -> chip manual will give all the required details. But as such there is no "start-up procedure" or anything with these things as long as they have no internal state, and NAND gates don't have that. Once we talk about flip-flops, latches, registers, and similar things, then we have state, and usually also some way to reset that state. 8 bit CPUs all come with a reset line for some reason, or handle this automatically as part of their power-up. And that is where these "we build stuff from 74XX chips to a 8 bit CPU" video series come in, because they show all the CPU components, their wiring, and potentially also give access to a full schematic so you can follow the traces and see + understand what happens as part of the power-up.
- MichaelZuo 3y agoThanks for posting the link, that's pretty cool, but it leads to my question of how do you know they are correct approximations? > That aside, I'm still wondering what you are on about. The "internal logic" of something like a 7400 is fully defined by the transistors, so to understand that, you have to understand how transistors work. What I'm on about is precisely that the 'internal logic' of the 7400 is unknown and not fully defined. You make an assumption here, that does not seem to be backed up by any published source, "it's fully defined by the transistors". For example, it might very well be reliant on other aspects, such as the length of the circuit traces to function correctly.
- pixelfarmer 3y agohttps://www.ti.com/product/SN74LS00 https://www.ti.com/product/SN74LS00 Datasheet for a 7400 type chip (or actually multiple). Go check it out.
- MichaelZuo 3y agoYou linked to a completely different product, it says on the site "SN74LS00", "4-ch, 2-input, 4.75-V to 5.25-V bipolar NAND gates". Are you getting confused as to what a bipolar NAND gate is vs. what we were discussing (the SN7400 TTL chip)?
- pixelfarmer 3y agohttps://www.ti.com/product/SN7400 https://www.ti.com/product/SN7400 is also "4-ch, 2-input, 4.75-V to 5.25-V bipolar NAND gates". I mentioned BJT and FET, for the latter there is https://www.ti.com/product/SN74AHCT00 https://www.ti.com/product/SN74AHCT00 Might be useful to know what BJT and FET means and then you will see that standard / original TTL is always "bipolar", for example.
- MichaelZuo 3y agoDo you not realize that the design that TI currently sells is different from the 1965 design that we were discussing? They are even manufactured using very different technology. Like I said, just because it shares the same part number and is labelled "bipolar NAND gate" does not mean that it's approximately the same.