Projektowanie mikroprocesorowych i rekonfigurowalnych układów sterowania

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 implementowane w FPGA, mikrokontroler P16CORE
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



Zadania laboratoryjne
    Zadanie 1: Praca w środowisku Xilinx ISE
    Zadanie 2: Edytor schematów, układy kombinacyjne z tablicami LUT
    Zadanie 3: Edytor schematów, układy sekwencyjne
       Moduł Verilog (do symulacji) obliczający wartości INIT dla tablic LUT
       kompletna jednostka testowa dla zadania 3
       Wskzazówka: dekompozycja równań wzbudzeń dla LUT4
       Kompletny projekt w środowisku ISE do uzupełnienia
    Zadanie 4: Opis strukturalny w języku Verilog (układy sekwencyjne)
    Zadanie 5: Behawioralne modelowanie układów kombinacyjnych I
       kompletny projekt ISE do zadania
    Zadanie 6: Behawioralne modelowanie układów kombinacyjnych II
    Zadanie 7: Modelowanie układów sekwencyjnych w języku Verilog
    Zadanie 8: Modelowanie układów sekwencyjno-czasowych w języku Verilog
       Przykładowy projekt ISE do zadania
    Zadanie 9: Wykorzystanie mikrokontrolera wbduowanego w FPGA
    Zadanie 10: Modelowanie z wykorzystaniem języka Verilog oraz mikrokontrolera



Projekty
   Informacje ogólne
   Kompletny projekt ISE z mikrokrokontrolerem
     szablon kodu w języku C dla mikrokontrolera
   Projekt ISE dla modelu linii
   Projekt ISE dla modelu windy
   Projekt ISE dla modelu pralki
   Projekt ISE dla modelu sortownicy
   Projekt ISE dla modelu sygnalizacji świetlnej



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