Uvod u SSD. Dio 2. Sučelje

Uvod u SSD. Dio 2. Sučelje

В posljednji dio U seriji "Uvod u SSD" govorili smo o povijesti pojavljivanja diskova. Drugi dio će govoriti o sučeljima za interakciju s pogonima.

Komunikacija između procesora i perifernih uređaja odvija se prema unaprijed definiranim konvencijama koje se nazivaju sučelja. Ovi ugovori reguliraju fizičku i softversku razinu interakcije.

Sučelje je skup alata, metoda i pravila interakcije između elemenata sustava.

Fizička implementacija sučelja utječe na sljedeće parametre:

  • kapacitet komunikacijskog kanala;
  • maksimalan broj istovremeno povezanih uređaja;
  • broj grešaka koje se javljaju.

Disk sučelja su izgrađena na I/O portovi, što je suprotno od I/O memorije i ne zauzima prostor u adresnom prostoru procesora.

Paralelni i serijski portovi

Prema načinu razmjene podataka I/O portovi se dijele na dvije vrste:

  • paralelno;
  • dosljedan.

Kao što ime sugerira, paralelni port šalje strojnu riječ koja se sastoji od nekoliko bitova odjednom. Paralelni priključak najjednostavniji je način razmjene podataka jer ne zahtijeva složena sklopovna rješenja. U najjednostavnijem slučaju, svaki bit strojne riječi šalje se duž vlastite signalne linije, a dvije službene signalne linije koriste se za povratnu informaciju: Podaci spremni и Podaci prihvaćeni.

Uvod u SSD. Dio 2. Sučelje
Na prvi pogled čini se da se paralelni portovi jako dobro skaliraju: više signalnih linija znači više bitova koji se prenose u isto vrijeme i, prema tome, veću propusnost. Međutim, zbog povećanja broja signalnih linija dolazi do interferencije između njih, što dovodi do izobličenja odaslanih poruka.

Serijski portovi su suprotni od paralelnih portova. Podaci se šalju jedan po bit, što smanjuje ukupni broj signalnih linija, ali dodaje složenost I/O kontroleru. Kontroler odašiljača prima strojnu riječ odjednom i mora odašiljati jedan bit po bit, a kontroler prijemnika zauzvrat mora primiti bitove i pohraniti ih istim redoslijedom.

Uvod u SSD. Dio 2. Sučelje
Mali broj signalnih linija omogućuje povećanje frekvencije prijenosa poruka bez smetnji.

SCSI

Uvod u SSD. Dio 2. Sučelje
Sučelje malih računalnih sustava (SCSI) pojavilo se davne 1978. godine i izvorno je dizajnirano za spajanje uređaja različitih profila u jedan sustav. SCSI-1 specifikacija je omogućila povezivanje do 8 uređaja (zajedno s kontrolerom), kao što su:

  • skeneri;
  • pogoni trake (streameri);
  • optički pogoni;
  • diskovne jedinice i druge uređaje.

SCSI se izvorno zvao Shugart Associates System Interface (SASI), ali odbor za standarde nije odobrio naziv po tvrtki, te je nakon dana razmišljanja rođen naziv Small Computer Systems Interface (SCSI). "Otac" SCSI-ja, Larry Boucher, namjeravao je da se akronim izgovara kao "seksi", ali Dal Allan Čitam "scuzzy" ("reci mi"). Nakon toga, izgovor "skazi" čvrsto je pripisan ovom standardu.

U SCSI terminologiji povezani uređaji se dijele u dvije vrste:

  • inicijatori;
  • ciljne uređaje.

Inicijator šalje naredbu ciljnom uređaju, koji zatim šalje odgovor inicijatoru. Inicijatori i ciljevi povezani su na zajedničku SCSI sabirnicu, koja ima propusnost od 1 MB/s u SCSI-5 standardu.

Korištena topologija "zajedničke sabirnice" nameće brojna ograničenja:

  • Na krajevima sabirnice potrebni su posebni uređaji - terminatori;
  • Propusnost sabirnice dijeli se među svim uređajima;
  • Maksimalni broj istovremeno povezanih uređaja je ograničen.

