Course code: ELE-3603

Programmable circuits

Apply between July 20 and August 9
Campus Narvik
Semester / Year Autumn 2026
Duration 1 semester
Level Høyere grads nivå
Credits 5

About the course

The course can be taken as a single course.

This course introduces the students to digital circuit design using VHDL. Emphasis will be put on understanding the difference between normal programming of instructions running in a CPU and digital circuit synthesis in an FPGA. The students will get experience in designing digital circuits in an FPGA in many areas:

  • Combinatorial circuits, e.g. comparators, (de)multiplexers, encoders, and adders/subtractors.
  • Ordinary sequential circuits using Register Transfer Logic (RTL), e.g. data flip-flops, shift-registers, and counters.
  • Application specific sequential circuits coded as Finite State Machines with Datapath (FSMD), using patterns in VHDL programming to ensure that timing requirements in the FPGA are met.
  • Applications can be traffic lights, line coding in tele communication, UART, SPI, I2C, CPU, etc.
  • Different types of simulation of VHDL code to verify the functionality of the implementation.
  • How to use the User Constraint File (UCF), be able to synthesise, implement, and program a design to an FPGA.
  • Use of IP-cores for rapid implementation of advanced circuitry.

Use of advanced debugging tools, including IP-cores for Virtual I/O (VIO) og Integrated Logic Analyser (ILA).

Admission requirements

A relevant undergraduate Bachelor degree in Engineering program in power electronics and electrical machines. Basic knowledge in power systems is also an advantage.

In addition, the following requirements must be met:

- minimum 25 credits in mathematics (equivalent to Mathematical Methods 1, 2 og 3), 5 credits in statistics and 7,5 ects i physics on a higher level is required.

Application code: 9371

Objectives of the course

After completing the subject, the candidate will have the following learning outcome:

Knowledge:

The candidate knows:

  • The principles for the design av development of FPGA based systems.
  • Describe how to represent numbers and letters in VHDL.
  • Understand the difference between combinatorial and sequential logic.
  • Understand the difference between signals and variables in VHDL.
  • Understand how to use coding patterns to separate the combinatorial and the sequential part of a state machine to ensure adherence to the timing constraints of an FPGA.
  • Principles for testing and trouble shooting on digital circuits.

Skills:

The candidate can

  • Use tools and software for digital design.
  • Write VHDL code from a requirements specification.
  • Write VHDL code for combinatorial circuits.
  • Write VHDL code for sequential circuits.
  • Use coding patterns to build a state machine in VHDL that meets the timing constraints in an FPGA.

Use Vitrual I/O (VIO) and Integrated Logic Analyser (ILA) to test, troubleshoot and verify the functionality of a digital circuit.

Prerequisites

Anbefalte forkunnskaper

ELE-3609 Signal Distribution and Transmission, ELE-3611 Programming, ELE-3612 Instrumentation and Measuring Systems

Teaching methods

Classroom lectures delivered in two gatherings of 3 days each. Video lectures followed by online meetings.

Language of instruction and examination

English

Schedule

The schedules are normally finalized and published well in advance of the start of the semester, often a few weeks beforehand. This gives students the opportunity to organize their studies and prepare for upcoming activities.

It is recommended to check the schedule regularly, as changes may occur.

Information to incoming exchange students

This course is open to incoming exchange students.

Study Level: Master's

This course has admission prerequisites, which are listed under the Admission requirements section. Please review this information carefully before adding the course to your Learning Agreement

For details on how to apply for exchange, course selection guidelines, or to contact the Incoming Admissions Team, please visit: Admissions for Student Exchange.

Examination

Exams
Oral exam Duration: 15 Minutes Grade:
A–E, fail F
Coursework requirements

To take an examination, the student must have passed the following coursework requirements

Project Grade:
Approved – not approved

Everything you need to know about before, during, and after the exam; registration, absence, appeals, and diplomas: UiT Exams homepage

More info about the coursework requirements

A larger project work done in groups or individually. Students choose groups. Unique assignment for each group. The assignment will be to design and implement a module in an FPGA as part of a larger construct. Fulfillment of project work is not dependent on other groups.

More info about the oral exam

Individual oral exam in an online meeting.

Re-sit examination

Students who do not pass the previous ordinary examination can gain access to a re-sit examination.

Previous years and semesters

Kontakt oss

Responsible unit: Institutt for elektroteknologi