Standard SCSI
Co to jest SCSI?
W 1979 r. firma
Shugart opracowała interfejs przeznaczony do podłączania
dysków twardych w małych komputerach -
Shugart Associates Systems Interface - SASI. Był to 8-bitowy asynchroniczny interfejs równoległy z transferem 1,5 MB/s. W połowie 1986 r. interfejs ten został rozszerzony i zatwierdzony przez
Komitet X3T9.2 ANSI (Amerykański Narodowy Instytut Standardów) jako
Small Computer System Interface - SCSI - Interfejs Systemowy Małych Komputerów SCSI (wym. "skazi"). W późniejszym okresie interfejs ten był wykorzystywany nie tylko do podłączania dysków twardych, ale też napędów taśmowych, CD-ROM, napędów dysków magnetooptycznych, drukarek, skanerów, urządzeń telekomunikacyjnych i innych urządzeń peryferyjnych.
W 1994 r. został opracowany standard
SCSI-2. Zwiększono prędkość transferów, dodano nowe komendy i komunikaty, wprowadzono obowiązkową kontrolę parzystości i umożliwiono rozszerzenie szyny danych do 16 bitów. Kolejna specyfikacja,
SCSI-3, to dalsze zwiększenie szybkości, znaczne rozszerzenie systemu komend, możliwość komunikacji z zastosowaniem protokołów:
Fibre Channel, IEEE 1394 (Firewire) i
Serial Storage Architecture SCSI-3 Protocol (SSA-S3P).
Interfejs SCSI był wykorzystywany głównie w serwerach i wysoko wydajnych stacjach roboczych, przez długi czas skutecznie konkurował wydajnością i ilością obsługiwanych urządzeń w lepszej klasy komputerach PC ze znacznie tańszym interfejsem ATA. Obecnie wypierany jest przez nowszy interfejs szeregowy
Serial Attached SCSI - SAS
SCSI - podstawowe pojęcia
Większość pojęć niezbędnych do zrozumienia interfejsu SCSI nie ma polskich odpowiedników. Pojęcia te zwykle nie są tłumaczone, a często po prostu używane są skróty nazw technologii, komend i sygnałów.
Asynchronous Transfer (Async) - transfer asynchroniczny - metoda wymiany danych między kontrolerem i urządzeniem peryferyjnym, wykorzystująca potwierdzanie sygnałów
ACK/REQ dla każdego bajta danych. Jest to metoda wolniejsza od transferu synchronicznego. Wszystkie negocjacje na szynie SCSI, w tym przy transferze synchronicznym, odbywają się asynchronicznie.
Command Queuing - kolejkowanie komend - w urządzeniach zgodnych ze standardami
SCSI-2 i
SCSI-3 istnieje możliwość wysyłania do jednego urządzenia do 256 komend naraz, przy czym urządzenie może samo określić kolejność wykonania komend w celu optymalizacji swojej pracy
Cyclic Redundancy Check (CRC) - cykliczny kod nadmiarowy - system sum kontrolnych wykorzystywany do wykrywania i korygowania bitowych przekłamań, jakie mogą wystąpić podczas transmisji danych. Ten system kontroli pozwala na wykrycie błędów obejmujących swym zasięgiem do 32 bitów.
Differential - sterowanie różnicowe - znaczenie sygnału określa się nie poziomem, ale zmianą polaryzacji używanego napięcia. Pozwala to na obniżenie zaszumienia magistrali SCSI i wydłużenie kabla. Występują dwa typy sterowania różnicowego SCSI wysokonapięciowe
HVD i niskonapięciowe
LVD
Domain Validation (DV) - protokół diagnostyczny służący do określania parametrów jednostek docelowych i cech konfiguracyjnych systemu, a także testowania jakości fizycznej warstwy połączenia.
Double Transition clocking (DT) - synchronizacja danych odbywa się na obu zboczach sygnałów
REQ lub
ACK. W ten sposób można podwoić prędkość transferu danych.
Fast SCSI - w standardzie SCSI-2 odnosi się do prędkości przesyłu danych 10 MB/s przy magistrali 8-bitowej i 20 MB/s przy 16-bitowej (
wide).
Fibre Channel - wielowarstwowy protokół transmisji szeregowej, zapewniający możliwość wymiany danych pomiędzy urządzeniami i sieciami z prędkością do 10 Gb/s. Fibre Channel może pracować zarówno na przewodach miedzianych, jak i na światłowodach.
Free Running Clock (FRC) - przewidziane normą
SCSI-3 SPI-4 niewielkie odchylenia częstotliwości zegarowych w celu skompensowania efektu
ISI.
Host - główny - komputer, w którym został zainstalowany
Host Adapter
Host Adapter - główny adapter - określenie kontrolerów zarządzających podłączonymi do nich urządzeniami. Zwykle są to kontrolery SCSI
High Voltage Differential (HVD) - wysokonapięciowe sterowanie różnicowe - starsza wersja sterowania różnicowego SCSI, wykorzystująca napięcie
5 V i pozwalająca na użycie kabli o długości do 25 m.
ID - identyfikator - unikalny adres urządzenia SCSI. Na magistrali 8-bitowej (
Narrow) może być do 8 ID (od 0 do 7), a na 16-bitowej (
wide) do 16 ID (od 0 do 15). Na szynie powinien występować jeden inicjator (
initiator) i jedno urządzenie docelowe (
target). Główny adapter (
host adapter) zwykle otrzymuje ID=7.
Initiator - inicjator - urządzenie przetwarzające komendy SCSI na magistrali. To może być dowolne urządzenie podłączone do magistrali, ale zwykle jest to kontroler SCSI (główny adapter). Inicjator zawsze pracuje w parze z urządzeniem docelowym (
target).
Inter Symbol Interference - oddziaływanie między symbolami - efekt przejawiający się zakłóceniami wynikającymi z wzajemnych oddziaływań pomiędzy sąsiadującymi impulsami. W wyniku długiego utrzymywania się określonego stanu napięcia dochodzi do gromadzenia się w przewodzie ładunku elektrycznego, przez co może dojść do zamiany pozycji skrajnych bitów sygnału.
Logical Unit Number - LUN - metoda zwiększenia liczby urządzeń, które mogą być podłączone na jednym kanale magistrali SCSI. W dowolnym
ID może znajdować się do ośmiu logicznych urządzeń, a każde z nich jest traktowane przez kontroler SCSI jak oddzielne urządzenie fizyczne.
Low Voltage Differential (LVD) - niskonapięciowe sterowanie różnicowe - bipolarny różnicowy sygnał wykorzystywany dla bardzo szybkich transmisji danych używany przez współczesne kontrolery SCSI. Przy wykorzystaniu sterowania LVD poziom napięcia sygnału znajduje się w granicach
0,7-1,8 V. W przypadku interfejsu LVD sygnały o różnej polaryzacji wykorzystują różne fizyczne przewody. Dla wykorzystania SCSI LVD potrzebny jest specjalny kabel złożony z par przewodów.
LVD/SE Multimode - sterowanie uniwersalne (różnicowe lub napięciowe) - w zależności od poziomu napięcia na linii
DIFFSENSE przekaźniki LVD/SE automatycznie konfigurują się dla
LVD lub
SE. Najnowsze urządzenia SCSI mają zwykle uniwersalne przekaźniki.
Megatransfer (MT) - jednostka miary odnosząca się do częstotliwości sygnałów na szynie magistrali bez odniesienia do szerokości magistrali. Przy tej samej częstotliwości wyrażonej w megatransferach przesył danych na magistrali 16-bitowej (
wide) będzie dwukrotnie szybszy niż na magistrali 8-bitowej (
narrow).
Narrow SCSI - "wąska", 8-bitowa magistrala SCSI wykorzystująca 50-żyłowy kabel, wprowadzona standardem
SCSI-1.
Packetized Protocol - protokół pakietowy umożliwiający przesyłanie grup rozkazów i danych statusowych w fazie transmisji danch w trybie synchronicznym.
Quick Arbitration Select (QAS) - szybkie rozstrzyganie i wybór - uproszczona wersja fazy arbitrażu pozwalająca na skrócenie czasu uzyskiwania dostępu do magistrali.
SCSI Configures Auto Magically (SCAM) - magiczna automatyczna konfiguracja SCSI - wprowadzony standardem
SCSI-2 algorytm konfigurowania urządzeń. Kontroler SCSI obsługujący ten typ pracy może sam nadać identyfikator (
ID) sobie i wszystkim podłączonym do niego urządzeniom peryferyjnym. Obsługa SCAM daje także kontrolerowi możliwość zarządzania resetowaniem całej magistrali.
SCSI Fast-20 - odnosi się do określonej standardem
SCSI-3 prędkości przesyłu danych 20 MT (20 MB/s dla magistrali 8-bitowej i 40 MB/s dla 16-bitowej). Marketingowe określenie dla grupy urządzeń pracujących z prędkością 20 MT, to
Ultra SCSI dla magistrali 8-bitowej lub
Ultra Wide SCSI dla 16-bitowej.
SCSI Fast-40 - odnosi się do określonej standardem
SCSI-3 prędkości przesyłu danych 40 MT (40 MB/s dla magistrali 8-bitowej i 80 MB/s dla 16-bitowej). Urządzenia pracujące z tą prędkością oznaczane są odpowiednio do szerokości magistrali jako
Ultra 2 SCSI lub
Wide Ultra 2 SCSI.
SCSI Fast-80 - odnosi się do określonej standardem
SCSI-3 prędkości synchronicznego przesyłu danych 80 MT (160 MB/s dla magistrali 16-bitowej). Ponieważ wszystkie urządzenia SCSI Fast-80 pracują na magistrali 16-bitowej, są oznaczane po prostu jako
Ultra 3 SCSI, Ultra160 SCSI lub
Ultra160+ SCSI.
SCSI Fast-160 - odnosi się do określonej standardem
SCSI-3 prędkości synchronicznego przesyłu danych 160 MT (320 MB/s). Oznaczenie handlowe, to
Ultra320 SCSI.
SCSI Parallel Interface (SPI) interfejs równoległy SCSI - standard SCSI-3 opisujący fizyczny poziom interfejsu równoległego SCSI - złącza, parametry kabli, oznaczenie wyprowadzeń, charakterystyki elektryczne. Przeszedł kilka etapów rozwoju: SPI, Fast-20 (rozwinięcie SPI), SPI-2, SPI-3, SPI-4 i najnowszy SPI-5.
SCSI Trade Association (STA) - organizacja przemysłowa zajmująca się promowaniem i wdrażaniem standardów SCSI, określająca specyfikacje i ich nazwy.
Serial Attached SCSI (SAS) - szeregowe podłączenie SCSI - szeregowy interfejs komunikacyjny przeznaczony głównie do podłączania dysków twardych, częściowo kompatybilny z interfejsem
SATA. Obecnie osiąga prędkość przesyłu danych do 12 Gb/s.
Single Connector Attachment (SCA) - 80-kontaktowe podłączenie dysków twardych stosowane w dyskach twardych w celu umożliwienia wymiany dysku w trakcie pracy urządzenia, np. macierzy RAID.
Single Ended SCSI (SE) - asymetryczny SCSI - oznacza zwykły, jednobiegunowy interfejs SCSI, w którym dla każdego sygnału jest osobny przewód z odpowiadającym mu przewodem masy. Sterowanie odbywa się za pomocą zmiany poziomu napięcia. Ponieważ wszystkie sygnały magistrali SCSI są zanegowane, niski poziom napięcia (poniżej 0,8 V) odpowiada logicznej "1", a wysoki (powyżej 2,4V) - "0"
Single Transition clocking (ST) - Z każdym z sygnałów
REQ i
ACK synchronizowana jest tylko jedna porcja danych
Small Computer Systems Interface (SCSI) - interfejs systemowy dla małych komputerów - interfejs opracowany dla połączenia na jednej magistrali urządzeń różnych typów i różnego przeznaczenia, jak dyski twarde, napędy magnetooptyczne, skanery, napędy taśmowe, napędy optyczne i inne. Interfejs ten jest stosowany w różnych systemach komputerowych, nie tylko klasy PC. Standard SCSI określa parametry fizyczne interfejsu oraz system komend i komunikatów do zarządzania urządzeniami.
Synchronous Transfer - transfer synchroniczny - wymiana danych pomiędzy kontrolerem, a urządzeniem peryferyjnym odbywa się z wcześniej uzgodnioną prędkością, przy tym oba urządzenia powinny tę prędkość obsługiwać. Prędkość przesyłu danych przy transferze synchronicznym zależy tylko od charakterystyk kabla i urządzeń na magistrali. Uzgodnienie prędkości przekazu danych odbywa się zawsze w trybie asynchronicznym. Na różnicowym interfejsie SCSI przy przekazie synchronicznym można osiągnąć prędkość transferu danych 640 MB/s.
Tagged queuing - uporządkowana kolejność - funkcja wprowadzona dla podniesienia wydajności interfejsu SCSI. Począwszy od
SCSI-2 kontroler oraz urządzenia peryferyjne mogą zmieniać kolejność wykonywania komend, aby zminimalizować wyszukiwanie informacji na dysku twardym lub innym nośniku.
Target - cel, urządzenie docelowe - to odbiornik komend na interfejsie SCSI. Urządzeniem docelowym może być dowolne urządzenie SCSI. Zawsze pracuje w parze z
inicjatorem.
Termination - terminowanie - w związku z powstającymi w przewodach odbiciami, falami stojącymi i innymi zakłóceniami, obydwa końce magistrali SCSI muszą być obciążone
terminatorami - odpowiednio dobranymi układami rezystorów.
Training Patterns - okresowo przesyłane sekwencje specjalnych impulsów wzorcowych wykorzystywane w trybie
Ultra-320 i
Ultra-640 w celu kalibracji torów odbiorczych. Ze względu na różnice w parametrach kabli oraz różnorodne efekty falowe dochodzi do różnic w czasie propagacji sygnałów. Przesunięcie w stosunku do wyznaczających je po stronie nadawczej impulsów zegarowych ma istotne znaczenie w najszybszych realizacjach magistrali SCSI.
Wide SCSI - "szeroki" SCSI - określenie 16-bitowego wariantu magistrali SCSI wykorzystującego 68-żyłowy przewód opisany w standardzie
SCSI-3 SPI.
Wersje standardu SCSI
Przed ujednoliceniem standardu SCSI wielu producentów na własną rękę wprowadzało swoje rozwiązania. W konsekwencji na rynku pojawiło się wiele różnych urządzeń, które, mimo deklarowanej zgodności ze standardem SCSI, wcale ze sobą nie współpracowały. Przez to standard ten często był nazywany pseudostandardem lub brakiem standardu SCSI. Norma
SCSI-1, aby zachować elastyczność i nie ograniczać inwencji producentów, pozwalała na liczne odstępstwa, które skutkowały niekompatybilnością wielu urządzeń. Również kolejna próba rozwiązania tego problemu - norma
SCSI-2, okazała się zbyt elastyczna. Ponieważ nie wszystkie rozkazy musiały być implementowane, nadal z łatwością można było spotkać urządzenia zgodne ze standardem SCSI, które nie mogły się ze sobą komunikować. O wiele lepiej z kwestią niezgodności poradziła sobie najnowsza norma -
SCSI-3, jednak, mimo deklarowanej zgodności wstecz, budując system oparty na magistrali SCSI, trzeba pamiętać o wielu niuansach. Do najważniejszych szczegółów należą:
wiek urządzenia: - im większa różnica wieku urządzeń, tym łatwiej mogą wystąpić różne problemy we współpracy,
prędkość urządzenia: wprawdzie można używać szybkich dysków na wolnym kontrolerze lub powolne dyski podłączyć do wydajnego kontrolera, jednak w wyniku negocjacji pomiędzy urządzeniami prędkość transferów zostanie ustalona na poziomie obsługiwanym przez najwolniejsze z nich.
sposób przekazywania sygnałów: wymieszanie urządzeń przekazujących sygnały w różne sposoby może doprowadzić do istotnego obniżenia wydajności magistrali, a nawet do uszkodzenia urządzeń. Urządzenia
HVD nie są zgodne elektrycznie z urządzeniami
LVD i
SE. Wymieszanie tych urządzeń na jednej szynie
doprowadzi do uszkodzenia urządzeń LVD lub SE.
Szerokość szyny: wymieszanie urządzeń na magistrali 8-bitowej
narrow i 16-bitowej
wide na ogół jest możliwe, jednak trudno z góry gwarantować pełną funkcjonalność takiego układu.
Jakość wykonania: aby zapewnić prawidłową pracę systemu i uniknąć konfliktów, najlepiej korzystać z kontrolerów, kabli, terminatorów i przejściówek rekomendowanych przez producenta.
SCSI-1
Pierwsza wersja standardu -
SCSI przewidywała zastosowanie 8-bitowej szyny danych, maksymalny transfer danych w trybie asynchronicznym - do 1,5 MB/s, a w trybie synchronicznym do 5 MB/s. Magistrala wykorzystywała 24 linie sterowane napięciowo lub znacznie rzadziej różnicowo (
HVD). Na magistrali mogło występować maksymalnie 8 urządzeń. Maksymalna długość 50-żyłowego kabla w przypadku sterowania napięciowego wynosiła 6 m, a dla sterowania różnicowego - 25 m. Standard SCSI-1 przewidywał opcjonalną kontrolę parzystości w celu eliminacji błędów w transmisji danych. Urządzenia SCSI-1 obecnie najłatwiej spotkać w muzeach techniki.
SCSI-2
Przyjęta w 1994 r. norma
SCSI-2 wdrożyła wiele istotnych zmian. Do najważniejszych z nich należą:
- wprowadzenie "szerokiego" 16-bitowego wariantu magistrali wykorzystującego 68-żyłowy kabel,
- zwiększenie maksymalnej liczby urządzeń na szynie - 16-bitowa magistrala może obsługiwać do 16 urządzeń,
- poprawienie charakterystyk kabli i złącz,
- wprowadzenie aktywnego terminowania, co zwiększyło niezawodność transmisji sygnałów na szynie,
- rozszerzenie spisu obsługiwanych komend, co pozwoliło na obsługę skanerów, CD-ROMów i innych urządzeń,
- wprowadzenie kolejkowania komend
Command Queuing,
- szybszy protokół
Fast-SCSI, pozwalający na zwiększenie częstotliwości szyny do 10 MHz,
- szersze zastosowanie sterowania różnicowego, umożliwiającego użycie dłuższych kabli.
SCSI-3
SCSI-3, to ostatnia wersja standardu, nadal znajdująca zastosowanie głównie w serwerach. W odróżnieniu od wcześniejszych norm, SCSI-3, to nie jeden, ale cała rodzina wzajemnie powiązanych standardów w wielopoziomowym modelu. Opisy poszczególnych jego części zajmują grube tomy. Podstawowe poziomy standardu SCSI, to:
-
Fizyczny - opisujący podłączenia, przewody, oznaczenie wyprowadzeń, charakterystyki elektryczne;
-
Transportowy - fazy szyny, pakiety, sposoby wymiany informacji;
-
Architektury - opisujący modele SCSI, wywołania komend, reakcje na wywołania, kolejność komend;
-
Common Command Set (CCS) - wspólny dla wszystkich urządzeń zestaw komend;
-
Specyficzne zestawy komend - polecenia dla określonych typów urządzeń, np. zapis blokowy dla dysków twardych, zapis strumieniowy itd.
SCSI-3 SPI
Pierwsza wersja SCSI-3 opisująca fizyczny poziom standardu (
SPI) została przyjęta w 1995 r., a rozszerzona w 1996 r. i przewidywała:
- częstotliwość szyny 20 MHz (
Fast-20) z prędkością transferów 20 MB/s dla magistrali 8-bitowej i 40 MB/s dla 16-bitowej;
- metody przekazywania sygnałów
SE lub
HVD;
- szerokość szyny 8 (
Ultra SCSI) lub 16 (
Ultra Wide SCSI) bitów;
- liczbę obsługiwanych urządzeń dla
HVD 16 dla magistrali 16-bitowej i 8 dla 8-bitowej;
- liczbę obsługiwanych urządzeń dla
SE 8 dla kabla o długości do 1,5 m i 4 dla kabla długości powyżej 1,5 m do 3 m;
- 68-żyłowy kabel "P" dla magistrali 16-bitowej i 50-żyłowy kabel "A" dla 8-bitowej;
- Terminatory pasywne lub FPT dla
SE oraz terminatory HVD dla
HVD.
SCSI-3 SPI-2
Standard drugiego pokolenia
SCSI-3 SPI-2 został przyjęty w 1998 r. Do najważniejszych zmian należały:
- podniesienie częstotliwości szyny do 40 MHz (
Fast-40) z prędkością transferów 40 MB/s dla magistrali 8-bitowej i 80 MB/s dla 16-bitowej;;
- nowy, niskonapięciowy różnicowy sposób przekazywania sygnałów (
LVD), który w praktyce wyparł
HVD;
-
Multimode Operation - specyfikacja pozwalająca pracować na jednej szynie równocześnie urządzeniom
LVD i
SE;
-
Single Connector Attachment SCA-2 - nowa specyfikacja 80-kontaktowego złącza dla dysków SCSI pozwalającego na podłączanie "na gorąco" bez wyłączania całego systemu;
- przewidziano wprowadzenie 32-bitowego wariantu magistrali pozwalającego na podłączenie równocześnie do 32 urządzeń, jednak 32-bitowa magistrala nie znalazła zastosowania w praktyce;
- maksymalna długość kabla przy sterowaniu różnicowym wynosiła 25 m;
- maksymalna liczba obsługiwanych urządzeń przy sterowaniu różnicowym wynosiła 8 dla magistrali 8-bitowej i 16 dla 16-bitowej, a przy sterowaniu
LVD i kablu o długości powyżej 12 m maksymalnie 2 urządzenia niezależnie od szerokości magistrali;
SCSI-3 SPI-3
Przyjęty w 2000 r. standard
SCSI-3 SPI-3 przewidywał:
- wzrost częstotliwości magistrali do 80 MHz (
Fast-80);
- wykorzystanie do synchronizacji danych obu zbocz zegarowych sygnałów
REQ i
ACK - (DT);
- zastosowanie kodów
CRC - Cyclic Redundancy Check dla zagwarantowania prawidłowości przesyłanych danych;
- odejście od 8-bitowej magistrali - wszystkie urządzenia zgodne ze SCSI-3 SPI-3 korzystają z magistrali 16-bitowej;
- wprowadzenie protokołu pakietowego
Packetized Protocol w celu przyśpieszenia przekazywania grup rozkazów;
- uproszczenie mechanizmu uzyskiwania dostępu do magistrali (faza arbitrażu) -
QAS - Quick Arbitration Select;
- zastosowanie protokołu diagnostycznego
Domain Validation umożliwiającego wykrycie błędów w instalacji terminatorów, nieprawidłowości w przejściach z magistrali 8-bitowej na 16-bitową oraz inne problemy po fizycznej stronie połączenia w procesie negocjacji optymalnej szybkości przesyłania danych po szynie;
- rezygnację z wysokonapięciowego sterowania różnicowego (
HVD);
- rezygnację z 32-bitowego wariantu magistrali, który tym samym nigdy nie doczekał się praktycznej realizacji;
- rezygnację z technologii
SCAM, która wprawdzie była dobrym pomysłem, ale w zastosowaniach praktycznych często rodziła zbyt dużo problemów z konfiguracją urządzeń.
- kontrolery
Ultra3 SCSI pozwalały na obsługę do 16 urządzeń na 68-żyłowym kablu o długości do 12 m lub dwóch urządzeń na kablu długości do 25 m,
- ponieważ zastosowanie zmian wprowadzonych normą SCSI-3 SPI-3 nie było obowiązkowe (wystarczyło spełnić jeden z warunków, by oznaczyć urządzenie, jako
Ultra3 SCSI), producenci sami wprowadzili podobne specyfikacje -
Ultra 160 SCSI (Ultra 160/m SCSI) i
Ultra 160+ SCSI.
Ultra 160/m SCSI
Specyfikacja
Ultra 160/m SCSI (Ultra 160) przewidywała jako obowiązkowe zastosowanie trzech spośród pięciu podstawowych cech starnardu
SCSI-3 SPI-3:
- transfery w trybie
Fast 80 DT,
- kody korekcji
CRC,
- protokół diagnostyczny
Domain Validation.
Zastosowanie
QAS i
Packetized Protocol według tej specyfikacji są opcjonalne. Podobnie opcjonalne jest stosowanie trybu
LVD/SE multimode przy podstawowym niskonapięciowym sterowaniu różnicowym
LVD.
Ultra 160+ SCSI
Urządzenia zgodne ze specyfikacją
Ultra 160+ SCSI muszą obowiązkowo obsługiwać:
- transfery w trybie
Fast-80 DT;
- obsługę kodów korekcji
CRC;
- protokół
Domain Validation;
- protokół
Packetized Protocol;
- arbitraż w trybie
QAS.
Sterowanie odbywa się w trybie
LVD, jednak dopuszczalna jest obsługa urządzeń sterowanych napięciowo w trybie
LVD/SE Multimode.
SCSI-3 SPI-4
Norma
SCSI-3 SPI-4, znana też jako
Ultra-320 została opublikowana w 2002 r. Aby osiągnąć niezakłócony transfer z prędkością 320 MB/s:
- transfery obowiązkowo odbywają się z wykorzystaniem obu zbocz zegarowych sygnałów
ACK i
REQ - (DT);
- wprowadzono
FRC - Free Running Clock - drobne zmiany częstotliwości zegarowych kompensujących efekt
ISI - Inter Symbol Interference, polegający na wzajemnym oddziaływaniu sąsiednich impulsów;
- wprowadzono
Training Patterns - okresowe sekwencje impulsów wzorcowych pozwalających na kalibrację parametrów torów odbiorczych i zapobegających rozsynchronizowaniu się sygnałów;
- przesyłane po magistrali SCSI-3 Ultra-320 dane są chronione kodami
CRC;
- inicjator może określać przy pomocy zestawu protokołów
DV - Domain Validation parametry jednostek docelowych i cechy konfiguracyjne systemu;
- wprowadzono możliwość przekazywania rozkazów i danych statusowych w specjalnych pakietach (
Packetized Transfers) z pełną prędkością 320 MB w fazie transferu danych, co jest odstępstwem od zasady przesyłania rozkazów w trybie asynchronicznym z prędkością 5 MB/s;
- strona nadawcza może korygować amplitudę sygnału w celu poprawienia jego czytelności -
Transmitter pre-compensation;
- fakultatywnie możliwe jest zastosowanie po stronie odbiornika filtra
AAF - Adjustable Active Filter, mającego za zadanie zwiększenie odstępu sygnału od szumu;
- kontrolery SCSI-3 Ultra-320 do komunikacji z komputerem wykorzystują 64-bitową magistralę PCI lub magistralę PCI-Express, z tego względu praktycznie nie spotyka się ich w komputerach klasy PC;
- w przypadku połączenia o długości kabla powyżej 1,5 m konieczne jest zastosowanie okrągłego, ekranowanego przewodu;
- maksymalna długość kabla wynosi 12 m;
- maksymalnie mozna podłączyć 16 urządzeń;
- stosuje się sterowanie różnicowe
LVD, aczkolwiek większość kontrolerów zachowała zgodność wstecz w trybie
LVD/SE Multi Mode z urządzeniami sterowanymi napięciowo
SE;
- zrezygnowano z obsługi urządzeń SCSI pracujących na magistrali 8-bitowej, a próby podłączenia takich urządzeń przez przejściówki zwykle prowadzą do drastycznego obniżenia wydajności magistrali;
SCSI-3 SPI-5
Kolejne pokolenie
SCSI-3 SPI-5, określane też jako
Ultra-640 lub
Fast-320 zadebiutowało w 2003 r. Przy częstotliwości magistrali 160 MHz i synchronicznym transferze danych w trybie
DT udało się osiągnąć przepustowość 640 MB/s. Przy tej prędkości transferów, przepustowość magistrali PCI nawet w wersji 64-bitowej nie jest wystarczająca, konieczne okazało się wykorzystanie magistrali PCI-Express co najmniej x4. Oprócz kolejnego podwojenia przepustowości magistrali definitywnie zaniechano obsługi urządzeń sterowanych napięciowo (
SE). Ze względu na charakterystyki elektryczne przewodów, łączenie na magistrali SCSI-3 Ultra-640 więcej niż dwóch urządzeń okazało się niepraktyczne. Wprawdzie teoretycznie można było podłączyć do 16 urządzeń na kablu o długości do 10 m, jednak spadki wydajności były zbyt duże, by miało to jakiś sens. W związku z wdrożeniem szeregowego interfejsu SCSI
SAS, producenci skonstruowali niewiele urządzeń SCSI Ultra-640. Prace nad kolejnym pokoleniem interfejsu równoległego
SCSI-3 SPI-6 (Ultra-1280) nie zostały nigdy ukończone.
Serial Attached SCSI (SAS)
Równoległy interfejs
SCSI zbliżył się do granic możliwej do osiągnięcia w praktyce wydajności. Dalszy wzrost przepustowości wymagał zastosowania szeregowej technologii przesyłu danych. W 2004 r. pojawił się standard
Serial Attached SCSI (SAS), który stopniowo wypiera SCSI w wersji równoległej.
Kontroler SAS zapewnia niezależny kanał komunikacji dla każdego podłączonego urządzenia, podczas gdy w przypadku interfejsu SCSI w danym momencie tylko jedno, spośród wielu podłączonych do wspólnej szyny urządzeń, mogło komunikować się z kontrolerem. W praktyce oznacza to, że przepustowość magistrali równoległej musiała być dzielona pomiędzy wszystkie podłączone do niej urządzenia. W przypadku SAS ilość kolejnych podłączonych urządzeń w znikomym stopniu wpływa na pracę pozostałych. Kolejną przewagą magistrali szeregowej jest to, że czas propagacji sygnałów na różnych liniach magistrali równoległej musiał być jednakowy, aby nie doszło do rozsynchronizowania sygnałów. Magistrala szeregowa nie ma takich problemów. Już pierwsza wersja standardu SAS zapewniała transmisję danych z prędkością 300 MB/s.
Serial Attached SCSI obejmuje 3 protokoły:
- Protokół Serial SCSI (
Serial SCSI Protocol - SSP) - obsługujący także równoległe SCSI. Jest to protokół pracujący w trybie
full-duplex, a więc zdolny do równoczesnego przesyłania rozkazów oraz danych w obu kierunkach,
- Protokół Serial ATA (
SATA Tunneled Protocol - STP) - do przetwarzania rozkazów SATA na rozkazy SAS, zapewniający częściową kompatybilność z urządzeniami SATA,
- Protokół zarządzania (
SCSI Management Protocol - SMC) - przeznaczony do obsługi danych zarządzających.
Sygnały przekazywane są za pomocą dwóch zestawów linii różnicowych (nadawczy
Tx i odbiorczy
Rx - w sumie 4 żyły). Oprócz tego, w kablu SAS znajdują się żyły uziemiające. Interfejs SAS jest w jedną stronę mechanicznie zgodny ze złączem SATA - Pozwala podłączyć urządzenia SATA do kontrolera SAS. Wypełnione wcięcie uniemożliwia podłączenie dysków SAS do kontrolera SATA. Zresztą tak podłączone urządzenie i tak by nie działało. Ze względu na wyższe napięcia wykorzystywane przez urządzenia SAS, aby zapobiec uszkodzeniom urządzeń SATA, konieczna jest procedura rozpoznania urządzenia przez kontroler i dopasowania elektrycznej charakterystyki sygnału. Napięcia nadajnika w standardzie SATA mieszczą się w zakresie 0,4-0,5 V, zaś odbiornika w zakresie 0,325 - 0,6 V. W standardzie SAS są to zakresy odpowiednio dla nadajnika 0,8-1,6 V i dla odbiornika 0,275-1,6 V. Większe zakresy napięć w standardzie SAS podyktowane są możliwością użycia znacznie dłuższych kabli - do 10 m. Urządzenia SAS nie wymagają używania terminatorów. Współczesne dyski twarde SAS są wyposażone w podwójne fizyczne porty, co umożliwia zastosowanie ich w systemach z nadmiarowym kontrolerem SAS. Wcześniej dyski SAS 2,5" nie miały takiej możliwości.
Pierwsza generacja urządzeń SAS mogła przesyłać dane z prędkością 300 MB/s. W 2009 r. pojawiły się urządzenia SAS-2 przesyłające dane z prędkością 600 MB/s. Najnowsze, dostępne od 2013 r., urządzenia SAS-3 mogą osiągnąć prędkość przesyłu danych do 1,2 GB/s. Trwają prace nad kolejną wersją standardu - SAS-4, który ma pozwolić na transfer danych z prędkością 2,4 GB/s. Komitet
T10 przewiduje zakończenie prac nad nową wersją standardu na 2017 r.