Uvod u SSD. Deo 2. Interfejsna

Uvod u SSD. Deo 2. Interfejsna

V prejšnjem delu V ciklu „Uvod v SSD“ smo predstavili zgodovino nastanka diskov. Drugi del bo predstavil vmesnike povezovanja s shranjevalniki.

Komunikacija med procesorjem in periferijskimi napravami poteka v skladu s vnaprej določenimi dogovori, imenovanimi vmesniki. Ti dogovori določajo fizično in programsko raven interakcije.

Vmesnik je skupek sredstev, metod in pravil za sodelovanje med elementi sistema.

Fizična realizacija vmesnika vpliva na naslednje parametre:

  • propustnost komunikacijskega kanala;
  • največje število hkrati povezanih naprav;
  • število nastalih napak.

Diskovni vmesniki so zasnovani na vhodno-izhodnih vhodih, kar je nasprotje vhodu-izhoda prek pomnilnika in ne zavzema prostora v naslovnem prostoru procesorja.

Paralelni in serijski vhodi

Glede na način izmenjave podatkov se vhodno-izhodni vhodi delijo na dva tipa:

  • paralelni;
  • serijski.

Kot izhaja iz imena, paralelni vhod pošlje v enem koraku besedo strojnega jezika, sestavljeno iz več bitov. Paralelni vhod je najpreprostejši način izmenjave podatkov, saj ne zahteva zapletenih shematskih rešitev. V najpreprostejšem primeru se vsak bit strojne besede pošlje po svoji signalni liniji, za povratne informacije pa se uporabljata dve pomožni signalni liniji: Podatki so pripravljeni in Podatki so sprejeti.

Uvod u SSD. Deo 2. Interfejsna
Paralelni vhodi na prvi pogled odlično skalirajo: več signalnih linij – več bitov se pošlje v enem koraku, kar pomeni višjo propustnost. Kljub temu pa povečanje števila signalnih linij med njimi povzroča interferenčno sodelovanje, kar vodi do izkrivljanja prenesenih sporočil.

Serijski vhodi so nasprotje paralelnim. Pošiljanje podatkov poteka po enem bitu naenkrat, kar zmanjšuje skupno število signalnih linij, a zapleta krmilnik vhod-izhod. Krmilnik oddajnika prejme strojno besedo naenkrat in mora prenašati po en bit, krmilnik sprejemnika pa mora ponovno sprejemati bite in jih shranjevati v istem redu.

Uvod u SSD. Deo 2. Interfejsna
Majhno število signalnih linij omogoča brez motenj povečanje frekvence prenosa sporočila.

SCSI

Uvod u SSD. Deo 2. Interfejsna
Mali računalni sustav sučelja (SCSI) pojavio se davne 1978. godine i prvotno je razvijen kako bi spojio uređaje različitog profila u jednu jedinstvenu sustav. SCSI-1 specifikacija predviđa priključenje do 8 uređaja (zajedno s kontrolerom), kao što su:

  • skeneri;
  • trakasti diskovi (streameri);
  • optčki uređaji;
  • diskovni uređaji i ostali uređaji.

Prvotno je SCSI imao naziv Shugart Associates System Interface (SASI), ali standardizacijski odbor nije odobrio naziv u čast tvrtke i nakon dana brainstorming-a došlo je do imena Mali računalni sustav sučelja (SCSI). "Otac" SCSI-a, Larry Boucher, pretpostavio je da će se skraćenica izgovarati kao "sexy", ali Dal Allan pročitao je "sсuzzy" ("squzy"). Uslijedilo je da se izgovor "squzy" trajno ustalio za ovaj standard.

U terminologiji SCSI povezani uređaji dijele se na dva tipa:

  • inicijatori;
  • ciljni uređaji.

Inicijator šalje naredbu ciljnim uređaju, koji zatim šalje odgovor inicijatoru. Inicijatori i ciljni uređaji spojeni su na zajedničku SCSI sabirnicu, čija propusnost u SCSI-1 standardu iznosi 5 MB/s.

Korištena 'zajednička sabirnica' topologija nameće određena ograničenja:

  • na krajevima sabirnice potrebni su posebni uređaji — terminatori;
  • propusnost sabirnice dijeli se među svim uređajima;
  • maksimalan broj istovremeno povezanih uređaja je ograničen.

