Architektura jednostki centralnej
RD
MBR
MAR
IR
PC
+1
WR
jednostka
sterująca
ALU
A
F
Adres
Dane
Rejestry:
●
MAR – (Memory Address Register)
rejestr adresowy
●
MBR – (Memory Buffer Register)
rejestr buforowy
●
IR – (Instruction Register) rejestr
instrukcji
●
PC – (Program Counter) licznik
rozkazów
●
A – (Accumulator) akumulator
●
F – (Flags) rejestr znaczników
Jednostka sterująca
Wyróżnia się zasadniczo dwa podejścia do architektury
jednostki sterującej:
●
CISC – Complex Instruction Set Computer czyli komputer
o złożonej liście rozkazów
●
RISC – Reduced Instruction Set Computer czyli komputer
o zredukowanej liście rozkazów
Architektura jednostki sterującej procesorów CISC
IR
generator adresu
początkowego
rejestr adresów
mikrorozkazów
rejestr adresu
powrotu
z mikroprogramu
pamięć
mikroprogramu
rejestr
mikrorozkazów
dekoder
mikrorozkazów
adres skoku
bezwarunkow
go
adres
powrotny
Procesory typu CISC
Cechy charakterystyczne:
●
duża liczba rozkazów (od stu do kilkuset)
●
rozkazy złożone, realizujące specjalizowane zadania
●
duża liczba trybów adresowania
●
duży zakres rozkazów o różnych długościach i czasach
wykonywania
●
mikroprogamowalna jednostka sterująca
●
słabe wykorzystanie listy rozkazów przez kompilatory
języków wysokiego poziomu (np. ok. 71% z rozkazów
MC68020 nie było wykorzystanych po kompilacji
programów w C)
Procesory typu RISC
Cechy charakterystyczne:
●
niewielka lista prostych rozkazów (kilkadziesiąt)
●
łatwy do dekodowania, stałej długości format rozkazów
●
rozkazy wykonywane w pojedynczym cyklu zegara
●
mało trybów adresowania
●
komunikacja z pamiecią ograniczona do rozkazów
LOAD, STORE
●
rozkazy działające zazwyczaj na argumentach
zapisanych w rejestrach
●
układowo realizowana jednostka sterująca
Architektura von Neumanna
Występuje jedna przestrzeń adresowa pamięci
●
zarówno program jak i dane umieszczone są w tej
samej przestrzeni adresowej i nie można ich od siebie
odróżnić
●
za prawidłową interpretację informacji umieszczonych
w pamięci odpowiedzialny jest programista
µP
dane
pamięć
adres
Architektura typu Harvard
Występują oddzielne przestrzenie adresowe pamięci
programu oraz danych, a mikroprocesor komunikuje się
z nimi używając oddzielnych magistral.
µP
dane
pamięć
danych
adres
rozkazy
adres
pamięć
programu
Mikrokontrolery – pamięci wewnętrzne
Mikrokontroler
jednostka
centralna
(CPU, µP)
pamięć
programu
układy
we-wy
szyna danych
szyna adresowa
szyna sterująca
pamięć
danych
Mikrokontrolery – pamięci wewnętrzne
Typy pamięci występujące w mikrokontrolerach:
●
RAM
●
ROM
●
EPROM / OTP
●
EEPROM
●
FLASH
Mikrokontrolery – pamięć RAM
●
wykorzystywana jest praktycznie wyłącznie jako
pamięć danych
●
ma krótki czas dostępu zarówno podczas odczytu jak i
zapisu
●
jest niezbędna do przechowywania tymczasowych
wyników obliczeń
●
jest niezbędna do przechowywania stosu
●
jej zawartość „znika” po wyłączeniu zasilania
Mikrokontrolery – pamięć ROM
Wykorzystywana jako pamięć programu oraz pamięć
stałych.
Zalety:
●
jej zawartość nie może zostać przypadkowo zmieniona
●
duża odporność na promieniowanie jonizujące
●
mały pobór energii
Wady:
●
wymaga
zaprogramowania
przez
producenta
mikrokontrolera
●
zawartość pamięci nie może zostać zmieniona w celu
poprawienia lub uaktualnienia oprogramowania
Mikrokontrolery – pamięć EPROM
Erasable Programable Read Only Memory
●
kasowanie zawartości odbywa się poprzez naświetlanie
promieniowami ultrafioletowymi
●
wykorzystywana jako pamięć programu oraz pamięć
stałych
Mikrokontrolery – pamięć EPROM
Zalety:
●
nie wymaga programowania u producenta
●
możliwość
modyfikowania
zapisanego
w
niej
programu
Wady:
●
wymaga dużo droższej obudowy – z okienkiem
kwarcowym
●
mała odporność na promieniowanie jonizujące
●
możliwość utraty przechowywanej informacji po
pewnym czasie (zwykle 10 lat)
●
długi proces kasowania (kilkanaście minut)
●
stosunkowo długi proces programowania (kilkadziesiąt
sekund)
●
większy pobór energii niż w pamięciach ROM
Mikrokontrolery – pamięć EPROM / OTP
One Time Programable
●
mikrokontroler umieszczany jest w tańszej obudowie -
bez okienka
●
niemożliwe jest skasowanie zapisanej informacji
Mikrokontrolery – programowanie pamięci EPROM / OTP
Mikrokontrolery – weryfikacja pamięci EPROM / OTP
Mikrokontrolery – programowanie pamięci EPROM / OTP
Mikrokontrolery – pamięć EEPROM
Electricaly Erasable Programable Read Only Memory
●
możliwa jest modyfikacja zawartości poszczególnych
komórek pamięci poprzez przyłożenie odpowiednich
sygnałów elektrycznych lub wykonanie odpowiednich
procedur programowania
●
wykorzystywana jako pamięć programu oraz pamięć
części danych
Mikrokontrolery – pamięć EEPROM
Zalety:
●
nie wymaga długotrwałego kasowania poprzez
naświetlanie promieniowaniem ultrafioletowym
●
umożliwia zapisywanie w niej pewnych danych, które
będą przechowane po wyłączeniu systemu
●
umożliwia modyfikację pojedynczych bajtów
●
nie wymaga drogiej obudowy z okienkiem
Mikrokontrolery – pamięć EEPROM
Wady:
●
wymaga droższej technologii niż EPROM/OTP
●
wymaga
specjalnych
zabezpieczeń
przed
przypadkową modyfikacją zawartości
●
możliwość utraty przechowywanej informacji po
pewnym czasie (zwykle 10 lat)
●
stosunkowo długi proces programowania (kilkadziesiąt
sekund)
●
większy pobór energii niż w pamięciach ROM
Mikrokontrolery – pamięć FLASH
Zalety:
●
prostsza (tańsza) technologia niż EEPROM
●
zwykle możliwość programowania w systemie
Wady:
●
konieczność
kasowania
całej
pamięci,
lub
przynajmniej całych fragmentów pamięci
Mikrokontrolery – pamięć FLASH
Wady:
●
wymaga droższej technologii niż EPROM/OTP
●
wymaga
specjalnych
zabezpieczeń
przed
przypadkową modyfikacją zawartości
●
możliwość utraty przechowywanej informacji po
pewnym czasie (zwykle 10 lat)
●
stosunkowo długi proces programowania (kilkadziesiąt
sekund)
●
większy pobór energii niż w pamięciach ROM
Mikrokontrolery – pamięci nieulotne
Pamięci
nieulotne
są
niezbędne
aby
system
mikroprocesorowy mógł zacząć działać, gdyż po
włączeniu zasilania (ściślej po wykonaniu operacji
RESET) mikroprocesor zaczyna pobierać rozkazy
(począwszy od pewnego ustalonego adresu), a więc
kody instrukcji, które muszą być znane i ustalone przed
uruchomieniem systemu mikroprocesorowego.
Mikrokontrolery – zabezpieczenia przed kopiowaniem
Mikrokontrolery
Mikrokontroler
jednostka
centralna
(CPU, µP)
pamięć
programu
układy
we-wy
szyna danych
szyna adresowa
szyna sterująca
pamięć
danych
Mikrokontrolery – jednostki centralne
Wiele układów mikrokontrolerów produkowanych przez
jednego producenta.
Jednak zwykle produkowana jest tylko jedna lub kilka
rodzin mikrokontrolerów.
Rodziny są oparte na tej samej jednostce centralnej.
Poszczególne typy różnią się tylko wielkościami
wbudowanych pamięci i różnorodnością zastosowanych
układów peryferyjnych.
Mikrokontrolery – układy wejścia-wyjścia
Wbudowane
układy
wejścia-wyjścia
(układy
peryferyjne):
●
porty równoległe
●
układy licznikowe
●
układy komunikacyjne
UART (SCI)
SPI
I
2
C
CAN
USB
●
przetworniki A/C
●
komparatory
●
przetworniki C/A, PWM
●
sterowniki specjalizowane (np. do LCD)