Uvod u SSD. Dio 2. Sučelje

Uređaji na sabirnici identificirani su jedinstvenim pozivnim brojem ID cilja SCSI. Svaka SCSI jedinica u sustavu predstavljena je barem jednim logičkim uređajem, koji se adresira pomoću jedinstvenog broja unutar fizičkog uređaja Broj logičke jedinice (LUN).

Uvod u SSD. Dio 2. Sučelje
SCSI naredbe se šalju kao blokovi opisa naredbi (Command Deskriptor Block, CDB), koji se sastoji od koda operacije i parametara naredbe. Standard opisuje više od 200 naredbi, podijeljenih u četiri kategorije:

  • obavezan - mora biti podržan od strane uređaja;
  • Izborni - može se provesti;
  • Specifično za dobavljača - koristi ga određeni proizvođač;
  • Zastario - zastarjele naredbe.

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

  • TESTNA JEDINICA SPREMNA — provjera spremnosti uređaja;
  • ZAHTJEV SMISAL — traži kod greške prethodne naredbe;
  • UPIT — zahtjev za osnovne karakteristike uređaja.

Nakon primanja i izvršenja naredbe, ciljni uređaj šalje inicijatoru statusni kod koji opisuje rezultat izvršenja.

Daljnjim unapređenjem SCSI-ja (SCSI-2 i Ultra SCSI specifikacije) proširen je popis korištenih naredbi i povećan broj povezanih uređaja na 16, a brzina razmjene podataka na sabirnici na 640 MB/s. Budući da je SCSI paralelno sučelje, povećanje frekvencije razmjene podataka bilo je povezano sa smanjenjem maksimalne duljine kabela i dovelo je do neugodnosti u korištenju.

Počevši od Ultra-3 SCSI standarda, pojavila se podrška za "hot plugging" - povezivanje uređaja dok je napajanje uključeno.

Prvi poznati SSD disk sa SCSI sučeljem može se smatrati M-Systems FFD-350, izdanim 1995. godine. Disk je imao visoku cijenu i nije bio široko rasprostranjen.

Trenutno paralelni SCSI nije popularno sučelje za povezivanje diska, ali se skup naredbi još uvijek aktivno koristi u USB i SAS sučeljima.

ATA/PATA

Uvod u SSD. Dio 2. Sučelje
sučelje ATA (Advanced Technology Attachment), također poznat kao PATA (Parallel ATA) razvio je Western Digital 1986. Marketinški naziv za IDE standard (Integrated Drive Electronics) naglašava važnu inovaciju: kontroler pogona ugrađen je u pogon, a ne na zasebnoj ploči za proširenje.

Odluka da se kontroler smjesti unutar pogona riješila je nekoliko problema odjednom. Prvo, smanjena je udaljenost od pogona do kontrolera, što pozitivno utječe na karakteristike pogona. Drugo, ugrađeni kontroler bio je "skrojen" samo za određenu vrstu pogona i, shodno tome, bio je jeftiniji.

Uvod u SSD. Dio 2. Sučelje
ATA, kao i SCSI, koristi paralelnu I/O metodu, što utječe na kabele koji se koriste. Za povezivanje pogona pomoću IDE sučelja potrebni su 40-žilni kabeli, koji se nazivaju i kabeli. Novije specifikacije koriste petlje od 80 žica: od kojih je više od polovice osnova za smanjenje smetnji na visokim frekvencijama.

ATA kabel ima od dva do četiri konektora, od kojih je jedan spojen na matičnu ploču, a ostatak na pogone. Kada spajate dva uređaja jednim kabelom, jedan od njih mora biti konfiguriran kao Majstorski, a drugi - kao rob. Treći uređaj može se spojiti isključivo u načinu rada samo za čitanje.

Uvod u SSD. Dio 2. Sučelje
Položaj kratkospojnika određuje ulogu određenog uređaja. Pojmovi Master i Slave u odnosu na uređaje nisu sasvim točni, budući da su u odnosu na upravljač svi povezani uređaji Slave.