Uvod u SSD. Deo 2. Interfejsna

Uređaji na sabirnici identificiraju se jedinstvenim brojem, koji se naziva SCSI cilj ID. Svaki SCSI-jedinica u sustavu predstavljena je s najmanje jednim logičkim uređajem, čija se adresacija vrši jedinstvenom broju unutar fizičkog uređaja Logički broj jedinice (LUN).

Uvod u SSD. Deo 2. Interfejsna
Naredbe u SCSI-u šalju se u obliku blokova opisa naredbe (Command Descriptor Block, CDB), koji se sastoje od koda operacije i parametara naredbe. U standardu je opisano više od 200 naredbi, razvrstanih u četiri kategorije:

  • Obavezno — moraju ih podržavati uređaji;
  • Opcionalno — mogu se implementirati;
  • Specifično za proizvođača — koriste se od strane određenog proizvođača;
  • Zastarjelo — zastarjele naredbe.

Među brojnim naredbama, samo tri su obavezna za uređaje:

  • TEST UNIT READY — provjera spremnosti uređaja;
  • REQUEST SENSE — zahtijeva kod pogreške prethodne naredbe;
  • INQUIRY — zahtjev za osnovnim karakteristikama uređaja.

Ko po prejetju in obdelavi ukaza ciljna naprava pošlje iniciatorju statusno kodo, ki opisuje rezultat izvrševanja.

Dodatne izboljšave SCSI (specifikacije SCSI-2 in Ultra SCSI) so razširile seznam uporabljenih ukazov in povečale število povezanih naprav na 16, hitrost prenosa podatkov po vodilu pa na 640 MB/s. Ker je SCSI vzporedni vmesnik, je povečanje frekvence prenosa podatkov povzročilo zmanjšanje maksimalne dolžine kabla in otežilo uporabo.

Z standardom Ultra-3 SCSI se je pojavila podpora za "vroče priključevanje" — povezovanje naprav pri vklopljenem napajanju.

Prvi znani SSD disk z vmesnikom SCSI je M-Systems FFD-350, ki je bil izdan leta 1995. Disk je imel visoko ceno in ni bil široko razširjen.

Trenutno vzporedni SCSI ni priljubljen vmesnik za povezovanje diskov, vendar se skupek ukazov še vedno aktivno uporablja v vmesnikih USB in SAS.

ATA / PATA

Uvod u SSD. Deo 2. Interfejsna
Vmesnik ATA (Advanced Technology Attachment), znan tudi kot PATA (Parallel ATA) je bil razvit podjetjem Western Digital leta 1986. Tržno ime standarda IDE (angl. Integrated Drive Electronics — "elektronika, vgrajena v napravo") je poudarilo pomembno novost: krmilnik naprave je bil vgrajen v napravo, ne pa na ločeni razširitveni plošči.

Odločitev, da se krmilnik namesti znotraj naprave, je rešila več težav hkrati. Prvič, zmanjšala se je razdalja od pomnilnika do krmilnika, kar je pozitivno vplivalo na zmogljivosti naprave. Drugič, vgrajen krmilnik je bil "prilagojen" samo za določen tip naprave in je bil zato cenejši.

Uvod u SSD. Deo 2. Interfejsna
ATA, podobno kot SCSI, uporablja vzporedni način vnosa-izvoda, kar se odraža na uporabljenih kablih. Za povezovanje diskov z uporabo vmesnika IDE so potrebni 40-vodni kabli, imenovani tudi trakovi. V kasnejših specifikacijah se uporabljajo 80-vodni trakovi, od katerih je več kot polovica zaščitnih za zmanjšanje motenj pri visokih frekvencah.

Na traku ATA je od dveh do štirih priključkov, od katerih je en priključen na matično ploščo, ostali pa na pomnilnike. Pri povezovanju dveh naprav z enim trakom mora biti ena od njiju konfigurirana kot Master, druga pa kot Slave. Tretje napravo se lahko poveže le v načinu "samo za branje".

Uvod u SSD. Deo 2. Interfejsna
Položaj mostička določa vlogo posamezne naprave. Pojma Master in Slave v zvezi z napravami nista povsem ustrezna, saj so glede na krmilnik vse priključene naprave Slaves.

