Final Peripherals Backplane - Making an 8 Bit pipelined CPU - Part 104

  Переглядів 7,506

James Sharman

James Sharman

День тому

When I started this project I had a vision of a single backplane with all the peripherals, vga and cpu modules plugged in. I’ve since refined that a little to separate the core cpu and then two add-on boards, one for peripherals and one for the vga.
Today I share what feels like a massive step forward towards finishing the project, what I believe to be the final Peripherals backplane. In the final scene I show everything I’ve built for the system all plugged together at one for the first time!
In the test section there is a pretty big hint about one of the games I’ve started working on for the system.
There will be a minor iteration of the UART board and there will be a final IO board at the end of that sub-series.
0:00 Introduction
0:22 Module Review
1:34 Design
7:33 Routing
26:52 Soldering
37:31 Install
40:54 Test!
44:18 Outro
One segment of top town footage is a bit blurry, not sure what happened there but it wasn’t practical to re-record, it would have felt too fake.

КОМЕНТАРІ: 94
@arminth
@arminth 3 місяці тому
NOT looking forward to this project coming to an end! 😊 Great work!
@mikafoxx2717
@mikafoxx2717 3 місяці тому
Oh, but just think of what could come next to top it?
@weirdboyjim
@weirdboyjim 3 місяці тому
I'm keen to get it finished! I have plans for more projects beyond this one!
@mikafoxx2717
@mikafoxx2717 3 місяці тому
@@weirdboyjim Do you plan on open sourcing the JAM-1 once it's cleaned up? To me, it seems you've essentially made a whole 8-bit game console from scratch, and more powerful than the NES. Some seem to have already written emulators based on your thorough descriptions, though.
@cj09beira
@cj09beira 3 місяці тому
@@mikafoxx2717 its effectively open source already, the pcbs are available through easyeda, the rom's code is on the discord server, a long with a compiler for the system.
@awesomecronk7183
@awesomecronk7183 3 місяці тому
@@mikafoxx2717 He has talked about it some on Discord. From what I gather the reasoning is that the files are not currently publication-ready. I think the intent is to publish it once it is. It's on EasyEDA linked in a few places in the Discord server, but they are being frustrating with the publication requirements.
@TheGunnarRoxen
@TheGunnarRoxen 3 місяці тому
Oooh it was exciting to see my name on the board! Thank you James! The board is gorgeous
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks for supporting! Took a while to put all of them in!
@jerril42
@jerril42 3 місяці тому
Thanks James. Wow! It worked first time, awesome. The ensemble looks incredible. Geting ever closer to a thing. It was fun to watch alll the blinking lights as the music played, a hint to how amazing this build will be when complete. A special thank you for all the effort in producing the videos and taking us along for the journey, it's been both inspiring and humbling. Take care.
@weirdboyjim
@weirdboyjim 3 місяці тому
Very kind words Jerril! I’ve started work on a couple of bigger coding projects which I hope will really put it through it’s paces!
@simonmoore8776
@simonmoore8776 3 місяці тому
@@weirdboyjim It's amazing what you're doing and to document it so well so we can follow along is incredible, entertaing and hugely educational as well. It has inspired me to start messing with electronic projects for the first time since leaving Uni, so thanks James.
@joshbassett
@joshbassett 3 місяці тому
Amazing work James, it must be so satisfying to lock in the final design. Sounds like a Tetris clone is in the works 😜
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks Josh! Shh! Although It's one of the games that's been in my list since day one,
@TroySchrapel
@TroySchrapel 3 місяці тому
Coming together nicely, James. Looks awesome. Re: Soldering a VGA connector... will be a cinch for you. Nothing to it.
@weirdboyjim
@weirdboyjim 3 місяці тому
Hopefully! I may have to switch to a different tip!
@TheDrunkenMug
@TheDrunkenMug 2 місяці тому
Nice work James ! Really looking good, what a Journey it has been ❤
@weirdboyjim
@weirdboyjim 2 місяці тому
Thanks! Glad you are enjoying it!
@azayles
@azayles 3 місяці тому
I recognise that music at the end! I'm pumped for that episode! :D I was always playing that game growing up :D
@weirdboyjim
@weirdboyjim 3 місяці тому
I'm looking forwards to that as well, Lots to go before then!
@edgeeffect
@edgeeffect 3 місяці тому
The number of times I watch your sped-up routing footage and think "Oh! I wish I could route a board as fast as James does!". :) ... And your delivery times of, what, about 3 seconds are pretty amazing too. ;) Nice job... that's going to look superb with the VGA plugged in too.
@weirdboyjim
@weirdboyjim 3 місяці тому
I spend more time than I want to think about trying to reduce the routing footage without breaking the flow.
@PhilDennis
@PhilDennis 3 місяці тому
@@weirdboyjimmaybe in some cases you could skip some of the footage, for example when routing repetitive bus lines show the first couple and then dissolve to show the bus completed. I could also see this approach for some of the soldering footage.
@pipsqueak2009
@pipsqueak2009 3 місяці тому
Excellent progress! Thanks for sharing this via the videos you make.
@weirdboyjim
@weirdboyjim 3 місяці тому
You are very welcome. Thanks for watching!
@parththakkar4978
@parththakkar4978 3 місяці тому
great work james! keep the work up man !
@weirdboyjim
@weirdboyjim 3 місяці тому
Appreciate it! Thanks!
@colinstu
@colinstu 3 місяці тому
Amazing progress!!!
@weirdboyjim
@weirdboyjim 3 місяці тому
Thank you!! Felt like a big step to me!
@colinstu
@colinstu 3 місяці тому
@@weirdboyjim it is! And amazed to hear it will be “done” this year (and I fear because I do like watching the progress and improvements etc). But any projects after I’m in for too at this point.
@leenob
@leenob 3 місяці тому
You are certainly a genius - coming up with this beautiful machine. Honestly, I'm more than impressed. Found your videos by pure chance, as in, I didn't purposefully go hunting for them. Definitely a long-time subscriber from NOW. Looking forward to the future of where you take this project.
@weirdboyjim
@weirdboyjim 3 місяці тому
Welcome! I hope the future videos don't disappoint!
@JohnScherer
@JohnScherer 3 місяці тому
Incredible work as usual James. I know that feeling of plugging in a freshly minted PCB and having it work straight away. great work.
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks John! It was a big relief when it all came on!
@Mearrin69
@Mearrin69 3 місяці тому
Amazing work.
@weirdboyjim
@weirdboyjim 3 місяці тому
Thank you! Cheers!
@andrewwatts1997
@andrewwatts1997 3 місяці тому
It works the first time! Amazing work. It looks clean and tidies things up allot. If you keep this up you will have a square meter sized computer ;)
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks! I'm working towards the VGA being on a backplane the same size so the whole thing should look nicely balanced.
@OscarSommerbo
@OscarSommerbo 3 місяці тому
Many would think this sort of work would be boring, but the end result is just stunning.
@weirdboyjim
@weirdboyjim 3 місяці тому
Many would indeed think so, I'm making videos for the people who don't!
@RealEngineer
@RealEngineer 3 місяці тому
As usual a great video!🎉
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks!
@auliasabril1899
@auliasabril1899 Місяць тому
great work thanks to all your hard work
@weirdboyjim
@weirdboyjim Місяць тому
Glad you enjoyed it!
@MarcGrondin
@MarcGrondin 3 місяці тому
Woohoo. So excited for this one. Commenting before I even watch it. I waited all day cause it dropped as I was sleeping and no time to watch before work
@weirdboyjim
@weirdboyjim 3 місяці тому
Hope you enjoyed it!
@andymouse
@andymouse 3 місяці тому
There's nothing better than ' DRC (0)' great work James....cheers.
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks andymouse!
@GoAwayStupidAI
@GoAwayStupidAI 3 місяці тому
Visually satisfying and technically impressive
@weirdboyjim
@weirdboyjim 3 місяці тому
Glad you enjoyed it.
@fastlandnet
@fastlandnet 9 днів тому
Hi James. Your work is amazing and you are incredible. Really congratulations! However, I would have left the entire project on the breadboard to be able to expand and modify it at any time; on PCB however it is not possible except reprinting the PCB. I ask you if your project is open source and if I can re-present it on my site mentioning your name. Thank you.
@twobob
@twobob 3 місяці тому
top work. So fun
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks Twobob!
@TheRealBobHickman
@TheRealBobHickman 3 місяці тому
You are braver than me pressing the order button on a board that big and expensive :)
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks Bob! I already made a mistake on my biggest pcb so I needed to develop a thick skin.
@kirknelson156
@kirknelson156 3 місяці тому
its really an awesome project, look forward to seeing you put it through its paces. what was that music from, I know I've heard it before and its driving me mad because I can't remember from where.
@weirdboyjim
@weirdboyjim 3 місяці тому
Thanks! The music should indeed be recognizable, but no explicit spoilers from me!
@sysrpn
@sysrpn 3 місяці тому
James, I hope you continue to make many videos about this amazing computer after you consider it "complete". Perhaps you might consider making a series of videos about your ideas related to software development for this computer.
@weirdboyjim
@weirdboyjim 3 місяці тому
Glad you are enjoying, there will definitely be some videos on programming it before I consider it truly finished. At the very start of this project I said I wanted to build a device I could develop some games for, and I'm not going to do that without talking about the process along the way.
@thecellburner
@thecellburner 2 місяці тому
wow, incredibly impressive!!! How hard would it be to implement a branch prediction on the pipeline? I know this is out of the scope of this computer but i always wondered how they managed to do that.
@weirdboyjim
@weirdboyjim 2 місяці тому
Branch prediction is interesting. You really have two parts top it, the prediction and the response. The prediction can be very simple, many processors have a very simple scheme that always predicts each type of branch the same way and you can get a lot of benefit from that. The response is really down to the pipeline architecture itself, advanced cpu's use register renaming to allow real work to advance but simpler architectures just stop anything having an effect until the branch is resolved. Fetching an instruction and then discard if the branch goes a different way is conceptually simple but can see some real benefits.
@gamedevunity3dliviopanizzi170
@gamedevunity3dliviopanizzi170 3 місяці тому
top great job
@weirdboyjim
@weirdboyjim 3 місяці тому
Thank you! Cheers!
@rimmersbryggeri
@rimmersbryggeri 13 днів тому
Would the routing be more straight forward if you stacked the backplanes?
@Otakutaru
@Otakutaru 3 місяці тому
Could make the final FINAL final backplane in a 16:9 format so that the zoom gets perfect
@weirdboyjim
@weirdboyjim 3 місяці тому
I just had a quick measure. The CPU+Peripherals is pretty close to 16:9 but it's a bit wider with the planned size of vga. Will be closer than is usually shown now though.
@AJB2K3
@AJB2K3 3 місяці тому
Instead of having to tape the smaller boards together and risk one falling out. Look into the CRICUT explore work mats. They are slightly tacky for holding materials and may be of use for holding small parts in place while you work.
@weirdboyjim
@weirdboyjim 3 місяці тому
I'll have a look.
@AJB2K3
@AJB2K3 3 місяці тому
A Question to you and your followers if I may. Why do we always put the majority of tracks on the top layer and not the bottom layer? Is it a fallback to the days of single sided pcbs?
@weirdboyjim
@weirdboyjim 3 місяці тому
Interesting, that's not something I'm doing deliberately. Pins aside, on most of my pcb's most of the connections are too and/or from an SMD pad on the top. So that's going to bias traces towards being on the top surface. That doesn't really apply to this backplane though, maybe an unconscious bias due to the above.
@MilenHristov
@MilenHristov 3 місяці тому
Those connections to the main board look like hinges. I feel the urge to fold it :)
@weirdboyjim
@weirdboyjim 3 місяці тому
I actually have the idc cables to make that connection, they bend!
@skilz8098
@skilz8098 3 місяці тому
Just curious; what application suite are you using? Easy Ada, Eagle, Altium, etc?
@weirdboyjim
@weirdboyjim 3 місяці тому
That's EasyEda. I want to explore some other tools but I'm trying to only use easily accessible stuff.
@LeeSmith-cf1vo
@LeeSmith-cf1vo 3 місяці тому
15:34 - I understand from other videos on youtube that parallel traces are bad. Here you've got a red and blue trace running parallel for a short distance. I don't know how big of a problem that could be, especially with clockspeeds measured in low MHz, but something to consider? I think there is an alternative route available that only crosses traces, without paralleling them, albeit it would have to go slightly out of the way - which actually introduces a new problem, one of timing caused by traces of different length. I seriously doubt that would be an issue though. 18:37 - I think you can reduce the pad size on the pcb, although that might get lost if you do an update.
@weirdboyjim
@weirdboyjim 3 місяці тому
I'm going to caveat everything I say with "I'm not an expert, you may not want to listen to me". The "prohibition" against aligned traces on the top and bottom is often blown out of proportion, at least for anything I have experience of. Trace to trace interference is very real, but between 2 layers it can't be more than parallel traces on the same layer at the same distance (Inverse-square is a law, not a rule!). Especially not when you have a ground plane in between. The big reason I see on these amateur boards you want to avoid it is routing, if you have a length of aligned track on the top and bottom then that becomes a line on your pcb you can't cross with anything else, very easy to route yourself into a corner there. A short distance is ok, the longer the overlap the worse the problem is.
@LeeSmith-cf1vo
@LeeSmith-cf1vo 3 місяці тому
@@weirdboyjim Yes and I appreciate that it's not exactly a long distance, more than a normal crossing, but honestly not by a lot. I did wonder about the board thickness, is it thicker than the gap between traces? If yes then I seriously doubt it's a concern here. Also I hadn't realised you had added the extra layers after all (you mentioned that you might need to, but I notice you doing it) if they're in between then yeah I see no issue there. Also not an expert, only relaying what I've "learnt" elsewhere. I certainly wouldn't be in a rush to replace this board given the eye-watering price you had to pay for it!
@AJB2K3
@AJB2K3 3 місяці тому
You put the mounting holes on the screen print layer while you aligned the boards but forgot to move them back to the correct layer.
@weirdboyjim
@weirdboyjim 3 місяці тому
The first issue I hit? I thought I had just done a partial selection of them rather than the base item? I really needed to have added these to the schematic so the update added them to the pcb (as I did later).
@kyleeames8229
@kyleeames8229 3 місяці тому
With all these boards you make, I kinda wonder whether you’ve considered getting your own PCB fabrication equipment. Wouldn’t that be cheaper than ordering everything?
@weirdboyjim
@weirdboyjim 3 місяці тому
It would be interesting to try my hand at it some time, but it would be yet another thing I'd be worrying about the quality of if something didn't work.
@sanderspeetjens
@sanderspeetjens 3 місяці тому
I've also had the pleasure of soldering things on a gnd plane, not fun because of thermal mass...
@weirdboyjim
@weirdboyjim 3 місяці тому
Interesting I need to pay attention to see if the pins that are more troublesome are ground pins.
@sanderspeetjens
@sanderspeetjens 3 місяці тому
@@weirdboyjim It can be everything that is connected to a plane or has a lot of copper connected to it
@wChris_
@wChris_ 3 місяці тому
I dont like the slur between the notes, is there any way to incorporate the tiniest of delay between notes? It might even make the audio that much better.
@weirdboyjim
@weirdboyjim 3 місяці тому
I still have a lot of work to do on my sound conversion code. If
@robertlinder6414
@robertlinder6414 3 місяці тому
How much power does it draw?
@weirdboyjim
@weirdboyjim 3 місяці тому
Just for you I plugged the circuit in for a fresh check. The cpu+peripherals (without the vga which is not on my desk right now) is drawing about 0.56amps
@vsdsas
@vsdsas 3 місяці тому
any course recomendation to be like u please
@weirdboyjim
@weirdboyjim 3 місяці тому
I'm not trained in this stuff so I don't really know what's available. I trained as a programmer but developed an interest in this stuff and learned on the go. Prehaps someone else can make a recommendation?
@vsdsas
@vsdsas 3 місяці тому
@@weirdboyjim tnx for the reply
@peter.stimpel
@peter.stimpel 3 місяці тому
Nice, congrats. And no, don't change the speaker, you would lose that 80s feeling, I guess.
@weirdboyjim
@weirdboyjim 3 місяці тому
That little thing is awful! I can hopefully get something that feels retro that doesn’t rattle!
@StevenIngram
@StevenIngram 3 місяці тому
A little cone style PC speaker maybe? (Just say no to piezos. LOL buzz bzzbzz buzz buzz. LOL)
Output PCB - VGA from Scratch - Part 18
1:22:14
James Sharman
Переглядів 9 тис.
ZX Spectrum, Expansion Port Research
40:45
James Sharman
Переглядів 9 тис.
ЧТО ДЕЛАТЬ, ЕСЛИ НЕ ХВАТАЕТ ДЕНЕГ НА ВОССТАНОВЛЕНИЕ ТАЧКИ?
47:52
Dell Alienware R4 17 common CPU failure - Is it fixable ?
25:10
NorthridgeFix
Переглядів 135 тис.
The Madness of Z80 I/O
22:52
Noel's Retro Lab
Переглядів 65 тис.
Introduction to CPU Pipelining
10:29
Merlin Wellington
Переглядів 32 тис.
My DIY Eurorack Modular Synth
30:11
Lilly Schwartz
Переглядів 75 тис.
How input buffering works
20:25
Ben Eater
Переглядів 152 тис.
A $9 Introduction to the RISC-V Future of Computing
26:34
apalrd's adventures
Переглядів 327 тис.
Hardware SPI - IO from Scratch - Part 6
26:14
James Sharman
Переглядів 6 тис.
Photolithography on Silicon with PCB Chemicals
25:31
ProjectsInFlight
Переглядів 35 тис.
Backplane Troubleshooting - Making an 8 Bit pipelined CPU - Part 103
27:34
ZX Spectrum, Rom Cartridge Research
24:12
James Sharman
Переглядів 10 тис.
Broken Flex Repair #technology #mobilerepair
0:50
ideal institute aligarh
Переглядів 1,5 млн
НЕ ПОКУПАЙТЕ НОВЫЙ СМАРТФОН, ПОКА НЕ ВЫШЕЛ ЭТОТ [2024]
13:25
Thebox - о технике и гаджетах
Переглядів 80 тис.
wyłącznik
0:50
Panele Fotowoltaiczne
Переглядів 926 тис.