Mikroprocesory i kontrolery Z 3. czyli Zakuć, Zdać i choć trochę Zapamiętać. Materiały do kolokwiów. dr hab. inż. Zbigniew Czaja

Podobne dokumenty
Wykład Mikroprocesory i kontrolery

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

LEKCJA TEMAT: Zasada działania komputera.

WPROWADZENIE Mikrosterownik mikrokontrolery

Organizacja typowego mikroprocesora

Mikroprocesor Operacje wejścia / wyjścia

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Wstęp Architektura... 13

Architektura komputera

2. Architektura mikrokontrolerów PIC16F8x... 13

System mikroprocesorowy i peryferia. Dariusz Chaberski

Temat: Pamięci. Programowalne struktury logiczne.

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Architektura komputerów

Podział układów cyfrowych. rkijanka

Schemat blokowy procesora rdzeniowego ATmega16. Głównym zadaniem JC jest zapewnienie poprawnego i szybkiego wykonywania programu.

MIKROKONTROLERY I MIKROPROCESORY

LEKCJA TEMAT: Współczesne procesory.

Budowa i zasada działania komputera. dr Artur Bartoszewski

Mikrokontrolery i mikrosystemy Z 3. czyli Zakuć, Zdać i choć trochę Zapamiętać. Materiały do kolokwiów. dr hab. inż.

Logiczny model komputera i działanie procesora. Część 1.

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

Architektura komputerów. Układy wejścia-wyjścia komputera

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Technika Mikroprocesorowa

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Architektura komputerów

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Architektura komputerów

ARCHITEKTURA PROCESORA,

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

Magistrala systemowa (System Bus)

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Podstawy Informatyki JA-L i Pamięci

Architektura systemów komputerowych. dr Artur Bartoszewski

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wykład II. Pamięci półprzewodnikowe. Studia Podyplomowe INFORMATYKA Architektura komputerów

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

Architektura systemów komputerowych

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania

Układy czasowo-licznikowe w systemach mikroprocesorowych

Wykład I. Podstawowe pojęcia Pamięci półprzewodnikowe. Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Architektura komputerów

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Komunikacja w mikrokontrolerach Laboratorium

Hardware mikrokontrolera X51

Podstawy Techniki Mikroprocesorowej

Szkolenia specjalistyczne

Standard transmisji równoległej LPT Centronics

Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Programowanie w językach asemblera i C

Mikrokontrolery czyli o czym to będzie...

Budowa komputera Komputer computer computare

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

LICZNIKI PODZIAŁ I PARAMETRY

Układy wejścia/wyjścia

CYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe

Urządzenia zewnętrzne

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM

Budowa systemów komputerowych

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

Metody obsługi zdarzeń

dokument DOK wersja 1.0

Struktura i działanie jednostki centralnej

Wstęp: Interfejs portu równoległego 6821 i portu szeregowego 6850 firmy Motorola

Mikroprocesory i Mikrosterowniki

Architektura potokowa RISC

Przykładowe pytania DSP 1

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Technika mikroprocesorowa

PRZERZUTNIKI: 1. Należą do grupy bloków sekwencyjnych, 2. podstawowe układy pamiętające

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

1. Poznanie właściwości i zasady działania rejestrów przesuwnych. 2. Poznanie właściwości i zasady działania liczników pierścieniowych.

dr inż. Jarosław Forenc

Kurs Zaawansowany S7. Spis treści. Dzień 1

Charakterystyka mikrokontrolerów

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Statyczne badanie przerzutników - ćwiczenie 3

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Transkrypt:

Mikroprocesory i kontrolery Materiały do kolokwiów Z 3 czyli Zakuć, Zdać i choć trochę Zapamiętać dr hab. inż. Zbigniew Czaja Gdańsk 2015

Mikroprocesory i kontrolery Z 3 2 Przedmowa Materiały Z 3 przeznaczone są głównie z myślą o tych studentach, którzy nie chcą umieć, a zwłaszcza zrozumieć, treści wykładu z Mikroprocesorów i kontrolerów i wystarczy im tylko nauczenie się na pamięć bez rozumienia odpowiedzi na poszczególne pytania w celu zaliczenia egzaminu. Powstanie materiałów Z 3 zostało zainspirowane tym, iż w obiegu krążą opracowania typu pytanie odpowiedź z błędami bezkrytycznie przyjmowanymi przez studentów (a przecież, wystarczyłoby zajrzeć do materiałów z wykładu, aby odkryć te błędy). Do nauki do kolokwiów zachęcam do korzystania z materiałów do wykładu (Tom I do pierwszej części egzaminu, a Tom II do drugiej). Po to powstały. Zawierają one treści stanowiące logiczną całość. Przecież dane zagadnienie, czy fakt naukowy, rozwiązanie techniczne itd. wynika z wcześniejszego zagadnienia, faktu czy rozwiązania, czyli jak to jest w nauce i technice jedno wynika z drugiego. Ponadto, bywają one ze sobą powiązane. Inaczej mówiąc, stanowią razem spójną całość, do której po prostu na potrzeby egzaminu przygotowano kilka pytań takich, aby odpowiedzi na nie nie były za długie (na napisanie odpowiedzi na jedno pytanie szacunkowo powinno wystarczyć 10 minut). Ponadto, zachęcam do uczęszczania na wykłady, gdyż wysłuchanie ich pozwala na zrozumienie treści, co ułatwia naukę do egzaminu. Przedstawiane są na nich także przykłady nieopisane w materiałach do wykładu, przekazywane są wskazówki jak się uczyć ze zrozumieniem schematów blokowych i przebiegów czasowych. Nawet można zadawać pytania wykładowcy jak się nie zrozumiało danej rzeczy lub chce się czegoś dodatkowego dowiedzieć związanego z treściami wykładu. Materiały Z 3 zawierają wyłącznie opracowania tzw. zagadnień elementarnych poruszanych na wykładzie. Treści zagadnień podstawowych, czyli odpowiedzi na pozostałe pytania, zawarte są w materiałach do wykładu. Nauczenie się odpowiedzi na pytania elementarne gwarantuje uzyskanie maksymalnie 36 pkt. na 60 pkt. z egzaminu (60%), co pozwala na uzyskanie co najwyżej oceny 3,5 (przy założeniu, iż uzyskano od 28 pkt. do 34 pkt. za laboratorium).

Mikroprocesory i kontrolery Z 3 3 I. Zagadnienia elementarne i ich treści obowiązujące do pierwszej części egzaminu Mikroprocesory : 1. Podstawowe bramki logiczne (funkcja, symbol, wyrażenie, logiczne). 2. Definicje i cechy formaty wektorów informacji cyfrowej i definicja informacji cyfrowej. Wektorem informacji cyfrowej nazywa się uporządkowany wektor, którego elementami są zmienne binarne 0 i 1 Cechy wektora informacji cyfrowej: współrzędna wektora nosi nazwę bita, długość (1,4, 8, 16, 32 bity), kolejność najczęściej od najstarszego bita (MSB Most Significiant Bit) do najmłodszego bita (LSB Least Significiant Bit). Informacją cyfrową nazywa się informację przedstawioną za pomocą ciągu wektorów informacji cyfrowej, tzn. wektorów których współrzędne są zmiennymi binarnymi.

