1. Working with breadboards is usually for testing small schematics, with just a few components. I have no experience with very big breadboards full of ICs. Also, a breadboard can have only one 5-10 ICs in a line. The next line of ICs must be on another board, so it will be about 2 inches away. This is a very low density of ICs for a given surface. I'll go with universal board and soldered wires or wire-wrapping for a prototype. Maybe some modules with hand-made PCBs. It all depends. Go ahead and see what fits you best.
That's the way I'm working with it - one board at a time. One component. I've now begun to put SOME of them together discovering other issues as I do which was the whole idea here. I know breadboards aren't meant to do this, in particular not permanently. But I've been inspired by others doing a basic CPU on bread-boards and thought it would be a great way to have something practical to aim at while building up my knowledge base. And I do hope I can use it for teaching moments later on. As to distances on the board, chips that work in pairs or triplets are right next to one another. The only long wires I have at the moment is for bus connections. Rarely do I need to do the rast-nest I showed here where I need to reach OVER an IC to get to the pin (I'm definitely wondering about the logic in some of the pin-layouts). That said, I'm not arguing that what I'm doing is optimal or will scale to a large set of components - there's a practical size limit here.
How many ICs do you estimate to have in the end, for the whole project? Why do you want to have buffers on each side and each register instead of using a multiplexor?
If you want to go into details, please draw a block diagram schematic with each IC you plan to use and the dataflow. A quick hand draw schematic and a picture will do it, don't go overboard with fancy EDA tools.
It's work in progress. ONCE I have things working I try to diagram them out in KiCAD. If I knew better, I could have made the diagram first and know exactly what I needed, but I don't. I have a small dozen of very common 74ls (and 4000s) ICs and I try to use what I have, but once in a while I find something on ebay that I think is worth getting (like going to 8bit register chips instead of 4bits that I had). I don't know how many total I'll use - maybe 50. I cannot count the times I've made something to just take it all apart hours later realizing it was the wrong thing to do.
As to the multiplexer .... let's me be brutally honest - I had NO idea they existed
So thanks for the hint and I'll see what I can find and use here. Looks exactly like something made for what I'm trying to do.
2. The fan-out (how many inputs pins can an output pin drive) for a normal TTL is 10. I remember you were talking about LS-TTLs on your boards. For LS, the fan-out is 20.
https://www.fairchildsemi.com/application-notes/AN/AN-319.pdf
Just to be sure, look in the datasheet for the particular IC model and manufacturer you are using. Also, a breadboard adds a lot of stray capacitance, so it might drastically reduce the fan-out.
I JUST read about that last night. I got a copy of an OLD book (TTL Cookbook by Don Lancaster) which has shed light on a few things that I've had to learn the hard way. I definitely do NOT have 20 or even 10 chips receiving the clock yet (I think the count was 6 or 7) - but using a simple 2n2222 transistor cleared that issue up for now.
I do read the datasheets - but I may not understand every aspect of the sheet
TTL families usually have asymetric outputs, with sink current much bigger then sourced current, so a pull-up resistor may help sometimes.
Again, please draw block diagrams schematics, so people who are reading this topic can enjoy and make sense of your project as much as you do.
Yes - that was one of my early lessons learned. The bus has pullup and pull down resistors on it (pull up for when I manually set values for testing). Lots of other small tricks like that on the clock etc. Reading the first chapters of the above book made it clear WHY that is - I didn't know that before.
Thanks for the feedback. And yes, I know this is a silly project. But so far it's been well worth the learning experiences. Ie. learned how to use a (cheap) scope, sizing a pulldown resistor properly, learning why grounding yourself is utterly the most important thing you need to do, etc. - there's definitely been a lot of Duh movements and I expect more to follow.
I also have a lot of "huh" moments like I have an xls28c16bp EPROM that I use to drive a line of 7segment LEDs to display decimal value of what's on the bus. It works fantastic, but despite having disabled WR on the board, it WILL reset a value or two now and then in the PROM. I have NO clue why such a thing can happen - for now that's just on the back-burner.