n Bit: 2ⁿ Zustände; Mod-N: kleinstes n mit 2ⁿ ≥ N; fout = fclk/N
Asynchronzähler
fmax = 1/(n·tpd)
Ring- und Johnson-Zähler
n und 2n Zustände
Methode
Gehe bei einer Schaltung von den Eingängen zum Ausgang vor, ein Gatter nach dem anderen, und schreibe den Wert an jede Leitung, oder schreibe ihren Ausdruck auf und fülle die Wahrheitstabelle aus.
Trage zum Vereinfachen die Einsen (und die Don’t-Cares als X) in ein Karnaugh-Diagramm mit Zeilen und Spalten im Gray-Code ein: 00, 01, 11, 10.
Decke die Einsen mit möglichst wenigen und möglichst großen Gruppen aus 1, 2, 4, 8 oder 16 Feldern ab, auch über den Rand hinweg; jede Gruppe ist ein Produktterm aus den Variablen, die konstant bleiben. Fasse für die POS-Form die Nullen zusammen.
Lies bei Flipflops und Zählern die Eingänge an jeder aktiven Taktflanke ab, schreibe den Zustand nach jeder Flanke auf und denke daran, dass ein n-Bit-Zähler nach 2ⁿ Zuständen überläuft.
Messdatenerfassung und Abtastung
Nyquist-Kriterium
fs > 2·fmax, fN = fs/2
Alias-Frequenz
fa = |f − k·fs|, k = round(f/fs)
Schrittweite
1 LSB = VFSR/2ᴺ
Quantisierungsfehler (Runden)
±½ LSB
ADC-Code bei Abschneiden
D = ⌊Vin/LSB⌋
Bits für eine Auflösung r
2ᴺ ≥ span/r
Ideales SQNR, Sinus mit Vollaussteuerung
SQNR = 6,02·N + 1,76 dB
Datenrate
Kanäle × fs × N bit/s
Gemultiplexter ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/Baudrate; 8N1 = 10 Bit pro Byte; Byte/s = Baudrate/Bits pro Frame
Baudraten-Teiler
baud = fclk/(16·D)
Methode
Schreibe auf, was gegeben ist: Abtastrate, Signalfrequenzen, Bitanzahl, Eingangsbereich, Baudrate.
Vergleiche bei Abtastaufgaben jede Frequenz mit fs/2; eine höhere Frequenz erscheint bei fa = |f − k·fs| mit dem nächstgelegenen Vielfachen von fs.
Bestimme bei Auflösungsaufgaben 1 LSB = VFSR/2ᴺ oder das kleinste N mit 2ᴺ ≥ Spanne/Auflösung.
Zähle bei Datenraten und UART-Verbindungen alles, was gesendet wird: Kanäle, Abtastwerte pro Sekunde, Bits oder ganze Bytes pro Abtastwert sowie Start-, Paritäts- und Stoppbits jedes Frames.
2Übungsaufgaben
1.ZahlensystemeMittel
Schreibe −80 als 8-Bit-Muster im Zweierkomplement. Lies das Muster als vorzeichenlose Binärzahl: Welchen Wert U hat es im Dezimalsystem?
N = −808 bit
U =
2.ZahlensystemeSchwer
Ein unkomprimiertes Bild hat 800 × 600 Pixel mit 32 Bits pro Pixel. Wie viel Speicher M braucht es in KiB (1 KiB = 1024 Bytes)?
In diesem Karnaugh-Diagramm hat genau eine 1 keine benachbarte 1, bleibt also in der minimalen SOP-Form eine Gruppe aus einem Feld (ein voller Minterm mit vier Literalen). Nachbarn über den Rand des Diagramms zählen mit. Klicke dieses Feld an.
Bestimme die minimale SOP-Form von F(A, B, C, D) = Σm(1, 5, 7, 8, 10, 11, 15) + d(3, 13), wobei d die Don’t-Care-Bedingungen kennzeichnet. Wie viele Produktterme N hat sie?
Eine Sinuswelle mit 2,4 kHz wird ohne Anti-Aliasing-Filter mit 4 kHz abgetastet. Bei welcher Frequenz fa erscheint sie in den Abtastwerten? Gib sie in Hz an.
f = 2,4 kHzfs = 4 kHz
fa = Hz
6.Messdatenerfassung und AbtastungSchwer
Ein Temperatursensor liefert 5 mV/°C (0 V bei 0 °C). Sein Signal wird 2-fach verstärkt und einem 8-Bit-ADC mit einem Bereich von 0 bis 3,3 V zugeführt (1 LSB = VFSR/2ᴺ). Bestimme die Temperaturänderung ΔTLSB, die einem LSB entspricht.
S = 5 mV/°CG = 2N = 8VFSR = 3,3 V
ΔTLSB = °C
3Lösungen
1.Zahlensysteme
Antwort: U = 176
Stellenwertsysteme: Jede Ziffer ist ihren Wert mal eine Potenz der Basis wert. Im Binärsystem sind die Stellen 1, 2, 4, 8, 16, … wert, im Hexadezimalsystem 1, 16, 256, …, wobei A–F für 10–15 stehen. Im 8-Bit-Zweierkomplement ist das linke Bit −128 statt +128 wert; so werden negative Zahlen gespeichert.
Invertieren und eins addieren
80 = 0101 0000
invertiert: 1010 1111
+1 → 1011 0000
Vorzeichenlos lesen
1011 0000₂ = 256 − 80 = 176
Antwort
U = 176
2.Zahlensysteme
Antwort: M = 1875 KiB
Stellenwertsysteme: Jede Ziffer ist ihren Wert mal eine Potenz der Basis wert. Im Binärsystem sind die Stellen 1, 2, 4, 8, 16, … wert, im Hexadezimalsystem 1, 16, 256, …, wobei A–F für 10–15 stehen. Im 8-Bit-Zweierkomplement ist das linke Bit −128 statt +128 wert; so werden negative Zahlen gespeichert.
Karnaugh-Diagramme: Die Felder sind im Gray-Code (00, 01, 11, 10) angeordnet, benachbarte Felder, auch die über den Rand hinweg, unterscheiden sich also in genau einer Variablen. Fasse die Einsen in Rechtecken aus 1, 2, 4, 8 oder 16 Feldern zusammen, so groß und so wenige wie möglich, bis jede 1 abgedeckt ist. Jede Gruppe ist ein Produktterm: die Variablen, die in ihr konstant bleiben. Eine Gruppe aus 2ᵏ Feldern verliert k Variablen. Don’t-Cares (X) dürfen genutzt werden, um Gruppen zu vergrößern, müssen aber nie abgedeckt werden. Fasst du stattdessen die Nullen zusammen, erhältst du die minimale POS-Form.
Nachbarn jeder 1
Eine 1 mit einer benachbarten 1 kann einer Gruppe aus zwei oder mehr Feldern angehören.
Karnaugh-Diagramme: Die Felder sind im Gray-Code (00, 01, 11, 10) angeordnet, benachbarte Felder, auch die über den Rand hinweg, unterscheiden sich also in genau einer Variablen. Fasse die Einsen in Rechtecken aus 1, 2, 4, 8 oder 16 Feldern zusammen, so groß und so wenige wie möglich, bis jede 1 abgedeckt ist. Jede Gruppe ist ein Produktterm: die Variablen, die in ihr konstant bleiben. Eine Gruppe aus 2ᵏ Feldern verliert k Variablen. Don’t-Cares (X) dürfen genutzt werden, um Gruppen zu vergrößern, müssen aber nie abgedeckt werden. Fasst du stattdessen die Nullen zusammen, erhältst du die minimale POS-Form.
Primimplikanten
Die größten Gruppen, die sich aus Einsen und X bilden lassen.
CD, BD, A′D, AB′D′, AB′C
Minimale Überdeckung
F = CD + A′D + AB′D′
N = 3
Antwort
N = 3
5.Messdatenerfassung und Abtastung
Antwort: fa = 1600 Hz
Abtastung: Ein ADC misst das Signal fs-mal pro Sekunde. Nach dem Nyquist-Shannon-Theorem wird eine Frequenz f nur dann korrekt erfasst, solange f < fs/2 gilt, der Nyquist-Frequenz (Faltungsfrequenz); die Abtastrate muss also größer sein als das Doppelte der höchsten Signalfrequenz. Eine höhere Frequenz geht nicht verloren: Sie erscheint als Alias bei fa = |f − k·fs|, wobei die ganze Zahl k das Ergebnis in den Bereich zwischen 0 und fs/2 bringt. Die Abtastwerte können beide nicht unterscheiden, daher muss ein analoges Anti-Aliasing-Filter vor dem ADC alles oberhalb von fs/2 entfernen.
Nyquist-Frequenz
fs/2 = 2 kHz < f = 2,4 kHz
Nächstes Vielfaches der Abtastrate
k = round(2400/4000) = 1
Alias-Frequenz
fa = |2400 − 1·4000| = 1600 Hz
Antwort
fa = 1600 Hz
Die gestrichelte Kurve in der Abbildung ist der Alias: Sie verläuft genau durch dieselben Abtastwerte.
6.Messdatenerfassung und Abtastung
Antwort: ΔTLSB = 1,289 °C
ADC-Auflösung: Ein N-Bit-Umsetzer teilt seinen Vollaussteuerbereich VFSR in 2ᴺ Codes, von 0 bis 2ᴺ − 1. Ein Schritt ist 1 LSB = VFSR/2ᴺ: die kleinste Änderung, die der Umsetzer anzeigen kann. Ein abschneidender ADC liefert den Code ⌊Vin/LSB⌋; ein rundender ADC liegt nie mehr als ½ LSB vom wahren Wert entfernt, das ist sein Quantisierungsfehler. Jedes zusätzliche Bit halbiert das LSB und erhöht das ideale Signal-Quantisierungsrausch-Verhältnis SQNR = 6,02·N + 1,76 dB für einen vollausgesteuerten Sinus um etwa 6 dB. Um eine Auflösung r über einer Spanne zu erreichen, wähle das kleinste N mit 2ᴺ ≥ Spanne/r.