Programlı Giriş / Çıkış :
Bu yöntemde veri transfer isteğinin algılanması ve verilerin transferi tamamen programla yapılır. Dış cihaz istek işaretini göndermese de, CPU sürekli olarak bu isteğin gönderilip gönderilmediğini test etmelidir. Test esnasında CPU başka bir iş yapmadığı için, isteğin de gelmemesi durumunda bilgisayar tamamen boş kalmış olur. Çoğu iş programla yapıldığından, en az donanım gerektiren ve sonuç olarak en ucuz olan yöntemdir.
Dış cihazın erişebileceği, dışarıya gönderilen verinin koyulduğu yeri gösteren bir protokol olmalıdır. Veya tersine, mikrobilgisayar sistemine verileri sokabilmek için, önceden belirlenmiş bir yere dış cihazın verileri koyması gerektiğini mikrobilgisayar sistemi bir protokol ile belirlemelidir.
Veri, mikrobilgisayar ile dış cihaz arasında her iki yönde olacak şekilde bir G/Ç kapısı (port) üzerinden transfer edilir. G/Ç kapısı, CPU’nun veri yoluna ve dış cihazın eriştiği uçlara bağlanan bir G/Ç kapısı tamponundan (buffer) oluşur.
Dış cihaz mikrobilgisayara veri göndereceği zaman, veriyi önce bu G/Ç kapı uçlarına koyar ve CPU bu uçlan okuyuncaya kadar verinin burada sabit durmasını sağlar. G/Ç tamponu, veri yolu üzerinden CPU ile sürekli haberleşemez, çünkü CPU veri yolu üzerinden bellek ile haberleşiyor olabilir. Bu yüzden CPU, G/Ç kapısını seçer ve G/Ç tamponunun içeriğini, verinin bellekten okunmasında olduğu gibi, okur. Bellekten okuma ile G/Ç tamponundan okuma arasındaki en belirgin fark, bellekten okurken bellek istek hattı MREQ aktif olurken G/Ç tamponundan okumada IOREQ hattının aktif olmasıdır.
Şekil 5.1’deki G/Ç kapısının, veri yolunda herhangi bir veri çekişmesine yol açmaması için yüksek-Z özelliğine sahip olması gerekir. Aynca bir bilgisayar sisteminde bu tür giriş-çıkış kapılarının sayısı genelde birden çok olduğundan, bu kapıların adres- lenebilir olmasa yani CPU konuşacağı dış cihazı tanımlayabilmesi gerekir. Bu amaçla üzerinde birden çok G/Ç kapısı olan adreslenebilir G/Ç yüzleştirme cihazları geliştirilmiştir.
Bu gereksinimlere uygun bir Paralel G/Ç Arayüzü tasarlamaya çalışalım. Her elektronik cihazda en az iki besleme gerilimi ucu bulunmalıdır. CPU ancak adresleyebildiği birimlere erişebileceğinden, adreslemek amacıyla 16-adres hattının bu arayüze bağlanması uygun değildir; çünkü 40-bacaklı böyle bir birimde 16-bacaklı adrese ayrılması diğer işler için bacak kullanımını sınırlar. Bu yüzden bu tür cihazların seçilmesi genelde bir adres kodçözücünün sürdüğü yonga seçme (CS) ucu sayesinde olur. Ama arayüz cihazında bulunan kapılara ve bazı denetim ve durum kaydedicilerine erişmek için CPU’nun adres hatlarından en anlamsız iki veya üç tanesi genelde bu cihaza
uygulanmalıdır, Şekil 5.2.
Dış cihaza gönderilecek veya dış cihazdan alınacak veriler arayüz üzerinden geçeceğinden, CPU’nun arayüz cihazına veri yolu ile bağlanması gerekir. Veri transferinin çift yönlü olması arayüz cihazına yazma ve okuma yapmayı gerektirir. Bu gereksinim RD ve WR denetim işaretlerini doğurur. CPU ve tüm arayüz cihazlarının RESET işaretiyle başlangıç durumuna sokulması gerektiğinden, bu arayüz cihazının da RESET bacağına sahip olması uygundur.
Geriye kalan 24 bacaktan 16 tanesi, her biri 8-bitlik olan iki adet G/Ç kapısına aynlır. Bazı arayüzlerde bu kapılann sayısı üçtür. Bunlardan ikisi veri kapısı olarak, diğeri de bu veri kapılanna ilişkin denetim bilgilerinin iletilmesi için kullanılır. Burada A ve B olmak üzere iki veri kapısı kullanılacaktır. Geriye kalan 8-bacak ise kesmeli G/Ç için gerekli denetim işaretlerinin iletiminde bir sonraki kısımda kullanılacaktır.
Mikrobilgisayar ile dış cihaz arasında kör şekilde veri transferi her zaman yeterli G/Ç yeteneği sağlamaz. Veri transferinde aşağıdaki ihtiyaçların da karşılanması önemlidir.
1. Mikrobilgisayar, dış cihaza verinin G/Ç tampona koyulduğunu ve alınmaya hazır olduğunu haber vermelidir. Tersine dış cihaz da mikrobilgisayar tarafından okunmak üzere veriyi G/Ç tampona koyduğunu gösteren bir araca sahip olmalıdır. 2. Mikrobilgisayar ve dış cihaz, G/Ç tampona koyulan verinin yapısı hakkında diğerine bilgi verebilmelidir. Transfer edilen veri değişik yorumlamalara konu olabilir. Örneğin veri, tamamen sayısal bir veri olabilir, veya gerçekleştirilmiş veya gerçekleştirilecek işlemleri belirleyen bir kod olabilir. Aynı zamanda bir adres parçası da olabilir.
Olayları veya veriyi belirlemek amacıyla mikrobilgisayarın dış cihaza gönderdiği işaretlere G/Ç denetimleri denir. Dış cihazdan mikrobilgisayara gönderilen bu tür bilgiye de G/Ç durumu denir. Akış yönüne bakarak bilgileri bu şekilde sınırlandırmak akla uygundur. Çünkü mikrobilgisayar, dış cihazın işlerini denetlemek için denetim işaretlerini gönderir. Dış cihaz ise mikrobilgisayarı denetleyemez, o yalnız incelenmek üzere durum bilgisini gönderir.
CPU, bellek, ve paralel G/Ç arayüz cihazından oluşan basit bir mikrobilgisayar Şekil 5.3’te gösterilmiştir. Burada B G/Ç kapısı denetim ve durum bilgilerini göndermek için kullanılırken A G/Ç kapısı da veri transferi için kullanılabilir. Kelimenin veri, denetim veya durum bilgisi olduğunu mikrobilgisayarın verileri değerlendirme şekli belirler.