700.005 (24W) Basic Lab: Digital Circuits

Wintersemester 2024/25

Anmeldefrist abgelaufen.

Erster Termin der LV
03.10.2024 13:30 - 17:30 B04.1.02 On Campus
Nächster Termin:
12.12.2024 13:30 - 17:30 B04.1.02 On Campus

Überblick

Lehrende/r
LV-Titel englisch Basic Lab: Digital Circuits
LV-Art Kurs (prüfungsimmanente LV )
LV-Modell Präsenzlehrveranstaltung
Semesterstunde/n 2.0
ECTS-Anrechnungspunkte 2.0
Anmeldungen 16 (16 max.)
Organisationseinheit
Unterrichtssprache Englisch
mögliche Sprache/n der Leistungserbringung Englisch
LV-Beginn 03.10.2024
eLearning zum Moodle-Kurs

Zeit und Ort

Liste der Termine wird geladen...

LV-Beschreibung

Intendierte Lernergebnisse

Im Allgemeinen

Nach der Erfindung des Transistors stieg die Komplexität beim Entwurf von Schaltungen, insbesondere von digitalen Schaltungen, enorm an. Um den Entwurf und das Testen von Schaltungen zu vereinfachen, wurden Hardware-Beschreibungssprachen (HDLs) entwickelt.
Eine HDL (z. B. VHDL oder Verilog) ist eine Programmiersprache, mit der ein Ingenieur die Struktur und das Verhalten von elektronischen Schaltungen definieren kann.
Mit Hilfe einer HDL kann eine Schaltung analysiert, simuliert und in tatsächliche Hardware synthetisiert werden!

Heutzutage werden HDLs für den Entwurf von Schaltungen für FPGAs (Field-Programmable Gate Array) und ASICs (Application-Specific Integrated Circuit) verwendet.

Lernergebnis

Lernergebnis für diesen Kurs:

  • Verständnis der grundlegenden Konzepte von HDL und insbesondere VHDL.
  • Erlernen des Entwerfens, der Simulation und der Synthese von digitalen Schaltungen auf Hardware, dem Altera DE2-115 Development and Education Board.

Soft-skills:

  • Problemlösung
  • Fehlersuche
  • Selbstständigkeit
  • Planung
  • Einhaltung von Fristen

Lehrmethodik

Aktives Lernen in Form von Projektarbeiten.

Inhalt/e

Der Kurs bereitet die wesentlichen Konzepte des Entwurfs von digitalen Schaltungen vor. Darauf aufbauend werden in diesem Labor kombinatorische und sequentielle Schaltungen entworfen, simuliert und implementiert. Als Entwicklungsumgebungen werden Questa/ModelSim und Quartus eingesetzt.

Ziel des Labors ist es, dass jeder Studierende einen funktionierenden Taschenrechner entwirft, der Addition, Subtraktion, Multiplikation und Division unterstützt. Der Rechner soll Operanden von einer Tastatur erhalten und das Endergebnis auf dem FPGA-Board anzeigen.

Die Arbeit ist in 3 Assignments über das akademische Semester verteilt. Auf dem Weg zu ihrem Taschenrechner sollen die Studierenden verschiedene Schaltungen implementieren, wie z.B.:

  • Register
  • Steuerungen für LED- und 7-Segment-Anzeigen
  • Empfang von Eingaben von Schaltern und Tastern sowie Entwicklung von Treibern für den Empfang von Eingaben von einer PS/2-Tastatur
  • Logikeinheit und die zentrale Logik des Taschenrechners
  • Um ihre Lösung zu verifizieren, werden die Studierenden ihre Taschenrechner auf ihre individuellen FPGA-Boards laden und den korrekten Betrieb überprüfen

Erwartete Vorkenntnisse

  • Kenntnisse in einer beliebigen Programmiersprache
  • Kenntnisse im Entwurf von digitalen Schaltungen

Literatur

Effective Coding with VHDL, PRINCIPLES AND BEST PRACTICE, Ricardo Jasinski (Available in the library of the university)

Intendierte Lernergebnisse

In General

After the invention of the transistor the complexity in designing circuits and especially digital ones rose tremendously.
In order to simplify the designing and testing of circuits, Hardware Description Languages (HDLs) were created.
An HDL (e.g., VHDL or Verilog) is a programming language that allows an engineer to define the structure and behavior of electronic circuits.
With the help of an HDL a circuit can be analyzed simulated and synthesized into actual hardware!

Today HDLs are used to design circuits for Field-Programmable Gate Array (FPGA) and Application-Specific Integrated Circuit (ASIC) boards.

Learning outcome of this course

The  learning outcomes of the course are:

  • Understanding the fundamental concepts of HDL and more specifically VHDL.
  • Learn to design simulate as well as synthesize digital circuits on actual hardware the Altera DE2-115 Development and Education Board

Soft-skills:

  • Problem-solving
  • Troubleshooting
  • Independence
  • Planning
  • Meeting deadlines

Lehrmethodik

Active learning in the form of project works.

Inhalt/e

The course prepares the essential concepts of the design of digital circuits.
Based on this, combinatorial and sequential circuits are designed, simulated and implemented in this laboratory.
Questa/ModelSim and Quartus are used as development environments.

The goal of the lab is for every student to design a functioning calculator that supports addition, substraction, multiplication and division.
The calculator should receive operands from a keyboard and display the final result on the FPGA board.

The work is divided into 3 assignments over the academic semester. On the road to create their calculator, the students are called to implement various circuits like:

  • Registers
  • LED and 7-segment display controllers
  • Receive inputs from switches, push-buttons are well as develop the drivers for obtaining inputs from a ps/2 keyboard
  • Arithmetic Logic Unit and the Central logic of the calculator.

