Mikroproc mikrokomp(TAK7)

background image

Wykład

Temat:

Struktura blokowa komputera, mikroprocesory,

mikrokomputery, stacje robocze, serwery.

Rozdziały wykładu:

1. Struktura blokowa komputera

2. Pojęcie i architektura mikroprocesora

2.1 Ewolucja układów półprzewodnikowych

2.2 Ewolucja mikroprocesorów

2.3 Architektura mikroprocesorów 8 bitowych

2.4 Układy arytmetyczno-logiczne mikroprocesorów

2.5 Parametry mikroprocesorów

2.6 Mikroprocesory 16 i więcej bitowe

3. Pojęcie i architektura mikrokomputera

4. Mikroprocesory i mikrokomputery segmentowe

5. Pojęcie i architektura stacji roboczej i serwera

background image

Struktura blokowa komputera

Podstawowy schemat blokowy komputera von Neumana zawiera cztery bloki
składowe:

układ sterujący

układy arytmetyczno logiczne

pamięć operacyjna

układy wejścia/wyjścia

Bloki te są połączone na schemacie liniami ciągłymi i przerywanymi, które
symbolizują drogi przesyłania danych i sygnałów sterujących.

background image

Ogólny schemat blokowy komputera o modelu architekturalnym von

Neumana

Układy

we/wy

Pamięć operacyjna

Układ sterujący

Układy

arytmetyczno – logiczne

(ALU)

dane

sygnały sterujące

Jednostka

centralna

- procesor

(CPU)

Układ sterujący, układy arymetyczno-logiczne oraz zespół rejestrów
komputera składają się na tzw. procesor komputera inaczej jednostkę
centralną, centralny procesor
(ang. processor, central processing unit,
central processor - CPU
).

background image

Układ sterujący

Układ sterujący (ang. control unit) pobiera rozkazy języka wewnętrznego z
pamięci operacyjnej, dekoduje je i wytwarza sygnały sterujące dla
pozostałych trzech bloków komputera.

Układ sterujący przesyła dane do bloku arytmetyczno-logicznego lub układów
wejścia/wyjścia, wtedy np. gdy zdekodował instrukcję zawierającą w sobie
bezpośrednio dane.

Układ sterujący pobiera dane z układów arytmetyczno-logicznych jeśli wynik
ich działania ma wpływ na przebieg sterowania w programie, np. stany
przerzutników kontrolnych istotne dla instrukcji warunkowych, np. skoku
warunkowego.

Układ sterujący zawiera w sobie rejestry adresowe (ang. address registers)
służące do przechowywania adresów pamięci w trakcie wykonywania
programu.

background image

Układ sterujący zawiera zwykle dodatkowe rejestry służące do tymczasowego
przechowywania informacji o stanie obliczeń w komputerze: (rejestr stanu
ang. status register), wskaźniki do ważnych obszarów pamięci operacyjnej
(rejestry wskaźników ang. pointer registers), itp.

Układ sterujący przesyła dane do pamięci komputera, gdy wykonuje
instrukcje związane ze sterowaniem w programie, np. instrukcję skoku do
podprogramu, gdy adres powrotu musi być zapamiętany w stosie
(zrealizowanym w pamięci) lub też przy obsłudze przerwań, gdy trzeba
zapamiętać w stosie stan procesora i adres powrotu do przerywanego
programu.

Układ sterujący może zawierać, obecnie już powszechną w komputerach,
pamięć podręczną lub inaczej pamięć schowkową (ang. cache memory), w
której przechowywane są bieżące instrukcje wykonywanego programu. Może
to być pamięć schowkowa wspólna dla instrukcji i danych albo odrębna
pamięć schowkowa instrukcji.

background image

Pamięć operacyjna

Pamięć operacyjna komputera (ang. operational memory) stanowi pamięć,
która przechowuje przechowuje aktualnie wykonywane programy wraz z ich
danymi.

Pamięć operacyjna może dostarczać dane (lub być źródłem danych) dla
wszystkich trzech pozostałych bloków komputera.

Dla wielu instrukcji (np. instrukcji sterujących wykonaniem programu, takich
jak np. instrukcje skoku do podprogramu, powrotu z podprogramu) danymi są
adresy pamięci operacyjnej.

background image

Pamięć operacyjna

Układy arytmetyczno-logiczne (ang. arithmetical/logical units - ALU)
otrzymują od układu sterującego zdekodowane instrukcje do wykonania.

Układy arytmetyczno-logiczne zawierają w sobie bloki wykonawcze,
wykorzystywane do realizacji instrukcji arytmetycznych i logicznych
komputera.

Układy arytmetyczno-logiczne zawierają w sobie robocze rejestry
uniwersalne
(ang. general purpose registers) służące do tymczasowego
przechowywania danych potrzebnych dla wykonania operacji arytmetycznych
i logicznych.

Układy arytmetyczno-logiczne wykorzystują obecnie już powszechnie
pamięć podręczną (schowkową) danych, którą umiejscawiamy w tym
bloku.

background image

Jeśli instrukcja wymaga pobrania (odesłania) danych z (do) pamięci
operacyjnej, układ sterujący realizuje sprzętowo odpowiednią operację z tym
związaną, przekazując dane do pamięci podręcznej i rejestrów roboczych.

Układ arytmetyczno-logiczny otrzymuje od układu sterującego dane
natychmiastowe z instrukcji oraz odsyła do układu sterującego informacje o
stanie wykonywania programu (bity z przerzutników warunków) generowane
po operacjach arytmetycznych i logicznych.

Układy arytmetyczno-logiczne wykonują (w niektórych mniej
rozbudowanych komputerach) operacje arytmetyczne związane z
adresowaniem instrukcji następnych do wykonania.

background image

Układy wejścia/wyjścia

Układy wejścia/wyjścia (ang. input/output units) realizują współpracę
komputera z tzw. urządzeniami zewnętrznymi lub inaczej peryferyjnymi
(ang. external devices lub peripheral devices).

Do urządzeń zewnętrznych zaliczamy urządzenia, które pozwalają
wprowadzać informacje (dane, programy, polecenia) do komputera oraz
urządzenia do wyprowadzania wyników programów (dane i programy).

