Úvod do SSD. Časť 2. Rozhranie

Úvod do SSD. Časť 2. Rozhranie

V minulej časti V druhej časti cyklu „Úvod do SSD“ sme sa zaoberali históriou vzniku diskov. Druhá časť sa zameriava na rozhrania interakcie s úložnými zariadeniami.

Komunikácia medzi procesorom a periférnymi zariadeniami prebieha v súlade s vopred určenými dohodami, nazývanými rozhrania. Tieto dohody regulujú fyzickú a programovú úroveň interakcie.

Rozhranie je súbor prostriedkov, metód a pravidiel interakcie medzi prvkami systému.

Fyzická realizácia rozhrania ovplyvňuje nasledujúce parametre:

  • priepustnosť komunikačného kanála;
  • maximálny počet súčasne pripojených zariadení;
  • počet vznikajúcich chýb.

Diskové rozhrania sú založené na vstupno-výstupných portoch, čo je opakom vstupu-výstupu cez pamäť a nezaberá miesto v adresnom priestore procesora.

Paralelné a sériové porty

Podľa spôsobu prenosu údajov sa vstupno-výstupné porty delia na dva typy:

  • paralelné;
  • sériové.

Ako naznačuje názov, paralelný port odosiela naraz strojové slovo, ktoré sa skladá z niekoľkých bitov. Paralelný port je najjednoduchší spôsob prenosu údajov, pretože nevyžaduje zložité obvody. V najjednoduchšom prípade každý bit strojového slova sa odosiela po svojej signálnej línii a na spätnú väzbu sa používajú dva pomocné signálne linky: Údaje sú pripravené a Údaje prijaté.

Úvod do SSD. Časť 2. Rozhranie
Na prvý pohľad sa zdá, že paralelné porty sú výborne škálovateľné: viac signálnych línií znamená viac prenášaných bitov naraz a teda aj vyššiu priepustnosť. Napriek tomu, v dôsledku zvýšenia počtu signálnych línií medzi nimi vzniká interferenčné pôsobenie, ktoré vedie k skresleniu prenášaných správ.

Sériové porty sú opakom paralelných. Odosielanie údajov prebieha po jednom bite naraz, čo znižuje celkový počet signálnych línií, ale sk Complicates the input-output controller. Odošľateľský ovládač prijíma strojové slovo naraz a musí odosielať po jednom bite, zatiaľ čo ovládač prijímača musí prijímať bity a uchovávať ich v rovnakom poradí.

Úvod do SSD. Časť 2. Rozhranie
Malé množstvo signálnych línií umožňuje bez problémov zvyšovať frekvenciu prenosu správy.

SCSI

Úvod do SSD. Časť 2. Rozhranie
Malé počítačové systémy rozhranie (SCSI) vzniklo už v roku 1978 a bolo pôvodne navrhnuté na prepojenie rôznych zariadení do jedného systému. Špecifikácia SCSI-1 predpokladala pripojenie až 8 zariadení (vrátane ovládača), ako sú:

  • skenery;
  • páskové jednotky (streamery);
  • optické jednotky;
  • diskové jednotky a iné zariadenia.

Pôvodne mal SCSI názov Shugart Associates System Interface (SASI), ale štandardizačný výbor neschválil názov na počesť spoločnosti a po brainstormingovom dni sa objavil názov Malé počítačové systémy rozhranie (SCSI). "Otec" SCSI, Larry Boucher, naznačil, že skratka by sa mala vyslovovať ako „sexy”, ale Dal Allan prečítal „sсuzzy” („sкази”). Následne sa výslovnosť „sкази” pevne usadila pri tomto štandarde.

V terminológii SCSI sú pripojené zariadenia rozdelené do dvoch typov:

  • iniciátory;
  • cieľové zariadenia.

Iniciátor posiela príkaz cieľovému zariadeniu, ktoré potom posiela odpoveď iniciátorovi. Iniciátory a cieľové zariadenia sú pripojené k spoločnej zbernici SCSI, ktorej prenosová kapacita v štandarde SCSI-1 je 5 MB/s.

Používaná topológia „spoločná zbernica“ kladie niekoľko obmedzení:

  • na koncoch zbernice sú potrebné špeciálne zariadenia — terminátory;
  • prenosová kapacita zbernice sa delí medzi všetky zariadenia;
  • maximálny počet súčasne pripojených zariadení je obmedzený.