Mikroprocesory i kontrolery Z 3 4 3 Definicje układów kombinacyjnych, sekwencyjnych, synchronicznych i asynchronicznych. W układzie kombinacyjnym stan wejść jednoznacznie określa stan wyjść układu (np. bramki logiczne, połączenie odpowiedniej liczby i rodzajów bramek, bez sprzężeń zwrotnych (np. rys. 2)). W układzie sekwencyjnym stan jego wyjść zależy od stanu wejść oraz od poprzednich stanów układu (czyli są to układy z pamięcią, np. przerzutniki). Układem asynchronicznym nazywamy taki układ cyfrowy, dla którego w dowolnym momencie jego działania stan wejść oddziaływuje na stan wyjść, czyli ich własności nie zależą od żadnego przebiegu czasowego (np. asynchroniczny przerzutnik RS). Układ synchroniczny to układ cyfrowy, dla którego stan wejść wpływa na stan wyjść jedynie w pewnych określonych odcinkach czasu pracy układu zwanych czasem czynnym, natomiast w pozostałych odcinkach czasu zwanych czasem martwym stan wejść nie wpływa na stan wyjść. Odcinki czasu czynnego i martwego wyznaczane są przez podanie specjalnego przebiegu zwanego przebiegiem zegarowym lub taktującym na wejście zwane wejściem zegarowym lub taktującym. 4. Definicja, symbol logiczny i zasada działania przerzutnika. Przerzutnik (z ang. flip-flop) jest to podstawowy element pamiętający każdego układu cyfrowego, przeznaczonego do przechowywania i ewentualnego przetwarzania informacji. Przerzutnik zdolny jest do zapamiętania jednego bitu informacji. Np. grupa ośmiu odpowiednio połączonych ze sobą przerzutników tworzy układ zwany rejestrem, zdolny już do pamiętania jednego bajta informacji. Symbol graficzny przerzutnika synchronicznego 5. Definicja, budowa i zasada działania rejestru buforowego i przesuwnego oraz linii cyfrowych. Rejestrem buforowym (w skrócie rejestrem) nazywa się zespół przerzutników synchronicznych o wspólnym wejściu synchronizującym i wspólnym wejściu zerującym, przeznaczony do krótkotrwałego przechowania wektora informacji cyfrowej, np. w celu poddania go określonemu przetwarzaniu lub w oczekiwaniu na chwilę przekazania go do dalszego przetwarzania.

Mikroprocesory i kontrolery Z 3 5 Symbol rejestru buforowego n-bitowego Rejestrem przesuwnym nazywa się zespół przerzutników synchronicznych, umożliwiający wprowadzanie i wyprowadzanie wektorów informacji cyfrowej w sposób bitowo-szeregowy w czasie. Symbole rejestru przesuwnego n-bitowego o równoległym wejściu i szeregowym wyjściu (a), o szeregowym wejściu i równoległym wyjściu (b) Wejściem/wyjściem cyfrowym równoległym nazywamy takie wejście/wyjście (składające się z n linii cyfrowych), które umożliwia wprowadzenie/wyprowadzenie do/z układu cyfrowego wszystkich n bitów słowa w jednym takcie zegarowym. Wejściem/wyjściem cyfrowym szeregowym nazywamy takie wejście/wyjście, które umożliwia wprowadzanie/wyprowadzenie informacji do układu bit po bicie. Do wprowadzenia słowa n-bitowego potrzeba n taktów zegara. 6. Definicje systemu mikroprocesorowego, mikrokomputera, mikroprocesora oraz ich architektury, budowa i zasada działania. Mikrosystem inaczej systemem mikroprocesorowym nazywa się system przeznaczony do realizacji dowolnego zadania dającego się sprowadzić do przetwarzania wektorów informacji cyfrowej, w skład którego wchodzi: sprzęt elektroniczny, jak mikroprocesory czy mikrokontrolery, urządzenia zewnętrzne, nadajniki i odbiorniki informacji, itp., oprogramowanie określające taki sposób działania sprzętu mikrosystemu, który zapewni realizację jego działania. Określenie sprzęt elektroniczny (hardware) oznacza płytę drukowaną (printed board) z umieszczonymi na niej układami scalonymi techniki mikroprocesorowej a także innymi elementami i układami elektronicznymi. Określenie oprogramowanie (software) oznacza opracowany przez twórców systemu algorytm działania systemu wynikający z założonej funkcji użytkowej systemu. Fizycznie algorytm ten znajduje się w jednym z elementów sprzętowych systemu, tj. w pamięci.

Mikroprocesory i kontrolery Z 3 6 Mikrokomputerem nazywa się cyfrowy scalony element elektroniczny bardzo wielkiej skali integracji (w tym przypadku zwany mikrokontrolerem czy procesor sygnałowym) lub układ złożony z elementów dużej skali integracji, w skład którego wchodzi: mikroprocesor (CPU ang. Central Processing Unit), pamięć przechowująca rozkazy dla mikroprocesora np. typu ROM (ang. Read-Only Memory), dane oraz wyniki operacji np. typu RAM (ang. Random Access Memory), układy (porty) wejścia-wyjścia (ang. input-output units) zwane inaczej układami peryferyjnymi (ang. peripherial units) umożliwiające wprowadzanie do pamięci rozkazów i danych i wyprowadzanie wyników oraz komunikację z otoczeniem, magistrale inaczej szyny systemowe (ang. bus) czyli zespoły linii sygnałów binarnych organizujące pracę mikrokomputera. Wyróżniamy: szynę danych (ang. data bus), szynę adresową (ang. address bus) oraz szynę sterującą (ang. control bus). Mikroprocesorem (CPU) nazywa się cyfrowy układ scalony wielkiej skali integracji, przeznaczony do realizacji operacji arytmetyczno-logicznych na wektorach informacji cyfrowej, zwanych danymi, wprowadzanych z pamięci i rejestrów układów wejścia-wyjścia. Rodzaj wykonywanej operacji jest określony przez wektory informacji cyfrowej zwane rozkazami, które mikroprocesor pobiera z pamięci. Wyniki wykonywanych operacji może mikroprocesor przekazywać do pamięci lub rejestrów układów wejścia-wyjścia.