Ena izmed posebnosti ATA-3 je pojav Samoopazovanje, Tehnologija analize in poročanja (S.M.A.R.T.). Pet podjetij (IBM, Seagate, Quantum, Conner in Western Digital) je združilo moči in standardiziralo tehnologijo ocenjevanja stanja pomnilnikov.

Podpora za trde spominske naprave se je pojavila s četrto različico standarda, izdano leta 1998. Ta različica standarda je omogočila hitrost prenosa podatkov do 33,3 MB/s.

Standard postavlja stroge zahteve za ATA kablove:

  • kabli morajo biti nujno ploščati;
  • maksimalna dolžina kabla je 18 palcev (45.7 centimetrov).

Kratek in širok kabel je bil nepraktičen in je oviral hlajenje. Povečevanje frekvence prenosa s vsako naslednjo različico standarda je postajalo vse težje, in ATA-7 je problem rešil radikalno: vzporedni vmesnik je bil nadomeščen s serijskim. Po tem je ATA pridobil besedo Parallel in postal imenovan PATA, sedma različica standarda pa je dobila drugo ime — Serial ATA. Numeracija različic SATA se je začela z enim.

SATA

Uvod u SSD. Deo 2. Interfejsna
Standard Serial ATA (SATA) je bil predstavljen 7. januarja 2003 in je rešil težave svojega predhodnika z naslednjimi spremembami:

  • vzporedni priključek je bil zamenjan s serijskim;
  • širok 80-žični kabel je bil zamenjan s 7-žičnim;
  • topologija "skupinska izvedba" je bila zamenjana s povezavo "točka-točka".

Čeprav je bil standard SATA 1.0 (SATA/150, 150 MB/s) nekoliko hitrejši od ATA-6 (UltraDMA/130, 130 MB/s), je bil prehod na serijski način prenosa podatkov "priprava terena" za povečanje hitrosti.

Šestnajst signalnih vodnikov za prenos podatkov v ATA je bilo zamenjanih z dvema zasukanima paroma: ena za prenos, druga za sprejem. SATA konektorji so zasnovani za večjo odpornost na večkratna preklapljanja, specifikacija SATA 1.0 pa je omogočila "vroče povezovanje" (Hot Plug).

Nekatere pini na diskih so krajši od vseh drugih. To je narejeno za podporo "vročemu zamenjanju" (Hot Swap). Med zamenjavo naprava "izgubi" in "najde" povezave v vnaprej določenem vrstnem redu.

Tako malo više od godine, u aprilu 2004. godine, objavljena je druga verzija SATA specifikacije. Pored povećanja brzine do 3 Gbit/s, u SATA 2.0 je uvedena tehnologija Native Command Queuing (NCQ). Uređaji koji podržavaju NCQ sposobni su da samostalno organizuju redosled izvršavanja primljenih komandi radi postizanja maksimalnog učinka.

Uvod u SSD. Deo 2. Interfejsna
Tokom naredne tri godine, SATA radna grupa radila je na poboljšanju postojeće specifikacije, a u verziji 2.6 su se pojavili kompaktni konektori Slimline i micro SATA (uSATA). Ovi konektori su smanjena kopija originalnog SATA konektora i dizajnirani su za optičke uređaje i male diskove u laptopovima.

Iako je propusnost druge generacije SATA bila dovoljna za hard diskove, čvrsti diskovi su zahtevali više. U maju 2009. godine objavljena je treća verzija SATA specifikacije sa povećanom propusnošću do 6 Gbit/s.

Uvod u SSD. Deo 2. Interfejsna
Posebna pažnja čvrstim diskovima posvećena je u izdanju SATA 3.1. Pojavio se konektor Mini-SATA (mSATA), namenjen za povezivanje čvrstih diskova u laptopovima. Za razliku od Slimline i uSATA, novi konektor je bio sličan PCIe Mini, iako nije bio električno kompatibilan sa PCIe. Pored novog konektora, SATA 3.1 se mogao pohvaliti mogućnošću postavljanja TRIM komandi u red sa komandom za čitanje i pisanje.