Urządzeniami zewnętrznymi są klawiatura, myszka, joy-stick, monitor,
wszelkie urządzenia wyświetlające obrazy (np. telewizor, rzutnik obrazu),
wszelkie urządzenia wprowadzające obrazy (np. kamery video, telewizory,
czytniki płyt CD, DVD), wszelkie urządzenia dźwiękowe (głośniki,
rejestratory dźwięku), urządzenia do transmisji informacji (np. modemy,
sterowniki sieciowe), itd.

background image

Do urządzeń zewnętrznych zaliczamy wszelkie typy pamięci dodatkowej lub
inaczej pamięci peryferyjnej (ang. secondary store (memory) lub
peripheral memory (store)) komputera takich jak pamięć magnetyczna na
dyskach elastycznych i sztywnych, pamięci magnetyczne taśmowe, pamięć
optyczna na dyskach kompaktowych (CD), pamięć DVD, itp.

Układy wejścia/wyjścia zawierają sprzętowe układy sterowników
(wyposażone co najmniej w rejestry a często tez inne formy pamięci nawet o
dużych pojemnościach), które z jednej strony są dostępne dla komputera a z
drugiej strony dla urządzeń zewnętrznych.

Układy wejścia/wyjścia realizują instrukcje wejścia/wyjścia umieszczane w
programach (w języku wewnętrznym) komputera.

W wyniku instrukcji wejścia/wyjścia następuje wymiana informacji między
urządzeniami pamięciowymi układów wejścia/wyjścia a pamięcią komputera.

background image

Pojęcie i architektura mikroprocesora

Procesor zbudowany w technologii układów scalonych (ang. integrated
circuit technology
), przeważnie w postaci jednego układu scalonego,
nazywamy mikroprocesorem (ang. microprocessor).

Zanim procesory były budowane w postaci układów scalonych, były one
budowane w tzw. technologii układów dyskretnych, przy której czynne
elementy elektroniczne składające się na układy cyfrowe, takie jak diody,
tranzystory, oraz bierne elementy takie jak oporności, kondensatory, itp. były
wytwarzane w postaci osobnych części, które były następnie montowane na
płytach.

Początkowo połączenia między elementami prowadzone były postaci
przewodów a później w postaci połączeń wytwarzanych w postaci pasków
metalu na tzw. płytach drukowanych, do których elementy były
wlutowywane.

background image

Technologia układów scalonych wytwarza wszystkie elementy czynne
układu w bardzo zminiaturyzowanej postaci (rozmiary mierzone w mikronach
czyli tysięcznych częściach milimetra) metodą domieszkowania
zachodzących na siebie obszarów na powierzchni płytki zrobionej
półprzewodnika przeważnie krzemu.

Elementy czynne są rozmieszczane na w układzie jedynie w dwu wymiarach
na powierzchni krzemu.

Połączenia są tworzone na ogół jako napylane paski metalu albo odpowiednio
przetworzonego półprzewodnika w kilku warstwach na powierzchni układu.

Zmodyfikowana płytka półprzewodnika jest następnie umieszczana w
obudowie z nóżkami, które mogą być między sobą łączone.

background image

Przy wytwarzaniu układów scalonych występują silne ograniczenia
technologiczne
, co powoduje, że nie jest możliwe wytwarzanie układów
scalonych o dowolnej wielkości (stopniu skomplikowania) na skalę
przemysłową.

Rozwój technologii układów scalonych następuje krokowo, poprzez
stopniowe ulepszenia procesu produkcji i rozwój aparatury stosowanej do
produkcji, zmierzając do coraz to większej liczby czynnych elementów
(bramek logicznych) w jednym układzie scalonym.

background image

Ewolucja układów półprzewodnikowych

Ewolucja techniki realizacji mikroprocesorów jest ściśle związana z historią
rozwoju technologii układów scalonych.

Historia ta rozpoczyna się od wynalezienia w 1948 roku podstawowego
elementu czynnego układów scalonych - tranzystora, który wyparł następnie
z użycia powszechnie stosowane (również do produkcji komputerów)
próżniowe lampy elektronowe.

background image

Historia układów półprzewodnikowych

1948

Tranzystor bipolarny

1960

I-szy układ scalony

1962

Tranzystor unipolarny MOS

1964

TTL SSI, Texas Instruments

1970

MOS LSI, Intel, Texas Instr.

1971

Intel 4004 – mikroprocesor 4-bitowy PMOS

1972

Intel 8008 – mikroprocesor 8-bitowy PMOS

1973

Intel 8080 – mikroprocesor 8-bitowy NMOS

1974

Motorola 6800 – mikroprocesor 8-bitowy NMOS

background image

Historia układów półprzewodnikowych (cd)

1976

TMS 9900 - mikroprocesor 16-bitowy NMOS (Texas Instr.)

1978

Intel 8086 - mikroprocesor 16-bitowy HMOS

1981

Intel APX432 - mikroprocesor 32-bitowy

1981

Komputer personalny IBM PC

1989

Intel 80860 - mikroprocesor 64-bitowy

background image

Ewolucja mikroprocesorów

W 1971 roku firma INTEL uzyskała zamówienie na zrealizowanie scalonego
procesora specjalizowanego do obsługi monitora ekranowego.

W 1972 procesor oparty na arytmetyce na liczbach 8-biowych był gotowy,
jednak firma zamawiająca nie przyjęła produktu, ze względu na to, że nie
spełnił on wysokich wymagań szybkościowych.

INTEL udostępnił ten procesor jako produkt rynkowy o nazwie Intel 8008.
Procesor znalazł wielu zainteresowanych, w związku z tym INTEL opracował
ulepszoną wersję tego procesora, który wprowadził na rynek pod nazwą Intel
8080.

Procesor ten znalazł bardzo wielu nabywców, szczególnie wśród firm
elektronicznych, które w oparciu on procesor rozpoczęły produkcję
komputerów 8-bitowych.

Dwa lata później, podobny 8-bitowy procesor scalony wprowadziła na rynek
inna firma amerykańska - MOTOROLA. Był to początek ery
mikroprocesorów i rozwoju opartych na nich komputerów.

background image

W pierwszej połowie lat 70-tych, rozwój mikroprocesorów przebiegał w
trzech kierunkach:

kontynuacja produkcji procesorów 4-bitowych, głownie dla potrzeb
kalkulatorów elektronicznych,