Mikroprocesory i kontrolery Z 3 7 rejestr rozkazów IR (ang. Instruction Register) przechowywany jest w nim kod aktualnie wykonywanego rozkazu. Kody rozkazów pobierane są do rejestru rozkazów z pamięci układ sterujący w tym bloku znajduje się dekoder rozkazów służący do dekodowania rozkazu zawartego w rejestrze rozkazów. Na tej podstawie układ sterowania wytwarza wewnętrzne i/lub zewnętrzne sygnały sterujące (na magistrali sterującej) realizujące dany rozkaz. ALU (uniwersalna jednostka arytmetyczno logiczna) wykonująca wszelkie operacje arytmetyczne i logiczne. Rodzaj wykonywanych operacji zależy od wewnętrznych sygnałów wytwarzanych przez układ sterujący. rejestry dostępne programowo: rejestr flagowy (statusowy) zawierający dodatkowe cechy wyniku wykonywanej operacji, potrzebne do podjęcia decyzji o dalszym sposobie przetwarzania informacji.. licznik rozkazów PC (ang. Program Counter) rejestr mikroprocesorowy zawierający adres komórki pamięci, w której przechowywany jest kod rozkazu przeznaczony do wykonania jako następny. wskaźnik stosu rejestr zawierający adres ostatniej zapełnionej komórki stosu (wierzchołka stosu). rejestry robocze (uniwersalne) lub ogólnego przeznaczenia GPR (ang. General Purpose Registers) pewny zestaw rejestrów ogólnego przeznaczenia. Mają przechowywać argumenty wykonanych operacji i wyniki. 7. Definicja, symbol, cechy i zasada działania układu ALU. Układy ALU są uniwersalnymi, sterowalnymi elementami do realizacji operacji arytmetycznych i logicznych na wektorach informacji cyfrowej cechy: Uniwersalność oznacza możliwość ich zastosowania do realizacji funkcjonalnie pełnego zbioru operacji arytmetycznych i logicznych. Oznacza to, że za pomocą operacji zawartych w tym zbiorze można wykonać dowolne przetwarzanie wektorów informacji cyfrowej (danych). Sterowalność oznacza możliwość wyboru realizowanej operacji na drodze nastawienia właściwych sygnałów sterujących. Symbol ALU wraz z sygnałami Znaczenie sygnałów ALU zasada działania: A n i B n dane n-bitowe na których będą wykonywane operacje arytmetyczno-logiczne, Y n n-bitowy wynik operacji arytmetyczno-logicznej,

Mikroprocesory i kontrolery Z 3 8 Sygnały sterujące sygnały służące do wyboru operacji realizowanej na danych (w zależności od kodu rozkazu), Wektor statusowy linie z sygnałami informującymi o wyniku operacji arytmetyczno-logicznej, wartości ich są zapisywane w rejestrze statusowym. 8. Definicja przesłania międzyrejestrowego, magistrali bitowo-równoległej. Definicja przesłania międzyrejestrowego: Przesłaniem rejestrowym nazywamy wpisywanie wektora informacji cyfrowej znajdującego się w jednym rejestrze (zwanym rejestrem nadajnikiem) do innego rejestru (zwanego rejestrem odbiornikiem). Definicja magistrali bitowo-równoległej: Magistralą bitowo-równoległą (w skrócie magistralą) nazywa się pęk linii i zestaw elementów przełączających, umożliwiających przekazywanie informacji cyfrowej w sposób bitowo-równoległy w czasie, od jednego z wielu rejestrów nadajników do jednego z wielu rejestrów odbiorników, przy czym w każdej chwili możliwe jest przekazywanie informacji tylko między jednym określonym nadajnikiem i jednym określonym odbiornikiem. 9. Podział i praca szyn systemowych (magistral) oraz pełnione przez nie funkcje. W skład szyn systemowych wchodzą: szyna danych (ang. Data Bus) przeznaczona jest do przesyłania danych, wyników oraz kodów instrukcji, jest to magistrala dwukierunkowa z liniami trójstanowymi, o szerokości (8/16/32/64 bity). szyna adresowa (ang. Address Bus) przesyłane są adresy komórek pamięci lub układów we/wy z którymi chce się komunikować mikroprocesor magistrala jednokierunkowa adresy są generowane przez mikroprocesor, natomiast trafiają do pamięci bądź do układów we/wy, szyna sterująca (ang. Control Bus) właściwie zestaw linii sterujących, linie te służą do sterowania pracą układów współpracujących z mikroprocesorem oraz do sygnalizowania pewnych ich określonych stanów, np.: sygnały dostępu (odczyt i zapis do pamięci, układów we/wy), sygnały stanu inne informacje o kontekście pracy procesora, zerowanie (procesora, układów zewnętrznych), przerwania sygnalizacja zgłoszenia i potwierdzenia przyjęcia, obsługa transmisji DMA, sygnały zegarowe. 10. Definicja, schemat logiczny, budowa i zasada działania pamięci półprzewodnikowej w systemach mikroprocesorowych. Pamięcią półprzewodnikową nazywamy układ scalony służący do przechowywania zbioru wektorów informacji cyfrowej.

Mikroprocesory i kontrolery Z 3 9 Na magistrali adresowej jest wystawiany adres komórki pamięci, na której ma zostać wykonana operacja zapisu lub odczytu. Szerokość magistrali adresowej m określa maksymalną liczbę komórek które mogą być zapamiętane w danym układzie pamięci (2 m ). Szyny danych służą do wprowadzania (podczas zapisu) i wyprowadzania (podczas odczytu) danych do/z pamięci. Sygnały wchodzące w skład szyny sterującej są uzależnione od konkretnego typu pamięci. Często są to trzy sygnały oznaczane jako: CE (Chip Enable) uaktywnienie układu pamięci możliwy jest zapis lub odczyt do/z układu. OE (Output Enable) używany jest podczas operacji czytania z pamięci. Po jego doprowadzeniu na szynie danych układu pamięci pojawia się zawartość tej komórki pamięci, na którą wskazywał stan szyny adresowej bezpośrednio przed doprowadzeniem sygnału OE. WE (Write Enable) używany jest podczas operacji wpisywania do pamięci. Po jego doprowadzeniu do tej komórki pamięci, na którą wskazywał stan szyny adresowej bezpośrednio przed doprowadzeniem sygnału WR wpisywana jest wartość zgodna z aktualnym stanem szyny danych. 11. Definicja pamięci półprzewodnikowej stałej ROM i o dostępie swobodnym RAM. Definicja pamięci półprzewodnikowej stałej: Pamięcią stałą (ROM ang. Read Only Memory) nazywa się pamięć umożliwiającą podczas współpracy z innymi elementami mikrosystemu wyłącznie odczytywanie swojej zawartości Definicja pamięci RAM: Pamięcią półprzewodnikową o dostępie swobodnym (RAM ang. Random Access Memory) nazywa się pamięć umożliwiającą wpisywanie i odczytywanie informacji z czasem praktycznie niezależnym od miejsca pobytu informacji w pamięci. Istnieją dwa główne typy tych pamięci RAM: pamięć statyczna SRAM, przechowuje bity informacji w postaci stanów przerzutników bistabilnych. Każda komórka pamięci składa się z około od 4 do 6 tranzystorów. pamięć dynamiczna DRAM, informacja przechowywana jest w postaci ładunków zgromadzonych w kondensatorach, jakie powstają pomiędzy emiterami tranzystorów MOS i podłożem układu. Dane w tych pamięciach mają tendencje do zanikania i wymagają ciągłego odnawiania. Proces taki nazywa się odświeżaniem i wymaga specjalnych układów do wytwarzania sygnałów odświeżających.

