Digitale Systemen

Vakken
INLDIG
DIGSE1
DIGSE2
PRODIG

Verwante vakken
GESPRG
INLMIC
MICPRG
PLCTEC

Projecten
Quartus
Old School
LaTeX

Links
Websites
Boeken

Informatie
Contact
De opleiding

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
-
* Grootte: 496544 bytes, MD5: f8fbcffa2c8f1fe4c83560956fd24eff, software: WinMD5Free

 

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.
digse2_sasm - eenvoudige command line assembler (met voorbeelden) voor de microprocessor, dit is een Code::Blocks project.

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.

Digitale Systemen