ATA (İngilizce: AT Attachment), sabit disk ve optik sürücü gibi depolama aygıtlarını bilgisayara bağlamak için kullanılan arayüz standardıdır. 1980'lerin sonunda geliştirilmiş, 1994'te ANSI tarafından standartlaştırılmış ve kişisel bilgisayarlarda uzun yıllar en yaygın depolama arayüzü olarak kullanılmıştır.
Standardı belirleyen özellik, sürücüyü yöneten denetleyicinin ana kartta değil sürücünün kendi devresinde bulunmasıdır; ticari adı olan IDE (Integrated Drive Electronics) bu özellikten gelir. Ana kartta yalnızca sürücüyle konuşan basit bir arayüz kalır. Bu düzenleme, ayrı bir denetleyici kartı gerektiren SCSI gibi çözümlere göre daha ucuza kurulduğu için kişisel bilgisayarlarda yaygınlaşmıştır.
Arayüz veriyi 16 bitlik koşut bir yol üzerinden taşır ve aygıtlar ana karta yassı bir şerit kabloyla bağlanır. 2003'te seri bağlantı kullanan Serial ATA tanıtılınca, o güne kadar yalnızca ATA denilen bu koşut sürüm geriye dönük olarak Paralel ATA (PATA) adıyla anılmaya başlanmıştır.
Tarihçe
Arayüz, IBM PC/AT bilgisayarının 16 bitlik genişleme yoluna doğrudan bağlanacak biçimde tasarlandığı için önce PC/AT Attachment, sonra kısaca AT Attachment adını almıştır. Bu ad, arayüzün baştan bağımsız bir tasarım değil, o dönemin yaygın yolunun sürücüye uzatılması olarak düşünüldüğünü gösterir.
Denetleyiciyi sürücünün üzerine taşıma düşüncesi 1980'lerin sonunda ürünleşmiştir. O güne kadar sabit disk, ana karta takılan ayrı bir denetleyici kartıyla sürülüyor, kart ile sürücü arasında ayrıntılı ve üreticiye özgü sinyaller taşınıyordu. Denetleyici sürücüyle birlikte üretilince bu sinyaller kutunun içinde kalmış, dışarıya yalnızca daha basit ve ortak bir arayüz çıkmıştır. Bu yaklaşımın ticari adı IDE olmuş, kapasite sınırları genişletilen sonraki sürümü ise EIDE diye anılmıştır. Her iki ad da standardın kendi adı değil, üretici adlandırmasıdır.
Arayüz başlangıçta yalnızca sabit disklere göre tanımlanmıştı. Optik sürücüler ve teyp birimleri gibi başka aygıtların da aynı kabloya bağlanması istenince, bu aygıtların komutlarını ATA üzerinden taşıyan bir paket katmanı eklenmiştir. ATAPI adı verilen bu genişletme dördüncü sürümden başlayarak standardın parçası olmuş, standart bu nedenle ATA/ATAPI diye anılır.
2003'te Serial ATA'nın tanıtılmasıyla koşut arayüz yerini seri bağlantıya bırakmaya başlamıştır. Yeni bağlantı daha az telle daha yüksek hıza çıkabildiği, kablo uzunluğu kısıtı taşımadığı ve her aygıta ayrı bir bağlantı verdiği için koşut ATA birkaç yıl içinde yeni bilgisayarlardan çekilmiştir.
Arayüzün yapısı
Kablo ve bağlayıcı


