SSD'ye giriş. Bölüm 2. Arayüz

SSD'ye giriş. Bölüm 2. Arayüz

В son bölüm “SSD'ye Giriş” serisinde disklerin ortaya çıkış tarihinden bahsettik. İkinci bölümde sürücülerle etkileşime geçmek için arayüzlerden bahsedeceğiz.

İşlemci ile çevresel aygıtlar arasındaki iletişim, arayüz adı verilen önceden tanımlanmış kurallara göre gerçekleşir. Bu anlaşmalar etkileşimin fiziksel ve yazılım düzeyini düzenler.

Arayüz, sistem elemanları arasındaki etkileşimin bir dizi aracı, yöntemi ve kuralıdır.

Arayüzün fiziksel uygulaması aşağıdaki parametreleri etkiler:

  • iletişim kanalı kapasitesi;
  • eşzamanlı olarak bağlanan maksimum cihaz sayısı;
  • meydana gelen hataların sayısı.

Disk arayüzleri üzerine kurulmuştur G/Ç bağlantı noktaları, bellek G/Ç'nin tersidir ve işlemcinin adres alanında yer kaplamaz.

Paralel ve seri bağlantı noktaları

Veri alışverişi yöntemine göre G/Ç bağlantı noktaları iki türe ayrılır:

  • paralel;
  • tutarlı.

Adından da anlaşılacağı gibi paralel port, aynı anda birkaç bitten oluşan bir makine sözcüğü gönderir. Paralel bağlantı noktası, karmaşık devre çözümleri gerektirmediğinden veri alışverişinin en basit yoludur. En basit durumda, bir makine sözcüğünün her biti kendi sinyal hattı üzerinden gönderilir ve geri bildirim için iki servis sinyal hattı kullanılır: Veriler hazır и Veri kabul edildi.

SSD'ye giriş. Bölüm 2. Arayüz
Paralel bağlantı noktaları ilk bakışta çok iyi ölçekleniyor gibi görünüyor: daha fazla sinyal hattı, aynı anda daha fazla bitin aktarıldığı ve dolayısıyla daha yüksek verim anlamına gelir. Ancak sinyal hatlarının sayısının artması nedeniyle aralarında girişim meydana gelir ve bu da iletilen mesajların bozulmasına neden olur.

Seri portlar paralel portların tam tersidir. Veriler her defasında bir bit olarak gönderilir; bu, toplam sinyal hattı sayısını azaltır ancak G/Ç denetleyicisine karmaşıklık katar. Verici kontrol cihazı bir defada bir makine sözcüğü alır ve her seferinde bir bit iletmelidir; alıcı kontrol cihazı ise bitleri alıp aynı sırada saklamalıdır.

SSD'ye giriş. Bölüm 2. Arayüz
Az sayıda sinyal hattı, mesaj aktarım sıklığını müdahale olmadan artırmanıza olanak tanır.

SCSI

SSD'ye giriş. Bölüm 2. Arayüz
Küçük Bilgisayar Sistemleri Arayüzü (SCSI) 1978'de ortaya çıktı ve başlangıçta çeşitli profillerdeki cihazları tek bir sistemde birleştirmek için tasarlandı. SCSI-1 spesifikasyonu, 8 adede kadar cihazın (kontrolörle birlikte) bağlanması için sağlanmıştır, örneğin:

  • tarayıcılar;
  • teyp sürücüleri (flamalar);
  • Optik sürücüler;
  • disk sürücüleri ve diğer cihazlar.

SCSI'nin orijinal adı Shugart Associates Sistem Arayüzü (SASI) idi, ancak standartlar komitesi şirketin adını onaylamadı ve bir günlük beyin fırtınasının ardından Küçük Bilgisayar Sistemleri Arayüzü (SCSI) adı doğdu. SCSI'nin "babası" Larry Boucher, kısaltmanın "seksi" olarak telaffuz edilmesini amaçladı, ancak Dal Allan "Buzlu" ("söyle bana") okudum. Daha sonra “skazi”nin telaffuzu bu standarda kesin olarak atandı.

