5

Specyfikacja PCIe 4.0 sfinalizowana, jest duży postęp

Pewnie trudno w to uwierzyć, ale specyfikacja PCIe w wersji 3.0 została sfinalizowana jeszcze w 2010 roku, to dokładnie 7 lat temu. Jest to o tyle znamiennie, że wcześniej przejście z wersji 1.0 na 2.0 zajęło 4 lata, podobnie z 2.0 na 3.0. PCI-SIG miało jednak problemy z wersją 4.0, a trzeba pamiętać, że jest to organizacja, do której należy ponad 750 różnych podmiotów.

Wypracowanie wspólnego stanowiska w tak dużej grupie nie należy do najłatwiejszych zadań, a na to nałożyły się jeszcze problemy techniczne, które trzeba było po drodze rozwiązać. Uczciwie trzeba też przyznać, że tak naprawdę zapotrzebowanie na większą przepustowość nie było do tej pory tak bardzo istotne. Przynajmniej do czasu pojawienia się na rynku dysków SSD z interfejsem NVME. Specyfikacja, która przewiduje wykorzystanie maksymalnie 4 linii PCIe ogranicza przepustowość do 4 GB/s. Na rynku mamy już kilka dysków SSD, które ocierają się o tę granicę.

Karta z historii PCI

Zanim przejdziemy do szczegółów specyfikacji PCIe 4.0 warto spojrzeć na historię interfejsu PCI (Peripheral Component Interconnect). Pierwsza wersja tego slotu pojawiła się w 1992 roku i zastąpiła wysłużoną szynę ISA. Przepustowość nie poraża, było to 133 MB/s w trybie simplex (transfer tylko w jedną stronę), ale ISA oferowała 8 MB/s więc skok w tamtym czasie i tak był olbrzymi. PCI w wersji 2.0 czy PCI-X nie zdobyły popularności w systemach domowych, bo w zasadzie nie było takiej potrzeby. W 1997 pojawiła się szyna AGP (Accelerated Graphics Port), która zastąpiła ten interfejs w przypadku najpierw akceleratorów 3D, a później również kart graficznych oferując w ostatniej wersji przepustowość ~2,1 GB/s. Tak było do 2002 roku, kiedy to pojawiła się specyfikacja PCIe (Peripheral Component Interconnect Express).

Karta graficzna AGP

Pierwsze sloty PCIe 1.0 trafiły do komputerów w 2004 roku i zaoferowały maksymalną przepustowość 8 GB/s. Jedna linia oferowała 250 MB/s, ale z racji, że była to komunikacja dwustronna (duplex) to podaje się sumaryczną przepustowość – 16 x 250 MB/s x 2 = 8 GB/s. W wersji 2.0 zwiększono taktowanie z 2.5 GHz do 5 GHz, stąd też transfery wzrosły dokładnie dwukrotnie. W wersji 3.0 zmieniono kodowanie z 8b/10b, na 128b/130b. Oznacza to, że zamiast 2 bitów (suma kontrolna) narzutu na każde 8 bitów przetransferowanych, teraz narzut to tylko 2 bity na 128 bitów przetransportowanych. Dodatkowo zwiększono częstotliwość pracy do 8 GHz, co w sumie pozwoliło prawie podwoić przepustowość (wzrosła o 96%). De facto dla szyny 16x jest to dokładnie 31,5 GB/s, a nie 32 GB/s jak w tabelce poniżej.

Specyfikacja PCIe 4.0

W wersji 4.0 ponownie podwojono taktowanie, do 16 GHz co daje realną przepustowość slotu 16x na poziomie 63 GB/s (pozostaje kodowanie 128b/130b). Co ciekawe PCIe 5.0 ma zostać sfinalizowane znacznie szybciej niż można by tego oczekiwać, bo już w 2019 roku, a dzięki kolejnemu wzrostowi taktowania ponownie podwojona zostanie prędkość transferu. Na ten moment nic nie wiadomo czy w PCIe 4.0 zyskamy więcej energii. PCIe 3.0 jest w stanie dostarczyć maksymalnie 75W, jeśli urządzenie pobiera więcej to musi mieć dodatkowe zasilanie. Gniazdo PCIe 6pin zapewnia 75W, a PCIe 8pin kolejne 150W, co daje w sumie 300W.

