Update workspace configuration and add new lecture notes for INKOM and REDIG

This commit is contained in:
fzzinchemical
2026-01-30 07:40:07 +01:00
parent 994664dd24
commit 14500efff4
24 changed files with 193 additions and 44 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -1,88 +0,0 @@
# Struktur
1. Organisatorisches
2. Wiederholung
# Wiederholung
1. Schaltwerk / Schaltnetz
1. Huffman-Normalform
2. Endliche Automaten
3. Impulsdiagramme
4. Mealy oder Moore Automaten
1. Mealy ohne Zustandsübergang
5. KV-Minimierung
6. Digitale Zustandskodierung
7. Struktur
1. Modellieren
1. LaTeX Vorlage für DIGIT wieder verwendbar?
2. Test Vorbereiten
3. Implementieren
4. Test durchführen
8. Einordnung der Qualitäts
# Aufgaben
## Model
Ausgänge:
$q1\_o$
$q0\_o$
Eingänge:
$v\_i$ wenn = 1 value +1
$v\_i$ wenn = 0 value -1
clk_i
$r\_i$ reset
2 Bit Wert (nach $11$ kommt $00$) erst impl.
ausgabefunktion fehlt
![[Nackenbruch.drawio.png]]
prüfung geg. forderung
## Tests
### synchron
- Hochzählen
- Runterzählen
- Überlauf / Unterlauf
### asynchron
- Reset
formuliert und nicht stichpunkte
# Implementierung
## Kodierung
startzustand fehlt
| Zustand | $k\_1,k\_0$ | |
| ------- | ----------- | --- |
| null | $00$ | |
| eins | $01$ | |
| zwei | $02$ | |
| drei | $03$ | |
Die Zustandskodierung erfolg gemäß binärer Rechnung.
## grobstruktur
## zustandspeicher__
## Zustandsübergangstabelle
dies ist hybrid und dements. falsch
| $r\_i$ | $clk\_i$ | $v\_i$ | $q\_1$ | $q\_0$ | $q\_1'$ | $q\_0'$ |
| ------ | -------- | ------ | ------ | ------ | ------- | ------- |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 0 | 1 | 0 | 1 | 0 |
| 0 | 0 | 0 | 1 | 1 | 1 | 1 |
| 0 | 0 | 1 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 0 | 1 | 1 |
| 0 | 0 | 1 | 1 | 1 | 1 | 1 |
| 0 | 1 | 0 | 0 | 0 | 1 | 1 |
| 0 | 1 | 0 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 0 | 0 | 0 | 1 |
| 0 | 1 | 1 | 0 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 1 | 1 | 0 | 0 |
| 1 | X | X | X | X | 0 | 0 |
| | | | | | | |

View File

@@ -1,22 +0,0 @@
# Pipelining vs Pfade über mehrere Taktzyklen
- Größerer Flächenverbrauch bei Pipelining als bei Pfade
- Höherer Durchsatz (Throughput) bei Pipelining
# Umgehen mit asynch Eingängen
Bei Fehlerhaften Signalen kann man 2 D-Latches vorsetzen, diese wirken wie Verstärker und runden auf bzw. ab
#todo Einarbeiten *timing constraints* in Vivado
# Einbinden vorgefertigter Bauteile
## IP-Cores
# Klausur
- 4 Aufgaben manche Aufgaben können in Unteraufgaben aufgeteilt sein
- 3/4 Stunde pro Aufgabe
- Aufgabe mit Prüfling, der getestet werden soll und von vordefiniertem Verhalten abweicht
- Timing Verhalten
- Automat
**Bestimmte Fehler und Warnungen sind nicht zulässig!**

View File

@@ -1,37 +0,0 @@
f# VHDL
Basis 3 Board oder Basis 2 Board
Vivado wird im Labor verwendet, installationsvorgaben sind in Aulis vorzufinden
In der Übung heute VHDL ausprobieren
folgende List ist nicht vollständig und repräsentiert nur das durch Herrn Bredereke präsentierte Projekt ()
## Typen
- character
- string
- integer
## Datenformate
`type <name> is (a, b, c);`
`type <name> is array();`
`type <name> is record ... end record;`
`constant <name>: <type> := <value>`
## Schnittstellen
```vhdl
entity <name> is
port();
end <name>;
```
## Objekte
``` vhdl
constant <name>: <type> := ();
```
## Zuweisung
```vhdl
constant <name>: integer := 0 --deklaration
<name> <= 1 --variabeländerung
```

View File

