Autobus (komputer) - Bus (computing)

Cztery gniazda kart magistrali PCI Express (od góry do 2 na dole: ×4, ×16, ×1 i ×16), w porównaniu do 32-bitowego gniazda konwencjonalnej karty magistrali PCI (na samym dole)

W architekturze komputerowej , A autobus (forma skrócona od łacińskiego omnibus i historycznie nazywany również autostrada danych ) to system komunikacji, który przenosi dane pomiędzy komponentami wewnątrz komputera , lub pomiędzy komputerami. Wyrażenie to obejmuje wszystkie powiązane komponenty sprzętowe (przewód, światłowód itp.) oraz oprogramowanie , w tym protokoły komunikacyjne .

Wczesne magistrale komputerowe były równoległymi przewodami elektrycznymi z wieloma połączeniami sprzętowymi, ale teraz termin ten jest używany dla każdego fizycznego układu, który zapewnia taką samą funkcję logiczną jak równoległa magistrala elektryczna . Nowoczesne magistrale komputerowe mogą wykorzystywać zarówno połączenia równoległe, jak i bitowe połączenia szeregowe i mogą być okablowane w topologii wielopunktowej (elektrycznie równoległe) lub łańcuchowej lub połączone za pomocą przełączanych koncentratorów, jak w przypadku USB .

Tło i nazewnictwo

Systemy komputerowe generalnie składają się z trzech głównych części:

  • Jednostka centralna (CPU) przetwarzająca dane,
  • Pamięć , która przechowuje programy i dane mają być przetwarzane i
  • Urządzenia we/wy ( wejścia/wyjścia ) jako urządzenia peryferyjne komunikujące się ze światem zewnętrznym.

Wczesny komputer mógł zawierać ręcznie okablowany procesor z lamp próżniowych , bęben magnetyczny do pamięci głównej oraz taśmę dziurkowaną i drukarkę do odpowiednio odczytu i zapisu danych. Nowoczesny system może mieć wielordzeniowy procesor , pamięć DDR4 SDRAM , dysk SSD jako dodatkową pamięć masową , kartę graficzną i wyświetlacz LCD jako system wyświetlania, mysz i klawiaturę do interakcji oraz połączenie Wi-Fi do pracy w sieci . W obu przykładach magistrale komputerowe w takiej czy innej formie przenoszą dane między wszystkimi tymi urządzeniami.

W większości tradycyjnych architektur komputerowych procesor i pamięć główna są ze sobą ściśle powiązane. Mikroprocesor konwencjonalnie to pojedynczy układ scalony, który ma liczbę połączeń elektrycznych na jej szpilki , które można wykorzystać, aby wybrać „adres” w głównej pamięci i inny zestaw kołków do odczytu i zapisu danych przechowywanych w tym miejscu. W większości przypadków procesor i pamięć mają wspólne charakterystyki sygnalizacyjne i działają synchronicznie . Magistrala łącząca procesor i pamięć jest jedną z definiujących cech systemu i często nazywa się ją po prostu magistralą systemową .

Możliwe jest umożliwienie komunikacji peryferiów z pamięcią w ten sam sposób, podłączając adaptery w postaci kart rozszerzeń bezpośrednio do magistrali systemowej. Jest to zwykle realizowane za pomocą jakiegoś znormalizowanego złącza elektrycznego, z których kilka tworzy magistralę rozszerzeń lub magistralę lokalną . Jednakże, ponieważ różnice w wydajności między procesorem a urządzeniami peryferyjnymi są bardzo zróżnicowane, zwykle potrzebne jest pewne rozwiązanie, aby zapewnić, że urządzenia peryferyjne nie spowalniają ogólnej wydajności systemu. Wiele procesorów posiada drugi zestaw pinów, podobny do tych do komunikacji z pamięcią, ale zdolnych do działania z bardzo różnymi prędkościami i przy użyciu różnych protokołów. Inni używają inteligentnych kontrolerów do umieszczania danych bezpośrednio w pamięci, co jest pojęciem znanym jako bezpośredni dostęp do pamięci . Większość nowoczesnych systemów łączy oba rozwiązania tam, gdzie to konieczne.