rozwój linii mikroprocesorów 8-bitowych w kierunku ulepszenia ich cech
architekturalnych (liczba rejestrów uniwersalnych, lista instrukcji, struktura
połączeń z pamięcią i urządzeniami wejścia/wyjścia).

rozwój mikroprocesorów segmentowych, pozwalających na budowanie
komputerów o dowolnej długości słowa.

background image

Ewolucja mikroprocesorów

LSI (1970)

Kalkulatory, Intel 4004 dla kalkulatora (1971)

Intel 8008 dla obsługi monitora (1972)

na zlecenie DataPoint z San Diego CA

Intel 8080 uniwersalny (1973)

Mikroprocesory 4-bitowe

Mikroprocesory segmentowe

Mikroprocesory 8-bitowe (1973)

Mikroprocesory 16-bitowe (1978)

Mikroprocesory 32-bitowe (1981)

Mikroprocesory 64-bitowe (1989)

background image

Architektura mikroprocesorów 8-bitowych

Podstawowy schemat blokowy

Rejestr rozkazów

(RR)

Dekoder rozkazów

Generator

sygnałów

sterujących

Selektor rejestru

Rejestr danych (B)

Licznik rozk. (LR)

(LR)

Układ

następnika

ALU

Akumulator (A)

Rejestr warunków

Wewnętrzna szyna sterowania

Wewnętrzna szyna adresowa

Zespół rejestrów

uniwersalnych

i specjalnych

Układ sterowania

Rejestr

przejściowy

Rej. stanu proc.

Taktowanie

Przerwania

R

ej

es

tr

bu

fo

ro

w

y

da

ny

c

h

(

R

B

D

)

R

ej

es

tr

bu

fo

ro

w

y

adr

es

u (

R

B

A

)

Sprzężenie z szynami

zewnętrznymi

Wewnêtrzna szyna danych

Zewnętrzna

szyna

sterowania

Zewnętrzna

szyna

adresowa

Zewnętrzna

szyna

danych

Układ arytmetyczno – logiczny (ALU)

Rej. wsk. stosu

Rej. adresowy

background image

Podstawowe składniki struktury blokowej mikroprocesora 8-bitowego to
cztery podstawowe podzespoły:

układ sterujący,

zespół rejestrów,

układ arytmetyczno-logiczny

układ sprzężenia z szyną zewnętrzną.

Te cztery podzespoły są podłączone do trzech szyn (magistral):

wewnętrznej szyny danych (ang. local data bus),

szyny adresowej (ang. address bus),

szyny sterującej (ang. control bus).

background image

Zespół trzech szyn (magistral) łącznie tworzy umowną szynę systemową (
ang. system bus).

Trzy szyny są wyprowadzone na zewnątrz mikroprocesora w postaci
zewnętrznej szyny systemowej, aby umożliwić podłączenie do
mikroprocesora pozostałych zasadniczych podzespołów komputera: pamięci
(traktowanej jako pamięć operacyjna i pamięć podręczna) i układów
wejścia/wyjścia.

Szyna danych służy do wymiany informacji między trzema blokami
pokazanymi na rysunku jak również tymi blokami a pamięcią komputera i
układami wejścia/wyjścia. Te informacje stanowią dane lub rozkazy
wewnętrzne.

Szyna adresowa służy do przesyłania adresów między rejestrami
mikroprocesora a pamięcią operacyjną i układami wejścia/wyjścia.

Szyna sterująca służy do przekazywania sygnałów sterujących między
wszystkimi podzespołami komputera.

background image

Układ sterujący pokazany na rysunku jest typu sprzętowego, w odróżnieniu
od układu mikroprogramowanego.

W skład układu sterującego, pokazanego na schemacie powyżej, wchodzi:

rejestr rozkazów,

dekoder rozkazów

generator sygnałów sterujących rozsyłanych do wszystkich pozostałych
zespołów komputera.

Do generatora sygnałów sterujących doprowadzone są sygnały taktujące,
pochodzące ze stale działających układów wytwarzających prostokątne
sygnały o różnych wzorcach czasowych, potrzebne do sterowania działaniem
komputera.

Sygnały taktujące wytwarzane są w oparciu o jednolity sygnał prostokątny,
generowany przez generator kwarcowy, tzw. zegar (ang. clock).

background image

W skład układu sterowania wchodzi również układ obsługi przerwań (na
schemacie włączony do generatora sygnałów sterujących).

Układ obsługi przerwań ma dwa wejścia, na które urządzenia zewnętrzne w
stosunku do komputera, mogą podawać sygnały przerwań. Te sygnały
powodują przerwanie przez procesor aktualnie wykonywanego programu i
wykonanie programu obsługi przerwania.

Wśród końcówek przerwań wyróżniamy końcówkę przerwań
niemaskowalnych i maskowalnych.

Reakcje na sygnały przychodzące do końcówki przerwań maskowalnych
mogą być zamaskowane (unieczynnione) przez procesor.

background image

W skład zespołu rejestrów wchodzą

rejestry uniwersalne (ogólnego przeznaczenia) (ang. general purpose
registers
)

rejestry specjalne takie jak: licznik rozkazów (ang. program counter),
rejestry adresowe
(ang. address registers), rejestr wskaźnika stosu
(ang. stack pointer register), rejestr stanu procesora (ang. status register)
i inne..

background image

W skład układu sprzężenia z szyną zewnętrzną wchodzą dwa rejestry
buforowe: rejestr buforowy danych i rejestr buforowy adresów.

Pośredniczą one miedzy wewnętrznymi szynami mikroprocesora a
zewnętrznymi szynami, przechowując tymczasowo (buforując) dane
przesyłane w obu kierunkach: do i na zewnątrz mikroprocesora.

background image

Układy arytmetyczno-logiczne mikroprocesorów

Prosty układ arytmetyczno-logiczny (ALU) składa się z:

jednostki arytmetyczno-logicznej,

podstawowych rejestrów, które przechowują tymczasowo argumenty
operacji tej jednostki, takie jak rejestr akumulatora i rejestr przejściowy

rejestru bitów warunków, który przechowuje wyniki testów na rezultatach
obliczeń ALU.

background image

Cztery struktury połączenia jednostki arytmetyczno-

logicznej z rejestrami i szynami procesora.

Rejestr R

0

Rejestr R

1

Rejestr R

N

Akumulator

ALU

