Justus-Liebig-Universität Gießen II. Physikalisches Institut Heinrich-Buff-Ring 14 35394 Gießen Elektronik-Praktikum Digitalelektronik 4. April 2008 Inhaltsverzeichnis 0 Die Bauteile 0.1 Die Bauteile . . . . . . . . . . . . . . . . . . . . . . 0.1.1 Netzteil . . . . . . . . . . . . . . . . . . . . 0.1.2 Pulsgenerator . . . . . . . . . . . . . . . . . 0.1.3 Tastenfeld . . . . . . . . . . . . . . . . . . . 0.1.4 4-bit Schalter . . . . . . . . . . . . . . . . . 0.1.5 Comparatoren mit Hysterese . . . . . . . . 0.1.6 Timerbaustein (555) . . . . . . . . . . . . . 0.1.7 Monovibrator / MonoFlop (74123) . . . . . 0.1.8 FlipFlop (74267) . . . . . . . . . . . . . . . 0.1.9 2-fach NAND (74132) / 2-fach XOR (7486) 0.1.10 4-fach NAND (7420) / 4-fach NOR (7425) . 0.1.11 Counter (74590/7217) . . . . . . . . . . . . 0.1.12 8-bit Komparator . . . . . . . . . . . . . . . 0.1.13 12-bit DAC (DAC312) . . . . . . . . . . . . 0.1.14 Anzeigebaustein . . . . . . . . . . . . . . . 0.1.15 Relais . . . . . . . . . . . . . . . . . . . . . 0.1.16 Summierverstärker . . . . . . . . . . . . . . 0.1.17 3-bit Addierer (7483) . . . . . . . . . . . . . 0.1.18 Stromquelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 1 Versuch D-1: Übergang von Analog- zu Digitalelektronik 1.1 Informationsdarstellung . . . . . . . . . . . . . . . . . 1.2 Logikfamilien . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Pegel . . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 Schaltgeschwindigkeit . . . . . . . . . . . . . . 1.2.3 Stromverbrauch . . . . . . . . . . . . . . . . . . 1.2.4 Elektronische Realisierung . . . . . . . . . . . . 1.2.5 Ubergang analog-digital . . . . . . . . . . . . . 1.3 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Versuchsausarbeitung . . . . . . . . . . . . . . . . . . 1.5 notwendige Geräte und Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15 16 16 17 17 18 20 21 25 25 2 . . . . . . . . . . . . . . . . . . . 2 Versuch D-2: Digitale Darstellung 2.1 Lernziel . . . . . . . . . . . . . . . . 2.2 Digitaldarstellung . . . . . . . . . . . 2.2.1 Wahrheitstabelle . . . . . . . 2.2.2 Boole’sche Algebra . . . . . . 2.2.3 Schaltsymbole . . . . . . . . 2.2.4 Technische Realisierung . . . 2.2.5 Zahlendarstellung . . . . . . 2.2.6 Encoder . . . . . . . . . . . . 2.2.7 Decoder . . . . . . . . . . . . 2.2.8 Datenselektor, Multiplexer . 2.2.9 Codewandlung . . . . . . . . 2.3 Aufgaben . . . . . . . . . . . . . . . 2.4 Versuchsausarbeitung . . . . . . . . 2.5 notwendige Geräte und Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 27 27 27 27 29 29 31 31 32 33 33 36 37 38 3 Versuch D-3: Flip-Flop 3.1 Lernziel . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Flipflop . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 RS-FlipFlop, RS-FF . . . . . . . . . . . . . . 3.2.2 D-FlipFlop, D-FF (Latch, Zwischenspeicher) 3.2.3 MasterSlave-FlipFlop . . . . . . . . . . . . . 3.2.4 JK-FlipFlop . . . . . . . . . . . . . . . . . . . 3.3 Zähler, Counter . . . . . . . . . . . . . . . . . . . . . 3.3.1 asynchron, synchron . . . . . . . . . . . . . . 3.4 Schieberegister . . . . . . . . . . . . . . . . . . . . . 3.4.1 Parallel-Seriell-Wandlung . . . . . . . . . . . 3.4.2 FirstIn-FirstOut-Register, FIFO . . . . . . . 3.5 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Versuchsausarbeitung . . . . . . . . . . . . . . . . . 3.7 notwendige Geräte und Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 39 39 39 40 40 41 42 42 43 44 44 45 46 46 . . . . . . . 47 47 47 47 50 50 52 52 4 Versuch D-4: Digital-Analog-Wandlung 4.1 Lernziel . . . . . . . . . . . . . . . . 4.2 Analog-Digital-Conversion . . . . . . 4.2.1 Umwandlungsfehler . . . . . 4.2.2 Digital-Analog-Converter . . 4.3 Aufgaben . . . . . . . . . . . . . . . 4.4 Versuchsausarbeitung . . . . . . . . 4.5 notwendige Geräte und Baugruppen 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Versuch D-5: Analog-Digital-Wandlung 5.1 Lernziel . . . . . . . . . . . . . . . . 5.2 Fenster-Diskriminator . . . . . . . . 5.3 Flash ADC . . . . . . . . . . . . . . 5.4 Sample and Hold, S&H . . . . . . . 5.5 Aufgaben . . . . . . . . . . . . . . . 5.6 Versuchsausarbeitung . . . . . . . . 5.7 notwendige Geräte und Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 53 53 54 54 55 57 58 6 Versuch D-6: Rampenverfahren 6.1 Lernziel . . . . . . . . . . . . . . . . . . 6.2 ADC . . . . . . . . . . . . . . . . . . . . 6.2.1 Rampenverfahren (Slopetechnik) 6.2.2 Sukzessive Aproximation . . . . 6.2.3 Der Flashconverter . . . . . . . . 6.3 Abtast-Theorem, Aliasing . . . . . . . . 6.4 Aufgaben . . . . . . . . . . . . . . . . . 6.5 Versuchsausarbeitung . . . . . . . . . . 6.6 notwendige Geräte und Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 59 59 59 60 60 61 61 63 64 . . . . . . . 7 Wichtige Hinweise zur Auswertung 65 8 Literaturempfehlungen 66 4 0 Die Bauteile 0.1 Die Bauteile Dieser Teil dient zur kurzen Vorstellung der Bauteile die ihnen zur Verfügung stehen um die Schaltungen der Versuche zu realisieren. Die Beschreibungen sind daher nicht detailiert. Allgemein gilt, dass Verbindungen, die auf dem Baustein dargestellt sind, bereits auf der Platine vorhanden sind. 0.1.1 Netzteil Das Netzteil liefert die Spannungen -12V, 0V, +5V und +12V. Es ist beim Anschließen an die Platinen darauf zu achten, dass die Polarität nicht vertauscht wird. Außerdem muss darauf geachtet werden, dass die Kabel zum Aufbau der Schaltungen nicht in direkten Kontakte mit den Anschlüssen der Stromversorgung kommen. Dies kann die Zerstörung der Bauteile auf den Platinen zur Folge haben. 5 0.1.2 Pulsgenerator Der Pulsgenerator liefert vier verschiedene asymmetrische Rechtecksignale. 10µs mit 5ms Pause 5ms mit 5ms Pause 1µs mit 1ms Pause 1µs, 0,1ms Pause, 1µs und 5ms Pause Siehe dazu Abbildung 1.7 auf Seite 23. 0.1.3 Tastenfeld Mit dem Tastenfeld können 3 Signale mit dazugehörigen invertierten Signalen per Tastendruck geseuert werden. Die Tasten sind bereits entprellt um eindeutige Signale zu gewährleisten. 6 0.1.4 4-bit Schalter Durch durchschalten an den Zähltasten können die beiden Ausgänge BCD-Kodiert binär auf und abwärts durgeschaltet werden. Der mittlere Schalter schaltet den Anschluß zwischen den beiden BCD-Ausgängen auf H oder L. 0.1.5 Comparatoren mit Hysterese Bei Verwendung des Comparatorbausteins ist zu beachten, dass nur die Verbindungen die auf der Platine grafisch dargestellt sind existieren. Bei Verwendung des regelbaren Widerstands muß also die Verbindung erst in gewünschter Form hergestellt werden. 7 0.1.6 Timerbaustein (555) Unter Verwendung des Timer-IC 555 können verschiedene Schaltungen realisiert werden. Dazu sind einige Bauteile schon in die Platine integriert worden. Siehe dazu Versuch D-1 Teil 6 mit Abbildung 1.9 auf Seite 25.Es ist jedoch zu beachten, dass die Aufgedruckten Werte der Kondensatoren nicht immer den tatsächlich eingebauten entsprechen. Fragen Sie im Zweifelsfall den Assistenten. 0.1.7 Monovibrator / MonoFlop (74123) Zur korrekten Beschaltung des MonoFlop-Bausteins lesen Sie die Anleitung zu Versuch D-1. Der Kondensator und das Potentiometer sind bereits in den Baustein integriert. Beachten Sie, dass auf den Platinen die oberen Potentiometer einen anderen Widerstand besitzen, als die unteren. Damit können sie unterschiedliche Schaltzeiten realisieren. 8 0.1.8 FlipFlop (74267) Der FlipFlop Bausteim beinhaltet 4 FlipFlop Gatter. Zur komfortablen Realisierung der Schaltungen ist eine Leiterbahn im Kreis gelegt. Möchten sie diese verwenden, muss diese erst mit einem Signal versorgt werden. Als weitere Vereinfachung einiger Schaltungen sind zu jedem Gatter noch Inverter eingebaut. 0.1.9 2-fach NAND (74132) / 2-fach XOR (7486) Auf diesem Baustein stehen acht 2-fach NAND Gatter und acht 2-fach XOR zur Verfügung. 9 0.1.10 4-fach NAND (7420) / 4-fach NOR (7425) Auf diesem Baustein stehen vier 4-fach NAND Gatter und vier 4-fach NOR zur Verfügung. 0.1.11 Counter (74590/7217) Der Counterbaustein wird über den Count-Eingang gesteuert. Dies geschieht synchron Binär und sichtbar über die 7-Segmentanzeige. Über den Reset-Eingang kann der Zählerstand wieder auf Null gesetzt werden. Die Leiterverbindung links unten entscheidet, ob der Zähler transparent ist oder nicht. 10 0.1.12 8-bit Komparator Der 8-bit Komparator gibt über eine Widerstandskette und Operationsverstärker als Komparatoren ein AD-konvertiertes Signal in acht Stufen. 0.1.13 12-bit DAC (DAC312) Zur Wandlung von Digital zu Analog steht dieser 12-bit DAC als integrierter Baustein zu Verfügung. Beachten sie, dass die Pinbelegung der einzelnen Bausteine leicht variiert. 11 0.1.14 Anzeigebaustein Mit diesem Baustein können sie 5 binäre Zustände über LEDs direkt anzeigen lassen und zusätzlich ein 4-bit-Signal über einen bereits integrierten Konverter direkt auf einer 7-Segment-Anzeige ausgeben. 0.1.15 Relais Das Relais kann direkt angesteuert weden und liefert am Ausgang direkt zwei zueinander invertierte Signale. Bei Ansteuerung mit höheren Frequenzen entsteht ein lautes Schaltgeräusch, es besteht jedoch keine Gefahr das Bauteil dadurch zu beschädigen. 12 0.1.16 Summierverstärker Der Summierverstärker ist zum großen Teil fertig aufgebaut. Sie müssen nur die Gewünschten Widerstandswerte auswählen und einsetzen. 0.1.17 3-bit Addierer (7483) Dieser 3-bit Addierer dient zur Erweiterung des von ihnen aufzubauenden 1-bit Addierers. Er besitz alle notwendigen Ein- und Ausgänge und ist bereits intern verbunden. 13 0.1.18 Stromquelle Diese Stromquelle und den Schalter können sie über ein Eingangssignal steuern und direkt über eine Komparator verarbeiten. Diesen Baustein werden Sie zur Realisierung des ADC im Rampenverfahren (Versuch D-6) benötigen 14 1 Versuch D-1: Übergang von Analog- zu Digitalelektronik 1.1 Informationsdarstellung In der Digitaltechnik werden die Informationen auf die diskreten Werte der natürlichen Zahlen abgebildet. Zur Darstellung und Verarbeitung verwendet man zweckmäßig das Stellenwertsystem auf der Basis von 2 (Zweier-, Dual- oder Binärsystem). Die Stelle (digit) im Binärsystem bezeichnet man mit binary digit (bit), ein bit kann die beiden Werte 0 oder 1 annehmen. Zur physikalischen Realisierung eines bits können alle Größen herangezogen werden, die zwei unterscheidbare - den Werten 0 bzw. 1 zuordbare - Zustände annehmen können. In der Elektronik verwendet man meist einen positiven oder negativen, oder einen hohen oder niedrigen Spannungs- oder Strompegel, dem man die Werte High (H) oder Low (L) zuordnet. Mitte des 19.Jahrhunderts hat der englische Mathematiker George Boole eine Algebra entwickelt, die sich mit der Logik von Aussagen beschäftigt (Aussagelogik oder Boole’sche Algebra1 ). Da eine Aussage wahr oder falsch sein kann, verwendet die Boole’sche Algebra die Werte WAHR (TRUE, T) und FALSCH (FALSE, F) um den Wert einer Variablen zu beschreiben. Da der Wert eines bits (0 oder 1) den Zuständen einer physikalischen Baugruppe (L oder H) und auch den Werten (F oder T) der Aussagenlogik zugeordnet werden kann, ist die Boole’schen Algebra hervorragend geeignet, um digitale Schaltungen zu berechnen. Aus diesem Grund hat sich in der Digitaltechnik der Begriff LLogik-Schaltungenëingebürgert. Die Zuordnung der Werte aus den unterschiedlichen Bereichen ist willkürlich und muss vereinbart werden. Im Praktikum werden wir, wenn nicht anders angegeben, jeweils die positive Logik verwenden. phys. Boole’sche Größe bit Variable H 1 T L 0 F positive Logik 1 phys. Boole’sche Größe bit Variable H 0 F L 1 T negative Logik Näheres zur Boole’schen Algebra in Versuch 10 15 Abbildung 1.1: Inverter mit Pegel 1.2 Logikfamilien Bei der technischen Realisierung der Logikschaltungen müssen unterschiedliche Gesichtspunkte betrachtet werden. Wichtige Kriterien sind Schaltgeschwindigkeit, Stromverbrauch, Aufwand, Preis, Platzbedarf und vieles mehr. Die unterschiedlichen Verfahren bezeichnet man mit Logikfamilien. Eine einfache Realisierung eines Inverters erhält man mit einem Transistor in Emitterschaltung. Andere Funktionen lassen sich durch Parallel- und Reihenschaltung von Schaltern, z.B. aus Transistoren realisieren (siehe Abbildung 1.1). Mehr dazu in Versuch 10. 1.2.1 Pegel Die Werte H und L einer elektronischen Schaltung können einem Strom- oder Spannungsbereich, der von der Logikfamilie abhängig ist, zugeordnet werden. Um eine gewisse Störsicherheit zu erzielen, muss zwischen dem L- und dem H-Bereich (UL ; UH ) eine Lücke bleiben. In diesem Zwischenbereich ist derWert nicht bestimmt. Liegt am Eingang einer Schaltung ein Pegel aus diesem undefinierten Bereich an, so kann die Schaltung ihn als L oder H auffassen, oder sogar wild zwischen H und L schwingen. Daher sollte beim Wechsel von L nach H (bzw von H nach L) dieser Zwischenbereich möglichst schnell durchfahren werden. Da dies nicht immer zu garantieren ist, gibt es spezielle Schaltungen mit einer Hysterese (Schmitt-Trigger), die auch bei langsamen Durchfahren des verbotenen Bereichs noch korrekt arbeiten. Da der Ausgang einer Schaltung oft weitere Schaltkreise ansteuern muss, müssen die zulässigen Ausgangspegelbereiche innerhalb der zulässigen Eingangspegelbereiche bleiben. Die Differenz der Pegel zwischen Eingang und Ausgang ergibt den Störabstand (SH 16 Abbildung 1.2: Übertragungskennlinie eines Inverters und eines Schmitt-Triggers und SL ). Die Ansteuerung einer Folgeschaltung belastet den Ausgang des Schaltkreises. Die Anzahl der ansteuerbaren Schaltkreise ist daher begrenzt. Der Wert ”fan out” (Ausgangsfächer) gibt an, wieviele Schaltkreise mit einem ”fan in” (Eingangsfächer) von 1 angesteuert werden dürfen. 1.2.2 Schaltgeschwindigkeit Wird am Eingang eines Schaltkreises ein Pegelsprung von H nach L (bzw L nach H) angelegt, so folgt der Ausgang mit Verzögerung dem Eingang. Es vergeht eine Verzögerungszeit (Delaytime, tD : tV ; tS ) bis der Ausgang auf eine Eingangsänderung reagiert, danach beginnt der Ausgang auf den neuen Wert umzuschalten, den er nach der Übergangszeit (Transitiontime, tT : tF ; tA ) erreicht. Meistens wird in den Datenbüchern nur die Gesamtverzögerungszeit (Propagationdelaytime, tP ) angegeben. Meist sind die Schaltzeiten davon abhängig, ob der Übergang von L nach H (tP LH ) oder von H nach L (tP HL ) erfolgt (siehe Abbildung 1.3). Trotz hoher Schaltgeschwindigkeit sollten keine zu hohen Frequenzen entstehen. Hohe Frequenzanteile können leicht übersprechen oder reflektiert werden, und damit Störungen hervorrufen. 1.2.3 Stromverbrauch Der Leistungsbedarf einer Schaltung ist zwar für die Stromkosten verantwortlich, spielt jedoch unter anderen Gesichtspunkten eine weit wichtigere Rolle. Bei batteriebetriebenen Geräten ist ein geringer Stromverbrauch Voraussetzung für eine längere Betriebsdauer. Auch Batterie- und Netzgerätgröße und -gewicht hängen entscheidend vom Leistungsbedarf ab. Ein weiterer Gesichtspunkt ist die durch die Verlustleistung entstehende Wärme. Um die Baugruppen nicht zu überhitzen, müssen geeignete Maßnahmen zur Kühlung vorgenommen werden (Kühlkörper, Ventilatoren oder manchmal sogar Flüssigkeitskühlung). 17 Abbildung 1.3: Definition der Schaltzeiten Die Packungsdichte kann nicht beliebig erhöht werden, damit die Verlustleistung aus dem Schaltungsinneren abgeführt werden kann. Leistungsbedarf und Geschwindigkeit hängen leider eng zusammen. Um kurze Schaltzeiten zu erreichen, müssen immer vorhandene parasitäre Kapazitäten schnell umgeladen werden, was naturgemäß nur mit hohen Strömen möglich ist. 1.2.4 Elektronische Realisierung Hier soll nur ein kurzer Überblick über die heutigen technischen Verfahren gegeben werden. Für genauere Informationen verweisen wir auf die Fachliteratur2 . Zuerst betrachten wir eine diskret aufgebaute Schaltung (Inverter) mit einem bipolaren Transistor in Emitterschaltung (Schaltung oben). Es ergeben sich zwei Arbeitspunkte (A1 und A2), wobei besonders beim Umschalten von A1 nach A2 sehr viel Zeit verstreicht, da hier viele Ladungsträger aus der Basiszone abgeleitet werden müssen. Um hohe Geschwindigkeiten zu erzielen, muss möglichst der Sättigungsbereich gemieden und möglichst geringe Spannungshübe realisiert werden. RTL, Widerstand-Transistor-Logik DTL, Diode-Transistor-Logik Diese Schaltungen werden heute nicht mehr eingesetzt. TTL, Transistor-Transistor-Logik Diese Baugruppen bestehen aus einer Eingangsstufe mit Multiemitter-Transistoren, einer Spannungsstufe (Transistor in Emitterschaltung) sowie eine Gegentaktendstufe, die wegen der Ähnlichkeit der Schaltskizze mit einem indianischen Stammeszeichen oft als 2 z.B. Tietze-Schenck 18 Totempole bezeichnet wird. Um die Geschwindigkeit zu steigern setzt man SchottkyDioden (Metall- Halbleiter-Übergänge) zwischen Kollektor und Basis ein, um Sättigung der Transistoren vermeiden. Alle heutigen TTL-Schaltungen sind in Schottky-TTL ausgeführt. Im Praktikum werden wir meist diese Bausteine verwenden. ECL, Emitter-Coupled-Logik ECL wird häufig auch ungesättigte Logik genannt, weil sie noch stärker als SchottkyTTL eine Sättigung vermeidet. Hier besteht die Spannungsstufe aus einem Differenzverstärker. Der Betrieb einer ECL-Schaltung entspricht mehr einer Verstärkerschaltung als einem Schalterbetrieb. Die beiden Arbeitspunkte für L und H liegen dicht zusammen und sind weit weg von jeder Sättigung. Dadurch zeichnet sich die emittergekoppelte Logik durch hohe Schaltgeschwindigkeit (TP HL ≈ 200psec) aber leider auch durch hohe Verlustleitung und hohen Schaltungsaufwand aus. GaAs Für eine noch höhere Geschwindigkeit ersetzt man das Silizium-Grundmaterial durch GaAs (Gallium-Arsenid). GaAs zeichnet sich durch eine hohe Elektronenbeweglichkeit (kleine effektive Masse der Elektronen) aus. Dadurch erreichen GaAs-Schaltungen eine etwa 3fach höhere Schaltgeschwindigkeit. CMOS, Complementäre MOS Technologie In der CMOS-Technik werden MOS-Feldeffekttransistoren eingesetzt, wobei der Arbeitswiderstand durch einen weiteren complementären MOS-FET ersetzt wird. Da MOS-Fets ohne Strom angesteuert werden können, kommen MOS-Schaltungen fast ohne Stromverbrauch aus. Jedoch müssen beim Umschalten von H nach L (bzw. von L nach H) parasitäre Kapazitäten umgeladen werden. Daher ist der Energiebedarf einer CMOSSchaltung proportional zur Schaltfrequenz. mechanische Schalter, Relais Die Ausgänge von mechanisch betätigten Kontakten bieten eine Reihe von Vorteilen. Dazu gehören: geringer Durchlasswiderstand, hoher Sperrwiderstand, gute Trennung zum Ansteuerkreis, Schalten von hohen Spannungen, hohen Strömen und Wechselspannungen ist möglich. Doch sind die Einsatzmöglichkeiten durch erhebliche Nachteile stark begrenzt: geringe Schaltgeschwindigkeit, Baugröße und Preis. Will man trotzdem mechanische Baugruppen einsetzen, muss man beachten, dass durch das elastische Berühren der Kontakt flächen der Kontakt mehrfach wieder unterbrochen werden kann (Kontaktprellen), wodurch aus einem einfachen Übergang von H↔L ein mehrfacher Übergang entstehen kann. 19 Abbildung 1.4: Oszillator mit Schmitt-Trigger-NAND Einige Pegel In der folgenden Tabelle sind die zulässigen Pegel für einige Familien zusammengestellt. Familie TTL [V] ECL [V] CMOS [V] NIM [mA] an 50kΩ [mV] Eingang 0 1 < 0, 8 > 2, 0 −1, 5 · · · − 1, 1 −0, 8 · · · 0, 0 < 1, 5 > 3, 5 −36 · · · − 12 −4 · · · 20 −1800 · · · − 600 −200 · · · 1000 Ausgang 0 1 < 0, 8 > 2, 4 −1, 9 · · · − 1, 6 −1, 0 · · · − 0, 8 < 0, 5 > 4, 5 −18 · · · − 14 −1 · · · 1 −900 · · · − 700 −50 · · · + 50 1.2.5 Ubergang analog-digital Comparator Ein Comparator vergleicht zwei analoge Eingangswerte E1 und E2 und gibt bei E1 < E2 am Ausgang ein H aus und bei E1 > E2 ein L. Ein Comparator kann einfach realisiert werden, wenn E1 und E2 auf den E− bzw. E+ -Eingang eines Opamps gelegt wird. In der Nähe des Übergangs (E1 = E2 ) könnte jedoch durch kleinste Störungen (z.B. Rauschen) der Ausgang zwischen H und L hin- und herschalten oder sich ein unerlaubter Zwischenwert einstellen. Eine Mitkopplung bewirkt ein definiertes Umschalten zwischen H und L. Außerdem entsteht durch die Mitkopplung eine Hysterese Hy. Die Hysterese verschiebt die Schaltschwellen. Der Übergang von L nach H erfolgt nun bei E1 > E2 + Hy 2 und der Hy Übergang von H nach L bei E1 < E2 − 2 . Eine einfache Lösung für einen Oszillator ergibt sich mit einem NAND oder Inverter mit Schmitt-Trigger-Eingang. Die Funktionsweise ist in Tietze-Schenk beschrieben. Der Ausgang steuert über ein RC-Tiefpass den Schmitt-Trigger-Eingang, der dadurch zwischen den beiden Schaltschwellen pendelt. Bei unseren Low-Power-Schottky-TTL sind Widerstände zwischen 200Ω und 800Ω günstig. Als Schwingungsdauer ergibt sich für nicht zu hohe Frequenzen ca. R · C. 20 Logik + + + − − Multivibratoren Eine noch stärkere Mitkopplung erreicht man, indem zwei Inverterstufen im Kreis hintereinandergeschaltet werden. Je nach Art der Kopplung ergeben sich drei Typen von Multivibratoren. Bei einer rein statischen Kopplung erhält man den bistabilen Multivibrator (FlipFlop,FF)3 . Bei einer dynamischen Mitkopplung (RC-Kombination) erhält man einen Oszillator (astabiler Multivibrator) der mit der von R·C abhängigen Frequenz zwischen H und L hin und her schaltet. Eine solche Baugruppe ist als integrierter Baustein erhältlich (Timerbaustein, z.B. NE555) In diesem Versuch soll der monostabile Multivibrator (Monoflop, Univibrator) behandelt werden. Der Monoflop enthält eine statische Mitkopplung und eine über eine RCKombination. In dem Schaltbild erkennt man die beiden Inverter (Transistor in Emitterschaltung) mit den Koppelelementen. Der Monoflop besitzt einen Ruhezustand, aus dem er herausgeworfen werden kann und in den er nach Ablauf einer durch R · C gegebenen Zeit wieder zurückfällt. Auch der Monoflop ist als integrierte Baugruppe (z.B. 74123) erhältlich. Der Punkt P3 ist der Ausgang der Schaltung und wird auch mit Q bezeichnet. Abbildung 1.5: diskret aufgebauter Monovibrator 1.3 Aufgaben 1. Einsatz eines Opamps als Comparators 3 Das FF wird in Versuch 11 behandelt 21 Abbildung 1.6: Opamp als Comparator mit Mitkopplung a) Einstellen von Schwellen in 5 Grobstufen mit dem Potentiometer und Messen der Eingangsspannungungen am Schaltpunkt des Comparators (ohne Mitkopplung) mit Hilfe des Dreiecksignals aus dem Funktionsgenerator. b) Messen der Schaltgeschwindigkeit (Anstiegs- und Abfallzeit, Verzögerung) bei einer mittleren Schwelle des Comparators (ohne Mitkopplung). c) Einbau der Mitkopplung (ca. 50kΩ) und Messen der Hysterese bei einer mittleren Stufe. 2. Aufbau eines diskreten Monoflops mit RC ≈ 1msec. Verwenden Sie hierzu die Bauteile aus dem Analogteil. 3. Wählen Sie R und C passend aus (z.B. R = 100kΩ). 4. Ansteuern des Eingangs mit den Signalen nach Diagramm aus dem 4-fach Pulsgenerator oder einer geeigneten Rechteckspannung unter Verwendung eines Funktionsgenerator. Messen Sie den Spannungsverlauf an den Messpunkten Eingang, P1 , P2 und P3 (Ausgang) und stellen Sie die Ergebnisse in einem Diagramm dar. Achten Sie bei allen Diagrammen auf synchrone Darstellung. Triggern Sie dabei das Oszilloskop mit Signal P2 . Der Zeitmaßstab darf fließend sein, achten Sie jedoch auf synchrone Darstellung. 22 Abbildung 1.7: Signale des Pulsgenerator 5. Einsatz des integrierten Monoflops (74123) und Messen des Ausgangs abhängig von den möglichen Eingangszuständen an A, B und CLEAR. (offene Eingänge liegen auf H). Häufig enthält ein TTL-Baustein (wie auch der 74123) zusätzlich zum Ausgang Q noch den komplementären Ausgang Q. Skizzieren Sie in einem Diagramm Ausgang und Eingänge für A ↓ L L B H ↑ H Clear H H ↑ bei Ausgangspulsdauer größer und kleiner Eingangspulsdauer t bei Ausgangspulsdauer größer und kleiner Eingangspulsdauer u bei Ausgangspulsdauer größer und kleiner Eingangspulsdauer u Steuern Sie dazu mit dem Signal b des Pulsgebers oder einem Funktionsgenerator das Monoflop an und betrachten Sie den Ausgang des Monovibrators 2 oder 4 (bis ca. 12msec) für entsprechend lange bzw. kurze Ausgangspulsdauern. Beschreiben Sie den Unterschied zwischen den Eingängen A, B und dem Clear-Eingang! Der Baustein 74123 (siehe Abbildung 1.8)enthält zwei identische Monoflops mit je zwei Ausgängen Q bzw. Q. Die Ausgangspulsdauer wird durch R und C (RC-Zeit) festgelegt. Ein Ausgangsimpuls wird nur durch ganz bestimmte Eingangskombinationen ausgelöst, die in der Tabelle beschrieben sind. Dabei bedeutet ein ↑ ein Übergang von L nach H und ein ↓ ein Übergang von H nach L. Auch die Schaltsymbole der Eingangsverknüpfung werden im Versuch 10 erläutert. 23 Abbildung 1.8: Monovibrator 74123 6. Aufbau eines Oszillators mit dem Timerbaustein 555 In der Schaltung des Timerbausteins erkennt man in der Mitte die beiden im Kreis geschalteten Inverter des bistabilen Multivibrators. Sein Zustand wird von den Komparatoren am Eingang gesteuert. Der Ausgang wiederum kann über den Treibertransistor auf verschieden Arten die Komparatoren ansteuern, und so verschiedenste Funktionen realisieren. Oben sind die Beschaltungen für nachtriggerbaren und nicht nachtriggerbaren Monoflop (Univibrator), sowie einem Multivibrator (Oszillator) eingezeichnet. Siehe dazu Abbildung 1.9.Im Praktikum soll der Baustein als Oszillator beschaltet werden. a) Bauen Sie mit dem Timer einen Oszillator! b) Schätzen Sie aus der RC-Zeit grob den Wert von Potentiometer P ab! c) Bestimmen Sie mit dem Oszilloskop die Schwellen der beiden Komparatoren! 7. Aufbau eines Oszillators mit dem Schmitt-Trigger-NAND für ca. 1MHz. Ein gutes Ausgangssignal bekommen Sie, wenn Sie direkt hinter den Oszillator noch ein weiteres NAND-Gatter anschließen. Bauelemente mit großem Raster können diagonal eingebaut werden. Wählen Sie R und C passend. Messen Sie bei 2.2nF; 10nF; 100nF und 1µF für R≈500Ω das Verhältnis R·C zu Periodendauer! 24 Abbildung 1.9: Timerbaustein 555 1.4 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. Führen Sie dem Assistenten Ihre Lösung vor ! 1.5 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Baugruppen Comparator Analog Platine (für Transistoren, Widerstände, Kondensatoren) 4-fach Pulsgenerator 2-fach Monovibrator Timerbaustein Schmitt-Trigger-NAND Die Auflistung der Geräte und Baugruppen ist bei allen Versuchen als Vorschlag zu verstehen. Sie können selbstverständlich auch leicht abweichende Lösungsansätze verfolgen um die gestellten Aufgaben zu erfüllen. Zum Beispiel ist es oft sinnvoll den Pulsgenerator durch einen Funktionsgenerator zu ersetzen. Bei Abweichenden Schaltungen 25 sprechen Sie bitte mit dem Assistenten um Missverständnisse zu vermeiden. 26 2 Versuch D-2: Digitale Darstellung 2.1 Lernziel Darstellung in der digitalen Elektronik Wahrheitstabelle, logische Gleichungen (Boole’sche Algebra), Schaltsymbole digitale Grundschaltungen Inverter, UND, ODER, XOR, Encoder, Decoder Zahlendarstellungen Binär, BCD, Gray-Code, ZweierComplement Anwendungen Addierer, Subtrahierer, Siebensegment-Anzeige 2.2 Digitaldarstellung Die Funktion einer Digitalschaltung lässt sich tabellarisch, in Form von logischen Gleichungen oder mit Hilfe von Schaltsymbolen beschreiben. 2.2.1 Wahrheitstabelle In der Wahrheitstabelle sind die Ausgänge als Funktion der Eingänge eingetragen. Hat eine Schaltung N Eingänge und M Ausgänge, so benutzt man auf der linken Seite der Tabelle N Spalten für die Eingänge und rechts M Spalten für die Ausgänge. Da jeder der Eingänge zwei mögliche Werte annehmen kann, ergeben sich 2N Kombinationen. Für jede der Eingangskombinationen wird eine Reihe der Tabelle verwendet, in der die zugehörigen Ausgangswerte eingetragen sind. Die Tabelle kann häufig verkürzt werden, wenn sich Ausgangskombinationen wiederholen. Dazu verwendet man die Symbole ”x” (don’t care) oder ”sonst”. Beispiele dafür sind in diesem Versuch aufgeführt. Bei dynamischen Schaltungen müssen gegebenenfalls am Eingang noch Kombinationen mit dem Übergang von H nach L (bzw. von L nach H) eingetragen werden. Dies wurde bereits im Versuch 9 verwendet. 2.2.2 Boole’sche Algebra Zur Beschreibung von Digitalschaltungen mit den zwei möglichen Werten H und L ist die Boole’sche Algebra mit den zwei Werten T und F (wahr und falsch) hervorragend geeignet. Hier gibt es die Funktionen NICHT (NOT), UND (AND) und ODER (OR). 27 Die Funktion NICHT negiert eine Aussage, sie wird durch einen Querstrich über der Variablen, bzw. einem Punkt im Schaltsymbol angezeigt. Die UND-Funktion liefert ein WAHR, wenn alle Eingangsaussagen WAHR sind. Sie wird durch das Symbol · oder durch die Symbole ”UND” oder ”AND” angezeigt. Die ODER-Funktion liefert ein WAHR, wenn wenigstens eine der Eingangsaussagen WAHR ist. Sie wird durch das Symbol + oder durch die Symbole ÖDERöder ÖRängezeigt. Teilweise werden auch andere Symbole verwendet, die aber nicht so verbreitet sind. Betrachtet man zwei Eingangsvariable, so gibt es 22 = 4 Kombinationen und daher maximal 24 = 16 Funktionen. Von Bedeutung sind außer den drei genannten (NOT, AND und OR) noch das ”EXKLUSIV ODER” (XOR, Symbol ⊕) sowie das AND, OR und XOR mit einem nachgeschalteten Inverter (NAND, NOR, XNOR). In der folgenden Wahrheitstabelle sind diese Funktionen eingetragen: A F F T T NOT A T T F F B F T F T AND A·B F F F T NAND A·B T T T F OR A+B F T T T NOR A+B T F F F XOR A⊕B F T T F NXOR A⊕B T F F T Mit dem XOR lassen sich zwei Aussagen vergleichen. Das Ergebnis von XOR sagt, ob zwei Aussagen verschieden sind (Antivalenz) bzw. das XNOR, ob zwei Aussagen gleich sind (Äquivalenz). Die Tabellen lassen sich etwas verkürzen bzw. umschreiben: A x x B F T A·B F A A x x B F T A+B A T A x x B F T A⊕B A A Jetzt erkennt man, dass man mit einem UND oder einem ODER eine Information durch schalten oder sperren kann, daher auch der Name ”Tor” oder ”Gatter” (Gate) für diese Verknüpfungen. Besonders interessant ist das XOR. Mit dem XOR steht ein steuerbarer Inverter zur Verfügung. Eine weitere Vereinfachung der Wahrheitstabelle liefert: A B T T sonst A·B T F A B F F sonst A+B F T Hier erkennt man, dass UND und ODER sehr ähnlich sind. Durch Inverter lässt sich ein UND in ein ODER (und umgekehrt) verwandeln. Allein die Zuordnung der physikalischen Werte L und H zu den logischen Variablen T und F entscheidet, ob ein und dieselbe Schaltung eine UND oder eine ODER-Verknüpfung ausführt. Mathematisch wird dies 28 durch die Gesetze von De Morgan beschrieben. In der Boole’schen Algebra gelten folgende Gesetze. Wegen der De Morgan’schen GeDe Morgan’sche Gesetze A·B =A+B A+B =A·B setze ergibt sich das Prinzip der Dualität: Jedes Gesetz führt bei Vertauschen von UND⇔ODER und T⇔F zu einer gültigen Aussage Kommutativgesetz Assoziativgesetz Distributivgesetz A·B =B·A A+B =B+A (A · B) · C = A · (B · C) = A · B · C (A + B) + C = A + (B + C) = A + B + C A · (B + C) = (A · B) + (A · C) A + (B · C) = (A + B) · (A + C) Absorptionsgesetz Tautologie Gesetz mit Negation doppelte Negation Operationen mit T und F A · (A + B) = A A·A=A A·A=F A=A A·T=A A·F=F F=T A + (A · B) = A A+A=A A+A=T A+T=T A+F=A T=F 2.2.3 Schaltsymbole In elektronischen Schaltplänen werden Schaltsymbole zur Darstellung der Baugruppen verwendet. Siehe dazu Abbildung ??. Leider sind eine Vielzahl unterschiedlicher Symbole im Einsatz. Im Praktikum wollen wir uns auf eine Variante beschränken. Diese sind unten angegeben. Das Symbol der Inverterfunktion kann bisweilen auf einen dicken Punkt reduziert werden. 2.2.4 Technische Realisierung Alle Verknüpfungen lassen sich mit Hilfe von NOR-Gattern oder mit NAND-Gattern realisieren. Dabei kann die NICHT-Funktion (Inverter) durch einen Transistor in Emitterschaltung ausgeführt werden. Die UND- und ODER-Funktionen ergeben sich durch Reihen- oder Parallelschalten von Schaltern, in TTL mit bipolaren Multiemittertransistoren. Über jeden der Emitter können Ladungsträger in die Basiszone injiziert werden und damit den Transistor leitend machen. 29 Name Funktion AND Und Y =A∧B Y =A·B Y = AB OR Oder Y =A∨B Y =A+B NOT Nicht Y =A Y = ¬A NAND Nicht-Und Y =A∧B Y = A∧B Y = AB NOR Nicht-Oder Y =A∨B Y = A∨B Y =A+B XOR Exclusiv-Oder Y = A∨B Y =A⊕B XNOR NichtExclusiv-Oder Y = A∨B Y = A∨B Y =A⊕B Symbol (IEC 60617-12) Symbol (US-Norm) Tabelle 2.1: Logikgatter und Schaltsymbole 30 Symbol (DIN 40700) 2.2.5 Zahlendarstellung In der Rechnertechnik, hat sich das Binärsystem durchgesetzt. Im Octal- bzw. Hexadezimalsystem werden lediglich die bits des Binärsystems in Dreier- bzw. Vierergruppen zusammengefasst. Für negative Zahlen ist die Zweierkomplement-Darstellung (Two’s Complement) vorteilhaft. Bei der Multiplikation mit -1 werden alle bits invertiert und anschließend eine 1 addiert. −A = A + 1 In der Digitaltechnik wird gerne auch das BCD-System verwendet (binary coded decimal, Binärkodierte Dezimalzahlen). Hierbei bleiben die Stellen des Dezimalsystems erhalten, lediglich die einzelnen Ziffern werden jeweils im Binärcode dargestellt. Beide Codes haben den Nachteil, dass sich zwei benachbarte Werte (z.B. 7 und 8) in mehreren bits unterscheiden. Das kann zur Folge haben, dass beim Übergang nicht alle bits gleichzeitig umschalten und dadurch Werte entstehen, die weit entfernt von dem tatsächlichen Wert liegen. Um dies zu verhindern verwendet man besser Codes, bei denen sich zwei Nachbarwerte nur in einem bit unterscheiden. Ein solcher Code ist z.B. der Graycode. 2.2.6 Encoder Ein Encoder ordnet einem Element Ei einen Code zu. Die Wahrheitstabelle (siehe Tabelle 2.2) enthält auf der Eingangsseite die Elemente Ei , wobei jeweils nur ein Element aktiv ist (alle Werte außer in der Diagonalen sind L). Als Ausgangscode wurde der Binärcode gewählt, so dass zu jedem Ei am Ausgang der Binärcode für den Index i entsteht. Der als IC lieferbare Prioritäts-Encoder erlaubt beliebige Eingangswerte rechts von der Diagonalen (siehe Tabelle 2.3). Die Schaltung des Encoders ergibt sich aus der Wahrheitstabelle: E7 L L L L L L L H E6 L L L L L L H L E5 L L L L L H L L E4 L L L L H L L L E3 L L L H L L L L E2 L L H L L L L L E1 L H L L L L L L E0 H L L L L L L L A2 L L L L H H H H A1 L L H H L L H H A0 L H L H L H L H Tabelle 2.2: Encoder A0 = E 1 + E 3 + E 5 + E 7 A1 = E 2 + E 3 + E 6 + E 7 A2 = E 4 + E 5 + E 6 + E 7 Während beim Encoder nur spezielle Eingangscodes erlaubt sind, dürfen beim PriorityEncoder beliebige Eingangs-Bitkombinationen angelegt werden. Hier bestimmt nur das höchstwertigste H den Ausgangscode. 31 E7 L L L L L L L H E6 L L L L L L H x E5 L L L L L H x x E4 L L L L H x x x E3 L L L H x x x x E2 L L H x x x x x E1 L H x x x x x x E0 H x x x x x x x A2 L L L L H H H H A1 L L H H L L H H A0 L H L H L H L H Tabelle 2.3: Priority-Encoder Abbildung 2.1: Encoder 2.2.7 Decoder Ein Decoder muss einen Code entschlüsseln. Die Wahrheitstabelle entspricht daher einem Encoder mit Eingang und Ausgang vertauscht (Siehe Tabelle 2.4). Auch hier lässt sich die Schaltung aus den logischen Gleichungen entnehmen. Dabei E2 L L L L H H H H E1 L L H H L L H H E0 L H L H L H L H A7 L L L L L L L H A6 L L L L L L H L A5 L L L L L H L L A4 L L L L H L L L A3 L L L H L L L L A2 L L H L L L L L A1 L H L L L L L L A0 H L L L L L L L Tabelle 2.4: Decoder muss jede Zeile der Wahrheitstabelle durch UND-Funktionen von den übrigen Zeilen unterschieden werden. Dazu werden die Eingänge E0 − E2 mit UND verknüpft und vorher die, die L sein müssen negiert. A0 = E0 · E1 · E2 A1 = E0 · E1 · E2 A2 = E0 · E1 · E2 A3 = E0 · E1 · E2 A4 = E0 · E1 · E2 A5 = E0 · E1 · E2 A6 = E0 · E1 · E2 A7 = E0 · E1 · E2 32 Abbildung 2.2: Decoder 2.2.8 Datenselektor, Multiplexer Mit einem Gatter kann man Informationen sperren und durchlassen. So ist es möglich, Informationsverteiler-Schaltungen aufzubauen. Es gibt dabei zwei Möglichkeiten, entweder werden aus einer Mehrzahl von Eingangsquellen eine ausgewählt und diese zum Ausgang geschaltet. Dies bezeichnet man mit Datenselektor oder Multiplexer. Die zweite Möglichkeit ist die, einen von mehreren Ausgängen auszuwählen und eine Eingangsinformation auf den ausgewählten durchzuleiten. Diesen Typ bezeichnet man mit Demultiplexer. Im Prinzip ist der Dekoder bereits ein Demultiplexer, wenn in die Ausgangs-UND-Gatter die zu verteilende Information eingespeist wird. Beim Datenselektor laufen die Eingangsinformationen durch Tore, von denen nur ein einziges - von einem Dekoder ausgewählt - die Information durchlässt. 2.2.9 Codewandlung Jeder beliebige Code kann in einen anderen verwandelt werden, indem zuerst der Eingangscode entschlüsselt und anschließend wieder neu codiert wird. Zeilen, in denen kein H am Ausgang vorkommt, müssen nicht decodiert werden. Enthält eine Wahrheitstabelle am Ausgang nur wenige L, so kann vorteilhaft auf negative Logik ausgewichen werden. Zusätzlich kann durch Umformen und Zusammenfassen der Schaltungsaufwand reduziert werden. Mögliche Verfahren des Umcodierens werden bei der Siebensegmentanzeige und beim Addierer vorgeführt. Siebensegmentanzeige Mit einer Siebensegmentanzeige lässt sich der Wert Hexadezimalstelle (0,1,· · ·,9,A,B,C,D,E und F) optisch darstellen, indem passend zur Form der Ziffer einzelne der Segmente a· · ·g hellgesteuert werden. Die Wahrheitstabelle zeigt die Zuordnung: Aus der Wahrheitstabelle ergeben sich die logischen Gleichungen. Z.B. für a: 33 Abbildung 2.3: Ansteuerung der Siebensegmentanzeige Wert 0 1 2 3 4 5 6 7 8 9 A B C D E F 23 D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 22 C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 21 B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 20 A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 a an aus an an aus an an an an an an aus aus aus an an b an an an an an aus aus an an an an aus aus an aus aus c an an aus an an an an an an an an an aus an aus aus d an aus an an aus an an aus an an aus an an an an aus e an aus an aus aus aus an aus an aus an an an an an an f an aus aus aus an an an aus an an an an aus aus an an g aus aus an an an an an aus an an an an an an an an a= A·B·C ·D+A·B·C ·D+A·B·C ·D+A·B·C ·D +A · B · C · D + A · B · C · D + A · B · C · D + A · B · C · D +A · B · C · D + A · B · C · D + A · B · C · D Häufig lassen sich die Gleichungen vereinfachen. So lassen sich gemeinsame Ausdrücke entnehmen. Z.B. f ∗ aus f und g und mehrere Zeilen zusammenfassen (Zeile 4,5; Zeilen 8 bis B und Zeile E,F): f∗ = B · C · D + A · B · C · D + C · D + B · C · D f = f∗ + A · B · C · D g = f∗ + A · B · C · D + B · C · D falls nur wenige Zeilen ein FALSE enthalten, kann man auch vorteilhaft die negative Logik einsetzen (z.B. für c): c=A·B·C ·D+A·B·C ·D+B·C ·D 34 Addierer Zum Addieren zweier Binärzahlen A + B + Cy (Cy = 0 oder 1) A = · · · + A3 · 2 3 + A2 · 2 2 + A1 · 2 + A0 und B = · · · + B3 · 23 + B2 · 22 + B1 · 2 + B0 werden die bits Ai , Bi addiert und ein eventuell auftretender Übertrag (Carry) aus der niederwertigeren Stelle addiert. Die Wahrheitstabelle für jede Stelle enthält daher zwei bits Ai , Bi und ein Carry Ci . Daraus ergibt sich die Summe Si sowie ein Übertrag Üi in die nächste Stelle. Betrachtet man den Tabellenteil mit Ci = 0, so erkennt man, dass Üi = Ai ∗ Bi und Ci 0 0 0 0 1 1 1 1 Ai 0 0 1 1 0 0 1 1 Bi 0 1 0 1 0 1 0 1 Üi 0 0 0 1 0 1 1 1 Si 0 1 1 0 1 0 0 1 Si = Ai ⊕ Bi ist. Diesen Teil bezeichnet man auch mit Halbaddierer und kann mit einem AND und einem XOR realisiert werden. Die Ergebnisse des Halbaddierers bezeichnet man auch mit Propagate (Pi = Üi ) und Generate (Gi = Si ). Si im unteren Teil der Tabelle ist gerade das Complement des oberen Teils, dafür benötigt man ein zusätzliches XOR: Pi = Ai · Bi Gi = Ai ⊕ Bi Üi = Pi + Ci · Gi Si = Ci ⊕ Gi Carry-Lookahead-Generator Das Addieren großer Binärzahlen kann durch Parallelschalten mehrerer Volladdierer erreicht werden. Dabei muss der Übertrag jeweils in den Carry-Eingang der nächst höherwertigen Stelle eingefüttert werden. Dadurch können unvertretbar hohe Laufzeiten entstehen. Um dies zu verhindern, werden mit Halbaddierern schnell die Pi und Gi bestimmt und daraus in einem Carry-Lookahead-Generator die einzelnen Überträge Ci ohne wesentlichen Zeitverlust getrennt bestimmt. Siehe dazu auch Tietze Schenk. 35 Subtrahierer Durch die Two’s Complement Darstellung negativer Zahlen kann die Subtraktion A − B auf die Addition A − B = A + (−B) = A + B + 1 zurückgeführt werden. Berücksichtigt man noch ein Borrow (Bo, Borgen) aus einer vorhergehenden Stelle, so kann ein Addierer mit Carry-Eingang (Cy) einfach eingesetzt werden. A − B − B0 = A + (−B − B0 ) = A + B + 1 − B0 = A + B + B0 2.3 Aufgaben 1. Vorbereitende Fragen: a) Skizzieren Sie die Schaltung für einen vierfach Demultiplexer der die Funktion für Aufgabe 2 Erfüllt. b) Berechnen Sie die logischen Gleichungen für die Ausgänge b, d und e der Siebensegmentanzeige. Suchen Sie eine vereinfachte Lösung für einen der Ausgänge b, d oder e und skizzieren Sie die Schaltung Ihrer Lösung. c) Geben Sie den Binärcode für +9 und -9 im Two’s Complement an. Wieviele bits werden dafür mindestens benötigt? d) Berechnen Sie die maximale Rechenzeit für eine 64-bit Addition bei einer Gatterlaufzeit von 2nsec, wenn 64 1bit-Volladdierer hintereinander geschaltet werden. 2. Bauen Sie einen Demultiplexer auf, mit dem Sie entweder das linke oder das rechte Ziffernschaltfeld (Stellungen 0 bis 9; 4 bits) auf dem Anzeigebaustein sichtbar machen können. Zur Auswahl des Feldes benutzen Sie den mittleren Schalter. Die Aufgabe lässt sich mit 12 NAND-Gattern (siehe auch Morgan’sche Gesetze) und einem Inverter lösen (offene Eingänge sind hier H). 36 Abbildung 2.4: Demultiplexer - C liefert A oder B abhängig vom Schalter 3. Entwickeln Sie die Schaltung eines 4-bit-Volladdierers. Ein 1-bit-Volladdierer soll mit 3 NAND- und 2 XOR-Gattern aufgebaut werden, die weiteren 3-bit-Addierer sind bereits in einem Baustein enthalten und können mitbenutzt werden. 4. Erweitern Sie den Addierer zu einem Subtrahierer mit Borrow (Borgen). 5. Bauen Sie einen kleinen ”Taschenrechner” auf, der zwei 4bit-Zahlen addieren und subtrahieren kann. Eingabe der Argumente mit zwei Schaltfeldern. Eingabe der Rechenart (+/–) mit einem Umschalter. Anzeige des Ergebnisses mit einer Siebensegmentanzeige (0. . . 9;A. . . F) Anzeige des Übertrags (5. Bit) mit LED. Skizzieren Sie Ihre Schaltung und beschreiben Sie - jeweils für Addition und Subtraktion - welche Bedeutung das in Ihre Schaltung eingefütterte Carry und der aus Ihrer Schaltung entstehende Übertrag hat! 2.4 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. Führen Sie dem Assistenten Ihre Lösung vor ! 37 2.5 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Baugruppen 3-bit-Volladdierer 2-fach-NAND; 2-fach-XOR 4-fach-NAND; 4-fach-NOR Anzeigebaustein Schaltfeld 38 3 Versuch D-3: Flip-Flop 3.1 Lernziel Bistabiler Multivibrator (FlipFlop, FF) RS-FF, D-FF, MasterSlave-FF, JK-FF Zähler Binärzähler, Dezimalzähler, asynchron - synchron, Vorwärts- Rückwärtszähler Schieberegister Parallel - Seriell, FIFO 3.2 Flipflop Das FlipFlop besteht aus zwei Invertern, die im Kreis geschaltetet sind. Meist werden sie über Kreuz gezeichnet. Dadurch entsteht eine Baugruppe mit zwei Ausgängen Q und Q. Das FF kann zwei stabile Zustände annehmen. Die Art der Ansteuerschaltung entscheidet, wie die beiden Zustände eingestellt werden. 3.2.1 RS-FlipFlop, RS-FF Beim RS-FF erweitert man die Inverter zu NOR-Gattern und bezeichnet die beiden freien Eingänge der NOR-Gatter mit R und S (Reset, Rücksetzen und Set, Setzen). Solange R und S auf L liegen, ändert sich nichts an dem stabilen Zustand. Legt man jedoch ein kurzes H-Signal auf einen der Eingänge, so wird das FF einen definierten Zustand (Q =L oder Q =H) einnehmen und dort verharren. Werden beide Eingänge gleichzeitig auf H gesetzt, lässt sich der Ausgangszustand nicht eindeutig vorherbestimmen (verboten). Wegen der De Morgan’schen Gesetze lässt sich ein FF auch mit NAND-Gattern reali- Abbildung 3.1: RS-FlipFlop (RS-FF) 39 R L L H H S L H L H Q Q H L - Q Q L H - stabil set reset verboten sieren. Doch muss dann R und S gegen S und R ausgetauscht werden. 3.2.2 D-FlipFlop, D-FF (Latch, Zwischenspeicher) Das D-FF hat zwei Eingänge D (Daten) und Cl (clock), aus denen durch eine einfache Umcodierung R und S erzeugt werden kann. Nach der Umcodierung entfällt der verbotene Zustand. Bei Cl =L ist der Ausgang stabil und bleibt eingefroren, während CL =H ist, folgt der Abbildung 3.2: D-FlipFlop (D-FF) D x L H Cl L H H R L H L S L L H Q Q L H Q Q H L stabil reset set Ausgang Q dem Dateneingang D. Man sagt das FF ist transparent (durchsichtig). 3.2.3 MasterSlave-FlipFlop Beim MasterSlave-Konzept werden zwei D-FFs hintereinandergeschaltet, wobei der Clock ClS des Slaves (zweites D-FF) durch invertieren gewonnen wird (ClS = Cl). Wenn Cl auf L springt, wird der Ausgang des Master-FFs (QM ) eingefroren und der Slave-FF durchsichtig; am Ausgang erscheint der stabile Zustand des Masters. Wenn Cl auf H springt, wird der Slave eingefroren und der Ausgang bleibt weiterhin stabil, jetzt folgt der nunmehr transparente Master dem Eingang. Auf diese Weise ist der Ausgang des FFs stabil, nur zum Zeitpunkt des Umspringens der Clock von H nach L übernimmt der Ausgang den Eingang D. Man sagt: das FF ist (edge triggered). 40 Abbildung 3.3: MasterSlave-FlipFlop 3.2.4 JK-FlipFlop Das JK-FlipFlop entspricht dem MasterSlave-FF, nur wird der Eingang D aus dem Ausgang Q gewonnen. Damit übernimmt der Ausgang bei jeder Flanke von H nach L am Cl-Eingang den invertierten (komplementären) Zustand. Man sagt, das FlipFlop toggelt. Diese Rückkopplung kann durch UND-Gatter, die mit den zusätzlichen Eingängen J und K gesteuert werden, unterbrochen werden. Die Eingänge J und K können aus zusätzlichen Verknüpfungen gewonnen werden, so Abbildung 3.4: JK-FlipFlop J L L H H K L H L H Q Q L H Q stabil reset set toggle dass das Toggeln nur unter einschränkenden Bedingungen erlaubt wird. 41 3.3 Zähler, Counter Ein JK-FF untersetzt eine Frequenz am Eingang Cl um den Faktor 2. Legt man nun den Ausgang Q dieses FFs auf den Eingang Cl eines zweiten FFs, so wird die Frequenz wiederum halbiert. Auf diese Weise können die Zweierpotenzen des Binärsystems erzeugt werden. Das Bild zeigt den Verlauf der Ausgänge mit den Werten des Binärsystems Durch Abbildung 3.5: Das Bild zeigt den Verlauf der Ausgänge mit den Werten des Binärsystems geeignete Beschaltung der JK-Eingänge lassen sich auch andere Zählcodes realisieren. So gibt es z.B. ICs mit Teilern durch 3,5,6,10 und 12. 3.3.1 asynchron, synchron Bei dem oben vorgestellten Counter wird die Clock des n-ten FFs vom Ausgang des (n − 1)-ten FFs angesteuert. Wegen der endlichen Signallaufzeit kippen daher die einzelnen FFs nicht gleichzeitig sondern nacheinander. Der Zähler schaltet asynchron. Dadurch entstehen Zwischenwerte, die falsche Zählerstände vortäuschen. Dies ist bei langen Zählerketten und hoher Zählrate besonders kritisch. Das Problem lässt sich umgehen, wenn alle FFs zur gleichen Zeit (synchron) schalten. Dazu müssen die Cl-Eingänge aller FFs gemeinsam angesteuert werden. Um eine Frequenzuntersetzung zu erreichen, muss das Toggeln der FFs durch geeignete Beschaltung der JK-Eingänge gesteuert werden. So wird z.B. das Umschalten der 23 -Stelle auf 1 nur erlaubt, wenn alle niederwertigeren Stellen (20 -, 21 - und die 22 -Stelle) gleich 1 sind. Ähnlich lässt sich das Umschalten bei anderen Codes, oder das Vorwärts- Rückwärtszählen steuern. Die Abbildung unten zeigt die Beschaltung einer synchronen Dekade (Zähler modulo 10). 42 0 1 2 3 4 5 6 7 8 9 10=0 Q3 0 0 0 0 0 0 0 0 1 1 0 Q2 0 0 0 0 1 1 1 1 0 0 0 Q1 0 0 1 1 0 0 1 1 0 0 0 Q0 0 1 0 1 0 1 0 1 0 1 0 Abbildung 3.6: synchroner Dezimalzähler 3.4 Schieberegister Ein Register ist eine Anordnung von FFs, in denen Informationen aus mehreren bits (Wörter) gespeichert werden können. Das Schieberegister besteht aus D-FFs, bei denen der Zustand eines FFs in das jeweils benachbarte eingefüttert wird. Im einfachsten Fall wird der Q-Ausgang jedes FFs auf den D-Eingang des rechten Nachbarn eingespeist. Der linksaußen liegende Eingang und der rechtsaußen liegende Ausgang sind herausgeführt. Bei einer Cl-Flanke an allen D-FFs werden alle Informationen in die jeweils rechts benachbarte Zelle gespeichert, die am weitesten links liegende wird von außen geladen: eine Information wird in der Kette verschoben. Durch Kaskadieren (Ausgang Q auf Eingang der folgenden Kette) kann eine Kette beliebig verlängert oder auch im Kreis geschlossen werden. Durch einen Datenselektor lassen sich unterschiedliche Datenquellen für den D-Eingang anwählen. Es gibt beispielsweise ICs, die mit einem 2bit-Code 4 Modi festlegen: Anstelle von D-FFs lassen sich auch JK-FFs mit passender Ansteuerung einsetzen. 43 Modus 00 01 10 11 Datenquelle Ausgang des linken Nachbarn Ausgang des rechten Nachbarn eigener Ausgang externe Anschlüsse Funktion Schieben nach rechts Schieben nach links Stabil Laden von außen Abbildung 3.7: 4-bit Schieberegister 3.4.1 Parallel-Seriell-Wandlung Eine wichtige Anwendung des Schieberegisters ist die Wandlung eines parallel anliegenden Wortes in eine Folge von einzelnen bits (serieller Bitstrom). Auf diese Weise lässt sich die Anzahl von Übertragungskanälen (auf Kosten der Geschwindigkeit) reduzieren. Dazu wird das Wort parallel in das Schieberegister geladen, und wird beim Senden seriell herausgeschoben. Synchron mit dem Senden muss beim Empfangen der Bitstrom in ein Schieberegister geschoben werden, und kann dann parallel an den Ausgängen Qi abgegriffen werden. 3.4.2 FirstIn-FirstOut-Register, FIFO Ein FIFO besteht aus n Registern Wi , die übereinander angeordnet sind. Das oberste Register (W0 ) kann mit einem Wort von außen geladen werden, die Wörter fallen von oben nach unten durch und das unterste (Wn−1 ) kann ausgelesen werden. Ein Wort aus einem Register kann komplett in das darunterliegende geladen werden. Zu jedem Register gibt es ein zusätzliches RS-FF, das meldet, ob das Register mit gültigen Daten gefüllt ist. Mit dem Wert voll Vi oder nicht voll (Vi ) dieser FFs wird der Daten gesteuert: Mit einem FIFO können Daten asynchron gespeichert und gelesen werden und damit Signal Cli = Vi−1 · Vi Si = Cli Ri−1 = Si Aktion Laden des Registers von oben, wenn Register leer und das darüberliegende gültige Daten enthält das Register Wi ist nun gefüllt und das FF muss auf ”voll” gesetzt werden das darüberliegende Register wurde geleert und das zugehörige FF wird auf ”leer” gesetzt 44 Geschwindigkeitsunterschiede ausgeglichen werden. 3.5 Aufgaben 1. Vorbereitende Fragen : a) Skizzieren Sie ein RS-FF mit NAND-Gattern und stellen Sie die Wahrheitstabelle auf! b) Zeichnen Sie in einem Diagramm einen willkürlich zwischen H und L mehrfach wechselnden Pegelverlauf für D und Cl ein. Berechnen Sie die zugehörigen Pegelverläufe für QM , Q und ClS eines Master-Slave-FFs und zeichnen Sie sie in das Diagramm ein! c) Ergänzen Sie für die synchrone Dekade die Wahrheitstabelle der Ausgänge Qi mit den Eingängen Ji und Ki ! d) Wie realisiert man ein D-FF aus einem JK-FF und Inverter? e) Skizzieren sie eine Schaltung einer synchronen Hexade (Zähler 0 bis 5) vergleichbar mit Abbildung 3.6. Tip: Vergleichen Sie dazu die Wahrheitstabellen von Dekade und Hexade einschließlich des ”verbotenen Zustandes” 10 = 0 bzw. 6 = 0. Es müssen nur wenige Verbindungen geändert werden! 2. Bauen Sie einen asynchronen 4 bit-Binärzähler auf! Zur Ansteuerung verwenden Sie den TTL-Ausgang des Pulsgenerators aber schalten Sie zur Verstärkung ein TTL-Gatter zwischen den Ausgang des Pulsgenerators und die nachfolgenden Schaltungen. 3. Dekodieren Sie die ”0” heraus. Damit ist gemeint, dass Sie nur bei einem Zählerstand von ”0” ein Signal erhalten. Sie haben zwei vierfach NOR-Gates und zwei vierfach NAND-Gates zur Verfügung, überlegen Sie sich die einfachste Schaltung! Nehmen Sie das Diagramm (Eingang und Ausgänge 20 , 21 , 22 und 23 ) auf und skizzieren Sie das Wesentliche (Hinweis: Die Zeitverzögerung zwischen Eingang und Ausgang und zwischen den bits untereinander und deren Folgen erkennen Sie am besten bei hohen Frequenzen) 4. Bauen Sie eine synchrone Dekade auf. Achten Sie vorher auf eine möglichst einfache Schaltung; benutzen Sie die Inverter auf der FlipFlop-Platine. Sie vereinfachen sich dadurch die Fehlersuche erheblich! Nehmen Sie das Diagramm mit Ein- und Ausgängen auf. Achten Sie darauf, dass Sie das Oszilloskop so triggern, dass genau die 10 Zustände beginnend mit der ”0” am Schirm zu sehen sind. 5. Nehmen Sie auch hier ein Diagramm der Ein- und Ausgänge auf und beschreiben Sie den Unterschied zwischen synchronen und asynchronen Zähler. Verdeutlichen Sie auch hier die Zeitverzögerung. 45 6. Schließen Sie an die Ausgänge eine Siebensegmentanzeige an, reduzieren Sie die Eingangsfrequenz, dass das Auge der Anzeige folgen kann. 7. Schalten Sie zwischen Ausgang des Pulsgenerators und Eingang des Zählers ein Relais und lassen Sie die Schaltzyklen des Relais zählen. Was fällt Ihnen auf? woher kommt der Effekt? Zeichnen Sie den Eingang und die beiden Ausgänge des Relais in ein Diagramm ein. Achten Sie auf das Wesentliche: Prellen und Verzögerung auch zwischen den Ausgängen. 8. Verhindern Sie das Kontaktprellen mit einem RS-FF aus NAND-Gattern. Zeichnen Sie in das Zeitdiagramm der vorigen Aufgabe den Ausgang des RS-FFs ein. 9. Verwandeln Sie die Dekade in eine Hexade. Es müssen nur wenige Änderungen vorgenommen werden. 10. Bauen Sie ein 4-bit-Schieberegister mit 4 D-FFs aus den 4 JK-FFs auf. Schließen Sie den Ausgang an den Eingang und lassen Sie Daten im Kreis laufen. Anzeige mit LEDs. Wie kann man ein bit in dem Kreis setzen und löschen? Werwirklichen Sie dies in Ihrem Aufbau. 3.6 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. Führen Sie dem Assistenten Ihre Lösung vor ! 3.7 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Baugruppen 4-fach JK-FlipFlop 2-fach NAND; 2-fach XOR 4-fach NAND; 4-fach NOR Anzeigebaustein Relais Tastenfeld 46 4 Versuch D-4: Digital-Analog-Wandlung 4.1 Lernziel Analog Digital Conversion Conversionsfehler Auflösung, Stabilität, Linearität DAC 4.2 Analog-Digital-Conversion Bei der Umwandlung zwischen digitaler und analoger Darstellung sind neben Umwandlungsgeschwindigkeit und Aufwand (damit auch der Preis) besonders die Umwandlungsfehler zu beachten. In diesem Versuch soll daher besonders auf diese Problematik hingewiesen werden. 4.2.1 Umwandlungsfehler Die Umsetzungsfehler lassen sich grob in drei Bereiche unterteilen, die im Prinzip unabhängig voneinander sind. Das schwächste Glied sollte den Gesamtfehler bestimmen, in der Praxis muss man jedoch die einzelnen Komponenten sehr genau unterscheiden. Auflösung, Auflösungsvermögen Die Au osung bezeichnet den kleinsten unterscheidbaren Unterschied zwischen zwei Größen. In der Digitaltechnik ist dies 1 LSB1 . Häufig bezieht man die Auflösung auf den gesamten Bereich und erhält das Auflösungsvermögen: Auflösungsvermögen = Wertebereich Auflösung Bei der Digitaldarstellung ergibt sich damit mit n bits bzw n digits (Zehnerstelle) ein Auflösungsvermögen von 2n bzw 10n . Viele bezeichnen das Auflösungsvermögen auch mit ”n bits” bzw ”n digits”. Fehler, die durch das begrenzte Auflösungsvermögen entstehen, bezeichnet man als Digitalisierungsrauschen: die Übertragungsfunktion enthält Stufen. 1 1 LSB (least significant bit) ist die Änderung um 1 in der Stelle mit der niedrigsten Wertigkeit, im Gegensatz zu MSB (most significant bit), der Binärstelle mit der höchsten Wertigkeit 47 Stabilität, Reproduzierbarkeit Einer Digitalzahl unterstellt man ein gewisses Maß an Genauigkeit, da der Wert auf 1 LSB genau bestimmt werden kann. Bestimmen jedoch analoge Größen den Digitalwert, so werden auch diese durch äußere Ein usse (wesentlich die Temperatur) beein Alterungsprozesse verändern Materialeigenschaften. Ein eingestellter Wert enthält niederfrequentes Rauschen oder er wandert (driftet), sodass ein gleicher Messaufbau, zu einem späteren Zeitpunkt nicht mehr zu den gleichen Ergebnissen führt die Messung ist nicht reproduzierbar. Durch solche Effekte hervorgerufene Fehler können ein Vielfaches von einem LSB ausmachen. Daher ist es unbedingt wichtig, die Datenblätter der verwendeten Baugruppen genau zu studieren. Linearität Bei der Umsetzung von Digitalzahlen in analoge Werte und umgekehrt geht man meist davon aus, dass die Kennlinie eine lineare Funktion durch den Nullpunkt ist. Zum Beispiel soll zur Spannung 0V die Digitalzahl 0, zur Spannung 10.00V die Zahl 1000 und zur Spannung 4.98V die Zahl 498 zugeordnet werden. Geht die Kennlinie nicht durch 0 (Nullpunktfehler) oder nicht durch den Endwert (Steigungsfehler) lassen sich die Fehler leicht durch Offset- oder Verstärkungseinstellung korrigieren. Kaum zu korrigieren sind Effekte, die auf Abweichungen der Kennlinie von einer Gerade beruhen. integrale Nichtlinearität Die Übertragungsfunktion hängt durch oder enthält Bäuche. Die Abweichung von der idealen Gerade wird in %, oder ppm (parts per million) angegeben. Die Fehler betragen häufig ein Vielfaches eines LSBs. differentielle Nichtlinearität Wenn die Stufen des Digitalisierungsrauschens unterschiedlich hoch sind, spricht man von ”differentieller Nichtlinearität”. Die Abweichung von der idealen Stufe misst man in Einheiten der Stufe (LSB). Ein Fehler von ± 12 LSB scheint vertretbar zu sein, bleibt der Fehler doch innerhalb des Quantisierungsrauschens. Ein Fehler von ± 12 LSB bedeutet aber auch, dass eine Stufe verschwinden kann, wenn ein Wert um 12 LSB zu hoch, der folgende um 12 LSB zu niedrig ist. Man spricht in dem Fall auch von ”missing code”. Noch dramatischer wird es bei einer differentiellen Nichlinearität > ± 12 LSB, denn jetzt kann sich sogar die Richtung der Kennlinie umkehren. Hier spricht man davon, dass die ”Monotonie” nicht erfüllt ist. Häufig findet man auch Angaben wie z.B. ”16 bit DAC bis 14 bit monoton”. Die Abbildung oben zeigt Eingang und Ausgang eines Converters mit integraler Nichtlinearität (links) und differentieller Nichtlinearität (rechts). Wegen der geringen zeichentechnischen Auflösung muss in der Praxis die Differenz Istwert-Idealwert dargestellt werden. Die Diagramme zeigen den Unterschied zwischen den integralen Fehlern und den differentiellen Fehlern. Obwohl bei der integralen Nichtlinearität der Fehler zwischen 48 Abbildung 4.1: Nichtlinearität: links integrale Fehler, rechts differentielle Fehler dem idealen Maßstab und dem fehlerhaften über 2 Teilstriche beträgt, so kann man ihn auch noch bei kleinen Messbereichen sinnvoll einsetzen. Die Abweichungen zwischen dem idealen Maßstab und dem mit den differentiellen Feh- Abbildung 4.2: differentielle Nichtlinearität Abbildung 4.3: integrale Nichtlinearität lern ist in unserem Beispiel immer weniger als ein halber Teilstrich. Dennoch kann man diesen Maßstab nicht zur Beurteilung von kleinen Bereichen einsetzen. Die Stufe bei 36 ist fast verschwunden (missing code). 49 4.2.2 Digital-Analog-Converter Spannungsteiler mit geschaltetem Abgriff Bei der Umsetzung von Digitalzahlen in analoge Spannungs- oder Stromwerte gibt es im wesentlichen 2 Methoden. Zum einen lassen sich alle möglichen Spannungswerte zu einer n-bit Binärzahl gehören 2n verschiedene Spannungszustände - mit einem Spannungsteiler aus 2n identischen Widerständen bereitstellen; mit einem Schalter kann dann die gewünschte Spannung zum Ausgang geleitet werden. Dazu sind 2n Schalter notwendig, die von den Ausgängen eines 1 ∈ 2n -Decoders angewählt werden. Der Vorteil des Verfahrens besteht darin, dass durch die identischen Widerstände alle Stufen gleich breit sind, dieser DAC also keine differentiellen Nichtlinearitäten besitzt. Leider verdoppelt sich der Aufwand für jedes bit mehr Auflösungsvermögen. Summation gewichteter Ströme Bei dem zweiten Verfahren wird jedem Bit entsprechend seiner Wertigkeit in der Binärzahl eine Spannungs- oder Stromquelle zugeordnet. In einem Summierverstärker werden die Ströme der Stromquelle addiert, und zwar nur diejenigen, deren zugehörige Binärstelle eine 1 enthält. Der Vorteil dieses Verfahrens ist, dass sich der Aufwand bei Erweiterung um 1 bit nur unwesentlich erhöht. Leider hat das Verfahren erhebliche differentielle Nichtlinearitäten, die besonders dort auftreten, wo sich benachbarte Codes in vielen bits unterscheiden (Majoritätsübergänge). Eine Verbesserung ist durch den Einsatz eines R-2R-Netzwerkes möglich, womit man durch fortgesetzte Spannungsteilung die Summierströme halbiert2 . Damit erreicht man eine Monotonie bis ca 14 bits. Eine Steigerung ist durch die Kombination beider Methoden und einige technische Kniffe erzielbar. Auf die unterschiedlichen Verfahren soll hier nicht näher eingegangen werden. Neben besonders preisgünstigen 8 bit DACs sind auch 12 bit DACs gebräuchlich. DACs mit mehr als 18 bit Genauigkeit sind sehr teuer. Glitch Ein Problem tritt auf, wenn einzelne Stufen nicht synchron umschalten. ÄAhnlich wie beim asynchronen Zähler treten Zwischenzustände - sogenannte Glitches - ein. Bei einer Änderung um nur 1 LSB kann so der Ausgang kurzfristig den vollen Spannungshub überstreichen. 4.3 Aufgaben 1. Vorbereitende Fragen: 2 siehe auch Tietze-Schenk 50 a) Skizzieren Sie einen Summierverstärker und geben Sie die Ausgangsspannung als Funktion der Eingangsspannungen an! b) Wieviel bits entsprechen einer Auflösung eines 4 12 -stelligen Digitalvoltmeters? c) Berechnen Sie eine Stufe eines 12 bit-Wandlers mit 0 bis 10 V-Ausgangsspannung! d) Welche Auflösung muss ein Multimeter mindestens haben, um eine Stufe eines 12 bit-DACs auf 10% zu messen? Reicht dazu das Messgerät im Praktikum aus ? e) Nennen Sie die Bitkombinationen direkt unterhalb und oberhalb der drei Majoritätsübergänge eines 12-bit-Wandlers. 2. Bauen Sie einen 4 bit- DAC nach der Methode der gewichteten Ströme auf Benutzen Sie direkt die Ausgänge von NAND-Gattern als schaltbare Spannungsquellen (Ausgangsspannung ≈0V= bzw. ≈3.5V= und treiben Sie damit gewichtete Ströme in einen Summierverstärker. Wählen Sie die passenden Widerstände (um den TTL-Ausgang nicht zu sehr zu belasten mindestens 2kΩ) für den Ausgangsbereich 0 bis ca -8 V aus. Es ist ausreichend genau, wenn Sie jeweils nur einen Widerstand pro bit benutzen. 3. Benutzen Sie den DAC als Sägezahngenerator, in dem Sie die Ausgänge eines 4 bit-Zählers an die Eingänge des DACs anschließen. a) Messen Sie die differentielle Nichtlinearität, indem Sie die Ausgangsspannung für jede der 16 Zustände mit dem Multimeter ausmessen und daraus die Stufen berechnen! Nennen Sie mögliche Gründe für eine beobachtete Nichtlinearität. Geben Sie dem Multimeter ausreichend Zeit (ca 2 sek pro Stufe) b) Tragen Sie die Stufen (Abstand zweier benachbarter Werte) in ein Diagramm ein. c) Messen Sie die Zeit, bis der Ausgang des DAC stabil ist für eine Stufe für den vollen Hub indem Sie alle bits gleichzeitig schalten. 4. Messen Sie die differentielle Nichtlinearität des kommerziellen 12 bit-DAC an den drei höchstwertigen Majoritätsübergängen. Sollten Sie bei Verwendung der niedrigen Bits keine Stufen erkennen können, verwenden Sie hierfür die 8 höchsten bits. Überlegen Sie sich dazu eine geeignete Ansteuerung, um mit den 4 bits des Zählers die 8 Stufen unterhalb und 7 Stufen oberhalb des jeweils ausgewählten Majoritätssprung herum anzusteuern. Schätzen Sie die Stufen mit dem Oszilloskop ab. 5. Wiederholen Sie die Aufgaben (3b und 3c) für den kommerziellen DAC. 51 4.4 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. Führen Sie dem Assistenten Ihre Lösung vor ! 4.5 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Vielfachmeßgerät Baugruppen Summierverstärker 2-fach-NAND; 2-fach-XOR 4-fach JK-FlipFlop oder Zähler 12bit DAC 52 5 Versuch D-5: Analog-Digital-Wandlung 5.1 Lernziel Fensterdiskriminator Flash ADC Sample & Hold 5.2 Fenster-Diskriminator Eine häufige Aufgabe ist es, festzustellen, ob eine Signalhöhe in einem Bereich (Fenster) liegt oder nicht. Eine Schaltung, die dies entscheidet nennt man Fenster-Diskriminator. Sie stellt fest, ob die Spannungshöhe die untere Schwelle des Fensters (U) überschreitet aber die obere Schwelle (O) nicht. Die Schaltung, die dies leisten könnte, wären zwei Comparatoren, die auf die obere, bzw die untere Schwelle eingestellt werden und deren Ausgänge gemäß A=U ·O verknüpft werden. Hierbei bedeutet A das Ausgangssignal, und O und U Überschreitung der oberen und unteren Schwelle. Siehe dazu Abbildung 5.1 Diese Schaltung arbeitet jedoch nur bei statischen Signalen oder bei Impulsen mit Anstiegs- und Abfallszeit 0. In der Praxis haben wir es jedoch mit Signalen (Abbildung) mit endlicher Anstiegs- und Abfallzeit zu tun. In solchen Fällen durchläuft das Signal bei Pulsen, die die obere Schwelle überschreiten, das Fenster. Es ergeben sich daher unerwünscht während des Anstiegs und während des Abfalls je ein Ausgangssignal. Ein Fenster-Diskriminator muss die Schwellen-Information so verformen, dass nur ein Ausgangssignal entsteht, wenn die maximale Pulshöhe in dem Fenster liegt. In vielen Fenster-Diskriminatoren wird nicht die untere und die obere Schwelle einstellbar, besser verwendet man nur eine Schwelle und als zweiten Parameter die Fensterbreite. Damit kann man mit fester Fensterbreite das Fenster verschieben auf gewünschte Signalhöhen mit einer gewissen Toleranz auswählen. 53 Abbildung 5.1: Schaltverhalten des Fensterdiskriminators 5.3 Flash ADC Eine Schaltung, bei der viele Fenster dicht an dicht den gesamten Messbereich überdecken, liefert für jedes Fenster die 1 bit Information ”Wert innerhalb Fenster Nr. N”. Dabei kann nur ein einziges Fenster eine 1 liefern. Aus dieser Information kann mit einem Enkoder die Fensternummer N generiert werden. Wir haben also einen Wandler, der eine Span- nungshöhe in eine Digitalzahl konvertiert (Analog-Digital-Converter, ADC). Es gibt noch weitere Verfahren der Analog-Digital-Conversion. Die wichtigsten werden im Versuch 14 behandelt. Der wesentliche Vorteil dieses Verfahrens gegenüber den anderen ist - neben den geringen differentiellen Fehlern - die blitzartige Umsetzgeschwindigkeit (Flash-ADC); in wenigen nsec werden alle Vergleiche durchgeführt. Danach steht das komplette Ergebnis als Digitalzahl zur Verfügung. Für einen n bit Flash-ADC benötigt man leider N = 2n -Comparatoren mit entsprechender Kodierschaltung. Für jedes bit verdoppelt sich der Schaltungsaufwand, sodass nur Auflösungen zwischen 6 bis 10 bit technisch sinnvoll sind. 5.4 Sample and Hold, S&H Beim Fensterdiskriminator wurden bereits die Schwierigkeiten angedeutet, die auftreten, wenn die Eingangsgröße nicht statisch anliegt, sondern langsam das Fenster durchfährt. Auch bei einem ADC entstehen Probleme, wenn sich der analoge Eingangswert während der Konversion ändert. Hier drängt sich die Frage auf, wie, lange eine Konversion dauern darf, bis sich der Eingangswert bei einem n bit-DAC um maximal 1 LSB ändert. Gehen wir von einer sinusförmigen Wechselspannung der Frequenz ν aus : U = U0 (1 + sin (2πνt)) die zwischen den Werten 0 und 2U0 schwingt, so ergibt sich für die Änderungsgeschwin- 54 digkeit: dU = U0 2πν cos (2πνt) dt Damit ergibt sich für die maximale Änderung ∆U während der Messperiode τ : ∆U = U0 2πν τ Mit der Breite für 1 LSB (∆U = 2U0 2−n ) ergibt sich damit für die maximale Messdauer: τ= 2−n 2U0 2−n = U0 2πν πν Zur Wandlung von relativ langsamen 10kHz-Signalen mit nur 10bit Au osung muss daher bereits in ca 30nsec die Konvertierung beendet sein. Abhilfe bringt eine ”Sample and Hold”-Schaltung (S&H). Diese Schaltung entnimmt während einer sehr kurzen Samplezeit eine Probe des Messsignals (sample) und lädt damit einen Kondensator auf. Anschließend wird der Kondensator vom Eingang abgetrennt, sodass der Wert im Kondensator erhalten bleibt (hold) und nun langsam weiterverarbeitet werden kann. Nach der Holdzeit kann das nächste Samplen folgen. In der Praxis müssen Fehlerquellen, wie Umschaltverzögerung, Schwankungen der Abtastzeit (Aperturjitter), Einschwingverhalten und Übersprechen beachtet werden. Näheres dazu siehe bei Tietze-Schenk. 5.5 Aufgaben 1. Vorbereitende Fragen: a) Skizzieren Sie einen Summierverstärker, der zwei Spannungen U1 + 0, 1 · U2 addiert. Woran könnte es liegen, wenn die Ausgangsspannung kleiner U1 wird (bei U2 = 0V) ? b) Wie stark belastet der Verstärker die Spannungsquellen U1 und U2 ? c) Wann liefert ein Fensterdiskriminator ein Ausgangssignal? d) Skizzieren Sie eine Schaltung aus 3 Monovibratoren, die aus den Signalen O und U (Diagramm auf Seite 54) die Signale o und u erzeugt. e) Entwerfen Sie eine Schaltung zur Realisierung des Fensterdiskriminator unter Verwendung des Summierverstärkerbausteins (2 Operationsverstärker) und des Comparatorbaustein (2 Operationsverstärker und 2 Potentiometer).// 55 Abbildung 5.2: Blockschaltbild des Fensterdiskriminator f) Ein 4-bit-ADC hat einen Eingangsspannungsbereich von 0-8V. Die Ausgangsdigitalzahl wird zu einem 8-bit-DAC übertragen der einen Ausgangsspannungsbereich von 0-10V ansteuert. Wie groß sind die minimalen Stufen bei Abdeckung des gesamten Bereiches von 0-10V? Wie groß sind die kleinst möglichen Stufen und wie groß ist in diesem Fall der ansteuerbare Bereich? g) Ein Digitaloszilloskop mit einer Bandbreite von 500 MHz hat eine Auflösung von 8bit. Berechnen Sie den maximalen erlaubte Aperturjitter. Durch Schwankungen des Abtastzeitpunktes soll sich das Messergebnis maximal um 1 LSB ändern. 2. Bauen Sie einen Fenster-Diskriminator auf a) Mit den beiden Potentiometern (10kΩ) des Comparatorbausteins erzeugen Sie mit dem Summierverstärker die Vergleichsspannungen für die untere und obere Schwelle des Fensters. Mit den Potentiometern soll man untere Schwelle und Fensterbreite einstellen können. Maximale Fensterbreite ca. 10% der maximalen Schwelle. Die Potentiometer sollten nicht stärker als ca 10% durch die Schaltung verfälscht werden. b) Erweitern Sie die Schaltung zu einem Fensterdiskriminator, der nur auf die Maximalamplitude einer Dreieckspannung (ν ≈ 200 · · · 400Hz) reagieren. Ihre Schaltung soll nur dann einen Ausgangsimpuls erzeugen, wenn die Spitze des Dreiecksignals innerhalb des Fensters bleibt. Überlegen Sie sich die Schaltung. Sie benötigen dazu 3 Monovibratoren die die Ausgangssignale von O und U passend zu neuen Werten o und u verzögern und formen, sodass jetzt die Verknüpfung a = u · o nur auf das Maximum reagiert. Wählen Sie passende MonoFlops heraus (1.2msec oder 12msec Maximaldauer). 3. Bauen Sie einen 3 bit Flash-ADC auf a) Zur Bereitstellung der Vergleichsspannung für die 8 Comparatoren dient eine Kette aus 8 gleichen Widerständen. Diese Kette ist bereits im Baustein 8-bit-Comparator aufgebaut. Messen Sie die Referenzspannung über den Schaltpunkt des höchsten bits. 56 b) Bauen Sie eine Leuchtbandanzeige mit den LEDs des Anzeigebausteins. Testen Sie die Schaltung mit Durchfahren des Messbereichs mit einem langsam laufenden Funktionsgenerator (Stellen Sie Amplitude und Offset des Pulsgenerators so ein, dass alle 8 Comparatoren schalten. c) Erzeugen Sie aus den Ausgängen der 8 Comparatoren mit Hilfe von XORGattern 8 Fenstersignale und daraus mit einem Enkoder die drei Ausgangsbits 20 , 21 und 22 . d) Schließen Sie den Anzeigebaustein an den Ausgang des ADCs und vergleichen Sie die Messspannung mit der Anzeige. e) Schließen Sie an den Ausgang des ADC den DAC an (wahlweise kommerzieller 12-bit DAC oder auf Basis des Summierverstärkers) und vergleichen Sie Eingang des ADC mit Ausgang des DAC. Erhöhen Sie die Signalfrequenz am Eingang des ADCs und bestimmen Sie die Frequenz, ab der Stufen verloren gehen. Wie groß ist bei dieser Frequenz die Phasenverschiebung zwischen Eingang und Ausgang? Wie verhält sich der DAC bei unterschiedlichen Kurvenformen (Sinus, Dreieck, Rechteck)? 5.6 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. Führen Sie dem Assistenten Ihre Lösung vor ! 57 5.7 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Baugruppen Comparator Summierverstärker Monovibrator 2-fach-NAND; 2-fach-XOR 8-fach Comparator 4-fach-NOR; 4-fach-NAND Anzeigebaustein 12bit DAC 58 6 Versuch D-6: Rampenverfahren 6.1 Lernziel ADC Rampenverfahren, Sukzessive Approximation Abtast-Theorem, Aliasing 6.2 ADC Im Versuch 13 haben Sie bereits den Flash-ADC kennengelernt. Der entscheidende Nachteil dieses Typs ist, dass der Aufwand sich von bit zu bit verdoppelt und damit eine hohe Au osung nicht möglich ist. Die Umsetzung von analogen Spannungen in eine zugehörige Binärzahl verläuft im Prinzip immer nach dem gleichen Verfahren: Eine Vergleichsspannung wird zur Verfügung gestellt und die unbekannte zu digitalisierende Spannung mit der Vergleichsspannung verglichen. Aus dem Ergebnis des Vergleichs wird die Digitalzahl gewonnen. Als Vergleicher dient ein Opamp als Comparator, der je nach den Spannungen an den Eingängen eine H oder L-Information am Ausgang erzeugt. Es gibt jedoch erhebliche Unterschiede in der Art und Weise, wie die Vergleichsspannungen erzeugt werden und damit Konsequenzen für Aufwand und Preis, Geschwindigkeit der Um- setzung und Genauigkeit des Ergebnisses. Wir unterscheiden im wesentlichen 3 Verfahren, die wir mit den Schlagwörtern kennzeichnen können. 1 Count pro Vergleich 1 bit pro Vergleich 1 Wort pro Vergleich Rampenverfahren sukzessive Approximation Flashconverter Je nach Aufwand und verkaufbaren Stückzahlen sind ADCs als integrierte Bausteine in Ein- chip oder Mehrchip-Lösungen, oder als diskret aufgebaute Geräte mit zusätzlichen Funk- tionen erhältlich. Es gibt auch Rechnerchips, in die komplette Mehrkanal-ADCs integriert sind. In Tabelle 6.1 sind einige ADCs aufgeführt. 6.2.1 Rampenverfahren (Slopetechnik) Das Rampenverfahren erzeugt die Vergleichsspannung durch Integration einer konstanten Gleichspannung oder eines Gleichstrom. Dadurch entsteht ein linearer Zusammen- 59 Fabrikat Maxim Maxim Maxim Maxim Keithley Typ MAX101 MAX184 MAX195 ICL7129A Multimeter 2002 Verfahren Flash SAR SAR Rampenverfahren Rampenverfahren Auflösung 8 bits 12 bits 16 bits 4 12 digit 8 12 digit Geschw. 2 nsec 5 µsec 10 µsec 20 msec Tabelle 6.1: integrierte ADC-Schaltungen hang (Rampe) zwischen der Vergleichsspannung und der Zeit. Wird von einem Quartzoszillator gesteuert, in gleichen Zeitintervallen die Vergleichsoperation durchgeführt, so werden alle möglichen Spannungwerte nacheinander abgefragt. Neben dem einfachen Rampenverfahren gibt es eine Vielfalt von Abwandlungen, die die Ge- nauigkeit erhöhen: Zwei Rampen (DualSlope), Vierrampenverfahren (QuadSlope) mögen nur einige Namen für unterschiedliche Lösungen des Rampenverfahrens sein, die teilweise mit Patenten belegt sind. Das Rampenverfahren ist leider das langsamste Verfahren mit Konversionszeiten von msec bis einige Sekunden. Wegen der möglichen hohen Genauigkeit mit Au osungen zum Teil unter 1/100ppm (fast 30 bits!) wird dieses Verfahren vornehmlich bei digitalen Voltmetern eingesetzt. 6.2.2 Sukzessive Aproximation Hier wird die Vergleichsspannung durch einen DAC bereitgestellt. Durch einen einfachen und geschickten Algorithmus wird bei jedem Vergleich entschieden, in welcher Hälfte eines Spannungsintervalls die unbekannte zu digitalisierende Spannung liegt; dadurch wird von Vergleich zu Vergleich das Intervall halbiert und man nähert sich schrittweise dem richtigen Wert (sukzessive Approximation). Durch das Halbieren des Intervalls gewinnt man pro Vergleich ein bit und hat schon nach 12 Vergleichen ein Ergebnis mit 12bit Au osung. Dieses Verfahren ist daher recht schnell, wenige µsec Konversionszeit. Leider kann das Verfahren nur bis 1216 bits eingesetzt werden, da dann die differentiellen Fehler des benötigten DACs die Genauigkeit begrenzen. Insgesamt ist das sukzessive Approximations-Verfahren durch die recht hohe Geschwindigkeit, sowie seinen einfachen und damit preisgünstigen Aufbau das heute am meisten eingesetzte Verfahren. 6.2.3 Der Flashconverter Bei Anwendungen z.B. in der Echtzeit-Bildverarbeitung wo die Konversionszeit von µsec noch zu langsam ist, muss zu dem bereits vorgestelltem Flash-ADC gegriffen werden: Durch einen Spannungsteiler werden gleichzeitig alle möglichen Spannungswerte als Ver- gleichsspannung zur Verfügung gestellt. Die unbekannte Spannung wird gleichzeitig mit allen 2n möglichen Spannungen verglichen. Es sei jedoch daraufhingewiesen, dass es bei diesem Verfahren kaum differentielle Fehler 60 auftreten, und die Au osung durch den Aufwand begrenzt wird. Die Genauigkeit ist meist erheblich besser, als die Au osung angeben würde. Heute findet man das Flash-ADC-Verfahren kombiniert mit der sukzessiven Approxination. Dabei wird in zwei Schritten zunächst ein grober Näherungswert mit einem Flash-ADC geringer Au osung aber hoher Genauigkeit bestimmt und dann im zweiten Schritt der gewonnene Näherungswert mit dem gleichen ADC verfeinert. Man gewinnt daher in nur zwei Schritten fast die doppelte Bitanzahl. 6.3 Abtast-Theorem, Aliasing Einen Spannungsverlauf kann man gut rekonstrieren, wenn möglichst viele Proben der Messspannung (Samples) dicht an dicht registriert wurden. Man kann jedoch nachweisen, dass bei einem bandbreite-begrenzten Signal (Das Signal enthält keine Frequenzen ober- halb einer Grenzfrequenz νmax ) eine Abtastfrequenz von 2νmax ausreicht (AbtastTheorem (Shannon), Nyquist-Bedingung1 ). Enthält das abzutastende Signal jedoch Frequenzanteile oberhalb νmax , so wird durch das Abtasten ein Signal vorgetäuscht (Aliasing), das nicht vorhanden ist. Das kritische daran ist, dass die Amplitude nicht reduziert wird. Daher muss der Abbildung 6.1: Aliasing bei Abtastung eines Signals Abtastung ein Tiefpassfilter (Antialiasing-Filter) vorgeschaltet werden, das höhere Frequenzanteile unterdrückt. 6.4 Aufgaben 1. Vorbereitende Fragen: a) Was ist der Unterschied zwischen Stromquelle und Stromsenke? b) Was ist der Innenwiderstand einer Signalquelle? c) Wie groß ist der Innenwiderstand einer idealen Stromquelle? d) Was gibt die RC-Zeit an? 1 siehe auch Tietze-Schenk 61 e) Wo enthält die Schaltung nach Abbildung unten einen S&H-Kreis? 2. Bauen Sie einen ADC nach dem Rampenverfahren auf: Während der Samplephase wird der Kondensator C auf die zumessende Spannung Ux aufgeladen. Danach wird in der Messphase der Kondensator mit einem konstanten Strom Ic entladen. Während der Entladezeit t bis zum Nulldurchgang am Kondensator werden Pulse eines Oszillators (Frequenz ν) gezählt. Aus Q = Ic t = CUc und N = tν ergibt sich für die Zahl N der während der Entladung gezählten Impulse C νUx Ic Damit ist N ein Maß für die Messspannung Ux . N= Abbildung 6.2: ADC nach dem Rampenverfahren a) Messen Sie den Strom Ic in die Stromquelle bei unterschiedlichen Spannungen und berechnen Sie den Innenwiderstand der Stromsenke. b) Entwerfen Sie die Ablaufsteuerung aus zwei Univibratoren, die sich gegenseitig anstoßen, damit sofort nach Ablauf der Messung die folgende gestartet wird. Stellen Sie maximale Dauer der Pulsweiten ein. c) Berechnen Sie die Kapazität des Kondensators C aus der Steigung der Entladekurve d) Weshalb ist der Pufferverstärker notwendig? (Tip: denken Sie an RC-Zeit und Innenwiderstand einer Signalquelle) e) Berechnen Sie die Frequenz ν, die für die Messspannung Ux =10V eine Anzeige von 100 (1000) liefert. Bauen Sie einen entsprechenden Oszillator mit Hilfe eines Schmitt-Trigger-NANDs auf. f) Berechnen Sie die minimale Zeit, die notwendig ist, um den Kondensator bei Ux =10V sicher zu entladen 62 g) Stellen Sie die Zeiten zum Laden und Entladen so ein, dass eine möglichst kurze Konversionszeit und damit hohe Messrate entsteht. h) Nehmen Sie ein Diagramm auf, in dem für Ux =5V die Phasen der Ablaufsteuerung, die Spannung an C, der Ausgang des Komparators sowie qualitativ die Zählimpulse eingetragen sind. Die Zählimpulse können Sie nicht direkt messen, sondern bestimmen Sie sie aus der UND-Verknüpfung zwischen Zählereingang ”Count” und ”Count enable” (siehe auch Abbildung oben). 3. Schließen Sie an den ADC einen DAC an. Der Zählerbaustein enthält zusätzlich einen binär codierten Ausgang des Zählerstandes2 . Verwenden Sie die höheren bits des DACs a) Legen Sie an den Eingang des ADCs eine Sinus-, Dreieck- und Rechteckspannung (Amplitude in den positiven Bereich verschieben zwischen ca. 1V und 8V) und vergleichen Sie Ausgang mit Eingang. b) Was ändert sich am Ausgang, wenn der Zähler kein Latch enthält (Latch ist transparent)? c) Was ändert sich, wenn das Resetsignal fehlt? d) Ändern Sie die Frequenz des Eingangssignals und bestimmen Sie die obere Frequenz, bei der man am Ausgang des DACs gerade noch das Eingangssignal erahnen kann. e) Erhöhen Sie die Frequenz und beobachten Sie den Aliasingeffekt. Versuchen Sie durch eine Feinfrequenzabstimmung ein ruhiges Bild zu erhalten. f) Wie verhält sich Amplitude, Kurvenform und Frequenz bei Aliasing? Betrachten Sie eine Sinus-, Dreieck- und Rechteckspannung. Überlegen Sie bei der Bearbeitung von b) und c) was im ADC geschieht und erklären Sie damit das Beobachtete. 6.5 Versuchsausarbeitung Achten Sie bei den Diagrammen der Spannungsverläufe auf eine synchrone Darstellung! Zu einem Diagramm gehört die Angabe von Spannungswerten (z.B. Nulllinie und eine markante Spannung). Bei logischen Pegeln reicht die Angabe von L und H bzw. 0 und 1. Zu einer aufgebauten Schaltung gehört ein Schaltplan. Zur Fehlersuche benutzen Sie das Oszilloskop und schalten Sie auf höhere Frequenzen, um ein ruhiges Bild zu erhalten! Ergab Ihr Versuch ein von der Theorie abweichendes Ergebnis, beschreiben Sie dies und erklären Sie mögliche Fehlerquellen. 2 Bei Verwendung des älteren Zählerbausteins ist zu beachten, dass der binäre Ausgang ein BCDcodierter Ausgang der 1000er Stelle der Anzeige ist. Das Rückumwandlung des Signals ist daher deutlich grober und nur bei sehr hohen Zählraten umsetzbar. Ersetzen Sie in diesem Fall den Oszillator für das count-Signal durch einen Funktionsgenerator. Lesen Sie dazu die Beschreibung der Bausteine. 63 Führen Sie dem Assistenten Ihre Lösung vor ! 6.6 notwendige Geräte und Baugruppen Geräte Netzgerät Oszilloskop Funktionsgenerator Vielefachmeßgerät Baugruppen Monovibrator 2-fach-NAND; 2-fach-XOR Stromsenke, Analogschalter mit Komparator Zählerbaustein 12bit DAC 64 7 Wichtige Hinweise zur Auswertung Um unnötigen Fehlern vorzubeugen beachten Sie bei Ihrer Auswertung bitte einige Punkte. Bei Diagrammen von Spannungsverläufen oder digitalen Zuständen auf eine synchrone Darstellung achten. Um wichtige Details besser sichtbar zu machen ist es möglich eine fließende Zeitachse zu verwenden. Dies muss dann angegeben werden. Ein vollständiges Diagramm enthält Achsen und Maßangaben. Bei logischen Zuständen recht hier die Angabe von z.B. H und L. Vergessen sie nicht zu den aufgebauten Schaltungen auch die Schaltpläne anzugeben. Je nach Versuch kann dies ein exakter Schaltplan, reduziert auf die logischen Verknüpfungen oder ein Blockschaltbild sein. Sollten sie einen von der Anleitung abweichenden Lösungsansatz verfolgt haben, beschreiben Sie die Unterschiede. Konnte ein Punkt eines Versuchs nicht durchgeführt werden, erwähnen Sie dies und beschreiben die theoretisch zu erwartenden Ergebnisse. Erhalten Sie von der Theorie abweichende Ergebnisse versuchen Sie dies zu erklären. (z.B. Fehlerquellen) 65 8 Literaturempfehlungen Paul Horowitz, Winfield Hill Die Hohe Schule der Elektronik: Die hohe Schule der Elektronik, Tl.1, Analogtechnik Elektor-Verlag Paul Horowitz, Winfield Hill Die Hohe Schule der Elektronik: Die hohe Schule der Elektronik, Tl.2, Digitaltechnik Elektor-Verlag Ulrich Tietze, Christoph Schenk Halbleiter - Schaltungstechnik Springer-Verlag 66