Digitale Systeem Engineering 2
Digitale Systeemengineering 2 (DIGSE2) introduceert toestandsmachines (Finite State Machine, FSM), waarmee complexe digitale systemen kunnen worden gerealiseerd. Complexe systemen kunnen worden opgedeeld in een datapad (de logica waarlangs data wordt bewerkt) en een besturing (control) die het datapad aanstuurt. Deze datapadsystemen hebben meestal een vaste functie. Om een generiek datapad-systeem op te zetten waarmee de gebruiker een specifieke bewerking kan realiseren, moet het datapad-systeem uitgebreid worden met een geheugen waarin de bewerkingen zijn opgeslagen. Samen met enige extra logica resulteert dit in een eenvoudige (micro-)processor. De theorie wordt in de praktijk gestaafd met een aantal opdrachten. Hiervoor wordt de Quartus II-omgeving van Altera gebruikt, in combinatie met het DE0-bord van Terasic. Voor simulatie wordt ModelSim gebruikt.
Boek
De volgende boeken worden gebruikt:
Digitale Techniek, 1e druk, Jesse op den Brouw, Delft Academic Press, ISBN: 97890-6562-4468.
The Student's Guide to VHDL, 2nd Edition, Peter J. Ashenden, ISBN: 978-1-55860-865-8.
Deze boeken worden ook bij het vak DIGSE1 gebruikt.
Alternatief: dictaat.
Slides
Tijdens de colleges wordt gebruik gemaakt van een aantal PowerPoint-presentaties.
Introductie Studiewijzer | Introductie van het vak, inhoud en studiebelastingsuren. | 17-05-2021 20-04-2021 |
Week 1 | Introductie toestandsmachines, toestandsmachines in VHDL. | 17-05-2021 |
Week 2 | Vervolg toestandsmachines, patroonherkenners en meer. | 17-05-2021 |
Week 3 | Testbenches voor toestandsmachines. | 17-05-2021 |
Week 4 | Datapadsystemen, voorbeeld van een sequentiële vermenigvuldiger. | 17-05-2021 |
Week 5 | Ontwerp van een eenvoudige microprocessor | 17-05-2021 |
Week 6 | - | - |
Week 7 | Bespreken proeftoets. | 17-05-2021 |
Uitwerkingen opgaven boek
In het boek staan opgaven. De uitwerkingen kunnen hier gevonden worden. Laatste update 24-10-2020.
Practicum
Tijdens het practicum wordt een aantal opdrachten uitgewerkt. Er is een installatiehandleiding voor Windows en Linux, helaas draait Quartus niet op een Mac.
Intro | alle opdrachten pin assignments switch test FSM tutorial |
Alle opdrachten in één document, een QSF-bestand met alle standaard pinnen (switches, buttons, leds, 7-segments), een project om de schakelaars te testen en een tutorial over de State Machine Editor. | 02-05-2018 |
Week 1 | opdracht | De opdracht voor deze week is het invoeren van de Moore-machine die in de slides besproken is. | 02-05-2018 |
Week 2 | opdracht | Ontwerp van een personendetector. | 02-05-2018 |
Week 3 | opdracht pres_beep.zip kook_sim.zip |
Ontwerp van de bekende kookwekker zoals die in zoveel huishoudens voorkomt. Voorbeeldcode van de prescaler en beeper. Voorbeeldcode voor simuleren counter. | 02-05-2018 |
Week 4 | Als week 3. | ||
Week 5 | opdracht rs232-ref.sof* |
Ontwerp van een zender/ontvanger voor seriële communi-catie volgens het bekende RS-232-protocol. Gebruik de referentie-implementatie om te testen. | 02-05-2018 |
Week 6 | Als week 5. | ||
Week 7 | - | Geen opdracht, uitloopweek | - |
Quartus projecten en voorbeelden
Hieronder staan voorbeelden van VHDL-beschrijvingen. Het kant-en-klare Quartus-projecten. De projecten zijn te gebruiken met Quartus v11.0 - v13.1. Pak het zip-bestand uit in een map en dubbelklik op het .qpf-bestand. Quartus zal dan automatisch starten.
Week 1 | digse2_mealy_example - dit is het voorbeeld van de Mealy-machine uit de slides van week 1 digse2_moore_example - dit is het voorbeeld van de Moore-machine uit de slides van week 1 |
01-11-2016 |
Week 2 | digse2_herk110 - herkenner voor het patroon 110 | 12-05-2015 |
Week 3 | ||
Week 4 | digse2_seq_mult_2 - uitgewerkt voorbeeld van de sequentiële vermenigvuldiger met gescheiden datapad en control (FSM). digse2_seq_mult_2_fsmd - uitgewerkt voorbeeld van de vermenigvuldiger als FSM met datapad geïntegreerd. digse2_seq_mult_2_algo - uitgewerkt voorbeeld van de vermenigvuldiger met een meer algorithmische benadering. digse2_stopwatch - voorbeeld van eenvoudige stopwatch. |
14-03-2017 |
Week 5 | digse2_microprocessor - complete VHDL-beschrijving van de besproken microprocessor met een aantal programmavoorbeelden. |
28-05-2015 |
Week 6 | - | - |
Week 7 | - | - |
Proeftoets
Om de stof te oefenen is hier de proeftoets. De antwoorden kunnen worden opgevraagd via de contactpagina.