CoboCards App FAQ & Wishes Feedback
Language: English Language
Sign up for free  Login

Get these flashcards, study & pass exams. For free! Even on iPhone/Android!

Enter your e-mail address and import flashcard set for free.  
Go!
All main topics / Informatik / Embedded Systems

Embedded Systems (37 Cards)

Say thanks
1
Cardlink
0
Was versteht man unter CISC?
Complex Instruction Set Computing
2
Cardlink
0
Was versteht man unter RISC?
Reduced Instruction Set Computing
3
Cardlink
0
Nennen Sie vir typische CISC Merkmale
Umfangreiche Maschinenbefehlssätze (>> 150)

Viele Adressierungsarten

Viele Befehlsformate

Komplexe Mikroprogrammsteuerwerke

Wenig Register
4
Cardlink
0
Nennen Sie vier typische RISC Merkmale
Kleine Maschinenbefehlssätze (< 150)

Wenig Adressierungsarten (<= 4)

Einheitliche Befehlsformate (<= 4, schnell dekodierbar)

Große, universelle Registersätze (>= 32)

Festverdrahtete Steuerwerke
5
Cardlink
0
Welchen Geschwindigkeitsvorteil bringt eine vierstufige Pipeline idealerweise?
4



6
Cardlink
0
Welche Konflikte können durch das in modernen Prozessorarchitekturen eingesetzte Pipelining entstehen?
Datenflusskonflikte
- Hervorgerufen durch verzögerten Speicherzugriff
- Hervorgerufen durch nicht verfügbare Ergebnisse vorhergehende Befehle

Steuerflusskonflikte
- Hervorgerufen durch Verzweigung (bedingt, unpedingt), Interrupt, UP-Aufruf / Rücksprung

Strukturkonflikte
- Entstehen wenn für die Ausführung von Befehlen notwendige Funktionseinheiten (noch) belegt sind. (Bsp.: Gleichzeitiges Lesen / Schreiben von Befehlen / Daten)
7
Cardlink
0
Was versteht man unter Out-Of-Order-Execution
Bezeichnet die Möglichkeit, Befehle in den Ausführungseinheiten eines (meist) superskalaren Prozessors außerhalb der Programmreihenfolge auszuführen, mit dem Ziel, die Pipelines möglichst gut auszulasten
8
Cardlink
0
Wie können Compiler Datenflusskonflikte beheben?
Pipeline Scheduling:

Compiler sortiert Befehlsreihenfolge so um, dass nach dem Speicherzugriffsbefehl ein davon unabhängiger Befehl ausgeführt wird

Nachteile:
- Code u.U. von der Rechnerarchitektur abhängig
- Evtl. Debugging Probleme
9
Cardlink
0
Welche Hardwaremaßnahmen sehen Prozessorhersteller vor um Steuerflusskonflikte zu vermeiden?
Pipeline Interlock, bis Verzweigungsziel bekannt

Static Branch Prediction
- Annahme: keine Verzweigung, nachfolgende Befehle immer ausführen und ggf. Verwerfen
- Annahme: Verzweigung, Befehle am Verzweigungsziel ausführen

Dynamic Branch Prediction
- Annahme: wiederholt auszuführende Verzweigung wird gleiches Ziel haben wie Zuletzt, Befehle ab Sprungziel spekulativ laden
- Implementierung: Prädikationstabelle für die letzten Verzweigungen (98% Trefferquote)
- Look-Ahead-Resolution: Auswertung der Sprungbedingung so früh wie möglich, nur ein Maschinenzyklus geht verloren
10
Cardlink
0
Wie unterscheiden sich VLIW-Architekturen von Superskalaren?
Superskalar: Mehrere Instruction-Pipelines, extrem hoher Verwaltungsaufwand

VLIW: Sieht in einem Wort mehrere Befehle die dann auf verschiedene Einheiten aufgeteilt werden
11
Cardlink
0
Was versteht man unter EPIC
Explicitly Parallel Instruction Computing

- Verbesserung von VLIW durch
  - Skalierbaren Befehlssatz
  - Prädikation
  - Spekulatives Laden
  - Software-Pipelining durch Register-Rotating
12
Cardlink
0
Nennen Sie drei unterschiedliche Multithreading-Konzepte
Cycle-By-Cycle Interleaved Multithreading (Fine Grain MT)
- In jedem Taktzyklus wird der Befehl eines anderen Threads ausgeführt

Block Interleaved Multithreading
- Immer nur ein Thread wird ausgeführt
- Muss der aktive Thread warten wird auf einen anderen gewartet

Simultaneous Multithreading
- Pro Taktzyklus werden mehrere Befehle aus unterschiedlichen Threads (superskalar) ausgeführt
13
Cardlink
0
Wie ist der gesamte Speicher der C16x Prozessoren unterteilt
Unterteilung in