SCSI terminolojisinde bağlı cihazlar iki türe ayrılır:

  • başlatıcılar;
  • cihazları hedefleyin.

Başlatıcı, hedef cihaza bir komut gönderir ve hedef cihaz daha sonra başlatıcıya bir yanıt gönderir. Başlatıcılar ve hedefler, SCSI-1 standardında 5 MB/s bant genişliğine sahip olan ortak bir SCSI veri yoluna bağlanır.

Kullanılan “ortak veri yolu” topolojisi bir takım kısıtlamalar getirmektedir:

  • Veri yolunun uçlarında özel cihazlar gereklidir - sonlandırıcılar;
  • Veri yolu bant genişliği tüm cihazlar arasında bölünmüştür;
  • Aynı anda bağlanan cihazların maksimum sayısı sınırlıdır.

SSD'ye giriş. Bölüm 2. Arayüz

Veri yolu üzerindeki cihazlar, adı verilen benzersiz bir numarayla tanımlanır. SCSI Hedef Kimliği. Sistemdeki her SCSI birimi, fiziksel aygıt içinde benzersiz bir numara kullanılarak adreslenen en az bir mantıksal aygıtla temsil edilir. Mantıksal Birim Numarası (LUN).

SSD'ye giriş. Bölüm 2. Arayüz
SCSI komutları şu şekilde gönderilir: komut açıklama blokları (Komut Tanımlayıcı Bloğu, CDB), bir işlem kodu ve komut parametrelerinden oluşur. Standart, dört kategoriye ayrılmış 200'den fazla komutu açıklamaktadır:

  • Zorunlu - cihaz tarafından desteklenmelidir;
  • İsteğe bağlı - Uygulanabilir;
  • satıcıya özel - belirli bir üretici tarafından kullanılıyorsa;
  • Eski - güncel olmayan komutlar.

Pek çok komut arasında yalnızca üç tanesi cihazlar için zorunludur:

  • TEST ÜNİTESİ HAZIR - cihazın hazır olup olmadığının kontrol edilmesi;
  • İSTEK DUYUSU — önceki komutun hata kodunu ister;
  • SORGULAMA - cihazın temel özelliklerine ilişkin talep.

Komutu alıp yürüttükten sonra hedef cihaz, başlatıcıya yürütme sonucunu açıklayan bir durum kodu gönderir.

SCSI'nin daha da geliştirilmesi (SCSI-2 ve Ultra SCSI spesifikasyonları), kullanılan komutların listesini genişletti ve bağlı cihazların sayısını 16'ya, veri yolu üzerindeki veri alışveriş hızını ise 640 MB/s'ye çıkardı. SCSI paralel bir arayüz olduğundan, veri değişim frekansının arttırılması, maksimum kablo uzunluğunun azalmasıyla ilişkilendirildi ve kullanımda sıkıntılara yol açtı.

Ultra-3 SCSI standardından başlayarak, cihazları güç açıkken bağlamak için "çalışırken takma" desteği ortaya çıktı.

SCSI arayüzüne sahip bilinen ilk SSD sürücüsü, 350 yılında piyasaya sürülen M-Systems FFD-1995 olarak düşünülebilir. Diskin maliyeti yüksekti ve yaygın değildi.

Şu anda paralel SCSI popüler bir disk bağlantı arayüzü değil, ancak komut seti hala USB ve SAS arayüzlerinde aktif olarak kullanılıyor.

ATA/PATA

SSD'ye giriş. Bölüm 2. Arayüz
Arayüz. ATA (İleri Teknoloji Eki) olarak da bilinir PATA (Paralel ATA), 1986 yılında Western Digital tarafından geliştirildi. IDE standardının (Entegre Sürücü Elektroniği) pazarlama adı önemli bir yeniliği vurguluyordu: sürücü denetleyicisi ayrı bir genişletme kartı yerine sürücünün içine yerleştirilmişti.

