DE102022105892A1 - Einrichtung und verfahren zum wiederherstellen einer kennwortgeschützten endpunktvorrichtung in einen betriebszustand aus einem niedrigleistungszustand - Google Patents

Einrichtung und verfahren zum wiederherstellen einer kennwortgeschützten endpunktvorrichtung in einen betriebszustand aus einem niedrigleistungszustand Download PDF

Info

Publication number
DE102022105892A1
DE102022105892A1 DE102022105892.1A DE102022105892A DE102022105892A1 DE 102022105892 A1 DE102022105892 A1 DE 102022105892A1 DE 102022105892 A DE102022105892 A DE 102022105892A DE 102022105892 A1 DE102022105892 A1 DE 102022105892A1
Authority
DE
Germany
Prior art keywords
endpoint device
password
power
endpoint
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102022105892.1A
Other languages
English (en)
Inventor
Pannerkumar Rajagopal
Bhavana Shankarappa
Kiran Mehash Eriki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE102022105892A1 publication Critical patent/DE102022105892A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

Ein Schema zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung (z. B. einer Speichervorrichtung) eines Computersystems in einen Betriebszustand aus einem Niedrigleistungszustand, ohne eine Benutzereingabe eines Vorrichtungskennworts zu erfordern. Ein Kennwort, das zum Entsperren der Vorrichtung während eines Bootprozesses empfangen wird, wird in einem sicheren Speicher gespeichert. Die kennwortgeschützte Endpunktvorrichtung tritt anschließend in den Niedrigleistungszustand ein, was bewirkt, dass sie gesperrt wird. Während eines Übergangs vom Niedrigleistungszustand in einen Betriebszustand wird erkannt, dass das Kennwort für die Endpunktvorrichtung im sicheren Speicher gespeichert ist. Das Kennwort wird aus dem sicheren Speicher abgerufen und verwendet, um die Endpunktvorrichtung zu entsperren, wodurch die Endpunktvorrichtung in einen Betriebszustand wiederhergestellt wird.

Description

  • STAND DER TECHNIK
  • Der Modern-Standby-Standard (vormals Connected Standby) von Microsoft® ist eine Spezifikation für Window® 8 und spätere Betriebssysteme und Plattformen, die ein sofortiges Ein/Aus-Benutzererlebnis ermöglicht. Modern Standby ermöglicht Systemen und Vorrichtungen, in Niedrigleistungszustände einzutreten, während sie mit einem Netzwerk verbunden bleiben. Wenn ein Computersystem in einen Modern-Standby-Zustand tritt, werden Komponenten und Vorrichtungen des Systems in einen Zwischen- oder Niedrigleistungszustand versetzt. Eine Endpunktvorrichtung, wie etwa eine Speichervorrichtung, kann in einen von zwei Niedrigleistungszuständen versetzt werden: D3hot (Hilfsleistung wird bereitgestellt) oder D3cold (keine Leistung wird bereitgestellt), wie durch den Vorrichtungsleistungszustand der Spezifikation Advanced Configuration and Power Interface (ACPI) definiert.
  • Allgemein wird ein Kennwort an eine kennwortgeschützte Endpunktvorrichtung übermittelt, bevor das Computersystem vollständig hochfährt, um die Vorrichtung zu entsperren. Falls die Endpunktvorrichtung anschließend in D3hot eintritt, bleibt sie entsperrt. Falls die Endpunktvorrichtung jedoch anschließend in D3cold eintritt, kehrt sie in einen gesperrten Zustand zurück.
  • Figurenliste
  • Die Ausführungsformen der Offenbarung werden aus der unten folgenden detaillierten Beschreibung und den begleitenden Zeichnungen verschiedener Ausführungsformen der Offenbarung genauer verständlich, die jedoch nicht dazu gedacht sind, die Offenbarung auf die spezifischen Ausführungsformen zu beschränken, sondern nur zur Erläuterung und zum Verständnis dienen.
    • 1 veranschaulicht einige Komponenten eines Rechensystems mit einer Fähigkeit, eine kennwortgeschützte Endpunktvorrichtung aus einem Niedrigleistungszustand in einen Betriebszustand wiederherzustellen, gemäß manchen Ausführungsformen.
    • 2 veranschaulicht ein Ablaufdiagramm zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand gemäß verschiedenen Ausführungsformen.
    • 3 ist ein Ablaufdiagramm zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand gemäß verschiedenen Ausführungsformen.
    • 4 veranschaulicht eine intelligente Vorrichtung oder ein Computersystem oder ein SoC (Ein-Chip-System) mit einer Fähigkeit, eine kennwortgeschützte Endpunktvorrichtung aus einem Niedrigleistungszustand in einen Betriebszustand wiederherzustellen, gemäß manchen Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Einige Ausführungsformen beschreiben Techniken zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung (z. B. Speichervorrichtung), die mit einem Computersystem assoziiert ist, in einen Betriebszustand aus einem Niedrigleistungszustand. Bei manchen Ausführungsformen wird eine kennwortgeschützte Endpunktvorrichtung gesperrt, wenn sie sich in einem Niedrigleistungszustand befindet. Ein Kennwort für die kennwortgeschützte Endpunktvorrichtung wird von einem Benutzer empfangen, wenn das Computersystem hochfährt. Der Bootprozess verwendet das Kennwort, um die Endpunktvorrichtung zu entsperren, wodurch sie in einen Betriebszustand versetzt wird. Der Boot-Prozess speichert auch das Kennwort in einem sicheren Speicher (z. B. einer Serial-Peripheral-Interface(SPI)-Flash-Vorrichtung). Nach dem Entsperren (z. B. während des Bootprozesses) tritt die Endpunktvorrichtung in einen Niedrigleistungszustand, der bewirkt, dass die Endpunktvorrichtung in den gesperrten Zustand tritt. In einigen Ausführungsformen wird, wenn die Leistungsversorgung der Endpunktvorrichtung wiederhergestellt wird, das Kennwort aus dem sicheren Speicher abgerufen und verwendet, um die Endpunktvorrichtung zu entsperren, wodurch die Endpunktvorrichtung ohne Benutzereingabe des Endpunktvorrichtungskennworts in einen Betriebszustand wiederhergestellt wird.
  • Bei manchen Ausführungsformen ist eine „Endpunktvorrichtung“ eine Vorrichtung, die mit dem Computersystem gekoppelt ist und von diesem mit Leistung versorgt wird. Beispiele für Endpunktvorrichtungen beinhalten Speichervorrichtungen, wie etwa Festkörper- oder Festplattenlaufwerke, Flashspeichervorrichtungen, MultiMediaCard(MMC)-Vorrichtungen, eingebettete MMC(eMMC)-Vorrichtungen und Universal-Flashspeicher(UFS)-Vorrichtungen. Zusätzliche Beispiele für Endpunktvorrichtungen beinhalten Tastaturen, Touchpads, Berührungsbildschirme, Kameras, Mikrofone, Anzeigebildschirme, Monitore und Lautsprecher.
  • Bei manchen Ausführungsformen können, um die Batterielebensdauer zu verlängern, Energie zu sparen und Wärme zu reduzieren, verschiedene Leistungszustände für das Computersystem definiert werden. Zum Beispiel können ein oder mehrere Arbeitsleistungszustände und ein oder mehrere Ruheleistungszustände in einem Leistungsverwaltungsschema für das Computersystem definiert sein. Obwohl verschiedene Ausführungsformen hier unter Bezugnahme auf Vorrichtungsleistungszustände beschrieben sind, wie durch Advanced Configuration and Power Interface (ACPI) definiert, sind die Ausführungsformen nicht darauf beschränkt. Die Ausführungsformen sind zum Beispiel anwendbar, um eine kennwortgeschützte Endpunktvorrichtung aus einem beliebigen Niedrigleistungszustand, wie etwa einem tiefen Niedrigleistungszustand, in einen aktiven Zustand wiederherzustellen.
  • Es gibt viele technische Wirkungen verschiedener Ausführungsformen. Zum Beispiel ermöglichen die Einrichtung und das Verfahren zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung aus einem Niedrigleistungszustand, dass eine Endpunktvorrichtung in D3cold tritt, und ermöglichen der Endpunktvorrichtung, in einen Betriebszustand zurückzukehren, ohne dass ein Benutzer erneut ein Kennwort eingeben muss, wodurch Leistung eingespart wird, während die Funktionalität verbessert wird. Wenn es einer Endpunktvorrichtung erlaubt ist, in D3cold zu treten, ermöglicht dies außerdem, dass verschiedene Module auf einem SoC oder einem anderen integrierten Schaltkreis (IC) in einen tiefstmöglichen Leistungszustand versetzt werden, wodurch weitere Leistungseinsparungen geboten werden. Existierende Systeme unterstützen entweder eine Endpunktvorrichtung, die in D3cold tritt, oder einen Kennwortschutz für eine Endpunktvorrichtung, jedoch werden beide Merkmale nicht gleichzeitig in demselben System unterstützt. Andere technische Auswirkungen werden anhand der verschiedenen Figuren und Ausführungsformen ersichtlich.
  • In der folgenden Beschreibung werden zahlreiche Einzelheiten besprochen, um eine genauere Erläuterung von Ausführungsformen der vorliegenden Offenbarung bereitzustellen. Es wird jedoch für Fachleute offensichtlich sein, dass Ausführungsformen der vorliegenden Offenbarung ohne diese spezifischen Details ausgeführt werden können. In anderen Fällen sind wohlbekannte Strukturen und Vorrichtungen in Blockdiagrammform, statt im Detail, gezeigt, um zu vermeiden, dass Ausführungsformen der vorliegenden Offenbarung verschleiert werden.
  • Es ist zu beachten, dass Signale in den entsprechenden Zeichnungen der Ausführungsformen durch Linien repräsentiert sind. Manche Linien können dicker sein, um mehr Teilsignalpfade anzuzeigen, und/oder sie können Pfeile an einem Ende oder an mehreren Enden aufweisen, um eine Richtung von primärem Informationsfluss anzuzeigen. Derartige Angaben sollen nicht einschränkend sein. Vielmehr werden die Linien in Verbindung mit einem oder mehreren Ausführungsbeispielen verwendet, um ein einfacheres Verständnis einer Schaltung oder einer Logikeinheit zu ermöglichen. Jegliches repräsentierte Signal, wie durch Designvorgaben oder -präferenzen vorgegeben, kann tatsächlich ein oder mehrere Signale umfassen, die in jeder Richtung laufen können und mit einer beliebigen geeigneten Art von Signalschema implementiert werden können.
  • 1 veranschaulicht ein Rechensystem 100 mit einer Fähigkeit, eine kennwortgeschützte Endpunktvorrichtung aus einem Niedrigleistungszustand in einen Betriebszustand wiederherzustellen, gemäß manchen Ausführungsformen. Das Rechensystem 100 umfasst einen Prozessor 102, ein Basic Input/Output System (BIOS) 104, ein Betriebssystem (OS) 106, einen Speicher 108, eine Steuerung 110 und Endpunktvorrichtungen 112. Das BIOS 104 ist Firmware, die auf dem Prozessor 102 läuft. Das BIOS 104 ist typischerweise in einem SPI-Flashspeicher gespeichert. Das BIOS 104 ist für das Hochfahren des Rechensystems 100 verantwortlich. Während des Hochfahrens wird das BIOS 104 in den Speicher 108 kopiert und läuft von dort aus. Gemäß manchen Ausführungsformen entsperrt das BIOS 104 eine kennwortgeschützte Endpunktvorrichtung 112 während einer frühen Phase des Bootprozesses. Bei manchen Ausführungsformen empfängt das BIOS 104 ein Kennwort von einer Benutzeroberfläche 114 und stellt der Steuerung 110 das Kennwort während einer frühen Phase des Bootprozesses bereit.
  • In einigen Ausführungsformen umfasst das Rechensystem 100 eine Nonvolatile-Memory-Express(NVMe)-Steuerung 116, eine Serial-Peripheral-Interface(SPI)-Schnittstelle 118, eine Embedded-Multimedia-Card(eMMC)-Schnittstelle 120 und eine Universal-Flash-Storage(UFS)-Schnittstelle 122. Bei manchen Ausführungsformen beinhaltet das Rechensystem 100 einen internen Bus 126. Der interne Bus 126 kann die Steuerung 110 mit der NVMe-Steuerung 116, der SPI-Schnittstelle 118, der eMMC-Schnittstelle 120 und der UFS-Schnittstelle 122 koppeln.
  • Bei verschiedenen Ausführungsformen kann die Steuerung 110 ein eingebettetes Subsystem sein, das eine CPU 128, eine Host-Embedded-Controller-Interface(HECI)-Vorrichtung 130, einen Speicher 132 und einen ROM 134 umfasst. Firmware 136 für die Steuerung 110 kann im ROM 134 gespeichert sein. Die HECI-Vorrichtung 130 kann mit einer spezifischen Adresse in einem Memory-Mapped-Input/Output(MMIO)-Adressraum assoziiert sein. Bei einigen Ausführungsformen weist die Steuerung 110 einen Flashspeicher 138 mit einer sicheren Partition 140 auf. Bei manchen Ausführungsformen kann sich der Flashspeicher 138 innerhalb der Steuerung 110 befinden. Bei manchen Ausführungsformen kann sich der Flashspeicher 138 außerhalb der Steuerung 110 befinden und auf ihn kann über einen dedizierten Bus 142 zugegriffen werden, wie in 1 gezeigt ist. Bei manchen Ausführungsformen kann sich der Flashspeicher 138 außerhalb der Steuerung 110 mit Zugriff über einen Bus befinden, der mit anderen Vorrichtungen oder Komponenten gemeinsam genutzt wird. Zum Beispiel kann die Steuerung 110 bei manchen Ausführungsformen über den Bus 126 auf den Flashspeicher 138 zugreifen.
  • Bei einigen Ausführungsformen stellt die Steuerung 110 eine Rechenumgebung bereit, die von Software isoliert ist, die auf dem Prozessor 102 ausgeführt wird, wie etwa dem BIOS 104, dem OS 106 oder Anwendungssoftware. Bei verschiedenen Ausführungsformen ist die sichere Partition 140 für das BIOS 104, das OS 106 oder die Anwendungssoftware nicht zugänglich. Während verschiedene Ausführungsformen die Steuerung 110 einsetzen, um ihre sichere Speicherpartition 140 zum Speichern eines Kennworts für eine Endpunktvorrichtung 112 zu verwenden sowie das gespeicherte Kennwort zum Entsperren der Endpunktvorrichtung 112 zu verwenden, versteht es sich, dass eine beliebige geeignete hardwarebasierte Vorrichtung mit Logik oder einem Prozessor zum Ausführen von Anweisungen zum Durchführen der hierin beschriebenen Operationen zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand und einem sicheren Speicher, der ein Kennwort für eine Endpunktvorrichtung 112 speichert, in anderen Ausführungsformen eingesetzt werden kann.
  • Endpunktvorrichtungen 112 umfassen Speicherungsvorrichtungen in verschiedenen Ausführungsformen. Die Endpunktvorrichtungen 112 können zum Beispiel Festkörper- oder Festplattenlaufwerke (SSD/HDD) 144, SPI-Flashspeicher 146, eine eMMC-Vorrichtung 148 und eine UFS-Vorrichtung 150 umfassen. SSD/HDD 144 kann über einen Bus 152a mit der Steuerung 110 gekoppelt sein. Der SPI-Flashspeicher 146 kann über einen Bus 152b mit der Steuerung 110 gekoppelt sein. Die eMMC-Vorrichtung 148 kann über einen Bus 152c mit der Steuerung 110 gekoppelt sein. Die UFS-Vorrichtung 150 kann über einen Bus 152d mit der Steuerung 110 gekoppelt sein. Bei manchen Ausführungsformen können die Busse 152a-152d ein PCI-Express-Bus (Peripheral Component Interconnect Express) sein. Obwohl Speicherungsvorrichtungen als Beispiele für Endpunktvorrichtungen 112 präsentiert sind, versteht es sich, dass bei verschiedenen Ausführungsformen eine beliebige geeignete Vorrichtung, die mit einem Computersystem gekoppelt ist und von diesem mit Leistung versorgt wird, bei verschiedenen Ausführungsformen als Endpunktvorrichtung verwendet werden kann. Zum Beispiel können die Endpunktvorrichtungen 112 eine Tastatur, ein Touchpad, einen Berührungsbildschirm, einen Scanner, eine Kamera, ein Mikrofon, einen Anzeigebildschirm, einen Monitor oder einen Lautsprecher beinhalten. Gemäß verschiedenen Ausführungsformen sind die Endpunktvorrichtungen 144, 146, 148 und 150 kennwortgeschützt. Gemäß verschiedenen Ausführungsformen, wenn die Endpunktvorrichtungen 144, 146, 148 und 150 in einen Niedrigleistungszustand eintreten, treten sie in einen Sperrzustand ein. Wenn anschließend die Endpunktvorrichtungen 144, 146, 148 und 150 in einen Leistungszustand gebracht werden, der mit aktiven Operationen übereinstimmt, verbleiben sie im gesperrten Zustand und treten nicht in einen aktiven oder Betriebszustand ein, bis sie mit einem Kennwort entsperrt werden.
  • Bei manchen Ausführungsformen setzen das BIOS 104 und die Steuerung 100 einen Host-Embedded-Controller-Interface(HECI)-Bus 151 ein, um dem Rechensystem 100 die Fähigkeit bereitzustellen, eine kennwortgeschützte Endpunktvorrichtung 112 aus einem Niedrigleistungszustand in einen Betriebs- oder aktiven Zustand wiederherzustellen. Insbesondere kann das BIOS 104 den HECI-Bus 151 verwenden, um in einer frühen Phase des Bootprozesses ein Kennwort für eine Endpunktvorrichtung 112 an die Steuerung 110 zu übertragen. Durchschnittsfachleuten ist klar, dass der HECI-Bus 151 allgemein als ein sicherer Kanal betrachtet wird. Gemäß manchen Ausführungsformen kann ein beliebiger anderer sicherer Kanal anstelle des HECI-Busses 151 verwendet werden. Bei einigen Ausführungsformen kann dediziertes MMIO auf den HECI-Bus 151 zugreifen und auf ihn können möglicherweise nur das BIOS 104 und die Steuerung 110 zugreifen. Bei einigen Ausführungsformen können das BIOS 104, die Steuerung 110 und eine oder mehrere andere vertrauenswürdige Komponenten auf den HECI-Bus 151 zugreifen. Während verschiedene Ausführungsformen den HECI-Bus 151 als sicheren Kanal zum Übertragen eines Endpunktvorrichtungskennworts von dem BIOS 104 zur Steuerung 110 einsetzen, kann bei anderen Ausführungsformen ein beliebiger geeigneter sicherer Kanal verwendet werden. Bei einigen Ausführungsformen kann zum Beispiel ein Endpunktvorrichtungskennwort vor der Übertragung über einen Bus von dem BIOS 104 zur Steuerung 110 verschlüsselt werden.
  • Bei einigen Ausführungsformen kann die HECI-Vorrichtung 130 Daten empfangen, die auf dem HECI-Bus 151 vom BIOS 104 übertragen werden. Die HECI-Vorrichtung 130 kann zum Beispiel ein Endpunktvorrichtungskennwort empfangen, das während einer frühen Phase eines Bootprozesses durch das BIOS 104 auf dem HECI-Bus 151 übertragen wird. Bei einigen Ausführungsformen weist die Firmware 136 Anweisungen auf, um das empfangene Endpunktvorrichtungskennwort von der HECI-Vorrichtung 130 zu empfangen oder abzurufen. Zusätzlich weist die Firmware 130 in einigen Ausführungsformen Anweisungen auf, um das Endpunktvorrichtungskennwort in der sicheren Partition 140 des Flashspeichers 138 zu speichern. Ferner beinhaltet die Firmware 136 in einigen Ausführungsformen Anweisungen zum Abrufen des Endpunktvorrichtungskennworts, das in der sicheren Partition 140 des Flashspeichers 138 gespeichert ist, und zum Übertragen des abgerufenen Endpunktvorrichtungskennworts an eine Endpunktvorrichtung 112. Die Firmware 136 kann das Vorrichtungskennwort aus dem sicheren Speicher abrufen und das Kennwort während eines Übergangs von einem Weckereignis in einen Betriebs- oder aktiven Zustand des Rechensystems 100 an eine Endpunktvorrichtung übertragen. Zusätzlich dazu kann die Firmware 136 während dieser Übergangsperiode detektieren, dass ein Kennwort für die Endpunktvorrichtung 112 in dem sicheren Speicher 140 gespeichert ist, und das Kennwort abrufen und als Reaktion auf das Detektieren, dass das Kennwort in dem sicheren Speicher 140 vorhanden ist, an die Endpunktvorrichtung 112 übertragen. Bei manchen Ausführungsformen können Firmware-Anweisungen 130 zum Übertragen des Endpunktvorrichtungskennworts an die Endpunktvorrichtung 112 auch Anweisungen zum Ausgeben beliebiger Befehle beinhalten, die von der Endpunktvorrichtung 112 benötigt werden, um die Vorrichtung zu entsperren. Die Logik, die ein Endpunktvorrichtungskennwort empfängt, das auf einem Bus übertragen wird, das Endpunktvorrichtungskennwort in einer sicheren Speicherpartition speichert, das Vorrichtungskennwort aus einem sicheren Speicher abruft und das Kennwort an eine Endpunktvorrichtung überträgt oder detektiert, dass ein Kennwort für eine Endpunktvorrichtung in einem sicheren Speicher gespeichert ist, und das Kennwort abruft und es als Reaktion auf das Detektieren überträgt, dass das Kennwort in dem sicheren Speicher vorhanden ist, kann in Hardware, Software oder einer Kombination von diesen implementiert werden. Wenn die Logik in Hardware implementiert ist, beinhaltet sie bei einigen Ausführungsformen Schaltungsanordnungen mit aktiven und/oder passiven Vorrichtungen, die gekoppelt sind, um die Funktion der Logik zu implementieren.
  • Bei manchen Ausführungsformen setzt die Steuerung 110 den Bus 126 und einen der Busse 152a-152d ein, um dem Rechensystem 100 die Fähigkeit bereitzustellen, eine kennwortgeschützte Endpunktvorrichtung aus einem Niedrigleistungszustand in einen Betriebszustand wiederherzustellen. Insbesondere kann die Firmware 136 die Busse 126 und 152a-152d verwenden, um ein Endpunktvorrichtungskennwort zu einer Zeit, nachdem ein Übergang von einem Aufweckereignis in einen Betriebs- oder aktiven Zustand initiiert wurde, aber bevor die OS-Anwendungssoftware betriebsbereit ist, an die Endpunktvorrichtung 112 zu übertragen. Allgemein sind die Busse 126 und 152a-152d sichere Kanäle in einer frühen Phase eines Übergangs in einen Betriebszustand S0 aus dem Ruhezustand S0ix, bevor die OS-Anwendungssoftware läuft. Zusätzlich dazu befinden sich manche oder alle Systemkomponenten des Rechensystems 100 außerhalb der Steuerung 110 anfänglich nicht in einem Betriebszustand, wenn das Endpunktvorrichtungskennwort über die Busse 126 und 152a-152d übertragen wird. Während verschiedene Ausführungsformen Busse 126 und 152a-152d einsetzen, um ein Endpunktvorrichtungskennwort zu einem Zeitpunkt zu übertragen, bevor sich das Rechensystem 100 in einem vollständig betriebsfähigen Zustand, z. B. S0, befindet, nachdem es sich in einem Ruhezustand befindet, sodass die Busse 126 und 152 im Allgemeinen sichere Kanäle sind, kann in anderen Ausführungsformen ein beliebiger geeigneter sicherer Kanal verwendet werden. Bei einigen Ausführungsformen kann zum Beispiel ein Endpunktvorrichtungskennwort vor der Übertragung über die Busse 126 und 152a-152d von der Steuerung 110 zur Endpunktvorrichtung 112 verschlüsselt werden. Als ein anderes Beispiel kann ein Bus zum Übertragen eines Endpunktvorrichtungskennworts von der Steuerung 110 zur Endpunktvorrichtung 112 eingesetzt werden, auf den das BIOS 104, das OS 106 oder andere Komponenten nicht zugreifen können.
  • Bei manchen Ausführungsformen beinhaltet das Rechensystem 100 eine Leistungsverwaltungssteuerung (PMC) 154. Die PMC 154 kann die Leistung steuern, die der Steuerung 110, den Endpunktvorrichtungen 112 und anderen Komponenten des Rechensystems 100 geliefert wird. Mit anderen Worten kann die PMC 154 durch Ändern der Leistung, die einer Komponente oder Vorrichtung des Rechensystems 100 geliefert wird, aktive und Ruhezustände der Komponente oder Vorrichtung steuern. Bei manchen Ausführungsformen empfängt die PMC 154 ein Signal, das ein Aufweckereignis angibt, und als Reaktion auf das Signal, das ein Aufweckereignis angibt, erhöht die PMC 154 die Leistung zur Steuerung 110 und zur Endpunktvorrichtung 112. Zusätzlich dazu kann die PMC 154 ein Signal, z. B. von der Steuerung 110, empfangen, das angibt, dass die Endpunktvorrichtung 112 entsperrt und betriebsbereit ist. Als Reaktion auf das Signal, das angibt, dass die Endpunktvorrichtung 112 entsperrt und betriebsbereit ist, kann die PMC 154 ermöglichen, dass andere Komponenten des Systems 100 mit Leistung versorgt werden.
  • Advanced Configuration and Power Interface (ACPI) ist ein offener Standard, der von Betriebssystemen verwendet wird, um den Leistungsverbrauch in einem Computersystem zu verwalten. ACPI spezifiziert vier globale Zustände: G0 (Betrieb), G1 (ruhend), G2 (soft aus) und G3 (mechanisch aus). Die Spezifikation definiert auch sechs Ruhezustände. Der globale G0(Betriebs-) Zustand weist einen Ruhezustand auf: S0, in der die CPU des Computers Anweisungen ausführt. In einem globalen G1(Ruhe-) Zustand sind fünf Ruhezustände möglich: S0ix, S1, S2, S3 und S4. Der globale G2-Zustand (soft aus) weist einen Ruhezustand auf S5. Im Ruhezustand S5 wird die Einschalttaste des Computers mit Leistung versorgt, aber die Leistung zu allen oder fast allen anderen Komponenten ist unterbrochen. Im globalen Zustand G3 (mechanisch aus) ist die Leistung zu allen Komponenten des Computersystems außer dem Takt unterbrochen. Der globale Zustand G3 weist keine Ruhezustände auf.
  • S0ix ist als „Modem Standby“ oder „Niedrigleistungs-S0-Leerlauf“ bekannt. Modem Standby umfasst Bildschirm-Aus- und Ruhezustände. Der Bildschirm-Aus-Zustand beinhaltet Prozesse zum Stilllegen eines Computersystems im Ruhezustand. Bei S0ix ist der Bildschirm ausgeschaltet, die Ausführung von Anwendungssoftware ist angehalten und Teile eines SoC, die nicht verwendet werden, werden in einen Zustand mit geringer oder keiner Leistung versetzt. In Modem Standby läuft keine OS-Softwareaktivität. Modern Standby ermöglicht dem System, bei Bedarf sehr schnell aufzuwachen. Modern Standby startet zum Beispiel, wenn ein Benutzer die Einschalttaste drückt, den Deckel schließt, den Ruhezustand aus einem Menü auswählt oder das System im Leerlauf ist. Ein Hardware-Interrupt (z. B. Aufweckereignis 228) bewirkt, dass das System Modem Standby verlässt, z. B. ein Drücken der Einschalttaste durch einen Benutzer.
  • S1 wird als „Power on Suspend“ bezeichnet. In S1 stoppt der Prozessor das Ausführen von Anweisungen und Zwischenspeicher werden geleert. In S1 wird die Leistung zur CPU und zum RAM aufrechterhalten und die Leistung zu Vorrichtungen wird unterbrochen, die nicht angeben, dass sie eingeschaltet bleiben müssen. In S2 wird die CPU ausgeschaltet und ein Zwischenspeicher, falls er sich in einem benutzten Zustand befindet, in den RAM geleert. Der S3-Zustand kann als der „Standby-Zustand“ oder „Ruhezustand“ bezeichnet werden. In S3 wird Leistung zum RAM aufrechterhalten. In S4 wird der gesamte Inhalt des RAM in einem nichtflüchtigen Speicher gespeichert und das Computersystem wird heruntergefahren. S4 kann als „Ruhezustand“ oder „Suspend to disk“ bezeichnet werden.
  • Zusätzlich spezifiziert ACPI verschiedene Leistungszustände für Vorrichtungskomponenten eines Rechensystems: D0 (vollständig ein), D1 und D2 (Zwischenleistungszustände, Definition variiert je nach Vorrichtung), D3hot (Hilfsleistung wird der Vorrichtung bereitgestellt) und D3cold (keine Leistung wird bereitgestellt). D3hot ist ein Unterzustand von D3, in den eine Vorrichtung direkt von D0 eintreten kann. Eine Vorrichtung geht softwaregesteuert durch den Vorrichtungstreiber von D0 zu D3hot über. In D3hot kann die Vorrichtung auf dem Bus detektiert werden, mit dem sie verbunden ist. Der Bus muss im D0-Zustand bleiben, während sich die Vorrichtung im D3hot-Unterzustand befindet. Von D3hot kann die Vorrichtung entweder zu D0 zurückkehren oder in D3cold treten. In D3cold kann nur von D3hot getreten werden. D3cold ist ein Unterzustand von D3, in dem die Vorrichtung physisch mit dem Bus verbunden ist, aber das Vorhandensein der Vorrichtung auf dem Bus nicht detektiert werden kann (z. B., bis die Vorrichtung wieder eingeschaltet wird). In D3cold gelten eines oder beide der Folgenden: (1) Der Bus, mit dem die Vorrichtung verbunden ist, befindet sich in einem Niedrigleistungszustand; (2) die Vorrichtung befindet sich in einem Niedrigleistungszustand, in dem die Vorrichtung nicht reagiert, wenn der Bustreiber versucht, ihre Anwesenheit auf dem Bus zu detektieren. Wenn ein Computersystem in einen globalen G1-Zustand (Ruhezustand) und einen S0ix-Ruhezustand (Modem Standby) tritt, können verschiedene Vorrichtungen und Komponenten eines Computersystems, die nicht verwendet werden, in einen Niedrigleistungszustand, z. B. D3hot oder D3cold, versetzt werden.
  • Bei einigen Ausführungsformen unterstützen das Rechensystem 100 und das OS 106 ACPI. Obwohl sich diese Beschreibung auf die globalen und Ruhezustände eines Computersystems und die Leistungszustände von Vorrichtungen bezieht, wie durch ACPI spezifiziert, versteht es sich, dass Ausführungsformen nicht auf die ACPI-System- und Vorrichtungsleistungszustände beschränkt sind. Bei manchen Ausführungsformen können die hierin beschriebenen Prinzipien in einem beliebigen Rechensystem angewendet werden, das drei oder mehr Leistungszustände für Endpunktvorrichtungen 112 unterstützt. Insbesondere können die hierin beschriebenen Prinzipien angewendet werden, wenn drei oder mehr Leistungszustände für die kennwortgeschützte Endpunktvorrichtung 112 Folgendes umfassen: (1) einen ersten Leistungszustand, in dem die Vorrichtung mit weniger als voller Leistung versorgt wird und die bereitgestellte Leistung bewirkt, dass die Vorrichtung in einen gesperrten Zustand tritt; (2) einen zweiten Leistungszustand, in dem die Vorrichtung betriebsbereit ist und mit voller Leistung versorgt wird; und (3) einen dritten Leistungszustand, in dem die Vorrichtung mit weniger als voller Leistung versorgt wird, und, falls sie zu dem Zeitpunkt entsperrt wird, zu dem sie mit weniger als voller Leistung versorgt wird, die Vorrichtung in dem entsperrten Zustand verbleibt. Bei manchen Ausführungsformen kann der erste Leistungszustand ein Leistungszustand sein, in dem null Leistung an die Vorrichtung geliefert wird, obwohl dies nicht zwingend ist. Bei manchen Ausführungsformen kann der dritte Leistungszustand ein Niedrigleistungszustand sein, obwohl dies nicht zwingend ist.
  • Bei verschiedenen Ausführungsformen unterstützen das Rechensystem 100 und das OS 106 ACPI-System- und Vorrichtungszustände, den ersten, zweiten und dritten oben beschriebenen Leistungszustand oder ein anderes Schema von Leistungszuständen. Dementsprechend, wenn das Rechensystem 100 in den globalen G1-Zustand (Ruhezustand) und den S0ix-Ruhezustand (Modem Standby) tritt, kann eine Endpunktvorrichtung, die nicht verwendet wird, in einen D3-Zustand (oder den ersten oder dritten Leistungszustand) versetzt werden. Gemäß einigen Ausführungsformen, wenn die Endpunktvorrichtung 112 Leistung verliert, tritt sie in einen gesperrten Zustand. Falls die Endpunktvorrichtung 112 dementsprechend in einigen Ausführungsformen in D3cold (oder in den ersten Leistungszustand) versetzt wird, wenn das Rechensystem 100 in Modem Standby tritt, tritt die Endpunktvorrichtung 112 in einen gesperrten Zustand. Danach, wenn das Rechensystem 100 die Endpunktvorrichtung verwenden muss, geht das Rechensystem 100 z. B. zu S0 über und der Endpunktvorrichtung 112 wird Leistung zugeführt, die Einrichtung bleibt im gesperrten Zustand und tritt nicht in einen Betriebs- oder aktiven Zustand, bis sie mit einem Kennwort entsperrt wird. Um die Endpunktvorrichtung 112 zu verwenden, muss das Kennwort für die Einrichtung von einer Benutzeroberfläche erhalten werden.
  • Bei verschiedenen Ausführungsformen muss der Benutzer, wenn das Rechensystem 100 Modem Standby verlässt, ein Kennwort erneut eingeben, um die Endpunktvorrichtung zu entsperren. Falls das Rechensystem 100 über einen längeren Zeitraum, z. B. mehrere Stunden, verwendet wird, kann das Rechensystem 100 mehrmals in Modem Standby treten, wobei jede Rückkehr in den G0-Zustand (Betrieb) erfordert, dass der Benutzer das Vorrichtungskennwort eingibt. Das Erfordernis, dass ein Benutzer wiederholt ein Vorrichtungskennwort eingibt, kann dem Benutzer unangenehm sein.
  • Diese Unannehmlichkeit kann vermieden werden, indem spezifiziert wird, dass die Endpunktvorrichtung bei Eintritt in Modem Standby in einen Niedrigleistungszustand (oder einen dritten Leistungszustand) tritt, in dem der Endpunktvorrichtung Leistung zugeführt wird, z. B. D3hot, sodass die Einrichtung in einem entsperrten Zustand verbleibt. Das Spezifizieren, dass die Endpunktvorrichtung 112 in D3hot eintritt, weist jedoch mehrere Nachteile auf. Erstens bewirkt es, dass die Endpunktvorrichtung 112 Leistung verbraucht, wenn das Rechensystem 100 in Modem Standby tritt. Zusätzlich dazu kann es andere Komponenten im Rechensystem 100 geben, die nicht in D3cold treten können, wenn das Rechensystem 100 in Modem Standby tritt, solange die Endpunktvorrichtung 112 mit Leistung versorgt wird. Dementsprechend kann das Spezifizieren, dass die Endpunktvorrichtung 112 in einen Niedrigleistungszustand (z. B. D3hot) tritt, in dem sie entsperrt bleibt, anstatt in einen Niedrigleistungszustand (z. B. D3cold), in dem sie gesperrt ist, bewirken, dass andere Komponenten in dem System während Modem Standby Leistung verbrauchen.
  • Gemäß verschiedenen Ausführungsformen kann eine kennwortgeschützte Endpunktvorrichtung in D3cold (oder den ersten Leistungszustand) versetzt und anschließend in einen Betriebszustand, wie etwa D1 (oder den zweiten Leistungszustand), wiederhergestellt werden, ohne dass ein Benutzer ein Kennwort für die Endpunktvorrichtung erneut eingeben muss.
  • 2 veranschaulicht ein Ablaufdiagramm 200 zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand gemäß verschiedenen Ausführungsformen. Die Abfolge von Handlungen des Ablaufdiagramms 200 kann hier modifiziert werden. Zum Beispiel können manche Handlungen oder Prozesse parallel durchgeführt werden und manche Handlungen können außerhalb der Reihenfolge durchgeführt werden. Die in 2 dargestellten Handlungen involvieren eine Benutzerschnittstelle 114, ein BIOS 104, eine Steuerung 110, ein OS 106, eine Endpunktvorrichtung 112 und eine PMC 154. Bei 214 empfängt das BIOS 104 ein Kennwort für die Endpunktvorrichtung 112 von einem Benutzer über die Benutzerschnittstelle 114. Bei 216 sendet das BIOS 104 das Kennwort an die Endpunktvorrichtung 112, z. B. eine NVMe-Steuerung, um die Endpunktvorrichtung 112 zu entsperren. Bei 218 sendet das BIOS 104 das von der Benutzerschnittstelle 114 empfangene Kennwort über einen sicheren Kanal, z. B. den HECI-BUS 151 an die Steuerung 110. Bei 220 speichert die Steuerung 110 das Kennwort in einem sicheren Speicher, z. B. der sicheren Partition 140 des Flashspeichers 138. Bei 222 bootet das BIOS 104 das OS 106 und ein System, z. B. das Rechensystem 100, tritt in einen Betriebs- oder aktiven Zustand, z. B. S0. Anschließend tritt das System bei 224 bei manchen Ausführungsformen in Modem Standby, z. B. S0ix.
  • Bei 226 wird die Endpunktvorrichtung 112 gemäß manchen Ausführungsformen in einen Niedrigleistungszustand, z. B. D3cold, versetzt. Wenn sich die Endpunktvorrichtung 112 in D3cold befindet, wird möglicherweise keine Leistung an die Vorrichtung geliefert und sie tritt in einen gesperrten Zustand. Bei manchen Ausführungsformen wird die Endpunktvorrichtung 112 in einen anderen Niedrigleistungszustand versetzt, in dem die Endpunktvorrichtung in einen gesperrten Zustand tritt, obwohl die Vorrichtung mit einem gewissen, von null verschiedenen Leistungspegel versorgt wird. Bei 228 beginnt das Rechensystem einen Aufweckprozess als Reaktion auf ein externes Aufweckereignis, z. B. einen ein Hardware-Interrupt. Bei 228 erhöht die PMC 154 Leistung zur Steuerung 110 und zur Endpunktvorrichtung 112. Bei 230 verlässt die Endpunktvorrichtung 112 bei wiederhergestellter Leistung D3cold. Das Zurückführen der Steuerung 110 in einen Betriebszustand ist ein anfänglicher Teil des Wiederherstellen des Rechensystems als Ganzes in einen Betriebs- oder aktiven Zustand, z. B. S0, bei 228 und 230 ist das System als Ganzes jedoch noch nicht betriebsbereit. Insbesondere können noch keine OS-Anwendungen ausgeführt werden. Außerdem ist die Endpunktvorrichtung 112 gesperrt, obwohl sie mit Strom versorgt wird. Bei 232 ruft die Firmware 136 oder eine andere Logik der Steuerung 110 das Endpunktvorrichtungskennwort aus der sicheren Speicherpartition 140 ab, überträgt das abgerufene Kennwort an die Endpunktvorrichtung 112, z. B. über die Busse 126 und 152, und entsperrt die Endpunktvorrichtung. Zusätzlich dazu kann die Firmware 136 bei 232 eine Operation zum Detektieren durchführen, dass ein Kennwort für die Endpunktvorrichtung im sicheren Speicher 140 gespeichert ist. Diese Detektionsoperation kann während des Übergangs von dem Aufweckereignis 228 in einen Betriebszustand eines Rechensystems durchgeführt werden, bevor OS-Anwendungen ausgeführt werden können. Bei 234 wird die Endpunktvorrichtung 112 entsperrt und tritt in einen nutzbaren Zustand ein. Vorteilhafterweise tritt die Endpunktvorrichtung 112 in den nutzbaren Zustand ein, ohne dass der Benutzer ein Kennwort für die Endpunktvorrichtung neu eingeben muss. Bei 236 überträgt die Steuerung 110 eine Bestätigung an die PMC 154, die angibt, dass die Endpunktvorrichtung 112 erfolgreich zur Verwendung wiederhergestellt wurde. Bei 238 versorgt die PMC 154 bei verschiedenen Ausführungsformen als Reaktion auf die Bestätigung von der Steuerung 110 andere Komponenten des Rechensystems 100 mit Leistung. Bei 240 fährt der Bootprozess fort und OS-Anwendungen können beginnen zu laufen.
  • 3 ist ein Ablaufdiagramm 300 zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand gemäß verschiedenen Ausführungsformen. Die Abfolge von Handlungen des Ablaufdiagramms 300 kann hier modifiziert werden. Zum Beispiel können manche Handlungen oder Prozesse parallel durchgeführt werden und manche Handlungen können außerhalb der Reihenfolge durchgeführt werden. Bei 302 wird ein Computersystem, z. B. das Computersystem 100, eingeschaltet. Bei 304 empfängt oder erhält das BIOS 104 ein Kennwort für die Endpunkt(EP)-Vorrichtung 112, wie etwa die NVMe-Steuerung 116, von der Benutzeroberfläche (UI) 114 oder einer anderen Benutzereingabe. Bei 306 entsperrt das BIOS 104 die Endpunktvorrichtung 112 durch Übertragen des Kennworts an die Endpunktvorrichtung. Gemäß verschiedenen Ausführungsformen überträgt oder sendet das BIOS 104 bei 308 das Kennwort über den HECI-Bus 126 oder einen anderen sicheren Kanal an die Steuerung 110. Bei 310 speichert die Steuerung 110 gemäß verschiedenen Ausführungsformen das Kennwort in einem sicheren Speicherbereich, auf den die Steuerung 110 zugreifen kann, z. B. in der sicheren Partition 140. Bei einigen Ausführungsformen speichert die Steuerung 110 das Kennwort in einem sicheren Speicherbereich, auf den das BIOS 104, das OS 106 oder die Anwendungssoftware nicht zugreifen kann. Bei 312 bootet das Computersystem 100 in das OS. Bei 314 tritt das Computersystem 100 in Modem Standby ein. Bei 316 tritt die Endpunktvorrichtung 112 in D3cold oder einen anderen Niedrigleistungszustand, der bewirkt, dass die Endpunktvorrichtung gesperrt wird. Außerdem tritt die Steuerung 110 in D3 oder einen anderen Niedrigleistungszustand ein. Bei manchen Ausführungsformen tritt die Steuerung 110 in D3cold. Bei 318 bewirkt ein externes Aufweckereignis, dass das Computersystem 100 beginnt, Modem Standby zu verlassen. Bei 320 fährt eine Leistungsverwaltungssteuerung, z. B. PMC 154, alle Leistungsschienen in dem Computersystem hoch. Bei manchen Ausführungsformen fährt die Leistungsverwaltungssteuerung bei 320 weniger als alle Leistungsschienen in dem Computersystem hoch. Bei 322 verlässt die Endpunktvorrichtung 112 D3cold oder einen anderen Niedrigleistungszustand. Bei 324 fährt die Leistungsverwaltungssteuerung die Steuerung 110 hoch. Bei 326 ruft die Firmware 136 der Steuerung 110 oder eine andere Logik gemäß einigen Ausführungsformen das gespeicherte Kennwort aus dem sicheren Speicher, z. B. der sicheren Partition 140, ab, wo es gespeichert ist, stellt der Endpunktvorrichtung 112 das Kennwort über einen sicheren Kanal, z. B. die Busse 126 und 152a-152d, bereit, bevor OS-Anwendungen ausgeführt werden, und entsperrt die Endpunktvorrichtung 112. Zusätzlich dazu kann die Firmware 136 bei 326 eine Operation zum Detektieren durchführen, dass ein Kennwort für die Endpunktvorrichtung im sicheren Speicher 140 gespeichert ist. Diese Detektionsoperation kann während des Übergangs von dem Aufweckereignis 228 in einen Betriebszustand eines Rechensystems durchgeführt werden, bevor OS-Anwendungen ausgeführt werden können. Bei 328 tritt die Endpunktvorrichtung 112, die nun entsperrt ist, in einen Zustand, in dem sie verwendet werden kann, z. B. D1. Bei 330 bestätigt die Steuerung 110 der PMC 154, dass die Endpunktvorrichtung 112 erfolgreich in einen Betriebs- oder Aktivzustand wiederhergestellt wurde. Bei 332 versetzt die PMC 154 das Rechensystem 100 in einen Betriebszustand, z. B. S0. Bei 334 endet der Prozess 300.
  • Bei einer beispielhaften Ausführungsform ist die Endpunktvorrichtung 112 ein SSD und das Rechensystem 100 ist ein SoC, das Leistung in D3hot und D3cold verbraucht, wie in Tabelle 1 dargelegt 112. Tabelle 1
    Leistung (mW) D3hot D3cold
    SSD 2,5 mW/3,0 Mw 0 mW
    SoC 32 mW 18 mW
  • Wie aus Tabelle 1 ersichtlich, bietet das Setzen der beispielhaften Endpunktvorrichtung (SSD) in D3cold eine Leistungseinsparung in der Größenordnung von 2,5 mW. Verschiedene Komponenten des SoC treten möglicherweise nicht in D3cold, falls sich das SSD in D3hot befindet. Wenn das SSD jedoch in D3cold versetzt wird, können diese Komponenten des SoC auch in D3cold versetzt werden, was bei diesem Beispiel zusätzliche Leistungseinsparungen in der Größenordnung von 14 mW (32 mW-18 mW) bereitstellt. Es versteht sich, dass die Werte in Tabelle 1 für eine spezifische Endpunktvorrichtung 112 und ein spezifisches Rechensystem 100 sind. Der Leistungsverbrauch für die Zustände D3hot und D3cold wird für unterschiedliche Endpunktvorrichtungen und unterschiedliche Rechensysteme variieren.
  • Elemente von Ausführungsformen (z. B. ein Ablaufdiagramm in Bezug auf 3) werden auch als ein maschinenlesbares Medium (z. B. NVM 111) zum Speichern der computerausführbaren Anweisungen (z. B. Anweisungen, um beliebige andere hier besprochene Prozesse zu implementieren) bereitgestellt. Bei einigen Ausführungsformen umfasst die Rechenplattform einen Speicher, einen Prozessor, maschinenlesbare Speicherungsmedien (auch als greifbares maschinenlesbares Medium bezeichnet), eine Kommunikationsschnittstelle (zum Beispiel eine drahtlose oder drahtgebundene Schnittstelle) und einen Netzwerkbus, die miteinander gekoppelt sind.
  • Bei einigen Ausführungsformen sind die verschiedenen Logikblöcke über einen Netzwerkbus miteinander gekoppelt. Ein beliebiges geeignetes Protokoll kann verwendet werden, um den Netzwerkbus zu implementieren. Bei manchen Ausführungsformen beinhaltet das maschinenlesbare Speicherungsmedium Anweisungen (auch als der Programmsoftwarecode/die Programmsoftwareanweisungen bezeichnet) zum Berechnen oder Messen eines Abstands und einer relativen Orientierung einer Vorrichtung in Bezug auf eine andere Vorrichtung, wie unter Bezugnahme auf verschiedene Ausführungsformen und ein Ablaufdiagramm beschrieben.
  • Programmsoftwarecode/-anweisungen, die mit dem Sequenzdiagramm von 2 oder dem Ablaufdiagramm von 3 (und/oder verschiedenen Ausführungsformen) assoziiert sind und ausgeführt werden, um Ausführungsformen des offenbarten Gegenstands zu implementieren, können als Teil eines Betriebssystems oder einer spezifischen Anwendung, eine Komponente, ein Programm, ein Objekt, ein Modul, eine Routine oder eine andere Sequenz von Anweisungen oder eine Organisation von Sequenzen von Anweisungen implementiert sein, die als „Programmsoftwarecode/-anweisungen“, „Betriebssystemprogrammsoftwarecode/- anweisungen“, „Anwendungsprogrammsoftwarecode/-anweisungen“ oder einfach „Software“ oder Firmware bezeichnet werden, die in dem Prozessor eingebettet sind. Bei manchen Ausführungsformen werden der Programmsoftwarecode/die Programmsoftwareanweisungen, die mit den Sequenzablaufdiagrammen aus 2 und 3 (und/oder verschiedenen Ausführungsformen) assoziiert sind, durch das System oder eine oder mehrere Komponenten davon ausgeführt.
  • Bei manchen Ausführungsformen ist bzw. sind der Programmsoftwarecode/die Programmsoftwareanweisungen, die unter Bezugnahme auf 2 und 3 (und/oder verschiedene Ausführungsformen) assoziiert sind, in einem computerausführbaren Speichermedium gespeichert und werden durch den Prozessor ausgeführt. Hier ist das computerausfiihrbare Speicherungsmedium ein greifbares maschinenlesbares Medium, das verwendet werden kann, um Programmsoftwarecode/Anweisungen und Daten zu speichern, die, wenn sie durch eine Rechenvorrichtung ausgeführt werden, bewirken, dass ein oder mehrere Prozessoren ein oder mehrere Verfahren durchführen, wie sie in einem oder mehreren begleitenden Ansprüchen angegeben werden können, die sich auf den offenbarten Gegenstand beziehen.
  • Das greifbare maschinenlesbare Medium kann Speicherung des ausführbaren Softwareprogrammcodes/der ausführbaren Softwareprogrammanweisungen und von Daten an verschiedenen greifbaren Orten beinhalten, einschließlich zum Beispiel ROM, flüchtigem RAM, nichtflüchtigem Speicher und/oder Zwischenspeicher und/oder anderem greifbaren Speicher, wie in der vorliegenden Anmeldung referenziert. Teile dieses Programmsoftwarecodes/dieser Programmsoftwareanweisungen und/oder Daten können in einer beliebigen dieser Speicherungs- und Speichervorrichtungen gespeichert sein. Ferner kann der Programmsoftwarecode/können die Programmsoftwareanweisungen von einer anderen Speicherung, einschließlich z. B. durch zentralisierte Server oder Peer-zu-Peer-Netzwerke und dergleichen, einschließlich des Internets, erhalten werden. Unterschiedliche Abschnitte des Softwareprogrammcodes/der Anweisungen und Daten können zu unterschiedlichen Zeitpunkten und in unterschiedlichen Kommunikationssitzungen oder in derselben Kommunikationssitzung erhalten werden.
  • Der Softwareprogrammcode/die Softwareprogrammanweisungen (die unter Bezugnahme auf 2 und 3 und andere Ausführungsformen assoziiert sind) und Daten können in ihrer Gesamtheit vor der Ausführung eines jeweiligen Softwareprogramms oder einer jeweiligen Anwendung durch die Rechenvorrichtung erhalten werden. Alternativ dazu können Abschnitte des Softwareprogrammcodes/der Softwareprogrammanweisungen und Daten dynamisch erhalten werden, z. B. bedarfsorientiert, wenn sie zur Ausführung benötigt werden. Alternativ dazu kann eine Kombination dieser Arten zum Erhalten des Softwareprogrammcodes/der Softwareprogrammanweisungen und Daten auftreten, z. B. für unterschiedliche Anwendungen, Komponenten, Programme, Objekte, Module, Routinen oder andere Anweisungssequenzen oder eine andere Organisation von Anweisungssequenzen, zum Beispiel. Somit ist es nicht erforderlich, dass sich die Daten und Anweisungen zu einem bestimmten Zeitpunkt vollständig auf einem greifbaren maschinenlesbaren Medium befinden.
  • Beispiele für greifbare computerlesbare Medien beinhalten unter anderem beschreibbare und nicht beschreibbare Medien, wie etwa flüchtige und nichtflüchtige Speichervorrichtungen, Nurlesespeicher (ROM), Direktzugriffsspeicher (RAM), Flash Speichervorrichtungen, Disketten und andere entfernbare Platten, magnetische Speichermedien, optische Speichermedien (z. B. CD-ROMS (Compact Disk Read-Only Memory), DVDs (Digital Versatile Disks) usw.), ferroelektrischen Speicher, resistiven RAM, Phasenwechselspeicher (PCM), magnetischen RAM (MRAM) unter anderem. Der Softwareprogrammcode/die Softwareprogrammanweisungen können temporär in digitalen greifbaren Kommunikationsverbindungen gespeichert werden, während elektrische, optische, akustische oder andere Formen von sich ausbreitenden Signalen, wie etwa Trägerwellen, Infrarotsignale, digitale Signale usw. durch solche greifbaren Kommunikationsverbindungen implementiert werden.
  • Im Allgemeinen beinhaltet ein greifbares maschinenlesbares Medium einen beliebigen greifbaren Mechanismus, der Informationen in einer Form bereitstellt (das heißt, in digitaler Form, zum Beispiel Datenpakete, speichert und/oder überträgt), auf die eine Maschine (das heißt eine Rechenvorrichtung) zugreifen kann, die zum Beispiel in einer Kommunikationsvorrichtung, einer Rechenvorrichtung, einer Netzwerkvorrichtung, einem persönlichen digitalen Assistenten, einem Herstellungswerkzeug, einer Mobilkommunikationsvorrichtung enthalten sein kann, unabhängig davon, ob sie Anwendungen und gesponserte Anwendungen aus dem Kommunikationsnetzwerk, wie etwa dem Internet herunterladen und ausführen kann oder nicht, zum Beispiel einem iPhone®, Galaxy® oder dergleichen, oder einer beliebigen anderen Vorrichtung einschließlich einer Rechenvorrichtung. Bei einer Ausführungsform liegt das prozessorbasierte System in Form eines PDA (persönlichen digitalen Assistenten), eines Mobiltelefons, eines Notebook-Computers, eines Tablets, einer Spielekonsole, einer Set-Top-Box, eines eingebetteten Systems, eines TV (Fernsehers), eines persönlichen Desktop-Computers usw. vor. Alternativ dazu können bei manchen Ausführungsformen des offenbarten Gegenstands die traditionellen Kommunikationsanwendungen und eine oder mehrere gesponserte Anwendungen verwendet werden.
  • Bei manchen Ausführungsformen beinhaltet das maschinenlesbare Speicherungsmedium darauf gespeicherte maschinenlesbare Anweisungen, die bei Ausführung bewirken, dass eine oder mehrere Maschinen ein Verfahren durchführen, das Steuern eines Leistungsgatters, das mit einer ersten Leistungsversorgungsschiene und einer zweiten Leistungsversorgungsschiene gekoppelt ist, gemäß einem Steuersignal umfasst, wobei die zweite Leistungsversorgungsschiene mit einer Rechenplattform gekoppelt ist. Bei manchen Ausführungsformen umfasst das Verfahren ferner Generieren des Steuersignals gemäß einer Übereinstimmung zwischen ersten biometrischen Daten, die im Speicher gespeichert sind, und zweiten biometrischen Daten, die durch einen biometrischen Sensor erfasst werden. Bei manchen Ausführungsformen umfasst das Verfahren ferner Ausschalten des Leistungsgatters, um eine zweite Leistungsversorgung auf der zweiten Leistungsversorgungsschiene zu unterbrechen, wenn die ersten biometrischen Daten nicht mit den zweiten biometrischen Daten übereinstimmen. Bei manchen Ausführungsformen umfasst das Verfahren Einschalten des Leistungsgatters, um die erste Leistung als eine zweite Leistung auf der zweiten Leistungsversorgungsschiene bereitzustellen, wenn die ersten biometrischen Daten im Wesentlichen mit den zweiten biometrischen Daten übereinstimmen. Bei manchen Ausführungsformen umfasst das Verfahren Ausgeben eines Interrupts, wenn der biometrische Sensor die zweiten biometrischen Daten erzeugt.
  • 4 veranschaulicht eine intelligente Vorrichtung oder ein Computersystem oder ein SoC (Ein-Chip-System) zum Wiederherstellen einer mit der intelligenten Vorrichtung oder dem Computersystem assoziierten kennwortgeschützten Endpunktvorrichtung (z. B. einer Speichervorrichtung) aus einem Niedrigleistungszustand in einen Betriebszustand, gemäß manchen Ausführungsformen. Es wird darauf hingewiesen, dass die Elemente von 4, die die gleichen Bezugsziffern (oder Namen) wie die Elemente einer beliebigen anderen Figur aufweisen, auf eine Weise arbeiten oder funktionieren können, die der beschriebenen ähnlich ist, aber nicht darauf beschränkt ist.
  • Bei manchen Ausführungsformen repräsentiert die Vorrichtung 5500 eine geeignete Rechenvorrichtung, wie etwa ein Rechentablet, ein Mobiltelefon oder Smartphone, einen Laptop, einen Desktop, eine Internet-der-Dinge(IoT)-Vorrichtung, einen Server, eine tragbare Vorrichtung, eine Set-Top-Box, ein drahtloses E-Lesegerät oder dergleichen. Es versteht sich, dass bestimmte Komponenten allgemein gezeigt sind und nicht alle Komponenten einer solchen Einrichtung in der Vorrichtung 5500 gezeigt sind.
  • In einem Beispiel umfasst die Vorrichtung 5500 ein SoC (Ein-Chip-System) 5501. Eine beispielhafte Grenze des SoC 5501 ist unter Verwendung gepunkteter Linien in 4 veranschaulicht, wobei manche beispielhaften Komponenten als in dem SoC 5501 enthalten veranschaulicht sind - jedoch kann das SoC 5501 beliebige geeignete Komponenten der Vorrichtung 5500 beinhalten.
  • In einigen Ausführungsformen enthält die Vorrichtung 5500 einen Prozessor 5504. Der Prozessor 5504 kann eine oder mehrere physische Vorrichtungen beinhalten, wie etwa Mikroprozessoren, Anwendungsprozessoren, Mikrocontroller, programmierbare Logikvorrichtungen, Verarbeitungskerne oder andere Verarbeitungsimplementierungen, wie etwa aufgeteilte Kombinationen mehrerer Rechen-, Grafik-, Beschleuniger-, E/A- und/oder anderer Verarbeitungschips. Die Verarbeitungsvorgänge, die vom Prozessor 5504 durchgeführt werden, enthalten die Ausführung einer Betriebsplattform oder eines Betriebssystems, auf der bzw. dem Anwendungen und/oder Vorrichtungsfunktionen ausgeführt werden. Die Verarbeitungsvorgänge enthalten Vorgänge, die mit E/A (Eingabe/Ausgabe) mit einem menschlichen Benutzer oder mit anderen Vorrichtungen verbunden sind, Vorgänge, die mit Energieverwaltung verbunden sind, Vorgänge, die mit einem Verbinden der Rechenvorrichtung 5500 mit einer anderen Einrichtung verbunden sind, und/oder dergleichen. Die Verarbeitungsvorgänge können auch Vorgänge enthalten, die mit Audio-E/A und/oder Anzeige-E/A verbunden sind.
  • In einigen Ausführungsformen beinhaltet der Prozessor 5504 mehrere Verarbeitungskerne (auch als Kerne bezeichnet) 5508a, 5508b, 5508c. Obwohl in 4 lediglich drei Kerne 5508a, 5508b, 5508c veranschaulicht sind, kann der Prozessor 5504 eine beliebige andere geeignete Anzahl von Verarbeitungskernen, z. B. zehn oder sogar Hunderte von Verarbeitungskernen beinhalten. Die Prozessorkerne 5508a, 5508b, 5508c können auf einem einzigen integrierten Schaltkreischip (IC-Chip) implementiert sein. Darüber hinaus kann der Chip einen oder mehrere gemeinsam genutzte und/oder private Zwischenspeicher, Busse oder Zwischenverbindungen, Grafik- und/oder Speichersteuerungen oder andere Komponenten beinhalten.
  • In einigen Ausführungsformen enthält der Prozessor 5504 einen Zwischenspeicher 5506. In einem Beispiel können Abschnitte des Zwischenspeichers 5506 individuellen Kernen 5508 zugeordnet sein (z. B. ein erster Abschnitt des Zwischenspeichers 5506 ist dem Kern 5508a zugeordnet, ein zweiter Abschnitt des Zwischenspeichers 5506 ist dem Kern 5508b zugeordnet und so weiter). In einem Beispiel können ein oder mehrere Abschnitte des Zwischenspeichers 5506 von zwei oder mehr der Kerne 5508 gemeinsam genutzt werden. Der Zwischenspeicher 5506 kann in verschiedene Ebenen aufgeteilt sein, z. B. Level-1(L1)-Zwischenspeicher, Level-2(L2)-Zwischenspeicher, Level-3(L3)-Zwischenspeicher usw.
  • In einigen Ausführungsformen kann der Prozessorkern 5504 eine Abrufeinheit zum Abrufen von Anweisungen (einschließlich Anweisungen mit bedingten Verzweigungen) zur Ausführung durch den Kern 5504 beinhalten. Die Anweisungen können aus beliebigen Speichervorrichtungen, wie etwa dem Speicher 5530, abgerufen werden. Der Prozessorkern 5504 kann auch eine Decodiereinheit zum Decodieren der abgerufenen Anweisung beinhalten. Beispielsweise kann die Decodiereinheit die abgerufene Anweisung in eine Vielzahl von Mikrooperationen decodieren. Der Prozessorkern 5504 kann eine Planungseinheit zum Durchführen verschiedener Operationen beinhalten, die mit dem Speichern decodierter Anweisungen assoziiert sind. Zum Beispiel kann die Planungseinheit Daten von der Decodiereinheit halten, bis die Anweisungen zur Erteilung bereit sind, bis z. B. alle Quellwerte einer decodierten Anweisung verfügbar werden. Bei einer Ausführungsform kann die Planungseinheit decodierte Anweisungen planen und/oder an eine Ausführungseinheit zur Ausführung ausgeben (oder erteilen).
  • Die Ausführungseinheit kann die erteilten Anweisungen ausführen, nachdem sie decodiert (z. B. durch die Decodiereinheit) und erteilt (z. B. durch die Planungseinheit) wurden. Bei einer Ausführungsform kann die Ausführungseinheit mehr als eine Ausführungseinheit (wie etwa eine Bildgebungsberechnungseinheit, eine Grafikberechnungseinheit, eine Universalberechnungseinheit usw.) beinhalten. Die Ausführungseinheit kann auch verschiedene arithmetische Operationen durchführen, wie etwa Addition, Subtraktion, Multiplikation und/oder Division, und kann eine oder mehrere arithmetisch-logische Einheiten (ALUs) beinhalten. Bei einer Ausführungsform kann ein (nicht gezeigter) Coprozessor verschiedene arithmetische Operationen in Verbindung mit der Ausführungseinheit durchführen.
  • Ferner kann die Ausführungseinheit Anweisungen außerhalb der Reihenfolge ausführen. Daher kann der Prozessorkern 5504 in einer Ausführungsform ein Out-of-Order-Prozessorkern sein. Der Prozessorkern 5504 kann auch eine Stilllegungseinheit beinhalten. Die Stilllegungseinheit kann ausgeführte Anweisungen stilllegen, nachdem sie festgeschrieben wurden. In einer Ausführungsform kann das Stilllegen der ausgeführten Anweisungen dazu führen, dass der Prozessorzustand von der Ausführung der Anweisungen festgeschrieben wird, dass physische Register, die von den Anweisungen verwendet werden, freigegeben werden usw. Der Prozessorkern 5504 kann auch eine Buseinheit beinhalten, um eine Kommunikation zwischen Komponenten des Prozessorkerns 5504 und anderen Komponenten über einen oder mehrere Busse zu ermöglichen. Der Prozessorkern 5504 kann auch ein oder mehrere Register beinhalten, um Daten zu speichern, auf die von verschiedenen Komponenten des Kerns 5504 zugegriffen wird (wie etwa Werte, die mit zugewiesenen App-Prioritäten und/oder Subsystemzuständen (Modi) assoziiert sind).
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 Konnektivitätsschaltungsanordnungen 5531. Die Konnektivitätsschaltungsanordnungen 5531 enthalten zum Beispiel Hardwarevorrichtungen (z. B. drahtlose und/oder verdrahtete Anschlüsse und Kommunikationshardware) und/oder Softwarekomponenten (z. B. Treiber, Protokollstapel), um z. B. der Vorrichtung 5500 zu ermöglichen, mit externen Vorrichtungen zu kommunizieren. Die Vorrichtung 5500 kann von den externen Vorrichtungen, wie etwa anderen Rechenvorrichtungen, Drahtloszugangspunkten oder Basisstationen usw., getrennt sein.
  • In einem Beispiel können die Konnektivitätsschaltungsanordnungen 5531 mehrere unterschiedliche Arten von Konnektivität beinhalten. Als Verallgemeinerung können die Konnektivitätsschaltungsanordnungen 5531 Mobilfunkkonnektivitätsschaltungsanordnungen, Drahtloskonnektivitätsschaltungsanordnungen usw. beinhalten. Mobilfunkkonnektivitätsschaltungsanordnungen der Konnektivitätsschaltungsanordnungen 5531 beziehen sich allgemein auf Mobilfunknetzkonnektivität, die durch Drahtlosträger bereitgestellt wird, wie etwa über GSM (Global System for Mobile Communications) oder Variationen oder Ableitungen, CDMA (Code Division Multiple Access) oder Variationen oder Ableitungen, TDM (Zeitmultiplexing) oder Variationen oder Ableitungen, dem Universal-Mobile-Telecommunications-Systems(UMTS)-System des 3rd Generation Partnership Project (3GPP) oder Variationen oder Ableitungen, dem 3GPP-Long-Term-Evolution(LTE)-System oder Variationen oder Ableitungen, dem 3GPP-LTE-Advanced(LTE-A)-System oder Variationen oder Ableitungen, einem Drahtlossystem der fünften Generation (5G) oder Variationen oder Ableitungen, einem 5G-Mobilnetzsystem oder Variationen oder Ableitungen, einem 5G-New-Radio(NR)-System oder Variationen oder Ableitungen oder andere Mobilfunkdienststandards bereitgestellt wird. Drahtlosen Konnektivitätsschaltungsanordnungen (oder eine drahtlose Schnittstelle) der Konnektivitätsschaltungsanordnungen 5531 bezeichnen eine drahtlose Verbindungseinrichtung, die keine Mobilfunkeinrichtung ist und persönliche Netzwerke (wie Bluetooth, Nahfeld usw.), lokale Netzwerke (wie Wi-Fi) und/oder Weitverkehrsnetze (wie WiMax) und/oder andere drahtlose Kommunikation enthalten kann. In einem Beispiel können die Konnektivitätsschaltungsanordnungen 5531 eine Netzwerkschnittstelle, wie etwa eine verdrahtete oder drahtlose Schnittstelle, beinhalten, sodass z. B. eine Systemausführungsform in eine drahtlose Vorrichtung, zum Beispiel ein Mobiltelefon oder einen persönlichen digitalen Assistenten, integriert werden kann.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 einen Steuerungshub 5532, der Hardwarevorrichtungen und/oder Softwarekomponenten in Bezug auf eine Interaktion mit einer oder mehreren E/A-Vorrichtungen repräsentiert. Der Prozessor 5504 kann zum Beispiel mit einer Anzeige 5522 und/oder einer oder mehreren Peripherievorrichtungen 5524 und/oder Speichervorrichtungen 5528 und/oder einer oder mehreren anderen externen Vorrichtungen 5529 usw. über den Steuerungshub 5532 kommunizieren. Der Steuerungshub 5532 kann ein Chipsatz, ein Plattform-Steuerungshub (PCH) und/oder dergleichen sein. Bei manchen Ausführungsformen sind eine oder mehrere Peripherievorrichtungen 5524 oder Speichervorrichtungen 5528 kennwortgeschützte Endpunktvorrichtungen, die gemäß den hierin beschriebenen Prinzipien und Techniken aus einem Niedrigleistungszustand in einen Betriebszustand wiederhergestellt werden können.
  • Beispielsweise illustriert der Steuerungshub 5532 einen oder mehrere Verbindungspunkte für zusätzliche Vorrichtungen, die mit der Vorrichtung 5500 verbunden sind, über die ein Benutzer z. B. mit dem System interagieren kann. Vorrichtungen (z. B. Vorrichtungen 5529), die beispielsweise an der Vorrichtung 5500 angebracht werden können, können zum Beispiel Mikrofonvorrichtungen, Lautsprecher- oder Stereosysteme, Audiovorrichtungen, Videosysteme oder andere Anzeigevorrichtungen, Tastatur- oder Nummernfeldvorrichtungen oder andere E/A-Vorrichtungen zur Verwendung mit bestimmten Anwendungen wie Kartenlesern oder anderen Vorrichtungen enthalten. Bei manchen Ausführungsformen sind eine oder mehrere der Vorrichtungen 5529 kennwortgeschützte Endpunktvorrichtungen, die gemäß den hierin beschriebenen Prinzipien und Techniken aus einem Niedrigleistungszustand in einen Betriebszustand wiederhergestellt werden können.
  • Wie oben erwähnt kann der Steuerungshub 5532 mit Audiovorrichtungen, der Anzeige 5522 usw. interagieren. Eine Eingabe über ein Mikrofon oder eine andere Audiovorrichtung kann zum Beispiel eine Eingabe oder Befehle für eine oder mehrere Anwendungen oder Funktionen der Vorrichtung 5500 bereitstellen. Zusätzlich kann eine Audioausgabe anstatt einer oder zusätzlich zu einer Anzeigeausgabe bereitgestellt werden. In einem anderen Beispiel, falls die Anzeige 5522 einen Touchscreen enthält, fungiert die Anzeige 5522 auch als eine Eingabeeinrichtung, die zumindest teilweise vom Steuerungshub 5532 verwaltet werden kann. Es können auch zusätzliche Tasten oder Schalter auf der Rechenvorrichtung 5500 vorhanden sein, um E/A-Funktionen bereitzustellen, die durch den Steuerungshub 5532 verwaltet werden. In einer Ausführungsform verwaltet der Steuerungshub 5532 Vorrichtungen, wie etwa Beschleunigungsmesser, Kameras, Lichtsensoren oder andere Umgebungssensoren oder andere Hardware, die in der Vorrichtung 5500 enthalten sein kann. Die Eingabe kann Teil von direkten Benutzerinteraktionen sein sowie Umgebungseingaben in das System bereitstellen, um seine Vorgänge (wie Filtern von Rauschen, Anpassen von Anzeigen zur Helligkeitserkennung, Anwenden eines Blitzes für eine Kamera und andere Funktionen) zu beeinflussen.
  • Bei manchen Ausführungsformen kann der Steuerungshub 5532 mit verschiedenen Vorrichtungen unter Verwendung eines beliebigen geeigneten Kommunikationsprotokolls, z. B. PCIe (Peripheral Component Interconnect Express), USB (Universal Serial Bus), Thunderbolt, High Definition Multimedia Interface (HDMI), Firewire usw. koppeln.
  • Bei einigen Ausführungsformen umfasst der Steuerungsbub 5532 eine Steuerung, die einen Flashspeicher mit einer sicheren Partition beinhaltet. Bei manchen Ausführungsformen kann der Flashspeicher steuerungsintern sein, während der Flashspeicher bei anderen Ausführungsformen steuerungsextem sein kann und über einen Bus, der ein dedizierter oder gemeinsam genutzter Bus sein kann, zugänglich ist. Bei einigen Ausführungsformen stellt die Steuerung eine Rechenumgebung bereit, die von Software isoliert ist, die auf dem Prozessor 5504 ausgeführt wird, wie etwa dem BIOS 5520, dem OS 5552 oder Anwendungssoftware. Bei verschiedenen Ausführungsformen ist die sichere Partition für das BIOS 5520, das OS 5552 oder die Anwendungssoftware nicht zugänglich. Die Steuerung kann einen beliebigen geeigneten Bus einsetzen, um dem Computersystem 5500 die Fähigkeit bereitzustellen, eine kennwortgeschützte Endpunktvorrichtung aus einem Niedrigleistungszustand in einen Betriebszustand wiederherzustellen. Insbesondere kann die Steuerung Firmware beinhalten, die einen Bus veranlassen kann, ein Endpunktvorrichtungskennwort zu einer Zeit, nachdem ein Übergang von einem Aufweckereignis in einen Betriebs- oder aktiven Zustand initiiert wurde, aber bevor die OS-Anwendungssoftware betriebsbereit ist, an eine Endpunktvorrichtung zu übertragen. Die Firmware kann den Bus oder die Busse in einer frühen Phase eines Übergangs aus dem Ruhezustand S0ix in einen Betriebszustand S0 verwenden, bevor die OS-Anwendungssoftware ausgeführt wird, sodass der Bus oder die Busse im Allgemeinen sichere Kanäle sind. Während verschiedene Ausführungsformen eine Steuerung einsetzen, die in dem Steuerungshub 5532 enthalten ist, um dessen sichere Speicherpartition zum Speichern eines Kennworts für eine Endpunktvorrichtung zu verwenden und das gespeicherte Kennwort zum Entsperren der Endpunktvorrichtung zu verwenden, versteht es sich, dass die Steuerung in anderen Ausführungsformen in einem beliebigen anderen geeigneten Block (oder in ihrem eigenen diskreten Block) des Computersystems 5500 enthalten sein kann.
  • In einigen Ausführungsformen repräsentiert die Anzeige 5522 Hardwarekomponenten (z. B. Anzeigevorrichtungen) und Softwarekomponenten (z. B. Treiber), die einem Benutzer eine visuelle und/oder tastempfindliche Anzeige zur Interaktion mit der Vorrichtung 5500 bereitstellen. Die Anzeige 5522 kann eine Anzeigeschnittstelle, einen Anzeigebildschirm und/oder eine Hardwarevorrichtung beinhalten, der bzw. die verwendet wird, um einem Benutzer eine Anzeige bereitzustellen. In manchen Ausführungsformen beinhaltet die Anzeige 5522 eine Berührungsbildschirm-Vorrichtung (oder eine Touchpadvorrichtung), die einem Benutzer sowohl eine Ausgabe als auch eine Eingabe bereitstellt. In einem Beispiel kann die Anzeige 5522 direkt mit dem Prozessor 5504 kommunizieren. Die Anzeige 5522 kann eine oder mehrere von einer internen Anzeigevorrichtung, wie zum Beispiel in einer mobilen elektronischen Vorrichtung oder einer Laptopvorrichtung, oder eine externe Anzeigevorrichtung sein, die über eine Anzeigeschnittstelle (z. B. DisplayPort usw.) angebunden ist. In einer Ausführungsform kann die Anzeige 5522 eine am Kopf montierte Anzeige (HMD) wie eine stereoskopische Anzeigevorrichtung zur Verwendung in Anwendungen mit virtueller Realität (VR) oder Anwendungen mit erweiterter Realität (AR) sein.
  • Bei manchen Ausführungsformen und obwohl dies in der Figur nicht veranschaulicht ist, kann die Vorrichtung 5500 zusätzlich zu (oder anstelle von) Prozessor 5504 eine Grafikverarbeitungseinheit (GPU) beinhalten, die einen oder mehrere Grafikverarbeitungskerne umfasst, die einen oder mehrere Aspekte des Anzeigens von Inhalten auf der Anzeige 5522 steuern können.
  • Der Steuerungshub 5532 (oder der Plattformsteuerungshub) kann Hardwareschnittstellen und Verbinder sowie Softwarekomponenten (z. B. Treiber, Protokollstapel) zum Herstellen von Peripherieverbindungen, z. B. zu den Peripherievorrichtungen 5524, beinhalten.
  • Es versteht sich, dass die Vorrichtung 5500 sowohl eine periphere Vorrichtung oder andere Rechenvorrichtungen sein kann als auch mit ihr verbundene periphere Vorrichtungen aufweisen kann. Die Vorrichtung 5500 kann einen „Andock“-Anschluss zur Verbindung mit anderen Rechenvorrichtungen für Zwecke wie Verwalten (z. B. Herunterladen und/oder Hochladen, Ändern, Synchronisieren) von Inhalten auf der Vorrichtung 5500 aufweisen. Zusätzlich dazu kann ein Docking-Verbinder ermöglichen, dass die Vorrichtung 5500 mit gewissen Peripheriegeräten verbunden wird, die ermöglichen, dass die Rechenvorrichtung 5500 eine Inhaltsausgabe steuert, zum Beispiel an audiovisuelle oder andere Systeme.
  • Zusätzlich zu einem proprietären Andock-Anschluss oder andere proprietäre Verbindungshardware kann die Vorrichtung 5500 periphere Verbindungen über gemeinsame oder auf Standards basierende Anschlüsse aufnehmen. Gemeinsame Typen können einen Universal-Serial-Bus-Anschluss (USB-Anschluss) (der beliebige aus einer Anzahl von verschiedenen Hardwareschnittstellen enthalten kann), DisplayPort einschließlich MiniDisplayPort (MDP), High Definition Multimedia Interface (HDMI), FireWire oder andere Typen enthalten.
  • Bei manchen Ausführungsformen können die Konnektivitätsschaltungsanordnungen 5531 z. B. zusätzlich zur oder anstelle der direkten Kopplung mit dem Prozessor 5504 mit dem Steuerungshub 5532 gekoppelt sein. Bei manchen Ausführungsformen kann die Anzeige 5522 z. B. zusätzlich zur oder anstelle der direkten Kopplung mit dem Prozessor 5504 mit dem Steuerungshub 5532 gekoppelt sein.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 einen Speicher 5530, der über die Speicherschnittstelle 5534 mit dem Prozessor 5504 gekoppelt ist. Ein Speicher 5530 enthält Speichervorrichtungen zum Speichern von Informationen in der Vorrichtung 5500.
  • Bei manchen Ausführungsformen beinhaltet der Speicher 5530 eine Einrichtung zum Beibehalten einer stabilen Taktung, wie unter Bezugnahme auf verschiedene Ausführungsformen beschrieben. Der Speicher kann nichtflüchtige (ein Zustand ändert sich nicht, wenn eine Energieversorgung der Speichereinrichtung unterbrochen wird) und/oder flüchtige (ein Zustand ist unbestimmt, wenn die Energieversorgung der Speichereinrichtung unterbrochen wird) Speichereinrichtungen enthalten. Der Speicher 5530 kann eine dynamische Speichervorrichtung mit wahlfreiem Zugriff (DRAM-Vorrichtung), eine statische Speichervorrichtung mit wahlfreiem Zugriff (SRAM-Vorrichtung), eine Flashspeichervorrichtung, eine Phasenwechselspeichervorrichtung oder eine andere Speichervorrichtung mit geeigneter Leistung sein, um als Prozessspeicher zu dienen. In einer Ausführungsform kann der Speicher 5530 als Systemspeicher für die Vorrichtung 5500 arbeiten, um Daten und Anweisungen zur Verwendung speichern, wenn der eine oder die mehreren Prozessoren 5504 eine Anwendung oder einen Prozess ausführen. Der Speicher 5530 kann Anwendungsdaten, Benutzerdaten, Musik, Fotos, Dokumente und andere Daten sowie Systemdaten (egal, ob langfristig oder temporär) speichern, die mit der Ausführung der Anwendungen und Funktionen der Vorrichtung 5500 verbunden sind.
  • Elemente von verschiedenen Ausführungsformen und Beispielen werden auch als ein maschinenlesbares Medium (z. B. der Speicher 5530) zum Speichern der computerausführbaren Anweisungen (z. B. Anweisungen, um beliebige andere hier besprochene Prozesse zu implementieren) bereitgestellt. Das maschinenlesbare Medium (z. B. der Speicher 5530) kann Flashspeicher, optische Platten, CD-ROMs, DVD-ROMs, RAMs, EPROMs, EEPROMs, magnetische oder optische Karten, Phasenwechselspeicher (PCM) oder andere Typen von maschinenlesbaren Medien enthalten, die zum Speichern von elektronischen oder computerausführbaren Anweisungen geeignet sind. Ausführungsformen der Offenbarung können als ein Computerprogramm (z. B. BIOS) heruntergeladen werden, die von einem entfernten Computer (z. B. einem Server) an einen anfordernden Computer (z. B. einem Client) durch Datensignale über eine Kommunikationsverknüpfung (z. B. ein Modem oder eine Netzwerkverbindung) übertragen werden können. Bei manchen Ausführungsformen sind eine oder mehrere der Speichervorrichtungen 5530 kennwortgeschützte Endpunktvorrichtungen, die gemäß den hierin beschriebenen Prinzipien und Techniken aus einem Niedrigleistungszustand in einen Betriebszustand wiederhergestellt werden können.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 Temperaturmessschaltungsanordnungen 5540, z. B. zum Messen der Temperatur verschiedener Komponenten der Vorrichtung 5500. In einem Beispiel können die Temperaturmessschaltungsanordnungen 5540 in verschiedene Komponenten eingebettet sein, deren Temperatur gemessen und überwacht werden soll, oder an diese gekoppelt oder an diesen angebracht sein. Zum Beispiel können die Temperaturmessschaltungsanordnungen 5540 die Temperatur eines oder mehrerer der Kerne 5508a, 5508b, 5508c, des Spannungsreglers 5514, des Speichers 5530, einer Hauptplatine des SoC 5501 und/oder einer beliebigen geeigneten Komponente der Vorrichtung 5500 oder die Temperatur innerhalb dieser messen. Bei manchen Ausführungsformen beinhalten die Temperaturmessschaltungsanordnungen 5540 eine Niedrigleistungs-Hybrid-Gegen(LPHR)-Bandlückenreferenz (BGR) und einen digitalen Temperatursensor (DTS) beinhalten, der einen unterschwelligen Metalloxidhalbleiter(MOS)-Transistor und die parasitäre PNP-Bipolartransistor(BJT)-Vorrichtung nutzt, um eine Gegen-BGR zu bilden, die als die Basis für konfigurierbare BGR- oder DTS-Betriebsmodi dient. Die LPHR-Architektur verwendet kostengünstige MOS-Transistoren und die standardmäßige parasitäre PNP-Vorrichtung. Basierend auf einer Bandlückengegenspannung kann die LPHR als eine konfigurierbare BGR arbeiten. Durch Vergleichen der konfigurierbaren BGR mit der skalierten Basis-Emitter-Spannung kann der Schaltkreis auch als ein DTS mit einer linearen Transferfunktion mit Einzeltemperaturabgleich für eine hohe Genauigkeit arbeiten.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 Leistungsmessschaltungsanordnungen 5542, z. B. zum Messen von Leistung, die durch eine oder mehrere Komponenten der Vorrichtung 5500 verbraucht wird. In einem Beispiel können die Leistungsmessschaltungsanordnungen 5542 zusätzlich zu oder anstelle von Leistung Spannung und/oder Strom messen. In einem Beispiel können die Leistungsmessschaltungsanordnungen 5542 in verschiedene Komponenten eingebettet sein, deren Leistungs-, Spannungs- und/oder Stromverbrauch gemessen und überwacht werden soll, oder an diese gekoppelt oder an diesen angebracht sein. Zum Beispiel können die Leistungsmessschaltungsanordnungen 5542 Leistung, Strom und/oder Spannung, die von einem oder mehrere Spannungsreglern 5514 geliefert werden, Leistung, die an das SoC 5501 geliefert wird, Leistung, die an die Vorrichtung 5500 geliefert wird, Leistung, die durch den Prozessor 5504 (oder eine beliebige andere Komponente) der Vorrichtung 5500 verbraucht wird usw. messen.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 einen oder mehrere Spannungsreglerschaltungsanordnungen, die allgemein als Spannungsregler (VR) 5514 bezeichnet werden. Der VR 5514 erzeugt Signale mit geeigneten Spannungspegeln, die geliefert werden können, um beliebige geeignete Komponenten der Vorrichtung 5500 zu betreiben. Lediglich als ein Beispiel ist veranschaulicht, dass der VR 5514 Signale an den Prozessor 5504 der Vorrichtung 5500 liefert. Bei manchen Ausführungsformen empfängt der VR 5514 ein oder mehrere Spannungsidentifikationssignale (VID-Signale) und erzeugt das Spannungssignal auf einem angemessenen Pegel basierend auf den VID-Signalen. Verschiedene Arten von VRs können für den VR 5514 genutzt werden. Der VR 5514 kann zum Beispiel einen Abwärts-VR, einen Aufwärts-VR, eine Kombination von Auf-Abwärts-VRs, Low-Drop(LDO)-Reglern, DC-DC-Schaltreglern, steuerungsbasierten DC-DC-Reglern mit konstanter Ein-Zeit usw. beinhalten. Abwärts-VR wird allgemein in Leistungszufuhranwendungen verwendet, bei denen eine Eingangsspannung in einem Verhältnis, das kleiner als eins ist, in eine Ausgangsspannung transformiert werden muss. Aufwärts-VR wird allgemein in Leistungszufuhranwendungen verwendet, bei denen eine Eingangsspannung in einem Verhältnis, das größer als eins ist, in eine Ausgangsspannung transformiert werden muss. Bei manchen Ausführungsformen weist jeder Prozessorkern seinen eigenen VR auf, der durch eine PCU 5510a/b und/oder PMIC 5512 gesteuert wird. Bei manchen Ausführungsformen weist jeder Kern ein Netzwerk verteilter LDOs auf, um eine effiziente Steuerung zur Leistungsverwaltung bereitzustellen. Die LDOs können digital, analog oder eine Kombination von digitalen oder analogen LDOs sein. Bei manchen Ausführungsformen beinhaltet der VR 5514 eine Stromverfolgungseinrichtung zum Messen eines Stroms durch die eine oder mehreren Stromversorgungsschienen.
  • Bei manchen Ausführungsformen beinhaltet der VR 5514 ein digitales Steuerschema zum Verwalten von Zuständen eines Proportional-Integral-Differenzial(PID)-Filters (auch als digitaler Typ-III-Kompensator bekannt). Das digitale Steuerschema steuert den Integrator des PID-Filters, um eine nichtlineare Steuerung zum Sättigen der Einschaltdauer zu implementieren, während der der proportionale und der abgeleitete Term des PID auf 0 gesetzt werden, während der Integrator und seine internen Zustände (vorherige Werte oder Speicher) auf eine Einschaltdauer gesetzt werden, die die Summe der aktuellen nominalen Einschaltdauer plus einem deltaD ist. Das deltaD ist das maximale Einschaltdauerinkrement, das zum Regeln eines Spannungsreglers von ICCmin auf ICCmax verwendet wird, und ist ein Konfigurationsregister, das nach Silizium gesetzt werden kann. Eine Zustandsmaschine bewegt sich von einem nichtlinearen Alles-EIN-Zustand (der die Ausgangsspannung Vout zurück in ein Regelfenster bringt) zu einer Einschaltdauer mit offener Schleife, die die Ausgangsspannung etwas höher als die erforderliche Referenzspannung Vref hält. Nach einer gewissen Periode in diesem Zustand des offenen Regelkreises bei der befohlenen Einschaltdauer fährt die Zustandsmaschine dann den Einschaltdauerwert des offenen Regelkreises herunter, bis die Ausgangsspannung nahe dem befohlenen Vref liegt. Von daher wird ein Ausgangsflattern an der Ausgangsversorgung des VR 5514 vollständig eliminiert (oder im Wesentlichen eliminiert) und es gibt lediglich einen einzigen Unterschwingungs-Übergang, der zu einer garantierten Vmin basierend auf einer Komparatorverzögerung und dem di/dt der Last mit der verfügbaren Ausgangsentkopplungskapazität führen könnte.
  • Bei manchen Ausführungsformen beinhaltet der VR 5514 eine separate Selbststartsteuerung, die ohne Sicherung und/oder Abgleichsinformationen funktionsfähig ist. Die Selbststartsteuerung schützt den VR 5514 vor großen Einschaltströmen und Spannungsüberhöhungen, während sie in der Lage ist, einem variablen VID(Spannungsidentifikations)-Referenzanstieg zu folgen, der durch das System auferlegt wird. Bei manchen Ausführungsformen verwendet die Selbststartsteuerung einen Relaxationsoszillator, der in die Steuerung eingebaut ist, um die Schaltfrequenz des Abwärtswandlers einzustellen. Der Oszillator kann entweder unter Verwendung eines Takts oder einer Stromreferenz initialisiert werden, sodass er nahe einer gewünschten Betriebsfrequenz ist. Der Ausgang des VR 5514 ist schwach mit dem Oszillator gekoppelt, um die Einschaltdauer für den Betrieb mit geschlossenem Regelkreis einzustellen. Die Steuerung ist natürlich so vorgespannt, dass die Ausgangsspannung immer geringfügig höher als der Sollwert ist, wodurch die Notwendigkeit für beliebige Prozess-, Spannungs-und/oder Temperatur(PVT)-auferlegte Abgleichvorgänge eliminiert wird.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 einen oder mehrere Taktgeneratorschaltungsanordnungen, die allgemein als Taktgenerator 5516 bezeichnet werden. Der Taktgenerator 5516 erzeugt Taktsignale mit geeigneten Frequenzpegeln, die beliebigen geeigneten Komponenten der Vorrichtung 5500 zugeführt werden können. Lediglich als ein Beispiel ist veranschaulicht, dass der Taktgenerator 5516 Taktsignale an den Prozessor 5504 der Vorrichtung 5500 liefert. Bei manchen Ausführungsformen empfängt der Taktgenerator 5516 ein oder mehrere Frequenzidentifikationssignale (FID-Signale) und erzeugt die Taktsignale mit einer angemessenen Frequenz basierend auf den FID-Signalen.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 eine Batterie 5518, die verschiedene Komponenten der Vorrichtung 5500 mit Leistung versorgt. Lediglich als ein Beispiel ist veranschaulicht, dass die Batterie 5518 Leistung an den Prozessor 5504 liefert. Obwohl dies in den Figuren nicht veranschaulicht ist, kann die Vorrichtung 5500 eine Ladeschaltungsanordnung umfassen, um z. B. die Batterie basierend auf einer Wechselstrom(AC)-Leistungsversorgung aufzuladen, die von einem AC-Adapter empfangen wird.
  • Bei manchen Ausführungsformen überprüft die Batterie 5518 periodisch eine tatsächliche Batteriekapazität oder -energie mit Ladung auf eine voreingestellte Spannung (z. B. 4,1 V). Die Batterie entscheidet dann über die Batteriekapazität bzw. -energie. Falls die Kapazität oder Energie unzureichend ist, dann erhöht eine Einrichtung in oder assoziiert mit der Batterie die Ladespannung geringfügig bis zu einem Punkt, bei dem die Kapazität ausreichend ist (z. B. von 4,1 V auf 4,11 V). Der Prozess des periodischen Überprüfens und leichten Erhöhens der Ladespannung wird durchgeführt, bis die Ladespannung die Spezifikationsgrenze (z. B. 4,2 V) erreicht. Das hierin beschriebene Schema weist Vorteile auf, wie etwa Batterielanglebigkeit kann verlängert werden, das Risiko einer unzureichenden Energiereserve kann reduziert werden, Burstleistung kann so lange wie möglich verwendet werden und/oder sogar höhere Burstleistung kann verwendet werden.
  • Bei manchen Ausführungsformen umfasst die Ladeschaltungsanordnung (z. B. 5518) einen Abwärts-Aufwärts-Wandler. Dieser Abwärts-Aufwärts-Wandler umfasst DrMOS- oder DrGaN-Vorrichtungen, die anstelle von Halbbrücken für herkömmliche Abwärts-Aufwärts-Wandler verwendet werden. Verschiedene Ausführungsformen werden hier mit Bezug auf DrMOS beschrieben. Die Ausführungsformen sind jedoch auf DrGaN anwendbar. Die DrMOS-Vorrichtungen ermöglichen eine bessere Effizienz bei der Leistungsumsetzung aufgrund einer reduzierten parasitären und optimierten MOSFET-Kapselung. Da die Totzeitverwaltung intern zum DrMOS erfolgt, ist die Totzeitverwaltung genauer als für herkömmliche Abwärts-Aufwärts-Wandler, was zu einer höheren Effizienz bei der Umwandlung führt. Eine höhere Betriebsfrequenz ermöglicht eine kleinere Induktivitätsgröße, was wiederum die z-Höhe des Ladegeräts reduziert, das den DrMOS-basierten Abwärts-Aufwärts-Wandler umfasst. Der Abwärts-Aufwärts-Wandler verschiedener Ausführungsformen umfasst doppelt gefaltetes Bootstrap für DrMOS-Vorrichtungen. Bei manchen Ausführungsformen werden zusätzlich zu den traditionellen Bootstrap-Kondensatoren gefaltete Bootstrap-Kondensatoren hinzugefügt, die induktive Knoten mit den zwei Sätzen von DrMOS-Schaltern kreuzkoppeln.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 eine Leistungssteuereinheit (PCU) 5510 (auch als Leistungsverwaltungseinheit (PMU), Leistungsverwaltungssteuerung (PMC), Leistungseinheit (p-Einheit) usw. bezeichnet). In einem Beispiel können manche Abschnitte der PCU 5510 durch einen oder mehrere Verarbeitungskerne 5508 implementiert werden und diese Abschnitte der PCU 5510 sind symbolisch unter Verwendung eines gestrichelten Kastens und als PCU 5510a bezeichnet veranschaulicht. In einem Beispiel können manche anderen Abschnitte der PCU 5510 außerhalb der Verarbeitungskerne 5508 implementiert werden und diese Abschnitte der PCU 5510 sind symbolisch unter Verwendung eines gestrichelten Kastens und als PCU 5510b bezeichnet veranschaulicht. Die PCU 5510 kann verschiedene Leistungsverwaltungsoperationen für die Vorrichtung 5500 implementieren. Die PCU 5510 kann Hardwareschnittstellen, Hardwareschaltungsanordnungen, Verbinder, Register usw. sowie Softwarekomponenten (z. B. Treiber, Protokollstapel) beinhalten, um verschiedene Leistungsverwaltungsoperationen für die Vorrichtung 5500 zu implementieren.
  • Bei verschiedenen Ausführungsformen ist die PCU oder PMU 5510 auf eine hierarchische Weise organisiert, die ein hierarchisches Leistungsmanagement (HPM) bildet. HPM verschiedener Ausführungsformen baut eine Fähigkeit und Infrastruktur auf, die eine Verwaltung auf Gehäuseebene für die Plattform ermöglichen, während sie immer noch auf Inseln von Autonomie zugeschnitten sind, die über den Teilchip im Gehäuse existieren könnten. HPM nimmt keine vorbestimmte Abbildung physischer Partitionen auf Domänen an. Eine HPM-Domäne kann mit einer Funktion ausgerichtet sein, die innerhalb eines Dielets, einer Dielet-Grenze, einem oder mehreren Dielets, einem Begleitchip oder sogar einer diskreten CXL-Vorrichtung integriert ist. HPM behandelt die Integration mehrerer Instanzen desselben Chips, gemischt mit proprietären Funktionen oder Funktionen von Drittanbietern, die auf demselben Chip oder einem separaten Chip integriert sind, und sogar Beschleuniger, die über CXL (z. B. Flexbus) verbunden sind, die sich innerhalb des Gehäuses oder in einem diskreten Formfaktor befinden können.
  • HPM ermöglicht Designern, die Ziele von Skalierbarkeit, Modularität und später Bindung zu erfüllen. HPM ermöglicht auch, dass PMU-Funktionen, die bereits auf anderen Chips existieren können, genutzt werden, anstatt in dem flachen Schema deaktiviert zu werden. HPM ermöglicht die Verwaltung einer beliebigen Sammlung von Funktionen unabhängig von deren Integrationsgrad. HPM verschiedener Ausführungsformen ist skalierbar, modular, funktioniert mit symmetrischen Multi-Chip-Prozessoren (MCPs) und funktioniert mit asymmetrischen MCPs. HPM benötigt zum Beispiel keine Signal-PM-Steuerung und Gehäuseinfrastruktur, um über angemessene Skalierungsgrenzen hinaus zu wachsen. HPM ermöglicht ein spätes Hinzufügen eines Chips in ein Gehäuse ohne die Notwendigkeit einer Änderung in der Basis-Chip-Infrastruktur. HPM behandelt die Anforderungen bei disaggregierten Lösungen mit Chips unterschiedlicher Prozesstechnologieknoten, die in einem einzigen Gehäuse gekoppelt sind. HPM behandelt auch die Anforderungen begleitender Chip-Integrationslösungen - Gehäuseintern und -extern.
  • Bei verschiedenen Ausführungsformen beinhaltet jeder Chip (oder jedes Dielet) eine Leistungsverwaltungseinheit (PMU) oder p-Einheit. Prozessorchips können zum Beispiel eine Supervisor-p-Einheit, Supervisanden-p-Einheit oder eine Doppelrollen-Supervisor/Supervisanden-p-Einheit aufweisen. Bei manchen Ausführungsformen weist ein E/A-Chip seine eigene Doppelrollen-p-Einheit, wie etwa Supervisor- und/oder Supervisanden-p-Einheit, auf. Die p-Einheiten in jedem Chip können Instanzen einer generischen p-Einheit sein. In einem solchen Beispiel weisen alle p-Einheiten die gleichen Funktionen und Schaltungen auf, sind aber (dynamisch oder statisch) dazu konfiguriert, eine Rolle eines Supervisors, Supervisands und/oder beider zu übernehmen. Bei manchen Ausführungsformen sind die p-Einheiten für Rechenchips Instanzen einer Rechen-p-Einheit, während p-Einheiten für EA-Chips Instanzen einer EA-P-Einheit sind, die sich von der Rechen-p-Einheit unterscheidet. Je nach Rolle erlangt die p-Einheit spezifische Zuständigkeiten zur Leistungsverwaltung des Multichipmoduls und/oder der Rechenplattform. Obwohl verschiedene p-Einheiten für Chips in einem Multichipmodul oder Ein-Chip-System beschrieben sind, kann eine p-Einheit auch Teil einer externen Vorrichtung, wie etwa einer E/A-Vorrichtung, sein.
  • Dabei müssen die verschiedenen p-Einheiten nicht gleich sein. Die HPM-Architektur kann sehr unterschiedliche Typen von p-Einheiten betreiben. Ein den p-Einheiten gemeinsames Merkmal ist, dass von ihnen erwartet wird, dass sie HPM-Nachrichten empfangen und diese verstehen können. Bei manchen Ausführungsformen kann sich die p-Einheit von EA-Chips von der p-Einheit der Rechenchips unterscheiden. Zum Beispiel unterscheidet sich die Anzahl an Registerinstanzen jeder Registerklasse in der E/A-p-Einheit von jenen in den p-Einheiten der Rechenchips. Ein EA-Chip weist die Fähigkeit auf, ein HPM-Supervisor für CXLverbundene Vorrichtungen zu sein, aber der Rechenchip muss diese Fähigkeit möglicherweise nicht aufweisen. Die EA- und Rechenchips weisen auch unterschiedliche Firmwareflüsse und ggf. unterschiedliche Firmwareabbilder auf. Dies sind Wahlmöglichkeiten, die eine Implementierung treffen kann. Eine HPM-Architektur kann wählen, ein voreingestelltes Firmware-Abbild aufzuweisen, und selektiv Flüsse ausführen, die für den Chiptyp relevant sind, mit dem die Firmware assoziiert ist. Alternativ dazu kann es eine Kunden-Firmware für jeden p-Einheitstyp geben; sie kann eine rationalisiertere Dimensionierung der Firmware-Speicherungsanforderungen für jeden p-Einheitstyp ermöglichen.
  • Die p-Einheit in jedem Chip kann als eine Supervisor-p-Einheit, Supervisanden-p-Einheit oder mit einer dualen Rolle des Supervisors/Supervisanden konfiguriert sein. Von daher können p-Einheiten Rollen des Supervisors oder Supervisanden für verschiedene Domänen durchführen. Bei verschiedenen Ausführungsformen ist jede Instanz der p-Einheit in der Lage, lokale dedizierte Ressourcen autonom zu verwalten, und enthält Strukturen, um Daten zu aggregieren und zwischen Instanzen zu kommunizieren, um eine gemeinsam genutzte Ressourcenverwaltung durch die Instanz zu ermöglichen, die als der gemeinsam genutzte Ressourcensupervisor konfiguriert ist. Eine Nachrichten- und drahtbasierte Infrastruktur wird bereitgestellt, die dupliziert und konfiguriert werden kann, um Verwaltung und Flüsse zwischen mehreren p-Einheiten zu ermöglichen.
  • Bei manchen Ausführungsformen werden Leistungs- und thermische Schwellen durch eine Supervisor-p-Einheit an Supervisanden-p-Einheiten kommuniziert. Zum Beispiel lernt eine Supervisor-p-Einheit die Arbeitslast (gegenwärtig und zukünftig) jedes Chips, Leistungsmessungen jedes Chips und andere Parameter (z. B. Leistungsgrenzen auf Plattformebene) und bestimmt neue Leistungsgrenzen für jeden Chip. Diese Leistungsgrenzen werden dann von Supervisor-p-Einheiten über ein oder mehrere Zwischenverbindungen und Fabrics an die Supervisanden-p-Einheiten übermittelt. Bei manchen Ausführungsformen gibt eine Fabric eine Gruppe von Fabrics und Zwischenverbindungen an, die eine erste Fabric, eine zweite Fabric und eine Schnellantwort-Zwischenverbindung beinhalten. Bei manchen Ausführungsformen wird die erste Fabric für eine gemeinsame Kommunikation zwischen einer Supervisor-p-Einheit und einer Supervisanden-p-Einheit verwendet. Diese gemeinsamen Kommunikationen beinhalten eine Änderung des Spannungs-, Frequenz- und/oder Leistungszustands eines Chips, die basierend auf einer Anzahl von Faktoren (z. B. zukünftige Arbeitslast, Benutzerverhalten usw.) geplant wird. Bei manchen Ausführungsformen wird die zweite Fabric für eine Kommunikation höherer Priorität zwischen der Supervisor-p-Einheit und der Supervisanden-p-Einheit verwendet. Beispiele für Kommunikation mit höherer Priorität beinhalten eine Nachricht zum Drosseln aufgrund einer möglichen thermischen Durchgehbedingung, eines Zuverlässigkeitsproblems usw. Bei manchen Ausführungsformen wird eine Schnellantwort-Zwischenverbindung zum Kommunizieren einer schnellen oder harten Drosselung aller Chips verwendet. In diesem Fall kann eine Supervisor-p-Einheit zum Beispiel eine schnelle Drosselungsnachricht an alle anderen p-Einheiten senden. Bei manchen Ausführungsformen ist eine Schnellantwort-Zwischenverbindung eine veraltete Zwischenverbindung, deren Funktion durch die zweite Fabric durchgeführt werden kann.
  • Die HPM-Architektur verschiedener Ausführungsformen ermöglicht Skalierbarkeit, Modularität und späte Bindung symmetrischer und/oder asymmetrischer Chips. Hier sind symmetrische Chips Chips gleicher Größe, Art und/oder Funktion, während asymmetrische Chips Chips unterschiedlicher Größe, Art und/oder Funktion sind. Der hierarchische Ansatz ermöglicht auch, dass PMU-Funktionen, die bereits auf anderen Chips existieren können, genutzt werden, anstatt im herkömmlichen flachen Leistungsverwaltungsschema deaktiviert zu werden. HPM nimmt keine vorbestimmte Abbildung physischer Partitionen auf Domänen an. Eine HPM-Domäne kann mit einer Funktion ausgerichtet sein, die innerhalb eines Dielets, einer Dielet-Grenze, einem oder mehreren Dielets, einem Begleitchip oder sogar einer diskreten CXL-Vorrichtung integriert ist. HPM ermöglicht die Verwaltung einer beliebigen Sammlung von Funktionen unabhängig von deren Integrationsgrad. Bei manchen Ausführungsformen wird eine p-Einheit als Supervisor-p-Einheit basierend auf einem oder mehreren Faktoren deklariert. Diese Faktoren beinhalten Speichergröße, physische Beschränkungen (z. B. Anzahl von Ausgangspins) und Positionen von Sensoren (z. B. Temperatur, Leistungsverbrauch usw.), um physische Grenzen des Prozessors zu ermitteln.
  • Die HPM-Architektur verschiedener Ausführungsformen stellt ein Mittel zum Skalieren der Leistungsverwaltung bereit, sodass sich eine einzelne p-Einheitsinstanz nicht des gesamten Prozessors bewusst sein muss. Dies ermöglicht eine Leistungsverwaltung bei geringerer Granularität und verbessert Ansprechzeiten und Effektivität. Eine hierarchische Struktur behält eine monolithische Ansicht für den Benutzer bei. Beispielsweise gibt die HPM-Architektur dem OS auf Betriebssystem(OS)-Ebene eine einzige PMU-Ansicht, obwohl die PMU physisch in einer oder mehreren Supervisor-Supervisanden-Konfigurationen verteilt ist.
  • Bei einigen Ausführungsformen ist die HPM-Architektur zentralisiert, wobei ein Supervisor alle Supervisanden steuert. Bei manchen Ausführungsformen ist die HPM-Architektur dezentralisiert, wobei verschiedene p-Einheiten in verschiedenen Chips das Gesamtleistungsmanagement durch Peer-zu-Peer-Kommunikation steuern. Bei einigen Ausführungsformen ist die HPM-Architektur verteilt, wobei es unterschiedliche Supervisors für unterschiedliche Domänen gibt. Ein Beispiel für eine verteilte Architektur ist eine baumartige Architektur.
  • Bei manchen Ausführungsformen umfasst die Vorrichtung 5500 einen integrierten Leistungsverwaltungsschaltkreis (PMIC) 5512, um z. B. verschiedene Leistungsverwaltungsvorgänge für die Vorrichtung 5500 zu implementieren. Bei manchen Ausführungsformen ist der PMIC 5512 ein rekonfigurierbarer Leistungsverwaltungs-IC (RPMICs) und/oder eine IMVP (mobile Intel® Spannungspositionierung). Bei einem Beispiel befindet sich der PMIC innerhalb eines vom Prozessor 5504 getrennten IC-Chips. Die kann verschiedene Leistungsverwaltungsoperationen für die Vorrichtung 5500 implementieren. Der PMIC 5512 kann Hardwareschnittstellen, Hardwareschaltungsanordnungen, Verbinder, Register usw. sowie Softwarekomponenten (z. B. Treiber, Protokollstapel) beinhalten, um verschiedene Leistungsverwaltungsoperationen für die Vorrichtung 5500 zu implementieren.
  • Bei einem Beispiel umfasst die Vorrichtung 5500 entweder eine PCU 5510 und/oder einen PMIC 5512. Bei einem Beispiel kann eine beliebige der PCU 5510 oder des PMIC 5512 in der Vorrichtung 5500 fehlen, und daher sind diese Komponenten unter Verwendung gepunkteter Linien veranschaulicht.
  • Verschiedene Leistungsverwaltungsvorgänge der Vorrichtung 5500 können durch die PCU 5510, durch den PMIC 5512 oder durch eine Kombination aus der PCU 5510 und dem PMIC 5512 durchgeführt werden. Zum Beispiel können die PCU 5510 und/oder der PMIC 5512 einen Leistungszustand (z. B. P-Zustand) für verschiedene Komponenten der Vorrichtung 5500 auswählen. Zum Beispiel können die PCU 5510 und/oder der PMIC 5512 einen Leistungszustand (z. B. gemäß der ACPI-Spezifikation (Advanced Configuration and Power Interface)) für verschiedene Komponenten der Vorrichtung 5500 auswählen. Lediglich als ein Beispiel können die PCU 5510 und/oder der PMIC 5512 bewirken, dass verschiedene Komponenten der Vorrichtung 5500 in einen Ruhezustand, in einen aktiven Zustand, in einen geeigneten C-Zustand (z. B. C0-Zustand oder einen anderen geeigneten C-Zustand gemäß der ACPI-Spezifikation) usw. übergehen. In einem Beispiel können die PCU 5510 und/oder der PMIC 5512 eine Spannung, die durch den VR 5514 ausgegeben wird, und/oder eine Frequenz eines Taktsignals, das durch den Taktgenerator ausgegeben wird, steuern, indem z. B. das VID-Signal bzw. das FID-Signal ausgegeben wird. In einem Beispiel können die PCU 5510 und/oder der PMIC 5512 Batterieleistungsverbrauch, Laden der Batterie 5518 und Merkmale in Bezug auf den Stromsparbetrieb steuern.
  • Der Taktgenerator 5516 kann eine Phasenregelschleife (PLL), eine Frequenzregelschleife (FLL) oder eine beliebige geeignete Taktquelle umfassen. Bei manchen Ausführungsformen weist jeder Kern des Prozessors 5504 seine eigene Taktquelle auf. Von daher kann jeder Kern mit einer Frequenz arbeiten, die unabhängig von der Betriebsfrequenz des anderen Kerns ist. Bei manchen Ausführungsformen führt die PCU 5510 und/oder der PMIC 5512 eine adaptive oder dynamische Frequenzskalierung oder -anpassung durch. Zum Beispiel kann die Taktfrequenz eines Prozessorkerns erhöht werden, falls der Kern nicht an seiner maximalen Leistungsverbrauchsschwelle oder -grenze arbeitet. Bei manchen Ausführungsformen ermittelt die PCU 5510 und/oder der PMIC 5512 den Betriebszustand jedes Kerns eines Prozessors und passt Frequenz und/oder Leistungsversorgungsspannung dieses Kerns opportunistisch an, ohne dass die Kerntaktquelle (z. B. PLL dieses Kerns) die Kopplung verliert, wenn die PCU 5510 und/oder der PMIC 5512 ermittelt, dass der Kern unterhalb eines Zielleistungsfähigkeitspegels arbeitet. Falls zum Beispiel ein Kern Strom von einer Leistungsversorgungsschiene bezieht, der geringer als ein Gesamtstrom ist, der für diesen Kern oder Prozessor 5504 zugewiesen ist, dann kann die PCU 5510 und/oder der PMIC 5512 temporär die Leistungsaufnahme für diesen Kern oder Prozessor 5504 erhöhen (z. B. durch Erhöhen der Taktfrequenz und/oder des Leistungsversorgungsspannungspegels), sodass der Kern oder Prozessor 5504 mit einem höheren Leistungsfähigkeitspegel arbeiten kann. Von daher können Spannung und/oder Frequenz temporär für den Prozessor 5504 erhöht werden, ohne die Produktzuverlässigkeit zu stören.
  • Bei einem Beispiel können die PCU 5510 und/oder der PMIC 5512 Leistungsverwaltungsoperationen durchführen, z. B. wenigstens teilweise basierend auf dem Empfangen von Messungen von den Leistungsmessschaltungsanordnungen 5542, den Temperaturmessschaltungsanordnungen 5540, dem Ladungspegel der Batterie 5518 und/oder beliebigen anderen geeigneten Informationen, die für Leistungsverwaltung verwendet werden können. Zu diesem Zweck ist der PMIC 5512 kommunikativ mit einem oder mehreren Sensoren gekoppelt, um verschiedene Werte/Schwankungen in einem oder mehreren Faktoren zu erfassen/detektieren, die sich auf das Leistungs-/thermische Verhalten des Systems/der Plattform auswirken. Beispiele für den einen oder die mehreren Faktoren beinhalten elektrischen Strom, Spannungsabfall, Temperatur, Betriebsfrequenz, Betriebsspannung, Leistungsverbrauch, Zwischenkernkommunikationsaktivität usw. Einer oder mehrere dieser Sensoren können in physischer Nähe (und/oder thermischem Kontakt/Kopplung) mit einer oder mehreren Komponenten oder Logik/IP-Blöcken eines Computersystems bereitgestellt sein. Zusätzlich dazu können der eine oder die mehreren Sensoren bei mindestens einer Ausführungsform direkt mit der PCU 5510 und/oder dem PMIC 5512 gekoppelt sein, um zu ermöglichen, dass die PCU 5510 und/oder der PMIC 5512 Prozessorkernenergie zumindest teilweise basierend auf einem oder mehreren Werten verwalten, die durch einen oder mehrere der Sensoren detektiert werden.
  • Ebenfalls veranschaulicht ist ein beispielhafter Softwarestapel der Vorrichtung 5500 (obwohl nicht alle Elemente des Softwarestapels veranschaulicht sind). Lediglich als ein Beispiel können die Prozessoren 5504 Anwendungsprogramme 5550, das Betriebssystem 5552, ein oder mehrere Leistungsmanagement(PM)-spezifische Anwendungsprogramme (z. B. allgemein als PM-Anwendungen 5558 bezeichnet) und/oder dergleichen ausführen. Die PM-Anwendungen 5558 können auch durch die PCU 5510 und/oder den PMIC 5512 ausgeführt werden. Das OS 5552 kann auch eine oder mehrere PM-Anwendungen 5556a, 5556b, 5556c beinhalten. Das OS 5552 kann auch verschiedene Treiber 5554a, 5554b, 5554c usw. beinhalten, von denen manche für Leistungsverwaltungszwecke spezifisch sein können. Bei manchen Ausführungsformen kann die Vorrichtung 5500 ferner ein Basic Input/Output System (BIOS) 5520 umfassen. Das BIOS 5520 kann mit dem OS 5552 kommunizieren (z. B. über einen oder mehrere Treiber 5554), mit Prozessoren 5504 kommunizieren usw. Gemäß manchen Ausführungsformen entsperrt das BIOS 5520 eine kennwortgeschützte Endpunktvorrichtung während einer frühen Phase des Bootprozesses. Bei manchen Ausführungsformen empfängt das BIOS 5520 ein Kennwort von einer Benutzeroberfläche und stellt einer Steuerung das Kennwort während einer frühen Phase des Bootprozesses bereit. Zusätzlich kann das BIOS 5520 einen HECI-Bus verwenden, um ein Kennwort für eine Endpunktvorrichtung an die Steuerung zu übertragen. Bei anderen Ausführungsformen kann das BIOS 5520 einen beliebigen anderen sicheren Kanal anstelle eines HECI-Busses verwenden.
  • Zum Beispiel können eine oder mehrere der PM-Anwendungen 5558, 5556, Treiber 5554, BIOS 5520 usw. verwendet werden, um leistungsverwaltungsspezifische Aufgaben zu implementieren, um z. B. Spannung und/oder Frequenz verschiedener Komponenten der Vorrichtung 5500 zu steuern, um den Aufweckzustand, den Ruhezustand und/oder einen beliebigen anderen geeigneten Leistungszustand verschiedener Komponenten der Vorrichtung 5500 zu steuern, den Batterieleistungsverbrauch, das Laden der Batterie 5518, Merkmale in Bezug auf den Stromsparbetrieb usw. zu steuern.
  • Bei manchen Ausführungsformen ist die Batterie 5518 eine Li-Metall-Batterie mit einer Druckkammer, um einen gleichmäßigen Druck auf eine Batterie zu ermöglichen. Die Druckkammer wird von Metallplatten (z. B. einer Druckausgleichsplatte) getragen, die dazu dienen, der Batterie einen gleichmäßigen Druck zu verleihen. Die Druckkammer kann Druckgas, elastisches Material, einen Federteller usw. beinhalten. Die Außenhaut der Druckkammer kann sich frei biegen und wird an ihren Rändern durch eine (Metall-)Haut zurückgehalten, übt aber weiterhin einen gleichmäßigen Druck auf die Platte aus, die die Batteriezelle komprimiert. Die Druckkammer verleiht einer Batterie einen gleichmäßigen Druck, was dazu verwendet wird, eine Batterie mit hoher Energiedichte mit beispielsweise 20 % mehr Batterielebensdauer zu ermöglichen.
  • Bei einigen Ausführungsformen weist pCode, der auf der PCU 5510a/b ausgeführt wird, eine Funktion auf, um zusätzliche Rechen- und Telemetrieressourcen für die Laufzeitunterstützung des pCodes zu ermöglichen. Hier verweist pCode auf eine Firmware, die durch die PCU 5510a/b ausgeführt wird, um die Leistungsfähigkeit des 5501 zu verwalten. Zum Beispiel kann der pCode Frequenzen und geeignete Spannungen für den Prozessor festlegen. Ein Teil des pCodes ist über das OS 5552 zugänglich. Bei verschiedenen Ausführungsformen werden Mechanismen und Verfahren bereitgestellt, die einen Energieleistungspräferenz(EPP)-Wert basierend auf Arbeitslasten, Benutzerverhalten und/oder Systembedingungen dynamisch ändern. Es kann eine wohldefinierte Schnittstelle zwischen OS 5552 und dem pCode geben. Die Schnittstelle kann die Softwarekonfiguration mehrerer Parameter ermöglichen oder erleichtern und/oder Hinweise auf den pCode liefern. Als ein Beispiel kann ein EPP-Parameter einen pCode-Algorithmus darüber informieren, ob Leistungsfähigkeit oder Batterielebensdauer wichtiger ist.
  • Diese Unterstützung kann auch durch das OS 5552 erfolgen, indem Maschinenlernunterstützung als Teil des OS 5552 aufgenommen wird und entweder der EPP-Wert, den das OS der Hardware (z. B. verschiedenen Komponenten des SoC 5501) anzeigt, durch Maschinenlernvorhersage eingestellt wird, oder indem die Maschinenlernvorhersage an den pCode auf eine Art und Weise geliefert wird, die derjenigen ähnlich ist, die durch einen Dynamic-Tuning-Technology(DTT)-Treiber vorgenommen wird. In diesem Modell kann das OS 5552 Einsicht in denselben Satz von Telemetrien aufweisen, wie sie einem DTT zur Verfügung stehen. Als Ergebnis einer DTT-Maschinenlernhinweiseinstellung kann der pCode seine internen Algorithmen abstimmen, um optimale Leistungs- und Leistungsfähigkeitsergebnisse nach der Maschinenlernvorhersage des Aktivierungstyps zu erreichen. Der pCode als Beispiel kann die Verantwortung für die Prozessornutzungsänderung erhöhen, um eine schnelle Reaktion auf Benutzeraktivität zu ermöglichen, oder kann die Ausrichtung auf Energieeinsparung erhöhen, indem entweder die Verantwortung für die Prozessornutzung verringert wird oder indem mehr Leistung eingespart wird und die Leistungsfähigkeit erhöht wird, die durch Abstimmen der Energieeinsparoptimierung verloren geht. Dieser Ansatz kann das Einsparen von mehr Batterielebensdauer erleichtern, falls die aktivierten Aktivitätstypen etwas Leistungsfähigkeitspegel gegenüber dem verlieren, was das System aktivieren kann. Der pCode kann einen Algorithmus für dynamische EPP beinhalten, der die zwei Eingaben, eine vom OS 5552 und die andere von Software, wie etwa DTT, nehmen kann und selektiv auswählen kann, eine höhere Leistungsfähigkeit und/oder Reaktionsfreudigkeit bereitzustellen. Als Teil dieses Verfahrens kann der pCode in dem DTT eine Option aktivieren, seine Reaktion für den DTT für verschiedene Aktivitätstypen abzustimmen.
  • Bei manchen Ausführungsformen verbessert der pCode die Leistungsfähigkeit des SoC im Batteriemodus. Bei manchen Ausführungsformen ermöglicht der pCode drastisch höhere SoC-Spitzenleistungsgrenzpegel (und somit höhere Turboleistung) im Batteriemodus. Bei manchen Ausführungsformen implementiert pCode Leistungsdrosselung und ist Teil der Dynamic Tuning Technology (DTT) von Intel. Bei verschiedenen Ausführungsformen wird die Spitzenleistungsgrenze auf PL4 bezogen. Die Ausführungsformen sind jedoch auf andere Spitzenleistungsgrenzen anwendbar. Bei manchen Ausführungsformen legt der pCode die Schwellspannung Vth (den Spannungspegel, bei dem die Plattform das SoC drosselt) auf eine solche Weise fest, dass ein unerwartetes Ausschalten (oder schwarzes Screening) des Systems verhindert wird. Bei manchen Ausführungsformen berechnet der pCode die Psoc,pk-SoC-Spitzenleistungsgrenze (z. B. PL4) gemäß der Schwellenspannung (Vth). Dies sind zwei abhängige Parameter, falls einer festgelegt ist, kann der andere berechnet werden. pCode wird verwendet, um einen Parameter (Vth) basierend auf den Systemparametern und dem Betriebsverlauf optimal einzustellen. Bei manchen Ausführungsformen stellt der pCode ein Schema zum dynamischen Berechnen des Drosselungsniveaus (Psoc,Th) basierend auf der verfügbaren Batterieleistung (die sich langsam ändert) und zum Festlegen der SoC-Drosselspitzenleistung (Psoc,Th) bereit. Bei manchen Ausführungsformen entscheidet der pCode die Frequenzen und Spannungen basierend auf Psoc,Th. Drosselereignisse wirken sich dabei weniger negativ auf die SoC-Leistungsfähigkeit aus. Verschiedene Ausführungsformen stellen ein Schema bereit, das den Betrieb eines Maximalleistungsfähigkeits(Pmax)-Frameworks ermöglicht.
  • Bei manchen Ausführungsformen beinhaltet der VR 5514 einen Stromsensor zum Erfassen und/oder Messen eines Stroms durch einen High-Side-Schalter des VR 5514. Bei manchen Ausführungsformen verwendet der Stromsensor einen Verstärker mit kapazitiv gekoppelten Eingängen in Rückkopplung, um den Eingangsversatz des Verstärkers zu erfassen, der während der Messung kompensiert werden kann. Bei manchen Ausführungsformen wird der Verstärker mit kapazitiv gekoppelten Eingängen in Rückkopplung verwendet, um den Verstärker in einem Bereich zu betreiben, in dem die Eingangsgleichtaktspezifikationen gelockert sind, sodass die Rückkopplungsschleifenverstärkung und/oder -bandbreite höher ist. Bei manchen Ausführungsformen wird der Verstärker mit kapazitiv gekoppelten Eingängen in Rückkopplung verwendet, um den Sensor mit der Wandlereingangsspannung zu betreiben, indem Regler mit hohem PSRR (Betriebsspannungsdurchgriff) eingesetzt werden, um eine lokale, saubere Versorgungsspannung zu erzeugen, was eine geringere Störung des Stromnetzes im Schalterbereich verursacht. Bei manchen Ausführungsformen kann eine Variante des Designs verwendet werden, um die Differenz zwischen der Eingangsspannung und der Steuerungsversorgung abzutasten und jene zwischen den Drain-Spannungen der Leistungs- und Nachbildungsschalter wiederherzustellen. Dadurch wird ermöglicht, dass der Sensor nicht mit der Versorgungsspannung beaufschlagt wird. Bei einigen Ausführungsformen wird der Verstärker mit kapazitiv gekoppelten Eingängen in Rückkopplung verwendet, um leistungsliefernetzwerkbezogene (PDN-bezogene) Änderungen in der Eingangsspannung während der Stromerfassung zu kompensieren.
  • Manche Ausführungsformen verwenden drei Komponenten, um die Spitzenleistung des SoC 5501 basierend auf den Zuständen einer USB-Vorrichtung vom Typ-C 5529 anzupassen. Diese Komponenten beinhalten einen OS-Spitzenleistungsmanager (Teil des OS 5552), einen USB-TYP-C-Verbindungsmanager (Teil des OS 5552) und einen USB-TYP-C-Protokollvorrichtungstreiber (z. B. einen der Treiber 5554a, 5554b, 5554c). Bei manchen Ausführungsformen sendet der USB-TYP-C-Verbindungsmanager eine synchrone Anforderung an den OS-Spitzenleistungsmanager, wenn eine USB-TYP-C-Leistungssenkenvorrichtung an das SoC 5501 angebunden oder von diesem gelöst wird, und der USB-TYP-C-Protokollvorrichtungstreiber sendet eine synchrone Anforderung an den Spitzenleistungsmanager, wenn die Leistungssenke den Vorrichtungszustand wechselt. Bei manchen Ausführungsformen nimmt der Spitzenleistungsmanager ein Leistungsbudget von der CPU auf, wenn der USB-Verbinder vom Typ C an eine Leistungssenke angebunden ist und aktiv ist (z. B. im Hochleistungs-Vorrichtungszustand). Bei manchen Ausführungsformen gibt der Spitzenleistungsmanager das Leistungsbudget an die CPU zur Leistungsfähigkeit zurück, wenn der USB-Verbinder vom Typ C entweder gelöst wird oder angebunden ist sowie die Leistungssenkenvorrichtung im Leerlauf ist (niedrigster Vorrichtungszustand).
  • Beieinigen Ausführungsformen wird Logik bereitgestellt, um den am besten arbeitenden Verarbeitungskern dynamisch für BIOS-Einschaltabläufe und Ruheaustrittsabläufe (z. B. S3, S4 und/oder S5) auszuwählen. Die Auswahl des Bootstrap-Prozessors (BSP) wird zu einem beliebigen Zeitpunkt auf einen frühen Einschaltzeitpunkt anstelle einer festen Hardwareauswahl verlagert. Für eine maximale Boot-Leistungsfähigkeit wählt die Logik zu einer frühen Einschaltzeit den schnellsten fähigen Kern als den BSP aus. Außerdem wählt die Logik zur maximalen Energieeinsparung den leistungseffizientesten Kern als den BSP aus. Prozessor oder Umschalten zum Auswählen des BSP erfolgt sowohl während des Bootens als auch während des Einschaltablaufs (z. B. S3-, S4- und/oder S5-Abläufe).
  • Bei einigen Ausführungsformen sind die Speicher hierin in einer Speicherarchitektur mit mehreren Ebenen organisiert und ihre Leistungsfähigkeit wird durch ein dezentralisiertes Schema bestimmt. Das dezentrale Schema beinhaltet eine p-Einheit 5510 und Speichersteuerungen. Bei manchen Ausführungsformen gleicht das Schema dynamisch eine Anzahl von Parametern, wie etwa Leistung, Thermik, Kosten, Latenz und Leistungsfähigkeit für Speicherebenen aus, die in der Plattform 5500 progressiv weiter vom Prozessor entfernt sind, basierend darauf, wie Anwendungen Speicherebenen verwenden, die weiter von Prozessorkernen entfernt sind. Bei manchen Beispielen ist die Entscheidungsfindung für den Zustand des Fernspeichers (FM) dezentral. Zum Beispiel treffen eine Prozessorleistungsverwaltungseinheit (p-Einheit), eine Nahspeichersteuerung (NMC) und/oder eine Fernspeicher-Hoststeuerung (FMHC) Entscheidungen über die Leistung und/oder den Leistungsfähigkeitszustand des FM auf ihren jeweiligen Ebenen. Diese Entscheidungen werden koordiniert, um für eine bestimmte Zeit den optimalsten Leistungs- und/oder Leistungsfähigkeitszustand des FM bereitzustellen. Der Leistungs- und/oder Leistungsfähigkeitszustand der Speicher ändert sich adaptiv bei sich ändernden Arbeitslasten und anderen Parametern, selbst wenn sich der oder die Prozessoren in einem bestimmten Leistungszustand befinden.
  • Bei manchen Ausführungsformen kann ein Ablaufdiagramm 200 zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand im Computersystem 5500 implementiert sein. Gleichermaßen kann bei einigen Ausführungsformen ein Ablaufdiagramm 300 zum Wiederherstellen einer kennwortgeschützten Endpunktvorrichtung in einen Betriebszustand aus einem Niedrigleistungszustand im Computersystem 5500 implementiert sein. Einige oder alle der Operationen des Ablaufdiagramms 200 und des Ablaufdiagramms 300 können in Programmsoftwarecode/Programmsoftwareanweisungen repräsentiert sein, die in den verschiedenen Komponenten des Computersystems 5500 repräsentiert sein, um die hierin offenbarten Ausführungsformen zu implementieren. Darüber hinaus können einige oder alle der Operationen des Ablaufdiagramms 200 und des Ablaufdiagramms 300 in Schaltungsanordnungen des Computersystems 5500 repräsentiert sein, um die hierin offenbarten Ausführungsformen zu implementieren.
  • In der Beschreibung bedeutet ein Bezug auf „eine Ausführungsform“, „eine einzelne Ausführungsform“, „einige Ausführungsformen“ oder „andere Ausführungsformen“, dass ein spezielles Merkmal, eine spezielle Struktur oder eine spezielle Eigenschaft, das bzw. die in Verbindung mit den Ausführungsformen beschrieben wird, in zumindest einigen Ausführungsformen, aber nicht zwangsweise allen Ausführungsformen enthalten ist. Die verschiedenen Vorkommnisse von „einer Ausführungsform“, „einer einzelnen Ausführungsform“ oder „einigen Ausführungsformen“ beziehen sich nicht immer notwendigerweise auf dieselben Ausführungsformen. Falls die Beschreibung angibt, dass eine Komponente, ein Merkmal, eine Struktur oder eine Eigenschaft enthalten sein „kann“ oder „könnte“, muss die spezielle Komponente, das spezielle Merkmal, die spezielle Struktur oder die spezielle Eigenschaft nicht notwendigerweise enthalten sein. Falls sich die Beschreibung oder der Anspruch auf „ein“ Element bezieht, bedeutet dies nicht, dass nur eines der Elemente vorhanden ist. Falls sich die Beschreibung oder der Anspruch auf „ein zusätzliches“ Element bezieht, schließt dies nicht aus, dass es mehr als eines der zusätzlichen Elemente gibt.
  • In der gesamten Spezifikation und in den Ansprüchen bedeutet der Begriff „verbunden“ eine direkte Verbindung, wie eine elektrische, mechanische oder magnetische Verbindung zwischen den Dingen, die verbunden sind, ohne irgendwelche Zwischenvorrichtungen.
  • Der Begriff „gekoppelt“ bedeutet entweder eine direkte oder eine indirekte Verbindung, wie eine elektrische, mechanische oder magnetische Verbindung zwischen den Dingen, die verbunden sind, oder eine indirekte Verbindung durch eine oder mehrere passive oder aktive Zwischenvorrichtung.
  • Der Begriff „benachbart“ verweist hier allgemein auf eine Position eines Gegenstands, die sich neben (z. B. unmittelbar neben oder nahe bei einem oder mehreren Gegenständen dazwischen) befindet oder an einen anderen Gegenstand angrenzt (z. B. daran anstößt).
  • Der Begriff „Schaltkreis“ oder „Modul“ kann sich auf eine oder mehrere passive und/oder aktive Komponenten beziehen, die dazu eingerichtet sind, miteinander zusammenzuwirken, um eine gewünschte Funktion bereitzustellen.
  • Der Ausdruck „Signal“ kann sich auf wenigstens ein Stromsignal, Spannungssignal, Magnetsignal oder Daten-/Taktsignal beziehen. Die Bedeutung von „ein“, „eine“ und „der/die/das“ schließen Pluralreferenzen ein. Die Bedeutung von „in“ schließt „in“ und „auf“ ein.
  • Der Begriff „analoges Signal“ ist ein beliebiges kontinuierliches Signal, für das das zeitvariierende Merkmal (die Variable) des Signals eine Repräsentation einer anderen zeitvariierenden Größe ist, d. h. analog zu einem anderen zeitvariierenden Signal.
  • Der Begriff „digitales Signal“ ist ein physisches Signal, das eine Repräsentation einer Folge diskreter Werte (eines quantifizierten zeitdiskreten Signals), beispielsweise eines beliebigen Bitstroms, oder eines digitalisierten (abgetasteten und analog/digital gewandelten) analogen Signals ist.
  • Der Begriff „Skalieren“ bezieht sich im Allgemeinen auf ein Umwandeln eines Designs (Schaltbild und Layout) von einer Prozesstechnologie auf eine andere Prozesstechnologie und kann nachfolgend in einer Layoutfläche reduziert werden. In manchen Fällen verweist Skalieren auch auf das Vergrößern eines Designs von einer Prozesstechnologie zu einer anderen Prozesstechnologie und kann nachfolgend die Layoutfläche erhöhen. Der Begriff „Skalieren“ bezieht sich im Allgemeinen außerdem auf ein Verringern oder Vergrößern der Größe eines Layouts und von Einrichtungen innerhalb des gleichen Technologieknotens. Der Begriff „Skalieren“ kann sich auch auf ein Anpassen (z. B. Verlangsamen oder Beschleunigen - d. h. herunterskalieren bzw. hinaufskalieren) einer Signalfrequenz relativ zu einem anderen Parameter, zum Beispiel, einem Energieversorgungspegel beziehen.
  • Die Ausdrücke „im Wesentlichen“, „nahe“, „ungefähr“, „annähernd“ und „etwa“ beziehen sich allgemein darauf, dass sie innerhalb von +/-10 % eines Zielwerts liegen.
  • Sofern nichts anderes angegeben ist, gibt die Verwendung der Ordinaladjektiva „erstes“, „zweites“ und „drittes“ usw., um ein gemeinsames Objekt zu beschreiben, lediglich an, dass auf unterschiedliche Instanzen gleicher Objekte Bezug genommen wird, und soll nicht implizieren, dass die so beschriebenen Objekte in einer gegebenen Reihenfolge sein müssen, entweder zeitlich, räumlich, in Rangfolge oder auf irgendeine andere Weise.
  • Zum Zwecke der vorliegenden Offenbarung bedeuten die Ausdrücke „A und/oder B“ und „A oder B“ (A), (B) oder (A und B). Zum Zwecke der vorliegenden Offenbarung bedeutet der Ausdruck „A, B und/oder C“ (A), (B), (C), (A und B), (A und C), (B und C) oder (A, B und C).
  • Die Begriffe „links“, „rechts“, „vorne“, „hinten“, „oben“, „unten“, „über“, „unter“ und dergleichen in der Beschreibung und in den Ansprüchen, falls vorhanden, werden zu beschreibenden Zwecken verwendet und nicht notwendigerweise zum Beschreiben permanenter relativer Positionen.
  • Es wird darauf hingewiesen, dass die Elemente der Figuren, die die gleichen Bezugsziffern (oder Namen) wie die Elemente einer beliebigen anderen Figur aufweisen, auf eine Weise arbeiten oder funktionieren können, die der beschriebenen ähnlich ist, aber nicht darauf beschränkt ist.
  • Für die Zwecke der Ausführungsformen sind die hier in verschiedenen Schaltkreisen und Logikblöcken verwendeten Transistoren Metalloxidhalbleiter-Transistoren (MOS-Transistoren) oder deren Ableitungen, wobei die MOS-Transistoren Drain-, Source-, Gate- und Substrat-Anschlüsse beinhalten. Die Transistoren und/oder die MOS-Transistor-Derivate beinhalten auch Tri-Gate und FinFET-Transistoren, Gate-All-Around-Cylindrical-Transistoren, Tunnel-FET (TFET), Quadratdraht- oder Rechteckband-Transistoren, ferroelektrische FET (FeFETs) oder andere Vorrichtungen, die Transistorfunktionen implementieren, wie Kohlenstoffnanoröhren oder Spintronik-Einrichtungen. Symmetrische MOSFET-Source- und -Drain-Anschlüsse sind identische Anschlüsse und werden hier austauschbar verwendet. Andererseits weist eine TFET-Vorrichtung asymmetrische Source- und Drain-Anschlüsse auf. Fachleute auf dem Gebiet werden erkennen, dass andere Transistoren, zum Beispiel Sperrschichttransistoren - BJT-PNP/NPN, BiCMOS, CMOS usw. - verwendet werden können, ohne vom Umfang der Offenbarung abzuweichen.
  • Hier verweist der Begriff „Supervisor“ allgemein auf eine Leistungssteuerungs- oder Leistungsverwaltungseinheit (eine „p-Einheit“), die Leistung und leistungsfähigkeitsbezogene Parameter für eine oder mehrere assoziierte Leistungsdomänen überwacht und verwaltet, entweder allein oder in Zusammenarbeit mit einer oder mehreren anderen p-Einheiten. Leistungsbezogene/leistungsfähigkeitsbezogene Parameter können unter anderem Domänenleistung, Plattformleistung, Spannung, Spannungsdomänenstrom, Chipstrom, Lastleitung, Temperatur, Vorrichtungslatenz, Nutzung, Taktfrequenz, Verarbeitungseffizienz, aktuelle/zukünftige Arbeitslastinformationen und andere Parameter beinhalten. Sie kann neue Leistungs- oder Leistungsparameter (Grenzen, Durchschnittsbetrieb usw.) für die eine oder die mehreren Domänen ermitteln. Diese Parameter können dann über eine oder mehrere Fabrics und/oder Zwischenverbindungen an Supervisanden-p-Einheiten oder direkt an gesteuerte oder überwachte Entitäten, wie etwa VR oder Taktdrosselsteuerregister, kommuniziert werden. Ein Supervisor lernt die Arbeitslast (gegenwärtig und zukünftig) eines oder mehrerer Chips, Leistungsmessungen des einen oder der mehreren Chips und andere Parameter (z. B. Leistungsgrenzen auf Plattformebene) und bestimmt neue Leistungsgrenzen für den einen oder die mehreren Chips. Diese Leistungsgrenzen werden dann von Supervisor-p-Einheiten über eine oder mehrere Fabrics und/oder Zwischenverbindungen an die Supervisanden-p-Einheiten übermittelt. In Beispielen, in denen ein Chip eine p-Einheit aufweist, wird eine Supervisor(Svor)-p-Einheit auch als Supervisorchip bezeichnet.
  • Hier verweist der Begriff „Supervisand“ allgemein auf eine Leistungssteuerungs- oder Leistungsverwaltungseinheit (eine „p-Einheit“), die Leistung und leistungsfähigkeitsbezogene Parameter für eine oder mehrere assoziierte Leistungsdomänen überwacht und verwaltet, entweder alleine oder in Zusammenarbeit mit einer oder mehreren anderen p-Einheiten, und Anweisungen von einem Supervisor zum Festlegen von Leistungs- und/oder Leistungsfähigkeitsparametern (z. B. Versorgungsspannung, Betriebsfrequenz, Maximalstrom, Drosselschwelle usw.) für ihren assoziierten Leistungsbereich empfängt. In Beispielen, in denen ein Chip eine p-Einheit aufweist, kann eine Supervisanden(Svee)-p-Einheit auch als Supervisandenchip bezeichnet werden. Es wird angemerkt, dass eine p-Einheit entweder als ein Svor, ein Svee oder sowohl eine Svor/Svee-p-Einheit dienen kann.
  • Hier verweist der Begriff „Prozessorkern“ allgemein auf eine unabhängige Ausführungseinheit, die jeweils einen Programmthread parallel zu anderen Kernen ausführen kann. Ein Prozessorkern kann eine dedizierte Leistungssteuerung oder Leistungssteuereinheit (p-Einheit) beinhalten, die dynamisch oder statisch als ein Supervisor oder Supervisand konfiguriert sein kann. Diese dedizierte p-Einheit wird in manchen Beispielen auch als autonome p-Einheit bezeichnet. In manchen Beispielen sind alle Prozessorkerne von der gleichen Größe und Funktionalität, d. h. symmetrische Kerne. Prozessorkerne können aber auch asymmetrisch sein. Zum Beispiel weisen manche Prozessorkerne eine andere Größe und/oder Funktion als andere Prozessorkerne auf. Ein Prozessorkern kann ein virtueller Prozessorkern oder ein physischer Prozessorkern sein.
  • Hier verweist der Ausdruck „Chip“ allgemein auf ein einziges kontinuierliches Stück Halbleitermaterial (z. B. Silizium), in dem sich Transistoren oder andere Komponenten, die einen Prozessorkern bilden, befinden können. Mehrkernprozessoren können zwei oder mehr Prozessoren auf einem einzigen Chip aufweisen, alternativ können aber die zwei oder mehr Prozessoren auf zwei oder mehr jeweiligen Chips bereitgestellt sein. Jeder Chip weist eine dedizierte Leistungssteuerung oder Leistungssteuereinheit (p-Einheit) auf, die dynamisch oder statisch als ein Supervisor oder Supervisand konfiguriert sein kann. In manchen Beispielen sind die Chips von der gleichen Größe und Funktionalität, d. h. symmetrische Kerne. Chips können aber auch asymmetrisch sein. Zum Beispiel weisen manche Chips eine andere Größe und/oder Funktion als andere Chips auf.
  • Hier bezieht sich der Begriff „Zwischenverbindung“ auf eine Kommunikationsverbindung oder einen Kommunikationskanal zwischen zwei oder mehr Punkten oder Knoten. Sie kann einen oder mehrere separate Leitungspfade, wie etwa Drähte, Durchkontaktierungen, Wellenleiter, passive Komponenten und/oder aktive Komponenten, umfassen. Es kann sich auch um eine Fabric handeln.
  • Hier verweist der Begriff „Schnittstelle“ allgemein auf Software und/oder Hardware, die zum Kommunizieren mit einer Zwischenverbindung verwendet werden. Eine Schnittstelle kann Logik und E/A-Treiber/Empfänger zum Senden und Empfangen von Daten über die Zwischenverbindung oder einen oder mehrere Drähte beinhalten.
  • Hier verweist der Begriff „Fabric“ allgemein auf einen Kommunikationsmechanismus mit einem bekannten Satz von Quellen, Zielen, Routing-Regeln, Topologie und anderen Eigenschaften. Die Quellen und Ziele können eine beliebige Art von Datenbearbeitungsfunktionseinheit, wie etwa Leistungsverwaltungseinheiten, sein. Fabrics können zweidimensional entlang einer x-y-Ebene eines Chips aufgespannt sein und/oder dreidimensional (3D) entlang einer x-y-z-Ebene eines Stapels von vertikal und horizontal angeordneten Chips aufgespannt sein. Eine einzige Fabric kann mehrere Chips überspannen. Eine Fabric kann eine beliebige Topologie annehmen, wie etwa Netztopologie, Sterntopologie, Liniennetztopologie. Eine Fabric kann Teil eines Network-on-Chip (NoC) mit mehreren Agenten sein. Diese Agenten können eine beliebige Funktionseinheit sein.
  • Hier verweist der Begriff „Dielet“ oder „Chiplet“ allgemein auf einen physisch eigenständigen Halbleiterchip, der typischerweise auf eine Weise mit einem angrenzenden Chip verbunden ist, die es der Fabric über eine Chipgrenze hinweg ermöglicht, wie eine einzelne Fabric anstatt als zwei unterschiedliche Fabrics zu fungieren. Somit können zumindest manche Chips Dielets sein. Jedes Dielet kann eine oder mehrere p-Einheiten beinhalten, die dynamisch oder statisch als ein Supervisor, Supervisand oder beides konfiguriert sein können.
  • Hier verweist der Begriff „Domäne“ allgemein auf eine logische oder physische Einfassung, die ähnliche Eigenschaften (z. B. Versorgungsspannung, Betriebsfrequenz, Typ von Schaltkreisen oder Logik und/oder Arbeitslasttyp) aufweist und/oder durch einen bestimmten Agenten gesteuert wird. Eine Domäne kann zum Beispiel eine Gruppe von Logikeinheiten oder Funktionseinheiten sein, die durch einen bestimmten Supervisor gesteuert werden. Eine Domäne kann auch als autonomer Bereich (AP) bezeichnet werden. Eine Domäne kann ein gesamtes Ein-Chip-System (SoC) oder ein Teil des SoC sein und wird durch eine p-Einheit gesteuert.
  • Darüber hinaus können die speziellen Merkmale, Strukturen, Funktionen oder Eigenschaften in einer oder mehreren Ausführungsformen auf eine beliebige geeignete Weise kombiniert werden. Eine erste Ausführungsform kann zum Beispiel überall dort mit einer zweiten Ausführungsform kombiniert werden, wo sich die mit den beiden Ausführungsformen assoziierten speziellen Merkmale, Strukturen, Funktionen oder Eigenschaften nicht gegenseitig ausschließen.
  • Obwohl die Offenbarung in Verbindung mit spezifischen Ausführungsformen davon beschrieben wurde, sind für Fachleute angesichts der vorangegangenen Beschreibung viele Alternativen, Modifikationen und Variationen derartiger Ausführungsformen ersichtlich. Die Ausführungsformen der Offenbarung sollen alle derartigen Alternativen, Modifikationen und Variationen, die in den breiten Schutzumfang der beigefügten Ansprüche fallen, einschließen.
  • Zusätzlich dazu können wohlbekannte Leistungs-/Masseverbindungen zu integrierten Schaltkreis(IC)-Chips und anderen Komponenten in den dargelegten Figuren dargestellt sein oder auch nicht, um die Darstellung und die Erörterung zu vereinfachen und die Offenbarung nicht zu verschleiern. Des Weiteren können Anordnungen in Blockdiagrammform gezeigt sein, um zu vermeiden, dass die Offenbarung unklar wird, und auch angesichts dessen, dass Spezifika hinsichtlich der Implementierung derartiger Blockdiagrammanordnungen in hohem Maße von der Plattform abhängen, innerhalb derer die vorliegende Offenbarung implementiert werden soll (d. h., derartige Spezifika sollten im Kenntnisbereich von Fachleuten liegen). Dort, wo spezifische Details (z. B. Schaltkreise) dargelegt sind, um Ausführungsbeispiele der Offenbarung zu beschreiben, sollte es für Fachleute ersichtlich sein, dass die Offenbarung ohne diese spezifischen Details oder mit einer Variation davon umgesetzt werden kann. Die Beschreibung ist somit als veranschaulichend statt als beschränkend aufzufassen.
  • Die folgenden Beispiele betreffen weitere Ausführungsformen. Einzelheiten in den Beispielen können überall in einer oder mehreren Ausführungsformen verwendet werden. Alle optionalen Merkmale der hierin beschriebenen Einrichtung können auch hinsichtlich eines Verfahrens oder Prozesses implementiert werden. Die Beispiele können in beliebigen Kombinationen kombiniert werden. Beispielsweise kann Beispiel 4 mit Beispiel 2 kombiniert werden.
  • Beispiel 1: Ein maschinenlesbares Speicherungsmedium mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass eine oder mehrere Maschinen ein Verfahren durchführen, das umfasst: Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand einer Rechenvorrichtung, dass ein Kennwort für eine Endpunktvorrichtung in einem sicheren Speicher einer ersten Vorrichtung gespeichert ist; Abrufen des Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der ersten Vorrichtung; und Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung.
  • Beispiel 2: Das maschinenlesbare Speicherungsmedium von Beispiel 1 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Empfangen des Kennworts für die Endpunktvorrichtung von einer Benutzerschnittstelle; und Übertragen des Kennworts an die erste Vorrichtung unter Verwendung eines Busses.
  • Beispiel 3: Das maschinenlesbare Speicherungsmedium von Beispiel 2 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Übertragen des Kennworts für die Endpunktvorrichtung an die erste Vorrichtung unter Verwendung des Busses zu einem Zeitpunkt erfolgt, bevor ein Bootprozess für die Rechenvorrichtung Kontrolle an ein Betriebssystem der Rechenvorrichtung überträgt.
  • Beispiel 4: Das maschinenlesbare Speicherungsmedium von Beispiel 2 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Speichern des Kennworts für die Endpunktvorrichtung in dem sicheren Speicher der ersten Vorrichtung.
  • Beispiel 5: Das maschinenlesbare Speicherungsmedium von Beispiel 1 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei der sichere Speicher der ersten Vorrichtung für die erste Vorrichtung zugänglich ist und nicht für ein Basic Input Output System (BIOS), ein Betriebssystem oder eine Anwendungssoftware der Rechenvorrichtung zugänglich ist.
  • Beispiel 6: Das maschinenlesbare Speicherungsmedium von Beispiel 1 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung das Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung umfasst.
  • Beispiel 7: Das maschinenlesbare Speicherungsmedium von Beispiel 6 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung zu einem Zeitpunkt erfolgt, nachdem ein Übergang von dem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem ein Ausführen von Anwendungssoftware unterstützt.
  • Beispiel 8: Das maschinenlesbare Speicherungsmedium von Beispiel 1 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Versorgen der Endpunktvorrichtung mit Leistung gemäß einem ersten Leistungszustand vor dem Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung; und als Reaktion darauf, dass die Endpunktvorrichtung gemäß dem ersten Leistungszustand mit Leistung versorgt wird, Treten der Endpunktvorrichtung in einen gesperrten Zustand, wobei der erste Leistungszustand weniger Leistung bereitstellt als Leistung, die gemäß einem zweiten Leistungszustand bereitgestellt wird, wobei der zweite Leistungszustand eine Leistungsmenge bereitstellt, die ausreicht, dass sich die Endpunktvorrichtung in einem Betriebszustand befindet.
  • Beispiel 9: Das maschinenlesbare Speicherungsmedium von Beispiel 8 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Versorgen der Endpunktvorrichtung mit Leistung gemäß dem zweiten Leistungszustand nach dem Versorgen der Endpunktvorrichtung mit Leistung gemäß dem ersten Leistungszustand und vor dem Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung, wobei die Endpunktvorrichtung gesperrt bleibt, während sie sich im zweiten Leistungszustand befindet, bis die Endpunktvorrichtung entsperrt wird, wobei das Kennwort für die Endpunktvorrichtung aus dem sicheren Speicher abgerufen wird.
  • Beispiel 10: Eine Einrichtung, umfassend: eine erste Schaltungsanordnung zum Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand einer Rechenvorrichtung, dass ein Kennwort für eine Endpunktvorrichtung in einem sicheren Speicher der Einrichtung gespeichert ist; eine zweite Schaltungsanordnung zum Abrufen des Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der Einrichtung; und eine dritte Schaltungsanordnung zum Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort.
  • Beispiel 11: Die Einrichtung von Beispiel 10, ferner umfassend: eine vierte Schaltungsanordnung zum Empfangen des Kennworts für die Endpunktvorrichtung von einem Basic Input Output System (BIOS) über einen Bus, wobei das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt empfangen wird, bevor ein Bootprozess für die Rechenvorrichtung Kontrolle an ein Betriebssystem der Rechenvorrichtung überträgt.
  • Beispiel 12: Die Einrichtung von Beispiel 11, eine fünfte Schaltungsanordnung zum Speichern des Kennworts für die Endpunktvorrichtung in dem sicheren Speicher der Einrichtung umfasst.
  • Beispiel 13: Die Einrichtung von Beispiel 10, wobei der sichere Speicher der ersten Vorrichtung für die erste Vorrichtung zugänglich ist und nicht für ein Basic Input Output System (BIOS), ein Betriebssystem oder eine Anwendungssoftware der Rechenvorrichtung zugänglich ist.
  • Beispiel 14: Die Einrichtung von Beispiel 10, ferner umfassend: eine sechste Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung.
  • Beispiel 15: Die Einrichtung von Beispiel 14, wobei die sechste Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt überträgt, nachdem ein Übergang von einem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem der Rechenvorrichtung ein Ausführen von Anwendungssoftware unterstützt.
  • Beispiel 16: Die Einrichtung von Beispiel 10, wobei die Endpunktvorrichtung eine Speichervorrichtung umfasst.
  • Beispiel 17: Ein System, umfassend: eine Einrichtung, die an eine Endpunktvorrichtung gekoppelt ist, wobei die Einrichtung einen sicheren Speicher aufweist; ein Prozessorsystem, das an die Einrichtung gekoppelt ist, wobei das Prozessorsystem ein Ein-Chip-System (SoC) mit einem oder mehreren Verarbeitungskernen umfasst; und eine Kommunikationsschnittstelle, um dem Prozessor zu ermöglichen, mit einer anderen Vorrichtung zu kommunizieren, wobei die Einrichtung umfasst: eine erste Schaltungsanordnung zum Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand des Systems, dass ein Kennwort für die Endpunktvorrichtung im sicheren Speicher der Einrichtung gespeichert ist; eine zweite Schaltungsanordnung zum Abrufen eines Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der Einrichtung; und eine dritte Schaltungsanordnung zum Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort.
  • Beispiel 18: Das System von Beispiel 17, wobei die Einrichtung ferner eine vierte Schaltungsanordnung zum Empfangen des Kennworts für die Endpunktvorrichtung von einem Basic Input Output System (BIOS) über einen Bus umfasst, wobei das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt empfangen wird, bevor ein Bootprozess für das System Kontrolle an ein Betriebssystem des Systems überträgt.
  • Beispiel 19: Das System von Beispiel 17, wobei die Einrichtung ferner eine fünfte Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung zu einem Zeitpunkt umfasst, nachdem ein Übergang von einem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem des Systems ein Ausführen von Anwendungssoftware unterstützt.
  • Beispiel 20: Das System von Beispiel 17, wobei die Endpunktvorrichtung eine Speichervorrichtung umfasst.
  • Eine Zusammenfassung wird bereitgestellt, die es dem Leser ermöglichen wird, die Art und die Quintessenz der technischen Offenbarung festzustellen. Die Zusammenfassung wird mit dem Verständnis vorgelegt, dass sie nicht dazu verwendet wird, den Schutzumfang oder die Bedeutung der Ansprüche einzuschränken. Die folgenden Ansprüche werden hiermit in die ausführliche Beschreibung aufgenommen, wobei jeder Anspruch eigenständig als eine separate Ausführungsform steht.

Claims (10)

  1. Maschinenlesbares Speicherungsmedium mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass eine oder mehrere Maschinen ein Verfahren durchführen, das umfasst: Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand einer Rechenvorrichtung, dass ein Kennwort für eine Endpunktvorrichtung in einem sicheren Speicher einer ersten Vorrichtung gespeichert ist; Abrufen des Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der ersten Vorrichtung; und Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung.
  2. Maschinenlesbares Speicherungsmedium nach Anspruch 1 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Empfangen des Kennworts für die Endpunktvorrichtung von einer Benutzerschnittstelle; und Übertragen des Kennworts an die erste Vorrichtung unter Verwendung eines Busses; wobei optional das maschinenlesbare Speicherungsmedium darauf gespeicherte maschinenlesbare Anweisungen aufweist, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Übertragen des Kennworts für die Endpunktvorrichtung an die erste Vorrichtung unter Verwendung des Busses zu einem Zeitpunkt erfolgt, bevor ein Bootprozess für die Rechenvorrichtung Kontrolle an ein Betriebssystem der Rechenvorrichtung überträgt; und/oder wobei optional das maschinenlesbare Speicherungsmedium darauf gespeicherte maschinenlesbare Anweisungen aufweist, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Speichern des Kennworts für die Endpunktvorrichtung in dem sicheren Speicher der ersten Vorrichtung.
  3. Maschinenlesbares Speicherungsmedium nach einem der Ansprüche 1 oder 2 mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei der sichere Speicher der ersten Vorrichtung für die erste Vorrichtung zugänglich ist und nicht für ein Basic Input Output System (BIOS), ein Betriebssystem oder eine Anwendungssoftware der Rechenvorrichtung zugänglich ist; und/oder mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung umfasst; wobei optional das maschinenlesbare Speicherungsmedium darauf gespeicherte maschinenlesbare Anweisungen aufweist, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung zu einem Zeitpunkt erfolgt, nachdem ein Übergang von dem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem ein Ausführen von Anwendungssoftware unterstützt.
  4. Maschinenlesbare Speicherungsmedien nach einem der Ansprüche 1 bis 3, mit darauf gespeicherten maschinenlesbaren Anweisungen, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Versorgen der Endpunktvorrichtung mit Leistung gemäß einem ersten Leistungszustand vor dem Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung; und als Reaktion darauf, dass die Endpunktvorrichtung gemäß dem ersten Leistungszustand mit Leistung versorgt wird, Treten der Endpunktvorrichtung in einen gesperrten Zustand, wobei der erste Leistungszustand weniger Leistung bereitstellt als Leistung, die gemäß einem zweiten Leistungszustand bereitgestellt wird, wobei der zweite Leistungszustand eine Leistungsmenge bereitstellt, die ausreicht, dass sich die Endpunktvorrichtung in einem Betriebszustand befindet; wobei optional das maschinenlesbare Speicherungsmedium darauf gespeicherte maschinenlesbare Anweisungen aufweist, die bei Ausführung bewirken, dass die eine oder die mehreren Maschinen das Verfahren durchführen, wobei das Verfahren ferner umfasst: Versorgen der Endpunktvorrichtung mit Leistung gemäß dem zweiten Leistungszustand nach dem Versorgen der Endpunktvorrichtung mit Leistung gemäß dem ersten Leistungszustand und vor dem Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort für die Endpunktvorrichtung, wobei die Endpunktvorrichtung gesperrt bleibt, während sie sich im zweiten Leistungszustand befindet, bis die Endpunktvorrichtung entsperrt wird, wobei das Kennwort für die Endpunktvorrichtung aus dem sicheren Speicher abgerufen wird.
  5. Einrichtung, umfassend: eine erste Schaltungsanordnung zum Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand einer Rechenvorrichtung, dass ein Kennwort für eine Endpunktvorrichtung in einem sicheren Speicher der Einrichtung gespeichert ist; eine zweite Schaltungsanordnung zum Abrufen des Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der Einrichtung; und eine dritte Schaltungsanordnung zum Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort.
  6. Vorrichtung nach Anspruch 5, ferner umfassend: eine vierte Schaltungsanordnung zum Empfangen des Kennworts für die Endpunktvorrichtung von einem Basic Input Output System (BIOS) über einen Bus, wobei das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt empfangen wird, bevor ein Bootprozess für die Rechenvorrichtung Kontrolle an ein Betriebssystem der Rechenvorrichtung überträgt; wobei die Einrichtung optional ferner eine fünfte Schaltungsanordnung zum Speichern des Kennworts für die Endpunktvorrichtung in dem sicheren Speicher der Einrichtung umfasst.
  7. Einrichtung nach einem der Ansprüche 5 oder 6, wobei der sichere Speicher der ersten Vorrichtung für die erste Vorrichtung zugänglich ist und nicht für ein Basic Input Output System (BIOS), ein Betriebssystem oder eine Anwendungssoftware der Rechenvorrichtung zugänglich ist; und/oder wobei die Einrichtung ferner eine sechste Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung umfasst; wobei optional die sechste Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt überträgt, nachdem ein Übergang von einem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem der Rechenvorrichtung ein Ausführen von Anwendungssoftware unterstützt.
  8. Einrichtung nach einem der Ansprüche 5 bis 7, wobei die Endpunktvorrichtung eine Speichervorrichtung umfasst.
  9. System, umfassend: eine Einrichtung, die an eine Endpunktvorrichtung gekoppelt ist, wobei die Einrichtung einen sicheren Speicher aufweist; ein Prozessorsystem, das an die Einrichtung gekoppelt ist, wobei das Prozessorsystem ein Ein-Chip-System (SoC) mit einem oder mehreren Verarbeitungskernen umfasst; und eine Kommunikationsschnittstelle, um dem Prozessor zu ermöglichen, mit einer anderen Vorrichtung zu kommunizieren, wobei die Einrichtung umfasst: eine erste Schaltungsanordnung zum Detektieren, während des Übergangs von einem Aufweckereignis in einen Betriebszustand des Systems, dass ein Kennwort für die Endpunktvorrichtung im sicheren Speicher der Einrichtung gespeichert ist; eine zweite Schaltungsanordnung zum Abrufen eines Kennworts für die Endpunktvorrichtung aus dem sicheren Speicher der Einrichtung; und eine dritte Schaltungsanordnung zum Entsperren der Endpunktvorrichtung mit dem aus dem sicheren Speicher abgerufenen Kennwort.
  10. System nach Anspruch 9, wobei die Einrichtung ferner eine vierte Schaltungsanordnung zum Empfangen des Kennworts für die Endpunktvorrichtung von einem Basic Input Output System (BIOS) über einen Bus umfasst, wobei das Kennwort für die Endpunktvorrichtung zu einem Zeitpunkt empfangen wird, bevor ein Bootprozess für das System Kontrolle an ein Betriebssystem des Systems überträgt; und/oder wobei die Einrichtung ferner eine fünfte Schaltungsanordnung zum Übertragen des Kennworts für die Endpunktvorrichtung an die Endpunktvorrichtung zu einem Zeitpunkt umfasst, nachdem ein Übergang von einem Aufweckereignis in einen Betriebszustand initiiert wurde, aber bevor ein Betriebssystem des Systems ein Ausführen von Anwendungssoftware unterstützt; und/oder wobei die Endpunktvorrichtung eine Speichervorrichtung umfasst.
DE102022105892.1A 2021-06-23 2022-03-14 Einrichtung und verfahren zum wiederherstellen einer kennwortgeschützten endpunktvorrichtung in einen betriebszustand aus einem niedrigleistungszustand Pending DE102022105892A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN202141028118 2021-06-23
IN202141028118 2021-06-23

Publications (1)

Publication Number Publication Date
DE102022105892A1 true DE102022105892A1 (de) 2023-01-12

Family

ID=84534083

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022105892.1A Pending DE102022105892A1 (de) 2021-06-23 2022-03-14 Einrichtung und verfahren zum wiederherstellen einer kennwortgeschützten endpunktvorrichtung in einen betriebszustand aus einem niedrigleistungszustand

Country Status (2)

Country Link
US (1) US11954501B2 (de)
DE (1) DE102022105892A1 (de)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743241B1 (en) * 2003-09-12 2010-06-22 American Megatrends, Inc. Securing the contents of data storage devices within a computer
US7809950B2 (en) * 2005-03-02 2010-10-05 Dell Products L.P. System and method for access to a password protected information handling system
US20090036096A1 (en) * 2007-07-30 2009-02-05 Ibrahim Wael M Using an authentication ticket to initialize a computer
CN103366110A (zh) * 2012-04-02 2013-10-23 鸿富锦精密工业(深圳)有限公司 通过外接设备给电子装置加密解密的系统、电子装置及外接设备

Also Published As

Publication number Publication date
US11954501B2 (en) 2024-04-09
US20220413876A1 (en) 2022-12-29

Similar Documents

Publication Publication Date Title
DE102021126686A1 (de) Leistungsverwaltungseinrichtung und -verfahren für mehrebenenspeichersysteme
DE102021119090A1 (de) Einrichtung und verfahren für energieeffiziente kernspannungsauswahl
DE102021134615A1 (de) Vorrichtung und verfahren für kontextbasiertes aufladen von batterien
US20210124594A1 (en) Apparatus and method for dynamic selection of an optimal processor core for power-up and/or sleep modes
DE102020131690A1 (de) Energieverwaltung für usb-typ-c-subsysteme
DE112020003722T5 (de) Digital-linearer hybrid-schaltkondensator-spannungsregler
CN115514036A (zh) 自适应突发功率和快速电池充电装置和方法
DE102020134338A1 (de) Inferenzbasierte schnellladung
DE102021132804A1 (de) Ospm-richtlinienverfahren und -einrichtung zur dynamischen usb-c-modusauswahl
DE102021119048A1 (de) Einrichtung und verfahren für eine einheitliche halte- und reaktivierungsklemme
DE102021121216A1 (de) Einrichtung und Verfahren zum Steuern eines Prozessorspitzensttroms
CN115378253A (zh) 计算型电流传感器
DE102021130628A1 (de) Sicherheitsverriegelungseinrichtung und verfahren für geistiges eigentum
US20210132123A1 (en) Per-part real-time load-line measurement apparatus and method
US20220197367A1 (en) Hardware and software coordinated cost-aware low power state selection
DE112018005673T5 (de) Konfigurierbares leeren von daten aus einem flüchtigen speicher in einen nicht flüchtigen speicher
DE102022103790A1 (de) Einrichtung und verfahren zum detektieren einer leistungsversorgungssicherheitsanpassung und risikominderung
DE102022105671A1 (de) Phasenregelkreis-unterstützte schnellstartvorrichtung und schnellstartverfahren
EP4020126A1 (de) Einrichtung und verfahren zum hochfahren einer sicheren vorrichtung
US20210167014A1 (en) Apparatus and method to increase effective capacitance with layout staples
DE102022105892A1 (de) Einrichtung und verfahren zum wiederherstellen einer kennwortgeschützten endpunktvorrichtung in einen betriebszustand aus einem niedrigleistungszustand
WO2022133643A1 (en) Peak power shaving with multiple batteries, and control mechanism for hybrid energy sources
JP2022177797A (ja) 高出力ポータブル装置向けの電源供給アーキテクチャ
DE102020132082A1 (de) Verfahren und vorrichtung zur genauen messung einer plattformleistung
DE102020129505A1 (de) Klemmverfahren und -einrichtung mit digitalem linearem regler