Zespół rejestrów

Ze
w

n
ę

trzn
a

sz

y

n

a da
ny
ch

Wewnętrzna szyna danych

Jednoszynowa struktura podłączenia ALU do zespołu rejestrów

background image

Najprostsza struktura jest struktura jednoszynowa. Oparta jest ona na
wykorzystaniu pojedynczej szyny danych, przez którą są przesyłane zarówno
argumenty jaki wynik operacji ALU. Taka struktura wymaga wprowadzenia
rejestru, który tymczasowo przechowa jeden argument operacji ALU, gdy
drugi będzie pobierany przez szynę danych. Rejestrem tym jest rejestr
akumulatora, który zgodnie ze swoją definicją, przechowuje zarówno
argument jak i wynik tej samej operacji ALU. Jeden argument ALU jest
pobierany z akumulatora, drugi bezpośrednio z szyny danych. Wynik operacji
ALU jest przesyłany do akumulatora lub rejestru uniwersalnego przez tę samą
szynę danych. Akumulator, który jest wykorzystywany do przechowania
zarówno argumentu operacji jak i wyniku, stwarza dodatkowy problem
synchronizacji odczytu i zapisu. Ponieważ wszystkie elementy układu są
podłączone do tej samej szyny danych, która jak wiadomo, umożliwia tylko
jedno przesłanie na raz. Poprawna praca układu jest możliwa pod warunkiem
bardzo starannej synchronizacji przesłań argumentów i wyników ALU (z
bardzo małymi marginesami dopuszczalnych odchyleń sygnałów w czasie).

background image

Jednoszynowa struktura podłączenia ALU z rejestrem przejściowym

Rejestr R

0

Rejestr R

1

Rejestr R

N

Zespół rejestrów

Akumulator

ALU

Rejestr

buforowy

akumulatora

Rejestr

przejściowy

Ze
wn
ę

trz
n

a

szyn

a

da
ny
ch

Wewnętrzna szyna danych

background image

Praca ALU podłączonego do jednej szyny danych będzie łatwiejsza dzięki
wprowadzeniu dodatkowych rejestrów buforowych na wejściach ALU, co
umożliwia statyczne przechowywanie obu argumentów operacji ALU i
eliminuje potencjalny konflikt na szynie danych między przesłaniem
argumentów i wyniku operacji.

Dodatkowe zbuforowanie rejestru akumulatora poprzez rejestr pośredniczący
uwalnia układ sterujący od bardzo precyzyjnego sterowania zapisem
/odczytem do /z rejestru akumulatora.

background image

Dwuszynowa struktura podłączenia ALU

Inne układy

(pamięci, we/wy)

Rejestr R

0

Rejestr R

N

ALU

Rejestr

przejściowy

Szyna danych A

Szyna D (przesyłanie wyników)

background image

W strukturze z dwiema szynami danych: szyną argumentów (górna) i szyną
wyników (dolna) jest znacznie łatwiejsze sterowanie pracą układu.

W tym przypadku można zrezygnować z wydzielenia w układzie rejestru
akumulatora, którego rolę może pełnić dowolny rejestr uniwersalny. Jednakże
niezbędne jest wprowadzenie jednego rejestru tymczasowego dla
przechowania jednego argumentu operacji ALU w czasie, gdy drugi jest
pobierany przez szynę.

background image

Trójszynowa struktura podłączenia ALU

Inne układy

(pamięci, we/wy)

Rejestr R

0

Rejestr R

N

ALU

Wskaźniki

Szyna danych A

Szyna danych B

Szyna D (przesyłanie wyników)

background image

W przypadku, gdy ALU jest on podłączony do trzech wewnętrznych szyn
danych sterowanie pracą jest jeszcze łatwiejsze.

Wówczas, nie ma potrzeby wprowadzania żadnego rejestru tymczasowego
argumentów ALU, gdyż obydwa argumenty mogą być przesłane jednocześnie
przez dwie szyny.

Wynik operacji może być przesłany do dowolnego rejestru uniwersalnego
przez niezależną szynę.

background image

Struktury blokowe trzech mikroprocesorów 8-bitowych: Intel 8080, Motorola
6800 i Zilog Z80. Jednoszynowe podłączenie ALU do zespołu rejestrów.

Rejestr rozkazów

Dekoder

W

Z

B

C

D

E

H

L

SP

PC

±

1

ALU

Akumulator

Rejestr

Rejestr

Wskaźniki

Szyna sterowania

Szyna adresowa

Szyna danych

Generator sygnałów

sterujących

Schemat blokowy mikroprocesora Intel 8080

background image

Rejestr rozkazów

Dekoder

SP

IR

PC

ALU

A

B

Wskaźniki

Szyna sterowania

Szyna adresowa

Szyna danych

T1

Generator sygnałów

sterujących

Schemat blokowy mikroprocesora Motorola 6800

background image

Rejestr rozkazów

Dekoder

Generator sygnałów

sterujących

ALU

A

A'

Wskaźniki

Szyna sterowania

Szyna adresowa

Szyna danych

B

C

D

E

H

L

IX

I

B'

C'

D'

E'

H'

L'

R

IY

SP

PC

Bufor
adresu

TMP

Schemat blokowy mikroprocesora Z-80 firmy ZILOG

background image

Parametry mikroprocesorów

Podstawowe parametry mikroprocesorów

Cechy architekturalne

Parametry techniczne

Liczba i cechy bloków

wykonawczych

Częstotliwość zegara

Struktura i parametry pamięci Technologia

Cechy i parametry listy rozkazów

Liczba tranzystorów

Liczba i rozmiary rejestrów danych

Napięcie zasilania

Liczba i rozmiary rejestrów

adresowych

Pobór mocy

Szerokości szyn danych i adresów

Obudowa

Cechy układu przerwań

Dołączalne koprocesory

background image

Cechy architekturalne

Cechy i liczba bloków wykonawczych to liczba jednostek wykonujących
operacje określone w instrukcjach programu w języku wewnętrznym oraz ich
cechy funkcjonalne.

Struktura i parametry pamięci to przede wszystkim liczba poziomów
pamięci: w tym liczba poziomów pamięci podręcznej, organizacja
zapisywanej informacji, pojemności.

Cechy i parametry listy rozkazów to typy i format instrukcji języka
wewnętrznego, dostępne tryby adresowania, metoda realizacji instrukcji
wejścia/wyjścia.