Przepustowosć PCIe 4.0

PCIe 4.0 nie jest istotne dla kart graficznych

Pierwsze co przychodzi nam do głowy gdy mówimy o interfejsie PCIe to karty graficzne. To właśnie one wykorzystują najczęściej slot PCIe 16x oferujący maksymalną przepustowość. Paradoksalnie jednak to nie karty graficzne najbardziej skorzystają na większych transferach w PCIe 4.0. Jak zostało to już przetestowane wiele razy, różnice w wydajności np. między PCIe 8x, a 16x są niewielkie. Tym samym dwukrotne zwiększenie transferów w wersji 4.0 również nie przyniesie wielkich korzyści.

Skorzystają natomiast inne interfejsy, na czele z wspomnianym standardem NVME, który pozwoli teraz na osiągnięcie transferów rzędu 8 GB/s przy standardowej szynie 4x (albo wykorzysta tylko 2 linie, co obniży koszty). Powinno to także pozwolić na spopularyzowanie kart sieciowych 10 GbE. Obecnie 1 linia PCIe 3.0 oferuje transfer rzędu 1 GB/s (w jedną stronę), a 10 GbE potrzebuje przepustowości 1,25 GB/s. Warto też wspomnieć, że PCIe 4.0 będzie oczywiście wstecznie kompatybilne z poprzednim standardem. Nie było to takie oczywiste w przypadku interfejsu AGP, gdzie wraz z wersjami zmieniało się napięcie zasilania.

PCIe 4.0 dopiero za 2-3 lata

Finalizacja specyfikacji PCIe 4.0 nie oznacza jednak, że jeszcze w tym roku interfejs ten trafi do naszych PeCetów. Zanim to nastąpi muszą go zaimplementować w swoich rozwiązaniach najwięksi gracze na rynku. Tymczasem Intel nie przewiduje wsparcia tego standardu wcześniej jak w 2019 roku, a AMD już nawet wspominało, że PCIe 4.0 pojawi się w 2020 roku, razem z następcą platformy AM4. Tym samym jeszcze sobie poczekamy na kolejne rekordy transferów dysków SSD ;-).

  • zakius

    obecnie więcej byśmy zyskali otrzymując więcej linii w mainatreamie, niż szybsze linie
    4×3.0 to nadal nie jest specjalnie mało dla NVMe, problemem jest fakt, że w najlepszym wypadku SSD podpinamy do chipsetu, bo linie bezpośrednio podłączone do procesora są zarezerwowane dla x16 i połączeń wewnętrznych…
    a póki co jak ktoś chce ultra szybki SSD to wepnie go w x16… tylko takie póki co nie istnieją i tak

    • Racja, 16 linii z procesora to trochę mało, jeśli wszystkie zajmie karta graficzna, dodatkowe 4 pewnie by nie zaszkodziło.

  • patchworked

    różnice w wydajności np. między PCIe 8x, a 16x są nie wielkie.

    Jakie? :/

    Przydałby się wam mechanizm podobny do tego z elektrody, tj. użytkownicy poprawiają błędy w tekście i dostają za to punkty wymienialne na jakieś gadżety.

    • Poprawione. Dam Ci upvote, może być? ;-)

    • patchworked

      Pisałem absolutnie serio. Na AW nie istnieje coś takiego jak korekta tekstów przed wrzuceniem ich na stronę, więc chociaż użytkownicy mogliby wam poprawiać te najbardziej kłujące w oczy błędy.
      Kilka gadżetów wyjdzie taniej niż etat dla osoby, która powinna się tym zajmować zawodowo.