SATA eller Serial ATA har vært en stor suksess når det gjelder datalagring. Standardiseringen på grensesnittet muliggjør enkel installasjon og kompatibilitet mellom datamaskiner og lagringsenheter. Problemet er at utformingen av den serialiserte kommunikasjonen har nådd sine grenser med mange solid state-stasjoner som er avgrenset av ytelsen til grensesnittet i stedet for stasjonen. På grunn av dette måtte nye standarder for kommunikasjon mellom en datamaskin og lagringsstasjoner utvikles. Dette er hvor SATA Express går inn for å fylle ytelsesgapet.
SATA eller PCI-Express-kommunikasjon
De eksisterende SATA 3.0-spesifikasjonene var begrenset til bare 6,0 Gbps båndbredde som oversetter til omtrent 750MB / s. Nå med overhead for grensesnittet og alt, betyr det at effektiv ytelse var begrenset til bare 600MB / s. Mange av de nåværende generasjonene av solid state-stasjoner har hovedsakelig nådd denne grensen og trenger en form for raskere grensesnitt. SATA 3.2-spesifikasjonen som SATA Express er en del av introduserte et nytt kommunikasjonsmiddel mellom datamaskinen og enhetene ved å la enheter velge om de vil bruke den eksisterende SATA-metoden, sikre kompatibilitet med eldre enheter, eller bruke den raskere PCI-en -Express buss.
PCI-Express-bussen er tradisjonelt brukt til å kommunisere mellom CPU og eksterne enheter, for eksempel grafikkort, nettverksgrensesnitt, USB-porter, etc. Under de nåværende PCI-Express 3.0-standardene kan en enkelt PCI-Express-bane håndtere opptil 1 GB / s gjør det raskere enn det nåværende SATA-grensesnittet. Det er det som en enkelt PCI-Express lane kan oppnå, men enheter kan bruke flere baner. I henhold til SATA Express-spesifikasjonene kan en stasjon med det nye grensesnittet bruke to PCI-Express-baner (ofte kalt x2) for å ha en potensiell båndbredde på 2 GB / s, noe som gjør den nesten tre ganger raskere enn de tidligere SATA 3.0-hastighetene.
Den nye SATA Express Connector
Nå krevde det nye grensesnittet også en ny kontakt. Det kan se litt likt fordi kontakten faktisk kombinerer to SATA-datakoblinger sammen med en tredje litt mindre kontakt som omhandler PCI Express-kommunikasjonen. De to SATA-kontaktene er faktisk fullt funksjonelle SATA 3.0-porter. Dette betyr at en enkelt SATA Express-kontakt på en datamaskin kan støtte to eldre SATA-porter. Problemet kommer når du vil koble en nyere SATA Express-basert stasjon til kontakten. Alle SATA Express-kontaktene vil bruke full bredde om stasjonen er basert på eldre SATA-kommunikasjon eller nyere PCI-Express. Så, en SATA Express kan håndtere enten to SATA-stasjoner eller en SATA Express-stasjon.
Så hvorfor bruker ikke en PCI-Express-basert SATA Express-stasjon bare den eneste tredje kontakten i stedet for de to SATA-porter? Dette har å gjøre med at en SATA Express-basert stasjon kan bruke enten teknologi, så det må ha grensesnittet med begge deler. I tillegg til dette er mange SATA-porter koblet til en PCI-Express lane for kommunikasjon med prosessoren. Ved å bruke PCI-Express-grensesnittet direkte med en SATA Express-stasjon, reduserer du effektivt kommunikasjonen til de to SATA-porter som er koblet til dette grensesnittet uansett.
Kommandobegrensebegrensninger
SATA er effektivt en måte å kommunisere data mellom enheten og CPUen i datamaskinen. I tillegg til dette laget er det et kommandolag som går over dette for å sende kommandoene på hva som skal skrives til og leses fra lagringsstasjonen. I årevis har dette blitt håndtert av AHCI (Advanced Host Controller Interface). Dette har blitt så standardisert at det i hovedsak er skrevet inn i alle operativsystemer som for øyeblikket er på markedet. Dette gjør SATA-stasjonene plugg og spill effektivt. Ingen ekstra drivere er nødvendig. Selv om teknologien fungerte bra med eldre, langsommere teknologi som harddisker og USB-minnepinner, holder den virkelig raskere SSD-er. Problemet er at mens AHCI-kommandokøen kan holde 32 kommandoer i køen, kan den fremdeles bare behandle en enkelt kommando av gangen fordi det bare er en enkelt kø.
Dette er her kommandoen NVMe (Non-Volatile Memory Express) kommer inn. Den har totalt 65.536 kommandokøer hver med muligheten til å holde 65.536 kommandoer per kø. Dette muliggjør effektivt parallellbehandling av lagringskommandoer til stasjonen. Dette er ikke gunstig for en harddisk, fordi den fortsatt er effektivt begrenset til en enkelt kommando på grunn av stasjonshodene, men for solid state-stasjoner med sine flere minnekort, kan den effektivt øke båndbredden ved å skrive flere kommandoer til forskjellige chips og celler samtidig.
Dette høres kanskje bra ut, men det er litt av et problem. Dette er ny teknologi, og er derfor ikke bygget inn i de fleste eksisterende operativsystemer på markedet. Faktisk trenger de fleste ekstra drivere installert i dem, slik at stasjonene kan bruke den nye NVMe-teknologien. Dette betyr at distribusjon av den raskeste ytelsen til SATA Express-stasjoner kan ta litt tid siden programvaren må modnes lik AHCIs første introduksjon. Heldigvis tillater SATA Express stasjoner å bruke en av de to metodene, slik at du fortsatt kan bruke den nye teknologien nå med AHCI-drivere og potensielt flytte til nyere NVMe-standarder senere for forbedret ytelse, om enn sannsynligvis at stasjonen skal formateres.
Andre funksjoner lagt til med SATA Express via SATA 3.2 spesifikasjoner
Nå legger de nye SATA-spesifikasjonene mer enn bare de nye kommunikasjonsmetodene og kontakten. De fleste av dem er rettet mot mobile datamaskiner, men de kan også være til fordel for andre ikke-mobile datamaskiner også.Den mest bemerkelsesverdige energisparingsfunksjonen er en ny DevSleep-modus. Dette er i hovedsak en ny strømmodus som gjør at systemene i lagringen nesten nesten kan stenge, og dermed reduserer strømmen når du er i hvilemodus. Dette bør bidra til å forbedre kjøretidene til spesielle bærbare datamaskiner, inkludert Ultrabooks designet rundt SSD og lavt strømforbruk.
Brukere av SSHD (solid state hybrid drives) vil også ha nytte av de nye standardene som de har satt i et nytt sett med optimaliseringer. I de nåværende SATA-implementeringene vil stasjonskontrolleren bestemme hvilke elementer som skal og skal ikke være cache basert på hva det ser bringe etterspurt. Med den nye strukturen kan operativsystemet i hovedsak fortelle drivkontrollen hvilke elementer den skal holde i hurtigbufferen som reduserer mengden av overhead på stasjonskontrollen og forbedrer ytelsen.
Endelig er det en funksjon for bruk med RAID-diskoppsett. Et av formålene med RAID er for data redundans. I tilfelle en feil i stasjonen kan stasjonen erstattes, og dataene vil da bli gjenoppbygget fra kontrollsumdataene. I hovedsak har de bygget en ny prosess i SATA 3.2 standarder som kan bidra til å forbedre gjenoppbyggingsprosessen ved å gjenkjenne hvilke data som er skadet i forhold til det som ikke er.
Gjennomføring og hvorfor det ikke er fanget på
SATA Express har vært en offisiell standard siden slutten av 2013, men den har ikke begynt å gjøre veier til datasystemer før utgivelsen av Intel H97 / Z97-brikkesettene våren 2014. Selv med hovedkort har det nye grensesnittet det er ingen stasjoner på tidspunktet for lanseringen som kan bruke det nye grensesnittet. Dette er sannsynligvis på grunn av problemene rundt operativsystemstøtten for den nye kommandokøen for å dra full nytte av SATA Express. I det minste gjør de nåværende implementeringene at SATA Express-kontaktene kan brukes med eksisterende SATA-stasjoner. Dette bør bidra til å lette gjennomføringen for de som tilfeldigvis kjøper teknologien nå når stasjonene blir tilgjengelige.
Grunnen til at grensesnittet ikke egentlig har fanget på, ligger virkelig i M.2-grensesnittet. Dette brukes kun for solid state-stasjoner som bruker en mindre formfaktor som brukes i bærbare datamaskiner, men også med stasjonære systemer. Harddisker har fortsatt en vanskelig tid som overstiger SATA-standardene. M.2 har litt mer fleksibilitet fordi den ikke stole på de større stasjonene, men kan også bruke fire PCI-Express-baner, noe som betyr raskere stasjoner enn de to banene i SATA Express. På dette tidspunktet kan forbrukerne aldri se at SATA Express noensinne blir vedtatt.