Rozmiar rejestrów danych i adresów oraz szerokości szyn danych i
adresów określają wydajność obliczeniową mikroprocesora.

Przebieg zmian tych cech architekturalnych procesorów omówiony zostanie
przy omawianiu rodzin procesorów typu RISC i CISC w dalszych wykładach.

background image

Parametry techniczne mikroprocesorów

Podstawowym parametrem jest częstotliwość zegara (ang. clock frequency),
którym są taktowane wszystkie operacje komputera (ściślej sygnały sterujące,
które te operacje wyzwalają).

Częstotliwość zegara decyduje o szybkości wykonywania operacji w
komputerze.

Od pierwszych mikroprocesorów w roku 1973 częstotliwość zegara zmieniła
się z 1 MHz do 2 GHz , a więc wzrosła około 2 tys. razy.

Rok

1975 1980 1990 1995 1998 2000 2002

Częstotliwość

zegara

3

MHz

10

MHz-

50

MHz

150

MHz

450

MHz

800

MHz

2.4

GHz

background image

W podobnym stopniu wzrosła szybkość obliczeniowa procesorów, co
pokazuje następna tabelka.

Rok

1975 1980 1990 1995 1998 2000 2002

Szybkość

obliczeń

(MIPS)

0.75 3 30 120 330 600

1600

background image

Rodzaj technologii jest to metoda wytworzenia układu scalonego
mikroprocesora.

Charakteryzuje ją szereg cząstkowych parametrów takich jak:

stopień scalenia układu

sposób budowy elementów czynnych i układów logicznych z (tzw.
technologia integracji)

liczba bramek w jednym układzie scalonym

liczba tranzystorów w jednym układzie scalonym.

background image

Liczba tranzystorów w układzie scalonym mikroprocesora

Rok 1975 1980 1990 1995 1998 2000 2002

Liczba

tranzystoró

w (mln)

0.01 0.1 1.5 5.5 7.5 10 40

background image

Stopnie scalenia (skala integracji) lub stopnie integracji (ang. integration
scale
) spotykane w zintegrowanych układach cyfrowych

Skala integracji

Liczba tranzystorów w

jednym układzie (max)

Liczba bramek w jednym

układzie (max)

mała

(SSI) – Small

Scale Integration

100 10

średnia

(MSI) - Medium

Scale Integration

1000 200

duża

(LSI) – Large

Scale Integration

100 000

10 000

wielka

VLSI – Very

Large Scale

Integration

50 milionów

do 12 milionów

background image

Czasami używane terminy:

ultra wielka skala integracji –ULSI – (ang. Ultra Large Scale
Integration)
upakowaniu powyżej 10 mln tranzystorów w jednym
układzie

gigantyczna skala integracjiGSI - (ang. Gigantic Scale Integration)
upakowaniu powyżej 1 biliona tranzystorów w jednym układzie
scalonym, odpowiednio.

background image

Rodzaje układów logicznych realizowane za pomocą pojedyńczego
układu scalonego w danej skali integracji.

Skala integracji

Układy kombinacyjne

zawarte w jednym układzie

scalonym

Układy sekwencyjne

zawarte w jednym układzie

scalonym

mała

(SSI)

bramki logiczne

przerzutniki

średnia

(MSI)

dekodery, enkodery,

multipleksery,

demultipleksery, sumatory

elementarne

rejestry, liczniki

duża

(LSI)

bloki funkcjonalne, pamięci

ROM,

PROM, EPROM

bloki pamięci RAM, małe

mikroprocesory, układy

PLA, układy PAL, małe

kontrolery we/wy

wielka

(VLSI)

bardzo duże pamięci ROM

duże mikroprocesory, duże

kontrolery we/wy,

układy FPGA

background image

Technologia integracji

Jest to sposób wytwarzania tranzystorów i innych elementów elektronicznych
z półprzewodników oraz sposób budowy z nich bramek i innych cyfrowych
układów jak przerzutniki, pamięci itp.

Technologia decyduje o szybkości realizacji operacji, wielkości układu,
liczbie bramek i innych układów w układzie scalonym, ilości wydzielanego
ciepła przez układ (ważne dla układu chłodzenia).

background image

Technologia TTL

Technologia TTL (ang. Transistor-Transistor-Logic) polega na
wykorzystywaniu tzw. tranzystorów bipolarnych (nośnikami prądu są w
nich elektrony i elementy dodatnie).

Bramki logiczne są realizowane w oparciu o wielowejściowe tranzystory,
które w sposób naturalny realizują funkcje negacji, NAND i NOR,
wykorzystując reprezentację binarnych wartości logicznych w postaci
ustalonych wartości napięć (technika napięciowa).

Technologia TTL charakteryzuje się średnimi i wysokimi szybkościami
działania i średnimi wartościami wydzielanej mocy (ciepła) z układu.

background image

Technologia ECL

Technologia ECL (ang. Emitter-Coupled Logic) oparta jest na
wykorzystaniu tranzystorów bipolarnych z połączonymi emiterami.

Realizacja funkcji logicznych jest w technice prądowej, tzn. reprezentacja
binarnych wartości logicznych jest w postaci przepływu i braku przepływu
prądu.

Realizacja funkcji logicznych polega na przełączaniu stale płynących dużych
prądów między tranzystorami.

Taka technika zapewnia bardzo wysokie szybkości działania, ze względu na
brak opóźnień wynikających z ładowania pojemności w układach, które
występują przy wykorzystaniu techniki napięciowej.

Ze względu na stale płynące prądy o stosunkowo dużych wartościach,
technika ECL charakteryzuje się bardzo silnym wydzielaniem mocy z
układów, w związku z tym duże komputery oparte na tej technice wymagają
specjalnych układów chłodzenia np. za pomocą rur z wodą lub ciekłym
azotem.

background image

Technologia CMOS

Nazwa technologii MOS (ang. Metal Oxide Semiconductor) i CMOS, (ang.
Complementary Metal Oxide Semiconductor
), pochodzi od materiałów, z
których budowane są takie układy elektroniczne.

Technologia ta jest oparta na wykorzystaniu tranzystorów unipolarnych, w
których wykorzystuje się nośniki prądu jednego rodzaju (elektrony lub
ładunki dodatnie).

