To try everything Brilliant has to offer-free-for a full 30 days, visit brilliant.org/CoreDumped. You’ll also get 20% off an annual premium subscription.
Nice video, i have some questions: Does your work revolve around hardware or are you just learning this yourself and making youtube videos after self-study? How did you learn to animate these videos and what software do you use?
It’s videos like these that make me appreciate the sheer wizardry behind the screen. Sitting here, comfortably abstracted from layers of intense engineering, I can't help but marvel at how decades of solving complex, tedious problems lets me blissfully ignore them-typing away on a machine that just works, as if by magic.
If you go 1000 years back to the past with your smartphone, people will literally worship you. That's how advanced our tech today that we take for granted. 😂
PLEASE KEEP MAKING THESE VIDEOS.💙 DON'T STOP. i am a Computer Science and Engineering undergrad student in my final year. During the 2nd year, i immensely had a very hard time trying to understand the computer architecture, digital logic design, along with some electrical courses, how their functionality works. The hardware part of the computer science is rarely seen on RUclips that visualizes this beautifully. i am also a tutor to some of school and college level students, i teach them programming and how software and hardware is co-working together. I take inspiration from your teaching & explain method, and I also recommend them your very beautiful videos, my brother. Take tons of love. ❤
It does not come out of nowhere. A circuit without memory acts like a function. A flip-flop has this feedback loop to know about the past. The combined state is two dimensional. I imagine hands running around the clock. Now if the clock frequency (edge steepness) and the memory decay live on vast different time scales, this clock gets squeezed into a line and the circuit stops counting. In a way this is only a slight expansion of a phase shifter.
@@ArneChristianRosenfeldt I think his point was we didn't decide to build a binary counter, it's just kind of the unexpected result of this aggregation of flip-flops. It obviously wasn't a coincidence for the designer and much iteration arrived at this elegant solution.
@ ah, so yeah a frequency divider is a counter. Just accept that you cannot read out the counting value due to skew. It works great to trigger the drawing of sprites in the Vic-Ii in the C64.
When I was 16, I remember using T-type flip flops to build a counter. I used a push button to increment. It reached 25 and then it restarted again, all of that with combinational circuits. I was very excited about this. I still remember working on a small table next to my bed. I was happy for the results, it worked.
Brilliant video. Though in real CPU's you wouldn't want to fetch, decode, execute and increment one cycle at a time since your fetch and decode would be idle 50% of your clock cycle. So I guess in a few video's from now we'll be talking about speculative execution and cache invalidation.
Yeah it's an interesting mix of a pipelined CPU but also not executing the stages in parallel, most likely do to simplicity 🤫. Without out of order execution your only pipeline data hazard is a raw, which can easily be forwarded or stalled, so it wouldn't be too complex.
@@noahwilhelm3205 conditional jumps, indirect addressing and such would definitely need stalling as well. Easiest to just stall on certain kinds of instructions, that COULD have data dependencies. Altough, probably still quite a bit out for @CoreDumpped to bother with any time soon. First the individual stages have to be covered.
@@noahwilhelm3205 Dang my reply got removed. There are still hazards of data races with indirect memory accesses. But main memory in general is quite challenging with the fairly large delays. Altough, I guess you could run the RAM at cpu latency/throughput/frequency for explaining and introduce stuff like caching and such later.
Yeah, it almost seems counter intuitive but chaining them together like that to create a binary counter is also very close to the idea of having a binary voltage divider.
I am blown away by these videos as a noob to computing!!! I am so so excited for every new video you make as I learn more and more through your channel!!! What a gem for self learners!!!!!!
I love your videos there are amazing to watch. Little note at 13:11 the Push button should be switch betwen a logic One and a logic zero because your input pin is now is floating. You coud mention that any pin not connected to a proper input is a zero. I understand that it's much easier to understand the function of button for normal people but i believe the peopel that interested in that kind of stuff it is crucial to understand that a Output signal of any logic is not comparable to a button switch because you need a way to ensure the level will go to high or zero after you released the button. Maybe you could explain this in a one of your next videos so you can reference to it in your comming videos. Thanks for your amazing videos.
You're right. Also, in real life, push-buttons are very unreliable in this kind of situations because there's a lot of bouncing in the metal-contacts, so when you push them they actually produce a lot of "edges".
@@CoreDumppedthe first radio transmitters used these buttons. I think that EMI should only happen on making a contact. There is a short lightning. Lightning strikes in the sky create long wave radio.
O, another video soon after I subscribed you :D I must say you're one of the most valuable RUclipsr I have seen :D You helped me to understand better how computers work. You helped me to understand the difference between heap and stack. I look forward to learning a lot of from you in the future.
these are the kind of videos i pause when i am doing something besides like work or playing games because it would be to big of a loss missing even the slightest bit of information. thank you so much for your videos!
I am an engineer and I don't even know why I am listening to things I know very well and somehow still 100% focused to your style of explanation. Reminds me of some videos of Ben Eater. Explaining somehow hard concepts in such e simple way. People should all learn computer science basics this way there is no excuse anymore. Edit after watching after 0:55 of this video. I did not know you mentioned Ben Eater in this video, I just stared commenting after watching just 20 seconds or so of this video after another video of you on IPC.
That was probably one of the simplest ways to explain how binary or ring counters work based on a clock input signal and how they rely on both the gated latch - JK or T flip flops which also heavily rely on edge detectors. I've already known this from my own research and independent projects where most of my learned knowledge came from others such as Ben Eater, NAND to Tetris, and a few others. If only this kind of content was around 10-15 years ago when I started down this journey. Great stuff, great vids, keep up the great work!
Fantastic video! Your teaching style makes complex concepts so much easier to grasp. Keep up the great work! It’s clear you put a lot of effort into making this content informative and enjoyable. Keep up the amazing work-I can’t wait to see what you share next!
This kind of work should be presented in the very first introductory classes of computer science / engineering programs. This would tell the students: this is the reason you must take your basic eletronics class serious. Some schools handles courses in completely orthogonal paths and no real real and practical connection is made till graduate courses. Thank you for the high quality material!
Thank you friend for such good videos, it's the only channel that explains low-level fundamental concepts so well, please don't stop and make videos about how memory, processor and registers work, I would also wish to see a video about main assembly commands
Love your videos. Instant click. And they always answer some questions I always had....stuff like how exactly the OS interacts with hardware, or the role of BIOS, and some others including the stuff already in your videos!
Absolutely fantastic content. For the more advanced viewers, I also recommend watching "minimal 64x4 inside out" by Slu4. Where this video demonstrates the basic theory of how one goes about the instruction pipeline sequentially, the x64x4 video demonstrates how microcode (particularly control signals) can have mutiple stages of the pipeline executing simultaneously. It would also be nice to see microcode explained on this channel too, but it might take a while to get there haha.
0:46 555 clocks are limited to abut 1KHz. The tolerances abut resistors on caps are also frustrating for exact timings. Also on a 5V circuit the 'high' part of the clock is limited to 3V.
You may be wondering why not just increase the clock speed to get unlimited cpu speed since your cpu is relatively as fast as it's clock, but going faster causes the signal to radiates (becomes radio waves) and never reach its destination , again (at least not as strong as needed to be ) you say so just reduce the distance a signal needs to travel inside cpu so we can use higher frequencies, and that's why we need smaller and smaller transistors
ideal timming. I just wondering how clock works because recently I am interested in building Chip8 interpreter. Maybe Vm/interpretters its a good topic for the next video?
I Used To Like Your Videos Soooooo Much. I still Like Your Videos. KEEP IT UP. I was going to make that in real life. After buying lots of stuff, I realized that it would be impossible to make it using jumper wires and breadboards. But I still watch your videos to understand the concepts
Does pressing a key on a keyboard do something similar to the manual clock advance button? That is, do keyboards work because pressing a key either interrupts an electric flow, or allows one to happen? I'd love a video from you (assuming you don't have one and I can't find it) about the lowest level interface that lets software control hardware, and hardware control software. I'm not sure if I'm asking for a video about how drivers work (at the lowest possible level), but maybe I am. I think I don't know enough about digital engineering to ask my question using the right terms, so I hope you can figure out what I'm asking for. Thanks! (New subscriber.)
I really like your videos, clear and excellent content, is it possible to make a video explaining Pipelining Architecture in micro processor with Hazard resolution ? Thanks
me encanta tu canal y he aprendido muchicimo, pero hay algo que no entiendo, quien le da la señal al reloj para activarse y hacer la secuencia completa?, desde ya muchisimas gracias, sos un genio
Very good video. Please how does this enable the computer to execute multiples instructions at the same time in the pipeline? Since the stages of the pipeline are not activated simultanously by the clock? Another question. How do the cpu executes millions instructions per cycle of clock? Are there millions of pipeline stages?
So when a CPU is advertised as 1GHz, does that mean it executes all 4 steps 1 billion times per second, or 250 million times per second? In other words is it the speed of the clock, or how many times per second it can actually Execute the decoded instruction?
1GHz is the clock rate, so the CPU clock or the related circuit clocks at one billion per second. This means that one clock cycle lasts 1 nanosecond. During this one nanosecond, computing operations are carried out. Modern CPUs manage not one, but several instructions during one clock cycle. Keyword: Instructions per cycle, IPC for short. An IPC of 5 would mean, for example, that a CPU with a 1 GHz clock rate can execute 5 times 1 billion instructions in one second -> 5 billion instructions per second. Of course, this figure also depends on the type of instruction. Not every instruction is equally complex.
I have a question, can anyone answer it? Among the four stages of program running, if the instruction in a certain stage has not finished running, will the clock wait for the instruction to run or jump directly to the next stage?
To try everything Brilliant has to offer-free-for a full 30 days, visit brilliant.org/CoreDumped. You’ll also get 20% off an annual premium subscription.
Nice video, i have some questions:
Does your work revolve around hardware or are you just learning this yourself and making youtube videos after self-study?
How did you learn to animate these videos and what software do you use?
Hate the embedded ads.
It’s videos like these that make me appreciate the sheer wizardry behind the screen. Sitting here, comfortably abstracted from layers of intense engineering, I can't help but marvel at how decades of solving complex, tedious problems lets me blissfully ignore them-typing away on a machine that just works, as if by magic.
that pfp is crazy
If you go 1000 years back to the past with your smartphone, people will literally worship you. That's how advanced our tech today that we take for granted. 😂
I like ur profile intel is indeed dead inside
@@johnpaulpascua3569 Or might get you killed for sorcery
@@johnpaulpascua3569too far, even just 100 years ago most people would likely worship you.
PLEASE KEEP MAKING THESE VIDEOS.💙
DON'T STOP.
i am a Computer Science and Engineering undergrad student in my final year. During the 2nd year, i immensely had a very hard time trying to understand the computer architecture, digital logic design, along with some electrical courses, how their functionality works. The hardware part of the computer science is rarely seen on RUclips that visualizes this beautifully.
i am also a tutor to some of school and college level students, i teach them programming and how software and hardware is co-working together. I take inspiration from your teaching & explain method, and I also recommend them your very beautiful videos, my brother.
Take tons of love. ❤
2 videos in 1 month!? Today's not Halloween it's Christmas!! 🎄
-maria carry
Well, the octal to decimal joke was pretty smooth... Nice one man!
That emergent behaviour of chained flip-flops forming a binary counter is amazing. It almost feels like it just came out of nowhere.
Fun fact: I was also stunned when I learned about it.
@@CoreDumpped Is RDTSC implemented this way?
It does not come out of nowhere. A circuit without memory acts like a function. A flip-flop has this feedback loop to know about the past. The combined state is two dimensional. I imagine hands running around the clock. Now if the clock frequency (edge steepness) and the memory decay live on vast different time scales, this clock gets squeezed into a line and the circuit stops counting.
In a way this is only a slight expansion of a phase shifter.
@@ArneChristianRosenfeldt I think his point was we didn't decide to build a binary counter, it's just kind of the unexpected result of this aggregation of flip-flops.
It obviously wasn't a coincidence for the designer and much iteration arrived at this elegant solution.
@ ah, so yeah a frequency divider is a counter. Just accept that you cannot read out the counting value due to skew. It works great to trigger the drawing of sprites in the Vic-Ii in the C64.
When I was 16, I remember using T-type flip flops to build a counter. I used a push button to increment. It reached 25 and then it restarted again, all of that with combinational circuits.
I was very excited about this. I still remember working on a small table next to my bed. I was happy for the results, it worked.
8:40 This is a T flip-flop with the T input permanently set to 1.
Yes, exactly... Exactly. This is what I was talking about bro. Cover everything! Make all those difficult-looking concepts easy!
Brilliant video. Though in real CPU's you wouldn't want to fetch, decode, execute and increment one cycle at a time since your fetch and decode would be idle 50% of your clock cycle. So I guess in a few video's from now we'll be talking about speculative execution and cache invalidation.
Yes, you are right
simple pipelining that stalls on data dependencies would probably be a better intermediary step IMO
Yeah it's an interesting mix of a pipelined CPU but also not executing the stages in parallel, most likely do to simplicity 🤫. Without out of order execution your only pipeline data hazard is a raw, which can easily be forwarded or stalled, so it wouldn't be too complex.
@@noahwilhelm3205 conditional jumps, indirect addressing and such would definitely need stalling as well. Easiest to just stall on certain kinds of instructions, that COULD have data dependencies.
Altough, probably still quite a bit out for @CoreDumpped to bother with any time soon. First the individual stages have to be covered.
@@noahwilhelm3205 Dang my reply got removed.
There are still hazards of data races with indirect memory accesses. But main memory in general is quite challenging with the fairly large delays. Altough, I guess you could run the RAM at cpu latency/throughput/frequency for explaining and introduce stuff like caching and such later.
I'm simple human - I Immediately click the like button when I see Core Dumped uploaded a new video about CPUs
We are same bro
Same here too!
Wow, this made so much sense! It also blew my mind how the binary flip-flops formed a counter.
Yeah, it almost seems counter intuitive but chaining them together like that to create a binary counter is also very close to the idea of having a binary voltage divider.
I am blown away by these videos as a noob to computing!!! I am so so excited for every new video you make as I learn more and more through your channel!!! What a gem for self learners!!!!!!
Can’t wait for your process scheduler video. That’s one area I’ve always stumbled with.
I love your videos there are amazing to watch.
Little note at 13:11 the Push button should be switch betwen a logic One and a logic zero because your input pin is now is floating.
You coud mention that any pin not connected to a proper input is a zero.
I understand that it's much easier to understand the function of button for normal people but i believe the peopel that interested in that kind of stuff it is crucial to understand that a Output signal of any logic is not comparable to a button switch because you need a way to ensure the level will go to high or zero after you released the button.
Maybe you could explain this in a one of your next videos so you can reference to it in your comming videos.
Thanks for your amazing videos.
You're right. Also, in real life, push-buttons are very unreliable in this kind of situations because there's a lot of bouncing in the metal-contacts, so when you push them they actually produce a lot of "edges".
@@CoreDumppedthe first radio transmitters used these buttons. I think that EMI should only happen on making a contact. There is a short lightning. Lightning strikes in the sky create long wave radio.
These videos are for the freshman level learner. Let them enjoy their ideal diodes for a couple years.
O, another video soon after I subscribed you :D I must say you're one of the most valuable RUclipsr I have seen :D You helped me to understand better how computers work. You helped me to understand the difference between heap and stack. I look forward to learning a lot of from you in the future.
these are the kind of videos i pause when i am doing something besides like work or playing games because it would be to big of a loss missing even the slightest bit of information. thank you so much for your videos!
You are a treasure man. Can’t wait to just binge watch all your videos again over the winter break
I am an engineer and I don't even know why I am listening to things I know very well and somehow still 100% focused to your style of explanation. Reminds me of some videos of Ben Eater. Explaining somehow hard concepts in such e simple way. People should all learn computer science basics this way there is no excuse anymore.
Edit after watching after 0:55 of this video. I did not know you mentioned Ben Eater in this video, I just stared commenting after watching just 20 seconds or so of this video after another video of you on IPC.
Dude, the insane amounts of work you put in the script, animation... everything...
That was probably one of the simplest ways to explain how binary or ring counters work based on a clock input signal and how they rely on both the gated latch - JK or T flip flops which also heavily rely on edge detectors. I've already known this from my own research and independent projects where most of my learned knowledge came from others such as Ben Eater, NAND to Tetris, and a few others. If only this kind of content was around 10-15 years ago when I started down this journey. Great stuff, great vids, keep up the great work!
Fantastic video! Your teaching style makes complex concepts so much easier to grasp. Keep up the great work! It’s clear you put a lot of effort into making this content informative and enjoyable. Keep up the amazing work-I can’t wait to see what you share next!
You explained 3 months of my Comp Systems Architectures classes in 15 minutes. That's just incredible.
This kind of work should be presented in the very first introductory classes of computer science / engineering programs. This would tell the students: this is the reason you must take your basic eletronics class serious. Some schools handles courses in completely orthogonal paths and no real real and practical connection is made till graduate courses. Thank you for the high quality material!
These videos are awesome, you don't find a lot of content on this website covering digital electronics at this quality.
Thank you friend for such good videos, it's the only channel that explains low-level fundamental concepts so well, please don't stop and make videos about how memory, processor and registers work, I would also wish to see a video about main assembly commands
Make a full course on this, assymbly, programming...etc and I will be the first to sign up.
Amazing educational quality.
instant click
Same
faster than a cpu
You're the G.O.A.T Chief George! This has actually been a subject of my curiosity for a while now. This is amazing stuff!
Love your videos. Instant click. And they always answer some questions I always had....stuff like how exactly the OS interacts with hardware, or the role of BIOS, and some others including the stuff already in your videos!
You can do everything Such as data structure visualisation and other aspects of the computer science too. One step at a time bro. Keep going!
I love your videos! You are very good at explaining and teaching these subjects
Okay I gotta admit, the title is fantastic, and so is the thumbail and content as always! Great video
No it was changed 😭
The original title was something along the lines of "The Clock - The Heartbeat of the CPU"
I'm loving every upload so much, liked the video while the ads are still rolling and I know I won't remove the like. Keep up the good work!
Absolutely fantastic content. For the more advanced viewers, I also recommend watching "minimal 64x4 inside out" by Slu4.
Where this video demonstrates the basic theory of how one goes about the instruction pipeline sequentially, the x64x4 video demonstrates how microcode (particularly control signals) can have mutiple stages of the pipeline executing simultaneously.
It would also be nice to see microcode explained on this channel too, but it might take a while to get there haha.
This episode remind me of Ben Eater channel all over again. Where i managed to finish building the SAP-1 CPU.
thanks. I've got a lot of things learned again from your channel.
Another teaching masterpiece. Thanks man!!
Legendary channel, learning this in cs junior yr
This is exactly what was missing and been searching for this for many days🤓
Square wave: Wait… It’s all sines ???
Fourier: Always has been… **gunshot**
It's only all sines when I cosine for it. Sine here on the dotted lines.
Thanks for helping me understang things that i didnt know
Clear crisp explanation. Many Thanks 😊👍
How do you animate your videos!!! I have been absolutely binging your great work. Keep it up, it's awesome!
Thanks a lot for these perfect illustrations!
0:46 555 clocks are limited to abut 1KHz. The tolerances abut resistors on caps are also frustrating for exact timings. Also on a 5V circuit the 'high' part of the clock is limited to 3V.
Clicked on this video in a heartbeat as soon as i saw it
Man this is the answer I never got in engineering ❤❤❤❤
Amazing explanation mate
amazing as always, waiting for threads video
i just can't believe how fucking beautiful computer science is oh my god. it's just magic
Brilliant content & animation!
Bro, please keep up this good content. I can't play my role to keep this amazing work free, but one day, I will.
Thx alot ❤
I wish these videos were made in my college days...❤❤❤
Would be great if you would make a video about hardware architecture of communication protocols!
This is so cool. Amazing content, thank you very much.
You may be wondering why not just increase the clock speed to get unlimited cpu speed since your cpu is relatively as fast as it's clock, but going faster causes the signal to radiates (becomes radio waves) and never reach its destination , again (at least not as strong as needed to be ) you say so just reduce the distance a signal needs to travel inside cpu so we can use higher frequencies, and that's why we need smaller and smaller transistors
I learned a lot from this video, thank you.
The first thing I ever do when watching Core Dumped’s new video is like the video.
I always watch his video 2 times to understand the concept more clearly
This video feels like the fever dreams that I get trying to wrap around my mind the concepts.
Pretty cool
2:30 Abusing parasitic capacitance is such a ballsy move.
That's actually cool.
_"It's not a bug it's a feature"_ at it's finest.
Such abuse is why the 8086 had a minimum clock speed. Run it too slow, and the charge would dissipate before the next clock could refresh things.
I have been looking for this!
Man!!! Love you're videos!
For the next video, can you explain how CPU can control it's own clock cycle or speed? dynamically or manual overclock and underclock
Brilliant needs a dark mode version of their ad.
ideal timming. I just wondering how clock works because recently I am interested in building Chip8 interpreter. Maybe Vm/interpretters its a good topic for the next video?
This channel is next level
I Used To Like Your Videos Soooooo Much. I still Like Your Videos. KEEP IT UP. I was going to make that in real life. After buying lots of stuff, I realized that it would be impossible to make it using jumper wires and breadboards. But I still watch your videos to understand the concepts
Best. Channel. Period.
You must be stopped. Your explanations are so good that soon we have epidemic of cpu designers / assembly programmers 😅
Beautiful video. Really really excellent
if only our digital logic design course professor taught us flip-flops like this 8 years ago from now...
Amazing video, thanks for sharing.
Can you please create a playlist on computer core fundamentals. Maintaining the sequence right from binary
Another Cored Dumped Video let's gooo
Does pressing a key on a keyboard do something similar to the manual clock advance button? That is, do keyboards work because pressing a key either interrupts an electric flow, or allows one to happen? I'd love a video from you (assuming you don't have one and I can't find it) about the lowest level interface that lets software control hardware, and hardware control software. I'm not sure if I'm asking for a video about how drivers work (at the lowest possible level), but maybe I am. I think I don't know enough about digital engineering to ask my question using the right terms, so I hope you can figure out what I'm asking for. Thanks! (New subscriber.)
My video on Kernel Mode vs User Mode might answer your questions.
Yes, but its not 1:1 w/switches to keys. There's a reason most keyboards can only register a small number of simultaneous key presses (multiplexing).
DAMN THIS IS SOO GOOD
tysm! time to finish my CPU!
great job sir
lets go back to circuit simulator and try to build one myself. Thanks so munc for this. Clear as water
Wow man. Top top presentation
12:15 should I point out it counts up in binary and resets to zero after 1111?
I really like your videos, clear and excellent content, is it possible to make a video explaining Pipelining Architecture in micro processor with Hazard resolution ? Thanks
I hope you make a video about boot process in detail under the hood plz
Why does this feel like an AI is narrating?
Great content...thanks 👍
4:58 Minecraft redstoners need to take these lessons to become a true redstoner
me encanta tu canal y he aprendido muchicimo, pero hay algo que no entiendo, quien le da la señal al reloj para activarse y hacer la secuencia completa?, desde ya muchisimas gracias, sos un genio
ohhh yes. exactly what i was looking for
Very good video. Please how does this enable the computer to execute multiples instructions at the same time in the pipeline? Since the stages of the pipeline are not activated simultanously by the clock?
Another question. How do the cpu executes millions instructions per cycle of clock? Are there millions of pipeline stages?
Amazing video
So brilliant sir
Beautiful!
🫡🫡mad respect from your student bro...
Videos like this are why i tolerate the internet
electrodynamics isn't real, it can't hurt you
also computers:
ty mr. George
the scariest part of halloween: computer science!!!!!
So when a CPU is advertised as 1GHz, does that mean it executes all 4 steps 1 billion times per second, or 250 million times per second? In other words is it the speed of the clock, or how many times per second it can actually Execute the decoded instruction?
1GHz is the clock rate, so the CPU clock or the related circuit clocks at one billion per second. This means that one clock cycle lasts 1 nanosecond. During this one nanosecond, computing operations are carried out. Modern CPUs manage not one, but several instructions during one clock cycle. Keyword: Instructions per cycle, IPC for short. An IPC of 5 would mean, for example, that a CPU with a 1 GHz clock rate can execute 5 times 1 billion instructions in one second -> 5 billion instructions per second.
Of course, this figure also depends on the type of instruction. Not every instruction is equally complex.
When watching one video makes you go to the channel and find more. 🎉
I have a question, can anyone answer it? Among the four stages of program running, if the instruction in a certain stage has not finished running, will the clock wait for the instruction to run or jump directly to the next stage?
Great vid 👍