Denetleyiciyi sürücünün içine yerleştirme kararı aynı anda birçok sorunu çözdü. İlk olarak, sürücü ile kontrolör arasındaki mesafe azaldı ve bu da sürücünün özellikleri üzerinde olumlu bir etki yarattı. İkincisi, yerleşik denetleyici yalnızca belirli bir sürücü türü için "özelleştirildi" ve buna göre daha ucuzdu.

SSD'ye giriş. Bölüm 2. Arayüz
ATA, SCSI gibi, kullanılan kabloları etkileyen paralel bir G/Ç yöntemi kullanır. Sürücüleri IDE arayüzünü kullanarak bağlamak için kablo olarak da adlandırılan 40 telli kablolar gereklidir. Daha yeni spesifikasyonlar 80 telli döngüler kullanır: bunların yarısından fazlası yüksek frekanslardaki paraziti azaltmaya yöneliktir.

ATA kablosunun, biri anakarta, geri kalanı sürücülere bağlı olan iki ila dört konektörü vardır. İki cihazı bir kabloyla bağlarken bunlardan birinin şu şekilde yapılandırılması gerekir: ustave ikincisi - olarak Köle. Üçüncü cihaz yalnızca salt okunur modda bağlanabilir.

SSD'ye giriş. Bölüm 2. Arayüz
Jumper'ın konumu belirli bir cihazın rolünü belirtir. Cihazlarla ilgili olarak Master ve Slave terimleri tamamen doğru değildir, çünkü denetleyiciye göre bağlı tüm cihazlar Slave'dir.

ATA-3'teki özel bir yenilik görünümdür Kendi Kendini İzleme, Analiz ve Raporlama Teknolojisi (SMART). Beş şirket (IBM, Seagate, Quantum, Conner ve Western Digital), disklerin sağlığını değerlendirmek için güçlerini birleştirdi ve teknolojiyi standartlaştırdı.

Katı hal sürücüleri desteği, standardın 1998'de piyasaya sürülen dördüncü sürümüyle ortaya çıktı. Standardın bu sürümü 33.3 MB/s'ye kadar veri aktarım hızları sağlıyordu.

Standart, ATA kabloları için katı gereksinimler ortaya koymaktadır:

  • tren düz olmalı;
  • maksimum tren uzunluğu 18 inçtir (45.7 santimetre).

Kısa ve geniş tren sakıncalıydı ve soğutmaya engel oluyordu. Standardın sonraki her versiyonunda iletim frekansını arttırmak giderek zorlaştı ve ATA-7 sorunu kökten çözdü: paralel arayüzün yerini seri arayüz aldı. Bundan sonra ATA, Paralel kelimesini aldı ve PATA olarak tanındı ve standardın yedinci versiyonu farklı bir isim aldı - Seri ATA. SATA sürümlerinin numaralandırılması birinden başladı.

SATA

SSD'ye giriş. Bölüm 2. Arayüz
Seri ATA (SATA) standardı 7 Ocak 2003'te tanıtıldı ve aşağıdaki değişikliklerle selefinin sorunlarını giderdi:

  • paralel bağlantı noktası seri bir bağlantı noktasıyla değiştirildi;
  • 80 telli geniş kablonun yerini 7 telli kablo alır;
  • "Ortak veri yolu" topolojisinin yerini "noktadan noktaya" bağlantı almıştır.

SATA 1.0 standardının (SATA/150, 150 MB/s) ATA-6'dan (UltraDMA/130, 130 MB/s) marjinal olarak daha hızlı olmasına rağmen, seri veri alışverişi yöntemine geçiş, artan hızlar

ATA'da veri aktarımı için kullanılan on altı sinyal hattının yerini iki bükümlü çift aldı: biri iletim için, diğeri alma için. SATA konnektörleri çoklu yeniden bağlantılara karşı daha dayanıklı olacak şekilde tasarlanmıştır ve SATA 1.0 spesifikasyonu Çalışırken Takmayı mümkün kılmıştır.

