Veri yolu
İlerleyen bölümlerde yazmaç tasarımı yapmaya çalışacağız. Yazmaçlar bir bilgisayarı oluşturan temel birimlerdir.
Yazmaçlar temelde veri tutan bileşenlerdir. Tasarımımızda her yazmaç 8 bit veri tutacak.
Yazmacın çalışma mantığını anlamak için veri yolunun nasıl çalıştığını öğrenmek gerekir.
Tüm bilgisayarlar bir veri yolu etrafında genişler. Bazı bilgisayarlarda birden çok veri yolu olabilir.
Veri yolu temel olarak kablolardan oluşan bir ağdır. Bilgisayar içinde bileşenleri birbirine bağlayan ortak bir bağlantı noktasıdır.
Tasarımımızda 8 bitlik bir veri yolu kullanacağız. Yani 8 kablodan oluşuyor.
Bilgisayarın bir bölümünden başka bir bölümüne veri aktarılmasına veri yolu aktarımı denir. Bir bileşen veri yolu üzerine bir veri koyabilir. Bir diğer bileşen ise bu veriyi okuyabilir. Yazmaçların yaptığı temel işlerden birisi de budur.
Veri yolu sayesinde veriyi bilgisayarın bir bölümünden diğerine aktarabiliriz.
Bellekten yazmaca, bir yazmaçtan diğerine, yazmaçtan belleğe, yazmaçtan çıkışa veri gönderebiliriz.
Gördüğünüz üzere her renk farklı bir kabloyu gösteriyor. Örneğin A yazmacına giren kırmızı kablo, C yazmacı çıkışında ve B yazmacı girişinde görülecek.
Bu sekiz bitin her biri farklı olabilir. Örnekte A, B ve C yazmaçları var. Ama eğer istersek D, E gibi yeni yazmaçlar eklemeye devam edebiliriz. Bu da tasarımda oldukça esneklik getiriyor.
Büyük ölçekli bilgisayar tasarımlarında, veri yoluna bağlı bir sürü bileşen olabilir.
Burada veri yoluna bağlı olarak yazmaçları gösterdik. Ama veriyoluna bellek, girdi ve çıktı aygıtları bağlı olabilir.
Veri yoluna bağlı her aygıtın bir girişi, bir de çıkışı var. Ayrıca veri yolunda süre gelen işlemleri kontrol etmek için her bileşenin bir çift sinyale sahiptir. Her bileşeni idare eden bir çift hat vardır.
Genellikle oku ve yaz sinyalleri.
Yaz işareti, bileşenin içinde hangi 8'li değer varsa bu bileşeni veri yoluna yaz demektir. Yaz değeri yüksek iken yazmacın içindeki değer veri yoluna yazılır. Daha sonra yazılan bu veri diğer tüm bileşenler tarafından görülür hale gelir.
Eğer oku işareti yüksek olursa bu veri yolundaki değeri oku demektir. Örneğin A yazmacı yaz işaretini yüksek, C ise oku işaretini yüksek yaparsa A veri yazıyor, C ise okuyor demektir.
Bu da A yazmacındaki değerin C yazmacına aktarılmasına neden olur.
Tüm zamanlama ise ortak saat sinyali ile gerçekleşir. Her bileşenin saat girişi vardır. Ortak saat sinyali tüm bu bileşenlere bağlıdır.
Her saat tikinde oku işareti açık bileşenler veri yolunda ne varsa okuyacaktır. Ve o anlık zaman aralığında depolayacaklardır.
Bu tür bir veri yolunda en önemli noktalardan bir tanesi veri yoluna bağlı cihazlardan sadece birisinin yazdığından emin olmalıyız.
Örneğin hem A hem de C yazmacı aynı anda veri yoluna yazmaya çalışırsa bir tür sorunla karşılaşabiliriz.
Mor ve ilk biti oluşturan kablo için düşünürsek eğer A 1, C ise 0 yazıyorsa, aynı kabloda aynı zamanda hem 0 hem de 1 görebiliriz. Bu durumda çıktının ne olduğunu tanımlamak da güçleşebilir.
Bir kapının çıktı aşamasına yakından bakmak faydalı olabilir. Çünkü yazmaçların çıktıları da mantıksal kapılardan oluşuyor.
Eğer üst transistör açıksa, akım gerilim kaynağından çıkışa doğru akar. Bu durumda kapı, akıma kaynaklık ediyor. Çıkışa akım pompalıyor diyebiliriz. Bu durumda çıkış da 1 olacaktır.
Üstteki transistör kapalı ve alttaki transistör açık olabilir
Yorumlar