Dynamic Random Access Memory (DRAM). Part 2: Read and Write Cycles

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ก.ย. 2024

ความคิดเห็น • 100

  • @rsmrsm2000
    @rsmrsm2000 หลายเดือนก่อน +2

    Amazing !
    Amazing !
    Amazing !
    Please more videos.

  • @DigitalOutlawed
    @DigitalOutlawed 7 หลายเดือนก่อน +6

    Wow, This is one of the clearest videos on any subject I've ever watched, Thanks tons!

  • @nadie8480
    @nadie8480 3 ปีที่แล้ว +7

    Best video on TH-cam explaining DRAM. Thanks!

  • @rodrigoparedes6348
    @rodrigoparedes6348 3 ปีที่แล้ว +6

    I comment just in very special occasions and I need to do it on this one! Thank you sir for one of the clearest explanations that I've encountered in electronics. This has given me the will to keep pushing on this subject!

    • @ComputerScienceLessons
      @ComputerScienceLessons  3 ปีที่แล้ว +1

      Thank you so much for the lovely comment. That's one of the things that keeps me doing this. :)KD

  • @dimensions1026
    @dimensions1026 2 ปีที่แล้ว +2

    This is an excellent lecture. Really helped me , a non-EE background person, to understand DRAM operation

  • @chochooshoe
    @chochooshoe 3 ปีที่แล้ว +5

    I've watched a lot of videos that talk about DRAM, yours are without a doubt the best. please keep making more videos!

  • @feralamp
    @feralamp 3 ปีที่แล้ว +4

    Just wanted to say thank you. I struggled with this concept in college and now I have a much better understanding because of your video which not only has a great visual/explanation but also allows me to rewind as many times as I need to

  • @wenjiesun7381
    @wenjiesun7381 ปีที่แล้ว +1

    Thank you sir! This is a great series for all level of audience to understand the thoery of RAM and etc.. There must be plenty of efforts and deep understanding.

  • @thomasmunguya2207
    @thomasmunguya2207 2 ปีที่แล้ว +1

    Your videos are some of the best videos I have seen that explain computer science concepts so clearly. Keep creating this content, and thank you very much.

  • @iammituraj
    @iammituraj 2 ปีที่แล้ว

    Best DRAM tutorial in internet man...

  • @selvalooks
    @selvalooks 2 ปีที่แล้ว +1

    vow vow vow just amazing, crystal clear explanation !!!

  • @stanisawnowak1930
    @stanisawnowak1930 3 ปีที่แล้ว +1

    Good explanation, now I feel smarter than ten minutes ago.

  • @DJDextek
    @DJDextek ปีที่แล้ว

    Super helpful for my computer architecture class at UCR, thanks for making this series

  • @abultufail
    @abultufail 2 ปีที่แล้ว +1

    This guy deserves the Turing Award

  • @叶梦琦-f5m
    @叶梦琦-f5m 4 ปีที่แล้ว +29

    THANK YOU! SIR!
    I'm only through second video of your DRAM series, but I'm already sure that this is a masterpiece from some expert in the industry. The effort you put in this series is astonishing, such detailed illustration animated, such accurate explanation well rehearsed.
    You clear a dark cloud hung over my head for days! You are a life saver!
    May I ask, do you have a team for this work ? Also, is there a paid course I can buy ?

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 ปีที่แล้ว +19

      Thank you so much for your kind comments. No team; just me. I don't make paid content, I want to keep it free for now. :)KD

    • @EvilSapphireR
      @EvilSapphireR 3 ปีที่แล้ว +3

      @@ComputerScienceLessons producing such high quality content and insisting on keeping it free, you're a beautiful human being. Thank you so much!

    • @Sheeeeshack
      @Sheeeeshack ปีที่แล้ว

      @@ComputerScienceLessons do you have a website? Paid content?

  • @samwang1439
    @samwang1439 11 หลายเดือนก่อน

    Thank you SOOO much. Saved my day.
    The series of vids about DRAM you made is so well explained.
    Also, there is a minor mistake which in 10:04 the “Data out” line should be “Data input” if I understands correctly.

  • @arundathihr7755
    @arundathihr7755 3 ปีที่แล้ว +1

    Thanks a lot sir for the amazing exaplanation and crystal clear concept

  • @YuanfangChen0220
    @YuanfangChen0220 3 ปีที่แล้ว +3

    very high-quality content. Thank you!

  • @LaplacianFourier
    @LaplacianFourier 2 ปีที่แล้ว +1

    Thanks for spreading knowledge.

  • @yahia1355
    @yahia1355 2 ปีที่แล้ว +1

    SO GOOOOOOOOOOOOOOOOOOOOOOOOOOOD!!!

  • @first_date_2639
    @first_date_2639 ปีที่แล้ว +1

    You are a legend

  • @tomhankstomhanks2579
    @tomhankstomhanks2579 8 หลายเดือนก่อน +1

    Thank you very much

  • @mystic3549
    @mystic3549 5 หลายเดือนก่อน +1

    this is so good :)

  • @nhinguyen5285
    @nhinguyen5285 3 ปีที่แล้ว +1

    Thanks for your help. It's very useful.

  • @srisaiganeshv
    @srisaiganeshv 2 ปีที่แล้ว +1

    Really an amazing details. I can vouch for the concurrence of the details to the present-day arch being a Server HW developer

  • @shnarobe2
    @shnarobe2 2 ปีที่แล้ว

    Thank you Sir! Excellent explanation!

  • @ff00005
    @ff00005 4 ปีที่แล้ว +3

    What determines for how long the Word-Line will be active? At first I thought for as long as RAS is enabled and I concluded that disabling RAS would have to occur after writing back the row. Your explanation suggests otherwise - are there latches in the row decoder? Or is the Word-Line simply afloat in hope that its charge will remain for the duration of the operation?
    Asides from that, this is the most comprehensive yet simple explanation the internet has on offer. Thanks! :)

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 ปีที่แล้ว

      Good question. Most RAM sticks come with timing information. You will see numbers quoted like 16-18-18-38. I plan to make a video about these one day. In the meantime, search in Google for 'RAM timings'. :)KD

  • @SaladinG14
    @SaladinG14 3 ปีที่แล้ว +2

    Great video! You already use precharge, so I think it would be useful if you introduced the "Activate" command terminology as appropriate, too.

    • @ComputerScienceLessons
      @ComputerScienceLessons  3 ปีที่แล้ว

      Good point - thanks. I'll be doing some videos on Flash memory soon and can bring in some new terminology. :)KD

  • @k0185123
    @k0185123 2 ปีที่แล้ว +1

    PERFECT VIDEO!!!!!

  • @Koyaanisqatsi2000
    @Koyaanisqatsi2000 4 ปีที่แล้ว +1

    beautiful explanation thank you

  • @ghtry5
    @ghtry5 3 ปีที่แล้ว

    very useful! i like you teacher

  • @robertlafleur5601
    @robertlafleur5601 4 ปีที่แล้ว +5

    8:24 what prevents column address to mess up the row buffer when CAS is enabled ?

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 ปีที่แล้ว +1

      A bit of a glib answer for now I'm afraid. The row buffer is comprised of a set of sense amplifiers. These are signal detectors/amplifiers with built in latches. The are constructed and connected in such a was as to allow a single latched value to the read, or changed, without affecting the others. The details of sense amps was something I decided no to go into (yet). :)KD

  • @ArdentumC
    @ArdentumC ปีที่แล้ว

    Thanks

  • @andrefpereiraalves
    @andrefpereiraalves 2 ปีที่แล้ว

    Thanks, this is great.

  • @XGR_Tisa
    @XGR_Tisa 4 หลายเดือนก่อน

    Helpfull

  • @RAVIYADAV-cu5zp
    @RAVIYADAV-cu5zp 8 หลายเดือนก่อน

    Hi Sir, Thank you for the nice lectures and for preparing beautiful slides. I know you have worked hard in preparing slides, if possible, can I get your slides. I will explain my students, with your reference. Thank you

  • @mahdinemati8573
    @mahdinemati8573 ปีที่แล้ว

    i can't get the read and write diagram in the video if we active RAS and CAS at a shared time then both ROW and COL address buffer will be write at the shared time can you explain this to me? 🙏

  • @geekionizado
    @geekionizado 4 ปีที่แล้ว +1

    awesome

  • @SK-qn5ry
    @SK-qn5ry 2 ปีที่แล้ว

    Such a masterpiece video on DRAM
    No one will explain this much clearly
    You are superb sir
    Sir, at 7:07 whenever RAS is disabled , by doing so we cannot deassert word line right?
    So at 7:23, then how to deassert word line?

    • @shreekararaghavan1471
      @shreekararaghavan1471 2 ปีที่แล้ว

      even i have same dout

    • @shreekararaghavan1471
      @shreekararaghavan1471 2 ปีที่แล้ว

      for qn 7:23, a decoder can have an enbale pin(a decoder has and gate at its output stages, so an enable pin is anded with all gates. So if enable is low, then all wordlines are deasserted)

  • @JohnDoe-lz4gk
    @JohnDoe-lz4gk 2 ปีที่แล้ว

    Some books show that the data bus is connected on top of the matrix representation, that would imply that all the bits stored in the bottom half of the matrix under the sense amplifier get inverted before reaching the data bus. Is that correct?

  • @denebvegaaltair1146
    @denebvegaaltair1146 2 ปีที่แล้ว

    @8:36 why isn't the row address strobe set to high when column address strobe is set to low? Wouldn't we be activating the wrong row (and thus messing with the sense amplifier inputs)?

  • @taqqiraja2722
    @taqqiraja2722 2 ปีที่แล้ว

    8:22 if the address is for the column decoder but both the ras and cas are applied, wouldn't that also update the data in the row address buffer? Wouldn't that cause us to select a row different from the intended one?

  • @SteveJones172pilot
    @SteveJones172pilot 2 ปีที่แล้ว

    Did I miss it? You mentioned that the read is destructive, but I didn't catch how the existing bits were put back into the selected column? Also, is that what a "refresh cycle" is?

    • @SteveJones172pilot
      @SteveJones172pilot 2 ปีที่แล้ว

      Nevermind.. if anyone else missed this too - It's in the first video of the series. I had stumbled upon this one first!

  • @denebvegaaltair1146
    @denebvegaaltair1146 2 ปีที่แล้ว

    Sir, why is the word line deasserted (which I guess means set to low) when writing back to the DRAM? Don't the transistors need to have their gates on (set to high) to write (pass current) through them to the capacitors?

  • @trilecao9014
    @trilecao9014 3 ปีที่แล้ว +1

    Thanks 1:27

  • @raviblore
    @raviblore 3 ปีที่แล้ว +1

    Request you to make a video on LPDDR5.

  • @johnpro2847
    @johnpro2847 2 ปีที่แล้ว

    this is very complicated ..

  • @alchemy1
    @alchemy1 3 ปีที่แล้ว

    I bet in reading the row of cells, the charges that go to the 0 bit cells must come from the other cells that are bit 1 and not from bit line. Who knows? But how it is detected that a particular cell is discharged since the whole row is read. There are no sensors in each cell, is there? The gates of the whole row is receiving voltage and the transistor is open.

  • @yahia19971
    @yahia19971 3 ปีที่แล้ว

    in 6:45 is it necessary that when CAS is 0 the RAS should be 1 ?

  • @abultufail
    @abultufail 2 ปีที่แล้ว +1

    Is this for A level? If so which examining board would it fall in?

    • @ComputerScienceLessons
      @ComputerScienceLessons  2 ปีที่แล้ว +1

      No this is not required for most A level courses, certainly not OCR or AQA. I do nevertheless touch on this with my own A level students because it explains why accessing a data item in an array variable, by means of an index number (which equates to a memory address), takes the same amount of time no matter where the item is. When I started making this series, I became curious and carried on. :)KD

  • @김남연-p4k
    @김남연-p4k 8 หลายเดือนก่อน

    why need a 6 line address bus on 8x8 array of cells (64 cells) curios how you come up with 6 line address bus

    • @ComputerScienceLessons
      @ComputerScienceLessons  8 หลายเดือนก่อน

      I just wanted to illustrate the principle but keep the diagram simple. Yes, we normally work in powers of 2. :)KD

  • @angelojacobo4302
    @angelojacobo4302 3 ปีที่แล้ว

    Hello sir, why is there are a need for a "precharge" of half of the voltage? It was mentioned in video 1 but I'm still confused. I get that when precharging, the gate(row address) is turned off but ALL the bit lines are charged to half the voltage. But I don't get "why" is there a need for precharging before read/write, it seems to me that we can still read/write even without precharging the bitlines first......

    • @jcolonna12
      @jcolonna12 3 ปีที่แล้ว

      Lets take a look at one cell just to make it easier. You precharge to 1.5V because all you care about whether the capacitor is charging or discharging. You start at 1.5 Voltages because it is makes the read/write speeds faster since it's right in the middle. You don't need to completely charge or discharge the capacitors in order for the sensing circuit to know if the cell is a '1' or a '0'. Instead you look at the general trends.
      However, if there is no precharge, then it will take more time to read and write the cell because instead of going from 1.5V to 3V for a logic high, you will have to go from 0V to 3V to get a '1'.
      For example: For reading, if the sensing circuit reads 1.49V the capacitor is charging from 0V meaning the cell is at a logic level '0'. If the sensing circuit reads 1.51V then the circuit is a logic is discharging from 3V making it a logic '1'.

  • @antoniobregoli9305
    @antoniobregoli9305 ปีที่แล้ว

    Dram sono sostituibili con altre? Grazie

  • @jackspicer455
    @jackspicer455 3 ปีที่แล้ว +1

    🥰

  • @Kababalax
    @Kababalax 4 ปีที่แล้ว

    @ 2:00, 8 binary states in a 3 row bus are:
    111
    110
    011
    101
    100
    010
    001
    000

  • @rfung23
    @rfung23 ปีที่แล้ว +1

    I'm not sure why I have to spend more than $20,000 per semester to attend university after watching your video🥹

    • @sagarrawat7203
      @sagarrawat7203 10 หลายเดือนก่อน

      In my country, India we even don't know practically the basics of high school 😢

  • @DragonKlavier
    @DragonKlavier 2 ปีที่แล้ว +1

    ¡Gracias!

  • @ohsungc2
    @ohsungc2 3 หลายเดือนก่อน

    i really like your timing diagram explanation

  • @kamalali5025
    @kamalali5025 2 ปีที่แล้ว +1

    Unbelievably high quality video, thank you for this!!

  • @ashkananousheh3648
    @ashkananousheh3648 3 ปีที่แล้ว +1

    concise and useful ! thanks