Wraz ze wzrostem liczby potencjalnych urządzeń peryferyjnych korzystanie z karty rozszerzeń dla każdego urządzenia peryferyjnego stawało się coraz bardziej nie do utrzymania. Doprowadziło to do wprowadzenia systemów magistrali zaprojektowanych specjalnie do obsługi wielu urządzeń peryferyjnych. Typowymi przykładami są porty SATA w nowoczesnych komputerach, które umożliwiają podłączenie wielu dysków twardych bez konieczności posiadania karty. Jednak te wysokowydajne systemy są generalnie zbyt drogie, aby można je było zaimplementować w urządzeniach z niższej półki, takich jak mysz. Doprowadziło to do równoległego rozwoju wielu systemów magistrali o niskiej wydajności dla tych rozwiązań, z których najczęstszym przykładem jest znormalizowana uniwersalna magistrala szeregowa (USB). Wszystkie takie przykłady można nazwać magistralami peryferyjnymi , chociaż terminologia ta nie jest uniwersalna.

W nowoczesnych systemach różnica wydajności między procesorem a pamięcią główną wzrosła tak bardzo, że coraz większa ilość szybkiej pamięci jest wbudowana bezpośrednio w procesor, zwaną pamięcią podręczną . W takich systemach procesory komunikują się za pomocą wysokowydajnych magistral, które działają z prędkościami znacznie większymi niż pamięć i komunikują się z pamięcią za pomocą protokołów podobnych do tych, które w przeszłości stosowano wyłącznie w przypadku urządzeń peryferyjnych. Te magistrale systemowe są również używane do komunikacji z większością (lub wszystkimi) innymi urządzeniami peryferyjnymi za pośrednictwem adapterów, które z kolei komunikują się z innymi urządzeniami peryferyjnymi i kontrolerami. Takie systemy są architektonicznie bardziej podobne do wielokomputerów , komunikują się za pośrednictwem magistrali, a nie sieci. W takich przypadkach magistrale rozszerzeń są całkowicie oddzielne i nie współdzielą już żadnej architektury z procesorem hosta (i mogą w rzeczywistości obsługiwać wiele różnych procesorów, jak w przypadku PCI ). To, co wcześniej było magistralą systemową, jest obecnie często nazywane magistralą FSB .

Biorąc pod uwagę te zmiany, klasyczne terminy „system”, „ekspansja” i „peryferia” nie mają już tych samych konotacji. Inne popularne systemy kategoryzacji opierają się na podstawowej roli magistrali, łącząc urządzenia wewnętrznie lub zewnętrznie, na przykład PCI vs. SCSI . Jednak wiele popularnych nowoczesnych systemów magistrali może być używanych do obu; SATA i powiązana z nią eSATA są jednym z przykładów systemu, który wcześniej był opisywany jako wewnętrzny, podczas gdy niektóre aplikacje motoryzacyjne wykorzystują głównie zewnętrzny IEEE 1394 w sposób bardziej podobny do magistrali systemowej. Inne przykłady, takie jak InfiniBand i I²C, zostały od początku zaprojektowane do użytku wewnętrznego i zewnętrznego.

Autobusy wewnętrzne

Magistrala wewnętrzna, znany również jako wewnętrzną magistralę danych, magistralę pamięci , magistrali systemowej lub FSB autobus , łączy wszystkie elementy wewnętrzne komputera, takich jak pamięć, procesor i do płyty głównej. Wewnętrzne magistrale danych są również nazywane magistralami lokalnymi, ponieważ są przeznaczone do łączenia z urządzeniami lokalnymi. Ta magistrala jest zazwyczaj dość szybka i niezależna od pozostałych operacji komputera.

Autobusy zewnętrzne

Magistrala zewnętrzna lub magistrala rozszerzeń składa się z ścieżek elektronicznych, które łączą różne urządzenia zewnętrzne, takie jak drukarka itp., z komputerem.

