Kursus: IAS0600 Digital Systems Design with VHDL (2022) | Moodle

  • General

    banner

    • Hello everyone!

      Welcome to the Digital Systems Design with VHDL course. Nowadays digital systems are everywhere. There are more electronic components in modern cars than mechanical parts. You might already know how to design digital systems using schematic diagrams, but in this course, we will learn how to create them using hardware description language such as VHDL. Digital circuits created during the practical classes will be implemented on FPGAs. FPGAs (Field Programmable Gate Arrays) are an example of reconfigurable computing systems that are gaining more and more popularity these days.


    • The detailed schedule of the course with topics covered during the lectures and corresponding labs.

    • Grading system

      Total points = Lab points + Exam + Bonus points = 60 + 40 + 10

    • Recommended reading

      • Volnei A. Pedroni, Circuit Design and Simulation with VHDL, The MIT Press, 2010.
      • Sarah L. Harris & David M. Harris, Digital Design and Computer Architecture, Elsevier, 2016.
  • Ava kõik

    Sulge kõik

  • Juhised: jaotise nime klõpsates kuvatakse/peidetakse jaotis.

    • This week we will talk about the course organization, grading system, and lab schedule. There will be no practice.

    • During the lecture, we will talk about the hardware description languages and the basics of the VHDL.

      During the practice, we will do the first lab tutorial. It will introduce Vivado IDE which we will use throughout the course. We will learn how to create a design entity and verify it using a testbench.

    • During the lecture, we will talk about reconfigurable computing and FPGA as an example of reconfigurable hardware. The link below points to the Xilinx webpage dedicated to numerous FPGA applications.

      During the practice, we will do the second lab tutorial. It will show how to automate the output verification during the simulation and how to synthesize the created design and implement it on the FPGA board. Save files from the folder below to the lab computer, we will need them for the tutorial.

    • During the lecture, we will talk about dataflow modeling style and concurrent statements. For the lab, you will design a 2-bit comparator.

    • During the lecture, we will talk about structural modeling style, use of the components, and block design in Vivado. For the lab, you will implement a 2-bit adder.

    • Lab notes:

      1. Make sure that the name of your block design is different from the name of your VHDL file for the 2-bit adder.

      2. If you do some changes in the block design after creating the HDL wrapper, right-click on the block design file and select Create HDL wrapper again. This will force Vivado to update created HDL files accordingly.

    • During the lecture, we will talk about behavioral modeling style, processes, and sequential logic. For the lab, you will implement a counter that counts how many times the button was pressed.

    • There will be no lecture during these weeks. Lab 4 is designed to test the knowledge you gained during the first half of the course. For the lab, you will need to implement a creeping line with your student code on 8 seven-segment displays. Read the manual carefully and build your design following the suggested steps. They will help you to create a considerably complex design in a comprehensive manner.

      Additionally, you can test your knowledge using the self-assessment quiz below. The quiz is optional and it will not affect your grade.

    • During the lecture, we will talk about complex arithmetic circuits and different ways to make your design parameterizable. For the lab, you will implement a parameterizable multiplier.

    • During the lecture, we will talk about Finite State Machines (FSM) to control the datapath to design complex sequential circuits. For the lab, you will implement a greatest common divisor algorithm.

      Take a look at the attached example of a simple calculator created using FSM and datapath. The archive contains VHDL files that you can simulate and an algorithmic graph. It will help you with the lab.