| Bacak | İşlev | Bacak | İşlev |
|---|---|---|---|
| 1 | Sıfırlama | 2 | Toprak |
| 3 | Veri 7 | 4 | Veri 8 |
| 5 | Veri 6 | 6 | Veri 9 |
| 7 | Veri 5 | 8 | Veri 10 |
| 9 | Veri 4 | 10 | Veri 11 |
| 11 | Veri 3 | 12 | Veri 12 |
| 13 | Veri 2 | 14 | Veri 13 |
| 15 | Veri 1 | 16 | Veri 14 |
| 17 | Veri 0 | 18 | Veri 15 |
| 19 | Toprak | 20 | Kılavuz (boş) |
| 21 | DBE isteği | 22 | Toprak |
| 23 | G/Ç yazma | 24 | Toprak |
| 25 | G/Ç okuma | 26 | Toprak |
| 27 | G/Ç kanalı hazır | 28 | Kablo seçimi |
| 29 | DBE onayı | 30 | Toprak |
| 31 | Kesme isteği | 32 | Bağlantısız |
| 33 | Adres 1 | 34 | 80 telli kablo algılama |
| 35 | Adres 0 | 36 | Adres 2 |
| 37 | Yonga seçimi 1 | 38 | Yonga seçimi 3 |
| 39 | Etkinlik | 40 | Toprak |
Aygıtlar ana karta 40 bacaklı bir bağlayıcı ve yassı bir şerit kabloyla bağlanır. Kablo üzerinde iki ya da üç bağlayıcı bulunur: biri ana karta, ötekiler sürücülere takılır. Kablo aynı anda 16 bit veri taşır; kalan bacaklar adres, denetim ve toprak hatlarına ayrılmıştır.
Standart, kablonun en çok 46 santimetre (18 inç) olmasını şart koşar. Bu sınır, koşut hatların yüksek hızda karşılaştığı zamanlama ve yansıma sorunlarından gelir ve arayüzün bilgisayar kasasının dışına çıkarılmasını olanaksız kılar.
Ultra DMA'nın daha hızlı kipleriyle birlikte 80 telli kablolar gelmiştir. Eklenen kırk tel yeni sinyal taşımaz; her sinyal telinin yanına bir toprak teli koyarak komşu teller arasındaki elektriksel etkileşimi azaltır. Bacak sayısı ve bağlayıcının dış görünüşü değişmediği için iki kablo dışarıdan ayırt edilmez; 80 telli kablolarda bağlayıcılar renklendirilerek hangi ucun nereye takılacağı belirtilir.
Aygıt 0 ve aygıt 1
Bir kabloya iki aygıt bağlanabilir. Standart bunları aygıt 0 ve aygıt 1 diye adlandırır; günlük kullanımda yaygın olan ana ve uydu adlandırması standardın kendi terimleri değildir ve yanıltıcıdır, çünkü aygıt 0'ın aygıt 1 üzerinde hiçbir yetkisi yoktur. İkisi de yalnızca ana karttaki arayüze yanıt verir; hangi aygıtın ne zaman konuşacağını arayüz belirler.
Kabloda tek aygıt varsa çoğu durumda aygıt 0 olarak ayarlanır. Aygıtın hangi numarayı alacağı sürücü üzerindeki bir köprüyle ya da kablo seçimi düzeniyle belirlenir.
Kablo seçimi
Kablo seçiminde aygıt numarası elle ayarlanmaz; sürücü, kablonun hangi ucuna takıldığına bakarak numarasını kendisi belirler. Karar 28 numaralı bacaktan okunur: ana karttaki arayüz bu bacağı toprağa çeker, kablo ise bacağı yalnızca bir bağlayıcıya ulaştırır. Bacağı topraklanmış gören sürücü aygıt 0, görmeyen aygıt 1 olur.
40 telli kablolarda bu, iki bağlayıcı arasındaki ilgili telin kesilmesiyle sağlanıyordu ve aygıt 0 ortadaki bağlayıcıya düşüyordu. Kabloda tek aygıt varsa geriye kullanılmayan bir kablo ucu kalıyor, bu uç yüksek hızlarda sinyal yansımasına yol açıyordu. 80 telli kablolarda düzen değiştirilmiş, aygıt 0 kablonun ucuna alınmıştır; böylece tek aygıtlı kurulumda boşta uç kalmaz.
Aktarım kipleri
ATA iki ayrı aktarım yöntemi tanımlar. Programlı giriş/çıkış kipinde veriyi işlemci taşır: her sözcük için işlemci arayüzden okuma yapar ve belleğe yazar. Yöntem basittir ama aktarım boyunca işlemciyi meşgul eder, dolayısıyla disk erişimi yoğun işlerde bilgisayarın geri kalanını yavaşlatır.
Doğrudan bellek erişimi kipinde aktarımı sürücünün denetleyicisi yürütür ve veriyi doğrudan belleğe yazar. İşlemci yalnızca aktarımın başında ve sonunda devreye girer, arada başka iş yapabilir. Ultra DMA adıyla anılan sonraki kipler bu yöntemi daha yüksek hızlara taşımıştır; en hızlı kipler yalnızca 80 telli kabloyla çalışır.
Bir kabloya bağlı iki aygıtın farklı hızlarda çalışması başarımı düşürmez; çağdaş arayüzler her aygıtla kendi hızında konuşur. Buna karşılık aygıtlar kabloyu sırayla kullandığından, yavaş bir aygıtın süren işlemi öteki aygıtın beklemesine yol açar.
Adresleme ve kapasite sınırları
Arayüzün tarihi, art arda aşılan kapasite sınırlarıyla belirlenmiştir. İlk sürümlerde sektörler silindir, kafa ve sektör numarasıyla adresleniyordu. Bu adresleme, bilgisayarın açılış yazılımının kendi sınırlarıyla birleştiğinde kullanılabilir kapasiteyi 504 MiB'e indiriyordu; iki tarafın sınırlarından her birinin en dar değeri geçerli oluyordu.
Mantıksal blok adreslemeye geçilmesiyle sektörler tek bir numarayla adreslenmeye başlandı. 28 bitlik numara 228 sektöre, 512 baytlık sektörlerle yaklaşık 137 GB'a (128 GiB) karşılık gelir. Altıncı sürümde adres 48 bite çıkarılmış, sınır 144 PB'a (128 PiB) taşınmıştır.
Bu sınırların aşılması yalnızca sürücünün desteklemesine bağlı değildir. Açılış yazılımının, işletim sisteminin ve sürücü yazılımının da yeni adreslemeyi tanıması gerekir; aradaki herhangi bir katman eski sınırda kalırsa sürücü olduğundan küçük görünür ya da bilgisayar açılmaz.
Sınırlamalar
Koşut ATA'nın belirgin bir kısıtı, arayüzün bir komut tamamlanmadan ötekini almamasıdır. Bir okuma sürerken aynı kablodaki başka bir aygıta komut verilemez; komutlar sıraya konur ve teker teker yürütülür. Dördüncü sürümde tanımlanan üst üste binen ve kuyruklu çalışma özellikleri isteğe bağlı bırakılmış, yaygın olarak gerçeklenmemiştir.
Bu kısıt, aynı kabloya hızlı bir sabit disk ile yavaş bir optik sürücü bağlandığında somut biçimde görünür: optik sürücüye verilen bir komut sürerken disk kabloyu kullanamaz. SCSI'nin uzun süre sunucularda yeğlenmesinin nedenlerinden biri, o arayüzün komut kuyruklamayı baştan desteklemesidir.
Kablo uzunluğunun 46 santimetreyle sınırlı olması ve her kablonun yalnızca iki aygıt alması da arayüzü kısıtlamıştır. Çok sayıda sürücü bağlanması gereken sistemlerde ana kart üzerinde birden çok ATA arayüzü bulundurmak gerekmiştir.
Standart sürümleri
Aşağıdaki çizelge standardın sürümlerini ve her sürümde eklenen aktarım kiplerini gösterir. Verilen hızlar kablo üzerindeki kuramsal en yüksek değerlerdir; sürücünün diskten okuma hızı çoğunlukla bunun altında kalır ve arama süresi ile dönüş gecikmesi başarımı daha çok belirler.
| Sürüm | Yaygın adı | Eklenen aktarım kipleri (MB/s) | Eklenen başlıca özellik | ANSI belgesi |
|---|---|---|---|---|
| ATA-1 | ATA, IDE | PGÇ 0–2 (3,3 / 5,2 / 8,3) | ilk standart | X3.221-1994 |
| ATA-2 | EIDE, Fast ATA | PGÇ 3–4 (11,1 / 16,6) | 28 bitlik mantıksal blok adresleme | X3.279-1996 |
| ATA-3 | EIDE | S.M.A.R.T. ile durum izleme, parola koruması | X3.298-1997 | |
| ATA/ATAPI-4 | Ultra ATA/33 | Ultra DMA 0–2 (16,7 / 25,0 / 33,3) | ATAPI ile optik ve teyp aygıtları | NCITS 317-1998 |
| ATA/ATAPI-5 | Ultra ATA/66 | Ultra DMA 3–4 (44,4 / 66,7) | 80 telli kablo | NCITS 340-2000 |
| ATA/ATAPI-6 | Ultra ATA/100 | Ultra DMA 5 (100) | 48 bitlik adresleme | NCITS 361-2002 |
| ATA/ATAPI-7 | Ultra ATA/133 | Ultra DMA 6 (133) | Serial ATA'nın standarda alınması | INCITS 397-2005 |
Çizelgedeki PGÇ kısaltması programlı giriş/çıkış kipini gösterir. Son sütun, sürümü yayımlayan ANSI belgesinin numarasıdır; kurumun adı bu süre içinde X3, NCITS ve INCITS olarak değişmiştir.
Kaynakça
- ^ a b c d e f g h i j k Stallings, William (2019). Computer Organization and Architecture: Designing for Performance (11 bas.). Pearson. ISBN 978-0-13-499719-3.
- ^ a b c d e f g h i j k l m n o p INCITS (2005). AT Attachment with Packet Interface - 7 (ATA/ATAPI-7). American National Standards Institute. INCITS 397-2005.
- ^ a b NCITS (2002). AT Attachment with Packet Interface - 6 (ATA/ATAPI-6). American National Standards Institute. NCITS 361-2002.