TRIM komanda obaveštava čvrsti disk o blokovima podataka koji nemaju korisnu vrednost. Pre SATA 3.1, izvršavanje ove komande dovodilo je do resetovanja keš memorije i obustave ulazno-izlaznih operacija sa naknadnim izvršavanjem TRIM komande. Ovakav pristup je pogoršavao performanse diska prilikom brisanja operacija.

SATA specifikacija nije uspevala da prati brzi rast brzine pristupa čvrstim diskovima, što je dovelo do pojave kompromisa pod nazivom SATA Express unutar standarda SATA 3.2 2013. godine. Umesto da ponovo udvostruče propusnost SATA, programeri su upotrebljavali široko rasprostranjenu PCIe magistralu, čija brzina premašuje 6 Gbit/s. Diskovi sa podrškom za SATA Express dobili su svoj vlastiti form-faktor nazvan M.2.

SAS

Uvod u SSD. Deo 2. Interfejsna
Standard SCSI, koji 'konkuriše' sa ATA, takođe nije mirovao i samo godinu dana nakon pojave Serial ATA, 2004. godine, transformisao se u serijski interfejs. Novo ime za interfejs je Serial Attached SCSI (SAS).

Čeprav je SAS podedoval nabor ukazov SCSI, so bile spremembe pomembne:

  • zaporedni vmesnik;
  • 29-žilni kabel za napajanje;
  • povezava 'točka-točka'

Terminologija SCSI je bila prav tako podedovana. Krmilnik še vedno imenujemo iniciator, povezana naprava pa je ciljni. Vse ciljne naprave in iniciator sestavljajo SAS-domen. V SAS pasovna širina povezave ni odvisna od števila naprav v domeni, saj vsaka naprava uporablja svoj dodeljeni kanal.

Največje število hkrati povezanih naprav v SAS-domeni po specifikaciji presega 16 tisoč, namesto SCSI ID pa se za naslavljanje uporablja identifikator World-Wide Name (WWN).

WWN je edinstven identifikator dolžine 16 bajtov, podoben MAC-naslovu za SAS-naprave.

Uvod u SSD. Deo 2. Interfejsna
Čeprav so priključki SAS in SATA podobni, ti standardi niso popolnoma združljivi. Kljub temu se SATA-disk lahko priključi na SAS-priključek, obratno pa ne. Združljivost med SATA-diskom in SAS-domeno je zagotovljena s protokolom SATA Tunneling Protocol (STP).

Prva različica standarda SAS-1 ima pasovno širino 3 Gbit/s, medtem ko je najsodobnejša, SAS-4, izboljšala to mero sedemkrat: 22,5 Gbit/s.

PCIe

Uvod u SSD. Deo 2. Interfejsna
Peripheral Component Interconnect Express (PCI Express, PCIe) je zaporedni vmesnik za prenos podatkov, ki se je pojavil leta 2002. Razvoj je začela podjetje Intel, nato pa ga je predala posebni organizaciji - PCI Special Interest Group.

Zaporedni vmesnik PCIe ni bil izjema in je postal logično nadaljevanje paralelnega PCI, ki je namenjen povezovanju razširitvenih kartic.

PCI Express se znatno razlikuje od SATA in SAS. Vmesnik PCIe ima spremenljivo število vodnikov. Število vodnikov je enako potenčnim številom in se giba od 1 do 16.

Termin 'vodnik' v PCIe ne označuje konkretne signalne linije, temveč posamezen polnodupleksni komunikacijski kanal, ki je sestavljen iz naslednjih signalnih linij:

  • sprejem+ in sprejem-;
  • pošiljanje+ in pošiljanje-;
  • štiri žice za ozemljitev.

Število PCIe-vodnikov neposredno vpliva na največjo pasovno širino povezave. Sodobni standard PCI Express 4.0 omogoča dosego 1,9 GB/s po eni vodniku in 31,5 GB/s pri uporabi 16 vodnikov.

Uvod u SSD. Deo 2. Interfejsna
Apetit SSD-jev raste vrlo brzo. I SATA i SAS ne uspevaju da povećaju svoju propusnost kako bi „uhvatile“ korak sa SSD-ovima, što je dovelo do pojave SSD diskova sa PCIe vezom.