Disklerdeki bazı pinler diğerlerinden daha kısadır. Bu, Hot Swap'ı desteklemek için yapılır. Değiştirme işlemi sırasında cihaz, hatları önceden belirlenmiş bir sırayla “kaybeder” ve “bulur”.

Bir yıldan biraz daha uzun bir süre sonra, Nisan 2004'te SATA spesifikasyonunun ikinci versiyonu yayınlandı. 3 Gbit/s'ye varan hızlanmanın yanı sıra SATA 2.0 teknolojisi de tanıtıldı Yerel Komut Kuyruklama (NCQ). NCQ desteğine sahip cihazlar, maksimum performansa ulaşmak için alınan komutların yürütülme sırasını bağımsız olarak düzenleyebilir.

SSD'ye giriş. Bölüm 2. Arayüz
Sonraki üç yıl boyunca, SATA Çalışma Grubu mevcut spesifikasyonu geliştirmek için çalıştı ve sürüm 2.6'da kompakt Slimline ve mikro SATA (uSATA) konektörleri ortaya çıktı. Bu konektörler, orijinal SATA konektörünün daha küçük bir versiyonudur ve dizüstü bilgisayarlardaki optik sürücüler ve küçük sürücüler için tasarlanmıştır.

İkinci nesil SATA'nın sabit sürücüler için yeterli bant genişliği olmasına rağmen SSD'ler daha fazlasına ihtiyaç duyuyordu. Mayıs 2009'da, bant genişliğinin 6 Gbit/s'ye yükseltildiği SATA spesifikasyonunun üçüncü sürümü yayınlandı.

SSD'ye giriş. Bölüm 2. Arayüz
SATA 3.1 sürümünde katı hal sürücülerine özellikle dikkat edildi. Dizüstü bilgisayarlara katı hal sürücülerini bağlamak için tasarlanmış bir Mini-SATA (mSATA) konektörü ortaya çıktı. Slimline ve uSATA'nın aksine, yeni konektör PCIe Mini'ye benziyordu, ancak PCIe ile elektriksel olarak uyumlu değildi. Yeni konnektöre ek olarak SATA 3.1, TRIM komutlarını okuma ve yazma komutlarıyla sıraya koyma becerisine de sahipti.

TRIM komutu, veri yükü taşımayan veri bloklarını SSD'ye bildirir. SATA 3.1'den önce, bu komutun yürütülmesi önbelleklerin temizlenmesine ve G/Ç'nin askıya alınmasına ve ardından bir TRIM komutunun uygulanmasına neden oluyordu. Bu yaklaşım, silme işlemleri sırasında disk performansını düşürdü.

SATA spesifikasyonu, katı hal sürücülerine yönelik erişim hızlarındaki hızlı büyümeye ayak uyduramadı ve bu durum, 2013 yılında SATA 3.2 standardında SATA Express adı verilen bir uzlaşmanın ortaya çıkmasına yol açtı. Geliştiriciler, SATA bant genişliğini tekrar iki katına çıkarmak yerine, hızı 6 Gbps'yi aşan, yaygın olarak kullanılan PCIe veri yolunu kullandılar. SATA Express'i destekleyen sürücüler, M.2 adı verilen kendi form faktörlerini kazanmıştır.

SAS

SSD'ye giriş. Bölüm 2. Arayüz
ATA ile “rekabet eden” SCSI standardı da yerinde durmadı ve Seri ATA'nın 2004 yılında ortaya çıkmasından sadece bir yıl sonra seri arayüz olarak yeniden doğdu. Yeni arayüzün adı Seri Bağlı SCSI (SAZ).

SAS'ın SCSI komut setini devralmış olmasına rağmen değişiklikler önemliydi:

  • seri arayüz;
  • 29 telli güç kablosu;
  • noktadan noktaya bağlantı

SCSI terminolojisi de miras alındı. Denetleyici hâlâ başlatıcı olarak adlandırılıyor ve bağlı cihazlar hâlâ hedef olarak adlandırılıyor. Tüm hedef cihazlar ve başlatıcı bir SAS alanı oluşturur. SAS'ta, her aygıt kendi özel kanalını kullandığından, bağlantı verimi etki alanındaki aygıt sayısına bağlı değildir.

