Najjednostavnija metoda upravljanja slijedom instrukcija:

Σχετικά έγγραφα
Najjednostavnija metoda upravljanja slijedom instrukcija:

18. listopada listopada / 13

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Matematička analiza 1 dodatni zadaci

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

3.1 Granična vrednost funkcije u tački

PRIMJER 3. MATLAB filtdemo

TRIGONOMETRIJSKE FUNKCIJE I I.1.

7. Mikroprogramiranje

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

ELEKTROTEHNIČKI ODJEL

Linearna algebra 2 prvi kolokvij,

Teorijske osnove informatike 1

1a. Von Neumannov model računala

MIKRORAČUNAR. Sl.1. - Sklop mikroračunara kao crna kutija

Operacije s matricama

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

Računarska grafika. Rasterizacija linije

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

RIJEŠENI ZADACI I TEORIJA IZ

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

Sveučilište J.J. Strossmayera u Osijeku Odjel za matematiku. GRAĐA RAČUNALA (predavanja u ak. god /2006.)

INTELIGENTNO UPRAVLJANJE

Riješeni zadaci: Nizovi realnih brojeva

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

numeričkih deskriptivnih mera.

REKURZIVNE FUNKCIJE PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK. Diplomski rad. Voditelj rada: Doc.dr.sc.

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

Kaskadna kompenzacija SAU

STANDARDNA ARHITEKTURA MIKROPROCESORA

1 Promjena baze vektora

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

Grafičko prikazivanje atributivnih i geografskih nizova

( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

ZBIRKA POTPUNO RIJEŠENIH ZADATAKA

7 Algebarske jednadžbe

STANDARDNA ARHITEKTURA MIKROPROCESORA

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA Zavod za elektroniku, mikroelektroniku, računalne i inteligentne sustave

Funkcije dviju varjabli (zadaci za vježbu)

Numerička matematika 2. kolokvij (1. srpnja 2009.)

Eliminacijski zadatak iz Matematike 1 za kemičare

III VEŽBA: FURIJEOVI REDOVI

APROKSIMACIJA FUNKCIJA

ORGANIZACIJA PREKIDNOG SISTEMA ZA MIKROPROCESOR M6800

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Small Basic zadatci - 8. Razred

Ĉetverokut - DOMAĆA ZADAĆA. Nakon odgledanih videa trebali biste biti u stanju samostalno riješiti sljedeće zadatke.

Računarska grafika. Rasterizacija linije

2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

Riješeni zadaci: Limes funkcije. Neprekidnost

Uvod u teoriju brojeva

VON NEUMANNOV MODEL RAČUNALA

1.4 Tangenta i normala

F (t) F (t) F (t) OGLEDNI PRIMJER SVEUČILIŠTE J.J.STROSSMAYERA U OSIJEKU ZADATAK

Tranzistori s efektom polja. Postupak. Spoj zajedničkog uvoda. Shema pokusa

Neka je a 3 x 3 + a 2 x 2 + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka.

Prikaz sustava u prostoru stanja

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

FAKULTET PROMETNIH ZNANOSTI

Linearna algebra 2 prvi kolokvij,

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

PRAVAC. riješeni zadaci 1 od 8 1. Nađite parametarski i kanonski oblik jednadžbe pravca koji prolazi točkama. i kroz A :

Ispitivanje toka i skiciranje grafika funkcija

ARHITEKTURA RAČUNARA

Elementi spektralne teorije matrica

Matematika 1 - vježbe. 11. prosinca 2015.

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

SEMINAR IZ KOLEGIJA ANALITIČKA KEMIJA I. Studij Primijenjena kemija

1. Duljinska (normalna) deformacija ε. 2. Kutna (posmina) deformacija γ. 3. Obujamska deformacija Θ

Zavrxni ispit iz Matematiqke analize 1

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

ORGANIZACIJA PROCESORA

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

KONVEKSNI SKUPOVI. Definicije: potprostor, afin skup, konveksan skup, konveksan konus. 1/5. Back FullScr

3. STRUKTURE PODATAKA

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

PRIMJERI RJEŠAVANJA ZADATAKA

( , 2. kolokvij)

Obrada signala

Logičko i fizičko stanje digitalnog kola

BETONSKE KONSTRUKCIJE 2

5. Karakteristične funkcije

( ) ( ) Zadatak 001 (Ines, hotelijerska škola) Ako je tg x = 4, izračunaj

Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati:

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Dijagrami: Greda i konzola. Prosta greda. II. Dijagrami unutarnjih sila. 2. Popre nih sila TZ 3. Momenata savijanja My. 1. Uzdužnih sila N. 11.

5. PARCIJALNE DERIVACIJE

Inženjerska grafika geometrijskih oblika (5. predavanje, tema1)

radni nerecenzirani materijal za predavanja

Transcript:

4. Upravljacka jedinica Funkcija upravljacke jedinice Prijenos upravljanja izmedu programa Rekurzivni programi LIFO ili stožna struktura Uporaba stoga AIOR, S. Ribaric 1

Funkcije upravljacke jedinice: Pribavljanje instrukcija Tumacenje instrukcija Generiranje upravljackih signala tijekom instrukcijskog ciklusa Upravljanje slijedom instrukcija: izbor instrukcije prijenos upravljanja s jedne na drugu instrukciju (engl. Instruction sequencing) AIOR, S. Ribaric 2

Najjednostavnija metoda upravljanja slijedom instrukcija: - svaka instrukcija jednoznacno odreduje adresu sljedece: (znacajka prvih racunala prije von Neumannovog doba ) Primjer: EDVAC (Electronic Discrete Variable Computer) Oblik aritmeticke instrukcije: Nedostatak: Povecana duljina instrukcije (Dataflow arhitektura) AIOR, S. Ribaric 3

Druga metoda: - Instrukcija I nalazi se na memorijskoj lokaciji s adresom A i ima jedinstvenu nasljednicu instrukciju I na adresi A+1 PC programsko brojilo sadrži adresu A + 1 (adresu slijedece instrukcije) Adresa slijedece instrukcije (I ) odreduje se povecanjem PC-a: PC PC + k, gdje je k duljina instrukcije I izražena u rijecima (bajtovima) /za procesor RISC k=1/ AIOR, S. Ribaric 4

Prijenos upravljanja izmedu instrukcija koje si nisu slijedne: 1) Instrukcije grananja 2) Instrukcije za prijenos upravljanja izmedu programa 1) Instrukcije grananja Instrukcije bezuvjetnog grananja PC X, gdje je X adresa ciljne instrukcije POZOR: Gornja se operacija izvodi tijekom faze IZVRŠI AIOR, S. Ribaric 5