Posebna inovacija u ATA-3 je izgled Samonadzor, Tehnologija analize i izvješćivanja (SMART). Pet kompanija (IBM, Seagate, Quantum, Conner i Western Digital) udružilo je snage i standardiziralo tehnologiju za procjenu ispravnosti diskova.

Podrška za solid-state diskove pojavila se s četvrtom verzijom standarda, objavljenom 1998. Ova verzija standarda omogućila je brzine prijenosa podataka do 33.3 MB/s.

Standard postavlja stroge zahtjeve za ATA kabele:

  • vlak mora biti ravan;
  • maksimalna duljina vlaka je 18 inča (45.7 centimetara).

Kratak i širok vlak bio je nezgodan i ometao je hlađenje. Sa svakom sljedećom verzijom standarda postalo je sve teže povećavati frekvenciju prijenosa, a ATA-7 je radikalno riješio problem: paralelno sučelje zamijenjeno je serijskim. Nakon toga ATA je dobio riječ Parallel i postao poznat kao PATA, a sedma verzija standarda dobila je drugačiji naziv - Serial ATA. Numeriranje SATA verzija počelo je od jedan.

SATA

Uvod u SSD. Dio 2. Sučelje
Standard Serial ATA (SATA) uveden je 7. siječnja 2003. i riješio je probleme svog prethodnika sa sljedećim promjenama:

  • paralelni port je zamijenjen serijskim;
  • široki 80-žilni kabel zamijenjen je 7-žilnim;
  • Topologija "zajedničke sabirnice" zamijenjena je vezom "od točke do točke".

Unatoč činjenici da je standard SATA 1.0 (SATA/150, 150 MB/s) bio neznatno brži od ATA-6 (UltraDMA/130, 130 MB/s), prijelaz na metodu serijske razmjene podataka "pripremio je teren" za povećane brzine

Šesnaest signalnih linija za prijenos podataka u ATA zamijenjeno je s dvije upredene parice: jedna za prijenos, druga za prijem. SATA konektori dizajnirani su da budu otporniji na višestruka ponovna povezivanja, a specifikacija SATA 1.0 omogućila je Hot Plug.

Neke su igle na diskovima kraće od svih ostalih. Ovo je učinjeno kako bi se podržala Hot Swap. Tijekom procesa zamjene, uređaj "gubi" i "pronalazi" linije unaprijed određenim redoslijedom.

Nešto više od godinu dana kasnije, u travnju 2004., objavljena je druga verzija SATA specifikacije. Uz ubrzanje do 3 Gbit/s, SATA 2.0 uveo je tehnologiju Red čekanja matične zapovijedi (NCQ). Uređaji s podrškom za NCQ mogu samostalno organizirati redoslijed izvršavanja primljenih naredbi kako bi se postigla maksimalna izvedba.

Uvod u SSD. Dio 2. Sučelje
Sljedeće tri godine radna grupa SATA radila je na poboljšanju postojeće specifikacije te su se u verziji 2.6 pojavili kompaktni Slimline i mikro SATA (uSATA) konektori. Ovi konektori su manja verzija izvornog SATA konektora i dizajnirani su za optičke pogone i male pogone u prijenosnim računalima.

Iako je druga generacija SATA-a imala dovoljnu propusnost za tvrde diskove, SSD-ovi su zahtijevali više. U svibnju 2009. izdana je treća verzija SATA specifikacije s povećanom propusnošću na 6 Gbit/s.

Uvod u SSD. Dio 2. Sučelje
Posebna pažnja posvećena je solid-state diskovima u izdanju SATA 3.1. Pojavio se konektor Mini-SATA (mSATA), dizajniran za povezivanje SSD diskova u prijenosnim računalima. Za razliku od Slimline i uSATA, novi konektor bio je sličan PCIe Mini, iako nije bio električno kompatibilan s PCIe. Uz novi konektor, SATA 3.1 se može pohvaliti sposobnošću postavljanja TRIM naredbi u red s naredbama za čitanje i pisanje.

Naredba TRIM obavještava SSD o podatkovnim blokovima koji ne nose korisni teret. Prije SATA 3.1, izvršavanje ove naredbe uzrokovalo bi ispiranje predmemorija i obustavu I/O, nakon čega bi uslijedila naredba TRIM. Ovaj pristup pogoršao je performanse diska tijekom operacija brisanja.