Szyna adresowa

Autobus adres jest autobus, który jest używany do określenia adresu fizycznego . Gdy procesor lub urządzenie obsługujące DMA musi odczytać lub zapisać do lokalizacji w pamięci, określa to miejsce w pamięci na szynie adresowej (wartość do odczytu lub zapisu jest wysyłana na szynie danych). Szerokość szyny adresowej określa ilość pamięci, jaką system może zaadresować. Na przykład system z 32-bitową magistralą adresową może adresować 2 32 (4 294 967 296) lokalizacji pamięci. Jeśli każda lokalizacja pamięci zawiera jeden bajt, adresowalna przestrzeń pamięci wynosi 4 GiB.

Multipleksowanie adresów

Wczesne procesory używały przewodu dla każdego bitu szerokości adresu. Na przykład 16-bitowa magistrala adresowa miała 16 fizycznych przewodów tworzących magistralę. W miarę jak autobusy stawały się szersze i dłuższe, podejście to stało się drogie pod względem liczby pinów chipowych i śladów na płytkach. Począwszy od Mostek 4096 DRAM , multipleksowanie adresów zaimplementowane za pomocą multiplekserów stało się powszechne. W schemacie adresowania multipleksowanego adres jest wysyłany w dwóch równych częściach w naprzemiennych cyklach magistrali. Zmniejsza to o połowę liczbę sygnałów magistrali adresowej wymaganych do połączenia z pamięcią. Na przykład, 32-bitowa magistrala adresowa może być zaimplementowana przy użyciu 16 linii i przesłaniu pierwszej połowy adresu pamięci, po której następuje natychmiast druga połowa adresu pamięci.

Zazwyczaj 2 dodatkowe piny w magistrali sterującej - stroboskop adresu wiersza (RAS) i stroboskop adresu kolumny (CAS) - są używane do informowania pamięci DRAM, czy magistrala adresowa aktualnie wysyła pierwszą połowę adresu pamięci, czy druga połowa.

Realizacja

Dostęp do pojedynczego bajtu często wymaga jednoczesnego odczytania lub zapisania pełnej szerokości magistrali ( słowa ). W takich przypadkach najmniej znaczące bity szyny adresowej mogą nawet nie zostać zaimplementowane - zamiast tego obowiązkiem urządzenia sterującego jest odizolowanie pojedynczego bajtu wymaganego od całego przesyłanego słowa. Tak jest na przykład w przypadku magistrali lokalnej VESA, w której brakuje dwóch najmniej znaczących bitów, co ogranicza tę magistralę do wyrównanych 32-bitowych transferów.

Historycznie istniały również przykłady komputerów, które potrafiły adresować tylko słowa – maszyny słowne .

Magistrala pamięci

Magistrali pamięci jest autobus, który łączy pamięć główną do kontrolera pamięci w systemach komputerowych . Pierwotnie używano autobusów ogólnego przeznaczenia, takich jak VMEbus i S-100 , ale w celu zmniejszenia opóźnień , nowoczesne magistrale pamięci są zaprojektowane do bezpośredniego łączenia się z układami DRAM , a zatem są zaprojektowane przez organizacje standaryzujące układy, takie jak JEDEC . Przykładami są różne generacje SDRAM-u i szeregowe magistrale punkt-punkt, takie jak SLDRAM i RDRAM . Wyjątkiem jest moduł Fully Buffered DIMM, który pomimo starannego zaprojektowania w celu zminimalizowania efektu, został skrytykowany za większe opóźnienia.

Szczegóły dotyczące wdrożenia

