Echipamente periferice cu înregistrare magnetică Hard disc

Download Report

Transcript Echipamente periferice cu înregistrare magnetică Hard disc

Echipamente periferice cu
înregistrare magnetică
Hard disc
Petre Ogruţan, decembrie 2012
Istoric
Unitatea de hard disc a fost realizată pentru prima dată în 1956 de IBM. Unitatea IBM
Ramac 350 avea dimensiunea a 2 combine frigorifice.
În 1973 IBM introduce hard discul Winchester la care discurile puteau fi scoase din unitate
şi înlocuite cu alt set.
În 1980 apar hard discurile de 5,25” iar în 1983 hard discul de 10M intră în componenţa
calculatorului IBM PC XT. Un hard disc Seagate de 5,25” de 20M arată ca în fotografie.
Colecţia Petre Ogruţan
Caracteristici. Dimensiunea
8” Primul standard de dimensiune apărut în anii 1970, introdus de Shugart Associates.
5,25” a fost introdus de Seagate în 1980, aceeaşi dimensiune cu a unităţilor de floppy
3,5” a apărut în 1983 datorită firmei Rodime şi este o dimensiune întâlnită şi în prezent,
chiar dacă înălţimea este mai mică acum decât în prima variantă
2,5” a apărut în 1988 la firma PrairieTek şi s-a dezvoltat mai ales pentru calculatoarele
portabile.
1,8” a apărut în 1993 (Integral Peripherals) şi a avut o răspândire limitată
1” a fost lansat de IBM cu denumirea IBM's Microdrive în 1999
0,85” creat de Toshiba în 2004 pentru telefoane mobile şi camere video
În 2009 producătorii de HDD au renunţat la producerea HDD mici (1,8”, 1” şi 0,8”) datorită
apariţiei şi răspândirii SSD (Solid State Disk).
Caracteristici. Viteza
Timpul de acces este timpul care trece de la o comandă de acces a sistemului electronic până datele
solicitate sunt accesibile. Timpul de acces apare ca urmare a naturii mecanice a braţului care
poartă capetele şi a sistemului de rotaţie a discurilor.
Timpul de poziţionare este timpul necesar poziţionării capetelor pe cilindrul dorit. La primele hard
discuri la care poziţionarea se făcea cu motoare pas cu pas timpul era de ordinul 500ms. Timpul
mediu de poziţionare la acţionările actuale cu motor de curent continuu electrodinamic este de 320ms.
Timpul (viteza) de transfer poate fi dată pentru viteza datelor seriale preluate de pe disc odată ce
capetele au fost poziţionate şi evident depinde de viteza de rotaţie. La un HDD de 7200rpm viteza
tipică este 1Gbps. Viteza de transfer poate fi dată şi pentru transferul datelor din buffer-ul HDD în
calculatorul gazdă, interfaţa SATA permite 3Gbps.
Timpul de latenţă este timpul necesar ca sistemul de rotaţie să aducă sectorul solicitat în dreptul
capetelor. Acest timp depinde de viteza de rotaţie a discurilor, conform tabelului următor.
Structura
Motor liniar electrodinamic
cu magneţi permanenţi în
stator şi bobină parcursă de
curent ca rotor (voice coil)
Braţul port capete
Discuri de aluminiu
acoperite cu o peliculă
feromagnetică
Filtru pentru curăţirea
aerului antrenat de discuri
Carcasă antivibraţii
Cablu panglică flexibil pentru
transmiterea datelor citite de la
capete la placa electronică. O primă
prelucrare analogică se face chiar
pe panglică.
Axul motorului care antrenează
discurile în rotaţie prin CAV
(Constant Angular Velocity)
Placa electronică (nu se vede
din acest punct de vedere)
Principiul înregistrării magnetice
Capul de scriere citire este un inel cu un întrefier şi o înfăşurare cu n spire străbătută de curentul i care
crează un flux magnetic în vecinătatea spaţiului interpolar şi care determină o magnetizare a
stratului magnetic al mediului de stocare. Scrierea este realizată prin fluxul de dispersie şi nu de
fluxul prin întrefier. Cu cât întrefierul g este mai mic cu atât densitatea de scriere poate fi mai mare.
Câmpul de dispersie trebuie să fie
mai mare decât câmpul
coercitiv al suportului de
înregistrare dar câmpul în
întrefier trebuie să fie mai mic
decât câmpul de saturaţie.
Influenţa fluxului de dispersie
asupra suportului poate fi
mărită prin micşorarea
distanţei între cap şi mediu h.
u
i
n
g
x
Hx
h
Hz
Capete de scriere citire HDD
La capetele plutitoare stratul de aer antrenat de discul rigid în rotaţie care se scurge pe profilul de
plutire al capului crează o forţă aerodinamică care îndepărtează capul de disc. Forţa elastică a
braţului capului apasă capul spre disc şi astfel, în echilibru se obţine o distanţă constantă între
disc şi cap.
Capetele pot fi:
• În contact, la viteza între 0,5-3,5m/s
• Plutire, viteza mai mare de 3,5m/s, se asigură distanţe între cap şi suport mai mari de 0,2m.
Carduri magnetice
Ca şi paranteză se poate menţiona că aplicaţii ale înregistrării magnetice sunt şi cititoarele /
inscriptoarele de carduri magnetice. În imagini se vede în stânga un cap de scriere citire
simultană a 3 piste magnetice, în mijloc un mecanism pentru automatele bancare care trece
cardul prin faţa cititorului cu un motor şi în dreapta un dispozitiv de citire cu trecerea manuală
a cardului.
Codarea datelor
1.Codare FM (Modulaţie în Frecvenţă), fiecare bit este
precedat de un impuls de tact. În acest exemplu se obţine
un număr de 3 tranziţii pentru 2 biţi, deci 1,5 tranziţii pe
bit.
2.Codare MFM (Modified FM). Impulsurile de tact se elimină
dacă în celula precedentă sau în cea curentă există un bit
de date 1. În acest exemplu sunt 4 biţi şi 3 tranziţii, deci
0,75 tranziţii pe bit.
3.Codarea RLL (Run-length limited). Codarea iniţială RLL
realizată de IBM este o codare de grup care admite maxim
două valori de zero consecutive conform tabelului alăturat.
Se codifică astfel 4 biţi cu 5 biţi, aproximativ 3,5 tranziţii
în fiecare grupă de 5 biţi, deci 0,7 tranziţii pe bit.
4.Codarea RLL 1,7 codează 2 biţi în grupe de 3 biţi. Anumite
combinaţii ale celor 2 biţi se codează ţinând cont de
combinaţia anterioară, conform tabelului alăturat
(dreapta). 2 biţi se codifică în medie cu 1,5 tranziţii deci
0,75 tranziţii pe bit. În exemplul următor sunt 7 tranziţii şi
14 biţi, ceea ce înseamnă 0,5 tranziţii pe bit.
Date: 0 0 1 0 1 1 0 1 0 0 0 1 1 0
Cod: 101 001 010 100 100 000 001
0
1
t
1
1
0
0
t
RLL
RLL 1,7
Structura datelor pe hard disc
Datele sunt aranjate în cilindri, feţe
(capete de citire) şi sectoare,
aranjarea fiind numită CHS
(Cylinder-Head-Sector).
Cilindrul este ansamblul pistelor cu
acelaşi număr de pe toate feţele
discurilor.
Structura unui sector depinde de
tipul şi fabricantul hard discului.
Structura unui sector
Câmpul de sincronizare este necesar pentru ca bucla PLL de refacere a tactului din datele citite
la receptor să se poată sincroniza.
Marca de identificare are o structură specială care nu respectă regula de codare, de exemplu are
o succesiune de nivele de zero sau de unu mai lungă decât cea maxim admisă de codarea de
grup. Informaţia utilă este formată din numărul cilindrului, al capului şi a sectorului curent,
precum şi marcări speciale cum ar fi Bad Block. Un sector marcat cu Bad Block de o
acţiune de formatare nu este citit sau scris.
Câmp de identificare sector
Câmp sincro
Interval
Marcă identificare
Câmp sincro
Câmp de date
Cilindru-Cap-Sector Bad Block
Marcă identificare
CRC
Date 256, 512, 1024 octeţi
CRC
Schema bloc a HDD
Citirea şi scrierea datelor
Hard disk drive
Interfaţă
SATA
Memorie RAM
internă
Cache
Controller R/W
Tact
PLL
Date
citite
Cap de
scriere
citire
Date
scrise
Controller motor acţionare
capete
Controller motor acţionare
discuri
Bobina
motor
capete
(voice coil)
M
Motor acţionare
discuri cu traductor
de viteză
Calea de citire
Date digitale
Monostabil
Funcţiuni:
1.Amplificarea şi filtrarea
semnalului analogic furnizat de
capul de citire
2.Transformarea semnalului
analogic în semnal digital.
Se defineşte indicele de rezoluţie al
capului ca măsură a capacităţii
capului şi a mediului de
transmisie de a furniza un
semnal cât mai uşor de
transformat în semnal digital:
IR= amplitudinea semnalului la
frecvenţa cea mai mare /
amplitudinea semnalului la
frecvenţa cea mai mică
Filtru de
eliminare a
impulsurilor
scurte
Detector
de zero
d/dt
Amplificator
şi filtru
Cap de
scriere
citire
Zone magnetizate
Semnal citit de la
cap
După derivare
După detectorul
de zero
Date digitale
Filtrul din calea de citire
Prin analiză armonică s-a pus în evidenţă faptul că
un şir de impulsuri poate fi considerat ca fiind
compus din o componentă corespunzătoare
duratei între impulsuri şi o serie de armonici
până la aproximativ 3f. (Draper şi Rundle,
1970).
AO1 şi AO2 sunt amplificatoare diferenţiale. Filtrul
poate fi privit ca o cascadă de diporţi
echilibraţi, un diport în T, apoi un diport în PI
format cu impedanţa de intrare în AO2. Se pot
scrie matricile generale ale diporţilor şi prin
înmulţire se obţine matricea generală a
filtrului. Mai simplu, se pot transforma diporţii
echilibraţi în diporţi neechilibraţi (structura
cunoscută de filtru). Dacă nu se ţine cont de
interacţiunile între celulele simple astfel
obţinute se obţine o cascadă de filtre în L din
care se pot calcula aproximativ frecvenţele de
tăiere ale filtrului.
AO1
Amplificare
AO2
Caracteristica
rezultantă
Caracteristica
capului
Caracteristica
filtrului
Frecvenţă
Asimetria la citire
Citirea se execută cu 2 înfăşurări identice,
apoi se folosesc 2 căi de amplificare şi
filtrare. Diferenţele constructive dintre
cele 2 căi duc la o asimetrie a
semnalului citit. La limită asimetria
poate fi atât de mare încât detectprul
de zero să dea un impuls parazit, foarte
scurt. Filtrul de eliminare a
impulsurilor parazite elimină
impulsurile cu o durată mai mică decât
o anumită limită.
Semnal
analogic
t
Corect
Date digitale
Monostabil
Filtru de
eliminare a
impulsurilor
scurte
t
După
detectorul
de zero
Detector
de zero
d/dt
Amplificator
şi filtru
Eronat
Cap de
scriere
citire
Calea de scriere
Date digitale
Semnalul de date scrise este validat de
permisiunea de scriere de la controllerul
de scriere citire. Semnalul este prelucrat
pentru a putea ataca etajul diferential
care are sarcina de a genera curentul de
scriere în înfăşurările capului.
Cantitatea de informaţie este aceeaşi pe
fiecare pistă dar lungimea pistelor este
diferită, cea din interior fiind cea mai
scurtă. La pistele din interior unde
densitatea este mai mare se reduce
curentul de înregistrare prin intrarea în
conducţie a tranzistorului de jos care
pune în paralel două rezistenţe.
Semnalul RWC (Reduced Write Current)
este generat de controllerul de scriere
citire.
Verificarea
condiţiilor
de scriere
Cap de
scriere
citire
Write
Protect
Reducerea
curentului de
înregistrare
RWC
Ştergerea informaţiei după Delete
File
Nu se şterge nimic. Se scrie
peste informaţia existentă.
Ca fişierul să dispară din
director se rescrie un sector
din FAT şi fişierul primeşte un
atribut de “Delete”.
Zone Bit Recording
Pentru a mări cantitatea de informaţie care se poate
stoca suprafaţa platanului se împarte în 3 (sau
mai multe zone) cu număr diferit de sectoare,
mai multe înspre exterior. Acest mod de
împărţire pe zone se mai numeşte şi Zone
Constant Angular Velocity (Zone CAV, Z-CAV
sau ZCAV). Pentru ca datele să fie scrise sau
citite corect trebuie ca viteza de rotaţie
(unghiulară) să fie variabilă funcţie de zona în
care sunt datele accesate.
Pentru prima oară acest concept a fost aplicat de
Seagate.
Poziţionarea capetelor.
Traductoare de poziţie
Hard disk drive
Interfaţă
SATA
Memorie RAM
internă
Cache
Controller R/W
Tact
PLL
Date
citite
Cap de
scriere
citire
Date
scrise
Controller motor acţionare
capete
Controller motor acţionare
discuri
Bobina
motor
capete
(voice coil)
M
Motor acţionare
discuri cu traductor
de viteză
Poziţionarea capetelor
Capetele sunt deplasate radial pentru
poziţionarea pe pista dorită. Motorul de
deplasare este un motor de curent
continuu electrodinamic comandat întro buclă pentru a realiza o
servopoziţionare aleatoare.
Servopoziţionarea aleatoare este
caracterizată prin:
• Posibilitatea deplasării de la orice pistă
la orice pistă;
• Posibilitatea deplasării după un profil
optim de viteză;
• Sarcină preponderent inerţială.
Primele traductoare de poziţie au fost
optice, figura de jos.
Pentru deplasarea de la pista actuală la pista
finală valorile digitale ale pistelor sunt
introduse în registre şi se calculează
diferenţa. Semnul diferenţei indică
sensul deplasării. Registrul diferenţă
este decrementat la fiecare pistă
parcursă
Traductor optic de poziţie
Motor
electrodinamic
Braţ
oscilant
Convertor
Digital Analogic
discuri
>
Magnet permanent
Bobina mobilă
Registru poziţie
dorită
Cilindru destinaţie
Registru
diferenţă
Registru poziţie
actuală
Traductoare cu înregistrare
magnetică
Traductoarele au două funcţiuni:
• Sesizarea parcurgerii succesive a pistelor
şi furnizarea impulsurilor pentru
actualizarea registrului diferenţă;
• Furnizarea semnalului analogic de poziţie
fină care va constitui referinţa pentru
schema de comandă pe ultima porţiune a
traiectoriei. Semnalul analogic este un
semnal proporţional cu eroarea de poziţie
faţă de centrul pistei.
Traductorul este format din capul de citire şi
semnale speciale înregistrate pe disc.
Capul şi sectoarele utilizate se numesc cap
şi sectoare servo. Trecerea capului în
deplasarea lui aproape perpendiculară pe
pistă produce impulsuri la trecerea peste
fiecare pistă. Impulsurile sunt folosite
pentru actualizarea registrului diferenţă.
Traductoare cu înregistrare
magnetică – poziţionarea precisă
Servo Tk#0
t
Servo Tk#2
t
Servo Tk#1
t
Sectoarele servo au informaţii înregistrate şi pe piste alăturate celor din sectoarele de date, figura
din stânga. De exemplu dacă pe pistele servo #0 şi #2 se înregistrează semnale defazate
(figura din dreapta), la mijlocul distanţei între ele, pe pista #1 identică cu o pistă de date se
obţine la citire un semnal combinat din cele 2 laterale. Orice inegalitate a vârfurilor arată că
ansamblul de capete nu este perfect poziţionat pe pista de date. Semnalul de diferenţă a
vârfurilor este semnalul analogic de poziţionare fină.
Controller
Hard disk drive
Interfaţă
SATA
Memorie RAM
internă
Cache
Controller R/W
Tact
PLL
Date
citite
Cap de
scriere
citire
Date
scrise
Controller motor acţionare
capete
Controller motor acţionare
discuri
Bobina
motor
capete
(voice coil)
M
Motor acţionare
discuri cu traductor
de viteză
Controller- citirea datelor
Controller R/W
BLOC CITIRE
RD
DRUN
Detecţie început de sector
Monostabil redeclanşabil
PLL
Date digitale citite,
seriale, amestecate
cu tact
MUX
RDCLOCK
RDGATE
WRCLOCK
Marca de identificare cu o succesiune de nivele de zero mai mare decât permite regula de codare
este detectată de un monostabil redeclanşabil şi controllerul este anunţat prin DRUN că poate
citi un bloc de identificare sau un bloc de date. RDGATE devine activ la detectarea unui bloc,
fiind activat de DRUN. Tactul de citire RDCLOCK este format din datele citite cu o buclă PLL
care conţine un comparator de fază, un filtru şi un oscilator comandat în tensiune. Pentru a
uşura sincronizarea buclei PLL, în timpul în care nu se citesc date, bucla PLL are la intrare un
tact apropiat de frecvenţa datelor citite (WRCLOCK) . Comutarea datelor citite sau a tactului
este comandată de RDGATE. În controller datele citite amestecate cu tact RD sunt eşantionate
cu semnalul de tact RDCLOCK.
Controller- scrierea datelor
Controller R/W
BLOC SCRIERE
WD
EARLY
LATE
RWC
WRCLOCK
Codificare RLL
Scriere cu
precompensare
Date digitale scrise,
seriale, amestecate
cu tact
În funcţie de densitatea de scriere care este mai mare pe pistele interioare decât pe cele
exterioare semnalul RWC (Reduced Write Current) comandă scrierea cu valori diferite
ale curenţilor prin înfăşurarea de scriere. Mai mult, în funcţie de densitatea datelor la
scriere diferă şi intervalul de timp între impulsul de tact şi cel de date. Sunt posibile 4
valori de întârziere, comandate cu semnalele EARLY şi LATE, create cu linii digitale
de întârziere. Timpii de întârziere au valori de ordinul nanosecundelor.
La unităţile vechi precompensarea putea fi programată în BIOS. La unităţile noi aceasta este
gestionată de electronica din unitate. Scrierea la o unitate ZBR implică mai multe valori
posibile ale întârzierii.
Controller- comenzi macro
Controllerul de scriere citire execută macro comenzi. Acestea se trimit către circuit sub forma codului
comenzii şi parametri. Un exemplu de macro comenzi (Intel 82062) este:
RESTORE- capetele se retrag pe cilindrul zero. Se verifică poziţia curentă şi se înscrie registrul de
poziţie dorită cu cilindrul zero. Dacă comanda nu are rezultat se poziţionează un bit din registrul
de erori.
SEEK- capetele se deplasează pe cilindrul specificat ca parametru. Se verifică poziţia curentă ţi se
înscrie registrul de poziţie dorită cu numărul cilindrului destinaţie.
READ SECTOR- Comanda citeşte datele de pe un sector (sau mai multe sectoare) şi le stochează în
memoria cache. Comanda verifică poziţia actuală şi dacă este nevoie se face deplasarea capetelor
la cilindrul dorit.
WRITE SECTOR- Comanda scrie datele pe disc, asemănător cu citirea.
WRITE FORMAT- Formatează o pistă (cilindru). Comanda execută şi deplasare. Informaţia de
format include şi scrierea atributului de Bad Block
SCAN ID- Comanda este folosită pentru a găsi informaţia Sector/Drive/Cap/Numar sector/Numar
cilindru. Datele găsite se încarcă în regiştrii interni ai circuitului şi nu are ca efect poziţionarea cu
datele respective.
Controller- funcţii
Controllerul de citire scriere
comandă şi deplasarea.
Citeşte informaţia din
sectoarele servo şi comandă
acţionarea capetelor pentru
poziţionarea dorită.
Controllerul conţine regiştri
pentru poziţia actuală şi
primeşte date de poziţie
dorită prin macro comenzi.
Trimite controllerului de
motor sensul şi numărul
pistelor care trebuie
parcurse până la destinaţie.
Controllerul de motor
realizează traiectoria
optimă de viteză şi
poziţionarea precisă.
Hard disk drive
Interfaţă
SATA
Memorie
RAM
internă
Cache
Controller R/W
Adrese Tact
PLL
Date
citite
Date
Date
scrise
Comanda
deplasării
Cap de
scriere
citire
Informaţia
citită din
sectoarele
servo
Controller motor
acţionare capete
Bobina
motor
capete
(voice coil)
Controllerul de scriere citire citeşte date din memoria locală pe
care le scrie pe disc sau scrie datele citite de pe disc în memoria
locală. În acest scop controllerul pune adrese şi date de acces la
memorie. Principiul memoriei este de a stoca şi datele din
sectoarele adiacente pentru că este probabil că va fi nevoie de
informaţia din aceste sectoare (cache).
Controller- funcţionare
Transferul de date cu HDD se face în mai multe faze:
În Faza de comandă (FC) comanda operaţiunii dorite se trimite de la calculatorul gazdă la HDD,
cu o structură de genul:
Codul comenzii
0 01 0 I M 0 T
Numărător de sectoare
Numărul sectorului
Numărul cilindrului
Codul comenzii de citire sector:
I validare întreruperi la scrierea in cache
M validare operare multisector, în numărătorul de sectoare se comandă numărul de sectoare care se citesc
T validare reîncercări. O operaţie care se termină cu eroare poate fi repetată de un număr de ori.
Un hard disc cu probleme de citire, înainte de a se defecta poate avea ca simptom încetinirea funcţionării
din cauza reîncercărilor.
În Faza de execuţie (FE) HDD execută comanda (citirea) independent de calculatorul gazdă.
În Faza de rezultat (FR) datele se transferă între HDD şi calculatorul gazdă prin DMA.
Interfaţa SATA- caracteristici
Interfaţa serială SATA este formată din 2 perechi de fire cu transmisie LVDS (Low Voltage
Differential Signaling, 250mV), o pereche pentru date emise, una pentru date recepţionate,
transmisia fiind diferenţială. Datele sunt codificate 8B/10B ca şi Ethernet Gigabit, PCIe sau
Fibre Channel. Legătura SATA este o legătură punct la punct, fiecare drive este conectat printrun cablu serial la placa de bază. SATA a înlocuit interfaţa paralelă ATA (numită şi PATA)
(Advanced Technology Attachment).
Prima generaţie SATA (SATA 150) comunică cu viteza de 1,5Gbps, ceea ce înseamnă circa 1,2Gbps
informaţie utilă, adică 150Mocteţi/s, ceva mai mult decât ATA133. SATA 300 (SATA 2) asigură
o viteză de 3Gbps şi are compatibilitate în jos la SATA 150 în urma unei negocieri la iniţializare.
Acest protocol nu este implementat în toate dispozitivele gazdă, aşa încât pe unele hard discuri
există un jumper pentru selecţia SATA 150 sau SATA 300.
Avantajele SATA sunt:
• Viteza de transfer ridicată
• Posibilitatea implementării Hot Plug In
• Posibilitatea unor porturi externe SATA (eSATA)
• Cablul de date este mai mic deci mai ieftin şi asigură o circulaţie mai bună a aerului în carcasă.
Cablul de alimentare SATA trasmite tensiuni de 3,3V, 5V şi 12V. Adaptorul de la sursa ATX nu are
3,3V ceea ce împiedică hard discurile astfel alimentate să aibă capacitatea de Hot Plug In.
Interfaţa SATA- protocol
Interfaţa SATA este o interfaţă serială sincronă cu refacerea tactului din datele citite,
codificarea fiind cu adăugare de biţi, transmisia fiind realizată cu cadre (blocuri) de date.
Sunt definite secvenţe de date numite primitive SATA utilizate pentru comenzi / stări.
ALIGN – Sent to align activities between hosts and devices. Must be sent every 256 DWORDs
SYNC – Synchronize
X_RDY – Product is ready to start transmitting a frame
R_RDY – Product is ready to start receiving a frame
R_IP – Product is receiving the frame
WTRM – Product has finished sending the frame and is waiting to terminate the connection
R_OK – Product has received the frame and it’s CRC is good
R_ERR – Product has received the frame and it’s CRC is bad
SOF – Start of Frame
EOF – End of Frame. DWORD previous to EOF is the CRC value
HOLD – Product not ready to send/receive additional data
HOLDA – Product acknowledges that other product needs time to “catch up”
CONT – “Continues” previous primitive until a different one is sent. Used to reduce EMI.
PMREQ_S – Interface Power Management Request for Slumber
PMREQ_P – Interface Power Management Request for Partial
PMACK – Power Management Request Acknowledged (approved)
MNAK – Power Management Request Not Acknowledged (denied)
DMAT – Sent to terminate a DMA transmission
Interfaţa SATA- negocierea
vitezei
Primitive de negociere a vitezei (Out Of Band
Singaling (OOB) / Speed Negotiation)
OOB, Out of Band, is a signaling pattern used to
initialize the SATA interface. There are three
kinds of OOB signals used in SATA:
COMINIT – Used by the device to request a
communication initialization
COMRESET – Used by the host to force a
hardware reset on the device
COMWAKE – Used by either the host or device
to signal the PHY layer to wake up.
Gazda trimite un COMRESET care resetează
drive-ul. Drive-ul solicită cu COMINIT
iniţializarea comunicaţiei. Gazda trimite
COMWAKE care scoate drive-ul din
modul adormit. Drive-ul trimite ca
răspuns COMWAKE şi ALIGN la
frecvenţa cea mai mare de comunicaţie.
Secveţele SYNC se trimit pentru a
permite sincronizarea buclei PLL din
receptor atât de la gazdă la drive cât şi
invers.
www.serialtek.com/sata_protocol_overview.asp
Interfaţa SATA- comunicaţia
Cadrul de date SATA are forma din figura alăturată. Cadrul este format din primitivele Start of
Frame şi End Of Frame şi utilizează verificarea corectitudinii transmisiei cu CRC.
SOF
Payload Data
CRC
EOF
După negocierea vitezei se transmit primitive de sincronizare pentru a permite sincronizarea
buclei PLL din receptor atât de la gazdă la drive cât şi invers.
Chris Erickson
Department of Electrical and
Computer Engineering
Auburn University, Auburn, AL
36849
[email protected]
Interfaţa SATA- comunicaţia
Cu primitiva X_RDY gazda
comunică că este gata să
transmită date.
Cu primitiva R_RDY drive-ul
comunică că este gata să
recepţioneze date.
Interfaţa SATA- comunicaţia
Gazda începe să transmită date,
precedate de primitiva SOF.
Cu primitiva R_IP drive-ul
anunţă că primeşte date.
Interfaţa SATA- comunicaţia
După terminarea cadrului de date
gazda inserează CRC şi
primitiva EOF. Transmite apoi
primitiva WTRM aşteptând
închiderea conexiunii.
Drive-ul anunţă recepţia completă a
datelor şi cu primitiva R_OK
acomunică un CRC corect.
Interfaţa SATA- comunicaţia
După terminarea transmisiei de date atât gazda cât şi drive-ul transmit primitiva
SYNC.
NCQ Native Command Queuing
Hard discurile SATA 2 conţin NCQ,
metodă care permite unităţii să
optimizeze accesul la
informaţie, mărind astfel viteza
globală. Metoda constă în
memorarea unei cozi de
comenzi şi efectuarea
comenzilor într-o astfel de
ordine încât să se minimizeze
distanţa parcursă.
Unitatea de hard disc trebuie să aibă
implementat mecanismul NCQ
iar calculatorul gazdă trebuie să
aibă un driver Advanced Host
Controller Interface (AHCI).
HDD. Perspective
R. Freitas, L. Chiu, Solid-State Storage: Technology, Design and Applications, IBM Almaden
Research Center, 2010
http://static.usenix.org/event/fast10/tutorials/T2.pdf
HDD. Perspective
Solid State Drive SSD
SSD este un dispozitiv de stocare nevolatilă a informaţiei construit cu memorii
semiconductoare. Pentru a putea fi utilizat în loc de HDD dimensiunile carcasei şi interfaţa
sunt standard. SSD este mai silenţios şi mai fiabil decât un HDD datorită faptului că nu are
piese în mişcare. La nivelul anului 2012 preţul unui SSD era de circa 10 ori mai mare decât
a unui HDD (pe unitatea de informaţie).
SSD a apărut pentru prima oară în structura modernă cu memorii flash în 1995, fiind introduse
de firma M-Systems. În 1999 BitMicro anunţă primul SSD de 3,5” cu capacitatea de 18G.
Cea mai nouă realizare este
seria Intel SSD DC S3700 cu
următoarele preţuri:
$235 - 100 GB SSD,
$470 - 200GB,
$940 - 400GB,
$1,880 - 800GB
Intel oferă o garanţie de 5 ani.
Solid State Drive SSD- structura
Există mai multe variante constructive de implementare pentru SSD. De exemplu sunt
variante care folosesc memorii DRAM alimentate de la o baterie, care lucrează cu
moduri de economie de energie.
O variantă este cu memorii Flash, varianta NAND Flash fiind prezentată în figură.
Scrierea şi citirea unui cuvânt poate fi realizată atât serial cât şi paralel. Scrierea şi citirea
serială sunt apropiate de modul de scriere citire la HDD. Ştergerea se face prin scrierea
tuturor biţilor cu 1 şi se poate face doar pe blocuri.
Analiza comparativă
Această analiză comparativă arată unitatea modurilor de stocare a informaţiei.
Principiile de stocare cu semiconductori, optice şi magnetice pot fi comparate prin
densitate şi preţ.
R. Freitas, L. Chiu, Solid-State Storage: Technology, Design and
Applications, IBM Almaden Research Center, 2010
http://static.usenix.org/event/fast10/tutorials/T2.pdf