b'\n_START_ARTICLE_\nSerial ATA\n_START_SECTION_\nPrezentare general\xc4\x83\n_START_PARAGRAPH_\nPunerea \xc3\xaen aplicare a interfe\xc8\x9bei  SATA este o substituire major\xc4\x83 a predecesoarei sale interfa\xc8\x9ba paralel\xc4\x83 ATA (PATA). Interfa\xc8\x9ba \xc3\xaen serie se difer\xc4\x83 de cea precedent\xc4\x83 prin rata \xc3\xaenalt\xc4\x83 de transmisiune de date care utilizeaz\xc4\x83 tehnologia Gigabit \xc8\x99i codificarea 8b/10b. Figura 1 ilustreaz\xc4\x83 cum dou\xc4\x83 dispozitive sunt conectate la un adapter ATA. Aceast\xc4\x83 metod\xc4\x83 permite conectarea a dou\xc4\x83 dispozitive la un singur port folosind tehnologia de comunicare dispozitivul 0 / dispozitivul 1. Fiecare dispozitiv este conectat printr-un cablu astfel cre\xc3\xa2nd conexiunea \xe2\x80\x9eDaisy Chain\xe2\x80\x9d._NEWLINE_Figura 1B ne ilustreaz\xc4\x83 modul \xc3\xaen care acelea\xc8\x99i dou\xc4\x83 dispozitive sunt conectate, folosind implementarea \xc3\xaen serie a unui adapter ATA. Soft-ul ATA acceseaz\xc4\x83 imlementarea \xc3\xaen serie a subsistemului ATA \xc3\xaen acela\xc8\x99i mod \xc8\x99i cu acelea\xc8\x99i func\xc8\x9bii la fel ca \xc8\x99i \xc3\xaen cazul cu implementarea \xc3\xaen paralel. Cu toate acestea, \xc3\xaen cazul dat soft-ul vizualizeaz\xc4\x83 cele dou\xc4\x83 dispozitive ca pe un dispozitiv unitar (dispozitiv 0) pe dou\xc4\x83 porturi separate. Por\xc8\x9biunea de dreapta a adapterului este o nou\xc4\x83 implimentare care are menirea s\xc4\x83 converteze opera\xc8\x9biile soft-ului \xc3\xaentr-un flux de date/control \xc3\xaen serie. Structura interfe\xc8\x9bei \xc3\xaen serie ofer\xc4\x83 conectarea celor dou\xc4\x83 unit\xc4\x83\xc8\x9bi cu propriile lor cabluri folosind tehnologia point-to-point.\n_START_SECTION_\nOpera\xc8\x9bii sub-modul\n_START_PARAGRAPH_\nDispozitivul de monitorizare a st\xc4\x83rii transport\xc4\x83rii datelor \xc8\x99i dispozitivul de monitorizare a st\xc4\x83rii leg\xc4\x83turilor fizice sunt dou\xc4\x83 sub-module de baz\xc4\x83 care au ca rolul de controlor a func\xc8\x9bion\xc4\x83rii globale a dispozitivelor de stocare a datelor. Dispozitivul de monitorizare a st\xc4\x83rii leg\xc4\x83turilor fizice verific\xc4\x83 opera\xc8\x9biile legate de linia de serie, iar dispozitivul de monitorizare a st\xc4\x83rii  transport\xc4\x83rii datelor verific\xc4\x83 opera\xc8\x9biile legate de platforma gazd\xc4\x83. Ambele module coordoneaz\xc4\x83 ac\xc8\x9biunile sale \xc8\x99i utilizeaz\xc4\x83 resurse pentru a transfera date dintre calculatorul gazd\xc4\x83 \xc8\x99i ata\xc8\x99area dispozitivelor de stocare \xc3\xaen mas\xc4\x83. Dispozitivul gazd\xc4\x83 de monitorizare a st\xc4\x83rii leg\xc4\x83turilor fizice comunic\xc4\x83 direct prin leg\xc4\x83tura \xc3\xaen serie spre un dispozitiv de monitorizare a st\xc4\x83rii leg\xc4\x83turilor fizice corespunz\xc4\x83toare situat\xc4\x83 \xc3\xaen dispozitiv. Dispozitivul gazd\xc4\x83 de monitorizare a st\xc4\x83rii transport\xc4\x83rii datelor de asemenea comunic\xc4\x83 cu respectivul dispozitiv de monitorizare a st\xc4\x83rii transporturilor de date. Figura 3 arat\xc4\x83 modul \xc3\xaen care dispozitivele comunic\xc4\x83 utiliz\xc3\xa2nd parametrii necesari .Fiecare nivel comunic\xc4\x83 cu dispozitivul respectiv fie direct fie indirect._NEWLINE_Gazda interac\xc8\x9bioneaz\xc4\x83 cu dispozitivul de monitorizare a st\xc4\x83rii transport\xc4\x83rii datelor prin intermediul unei interfe\xc8\x9be de registru care este echivalent cu implementarea \xc3\xaen paralel a adapterului ATA (gazd\xc4\x83). Acest lucru permite soft-ului gazdei, de a urma standardele \xc8\x99i conven\xc8\x9biile existente atunci c\xc3\xa2nd se acceseaz\xc4\x83 interfa\xc8\x9ba registrului apoi urm\xc3\xa2nd conven\xc8\x9biile de protocoale de comand\xc4\x83 standarde. Dispozitivul de monitorizare a st\xc4\x83rii transport date \xc3\xaentrerupe aceste opera\xc8\x9bii \xc3\xaentr-o secven\xc8\x9b\xc4\x83 de ac\xc8\x9biuni, datele despre opera\xc8\x9bii fiind schimbate dinte dispozitivul de monitorizare a starii transport date \xc8\x99i dispozitivul de monitorizare a leg\xc4\x83turilor fizice.\n_START_SECTION_\nPROCESAREA COMENZILOR PRIN INTERFA\xc8\x9aA SATA\n_START_PARAGRAPH_\nAcest capitol ne relateaz\xc4\x83 metoda \xc8\x99i dispozitivul care implementeaz\xc4\x83 tehnologia de ata\xc8\x99are cu pachete de interfa\xc8\x9b\xc4\x83 (Advanced Technology Attachement Packet Interface) \xc8\x99i tehnologia NCQ prin interfa\xc8\x9ba SATA._NEWLINE_Tehnologia de ata\xc8\x99are avansat\xc4\x83 (ATA) este o specifica\xc8\x9bie a interfe\xc8\x9bei \xc8\x99i este aplicat\xc4\x83 la interfa\xc8\x9ba de transmisie dintre gazd\xc4\x83 \xc8\x99i dispozitivele de stocare de date. Specifica\xc8\x9biile ATA indic\xc4\x83 ni\xc8\x99te seturi de facilit\xc4\x83\xc8\x9bi setul de facilit\xc4\x83\xc8\x9bi \xc3\xaen lan\xc8\x9b (Queued Feature Set). Acest set de facilit\xc4\x83\xc8\x9bi permite gazdei s\xc4\x83 emit\xc4\x83 comenzi concurente c\xc4\x83tre acela\xc8\x99i dispozitiv. Unele comenzi ATA pot fi puse \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare. Aceste comenzi includ\xc2\xa0: Pachet command (C7h), Read DMA Queued Ext command (26h), Write DMA Queued command (CCh), Write DMA Queued ext command (36h).\n_START_SECTION_\nREFERIN\xc8\x9a\xc4\x82 C\xc4\x82TRE FIGURA 2\n_START_PARAGRAPH_\n\xc3\x8en cazul comenzilor ce stau \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare o gazd\xc4\x83 cu interfa\xc8\x9ba ATA (120) ini\xc8\x9bializeaz\xc4\x83 o serie de comenzi c\xc4\x83tre un dispozitiv ATA. Dispozitivul (125) determin\xc4\x83 cea mai eficient\xc4\x83 metod\xc4\x83 de a executa o comand\xc4\x83, \xc8\x99i execut\xc4\x83 comenzile care sunt \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare conform figurii 2, gazda (120) ini\xc8\x9bializez\xc4\x83 o comand\xc4\x83 \xc3\xaen lan\xc8\x9b av\xc3\xa2nd tag-ul=0 \xc3\xaen pasul (130). Dispozitivul (125) efectueaz\xc4\x83 o eliberare a magistralei astfel cur\xc4\x83\xc8\x9bind sistemul de semnalizare care indic\xc4\x83 starea busy \xc3\xaen pasul 132 pentru a indica c\xc4\x83 dispozitivul (125) este gata s\xc4\x83 primeasc\xc4\x83 comenzi adi\xc8\x9bionale de la gazd\xc4\x83 (120). \xc3\x8en acest exemplu gazda (120) ini\xc8\x9bializeaz\xc4\x83 dou\xc4\x83 comenzi c\xc4\x83tre dispozitivul (125) pentru relatarea abilit\xc4\x83\xc8\x9bilor a dispozitivului (125) de a procesa execu\xc8\x9bii de tip out-of-order. Dup\xc4\x83 ce sistemul de semnalizare a cur\xc4\x83\xc8\x9bit valoarea busy, gazda ini\xc8\x9bializeaz\xc4\x83 din nou o comand\xc4\x83 \xc3\xaen lan\xc8\x9b, av\xc3\xa2nd \xc3\xaen pasul (134)  tag-ul comenzii egal cu \xe2\x80\x9e1\xe2\x80\x9d. Dispozitivul (125) ini\xc8\x9bializeaz\xc4\x83 eliberarea magistralei \xc8\x99i cur\xc4\x83\xc8\x9b\xc4\x83 \xc3\xaen pasul (136) valoarea busy \xc3\xaen sistemul de semnalizare. \xc3\x8en pasul (138), dispozitivul (125) este gata de transfera date \xc8\x99i de a finisa comenzile prin cereri de servicii (Service Request). Dispozitivul (125) seteaz\xc4\x83 octetul de servicii (SERV) cu valoarea \xe2\x80\x9e1\xe2\x80\x9d pentru a semnala faza de transfer de date. Gazda (120) ini\xc8\x9bializeaz\xc4\x83 \xc3\xaen pasul (140) o comand\xc4\x83 de servicii \xc8\x99i vizualizeaz\xc4\x83 registrele I/O \xc8\x99i gase\xc8\x99te num\xc4\x83rul tag-ului. \xc3\x8en acest caz se poate de asumat c\xc4\x83 citirea num\xc4\x83rul tag-lui din dispozitiv are valoarea \xe2\x80\x9e1\xe2\x80\x9d pentru a demonstra execu\xc8\x9biile out-of-order. \xc3\x8en pasul (142) soft-ul de pe gazda (120) programeaz\xc4\x83 un motor de acces direct la memorie (Direct Memory Access) a gazdei \xc8\x99i \xc3\xaei indic\xc4\x83  dispozitivului drumul corect spre un bufer de date pentru stocarea datelor de intrare sau pentru transferul datelor c\xc4\x83tre dispozitiv (125). \xc3\x8en urm\xc4\x83torul pas (144), dispozitivul execut\xc4\x83 comanda care a fost \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare cu tag-ul \xe2\x80\x9e1\xe2\x80\x9d \xc8\x99i ini\xc8\x9bializez\xc4\x83 transferul de date, \xc8\x99i datele fie sunt transmise de la gazd\xc4\x83 (120) c\xc4\x83tre dispozitiv (125) sau primit\xc4\x83 de c\xc4\x83tre gazd\xc4\x83 (120) de la dispozitiv (125). _NEWLINE_\xc3\x8en figura 2 pasurile de la 130-136 pot fi considerate ca ni\xc8\x99te faze de comenzi pentru introducerea comenzilor \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare. Pasurile 138-144 pot fi marcate ca faza de date, pentru executarea comenzilor de transferare a datelor. _NEWLINE_Standardul Serial Advanced Technology Attachement a fost prezentat\xc4\x83 la \xc3\xaenceputul secolului XXI. Ea este o specifica\xc8\x9bie a interfe\xc8\x9bei care au fost ini\xc8\x9bial promovate de c\xc4\x83tre companiile APT, Dell, IBM, Intel, Maxtor, Seagate etc. Specifica\xc8\x9biile SATA sunt aplicate interfe\xc8\x9bei de transmisiuni a unui disc rigid (hard disk) sau a unei unit\xc4\x83\xc8\x9bi optice de citire a CD/DVD \xe2\x80\x93 urilor pentru a substitui interfa\xc8\x9ba ATA/ATAPI care a fost utilizat\xc4\x83 de timp \xc3\xaendelungat. Specifica\xc8\x9biile SATA speific\xc4\x83 dou\xc4\x83 perechi de linii de semnale diferen\xc8\x9biale pentru a substitui liniile de semnale  40/80 cu implementare \xc3\xaen paralel. Procesul de serializare a datelor originale poate reduce m\xc4\x83rimea, tensiunea \xc8\x99i sporirea vitezei de transfer. \xc3\x8en timp ce sa serializat liniile de semnale, specifica\xc8\x9biile SATA p\xc4\x83streaz\xc4\x83 \xc3\xaen mare parte conceptele a specifica\xc8\x9biilor ATA, a\xc8\x99a ca dini\xc8\x9biile registrelor I/O, seturile de comenzi etc. Ea utilizezeaz\xc4\x83 pachete de date pentru a transfera acele registre I/O, \xc8\x99i sarcinile utile dintre gazd\xc4\x83 \xc8\x99i dispozitiv. Pachetele au referin\xc8\x9ba la structura frame-urilor informa\xc8\x9biei (Frame Information Structure) \xc3\xaen specifica\xc8\x9biile a interfe\xc8\x9bei SATA. \xc3\x8en afar\xc4\x83 de aceste lucruri, specifica\xc8\x9biile SATA de asemenea ne ofer\xc4\x83 ni\xc8\x99te func\xc8\x9bii noi a\xc8\x99a cum ar fi prima parte a accesului direct la memorie (First Party DMA) pentru a facilita transferul de date dintre gazd\xc4\x83 \xc8\x99i dispozitiv. Cu scopul de a distinge diferen\xc8\x9ba aceste dou\xc4\x83 interfe\xc8\x9be, tehnologia ATA cu implementare \xc3\xaen paralel va fi utilizat\xc4\x83 pentru a face referin\xc8\x9be la interfa\xc8\x9ba cu 40/80 linii, tehnologia ATA cu implementare \xc3\xaen serie (SATA) va fi utilizat\xc4\x83 pentru a face referin\xc8\x9be la interfa\xc8\x9ba serializat\xc4\x83. Oricum ambele interfe\xc8\x9be PATA \xc8\x99i SATA pot transporta seturile de comenzi ATA/ATAPI.\n_START_SECTION_\nREFERIN\xc8\x9a\xc4\x82 C\xc4\x82TRE FIGURA 3\n_START_PARAGRAPH_\nFigura 3 este o diagram\xc4\x83 de timp care ilustreaz\xc4\x83 tehnologia de ata\xc8\x99are avansat\xc4\x83 cu implementare \xc3\xaen serie (SATA)\xc8\x99i tehnologia NCQ . Protocolul SATA NCQ la momentul actual se aplic\xc4\x83 unit\xc4\x83\xc8\x9bilor de discuri rigide pentru a permite citirea datelor \xc8\x99i plasarea comenzilor \xc3\xaen lan\xc8\x9bul de a\xc8\x99teptare de a fi executate prin metoda out-of-order. O gazd\xc4\x83 SATA (150) trimite informa\xc8\x9bia prin registrul FIS (160) av\xc3\xa2nd tag-ul comenzii egal cu \xe2\x80\x9e0\xe2\x80\x9d c\xc4\x83tre un dispozitiv SATA (155). Dispozitivul (155) r\xc4\x83spunde prin intermediul registrului FIS (162) recunosc\xc3\xa2nd registrul (160) \xc8\x99i elimin\xc3\xa2nd starea busy din sistemul de semnalizare pentru a indica c\xc4\x83 dispozitivul (155) este capabil s\xc4\x83 primeasc\xc4\x83 comenzi adi\xc8\x9bionale de la gazd\xc4\x83 (150). Apoi gazda (150) trimite informa\xc8\x9bia prin registrul FIS (164) av\xc3\xa2nd tag-ul comenzii egal cu \xe2\x80\x9e1\xe2\x80\x9d \xc8\x99i dispozitivul (155) r\xc4\x83spunde prin registrul FIS(166). \xc3\x8en acest exemplu se presupune c\xc4\x83 ambele comenzi ini\xc8\x9balizate de c\xc4\x83tre gazd\xc4\x83 (150) c\xc4\x83tre dispozitivul (155) sunt comenzi destinate pentru citirea datelor de la dispozitiv (155). Comenzile susmen\xc8\x9bionate sunt fazele de comenzi iar cele expuse mai jos sunt fazele de date a protocolului SATA NCQ. _NEWLINE_Av\xc3\xa2nd \xc3\xaen vedere c\xc4\x83 dispozitivul (155) a primit dou\xc4\x83 comenzi de la gazd\xc4\x83 (150), dispozitivul (155) trebuie s\xc4\x83 decid\xc4\x83 care dintre aceste dou\xc4\x83 comenzi trebuie executate la \xc3\xaenceput. \xc3\x8en acest caz comanda cu tag-ul \xe2\x80\x9e1\xe2\x80\x9d va fi executat\xc4\x83 \xc3\xaenainte de cea cu tag-ul \xe2\x80\x9e0\xe2\x80\x9d pentru a reflecta execu\xc8\x9bia prin metoda out-of-order. \xc3\x8en pasul (168) transmite DMA Setup FIS pentru setarea transferului DMA pentru comanda cu tag-ul \xe2\x80\x9e1\xe2\x80\x9d. Dup\xc4\x83 ce este setat DMA-ul transferul de date pentru comanda cu tag-ul \xe2\x80\x9e1\xe2\x80\x9d are loc \xc3\xaen pasul (170). Aceste dou\xc4\x83 pasuri sunt repetate pentru comanda cu tag-ul \xe2\x80\x9e0\xe2\x80\x9d \xc3\xaen pasul (172) \xc8\x99i (174). _NEWLINE_Protocolul SATA NCQ este are avantaje \xc3\xaen compara\xc8\x9bie protocolul command queuing fiindc\xc4\x83 faza de date are mai pu\xc8\x9bine cerin\xc8\x9be fa\xc8\x9b\xc4\x83 de sistem, \xc8\x99i aplica\xc8\x9biile soft de pe gaz\xc4\x83 (150) nu au necesitatea de a controla manual transferul de date a\xc8\x99a cum se proceda la protocolul command queue. Cu tehnologia NCQ este utilizat\xc4\x83 prima parte a DMA \xc8\x99i echipamentul va verifica tag-ul comenzii, la r\xc3\xa2ndul s\xc4\x83u va \xc3\xaencarca datele c\xc4\x83tre buferul specific corespunz\xc4\x83tor tag-ului comenzii. Pe de alt\xc4\x83 parte cu protocolul command queuing, softul trebuie s\xc4\x83 ini\xc8\x9bializeze o comand\xc4\x83 de servicii pentru a specifica un bufer destinat pentru transferul de date atunci c\xc3\xa2nd dispozitivul trimite o indica\xc8\x9bie c\xc4\x83tre gazd\xc4\x83 de a transfera date, care spore\xc8\x99te complexitatea \xc8\x99i cerin\xc8\x9bele c\xc4\x83tre sistem la transferul de date._NEWLINE_Oricum dispozitivele ATAPI utilizeaz\xc4\x83 alte scheme pentru transmiterea comenzilor c\xc4\x83tre unit\xc4\x83\xc8\x9bile de disc rigid. Dispozitivele ATA utilizezaz\xc4\x83 registrele de intrare/ie\xc8\x99ire pentru a transmite comenzi. Codul comenzii este preluat de c\xc4\x83tre registrul de comenzi\xc2\xa0; paramentrii sunt prelua\xc8\x9bi de c\xc4\x83tre restul registrelor. Pentru dispozitivele ATAPI, gazda introduce valoarea 0xA0 \xc3\xaen registrul de comenzi pentru a indica faza pachetelor de comenzi, \xc8\x99i apoi va utiliza registrul de date pentru transmiterea datelor de 12 octe\xc8\x9bi pentru comenzile ATAPI. Deci tehnologia curent\xc4\x83 NCQ este disponbil\xc4\x83 doar pentru unit\xc4\x83\xc8\x9bi de disc rigid, \xc8\x99i nu pentru dispozitive cu interfa\xc8\x9ba ATAPI cum ar fi unit\xc4\x83\xc8\x9bi optice de citire a discurilor CD/DVD precum \xc8\x99i alte dispozitive. \xc3\x8entruc\xc3\xa2t tehnologia NCQ nu este disponibil\xc4\x83 pentru unit\xc4\x83\xc8\x9bile cu interfa\xc8\x9b\xc4\x83 ATAPI , doar dispozitivele cu interfa\xc8\x9ba ATA pot beneficia de facilit\xc4\x83\xc8\x9bile acestei tehnologii.'