Moc będzie niższa przy niższej częstotliwości roboczej.
Przy tym samym napięciu rdzenia całkowita energia byłaby wyższa przy niższej częstotliwości zegara.
Ale jeśli napięcie rdzenia zostanie obniżone częstotliwościowo, całkowita energia może być mniejsza.
W przypadku algorytmów, które spędzają większość czasu na operacjach we / wy, czas wykonania będzie w przybliżeniu stały, niezależnie od częstotliwości taktowania rdzenia. Dlatego całkowita energia wymagana do obliczeń wzrośnie proporcjonalnie do częstotliwości zegara.
Zużycie energii przez procesor składa się z dwóch części.
1) Pobór prądu statycznego (I_static). W przypadku określonego napięcia zasilania i temperatury ten pobór prądu jest stały, niezależnie od tego, co robi procesor.
Procesor wykonany w technologii CMOS składa się z tysięcy lub milionów tranzystorów MOSFET. Pobór prądu statycznego jest przede wszystkim spowodowany połączonym prądem upływu milionów tranzystorów MOSFET.
Pobór prądu statycznego zwykle wzrasta wraz ze wzrostem napięcia zasilania.
Pobór prądu statycznego zwykle wzrasta wraz ze wzrostem temperatury procesora.
Pobór prądu statycznego jest dla wielu urządzeń znacznie mniejszy niż pobór prądu dynamicznego.
2) Dynamiczny pobór prądu. W przypadku procesora zbudowanego z wykorzystaniem procesów CMOS prąd dynamiczny występuje, gdy tranzystory przełączają się między stanami włączenia / wyłączenia.
Powód tego jest następujący. Każdy tranzystor MOSFET w CPU ma pewną związaną z nim pojemność. Za każdym razem, gdy przełącza się MOSFET; ładunek Q = C * V jest potrzebny do naładowania / rozładowania tej pojemności.
Dynamiczny pobór prądu dla każdego tranzystora wynosi I_dynamic = C * V * f.
Niezależnie od częstotliwości wykonywania instrukcji, określony zestaw operacji na konkretnym procesorze (przy założeniu identycznego zachowania z pamięci podręcznej i pamięci) zużywa określoną ilość całkowitego ładunku (program Q) z powodu dynamicznego poboru prądu, niezależnie od częstotliwości instrukcje są wykonywane w.
Ale jeśli instrukcje są wykonywane wolniej, całkowity ładunek z powodu poboru prądu statycznego będzie wyższy, ponieważ upłynęło więcej czasu.
Matematycznie można by napisać ...
W = (I_dynamic + I_static) * V_supply
E = W * czas = Q_program * V_supply + I_static * V_supply * time
Widzimy, że gdy częstotliwość zegara zbliża się do 0, moc zbliża się do stałej wartości, ale energia wymagana do obliczenia programu zbliża się do nieskończoności.
Jeśli więc (w oparciu o pojemności tranzystorów procesora) program Q_ jest ustalony dla określonego napięcia zasilania i zestawu operacji, w jaki sposób nowoczesne procesory oszczędzają energię, obniżając częstotliwość taktowania? Odpowiedź jest taka, że większość współczesnych procesorów zawiera na pokładzie (lub w chipie towarzyszącym) regulowany regulator napięcia rdzenia. Gdy obniżą częstotliwość taktowania, mogą również obniżyć napięcie rdzenia. Q_program (i E_program) następnie obniża się proporcjonalnie do napięcia zasilania.
Należy zauważyć, że procesor nie może użyć niższego napięcia przy wyższych częstotliwościach, ponieważ przy niższych napięciach czas przełączania tranzystora rośnie.
Moc jest proporcjonalna do napięcia (do kwadratu) i poboru prądu. Jeśli więc napięcie spadnie jednocześnie z częstotliwością, wówczas moc spadnie wraz z sześcianem częstotliwości.