Projektowanie mikroprocesorowych i rekonfigurowalnych układów sterowania

UKŁADY PROGRAMOWALNE FPGA



Materiały do wykładu (slajdy):

Część 1 Wprowadzenie, środowisko projektowe Xilinx ISE Design Suite, języki HDL, metodologia projektowania, VHDL a Verilog, projektowanie strukturalne RTL (edytor schematów)
Część 2 Opis strukturalny, moduł, instancje, hierarchia, typy danych, podstawowe elementy logiczne, reprezentacja liczb, przypisania ciągłe
Część 3 Operatory, przygotowanie symulacji - jednostka testowa, procesy always i initial, instrukcja opóźnienia, blok begin...end oraz fork...join, modelowanie behawioralne, modelowanie układów kombinacyjnych: lista wrażliwości procesu, instrukcja warunkowa, instrukcja case, reguły specyfikacji układów kombinacyjnych. Funkcje i zadania (tasks).
Część 4 Pętle w języku Verilog. Elementy sekwencyjne: zatrzaski i przerzutniki flip-flop, reguły specyfikacji elementów sekwencyjnych, przypisania proceduralne: przypisanie blokujące i nie-blokujące, modelowanie automatów sekwencyjnych
Część 5 Elementy trójstanowe, techniki kodowania HDL (wybrane przykłady), procesy współbieżne - synchronizacja, zdarzenia (events), instrukcja wait, układy mikroprogramowane, mikrokontrolery osadzone w FPGA - wprowdzenie.
Dodatek Modelowanie układów sekwencyjno-czasowych.

Materiały do wykładu (prezentacja z komentarzem głosowym):

cz. 1 Praca w środowisku ISE (edytor schematów)
cz. 2 Układy kombinacyjne (pętle), elementy sekwencyjne, przypisania blokujące oraz nie-blokujące, realizacja automatów sekwencyjnych.
cz. 3 Przypisania w verilogu, techniki kodowania, modelowanie prosesów współbieżnych, modelowanie układów mikroprogramowanych, podsumowanie.


Materiały do Laboratorium
    Do pobrania: Xilinx ISE Design Suite
    ISE Design Suite - instrukcja
    Dokumentacja do płyty DIGILENT Spartan-3A (UG330)
       Plik UCF do płyty
    Dokumentacja do płyty DIGILENT Nexys4 DDR Artix-7
       Plik UCF do płyty

    Zadanie 2: projektowanie układów kombinacyjnych (schemat/LUT)
       Skrypt Verilog wyliczający wartości INIT dla LUT (symulator)
    Zadanie 3: układy sekwencyjne, opis strukturalny Verilog (kodowanie one-hot)
       Kompletny projekt ISE dla zadania 3 (do uzupełnienia)
    Zadanie 4: behawioralne modelowanie układów kombinacyjnych (Verilog)
    Zadanie 5: behawioralne modelowanie układów kombinacyjnych c.d.
    Zadanie 6: modelowanie układów sekwencyjnych
    Zadanie 7: modelowanie układów sekwencyjno-czasowych
       Przykładowy projekt ISE demonstrujący odmiany opisu HDL tych układów
    Zadanie 8: projektowanie FPGA z wbudowanym mikrokontrolerem
       Projekt ISE z mikrokontrolerem
       Przykładowy kod w języku C dla mikrokontrolera
       Tworzenie projektu w środowisku MPLAB X - instrukcja



Projekty
    Informacje
   Tematy: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16



Zalecana literatura do przedmiotu:

  1. Łuba T., Tomaszewicz P.: Technika Cyfrowa, Podręcznik Multimedialny, Warszawa 2006.
  2. Hajduk Z.: Wprowadzenie do języka Verilog, BTC, Warszawa 2009.
  3. Łuba T. (red.), Rawski M., Tomaszewicz P., Zbierzchowski B.: Synteza układów cyfrowych, Wydawnictwa Komunikacji i Łączności, Warszawa 2003.
  4. Zbysiński P., Pasierbiński J.: Układy programowalne pierwsze kroki, Wydawnictwo BTC, Warszawa 2004.

Dokumentacja do pobrania (Verilog):

  1. The Verilog Hardware Description Language
  2. FPGA Compiler II / FPGA Express Verilog HDL
  3. Xilinx Synthesis Technology User Guide
  4. CSCI 320 Computer Architecture Handbook on Verilog HDL
  5. World Class Verilog & SystemVerilog Training


Literatura pomocnicza do tematyki projektowania w Verilogu:

  1. Thomas D. E., Moorby P. R.: The Verilog Hardware Desciption Language, Fifth Edition, Kluwer Academic Publishers, 2002.
  2. Lee J. M.: Verilog Quickstart, Third Edition, Kluwer Academic Publishers, 2002.
  3. Sutherland S.: Verilog 2001 – A Guide to the New Features of the Verilog HDL, Kluwer Academic Publishers, 2002.
  4. Sutherland S., Davidmann S., Flake p.: System Verilog For Design, Kluwer Academic Publishers, 2004.