DRAM (bilgisayar)

Dinamik Rastgele Erişimli Bellek (Dynamic Random Access Memory), dinamik rastgele erişimli bellek bir tümleşik devre içinde her bir veri bitini ayrı bir kapasitör içinde saklayan Rastgele Erişimli Bellek türüdür. Kapasitörler yapıları gereği bir süre sonra boşalacağından yenileme/tazeleme (refresh) devresine ihtiyaçları vardır. Bu yenileme ihtiyacından dolayı DRAM, SRAM (Statik Rastgele Erişimli Bellek) ve diğer statik belleklerin zıddı durumundadır. DRAMin SRAM üzerindeki avantajı onun yapısal basitliğidir: 1 bit için 1 transistör ve 1 kapasitör DRAM için yeterliyken SRAM için 6 transistör gerekir. DRAM, yenileme devresinden dolayı çok yer kaplar. Güç kaynağı açık olduğu durumda DRAM ve SRAM sakladığı verileri korur bu nedenle her iki bellek aygıtı da volatiledir. (Güç kaynağı kesildiğinde veriler kaybolur)
Tarihçe
DRAM Dr. Robert Dennard tarafından 1966da IBM Thomas J. Watson Araştırma Merkezi'nde icat edilmiştir ve 1968 yılında patenti alınmıştır. Kapasitörler, Atanasoff-Berry Computer, Willams Tube ve Selectron Tube gibi ilk bellek projelerinde kullanılmıştır.
1969da Honeywell Intele kendilerinin geliştirdiği 3-transistör hücre (cell) bulunan DRAMi üretmesini önerdi. Bunun sonucunda 1970'lerin başlarında Intel 1102 (1024x1) ortaya çıktı. Intelin ürettiği 1102nin pek çok sorunu olması Inteli kendilerinin geliştirdiği tasarımlara yönelmesine neden oldu (bu çalışmalar Honeywell ile anlaşmazlık çıkmaması için gizlice yürütüldü). Bu çalışmalar sonucunda Ekim 1970'te ticari olarak kullanılabilecek 1-transistör hücreli DRAM olan Intel 1103 (1024x1) ortaya çıktı (ilk baştalardaki az gelir sorunu 5. gözden geçirmeye kadar devam etti)
Çalışma prensibi
DRAM genellikle hücre başına 1 kapasitör ve 1 transistörün kare şeklinde dizilmesiyle oluşur. Modern DRAM binlerce hücrenin enine ve boyuna dizilişiyle oluşur. Bir okuma işlemi sırasıyla şu şekilde meydana gelir: Seçilen hücrenin sırası aktif hale getirilir, kapasitör açılır ve o dizinin kapasitörü ile anlamlı satıra bağlanır. Anlamlı satır, saklanan sinyalin 1 mi 0 mı olduğunu ayırt eden anlamlı yükselteçe yönlendirir. Daha sonra uygun sütundaki kuvvetlendirilen değer seçilir ve çıkışa bağlanır. Okuma döngüsünün sonunda satır değerleri mutlaka okuma sırasında boşalan kapasitörde depolanmalıdır. Yazma işlemi satırın aktif hale getirilmesiyle ve değerlerin birbirine bağlanarak anlamlı sıraya yazılırken kapasitörleri istenilen değere yüklenmesini sağlayarak yapılır. Belirli bir hücredeki yazma işlemi sırasında bütün satır okutulur, 1 değer değiştirilir ve ondan sonra bütün satır tekrar yazılır.
Genellikle imalatçılar JEDEC standartlarına göre her satırın her 64 ms veya daha az sürede bir yenilenmesi gerektiğini belirtir. Yenileme mantığı genellikle DRAMlerle periyodik yenilemeyi otomatikleştirmek için kullanılır. Bu devreyi daha karmaşık hale getirir fakat DRAMin SRAMe göre daha ucuz ve daha fazla kapasiteye sahip olması nedeniyle DRAMi avantajlı kılar. Bazı sistemler her satırı 64 msde bir döngü ile yenileme yapar. Başka sistemler ise bir sıra belli bir zamanda örneğin 213 = 8192 satıra sahip bir sistemin yenileme oranı her bir satır için 7.8 μs (64 ms / 8192 sıra) yapar. Gerçek zamanlı bazı sistemler dış sayaca dayanan bir zamanlama ile hafızanın belli bir kısmını tazeleyerek sistemin geri kalanını yönlendirir, video malzemelerinde her 10-20 ms de meydana gelen düşey boşluk aralığı gibi. Bütün yöntemler belli bir çeşit sayaç içermektedir, bunun nedeni ise bir sonraki turda hangi sıranın yenileneceğini tespit etmektir. Bazı DRAM çipleri bu sayacı içerirken; diğer türler ise bu sayacı tutmak için dış yenileme mantığına ihtiyaç duyar(bazı koşullarda DRAM dakikalarca yenilenmese dahi DRAMdeki verilerin büyük bölümüne yeniden ulaşılabilir).
Hatalar ve Hata Düzeltme
Bilgisayar sistemi içindeki elektriksel veya manyetik parazitlenme bir DRAM bitinin kendiliğinden karşıt duruma dönmesine neden olur. Bazı araştırmalar DRAM yongalarındaki hataların çoğunun kozmik ışınlar yüzünden çıktığını göstermektedir. Bu bir veya daha fazla hafıza hücresinin içeriğini değiştirebilir ya da onları okuyup/yazan devrelere zarar verebilir. DRAM yoğunluğu arttıkça DRAM yongaları üzerindeki bileşenler küçülürken aynı zamanda çalışma voltajları düşeceği için, DRAM yongaları sıklıkla yüksek radyasyona uğrayacaktır. Bu, düşük enerjili parçacıkların hafıza hücresinin durumunu değiştirebileceğinden kaynaklanır. Diğer taraftan küçük hücreler daha küçük hedefler oluştururlar ve teknolojiyi SOInin yaptığı daha az duyarlı ve iyi tepki veren veya bunların tam tersi eğilimlere yöneltmiştir.
Bu problem içinde ekstra hafıza biti olan ve bunları kendi için kullanan hafıza kontrolleri olan DRAMler kullanılarak hafifletilebilir. Bu ekstra bitler eşlik kaydetmeye veya ECC kullanmaya yarar. Eşlik tek-bitlik hataları bulmayı sağlar. En çok kullanılan hata düzeltme kodu, Hamming Kod, tek bitlik hataları düzeltmeyi ve iki-bitlik hataları bulmayı sağlar.
Bilgisayar sistemlerinde hata bulmak ve düzeltmek bazen moda, bazen demode gözükür. Seymuor Cray neden bunu CDC 6600dan çıkarttığında eşlik bizim çiftçimizdir demiştir. Eşliği CDC 7600e dahil ettiğinde söylentiye göre birçok çiftçinin bilgisayar aldığını öğrendim demiştir. 486-dönemi PClerde genelde eşlik kullanılmıştır. Pentium-döneminden olanlarda ise çoğunlukla yoktu. Daha geniş bellek anayolu eşliği ve ECCyi alınabilir kılmıştır. Şu anki mikroişlemci hafıza kontrolleri genelde ECC desteklidir ama sunucu-tabanlı olmayan sistemler bu özellikleri kullanmazlar. Kullansalar bile yazılım kısımlarının bunları kullandıkları kesin değildir.
Çoğu modern PClerdeki hafıza kontrolleri 64 bitte bir bitlik hatayı bulup düzeltebilir, 64 bitte iki bitlik hatayı da sadece bulabilir. Bazı sistemler hataları verinin doğru olanını hafızaya yeniden yazarak temizler. Bazı bilgisayarlardaki BIOS ve Linux gibi işletim sistemleri bulunan ve düzeltilen hataları bozulmaya başlayan hafıza modüllerini belirleyebilmek ve daha büyük felaketleri önlemek için sayarlar. Maalesef çoğu modern PC eşlik veya ECC ye sahip olmayan hafıza modüllerine sahiptir.
Hata bulma ve düzeltme oluşabilecek hataların beklentisine dayanır. Hafıza bitindeki her sözcüğün başarısızlığı birbirinden bağımsızdır ve sonuç olarak iki eşzamanlı hata beklenmez. Bu durum hafıza yongalarının bir olduğu zamanlarda geçerliydi. Şu anda aynı yongada birçok bit var. Bu zaaf bir durum dışında genelde ortaya çıkmaz, yonga bozulması. Bir başka mantıklı uygulama ise parmak hesabıdır; ayda gigabayt başına bir bitlik hata beklentisi. Gerçek hata oranları gene ölçüde değişebilir.
Video Ram
VRAM, DRAMin grafik kartlarında kullanılan çift portlu versiyonudur. VRAMin, hafıza dizisi için kullanılabilecek, iki yolu ya da portu vardır. İlk port olan DRAM portu, DRAM tarafından erişilebilir. İkinci port; video portu sadece okuma işini yapar ve hızlı akışa sahip veriyi görüntüye aktarır. Video portunu kullanmak için, kontrol birimi öncelikle hafıza dizisinin sırasına göre, görüntülemek için bir seçim yapar ve bu seçim için DRAM portunu kullanır. Daha sonra VRAM bu sırayı içerideki bir kaydırmalı kayıt ediciye kopyalar. Kontrol birimi daha sonra DRAMi, ekran üzerinde nesneler çizmek için kullanır. Kontrol birimi kaydırma saati isimli bir birimi VRAMin video portundan besler her kaydırma saati dalgası, VRAMin kaydırmalı kayıt edicisinden, video portuna kadar, değişmeyen bir adres sırası ile verinin yeni parçalarını dağıtır.
Fast Page Mode DRAM (FPM)- hızlı sayfa modu
Hızlı sayfa modu (FPM) DRAM, sayfa modu DRAM, Hızlı sayfa modu bellek veya sayfa modu bellek olarak da bilinir. Sayfa modunda DRAMin bir sırası açık olarak tutulabilir, böylece sıra içindeki art arda okuma ve yazmada yüklenme öncesi ve sıraya geçişlerde gecikmelerden etkilenmez. Bu durum okuma ve yazma işlemleri sırasında sistemin performansını arttırmaktadır.
Statik Sütün sayfa modundaki değişkenin sütün adresine ihtiyaç duyulmamaktadır.
Nibble modunda ise bir sıra içindeki ardışık 4 konuma birden ulaşılabilinmektedir.
Window RAM (WRAM)
Window Ram ya da WRAM, ekran kartlarındaki modası geçmiş VRAM'lerin yerine geçmek üzere tasarlanmış yarı iletken bilgisayar hafızalarıdır. Samsung tarafından üretilip, Micron Technology tarafından satılan bu ramler, SDRAM ve SGRAM'ler yerlerini almadan önce, çok kısa bir süre piyasada durmuşlardır.
WRAM, VRAM'e benzer, çift-portlu dinamik ram yapısına sahiptir. Bu yapıda, bir paralel port, bir seri port bulunur ve hızlı blok kopyalama ve blok doldurma(pencere işlemleri olarak adlandırılan) ekstra özelliklere sahip bir yapıdır. Genellikle 50 MHz ile saatlenmiştir. PCI ve VESA Local Bus sistemlerinde en uygun veri transferini yapabilmeleri için 32-bit genişliğinde, sağlayıcı portu bulunmaktadır. Normal WRAMler, VRAM'lere göre %50 daha hızlıdır fakat %20 daha ucuza gelirler. Bazen Microsoft Windows işletim sistemine isim benzerliği yüzünden Windows Ram olarak anılsalar da, bunlar kullanılarak windowing işlemlerinin performansları arttırılabilir.
Bunlar ayrıca Matrox tarafından hem MGA Millenium hem de Millenium II ekran kartlarında kullanılmışlardır.
Extended Data Out (EDO) DRAM
EDO DRAM ile Hızlı sayfa modu (FPM) DRAM benzer özelliklere sahiptir ek olarak EDO DRAMde ulaşım döngüsü önceki döngüde aktif olan veri çıktısının saklandığı yerden başlayabilmektedir. Bu özellik komut işleme sırasında bir miktar daha geliştirilmiş hızlanma sağlamaktadır. 1993 yılında EDO DRAM, Hızlı Sayfa Modu DRAMe göre %5 daha hızlandırılmıştır. Tek-Döngü EDO tam bellek işlemlerini 1 saat döngüsünde yapma özelliğine sahiptir. Yoksa bir sayfa seçildiğinde aynı sayfadaki art arda gelen RAM ulaşımları 2 saat döngüsü yerine 3 saat döngüsünde olurdu. EDOların hızları ve kapasiteleri, PClerdeki daha yavaş L2 önbellekleri yerine geçmesini sağlamıştır. Tek-döngü EDO DRAM 1990ların sonlarına doğru video kartlarında çok popüler olmuştur. Düşük maliyeti olmasına rağmen, maliyeti yüksek olan VRAMe yakın bir performans vermiştir.
Burst EDO (BEDO) DRAM
Burst EDO standart EDOya bellekten tek bir istekle gönderilen verinin seriler ya da burst olmasına izin veren bir yeniliktir.1 burstte bellekteki 4 adresi işleyebilmektedir. Çipin içinde bulunan adres sayacıyla bir sonraki adres tutulur. Ayrıca BEDO bilgi iletimi ve ulaşımı sağlayacak döngüyü 2 bileşene ayırdı. Bellekten okuma işlemi sırasında, 1. bileşen bellekteki veriden çıktı bölümüne kadar veriye ulaşır. 2. bileşen ise veri yolunu bu mandaldan uygun mantık seviyesine getirir. Veri çıktı tamponunda olduğunda, genel EDO anlayışına göre daha hızlı erişim zamanı elde edilir.
BEDO DRAM, EDOya karşı eniyileme eklentileri yapmasına rağmen zamanla SDRAMe önemli yatırımlar oldu fakat BEDO RAM teknik olarak SDRAMe göre üstündür.
Multibank DRAM (MDRAM)
Multibank RAM, SRAMe karşı daha hızlı ve ucuz alternatif oluşturmak için ana belleğin sırayla birleştirme tekniğini ikinci düzey önbelleklerde uygulamıştır. Çip belleğini 256 kBlik küçük bloklara ayırmıştır ve işlemleri tek saat döngüsünde 2 farklı yığında yapmayı sağlamıştır. Bu bellek aslında Tseng Labs ET6x00 yonga seti (chipset) ile birlikte MoSys tarafından yapılan grafik kartlarında kullanılmıştır. Bu yonga seti tabanlı kartlarda 2.25 MBlık alışılmadık RAM büyüklüğü ile düzenlenmiştir çünkü MDRAMlerin değişik RAM büyüklükleriyle kolaylıkla istenileni yapabilmektedir. 2,25 MBlik büyüklük, 24-bit 1024768 çözünürlüğe izin vermektedir.
Senkronize Grafik Ram (SGRAM)
Grafik adaptörlerde kullanılan SGRAM, SDRAMin özel bir versiyonudur. Fonksiyonları, bit gizlemesi(diğerlerine tesir etmeden açıkça belirtilen bit düzlemine yazma) ve yazmayı durdurma (blokları tek renk hafızayla doldurma) gibi yöntemlerle ekler SGRAM, verileri tek tek yerine bloklar halinde alıyor ve işliyor. Bu sayede okuma ve yazma performansı önemli ölçüde artıyor. VRAM ve WRAMin aksine SGRAM tek-portlu hafıza birimine sahiptir. Fakat SGRAM bir kerede iki bellek sayfasını açabilir bu işlemde çift-portlu diğer video RAM teknolojileri simüle edilir. SGRAM ve SDRAM 1990ların sonlarında DRAMlerin en popüler türleri oldular. VE 2000lerin ilk on yılında da böyle devam edecek.
Senkronize Dinamik Ram(SDRAM)
Rambus DRAM(RDRAM)
Double Data Rate (DDR) SDRAM
Çift veri transferli bellekler SDRAMlerin geliştirilmesiyle 2000lerin başında PC belleklerde kullanılmaya başlandı. DDR2-SDRAMin ortaya çıkışı, DDR-SDRAMin başlangıçtaki küçük gelişimi(tek-çekirdekli CPU temelli) sonrası saat hızları ve komut işlemenin yüksek hızlara çıkmasıyla olmuştur. 2006 yılında ortaya çıkan çok-çekirdekli CPUların çabuk kabullenilmesiyle standart DDR2lerin endüstrisinde mevcut DDR-SDRAM fiziksel standartlarına göre değişmesi beklenilmektedir. Ayrıca 2007de geliştirilmesi öngörülen DDR3 ile birlikte DDR2 ve DDRın yerine DDR3ün geçmesi bekleniyor.
Pseudostatic RAM (PSRAM) (pseudo: yalancı static:durağan)
PSRAM veya PSDRAM dinamik RAM yenileme ve adres kontrol devresiyle durağan(statik) RAM(SRAM)'e benzer. DRAMin yüksek yoğunluğu ve SRAMin rahat kullanımını birleştirmiştir.
Bazı DRAM bileşenlerinin öz- yenileme biçimi (self refresh mode) vardır. Yalancı-durağan (pseudo-static) RAM işlemleri için olan işlemleri içerirken, bu biçim sıklıkla yedekteki biçime denktir. DRAM denetim birimi veriyi kaybetmeden güç tasarrufu için geçici bir süre işlemleri durdurur, PSRAM'lerde olduğu gibi ayrık bir DRAM denetim birimi olmadan işlemlere izin verilmez.
RAM çeşitleri
Bellekler
Amerika Birleşik Devletleri icatları