Praktikum. Technologie der Funktionswerkstoffe. Digitalschaltungen. (Versuch 3)

Ähnliche Dokumente
Praktikum. Technologie der Funktionswerkstoffe. Digitalschaltungen. (Versuch 3)

2.2 Register-Transfer-Synthese

FPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007

Zwischenbericht zum Projekt FPGA-Entwurfssystem

HaPra Versuchsreihe 4 - Aufbau eines Volladdierers. Aufbau eines Volladdierers mit diskreten Bausteinen

GAL 16V8. 4. Laboreinheit - Hardwarepraktikum SS 2002 VCC / +5V. Eingang / Clock. 8 konfigurierbare Ausgangszellen. 8 Eingänge GND / 0V.

Kombinatorische Schaltungen - Simulation. Anleitung zur Versuchsvorbereitung und Versuchsdurchführung

Kapitel 4. Versuch 415 T-Flipflop

12. Tutorium Digitaltechnik und Entwurfsverfahren

BOOTLOADER für AVR-Entwicklungsmodule

Arbeitsbereich Technische Aspekte Multimodaler Systeme. Praktikum der Technischen Informatik T1 1. Schaltnetze. Name:...

Integrierte Schaltungen

Aufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4

Hardware Praktikum 2008

DIGITALTECHNIK 08 FREQUENZ-ZÄHLER

Praktikum Grundlagen der Elektronik

Aufgaben zum Elektronik - Grundlagenpraktikum

HARDWARE-PRAKTIKUM. Versuch L-2. Fehlersuche in digitalen Schaltungen. Fachbereich Informatik. Universität Kaiserslautern

Test & Diagnose digitaler! Systeme,! Prüffreundlicher Entwurf.!

Versuchsvorbereitung P1-63: Digitale Elektronik, Schaltlogik

Praktikum: VLSI-Entwurf. VHDL Standardzell Entwurf Entwurf einer Weckuhr

Hardware Praktikum 2008

Digitale Systeme und Schaltungen

Electronic Design Automation (EDA) Register-Transfer-Synthese

Tutorial zur MAX+PLUS II Baseline Software von Altera

Electronic Design Automation (EDA) Technology Mapping

Multiplexer und Schieberegister

Semestralklausur Einführung in Computer Microsystems

x x y x y Informatik II Schaltkreise Schaltkreise Schaltkreise Rainer Schrader 3. November 2008

2. Aufgabenblatt

Lösung Versuch Nr. 4

Entwurfsverfahren digitaler Schaltungen

Versuch: D2 Zähler und Ampelschaltung

Einführung in die technische Informatik

Darstellung eines 1-Bit seriellen Addierwerks mit VHDL. Tom Nagengast, Mathias Herbst IAV 07/09 Rudolf-Diesel-Fachschule für Techniker

1. Praktische Übung zur Vorlesung Technische Informatik I

Elektrische Logiksysteme mit Rückführung

Grundlagen der Technischen Informatik. 9. Übung

FPGA. Field Programmable Gate Array

Lösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009

3 Verarbeitung und Speicherung elementarer Daten

Protokoll zum Praktikum des Moduls Technische Informatik an der JLU Gießen

Inhalt. Zahlendarstellungen

Hochschule Emden / Leer. Ausarbeitung. Speicherung digitaler Signale

Programmierbare Logik Arithmetic Logic Unit

17 Zähler. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 17-1

Digitaltechnik Laborversuch 1. Bitmustererkennung. Wichtige Informationen

Cls. Der Aufbau der Schaltung geschieht mit dem HWPRAK-Altera-Board, das in diesem Versuch nun aus den folgenden Komponenten besteht:

GTI ÜBUNG 12 KOMPARATOR UND ADDIERER

Versuch: D1 Gatter und Flipflops

Computergestützter IC- Entwurf

Multiplikationschip. Multiplikation. Beitrag zu "Werkstattunterricht Multiplikation" Allgemeine Didaktik - Seminar SS95. Oberwiesenstr.

D.5 Versuchsreihe 5: Arithmetisch-Logische Einheit

Bericht. Digitallabor. Hochschule Karlsruhe N1. Aufgabe 5.6 Stoppuhr. Teilnehmer: Natalia Springer, Tong Cha. Datum:

Was passiert eigentlich im Computer wenn ich ein Programm starte

Test und Diagnose digitaler Systeme, prüffreundlicher Entwurf

Wandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen. Teilen durch die Basis des Zahlensystems. Der jeweilige Rest ergibt die Ziffer.

Praktikum Digitaltechnik

13. Vorlesung. Logix Klausuranmeldung nicht vergessen! Übungsblatt 3 Logikschaltungen. Multiplexer Demultiplexer Addierer.

Vorlesungsprüfung aus. Digitales Design. 2. Juni 2015

4.Vorlesung Rechnerorganisation

D i g i t a l l a b o r

Prof. Dr.-Ing. Peter Schulz

Im Mathe-Pool startet man Eclipse am besten aus einer Shell heraus, und zwar indem man im Home- Verzeichnis den Befehl

Übungsblatt 1. Einführung in die Xilinx Vivado FPGA Design Plattform

FAQ Kommunikation über PROFIBUS

Programmierbare Logikbauelemente

Vorbemerkung. [disclaimer]

Klausur-Nachbesprechung

Electronic Design Automation (EDA) Spezifikation

UNIVERSITÄT LEIPZIG. Studentenmitteilung 3./4. Semester - WS 2006/ SS Aufgaben zum Elektronik Grundlagenpraktikum. 4.

Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 2 Sequentielle Logik. Aufgabe 1:

Simulation digitaler Schaltungen auf GPUs

Outline Logik Speicher Synthese Signale/Variablen Packages Generische Designs. Basics. Marc Reichenbach

Projektumgebung unter Inventor 2015

Vorlesungsprüfung aus. Digitales Design. 2. Juni 2015

JUILIET- JTAG Unlimited Tester Am Beispiel eines Automotive-Projekts. Ingenieurbüro Winklhofer

Seminararbeit Sommersemester 2017

Arbeitsbereich Technische Aspekte Multimodaler Systeme. Praktikum der Technischen Informatik T1 2. Flipflops. Name:...

3-BIT VOLLADDIERER MIT EINZELNEM EINGABE-DATENBUS

Drücken Sie (später) bei Speichere Änderungen in der Bibliothek default? auf Nein.

Teil IV. Schaltwerke

Entwurf und Simulation einfacher Logikelemente

Rechnergestützter VLSI-Entwurf

Eine Logikschaltung zur Addition zweier Zahlen

D.4 Versuchsreihe 4: Integrierte Logikbausteine

Prüfung von Leiterplatten-Baugruppen LPBG

Outline Schieberegister Multiplexer Zähler Addierer. Rechenschaltungen. Marc Reichenbach und Michael Schmidt

Eclipse Tutorial.doc

5 Verarbeitungsschaltungen

Versuch Nr. 8c Digitale Elektronik I

3.2 Verknüpfung von Variablen Sheffer- und Pierce-Funktion Übungen... 54

Das große All-in-All CPLD/FPGA Tutorial

Teil 1: Digitale Logik

Kapitel 6 Programmierbare Logik. Literatur: Kapitel 6 aus Oberschelp/Vossen, Rechneraufbau und Rechnerstrukturen, 9. Auflage

Kombinatorische Schaltungen

Teil V. Programmierbare Logische Arrays (PLAs)

Laufzeitoptimierte VHDL Bibliothek zur Verifikation und Simulation kryptographischer Prozessoren

A.3. A.3 Spezielle Schaltnetze Prof. Dr. Rainer Manthey Informatik II 1

Prozessorarchitektur SS2017 Rahmenbedingungen zum Praktikum

Transkript:

Labor für Chip-Design und Mikroelektronik Praktikum Technologie der Funktionswerkstoffe Digitalschaltungen (Versuch 3) Gliederung: 1. Einleitung 2. Grundlagen: Hierarchisches Entwurfsverfahren 3. Das Entwurfswerkzeug eproduct Designer 4. Versuchsschaltungsschaltungen 5. Versuchsdurchführung 6. Versuchsvorbereitung 7. Versuchsauswertung 1. Einleitung Seit der Öffnung der Weltmärkte Anfang der 90-er Jahre sind höchste Qualität und eine möglichst frühe Markteinführung neuer Produkte eine wesentliche Voraussetzung für den Erhalt der Wettbewerbsfähigkeit und den Gewinn neuer Marktanteile. Bei innovativen hochkomplexen elektronischen Schaltungen scheinen diese beiden Forderungen, einerseits nach steigenden Qualitätsstandards und andererseits trotz zunehmender Komplexität immer kürzeren Entwicklungszeiten, einen nur schwer lösbaren Widerspruch darzustellen. Durch einen systematischen Einsatz von CAD-gestützten Entwurfswerkzeugen und die Beachtung erprobter Entwurfsabläufe ('Design-Flows') läßt sich dieses Problem jedoch relativ gut bewältigen. Bei methodischem Vorgehen kann, trotz steigender Integrationsdichte und wachsender Komplexität, digitale Hardware in immer kürzerer Zeit mit einer bemerkenswerten Fehlerfreiheit entworfen werden.

Neben der eigentlichen, spezifizierten Funktion der Schaltung nimmt bei modernen Design- Flows die Berücksichtigung der Testbarkeit und die Testvorbereitung eine zentrale Rolle im Entwurfsprozeß ein, denn bei nahezu konstant bleibender Anzahl externer Anschlüsse (Pins) werden die komplexeren Schaltungen für den Test immer undurchsichtiger und die Testkosten steigen exponentiell an. Wirtschaftliche Tests können nur noch gewährleistet werden, wenn bereits zu Beginn des Entwurfsprozesses die Testmethode festgelegt wird und die zu entwerfende Schaltung um die erforderliche Testlogik erweitert wird. Parallel zum Entwurf der Schaltung muss mit Hilfe von Logiksimulationen, Fehlersimulationen und ATPG (Automatic Test Pattern Generation) dann die Möglichkeit des 100%-igen Tests der Schaltung nachgewiesen werden. Die hierbei entstandenen Testmuster sowie die laut Simulation zu erwartenden Ausgangsreaktionen der Schaltung werden später bei praktischen Tests an der realisierten Schaltung verwendet. Neben diesen CAD-gestützten Entwurfsverfahren, die zu einer weitgehenden Fehlerfreiheit führen, kann die Zeit bis zur Markteinführung der Produkte vor allem auch durch die Realisierung mit feldprogrammierbaren Gate-Arrays (FPGAs) verkürzt werden. Durch die Fortschritte in der Halbleitertechnologie ist es mittlerweile möglich, Schaltungen mit bis zu mehreren 100K Gatteräquivalenten in FPGAs zu programmieren. Dies ermöglicht insbesondere auch kleineren und mittleren Unternehmen kostengünstig und zeitsparend integrierte Schaltungen in kleinen Stückzahlen zu realisieren. Während FPGAs im eigenen Labor innerhalb von wenigen Sekunden programmiert und bei Bedarf re-programmiert werden können, müssen Gate-Array-; Standardzell- und 'full-custom'-entwürfe bei Halbleiterherstellern gefertigt werden. Hierbei können pro Durchlauf immer nur mehrere Tausend integrierte Schaltungen realisiert werden. Ein Durchlauf dauert dabei mindestens acht Wochen und kostet mehrere zigtausend Euro. Bei eventuell erforderlichen Änderungen ist ein erneuter Durchlauf notwendig, was zu einer Vervielfältigung der Kosten und einer erheblichen Verzögerung bis zur Markteinführung führt. Da im Rahmen eines vierstündigen Praktikumversuchs es nicht möglich ist, eine hochkomplexe Schaltung zu verstehen und zu entwerfen, werden im Rahmen dieses Versuchs ein einfacher BCD-Zähler sowie eine überschaubare 4-BIT Addier-/Subtrahierschaltung verwendet. Anhand dieser Demonstrationsschaltungen werden die wesentlichen Schritte eines durchgängigen, hierarchischen 'Bottom-Up' und eines 'Top-Down' Entwurfs durchlaufen. Die Bedeutung der frühzeitigen Festlegung der Teststrategie und die Integration der hierfür erforderlichen Testhilfen wird am Beispiel des Zählers verdeutlicht. Als Entwurfswerkzeug wird 'eproduct Designer' von 'Mentor' eingesetzt. 2. Grundlagen: Hierarchische Entwurfsverfahren Schaltungen mit überschaubarer Komplexität lassen sich durchaus sinnvoll im 'Buttom-Up'- Verfahren entwerfen. Bei dieser Vorgehensweise werden bei Digitalschaltungen Teilfunktionen auf Gatterebene entworfen und verifiziert. Diese Teilschaltungen werden zu Schaltungssymbolen zusammengefaßt und in übergeordneten Schaltplänen wiederverwendet. Dieses 2