Mikroprocesory i kontrolery Z 3 10 12. Cykle odczytu i zapisu z/do pamięci asynchronicznych o dostępie równoległym (w tych pytaniach oceniane są rysunki przebiegów czasowych wraz z opisami, same opisy przebiegów bez rysunków nie będą oceniane). Przebiegi czasowe cyklu odczytu z SRAM 1. Mikroprocesor ustawia stan linii adresowych i sygnalizuje ważność adresu. 2. Mikroprocesor uaktywnia układ pamięci (niski stan na CS ) i ustawia strob odczytu danych (niski stan na OE). 3. Pamięć ustawia stan linii danych. 4. Mikroprocesor odczytuje stan linii danych. 5. Mikroprocesor dezaktywuje pamięć (wysoki stan na CS ) i wycofuje strob odczytu (wysoki stan na OE). Przebiegi czasowe cyklu zapisu do SRAM 1. Mikroprocesor ustawia stan linii adresowych i sygnalizuje ważność adresu. 2. Mikroprocesor ustawia stan linii danych. 3. Mikroprocesor uaktywnia układ pamięci (niski stan na CS ) i ustawia strob zapisu danych (niski stan na WE). 4. Pamięć odczytuje stan linii danych i go zapamiętuje. 5. Mikroprocesor dezaktywuje pamięć (wysoki stan na CS ) i wycofuje strob zapisu (wysoki stan na WE).

Mikroprocesory i kontrolery Z 3 11 13. Definicja i wykorzystanie stosu oraz definicja wskaźnika stosu. Stosem nazywamy wyróżniony obszar pamięci używany według następujących reguł: Wektory informacji zapisywane są na stos do kolejnych komórek (po kolei pod każdymi adresami), przy czym żadnego adresu nie wolno pominąć. Odczytujemy wektory informacji w kolejności odwrotnej do ich zapisu. Wektor informacji odczytujemy z ostatnio zapełnionej komórki a zapisujemy do pierwszej wolnej. Wskaźnikiem stosu SP (ang. Stack Pointer) nazywamy rejestr zawierający adres ostatniej zapełnionej komórki stosu (wierzchołka stosu). Jednym z klasycznych zastosowań stosu jest zapamiętanie adresu powrotu (czyli zawartości licznika rozkazów) do programu wywołującego w przypadku wywołania tak zwanego podprogramu. Ponieważ podprogram może wywołać inny podprogram, adresy powrotów odkładane są na stos, gdyż muszą być odczytane w kolejności odwrotnej do kolejności ich zapisu. 14. Cechy architektury Von-Neumanna mikroprocesorów. Jednolita przestrzeń adresowa, w której wszystkie pamięci, rejestry i układy we/wy są umieszczone w jednej, wspólnej przestrzeni adresowej. W tym przypadku każdej komórce pamięci, niezależnie od jej typu, przypisany jest niepowtarzalny adres. Czyli rozkazy i dane przechowywane są w tym samym obszarze adresowania, przez co nie da się rozróżnić danych od rozkazów (instrukcji). W architekturze tej zakłada się, że podział przestrzeni adresowej na pamięć programu, pamięć danych oraz obszar we/wy jest czysto umowny i zależy wyłącznie od rozmieszczenia tych elementów w obszarze adresowym podczas projektowania systemu. Dlatego mikroprocesor ma dostęp do całej przestrzeni adresowej, natomiast dekodery adresowe zapewniają mapowanie pamięci na rzeczywiste układy. Mk ma jedną szynę danych wspólną dla danych i programu. Dzięki temu programowanie jest ułatwione, gdyż dostęp do danych, programu i urządzeń we/wy odbywa się przy użyciu zunifikowanych rozkazów wykorzystujących te same tryby adresowania. Zatem nie istnieje tu potrzeba wprowadzania specjalnych rozkazów pozwalających na przepływ danych pomiędzy pamięcią ROM i RAM. Do tego celu może być użyty typowy rozkaz adresowy. Tym samym tworzenie tablic stałych, tablicy wektorów, itp. w pamięci ROM nie stanowi problemu. W tym rozwiązaniu wykonanie instrukcji wymaga kilku przesłań danych (najpierw bajt z kodem rozkazu, a po nim bajty z argumentami) po magistrali danych, co czyni tę architekturę zdecydowanie wolniejszą od harwardzkiej. 15. Cechy architektury harwardzkiej mikroprocesorów wbudowanych w mikrokontrolery. Użycie dwóch oddzielnych szyn dla danych i rozkazów, dzięki czemu w trakcie pobierania argumentów wykonywanej właśnie instrukcji można równocześnie zacząć pobieranie następnego słowa rozkazowego (pre-fetch). Skraca to cykl rozkazowy i zwiększa szybkość pracy. Obszary adresowe pamięci danych i programu (wewnętrznych i czasami zewnętrznych) są rozdzielone. Pociąga to za sobą niejednoznaczność adresów, ponieważ pod tym samym adresem CPU widzi pamięć danych i programu. W tym przypadku stosuje się inne rozkazy dla pamięci programu i inne dla pamięci danych. Ponadto magistrala danych i rozkazów mają różną szerokość (długość słowa), np. PIC18F452 magistrala danych 8-bitowa, magistrala rozkazów 16-bitowa. Wadą tego rozwiązania jest utrudniony przepływ danych z pamięci programu do obszaru pamięci operacyjnej (danych), co uniemożliwia stosowanie jednej z podstawowych technik programistycznych (look-up tables). Innymi słowy nie jest możliwe indeksowane przesłanie danych z