Úvod do SSD. Časť 2. Rozhranie

Zariadenia na zbernici sú identifikované unikátnym číslom, nazývaným SCSI Target ID. Každý SCSI-jednotka v systéme je predstavovaná minimálne jednou logickou jednotkou, adresácia ktorej sa vykonáva podľa unikátneho čísla v rámci fyzického zariadenia Logical Unit Number (LUN).

Úvod do SSD. Časť 2. Rozhranie
Príkazy v SCSI sa posielajú vo forme blokov popisu príkazu (Command Descriptor Block, CDB), ktoré sa skladajú z kódu operácie a parametrov príkazu. V štandarde je popísaných viac ako 200 príkazov, rozdelených do štyroch kategórií:

  • Povinné — musia byť podporované zariadením;
  • Voliteľné — môžu byť implementované;
  • Špecifické pre výrobcu — používajú sa konkrétnym výrobcom;
  • Zastaralé — zastarané príkazy.

Z množstva príkazov sú len tri z nich povinné pre zariadenia:

  • TEST UNIT READY — kontrola pripravenosti zariadenia;
  • REQUEST SENSE — požaduje kód chyby predchádzajúcej príkazu;
  • PÔŽADOVANIE — požiadavka na základné charakteristiky zariadenia.

Po prijatí a vykonaní príkazu cieľové zariadenie odošle iniciátorovi stavový kód, ktorý popisuje výsledok vykonania.

Ďalšie vylepšenia SCSI (špecifikácie SCSI-2 a Ultra SCSI) rozšírili zoznam použitých príkazov a zvýšili počet pripojených zariadení na 16, pričom rýchlosť prenosu dát po zbernici sa zvýšila na 640 MB/s. Keďže SCSI je paralelný rozhranie, zvýšenie prenosovej frekvencie bolo spojené so zmenšením maximálnej dĺžky kábla a viedlo k nepríjemnostiam pri použití.

Od štandardu Ultra-3 SCSI sa objavila podpora „horúceho pripojenia“ — pripojenie zariadení pri zapnutom napájaní.

Prvým známym SSD diskom s rozhraním SCSI je možné považovať M-Systems FFD-350, ktorý bol uvedený na trh v roku 1995. Disk mal vysokú cenu a nemal široké rozšírenie.

V súčasnosti nie je paralelný SCSI populárnym rozhraním na pripojenie diskov, ale súbor príkazov sa stále aktívne používa v rozhraniach USB a SAS.

ATA / PATA

Úvod do SSD. Časť 2. Rozhranie
Rozhranie ATA (Advanced Technology Attachment), tiež známy ako PATA (Parallel ATA) bol vyvinutý spoločnosťou Western Digital v roku 1986. Marketingové názov štandardu IDE (angl. Integrated Drive Electronics — „elektronika zabudovaná do disku“) zdôraznila dôležité novinky: ovládač disku bol zabudovaný do disku, a nie na samostatnej rozširujúcej doske.

Riešenie umiestniť ovládač do disku vyriešilo niekoľko problémov. Po prvé, vzdialenosť medzi úložiskom a ovládačom sa zmenšila, čo pozitívne ovplyvnilo vlastnosti úložiska. Po druhé, zabudovaný ovládač bol „nastavený“ len na určitý typ disku a bol preto lacnejší.

Úvod do SSD. Časť 2. Rozhranie
ATA, rovnako ako SCSI, používa paralelný spôsob vstupu-výstupu, čo sa odráža na použitých kábloch. Na pripojenie diskov s použitím rozhrania IDE sú potrebné 40-pinové káble, známe tiež ako ploché káble. Vo neskorších špecifikáciách sa používajú 80-pinové ploché káble: viac než polovica z nich slúži ako uzemnenie na zníženie interference pri vysokých frekvenciách.

Na ATA káble sú nainštalované dve až štyri konektory, pričom jeden je pripojený k základnej doske a ostatné k úložným zariadeniam. Pri pripojení dvoch zariadení na jeden kábel musí byť jedno nakonfigurované ako Master, a druhé ako Slave. Tretie zariadenie môže byť pripojené iba v režime „iba na čítanie“.

Úvod do SSD. Časť 2. Rozhranie
Pozícia jumperu určuje úlohu konkrétneho zariadenia. Termíny Master a Slave v súvislosti so zariadeniami nie sú úplne presné, pretože v porovnaní s ovládačom sú všetky pripojené zariadenia - Slaves.