Verfahren kann in mehreren Stufen durchlaufen werden, bis schließlich eine, die Spezifikation erfüllende Schaltung erstellt ist. Ein Vorteil dieser Methodik ist, daß bereits von Anfang an mit den realen Laufzeiten der verwendeten Gatter bzw. Technologie gearbeitet werden kann. Nachteilig ist, dass bei dieser Arbeitsweise keine Arbeit im Team sinnvoll. Dieses Verfahren wird industriell mittlerweile nur noch für den Entwurf von komplexen Schaltungselementen für Bibliotheken verwendet. Beim Entwurf hochkomplexer Schaltungen ist das hierarchische Prinzip des 'Top-Down'- Entwurfsverfahrens unverzichtbar. Im ersten Schritt wird auf der Basis der Spezifikation eine 'Black Box' der zu entwerfenden Schaltung mit den erforderlichen Anschlüssen erzeugt. Im folgenden Entwurfsschritt wird die Gesamtschaltung partitioniert, d. h. in Teilschaltungen zerlegt und es wird eine geeignete Teststrategie vereinbart. Die Teilschaltungen können bei Bedarf weiter zerlegt werden. Bei der Partitionierung ist darauf zu achten, daß möglichst viele Teilschaltungen allgemein gehalten werden, um sie bei späteren Entwürfen als bewährte Module wieder verwenden zu können. Die Verfeinerung der einzelnen Module wird solange fortgeführt, bis sie aus Bibliothekselementen oder Grundgattern aufgebaut sind. Anschließend werden die einzelnen Module sowie die Gesamtschaltung umfassend simuliert. Nach der Realisierung in Silizium wird die Schaltung zum Test mit den während der Simulation erzeugten Testmustern stimuliert. Als Vergleichsdaten werden die per Simulation erhaltenen Ausgangsmuster verwendet. Um das korrekte Zusammenspiel der Subsysteme zu prüfen, darf beim Test ein grober Funktionstest nicht fehlen. 3 Das Entwurfswerkzeug eproduct Designer eproduct Designer (epd) von Mentor ist ein sehr leistungsfähiges Entwurfswerkzeug, das sowohl unter Windows auf PCs als auch unter UNIX lauffähig ist. Dieses Tool hat sich als Industrie-Standard bei PC Anwendungen etabliert. eproduct Designer ist modular aufgebaut; die zahlreichen Module können auf die jeweilige Anwendung zugeschnitten beschafft werden, wobei nur wenige Module obligatorisch sind. Von nahezu dreißig Modulen kommt während dieses Versuchs nur eine kleine Auswahl zum Einsatz. Da das Werkzeug ein streng projektorientiertes Arbeiten erzwingt, muß im ersten Arbeitsschritt mit Hilfe des Project-Wizards ein Projekt im Dashboard angelegt werden. Im Projektordner sind neben dem Projektnamen und dem Arbeitsverzeichnis ('workdirectory') die Pfade aller im Projekt verfügbaren Bibliotheken enthalten. Neben den bereits mit dem Programmpaket gelieferten ca. 800 Bibliotheken lassen sich noch zahlreiche herstellerspezifische FPGA-Bibliotheken einbinden. Beim Anlegen des Projektes wird im Arbeitsverzeichnis eine Datei 'viewdraw.ini' erstellt, in der alle augenblicklichen Einstellungen für das Modul 'DxDesigner (ViewDraw' zur graphischen Schaltplaneingabe dokumentiert sind. Zur Schaltungsbeschreibung bietet epd verschiedene Wege an. Das Schaltverhalten kann mit Hilfe von Zustandsdiagrammen dargestellt und dann automatisch in ein synthetisierba- 3