Magistrale mogą być magistralami równoległymi , które przenoszą słowa danych równolegle na wielu przewodach, lub magistralami szeregowymi , które przenoszą dane w postaci bitowo-szeregowej. Dodanie dodatkowych połączeń zasilania i sterowania, sterowników różnicowych i połączeń danych w każdym kierunku zwykle oznacza, że ​​większość magistral szeregowych ma więcej przewodów niż minimalna liczba stosowana w 1-Wire i UNI/O . Wraz ze wzrostem szybkości transmisji danych problemy związane z skosem czasowym , zużyciem energii, zakłóceniami elektromagnetycznymi i przesłuchami w szynach równoległych stają się coraz trudniejsze do obejścia. Częściowym rozwiązaniem tego problemu było podwójne pompowanie autobusu. Często magistrala szeregowa może działać z wyższymi całkowitymi szybkościami transmisji danych niż magistrala równoległa, pomimo mniejszej liczby połączeń elektrycznych, ponieważ magistrala szeregowa z natury nie ma skosu czasowego ani przesłuchów. Przykładami tego są USB , FireWire i Serial ATA . Połączenia wielopunktowe nie działają dobrze w przypadku szybkich magistral szeregowych, więc większość nowoczesnych magistral szeregowych wykorzystuje konstrukcje łańcuchowe lub koncentratory.

Połączenia sieciowe, takie jak Ethernet, nie są ogólnie uważane za magistrale, chociaż różnica jest w dużej mierze koncepcyjna, a nie praktyczna. Atrybutem ogólnie używanym do scharakteryzowania magistrali jest to, że magistrala dostarcza zasilanie dla podłączonego sprzętu. Podkreśla to pochodzenie szynoprzewodów w architekturze magistrali jako dostarczanie energii przełączanej lub rozproszonej. Wyklucza to, jako magistrale, schematy takie jak szeregowy RS-232 , równoległy Centronics , interfejsy IEEE 1284 i Ethernet, ponieważ urządzenia te również potrzebowały oddzielnych zasilaczy. Urządzenia uniwersalnej magistrali szeregowej mogą korzystać z zasilania dostarczanego przez magistralę, ale często korzystają z oddzielnego źródła zasilania. Przykładem takiego rozróżnienia jest system telefoniczny z podłączonym modemem , w którym połączenie RJ11 i powiązany z nim schemat sygnalizacji modulowanej nie jest uważany za magistralę i jest analogiczny do połączenia Ethernet . Schemat podłączenia linii telefonicznej nie jest uważany za magistralę w odniesieniu do sygnałów, ale Centrala wykorzystuje magistrale z przełącznikami krzyżowymi do połączeń między telefonami.

Jednak to rozróżnienie – „zasilanie jest dostarczane przez magistralę” – nie występuje w wielu systemach awionicznych , w których połączenia danych, takie jak ARINC 429 , ARINC 629 , MIL-STD-1553B (STANAG 3838) i EFABus ( STANAG 3910 ) są powszechnie określane jako „magistrale danych” lub czasami „magistrale danych”. Takie awioniczne magistrale danych zwykle charakteryzują się posiadaniem kilku urządzeń lub elementów/jednostek z możliwością wymiany linii (LRI/LRU) podłączonych do wspólnego, współdzielonego nośnika . Mogą one, podobnie jak ARINC 429, być simpleksowe , tj. mieć jedno źródło LRI/LRU lub, jak ARINC 629, MIL-STD-1553B i STANAG 3910, być dupleksowe , umożliwiając działanie wszystkim podłączonym LRI/LRU przy w różnym czasie ( półdupleks ), jako nadajniki i odbiorniki danych.

Multipleksowanie magistrali

Najprostsza magistrala systemowa ma całkowicie oddzielne linie danych wejściowych, linie danych wyjściowych i linie adresowe. Aby obniżyć koszty, większość mikrokomputerów ma dwukierunkową magistralę danych, ponownie wykorzystując te same przewody do wprowadzania i wyprowadzania danych w różnym czasie.

Niektóre procesory używają dedykowanego przewodu dla każdego bitu szyny adresowej, szyny danych i szyny sterującej. Na przykład, 64-pinowa magistrala STEbus składa się z 8 fizycznych przewodów dedykowanych do 8-bitowej magistrali danych, 20 fizycznych przewodów dedykowanych do 20-bitowej magistrali adresowej, 21 fizycznych przewodów dedykowanych do magistrali sterującej i 15 fizycznych przewodów dedykowanych do różne szyny zasilające.

Multipleksowanie magistrali wymaga mniejszej liczby przewodów, co zmniejsza koszty wielu wczesnych mikroprocesorów i układów DRAM. Wspomniano już o jednym wspólnym schemacie multipleksowania , multipleksowaniu adresów . Inny schemat multipleksowania ponownie wykorzystuje styki magistrali adresowej jako styki magistrali danych, podejście stosowane przez konwencjonalne PCI i 8086 . Różne „magistrale szeregowe” mogą być postrzegane jako ostateczna granica multipleksacji, polegająca na wysyłaniu każdego z bitów adresu i każdego z bitów danych, po jednym na raz, przez pojedynczy styk (lub pojedynczą parę różnicową).

Historia

Z biegiem czasu kilka grup ludzi pracowało nad różnymi standardami magistrali komputerowych, w tym Komitet Standardów Architektury Magistrali IEEE (BASC), grupa badawcza IEEE „Superbus”, inicjatywa otwartych mikroprocesorów (OMI), inicjatywa otwartych mikrosystemów (OMI), „Gang Dziewięciu”, który opracował EISA itp.

Pierwsza generacja

Wczesne autobusy komputerowe były wiązkami przewodów, które łączyły pamięć komputera i urządzenia peryferyjne. Anegdotycznie nazywane „ cyfrowym pniem ”, zostały nazwane od autobusów elektrycznych lub szynoprzewodów . Prawie zawsze była jedna magistrala dla pamięci i jedna lub więcej oddzielnych magistral dla urządzeń peryferyjnych. Dostęp do nich odbywały się za pomocą oddzielnych instrukcji, z zupełnie innymi czasami i protokołami.

Jedną z pierwszych komplikacji było użycie przerwań . Wczesne programy komputerowe wykonywały operacje wejścia/wyjścia , czekając w pętli na gotowość urządzenia peryferyjnego. To była strata czasu dla programów, które miały inne zadania do wykonania. Ponadto, jeśli program próbował wykonać te inne zadania, ponowne sprawdzenie przez program może zająć zbyt dużo czasu, co spowoduje utratę danych. Inżynierowie w ten sposób przygotowali urządzenia peryferyjne do przerywania procesora. Przerwania musiały mieć priorytet, ponieważ CPU może wykonywać kod tylko dla jednego urządzenia peryferyjnego na raz, a niektóre urządzenia są bardziej krytyczne czasowo niż inne.

Systemy high-end wprowadziły ideę kontrolerów kanałów , które były zasadniczo małymi komputerami przeznaczonymi do obsługi wejścia i wyjścia danej magistrali. IBM wprowadził je na IBM 709 w 1958 roku i stały się wspólną cechą ich platform. Inni wysokowydajni dostawcy, tacy jak Control Data Corporation, wdrożyli podobne projekty. Ogólnie rzecz biorąc, kontrolery kanałów zrobią wszystko, co w ich mocy, aby uruchomić wszystkie operacje na magistrali wewnętrznie, przenosząc dane, gdy wiadomo, że procesor jest zajęty gdzie indziej, jeśli to możliwe, i używając przerwań tylko wtedy, gdy jest to konieczne. To znacznie zmniejszyło obciążenie procesora i zapewniło lepszą ogólną wydajność systemu.

Aby zapewnić modułowość, magistrale pamięci i we/wy można połączyć w zunifikowaną magistralę systemową . W takim przypadku do połączenia wielu elementów systemu, a w niektórych przypadkach wszystkich, można użyć jednego systemu mechanicznego i elektrycznego.

Później programy komputerowe zaczęły dzielić pamięć wspólną dla kilku procesorów. Dostęp do tej magistrali pamięci również musiał być traktowany priorytetowo. Prostym sposobem na nadanie priorytetu przerwaniom lub dostępowi do magistrali było połączenie szeregowe . W takim przypadku sygnały będą naturalnie przepływać przez magistralę w porządku fizycznym lub logicznym, eliminując potrzebę skomplikowanego planowania.

Mini i mikro

Digital Equipment Corporation (DEC) dodatkowo obniżyło koszty masowo produkowanych minikomputerów i mapowało urządzenia peryferyjne do szyny pamięci, tak że urządzenia wejściowe i wyjściowe wydawały się być lokalizacjami pamięci. Ten został wdrożony w Unibus z PDP-11 około 1969 roku.

Wczesne systemy magistral mikrokomputerowych były zasadniczo pasywną płytą montażową połączoną bezpośrednio lub poprzez wzmacniacze buforowe z pinami procesora . Pamięć i inne urządzenia zostałyby dodane do magistrali przy użyciu tych samych pinów adresu i danych, co sam procesor, połączonych równolegle. Komunikacją sterował procesor, który odczytywał i zapisywał dane z urządzeń tak, jakby były to bloki pamięci, używając tych samych instrukcji, a wszystko synchronizowane przez centralny zegar kontrolujący prędkość procesora. Mimo to urządzenia przerywały procesor, sygnalizując na osobnych pinach procesora.

Na przykład, kontroler napędu dysków sygnalizowałby procesorowi, że nowe dane są gotowe do odczytu, w którym to momencie procesor przeniesie dane, odczytując „lokalizację pamięci”, która odpowiada napędowi dyskowemu. Prawie wszystkie wczesne mikrokomputery zostały zbudowane w ten sposób, począwszy od magistrali S-100 w systemie komputerowym Altair 8800 .

W niektórych przypadkach, zwłaszcza w IBM PC , chociaż można zastosować podobną architekturę fizyczną, instrukcje dostępu do urządzeń peryferyjnych ( ini out) i pamięci ( movi innych) nie zostały w ogóle ujednolicone i nadal generują różne sygnały procesora, które mogą być służy do implementacji oddzielnej magistrali we/wy.

Te proste systemy magistrali miały poważną wadę, gdy były używane w komputerach ogólnego przeznaczenia. Cały sprzęt w autobusie musiał komunikować się z tą samą prędkością, ponieważ dzielił jeden zegar.

Zwiększanie szybkości procesora staje się trudniejsze, ponieważ szybkość wszystkich urządzeń również musi wzrosnąć. Gdy nie jest praktyczne lub ekonomiczne posiadanie wszystkich urządzeń tak szybkich jak procesor, procesor musi albo przejść w stan oczekiwania , albo tymczasowo pracować z wolniejszą częstotliwością zegara, aby komunikować się z innymi urządzeniami w komputerze. Chociaż akceptowalny w systemach wbudowanych , problem ten nie był długo tolerowany w komputerach ogólnego przeznaczenia, które można rozbudowywać przez użytkownika.

Takie systemy magistrali są również trudne do skonfigurowania, gdy są zbudowane ze zwykłego, gotowego sprzętu. Zazwyczaj każda dodana karta rozszerzeń wymaga wielu zworek w celu ustawienia adresów pamięci, adresów we/wy, priorytetów przerwań i numerów przerwań.

Drugie pokolenie

Systemy magistrali „drugiej generacji”, takie jak NuBus, rozwiązały niektóre z tych problemów. Zazwyczaj dzielili komputer na dwa „światy”, procesor i pamięć po jednej stronie, a różne urządzenia po drugiej. A kontroler magistrali zaakceptowanych danych od strony procesora zostać przeniesiony do strony urządzeń peryferyjnych, a więc przeniesienie ciężaru protokół komunikacyjny od samego CPU. Dzięki temu po stronie procesora i pamięci ewoluowały niezależnie od magistrali urządzeń lub po prostu „magistrali”. Urządzenia w magistrali mogą komunikować się ze sobą bez interwencji procesora. Doprowadziło to do znacznie lepszej wydajności w „rzeczywistym świecie”, ale również wymagało, aby karty były znacznie bardziej złożone. Magistrale te często również rozwiązywały problemy z szybkością, będąc „większymi” pod względem rozmiaru ścieżki danych, przechodząc z 8-bitowych równoległych szyn w pierwszej generacji do 16 lub 32-bitowych w drugiej generacji, a także dodając konfigurację oprogramowania (teraz ustandaryzowany jako Plug-n-play ), aby zastąpić lub wymienić zworki.