Instrukcije uvjetnog grananja - Tijekom faze IZVRŠI ispituje se da li je neki uvjet C zadovoljen (C je obicno posljedica neke ranije instrukcije) - Ako je C zadovoljen, tada PC X, u drugim slucajevima PC se ne mijenja (tijekom faze IZVRŠI) AIOR, S. Ribaric 6

2) Instrukcije za prijenos upravljanja izmedu programa P1 program (glavni program) P2 potprogram ili P1 pozivajuci program P2 pozvani program Dva glavna slucaja: 1) Pozivanje potprograma 2) Prekidi AIOR, S. Ribaric 7

1)P1 P2 instrukcije za pozivanje potprograma (engl. Call, jump to subroutine): CALL X, gdje je X ciljna adresa (ili se ciljna adresa racuna na temelju X) prve instrukcije (pot)programa P2. AIOR, S. Ribaric 8

Tijekom faze IZVRŠI instrukcije CALL obavljaju se dva slijedece koraka: 1. Korak: Sadržaj PC-a (koji pokazuje na slijedecu instrukciju u P1) se pohranjuje na za to predodredenu lokaciju S, 2. Korak: X (ili adresa izracunata na temelju X) prenosi se u PC Lokacija S sadrži povratnu adresu AIOR, S. Ribaric 9

Povratak iz programa P2 (P2 P1): Instrukcija povratka (Return; RET) posljednja instrukcija u P2 PC S Problem: Gniježdenje potprograma! AIOR, S. Ribaric 10

Primjer: PDP 8 (ili kako se nekad radilo) JMS SUB ; Jump to Subroutine i) PC se pohranjuje na lokaciju SUB ii) PC se automatski inkrementira podrazumijevajuci da se prva instrukcija potprograma SUB nalazi na adresi SUB + 1 Prijenos upravljanja s potprograma na pozivajuci program: JMP I SUB ; Indirektni skok na SUB!!! Problem gniježdenja potprograma riješen! AIOR, S. Ribaric 11

