Bilgisayar Genel

RAM (Random Access Memory – Rastgele Erişimli Bellek)

Tarafından yazılmıştır Halil Durmuş

Verilerin geçici olarak tutulduğu bilgisayar bileşenidir. İşlemci bir programı çalıştırabilmesi için mutlaka o programa ait kodların RAM hafıza üzerinde olması gerekmektedir. CPU’nun ihtiyaç duyduğu kodları sakladığı için hızlı ve kapisetisinin çok olması performansa etki eder. Rastgele erişimli olması sayesinde belleğin sıra gözetmeksizin istenen adresindeki veriler okunup, yazılabilir. Disk, CDROM ve I/O portlarından gelen ve giden veriler geçici olarak RAM üzerinde işlenmek üzere tutulur.

RAM’ler üzerindeki bilgiyi tutabilmeleri için elektrik enerjisine ihtiyaç duyarlar. Elektrik enerjisi kesildiğinde üzerlerindeki verilerde kaybolur. Örneğin bir kelime işlem programını (word, lotus) kullanırken yazılan her şey RAM’e aktarılır. Kullanıcı onu diske kaydedene kadar RAM de kalır. Şimdi 1 sayfa yazılmış ve diske kaydedilmemiş farz edelim. Bu bir sayfa RAM de tutulacaktır. Tam bu sırada elektrik kesilse yazılan her şey (1 sayfa) kaybolacaktır. Önemli RAM üzeriticilerinden Kingston, Hynix, Samsung ve Twinmos sayılabilir.

Geçici bellek hafıza çeşitlerinden Statik RAM ve Dinamik RAM vardır.

Statik RAM (SRAM)

Daha hızlı olup flip flop yapılardan oluşur. Statik RAM’lerde her bir hafıza gözü (bir bit depolayabilen) en az altı adet transistor yapıdan oluşmaktadır. Bu yüzden bu RAM’ler daha pahalıdır. İşlemci üzerindeki bazı cache belleklerin yapısını oluşuturur.

Dinamik RAM (DRAM)

Her bir hafıza hücresi, bir adet yarı iletken kondansatör ve transistorden meydana gelmiştir. Kondansator bilgi depolar, transistor (MOS) ise bilginin okunması ve değiştirilmesi için kullanılır. Elektrik yükü prensibi ile çalışır. Veriler elektrik yükleri ile temsil edilerek hafızada tutulur. Kondansatörde elektrik yükü varsa 1 yoksa 0 kabul edilir. Kondansatörler iki plaka arasına yalıtkan malzeme konulmasıyla elde edilir. Plakaların alanının (A) büyük olması ve plakalar arası uzaklığın (d) küçük olması, depolayacağı elektrik yükü miktarını arttırır. Kondansatörler uçlarına gerilim uygulandığında sığası kadar yükü depolar. Uçlarına bir yük bağlandığında ise sahip oldukları elektrik yükünü boşaltırlar. Sığa ne kadar büyükse, o kadar uzun sürede deşarj olurlar. Bir kondansatör uçlarına herhangi bir yük bağlanmasa da zamanla boşalır.