res VHDL-Modell umgewandelt werden. Ausgehend vom VHDL-Modell, das auch manuell erstellt werden kann, kann per Synthese eine Gatterschaltung oder auch direkt eine Programmierdatei für verschiedene FPGA-Bausteine erstellt werden. Zur vertrauten graphischen Schaltplaneingabe mit Hilfe von Bibliotheksbausteinen steht das Modul 'DxDesigner' zur Verfügung, das während des Praktikums zum Einsatz kommt.. Zur Verifikation der zu entwerfenden Schaltungen bietet eproduct Designer sowohl die Möglichkeit der 'mixed-level' als auch der 'mixed-signal' Simulation. D. h. mit epd können gemischt analog/digitale Schaltungen mit Teilbeschreibungen auf verschiedenen Hierarchieebenen durchgeführt werden. Die Simulationsergebnisse lassen sich derart darstellen, daß sie mit Hilfe existierender Interfaces in verschiedenen Testsystemen weiterverwendet werden können. Sollten die entworfenen Schaltungen in programmierbaren Bausteinen (FPGA, CPLDs...) realisiert werden, so lassen sich in epd die Programmierdateien für verschiedene Hersteller direkt erzeugen bzw. es besteht die Möglichkeit, EDIF-Files für Netzlisten und Schematics zu exportieren, mit deren Hilfe der Übergang zu herstellerspezifischen Entwurfssystemen möglich ist. Für Schaltungen, die als Leiterplatte realisiert werden, besteht eine OLE-Verknüpfung zum leistungsfähigen Layout-System PowerPCB der Firma PADs, sowie ein Link zum JTAG- System, falls die Schaltungen mit Boundary-Scan ausgestattet sind. Für den Einsatz von 'eproduct Designer ist folgende File-Struktur erforderlich: Laufwerk (H): \ cd \... \ pads \ epd \... \ vf \Projekt_1 \... 4 Die Versuchsschaltung Da es utopisch ist, im Rahmen eines ca. 4-stündigen Praktikumversuchs eine komplexe Schaltung vom Entwurf bis zum Test bearbeiten zu wollen, werden die prinzipiellen Schritte der hierarchischen Entwurfsverfahren und des Tests an einem BCD-Zähler und einer überschaubaren 4-Bit Addierer-/Subtrahierer-Schaltung, die schon aus der Lehrveranstaltung 'Grundzüge der Elektronik II' bekannt sind, erläutert. 4

Spezifikation der Versuchsschaltungen: a) 'Top-Down-Up' Verfahren Gefordert wird eine Schaltung, die es ermöglicht, eine 4-Bit Dualzahl B zu einer 4-Bit Dualzahl A zu addieren bzw. B von A zu subtrahieren. Ein extern zugängliches Kontrollsignal ST soll steuern, ob eine Addition oder eine Subtraktion ausgeführt wird. ST = 0 soll eine Addition; ST = 1 eine Subtraktion auslösen. Bei der Subtraktion muss erkennbar sein, ob das Ergebnis als negative oder positive Zahl zu werten ist. Hinweis: Entwerfen Sie zunächst die Schaltung für die Addition und ergänzen Sie bitte diese erst nach der Verifikation der vollen Funktionalität zu geforderten Addier-/Subtrahierschaltung b) 'Bottom-Up' Verfahren Zu entwerfen ist ein Synchronzähler, der von 0 bis 999 zählt und beim Überlauf einen Schalttakt für die nächst höheren Dekaden erzeugt. c) Prüffreundlicher Entwurf Am Beispiel eines 32-Bit Zählers ist der wirtschaftliche Vorteil einer prüffreundlich entworfenen Schaltung bezüglich Testkosten auf zu zeigen. Zu a): Um das 'Top-Down'-Verfahren nachzuvollziehen, wird zunächst das Symbol der Gesamtschaltung mit der erforderlichen Anzahl von Ein- und Ausgängen erzeugt. Die Schaltung dann im folgenden Entwurfsschritt in 4 Teilschaltungen partitioniert, wobei jede Teilschaltung die Addition einer einzelnen Stelle der 4-Bit Dualzahl übernimmt. Dieser sogenannte Volladdierer, der drei Bits addiert, wird im nächsten Schritt aus Halbaddierern aufgebaut, die nur zwei Bits addieren können. Als letzte Stufe wird entsprechend dem Regularitätsprinzip der Halbaddierer aus fünf NAND Gattern aufgebaut Für die Verifikation und den späteren Test sind die Stimuli derart zu wählen, dass in jeder Stufe die volle Funktionalität gewährleistet werden kann; d. h. es sind alle Bitkombinationen zu testen. Zu b): Ausgehend von einem JK-Flip-Flop wird durch geeignete Beschaltung ein Toggle erzeugt, das mit jedem neuen Taktsignal seinen Ausgang ändert (0-1-0-1-0-..). Diese Schaltung wird in ein neues Schaltsymbol überführt, mit dem ein Dekadenzähler (0 9) aufgebaut wird. Mit Hilfe eines für den Dekadenzähler generierten Symbols wird der gesuchte Zähler (0 999) aufgebaut 5

