P od stawy te chn iki cyfrowej Mikroprocesory - sq1ftb.com filezestaw ten jest znacznie bogatszy. 5
-
Upload
trinhnguyet -
Category
Documents
-
view
220 -
download
0
Transcript of P od stawy te chn iki cyfrowej Mikroprocesory - sq1ftb.com filezestaw ten jest znacznie bogatszy. 5
2
Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji
zdolny do wykonywania operacji
cyfrowych według dostarczonych mu instrukcji.
3
Historia mikroprocesora
Jednym z twórców idei mikroprocesora był Ted Hoff z firmy Intel. Wpadł on na pomysł by zamiast projektować 12 niezale nych układów scalonych do kalkulatorów zaprojektować jeden, który będzie w stanie pełnić funkcje wszystkich ich razem wziętych i będzie pracować w taki sposób jak procesor w komputerze. W firmie Intel wyprodukowano pierwszy
komercyjny mikroprocesor o nazwie 4004 - zawierał on 2300 tranzystorów i wykonany był w technologii p-
MOS. Pierwszym na świecie procesorem był jednak ściśle tajny "chip" Ż14 CAŹC u ywany w samolocie Grumman F14 Tomcat.
4
Budowa mikroprocesora
Mikroprocesor składa się z zasadniczych bloków funkcjonalnych :
ALU - jednostka arytmetyczno-logiczna (Arithmetic
Logic Unit), wykonuje ona operacje logiczne na
dostarczonych jej danych, podstawowy zestaw to:
dodawanie, podstawowe operacje logiczne (AND,
XOR, OR, NOT), oraz przesunięcia bitowe w lewo i w prawo. W bardziej zło onych mikroprocesorach zestaw ten jest znacznie bogatszy.
5
• CU - układ sterowania (Control Unit),
zwany te dekoderem rozkazów. Odpowiedzialny jest on za dekodowanie
dostarczonych mikroprocesorowi instrukcji i
odpowiednie sterowanie pozostałymi jego blokami (na przykład jeśli zdekodowaną instrukcją będzie dodawanie, CU
odpowiednio ustawi sygnały sterujące, by ALU wykonała tę właśnie operację)
6
• Rejestry - umieszczone wewnątrz mikroprocesora komórki pamięci o niewielkich rozmiarach (najczęściej 4/8/16/32/64/128 bitów) słu ące do przechowywania tymczasowych wyników
obliczeń (rejestry danych) oraz adresów
lokacji w pamięci operacyjnej (rejestry
adresowe). Proste mikroprocesory mają tylko jeden rejestr danych zwany akumulatorem.
7
Oprócz rejestrów danych i rejestrów adresowych
występuje te pewna liczba rejestrów o specjalnym przeznaczeniu:
• PC - licznik rozkazów (Program Counter) -
zawiera on adres komórki pamięci zawierającej następny rozkaz do wykonania
• IR - rejestr instrukcji (Instruction Register) -
zawiera on adres aktualnie wykonywanej przez
procesor instrukcji.
• SP - wska nik stosu (Stack Pointer) - zawiera
adres wierzchołka stosu.
Mikroprocesor komunikuje się z otoczeniem za pomocą szyny danych i szyny adresowej.
8
• kopiowanie danych
- z pamięci do rejestru
- z rejestru do pamięci - z pamięci do pamięci (niektóre procesory)
działania arytmetyczne - dodawanie
- odejmowanie
- porównywanie dwóch liczb
- dodawanie i odejmowanie jedności - zmiana znaku liczby
Do typowych rozkazów wykonywanych przez
procesor nale ą:
9
• działania na bitach - iloczyn logiczny - AND
- suma logiczna - OR
- suma modulo 2 (ró nica symetryczna) - XOR
- negacja - NOT
- przesunięcie bitów w lewo lub prawo
• skoki
- bezwarunkowe
- warunkowe
13
Rejestr znaczników flagowych
Ten rejestr jest przeznaczony do przechowywania
dodatkowych cech wyników operacji np. :
• znak przekroczenia zakresu operacji
• znak parzystości • znak przeniesienia lub po yczki
Ka dy znak (flaga) jest jednobitowym znacznikiem
zapisanym w odpowiednim miejscu rejestru.
Je eli wartość tego bitu wynosi 1 , oznacza to, e stan taki wystąpił po wykonaniu ostatniej operacji.
14
Wykorzystanie informacji z rejestru flagowego
Informacje z rejestru flagowego mogą być wykorzystane przez programistów na dwa sposoby:
• ustawienie znacznika dla zapamiętania określonego stanu po wykonaniu operacji • testowanie znacznika celem podjęcia odpowiedniego dalszego działania.
15
Znaczniki (flagi) stanu
• CF – flaga przeniesienia, ustawiana przy
przekroczeniu zakresu długości słowa, w którym jest zapisywany wynik.
• PF – flaga parzystości, wskazuje na parzystą lub nieparzystą liczbę bitów o wartości jedynki. • ZF – flaga zera, sygnalizująca, e wynikiem ostatniej operacji było zero. • PF – przeniesienie pomocnicze dla kodu BCD
• SF – flaga znaku, ustawiona gdy najstarszy bit
wyniku jest równy 1 ( operacje na kodzie U2)
• OF – flaga przepełnienia, sygnalizuje przekroczenie zakresu dla operacji arytmetycznych
(U2)
16
Znaczniki (flagi) kontrolne
• TF – znacznik pracy krokowej,
• IF – znacznik zezwolenia na przerwanie
• DF – znacznik kierunku
• IOPL – znacznik ochrony instrukcji wejścia-wyjścia
• NT – znacznik zadania zagnie d onego
17
Rejestry ogólnego przeznaczenia
Akumulator – rejestr funkcjonalnie związany z ALU,
przeznaczony do przechowywania jednego z
operandów (argumentów) wykonywanej operacji oraz
wyniku operacji. Czasami wynik operacji mo e być przechowywany w innym rejestrze.
W mikroprocesorze mo e być kilka takich rejestrów.
18
Rejestry segmentowe
• CS – rejestr segmentowy programu, wskazuje
segment programu, z którego aktualnie są pobierane rozkazy programu do wykonania
• DS. – rejestr segmentowy stosu, wskazuje segment
w którym są zapamiętywane zmienne u ywane przez program
• ES – rejestr segmentowy dodatkowy, wskazuje
dodatkowy segment danych
• SS – rejestr segmentowy stosu, wskazuje segment
pamięci, w której umiejscowiony jest stos.
19
Rejestry wska nikowe i indeksowe
• SP, BP – rejestry wska nikowe słu ące do adresowania danych w obrębie wydzielonego obszaru pamięci. • SI, DI – rejestry indeksowe słu ące do adresowania danych w obszarze pamięci zwanym segmentem danych.
Licznik rozkazów słu y do przechowywania adresu komórki, z której nale y pobrać następny rozkaz.
Rejestr rozkazów słu y do przechowywania pobranych z pamięci słów-kodów rozkazów.
22
Stosem nazywamy wyró niony obszar pamięci, którego przeznaczeniem jest krótkotrwałe przechowywanie informacji. Stos jest zorganizowany w oparciu o metodę zapisu LIFO.
23
Rozkazy
Rozkazem (instrukcją maszynową) nazywamy
najprostszą operację do wykonania przez mikroprocesor.
Listą rozkazów nazywamy zestaw rozkazów
(instrukcji maszynowych) jakie potrafi wykonywać dany mikroprocesor.
Formatem rozkazu nazywamy sposób
rozmieszczenia informacji w kodzie programu.
24
Cykl rozkazowy mikroprocesora
Realizując cykl rozkazowy mikroprocesor wykonuje pewne powtarzające się czynności polegające na cyklicznym pobieraniu kodów rozkazów z pamięci i przesyłaniu ich układu sterowania a następnie na ich wykonaniu
Czas potrzebny na oczytanie kodu rozkazu z pamięci, na pobraniu argumentów, na wykonanie rozkazu, na
przesłanie wyniku operacji nazywa się cyklem
rozkazowym mikroprocesora.
26
Tryby adresowania mikroprocesora
Trybem adresowania nazywamy sposób określenia miejsca przechowywania argumentów rozkazu.
Argumenty rozkazu mogą być przechowywane w:
• Rejestrach
• Pamięci • Kodzie rozkazu
Do podstawowych trybów adresowania zaliczamy:
• Adresowanie bezpośrednie
• Adresowanie pośrednie
28
Przy adresowaniu pośrednim adres komórki zawiera
adres komórki, w której znajduje się adres argumentu lub rejestru.
29
Sposoby prezentowania rozkazu
EB 03h JMP SHORT ALA 11101011 000
00000011 001
010
011
rozkaz 100
101
ALA
Mnemonik Argument
Kod rozkazu Adresy Pamięć
Ten rozkaz zostanie wykonany po skoku
31
Sygnały sterujące mikroprocesora
80486
RESET
CLK
RDY#
M/IO#
D/C#
HOLD
HLDA
INTR
NMI
W/R#
RESET Restart mikroprocesora
CLK Zegar
RDY# żotowość np. pamięci M/IO# Operacja memory/IO
D/C# Obecność danych/kodu
HOLD Stan zawieszenia -
ądanie
HLDA Stan zawieszenia -
potwierdzenie
INTR ądanie przerwania
NMI Przerwanie niemaskow
W/R# Zapis lub odczyt