How the Clock Tells the CPU to "Move Forward"

Поделиться
HTML-код
  • Опубликовано: 20 ноя 2024

Комментарии • 219

  • @CoreDumpped
    @CoreDumpped  21 день назад +8

    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.

    • @crystal4372
      @crystal4372 21 день назад

      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?

    • @AcuteChronic
      @AcuteChronic 17 дней назад

      Hate the embedded ads.

  • @c0g3nt29
    @c0g3nt29 21 день назад +250

    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.

    • @10hi01
      @10hi01 21 день назад +14

      that pfp is crazy

    • @johnpaulpascua3569
      @johnpaulpascua3569 19 дней назад +7

      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. 😂

    • @princeakhil208
      @princeakhil208 18 дней назад +1

      I like ur profile intel is indeed dead inside

    • @chakibchemso
      @chakibchemso 17 дней назад

      ​@@johnpaulpascua3569 Or might get you killed for sorcery

    • @refindoazhar1507
      @refindoazhar1507 15 дней назад

      ​@@johnpaulpascua3569too far, even just 100 years ago most people would likely worship you.

  • @TheGreymatterUniverse
    @TheGreymatterUniverse 7 дней назад +2

    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. ❤

  • @bodycowlin
    @bodycowlin 21 день назад +78

    2 videos in 1 month!? Today's not Halloween it's Christmas!! 🎄

    • @monkyyy0
      @monkyyy0 21 день назад +2

      -maria carry

    •  21 день назад +1

      Well, the octal to decimal joke was pretty smooth... Nice one man!

  • @juniuwu
    @juniuwu 21 день назад +134

    That emergent behaviour of chained flip-flops forming a binary counter is amazing. It almost feels like it just came out of nowhere.

    • @CoreDumpped
      @CoreDumpped  21 день назад +35

      Fun fact: I was also stunned when I learned about it.

    • @amj864
      @amj864 21 день назад

      @@CoreDumpped Is RDTSC implemented this way?

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt 20 дней назад +5

      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.

    • @adambickford8720
      @adambickford8720 20 дней назад +8

      @@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.

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt 20 дней назад

      @ 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.

  • @pedrovelazquez138
    @pedrovelazquez138 20 дней назад +16

    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.

    • @koharaisevo3666
      @koharaisevo3666 4 дня назад +1

      8:40 This is a T flip-flop with the T input permanently set to 1.

  • @premsagar4438
    @premsagar4438 21 день назад +46

    Yes, exactly... Exactly. This is what I was talking about bro. Cover everything! Make all those difficult-looking concepts easy!

  • @-yttrium-1187
    @-yttrium-1187 21 день назад +41

    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.

    • @CoreDumpped
      @CoreDumpped  21 день назад +46

      Yes, you are right

    • @Akronymus_
      @Akronymus_ 21 день назад +11

      simple pipelining that stalls on data dependencies would probably be a better intermediary step IMO

    • @noahwilhelm3205
      @noahwilhelm3205 21 день назад +2

      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.

    • @Akronymus_
      @Akronymus_ 21 день назад

      @@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.

    • @Akronymus_
      @Akronymus_ 21 день назад +2

      @@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.

  • @khachikhatsagortsyan7027
    @khachikhatsagortsyan7027 21 день назад +25

    I'm simple human - I Immediately click the like button when I see Core Dumped uploaded a new video about CPUs

  • @tratmir
    @tratmir 21 день назад +8

    Wow, this made so much sense! It also blew my mind how the binary flip-flops formed a counter.

    • @skilz8098
      @skilz8098 19 дней назад +1

      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.

  • @MathCuriousity
    @MathCuriousity 4 дня назад

    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!!!!!!

  • @markhaus
    @markhaus 21 день назад +3

    Can’t wait for your process scheduler video. That’s one area I’ve always stumbled with.

  • @FT91-z5j
    @FT91-z5j 21 день назад +8

    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.

    • @CoreDumpped
      @CoreDumpped  21 день назад +9

      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".

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt 20 дней назад +1

      @@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.

    • @adambickford8720
      @adambickford8720 20 дней назад

      These videos are for the freshman level learner. Let them enjoy their ideal diodes for a couple years.

  • @plrc4593
    @plrc4593 21 день назад +3

    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.

  • @givememoJo
    @givememoJo 21 день назад +1

    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!

  • @omgiheartpie
    @omgiheartpie 21 день назад +1

    You are a treasure man. Can’t wait to just binge watch all your videos again over the winter break

  • @Albi91vl
    @Albi91vl 3 дня назад

    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.

  • @MarianoBustos-i1f
    @MarianoBustos-i1f 18 дней назад

    Dude, the insane amounts of work you put in the script, animation... everything...

  • @skilz8098
    @skilz8098 19 дней назад

    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!

  • @metaname11
    @metaname11 20 дней назад

    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!

  • @inriinriinriinriinri
    @inriinriinriinriinri 20 дней назад

    You explained 3 months of my Comp Systems Architectures classes in 15 minutes. That's just incredible.

  • @wesleymesquita8380
    @wesleymesquita8380 19 дней назад

    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!

  • @ombrezz7030
    @ombrezz7030 20 дней назад

    These videos are awesome, you don't find a lot of content on this website covering digital electronics at this quality.

  • @IcyCat-t9f
    @IcyCat-t9f 6 дней назад

    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

  • @Cluni-80s
    @Cluni-80s 21 день назад

    Make a full course on this, assymbly, programming...etc and I will be the first to sign up.
    Amazing educational quality.

  • @Polishpython
    @Polishpython 21 день назад +32

    instant click

  • @deezydoezeet
    @deezydoezeet 20 дней назад

    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!

  • @desyfer1709
    @desyfer1709 21 день назад +1

    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!

  • @premsagar4438
    @premsagar4438 21 день назад +1

    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!

  • @oliverandersen7417
    @oliverandersen7417 15 дней назад

    I love your videos! You are very good at explaining and teaching these subjects

  • @vastabyss6496
    @vastabyss6496 21 день назад

    Okay I gotta admit, the title is fantastic, and so is the thumbail and content as always! Great video

    • @vastabyss6496
      @vastabyss6496 15 дней назад

      No it was changed 😭
      The original title was something along the lines of "The Clock - The Heartbeat of the CPU"

  • @jonathanprivitera9394
    @jonathanprivitera9394 21 день назад

    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!

  • @Revoker1221
    @Revoker1221 21 день назад

    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.

  • @quanliew28
    @quanliew28 4 дня назад

    This episode remind me of Ben Eater channel all over again. Where i managed to finish building the SAP-1 CPU.

  • @dxtechcreations
    @dxtechcreations 21 день назад

    thanks. I've got a lot of things learned again from your channel.

  • @roncho
    @roncho 12 дней назад

    Another teaching masterpiece. Thanks man!!

  • @GrahamBillington
    @GrahamBillington 8 дней назад

    Legendary channel, learning this in cs junior yr

  • @harikirankante883
    @harikirankante883 18 дней назад

    This is exactly what was missing and been searching for this for many days🤓

  • @leshommesdupilly
    @leshommesdupilly 21 день назад +4

    Square wave: Wait… It’s all sines ???
    Fourier: Always has been… **gunshot**

    • @skilz8098
      @skilz8098 19 дней назад

      It's only all sines when I cosine for it. Sine here on the dotted lines.

  • @sg9257
    @sg9257 20 дней назад

    Thanks for helping me understang things that i didnt know

  • @mubafaw
    @mubafaw 20 дней назад

    Clear crisp explanation. Many Thanks 😊👍

  • @anthonybustamante5736
    @anthonybustamante5736 21 день назад

    How do you animate your videos!!! I have been absolutely binging your great work. Keep it up, it's awesome!

  • @ralfm.metzing8407
    @ralfm.metzing8407 21 день назад

    Thanks a lot for these perfect illustrations!

  • @stinchjack
    @stinchjack 20 дней назад

    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.

  • @trimpta
    @trimpta 21 день назад +2

    Clicked on this video in a heartbeat as soon as i saw it

  • @CanThinkCanDo
    @CanThinkCanDo 20 дней назад

    Man this is the answer I never got in engineering ❤❤❤❤
    Amazing explanation mate

  • @omaralikhan4633
    @omaralikhan4633 21 день назад

    amazing as always, waiting for threads video

  • @pepinzachary
    @pepinzachary 21 день назад +1

    i just can't believe how fucking beautiful computer science is oh my god. it's just magic

  • @googigoog
    @googigoog 20 дней назад

    Brilliant content & animation!

  • @momensy2136
    @momensy2136 21 день назад

    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 ❤

  • @anilshemade6048
    @anilshemade6048 20 дней назад

    I wish these videos were made in my college days...❤❤❤

  • @ЄгорБорса
    @ЄгорБорса 11 дней назад

    Would be great if you would make a video about hardware architecture of communication protocols!

  • @patrickhochleitner7754
    @patrickhochleitner7754 9 дней назад

    This is so cool. Amazing content, thank you very much.

  • @KhaledKimboo4
    @KhaledKimboo4 20 дней назад

    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

  • @jenkinssmith9125
    @jenkinssmith9125 12 дней назад

    I learned a lot from this video, thank you.

  • @tthanhvu8891
    @tthanhvu8891 21 день назад

    The first thing I ever do when watching Core Dumped’s new video is like the video.

  • @MD_Areeb
    @MD_Areeb 20 дней назад

    I always watch his video 2 times to understand the concept more clearly

  • @alejandroalzatesanchez
    @alejandroalzatesanchez 19 дней назад

    This video feels like the fever dreams that I get trying to wrap around my mind the concepts.
    Pretty cool

  • @alejandroalzatesanchez
    @alejandroalzatesanchez 19 дней назад

    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.

    • @Roxor128
      @Roxor128 12 дней назад

      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.

  • @EyadAhmed-s7z
    @EyadAhmed-s7z 21 день назад

    I have been looking for this!

  • @oronshifman
    @oronshifman 20 дней назад

    Man!!! Love you're videos!

  • @g.paudra8942
    @g.paudra8942 10 дней назад

    For the next video, can you explain how CPU can control it's own clock cycle or speed? dynamically or manual overclock and underclock

  • @Griffin12536
    @Griffin12536 20 дней назад

    Brilliant needs a dark mode version of their ad.

  • @paca3107
    @paca3107 21 день назад

    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?

  • @stachowi
    @stachowi 21 день назад

    This channel is next level

  • @simplifyitofficial
    @simplifyitofficial 20 дней назад

    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

  • @ВладФоменко-р4е
    @ВладФоменко-р4е 20 дней назад

    Best. Channel. Period.

  • @AK-vx4dy
    @AK-vx4dy 21 день назад

    You must be stopped. Your explanations are so good that soon we have epidemic of cpu designers / assembly programmers 😅

  • @alexkfridges
    @alexkfridges 21 день назад

    Beautiful video. Really really excellent

  • @farhanrejwan
    @farhanrejwan 21 день назад

    if only our digital logic design course professor taught us flip-flops like this 8 years ago from now...

  • @ShinSpiegel
    @ShinSpiegel 21 день назад

    Amazing video, thanks for sharing.

  • @JoydeepNath-b4j
    @JoydeepNath-b4j 18 дней назад

    Can you please create a playlist on computer core fundamentals. Maintaining the sequence right from binary

  • @FranzSarmiento17
    @FranzSarmiento17 21 день назад

    Another Cored Dumped Video let's gooo

  • @tarlkudrick1174
    @tarlkudrick1174 20 дней назад

    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.)

    • @CoreDumpped
      @CoreDumpped  20 дней назад +1

      My video on Kernel Mode vs User Mode might answer your questions.

    • @adambickford8720
      @adambickford8720 20 дней назад

      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).

  • @aryankathawale9269
    @aryankathawale9269 12 дней назад

    DAMN THIS IS SOO GOOD

  • @diamonddemon7612
    @diamonddemon7612 21 день назад

    tysm! time to finish my CPU!

  • @akashr2283
    @akashr2283 21 день назад

    great job sir

  • @taffareldelimaoliveira
    @taffareldelimaoliveira 21 день назад

    lets go back to circuit simulator and try to build one myself. Thanks so munc for this. Clear as water

  • @mzaidibrahime
    @mzaidibrahime 21 день назад

    Wow man. Top top presentation

  • @CybernetonPL
    @CybernetonPL 21 день назад +1

    12:15 should I point out it counts up in binary and resets to zero after 1111?

  • @marouaniAymen
    @marouaniAymen 13 дней назад

    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

  • @mahmoudbasha4838
    @mahmoudbasha4838 21 день назад

    I hope you make a video about boot process in detail under the hood plz

  • @davidcahan
    @davidcahan 6 дней назад +1

    Why does this feel like an AI is narrating?

  • @arindamdas7341
    @arindamdas7341 21 день назад

    Great content...thanks 👍

  • @Mrh8913
    @Mrh8913 16 дней назад

    4:58 Minecraft redstoners need to take these lessons to become a true redstoner

  • @norbytwister
    @norbytwister 18 дней назад

    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

  • @hard.nurtai4209
    @hard.nurtai4209 21 день назад

    ohhh yes. exactly what i was looking for

  • @joelasa5420
    @joelasa5420 21 день назад

    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?

  • @shis10
    @shis10 20 дней назад

    Amazing video

  • @farhanfaraan1
    @farhanfaraan1 21 день назад

    So brilliant sir

  • @kihwanlee5617
    @kihwanlee5617 16 дней назад

    Beautiful!

  • @Beginning497
    @Beginning497 21 день назад

    🫡🫡mad respect from your student bro...

  • @adambickford8720
    @adambickford8720 20 дней назад

    Videos like this are why i tolerate the internet

  • @dzuchun
    @dzuchun 20 дней назад +1

    electrodynamics isn't real, it can't hurt you
    also computers:

  • @leonarrator265
    @leonarrator265 21 день назад

    ty mr. George

  • @MACMAN2003
    @MACMAN2003 20 дней назад

    the scariest part of halloween: computer science!!!!!

  • @CashFlowTV554
    @CashFlowTV554 16 дней назад +1

    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?

    • @gohangoku3447
      @gohangoku3447 12 дней назад

      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.

  • @whermanntx
    @whermanntx 21 день назад

    When watching one video makes you go to the channel and find more. 🎉

  • @pfh7001
    @pfh7001 3 дня назад

    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?

  • @dj10schannel
    @dj10schannel 21 день назад

    Great vid 👍