architektura sk 05

background image

CYKL ROZKAZOWY

CYKL ROZKAZOWY

I TRYBY ADRESOWANIA

I TRYBY ADRESOWANIA

Cykl rozkazowy

Cykl rozkazowy

Format rozkazu i tryb adresowania

Format rozkazu i tryb adresowania

background image

Czas potrzebny na odczytanie kodu rozkazu z pamięci, na
pobranie argumentów, na wykonanie rozkazu i przesłanie
wyniku

operacji

nazywa

się

cyklem

rozkazowym

(instrukcyjnym)

Czas potrzebny na odczytanie kodu rozkazu z pamięci, na
pobranie argumentów, na wykonanie rozkazu i przesłanie
wyniku

operacji

nazywa

się

cyklem

rozkazowym

(instrukcyjnym)

Cykl rozkazowy składa się zwykle z faz pobierania (kodu rozkazu,

Cykl rozkazowy składa się zwykle z faz pobierania (kodu rozkazu,

pobierania argumentu) i wykonania rozkazu.

pobierania argumentu) i wykonania rozkazu.

P

a

m

ć

P

a

m

ć

C

P

U

C

P

U

POBRANIE

POBRANIE

ROZKAZU

ROZKAZU

WYSŁANIE

WYSŁANIE

ADRESU

ADRESU

ROZKAZU

ROZKAZU

DEKODOW

DEKODOW

ANIE

ANIE

ROZKAZU

ROZKAZU

OBLICZANIE

OBLICZANIE

ADRESU

ADRESU

ARGUMENTU

ARGUMENTU

I

I

OBLICZANIE

OBLICZANIE

ADRESU

ADRESU

ARGUMENTU

ARGUMENTU

II

II

WYKONANIE

WYKONANIE

ROZKAZU

ROZKAZU

OBLICZENIE

OBLICZENIE

ADRESU

ADRESU

PRZEZNACZE

PRZEZNACZE

-

-

NIA

NIA

ZAPIS

ZAPIS

WYNIKU

WYNIKU

POBRANIE

POBRANIE

ARGUMENTU

ARGUMENTU

II

II

POBRANIE

POBRANIE

ARGUMENTU

ARGUMENTU

I

I

cykl pobrania rozkazu

cykl pobrania rozkazu

cykl

cykl

pobrania

pobrania

argument

argument

u I

u I

cykl

cykl

pobrania

pobrania

argument

argument

u II

u II

cykl zapisu

cykl zapisu

wyniku

wyniku

CYKL ROZKAZOWY PROCESORA

CYKL ROZKAZOWY PROCESORA

Realizując program, system mikroprocesorowy wykonuje pewne

Realizując program, system mikroprocesorowy wykonuje pewne

powtarzające się czynności, polegające na cyklicznym pobieraniu kodów

powtarzające się czynności, polegające na cyklicznym pobieraniu kodów

rozkazów z pamięci i wczytywaniu ich do układu sterowania, a następnie

rozkazów z pamięci i wczytywaniu ich do układu sterowania, a następnie

realizacji rozkazu

realizacji rozkazu

background image

Liczba faz pobierania rozkazu (pobierania argumentu) zależy od

Liczba faz pobierania rozkazu (pobierania argumentu) zależy od

rodzaju procesora i rodzaju rozkazu (argumentu).

rodzaju procesora i rodzaju rozkazu (argumentu).

Faza pobrania:

Faza pobrania:

1. adresowanie: podanie zawartości rejestrów adresujących

1. adresowanie: podanie zawartości rejestrów adresujących

pamięć (np. CS:IP) na magistralę adresową

pamięć (np. CS:IP) na magistralę adresową

2. odczyt zaadresowanej komórki pamięci do rejestru rozkazów

2. odczyt zaadresowanej komórki pamięci do rejestru rozkazów

(RR)

(RR)

3. zwiększenie zawartości licznika rozkazów (IP)

3. zwiększenie zawartości licznika rozkazów (IP)

Faza wykonania:

Faza wykonania:

4. zdekodowanie kodu rozkazu i wytworzenie sygnałów

4. zdekodowanie kodu rozkazu i wytworzenie sygnałów

sterujących realizujących dany rozkaz

