Przedstawiono podstawowe kombinacyjne i sekwencyjne bloki funkcjonalne wykorzystywane w syntezie strukturalnej układów cyfrowych. Omówiono zasadę działania takich bloków jak multipleksery, demultipleksery, dekodery, rejestry, liczniki oraz pamięci. Przedstawiono także sposoby reprezentacji liczb z wykorzystaniem kodów NKB, U2 oraz zapisu stałoprzecinkowego.
4. Języki opisu sprzętu HDL na przykładzie VHDL
Przedstawiono podstawowe cechy języków HDL na przykładzie języka VHDL. Omówiono różne sposoby opisu projektowanego systemu. Zademonstrowano wykorzystanie VHDL’a do tworzenia testbench’a.
5. Język VHDL – podstawy
Przedstawiono podstawowe koncepcje dotyczące języka VHDL. Omówiono elementy składowe: słowa kluczowe, identyfikatory, obiekty danych, operatory, atrybuty.
6. Realizacja logiki kombinacyjnej
Przedstawiono sposoby realizacji logiki kombinacyjnej z wykorzystaniem struktur języka VHDL. Opisano sposoby implementacji podstawowych kombinacyjnych bloków funkcjonalnych, tj. multipleksery, dekodery, moduły opisane tablicą prawdy i równaniami boolowskimi.
7. Realizacja logiki sekwencyjnej
Przedstawiono sposoby realizacji logiki sekwencyjnej z wykorzystaniem struktur języka VHDL. Opisano sposoby implementacji podstawowych sekwencyjnych bloków funkcjonalnych, takich jak rejestry, automaty, liczniki.
8. Projektowanie hierarchiczne
Na przykładzie projektu zamka cyfrowego przedstawiano metodę projektowania hierarchicznego.
9. Projektowanie RTL
Przedstawiono metodologię projektowania na poziomie przesłań międzyrejestrowych RTL (Register Transfer Level). Na przykładzie algorytmu obliczania największego wspólnego dzielnika zademonstrowano zastosowanie koncepcji algorytmicznych maszyn stanu ASM (Algorithmic State Machines) oraz algorytmicznych maszyn stanu ze zintegrowaną ścieżka danych ASMD (Algorithmic State Machines with Data path).
10. Cyfrowe przetwarzanie sygnałów
Przedstawiono ogólne koncepcje związane z cyfrowym przetwarzaniem sygnałów. Omówiono sposoby sprzętowej realizacji podstawowych operacji arytmetycznych wykorzystanych w przetwarzaniu sygnałów. Przedstawiono zastosowanie algorytm znajdowania miejsca zerowego funkcji (metoda Newtona) do realizacji modułu sprzętowego obliczania przybliżonych wartości funkcji matematycznych.
11. Synteza strukturalna
Omówiono rożne metody optymalizacji (rozwijanie pętli, operacje RT realizowane w trybie Mealy’ego) na przykładzie strukturalnej realizacji sprzętowego modułu obliczania przybliżonych wartości funkcji matematycznych oraz algorytmu konwersji liczb binarnych na kod BCD.
12. Metody projektowania
Na przykładzie konwertera kodu binarnego na BCD przedstawiono różne sposoby projektowania układów cyfrowych. Zaprezentowano takie pojęcia jak układ operacyjny, układ sterujący, ASMD, potokowość.