Iako se PCIe Add-In kartice pričvršćuju šrafovima, PCIe podržava „vruću zamenu“. Kratki pinovi PRSNT (eng. present — prisutan) omogućavaju da se potvrdi da je kartica potpuno postavljena u slot.

SSD-ovi povezani putem PCIe regulisani su posebnim standardom Specifikacija za upravljački interfejs ne-volatilne memorije i dolaze u različitim form-factorima, ali ćemo o njima govoriti u sledećem delu.

Daljinski skladišta

Sa razvojem velikih skladišta podataka pojavila se potreba za protokolima koji omogućuju povezivanje skladišta smeštenih van servera. Prvo rešenje u ovoj oblasti je bilo Internet SCSI (iSCSI), razvijen od strane kompanija IBM i Cisco 1998. godine.

Ideja iSCSI protokola je jednostavna: SCSI komande se „obavijaju“ u TCP/IP pakete i prenose mrežom. Iako je povezano udaljeno, klijentima se stvara iluzija da je skladište lokalno povezano. Mreža za skladištenje podataka (Storage Area Network, SAN) zasnovana na iSCSI može se izgraditi na postojećoj mrežnoj infrastrukturi. Korišćenje iSCSI značajno smanjuje troškove organizacije SAN.

iSCSI ima „premijum“ varijantu — Fibre Channel Protocol (FCP). SAN sa korišćenjem FCP gradi se na posebnim optičkim vezama. Ovaj pristup zahteva dodatnu optičku mrežnu opremu, ali se odlikuje stabilnošću i visokom propusnošću.

Postoji mnogo protokola za slanje SCSI komandi preko računarskih mreža. Ipak, postoji samo jedan standard koji rešava suprotni problem i omogućava slanje IP paketa preko SCSI sabirnice — IP-over-SCSI.

Većina protokola za organizaciju SAN koristi SCSI skup komandi za upravljanje skladištima, ali postoje i izuzeci, kao što je jednostavni ATA over Ethernet (AoE). AoE protokol šalje ATA komande u Ethernet paketima, ali se u sistemu skladišta prikazuju kao SCSI.

Sa pojavom NVM Express skladišta, iSCSI i FCP protokoli su prestali da zadovoljavaju brzo rastuće zahteve SSD-ova. Pojavila su se dva rešenja:

  • izvođenje PCI Express sabirnice van servera;
  • stvaranje protokola NVMe over Fabrics.

Izvlačenje PCIe pristupa stvara složenu prekidačku opremu, ali ne menja protokol.

NVMe over Fabrics protokol postao je dobra alternativa iSCSI i FCP. NVMe-oF koristi optičke komunikacione linije i NVM Express komande.

DDR-T

Uvod u SSD. Deo 2. Interfejsna
iSCSI i NVMe-oF standardi rešavaju problem povezivanja udaljenih diskova kao lokalnih, dok je kompanija Intel izabrala drugačiji pristup maksimalnom približavanju lokalnog diska procesoru. Odabrani su DIMM slotovi, u koje se povezuje radna memorija. Maksimalna propusnost DDR4 kanala iznosi 25 GB/s, što znatno premašuje brzinu PCIe magistrale. Tako je nastala Intel® Optane™ DC Persistent Memory SSD.

Za povezivanje diska u DIMM slotove izmišljen je protokol DDR-T, fizički i električno kompatibilan sa DDR4, ali zahteva poseban kontroler koji prepoznaje razliku između memorijske trake i diska. Brzina pristupa disku je manja od brzine radne memorije, ali veća od NVMe-a.

DDR-T protokol je dostupan samo sa Intel® procesorima generacije Cascade Lake ili novijim.

Zaključek

Skoro svi interfejsi su prošli dug put razvoja od serijskog do paralelnog načina prenos podataka. Brzine SSD diskova brzo rastu, juče su SSD-ovi bili retkost, a danas NVMe više ne izaziva posebno iznenađenje.

U našoj laboratoriji Selectel Lab možete sami testirati SSD i NVMe diskove.

Samo registrovani korisnici mogu učestvovati u anketi. Prijavite se, molim vas.

Hoće li NVMe diskovi brzo zameniti klasične SSD diskove?

  • 55.5%Da100

  • 44.4%Ne80

Glasalo je 180 korisnika. Uzdržano 28 korisnika.

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster