Znalazłem tutaj architekturę płyty głównej:
Wygląda to na typowy układ płyt głównych. EDYCJA: Najwyraźniej nie jest już tak typowa.
Dlaczego CPU łączy się tylko z 1 magistralą? Ten przedni autobus wygląda jak duże wąskie gardło. Czy nie lepiej byłoby podać 2 lub 3 magistrale bezpośrednio do procesora?
Wyobrażam sobie jedną magistralę dla pamięci RAM, jedną dla karty graficznej i jedną dla pewnego rodzaju mostka do dysku twardego, portów USB i wszystkiego innego. Powodem, dla którego podzieliłem to w ten sposób, jest to, że szybkość przesyłania danych na dysku twardym jest wolniejsza w porównaniu do pamięci.
Czy jest coś bardzo trudnego w robieniu tego w ten sposób? Nie rozumiem, w jaki sposób może to kosztować, ponieważ istniejące schematy mają już nie mniej niż siedem autobusów. W rzeczywistości, stosując bardziej bezpośrednie autobusy, moglibyśmy zmniejszyć całkowitą liczbę autobusów, a może nawet jednego z mostów.
Coś z tym nie tak? Czy jest gdzieś poważna wada? Jedyne, co mogę wymyślić, to być może bardziej złożoność procesora i jądra, co sprawia, że myślę, że ta architektura wąskiego gardła jest taka, jak to robiono w dawnych czasach, kiedy rzeczy były mniej skomplikowane, a projekt pozostaje taki sam dla standaryzacji.
EDYCJA: Zapomniałem wspomnieć o Monitorze Strażniczym . Wiem, że widziałem to na niektórych schematach. Przypuszczalnie wąskie gardło ułatwiłoby organowi nadzorującemu monitorowanie wszystkiego. Czy to może mieć z tym coś wspólnego?
Odpowiedzi:
Podejście, które pokazujesz, jest dość starą topologią dla płyt głównych - wyprzedza PCIe, co naprawdę przywraca go gdzieś w latach 00. Powodem są przede wszystkim trudności z integracją.
Zasadniczo 15 lat temu technologia integracji wszystkiego na jednej matrycy praktycznie nie istniała z komercyjnego punktu widzenia, a zrobienie tego było niezwykle trudne. Zintegrowanie wszystkiego spowodowałoby bardzo duże rozmiary matryc krzemowych, co z kolei prowadzi do znacznie niższej wydajności. Wydajność jest w zasadzie tym, ile matryc tracisz na waflu z powodu wad - im większa matryca, tym większe prawdopodobieństwo defektu.
Aby temu zaradzić, po prostu podzieliłeś projekt na wiele układów - w przypadku płyt głównych skończyło się to na CPU, North Bridge i South Bridge. Procesor jest ograniczony tylko do procesora z szybkim interkonektem (o ile pamiętam, zwanym „front-bus bus”). Następnie masz North Bridge, który integruje kontroler pamięci, połączenie graficzne (np. AGP, starożytna technologia w kategoriach obliczeniowych) i inne wolniejsze łącze do South Bridge. South Bridge był używany do obsługi kart rozszerzeń, dysków twardych, napędów CD, audio itp.
W ciągu ostatnich 20 lat możliwość wytwarzania półprzewodników w coraz mniejszych węzłach procesowych o coraz większej niezawodności oznacza, że integracja wszystkiego w jednym układzie staje się możliwa. Mniejsze tranzystory oznaczają większą gęstość, dzięki czemu można zmieścić więcej, a ulepszone procesy produkcyjne oznaczają wyższą wydajność. W rzeczywistości jest nie tylko bardziej opłacalny, ale także stał się niezbędny, aby utrzymać wzrost prędkości w nowoczesnych komputerach.
Jak słusznie zauważyłeś, posiadanie jednego połączenia z mostem północnym staje się wąskim gardłem. Jeśli możesz zintegrować wszystko z procesorem, w tym PCIe Root Complex i kontroler pamięci systemowej, nagle masz niezwykle szybkie łącze między kluczowymi urządzeniami do grafiki i obliczeń - na płytce drukowanej mówisz może o prędkości rzędu Gb / s, na kostkę można osiągnąć prędkości rzędu Tbps!
Ta nowa topologia została odzwierciedlona na tym schemacie:
Źródło obrazu
W tym przypadku, jak widać, zarówno kontrolery grafiki, jak i pamięci są zintegrowane z matrycą procesora. Chociaż nadal masz jedno łącze do tego, co faktycznie jest jednym chipsetem złożonym z niektórych bitów mostka północnego i mostu południowego (chipset na schemacie), obecnie jest to niezwykle szybki interkonekt - może 100 + Gb / s. Wciąż wolniejszy niż na matrycy, ale znacznie szybszy niż stare autobusy z przodu.
Dlaczego nie zintegrować absolutnie wszystkiego? Producenci płyt głównych wciąż chcą pewnej personalizacji - ile gniazd PCIe, ile połączeń SATA, jaki kontroler audio itp.
W rzeczywistości niektóre procesory mobilne integrują się jeszcze bardziej z matrycą procesora - pomyśl o komputerach jednopłytkowych korzystających z wariantów procesorów ARM. W tym przypadku, ponieważ ARM wydzierżawia konstrukcję procesora, producenci mogą nadal dostosowywać swoje matryce według własnego uznania i integrować dowolne kontrolery / interfejsy, jakie chcą.
źródło
on the die you can achieve speeds on the order of Tbps!
Yikes, czy to nie zaczyna wyprzedzać zdolności procesora do przetwarzania go wystarczająco szybko?Nie mogę powiedzieć, że jestem ekspertem w architekturze komputerowej, ale postaram się odpowiedzieć na twoje pytania.
Jak wspomniał Tom, nie jest to już prawdą. Większość współczesnych procesorów ma zintegrowany mostek północny. Mostek południowy jest zazwyczaj albo zintegrowany, albo spowodowany przez nową architekturę; Chipsety Intela „zastępują” mostek południowy platformą kontrolera platformy, która komunikuje się bezpośrednio z CPU za pośrednictwem magistrali DMI.
Szerokie (64-bitowe) magistrale są drogie, wymagają dużej liczby nadajników-odbiorników magistrali i wielu pinów I / O. Jedynymi urządzeniami, które wymagają ogromnej, krzyczącej szybkiej magistrali, są karta graficzna i pamięć RAM. Cała reszta (SATA, PCI, USB, szeregowy itd.) Jest stosunkowo powolna i nie jest stale dostępna. Dlatego w powyższej architekturze wszystkie te „wolniejsze” urządzenia peryferyjne są zbijane razem przez mostek południowy jako pojedyncze urządzenie magistrali: procesor nie chce musieć rozstrzygać każdej małej transakcji magistrali, więc wszystkie wolne / rzadkie transakcje magistrali można agregować i zarządzany przez mostek południowy, który następnie łączy się z innymi urządzeniami peryferyjnymi ze znacznie większą swobodą.
Teraz należy wspomnieć, że kiedy mówię powyżej, że SATA / PCI / USB / serial są „powolne”, jest to głównie punkt historyczny, a obecnie staje się mniej prawdziwe. Wraz z przyjęciem dysków SSD na dyski typu spinny i szybkich urządzeń peryferyjnych PCIe, a także USB 3.0, Thunderbolt i być może Ethernet 10G (wkrótce), „wolne” pasmo peryferyjne szybko staje się bardzo znaczące. W przeszłości autobus między mostem północnym a mostem południowym nie był zbyt wąski, ale teraz nie jest to już prawdą. Tak więc, architektury zmierzają w kierunku większej liczby magistrali podłączonych bezpośrednio do procesora.
Byłoby więcej magistrali do zarządzania procesorem i więcej krzemu procesora do obsługi magistrali. Co jest drogie. Na powyższym schemacie nie wszystkie autobusy są równe. FSB krzyczy szybko, LPC nie. Szybkie magistrale wymagają szybkiej silikonu, wolne magistrale nie, więc jeśli możesz przenieść wolne magistrale z procesora do innego układu, to ułatwi ci życie.
Jednak, jak wspomniano powyżej, wraz ze wzrostem popularności urządzeń o dużej przepustowości, coraz więcej magistrali łączy się bezpośrednio z procesorem, szczególnie w architekturze SoC / bardziej zintegrowanej. Dzięki umieszczaniu coraz większej liczby kontrolerów na matrycy procesora łatwiej jest uzyskać bardzo wysoką przepustowość.
Nie, tak naprawdę nie robi to strażnik. Organ nadzorczy polega na ponownym uruchomieniu różnych rzeczy, gdy / jeśli się zablokują; tak naprawdę nie patrzy na wszystko poruszające się po autobusie (jest o wiele mniej skomplikowane!).
źródło
Fast buses require fast silicon, slow buses don't
Co dokładnie oznacza szybki krzem? Krzem o wyższej czystości? A może mówisz, że wolne autobusy mogą używać innego pierwiastka niż krzem? Tak czy inaczej, myślałem, że krzem jest dość tanim materiałem. Interesujące jest też to, że jest stróżem. Mogę zadać związane z tym pytanie.Liczba magistral, z którymi procesor bezpośrednio się połączy, będzie zasadniczo ograniczona do liczby odrębnych części procesora, które mogłyby uzyskać dostęp do rzeczy jednocześnie. Nierzadko, szczególnie w świecie wbudowanych procesorów i procesorów DSP, procesor ma magistralę dla programów i magistralę dla danych i umożliwia jednoczesne działanie obu. Typowy uniprocesor jednak skorzysta tylko na pobraniu jednej instrukcji na cykl instrukcji i będzie mógł uzyskać dostęp tylko do jednej lokalizacji pamięci danych na cykl instrukcji, więc wyjście poza jedną szynę pamięci programu i jedną magistrala pamięci danych. Aby umożliwić wykonanie niektórych rodzajów matematyki na danych pobranych z dwóch różnych strumieni,
W przypadku procesorów, które mają wiele jednostek wykonawczych, pomocne może być posiadanie osobnej magistrali dla każdej z nich, aby w przypadku wielu jednostek „zewnętrznych”, które muszą pobrać elementy z różnych „zewnętrznych” magistrali, może to zrobić bez zakłóceń. Chyba że istnieje logiczny powód, dla którego rzeczy, do których mają dostęp różne jednostki wykonawcze, będą dostępne za pośrednictwem różnych magistral poza procesorem, jednak oddzielne magistrale od procesora zasilają jednostkę arbitrażową, która może przekazywać tylko jedno żądanie na raz konkretne urządzenie zewnętrzne nic nie pomoże. Autobusy są drogie, więc posiadanie dwóch jednostek wykonawczych na jednej magistrali jest generalnie tańsze niż używanie oddzielnych autobusów. Jeśli użycie oddzielnych magistral pozwoli na znaczną poprawę wydajności, może to uzasadnić koszt, ale w przeciwnym razie wszelkie zasoby (obszar chipa itp.)
źródło
Rozważ liczbę pinów wymaganych na pakietach CPU, aby mieć wiele szerokich szyn. Na przykład osiem rdzeni procesora, każdy z 64-bitową magistralą danych, oraz różne inne piny do innych celów. Czy są dziś dostępne jakieś pakiety CPU z około 800 pinami?
źródło