DE112018004144T5 - Effizientes testen einer direktspeicher-adressumsetzung - Google Patents

Effizientes testen einer direktspeicher-adressumsetzung Download PDF

Info

Publication number
DE112018004144T5
DE112018004144T5 DE112018004144.1T DE112018004144T DE112018004144T5 DE 112018004144 T5 DE112018004144 T5 DE 112018004144T5 DE 112018004144 T DE112018004144 T DE 112018004144T DE 112018004144 T5 DE112018004144 T5 DE 112018004144T5
Authority
DE
Germany
Prior art keywords
translation
integrated circuit
processing unit
entry
entries
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
DE112018004144.1T
Other languages
English (en)
Inventor
Shakti Kapoor
Manoj Dusanapudi
Nelson Wu
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112018004144T5 publication Critical patent/DE112018004144T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • G06F11/2635Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers using a storage for the test inputs, e.g. test ROM, script files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Eine Schaltung und ein Verfahren stellen eine effiziente Belastungsprüfung von Adressumsetzungen in einer integrierten Schaltung wie beispielsweise einer Verbindungsverarbeitungseinheit bereit. Eine Zufalls-DMA-Modus-(RDM)-Schaltung stellt eine zufällige Eingabe für eine Indexierung in einer Umsetzungsprüfungstabelle (TVT) bereit, die zur Erzeugung der realen Hauptspeicheradresse verwendet wird. Die RDM-Schaltung ermöglicht das Testen aller Einträge der TVT und somit aller DMA-Modi, ungeachtet dessen, welche Busagenten mit der Verbindungsverarbeitungseinheit verbunden sind. Die RDM-Schaltung kann einen Multiplexer verwenden, um zwischen einer Eingabe zur Laufzeit und einer zufälligen Testeingabe zu wählen, die von dem Zufallsbitgenerator bereitgestellt wird. Wenn sich die Verbindungsverarbeitungseinheit in einem Testmodus befindet, wird ein Modusauswahlbit bestätigt, um die zufällige Testeingabe auszuwählen.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Diese Offenbarung betrifft allgemein das Testen einer Direktspeicher-Adressumsetzung und insbesondere betrifft sie ein effizientes Testen einer Direktspeicher-Adressumsetzung in einer integrierten Schaltung wie beispielsweise in einer Hochgeschwindigkeits-Übertragungsverbindung zwischen einem oder mehreren Prozessoren und Grafikverarbeitungsei nheiten.
  • Stand der Technik
  • Testwerkzeuge für integrierte Schaltungen versuchen, den gründlichsten und anspruchsvollsten Testfall für eine integrierte Schaltung zu erzeugen. In der Theorie sollen die erzeugten Testfälle eine maximale Testabdeckung bieten und in der Lage sein, verschiedene Taktungsszenarien und Operationen auf der integrierten Schaltung einem Belastungstest zu unterziehen. Das Testen kann während der Entwicklung und Herstellung durchgeführt werden. Der Aufbau von Testfällen, um eine komplizierte integrierte Schaltung gründlich zu testen, kann äußerst zeit- und ressourcenintensiv sein. Das Erstellen von einem effizienten Testcode ist ein wichtiges Ziel des Testens von integrierten Schaltungen.
  • Der direkte Speicherzugriff (DMA, direct memory access) ist ein Merkmal von Computersystemen, das es Hardware-Subsystemen ermöglicht, unabhängig von der zentralen Verarbeitungseinheit (CPU, central processing unit) auf den Hauptsystemspeicher zuzugreifen. In einigen Hochgeschwindigkeitssystemen wird eine Verbindungsverarbeitungseinheit verwendet, um zwischen Chips bzw. Teilen eines Chips eine Verbindung herzustellen, um einen DMA zwischen den Chips bereitzustellen, während gleichzeitig Hauptspeicherkohärenz sichergestellt wird. Eine beispielhafte Verwendung dieser Verbindungsverarbeitungseinheit wäre, einen CPU-Chip mit einem Cluster von Chips einer Grafikverarbeitungseinheit (GPU, graphics processing unit) zu verbinden. Die CPU und das GPU-Cluster verfügen über die Fähigkeit, den Hauptspeicher des jeweils anderen kohärent zu lesen und zu beschreiben. Die GPU kann (DMA-)Lese- und Schreiboperationen ohne Zwischenspeicherung für Datenbewegungen hoher Bandbreite zwischen dem GPU-Hauptspeicher und dem CPU-Hauptspeicher verwenden.
  • KURZDARSTELLUNG
  • Eine Schaltung und ein Verfahren stellen eine effiziente Belastungsprüfung von Adressumsetzungen in einer integrierten Schaltung wie beispielsweise einer Verbindungsverarbeitungseinheit bereit. Eine Zufalls-DMA -Modus-(RDM-)Schaltung stellt eine zufällige Eingabe für eine Indexierung in einer Umsetzungsprüfungstabelle (TVT, translation validation table) bereit, die zur Erzeugung der realen Hauptspeicheradresse verwendet wird. In einem veranschaulichten Beispiel ist die Eingabe in die Tabelle normalerweise eine partitionierbare Endpunktnummer (PE#), die einem bestimmten Busagenten entspricht, der mit dem System verbunden ist. Die RDM-Schaltung ermöglicht das Testen aller Einträge der TVT und somit aller DMA-Modi, ungeachtet dessen, welche Busagenten mit der Verbindungsverarbeitungseinheit verbunden sind. Die RDM-Schaltung kann einen Multiplexer verwenden, um zwischen einer Eingabe zur Laufzeit und einer zufälligen Testeingabe zu wählen, die von dem Zufallsbitgenerator bereitgestellt wird. Wenn sich die Verbindungsverarbeitungseinheit in einem Testmodus befindet, wird ein Modusauswahlbit bestätigt, um die zufällige Testeingabe auszuwählen.
  • Die vorstehenden und andere Merkmale und Vorteile gehen aus der folgenden ausführlicheren Beschreibung hervor, die in den beiliegenden Zeichnungen veranschaulicht ist.
  • Figurenliste
  • Die Offenbarung wird in Verbindung mit den beigefügten Zeichnungen beschrieben, in denen gleiche Bezeichnungen gleiche Elemente angeben, und:
    • 1 ein Blockschaubild eines Systems mit einer Verbindungsverarbeitungseinheit ist, die über eine Zufalls-DMA-Modus-Schaltung zum effizienten Testen einer DMA-Adressumsetzung auf einer integrierten Schaltung verfügt;
    • 2 ein Blockschaubild einer Verbindungsverarbeitungseinheit ist, die über eine Zufalls-DMA-Modus-Schaltung zum effizienten Testen einer DMA-Adressumsetzung verfügt;
    • 3 ein vereinfachtes Blockschaubild eines Teils des in 2 gezeigten ATS-Blocks und eines spezifischen Beispiels der Zufalls-DMA-Modus-Schaltung zum effizienten Testen einer DMA-Adressumsetzung ist;
    • 4 ein vereinfachtes Blockschaubild einer Ausführung für die Zufalls-DMA -Modus-(RDM-)Schaltung ist, die in den 1 bis 3 gezeigt ist;
    • 5 ein Ablaufplan eines Verfahrens zum effizienten Testen einer DMA-Adressumsetzung auf einer integrierten Schaltung ist; und
    • 6 ein Ablaufplan eines bestimmten Verfahrens für den Schritt 520 in 5 ist.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die Offenbarung und die Ansprüche hierin beziehen sich auf eine Schaltung und ein Verfahren für eine effiziente Belastungsprüfung von Adressumsetzungen in einer integrierten Schaltung wie beispielsweise einer Verbindungsverarbeitungseinheit. Eine Zufalls-DMA -Modus-(RDM-)Schaltung stellt eine zufällige Eingabe für eine Indexierung in einer Umsetzungsprüfungstabelle (TVT) bereit, die zur Erzeugung der realen Hauptspeicheradresse verwendet wird. In einem veranschaulichten Beispiel ist die Eingabe in die Tabelle normalerweise eine partitionierbare Endpunktnummer (PE#), die einem bestimmten Busagenten entspricht, der mit dem System verbunden ist. Die RDM-Schaltung ermöglicht das Testen aller Einträge der TVT und somit aller DMA-Modi, ungeachtet dessen, welche Busagenten mit der Verbindungsverarbeitungseinheit verbunden sind. Die RDM-Schaltung kann einen Multiplexer verwenden, um zwischen einer Eingabe zur Laufzeit und einer zufälligen Testeingabe zu wählen, die von dem Zufallsbitgenerator bereitgestellt wird. Wenn sich die Verbindungsverarbeitungseinheit in einem Testmodus befindet, wird ein Modusauswahlbit bestätigt, um die zufällige Testeingabe auszuwählen.
  • 1 ist ein Blockschaubild eines Systems 100 mit einer Verbindungsverarbeitungseinheit (LPU, link processing unit) 120, die über eine Zufalls-DMA-Modus-(RDM-)Schaltung 110 verfügt, um DMA-Adressumsetzungen mit der Verwendung von DMA-Zugriffsmodi effizient zu testen, wie hierin beansprucht wird. Die Verbindungsverarbeitungseinheit 120 stellt eine Hochgeschwindigkeitsverbindung bereit, um eine oder mehrere zentrale Verarbeitungseinheiten (CPUs) mit einem Cluster von GPUs zu verbinden. In dem veranschaulichten Beispiel ist eine einzelne CPU 114 mit zwei GPUs 130A, 130B, die gemeinsam als GPU oder GPUs 130 bezeichnet werden, verbunden. In diesem Beispiel sind die LPU 120 und die CPU 114 zusammen integriert und befinden sich auf einem Prozessorchip 112. Die GPUs 130 befinden sich in diesem Beispiel auf einem getrennten Chip. Alternativ können sich die GPUs 130 auf dem Prozessorchip 112 befinden. Das veranschaulichte Beispiel enthält einen Hauptspeicher 116, in den Testsoftware 118 geladen wurde. Der Hauptspeicher 116 kann sich wie gezeigt auf dem Prozessorchip 112 befinden oder er kann sich außerhalb des Chips befinden. Die Testsoftware 118 kann die Umsetzungstabellen laden, wie nach dem Stand der Technik bekannt ist. Die Testsoftware testet den Hauptspeicher, während die RDM-Schaltung 110 die DMA-Zugriffsmodi in den Tests ungeachtet dessen, welche Agenten verbunden sind, randomisiert, wie nachstehend näher beschrieben wird.
  • Ein Beispiel einer LPU 120 ist die Power9-(P9)-NV-Link-Verarbeitungseinheit (NPU), die von der International Business Machines Corporation entwickelt wird. In den Beispielen hierin ist die LPU 120 mit Ausnahme der RDM-Schaltung 110, die hierin beschrieben wird, ähnlich der NPU. Die P9-NV-Link-Verarbeitungseinheit (NPU) verwendet die NV-Link™ -Verbindung, um den Chip 112 der zentralen Verarbeitungseinheit (CPU) mit dem Cluster der GPU-Chips 130 zu verbinden. NV-Link™ (nachstehend NV-Link) ist eine Hochgeschwindigkeitsverbindungsarchitektur im Eigentum der NVIDIA Corporation. NV-Link stellt Hauptspeicher-Cache-Kohärenz zwischen Chips bei sehr hoher Datenbandbreite bereit. Die CPU(s) und das GPU-Cluster verfügen über die Fähigkeit, den Hauptspeicher des jeweils anderen kohärent zu lesen und zu beschreiben. Die GPU kann (DMA-)Lese- und Schreiboperationen ohne Zwischenspeicherung für Datenbewegungen hoher Bandbreite zwischen dem GPU-Hauptspeicher und dem CPU-Hauptspeicher verwenden. Die NPU stellt die Transaktionsschicht-Funktionalität für den/die NV-Link(s) für den Prozessor bereit. Diese Funktionalität beinhaltet das Entgegennehmen von Befehlen von der NV-Link-Datenverbindungslogik, deren Umwandeln in Abfolgen von Busbefehlen und das anschließende Erzeugen von Antworten beruhend auf den Ergebnissen der Busbefehle. Die Antworten werden durch die Datenverbindungslogik zurück an den NV-Link gesendet. Zu den unterstützten Befehlen gehören Lese-, Schreib-, Test- und Löschoperationen. Dieselben Arten von Befehlen sowie Upgrade- und Downgrade-Befehle können von der NPU über den NV-Link an das GPU-Cluster gesendet werden.
  • 2 ist ein vereinfachtes Blockschaubild der in 1 vorgestellten Verbindungsverarbeitungseinheit (LPU) 120. Zu den wichtigsten Blöcken der LPU 120 gehören drei gemeinsam zur NPU gehörende Warteschlangenblöcke (NPCQ) 210A, 210B, 210C, sechs NV-Link-Transaktionsschichtblöcke (NTL) 212A bis 212F, ein erweiterter Umsetzungsserviceblock (XTS) 214 und ein Adressumsetzungsblock (ATS) 216. Wie vorstehend einführend beschrieben wurde, enthält die LPU 120 eine Zufalls-DMA-Modus-(RDM-)Schaltung 110 für ein effizientes Testen von DMA-Zugriffsmodi. In diesem Beispiel ist die RDM 110 in den Adressumsetzungsblock (ATS) 216 integriert. Der ATS 216 stellt eine Adressverschiebung und Adressprüfung bereit, wenn nicht umgesetzte Adressen in Befehlen von der GPU verwendet werden. Die RDM-Schaltung 110 und die Funktion des ATS 216 werden nachstehend unter Bezugnahme auf 3 näher beschrieben.
  • Nochmals Bezug nehmend auf 2 enthält die LPU 120 sechs NV-Link-Transaktionsschichtblöcke (NTL) 212A bis 212F, die gemeinsam als NTL-Blöcke 212 bezeichnet werden. Jeder der NTL-Blöcke 212 weist eine als Baustein („brick“) bezeichnete Einheit auf. Jeder Baustein stellt einen getrennten Strom von Befehlen an den NV-Link bereit und jeder Baustein kann mit einem oder mehreren externen Chips verbunden werden. Alle Reihenfolgeanforderungen werden einzeln für jeden Baustein durchgesetzt. Die LPU 120 enthält des Weiteren drei gemeinsam zur NPU gehörende Warteschlangenblöcke (NPCQ) 210A, 210B, 210 C, die gemeinsam als NPCQ(s) 210 bezeichnet werden. Die NPCQs stellen drei PowerBus-Einheitenschnittstellen bereit, die in 2 als 218A, 218B und 218C gezeigt sind. Jede der PowerBus-Schnittstellen unterstützt zwei NV-Link-Bausteine (NTL-Blöcke 212).
  • Nochmals Bezug nehmend auf 2 enthält die LPU 120 des Weiteren einen erweiterten Umsetzungsserviceblock (XTS) 214. Der XTS 214 wird verwendet, um die Address Translation Services-Operationen des NV-Links zu unterstützen. Dieser Block nimmt Address Translation Requests von der GPU entgegen, sucht den notwendigen Umsetzungskontext und erstellt Umsetzungsanforderungen für die P9. Umsetzungskontexte werden in einer Tabelle in der XTS-Einheit festgehalten. Wenn die Nest MMU auf eine Umsetzungsanforderung antwortet, erstellt der XTS-Block eine Address Translation Response, die über den NV-Link an die GPU gesendet wird. Der XTS-Block erzeugt auch Address Shoot-down Requests beruhend auf dem Abhören von TLBie-Operationen auf dem PowerBus, wie nach dem Stand der Technik bekannt ist.
  • 3 ist ein vereinfachtes Blockschaubild eines Teils des in 2 vorgestellten Adressumsetzungsblocks (ATS) 216. In diesem Beispiel ist die RDM-Schaltung 110 in den Adressumsetzungsblock (ATS) 216 integriert. Der ATS 216 stellt eine Adressverschiebung und Adressprüfung bereit, wenn nicht umgesetzte Adressen in Befehlen von der GPU verwendet werden. Zusätzliche Einzelheiten der Verschiebung und Prüfung sind in der Spezifikation „IO Device Architecture, Version 2 (IODA2)“ beschrieben, die sich im Eigentum der OpenPOWER Foundation befindet. Der Umsetzungsprozess des ATS 216 beginnt unten in 3 mit der Buseinheitenfunktion (BDF, bus device function) 310 und der DMA-Adresse 312 und wird nach oben fortgesetzt, um die reale Adresse 314 des Systems zu erstellen. Die Adressumsetzung in dem ATS 216 umfasst drei grundlegende Schritte. Im Schritt 1 wird einer jeden Adressumsetzungsoperation für eine DMA-Adresse 312, die von einem Agenten (GPU oder CPU) mit einer Buseinheitenfunktion 310 empfangen wird, eine partitionierbare Endpunktnummer (PE#) 318 zugewiesen. Die Funktionen der RDM-Schaltung 110 im Schritt 1 sind nachstehend näher beschrieben. Die Schritte 2 und 3 arbeiten in einer dem Stand der Technik ähnlichen Weise. Im Schritt 2 wird die PE# 318 für eine Indexierung in einer Umsetzungsprüfungstabelle (TVT) 320 verwendet, um einen Umsetzungsprüfungseintrag (TVE, translation validation entry) zu finden. Im Schritt 3 wird die reale Adresse 314 anhand von Informationen aus der TCE-Tabelle 330 festgelegt, wobei der TVE und die Bits 334 aus der DMA-Adresse 312 verwendet werden. Jeder dieser Schritte wird nachstehend näher beschrieben.
  • Nochmals Bezug nehmend auf 3 besteht der Schritt 1 des Prozesses zur Umsetzung von Adressen darin, einer jeden DMA-Operation eine partitionierbare Endpunktnummer (PE#) zuzuweisen. Normalerweise wird allen DMA-Operationen, die zu einer Buseinheitenfunktion (BDF) gehören, dieselbe PE# zugewiesen. Jede DMA-Operation hat einen oder mehrere zugehörige Agenten (GPU oder CPU). Die Buseinheitenfunktion (BDF) 310 gibt die Identität des oder der Agenten an, der bzw. die der aktuellen Hauptspeicher-Adressumsetzungsoperation entsprechen. Die Identität der durch die BDF 310 dargestellten Einheit wird dem Agenten üblicherweise in der Hardwareerkennungsphase zugewiesen, wenn das System gebootet wird. Die BDF 310 wird verwendet, um eine partitionierbare Endpunktnummer (PE#) auszuwählen, welche verwendet wird, um aus der PE#-Konfigurationstabelle (PCT, PE# configuration table) 316 auf die TVT 320 zuzugreifen. In einem Beispiel werden die Bits der BDF 310 mit einer Exklusiv-ODER-Operation hashverschlüsselt, um einen Vier-Bit-Index zu bilden, der für eine Indexierung in der PCT-Tabelle 316 verwendet wird. Die PCT 316 hat eine Breite von vier Bit und sechzehn Einträge. Jeder Eintrag der PCT enthält die PE#, die zu der BDF gehört, von der der DMA-Befehl empfangen wurde. Die PCT 316 gibt eine Vier-Bit-PE# 318A aus. Im Normalbetriebsmodus wird diese PE# 318A als PE# 318B durch die RDM-Schaltung 110 geleitet und der TVT für den Schritt 2 bereitgestellt, wie nachstehend beschrieben wird. In einem Testmodus ändert die RDM-Schaltung 110 die PE# 318B zufällig, wie nachstehend näher beschrieben wird.
  • Nochmals Bezug nehmend auf 3 verwendet der Schritt 2 des Prozesses zur Umsetzung von Adressen das PE#-318B-Signal für eine Indexierung in einer Umsetzungsprüfungstabelle (TVT) 320, um einen Umsetzungsprüfungseintrag (TVE) 322 zu finden. In diesem spezifischen Beispiel ist die TVT 320 eine Tabelle mit sechzehn Einträgen, mit einem Eintrag für jede PE#. Die Eingabe in die TVT ist das Vier-Bit-PE#-318B-Signal von der vorstehend beschriebenen RDM-Schaltung 110. Die Ausgabe der TVT 320 ist ein Umsetzungsprüfungseintrag (TVE) 322. Der TVE enthält einen Zeiger auf die Umsetzungssteuerungseintrag-(TCE-)Tabelle 330 (wobei TCE für „translation control entry“ steht), wie nachstehend beschrieben wird. In dem hierin beschriebenen Beispiel enthalten die Zeigerinformationen in der TVT 320 eine Umsetzungstabellenadresse (TTA, translation table address), eine Baumtiefe eines Umsetzungssteuerungseintrags (TCE), eine TCE-Tabellengröße und eine E/A-Seitengröße. Diese Felder des TVE 322 werden für eine Indexierung in der TCE-Tabelle verwendet, wie nachstehend näher beschrieben wird.
  • Der Schritt 2 des Prozesses fährt wie folgt fort. Ergebnisse der Decodierung des TVE 322 können „der TVE 322 ist ungültig“ oder „der TVE 322 ist gültig“ sein. Wenn der TVE 322 gültig ist, beinhalten die Zustände eine Angabe, ob die Umsetzung deaktiviert oder aktiviert ist und ob die DMA-Adresse außerhalb oder innerhalb des TCE-Tabellenbereichs liegt. Bits in dem TVE geben eine jede der vorstehenden Bedingungen an. Der TVE 322 wird an einen Prüfe-Adresse-Block 324 gesendet. Der TVE 322 wird von dem Prüfe-Adresse-Block 324 verwendet, um zu überprüfen, ob die DMA-Adresse innerhalb eines vordefinierten Bereiches liegt. Wenn die DMA-Adresse außerhalb dieses Bereichs liegt, schlägt die Umsetzungsoperation fehl. Wenn der Bereichstest erfolgreich verläuft, kann der TVE einen „Nicht Umsetzen“-Modus 326 angeben. In diesem Fall wird die DMA-Adresse als die Systemspeicheradresse verwendet. Wenn der „Umsetzen“-Modus angegeben wird, stellt der TVE die Basisadresse der TCE-Tabelle 330 bereit, die für den Schritt 3 des Umsetzungsprozesses verwendet wird. Der TVE gibt auch eine im Schritt 3 zu verwendende E/A-Seitengröße an.
  • Nochmals Bezug nehmend auf 3 erstellt der Schritt 3 des Prozesses der Adressumsetzung die reale Hauptspeicheradresse 314 aus Informationen, die er von der Umsetzungssteuerungseintrag-(TCE-)Tabelle 330 erhalten hat, wobei er die Basisadresse von dem TVE und die Bits 334 von der DMA-Adresse 312 verwendet. Die Bits 334 der DMA-Adresse 312, die verwendet werden, hängen von der E/A-Seitengröße ab. Die TCE-Tabelle 330 enthält einen Umsetzungssteuerungseintrag (TCE) für jede Umsetzung. Der TCE-Eintrag in der TCE-Tabelle 330 gibt die realen Seitennummernbits an, die die höherwertigen DMA-Adressbits beruhend auf der E/A-Seitengröße ersetzen, um die reale Hauptspeicheradresse 314 zu bilden. Der TCE-Tabelleneintrag gibt auch die Zugriffsarten (Lesen und/oder Schreiben) an, die für eine Adresse zulässig sind. Andere Umsetzungsmodusinformationen können ebenfalls in dem TCE gespeichert werden, wie nach dem Stand der Technik bekannt ist. Der ATS 216 enthält des Weiteren einen Cachespeicher mit TCEs 332 und führt eine Tabellensuchoperation durch, wenn ein Cachefehler auftritt.
  • In der Verwendung hierin handelt es sich bei Umsetzungsmodusinformationen um Informationen, die gespeichert und verwendet werden, um DMA-Adressen umzusetzen. In den veranschaulichten Beispielen gehören die Informationen in der TCE-Tabelle 300 und die Zeigerinformationen in der TVT 320 zu den Umsetzungsmodusinformationen, wie vorstehend beschrieben wurde. Es ist wünschenswert, alle Modi der DMA-Adressumsetzung während des Testens der LPU 120 (1) unter Verwendung der Umsetzungsmodusinformationen zu testen. Während eines Testmodus der LPU 120 (1) kann die TCE-Tabelle 330 mit Umsetzungsmodusinformationen geladen werden, um alle Modi der Adressumsetzung zu testen. Die RDM-Schaltung 110 ermöglicht das Testen von allen Modi für alle sechzehn Einträge der TVT 320, indem ein Eintrag der TVT zufällig ausgewählt wird, wie nachstehend näher beschrieben wird. Die TVT 320 stellt Zeiger für eine Indexierung in der TCE-Tabelle 330 bereit, wie vorstehend beschrieben wurde. Die Modusinformationen werden in einer nach dem Stand der Technik bekannten Weise von Software in die TCE-Tabelle 330 geladen, um die LPU 120 zu testen. Zum Beispiel kann die TCE-Tabelle 330 von einem Betriebssystem der CPU, einer Anwendung oder einer anderen Testsoftware geladen werden. Das Testen der Einheitenumsetzung kann dann durchgeführt werden, wenn eine einzelne mit der LPU verbundene GPU Zugriff auf den Hauptspeicher mit einer Adresse anfordert, die umgesetzt wird, wie hierin beschrieben wird. Verfahren zur Überprüfung der korrekten Umsetzung können auf eine geeignete Weise durchgeführt werden, wie nach dem Stand der Technik bekannt ist. Dazu könnten eine Chipfehlererkennung oder eine Testsoftwareerkennung gehören.
  • 4 ist ein vereinfachtes Blockschaubild einer Zufalls-DMA -Modus-(RDM-)Schaltung 110. Die RDM-Schaltung 110 gibt die PE# 318B für eine Indexierung in der TVT 320 aus, die zur Erstellung einer realen Adresse 314 verwendet wird, wie vorstehend beschrieben wurde. 4 zeigt eine Beispielschaltung, um diese Operation bereitzustellen. In diesem Beispiel verwendet die RDM-Schaltung 110 einen Multiplexer 410 mit einem Modusbit 412, um zwischen einem Normalbetriebsmodus und einem Testbetriebsmodus zu wählen. Im Normalbetriebsmodus wählt das Modusbit 412 des Multiplexers 410 die von der PCT 316 (3) bereitgestellte PE#-318A-Eingabe aus. In einem Testbetriebsmodus wählt das Modusbit 412 die Ausgabe eines Vier-Bit-Zufallssignalgenerators 414 aus. Wenn sich die Verbindungsverarbeitungseinheit in einem Testmodus befindet, wird das Modusbit 416 bestätigt, um die Eingabe von dem Vier-Bit-Zufallssignalgenerator 414 auszuwählen, um sie an den Ausgang des Multiplexers 410 zu legen, der als das Signal PE# 318A gezeigt ist. Die RDM-Schaltung 110 ermöglicht somit das Testen von allen Einträgen der TVT ungeachtet dessen, welche Busagenten mit der Verbindungsverarbeitungseinheit verbunden sind, wo die Eingabe in die TVT von dem Vier-Bit-Zufallssignalgenerator 414 bereitgestellt wird. Das Modusbit kann durch ein entsprechendes Mittel für den Testmodus gesetzt werden. Zum Beispiel kann das Modusbit 412 vom Basic Input/Output System (BIOS) während des Bootens der integrierten Schaltung gesetzt werden.
  • Unter Bezugnahme auf 5 zeigt ein Verfahren 500 ein geeignetes Beispiel für eine effiziente Belastungsprüfung von Adressumsetzungen in einer integrierten Schaltung wie beispielsweise einer Verbindungsverarbeitungseinheit. Das Verfahren 500 wird vorzugsweise von der LPU 120 in 1 und der in 4 gezeigten Zufallsmodusschaltung 110 sowie der in 1 gezeigten Testsoftware 118 durchgeführt. Lade zuerst eine Umsetzungstabelle mit Umsetzungseinträgen, die über Umsetzungsinformationen für alle Umsetzungsmodi für alle Agenten verfügen (Schritt 510). Verwende dann einen einzelnen Agenten (GPU), um alle Umsetzungseinträge zu testen, indem ein Eintrag der Umsetzungstabelle zufällig ausgewählt wird, während eine DMA-Umsetzung ungeachtet dessen, welche Agenten verbunden sind, getestet wird (Schritt 520). Das Verfahren ist dann abgeschlossen.
  • 6 zeigt ein geeignetes Beispiel eines Verfahrens zur zufälligen Auswahl von Umsetzungsarten für Test-DMA-Umsetzungen in einer integrierten Schaltung wie beispielsweise einer Verbindungsverarbeitungseinheit. Das Verfahren 600 zeigt somit geeignete Schritte zur Durchführung des Schritts 520 im Verfahren 500. Stelle zuerst ein zufälliges Signal an einem Eingang in einen Multiplexer bereit (Schritt 610). Wähle das aus dem Multiplexer auszugebende zufällige Signal unter Verwendung eines ausgewählten Eingangs des Multiplexers (Schritt 620) aus. Stelle das zufällige Signal von dem Multiplexer einer Umsetzungstabelle bereit, um während des Testens einen Eintrag der Umsetzungstabelle zufällig auszuwählen (Schritt 630). Das Verfahren ist dann abgeschlossen.
  • Die Offenbarung und die Ansprüche hierin beschreiben eine Schaltung und ein Verfahren für eine effiziente Belastungsprüfung von Adressumsetzungen in einer integrierten Schaltung mit einer Zufalls-DMA-Modus-(RDM-)Schaltung, die eine zufällige Eingabe für eine Indexierung in einer Umsetzungsprüfungstabelle bereitstellt. Die RDM-Schaltung ermöglicht das Testen aller Einträge der Umsetzungsprüfungstabelle und somit aller DMA-Modi, ungeachtet dessen, welche Busagenten verbunden sind, um die integrierte Schaltung effizienter zu testen.
  • Der Fachmann ist sich bewusst, dass viele Variationen innerhalb des Umfangs der Ansprüche möglich sind. Während die Offenbarung vorstehend im Einzelnen gezeigt und beschrieben wurde, versteht der Fachmann, dass diese und andere Änderungen an der Form und den Einzelheiten darin vorgenommen werden können, ohne vom Wesen und Umfang der Ansprüche abzuweichen.

Claims (20)

  1. Integrierte Schaltung, die aufweist: eine erste Umsetzungstabelle, die eine Vielzahl von Umsetzungseinträgen aufweist, wobei jeder der Vielzahl der Umsetzungseinträge Umsetzungsinformationen aufweist, um Direktspeicherzugriffs-(DMA-)Adressen für einen einer Vielzahl von mit der integrierten Schaltung verbundenen Agenten umzusetzen; und eine Zufalls-DMA-Modus-(RDM-)Schaltung, die einen Umsetzungssteuerungseintrag in der ersten Umsetzungstabelle während eines Testmodus zufällig auswählt, um die gesamte Vielzahl der Einträge in der Umsetzungssteuerungseintragstabelle auszuwählen.
  2. Integrierte Schaltung nach Anspruch 1, wobei die RDM-Schaltung aus der gesamten Umsetzung in der ersten Umsetzungstabelle eine zufällige Auswahl trifft, wenn nur ein einzelner Agent mit der integrierten Schaltung verbunden ist.
  3. Integrierte Schaltung nach Anspruch 1, wobei die RDM-Schaltung aufweist: ein Zufallsgeneratorsignal, das an einen angegebenen Eingang eines Multiplexers angeschlossen ist; einen ausgewählten Eingang des Multiplexers, das den angegebenen Eingang auswählt; und einen Ausgang des Multiplexers, der der Umsetzungstabelle während des Testmodus das Zufallsgeneratorsignal bereitstellt, um einen Eintrag der Umsetzungstabelle während des Testens zufällig auszuwählen.
  4. Integrierte Schaltung nach Anspruch 1, wobei die erste Umsetzungstabelle eine Umsetzungsprüfungstabelle ist, die Umsetzungsprüfungseinträge für jeden der Vielzahl von Agenten aufweist, die auf eine Umsetzungssteuerungseintragstabelle zeigen, und wobei die RDM-Schaltung einen Umsetzungsprüfungseintrag zufällig auswählt, der auf einen Umsetzungssteuerungseintrag in der Umsetzungssteuerungseintragstabelle zeigt.
  5. Integrierte Schaltung nach Anspruch 4, wobei die RDM den Umsetzungssteuerungseintrag zufällig auswählt, indem sie einen Umsetzungsprüfungseintrag zufällig auswählt.
  6. Integrierte Schaltung nach Anspruch 5, wobei die Informationen, DMA-Adressen in jedem Eintrag der ersten Umsetzungstabelle umzusetzen, eine Umsetzungstabellenadresse, eine Baumtiefe eines Umsetzungssteuerungseintrags, eine Größe einer Umsetzungssteuerungseintragstabelle und eine Eingabe-/Ausgabeseitengröße aufweisen.
  7. Integrierte Schaltung nach Anspruch 1, wobei die Agenten eine zentrale Verarbeitungseinheit und mindestens eine Grafikverarbeitungseinheit aufweisen.
  8. Integrierte Schaltung nach Anspruch 1, wobei die integrierte Schaltung Teil einer Verbindungsverarbeitungseinheit ist.
  9. Integrierte Schaltung nach Anspruch 8, wobei die Verbindungsverarbeitungseinheit als integrierte Schaltung mit einer zentralen Verarbeitungseinheit ausgeführt ist.
  10. Durch einen Computer ausgeführtes Verfahren zum Testen einer integrierten Schaltung, wobei das Verfahren aufweist: Laden einer ersten Umsetzungstabelle mit einer Vielzahl von Umsetzungseinträgen, wobei jeder der Vielzahl der Umsetzungseinträge Umsetzungsinformationen aufweist, um Direktspeicherzugriffs-(DMA-)Adressen für einen einer Vielzahl von mit der integrierten Schaltung verbundenen Agenten umzusetzen; und Verwenden eines einzelnen mit der integrierten Schaltung verbundenen Agenten in einem Testmodus, um alle Umsetzungseinträge in der Umsetzungstabelle zu testen, indem ein Eintrag der Tabelle mit Umsetzungsinformationen zufällig ausgewählt wird, um mehrere aufeinanderfolgende Tests der Adressumsetzung unter Verwendung des einzelnen Agenten durchzuführen.
  11. Verfahren nach Anspruch 10, das des Weiteren aufweist: Bereitstellen eines zufälligen Signals an einem Eingang eines Multiplexers; Auswählen des zufälligen Signals unter Verwendung eines ausgewählten Eingangs in den Multiplexer; und Bereitstellen des zufälligen Signals von dem Multiplexer für die Umsetzungstabelle, um während des Testmodus einen Eintrag der Umsetzungssteuerungseintragstabelle zufällig auszuwählen.
  12. Verfahren nach Anspruch 11, wobei das zufällige Signal eine Länge von vier Bit hat und die Umsetzungstabelle sechzehn Einträge enthält.
  13. Verfahren nach Anspruch 10, wobei die erste Umsetzungstabelle eine Umsetzungsprüfungstabelle (TVT) ist, die Umsetzungsprüfungseinträge für jeden der Vielzahl von Agenten enthält, die auf eine Umsetzungssteuerungseintragstabelle zeigen.
  14. Verfahren nach Anspruch 13, wobei die Umsetzungsprüfungseinträge eine Umsetzungstabellenadresse (TTA), eine Baumtiefe eines Umsetzungssteuerungseintrags, eine Größe einer Umsetzungssteuerungseintragstabelle und eine Eingabe-/Ausgabe-Seitengröße aufweisen.
  15. Verfahren nach Anspruch 10, wobei die Agenten eine zentrale Verarbeitungseinheit und mindestens eine Grafikverarbeitungseinheit aufweisen.
  16. Verfahren nach Anspruch 10, wobei das Verfahren als Teil einer Verbindungsverarbeitungseinheit auf einer integrierten Schaltung durchgeführt wird.
  17. Verfahren nach Anspruch 16, wobei die Verbindungsverarbeitungseinheit als integrierte Schaltung mit einer zentralen Verarbeitungseinheit ausgeführt ist.
  18. Durch einen Computer ausgeführtes Verfahren zum Testen einer Verbindungsverarbeitungseinheit auf einer integrierten Schaltung, wobei das Verfahren aufweist: Laden einer ersten Umsetzungstabelle mit einer Vielzahl von Umsetzungseinträgen, wobei jeder der Vielzahl der Umsetzungseinträge Umsetzungsinformationen aufweist, um Direktspeicherzugriffs-(DMA-)Adressen für einen einer Vielzahl von mit der integrierten Schaltung verbundenen Agenten umzusetzen, wobei die Agenten eine zentrale Verarbeitungseinheit und mindestens eine Grafikverarbeitungseinheit aufweisen; Verwenden eines einzelnen mit der integrierten Schaltung verbundenen Agenten in einem Testmodus, um alle Umsetzungseinträge in der Umsetzungstabelle zu testen, indem ein Eintrag der Tabelle mit Umsetzungsinformationen zufällig ausgewählt wird, um mehrere aufeinanderfolgende Tests der Adressumsetzung unter Verwendung des einzelnen Agenten durchzuführen; Bereitstellen eines zufälligen Signals an einem Eingang eines Multiplexers; Auswählen des zufälligen Signals unter Verwendung eines ausgewählten Eingangs in den Multiplexer; und Bereitstellen des zufälligen Signals von dem Multiplexer für die Umsetzungstabelle, um während des Testmodus einen Eintrag der Umsetzungssteuerungseintragstabelle zufällig auszuwählen.
  19. Verfahren nach Anspruch 18, wobei die Umsetzungstabelle eine Umsetzungsprüfungstabelle (TVT) ist, die Umsetzungsprüfungseinträge für jeden der Vielzahl von Agenten aufweist.
  20. Verfahren nach Anspruch 19, wobei die Informationen, DMA-Adressen für die Modi in jedem Eintrag der TVT umzusetzen, eine Umsetzungstabellenadresse (TTA), eine Baumtiefe eines Umsetzungssteuerungseintrags, eine Größe einer Umsetzungssteuerungseintragstabelle und eine Eingabe-/Ausgabeseitengröße aufweisen.
DE112018004144.1T 2017-08-12 2018-08-06 Effizientes testen einer direktspeicher-adressumsetzung Pending DE112018004144T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/675,717 US10169185B1 (en) 2017-08-12 2017-08-12 Efficient testing of direct memory address translation
US15/675,717 2017-08-12
PCT/IB2018/055908 WO2019034960A1 (en) 2017-08-12 2018-08-06 EFFECTIVE TEST OF DIRECT MEMORY ADDRESS TRANSLATION

Publications (1)

Publication Number Publication Date
DE112018004144T5 true DE112018004144T5 (de) 2020-04-23

Family

ID=64739683

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018004144.1T Pending DE112018004144T5 (de) 2017-08-12 2018-08-06 Effizientes testen einer direktspeicher-adressumsetzung

Country Status (6)

Country Link
US (4) US10169185B1 (de)
JP (1) JP7287947B2 (de)
CN (1) CN110945485B (de)
DE (1) DE112018004144T5 (de)
GB (1) GB2578412B (de)
WO (1) WO2019034960A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10169185B1 (en) * 2017-08-12 2019-01-01 International Business Machines Corporation Efficient testing of direct memory address translation
US11074194B2 (en) 2019-02-21 2021-07-27 International Business Machines Corporation Managing direct memory access

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2882426B2 (ja) * 1991-03-29 1999-04-12 株式会社アドバンテスト アドレス発生装置
US8843727B2 (en) * 2004-09-30 2014-09-23 Intel Corporation Performance enhancement of address translation using translation tables covering large address spaces
US7444493B2 (en) 2004-09-30 2008-10-28 Intel Corporation Address translation for input/output devices using hierarchical translation tables
US20060284876A1 (en) * 2005-06-15 2006-12-21 Low Yun S Method and apparatus for programming an input/output device over a serial bus
US20080168208A1 (en) * 2007-01-09 2008-07-10 International Business Machines Corporation I/O Adapter LPAR Isolation In A Hypertransport Environment With Assigned Memory Space Indexing a TVT Via Unit IDs
JP2010244165A (ja) * 2009-04-02 2010-10-28 Renesas Electronics Corp 半導体集積回路、及び半導体集積回路の制御方法
US8386747B2 (en) * 2009-06-11 2013-02-26 Freescale Semiconductor, Inc. Processor and method for dynamic and selective alteration of address translation
US20120036302A1 (en) 2010-08-04 2012-02-09 International Business Machines Corporation Determination of one or more partitionable endpoints affected by an i/o message
JP5782740B2 (ja) * 2011-02-21 2015-09-24 富士電機株式会社 スイッチング電源の制御用半導体装置
US8386679B2 (en) * 2011-04-12 2013-02-26 International Business Machines Corporation Dynamic allocation of a direct memory address window
US9378150B2 (en) * 2012-02-28 2016-06-28 Apple Inc. Memory management unit with prefetch ability
US9811472B2 (en) 2012-06-14 2017-11-07 International Business Machines Corporation Radix table translation of memory
US9600419B2 (en) 2012-10-08 2017-03-21 International Business Machines Corporation Selectable address translation mechanisms
US9792222B2 (en) 2014-06-27 2017-10-17 Intel Corporation Validating virtual address translation by virtual machine monitor utilizing address validation structure to validate tentative guest physical address and aborting based on flag in extended page table requiring an expected guest physical address in the address validation structure
US10026500B2 (en) * 2015-11-13 2018-07-17 International Business Machines Corporation Address translation stimuli generation for post-silicon functional validation
US10169185B1 (en) * 2017-08-12 2019-01-01 International Business Machines Corporation Efficient testing of direct memory address translation

Also Published As

Publication number Publication date
JP2020529683A (ja) 2020-10-08
US10169185B1 (en) 2019-01-01
US10481991B2 (en) 2019-11-19
CN110945485A (zh) 2020-03-31
US20190050314A1 (en) 2019-02-14
WO2019034960A1 (en) 2019-02-21
CN110945485B (zh) 2023-08-29
US10489261B2 (en) 2019-11-26
US20190050315A1 (en) 2019-02-14
GB202002808D0 (en) 2020-04-15
GB2578412A (en) 2020-05-06
JP7287947B2 (ja) 2023-06-06
US10169186B1 (en) 2019-01-01
GB2578412B (en) 2020-11-11

Similar Documents

Publication Publication Date Title
DE60003273T2 (de) Verfahren und Vorrichtung zur Erzeugung einer Eingabeadresse
DE4410060B4 (de) Übersetzungsvorrichtung zum Umsetzen einer virtuellen Speicheradresse in eine physikalische Speicheradresse
DE69724463T2 (de) Verfahren und gerät um einen gleichzeitigen zugriff von mehreren agenten auf einem gemeinsamen speicher zu gewährleisten
DE60008088T2 (de) Mehrprozessorsystem Prüfungsschaltung
DE69732181T2 (de) Verfahren und gerät zum zwischenspeichern von systemverwaltungsinformationen mit anderen informationen
DE102009049078B4 (de) Verwendung von Ausführer-Wissen über Speicherregion-Ordnungsanforderungen zum Modifizieren von Transaktionsattributen
DE102008059790A1 (de) Verfahren, Vorrichtung und Befehle zum Verarbeiten von Vektordaten
DE102013017509A1 (de) Effiziente Speichervirtualisierung in mehrsträngigen Verarbeitungseinheiten
DE102013205886A1 (de) Dynamische Bankmodus-Adressierung für Speicherzugriff
DE69634315T2 (de) Verfahren und Gerät zur Verwendung eines Ladebefehls der keinen Fehler verursacht
DE112005002420T5 (de) Verfahren und Vorrichtung zum Pushen von Daten in den Cache eines Prozessors
DE102013017511A1 (de) Effiziente speichervirtualisierung in mehrsträngigen verarbeitungseinheiten
DE60100848T2 (de) Virtuelles rom für geräte-aufzählung
DE10393727T5 (de) Prozessor-Cache-Speicher als RAM zur Ausführung von Boot-Code
DE1952158A1 (de) Speicherschutzverfahren und Einrichtung zur Durchfuehrung dieses Verfahrens
WO1994027222A1 (de) Verfahren zum umsetzen einer virtuellen speicheradresse mit einer ersten länge in eine realadresse mit einer zweiten länge
DE102013006396A1 (de) Eine grafikverarbeitungseinheit, in der eine standardverarbeitungseinheit verwendet ist, und ein verfahren zum aufbau einer grafikverarbeitungseinheit
DE102013018135B4 (de) Adressenbit-Wiederabbildungsschema zur Reduzierung einer Zugriffsauflösung von DRAM-Zugriffen
DE102019109357A1 (de) Selektive ausführung von cache-linien-ausräumoperationen
DE112018004144T5 (de) Effizientes testen einer direktspeicher-adressumsetzung
DE102016211986A1 (de) Cache-kohärentes System, das master-seitigen Filter umfasst und Datenverarbeitungssystem, das diesen umfasst
DE19714681A1 (de) Hauptspeichersteuergerät
DE112005003216T5 (de) System und Verfahren für Steuerregister, auf die über private Rechenoperationen zugegriffen wird
DE102022104024A1 (de) Techniken zum konfigurieren von parallelprozessoren für verschiedene anwendungsbereiche
DE102013100054A1 (de) Verlagern von zusammengehörigen Ressourcenpartitionen

Legal Events

Date Code Title Description
R012 Request for examination validly filed