Data

01.09.2020

Laboratorium Architektury Komputerów

W laboratorium prowadzone są zajęcia Architektury Komputerów, Systemów Wbudowanych oraz Urządzeń Zewnętrznych. Uczestnicy poznają architekturę mikroprocesorów oraz pozostałe elementy systemów mikrokomputerowych w tym elementy sterujące i wykonawcze interfejsu użytkownika, system przerwań, magistrale, tryby adresowania, a także funkcje oprogramowania systemowego. Nabyta wiedza umożliwi im w przyszłości konstruowanie i serwisowanie urządzeń mikrokomputerowych. Pozwoli także na tworzenie oprogramowania w języku niskiego poziomu, jakim jest asembler.

Zajęcia dotyczące komputera klasy PC obejmują zagadnienia architektury wewnętrznej mikroprocesorów zgodnych z 8086 oraz elementów architektury komputerów PC: magistrali PCI, systemu przerwań, pamięci konfiguracyjnej i podsystemu BIOS. Szczegółowa tematyka zajęć obejmuje:

  • Model programowy procesora, rejestry, tryby adresowania pamięci, lista rozkazów, podstawowe instrukcje. Rejestr wskaźnika rozkazów i wskaźnika stosu, wywoływanie procedur. Różnice między procesorami RISC i CISC.
  • Elementy wejściowe i wyjściowe systemu mikrokomputerowego. Porty mikrokontrolera 8051. Wyświetlacze siedmiosegmentowe LED, wyświetlacze alfanumeryczne LCD. Klawiatury sekwencyjne i matrycowe.
  • System przerwań mikrokontrolera 8051. Cykl przyjęcia przerwania, obsługa przerwań. Rola stosu w obsłudze przerwań. Maskowanie przerwań.
  • Architektura wewnętrzna procesorów rodziny 8086. Segmentacja pamięci. Obliczanie adresu w rzeczywistym trybie pracy. Adres logiczny, fizyczny, efektywny. Struktura programu w systemie operacyjnym. Funkcje systemu operacyjnego, przerwania programowe.
  • Identyfikacja procesorów zgodnych z 8086. Rozkaz CPUID, funkcje tego rozkazu, zwracane informacje.
  • Magistrala PCI. Pamięć konfiguracyjna urządzenia podłączonego do płyty głównej komputera za pośrednictwem magistrali PCI. Adresowanie urządzenia PCI.
  • Rola BIOS-u w komputerze PC, funkcje BIOS-u, pamięć konfiguracyjna CMOS.
  • System przerwań komputera PC, przerwania maskowalne i niemaskowalne, tablica wektorów przerwań. Obliczanie adresu procedury obsługi przerwania. Przejmowanie przerwań systemowych.

Celem kursu „systemy wbudowane” jest przedstawienie procesu konstrukcji mikroprocesorowych systemów wbudowanych z uwzględnieniem wyboru elementów sprzętowych, systemu operacyjnego i tworzenia oprogramowania aplikacyjnego. Proces obejmuje ważne elementy takie jak tworzenie specyfikacji oraz dokumentacji całości systemu oraz podział funkcji między część realizowaną sprzętowo i programowo. Uczestnicy poznają narzędzia do projektowania symulacji i implementacji układów cyfrowych w środowisku matryc programowalnych. W trakcie zajęć studenci zapoznają się z następującą tematyką:

  • Implementacja superpętli w architekturach 8-bitowych 8051 i AVR.
  • System operacyjny NutOS, wielozadaniowość bez wywłaszczania.
  • Obsługa  edytora schematu w aplikacji Xilinx ISE Foundation.
  • Wykonanie prostego projektu układu cyfrowego w edytorze schematu z wykorzystaniem. dostępnych elementów bibliotecznych.
  • Symulacją układu z wykorzystaniem symulatora ISIM.
  • Budowa elementu bibliotecznego.
  • Obsługa  edytora VHDL w aplikacji Xilinx ISE Foundation.
  • Wykonanie prostego projektu układu cyfrowego w edytorze VHDL.
  • Łączenie elementów bibliotecznych w VHDL.
  • Symulacja układu z wykorzystaniem symulatora ModelSIM.
  • Podłączenie projektu układu cyfrowego do wejść wyjść układu programowalnego.
  • Implementacja projektu dla określonego układu programowalnego.

Nabyta wiedza umożliwi studentom projektowanie systemów wbudowanych, doboru elementów sprzętowych i programowych.

Zajęcia laboratoryjne prowadzone są z wykorzystaniem systemów mikrokomputerowych. Jeden z systemów jest oparty na mikrokomputerze jednoukładowym serii 8051, drugi system to komputer klasy PC oraz system ZL6PLD z układem FPGA XC3S200. Zajęcia dotyczące mikrokontrolerów 8051 są prowadzone z wykorzystaniem dydaktycznego systemu mikrokomputerowego DSM-51 wyposażonego w elementy interfejsu użytkownika: wyświetlacze LED, wyświetlacz alfanumeryczny LCD i klawiaturę. Natomiast zajęcia dotyczące układów reprogramowalnych realizowane będą z wykorzystaniem systemu uruchomieniowego ZL6PLD wyposażonego w: układ XC3S200 w obudowie VQFP100, wbudowany konfigurator z pamięcią Flash XCF01S, gniazdo do dołączenia alfanumerycznego wyświetlacza LCD o organizacji 2x16 znaków, 4-cyfrowy, multipleksowany wyświetlacz LED, 8 diod LED, 4 przyciski do dowolnych zastosowań, przycisk wymuszający inicjalizację FPGA (odczyt konfiguracji z pamięci Flash), generator kwarcowy 3,6864 MHz w podstawce, głośnik piezoelektryczny, interfejs RS232 z konwerterem napięciowym, złącze interfejsu USB (ZL1USB_A), złącze interfejsu JTAG (konfiguracja FPGA, programowanie konfiguratora).

Główne wyposażenie laboratorium stanowi:

  • 8 stanowisk komputerowych typu PC,
  • 4 zestawy uruchomieniowe DSM-51,
  • 4 zestawy uruchomieniowe ZL6PLD z układem FPGA XC3S200,
  • 4 zestawy laboratoryjne (silniki krokowe) Urządzeń Zewnętrznych.
    Oprogramowanie dla systemów FPGA zainstalowane na maszynach wirtualnych (realizowane w laboratorium Bezpieczeństwa Systemów Komputerowych):
  • University ISE™ Foundation™ with ISE™ Simulator
  • University System Generator + AccelDSP™ Bundle
  • University Embedded Development Kit (EDK) Bundle
  • University ChipScope Pro™ Tool
  • ModelSim XE