Mikroprocesory i kontrolery Z 3 12 pamięci ROM do RAM, co oznacza np. brak możliwości budowy tabel współczynników stałych w pamięci ROM. Jedynym sposobem wbudowania stałych w program jest ukrycie ich w kodach rozkazów. Np. ADDLW k, MOVLW k (np. dla mikrokontrolerów rodzin PIC12, PIC16). 16. Definicja, pełnione funkcje oraz obsługa układów we/wy. Definicja układów wejścia-wyjścia (we/wy): Układem we/wy (I/O ang. Input/Output) nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy mikroprocesorem i pamięcią systemu z jednej strony a urządzeniem peryferyjnym (zewnętrznym urządzeniem współpracującym) z drugiej. Dla systemu mikroprocesorowego układ we/wy widoczny jest jako rejestr lub zespół rejestrów o określonych adresach oraz jako pewien zestaw sygnałów sterujących. Czyli, podobnie jak pamięci posiadają wejścia adresowe i sterujące. Urządzenia peryferyjne mogą służyć do wprowadzania/wyprowadzania (np. interfejs USB), bądź przechowywania informacji (np. karty pamięci SD) lub być układami wykonawczymi (np. sterowniki silników krokowych). Układy we/wy pośredniczą między mikroprocesorem a urządzeniami peryferyjnymi ponieważ: występują między nimi różnice w szybkości działania (konieczne jest więc sterowanie przepływem informacji), zachodzą różnice w parametrach elektrycznych (konieczna więc translacja poziomu sygnałów), urządzenia peryferyjne wymagają podania informacji o określonym formacie wraz z pewnymi sygnałami sterującymi (np. sygnał wideo wraz z synchronizacją). 17. Definicja przerwania, zadania sterownika przerwań i schemat obsługi przerwania. Definicja przerwania: Przerwanie (ang. interrupt) sygnał (IRQ Interrupt ReQuest) powodujący zmianę przepływu sterowania. Pojawienie się przerwania powoduje wstrzymanie aktualnie wykonywanego programu i wykonanie przez procesor kodu procedury obsługi przerwania (ang. interrupt handler). Główne zadania sterownika przerwań (systemu przerwań lub układu przerwań): pośredniczenie w przyjmowaniu zgłoszeń przerwań pomiędzy procesorem i układami we/wy, przyjmowanie zgłoszeń od wielu układów we/wy (procesor posiada tylko jedno wejście zgłoszenia przerwań), wybór spośród wielu zgłoszeń tego, które zostanie obsłużone, sygnalizowanie wyboru przez podanie adresu układu we/wy, z którym zostanie dokonana wymiana (adresu programu obsługi przerwania realizującego tę wymianę, a właściwie numer pozycji w tablicy wektorów przerwań), wygenerowanie sygnału zgłoszenia przerwania bezpośrednio do procesora.

Mikroprocesory i kontrolery Z 3 13 Ogólnie, schemat obsługi przerwania jest następujący: urządzenie peryferyjne wykrywa wystąpienie określonego zdarzenia wymagającego reakcji mikroprocesora, urządzenie peryferyjne zgłasza CPU, za pośrednictwem układu przerwań, żądanie przerwania, CPU przerywa aktualnie wykonywaną sekwencję programu i zachowuje w specjalnym obszarze pamięci stosie (stack), zawartość licznika rozkazów i wszystkie dane związane z aktualnie wykonywanym programem, CPU przechodzi do wykonywania programu napisanego specjalnie przez użytkownika do obsługi danego zdarzenia (tzw. obsługi przerwania), po wykonaniu tego programu CPU odtwarza ze stosu dane związane z przerwanym programem i kontynuuje wykonanie przerwanego programu. 18. Definicje rozkazu, listy instrukcji, cyklu rozkazowego, maszynowego. Rozkazem nazywamy wektor informacji cyfrowej odpowiadający danej operacji podstawowej (najbardziej elementarnej operacji), o jaką wykonanie od mikroprocesora może zażądać programista. Lista rozkazów (instrukcji) jest zestawem wszystkich rozkazów (odpowiadających operacjom podstawowym) realizowanych przez mikroprocesor. Lista instrukcji jest z góry określona dla danego mikroprocesora. Cykl rozkazowy (ang. instruction cycle) - ciąg czynności, które wykonuje układ sterowania jednostki centralnej w czasie realizowania jednego rozkazu. Na cykl rozkazowy składają się: jednakowa dla wszystkich rozkazów faza pobrania, w której pobierany jest kod operacji z komórki pamięci o adresie zapisanym w liczniku rozkazów (zawartość licznika zwiększa się, a kod operacji jest dekodowany), faza wykonania, w której następuje realizacja operacji wskazanej przez rozkaz. Jeżeli w treści wykonywanego rozkazu jest adres lub argument bezpośredni, to w fazie wykonywania może nastąpić kolejne zwiększenie zawartości licznika rozkazów. Na cykl rozkazowy składają się jeden lub kilka cykli maszynowych. Cykl maszynowy (ang. machine cycle) - cykl, w którym następuje przesłanie danych (odczyt lub zapis) między: jednostką centralną a pamięciową lub układem wejścia wyjścia, lub rejestrami procesora. 19. Struktura rozkazu (instrukcji) oraz jego symboliczny zapis. Struktura rozkazu (rozkaz składa się z): kod operacji (ang. opcode) jest unikatowy dla danego rozkazu, określa operację, jaka ma być przeprowadzona, odniesienie do argumentów źródłowych (ang. source), którymi mogą być: dane bezpośrednie, adresy pamięci lub układów we/wy, rejestry procesora,

Mikroprocesory i kontrolery Z 3 14 odniesienie do argumentów przeznaczenia (ang. destination) lub wyniku (ang. result), którymi mogą być: adresy pamięci lub układów we-wy, rejestry procesora, odniesienie do następnego rozkazu określa adres następnego rozkazu, który będzie wykonany po rozkazie bieżącym. Symboliczny zapis rozkazu: MNEMONIK argumen_1, argument_2,.., argument_n gdzie: MNEMONIK nazwa operacji podstawowej, najczęściej jest skrótem wyrazu z j. angielskiego opisującego daną operację podstawową (ADD dodawanie, INC inkrementacja). argument_x dana albo adres rejestru lub komórki pamięci zawierającej daną, na której ma być wykonana operacja podstawowa. Argumenty dzielą się na: docelowe (ang. destination) wynik operacji zapisywany jest w rejestrze, czy komórce pamięci wskazanym przez ten argument, źródłowe (ang. source) wskazuje miejsce w pamięci z daną lub rejestr, czy jest też daną potrzebną do wykonania operacji. 20. Operacje podstawowe wykonywane przez mikroprocesor oraz składnia asemblera. Typowe rodzaje operacji podstawowych (czyli rozkazów, instrukcji) wykonywanych przez mikroprocesor: transferu (przesłań) danych, arytmetyczne, logiczne, przesunięcia, sterujące przepływem programu (skoki bezwzględne, warunkowe, rozgałęzienia, wywołania funkcji), wejścia-wyjścia, operacje na bitach (w mikrokontrolerach), sterowania CPU. Składnia asemblera (np. mikroprocesora AVR), czyli składnia linii kodu napisanego w asemblerze: [etykieta:] instrukcja [operandy] [komentarz] gdzie: [.. ] opcjonalne, czyli nieobowiązkowe, zależy od kontekstu kodu programu, etykieta odwołuje się do niej przy skokach i wywołaniach funkcji, instrukcja kod rozkazu mikroprocesora jak i również dyrektywa asemblera, operandy argumenty wymagane przez instrukcję komentarz najczęściej zaczyna się od średnika, opis algorytmu itp.: ; tekst komentarza

Mikroprocesory i kontrolery Z 3 15 21. Definicja i właściwości przetwarzania potokowego. Definicja potokowego przetwarzania rozkazów: Przetwarzanie potokowe (ang. pipelining) polega na równoczesnym przetwarzaniu przez mikroprocesor grupy rozkazów, znajdujących się w różnych fazach (ang. stage) cyklu rozkazowego. Właściwości przetwarzania potokowego: zasadniczą ideą przetwarzania potokowego jest rozłożenie wykonania pojedynczej instrukcji na ciąg prostych etapów (faz), z których każdy może być wykonany w jednym cyklu zegara, wtedy, w momencie gdy pierwszy rozkaz rozpoczyna drugą fazę, drugi zaczyna pierwszą; gdy pierwszy zaczyna trzecią, drugi zaczyna drugą, a trzeci pierwszą, itd., czyli procesor wykonuje kilka instrukcji jednocześnie, ale w różnych fazach (obsługuje potok instrukcji), dlatego każda instrukcja musi mieć te same fazy wykonania, w efekcie w jednym momencie wykonuje się tyle rozkazów ile jest faz. Każdy wykonywany rozkaz znajduje się w innej fazie, w przetwarzaniu potokowym nie przyspieszamy wykonania pojedynczego rozkazu (nawet go spowalniamy), gdyż zysk uzyskuje się tylko dzięki zrównolegleniu wykonywania operacji przyspieszenie w stosunku do architektury tradycyjnej jest proporcjonalne do liczby faz instrukcji, podczas przetwarzania potokowego w każdym cyklu zegara wykorzystywane są wszystkie zasoby procesora (w przeciwieństwie do przetwarzania szeregowego, w którym w danej chwili używa się części układów logicznych), występują konflikty zasobów wtedy, gdy dwie instrukcje wymagają dostępu do tych samych zasobów procesora: konflikty (hazardy) strukturalne instrukcje chcą skorzystać z tego samego zasobu (np. ALU, pamięci, rejestrów), konflikty danych rozkaz potrzebuje rejestru, który zapisuje poprzedni rozkaz, konflikty sterowania np. w przypadku rozkazu skoku nie wiadomo, który rozkaz należy pobrać jako następny (jest to bardzo trudne w przypadku skoków warunkowych), dlatego szczególne znaczenie ma optymalizacja kodu programu na etapie np. kompilacji, w celu minimalizacji konfliktów.

Mikroprocesory i kontrolery Z 3 16 II. Zagadnienia elementarne i ich treści obowiązujące do drugiej części egzaminu Mikrokontrolery : 1. Definicja mikrokontrolera (w skrócie: mk), dwie najważniejsze cechy jego jednostki centralnej. Mk można zdefiniować następująco: układ cyfrowy z wyspecjalizowanym mikroprocesorem i niezbędnymi do jego samodzielnej pracy urządzeniami zawartymi w jednym układzie scalonym (dzięki którym nie wymaga urządzeń zewnętrznych, takich jak np. kontrolery magistral, przerwań, generatory sygnałów taktujących mikroprocesor, itp.), jest zdolny do autonomicznej pracy, tzn. w najprostszych zastosowaniach nie wymaga przyłączenia zewnętrznych układów pomocniczych (peryferyjnych), został zaprojektowany do pracy w systemach kontrolno-pomiarowych oraz komunikacyjnych, stąd posiada rozbudowany system komunikacji z otoczeniem, z reguły pracuje w czasie rzeczywistym. Cechy jednostki centralnej: szerokość szyny danych. Może być ona 8-bitowa, 16-bitowa lub 32-bitowa. częstotliwość sygnału taktującego (zegarowego). Jej wartość powinna być jak najmniejsza, ponieważ pobór mocy przez mikrokontroler proporcjonalny jest do częstotliwości sygnału zegarowego, ale jednocześnie na tyle duża, aby zapewnić wymaganą minimalną prędkość przetwarzania danych przez jednostkę centralną. 2. Uszczegółowiona budowa mk oraz funkcje realizowane przez jego bloki. Jednostka centralna (dokładniej zawarty w niej mikroprocesor) realizuje program zawarty w pamięci programu (typu FLASH).. Pamięć programu typu FLASH służy do przechowywania kodu programu oraz stałych. Zmienne programu przechowywane są w pamięci danych RAM. Jednostka centralna jak i pozostałe wewnętrzne bloki mk są taktowane sygnałem zegarowym (clock), generowanym i rozprowadzanym przez system zegarowy. Częstotliwość sygnału zegarowego może być stabilizowana np. zewnętrznym oscylatorem kwarcowym. W stan początkowy mk wprowadzany jest sygnałem RESET generowanym przez układ resetu. Układy peryferyjne umożliwiają odczyt sygnałów wejściowych cyfrowych, jak i również analogowych (przetworniki A/C) oraz generację sygnałów wyjściowych stosowanych do sterowania układami mse. Komunikacja z otoczeniem mk odbywa się za pośrednictwem linii portów we/wy.

Mikroprocesory i kontrolery Z 3 17 3. Funkcje i typy pamięci zaimplementowanych w mk. Podział ze względu na pełnione funkcje: pamięć programu (zawierająca kod programu, tablice stałych, wektor resetu i przerwań), w technologii ROM, EPROM, OTP lub FLASH pamięć danych (przechowująca zmienne), stos sprzętowy (obsługi przerwań i wywołań funkcji odkładają na niego bieżącą wartość licznika rozkazów i po zakończeniu działania zdejmują ją), pamięć EEPROM (przechowuje zmienne lub tablice stałych, które po wyłączeniu zasilania nie mogą ulec skasowaniu). Podział pamięci programu ze względu na technologie wykonania: ROM (Read Only Memory) programowanie zawartości pamięci następuje w procesie produkcyjnym i nie może być przeprowadzone przez użytkownika. EPROM (Erasable Programmable ROM) pamięci z możliwością kasowanie dotychczasowej zawartości promieniami ultrafioletowymi i prowadzania nowej zawartości za pomocą zewnętrznego programatora. Umieszczane są w obudowach z okienkiem kwarcowym w celu umożliwienia kasowania. OTP (One Time Programmable) pamięci typu EPROM umieszczane w obudowach bez okienka kwarcowego. Dlatego możliwe jest tylko jednokrotne zaprogramowanie pamięci bez możliwości skasowanie jej zawartości. FLASH (Bulk Erasable Non-Volatile Memory) pamięci z możliwością kasowanie zawartości i programowania bezpośrednio w systemie mikroprocesorowym. 4. Warstwowy model mk zamkniętego.

