0

Recently I've discovered that I don't see the actual difference between DDR RAM and SDR RAM with doubled frequency. How do these actually differ?

It seems to me that memory bandwidth is the same, energy consumption is the only thing that probably differs here, but I don't actually see why, because every transistor should work the same way.

Can anyone tell me if there is a difference? Or the only reason of DDR is increasing the data rate without increasing frequency?

  • they do sound roughly equivalent, but keep in mind you would need a CPU and mobo that supported that frequency. FSB and the System bus would have to be twice as fast, since its doing half the work per tick. the general metaphore with DDR is "doing more with less". – Frank Thomas Jan 11 '17 at 00:56

3 Answers3

0

DDR is a newer version of SDR. It has a better architecture which allows reading double the amount of words per clock cycle.

The DDR interface accomplishes this by reading and writing data on both the rising and falling edges of the clock signal.

Also, DDR uses less energy because it runs at lower voltage.

Bogdan
  • 277
  • 2
  • 10
0

I think the real answer to this question is a matter of history, rather than ongoing technical decision making. In particular, I don't believe that any form of SDR is still an option for modern PCs (though other more specialized hardware may implement differant specs).

When DDR was standardized, the fastest frequency it expected to support for the memory clock was 200MHz, so considering these limitations in hardware support, DDR was clearly a superior methodology to SDR. That we never went back to SDR techniques as memory clock speed started to rise is not particularly suprising.

Your assertion is not wrong per se; DDR and SDR both tie their functional performance to frequency and the frequencies they both run at are directly proportionate (one is exactly twice the other) but it would be silly to attempt to revive SDR now.

Frank Thomas
  • 35,097
  • 3
  • 77
  • 98
-2

Related to that, at same CPU power, DDR1 @ 400MHz will work just as fast as DDR2 @ 800 MHz which will work just as fast as DDR3 @ 1600Mhz which will work just as fast as DDR4 @ 3200 MHz.

Overmind
  • 9,924
  • 4
  • 25
  • 38
  • This is just wrong, there are way to many variable to simplify it like that. Looking at the raw numbers this would be wrong as well because each generation should have more throughput. This would of course be limited by the controller but as each generation would also need newer controllers it's unlikely that thy would be slower. – Seth Jan 11 '17 at 10:43
  • I'm talking about the actual RAM and access to it, ignoring other variables. That's why I stated at same CPU performance. One of the critical things that is different it's where the memory controller actually is now-days, but this is another thing which of course influences performance. What I have stated can be proven hands down using i7s and DDR3s and DDR4s. You can setup near-perfect similar conditions for the actual memory tests. – Overmind Jan 12 '17 at 11:18
  • Do you have some reading material, tests or articles on this? It still sounds wrong. You listing would mean that a module (ignoring a lot of things) that does work once a second would be just as fast as a module that does work twice a second. If you brought all of them down to the same speed they would all be doing work once a second which would indeed make them equal. Alas this would mean clocking DDR2 at half the speed of DDR1 and so on. if I'm still missing something please, please, please expand your answer so it's understandable. – Seth Jan 12 '17 at 11:35
  • Your logic is incomplete. The module that does work twice a second takes a double amount of CPU cycles compared to the one that does work once a second so you practically end up R/W-ing the same amount per given CPU resource. And yes, I will publish some practical tests on this. – Overmind Jan 12 '17 at 11:40
  • But you would usually end up with a bottle neck for the data transfer anyway so on what hardware platform would that happen? A SNES? In addition you would have to account for things like DMA which would skip the CPU altogether. So yes you might end up with the same speed if your CPU is the bottleneck but the chance that such a CPU (stock) would have a multi generation memory controller seems to be rather slim. The speed difference between Cache and RAM are part of the reason for ever increasing Cache sizes on your CPU. I'm looking forward to your edit to get an idea of where you're coming from – Seth Jan 12 '17 at 11:51
  • If you really want to test, get Haswell, Core i7 4770 3.4GHz and put decent DDR3-1600Mhz in it. Get Intel Skylake, Core i7 6700 3.40GHz and put decent DDR4-2133Mhz in it. Disable any fq boost so no CPU cheats. Start intel burn-in test on both. Then start anything to benchmark memory. That will clearly show you what I'm talking about. – Overmind Jan 12 '17 at 12:27
  • Sorry I'm not in a position to just get two "equal" generations of hardware for such a test. According to the specs there is quite a gap in the max achievable memory bandwidth. Your scenario would test it when your system is at maximum load and is also trying to access memory. I don't think that is a terrible common use case. Further more "IntelBurnTest" is already using quite a bit of memory itself and as such you're running two competing applications that are accessing the memory. Do you have numbers for your suggested test? It's hard imagine you'd get the exact same results with that setup. – Seth Jan 12 '17 at 13:07
  • 1
    See my answer here on how to calculate performance (in Seconds) based on frequency and timing attributes: http://superuser.com/questions/593772/calculate-performance-of-ram-using-timing-and-speed There is no straight answer to this, unless you are comparing very similar chips across DDR versions. – Frank Thomas Jan 12 '17 at 13:17