255 Segmente
1 Segment ist 64kByte groß
1 Segment besteht aus 4 Pages
1 Page ist 16kByte groß
14
Cardlink
0
Welche Register wreden für den Zugriff auf Codebereiche eingesetzt
Die hinteren 8 Bit des CSP (Code Segment Pointers) verweisen auf eines der 255 möglichen Segmente (-> Segmentnummer)

Der 16 Bit IP (Instruction Pointer) adressiert innerhalb der 64kByte großen Segmente (-> Intra Segment Adresse)
15
Cardlink
0
Welche Register werden für den Zugriff auf Datenbereiche eingesetzt und wie erfolgt die Auswahl dieser Register?
Es gibt 4 Datapagepointer (DPP0 ... DPP3) die über die ersten 2 Bit adressiert werden und selbst über eine max. 10 Bit Page-Adresse verfügen. (Adressierung von 1024 Pages möglich)

Die hinteren 14 Bit der Adresse (Intra Page Adress) ergeben eine Adressierung innerhalb der 16 kByte Pages.
16
Cardlink
0
Wie erfolgt die Auswahl einer neuen Registerbank (GPR) und wo sind diese Register immer untergebracht?
Sind stets im 2kByte Internal-RAM angelegt.

Der Context-Pointer (CP) bestimmt die Lager der Registerbank unabhängig vom DPPx.

Durch Veränderung des CP Registers, kann eine neue Lage für eine Registerbank festgelegt werden. Durch SCTXT (Switch Context) Befehl wird die aktuelle Registerbank gesichert und auf eine andere verwiesen.
17
Cardlink
0
Durch welche Register wird der Systemstack verwaltet?
- Stack-Pointer (SP)
- Stack-Underflow (STKUN)
- Stack-Overflow (STKOV)
- Größe im SYSCON-Register (32, 64, 128, 256, 512, 1024 Words)

Stack wächst von oben nach unten!

Stack maximal 2Kbyte groß!
18
Cardlink
0
Zählen Sie die wichtigsten Statusflags im PSW auf
0: Negative Flag

1: Carry-Flag

2: Overflow-Flag

3: Zero-Flag

4: End-Of-Table-Flag

5: MULIP-Flag

6: User-Flag
19
Cardlink
0
Welches Segment im Adressraum der C16x Familie enthält die Register zu Steuerung der gesamten On-Chip-Peripherie?
Segment 0, Data-Page 3!
20
Cardlink
0
Wie heißen die Register zur Steuerung der OnChip Peripherie? Und wie können Sie angesprochen werden?
Special-Function-Register (SFR)

Ansprechbar über:

Isolated I/O:
- Auf Peripherie Register wird mit speziellen Befehlen (z.B. IOR, IOW) geschrieben / gelesen. Adressraum dieser Register damit vollkommen getrennt von dem des Hauptspeichers

Memory-Mapped I/O:
- Teil des Adressraums des Hauptspeichers reserviert für I/O Adressen. Der für den Hauptspeicher zur Verfügung stehende Adressraum reduziert sich um diese Größe.
- Keine speziellen Befehle zum Zugriff auf Ports nötig. Stattdessen normaler Speicher Lese-/Schreibebefehle.
21
Cardlink
0
Welche für den Programmierer wichtigen Komponenten sind im internen RAM-Bereich untergebracht?
System-Stack

GPR (General Purpose Register)

PEC-Pointer (Peripheral-Event-Controller)
22
Cardlink
0
Was versteht man unter XBUS
Interner Erweiterungsbus (eXtended BUS)

An den CPU Kern sind über 4 unterschiedliche Busse Peripherieeinheiten und Speicher angebunden. Bei dem C167 z.B. ein CAN-Controller und XRAM (2kByte eXtended RAM)
23
Cardlink
0
Nennen Sie ein Beispiel für einen durch die HW nicht gelösten Konflikt
Änderungen im ESFR werden erst im übernächsten Befehl wirksam. D.h. nach Änderung einen NOP durchführen.
24
Cardlink
0
Welche wichtigen Ausgaben führt der Assembler während des Übersetzungsvorgangs durch?
- Makros (@define )
- Steueranweisungen ($INCLUDE(), $PAGING, ...)
- Erzeugt aus C/C++ Programm ein ASM Programm

Ein Assembler ist ein Programm das aus Assemblerbefehlen Maschinenbefehle transformiert.
25
Cardlink
0
Weshalb arbeitet der Assembler und der Linker mit sog. Sections?
Vergabemöglichkeit fester/absoluter Adressen entsprechend der vorgegebenen Speicherverwaltung.

Aufbau einer Symboltabelle:
- Eintrag eines Symbol/Adress-Paares bei der Symboldefinition unter Verwendung eines Adresszählers für jede Sektion

