Eine Kaffeemaschine soll als FSM modelliert und mittels VHDL implementiert werden. Eine zu entwickelnde Testbench mit Stimuli soll die Schaltung verifizieren. Die Kaffeeausgabe soll beim Erreichen des Preises von 1,50€ stattfinden. 50 Cent, 1 Euro oder 2 Euro können zum Bezahlen genutzt werden. Bei Überschreiten des Preises soll zusätzlich zur Kaffeeausgabe das Wechselgeld ausgegeben werden. Dieses kann durch 1-Euro- und/oder 50-Cent-Münzen ausgegeben werden. Die Modellierung der Kaffeemaschine erfolgt unter der Annahme, dass ein Impuls der Länge einer Taktperiode für eine Kaffeeausgabe ausreichend ist und dieser durch eine externe Ansteuerung für die Kaffeepumpe weiterverarbeitet wird. Durch einen Münzschlitz kann die Eingabe der verschiedenen Münzen nur nacheinander ausgeführt werden. Die Ausgabe des Wechselgeldes kann hingegen parallel stattfinden, da die Münzen in einen Schacht an der Kaffeemaschine fallen.
Inhaltsverzeichnis
1 Einleitung
1.1 Problemstellung
1.2 Ziel und Aufbau der Arbeit
2 Grundlagen und Definitionen
2.1 FSM
2.2 Zustandsgraph
2.3 VHDL
2.4 Syntheseprozess mithilfe eines EDA-Werkzeuges
2.5 Simulation mithilfe einer Testbench und Stimuli
3 Entwicklung des Automatenmodells
3.1 Beschreibung des Automatenverhaltens in Worten
3.2 Grafische Darstellung
3.3 Tabellarische Darstellung
4 Implementierung des Automatenmodells in VHDL
4.1 Entity
4.2 Architecture
4.3 Implementierung der Zustandsübergangsfunktion
4.4 Implementierung des Zustandsspeichers
4.5 Implementierung der Ausgabefunktion
4.6 Syntheseergebnis
4.7 Pin-Zuordnung
5 Funktionstest
6 Schlussteil
Zielsetzung & Themen
Diese Arbeit verfolgt das Ziel, das Verhalten einer Kaffeemaschine als Moore-Automat (FSM) zu modellieren, mittels der Hardwarebeschreibungssprache VHDL zu implementieren und die Funktionsweise durch eine Testbench sowie anschließende Synthese und Simulation wissenschaftlich zu verifizieren.
- Modellierung eines endlichen Zustandsautomaten (FSM) für eine Kaffeemaschine
- Entwurf der Zustandsübergangslogik und Ausgabefunktion in VHDL
- Durchführung des Syntheseprozesses mittels Intel Quartus II
- Verifikation der Schaltung durch Simulation mit ModelSim
Auszug aus dem Buch
1.1 Problemstellung
Eine Kaffeemaschine soll als FSM modelliert und mittels VHDL implementiert werden. Eine zu entwickelnde Testbench mit Stimuli soll die Schaltung verifizieren. Die Kaffeeausgabe soll beim Erreichen des Preises von 1,50€ stattfinden. 50 Cent, 1 Euro oder 2 Euro können zum Bezahlen genutzt werden. Bei Überschreiten des Preises soll zusätzlich zur Kaffeeausgabe das Wechselgeld ausgegeben werden. Dieses kann durch 1-Euro- und/oder 50-Cent-Münzen ausgegeben werden.
Die Modellierung der Kaffeemaschine erfolgt unter der Annahme, dass ein Impuls der Länge einer Taktperiode für eine Kaffeeausgabe ausreichend ist und dieser durch eine externe Ansteuerung für die Kaffeepumpe weiterverarbeitet wird. Durch einen Münzschlitz kann die Eingabe der verschiedenen Münzen nur nacheinander ausgeführt werden. Die Ausgabe des Wechselgeldes kann hingegen parallel stattfinden, da die Münzen in einen Schacht an der Kaffeemaschine fallen.
Zusammenfassung der Kapitel
1 Einleitung: Beschreibt die Relevanz digitaler Schaltungen und definiert die Aufgabenstellung der Automatensteuerung für die Kaffeemaschine.
2 Grundlagen und Definitionen: Erläutert die theoretischen Hintergründe von Finite State Machines, VHDL-Beschreibungsebenen sowie den Synthese- und Simulationsprozess.
3 Entwicklung des Automatenmodells: Überführt das Anforderungsprofil in eine textuelle, grafische (Zustandsgraph) und tabellarische (Zustandsfolgetabelle) Beschreibung.
4 Implementierung des Automatenmodells in VHDL: Zeigt die konkrete Umsetzung in VHDL-Code durch Entity-, Architecture-, Zustands- und Ausgabebeschreibung und dokumentiert das Syntheseergebnis.
5 Funktionstest: Validiert das Design mittels einer Testbench in ModelSim, um die korrekte Reaktionsweise des Automaten auf verschiedene Eingangsreize zu bestätigen.
6 Schlussteil: Reflektiert die methodische Vorgehensweise und diskutiert weiterführende Optimierungsmöglichkeiten der Steuerung sowie industrierelevante Aspekte.
Schlüsselwörter
VHDL, FSM, Finite State Machine, Kaffeemaschine, FPGA, Quartus II, Synthese, Simulation, Testbench, Zustandsautomat, Hardwarebeschreibungssprache, Moore-Automat, Logikgatter, Modellierung, Signalverarbeitung.
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Es geht um den Entwurf und die Implementierung einer Steuerungseinheit für eine Kaffeemaschine basierend auf dem Konzept eines endlichen Zustandsautomaten.
Was sind die zentralen Themenfelder?
Die Arbeit behandelt die Modellierung von Zuständen, die hardwarenahe Programmierung in VHDL und die formale Verifikation mittels Simulationstools.
Was ist die Forschungsfrage oder Zielvorgabe?
Das primäre Ziel ist die erfolgreiche Umsetzung der Automatenlogik in VHDL, bei der ein Preis von 1,50 Euro korrekt durch Münzeinwurf verarbeitet und Wechselgeld funktionsgerecht ausgegeben wird.
Welche wissenschaftliche Methode wird verwendet?
Es wird das Moore-Automatenmodell genutzt, das in VHDL-Code übersetzt, mittels EDA-Software synthetisiert und in einer Testumgebung simuliert wird.
Was wird im Hauptteil der Arbeit behandelt?
Der Hauptteil umfasst sowohl die logische Entwicklung der Zustandsübergänge als auch deren technische Realisierung in Form von Entity- und Architecture-Einheiten in VHDL.
Welche Schlagworte charakterisieren das Dokument?
Schlüsselbegriffe sind VHDL, FSM, FPGA-Synthese, Zustandsdiagramme und funktionale Simulation.
Wie unterscheidet sich der hier gewählte Moore-Automat von einem Mealy-Automaten?
Der Moore-Automat zeichnet sich dadurch aus, dass die Ausgänge ausschließlich vom aktuellen Zustand abhängen, was zu taktgebundenem, stabilem Verhalten führt, im Gegensatz zur direkten, eingangsabhängigen Ausgabe bei Mealy-Systemen.
Was passiert bei einem Reset-Signal im Automatenmodell?
Das Reset-Signal setzt den aktuellen Zustand der Kaffeemaschine auf den Anfangszustand "Warte" zurück, wodurch alle laufenden Prozesse unterbrochen werden.
Warum wurde für die Ein- und Ausgänge der Datentyp BIT gewählt?
Da für das Modell lediglich die Zustandswerte 0 und 1 benötigt wurden, war die Verwendung von Standard-BIT-Typen ausreichend und kompakter als die Nutzung komplexerer, 9-wertiger Datentypen.
- Citar trabajo
- David Protzmann (Autor), 2022, Eine Kaffeemaschine als "Finite State Machine", Múnich, GRIN Verlag, https://www.grin.com/document/1502722