Yarı iletken malzemelerden yapılan ve boyutları çok küçük olan kondansatör yapılar saniyede yüzlerce kez, yapıları gereği, boşalmaktadır. (üzerindeki veriyi kaybetmektedir. Fakat hafıza kontrol devresi (memory controller) yardımıyla hafıza hücresindeki yük, boşalmadan tekrar şarj edilirler. Bu yapılarından dolayı dinamik bellek olarak adlandırılırlar. Yapılarına göre değişmekle beraber DRAM’ler her bir kaç ms’de bir tazelemektedir (refreshing). Aşağıda bir kondansatör yapısı, bir bitlik veri depolayan DRAM hafıza hücresi ve genel RAM yapısı gösterilmiştir.

RAM, her bir hücresi bir transistor ve kapasitörden oluşan 2 boytulu (satır ve sütunlardan oluşan) matris yapıya sahiptir. Hücreler şarj edilirken hücre hücre değil, satır satır edilir. Verileri tazeleme oranı (refresh rate) satır bazında değerlendirilir. Örneğin 2K tazeleme oranına sahip bir bellekte 2048 adat satır tazeleniyor demektir.

SDRAM hafızadan okuma yaparken, hafıza kontroller, okumak isteiği satırın adresini, adres hattına koyarak RAS sinyalini gönderir. Bu aşamada RAS to CAS süresi kadar beklenir. Ardından hafıza kontroller, sütun adresini adres hattına koyarak CAS sinyalini gönderir. CAS Latency (gecikme) kadar bekledikten sonra okunan veriler çıkışa aktarılır. RAM modüllerini kullanan yapıya Memory Controller (Hafıza Kontrolür ) denmektedir. Bu yapı eski sistemlerde anakart üzerinde kuzey köprüde yeni sistemlerde ise işlemci üzerinde bulunmaktadır.

Şimdi RAM hafıza yapıları ile ilgili önemli yapıları, tanımlamaları ve parametre isimlerini öğreneceğiz.

1-Senkronizasyon Yapısı (Zamanlama – Timing)

Hafıza senkronizasyonunu ifade eden 4 parametre vardır. RAM’in performansını gösteren bekleme süreleri aşağıdaki formatta sunulur. Rakamların düşük olması RAM’in hızlı olduğunu göserir. Aşağıda sıkça geçen precherge ifadesi okuma ve yazma öncesi hafıza gözlerinin şarj edilmesi için kullanılan bir terimdir.

A – CAS (Column Adress Strobe) Latency (Sütun Adresleme Darbe Gecikmesi): SDRAM yapısındaki her bir hücrenin adresi satır ve sütun numaraları ile ifade edilir. SDRAM üzerinde istenen bir sütunun adreslenmesi için harcanan darbe işaret (clock cycde) sayısıdır. Gecikmeyi ifade eder. CL2 (CAS2) ifadesi, 2 saat darbesinde, CL3 ( CAS3), 3 saat darbesinde gerçekleştiği anlamına gelmektedir. Gecikme ne kadar az ise bellek o kadar hızlıdır.

RAS (Row Adress Strobe) Latency ( Satır Adresleme Darbe Gecikmesi): CAS gibi SDRAM üzerinde istenen bir satırın aktif olabilmesi için gereken darbe işaret sayısıdır. Düşük değere sahip olması belleğin hızlı olduğunu gösterir.

CAS zamanlaması RAS ile beraber düşünüldüğünde kısaca RAM’e gönderilen bir komutun icra süresini ifade eder. Örneğin herhangi bir adresin okunması için gönderilen komut anı ile okunan verilerin modülün çıkışına gelene kadar ki geçen süredir. Bu gecikme aşağıda grafik üzerinde gösterilmiştir.

B – RAS to CAS: RAS ve CAS işlemleri arasındaki bekleme darbe miktarını gösterir. Düşük değere sahip olması iyidir. Aşağıda bu gecikme grafik üzerinde gösterilmiştir.

C – RAS Precharge: İki RAS komutu arasındaki zaman farkını saat işareti cinsinden gösterir. Yani aktif olan hattın pasif yapılıp diğer istenen diğer hattın aktif yapılması arasındaki geçen süredir. Precharge ve aktif komutları arasındaki darbe işareti cinsinden zaman farkını gösterir. Precharge komutu RAM’i meşgul gösterirken aktif komutu ise RAM’in okuma yazmaya açık olduğunu gösterir. Precharge durumundaki bir hafıza gözü okuma ve yazma işlemlerine tepki göstermez. Düşük değere sahip olması iyidir.

D – Active to Precharge: Aktif ve precharge durumları arasındaki toplam geçen süredir ve maksimum değeri aşağıdaki eşitlikle bulunur. Aktif komutu verildikten sonra RAS süresi geçene kadar bir başka precharge komutu verilemez. Bu parametre başka bir satır okunmak veya yazılmak istendiğinde karşımıza çıkar. Düşük değere sahip olması iyidir.

Active to Precharge = CAS + RAS to CAS + RAS Precharge

2- Hata Düzeltme

Bazı durumlarda DRAM yongalarının hafıza kontrolöre transfer ettiği verilerde bozulmalar olabilmektedir. Bu durumlar, yüksek hız ve boyutlarda veri transferi ve sıcaklık nedeniyle meydana gelir. RAM üzerindeki verilerin tutarlılığı belirlemek için çeşitli yöntemler geliştirilmiştir. Bazı RAM’ler üzerindeki verilerin tutarlılığını belirleyen mekanizmalara sahiptir. Bu tip belleklere özellikle sunucularda ihtiyaç duyulur. Hata sezme iki şekilde yapılır.

A – Paratiy(Eşlik) Bit: RAM üzerindeki her bit 8 bite (okted) karşılık bir paratiy biti vardır. Veri içerisindeki 1’lerin sayısı tek ise 1 değilse 0 değeri alır. Bu durumda verilerin tutarlılığı sınanmış olur. Fakat bu yapıda veri düzeltme yoktur.

B – ECC Modülleri: ECC = Error Correction Coding/Hata Düzeltme Kodlama anlamındadır. Bu yapı hata sezme ve düzeltme işlemlerini yapabilir. Bunun için birden fazla kontrol bitine ihtiyaç duyar.

Not: RAM üzerindeki aynı boyutlu chip sayısına bakarak o RAM’in ECC yapıya sahip olup olmadığına karar verilebilir. Eğer sayı 3’e (bazen 5) bölünebiliyorsa o RAM ECC yapıya sahiptir aksi halde değildir. Registered konusunda verilen RAM modül üzerindeki yongaları sayınız.

3- RAM Modül Yapıları

A – SIMM (Single In-line Memory Modüle): Bu yapı günümüz RAM tasarımlarında kullanılmamaktadır. RAM bağlantı pinlerinin (bağlantı iletkenleri ), RAM kartının sadece tek yüzünde olduğu veya iki yüzdeki karşılıklı pinlerin aynı iletkenin parçası olduğu RAM devre kartı tasarımıdır. 32 bit veri genişliğine sahiptir. Bu yapıda pin sayısı tek yüzde olduğu için çoklu pin yapılarını desteklememektedir. Pin sayısı gelişim süresince 72 de kalmıştır.

B – DIMM(Dual In-Line Memory Modüle): Günümüzde kullanılan hemen tüm RAM modelleri bu modül yapısındadır. RAM pinleri (bağlantı iletkenleri), RAM kartının her iki yüzüne de bağımsız iletken yolları ile yerleştirilmiştir. Bu RAM’ler daha çok bacak bağlantısına sahiptir. Dolayısıyla veri genişliği de büyüktür(64 bit). DDR3 SDRRAM yapısında 240 pin bulunmaktadır.

4- Registered/Unregistered RAM Yapıları

Anakartlar da RAM için ayrılan genelde 4 kanal bulunur. Bu sayıdan fazla olmaları (8,9,12,18) sinyal iletimi açısından sıkıntılar doğurmaktadır. Bunu aşmanın yolu sistemde registered RAM ler kullanmaktır. Registered RAM ler hafıza kontrolör üzerine daha az elektrik yükü etkisi oluşturarak çoklu hafıza yapıları ile istikrarlı çalışma ya imkan verirler. Eski isimlendirilmesi ile buffered/unbuffered olarak ta isimlendirilmektedir. Registered RAM ler, üzerinde küçük boyutlarda hafıza yapılarına sahiptirler.

RAM üzerindeki chip sayısına bakarak o RAM’in Registered olup olmadığına karar verilebilir. Registered RAM’ler üzerinde diğerlerinden farklı yerleşimle orta kısımlarda fazladan bir chip bulundurur.

Registered Ram

5-Çoklu Kanal

Birden fazla RAM belleği eş zamanlı çalıştırma yöntemidir. Bant genişliğini artırmak amaçlı oluşturulmuş bellek kontrolör mimarisi olup, bu yapı bellek mimarisine ait değildir. Dolayısı ile belleklerde bu özellik aranmamalıdır. Günümüzde tek, çift, üçlü ve dörtlü kanal yapı bulunmaktadır. Tekli kanal yapı zaten bilgisayar mimarisinde çoklu kanal yapı oluşturuluna kadar kullanılan geleneksel yapıdır. Çoklu kanal yapılarını kullanabilmek için anakartın bu özelliği taşıması gerekmektedir. Örneğin çift kanal yapıya sahip bir anakarta iki adet 64bit kanaldan yararlanılır.

Çoklu kanal yapıya sahip anakartlar da eşleşen hafıza yuvaları benzer renge sahiptir. Bu ayrık yapı sayesinde her bir bellek modülü, hafıza kontrolor tarafından işlenerek bant genişliği artırılmış olur.Bu yapıdan yararlanmak için RAM’lerin farklı kanala ait slotlara takılmaları gerekmektedir. Anakart üzerindeki farklı kanala ait slotlar arasındaki uzaklık, aynı kanala ait slotlar arasındaki arasındaki uzaklıktan daha fazladır. Genelde aynı renkli slotlar farklı kanallara ait eşleşen çift kanal slot yapılarıdır.

6- Çeşitli Tanımlamalar

SPD(Serial Presence Detect): RAM üzerinde bulunan ve içerisinde RAM le ilgili zamanlama, yapı(ECC li mi? Değil mi? Registered mi? Değil mi?) ve frekans parametrelerini tutan EEPROM hafıza yapısıdır. Amaç bilgisayar açıldığında BIOS ‘a RAM’i tanıtmaktır. Kullanıcı RAM zamanlama değerlerini Auto olarak seçerse RAM, fabrikanın belirlediği hızlarda çalışır.

Bank: Hafıza soket veya modüllerinden oluşan sanal bir birimdir. Bir bellek 2 veya daha fazla banka sahip olabilir. Günümüzde bellekler daha çok 4 banka sahiptir. Hafızada bir bilgiye ulaşmak için bank, satır ve sütun adreslerinin bilinmesi gerekmektedir. Burada amaç eş zamanlı olarak bir bankta veriler işlenirken diğer bank aynı anda tazelenebilmektedir. Bu işlem bant genişliğini ve performansı artırmaktadır.

Bursting: Hafızaya ardışık veri aktarımı veya hafızadan ardışık veri transferi sırasında her bir hafıza gözünün okunması veya yazılması için onay verilmesini beklemeden belirli uzunluktaki (burst length) verinin transferini gerçekleştirmeyi sağlar. Bu teknikle performans artmış olur.

Prefetch Buffer: RAM’in her bir saat darbesinde hafıza hücre dizisinden, I/O geçici hafızasına (buffer), transfer ettiği bit miktarıdır. Diğer bir ifade ile her bir saat darbesinde, veri hattından transfer edilen bit miktarıdır.

7- RAM Takviyesi

Günümüzde SDRAM, DDR SDRAM, DDR2, DDR3 SDRAM yapıda hafıza ürünleri kullanılmaktadır. Anakart hangi RAM tiplerini destekliyorsa ona RAM seçimi yapılmalıdır.

Bilgisayarda RAM ihtiyacı olduğunda işletim sistemi tarafından HDD üzerinde RAM gibi kullanılmak üzere virtual memory(sanal disk) diye adlandırılan bir alan ayrılır. RAM üzerine alınarak işlenirler. Bu durum tüm açık uygulamalarda gözle görülür bir yavaşlamaya hatta donmalara neden olur.

8- RAM Çeşitleri

A- SDRAM (Synchronous Dynamic RAM)

Anakart bus yapısı ile senkron çalıştığından bu ismi almıştır. SDRAM yapısından önce kullanılan FPM ve EDO DRAM çeşitli asenkron yapılı olup kendilerine has ayrı bir saat frekansına sahiptiler. Asenkron yapıda senkronizasyonun sağlanması veri aktarımının başlaması için gerekli olduğundan senkronizasyon için ekstra bir zaman gerekli idi. SDRAM’ ler 64 bit veri genişliğine sahiptir.

SDRAM (Synchronous Dynamic RAM)

Günümüz bellek yapılarından en az bant genişliğine sahiptir. DDR çeşit RAM’lerin temelini oluşturur ve onlardan en az iki kat yavaş çalışır. Dinamik bellek yapısındadır. 1n prefetch yapısındadır. Çalışma frekansları aşağıda gösterilmiştir.

SDRAM (Synchronous Dynamic RAM)

B- DDR SDRAM

64 bit veri genişliğine sahiptir. Veri transferi için, saat(clock) işaretinin alçaları ve yükselen kenarlarını kullanan yapıya sahip, SDRAM çeşididir. Dolayısıyla SDRAM’e göre iki kat hızlıdır. 2n prefech uzunluğuna sahiptir. Bu yapı aşağıda gösterilmiştir. Alçalan ve yükselen kenarlara dikkat ediniz.

DDR SDRAM

C- DDR2 SDRAM

64 bit veri genişliğine sahiptir. DDR SDRAM ile aynı yapıda olup aynı saat hızında çalışırlar. Aralarındaki fark latency (gecikme) değerinin DDR da daha büyük olması ve daha fazla güç gereksinimdir. Ayrıca burada belleğin I/O bus frekansı DDR’a göre iki katı daha fazla çalışmaktadır. 4n prefetch uzunluğuna sahiptir.

DDR2 SDRAM

D- DDR3 SDRAM

64 bit veri genişliğinde ve DDR yapıya sahiptir. Fakat en az güç gereksinimine sahiptir. DDR2 ye göre dahili geçici hafıza miktarı büyüktür. DDR3’ün I/O bus frekansı DDR2′ ye göre iki katı hızda çalışmaktadır. 8 prefetch uzunluğa sahiptir.

DDR3 SDRAM

E- DDR4 SDRAM

Düşük çalışma gerilimine (1.2V) sahip, 64 bit genişliğinde DDR3’e nazaran iki kat yüksek bant genişliği sunan RAM çeşididir. Düşük gerilime sahip olması daha az ısınacağı anlamına gelmektedir. Ayrıca mobil cihazlarda daha uzun pil ömrü anlamına gelmektedir. Masaüstü modellerin 288 pini, dizüstü modellerin 288 pini, dizüstü modellerin ise 256 pini vardır.

DDR4 SDRAM

RAM Tipleri Arasındaki Yapısal Farklılıklar

  • Düşük güç gereksinimi
  • Yüksek hız ve band genişliği
  • Yüksek yoğunluk sebebiyle daha yüksek veri kapasitesine sahip RAM modülleri (2GB-16GB) ürütmek mümkündür. Yanı aynı anda daha fazla hafıza sığdırabilmektedir.
  • 4’lü kanal yapıyı desteklemektedir.
  • Entegre veri güvenliği
DDR1-DDR2-DDR3-DDR4

RAM Parametreleri

1.Kapasite

Bir bilgisayarda performansı artırmanın en temel kuralı ne kadar RAM o kadar performans demektir. Ayrıca benchmark (performans) testlerinde işletim sistemi ve veritabanı yönetim sistemleri daha fazla RAM miktarlarında disk erişiminin azaldığı ve hafızaya daha fazla verinin alınarak kullanıldığı görülmüştür. Böylece çalışan veya çalıştırılacak olan uygulamaların tepki süresi kısalır.

2.Hız

Bir işlemci RAM üzerindeki veriye ihtiyaç duyduğunda hafıza kontrol devresine(MCH) istekte bulunur. MCH bu isteği RAM’e aktarır ve MCH veri okunmaya hazır olduğunda bunu CPU ‘ya rapor eder. CPU-MCH-RAM-MCH-CPU arasında gerçekleşen bu işlemler RAM’in ve veriyolunun yapısına göre değişiklik gösterebilir. RAM’in aldığı bir talebe karşılık vermesi için geçen süreye Access Time denir.

3.Bant Genişliği

Band genişliği yüksek olan RAM çeşitleri daha yüksek performans sağlar. RAM çeşitleri kısmında tablolarda belirtilen bant genişliklerine bakabilirsiniz.

4.Soğutucu

Bazı RAMlerde ısınmaya karşı üzerlerinde çoğunlukla pasif veya aktif soğutucu bulunmaktadır. Veya isterseneniz ayrıca RAM soğutucusu alıp mevcut RAm üzerine takip edebilirsiniz. Bir donanım birimi ne kadar yoğun kullanılırsa o kadar fazla ısınır. Sıcaklık tüm elektronik elemanların çalışmasını negatif yönde etkiler ve düşük sıcaklıklarda elektronik devreleri daha kararlı çalışır. Dolayısı ile sunucularda ve oyun, grafik, çizim amaçlı kişisel bilgisayarlarda, RAM’lerin soğutuculu olması performansa katkı sağlayacaktır.

Kaynakça: pcbtechno, Wikipedia, Alastyr, Britannica, Crucial, Avast

Yaşar, E. (2018).Bilgisayar Donanımı. Bursa: Ekin Basım Yayın Dağıtım (70-87)

Yazar hakkında

Halil Durmuş

1996 yılının Mart ayında Trabzon’da dünyaya geldim. Atatürk Üniversitesi, Bilgisayar Mühendisliği mezunuyum. Web sitemde ilgimi çeken konuları araştırarak yazılar paylaşıyorum.

Yorum Yap