Mikroprocesory i kontrolery Z 3 18 5. Przeznaczenia sygnału RESET i źródła sygnału RESET w mk. Sygnał RESET służy do: Inicjalizacji pracy mk, czyli wprowadzenia go w stan początkowy. Inicjalizacja polega najczęściej na ustawieniu licznika rozkazów na początek kodu programu (do licznika rozkazów wpisywany jest wektor resetu). Urządzenia we/wy i rejestry sterujące są ustawiane w tryb standardowy (spoczynku). Uniwersalne końcówki we/wy są ustawione jako wejścia o wysokiej impedancji, aby minimalnie wpływać na otoczenie mk (w dokumentacji każdego mk znajduje się informacja o stanie wszystkich rejestrów i portów po resecie mk). Ponadto, służy on do wprowadzenia mk w tryb programowania lub testowania. Możemy wyróżnić następujące źródła resetu: reset po włączeniu zasilania, reset wywołany zewnętrznym sygnałem RESET, reset programowy wywołany przez wykonanie instrukcji RESET lub ustawienie odpowiedniego bita, reset wywołany przez układ watchdog, reset wywołany przez układy nadzorujące poprawność pracy mk (np. od układu wykrywającego spadek napięcia zasilania LVD (Low Voltage Detector) w ST72215G, BOR (Brown-out Reset) w PIC18F452). 6. Budowa i zasada działania linii portów równoległych. Czytanie danych (pobieranie) podawanych z zewnątrz na wyprowadzenia portu (jego piny) przez port polega na doprowadzeniu chwilowych stanów napięć na tych wyprowadzeniach (tzn. istniejących w momencie operacji czytania) do wewnętrznej szyny danych układu. Jest to realizowane przez uaktywnienie trójstanowego bufora sygnałem czytanie. Wpisywanie danych (wprowadzenia) danej do portu powoduje, że chwilowy stan wewnętrznej szyny danych zostaje zapamiętany w elementach zapamiętujących poszczególnych linii (najczęściej są nimi przerzutniki typu D) i wystawiany na wyprowadzeniach portu za pośrednictwem aktywnego bufora trójstanowego. Stan wyprowadzeń portu pozostaje niezmienny, dopóki nie nastąpi kolejna operacja wpisania do portu. Linia portu równoległego jest linią wejściową, gdy bufor trójstanowy jest w stanie wysokiej impedancji. Uaktywnienie bufora trójstanowego sygnałem kierunek, ustawia linię jako wyjściową. Wówczas 1 na wyjściu przerzutnika odpowiada stan wysoki (około V cc napięcie zasilania mk) na wyprowadzeniu portu, a 0 stan niski (około 0 V).

Mikroprocesory i kontrolery Z 3 19 7. Właściwości układów peryferyjnych mk. Są programowalne - zadania przekazywane są im do wykonania odpowiednimi rozkazami, dokładniej mówiąc przez ustawienie odpowiednich bitów w rejestrach konfiguracyjnych (sterujących), przez wpisanie danych do rejestrów danych. Charakteryzują się dużym stopniem autonomii w stosunku do procesora rdzeniowego. Przekazane im zadania wykonywane są samodzielnie, bez zaangażowania czasu procesora. Od strony procesora układy we/wy programowane są za pośrednictwem magistrali wewnętrznej. Układom tym zazwyczaj przypisane są: rejestry robocze (czyli rejestry danych zawierające wyniki ich działania), rejestry konfiguracyjne/sterujące służące do konfiguracji i sterowania urządzeniem peryferyjnym, rejestry statusu zawierające aktualny stan urządzenia: flagi przerwań, komunikaty o błędach, itp. O zakończeniu wykonywania zadań procesor informowany jest ustawieniem odpowiedniego bitu w rejestrze stanu urządzenia (najczęściej flagi przerwania) lub wysłaniem sygnału żądania przerwania o ile jest ono odblokowane. 8. Schematyczna budowa układu czasowego w mk oraz jego zasada pracy w dwóch podstawowych konfiguracjach. jako właściwe układy czasowe (timers) Są wtedy taktowane wewnętrznym sygnałem zegarowym przeznaczonym do taktowania jc. Timery wykorzystywane są w programie użytkownika jako wzorce czasu. jako liczniki (counters) Są one wtedy taktowane zewnętrznymi sygnałami doprowadzanymi poprzez linie wejściowe portów i wykorzystywane w programie użytkownika np. jako liczniki zmian poziomów sygnałów zewnętrznych

Mikroprocesory i kontrolery Z 3 20 9. Budowa, zasada działania i typowe parametry wewnętrznego przetwornika A/C w mk. Typowe parametry przetworników A/C w mk: długość słowa (najczęściej 10 bitów), czas konwersji (typowo od kilku do kilkunastu µs), rozdzielczość (zwykle 1 LSB ~ 5 mv przy zakresie 5V dla długości słowa 10 bitów), błąd całkowity (około 2 LSB). 10. Sterowanie oraz sposób odczytu i zapisu danych do wewnętrznej pamięci EEPROM. Rejestry służące do obsługi pamięci EEPROM: rejestr sterujący, w którym uruchamia się procedurę odczytu lub zapisu do pamięci, rejestr danych przechowujący daną, która ma być wpisana pod adres wskazywany przez rejestry adresu lub zawiera daną odczytaną spod wybranego adresu, jeden lub dwa rejestry adresu zawierajce adres komórki pamięci EEPROM, na której będzie wykonana operacja zapisu lub odczytu. Generalnie odczyt z pamięci EEPROM przebiega według następującej procedury: do rejestrów adresu wpisuje się adres bajtu w pamięci EEPROM, spod którego chcemy pobrać daną, ustawiamy bit uruchamiający proces odczytu w rejestrze sterującym, czekamy, aż ustawi się flaga informująca o zakończeniu odczytu (najczęściej wyzerowanie bita uruchamiającego proces odczytu), w rejestrze danych znajduje się już nasza dana. Zapis danej do pamięci najczęściej przebiega według następującej procedury: czekamy aż zakończy się poprzedni cykl zapisu (zapis trwa około od 2ms do 4ms), testując flagę informującą o zakończeniu zapisu (najczęściej wyzerowanie bita uruchamiającego proces zapisu). do rejestrów adresu wpisuje się adres bajtu w pamięci EEPROM, do którego chcemy wpisać daną, do rejestru danych wprowadzamy naszą daną, odblokowujemy zapis do pamięci EEPROM ustawiając odpowiedni bit lub wykonując odpowiednią sekwencję wpisów do rejestrów sterujących (warto przedtem zablokować wszystkie przerwania), ustawiamy bit uruchamiający proces zapisu do EEPROM,

Mikroprocesory i kontrolery Z 3 21 11. Schematyczna budowa sterownika komunikacji szeregowej w mk oraz realizowane przez niego funkcje. Wysyłanie zawartości określonego rejestru, tzw. bufora nadajnika, w postaci szeregowej poprzez określone wyprowadzenia portu. Oznacza to, że na wyjściu linii portu pojawia się ciąg binarny odpowiadający zawartości wysyłanego rejestru (funkcja nadajnika transmiter). W funkcji odbiornika (receiver) sterownik komunikacji szeregowej potrafi przetworzyć ciąg binarny doprowadzony do wejścia określonej linii portu na zawartość rejestru, zwanego buforem odbiornika. Bufory nadajnika i odbiornika są dostępne z poziomu programu użytkownika. 12. Format danych dla standardu UART, budowa kontrolera interfejsu UART oraz ogólna jego obsługa.