sterujących realizujących dany rozkaz

1

1

2

2

3

3

4

4

Cykl von

Cykl von

Neumana

Neumana

w przypadku rozkazów

wielobajtowych

ADRES

ADRES

RR

RR

kod

kod

rozkazu

rozkazu

kod

kod

rozkazu

rozkazu

kod

kod

rozkazu

rozkazu

kod

kod

rozkazu

rozkazu

kod

kod

rozkazu

rozkazu

procesor

procesor

pamięć

pamięć

s

zy

n

a

a

d

re

so

w

a

s

zy

n

a

a

d

re

so

w

a

s

zy

n

a

d

a

n

y

c

h

s

zy

n

a

d

a

n

y

c

h

CYKL ROZKAZOWY PROCESORA

CYKL ROZKAZOWY PROCESORA

background image

Program składa się z 4 rozkazów (adres pierwszego rozkazu wynosi 300):

Program składa się z 4 rozkazów (adres pierwszego rozkazu wynosi 300):

odczyt pierwszego argumentu z komórki o adresie 841 i zapisanie go do

odczyt pierwszego argumentu z komórki o adresie 841 i zapisanie go do

rejestru A

rejestru A

odczyt drugiego argumentu z komórki o adresie 915 i zapisanie go do rejestru B

odczyt drugiego argumentu z komórki o adresie 915 i zapisanie go do rejestru B

dodanie obu argumentów

dodanie obu argumentów

przesłanie wyniku do komórki pamięci o adresie 915

przesłanie wyniku do komórki pamięci o adresie 915

CYKL ROZKAZOWY PROCESORA

CYKL ROZKAZOWY PROCESORA

16 bitów

Rozpatrzmy przykład wykonania programu dodawania dwóch liczb

Rozpatrzmy przykład wykonania programu dodawania dwóch liczb

16-bitowych stałopozycyjnych w komputerze 16-bitowym.

16-bitowych stałopozycyjnych w komputerze 16-bitowym.

Pamięć jest 16-bitowa, kod rozkazu 12-bitowy a adres 20-bitowy

Pamięć jest 16-bitowa, kod rozkazu 12-bitowy a adres 20-bitowy

(kod rozkazu i adres można zatem umieścić w 2 komórkach

(kod rozkazu i adres można zatem umieścić w 2 komórkach

pamięci)

pamięci)

MAPA PAMIĘCI

12 bitów

4 bity

background image

Formatem rozkazu nazywamy sposób rozmieszczenia informacji w
kodzie rozkazu

Formatem rozkazu nazywamy sposób rozmieszczenia informacji w
kodzie rozkazu

Kod rozkazu:

Kod rozkazu:

musi zawierać określenie rodzaju wykonywanej operacji (kod operacji)

musi zawierać określenie rodzaju wykonywanej operacji (kod operacji)

- w pierwszym bajcie (bajtach) kodu rozkazu

- w pierwszym bajcie (bajtach) kodu rozkazu

może zawierać operandy i/lub adresy operandów wykonywanych

może zawierać operandy i/lub adresy operandów wykonywanych

operacji

operacji

Trybem adresowania nazywamy sposób określenia miejsca
przechowywania argumentów rozkazu

Trybem adresowania nazywamy sposób określenia miejsca
przechowywania argumentów rozkazu

Argumenty rozkazu (dotyczy zarówno danych jak i wyników) mogą być

Argumenty rozkazu (dotyczy zarówno danych jak i wyników) mogą być

przechowywane w:

przechowywane w:

rejestrach

rejestrach

pamięci

pamięci

kodzie rozkazu

kodzie rozkazu

Rozróżniamy następujące tryby adresowania

adresowanie natychmiastowe

adresowanie bezpośrednie

adresowanie rejestrowe
adresowanie pośrednie

adresowanie indeksowe z przemieszczeniem

FORMAT ROZKAZÓW

FORMAT ROZKAZÓW

I TRYB ADRESOWANIA

I TRYB ADRESOWANIA

background image

Przy adresowaniu natychmiastowym argument rozkazu zawarty
jest w kodzie rozkazu

Przy adresowaniu natychmiastowym argument rozkazu zawarty
jest w kodzie rozkazu