26
Cardlink
0
Nennen Sie verschiedene Möglichkeiten (Konfigurationen) ein Programm zu debuggen
Simulator - Simuliert Target auf Host
+ Test von Algorithmen ohne Zielhardware
- Kein Echtzeitverhalten
- Nachbildung von I/Os nur bedingt möglich
- Unterschiedliche Busbreiten, Speicheranbindungen nicht testbar

Remote-Debugger: (Monitor, JTAG, BDM, ONCE)
> Monitorprogramm muss auf Zielsystem vorhanden sein (FLASH / RAM)
> Applikation wird in RAM geladen
> Monitorprogramm bedient Debuginterface

In-Circuit-Emulator
> Target µC wird ersetzt durch ICE-POD
> Vollständiger Zugriff auf Hardware und Software möglich
> Erweiterte TRACE-Funktionalität
> Sehr gut für Echtzeitapplikationen (teuer !)
27
Cardlink
0
Was versteht man unter eine ASM-Direktive?
Befehle um Speicher zu reservieren und initialisieren, Segmente zuzuweisen, Kontanten zu definieren...
28
Cardlink
0
Welche Aufgabe erfüllt die Direkte EXTERN
Kennzeichnung der extern definierten Symbole in dem Modul, in dem der Zugriff erfolgt.
29
Cardlink
0
Nennen Sie die für die ASM-Programmierung relevanten Sektionen (sections) und geben Sie deren Verwendungszweck an
CODE-Section: Code-Sektion (ROM), Zugriff über IP (64 kByte) und ggf. CSP

DATA-Section: Daten Sektion (ROM / RAM), Zugriff über DDPx (16kByte)

BIT-Section: Bit-Sektion (bitadressierbares USER-RAM) für Bitvariablen

Eine Section stellt einen zusammenhängenden Speicherbereich für Code und/oder Daten dar.
30
Cardlink
0
Welchen Wert repräsentiert der Operator $
Adresspegeloperator, Symbol für den aktuellen Wert des Adresszählers:

Liste DB 1, 2, 3, 4, 5
Laenge SET ($ - Liste)   ; Laenge enthält den Wert 5
31
Cardlink
0
Wie wird Speicher für ein Byte im RAM reserviert?
Daten-Sektionen mit DSB, DSW, DSDW werden vom Linker / Locater im RAM-Bereich gelegt. Diese Direktiven können auch in bitadressierbaren Sektionen verwendet werden

Daten           DS 20 ; 20 Byte im RAM, Startadresse Daten
DatenWords DSW 20   ; 20 Words im RAM
DatenDoubleWords DSDW  ; 20 Doublewords im RAM
32
Cardlink
0
Wie legt man einen nullterminierten String im Speicher ab?
Zeichenkette DB "NULL-Terminiert\0"
33
Cardlink
0
Geben Sie verschiedene Möglichkeiten an, um 4 Byte Speicher zu reservieren und jeweils mit FFH zu initialisieren
Daten DBFILL 4, FFH   ; (Anzahl, Wert)
Daten DB FFH, FFH, FFH, FFH
34
Cardlink
0
Welche Aufgaben hat der C-Präprozessor und wann wird er aktiv?
Wird vor dem Compiler / Assembler aktiv.

- Ersetzungskonstanten (#define)
- Makros
- Einbindung zusätzlicher Programmabschnitte
- Bedinge Übersetzung (#if ... #elif ... #endif)

35
Cardlink
0
Welche Adressierungsarten kennt der C167
Registeradressierung:
MOV R2, R7 ; kopiere Inhalt von R7 in R2

Direkte Adressierung
> Befehl enthält
Kurze Registeradresse (8 Bit) reg, bitaddr oder
Lange Speicheradresse (16 Bit) mem
> Um den Operanden direkt anzusprechen

Registerindirekte Adressierung

MOV R1, [R2]

Base-Offset-Adressierung
[Rw + #data16]  ; Rw: Basisadresse (variable)
                            ; #data16: Offset (fest)

MOV R1, [R2 + 0x1320]

Unmittelbare Adressierung
Wert des Operanden wird unmittelbar im Befehlswort angegeben, Kennzeichnung von Konstanten mittels Doppelkreuz (#)

MOV R1, #10
36
Cardlink
0
Können alle GP Register (R0 ... R15) über MOVB erreicht werden?
Nein, nur RL0, RH0 bis RL7, RH7
37
Cardlink
0
Sind GP-Register bitadressierbar?
Nur RL0, RH0 bis RL7, RH7
Flashcard set info:
Author: Defqon
Main topic: Informatik
Topic: Embedded Systems
Published: 13.05.2010
 
Card tags:
All cards (37)
no tags
Report abuse

Cancel
Email

Password

Login    

Forgot password?
Deutsch  English