Course detail

Programmable Logic Devices

FEKT-MPLDAcad. year: 2009/2010

The course is aimed to extend the knowledge of digital technique. Types of programmable devices: PLD devices with the PAL and PLA structure, FPGA devices. Special function blocks used in these devices. Description of the designed subsystems by textual means (HDL languages), graphical description. CAD development systems and their use for simulation of digital subsystems (combinational circuits, counters, state machines), and for their synthesis and implementation into PLD and FPGA devices. Functional verification of designed subsystems by programming laboratory kits.

Language of instruction

Czech

Number of ECTS credits

6

Mode of study

Not applicable.

Learning outcomes of the course unit

Students acquire survey of the programmable logic device types and of their use in digital design. They become familiar with development systems and with their use for description, synthesis, implementation and simulation of digital systems.

Prerequisites

Knowledge of digital design on the Bachelor´s degree level is requested.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Teaching methods depend on the type of course unit as specified in the article 7 of BUT Rules for Studies and Examinations.

Assesment methods and criteria linked to learning outcomes

The computer exercises and result of the final examination are evaluated.

Course curriculum

Survey of ways how to implement digital systems. Logic functions, their realization in PROM, PAL, PLA structures
Simple PLDs, their functional blocks, macrocells of GAL 16V8 and 20V8 devices. Other SPLD types, their labeling and parameters
Special PLD types (ZeroPower, low voltage types and others). Programming, programmers
Complex PLD devices - structure, basic properties
Basic FPGA structures and their elements
Implementation of complex combinational functions - multiple-pass and iterative structures, adder, comparator
Asynchronous latches RS and D in PLD structure
Synchronous systems in PLDs: Use of T-type flipflops and EX-OR gates. Mutual conversion of different flipflop types, emulation
One- and bidirectional binary counters, counters with shortened cycle - their description in HDL, number of terms
BCD counters, their implementation in PLD devices
Gray code counters with full and shortened cycle
LFSR counters - structure, advantages and disadvantages, their use
Return of counters into working cycle
State machines (SM): Moore and Mealy type, HDL description, their compilation to SOP form
Simplifying of SM - equivalent states, their finding. State coding for PLDs and FPGAs. Algorithmic description of SM
Timing in programmable devices, pipelining
FPGA devices - additional blocks: I/O standards, memory elements, blocks for frequency synthesis and for other handling of clock signals, multigigabit transceivers
Implementation of processors, use of intellectual property blocks
Boundary scan, metastability

Work placements

Not applicable.

Aims

The aim of the course is extension of knowledge of digital technique, especially of programmable logic devices and FPGAs. Students learn how to use these devices in their digital designs in diploma projects and in practice.

Specification of controlled education, way of implementation and compensation for absences

The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

KOLOUCH, J.: Programovatelné logické obvody - přednášky. [Skriptum FEKT VUT v Brně.] MJ servis, Brno 2005 (CS)
KOLOUCH, J.: Programovatelné logické obvody a návrh jejich aplikací v jazyku VHDL - počítačové cvičení. [Skriptum FEKT VUT v Brně.] MJ servis, Brno 2005 (CS)

Recommended reading

WAKERLY, J.: Digital Design - principles and practices. 4-th Ed. Pearson Education LTD, Prentice Hall, 2005 (EN)

Classification of course in study plans

  • Programme EEKR-M Master's

    branch M-TIT , 1. year of study, winter semester, optional interdisciplinary
    branch M-EST , 1. year of study, winter semester, optional specialized
    branch M-MEL , 2. year of study, winter semester, optional interdisciplinary
    branch M-SVE , 2. year of study, winter semester, optional interdisciplinary

  • Programme EEKR-CZV lifelong learning

    branch ET-CZV , 1. year of study, winter semester, optional specialized

Type of course unit

 

Lecture

26 hours, optionally

Teacher / Lecturer

Syllabus

Survey of ways how to implement digital systems. Logic functions, their realization in PROM, PAL, PLA structures
Simple PLDs, their functional blocks, macrocells of GAL 16V8 and 20V8 devices. Other SPLD types, their labeling and parameters
Special PLD types (ZeroPower, low voltage types and others). Programming, programmers
Complex PLD and FPGA devices - structure, basic properties
Implementation of complex combinational functions - multiple-pass and iterative structures, adder, comparator
Asynchronous latches RS and D in PLD structure
Synchronous systems in PLDs: Use of T-type flipflops and EX-OR gates. Mutual conversion of different flip-flop types, emulation
One- and bidirectional binary counters, counters with shortened cycle - their description in HDL, number of terms
BCD counters, their implementation in PLD devices
Gray code counters with full and shortened cycle
LFSR counters - structure, advantages and disadvantages, their use
Return of counters into working cycle
State machines (SM): Moore and Mealy type, HDL description, their compilation to SOP form
Simplifying of SM - equivalent states, their finding. State coding for PLDs and FPGAs. Algorithmic description of SM
Timing in programmable devices, pipelining
FPGA devices - additional blocks: I/O standards, memory elements, blocks for frequency synthesis and for further handling of clock signals, fast serial communication
Implementation of processors, use of intellectual property blocks
Boundary scan, metastability

Exercise in computer lab

39 hours, compulsory

Teacher / Lecturer

Syllabus

Survey of PLD devices and development systems. Basic work with development systems, HDL languages
ABEL language: description of combinational systems - SOP form, compilation, simulation, more complex statements like WHEN-THEN-ELSE, their compilation. Example: priority encoder
Synchronous systems: description methods, examples of various counter types
Fundamentals of VHDL language, behavioral and structural description, concurrent statements and processes. Hierarchically composed designs, graphical capture tools
Combinational logic description in VHDL, synthesis. Unwanted latch and how to avoid it
Behavioral description of edge-triggered registers. Binary, decade, LFSR counters
State machines: graphical and textual form of state diagram, example: bit sequence detectors. Graphical editors of state diagrams, StateCAD tool
Simulation, synthesis and implementation of the designs (continuously in all exercises)