Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03299.jsonl.gz/278

SEm/labore/06 apb

APB Komponent
Einleitung
Dieses Labor zeigt die Erstellung eines APB Komponenten basierend auf der GRLib. Dieser Komponent wird gebraucht um Taster zu lesen und LEDs zu steuern.
Analyse des APB Busses
Schaltung
Die Analyse des APB-Busses basiert auf folgender Schaltung.
Das System wird durch die serielle Schnittstelle ahbuart gesteuert, welches ein Master des AMBA Busses ist. Damit kann auf die andere serielle Schnittstelle, apbuart, zugegriffen werden.
Initialisierung des Masters AHBUART
Initializierung des Komponenten APBUART
Übertragung mit Hilfe des Komponenten APBUART
Lesen des Status des dem Komponenten APBUART
Signale des APB Busses
Index und Adressen
Der Teil report_version erlaubt es, eine Mitteilung am Anfang der Simulation anzuzeigen. Der Code zwischen den Pragmas translate_off und translate_on wird vom Synthese-Tool ignoriert und nicht synthetisiert.
Erstellung des APB Komponenten
Der zu erstellende Komponent wird dazu dienen, auf der Testplatte Schalter zu lesen und LEDs zu steuern..
Registerplan
Der Komponent hat 2 Register:
- Das Register mit dem Zustand der Schalter bei Adresse 0x0
- Das Register mit dem Steuerwert der LEDs bei Adresse 0x4
Die LSBs von jedem Register geben den Zustand oder den Steuerwert der jeweiligen Ein- und Ausgänge (Schalter oder LEDs).
Schaltung
Der Komponent hat folgende generischen Parameter:
- pindex: seinen Index auf dem APB Bus
- paddr und pmask: die Parameter, welche bestimmen, bei welchen Bus-Adressen sich der Komponent befindet
- buttonnb: die Anzahl Schalter welche an den Komponenten angeschlossen sind
- lednb: die Anzahl LEDs welche vom Komponenten gesteuert werden
Simulation