Sterowanie przepływem prądów polega na dynamicznym tworzeniu w
półprzewodniku, metodą oddziaływania elektrostatycznego elektrody
zwanej bramką, tzw. kanałów między normalnie odizolowanymi obszarami.
Kanały umożliwiają przepływ prądu między tymi obszarami.

Reprezentacja binarnych wartości logicznych jest napięciowa. Po
wysterowaniu bramki, stworzenie kanału zmienia napięcie na wyjściu układu
na przeciwny. Naturalna jest więc realizacja negacji logicznej.

background image

Technologii CMOS wykotzystuje specjalną technikę wykorzystywania par
tzw. tranzystorów komplementarnych (z nośnikami elektronowymi i
dodatnimi).

Pozwala to na bardzo szybką prace tych układów przy bardzo niskich
wartościach wydzielanych mocy.

Ze względu na te zalety technologia CMOS w wielu dodatkowych wariantach
jest obecnie powszechnie wykorzystywana do budowy współczesnych
mikroprocesorów.

background image

Mikroprocesory 16 i więcej bitowe

Rozwój architektury mikroprocesorów w dalszych latach następujących po
mikroprocesorach 8-bitowych wprowadził do wewnętrznego schematu
blokowego mikroprocesora następujące elementy:

Powiększenie długości słowa, szerokości rejestrów i ich liczby,

Powiększenie szerokości dróg przesyłania informacji – szyn (magistral),

Wprowadzenie pamięci podręcznej - często wielopoziomowej,

Wprowadzenie równoległego pobierania rozkazów z wyprzedzeniem,

Wprowadzenie równoległego dekodowania wielu instrukcji na raz,

background image

Wprowadzenie wielu równolegle działających bloków wykonawczych,
włączając w to:

specjalizowane jednostki do obliczeń zmienno-przecinkowych,

bloki obsługi i konwersji adresów pamięci wirtualnej,

bloki zarządzania pamięcią,

bloki realizacji komunikacji z pamięcią.

Wprowadzenie potokowej realizacji wykonania rozkazów,

Wprowadzenie bloku przewidywania skoków w programach,

Wprowadzenie wykonywania rozkazów ze zmianą porządku,

Wiele innych ulepszeń architekturalnych zwiększających wydajność.

background image

Uproszczony schemat blokowy mikroprocesora 16-bitowego

Mikroprocesor 16-bitowy posiada 16-bitową jednostkę arytmetyczno-
logiczną.

Zespół rejestrów składa się z 16-bitowych uniwersalnych rejestrów danych
oraz z pewnej liczby rejestrów specjalizowanych: licznik rozkazów, rejestr
stanu i warunków, rejestry adresowe.

Szyna danych jest 16-bitowa. Szyna adresowa jest szerokości większej niż 16
bitów, podobnie jak i rejestry adresowe.

Na rysunku poniżej szyna danych i adresów jest wspólna. Szerokość tej
wspólnej szyny jest większa niż 16-bitów. Dla przesyłania danych 16-
bitowych wykorzystuje się część linii tej szyny. Dla przesyłania adresów
wykorzystuje się wszystkie linie szyny.

Wspólnej szyny danych i adresów stosowane w pierwszych modelach
mikroprocesorów 16-bitowych.

background image

Bloki wspomagania konwersji adresów wirtualnych, związane z
wprowadzeniem w tych procesorach pamięci wirtualnej opartej na
segmentacji.

Blok wspomagania wykonywania rozkazów rozgałęzień warunkowych - .
rejestruje historię wykonania instrukcji rozgałęzień (warunek spełniony/
niespełniony - True/False) i na tej podstawie przewiduje kierunek przebiegu
sterowania w przypadku powtórnego wykonania instrukcji, dla których miał
zarejestrowaną historię poprzednich wykonań.

background image

Schemat blokowy prostego mikroprocesora 16-bitowego

Układ konwersji

adresów wirtualnych

Zbiór rejestrów

wskaźników segmentów

Rejestry uniwersalne

danych oraz

rejestry adresowe

Licznik rozkazów (LR)

Rejestr wskaźnika stosu (SP)

Szyna pomocnicza

ALU

(16-bitowe)

Rejestr warunków

i stanu procesora

Wewnętrzna szyna danych i adresów

Rejestr rozkazów i układ

przewidywania rozgałęzień

Dekoder rozkazów

Generator sygnałów sterujących

Bufory adresów/danych

Szyna sterująca

Adres/Dane

(AD0-AD15)

Pozostałe bity

adresu

Zewnętrzna szyna
danych i adresów

INT

background image

Pojęcie i architektura mikrokomputera

Mikrokomputerem (ang. microcomputer) nazywamy komputer zbudowany
w oparciu o mikroprocesor czyli procesor zintegrowany (zrealizowany w
postaci układu scalonego).

Ogólna metoda budowy mikrokomputerów polega na dołączaniu do układu
szyn mikroprocesora dodatkowych podzespołów takich jak pamięci i
sterowniki urządzeń zewnętrznych (układów wejścia/wyjścia).

Schemat blokowy najprostszego mikrokomputera jest przedstawiony na
rysunku poniżej. Widzimy tam mikroprocesor, z którego wyprowadzone są
trzy szyny: danych, adresowa i sterująca. Do tych trzech szyn podłączone
są:

pamięć operacyjna składająca się z pamięci z zapisem RAM i pamięci typu
tylko odczyt RAM,

układy wejścia/wyjścia, do których podłączone są z kolei urządzenia
zewnętrzne

background image

Ogólny schemat blokowy prostego mikrokomputera

Mi

k

r

o

p

ro

ce

so

r

ROM

RAM

Układy wejścia/wyjścia

Urządzenia zewnętrzne

Magistrala (szyna)

adresowa

Magistrala (szyna)

danych

Magistrala (szyna)

sterująca

Pamięć operacyjna

background image

Bardziej rozbudowany schemat blokowy mikrokomputera

Podłączonych jest znacznie więcej układów wejścia/wyjścia:

kontroler przesłań równoległych,

kontroler przesłań szeregowych,

kontroler przerwań,

układ liczników/zegarów,

kontroler bezpośredniego dostępu do pamięci - DMA,

inne specjalizowane kontrolery wejścia/wyjścia.

background image

Pełniejszy schemat blokowy prostego mikrokomputera

