Jens Voß - TU Dresden

Werbung
Zwischenvortag zur Studienarbeit
Implementierung von
Standarddatenstrukturen in VHDL
Jens Voß
Dresden, 01.12.2015
Gliederung
1.
2.
3.
4.
Einführung
Datenstrukturen
Aktueller Stand
Ausblick
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 2 von 23
Einführung
• Problemstellung und Motivation:
• für Softwareentwurf umfangreiche
Bibliotheken vorhanden
• im Hardwareentwurf ebenfalls Verwendung
von Standardkomponenten
• allerdings:
 oft sehr speziell angepasst
 oder sehr simpel
• Ergänzen des Angebots der PoC-Bibliothek
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 3 von 23
Einführung
• Aufgabenstellung:
1.
2.
3.
4.
01.12.2015
Literaturstudium zu Standarddatenstrukturen
Bewertung dieser Datenstrukturen
Implementierung in VHDL
Test und Bewertung
Studienarbeit – Jens Voß
Folie Nr. 4 von 23
Datenstrukturen
Stack:
•
•
•
eine der einfachsten Datenstrukturen
arbeitet nach dem LIFO-Prinzip
geplante Funktionen:


•
mögliche Implementierungen:


01.12.2015
push
pop
mit RAM und Stackpointer
als Schieberegister
Studienarbeit – Jens Voß
Folie Nr. 5 von 23
Datenstrukturen
Deque:
•
•
•
•
double ended Queue
beide Enden arbeiten als Stack
kann als FIFO benutzt werden
geplante Funktionen:


01.12.2015
pushA/pushB
popA/popB
Studienarbeit – Jens Voß
Folie Nr. 6 von 23
Datenstrukturen
Deque:
•
•
•
aus den push/pop Operationen lassen sich 9
Fälle ableiten
Überprüfung ob einfügen/löschen gültig
Anhaltspunkt: Differenz der beiden Zeiger

01.12.2015
4 mögliche Ergebnisse
Studienarbeit – Jens Voß
Folie Nr. 7 von 23
Datenstrukturen
Deque:
•
für voll/leer: B – A = 1

01.12.2015
Auswertung mittels Flags
Studienarbeit – Jens Voß
Folie Nr. 8 von 23
Datenstrukturen
Deque:
•
01.12.2015
beide dürfen schreiben/lesen: B – A ≥ 3
Studienarbeit – Jens Voß
Folie Nr. 9 von 23
Datenstrukturen
Deque:
•
01.12.2015
wer darf lesen: B – A = 2
Studienarbeit – Jens Voß
Folie Nr. 10 von 23
Datenstrukturen
Deque:
•
01.12.2015
wer darf schreiben: B – A = 0
Studienarbeit – Jens Voß
Folie Nr. 11 von 23
Datenstrukturen
FIFO mit Löschoption:
•
•
•
•
FIFO mit der Möglichkeit Elemente zu
löschen
beim Einfügen wird TAG ausgegeben
dient zur Identifikation
beim Löschen wird Element für ungültig
erklärt

01.12.2015
wird beim Lesen einfach übersprungen
Studienarbeit – Jens Voß
Folie Nr. 12 von 23
Datenstrukturen
Priority Queue:
•
•
•
•
01.12.2015
Elementen wird Priorität zugeordnet
Abarbeitung entsprechend der Prioritäten
kann als normale FIFO benutzt werden
grundlegende Datenstruktur: Heap
Studienarbeit – Jens Voß
Folie Nr. 13 von 23
Datenstrukturen
Heap:
•
•
balancierter bin. Baum
Heap-Eigenschaft:
𝑘𝑒𝑦 𝑖 ≥ 𝑘𝑒𝑦(𝑝𝑎𝑟𝑒𝑛𝑡 𝑖 )
•
vollständiger Baum

•
•
01.12.2015
von links einfügen
evtl. umsortieren
notwendig
kleinster Wert immer
oberster Wurzelknoten
Studienarbeit – Jens Voß
Folie Nr. 14 von 23
Datenstrukturen
Heap:
•
•
01.12.2015
einfach als Array
darstellbar
Positionen:
𝑖 −1
⌋
2

Wurzel: ⌊


linker Knoten: 2𝑖 + 1
rechter Knoten: 2𝑖 + 2
Studienarbeit – Jens Voß
Folie Nr. 15 von 23
Datenstrukturen
Priority Queue:
•
Komplexitäten:




01.12.2015
Einfügen: O(1)
Löschen: O(1)
Umsortieren: O(log(n))
Aufbauen des Heaps: O(n)
Studienarbeit – Jens Voß
Folie Nr. 16 von 23
Datenstrukturen
zurückgestellte Datenstrukturen:
•
•
•
•
01.12.2015
(doppelt) verkettete Liste
Map
Set
weitere Bäume
Studienarbeit – Jens Voß
Folie Nr. 17 von 23
Aktueller Stand
Literaturstudium:
• soweit abgeschlossen
Stack:
•
•
Implementierung abgeschlossen
erste Analyse der Syntheseergebnisse
Deque:
• Implementierung begonnen
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 18 von 23
Ausblick
TODO:
• Stack:
 ausführlichere Tests
 genauere Analyse der Ergebnisse
• restliche Datenstrukturen:
 Implementierungen abschließen
 Analyse der Ergebnisse
• Dokumentation und Ausarbeitung
vervollständigen
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 19 von 23
Quellenverzeichnis
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 20 von 23
Quellenverzeichnis
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 21 von 23
Quellenverzeichnis
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 22 von 23
01.12.2015
Studienarbeit – Jens Voß
Folie Nr. 23 von 23
Herunterladen