SATA specifikacija nije mogla pratiti nagli rast pristupnih brzina za solid-state diskove, što je dovelo do pojave kompromisa pod nazivom SATA Express u standardu SATA 2013 3.2. godine. Umjesto ponovnog udvostručenja SATA propusnosti, programeri su koristili široko korištenu PCIe sabirnicu, čija brzina prelazi 6 Gbps. Pogoni koji podržavaju SATA Express dobili su vlastiti faktor oblika koji se zove M.2.

SAS

Uvod u SSD. Dio 2. Sučelje
Standard SCSI, koji se "natječe" s ATA, također nije stajao mirno i samo godinu dana nakon pojave Serial ATA, 2004., ponovno je rođen kao serijsko sučelje. Naziv novog sučelja je Serial Attached SCSI (SAS).

Unatoč činjenici da je SAS naslijedio SCSI skup naredbi, promjene su bile značajne:

  • serijsko sučelje;
  • 29-žilni kabel za napajanje;
  • veza od točke do točke

SCSI terminologija je također naslijeđena. Upravljač se i dalje naziva inicijator, a povezani uređaji i dalje se nazivaju cilj. Svi ciljni uređaji i inicijator čine SAS domenu. U SAS-u, propusnost veze ne ovisi o broju uređaja u domeni, budući da svaki uređaj koristi svoj namjenski kanal.

Maksimalan broj istovremeno povezanih uređaja u SAS domeni prema specifikaciji prelazi 16 tisuća, a umjesto SCSI ID-a za adresiranje se koristi identifikator Svjetsko ime (WWN).

WWN je jedinstveni identifikator dug 16 bajtova, analogan MAC adresi za SAS uređaje.

Uvod u SSD. Dio 2. Sučelje
Unatoč sličnosti SAS i SATA konektora, ti standardi nisu potpuno kompatibilni. Međutim, SATA disk se može spojiti na SAS konektor, ali ne i obrnuto. Kompatibilnost između SATA diskova i SAS domene osigurana je korištenjem SATA Tunneling Protocol (STP).

Prva verzija standarda SAS-1 ima propusnost od 3 Gbit/s, a najmodernija, SAS-4, poboljšala je tu brojku za 7 puta: 22,5 Gbit/s.

PCIe

Uvod u SSD. Dio 2. Sučelje
Peripheral Component Interconnect Express (PCI Express, PCIe) je serijsko sučelje za prijenos podataka koje se pojavilo 2002. godine. Razvoj je započeo Intel, a kasnije je prebačen u posebnu organizaciju - PCI Special Interest Group.

Serijsko PCIe sučelje nije bilo iznimka i postalo je logičan nastavak paralelnog PCI-a, koji je dizajniran za povezivanje kartica za proširenje.

PCI Express se značajno razlikuje od SATA i SAS. PCIe sučelje ima promjenjivi broj staza. Broj redaka jednak je potencijama dvojke i kreće se od 1 do 16.

Izraz "traka" u PCIe ne odnosi se na određenu signalnu liniju, već na jedan full-duplex komunikacijski kanal koji se sastoji od sljedećih signalnih linija:

  • recepcija+ i recepcija-;
  • prijenos+ i prijenos-;
  • četiri uzemljivača.

Broj PCIe staza izravno utječe na maksimalnu propusnost veze. Moderni standard PCI Express 4.0 omogućuje postizanje 1.9 GB/s na jednoj liniji i 31.5 GB/s pri korištenju 16 linija.

Uvod u SSD. Dio 2. Sučelje
Apetit za solid-state diskovima raste vrlo brzo. I SATA i SAS nemaju vremena povećati svoju propusnost kako bi "držali korak" sa SSD-ovima, što je dovelo do pojave SSD diskova s ​​PCIe vezama.

Iako su PCIe Add-In kartice pričvršćene vijcima, PCIe je moguće zamijeniti bez prekida rada. Kratki PRSNT pinovi (engleski present - prisutan) omogućuju vam da provjerite je li kartica potpuno instalirana u utor.