To verify their solution, the students are going to load their calculators onto their individual FPGA boards and verify proper operation.

Erwartete Vorkenntnisse

  • Knowledge of any programming language
  • knowledge in design of digital circuits

Literatur

Effective Coding with VHDL, PRINCIPLES AND BEST PRACTICE, Ricardo Jasinski (Available in the library of the university)

Prüfungsinformationen

Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.

Prüfungsmethode/n

  • Präsentation, Live Demo und Diskussion der Teilaufgaben
  • Abgabe von Präsentation und Source Code 

Prüfungsinhalt/e

Die Präsentationsinhalte umfassen:

  • Implementierung und Design der Lösungen
  • Ergebnisse der Teilaufgaben und deren Präsentation
  • Live Demo

Beurteilungskriterien/-maßstäbe

In diesem Praktikum wird die Fähigkeit bewertet, die gestellten Aufgaben (bauen aufeinander auf) zu lösen und tatsächlich in VHDL zu programmieren. Daher besteht die Endnote aus :

  • Präsentation (inkl. Live Demo und Diskussion) und Abgabe der Teilaufgabe 1 - 30%
  • Präsentation (inkl. Live Demo und Diskussion) und Abgabe der Teilaufgabe 2 - 30%
  • Präsentation (inkl. Live Demo und Diskussion) und Abgabe der Teilaufgabe 3 - 40%

Die Aufgaben müssen in der Gruppe gelöst werden. Alle dazugehörigen Studierenden müssen präsent sein und aktiv an der Präsentation und Diskussion teilnehmen, um eine Bewertung zu erhalten. Die finale Bewertung pro Teilaufgabe ist ident für jedes Gruppenmitglied. 

Prüfungsmethode/n

  • Presentation, live demo, and discussion of the subtasks
  • Submission of presentation and source code

Prüfungsinhalt/e

The presentation contents include:

  • Implementation and design of the solutions
  • Results of the subtasks and their presentation
  • Live demo

Beurteilungskriterien/-maßstäbe

In this lab, the ability of a person to solve the given tasks (build on each other) and actually program in VHDL is assessed. Therefore, the final grade consists of:

  • Presentation (including live demo and discussion) and submission of subtask 1 - 30%
  • Presentation (including live demo and discussion) and submission of subtask 2 - 30%
  • Presentation (including live demo and discussion) and submission of subtask 3 - 40%

Since the tasks are solved in groups, all associated students must be present and actively participate in the presentation and discussion to receive a grade. The final grade for each subtask is identical for each group member.

Beurteilungsschema

Note Benotungsschema

Position im Curriculum

  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Grundlagenlabor Informationstechnik (Wahlfach)
      • 10a Ausgewählte 5 Laborübungen aus den angebotenen Grundlagenlaborübungen der Informationstechnik (zu jeweils 2 ECTS-AP) ( 0.0h KS / 10.0 ECTS)
        • 700.005 Basic Lab: Digital Circuits (2.0h KS / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.1 Ausgewählte 2 Laborübungen aus den angebotenen Grundlagenlaborübungen der Informationstechnik (zu jeweils 2 ECTS-AP) ( 0.0h KS / 4.0 ECTS)
        • 700.005 Basic Lab: Digital Circuits (2.0h KS / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 22W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.2 Zwei weitere Grundlagenlabore der Informationstechnik, welche in (10b.1) nicht gewählt wurden ( 0.0h KS / 4.0 ECTS)
        • 700.005 Basic Lab: Digital Circuits (2.0h KS / 2.0 ECTS)
          Absolvierung im 3., 4., 5., 6. Semester empfohlen
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 17W.1)
    • Fach: Informationstechnische Vertiefung sowie mathematische Ergänzung (Wahlfach)
      • 10b.1 Wahl von 2 Laborübungen aus den angebotenen Grundlagenlaborübungen der Informationstechnik ( 0.0h KS / 4.0 ECTS)
        • 700.005 Basic Lab: Digital Circuits (2.0h KS / 2.0 ECTS)
          Absolvierung im 3. Semester empfohlen
  • Bachelorstudium Robotics and Artificial Intelligence (SKZ: 295, Version: 22W.1)
    • Fach: Labs Robotics and AI (Wahlfach)
      • 7.1 Wahl von Laborübungen aus dem Angebot der Informationstechnik, sowie zu Robotics & AI ( 0.0h KS / 12.0 ECTS)
        • 700.005 Basic Lab: Digital Circuits (2.0h KS / 2.0 ECTS)

Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung

Wintersemester 2023/24
  • 700.005 KS Basic Lab: Digital Circuits (2.0h / 2.0ECTS)
  • 700.861 KS Basic Lab: Digital Circuits (2.0h / 2.0ECTS)
Wintersemester 2022/23
  • 700.005 KS Basic Lab: Digital Circuits (2.0h / 2.0ECTS)
Wintersemester 2021/22
  • 700.005 KS Grundlagenlabor: Digitale Schaltungen (2.0h / 2.0ECTS)
Sommersemester 2021
  • 700.005 KU Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2018/19
  • 700.005 KS Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2017/18
  • 700.005 KS Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2016/17
  • 700.005 KS Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2015/16
  • 700.005 KS Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2014/15
  • 700.005 KU Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2013/14
  • 700.005 KU Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2012/13
  • 700.005 KU Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)
Wintersemester 2011/12
  • 700.005 KU Grundlagenlabor: Pervasive Computing (2.0h / 2.0ECTS)