Expressem przez PC

PCI Express to nazwa, którą należy sobie przyswoić już dzisiaj. Interfejs ten zastępuje standardy PCI oraz AGP, a gdy czytasz te słowa, na rynku powinny właśnie pojawiać się pierwsze produkty wykorzystujące nową technologię.

PCI Express to nazwa, którą należy sobie przyswoić już dzisiaj. Interfejs ten zastępuje standardy PCI oraz AGP, a gdy czytasz te słowa, na rynku powinny właśnie pojawiać się pierwsze produkty wykorzystujące nową technologię.

Co to jest PCI Express i o co tyle krzyku? Jak sama nazwa wskazuje, ma on związek z interfejsem komunikacji PCI, który jest znany od wielu lat i wykorzystywany jako magistrala do przesyłania danych między komponentami komputera. W komputerach domowych PCI jest obecnie stosowany w wersji 32-bitowej, oznaczonej jako PCI 2.2. Częstotliwość taktowania takiej szyny to 33 MHz, a maksymalna przepustowość, przeznaczona do wszystkich slotów PCI znajdujących się na płycie głównej, wynosi 133 MB/s. Wystarczy więc, że twardy dysk czy materiał przesyłany z zewnętrznego napędu USB zajmie to pasmo, a pecet zaczyna się dławić, co widać gołym okiem. Dlatego producenci chipsetów zaczęli używać sztuczek, aby choć częściowo rozwiązać problem. Intel w chipsetach i875 zastosował interfejs CSA, który łączy gigabitowy kontroler Ethernet bezpośrednio z mostkiem północnym. Pozwala to ominąć połączenie z mostkiem południowym, czyli nie zapychać samym tylko Ethernetem szyny PCI. To rozwiązanie, będące swego rodzaju protezą, starczy jedynie na moment. Już pierwszy rzut oka na przytoczone dane pozwala stwierdzić, że nie są to wartości imponujące.

PCI wprowadzono na rynek w 1993 roku, zatem w dziedzinie komputerów, gdzie zmiany zachodzą dosłownie z dnia na dzień, doprawdy wieki temu. Jest interfejsem uniwersalnym, może obsługiwać karty rozszerzeń różnego typu. Początkowo używano go także do kart graficznych.

Szybkie zwiększenie możliwości procesorów graficznych spowodowało jednak, że PCI przestało zapewniać odpowiednią wydajność układów generujących zaawansowaną grafikę 2 i 3D. Wtedy wymyślono interfejs AGP, którego możliwości stopniowo zwiększano, aż do maksymalnego dostępnego dzisiaj poziomu 8x. AGP to jednak interfejs wyłącznie graficzny, a więc dający niewielkie pole manewru producentom sprzętu komputerowego. Czy nie można by go dalej rozwijać? Oczywiście tak. Czy byłoby to sensowne? Raczej nie. Producenci sprzętu komputerowego zdecydowali, że opracowany zostanie nowy interfejs, który na parę lat rozwiąże ich problemy. Chodzi głównie o zwiększenie maksymalnej przepustowości szyny danych, lecz nie jest to jedyna przyczyna tworzenia nowego standardu. Opracowaniem następcy PCI zajęło się konsorcjum PCI-SIG, w którego skład wchodzą m.in. tacy producenci, jak Intel, AMD, HP, Microsoft czy Dell. Opracowali oni standard PCI Express, który po latach testów i badań w końcu trafia "pod strzechy".

Strumień danych dowolnie formowany

Nowy standard ExpressCard pozwoli na korzystanie z wydajnych urządzeń zewnętrznych także właścicielom notebooków. Na zdjęciu pierwsze produkty tego typu.

Nowy standard ExpressCard pozwoli na korzystanie z wydajnych urządzeń zewnętrznych także właścicielom notebooków. Na zdjęciu pierwsze produkty tego typu.

PCI opiera się na transmisji równoległej i nie jest interfejsem skalowalnym. Całkowicie inaczej działa PCI Express, będący magistralą szeregową i - co bardzo istotne - skalowalny w zakresie 1-32 ścieżek. Korzysta dodatkowo ze zdecydowanie wyższych niż w PCI częstotliwości taktowania. PCI Express to interfejs znakomity wręcz do takich komponentów, jak wewnętrzne kontrolery USB czy karty rozszerzeń wymagające dużej przepustowości (np. kontrolery RAID, Ethernet 10 Gb/s czy karty graficzne).

Na razie producenci chipsetów o tym głośno nie mówią, ale można się spodziewać, że PCI Express wyprze stosowane dotychczas "autorskie" łącza układ - układ, przeznaczone do łączenia mostków chipsetów (północnego i południowego), takich jak m.in. VIA V-Link czy SIS MulTIOL. Najszybszy interfejs połączeniowy SiS dysponuje przepustowością 0,99 GB/s. Po zastosowaniu w tym miejscu PCI Express transfer mógłby wzrosnąć nawet dziesięciokrotnie. PCI Express ma także swoje ograniczenia i nie może być stosowany jako rozwiązanie wszystkich problemów. Zorganizowany pakietowo na podstawie modelu warstw przepływ danych w magistrali nie nadaje się na przykład do stosowania jako łącznik między procesorem a pamięciami.

Powód to m.in. kodowanie 8B/10B i związane z nim opóźnienia, a także skomplikowany routing 32 linii. Kodowanie sprawia, że tylko 80 procent przepustowości przesyła użyteczne dane. W stosunku do dzisiejszych rozwiązań jest to i tak wynik imponujący. Ponieważ PCI Express może przesyłać dane w trybie dupleks (w obie strony jednocześnie), jego możliwości transmisji zwiększają się do 9,31 GB na jeden kierunek (przy wykorzystaniu trybu 32-ścieżkowego)!

