- PCI była klasyczną równoległą magistralą rozszerzeń, o ograniczonej przepustowości i obecnie przestarzałą w porównaniu do obecnych potrzeb.
- PCI Express wykorzystuje łącza szeregowe typu punkt-punkt z skalowalnymi liniami (x1, x4, x8, x16), które zwielokrotniają wydajność.
- Kolejne generacje PCIe podwoiły przepustowość na linię, zachowując jednocześnie wysoką kompatybilność.
- Obecnie PCIe stanowi podstawę procesorów graficznych, dysków SSD NVMe, szybkich kart sieciowych i kart profesjonalnych, podczas gdy PCI zostało zdegradowane do starszego sprzętu.
Jeśli kiedykolwiek otworzyłeś obudowę komputera i zobaczyłeś na płycie głównej zbiór długich i krótkich gniazd , prawdopodobnie zastanawiałeś się, jak każde z nich wygląda. Nazwy takie jak PCI, PCI-X i PCI Express (PCIe) łatwo się pogubić, zwłaszcza jeśli chcesz wiedzieć, którą kartę można podłączyć do danego gniazda bez ryzyka uszkodzenia.
W tym artykule przyjrzymy się szczegółowo, czym są PCI i PCIe, jak działają, jakie są dostępne wersje i jakie są między nimi różnice . Przeanalizujemy również ich historię, rolę PCI-X, typy kart używanych w poszczególnych gniazdach, sposób rozmieszczenia linii PCIe oraz implikacje dla codziennych zastosowań, takich jak instalacja karty graficznej, szybkiej karty sieciowej czy dysku SSD NVMe.
Czym jest PCI: klasyczny standard rozszerzeń
PCI (Peripheral Component Interconnect) przez wiele lat była standardową magistralą rozszerzeń w komputerach stacjonarnych. Opracowana przez firmę Intel na początku lat 90., stała się magistralą uniwersalną dla wszystkich typów kart : dźwiękowych, sieciowych, wideo, kontrolerów SCSI itp.
Ta magistrala PCI działała w oparciu o architekturę równoległą i współdzieloną : wszystkie podłączone urządzenia korzystały z tej samej magistrali i dostępnej przepustowości. Oznaczało to, że im więcej urządzeń było podłączonych, tym większą przepustowość musiały dzielić , a tym samym rosło ryzyko wystąpienia wąskich gardeł.
Karty PCI były dostępne w wersjach 32-bitowych i 64-bitowych , z częstotliwościami 33 lub 66 MHz. W swojej najczęstszej konfiguracji, 32-bitowej z częstotliwością 33 MHz, magistrala oferowała teoretyczną maksymalną szybkość transferu 133 MB/s , co w tamtych czasach było więcej niż przyzwoite dla dźwięku, sieci 10/100 czy wideo 2D.
Jedną z największych zalet PCI w tamtym czasie była obsługa technologii Plug and Play : system sam obsługiwał alokację zasobów (IRQ, adresy pamięci itp.) bez konieczności przestawiania zworek czy mostków, jak w starym standardzie ISA. To znacznie uprościło instalację sprzętu dla przeciętnego użytkownika.
Na wielu starszych płytach głównych nadal można zobaczyć długie, jasne gniazda: są to konwencjonalne gniazda PCI , które działają tak długo, jak chipset i system operacyjny je obsługują, chociaż obecnie zostały całkowicie wyparte przez PCI Express.
Czym jest PCI-X i dlaczego tak rzadko można go spotkać w komputerach domowych?
Pomiędzy klasycznym PCI a PCI Express pojawił się PCI-X (PCI Extended) , ewolucyjna wersja zaprojektowana przede wszystkim dla środowisk profesjonalnych i serwerów , gdzie wymagana była znacznie większa przepustowość dla kart sieciowych, pamięci masowych i kontrolerów RAID.
PCI-X pozostał współdzieloną magistralą równoległą , fizycznie kompatybilną z 64-bitowymi kartami PCI, ale wyraźnie zwiększał częstotliwości pracy: wiele kart PCI-X działało z częstotliwością 66, 100, 133 MHz , a w przypadku PCI-X 2.0 osiągnęła ona 533 MHz , osiągając przepustowość około 1,06 GB/s w jednym slocie.
Fizycznie 64-bitowe gniazda PCI-X są bardzo podobne do 64-bitowych gniazd PCI, mierząc około 130 mm długości i dlatego zajmują znaczną ilość miejsca na płycie głównej. Rodzina ta została zaprojektowana głównie dla serwerów i stacji roboczych , a dziś praktycznie zanikła na rzecz PCI Express.
Czym jest PCI Express i dlaczego zastąpił PCI?
Wraz z pojawieniem się coraz szybszych procesorów, kart graficznych, dysków twardych i sieci, magistrala PCI wyraźnie przestała spełniać swoje zadanie. Potrzebny był bardziej elastyczny i skalowalny interfejs, co doprowadziło do narodzin PCI Express (PCIe) , standardu dominującego na obecnych płytach głównych, zarówno w komputerach stacjonarnych i laptopach, jak i serwerach.
W przeciwieństwie do PCI i PCI-X, PCI Express nie korzysta ze współdzielonej magistrali równoległej. Zamiast tego wykorzystuje architekturę szeregową typu punkt-punkt : każde urządzenie ma dedykowane połączenie z przełącznikiem PCIe lub bezpośrednio z procesorem/chipsetem, nie dzieląc przepustowości z pozostałymi urządzeniami.
Po włączeniu komputera system PCIe przeprowadza proces enumeracji urządzeń : wykrywa podłączone urządzenia, negocjuje liczbę pasm, z których będzie korzystać każde łącze, i tworzy swego rodzaju wewnętrzną mapę ruchu. Dobrą wiadomością jest to, że pomimo odmiennej elektroniki, protokół wykrywania i konfiguracji jest zgodny z PCI , więc systemy operacyjne nie musiały wyważać otwartych drzwi.
Każdy pas PCIe składa się z dwóch różnicowych par linii , jednej do wysyłania i jednej do odbierania danych, i działa w trybie pełnego dupleksu: może transmitować w obu kierunkach jednocześnie. Prędkość na pas zależy od generacji PCIe (1.0, 2.0, 3.0, 4.0, 5.0, 6.0…), a każda generacja zazwyczaj podwaja przepustowość w porównaniu z poprzednią.
Generacje PCI Express i przepustowość
Jedną z największych zalet PCIe jest to, że ewoluowało bez zmiany filozofii projektowania gniazd, zachowując w większości przypadków kompatybilność wsteczną i przyszłą . Jednak efektywna prędkość jest zawsze określana przez najwolniejszą wersję (gniazdo lub kartę).
Orientacyjnie dla każdego pasa (x1) obsługiwane są następujące przybliżone szerokości pasma na generację (dane na kierunek):
- PCIe 1.0: około 250 MB/s na pasmo.
- PCIe 2.0: około 500 MB/s na pasmo.
- PCIe 3.0: około 1 GB/s na pasmo.
- PCIe 4.0: około 2 GB/s na pasmo.
- PCIe 5.0: około 4 GB/s na pasmo (efektywna przepustowość 3,938 GB/s).
- PCIe 6.0 (w trakcie opracowywania i wstępnej implementacji): jeszcze szybciej, wykorzystując zaawansowane techniki kodowania w celu dalszego skalowania.
Jeśli pomnożysz te wartości przez liczbę linii, zrozumiesz, dlaczego złącze PCIe x16 może przesyłać ogromne ilości danych. Na przykład, nawet w starszych generacjach:
Prosta 32-bitowa magistrala PCI pracująca z częstotliwością 33 MHz zapewniała prędkość około 133 MB/s dla wszystkich urządzeń łącznie. Dla porównania, pojedyncza nowoczesna linia PCIe w wersjach 4.0 i 5.0 przekracza tę wartość kilkukrotnie, a łącze x16 może osiągnąć kilka GB/s w każdym kierunku.
Gniazda PCIe: x1, x4, x8 i x16
W praktyce, patrząc na płytę główną, widzimy gniazda PCIe o różnej długości. Długości te odpowiadają maksymalnej liczbie linii, jaką fizycznie mogą one zaoferować:
- PCIe x1:najkrótszy.
- PCIe x4:trochę dłużej.
- PCIe x8: mediator.
- PCIe x16:najdłuższy i najbardziej powszechny w przypadku kart graficznych.
Każdy typ gniazda może oferować od 1 do 16 efektywnych linii , ale ważne jest rozróżnienie dwóch pojęć: długości mechanicznej gniazda i faktycznego połączenia elektrycznego . Gniazdo w kształcie x16 może być podłączone tylko jako x8 lub x4, co zmniejsza przepustowość, mimo że fizycznie umożliwia wkładanie kart x16.
Gniazdo PCIe x1
Gniazdo PCIe x1 jest najmniejsze i wykorzystuje pojedynczy pas. Jest ono zazwyczaj używane w kartach, które nie wymagają dużej przepustowości : kartach dźwiękowych, adapterach sieciowych, rozszerzeniach portów USB, kartach przechwytujących średniej klasy itp.
W przypadku obecnych generacji PCIe (4.0 i 5.0) nawet pojedyncza linia x1 zapewnia wystarczającą wydajność do obsługi sieci gigabitowych, profesjonalnego dźwięku lub większości zadań związanych z pamięcią masową, co sprawia, że te gniazda są bardzo przydatne.
Gniazdo PCIe x4
Gniazdo x4 to swego rodzaju rozwiązanie pośrednie. Oferuje cztery linie, dzięki czemu idealnie nadaje się do bardzo szybkich kart sieciowych, kontrolerów RAID, adapterów NVMe lub wydajnych kart przechwytujących . Wiele konfiguracji pamięci masowej NAS lub rozszerzeń M.2 wykorzystuje dokładnie przepustowość x4.
W rzeczywistości nowoczesne dyski SSD NVMe, mimo że są montowane w gniazdach M.2, wewnętrznie wykorzystują PCIe x4 , co jest standardem de facto pozwalającym na osiągnięcie bardzo wysokich transferów odczytu i zapisu.
Gniazdo PCIe x8
Gniazda PCIe x8 stają się coraz bardziej popularne, szczególnie na płytach głównych średniej i wysokiej klasy oraz w zastosowaniach profesjonalnych. Dzięki ośmiu dostępnym liniom idealnie nadają się do kart graficznych średniej klasy, wieloslotowych adapterów NVMe, kart sieciowych 40 GbE lub złożonych konfiguracji pamięci masowej.
Niektóre niedrogie karty graficzne są zaprojektowane do pracy elektrycznie w trybie x8, mimo że pasują do gniazd x16, natomiast inne płyty główne wykorzystują mechaniczne gniazda x16 podłączone jako x8 w przypadku montażu więcej niż jednej karty graficznej.
Gniazdo PCIe x16
Gwiazdą pokazu jest gniazdo PCIe x16 . Jest najdłuższe i przeznaczone głównie do dedykowanych kart graficznych , choć bywa również wykorzystywane do kart sieciowych i pamięci masowej klasy serwerowej.
Na wielu płytach głównych górne gniazdo x16 jest bezpośrednio połączone z procesorem za pomocą 16 pełnych linii , natomiast dolne gniazda, mimo tej samej długości, mogą być podłączone jako x8 lub x4 ze względu na ograniczenia dostępnych linii.
Jest to kluczowe, jeśli chcesz zainstalować wiele procesorów graficznych lub wysokowydajnych kart graficznych : sprawdź specyfikację płyty głównej, aby dowiedzieć się, ile linii oferuje każdy slot w zależności od zainstalowanej kombinacji. Platformy konsumenckie (Ryzen, Intel Core) zazwyczaj mają od 16 do 24 linii PCIe bezpośrednio do procesora , podczas gdy procesory wyższej klasy, takie jak Threadripper Pro lub procesory serwerowe (EPYC, Xeon), oferują 64 lub więcej linii , umożliwiając obsługę wielu procesorów graficznych z rzeczywistą prędkością x16.
Topologia danych: równoległa i szeregowa
Różnicę w filozofii między PCI/PCI-X a PCI Express można podsumować jako współdzielony interfejs równoległy w porównaniu z szeregowym interfejsem punkt-punkt . W PCI i PCI-X wszystkie urządzenia są podłączone do tej samej magistrali, a dane są przesyłane równolegle wieloma liniami jednocześnie. Rozwiązanie to sprawdzało się przy niskich częstotliwościach, ale wraz ze wzrostem prędkości pojawiały się problemy z zakłóceniami i synchronizacją.
W przypadku PCI Express zamiast pojedynczej współdzielonej magistrali stosowana jest sieć dedykowanych łączy . Każde urządzenie ma własne łącze do przełącznika lub procesora, składające się z jednego lub kilku pasm. Rezultatem jest znacznie wydajniejszy, skalowalny system, mniej podatny na zakłócenia , umożliwiający zwiększenie częstotliwości i przepustowości bez fizycznych ograniczeń magistrali równoległych.
Rozmiary gniazd fizycznych i kompatybilność
Na starszych płytach głównych często można było znaleźć kilka 32-bitowych gniazd PCI (o długości około 85 mm ), a czasem jedno gniazdo 64-bitowe lub PCI-X (o długości około 130 mm). Zajmują one znaczną ilość miejsca i wszystkie korzystają z tej samej magistrali.
Nowoczesne płyty główne wykorzystują głównie gniazda PCIe x1, x4, x8 i x16 . Praktyczną zaletą PCI Express jest możliwość zainstalowania krótszej karty w dłuższym gnieździe (na przykład karty x1 w gnieździe x4 lub x16), o ile gniazdo jest otwarte lub jego konstrukcja na to pozwala. Karta będzie działać z liczbą linii, dla której została zaprojektowana.
Nie można jednak zrobić tego w odwrotny sposób: karta x16 fizycznie nie zmieści się w slocie x1. Nie można też mieszać PCI i PCIe: nie są one kompatybilne ze sobą , mimo że istnieją specjalne adaptery do bardzo specyficznych przypadków.
Wydajność: Dlaczego PCIe sprawiło, że PCI stało się przestarzałe
Jeśli porównamy czyste dane o wydajności, PCI wyraźnie pozostawało w tyle. 32-bitowa magistrala PCI o częstotliwości 33 MHz była ograniczona do 133 MB/s dla wszystkich urządzeń łącznie, podczas gdy pojedyncza nowoczesna linia PCIe może obsłużyć setki MB/s lub kilka GB/s, w zależności od generacji.
Nawet złącze PCIe x1 wczesnej generacji bez problemu obsługiwało gigabitową sieć, dźwięk wielokanałowy i podstawową pamięć masową . Z drugiej strony, dobrze wykorzystane złącze PCIe x16 może przesyłać dane z prędkością kilku GB/s w każdym kierunku , co jest niezbędne dla wydajnych kart graficznych, akceleratorów AI lub kontrolerów pamięci masowej.
Oprócz większej przepustowości PCI Express wprowadza ulepszenia takie jak priorytetyzacja ruchu, transfery w czasie rzeczywistym, lepsze wykrywanie błędów i algorytmy przekazywania pakietów oraz możliwość przydzielenia każdemu urządzeniu dedykowanego kanału, dzięki czemu zapobiega się sytuacji, w której wiele urządzeń musi konkurować o dostęp do tej samej magistrali.
PCIe i karty graficzne: żegnaj AGP, witaj multi-GPU
Zanim PCIe stało się powszechne, wydajne karty graficzne korzystały ze złączy AGP (Accelerated Graphics Port) . PCI Express sprawił, że AGP stało się zbędne: złącze PCIe x16 oferuje znacznie większą przepustowość niż AGP 8x i może dostarczać do procesora graficznego moc do 75 W bezpośrednio z płyty głównej.
Przy odpowiednim sprzęcie, płyta główna z dwoma gniazdami PCIe x16 może obsługiwać dwie karty graficzne jednocześnie. Producenci tacy jak Nvidia i AMD opracowali własne technologie (SLI, CrossFire itp.), które umożliwiają koordynację pracy dwóch układów GPU, dzieląc między siebie obciążenie renderowania. W niektórych profesjonalnych i zaawansowanych systemach gamingowych, wiele układów GPU jest nawet wykorzystywanych równolegle do zadań obliczeniowych, sztucznej inteligencji lub renderowania 3D.
W tym kontekście PCI i AGP zostały całkowicie wyparte. Nowoczesne karty graficzne korzystają niemal wyłącznie z PCI Express , a interfejs ten jest tak ugruntowany, że pozostaje podstawą akceleratorów AI i kart dedykowanych do serwerów.
Inne zastosowania gniazd PCIe
PCIe to nie tylko karty graficzne. Gniazda rozszerzeń pozostają bardzo przydatne do dodawania funkcji lub zwiększania wydajności komputera, zwłaszcza gdy płyta główna ma ograniczoną liczbę portów lub gdy wymagane są profesjonalne możliwości.
Do typowych zastosowań PCIe należą obecnie:
- Rozszerz pamięć masową z kartami, które dodają wiele dysków SSD NVMe.
- Zaktualizuj łączność sieciową z kartami Ethernet 2,5G, 10G lub szybszymi albo zaawansowanymi kartami WiFi.
- Dodaj dodatkowe porty USB, Thunderbolt, SATA lub eSATA przy użyciu specjalnych kart.
- Zintegruj profesjonalne interfejsy audio do produkcji muzyki wysokiej jakości lub edycji dźwięku.
- Zamontuj dedykowane kontrolery RAID dla zaawansowanych serwerów pamięci masowej lub NAS.
- Zainstaluj akceleratory GPU, układy FPGA lub karty dedykowane do zastosowań w zakresie sztucznej inteligencji, uczenia maszynowego i zadań naukowych.
Ponieważ każdy slot ma własne dedykowane łącze, wydajność karty PCIe nie pogarsza się tak bardzo podczas dodawania kolejnych kart , w przeciwieństwie do tego, co miało miejsce w przypadku klasycznej magistrali PCI.
Błędy i niezawodność w PCI Express
W systemach profesjonalnych i serwerowych niezawodność PCIe jest kluczowa. Standard definiuje różne typy błędów i sposoby ich obsługi:
- Błędy możliwe do naprawieniaSą one obsługiwane przez sam sprzęt PCIe, nie wpływają na długoterminową integralność danych i zazwyczaj są niewidoczne dla użytkownika.
- Błędy niekrytyczne, niemożliwe do naprawieniaBłędy te powodują utratę danych lub informacji na poziomie urządzenia, ale sam interfejs PCIe pozostaje stabilny. Zazwyczaj są one zarządzane za pomocą oprogramowania specyficznego dla danego urządzenia.
- Krytyczne, nienaprawialne błędyZagrażają niezawodności interfejsu PCIe. Zwykle wymuszają Uruchom ponownie komponent lub całe łącze aby odzyskać system.
W przypadku sprzętu dostarczonego przez producenta, w przypadku poważnego błędu PCIe, zazwyczaj zaleca się skorzystanie z narzędzi diagnostycznych, takich jak zastrzeżone programy narzędziowe (na przykład aplikacje SupportAssist), które mogą przeprowadzać szybkie i kompleksowe testy, aktualizować sterowniki i optymalizować system w celu ograniczenia problemów.
Zgodność z PCI i PCIe
Chociaż PCI i PCI Express to odrębne standardy, PCIe zostało zaprojektowane na poziomie programowym, aby wykorzystać ten sam model programowania . Oznacza to, że wiele systemów operacyjnych i sterowników można było dostosować bez większych zmian, a oba standardy mogły współistnieć przez lata na hybrydowych płytach głównych oferujących zarówno gniazda PCI, jak i PCIe.
Kompatybilność nie jest jednak fizyczna: nie można włożyć karty PCI do gniazda PCIe i odwrotnie . Specjalne adaptery zostały wyprodukowane do konkretnych zastosowań, ale nie jest to rozwiązanie ogólne ani zalecane, chyba że dokładnie wiesz, co robisz.
Z biegiem czasu, biorąc pod uwagę, że PCIe oferuje znacznie większą prędkość, elastyczność i kompatybilność z nowoczesnymi systemami operacyjnymi, karty PCI stały się coraz bardziej marginalizowane na rynku. Coraz rzadziej można spotkać gniazda PCI na nowych płytach głównych, a producenci skupili wszystkie swoje wysiłki na PCI Express.
Dlaczego PCIe jest interfejsem teraźniejszości i przyszłości
Połączenie przepustowości, skalowalności i kompatybilności uczyniło PCI Express podstawą rozbudowy komputerów PC, stacji roboczych i serwerów . Nadaje się zarówno do instalacji prostej karty dźwiękowej, jak i wielu procesorów graficznych AI lub szaf pamięci masowej NVMe.
Postęp w oprogramowaniu (gry, edycja wideo 4K i 8K, rzeczywistość wirtualna, sztuczna inteligencja, duże zbiory danych) nieustannie napędza zapotrzebowanie na szybsze transfery danych . Kolejne wersje PCIe (4.x, 5.x i obecnie opracowywana 6.x) niwelują lukę między wymaganiami procesora a możliwościami podsystemu rozszerzeń.
Choć wiele funkcji, które wcześniej wymagały osobnej karty, jest obecnie zintegrowanych bezpośrednio z płytą główną (audio, sieć, a czasem Wi-Fi), gniazda PCIe pozostają niezbędne w zaawansowanych konfiguracjach . Jeśli chcesz zbudować komputer, który nie zestarzeje się w krótkim czasie, warto zwrócić uwagę na liczbę gniazd PCIe na płycie głównej, liczbę linii procesora oraz sposób, w jaki linie te są przypisane do karty graficznej, dysku SSD i innych kart, które planujesz dodać.
PCI był kluczowym standardem, który zdefiniował pewną epokę, ale to PCI Express odpowiada obecnie za większość wydajności nowoczesnych komputerów. Zrozumienie działania jego gniazd, linii i wersji to jeden z najlepszych sposobów na uniknięcie wąskich gardeł i pełne wykorzystanie możliwości systemu.