Oznacza to, że w zasadzie nie jest to adresowanie w zwykłym sensie.

Oznacza to, że w zasadzie nie jest to adresowanie w zwykłym sensie.

Argument jest umieszczany w kodzie rozkazu, więc musi być on znany w

Argument jest umieszczany w kodzie rozkazu, więc musi być on znany w

momencie pisania programu.

momencie pisania programu.

Kod rozkazu

Kod rozkazu

Kod operacji

Kod operacji

Argument

Argument

Przy adresowaniu bezpośrednim kod rozkazu zawiera adres
komórki pamięci, w której przechowywany jest argument rozkazu

Przy adresowaniu bezpośrednim kod rozkazu zawiera adres
komórki pamięci, w której przechowywany jest argument rozkazu

W momencie pisania programu musimy zarezerwować adres przechowywania

W momencie pisania programu musimy zarezerwować adres przechowywania

argumentu.

argumentu.

Kod

Kod

rozkazu

rozkazu

Kod operacji

Kod operacji

Adres

Adres

Argument

Argument

P

A

M

Ć

P

A

M

Ć

TRYB ADRESOWANIA

TRYB ADRESOWANIA

background image

Przy adresowaniu rejestrowym w kodzie rozkazu zawarty jest
rejestr, w którym przechowywany jest argument

Przy adresowaniu rejestrowym w kodzie rozkazu zawarty jest
rejestr, w którym przechowywany jest argument

Zaletą tego trybu jest krótki kod i szybkie wykonanie

Zaletą tego trybu jest krótki kod i szybkie wykonanie

Kod

Kod

rozkazu

rozkazu

Kod

Kod

operacji

operacji

Określeni

Określeni

e

e

rejestru

rejestru

Argument

Argument

REJESTR

REJESTR

W trybie adresowania pośredniego (rejestrowego pośredniego)
kod rozkazu zawiera określenie rejestru bądź rejestrów, w
których znajduje się adres komórki pamięci zawierającej
argument

W trybie adresowania pośredniego (rejestrowego pośredniego)
kod rozkazu zawiera określenie rejestru bądź rejestrów, w
których znajduje się adres komórki pamięci zawierającej
argument

Adres

Adres

REJESTR

REJESTR

Argument

Argument

P

A

M

Ć

P

A

M

Ć

Kod

Kod

operacji

operacji

Określeni

Określeni

e

e

rejestru

rejestru

Kod

Kod

rozkazu

rozkazu

TRYB ADRESOWANIA

TRYB ADRESOWANIA

background image

W trybie adresowania indeksowego z przemieszczeniem adres
argumentu przechowywanego w pamięci obliczany jest jako
suma zawartości rejestru określonego w kodzie rozkazu i
wartości

umieszczonej

w

kodzie

rozkazu,

zwanej

przemieszczeniem

W trybie adresowania indeksowego z przemieszczeniem adres
argumentu przechowywanego w pamięci obliczany jest jako
suma zawartości rejestru określonego w kodzie rozkazu i
wartości

umieszczonej

w

kodzie

rozkazu,

zwanej

przemieszczeniem

Kod

Kod

rozkazu

rozkazu

Kod

Kod

operacji

operacji

Określeni

Określeni

e

e

rejestru

rejestru

wartość

wartość

REJESTR

REJESTR

Przemieszczen

Przemieszczen

ie

ie

Argument

Argument

P

A

M

Ć

P

A

M

Ć

TRYB ADRESOWANIA

TRYB ADRESOWANIA

background image

DZIĘKUJĘ ZA UWAGĘ !

DZIĘKUJĘ ZA UWAGĘ !


Document Outline


Wyszukiwarka

Podobne podstrony:
architektura sk 01
architektura sk 04
architektura sk 03
architektura sk 08
tk sk 05
architektura sk 09
architektura sk 07
architektura sk 13
architektura sk 06
architektura sk 11
architektura sk 02
architektura sk 12
architektura sk 10
White James SK 05 Sektor dwunasty
architektura sk 01
05 OZE 2013 12 06 sk
Metodyka?dań obiektów architektonicznych 05
Metodyka?dań obiektów architektonicznych 7 05

więcej podobnych podstron