W praktyce tak szerokie pasmo nie jest obecnie niezbędne. PCI Express dzięki swej skalowalności może obsługiwać linie o szerokości 1x, 2x, 4x, 8x, 16x i 32x. Większość kart rozszerzeń, takich jak tunery TV wysokiej rozdzielczości (HDTV), będzie pracowała z wystarczającą im przepustowością rzędu 250 MB/s (tryb 1x w jednym kierunku). To i tak prawie dwa razy więcej niż oferuje obecnie PCI 2.2 (efektywnie jest to jeszcze mniej, bo około 75 MB/s).

Grafika na pełny gwizdek

Widoczne na zdjęciu bardzo krótkie sloty to PCI Express 1x. Właśnie w nich instalowana będzie większość wydajnych kart rozszerzeń.

Widoczne na zdjęciu bardzo krótkie sloty to PCI Express 1x. Właśnie w nich instalowana będzie większość wydajnych kart rozszerzeń.

Karty graficzne najnowszej generacji mają z kolei korzystać z trybu 16x. Teoretycznie oferowana przepustowość na poziomie 8 GB/s nie jest żadną rewelacją, jeśli przyjmiemy, że najpotężniejsze obecnie procesory graficzne przetwarzają do 30 GB/s. Okazuje się jednak, że to aż nadto. Po pierwsze, adresowania dużych tekstur do pamięci praktycznie się nie stosuje, a po drugie, co jest zresztą związane z pierwszym punktem, programy pisane są tak, aby wpasować się w ramy wyznaczone przez możliwości interfejsu AGP 8x (2 GB/s). Co więcej, wystarczy przeprowadzić dowolne testy także z wykorzystaniem najnowszych gier, a okaże się, że różnicy wydajności pomiędzy interfejsem AGP 4x a 8x praktycznie nie ma lub jest pomijalna. Dlaczego więc PCI Express 16x w kartach grafiki? Na razie nie ma racjonalnego powodu, aby inwestować w produkt z takim interfejsem. Na pewno jest to doskonałe narzędzie dla marketingowców, którzy pod hasłem "Nowość!" łatwiej sprzedadzą swoje produkty, ale gdy programiści zaczną pisać aplikacje pod kątem wykorzystania potencjału PCI Express, korzyści dla graczy i grafików powinny być wyraźnie widoczne.

Obecnie sami przedstawiciele takich firm, jak NVIDIA czy ATI, nieoficjalnie przyznają, że jeszcze długo nie zauważymy większej wydajności PCIE 16x niż AGP 8x. Zaobserwujemy ją jednak, jeśli będziemy używać karty graficznej do innych celów niż generowanie wyłącznie grafiki na ekranie. Potencjał dwukierunkowości transmisji i dużej przepustowości przyda się na przykład, jeśli procesor graficzny użyje silników cieniowania do dekodowania materiału wideo lub równoległego przetwarzania strumieni wideo, podczas którego dane są przesyłane z powrotem do pamięci w celu dalszej obróbki bądź zapisu na dysku. Dla dwóch strumieni materiału wideo formatu HDTV wymagana jest przepustowość 250 MB/s, co ma wystarczyć do przesłania go z procesora graficznego do procesora głównego. Interfejs AGP 8x pozwala jedynie na przesłanie 166 MB/s. Z kolei PCI Express 16x oferuje 4 GB/s w obu kierunkach, co zdaniem producentów procesorów graficznych, daje zapas "mocy", który wystarczy branży audio-wideo na dziesięć lat rozwoju produktów tego typu. Dla odbiorcy ważne jest to, że wydajne karty rozszerzeń znajdą zastosowanie nie tylko w pecetach stacjonarnych, lecz także, dzięki nowemu standardowi kart zewnętrznych ExpressCard, także w notebookach czy innych urządzeniach przenośnych.

Z protezą czy bez?

Pierwsze procesory graficzne przystosowane do współpracy z szyną PCI Express wchodzą właśnie na rynek. Warto wiedzieć, że dwaj główni gracze w tym segmencie zaprezentowali różne podejście do kwestii implementacji nowego interfejsu. NVIDIA, chcąc zoptymalizować koszty wytwarzania i magazynowania procesorów graficznych, zdecydowała się na dość nietypowe, ale i kontrowersyjne rozwiązanie. Firma będzie produkowała identyczne układy graficzne do kart z AGP 8x oraz do PCI Express 16x (seria ma nosić nazwę GeForce PCX).

Te drugie różnią się zastosowaniem specjalnej przejściówki, mostka HSI (High Speed Interconnect). Teoretycznie zestawienie to mogłoby się wydawać bez sensu z powodu wolnej transmisji danych, bo nadal połączenie AGP z procesorem byłoby wąskim gardłem. NVIDIA twierdzi, że zamontowanie mostka HSI bezpośrednio na karcie graficznej bardzo skraca ścieżkę, którą muszą przebyć dane obrabiane przez procesor graficzny. NVIDIA dokonała także sprytnego manewru, zwiększając prędkość transmisji AGP do 12x w prostszych modelach i 16x w procesorach wyższej klasy. To, zdaniem firmy, powinno wyrównać szanse modeli firmowych i konkurencyjnych, pracujących bez dodatkowego mostka.

ATI wybrało inną drogę. Od początku będzie wytwarzało procesory graficzne pracujące wyłącznie z interfejsem PCI Express, bez użycia przejściówek. Ma to teoretycznie same zalety, jednak czy różnice wydajności pomiędzy procesorami ATI oraz NVIDII z HSI będą widoczne, przekonamy się dopiero, testując pierwsze modele nowych produktów.


Zobacz również