Hey! I wanna make a really basic computer. Can someone point me in the direction of logic diagrams and all of that? I've already strung a bunch of full adders together and made a 12 bit binary adder. It was cool but I wish to go deeper!
>>1148697
Ben Eater has really good videos explaining the design of each component on his breadboard computer
https://www.youtube.com/watch?v=9PPrrSyubG0
Learn Verilog, in laymen's terms, it's a language that produces schematics that can then be uploaded to an FPGA board.
Also, ripple carry is slow, you can simplify the truth table for 4bit addition to make a much faster adder.
>>1148697
There are people who've built simple processors out of 7400 series chips, but it takes a LOT of time, and ends up being pretty expensive.
Look at things like this for examples though: http://cpuville.com/
I think there's an old fashioned webring on his site even. You can find more examples from there.
BUT, if I wanted to do this, I'd look at getting a hobbiest level FPGA from one of the Chinese junk sites.
Pic related will let you play with an awful lot of things from openrisc to spark, old CPUs architectures, and your own designs.
>>1148711
Here is another guide on making a z80 computer with VGA output with an Altera FPGA
http://searle.hostei.com/grant/Multicomp/
http://www.ebay.co.uk/itm/New-ALTERA-FPGA-Cyslonell-EP2C5T144-Minimum-System-Learning-Development-Board
>>1148716
Damn it. When I had a low paying job, I couldn't afford to do this. Now that I can afford to blow that much on coffee a week, I don't have time to do that.
That just looks like so much fun to do!
>>1148697
For all intents and purposes, the two books in pic related should tell you everything you need to know, OP.
>>1148756
Not really, a lot of prototyping for modern processors is done on FPGAs.
>>1148756
1/2 of modern FPGA's (at least) can be programmed by drawing a schematic composed of gates, and input/outputs.
Did you even read the docs?
Have a red pill:
ftp://ftp.altera.com/up/pub/Altera_Material/11.0/Tutorials/Schematic/Quartus_II_Introduction.pdf
>>1148697
6502.org might have what your looking for...
>>1148697
Build one of these https://en.wikipedia.org/wiki/Hewlett-Packard_9100A
google lc3 and read that shit. Basically a CPU is a system to address data in a memory system, along with a unit to do math (ALU).
Honestly its pointless to learn cuz if u wanna do anything real its gonna take hundreds of hours and will only run stuff for your specific brew of assembly.
>>1148697
good job op
read up about how processors work, architecture and fetch execute cycle, don't worry about advanced things like pipelining and cache just get a grip on how it does what it does, basically if you heard about a turing machine what it is is actually a computer but if you saw it all it is is writing numbers on a bit of tape which looks pretty fucking boring but its what it's doing thats cool which is all just how the software is arranged. computers are the opposite, you don't see them working so most people don't understand how immensely boring they are. in the same oversimplification way of calling a car engine an air pump a computer is just reading memory, each time it reads the memory the bit it just read tells it what to do to get to the next bit of memory. eventually the data in memory will be arranged in such a way that it becomes meaningful to the user. the computer doesn't understand what its doing at all.
so you have your ALU, you need some memory and a control module at the very minimum. the control module is just a state machine running fetch execute cycle.
so make some ram out of some flip flops or some shit and then look into state machines for your controller. start with something simple, you only need a few instructions, try adding two numbers from your ram and storing them, you only need 3 or 4 instructions encoded to do this. have fun it's a blast.
if you are boring you can do it all in verilog/vhdl. if you do and you have experience programming then forget what you know. it's not procedural think of it as a description of a circuit that is interpreted all at the same time rather than line by line.
>>1148697
The book Computation Structures takes you through building simple logic families all the way up to making complete microprocessors of various architecture families, building a complete computer from them, and how to write a multitasking OS for it.
It used to by used by MIT's 6.004 class, where you had to build one of the architectures from scratch on solderless breadboards and then program it to complete the class.
(I used to be an LA for the class back in the 90s)
>>1149769
(And yes, as a result, I've built many functioning computers from 7400 logic)
Sadly... was from before the days of digital cameras, however I still have one of the 'nerdkits' (the box with all the breadboards and a power supply in it).
>>1149771
here's a small pic from one of the classes a few years after I was there: http://www.spaikmos.com/pictures/bert.jpg
Looks like the 8 bit microcoded u-op R-machine CISC architecture version.
>>1149773
er, that was a weird braino. image board and all.
>>1148836
>6502.org might have what your looking for...
I second this. Also the forum there has a lot, and I really mean a LOT, of information ranging from making CPU from TTL to implementing a CPU on an FPGA.
Forum is also super friendly and the people there have more than 40 years of experience in these things.
>>1150051
Not much, but OP haven't even really stated what he actually wants to build and how.
You seem to be the first one to mention discretes.
The practical part of one of the units in my CS degree was basically working through this textbook to implement a MIPS processor on an FPGA.
This one sounds way cooler though >>1149769
>>1148710
Not OP, how does Verilog compare to VHDL? Are there any weird other hardware descriptor languages out there?
>>1150748
This was posted a while ago: http://www.ue.pwr.wroc.pl/pld/pld_12.pdf
At least Altera has their AHDL and then there's a bunch of relics from the PLD era, like ABEL.