Bellek Kontrol ve Veri İşaretleri

Kontrol ve Veri İşaretleri

Sıra, bellek modülümüze ait giriş ve çıkış işaretlerini incelemeye geldi. Modül (örneğin DIMM) anakarta üzerindeki belli sayıda iğneden oluşan bir port aracılığıyla bağlanıyor. DIMM’lerde 168 iğne varken bu sayı SIMM’ler için 144. Bu iğnelerin her birinin taşıdığı elektriksel işaretler, modül üzerindeki sinyal hatları üzerinden bellek yongalarının iğnelerine taşınıyor. Bu işaretler, besleme ve toprak gerilimlerinin yanısıra adres ve veri işaretlerini, saat işaretini, bellek yongalarını kontrol eden komutları taşıyan işaretleri ve de modül üzerindeki SPD yongasından gelen verileri içeriyor. Şimdi bu işaretlere ve ne

anlam taşıdıklarına bakalım.

ADRES İŞARETLERİ: Adres işaretleri, anlaşılacağı üzere, adres bilgilerini bellek yongaların taşımaktan sorumlu. Bilgisayar dünyasında, işaret, daha büyük bir bütünün parçasıysa ( mesela bir byte’ın) genellikle bit kelimesiyle anılır. Bu sebeple, bu bölümde olduğu üzere, yeri geldiğinde işaret yerine bit kelimesini kullanacağız. Tekrar hatırlayalım: Bir işaret ya da bir bit, mantıktaki 0 ya da 1 mantık değerlerinden birini taşır. Adresimizi bir bütün olarak ele alırsak, adresi oluşturan her işarete adres biti dememiz daha doğru olacaktır. Adresi oluşturan bit sayısı belleğin kapasitesine göre değişik değerler alır. Her bir bit, 0 ya da 1 olmak üzere iki değeri temsil edebiliyorsa, birlikte kullanıldıklarında:

Bit Sayısı

Temsil Edilen Değer Sayısı

Temsil edilen değerler

1-bit

2^1 = 2

0,1

2-bit

2×2 = 2^2 = 4

0,1,2,3

3-bit

2x2x2 = 2^3 = 8

0,1,2,3,4,5,6,7

4-bit

2x2x2x2=2^4 = 16

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15

N-bit

2x2x2x…x2 (N tane)=2^N

0,1,2,3,4,…,(2^N-1)

farklı değeri temsil edebilir. Buna göre, adresimizin, belleğimizdeki 2 byte’ın yanyana gelemesiyle yani 16-bit’ten oluşan çift-byte’ları işaret ya da temsil ettiğini varsayarsak ve toplam kaç çift-byte’ımız olduğunu bilirsek, kaç tane adres bitine ihtiyaç duyduğumuzu kolayca bulabiliriz. Örneğin, belleğimiz 256 Mega Byte (MB) ise, yani 256/2=128 Mega Çift-Byte ise ve 1 Mega’nın 2^20 (2 üzeri 20) demek olduğunu biliyorsak, belleğimizde 128*(2^20)=2^27 adet çift-byte var bulunduğunu söyleyebiliriz. Yukarıdaki tablomuza göre N sayısının yerine 27 geliyor, dolayısıyla adresimiz 27 bitten meydana geliyor. Bu 27 bitin bir kısmı bankaları, bir kısmı bankalardaki satırları, bir kısmı da bankalardaki sütunları adreslemek için kullanılıyor. Pratik bir bilgi olarak bellek yongalarının genellikle 4 banka olarak tasarlandığı düşünülürse ve 4=2^2 olduğuna göre bankaları adreslemek için 2 bit gerektiği hesaplanabilir. Geriye kalan 25 bit satır ve sütun adreslemesi için kullanılıyor. Varsayalım ki her banka, 8192 (=2^13) satırdan ve 512 (2^9) sütundan oluşuyor. Bu demek oluyor ki 13 bit satır adreslemesi, 9 bit de sütun adreslemesi için ayrılmış durumda. Buraya kadar 2 + 13 + 9 = 24 bit kullanılmış durumda ve elimizde 3 bit kaldı. Bu üç bit ise bize modülümüz üzerinde 2^3=8 adet bellek yongası bulunduğu bilgisini veriyor.