Spesifikasyona göre bir SAS etki alanında eşzamanlı olarak bağlanan maksimum cihaz sayısı 16 bini aşıyor ve adresleme için SCSI kimliği yerine bir tanımlayıcı kullanılıyor Dünya Çapında İsim (WWN).

WWN, SAS aygıtları için MAC adresine benzer, 16 bayt uzunluğunda benzersiz bir tanımlayıcıdır.

SSD'ye giriş. Bölüm 2. Arayüz
SAS ve SATA konektörlerinin benzerliğine rağmen bu standartlar tam olarak uyumlu değildir. Bununla birlikte, bir SATA sürücüsü bir SAS konektörüne bağlanabilir, ancak bunun tersi mümkün değildir. SATA sürücüleri ile SAS alanı arasındaki uyumluluk, SATA Tünel Protokolü (STP) kullanılarak sağlanır.

SAS-1 standardının ilk versiyonu 3 Gbit/s veri aktarım hızına sahipken, en moderni olan SAS-4 bu rakamı 7 kat artırdı: 22,5 Gbit/s.

PCIe

SSD'ye giriş. Bölüm 2. Arayüz
Peripheral Component Interconnect Express (PCI Express, PCIe), 2002'de ortaya çıkan veri aktarımı için bir seri arayüzdür. Geliştirme Intel tarafından başlatıldı ve daha sonra özel bir kuruluş olan PCI Özel İlgi Grubu'na devredildi.

Seri PCIe arayüzü bir istisna değildi ve genişletme kartlarını bağlamak için tasarlanan paralel PCI'nin mantıksal bir devamı haline geldi.

PCI Express, SATA ve SAS'tan önemli ölçüde farklıdır. PCIe arayüzünde değişken sayıda şerit bulunur. Çizgi sayısı ikinin kuvvetlerine eşittir ve 1'den 16'ya kadar değişir.

PCIe'deki "şerit" terimi belirli bir sinyal hattını değil, aşağıdaki sinyal hatlarından oluşan tek bir tam çift yönlü iletişim kanalını ifade eder:

  • resepsiyon+ ve resepsiyon-;
  • iletim+ ve iletim-;
  • dört topraklama iletkeni.

PCIe şeritlerinin sayısı, bağlantının maksimum verimini doğrudan etkiler. Modern PCI Express 4.0 standardı, tek hat üzerinde 1.9 GB/s, 31.5 hat kullanıldığında ise 16 GB/s hıza ulaşmanıza olanak tanır.

SSD'ye giriş. Bölüm 2. Arayüz
Katı hal sürücülere olan ilgi çok hızlı bir şekilde artıyor. Hem SATA hem de SAS'ın, SSD'lere "ayak uydurmak" için bant genişliklerini artırmaya zamanları yok, bu da PCIe bağlantılı SSD sürücülerin ortaya çıkmasına neden oldu.

PCIe Eklenti kartları vidalanmış olsa da PCIe çalışırken değiştirilebilir. Kısa PRSNT pinleri (İngilizce mevcut - mevcut), kartın yuvaya tamamen takıldığından emin olmanızı sağlar.

PCIe aracılığıyla bağlanan katı hal sürücüleri ayrı bir standartla düzenlenir Geçici Olmayan Bellek Ana Bilgisayar Denetleyicisi Arayüzü Spesifikasyonu ve çeşitli form faktörlerinde somutlaşmışlardır, ancak bir sonraki bölümde onlar hakkında konuşacağız.

Uzak sürücüler

Büyük veri ambarları oluştururken, sunucu dışında bulunan sürücülerin bağlanmasına izin veren protokollere ihtiyaç duyuldu. Bu alandaki ilk çözüm şuydu: İnternet SCSI (iSCSI), 1998 yılında IBM ve Cisco tarafından geliştirilmiştir.