Zu c): Anhand eines 32-Bit Zählers soll aufgezeigt werden, dass ohne prüfgerechten Entwurf der Test der Schaltung bei Verwendung eines 10 MHz-Taktes bis zu 880 sec dauern kann, was bei ca. 3ct pro Sekunde Testzeit zu Prüfkosten von 26,40 führen würde, d.h. das Bauteil ist wirtschaftlich nicht produzieren und zu vermarkten. Bei einer prüffreundlichen Schaltung unter Verwendung der 'Scan-Design-Technik' kann die gleiche Prüfschärfe in nur 96 µsec erreicht werden, was vernachlässigbare Testkosten bedeutet. Das Bauteil lässt sich nun wirtschaftlich herstellen. Dieser Versuchsteil wird am Praktikumstermin anhand einer vorgefertigten Schaltung diskutiert und demonstriert, zumal hierfür noch die Grundlagen fehlen. Mit diesem Versuchsteil wird auch der moderne Schaltungsentwurf auf Basis feldprogrammierbarer Schaltungen vorgestellt. 5 Versuchsdurchführung In dieser Versuchsanleitung wird darauf verzichtet, die Einzelschritte bei der Bedienung der Werkzeuge detailliert zu beschreiben. Die Bedienung wird bei der Versuchsdurchführung in Form eines geführten Versuchs vermittelt. Die für den Versuch erforderlichen Datenpfade auf dem Rechner sowie das Projekt sind zu Versuchsbeginn bereits angelegt. Die für die Verifikation der Teilschaltungen erforderlichen 'Command-Files' finden Sie im Pfad: O:\FE\Prof\wdenner\PUBLIC\techfun\Command_files Vorhandenes Projekt aktivieren Starten Sie das Programm-Modul 'Dashboard' durch Doppelklick auf das 'Innoveda eproduct Designer' Icon auf dem Desk-Top. Im Frame 'Folders' sind unter 'Projects' die auf dem Rechner vorhandenen Projekte aufgelistet. Selektieren Sie mit der rechten Maustaste das Projekt 'counter' und wählen Sie es im aufgehenden Fenster als aktives Projekt aus. Stellen Sie sicher, dass in der dem Projekt 'counter' zugeordneten 'library' die Bibliotheken 'builtin' und '74ls' eingetragen sind. Öffnen Sie nun das Modul 'DxDesigner' durch Einfaches anklicken des Icon 'Shortcuts. im Frame 6

Addier-/Subtrahierschaltung Erzeugen Sie ein Symbol '4-bit adder', das Sie im Schaltplan 'toplevel' verwenden. Dieser Schaltplan zeigt das '4-bit adder' Symbol mit den erforderlichen Ein- und Ausgängen. Unterlegen Sie dem '4-bit adder' Symbol eine Schaltung, bei der die zu entwerfende Gesamtschaltung in vier äquivalente Subsysteme ('fulladder') partitioniert ist, von denen jedes die Addition eine Stelle der 4-Bit Dualzahl übernimmt. Als 'fulladder' verwenden Sie bitte folgendes von Ihnen zu erzeugendes Schaltsymbol: Bauen Sie den Volladdierer aus Halbaddierern auf und ordnen Sie diesen Schaltplan dem Symbol 'fulladder' zu. Verwenden Sie hierfür folgendes Symbol für den Halbaddierer: 7