Mikroprocesor

Pamięć RAM/ROM

Układy równoległego

wejścia/wyjścia

Układy szeregowego

wejścia/wyjścia

Układy

liczników / zegarów

Programowalny

kontroler przerwań

dane

adres

Równoległe
urządzenia
zewnętrzne,
np. drukarka

Generatory
i odbiorniki
sygnałów

Linie
zgłoszeń i
potwierdzeń
przerwań

Szeregowe
urządzenia
zewnętrzne,
np. modem

Inne układy wejścia/wyjścia

Układ

DMA

Szyny:
sterująca,
danych,
adresowa

Urządzenia
zewnętrzne,
np. pamięć
dodatkowa

background image

Kontroler przesłań równoległych obsługuje wymianę informacji z
urządzeniami zewnętrznymi, które przesyłają dane w postaci równoległych.
Przykładami takich urządzeń są drukarki, monitor ekranowy, pamięci
dyskowe na dyskach sztywnych i elastycznych, klawiatura.

Pracą kontrolera steruje mikroprocesor, który interweniuje przy każdym
przesyłaniu porcji informacji, wykonując odpowiednie instrukcje odczytu lub
zapisu informacji z (do) kontrolera.

Kontroler steruje przesłaniami ze swojej pamięci wewnętrznej (rejestrów) do
urządzeń zewnętrznych.

background image

Kontroler przesłań szeregowych obsługuje wymianę informacji z
urządzeniami zewnętrznymi, które przesyłają dane w postaci szeregowej.
Przykładami takich urządzeń są myszka, modemy do połączeń poprzez sieć
telefoniczną.

Kontroler realizuje sprzętową konwersję informacji szeregowej na równoległą
i odwrotnie (za pomocą odpowiednich rejestrów szeregowo-równoległych).

Pracą kontrolera steruje mikroprocesor, który interweniuje po każdym
zakończeniu konwersji postaci przesyłanej informacji, wykonując
odpowiednie instrukcje odczytu lub zapisu informacji z (do) kontrolera.

background image

Kontroler przerwań obsługuje przyjmowanie przerwań od wielu
jednocześnie zgłaszających się urządzeń zewnętrznych.

Zadaniem jego jest przyjmowanie zgłoszeń przerwań, rejestrowanie ich,
dokonywanie selekcji w celu wybrania jednego, które ma być obsłużone przez
procesor, komunikacja z procesorem w celu przesłania identyfikatora
wybranego przerwania i wymiany sygnałów sterujących.

Pracą kontrolera steruje mikroprocesor, który po przyjęciu przerwania od
kontrolera wykonuje program obsługi tego przerwania.

background image

Układ liczników/zegarów realizuje operacje odmierzania czasu i
generowania sygnałów o zadanych wzorcach przebiegu w czasie. Pracą
kontrolera steruje mikroprocesor.

Kontroler bezpośredniego dostępu do pamięci (DMA) - (ang. Direct
Memory Access
) obsługuje równoległą wymianę informacji między
urządzeniami zewnętrznymi a pamięcią operacyjną komputera, bez udziału
procesora.

Kontroler DMA umożliwia autonomiczne przesłania danych do/z pamięci
operacyjnej. Przesłania te nie angażują procesora, który może jednocześnie
prowadzić obliczenia.

background image

Mikroprocesory i mikrokomputery segmentowe

Idea mikroprocesorów segmentowych wynikła z potrzeby budowania
mikrokomputerów o dowolnej długości słowa danych w czasach, gdy nie
pozwalał na to stan rozwoju technologii układów scalonych (budowano wtedy
zaledwie mikroprocesory 8-bitowe a co najwyżej 16-bitowe).

Koncepcja segmentacji mikroprocesora polega na podziale zbioru rejestrów
danych i jednostki arytmetyczno-logicznej na segmenty o ustalonej liczbie
przetwarzanych i przechowywanych bitów danych, np. 2-bity lub 4-bity.

Segmenty buduje się w postaci układu wielkiej skali integracji w taki sposób,
aby można było łączyć je w kaskadę.

background image

Otrzymuje się wielosegmentowe rejestry oraz wielosegmentowa jednostkę
ALU, działające w odpowiedzi na sygnały sterujące przykładane do
wszystkich segmentów równolegle.

W połączonym zespole segmentów następują równoległe zapisy i odczyty
bitów danych do/z rejestrów, nastepuje rownoległa realizacja operacji
arytmetyczno-logicznych na bitach zwiazanych z segmentami oraz zachodzi
propagacja przeniesień między segmentami ALU.

Rej. danych

ALU

We

Wy
weW

S

yg

na

ły

st

er

u

ce

Rejestr
wskaźników

ALU

Rejestry danych

Podział rejestrów i ALU na segmenty N-bitowe

background image

Wielobitowy i wielosegmentowy układ obliczeniowo-rejestrowy podłącza się
do wspólnego układu sterującego, który pobiera rozkazy z pamięci i generuje
na ich podstawie sygnały sterujące dla wszystkich segmentów.

Układy sterowania stosowane dla segmentów były mikroprogramowane, tzn.
sygnały sterujące były generowane na podstawie mikrorozkazów
odczytywanych z pamięci sterowania.

Wykonanie rozkazu odbywało się przez wykonanie mikroprogramu
zapisanego w pamięci sterowania.

Mikroprogram był adresowany (wybierany) przez podanie do pamięci
sterowania kodu operacyjnego rozkazu jako adresu pierwszego mikrorozkazu

.

background image

Schemat blokowy mikrokomputera segmentowego

Rejestr instrukcji

Układ szeregujący

(sekwenser)

Pamięć stała

mikroprogramów

Segment

N-bitowy

(1)

Segment

N-bitowy

(2)

Segment

N-bitowy

(P)

Adres

Dane

Kod operacyjny

instrukcji

Sterowanie

A

d

re

s m

ikr

o

inst

ruk

cj

i

Wielosegmentowe ALU i rejestry danych (PxN bitowe)

Układ sterowania

background image

Komputerem personalnym nazywamy mikrokomputer, którego konfiguracja
została dostosowana do potrzeb przeciętnego pojedyńczego użytkownika
zamierzającego wykorzystywać komputer jako narzędzie do stosunkowo
prostych obliczeń, przetwarzania tekstu oraz podstawowych zastosowań
multimedialnych.