Nedostatak rješenja: Potprogrami ne mogu pozivati sami sebe (nije omogucena rekurzija) Rekurzivni program P može se prikazati kao kompozicija Π osnovnih instrukcija s i (koje ne sadrže P) i samog programa P: P = Π [s i, P] Primjer: PROLOG predak_od (X,Y) :- roditelj_od (X, Y). predak_od (X, Y) :- roditelj_od (Z, Y), predak_od (X, Z). AIOR, S. Ribaric 12

Primjer: n! = 1 x 2 x 3 x 4 x... n 1! = 1 n! = n x (n-1)! Hanojski tornjevi Fibonaccijevi brojevi: 1) F 0 = 0, F 1 = 1; i 2) F n = F n-1 + F n-2, za n 2 AIOR, S. Ribaric 13

Rješenje problema rekurzije: Uporaba upravljackih stogova Stog LIFO (Last In First Out) služi za pohranu povratnih adresa. CALL SUB 1) PUSH PC 2) PC SUB RETURN 1) POP PC AIOR, S. Ribaric 14

Rekurzivno pozivanje: Begin.. CALL SUB X:. ; X je povratna adresa.. SUB:.. CALL SUB Y:. ; Y povratna adresa.. RETURN. End AIOR, S. Ribaric 15

Stanje stoga: Nakon prvog pozivanja Nakon drugog pozivanja Trece pozivanje, cetvrto pozivanje,... Povratak??? AIOR, S. Ribaric 16

Rekurzivno pozivanje: Begin. N := 3 CALL SUB X:.. SUB:.. N := N 1 IF (N > 0) THEN CALL SUB Y:.. RETURN End AIOR, S. Ribaric 17

Stanje stoga: - Prvi poziv (N = 3) / poziv iz glavnog programa/: - Drugi poziv (N = 2) / poziv iz SUB/: AIOR, S. Ribaric 18

Treci poziv (N = 1) /poziv iz SUB/: Drugi povratak: Prvi povratak: Treci povratak: AIOR, S. Ribaric 19

Primjeri izvedbe stoga: 1) Stog od n k-bitnih rijeci izveden pomocu posmacnih registara 2) Uporaba memorije s izravnim pristupom kao podrucje stoga AIOR, S. Ribaric 20

1) k AIOR, S. Ribaric 21

2) RAM AIOR, S. Ribaric 22

Primjer uporabe stoga Analiza slucaja: MC 68000 Scenarij: 1. Procesor je u korisnickom nacinu rada (User Mode) Poziva se potprogram Nastavlja se izvodenje potprograma 2. Dogodila se iznimka (PREKID) Obrada prekida 3. Vracanje u potprogram 4. Vracanje iz potprograma /primjer detaljno opisan u S. Ribaric, Naprednije arhitekture mikroprocesora, Element, 1997., Zagreb/ AIOR, S. Ribaric 23

Graficki prikaz scenarija: AIOR, S. Ribaric 24

AIOR, S. Ribaric 25

Dijagram stanja za MC 68000 RTE -Return from Exception /povlaštena instrukcija/ AIOR, S. Ribaric 26

CALL POT se izvodi u dva koraka: - PUSH PC - PC POT Povratak: - RET: POP PC Uporaba stoga!!! AIOR, S. Ribaric 27

Na stog se tijekom prijenosa upravljanja s prekinutog na prekidni program (P 1 P 2 ) pohranjuje MINIMALNI KONTEKST: Sadržaj programskog brojila (4 bajta) Sadržaj statusnog registra (2 bajta) Adresa prekidnog programa? AIOR, S. Ribaric 28

Stanja kazala stoga i stogova prije pozivanja potprograma AIOR, S. Ribaric 29

Stanje neposredno nakon grananja u potprogram AIOR, S. Ribaric 30

Dogodio se prekid! (Iznimka se obraduje u nadglednom nacinu) AIOR, S. Ribaric 31

Stanje stogova nakon vracanja u potprogram AIOR, S. Ribaric 32

Stanje stoga nakon vracanja iz potprograma AIOR, S. Ribaric 33

Stanje prije izvodenja programa Stanje nakon izvodenja programa AIOR, S. Ribaric 34

Nacini izvedbe upravljacke jedinice AIOR, S. Ribaric 35