Osobitným inováciou v ATA-3 je zavedenie Self-Monitoring, Analysis and Reporting Technology (S.M.A.R.T.). Päť spoločností (IBM, Seagate, Quantum, Conner a Western Digital) spojilo sily a štandardizovalo technológiu hodnotenia stavu úložných zariadení.

Podpora pevných pamätí sa objavila so štvrtou verziou štandardu vydanou v roku 1998. Táto verzia štandardu zabezpečila rýchlosť prenosu dát až 33,3 MB/s.

Štandard kladie prísne požiadavky na ATA káble:

  • kábel musí byť plochý;
  • maximálna dĺžka kábla je 18 palcov (45,7 centimetrov).

Krátky a široký kábel bol nepohodlný a bránil chladiacim procesom. Zvyšovanie prenosovej frekvencie s každou nasledujúcou verziou štandardu sa stávalo stále ťažším, a ATA-7 radikálne vyriešil problém: paralelný rozhranie bolo nahradené sériovým. Po tom sa ATA pridalo slovo Parallel a začalo sa nazývať PATA, a siedma verzia štandardu dostala iné názov - Serial ATA. Číslovanie verzií SATA začalo od jedničky.

SATA

Úvod do SSD. Časť 2. Rozhranie
Štandard Serial ATA (SATA) bol predstavený 7. januára 2003 a riešil problémy svojho predchodcu týmito zmenami:

  • paralelný port bol nahradený sériovým;
  • široký 80-žilový kábel bol nahradený 7-žilovým;
  • topológia „zdieľanej zbernice“ bola nahradená pripojením „bod-bod“.

Napriek tomu, že štandard SATA 1.0 (SATA/150, 150 MB/s) bol len o málo rýchlejší ako ATA-6 (UltraDMA/130, 130 MB/s), prechod na sériový prenos dát bol „prípravou pôdy“ na zvýšenie rýchlosti.

Šestnásť signálnych línií na prenos dát v ATA bolo nahradených dvoma krútenými pármi: jeden na prenos, druhý na príjem. Konektory SATA sú navrhnuté na väčšiu odolnosť voči opakovanému pripojeniu a špecifikácia SATA 1.0 umožnila „horúce pripojenie“ (Hot Plug).

Niektoré piny na diskoch sú kratšie ako ostatné. Toto je určené na podporu „horúcej výmeny“ (Hot Swap). Počas výmeny zariadenie „stráca“ a „nájde“ línie v predurčenom poradí.

O niečo viac ako rok, v apríli 2004, vyšla druhá verzia špecifikácie SATA. Okrem zrýchlenia na 3 Gbit/s vo verzii SATA 2.0 bola zavedená technológia Native Command Queuing (NCQ). Zariadenia s podporou NCQ sú schopné samostatne organizovať poradie vykonávania prichádzajúcich príkazov na dosiahnutie maximálneho výkonu.

Úvod do SSD. Časť 2. Rozhranie
Nasledujúce tri roky pracovala SATA Working Group na vylepšení existujúcej špecifikácie a vo verzii 2.6 sa objavili kompaktné konektory Slimline a micro SATA (uSATA). Tieto konektory sú zmenšenou kópiou pôvodného konektora SATA a sú vyvinuté pre optické jednotky a malé disky v notebookoch.

Napriek tomu, že priepustnosti druhej generácie SATA bolo dostatočné pre pevné disky, SSD vyžadovali viac. V máji 2009 vyšla tretia verzia špecifikácie SATA s navýšenou priepustnosťou na 6 Gbit/s.

Úvod do SSD. Časť 2. Rozhranie
Osobitná pozornosť bola venovaná SSD v vydaní SATA 3.1. Objavil sa konektor Mini-SATA (mSATA), určený na pripojenie SSD v notebookoch. Na rozdiel od Slimline a uSATA bol nový konektor podobný PCIe Mini, aj keď nebol elektricky kompatibilný s PCIe. Okrem nového konektora mohla SATA 3.1 ponúknuť možnosť radenia príkazov TRIM spolu s príkazmi na čítanie a zapisovanie.

Príkaz TRIM informuje SSD o blokoch dát, ktoré nemajú žiadny prospech. Pred SATA 3.1 vykonanie tohto príkazu viedlo k vymazaniu cache a pozastaveniu operácií vstupu a výstupu s následným vykonaním príkazu TRIM. Takýto prístup znižoval výkon disku pri operáciách vymazávania.