Mikroprocesory i kontrolery Z 3 22 Ogólna obsługa interfejsu UART jest następująca: Należy najpierw ustalić prędkość transmisji wpisując odpowiednią wartość do rej. generatora prędkości transmisji. Wybrać 8 lub 9 bitowy format danych w rej. konfiguracyjnym. Odblokować przerwania od nadajnika (koniec wysyłania danej) i od odbiornika (zakończony odbiór danej). Włączyć nadajnik i odbiornik (lub jeden z tych układów). Jeśli chcemy wysłać daną, to w celu uruchomienia transmisji wprowadzamy ją do rejestru danych interfejsu UART (bufor równoległy zapisu). Gdy dana ma być 9 bitowa, to przed tą operacją należy ustawić 9 bit danej znajdujący się w rejestrze konfiguracyjnym. Przed wysłaniem danej należy sprawdzić czy poprzednia operacja wysyłania danej przez UART została zakończona (testowanie flagi koniec wysyłania danej). Gdy interfejs odebrał daną, ustawiona jest flaga zakończony odbiór danej i generowane jest przerwanie. Odebrana dana znajduje się w rejestrze danych (bufor równoległy odczytu). 13. Przebiegi czasowe interfejsu SPI. Przebiegi czasowe interfejsu SPI dla sygnału zegarowego o CPHA=0 Przebiegi czasowe interfejsu SPI dla sygnału zegarowego o CPHA=1

Mikroprocesory i kontrolery Z 3 23 14. Schemat ogólny, zasada działania (funkcje poszczególnych bloków) układu peryferyjnego z interfejsem SPI. Wszystkie układy peryferyjne z interfejsem SPI składają się z bloku interfejsu SPI służącego do komunikacji z układem (wysyłanie i odbiór danych, wysyłanie rozkazów i odbiór danych statusowych): Rejestru szeregowego, do którego w takt sygnału zegarowego CLK są na linii wejście danych SDI szeregowo bit po bicie wprowadzane dane (najczęściej 8-bitowe czyli bajty). Dane z układu szeregowo są wystawiane na linii wyjście danych SDO. Transmisja odbywa się, gdy na linii wyboru układu CS jest stan aktywny (najczęściej stan niski). Układ kontrolny steruje interfejsem SPI za pośrednictwem linii CS oraz podłączonych do niego cyfrowych sygnałów sterujących, których występowanie (liczba i pełnione funkcje) zależą od zastosowania układu (warstwy aplikacji). Zarządza również komunikacją między rejestrem szeregowym a blokiem aplikacji. bloku warstwy aplikacji realizującej zadania zgodne z przeznaczeniem układu. Znaczenie linii: CS wybór układu do transmisji (aktywny poziomem niskim). Gdy CS jest w stanie niskim można do układu wprowadzać rozkazy oraz dane i wyprowadzać dane oraz zawartość rejestrów statusu. Układ zaczyna wykonywać wprowadzony rozkaz, gdy na CS pojawi się zbocze narastające. SDO szeregowe wyjście danych służące do wyprowadzania danych oraz zawartości rejestru statusu. SDI szeregowe wejście danych przeznaczone do wprowadzania rozkazów i danych do układu. CLK zegar taktujący transmisją szeregową. analogowe linie we-wy dostarczają sygnały analogowe do/z bloku warstwy aplikacji. cyfrowe sygnały sterujące dodatkowe sygnały sterujące zależne od aplikacji (np. sygnał przerwania INT, wstrzymania transmisji HOLD, itp.)

Mikroprocesory i kontrolery Z 3 24 15. Pojęcie rodziny mk. Modyfikacje członków rodziny mk. Rodzina mk zbiór mk oparty na tym samym procesorze rdzeniowym, czyli układów o różnych parametrach, ale zachowujących między sobą kompatybilność programową, tzn. posiadają tą samą jc, czyli tą samą listę instrukcji. Modyfikacje członków danej rodziny mikrokontrolerów: na poziomie jc, dotyczy ona zmiany: rozmiaru pamięci programu, rozmiaru pamięci danych RAM, maksymalnej szybkości pracy. na poziomie urządzeń peryferyjnych. Modyfikacje w tej warstwie stanowią podstawowy wyróżnik danego typu mk. Użytkownik otrzymuje do dyspozycji całą, niekiedy dość liczną rodzinę mk różniących się kombinacjami wbudowanych w układ scalony układami we/wy. na poziomie warstwy zacisków zewnętrznych i typu obudowy. Dotyczy głównie parametrów elektrycznych zacisków mk oraz stosowanego typu obudowy mk. 16. Definicja programowania zagnieżdżonego i cechy programów zagnieżdżonych. Definicja: Tworzenie oprogramowania dla mse opartych na mk (i nie tylko) i ukierunkowanych na zadania pomiarowo-sterujące oraz komunikacyjne określa się w literaturze mianem programowania zagnieżdżonego (embeded programming). Cechy programów zagnieżdżonych: Program jednoznacznie ustala funkcję mse, tzn. użytkownik ma możliwość zmiany funkcji systemu zazwyczaj tylko w niewielkim zakresie przewidzianym przez program użytkowy. Ta właśnie cecha określana jest jako zagnieżdżenie programu. Działanie programu musi spełniać określone wymagania czasowe dotyczące przekraczania maksymalnego czasu reakcji na określone zdarzenia zewnętrzne oraz realizacji określonych zadań programowych w nieprzekraczalnym czasie. Ta cecha określana jest jako praca programu w czasie rzeczywistym. Są to programy działające na specyficznych zasobach sprzętowych warunkowanych ukierunkowaniem budowy sprzętowej mse na konkretne zadanie. 17. Metody uruchamiania programów napisanych na mk. metoda prób i błędów - polega na wielokrotnym programowaniu mk i za każdym razem obserwacji działania programu w mse i jego korekcji na podstawie tych obserwacji, aż do uzyskania prawidłowego działania mk, zastosowanie monitorów programowych (monitors) i programów śledzących (debuggers) są najczęściej stosowane. - Monitory są instalowane w pamięci programu mk i kontrolują wykonywanie właściwego programu użytkowego oraz komunikują się z systemem rozwojowym poprzez złącze szeregowe. - Natomiast debugery pracują w przyłączonych do systemu komputerach PC,

Mikroprocesory i kontrolery Z 3 25 zastosowanie emulatora sprzętowego mk (ICE in-circuit emulators) polega to na umieszczeniu, na czas uruchamiania programu, w podstawce na mk sondy połączonej ze specjalnym układem sprzętowym, który emuluje działanie mk. Emulator wiernie odtwarza wszystkie właściwości mk łącznie z jego wszystkimi układami peryferyjnymi oraz pamięcią, wykorzystanie specjalnych zasobów wewnętrznych mk niektóre mk zwłaszcza 32-bitowe posiadają specjalne zasoby sprzętowe przeznaczone do wspierania procesu uruchomiania programu. Zasoby te oferują w przybliżeniu wszystkie te możliwości co emulator sprzętowy, między innymi ustawienie pułapek oraz pracę krokową. Zasoby te komunikują się przez dedykowane wyprowadzenia mk. Są one dostępne wyłącznie na etapie uruchamiania programu, zatem nie są wykorzystywane przez normalny program użytkowy.