Als letzte Verfeinerungsstufe wird der Halbaddierer aus fünf NAND Gattern aufgebaut. Nachdem Sie sich von der richtigen Funktion der Addiererschaltung durch eine umfassende Simulation erzeugt haben, ist die Schaltung durch geeignetes Einfügen von vier Antivalenz- Gattern (exor-gatter) derart zu erweitern, dass Sie auch für Subtraktionen geeignet ist. Hierfür wird bei jeden B i Eingang ein Antivalenz-Gatter eingefügt. B i ST = BST i 8

Zählerentwurf Beschalten Sie das JK-FF aus der Bibliothek 'builtin' derart, dass es als 'Toggle.FF' arbeitet und lassen Sie bitte nach der Verifikation mit 'ViewSim' mit Hilfe von 'ViewGen' ein zugehöriges Symbol erzeugen. Verwenden Sie das erzeugte Toggle-Flip-Flop, um eine Dekade eines synchronen BCD- Zählers aufzubauen und führen Sie diese, wenn sie korrekt funktioniert, in ein Symbol 'Dekade' über. Mit dem Dekadensymbol ist ein Zähler '3-dekaden' aufzubauen, der von 0 bis 999 zählt und dann wieder bei 0 beginnt. 9

6. Häusliche Vorbereitung 1. Machen Sie sich mit der Addition und Subtraktion von Dualzahlen vertraut. 2. Analysieren Sie die Spezifikation und legen Sie fest, wie viele Ein- bzw. Ausgänge die geforderte Schaltung haben muß. Machen Sie sich klar, welche Aufgabe das Steuersignal ST schaltungsintern zu übernehmen hat. 3. Die gesuchte Schaltung kann in vier gleiche Subsysteme (steuerbare 1-Bit Volladdierer- /Subtrahierer-Schaltungen) zerlegt werden. Ergänzen Sie den angefangenen Schaltplan derart, daß bei ST=0 die 4-Bit Zahl B (B3,B2,B1,B0) zur 4-Bit Zahl A (A3,A2,A1,A0) addiert und bei ST=1 die Zahl B von A subtrahiert wird. Sum C_out Sum C_out Sum C_out Carry ST B A Carry ST B A Carry ST B A Carry ST B A LSB MSB Sum C_out 4. Vergewissern Sie sich, dass die vorgegebene Schaltung aus NAND-Gattern die Funktion eines Halbaddierers erfüllt. Erstellen Sie hierfür eine Wertetabelle. 5. Machen Sie sich mit dem Entwurf von Zählern vertraut. 6. Durch welche Erweiterung wird ein Dualzähler zu einem BCD-Zähler? 7. Machen Sie sich mit der Funktion des JK-Flip-Flops vertraut 10

8. Versuchsauswertung 1. Analysieren Sie bitte die zur Simulation der verschiedenen Teilschaltungen bereitgestellten Command-Files. 2. Kommentieren Sie die 'Waveform' Darstellungen der Toplevel-Verifikation mit dem Command-File 'fourbit.cmd'. Stellen Sie die Ergebnisse als vorzeichenbehaftete Dezimalzahl dar. Erläutern Sie am Beispiel eines positiven und eines negativen Ergebnisses, wie Sie zu der angegebenen Dezimalzahl kommen. 3. Überprüfen Sie anhand der Simulationsergebnisse die korrekte Funktion der von Ihnen erstellten Teilschaltungen für den Voll- und den Halbaddierer. 4. Kontrollieren Sie bitte ob mit dem Command-File 'fourbit.cmd' bei allen vier Volladdierern alle acht Eingangskombinationen geprüft wurden. A i 0 0 0 0 1 1 1 1 B i 0 0 1 1 0 0 1 1 C i 0 1 0 1 0 1 0 1 5. Analysieren Sie die 'Waveform' Darstellungen der Simulationsergebnisse für Entwurfsstufen der beiden Versuchsschaltungen. 11