Solid-state diskovi povezani putem PCIe regulirani su posebnim standardom Specifikacija sučelja glavnog kontrolera postojane memorije i utjelovljeni su u različitim faktorima oblika, ali o njima ćemo govoriti u sljedećem dijelu.

Udaljeni pogoni

Prilikom stvaranja velikih skladišta podataka pojavila se potreba za protokolima koji omogućuju povezivanje diskova koji se nalaze izvan poslužitelja. Prvo rješenje na ovom području bilo je Internet SCSI (iSCSI), koji su razvili IBM i Cisco 1998.

Ideja iSCSI protokola je jednostavna: SCSI naredbe se "omataju" u TCP/IP pakete i prenose na mrežu. Unatoč udaljenoj vezi, klijentima se stvara iluzija da je disk povezan lokalno. Storage Area Network (SAN) temeljena na iSCSI-ju može se izgraditi na postojećoj mrežnoj infrastrukturi. Korištenje iSCSI-ja značajno smanjuje troškove organiziranja SAN-a.

iSCSI ima "premium" opciju - Protokol optičkog kanala (FCP). SAN koji koristi FCP izgrađen je na namjenskim optičkim komunikacijskim linijama. Ovaj pristup zahtijeva dodatnu optičku mrežnu opremu, ali je stabilan i ima visoku propusnost.

Postoji mnogo protokola za slanje SCSI naredbi preko računalnih mreža. Međutim, postoji samo jedan standard koji rješava suprotan problem i dopušta slanje IP paketa preko SCSI sabirnice - IP-over-SCSI.

Većina SAN protokola koristi skup SCSI naredbi za upravljanje pogonima, ali postoje iznimke, kao što je jednostavan ATA preko Etherneta (AoE). AoE protokol šalje ATA naredbe u Ethernet paketima, ali se pogoni u sustavu pojavljuju kao SCSI.

S pojavom NVM Express pogona, iSCSI i FCP protokoli više ne zadovoljavaju brzo rastuće zahtjeve SSD-ova. Pojavila su se dva rješenja:

  • premještanje PCI Express sabirnice izvan poslužitelja;
  • stvaranje NVMe over Fabrics protokola.

Uklanjanje PCIe sabirnice uključuje stvaranje složene komutacijske opreme, ali ne mijenja protokol.

Protokol NVMe over Fabrics postao je dobra alternativa za iSCSI i FCP. NVMe-oF koristi vezu s optičkim vlaknima i skup instrukcija NVM Express.

DDR-T

Uvod u SSD. Dio 2. Sučelje
Standardi iSCSI i NVMe-oF rješavaju problem povezivanja udaljenih diskova kao lokalnih, no Intel je krenuo drugim putem te je lokalni disk maksimalno približio procesoru. Izbor je pao na DIMM utore u koje se spaja RAM. Maksimalna propusnost DDR4 kanala je 25 GB/s, što je znatno više od brzine PCIe sabirnice. Tako je rođen Intel® Optane™ DC Persistent Memory SSD.

Izumljen je protokol za spajanje pogona na DIMM utore DDR-T, fizički i električni kompatibilan s DDR4, ali zahtijeva poseban kontroler koji vidi razliku između memorijske kartice i pogona. Brzina pristupa pogona je sporija od RAM-a, ali brža od NVMe.

DDR-T je dostupan samo s Intel® Cascade Lake procesorima ili novijim.

Zaključak

Gotovo sva sučelja prešla su dug put od serijskih do paralelnih metoda prijenosa podataka. Brzine SSD-ova brzo rastu; još jučer su SSD-ovi bili novost, no danas NVMe više nije posebno iznenađenje.

U našem laboratoriju Selectel Lab možete sami testirati SSD i NVMe diskove.

U anketi mogu sudjelovati samo registrirani korisnici. Prijaviti se, molim.

Hoće li NVMe diskovi zamijeniti klasične SSD-ove u bliskoj budućnosti?

  • 55.5%Da100

  • 44.4%br.80

Glasovalo je 180 korisnika. Suzdržano je bilo 28 korisnika.

Izvor: www.habr.com

Dodajte komentar