Veriyolu

Veri yolu, bilgisayar yapısında, bilgisayarın içindeki parçalar arasında ya da bilgisayarlar arasında verileri ya da gücü transfer eden bir alt sistemdir ve genellikle aygıt yürütme (device driver) yazılımı tarafından kontrol edilir. Nokta- nokta bağlantısının () tersine, veri yolu, birçok çevresel aygıtı aynı takım kablo ile mantıksal olarak bağlayabilir. Her bir veri yolu kendi bağlayıcılarını fiziksel fiş aygıtlarına, kartlara veya kabloların tümüne karşı tanımlar.Ağ ()‘da esas programcı veri trafiğini kontrol eder. Veriler transfer edilirken bilgisayar programcıya mesaj gönderir bu da istekleri sıraya koyar. Bu mesaj ağ(network) noktalarının her birine yayılan tanıtma kodu içerir. Programcı öncelikleri yapar ve veri yolu mevcut olduğu sürece alıcıya bildirir.Tanıtılan nokta mesajı alır ve iki bilgisayar arasında veri transferini yapar. Veri transferini tamamlayınca, programcının sıralamasında bir sonraki istek için veri yolu serbest kalır.Veri yolunun avantajı: bilgisayara direkt olarak ulaşılabilir ve mesaj çok basit ve hızlı bir yolla iletilebilir. Dezavantaj: sıklık ve öncelik trafiğini organize edebilmek için programcıya ihtiyacı vardır.Tek vuruşluk veri yolunda buyruk başına çevrim birdir. Tüm buyruklar en uzun buyruk kadar bekler. Bu yöntem günümüzde kullanılmaz çünkü etkili bir yöntem değildir. İşlemler her zaman tek bir vuruşta bitirilemez ve uzun çevrim zamanı gerekir.Buyruk adresini bulmak için program sayacı kullanılır. Buyruk bellekten getirilir. Yazmaçlar okunur. Buyruk kullanılarak ne yapılacağı anlaşılır. İki tür işlem birimi vardır. Veri üzerinde işlem yapan, birleşik birimler. Durumu belirleyen, ardışıl birimler. Birleşik mantık birimleri toplayıcı, çoklayıcı ve AMB gibi birimlerdir. Ardışıl birimler ise mandallar ve flip-floplardır.Çok vuruşluk veri yolunda her buyruk aşamalara bölünür ve bu aşamalar tek çevrimde yapılır. Her çevrim bir ana işlem birimi kullanacak şekilde sınırlanır ve yapılacak iş miktarı dengelenir. Çevrim sonunda daha sonraki çevrimlerde kullanılacak değerler fazladan yerel yazmaç vasıtasıyla saklanır.Çok vuruşluk veri yolunun tek vuruşluya göre avantajı daha kısa çevrim zamanı gerekmesidir. Tek vuruşluk bir işlemi daha kısa süren iki vuruşta yapmak gibi. Tek vuruşluk veri yollu basit buyruk kümelerinde iyi çalışırken, günümüzdeki gibi kayan nokta işlemlerinin çokça kullanıldığı karmaşık buyruk kümelerinde etkisiz kalmaktadır. İki örnek arasındaki fark ise aşağıda verilmiştir:Tek vuruşluk veri yolunun çevrim zamanı en uzun buyruğun yani load buyruğunun zamanı olan 600ps olacaktır. Çok vuruşluk veri yolunun ise 200ps ile 600ps arasında değişecektir. Bu yüzden ortalama işlem zamanı aşağıdaki gibi olacaktır.Denetim birimi veri yolundaki denetim işaretlerini belirleyen birimdir. Denetim işaretleri çalıştırılan buyruk ve uygulanan adım sayısına bağlıdır.Tek vuruşluk veri yolunda doğruluk tabloları yardımıyla denetim birimi tasarlanabilir. Çok vuruşluk veri yolunda sınırlı durum makinesi kullanılır. Sınırlı durum makinesi grafik kullanılarak ya da mikroprogramlama yardımıyla oluşturulur.Mips mimarisinin aksine IA-32 mimarisi daha karmaşık buyruklar içerir ve çalışması için onlarca çevrim gerekebilir. Bu karmaşıklık Mips'deki basit buyrukların bile geçekleştirilmesini zorlaştırır. Ancak birçok vuruşlu veri yolu IA-32 buyruklarına uyabilecek bir yapıdadır. Bu uygunluk alttaki iki maddeden gelmektedir.Çok vuruşlu veri yolunda, veri yolu bileşenleri birden çok buyruk tarafından kullanılabilmektedir. Böylece karmaşık adreslemelerin önüne geçilmiş olur ve daha karmaşık işlemlerin gerçekleştirilmesine imkân sağlar.Çok vuruşlu veri yolu ve mikroprogramlama ile IA-32 buyruk kümesi gerçekleştirilebilir. Intel'in 486'dan beri kullandığı IA-32 mimarisi, hardwired control(daha basit buyruklar için) ve mikrobuyruk (daha karmaşık buyruklar için) birleşimini kullanmaktadır .David A. Patterson, John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, Elsevier, 2005, ISBN 1-55860-604-1