VERİ İŞARETLERİ:Veri işaretleri, daha doğrusu veri bitleri, bellek yongalarının adres bitleriyle gösterilen hücrelerine yazılır ya da bu hücrelerden okunur. Yukarıdaki örneğimize kaldığımız yerden devam edecek olursak, her bir bellek yongası, 24 bitin kullanılmasıyla adreslenen 16-bitlik çift-byte bilgisini dışarı veriyor ya da dışarıdan alıyor ve de elimizdeki 8 yonga bir araya gelerek 8*16-bit=128-bit’lik veriyi modülün 144 bitlik portunun bir parçası olarak oluşturuyor.

KOMUT İŞARETLERİ: Bellek yongaları, çeşitli amaçlar için belirlenmiş belli komutları işleme yeteneğine sahipler. Sadece adresi alıp veriyi okutan ya da yazan yongalar değiller. Bu komutların belli başlı olanlarına burda kısaca değinmek konumuzun bütünlüğü açısından sanırız yararlı olacaktır.

NOP (No OPeration=Etkisiz Komut):Yonganın herhangi bir işlem yapmadan beklemesi gereken durumlarda verileblecek yeni komutların yonga tarafından işlem sırasına alınması engellenir. Komut sırasında işlem görmekte olan diğer komutlar etkilenmeden tamamlanır.

DESELECT (Seçmeyi Bırak):Bu komutla işlem halindeki bellek yongasının seçilmesi durdurulur, yonga askıya alınır ve başka yeni komut kabul etmeyeceği bir konuma getirilir. Komut sırasında işlem görmekte olan diğer komutlar etkilenmeden tamamlanır. İşlevsel olarak NOP komutuna benzer.

ACTIVE (Aktive Et):Adreste belirtlen bankayı seç ve ilgili satırı aktif hale geçir.

READ (Oku):Adreslenen banka ve sütun seçilir, ardışıl okuma (burst read) başlatılır.

WRITE (Yaz):Adreslenen banka ve sütun seçilir, ardışıl yazma (burst write) başlatılır.

PRECHARGE (Ön Yükleme):Bit hatlarının (boruların) okuma ve yazma öncesi tamamen yüklenmesini (suyla doldurulmasını) hatırlayalım. Bu işlem sonrasında bir ya da daha fazla bankadaki adreslenen ve işleme alınmak üzere olan satır iptal edilmiş oluyor.

AUTO PRECHARGE (Otomatik Ön Yükleme): Ayrıca bir Precharge komutu vermeye gerek kalmaksızın otomatik olarak ve belli aralıklarla bit hatlarının ön yüklemesinin yapılmasını sağlar.

BURST TERMINATE (Burst Bitir): Devam etmekte olan bir ardışıl (burst) okuma ya da yazma işlemi, belirtilmiş olan burst uzunluğunun tamalanması beklenmeden iptal edilir.

SELF-REFRESH ya da AUTO-REFRESH (Kendini Tazele):Modül güç tasarrufu modundaysa ve herhangi bir saat sinyali verilmese bile sakladığı verinin kaybolmadan korunnmasini sağlar. Autorefresh ise belli aralıklarla saklanılan verinin otomatik olarak tazelenmesini sağlar ama farklı olarak bir saat işaretine ihtiyaç duyar.

LOAD MODE REGISTER (Mod Yazmacını Yükle):Yongayla ilgili bilgilerin ve komutlarla ilişkili verilerin (burst uzunluğu ya da kendini otomatik tazeleme aralığı gibi) mod yazmacına yüklenmemesi için kullanılır

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir