Bilgisayar Bilimleri -9- Veri Depolama ve Hafıza Birimleri

Daha öncesinden dijital elektronikte bahsettiğimiz üzere dijital elektroniğin temeli iki durumlu devrelerdi. Bu iki durumlu sistem elektrikle çalışan sistemlerin en stabil olduğu sistemdir. Örneğin 5V mantık devrelerinde 0 ile 0.7V arası mantıksal 0 olarak kabul edilirken 2.7 ile 5V arası ise mantıksal 1 olarak kabul edilmektedir. 0.7 ile 2.7 arasında 2 voltluk bir boşluk ise mantıksal olarak bir değer ifade etmez ve değerler bu boşluk sayesinde birbirine karışamaz. Eğer biz 10 farklı durumu ifade eden bir sistem yapmak isteseydik 5 voltta çalışan bir sistemde 0.5V, 1V, 1.5V, 2V, 2.5V… diye her bir gerilim seviyesini bir rakama eşitlememiz gerekecekti. Eğer beslemede bir sıkıntı olursa bu değerler birbirine karışacak ve temsil edilmesi oldukça zorlaşacaktır. Bütün sistemlerin ikilik sistemde olduğunu iddia edemesek de ikilik sistemden başka sistemlerin oldukça nadir olduğunu ve uygulanabilirliğinin düşük olduğunu söylememiz gerekir. İki durumlu sistemler aşağıdaki durumlardan birinde olabilir. Bu kullandığımız teknoloji ve yönteme bağlıdır.

  • Kapalı veya açık
  • Şarj edilmiş veya deşarj olmuş
  • Pozitif şarj veya negatif şarj halinde
  • Manyetize olmuş veya manyetize olmamış
  • Saat yönünde manyetize olmuş veya saat yönünün tersinde manyetize olmuş

İkilik sayıların ifade edilmesinde sadece gerilim değerleri değil farklı fiziksel konumların da olduğunu görmekteyiz. Aslında bilgisayarlar herhangi bir ikilik durum üzerine bina edilebilir. Daha öncesinden bunun temelinin anahtarlama olduğunu söylemiştik. Anahtar en basit ikilik durum aygıtlarından biridir. Sadece açık veye kapalı durumu olan anahtarın prensibi ile günümüz bilgisayarlarında transistörün kullanım biçimi birbirine oldukça benzemektedir. Bizim yapacağımız bilgisayar sisteminde ikilik durumun belli şartları karşılaması gereklidir. Bu şartları özetleyecek olursak şöyledir;

  • Aygıtın iki adet kararlı enerji seviyesi bulunmalıdır. (Biri 0 için biri 1 için)
  • İki durum da birbirinden büyük bir enerji bariyeri ile ayrılmış olmalıdır. Bu sayede durumların birbirine kazara karışması önlenir.
  • Aygıttaki durum, durum değeri değişikliğe uğramadan okunabilmelidir. Flip-floplar böyle çalışmaktadır.
  • İki durum arasındaki geçiş belli bir enerji verilerek yapılabilmelidir.

Yukarıdaki ilkelere göre bizim röleler ile de vakum tüpleri ile de transistörler ile de ikilik sistemde bilgisayar yapmamız mümkündür. İleride transistörlerden daha ileri bir aygıt keşfedilirse yukarıdaki şartları sağlaması kaydıyla bilgisayarlar sistemlerine uyarlanabilir.

Bellek

Bilgisayar sisteminin meydana gelmesi için iki önemli aygıta ihtiyacımız vardır. Bu aygıtlar her zaman birbirinden ayrı olmakla beraber birbirine doğrudan yollar ile bağlıdır. Biri ötekine muhtaç haldedir. Bunlardan biri merkezi işlem birimi (CPU) diğeri ise bellektir. Bellekler çalışma şekillerine, teknolojilerine ve kullanımlarına göre farklı adlarla birbirinden ayrılmaktadır. Bilgisayar sisteminin merkezi işlem biriminin doğrudan eriştiği ve üzerinde işlem yaptığı belleğe ana bellek veya birincil bellek adı verilir. İhtiyaç halinde giriş ve çıkış yolu vasıtasıyla dolaylı olarak ulaştığı belleğe ise ikincil bellek veya yardımcı bellek (auxiliary memory) adı verilir. Bellekler ise yapılarına göre geçici (volatile) ve kalıcı (non-volatile) olarak ikiye ayrılır. Bellek teknolojileri ise oldukça çeşitli olduğu gibi geçici ve kalıcı bellek teknolojileri kendi içerisinde ayrılmaktadır.

Daha öncesinde kalıcı hafıza birimi olan ROM bellekler ve bunların çeşitlerini anlattığım bir makalem vardı. Konuyla alakalı olduğu için okumanızı tavsiye ederim.

http://www.lojikprob.com/elektronik/rom-bellekler-ve-ozellikleri/

Şimdi asıl konumuz olan ana belleğe yani geçici hafızaya geçelim. Daha öncesinde belleklerin manyetik tambur veya ferit nüveli dizilerden olduğunu önceki başlıklarda anlatmıştık. Günümüz transistör teknolojisinde ise bilgisayarların ana belleği transistörlerden meydana gelmektedir. Flip-flop adını verdiğimiz bu aygıtlar teknolojisine göre bir bit için 6 veya 4 transistör gerektirmekte ve bir bitlik veriyi besleme gerilimi devam ettikçe üzerinde saklamaktadır. Veriler kazara değiştirilmediği veya kaybolmadığı için oldukça stabil bir depolama yöntemidir. Manyetik ve optik sistemlerde olduğu gibi mekanik bir parça olmadığı için arıza vermesi daha seyrek görülür. Flip-floplara uygulanan değişiklik sinyali ile giriş durumu çıkış durumuna yansıtılır ve veri değiştirilmiş olur. Flip-floplar birer bitlik veri depolama aygıtı olduğu için bir bit bizim için pek bir şey ifade etmez. O yüzden flip-floplar yan yana sıralanarak veri hücreleri meydana getirilir. Çoğu hafıza biriminde 8 adet flip-flop birleştirilerek 8 bitlik hafıza hücreleri meydana gelir ve bu hücreler adresleme vasıtasıyla erişilir. 8 bitlik veriye bir bayt denir ve bellek miktarı bayt üzerinden de bit üzerinden de anılabilir. Günümüzde bilgisayarlarda ve gömülü sistemlerdeki ana hafıza birimi RAM (Random Access Memory) adı verilen transistör tabanlı geçici bellektir. Şimdi RAM bellekleri ve ardından ikincil hafıza birimlerini ayrıntılı olarak inceleyelim. Bir sonraki konuda görüşmek üzere.

Bizi Facebook grubumuzda takip etmeyi unutmayın. Bilgili ve öğrenmeye hevesli bir topluluk oluşturmak istiyoruz.

https://www.facebook.com/groups/1233336523490761/

 

 

Gökhan Dökmetaş

"Arduino Eğitim Kitabı" ve "Arduino ve Raspberry PI ile Nesnelerin İnterneti" kitaplarının yazarı. Başkent Teknoloji ve Dedektör Merkezi'nde Ar-ge Sorumlusu. Araştırmacı-Yazar.

You may also like...

7 Responses

  1. vuslat dedi ki:

    selam hocam çok ama çok yararlı bir kaynak bizim için fakat PYTHON PROGRAMLAMA ile ilgili paylaşımızın olacakmı saygılar.

  2. Anonim dedi ki:

    BENDE ÖGRENMEYE ÇALIŞIYORUM AMA ÇOK KAFAM KARISIYOR NERDEN NASIL BAŞLAYACAGIMI BİLMİYORUM BANA BU KONU DA ÖNERİNİZ OLURMU.

  3. Anonim dedi ki:

    programa dili olarak pyton ögrenmek istiyorum ama nasıl nerden başlamam gerektini hiç bilmiyorum yazılım ile hiç bilgim yok bana nerden başlamam gerektigini söyleye bilirmisiniz yutube den farklı videolara baktım ama kafam girmiyor ama ögrenmeyi çok istiyorum bir yol gösterirmisiniz bana.

    • İleride gömülü sistem rehberi hazırladığım gibi yazılıma başlayacaklar için bir yol haritası hazırlayacağım. Python bir programlama dilidir. Programlama dilini öğrenmeden önce bilgisayar okur-yazarlığını ve bilgisayar bilimlerini öğrenmeniz iyi olur. Bilgisayarın mantığını kavradıktan sonra hangi programlama dili karşınıza çıkarsa çıksın bu temel çerçevesinde rahatça değerlendirebilirsiniz. Bu konumuz aslında tam buna yönelik. Basitlik açısından megep modüllerininin ilgili konu ile alakalı olanlarının tamamını okumanızı tavsiye ederim.

  4. Anonim dedi ki:

    Gökhan bey bu alanda sizin bilgilerinizden faydalana bilirmiyim. ayrıca dediginiz gibi bütün teknik donanım ve kullanım ile alakalı tüm yayınlarınızı dediginizgibi kavramaya başlıcam teşekürler.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.