iSCSI protokolünün fikri basittir: SCSI komutları TCP/IP paketlerine "sarılır" ve ağa iletilir. Uzak bağlantıya rağmen istemciler için sürücünün yerel olarak bağlı olduğu yanılsaması yaratılır. Mevcut ağ altyapısı üzerine iSCSI tabanlı bir Depolama Alanı Ağı (SAN) oluşturulabilir. iSCSI'yi kullanmak, bir SAN düzenleme maliyetini önemli ölçüde azaltır.

iSCSI'nin "premium" seçeneği vardır - Fiber Kanal Protokolü (FCP). FCP kullanan bir SAN, özel fiber optik iletişim hatları üzerine kuruludur. Bu yaklaşım ek optik ağ ekipmanı gerektirir ancak kararlıdır ve yüksek verime sahiptir.

SCSI komutlarını bilgisayar ağları üzerinden göndermek için birçok protokol vardır. Ancak tam tersi sorunu çözen ve IP paketlerinin SCSI veri yolu üzerinden gönderilmesine izin veren tek bir standart vardır: SCSI üzerinden IP.

Çoğu SAN protokolü, sürücüleri yönetmek için SCSI komut setini kullanır ancak basit gibi istisnalar da vardır. Ethernet üzerinden ATA (AoE). AoE protokolü, ATA komutlarını Ethernet paketleri halinde gönderir, ancak sürücüler sistemde SCSI olarak görünür.

NVM Express sürücülerinin ortaya çıkışıyla birlikte iSCSI ve FCP protokolleri artık SSD'lerin hızla artan taleplerini karşılayamıyor. İki çözüm ortaya çıktı:

  • PCI Express veri yolunun sunucunun dışına taşınması;
  • Fabrics üzerinden NVMe protokolünün oluşturulması.

PCIe veri yolunun çıkarılması, karmaşık anahtarlama ekipmanı oluşturulmasını gerektirir ancak protokolü değiştirmez.

NVMe over Fabrics protokolü, iSCSI ve FCP'ye iyi bir alternatif haline geldi. NVMe-oF, bir fiber optik bağlantı ve NVM Express komut setini kullanır.

DDR-T

SSD'ye giriş. Bölüm 2. Arayüz
iSCSI ve NVMe-oF standartları, uzak diskleri yerel olarak bağlama sorununu çözüyor ancak Intel farklı bir yol izledi ve yerel diski işlemciye mümkün olduğunca yaklaştırdı. Seçim, RAM'in bağlı olduğu DIMM yuvalarına düştü. DDR4 kanalının maksimum bant genişliği 25 GB/s'dir; bu, PCIe veriyolunun hızından önemli ölçüde daha yüksektir. Intel® Optane™ DC Kalıcı Bellek SSD böyle doğdu.

Sürücüleri DIMM yuvalarına bağlamak için bir protokol icat edildi DDR-T, fiziksel ve elektriksel olarak DDR4 ile uyumludur, ancak bellek çubuğu ile sürücü arasındaki farkı gören özel bir denetleyici gerektirir. Sürücünün erişim hızı RAM'den daha yavaş, ancak NVMe'den daha hızlıdır.

DDR-T yalnızca Intel® Cascade Lake işlemciler veya üzeriyle kullanılabilir.

Sonuç

Hemen hemen tüm arayüzler seri veri aktarım yöntemlerinden paralel veri aktarım yöntemlerine doğru uzun bir yol kat etti. SSD hızları hızla artıyor; daha dün SSD'ler bir yenilikti, ancak bugün NVMe artık pek de şaşırtıcı değil.

Laboratuvarımızda Seçim Laboratuvarı SSD ve NVMe sürücülerini kendiniz test edebilirsiniz.

Ankete sadece kayıtlı kullanıcılar katılabilir. Giriş yapLütfen.

NVMe sürücüleri yakın gelecekte klasik SSD'lerin yerini alacak mı?

  • %55.5Evet100

  • %44.4hayır80

180 kullanıcı oy kullandı. 28 kişi çekimser kaldı.

Kaynak: habr.com

Yorum ekle