Dlaczego procesory potrzebują tak dużo prądu?

37

Wiem, że prosty procesor (np. Intel lub AMD) może zużywać 45–140 W, a wiele procesorów działa przy napięciu 1,2 V, 1,25 V itp.

Zakładając, że procesor działa przy 1,25 V i ma TDP 80 W ... używa 64 amperów (dużo wzmacniaczy).

  1. Dlaczego procesor potrzebuje więcej niż 1 A w swoim obwodzie (zakładając, że tranzystory FinFET)? Wiem, że przez większość czasu procesor pracuje na biegu jałowym, a 60 A to „impulsy”, ponieważ procesor ma zegar, ale dlaczego procesor nie może działać przy 1 V i 1 A?

  2. Mały i szybki tranzystor FinFET, na przykład: 14 nm pracujący przy 3,0 GHz potrzebuje ilu wzmacniaczy (około)?

  3. Czy wyższy prąd powoduje szybsze włączanie i / lub wyłączanie tranzystorów?

Leonardo Bosquett
źródło
27
Nowoczesne procesory (z których żaden nie jest „prosty”) wymagają wielu szyn napięciowych, wszystkie z własnym zapotrzebowaniem na moc. Twoje pytanie zawiera wiele założeń i zawiera wiele błędnych stwierdzeń. Musisz wziąć pod uwagę wszystkie wymagania dotyczące zasilania, a nie tylko te dotyczące pojedynczej szyny.
Wossname,
8
Czy tranzystor FinFET może liczyć na nowoczesny procesor. Nie każdy FET przewodzi prąd z Vdd do ziemi, ale mimo to 64 A rozkłada się na * bardzo dużą liczbę * tych przełączających FET.
glen_geek,
9
@EricLippert „musiałoby to wyciągać 64 amperów ze ściany” - podejrzewam, że procesor nie działałby przy napięciu 110 V.
Andrew Morton
6
Zachowana ilość to energia, a średnio także moc. Jeśli procesor pobiera 64 W, zasilacz musi pobierać co najmniej 64 W z gniazda. To <1A nawet przy napięciu 110 V.
MSalters
6
@EricLippert Płyta główna komputera zawiera wielofazowy konwerter prądu stałego na stały, który obniża napięcie zasilania (12 V w przypadku komputera stacjonarnego, prawdopodobnie 12–19 V w przypadku laptopa) do podstawowego napięcia zasilania. Odbywa się to przy stałej MOCY, więc prąd wyjściowy jest 10-20 razy większy niż prąd wejściowy. Nie wspominając o zasilaniu 12 V w komputerze stacjonarnym również pochodzącym z zasilacza impulsowego, który również zamienia na stałą moc. Procesor w komputerze prawdopodobnie ma co najmniej 100 pinów zasilania i uziemienia do obsługi prądu.
alex.forencich,

Odpowiedzi:

70
  1. Procesory nie są „proste” w żadnym stopniu wyobraźni. Ponieważ mają kilka miliardów tranzystorów, z których każdy będzie miał niewielki wyciek na biegu jałowym i podczas przełączania będzie musiał naładować i rozładować bramkę oraz połączyć pojemność w innych tranzystorach. Tak, każdy pobiera mały prąd, ale pomnożenie go przez liczbę tranzystorów powoduje zaskakująco dużą liczbę. 64A jest już średnim prądem ... podczas przełączania tranzystory mogą pobierać znacznie więcej niż średnia, a to jest wygładzane przez kondensatory obejściowe. Pamiętaj, że twoja liczba 64A pochodzi z pracy wstecz od TDP, co sprawia, że ​​tak naprawdę 64A RMS, i może istnieć znacząca zmienność wokół tego w wielu skalach czasowych (zmiana podczas cyklu zegara, zmiana podczas różnych operacji, zmiana między stanami uśpienia itp. ). Również, być może uda Ci się uniknąć pracy z procesorem zaprojektowanym do pracy z częstotliwością 3 GHz przy napięciu 1,2 wolta i 64 amperach przy napięciu 1 wolta i 1 wzmacniaczu ... może tylko przy 3 MHz. Chociaż w tym momencie musisz się martwić, czy układ wykorzystuje dynamiczną logikę, która ma minimalną częstotliwość taktowania, więc być może będziesz musiał uruchomić go z częstotliwością kilkuset MHz do GHz i okresowo przełączać go w głęboki sen, aby uzyskać średnią prąd w dół. Najważniejsze jest to, że moc = wydajność. Wydajność większości nowoczesnych procesorów jest w rzeczywistości ograniczona termicznie. więc może będziesz musiał uruchomić go z częstotliwością kilkuset MHz do GHz i okresowo włączać go w tryb głębokiego uśpienia, aby obniżyć średni prąd. Najważniejsze jest to, że moc = wydajność. Wydajność większości nowoczesnych procesorów jest w rzeczywistości ograniczona termicznie. więc może będziesz musiał uruchomić go z częstotliwością kilkuset MHz do GHz i okresowo włączać go w tryb głębokiego uśpienia, aby obniżyć średni prąd. Najważniejsze jest to, że moc = wydajność. Wydajność większości nowoczesnych procesorów jest w rzeczywistości ograniczona termicznie.
  2. Jest to stosunkowo łatwe do obliczenia - , gdzie jest prądem, to pojemność obciążenia, to napięcie, to współczynnik aktywności, a to częstotliwość przełączania. Zobaczę, czy uda mi się zdobyć numery ballparków dla pojemności bramki FinFET i edytować. I C v α fI=CvαfICvαf
  3. Raczej. Im szybciej pojemność bramki jest ładowana lub rozładowywana, tym szybciej tranzystor się przełącza. Szybsze ładowanie wymaga albo mniejszej pojemności (określonej przez geometrię), albo większego prądu (określonej przez rezystancję połączenia i napięcie zasilania). Poszczególne tranzystory przełączają się szybciej, co oznacza, że ​​mogą przełączać się częściej, co powoduje większy pobór prądu (proporcjonalny do częstotliwości taktowania).

Edycja: więc http://www.synopsys.com/community/universityprogram/documents/article-iitk/25nmtriplegatefinfetswithraisedsourcedrain.pdf ma wartość pojemności bramki 25 nm FinFET. Nazywam to po prostu 0.1 FF, aby zachować prostotę. Najwyraźniej zmienia się w zależności od napięcia polaryzacji i na pewno będzie się różnić w zależności od wielkości tranzystora (tranzystory są zwymiarowane zgodnie z ich przeznaczeniem w obwodzie, nie wszystkie tranzystory będą tego samego rozmiaru! Większe tranzystory są „mocniejsze”, ponieważ mogą przełączać większy prąd, ale mają również wyższą pojemność bramki i wymagają więcej prądu do sterowania).

Podłączenie 1,25 V, 0,1 FF 3 GHz i , wynik . Pomnóż to przez 1 miliard, a otrzymasz 375 A. To jest wymagany średni prąd bramki (ładowanie na sekundę do pojemności bramki), aby przełączyć 1 miliard tych tranzystorów na 3 GHz. To nie liczy się jako „strzelanie”, które nastąpi podczas przełączania w logice CMOS. Jest to również średnia, więc prąd chwilowy może się bardzo różnić - pomyśl o tym, jak asymptotycznie zmniejsza się pobór prądu, gdy obwód RC ładuje się. Obejdź kondensatory na podłożu, obudowie i płytce drukowanej, aby wygładzić tę odmianę. Oczywiście jest to tylko figura do gry w piłkę, ale wydaje się, że jest to odpowiedni rząd wielkości. Nie uwzględnia to również prądu upływu ani ładunku przechowywanego w innych pasożytach (tj 0,375 μ Aα=10.375μA

W większości urządzeń będzie znacznie mniejsza niż 1, ponieważ wiele tranzystorów będzie bezczynnych w każdym cyklu zegara. Będzie się to różnić w zależności od funkcji tranzystorów. Na przykład tranzystory w sieci dystrybucji zegara będą miały ponieważ przełączają się dwukrotnie w każdym cyklu zegara. W przypadku czegoś takiego jak licznik binarny LSB miałby 0,5, ponieważ przełącza się raz na cykl zegara, następny bit miałby ponieważ przełącza się o połowę tak często, itp. Jednak w przypadku czegoś w rodzaju pamięci podręcznej,α = 1 α α = 0,25 α α = 0,000061 ααα=1αα=0.25αmoże być bardzo mały. Weźmy na przykład 1 MB pamięci podręcznej. Pamięć podręczna 1 MB zbudowana z komórek SRAM 6T ma 48 milionów tranzystorów tylko do przechowywania danych. Będzie miał więcej dla logiki odczytu i zapisu, demultiplekserów itp. Jednak tylko garstka kiedykolwiek włączyłaby dany cykl zegara. Powiedzmy, że linia bufora ma 128 bajtów, a nowa linia jest zapisywana w każdym cyklu. To 1024 bity. Zakładając, że zawartość komórki i nowe dane są losowe, oczekuje się, że 512 bitów zostanie odwróconych. To 3072 tranzystorów z 48 milionów, czyli . Zauważ, że dotyczy to tylko samej tablicy pamięci; zespół obwodów pomocniczych (dekodery, logika odczytu / zapisu, wzmacniacze wykrywające itp.) będzie miał znacznie większyα=0.000061α. Dlatego zużycie energii w pamięci podręcznej jest zwykle zdominowane przez prąd upływowy - to jest mnóstwo bezczynnych tranzystorów, które siedzą wokół i przeciekają zamiast przełączać się.

alex.forencich
źródło
4
1V 1A nie jest dziwnym celem, procesory ARM są dość często określane jako mW / MHz. Dla porównania, cały Raspberry Pi A + wykorzystuje 1 Watt, w tym procesor 700 MHz - znacznie więcej niż sugeruje skromne 3 MHz
MSalters
2
Bardziej przydatne jest odniesienie się do „MIPS na wat”, ponieważ ilość pracy wykonanej na cykl zegara jest bardzo zróżnicowana.
pjc50,
1
Zależy to od tego, do czego służy układ. Układ o TDP 80 W, który ma działać przy 3 GHz przy napięciu 1,2 V, może być może działać na 1 V i 1 A ... ale przy 1 V będziesz musiał znacznie obniżyć prędkość i sprawić, aby pobrał 1A ty Będę musiał jeszcze bardziej zmniejszyć prędkość. W takim przypadku nie zbliżysz się do 3 GHz. Nie mam pojęcia, co tak naprawdę byłbyś w stanie osiągnąć, ponieważ sam tego nie próbowałem. Może 3 MHz jest nieco pesymistyczne dla i7 przy 1V i 1A. Jak już wspomniałeś, z pewnością można zaprojektować układ, który będzie działał na tym poziomie mocy.
alex.forencich,
6
Nie są proste. W rzeczywistości są to jedne z najbardziej złożonych rzeczy, jakie kiedykolwiek zbudowaliśmy.
joojaa,
2
Współczesne procesory Intel / AMD wykorzystują co najmniej pewną dynamiczną logikę , która faktycznie nie działałaby, gdyby taktowanie było zbyt niskie . Intel Skylake (na przykład) ma minimalną efektywną częstotliwość / punkt napięcia. Aby osiągnąć jeszcze niższy poziom mocy / przepustowości dla SoC, włącza i wyłącza rdzeń w trybie uśpienia przy zmiennym cyklu pracy (> = 800us przy może ~ 1GHz (najbardziej efektywny f), spać). Zobacz wykład Efraima Rotema na temat IDF2015 Skylake o mocy na około 53 minutach
Peter Cordes
17

Według Wikipedii , najlepsze procesory wydane w 2011 roku miały około 0,5 do 2,5 miliarda tranzystorów. Zakładając, że procesor z 1 miliardem tranzystorów zużywa 64A prądu, średni prąd wynosi tylko 64nA na tranzystor. Biorąc pod uwagę częstotliwości pracy kilku GHz, jest to zaskakująco mało.

Dmitrij Grigoriew
źródło
Czy dla wyższej częstotliwości pracy procesora wymagany jest wyższy prąd?
Lu Ka
2
II0+kfCV2
4
W tym momencie możemy umieścić więcej tranzystorów na procesorze, niż moglibyśmy używać w tym samym czasie bez jego stopienia. Tak więc w danym momencie dużą część układu stanowi Dark Silicon : nie zasilony, ale siedzący tam, czekający na użycie, podczas gdy inne części układu (z różnymi specjalistycznymi funkcjami) są wyłączone. np. sprzęt zmiennoprzecinkowy wektora, mnożniki liczb całkowitych wektora i jednostki losowania wektorów nie mogą być nasycone jednocześnie, ale każda z nich ma wysoką przepustowość, gdy jest używana samodzielnie. Ponadto duże pamięci podręczne nie zmieniają się zbytnio.
Peter Cordes
1
Jest to duży czynnik w zdobywaniu przez procesory coraz bardziej specjalistycznego sprzętu, takiego jak instrukcje kryptograficzne AES i SHA oraz BMI2 Intela (szczególnie ekstrakcja / depozyt bitów PEXT / PDEP ). Ma to coś wspólnego z budżetem tranzystora, który może przyspieszyć niektóre obciążenia, ale nie musi być włączony, gdy nie jest używany.
Peter Cordes,