Jednak te nowsze systemy miały jedną cechę ze swoimi wcześniejszymi kuzynami, ponieważ wszyscy w autobusie musieli rozmawiać z tą samą prędkością. Podczas gdy procesor był teraz odizolowany i mógł zwiększać prędkość, procesory i pamięć nadal zwiększały prędkość znacznie szybciej niż magistrale, z którymi rozmawiały. W rezultacie prędkości magistrali były teraz znacznie wolniejsze niż to, czego potrzebował nowoczesny system, a maszyny były głodne danych. Szczególnie powszechnym przykładem tego problemu było to, że karty wideo szybko wyprzedziły nawet nowsze systemy magistrali, takie jak PCI , a komputery zaczęły zawierać AGP tylko po to, by sterować kartą wideo. W 2004 roku AGP ponownie wyrosło z wysokiej klasy kart graficznych i innych urządzeń peryferyjnych i zostało zastąpione nową magistralą PCI Express .

Coraz więcej urządzeń zewnętrznych zaczęło również wykorzystywać własne systemy magistralowe. Kiedy po raz pierwszy wprowadzono napędy dysków, były one dodawane do maszyny z kartą podłączoną do magistrali, dlatego komputery mają tak wiele gniazd na magistrali. Jednak w latach 80. i 90. wprowadzono nowe systemy, takie jak SCSI i IDE , aby zaspokoić tę potrzebę, pozostawiając większość wolnych miejsc w nowoczesnych systemach. Obecnie w typowej maszynie jest prawdopodobnie około pięciu różnych autobusów obsługujących różne urządzenia.

Trzecia generacja

Autobusy „trzeciej generacji” pojawiają się na rynku od około 2001 roku, w tym HyperTransport i InfiniBand . Są również bardzo elastyczne pod względem fizycznych połączeń, co pozwala na używanie ich zarówno jako magistrale wewnętrzne, jak i łączenie ze sobą różnych maszyn. Może to prowadzić do złożonych problemów przy próbie obsługi różnych żądań, więc duża część pracy nad tymi systemami dotyczy projektowania oprogramowania, a nie samego sprzętu. Ogólnie rzecz biorąc, te magistrale trzeciej generacji wyglądają bardziej jak sieć niż oryginalna koncepcja magistrali, z wyższym obciążeniem protokołu wymaganym niż wczesne systemy, a jednocześnie umożliwiają wielu urządzeniom jednoczesne korzystanie z magistrali.

Autobusy, takie jak Wishbone , zostały opracowane przez ruch sprzętu open source w celu dalszego usunięcia ograniczeń prawnych i patentowych z projektowania komputerów.

Czwarta generacja

Compute ekspresowe link (CXL) jest otwartym standardem interkonekt za szybki procesor -to-urządzenia i CPU-pamięć, zaprojektowany w celu przyspieszenia nowej generacji centrów danych wydajności.

Przykłady wewnętrznych magistral komputerowych

Równoległy

Seryjny

Przykłady zewnętrznych magistral komputerowych

Równoległy

  • Interfejs równoległy HIPPI o wysokiej wydajności
  • IEEE-488 (znany również jako GPIB, magistrala interfejsów ogólnego przeznaczenia i HPIB, magistrala oprzyrządowania Hewlett-Packard)
  • Karta PC , wcześniej znana jako PCMCIA , często używana w laptopach i innych urządzeniach przenośnych, ale zanika wraz z wprowadzeniem USB oraz wbudowanych połączeń sieciowych i modemowych

Seryjny

Przykłady wewnętrznych/zewnętrznych magistral komputerowych

Zobacz też

Bibliografia

Zewnętrzne linki