Commodore sayı 17, sayfa 48

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 48

bellekteki

bilginin yazılması ve silinmesi tamamiyle elektrik akımıyla ve çok süratli olarak gerçekleşen bir işlemdir.

ler voltaj değeri olarak saklanır. Bu sayede statik bellekler besleme gerilimi kesilmediği müddetçe herhangi bir ek işleme gerek kalmadan içlerindeki bilgileri saklarlar.

Dinamik bellekler ise MOS transistör kapılardan oluşurlar ve kondansatörün şarjı ilkesine göre çalışırlar.

Bir R/W belleğin daha iyi anlaşılması için şekil 1'deki 8 baytlık (8*8 bitlik ya da başka bir deyişle 64 adet bellek hücreli) teorik bir bellek diyagramı üzerinde bilginin nasıl yazıldığını ve okunduğunu açıklayalım. Teorik belleğimiz 8*8 bit matris düzenine sahip olduğundan tüm kayıt sıralarını seçmek için bize 3 adres hattı yeterlidir. Her hat 0 Volt ya da +5

Volt olarak maksimum 2 farklı değer alabileceğinden 3 adres hattı toplam 8 farklı değer alabilir (2'nin 3'üncü kuvveti 8'e eşittir). Veri hatları ise seçilmiş herhangi bir bellek hücresinin taşıdığı değerin, çevre birimlere aktarılmasını ya da çevre birimlerden gelen bilginin seçilmiş bellek hücresine aktarılmasını sağlar. Minimum donanımlı bir sistemde bilgi alışverişinin bir ahenk içinde olması için belleğimizde iki tane de kontrol hattımız vardır. Bunlar R/W (Read-Write oku-yaz) ve CS (Chip Select — çip seç) sinyalleridir. R/W sinyali yüksek iken (+5V) okuma işlemi, alçak iken (0V) yazma işlemi yapabiliriz. CS sinyali ise alçak olmadığı müddetçe bellek aktif değildir. Başka bir deyişle bellekle hiçbir bilgi alışverişi yapılamaz.

Şimdi bir bilgi yazma işleminin nasıl gerçekleştirildiğini adım adım görelim. Mikroişlemcimiz, Commodore 64'ün mikroişlemcisi olan 6510, yazacağımız bilgi de hex EA olsun. Hex EA değeri 6510'un komut kümesinde “hiçbir işlem yapma” anlamına gelen “NOP” (No Operation) komutunun kodudur. Bu kodu mikroişlemcimiz belleğimizin en son adresine (8. bayta) yazması için adres hattına ikili düzende 111 değerini yazması gerekir. Böylece A0, A1 ve A2 adres hatları +5 Volt değerini alır. Ardından D7..D0 veri hatlarına 1110 1010 (=hex EA) değeri konur ve R/W kontrol hattı 0 Volta çekilerek bilginin akış yönü tespit edilir. Bu adımların sonunda NOP komutu belleğin en son adresine yazılmış olur. Okuma işlemi ise biraz daha basittir. Mikroişlemcimiz okumak istediği adresin değerini A0, A1 ve A2 adreslerine yazması ve R/W kontrol hattını +5 Volta çekmesi bilginin D7..D0 veri hatlarında görünmesi için yeterlidir. Tabii tüm bu işlemlerin mümkün olabilmesi için belleğin aktif konumda yani CS sinyalinin alçak seviyede olması gereklidir. Şema 2'ye bakarak yazma ve okuma anında örnek belleğimizin bacaklarındaki sinyallerin konumlarını görebilirsiniz.

ADRES (917.1? 11 Va 4 10 1 g|/: A2 e - : B € Jig Al 1 1 1 1 g | BİNE ça | bişi 1 |» ö ö16 a ER g | GİRİŞ — ÇIKIŞ KONTROL | | YA A A AA ŞEKİL: 1 D7 D6 D5 D4 D3 D2 Dİ DE

ŞEKİL: 2

DİNAMİK VE STATİK BELLEKLERİN KARŞILAŞTIRILMASI

Dinamik belleklerin, statik tiplere göre avantajı, bir bitlik bilgiyi saklamak için gereken elektronik eleman sayısının daha az olması ve bunun sonucu olarak da daha küçük alana (eşdeğer statik belleğe göre 1/5) daha fazla bilgi hücresi (memory cell) yerleştirilebilmesidir. (Şekil 3'e bakarak çeşitli belleklerde kullanılan devreleri ve eleman sayılarını karşılaştırabilirsiniz.) Dinamik belleklerin dezavantajı ise, saklama kondansatöründeki yükün kaçak akım sebebiyle azalması ve bilginin kaybolmasıdır. Çünkü lojik bilgi, kondansatörün uçlarındaki gerilimin yüksek veya alçak olmasına göre tespit edilir (Şekil 3c). Bu problemi gidermek için birkaç milisaniyede bir her bilgi hücresi tek tek okunur ve aynı bilgi tekrar yazılır. Bu metoda tazeleme (refreshing) işlemi denir ve ek lojik kontrol devreleri gerektirir.

Klavyeyle gezinmek için ← ve → tuşları.