Capacitors are terrible at remembering data. But for this reason we continue doing it.

Sdílet
Vložit
  • čas přidán 11. 09. 2024
  • JLCPCB PCB Fab & Assembly from $2! Sign up to Get $60 Coupons: jlcpcb.com/?fr...
    In this episode we discuss about Dynamic RAM, and lear about all the fundamental-level challenges that makes it slow compared to Static RAM.

Komentáře • 229

  • @CaptTerrific
    @CaptTerrific Před měsícem +347

    It seems your true interest is in electrical/computer engineering, vs. CS - this is a VERY welcome addition to CZcams, where this kind of clear, concise, well-animated, and perfectly-paced content may already exist for CS, but is essentially nonexistent for CE. Please don't stop :)

    • @user-wq7wf6in1l
      @user-wq7wf6in1l Před měsícem +7

      I’d love to learn more about this ultra low level stuff in computers
      I just take it for granted but someone had to think about it

    • @GeoffryGifari
      @GeoffryGifari Před 28 dny +2

      Ben eater?

    • @seanvinsick5271
      @seanvinsick5271 Před 28 dny +2

      You might also like Ben Eater

  • @hakadmedia
    @hakadmedia Před měsícem +154

    Words cannot describe how much i love your videos, please never stop.

    • @Mrfebani
      @Mrfebani Před měsícem

      That's what a wordline is for, i suppose 😇😁

    • @hakadmedia
      @hakadmedia Před měsícem +2

      @@Mrfebani I'll try opcodes next time lol

    • @b4lrogd997
      @b4lrogd997 Před 9 dny

      Never stop me loving you

  • @gohangoku3447
    @gohangoku3447 Před měsícem +63

    I am an electrical engineer, have some knowledge of some programming and hardware description languages, have been working for many many years, and am familiar with many educational materials and lectures. I can tell you this much, your way of presenting and showing things are by far the most intuitive and understandable I have ever seen. I am also familiar with the Branch Education videos, which provide an incredible level of detail and make it tangible to the viewer. But your presentation goes so much deeper into the basics that not only newcomers but even experienced people can't help but say FINALLY. I take my hat off to you and your work. The greatest respect!
    PS: Maybe you could make a video about why NAND flash or memory in SSDs, for example, is slower than DRAM/SRAM. Especially in view of the fact that you have described very well how SRAM gets its "storing" property when reading, a further presentation could show that it is not comparable to NAND flash or non-volatile memory. In my opinion, this would be a good bridge to explain the last bottleneck (memory) in terms of CPU(cache)->RAM>non-volatile memory.

    • @skilz8098
      @skilz8098 Před měsícem +1

      I don't have any actual degrees, but I do have the knowledge and understanding of most of these fields from computer science to software and hardware engineering and I was thinking the same thing in regard to volatile vs no-volatile memory. I'd also be curious in a fine detail explanation of atomic operations.

  • @joaovitormatos8147
    @joaovitormatos8147 Před měsícem +67

    When I was writing a piece about Commodore (my background is in economics), I always thought it was weird for Jack Tramiel, the cheapest man in the world, to use SRAM in his first 2 successful home computers. Seeing how complicated it is, and the necessity of DRAM refresh, I understand why now

    • @CoreDumpped
      @CoreDumpped  Před měsícem +16

      Proud owner of a Commodore VIC-20 and Commodore 64, here 🙋🏽‍♂️

  • @oglothenerd
    @oglothenerd Před měsícem +164

    Wow, I had no idea that my RAM was so sketchy! Now I am frightened! 😆

    • @el_quba
      @el_quba Před měsícem +17

      Yeah, I was surprised as well! That would explain why servers use way lower clock speeds and ECC

    • @oglothenerd
      @oglothenerd Před měsícem +6

      @@el_quba Hmmmmmm... I didn't know that about servers!

    • @el_quba
      @el_quba Před měsícem +14

      @@oglothenerd For example, majority of DDR5 server sticks stay below 5000MT/s* while consumer DDR5 quite often has 6000MT/s* and some even go above 7000MT/s*.
      This of course comes with instability issues (even without current Intel blunders) so PC build guides recommend keeping clock speeds modest for professional users. And now I know where that instability comes from!
      * I use MT/s here, which is likely the correct unit, but RAM clock speed units provided in specs are a hot mess, so take the unit with a grain of salt. The main point still stands tho.

    • @oglothenerd
      @oglothenerd Před měsícem +4

      @@el_quba This is good info to know! Thank you!

    • @AndrewMellor-darkphoton
      @AndrewMellor-darkphoton Před měsícem +3

      Manufacturers lately have not trusted their capacitors lately. Based off The refresh cycles every 30 ms And they're adding error correction to the die in ddr5.

  • @cezarcatalin1406
    @cezarcatalin1406 Před měsícem +14

    There’s a type of memory in-between dynamic and static RAM called “lambda memory”.
    It uses a reverse biased diode as a constant current source and a pair of depletion mode mosfets.
    It’s called a lambda memory cause the current through it rises then falls with voltage. Because of parasitic resistance/leakage the current actually rises then falls then rises again. Due to this it can store 3 voltage states at constant current (LOW, MID, HIGH).
    It also has another enhancement mode mosfet for reading/writing.
    In total, 1 diode, 2 depletion mosfets and 1 enhancement mosfet gives 1 memory cell that has 3 states and uses 7 semiconducting junctions. Compared to a normal static memory cell that has 2 states and uses at least 12 junctions, it stores 1/3 more data in 1/2 as much space. Quite a bargain. Unfortunately, it is not in use due to very tight tolerances for manufacturing each memory cell since the nonlinear behaviour of the silicon is sensitive to even slight imperfections or doping variations.

  • @jannegrey593
    @jannegrey593 Před měsícem +23

    You basically teach people from grounds up. And you don't hide it behind paywall. Thank You.

  • @grayyen3887
    @grayyen3887 Před měsícem +18

    Your videos are always very clear, and I understand them so well.
    Thank you for doing this for us!

  • @ralfbaechle
    @ralfbaechle Před měsícem +9

    Very, very well done!
    I'm also a software engineer - albeit one hiding a logic analyzer and soldering iron behind his back. So a few comments and nitpicking.
    At the level of your video I think the finer details of newer memory types such as DDR memory imho can safely be ignored. That's basically additional details that should be left for a closer look.
    Memory refresh is complicated and some memory controllers have ample options to configure refresh. For many if not most hardware this is undocumented black magic. This kind of setup is usually performed by firmware in early initialization right after the CPU itself is ready. Depending on the CPU the cache SRAMs might contain junk such as data with invalid parity or ECC which needs to be cleared first because the CPU can perform a cached memory access without blowing itself up. Even an implicit memory access such as for the stack could do so, so at this stage subroutine calls are taboo. You'd think hardware'd make that easy but wiring a reset line to everything that needs to be initialized for use once after reset is something that gets harrdware guys rioting and point their fingers at the software guys "you do it" 🙂
    Next memory controllers. The cache may be working but DRAM still can't be accessed. In older systems that was as simple as writing a few constants into the memory controller. Some systems had to perform strange voodoo to figure out how much memory is actually physically present. Yet more modern systems have feature known as SPD allowing the system to detect the quantity, type and speed of memory. Software then programs the memory controller accordingly. Still no stack access so such code often is a unholy mess of deeply nested C macros. Optimal programming includes the use of features such as interleaving where possible and many more, so it's not trivial Once this has been completed memory may need to be cleared to avoid parity or ECC errors. And after that sanity arrives, everything else is much simpler now that "normal" programming is possible.
    Some very old systems are nice in that they don't need any software initialization at all for their memory controller. The hardware is (in hindsight) unsophisticated enough to just know what to do without being told to.
    Finally caches may not always consist of SRAM. One of the systems I worked with had three levels of cache. The CPU was switched to a different architecture and the new CPU architecture had a different bus, so conversion logic was needed. But that logic slowed down memory access. That was fixed / kludged (you choose the term) by adding a 64MB L4 DRAM cache. The only DRAM cache I know off but I haven't researched that exhaustively.

  • @xOWSLA
    @xOWSLA Před měsícem +7

    Another video that I will watch again and again over time. The recommended two videos are also explanatory.

  • @el_quba
    @el_quba Před měsícem +7

    Yet another absolutely amazing video! I am so happy you make those videos, because they answer a lot of questions that always bothered me but would take hours or days to research. And that visual aspect helps so much!.
    Do you plan on making a video about clocks and their role in components? They are seemingly crucial for computers, but don't really appear in your videos to reduce complexity. Yet I'm still curious how clocks keep everything in running and in sync, so such video would be amazing!

    • @CoreDumpped
      @CoreDumpped  Před měsícem +7

      Video about Clocks is definitely on my list!

    • @xOWSLA
      @xOWSLA Před měsícem +1

      Well suggested! @el_quba

  • @jean-louisvandewalle1466
    @jean-louisvandewalle1466 Před měsícem +3

    Nice job. You succeed to simplify while remaining complete. Continue in this direction... I would like to see more programmers having interest in hardware mechanics. It really helps understanding complexity and program improvements.

  • @Songfugel
    @Songfugel Před měsícem +10

    I've been in engineering for over 20 years... and I finally realized where the D and S in DRAM and SRAM come from 😅😂

    • @norbert.kiszka
      @norbert.kiszka Před měsícem +3

      In Polish, "SRAM" is also a word that means: Im making a sh*t.

    • @Songfugel
      @Songfugel Před měsícem

      @@norbert.kiszka 😂

    • @unwantedracing8450
      @unwantedracing8450 Před 28 dny

      I always thought it was for Downloadable RAM

  • @theamazinghippopotomonstro9942

    You definitely have the best visuals when showing how all of this stuff works

  • @ojonasar
    @ojonasar Před měsícem +1

    16:53 - in earlier computers, the ram chips handled a single bit of a memory location and you put multiple together to make up the width of a memory location.
    The address lines on the chips would only handle half of the address lines and would have pins that indicated whether the value on the represented at that moment a row or a column (RAS & CAS).

  • @JTCF
    @JTCF Před 20 dny +1

    I see how scalability of DRAM is so good! You can basically keep the part with mux-demux and sense amplifiers and extend in the other direction, for which only a bigger decoder is needed.
    I wonder, on the physical RAM memory chips, does this concept get used? The memory chips themselves are rectangular, so it is tempting to assume that the mux-demux and sense amplifier part is along the shorter side.

  • @leviengel
    @leviengel Před měsícem +1

    I love how clear concepts are presented in your content. Please make a series of OS/RTOS topics.

  • @franciscomagalhaes7457
    @franciscomagalhaes7457 Před měsícem +5

    Hey, you got yourself a sponsorship, well deserved!

  • @UCXEO5L8xnaMJhtUsuNXhlmQ
    @UCXEO5L8xnaMJhtUsuNXhlmQ Před měsícem

    This is a very well made video. As an electrical engineering student, I'm sending this channel to all of my classmates for our list of educational CZcams channels

  • @sage5296
    @sage5296 Před 27 dny

    The animations on this video are so smooth and well executed, even tho I already knew most of this it was still so engaging and satisfying to watch

  • @HormersdorfLP
    @HormersdorfLP Před měsícem

    i love your YT-videos. I have always looked for an explanation how the actual hardware of CPUs works. And I always got these zoomed out views that never explain how storage and code actually is stored in hardware. Thanks

  • @luislanga
    @luislanga Před měsícem +2

    This is now my favorite channel.

  • @AnantaAkash.Podder
    @AnantaAkash.Podder Před měsícem +1

    I don't know... but i subscribed to your channel a long time ago & finished all the Previous videos... still i didn't get it recommended... this Channel is Seriously Criminally Underrated by CZcams algos... your contents are truly unique...

    • @CoreDumpped
      @CoreDumpped  Před měsícem +2

      Yeah, I've noticed the algo is not recommending me lately.

  • @The_Pariah
    @The_Pariah Před měsícem

    I felt bad b/c I thought I hadn't subscribed.
    Realized I had subscribed many videos ago.
    Good decisions were made.
    I really hope you keep making these videos. You have a clear talent for it.
    And I LOVE learning stuff like this. I'd much rather watch this than the brain rot BS others are making.
    10/10 channel content

  • @Jianju69
    @Jianju69 Před měsícem +1

    Wow, such clear animations to illustrate your treatise! Great work!!

  • @armhafrath813
    @armhafrath813 Před měsícem +2

    We need this type of explanation 🎉

  • @y2ksw1
    @y2ksw1 Před měsícem

    Very nice description of an issue, I knew only from the design level of CPU's. The Z80 for example, has an inbuilt dynamic RAM logic and refresh generator.

  • @blendit2010
    @blendit2010 Před 6 dny

    So that is the difference between Dynamic RAM and Static RAM. Amazing!

  • @fflower23
    @fflower23 Před 7 dny

    Please make a video discribing all the type of memories like.. Registers, Cache, Flash, Magnetic disks, Ram, Rom, and comparision in terms of cost speed etc. It will be very helpful...

  • @theright9082
    @theright9082 Před měsícem

    These types of videos take you deeper into programming. Thank you very much ❤

  • @sage5296
    @sage5296 Před 27 dny

    Since you're usually reading a lot of data at once tho when you do perform a read operation, computers do often cache the data in fairly large chunks, up to a few kb. It makes sense to do that since you're already reading the whole row, each extra byte you grab has pretty minimal cost.
    As far as refresh rates go, iirc 50-60ms is a pretty common interval, but you could go lower to like 20-30ms if you were really concerned about rowhammer attacks or similar

  • @damonguzman
    @damonguzman Před měsícem +1

    Your content is incredible. I did startt getting confused around 8 minute mark. Idk why but all of a sudden it stopped clicking in my head. Just wanted to provide feedback.

    • @CoreDumpped
      @CoreDumpped  Před měsícem +1

      Thanks for the feedback, I'd use it to improve in later videos.

  • @aleksszukovskis2074
    @aleksszukovskis2074 Před měsícem +2

    i think no-one can make better explaining videos than you. im a fan

  • @tornado3007
    @tornado3007 Před měsícem +1

    i really love your videos. one of my favorite CZcams content right now and i always wait for new episodes. (im from germany btw)

  • @tech_simpleterms
    @tech_simpleterms Před měsícem +2

    Kindly publish a video on GPU intern workings compared CPU

    • @kazedcat
      @kazedcat Před měsícem

      GPUs need an entire book maybe even a couple of books to explain. Primarily because GPUs rely heavily on fixed function hardware so you need to explain every function how they work and why they are needed.

  • @davevann9795
    @davevann9795 Před měsícem

    Simplifying to the essentials to make it understandable to people not involved in designing chips, which is the vast majority of viewers. Great job deciding on what is important to show in detail, and what to show with vague blocks with no internal detail.

  • @andre_ss6
    @andre_ss6 Před měsícem

    This is great. Your explanation was very easy to understand. I wish you had explained the refresher more in depth; it seems quite difficult to make it work with the existing circuitry you explained before.

  • @elijahjflowers
    @elijahjflowers Před 2 dny

    good sponsor recommendation, thank you

  • @korigamik
    @korigamik Před měsícem +2

    what do you use to visualize these circuitry and animate them?

  • @simphiwehlela5399
    @simphiwehlela5399 Před měsícem +2

    Wonderful explanation 👏

  • @drewjaqua2905
    @drewjaqua2905 Před 23 dny

    Cool video. I'm also a software engineer, but I love this stuff.

  • @abhilasha4334
    @abhilasha4334 Před měsícem +2

    Keep uploading brother❤

  • @GeoffryGifari
    @GeoffryGifari Před 28 dny +1

    Hmmm for data-storage devices like SD cards or thumb drives, which type of RAM is most often used?

  • @sananjabrayilov5349
    @sananjabrayilov5349 Před měsícem +2

    Man, there is no doubt that you do great videos. But I'm really waiting for the "how loops and conditionals work" video. You have promised 😉

    • @CoreDumpped
      @CoreDumpped  Před měsícem +3

      Hopefully, that's the next episode. The reason I haven't finished it is because I'm also developing an interactive tool (related to that topic) so you guys can use it in the browser.

    • @sananjabrayilov5349
      @sananjabrayilov5349 Před měsícem

      @@CoreDumppeddefinitely, that will be a video I'm searching for many years. Thanks, man!

    • @user-tx2tp2de4u
      @user-tx2tp2de4u Před měsícem +1

      @@CoreDumpped That sounds very tempting!

  • @der.Schtefan
    @der.Schtefan Před měsícem

    Fun fact: A MOSFET in integrated circuits is a 4 Terminal device. The BULK. it is just always connected to the gate when it is produced as a discrete device. In the more elaborate icon for a MOSFET, this is made visible.

    • @vylbird8014
      @vylbird8014 Před měsícem

      You can get four-terminal FETs in discrete form. Usually the B terminal is used for biasing. You don't see them often, but they are most common in high-frequency usage where the input signal is so difficult to work with that just putting the correct bias on it is difficult - it's sometimes easier to have the bias voltage entirely separate from the signal path.

  • @kushagrasharma8211
    @kushagrasharma8211 Před měsícem +1

    Sir I have commented a question on your "How Transistors Remembers Data" video. It would be really helpful if you reply with an answer for that 😊🙏

  • @GeoffryGifari
    @GeoffryGifari Před 28 dny +1

    For the "leaking charge" of the capacitor while not being accessed, is it connected to quantum tunneling?

  • @discreet_boson
    @discreet_boson Před 20 dny

    Please keep making videos like these!

  • @duality4y
    @duality4y Před měsícem

    could you make a playlist on your channel with all the videos on your channel, it makes it easier for us to watch multiple videos in a row :D

  • @kemaleddinjohnson5391
    @kemaleddinjohnson5391 Před měsícem +2

    Great channel, I am just wondering which software you use to make these videos ?

  • @AnilKumar-rp2vs
    @AnilKumar-rp2vs Před měsícem

    Excellent exposition. Thank you.

  • @tshepisosoetsane4857
    @tshepisosoetsane4857 Před měsícem +1

    Amazing Content of Engineering Education

  • @awesomegaming9455
    @awesomegaming9455 Před měsícem +1

    i love his videos
    and appyl logic in minecraft

  • @erkinalp
    @erkinalp Před měsícem

    Can you make a video on unregistered synchronous DRAM, very commonly used in today's consumer devices?

  • @menkoful
    @menkoful Před měsícem +1

    Thanks

  • @user-ox4cr6zo4z
    @user-ox4cr6zo4z Před měsícem

    your programme is one of the most benificients

  • @sanubera5289
    @sanubera5289 Před 13 dny

    Have fallen in love with your videos 😌 ....

  • @maximdegi
    @maximdegi Před měsícem +3

    "i'm a software engineer, not electrical engineer, so.."
    ...so i make best videos on youtube on electrical engineering

  • @martingeorgiev999
    @martingeorgiev999 Před měsícem

    As a professional JS hater I really appreciate your hardware-related videos, can you recommend any books or other materials for learning more about electrical engineering?

  • @jaco1982za
    @jaco1982za Před měsícem

    All the time while watching this I more and more get the impression that this is not to dissimilar in concept from how core memory works.

  • @kossboss
    @kossboss Před měsícem +1

    What happens when there is a cache miss during an instruction such as a load or add or sub instructions that has to now use slower ram? Also similarly what happens when it has to use drive - Is that when a process goes D state temporarily?

    • @fdgdfgdfgdfg3811
      @fdgdfgdfgdfg3811 Před měsícem +1

      well the core has an out of order execution unit so it will execute other instruction instead or even switch the thread. there is always time wasted waiting and the trick is to make it do as many as possible.

  • @StickySli
    @StickySli Před měsícem

    I would have loved to have these videos for my Masters in Electrical Engineering courses that explain these kind of systems. Thanks anyways!

  • @SavvyBehavior
    @SavvyBehavior Před měsícem +1

    Thanks for your video,

  • @kratosgodofwar777
    @kratosgodofwar777 Před měsícem

    This is insanely good and in depth

  • @FrankHarwald
    @FrankHarwald Před měsícem

    2:32 the transistor model doesn't actually map the gate model of the static ram cells: the transistor model is a double-(cmos)-inverter cell with two access transistors while the gate model is a double-nand cell with no further access method except of course the second input from both nand gates.

  • @mr.raider744
    @mr.raider744 Před měsícem +1

    Bro is a legend

  • @grayyen3887
    @grayyen3887 Před měsícem +4

    Yeeaaah i was waiting for this 🎉🎉🎉🎉

  • @MrJonnis13
    @MrJonnis13 Před 6 dny

    thank you, this is invaluable

  • @BehruzZoirov-if5kw
    @BehruzZoirov-if5kw Před měsícem +1

    Best chanel in CZcams ❤

  • @codemodearyan
    @codemodearyan Před 17 dny

    I am great fan of your videos.. I would have clicked that like button at least a thousand times!!! if possible!

  • @ggre55
    @ggre55 Před měsícem

    Watching eveery single vid u make so far
    U r really amazing

  • @KJMcLaws
    @KJMcLaws Před 24 dny

    You should put all your videos in a playlist that we can just click and watch sequentially I get I bet you'd get a ton of views.

  • @MissPiggyM976
    @MissPiggyM976 Před měsícem

    Another great video on computer science, many thanks1

  • @raptorthegamer5524
    @raptorthegamer5524 Před měsícem

    but isnt a mosfet itself basically a transistor that also acts as a capacitor? because if you for example apply a voltage to the gate and then remove the voltage source, it will still allow current to flow from source to drain due to its capacitance. or am i missing something?

  • @tornado3007
    @tornado3007 Před měsícem +2

    but one thing i dont completely understand is why do we need to precharge the bitlines ? why cant we just read if there is any voltage or not ?

    • @CoreDumpped
      @CoreDumpped  Před měsícem +2

      Because as soon as the gate of the MOSFET is opened, the capacitor starts to discharge. The voltage provided by the capacitor is proportional to its charge; so it decreases while it loses charges. In that scenario bitlines would be outputting a variable voltage.
      Also, using the bitlines as capacitors doesn't require the process to completely charge or discharge the capacitors, so when those capacitors need to be refreshed at the end of the operation, the process won't require to wait for a fully charge or discharge, which for obvious reasons would take more time than only charging or discharging it "a little bit".

    • @tornado3007
      @tornado3007 Před měsícem +1

      @@CoreDumpped thanks for the reply I think I understand now

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt Před měsícem

      I think we need to remove the ghost from the previous write and also bias the pre amps on the edge. The capacitors are charged if not too old. We just want to know the polarity.

    • @Keldor314
      @Keldor314 Před měsícem +1

      One thing to note is that the bitlines, like every other component, have some capacitence. In fact, when you consider that to reach however many gigabits of capacity a modern RAM chip has, a bit line must cross hundreds of thousands of rows, we can see that these are rather large structures, and so the capacitence can be presumed to be quite significant. Did I mention that we also want to make the data storing capacitors as small as possible so we can fit more of them?
      What this means is that DRAM capacitors are very likely not large enough to fully charge or discharge an entire bitline, not even close. But they don't need to. If we precharge the bitline to right about the threshold voltage for the sense amplifier to switch one way or the other, then just a small change in voltage is enough to tip the balance and read the bit.

  • @dakata2416
    @dakata2416 Před měsícem +3

    How do you make those animations?

    • @direwolfesp6366
      @direwolfesp6366 Před měsícem +1

      powerpoint

    • @CoreDumpped
      @CoreDumpped  Před měsícem +8

      Yeah, everything you watch on my videos are just PowerPoint slides.

  • @yuseidrex
    @yuseidrex Před měsícem +1

    love your videos!!

  • @sanubera5289
    @sanubera5289 Před 13 dny

    Binge watching your videos 🙂

  • @SimGunther
    @SimGunther Před měsícem +2

    That's probably why computational RAM exists. Sure, the computations are simplistic compared to a CPU, but a machine built with C-RAM is a whole lot faster than a general purpose computer! 😮

    • @monad_tcp
      @monad_tcp Před měsícem +2

      was C-RAM ever implemented in any real microchip I can buy ? I don't think that ever went out of the research phase. I was looking for something and only found the I-RAM concept.
      Which ironically was more similar to how a modern GPU works, with a couple of small changes, you can make RAM synchronize with the parallel computation, so you don't need to specifically put the computing Logic near the RAM.
      The problem is one of the process node, I bet capacitors suffer from leaks and that require special masking layers on the actual silicon , which would be unnecessary for normal logic, and make the transistors waste more power, as they also leak, but the leak doesn't matter much after the signal passed to the next clock cycle.
      There's a reason why the entire industry is going for chiplets, so they can use different kinds of process node in the same design that produces a device.
      If you study the story of semi-conductors you always find this split between memory manufacturers and logic manufacturers.
      And even if you put logic near the RAM, DRAM is still slow, what we're doing now is putting the SRAM on top of the CPU, thus saving time on signaling. That makes the CPU go way faster, and you can have so much cache that we're literally going from DRAM to SRAM as actual memory, in modern CPUs, the RAM memory is the cache, the external DDR is actually more like disk, or network.
      SRAM got so cheap, we just don't use more of it because we ran out of space in the actual die, its 90% SRAM already ! so that's why we're never going to see C-RAM, we have something even better, SRAM. And with 3D stacking like V-Cache , for example, the AMD 7000X3D , we can have the best of both worlds.
      And mobile SOCs (system on chips) were already using stacked SRAM on top of the die, like a chiplet, but with an interposer, not literally gluing silicon dies.
      SRAM is used more like storage nowadays, everything happens on Static RAM, cache basically solved that problem.
      Its all about the data-flow, RAM is slow, but with some "simple" synchronization circuit, you can turn normal DDR into GDDR, which reads the entire memory sequentially, row by row, thus you basically pipeline it, and then you put that in a huge BUS, and then you can have lots of parallel small CPUs working on the entire memory row.
      That's what the industry did to GPUs.
      Read -> Execute -> Write pipelined. After the first delay, the memory and the "CU" (compute unit) will run synchronized with RAM access, thus effectively working like a C-RAM with 0 latency, but without actually having to put the logic near the RAM, thus using the already developed tech.
      Its its faster than a general purpose CPU, because it is not general purpose, it can't do jumps, or branching, it can only execute sequentially, the RAM is not used as "random access", but there are still threads, so it is still random when switching from threads.
      We didn't get C-RAM, but we got SGRAM, Synchronous Graphics Dynamic RAM. Which basically described what would be the design of modern GPUs since 2012.
      Ironically the most consuming GPUs we have now are going for HBM with is basically SSRAM , synchronized static ram, since 2019, we need so much performance that we're going to just pay the price and actually use Static RAM everywhere, DRAM is too slow, DRAM is "disk".

    • @ArneChristianRosenfeldt
      @ArneChristianRosenfeldt Před měsícem

      @@monad_tcpshameless plug: the 32 bit gaming consoles all had half their die dedicated to SRAM ( Jaguar, 32x, PSX, N64 ). PS2 then had chiplets and 1024 bond wires. Nintendo virtua boy had a silicon chiplet bonded to a gallium arsenide chiplet for red LEDs.

  • @thebestprogrammingchannel

    I wish I could see a video of how it works GPU and how it communicates with the CPU..

  • @That1GGuy
    @That1GGuy Před měsícem +1

    This is so cool!

  • @aalhard
    @aalhard Před 28 dny

    THANK YOU FOR NOT PUTTING AN X OR K IN ESCAPE😊😊😊😊

  • @charlesbaldo
    @charlesbaldo Před měsícem

    Amazing, almost indistinguishable from magic.

  • @debtanugupta5274
    @debtanugupta5274 Před měsícem

    Superb brother!! Superb!!

  • @chri-k
    @chri-k Před měsícem

    i knew dynamic RAM was sketchy, but i was not suspecting it _this_ sketchy.
    I hope they also have error correction.

    • @ness0562
      @ness0562 Před měsícem

      basic DRAM doesn't, however servers that need to be as stable as possible use ECC DRAM, which sacrifices a small part of the capacity for error correction

  • @Electronicshunt0527
    @Electronicshunt0527 Před měsícem

    8:55 here i don't understood how exactly it re sets i mean how it make the capacitor to its initial state , just like u have simulated at beginning of charging and discharging if u can please explain this also like that

  • @thehandsom3
    @thehandsom3 Před měsícem +1

    These animations are cool, how do you make them.

  • @andreasblendorio1486
    @andreasblendorio1486 Před měsícem +1

    masterpiece, keep it up

  • @AndrewMellor-darkphoton
    @AndrewMellor-darkphoton Před měsícem +2

    Yea another dram video, before I try to make Dram on a breadboard.

  • @sidreddy7030
    @sidreddy7030 Před měsícem +1

    Yet another banger

  • @theuntitledgoose
    @theuntitledgoose Před měsícem

    After Chrome wrote the video buffer to my RAM, they became self-conscious and detonated me and my computer
    Good video, would highly recommend

  • @absurdengineering
    @absurdengineering Před 28 dny

    Capacitors are awesome at storing data. DRAM designs just push them to the edge. If you want to pay more for DRAM, you can get some on a better process and with much lower density but very long storage times. It is just not economical nor necessary. Do refresh times affect you personally or your PC experience? Absolutely not. So while I do agree that DRAMs don’t have very long data retention - they absolutely don’t have to. I am using electrolytic capacitors in a relay computer memory. They retain the state for many hours without refresh. You can stop the clock, turn the thing off, later in the day turn it back on and all the memory and register content is retained.

  • @utilizadorable
    @utilizadorable Před měsícem

    Awesome video, yet again!

  • @user-qr4jf4tv2x
    @user-qr4jf4tv2x Před měsícem

    i like how observing the ram basically collapse it like its in super position

  • @ryansheehy8444
    @ryansheehy8444 Před 28 dny

    Why would you need a Mux-Demux if you can just output or input from the bus? You would want to change one word at a time instead of one bit.

  • @johnrickard8512
    @johnrickard8512 Před měsícem

    I always wondered how DRAM refresh worked...

  • @dj10schannel
    @dj10schannel Před měsícem

    That jlpcb gonna save that thx! 👀👍 nice vid 👍

  • @ClosestNearUtopia
    @ClosestNearUtopia Před měsícem +1

    Capasitors dont store the data, they just keep the data line high when readed..

  • @thesimplicitylifestyle
    @thesimplicitylifestyle Před měsícem

    Very helpful! Thank you 😎🤖

  • @user-ox4cr6zo4z
    @user-ox4cr6zo4z Před měsícem

    thanka sir