Opis upravljackih signala C OUT - signali koji izravno upravljaju djelovanjem digitalnog sustava za obradu informacije /glavna funkcija upravljacke jedinice/ C IN - signali koji omogucuju utjecaj podataka tijekom njihove obrade omogucavaju donošenje odluke u zavisnosti od rezultata operacije na podacima C IN - prijemni signali (od drugih upravljackih jedinica ili od središnje nadgledne jedinice, npr. start, stop) C OUT - signali prema drugim upravljackm jedinicama (npr. busy, operation completed) AIOR, S. Ribaric 36

Opisivanje djelovanja upravljacke jedinice Dijagram toka i opisni jezici (engl. Description language) - dijagram toka opisuje mikrooperacije i njihov slijed svakoj mikrooperaciji se u dijagramu toka pridružuje skup upravljackih signala {C i,j }koji se moraju aktivirati da bi se mikrooperacija izvršila - sklopovski opisni jezici: RTL (Register Transfer Language), CDL (Computer Design Language), VHDL,... Nacini izvedbe upravljacke jedinice 1) Sklopovska izvedba - sekvencijalni sklopovi (engl. Hardwired control unit) 2) Mikroprogramska izvedba AIOR, S. Ribaric 37

Sklopovska izvedba -tri pristupa: 1) Standardni pristup oblikovanju sekvencijalnih sklopova (uporaba tablica ili dijagrama stanja) 2) Uporaba elemenata za kašnjenje 3) Uporaba brojila sekvenci AIOR, S. Ribaric 38

Tablica stanja Ulazne kombinacije Stanja S 1 S 1,1, Z 1,1 S 1,2, Z 1,2... S, Z 1,m 1,m S 2 S 2,1, Z 1,2 S 2,2, Z 2,2... S, Z 2,m 2,m S 3.................. S n I 1 I 2 S i,j oznacava slijedece stanje........................ S n,1, Z n,1 S n,2, Z n,2... S n,m, Z n,m... I m Z i,j oznacava skup izlaznih signala koji se aktiviraju s I j ako je upravljacka jedinica u stanju S i AIOR, S. Ribaric 39

Dijagram stanja AIOR, S. Ribaric 40

Uporaba elemenata za kašnjenje -razmotrimo problem generiranja slijeda upravljackih signala u vremenskim trenucima t 1, t 2,..., t n t 1 : aktiviraj {C 1,j } t 2 : aktiviraj {C 2,j }........ t n: aktiviraj {C n,j } - Pretpostavimo da je u trenutku t 1 prisutan signal Start(t 1 ) i on ce u trenutku t 1 aktivirati skup signala {C 1,j } koji ce pobuditi jednu (prvu) ili više mikrooperacija - Signal Start(t 1 ) dovodimo na element za kašnjenje (kašnjenje = t 2 t 1 ) izlaz iz elementa za kašnjenje aktivira {C 2,j } itd. -Slijed elemenata za kašnjenje može se upotrijebiti za generiranje upravljackih signala Oblikovanje upravljacke jedinice izravno iz dijagrama toka AIOR, S. Ribaric 41

Primjer Start {C 1,j } {C 2,j } Ne X 1 =1? X 2 =1? Ne {C 3,j } Da {C 4,j } Da {C 5,j } {C 6,j } AIOR, S. Ribaric 42

Odnos: dijagram toka sklopovi {C 1,j } C 1 {C 1,j } {C 2,j } Element za kašnjenje {C 2,j } C 2 C 3 AIOR, S. Ribaric 43

Odnos: dijagram toka sklopovi X=1? Ne X X Da Da Ne AIOR, S. Ribaric 44

Izvedba: {C 1,j } C 1 Element za kašnjenje {C 2,j } C 2 Element za kašnjenje X 1 X 1 X 2 X 1 X 2 {C 4,j } {C 5,j } C k {C 3,j } Element za kašnjenje {C 6,j } AIOR, S. Ribaric 45

Izvedba jednostavnog elementa za kašnjenje dvostruki bistabil (engl. Masterslave) S S Y S Q R R MASTER Y SLAVE R Q S R C Q Q P M-S BISTABIL AIOR, S. Ribaric 46

Cp 1 R 0 1 S 0 1 0 Q 1 0 PROPAGATION DELAY OF OUTPUT Q FROM LEADING EDGE OF THE CLOCK PULSE?? AIOR, S. Ribaric 47