Špecifikácia SATA nestíhala za rýchlym rastom prístupovej rýchlosti k SSD, čo viedlo k vzniknutiu kompromise nazvaného SATA Express v štandarde SATA 3.2 v roku 2013. Namiesto toho, aby sa znova zdvojnásobila priepustnosť SATA, vývojári využili široko rozšírenú zbernicu PCIe, ktorej rýchlosť presahuje 6 Gbit/s. Disky podporujúce SATA Express získali vlastný formát nazvaný M.2.

SAS

Úvod do SSD. Časť 2. Rozhranie
Konkurujúci štandard SCSI sa tiež nezastavil a len rok po vzniku Serial ATA, v roku 2004, sa transformoval na sekvenčný rozhraní. Novému rozhraniu bolo udelené meno — Serial Attached SCSI (SAS).

Napriek tomu, že SAS zdedil sadu príkazov SCSI, zmeny boli významné:

  • sekvenčné rozhraní;
  • 29-pinový kábel s napájaním;
  • pripojenie „point-to-point“

Terminológia SCSI bola tiež zdedená. Ovládač sa stále nazýva iniciátorom a pripojené zariadenia — cieľovými. Všetky cieľové zariadenia a iniciátor tvoria SAS doménu. V SAS šírka pásma pripojenia nezávisí od počtu zariadení v doméne, keďže každé zariadenie využíva svoj vyhradený kanál.

Maximálny počet súčasne pripojených zariadení v SAS doméne podľa špecifikácie presahuje 16 tisíc, a namiesto SCSI ID sa na adresovanie používa identifikátor World-Wide Name (WWN).

WWN je jedinečný identifikátor s dĺžkou 16 bajtov, analogický MAC-adrese pre SAS zariadenia.

Úvod do SSD. Časť 2. Rozhranie
Napriek podobnosti konektorov SAS a SATA nie sú tieto štandardy úplne kompatibilné. Napriek tomu môže byť SATA disk pripojený do SAS konektora, ale nie naopak. Kompatibilita medzi SATA diskami a SAS doménou je zabezpečená pomocou protokolu SATA Tunneling Protocol (STP).

Prvá verzia štandardu SAS-1 má priepustnosť 3 Gbit/s a najnovšia verzia, SAS-4, tento údaj zlepšila sedemkrát: 22,5 Gbit/s.

PCIe

Úvod do SSD. Časť 2. Rozhranie
Peripheral Component Interconnect Express (PCI Express, PCIe) je sekvenčné rozhranie na prenos dát, ktoré sa objavilo v roku 2002. Vývoj bol iniciovaný spoločnosťou Intel a neskôr bol odovzdaný špeciálnej organizácii — PCI Special Interest Group.

Sekvenčné rozhranie PCIe nebolo výnimkou a stalo sa logickým pokračovaním paralelného PCI, ktoré bolo určené na pripojenie rozširujúcich kariet.

PCI Express sa významne líši od SATA a SAS. Rozhranie PCIe má variabilný počet liniek. Počet liniek je rovný mocninám dvoch a pohybuje sa v rozsahu od 1 do 16.

Termín „linka“ v PCIe neoznačuje konkrétnu signálnu linku, ale samostatný plne duplexný komunikačný kanál, ktorý sa skladá z nasledujúcich signálnych liniek:

  • prijímanie+ a prijímanie-;
  • odosielanie+ a odosielanie-;
  • štyri uzemňovacie vodiče.

Počet PCIe línií priamo ovplyvňuje maximálnu priepustnosť spojenia. Moderný štandard PCI Express 4.0 umožňuje dosiahnuť 1,9 GB/s na jednu líniu a 31,5 GB/s pri použití 16 línií.

Úvod do SSD. Časť 2. Rozhranie
„Chute“ solid-state diskov rastú veľmi rýchlo. Ani SATA, ani SAS sa nestíhajú zvyšovať svoju priepustnosť, aby „dohnali“ SSD, čo viedlo k vzniku SSD diskov s pripojením cez PCIe.

Hoci PCIe Add-In karty sú pripevnené skrutkou, PCIe podporuje „horúcu výmenu“. Krátke piny PRSNT (angl. present — byť prítomný) umožňujú overiť, že karta je úplne zasunutá v slote.

