MMIO ADDRESSING USING A TRANSLATION TABLE

A method for processing an instruction by a processor operationally connected to one or more buses comprises determining the instruction is to access an address of an address space. The address space maps a memory and comprises a range of MMIO addresses. The method determines the address being acces...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: BRADBURY, Jonathan, CRADDOCK, David, OTTE, Carsten, RAISCH, Christoph, KRAEMER, Marco
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A method for processing an instruction by a processor operationally connected to one or more buses comprises determining the instruction is to access an address of an address space. The address space maps a memory and comprises a range of MMIO addresses. The method determines the address being accessed is within the range of MMIO addresses and translates, based on determining that the address being accessed is within the range of MMIO addresses, the address being accessed using a translation table to a bus identifier identifying one of the buses and a bus address of a bus address space. The bus address space is assigned to the identified bus. The bus address resulting from the translation is assigned to a device accessible via the identified bus. Based on the instruction a request directed to the device is sent via the identified bus to the bus address resulting from the translation. L'invention concerne un procédé de traitement d'une instruction par un processeur connecté fonctionnellement à un ou plusieurs bus, consistant à déterminer que l'instruction doit accéder à une adresse d'un espace d'adresse. L'espace d'adresse mappe une mémoire et comprend une plage d'adresses MMIO. Le procédé détermine que l'adresse qui fait l'objet d'un accès est dans la plage d'adresses MMIO et traduit, sur la base de la détermination du fait que l'adresse qui fait l'objet d'un accès est dans la plage d'adresses MMIO, l'adresse faisant l'objet d'un accès à l'aide d'une table de traduction d'un identifiant de bus identifiant l'un des bus et une adresse de bus d'un espace d'adresses de bus. L'espace d'adresses de bus est attribué au bus identifié. L'adresse de bus résultant de la traduction est attribuée à un dispositif accessible par l'intermédiaire du bus identifié. Sur la base de l'instruction, une demande adressée au dispositif est envoyée par l'intermédiaire du bus identifié à l'adresse de bus obtenue à partir de la traduction.