Dynamic Random Access Memory (DRAM). Part 6: Burst Mode and Bank Interleaving

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 พ.ค. 2020
  • This is the sixth in a series of computer science videos is about the fundamental principles of Dynamic Random Access Memory, DRAM, and the essential concepts of DRAM operation. This video develops the concepts of dual channel mode and quad channel mode that were introduced in a previous video. It then explains how the operating speed of a DIMM can be greatly increased by outputting a burst of data for a single row and column address, in a technique known as prefetching. The video also introduces a system known as bank interleaving, which greatly reduces the latency of a DRAM array, thereby keeping the data bus fully occupied when transferring cache lines.

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

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

    THE CONTENTS OF THIS CHANNEL ARE EXTREMELY HELPFUL! I FEEL NOW THAT I CAN BUILD MY OWN RAM IN MY HEAD

  • @paradimov
    @paradimov 4 ปีที่แล้ว +10

    it's hard to understand why such a brilliant channel is so unpopular. thanks a lot for great vids. very useful both for computer science and english. from russia with like!

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

      its not unpopular, its how few people want to learn this stuff or have an aptitude for it

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

    Tremendous job was done! Many appreciations my friend!

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

    Thank you for this detailed explanation about the DDR. Outstanding!!!! :)

  • @huuphu17
    @huuphu17 4 ปีที่แล้ว +7

    This channel is gold, great job.

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

    Thank you for the series. Here I would like to mention that DIMM is called so not because of 64-bit data line but just because each side is connected to its own electrical lines unlike SIMM having sides of its connector shorted, inheriting SIP package.

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

    The pains which you have taken in explaining the deepest thought with the help of animated diagrams creating the impact directly on the mind.
    Please add more vedios on timing and other detailing of DDR, it's a request

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

    This is a great channel and much more in-depth than linus tech tips for example

  • @명상의시간
    @명상의시간 4 ปีที่แล้ว +4

    Thank you for the useful information. To point out one thing, according to JEDEC standard, DDR4's Burst length is also 8, which is introduced as 16 in the video (8:40). Thank you again for the good video.

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

      You are correct. Burst length in DDR4 is 8, as presented in JEDEC standard docs and (easier do access) DDR4 datasheets from many manufacturers.

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

      Indeed, BL was kept at 8 for DDR4 by introducing Bank Groups, which are also not mentioned.

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

    very clear , may be best in youtube for dram

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

    Thank you! Very informative animation.

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

    Thanks for the fantastic content!
    8:33 IIUC the burst length of DDR4 is kept at 8n as DDR3, while until DDR5 it becomes 16n.

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

      You're welcome, and thank you :)KD

    • @pradyumnam7451
      @pradyumnam7451 9 หลายเดือนก่อน

      ​@@ComputerScienceLessonsAt a time only one memory chip can be active/accessed or multiple memory chips can be active/accessed ?

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

    your lesson is sooooo useful!! veryyyyy thank you!!

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

    I watch it one by one and my brain in now like a jelly:)

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

    The videos are very good and very interesting to understand. Are you planning to provide more videos on ddr ?

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

    6:55 A read, or write, is indeed initiated by the row address. That action triggers an entire row to be read into the row of buffers, using the sense amps. But this is an entirely separate command to the dram. The column address is then LATER sent to read or write a burst of dram words somewhere within that row. The video gives the impression that a read is initiated by BOTH the row and column. Once the slow row opening command is complete, the column read or write command can be sent, acting on a portion of the row buffers. And more than one burst read or write command can be done to different columns of the same open row before that row gets closed out and written back to the correct row within the array so a new row can be opened for R/W.
    Reading a 2nd cache line that is from the same row as a first can be done with lower latency because the row does not need to be sensed and stored into the bank’s row buffers. Once a row has been opened, bursts of reads and writes within that row can be initiated one right after the other, without incurring the delay to open a row (tho, a write must wait for the for the delayed burst of data from a previous read to finish on the data bus before a write burst can be sent to the dram).
    The point is, the row and column addresses are provided at separate times and in separate commands.

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

      A prior video discusses this

  • @raachmhamed2233
    @raachmhamed2233 7 หลายเดือนก่อน

    thank you sir

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

    On what parameter is the burst cycle dependent on. Does the size of the data I/O buffer play a role in the burst cycle time

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

    6:35 i finnaly understand arrays.

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

      Excellent. Glad to help. At the risk of muddying the water, you might like this video th-cam.com/video/oWM7fjaiWw0/w-d-xo.html :)KD

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

      @@ComputerScienceLessons thank you! 🥹

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

    Hi, can you pls advise some good books on this topic?

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

    I just got confused while trying to get the defference between prefetching and burst. Happens one of these automatically?
    Nonetheless, this series about DRAM is superior!

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

    Does a second Rank on one DIMM behave like a second single-rank DIMM in the same channel? Why would a second rank result in more performance?

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

    So In the Bank Interleaving, We get the 64-bit of data from only 8 of the banks in a single chip?

  • @pradyumnam7451
    @pradyumnam7451 9 หลายเดือนก่อน

    At a time only one memory chip can be active or multiple memory chips can be active ?

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

    What I don't understand is that the illustration shows that each chip in a rank puts out 8 bits, but later you show that one bank also puts out 8 bits. I guess the bank interleaving part implies that only one bank at a time can output data from one chip. But I'm not sure if this is correct since this is not clear to me.

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

      That is correct. Only one bank on the chip can output data at any one time. Bank interleaving ensures that the banks deliver their data in close succession. If a bank delivers 8 bits, the chip delivers 8 bits. :)KD

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

    how single channel mode can be accessed by the memory controller??

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

    Aren't rams nowadays byte addressable? Instead of fetching 64 bits, it should be 8, no?

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

    Why don’t we output 8 bits per array?