Solid-state disky pripojené cez PCIe sú regulované osobitným štandardom Non-Volatile Memory Host Controller Interface Specification a sú realizované v rôznych formátoch, ale o týchto sa budeme rozprávať v nasledujúcej časti.

Vzdialené disky

Pri vytváraní veľkých úložísk dát vznikla potreba protokolov, ktoré umožnia pripojiť disky umiestnené mimo servera. Prvým riešením v tejto oblasti bol Internet SCSI (iSCSI), vyvinutý spoločnosťami IBM a Cisco v roku 1998.

Myšlienka protokolu iSCSI je jednoduchá: príkazy SCSI sa „obalia“ do paketov TCP/IP a prenášajú sa do siete. Napriek vzdialenému pripojeniu sa pre klientov vytvára ilúzia, že disk je pripojený lokálne. Siete úložných oblastí (Storage Area Network, SAN) založené na iSCSI môžu byť postavené na existujúcej sieťovej infraštruktúre. Použitie iSCSI významne znižuje náklady na organizáciu SAN.

iSCSI má „prémiovú“ verziu — Fibre Channel Protocol (FCP). SAN s použitím FCP je vybudované na vyhradených optických komunikačných linkách. Tento prístup vyžaduje ďalšie optické sieťové vybavenie, ale vyniká stabilitou a vysokou priepustnosťou.

Existuje mnoho protokolov na zasielanie príkazov SCSI cez počítačové siete. Napriek tomu, existuje len jeden štandard, ktorý rieši opačnú úlohu a umožňuje posielať IP pakety po zbernici SCSI — IP-over-SCSI.

Väčšina protokolov pre organizáciu SAN používa súbor príkazov SCSI na správu diskov, ale existujú aj výnimky, napríklad jednoduché ATA over Ethernet (AoE). Protokol AoE posiela ATA príkazy v Ethernet pakete, ale v systéme sa disky zobrazuje ako SCSI.

S príchodom úložných zariadení NVM Express protokoly iSCSI a FCP prestali vyhovovať rýchlo rastúcim požiadavkám na pevné disky. Objavili sa dve riešenia:

  • vytiahnutie zbernice PCI Express mimo server;
  • vytvorenie protokolu NVMe over Fabrics.

Vytiahnutie zbernice PCIe si vyžaduje vytvorenie zložitých prepínacích zariadení, ale nevyžaduje zmeny v protokole.

Protokol NVMe over Fabrics sa stal dobrou alternatívou k iSCSI a FCP. V NVMe-oF sa používajú optické vlákna a príkazový súbor NVM Express.

DDR-T

Úvod do SSD. Časť 2. Rozhranie
Štandardy iSCSI a NVMe-oF riešia problém pripojenia vzdialených diskov ako lokálnych, zatiaľ čo spoločnosť Intel sa vydala inou cestou a čo najviac priblížila lokálny disk k procesoru. Voľba padla na DIMM sloty, do ktorých sa pripája operačná pamäť. Maximálna priepustnosť DDR4 kanála je 25 GB/s, čo výrazne presahuje rýchlosť zbernice PCIe. Tak vznikol pevný disk Intel® Optane™ DC Persistent Memory.

Na pripojenie disku do DIMM slotov bol vynájdený protokol DDR-T, fyzicky a elektricky kompatibilný s DDR4, ale vyžadujúci špeciálny ovládač, ktorý rozpoznáva rozdiel medzi pamäťovou doskou a diskom. Rýchlosť prístupu k disku je nižšia ako k operačnej pamäti, ale vyššia ako k NVMe.

Protokol DDR-T je dostupný iba s procesormi Intel® generácie Cascade Lake alebo novšími.

Záver

Takmer všetky rozhrania prešli dlhým vývojom od sekvenčného k paralelnému spôsobu prenosu dát. Rýchlosti pevných diskov rýchlo rastú, predvčerom boli pevné disky novinkou a dnes už NVMe nevyvoláva zvláštne prekvapenie.

V našej laboratórii Selectel Lab môžete samostatne otestovať SSD a NVMe disky.

Len registrovaní používatelia sa môžu zúčastniť prieskumu. Prihláste sa, prosím.

Vytlačia NVMe disky klasické SSD v blízkej budúcnosti?

  • 55.5%Áno100

  • 44.4%Nie80

Hlasovalo 180 používateľov. Zdržalo sa 28 používateľov.

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster