O GoConqr está de visual novo! Conte para nós o que você achou.

Flashcards

3.5.2 Computersysteme II, Memory-Mapped IO

David Bratschke Informatik Alemão 24 flashcards

Flashcards do conjunto (24)

  1. 1Was kennzeichnet "Memory-Mapped IO"?Dabei werden die IO-Register in den allgemeinen Adressraum eingeblendet
  2. 2Was ist der Vorteil von "Memory-Mapped-IO"?Damit kann komfortabel auf Peripherie-Geräte zugegriffen werden.
    Diese sind somit über normale Speicherzugriffsinstruktionen
    (LOAD oder STORE) les- und beschreibbar
  3. 3Was ist bei Memory-Mapped-IO neben dem physikalischen Hauptspeicher noch im Adressraum vorzufinden?eine ganze Reihe von Registern und Speicherbereichen anderer Komponenten oder auch ungenutzte bzw. mit Spezialfunktionen belegte Bereiche.
  4. 4Muss bei virtueller Speicherverwaltung und Memory-Mapped-IO der gesamte Adressraum mit physikalischem Speicher hinterlegt sein?Nein
  5. 5Was passiert bei einem Zugriff auf einen Adressbereich, der nicht physikalisch mit Speicher oder andere Komponenten hinterlegt ist?Ein Zugriff darauf würde zu einer Ausnahmesituation (Exception) führen, die entsprechend behandelt werden muss
  6. 6Nenne ein Beispiel für die Probleme welche bei Memory-Mapped-IO mit der Zeit ersichtlich wurden.Die 3-GB-Barriere
    bei 32-Bit-Systemen
  7. 7Woraus resultierte die 3GB-Barriere bei 32-Bit-SystemenEs wurden oft höhere Speicherbereiche für Geräte und IO reserviert.
    Über die Zeit wurden immer größere physikalische Speicher möglich,
    nur dass dieser dann deshalb nicht unbedingt vollständig nutzbar war
  8. 8Welches Problem wird versucht, durch das sogenannte "Bitbanding" zu lösen?Ein einzelnes Bit auf einfache Art- und Weise
    im Speicher verändern zu können, ohne die Anderen Bits zu verändern
  9. 9Wo kommt das Setzen eines einzelnen Bits besonders häufig vor, so dass das dort "Bitbanding" besonders nützlich ist?Bei Konfigurationsregistern
    externer Komponenten
  10. 10Fasse die Funktionsweise von "Bitbanding" in einen einzelnen Satz zusammen.Dabei wird für jedes Bit eines bestimmten Speicherbereichs ein ganzes 32-Bit-Speicherwort zugeordnet, um dieses komfortabel setzen zu können
  11. 11Für welchen Speicherbereich wird "Bit-Banding" in der Regel verwendet?üblicherweise für den Speicherbereich, in dem Ein- und Ausgabekomponenten eingeblendet werden
  12. 12Was ist der sogenannte "Bit-Band"-Bereich ?Das ist der Speicherbereich, bei dem durch das Bit-Banding einzelne Bits, gesetzt oder nicht gesetzt werden können sollen
  13. 13Was ist das sogenannte "Bit-Band-Alias"-Bereich?Der Bereich im Speicher, auf den der Bit-Band-Bereich abgebildet wird. D.h. dort befinden sich die Speicherwörter, die einzelnen Bits aus dem Bit-Band-Bereich zugeordnet sind
  14. 14Ein wie großer Bitbandbereich wird bei einem 32-Bitsystem für einen Speicherbereich von 1 MB benötigt? Warum?Ein 32 MB-großer Bitband-Bereich
    Weil für jedem ursprünglichen Bit,
    32 Bits im Bit-Band-Alias-Bereich zugeordnet sind
  15. 15Welches Bit eines Speicherwortes im Bit-Band-Alias-Bereich ist das einzig entscheidende Bit für das Bitbanding zum Setzen oder Rücksetzen?Nur das jeweils unterste Bit des Speicherwortes
  16. 16Wieviel Speicher liegt beim ARM Cortex-M4 (32-Bit) zwischen dem Bit-Band-Bereich und dem zugehörigen Alias-Bereich?31 MB
  17. 17Wie lässt sich die Basis-Adresse des Bit-Band-Alias-Bereiches aus der Basis-Adresse des Bit-Band-Bereiches beim ARM-Cortex-M4 berechnen?Basisadresse Bit-Band-Bereich + 32 MB
    oder in hexadezimal:
    Basisadresse + 0x0200_0000
  18. 18Wie berechnet sich die Bit-Band-Alias-Adresse A für das n-te Bit (0-31) des Speicherwortes an der Adresse X ? (zwischen 0x2000_0000 und 0x200f_ffff)A =
    0x2200_0000 + (X - 0x2000_0000) · 32 + n·4
  19. 19Welches Speicherwort muss bei Verwendung von Bit-Banding geändert werden, um das zehnte Bit eines Bit-Band-Bereiches zu ändern?Das zehnte Speicherwort im Bit-Band-Alias-Bereich
  20. 20Was macht die folgende Assemblerzeile (ARM)? " .equ BB_IO_COMPONENT_BIT10 (0x42000000 + 0x20 * 32 + 10 * 4) " Wann erfolgt die Berechnung?Die Berechnung einer Bit-Band-Alias-Adresse,
    zur Zeit der Assemblierung
  21. 21Was machen die folgenden 3 Assemblerzeilen? ldr r2, = BB_IO_COMPONENT_BIT10 mov r4, #1 str r4, [r2] (BB_IO_COMPONENT_BIT10 enthält eine Bit-Band-Alias-Adresse)1) berechnete Alias-Adresse in Register r2 laden
    2) Hinterlegen der zu schreibenden Konstante in Register r4
    3) Schreibzugriff auf die Bit-Band-Alias-Adresse
  22. 22Wieviele Bitbandbereiche existieren z.B. beim ARM Cortex-M4? In welchen Bereichen befinden sich diese?Es existieren zwei Bit-Band-Bereiche mit jeweils 1MB Größe.
    Einmal im Datenbereich des SRAM
    und
    im Bereich der Peripherie-Bausteine
  23. 23Wie gliedern sich die ersten drei Adressbereiche des Adressraumes des ARM-Cortex-M4?1) Code (0x0000_0000 - 0x1fff_ffff, 512 MB)
    2) Daten (0x2000_0000-0x3fff_ffff, 512 MB)
    3) Peripherie (0x4000_0000-0x5fff_ffff, 512MB)
  24. 24Wie gliedern sich die letzten vier Adressbereiche des Adressraumes des ARM-Cortex-M4?1024 MB externer RAM
    1024 MB externe Geräte
    1 MB private Schnittstellen
    511 MB Herstellerspezifisch

Informações

Descrição
Informatik (Computersysteme II) FlashCards sobre 3.5.2 Computersysteme II, Memory-Mapped IO, criado por David Bratschke em 18-02-2018.
Criado por
David Bratschke
Visualizações
7
Avaliação

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?