Bilgisayar Nasıl Veri Saklar?
Bilgisayarda veriler kalıcı ve geçici olarak saklanırlar. Geçici saklanan veriler bilgisayarın çalışması için sağlanan güç kesildiğinde kaybolur. Bu geçici verileri sakladığımız yapılardan biri de flip-flop'lardır. İki adet VE DEĞİL (NAND) kapısıyla bu yapıyı kurabiliriz. Buna SR flip-flop diyoruz. S(Set) yani kurmak veya ayarlamak, R(Reset) sıfırlamak anlamlarına geliyor.
Bu şemada S ve R uçları pozitif olarak tutulduğu zaman Q ve Q' çıkış uçlarında herhangi bir değişiklik görülmez yani önceden neyseler o şekilde durumlarını korumaya devam ederler. Q'nun durumunu 1 yapmak için R ucu pozitifteyken S'nin giriş ucunun bir kere negatif yapılması yeterli olur yani S butonuna bir kere basılır ve çekilir. Q'nun durumunu 0 yapmak için de R ucunun S ucu pozitifteyken bir kereliğine negatif yapılması yeterlidir. Bu şekilde Q ucunu istediğimiz zaman 0 veya 1 yapabiliriz. Sakladığımız bu veri 1 bit'tir. 8 adedi bir araya getirirsek 1 byte'lık veri saklayabiliriz.
Flip flop sadece VE DEĞİL (NAND) kapısıyla değil VEYA DEĞİL (NOR) kapısıyla da yapılabilir. Bu durumda S ve R girişlerinin negatifte tutulması gerekir.
- Flip floplar ilk enerji verildiğinde Q'nun durumu belirsizdir 0 veya 1 olabilir.
Bilgisayarlarda flip flopların senkronize bir şekilde durumlarını değiştirmelerini isteriz. Örneğin bir butona bastığımızda tüm flip floplar aynı anda Q durumlarını değiştirsinler dersek şu şekilde bir devre oluşturmalıyız.
S ve R girişlerini sadece bir giriş olarak ayarlayabiliriz. Bu durumda oluşturacağımız devreye Data Type Flip Flop diyeceğiz. DATA butonu basılı iken ENABLE butonuna basıldığında Q çıkışı 1 olur. DATA butonu basılı değilse ENABLE butonuna basıldığında Q çıkışı 0 olur. Böylece artık girişte belirlediğimiz veriye göre Q çıkışını kontrol edebiliyoruz.
Bilgisayarlarda işlemlerin senkronize bir şekilde gerçekleşmesi için bir saat darbesi (CLOCK) vardır. Bilgisayar saatin her darbesinde bir işlem gerçekleştirir. Şimdi de saat darbesine göre çalışan bir flip flop devresi tasarlayacağız.
Bu devre iki flip flop (ff) devresinin art arda bağlanmasıyla oluşturuldu. Clock girişine 1 uyguladığımızda ilk ff devresi çıkışını data verisine göre değiştiriyor, clock girişine 0 uyguladığımızda da ikinci ff devresi çıkışı girişlerine göre değiştiriyor. Böylece negatif kenar tetiklemeli bir ff devresi elde etmiş oluyoruz. Eğer bu devreye SET (PRESET) ve RESET (CLEAR) eklersek devremiz şu şekilde olacak
Oluşturduğumuz bu devreyi basit bir kutu ile göstermek istersek şu şekilde bir sembolümüz olacak ancak buradaki negatif değil pozitif tetiklemeli bir flip flop sembolüdür. Sembol negatif tetiklemeli olduğunda CLK girişinin önünde tersleme işareti olur.
Bu flip flop devresi için 74HC74 entegresini kullanacağız.
Bu flip flop tan 8 adet yan yana getirirsek bir byte'lık veri oluşturmuş oluruz demiştik. Şimdi bunun entegre haline bir bakalım. 74HC377 bu amaç için kullanılan bir entegredir. D0-D7 pinleri data pinleri Q0-Q7 ise çıkış pinleridir. E pini ise clock aktifleştirme pinidir. Bu E pini negatif olduğunda her saat darbesinde D giriş pinlerindeki veri Q çıkış pinlerinde görülür.
Kalıcı olarak veri saklamak istersek de EEPROM'ları kullanabiliriz. Açılımı electrically erasable programmable read-only memory yani elektrik ile silinebilen ve programlanabilen yanlızca okuma hafızası anlamına gelir.
Günümüzde bilgisayarlar SSD dediğimiz sistemleri kullanıyorlar ancak biz burada daha basit olan EEPROM ları kullanacağız. 32Kb hafızaya sahip bir EEPROM 28C256 örnek olarak verilebilir.
Bu entegrelerde adres uçları ve veri uçları bulunur. Adres ucu değiştikçe I/O uçlarındaki veriler değişir.
A0-A14 arası adres pinleri iken I/O veri pinleridir.
- A : Address (Adres)
- I : Giriş (İnput)
- O : Çıkış (Output)
- CE : Çip Aktifliği (Chip Enable)
- OE : Çıkış Aktifliği (Output Enable)
- WE : Yazma Aktifliği (Write Enable)
- VCC : Pozitif uç
- GND : Toprak Yani 0V (Ground)
Bir sonraki bölüm için tıklayın.
Hiç yorum yok:
Yorum Gönder