@@ -1,28 +0,0 @@
# Wiederholung VHDL basics
Signal verbindung zwischen FF oder auch zwischen Komponenten bzw. Elemente ist Kontextabhängig. Die Doc kann hier möglicherweise helfen.
- Record als Bündel von Leitungen
- Process ist eine Modellierung von Schaltteilen und ihrem Verhalten
In Vivado gibts einen Blockdesign Diagramm, dass die Grundstruktur nach der Kompilierung darstellt.
# Gemeinsamkeiten Endlicher Automat mit VHDL
| Endlicher Automat | VHDL |
| --------------------------- | ------------------ |
| Ausgabeschaltnetz | spezieller Process |
| ZÜ-Schaltnetz | spezieller Process |
| Eingabe und Ausgabealphabet | Port Konstrukt |
| sprechende Namen | sprechende Namen |
| Abstraktion | Abstraktion |
# Unterschiede Endlicher Automat mit VHDL
| Endlicher Automat | VHDL |
| ----------------- | ----------------------------------------------- |
| manueller Entwurf | Code Muster, Werkzeuge, automatisierter Entwurf |
| Startzustand | (Constant) Code Muster |
| Zustand | Signal |
| Zustandmenge | Aufzählungstyp |
| | Schleifen |
| | Datentypen |

View File

@@ -1,12 +0,0 @@
- Bei VHDL werden die Bitbreiten durch den kompiler optimiert, eine Definierung der Bitbreiten ist nicht immer die beste idee
- ## Basen
- Dezimal: 10#\<value>
- Dual: 2#\<value>
- Oktal: 8#\<value>
**Montag: 15.12 eventuell keine Vorlesung**
# Behandlung von Zeit in der Simulation
- mit `after` pausieren und kann genaue Zeiten für aktionen/reaktionen einstellen
- Delta verzögerung problematsisch
- Nadelimpulse können Zustandswechsel verursachen, daher präferenzieren wir synchrone Schaltungen
-

View File

@@ -1,20 +0,0 @@
Signale werden nach einer Prozessdurchführung erst aktualiesiert(?)
- Dies liegt anscheinend daran, dass VHDL ein execution model ist. Vorerst kommt ein simulationszyklus und anschließend ein executionszyklus
- Garantiert den gleichen code mit immer exakt der gleichen simulationszyklen mit dem gleichen Ergebnis
# Aufzählungstypen und wie der Compiler dabei funzt
Einstellung unter Settings für gewünschtes Verhalten: [fsm-extraction](https://docs.amd.com/r/en-US/ug901-vivado-synthesis/Auto-State-Encoding)
- onehot
- jede codierung erhält einen flipflop
- besonders schnell
iSATE: implicit State (impliziter Zustand)
# Translation steps
1. syntax checking
2. rtl analysis
3. synthesis
4. implementation
5. bitstream generation
# Diverses zu vivado
- Truth table enthält unsere Wahrheitstabelle für die ausgewählte entity
- Anschlusspad: für silizium wafers um ein teilbereich mit anderen componenten zu verbinden.

View File

@@ -1,25 +0,0 @@
# Design under Test (DUT)
Synonym mit *equipment under test* und *unit under test*.
# Testbenches mit separatem Test-Orakel
# Testbenches mit Kommando-Interpreter
# Bestimmen von sinnvollen Testzielen
# Erste Aufgabe Aufgabe 10
(war ihm wichtig)
Testbenches erkennen delayed werte nicht und gibt dementsprechend keinen Fehler aus obwohl dies gewünscht ist.
Wenn man ein Signal abgreift ist das Ergebnis nicht immer gleich den Erwartungen. Dafür gibt es mehrere Strategien:
#todo
# Zeitverhalten im Detail
Beim Schalten des D-FF soll die Taktflanke stabil sein, dafür gibt es die Vorbereitung- und die Nachbereitungszeit.
# Zusatz Laboraufgabe 6
Taschenrechner mit 7 Segmentanzeige
Es wird dafür Multiplexing verwendet und dementsprechend müssen schnell genug alle Anzeigen aktualisiert werden
- Modultest
- Modulzerlegung
- ein Modul wird uns vorgegeben, den Rest müssen wir erstellen
- Module sollen am besten eine Eigenschaft gut implementieren und einzelne Modultests schreiben

View File

@@ -1,3 +0,0 @@
1. tristate treiber kann zu glitches führen, sodass der reset kurz getätigt wurde
1. synchroner reset filtert aus nanosekundenimpulse
2. freigabeeingäge verwenden sichert einiges an kopfschmerzen