Współczesny komputer personalny jest wyposażony w:

szybki mikroprocesor,

pamięć operacyjną o stosunkowo małej pojemności (128 – 512 MB),

pamięć na dyskach sztywnych (ang. hard disk),

pamięć na dyskach elastycznych (ang. floppy disk),

pamięć na dyskach kompaktowych CD (od ang. compact disk) – czytnik
lub nagrywarkę z czytnikiem,

background image

monitor ekranowy o średnim rozmiarze ekranu (15-17 cali),

kontroler graficzny (and. graphics controler) obrazu monitora,

kartę dźwiękową (ang. audio controler),

skaner obrazów (ang. scanner),

drukarkę (ang. printer),

często karę telewizyjną (ang. TV card),

kartę sieciową (ang. network adapter) lub modem (ang. modem) do
współpracy z siecią Internet.

background image

Komputer personalny jest wyposażony w bogate oprogramowanie użytkowe
(ang. application software), które umożliwia użytkownikom wygodne,
wspomagane komputerem, wykonywanie różnorodnych aplikacji bez
potrzeby samodzielnego pisania programów.

Przykładem takiego oprogramowania jest Microsoft Office, który umożliwia
rozwinięte przetwarzanie tekstu, tworzenie obrazów graficznych, manipulacje
na zbiorach danych, obsługę poczty elektronicznej, współpracę z siecią
Internet, łączącą komputery na skalę światową, itp.

Komputer personalny jest wyposażony w system operacyjny (ang. operating
system
), który udostępnia funkcje związane ze sterowaniem wykonywania
programów, edycję tekstu programów i zbiorów w kodzie ASCII,
zarządzaniem zbiorami użytkownika i zasobami komputera.

System ten zwykle umożliwia również wiele funkcji zapewniających
różnorodne manipulacje na zbiorach użytkownika (wyszukiwanie,
porównywanie, kopiowanie i tworzenie struktur plików.

Komputer personalny jest zwykle wyposażony w kompilatory podstawowych
języków programowania wysokiego rzędu.

background image

Stacją roboczą nazywamy mikrokomputer, który jest przystosowany do
intensywnych obliczeń i rozwiniętej wizualizacji wyników.

Współczesna stacja robocza posiada zestaw elementów składowych zbliżony
do komputera personalnego, jednakże o znacznie podwyższonych
parametrach ilościowych, wydajnościowych i jakościowych;

pamięć operacyjna stacji roboczej ma pojemność mierzoną w GB,

duży dysk sztywny,

monitor ekranowy o wielkości od 19 cali wzwyż i rozdzielczości powyżej
1200x1200 punktów,

bardzo wydajny kontroler graficzny z dużą pamięcią obrazu,

skaner o podwyższonej rozdzielczości.

background image

Ze stacją roboczą mogą współpracować;

specjalizowane kontrolery przyspieszające obliczenia

(ang. accelerator cards)

rozwinięte urządzenia do wprowadzenie i wyprowadzanie informacji, jak:

drukarki dużych obrazów (ang. plotter),

szybkie skanery dużych obrazów,

urządzenia projekcyjne (ang. projectors).

System operacyjny stacji roboczej jest zwykle wyposażony w rozbudowany
zestaw funkcji do manipulacji zbiorami i uruchamiania programów.
Stacja robocza jest zwykle wyposażona w bogaty zestaw kompilatorów
języków wysokiego poziomu, często optymalizujących produkowany kod
wynikowy. Jest ona też przeważnie wyposażana w bardzo zaawansowane i
specyficzne oprogramowanie użytkowe.

background image

Serwerem (ang. server) nazywamy mikrokomputer, który jest przystosowany
do wykonywania zleceń wysyłanych zdalnie przez wielu użytkowników.

Odróżniamy:

serwery obliczeniowe (ang. computation server) przeznaczone dla
udostępniania mocy obliczeniowej

serwery plików (ang. file server) przeznaczone dla przechowywania i
udostępnianie zbiorów.

Serwery obliczeniowe charakteryzują się bardzo dużą pojemnością pamięci
operacyjnej i bardzo często wieloma procesorami pracującymi ze wspólną
pamięcią.

Serwery plików charakteryzują się pamięcią na dyskach sztywnych o bardzo
dużej pojemności, często opartą na wielu równoległe pracujących stacjach
dysków
sztywnych (ang. hard disk drive).

Obydwa typy serwerów są wyposażone w bardzo szybkie i często
zwielokrotnione połączenie z siecią łączącą komputery.

background image

Serwer posiada system operacyjny wyposażony w rozbudowane funkcje
współpracy ze zdalnymi użytkownikami, jednocześnie zgłaszającymi swoje
żądania otrzymania usług, dlatego jest system pracującym w trybie
wieloprogramowym (ang. multi-program) oraz trybie
wieloużytkownikowym (ang. multi-user).


Wyszukiwarka

Podobne podstrony:
mim, studia Polibuda Informatyka, III semestr, mikroprocesory i mikrokontrolery (mim)
Mikroprocesor i mikrokontolery, Mechatronika
ETP2921 - MIKROPROCESORY, Mikrokontrolery
mim, studia Polibuda Informatyka, III semestr, mikroprocesory i mikrokontrolery (mim)
Systemy Mikroprocesorowe Mikrokontrolery Janusz Janiczek
ściąga MIKROPROCKI, informatyka, Mikrokontrolery
Laboratorium budowy urządzeń mikrokomputerowych, Sprzęganie urządzeń zewnętrznych i peryferyjnych mi
mikrokontrolery, ELEKTRONIKA I PROGRAMOWANIE, Mikroprocesory, programowanie Bascom, AVR,
Labolatorium Urządzeń mikrokomputerowych, Badanie zasilacza ukł. mikroprocesor., Politechnika Lubel
Badanie zasilacza ukł. mikroprocesor, Studia, sprawozdania, sprawozdania od cewki 2, Dok 2, Dok 2, P
mikroprocesor 2
Opracowanie Zagadnień na egzamin Mikroprocki
Bootloader dla mikrokontrolerów AVR
02 Mikroklimat
Mikrokontrolery Grodzki Sprawoz Nieznany
evboard, Płytka testowa dla mikrokontrolerów AT89S oraz AVR

więcej podobnych podstron