POSTUPAK PROJEKTOVANJA CENTRALNOG PROCESORA

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "POSTUPAK PROJEKTOVANJA CENTRALNOG PROCESORA"

Transcript

1 Univerzitet u Novom Sadu Fakultet tehničkih nauka POSTUPAK PROJEKTOVANJA CENTRALNOG PROCESORA LPRS2

2 Logičko projektovanje centralnog procesora Formalan postupak koji Na početku ima definiciju arhitekture Format podataka, skup registara, skup instrukcija Na kraju daje izvedenu organizaciju procesora Na toj osnovi, moguće je nastaviti postupak Razradom detaljne električne šeme Pripremom realizacije integrisanog kola Kompleksnost realnih procesora je izvor složenosti postupka projektovanja Ipak, sam postupak projektovanja ima tok suštinski istovetan kao u sledećem primeru 2

3 Primer: Projektovanje procesora sa nepotpunim skupom instrukcija Definicija arhitekture Registri i memorija, 8bita Skup instrukcija Nepotpun Proširiv Osnovni adresni režimi Ilustracija postupka PC IR Dekoder operacija q n q 3 q 2 q 1 t 7 t 3 t 2 t 1 A Dekoder takta Briši MAR Memorija 256x8 bita MBR R T KOP Mnemonik Opis Funkcija LDA R Napuni registar A sadržajem iz registra R A R LDA =OPR Napuni operand u registar A A OPR LDA ADR Napuni operand određen adresom u registar A A M[ADR] 3

4 Faza pribavljanja instrukcije Uslov Mikroinstrukcije Komentar t 0 : MAR PC prenos adrese t 1 : MBR M[MAR], PC PC + 1 čitanje KOP, uvećanje PC t 2 : IR MBR postavljanje q i 4

5 Izvršenje instrukcija Instrukcija Uslov Lista mikroinstrukcija Komentar LDA R q 1 =1 LDA =OPR q 2 =1 LDA ADR q 3 =1 q 1 t 3 : A R, T 0 prenos u A, kraj instrukcije (t 0 =1) q 2 t 3 : MAR PC adresiranje reči o p e r a n d a q 2 t 4 : MBR M, PC PC + 1 učitavanje, uvećanje PC q 2 t 5 : A MBR, T 0 prenos u A, kraj instrukcije q 3 t 3 : MAR PC adresiranje reči adrese operanda q 3 t 4 : MBR M, PC PC + 1 učitavanje adrese, uvećanje PC q 3 t 5 : MAR MBR q 3 t 6 : MBR M[MAR] q 3 t 7 : A MBR, T 0 prenos adrese u MAR učitavanje operanda prenos u A, kraj instrukcije 5

6 Lista mikroinstrukcija i složenih uslova Uslov Mikroinstrukcija Komentar x 1 = t 0 + q 2 t 3 + q 3 t 3 : MAR PC prenos sadržaja x 2 = q 3 t 5 : MAR MBR prenos sadržaja x 3 = t 1 + q 2 t 4 + q 3 t 4 : PC PC + 1 uvećanje PC x 4 = t 1 + q 3 t 6 : MBR M očitavanje memorije x 5 = t 1 + q 2 t 5 + q 3 t 7 : A MBR prenos sadržaja x 6 = q 1 t 3 : A R prenos sadržaja x 7 = x 5 + x 6 : T 0 kraj instrukcije x 8 = t 2 : IR MBR prenos sadržaja 6

7 Organizacija procesora Uvećanje PC Memorija Čitaj Unos MAR 1 MUX 0 s IR MBR Unos DEK R 1 0 s x 8 q 3 q 2 q 1 MUX x 1 x 2 UJ x 5 x 6 Unos A x 3 x 7 x 4 t 7 t 6 t 0 DEK T Uvećaj Briši 7

8 Projektovanje MIPS procesora Projektovanje "realnog" mikroprocesora MIPS (Microprocessor Without Interlocked Pipeline Stages) 32 bita, godine, Univerzitet Stanford, SAD Danas raspoloživ u brojnim varijantama, uključujući i 64 bitnu Trećina svih proizvedenih RISC procesora imaju MIPS jezgro Odlikuje se jasnim i konzistentnim skupom instrukcija Razmotriće se (projektovati) sledeće varijante: Konvencionalni MIPS sa izvršenjem instrukcije u jednom taktu Konvencionalni MIPS sa izvršenjem instrukcije u više taktova Protočno organizovan MIPS procesor 8

9 Organizacija MIPS procesora CPU modul Kernel i User mode Koprocesor 0 Kontrola procesora mfc0, mtc0 Koprocesor 1 Tekući zarez Memorijski prostor 2 30 reči 2 32 Byte 9

10 MIPS 32-bitna arhitektura Skup registara, $broj Postoje i dodatni registri, nevidljivi za programera Broj Ime Opis 0 zero Vrednost 0, nepromenljiva 1 $at Rezervisano za asembler (assembler temporary) 2-3 $v0 - $v1 Smeštanje rezultata proračuna i funkcijskih poziva (values) 4-7 $a0 - $a3 Prenos argumenata ka potprogramima (arguments) 8-15 $t0 - $t7 Privremene vrednosti (temporaries) $s0 - $s7 Sačuvane vrednosti (saved values) $t8 - $t9 Privremene vrednosti (temporaries), nastavak prvih osam $k0 - $k1 Rezervisano za jezgro OS (kernel scratch) 28 $gp Pokazivač na 64KB segment statičkih podataka (global pointer) 29 $sp Pokazivač na poslednju lokaciju "stack-a" (stack pointer) 30 $s8/$fp $s8, ili pokazivač na okvir steka (frame pointer) 31 $a Povratna adresa (return address) 10

11 Memorijski prostor Obuhvata 2 30 memorijskih reči Reči se adresiraju po oktetima, tj. adrese dve uzastopne reči razlikuju se za četiri Pristup memoriji isključivo load/store instrukcijama Pristup se može ostvariti i na nivou polureči (16-bita) ili okteta Memorijski "stack" je opadajući, tj. raste na dole jer se pri punjenju steka ukazivač umanjuje. 11

12 MIPS Instrukcije Sve instrukcije su fiksne dužine 32 bita Format instrukcije sa 3 operanda Izvršavaju se po segmentima trajanja uvek 1 ciklus takta Pristup memoriji isključivo preko load/store instrukcija Pristup se može ostvariti i na nivou polureči (16-bita) ili okteta Nije podržana aritmetika na nivou bajta ili polureči Ima jedinicu za množenje / deljenje Memorijski "stack" nije HW podržan (nema push i pop) Minimalna je podrška rukovanju prekidima i izuzecima 12

13 Tipovi instrukcija MIPS procesora kop rs, rt, rd pomeraj funkcija adresa/ direktna vrednost odredišna adresa kod operacije koju instrukcija izvršava; izvorni i odredišni registri koji učestvuju u izvršenju; vrednost pomeraja; izbor varijante operacije zadate poljem kop; adresno odstojanje, ili neposredna vrednost koja se unosi u registar; ciljna adresa instrukcije skoka. 13

14 Adresni režimi MIPS procesora Registarsko adresiranje op rs rt rd... Registar Neposredno adresiranje op rs rt operand Bazno adresiranje op rs rt odstojanje Registar Memorija byte + Reč polureč PC-relativno adresiranje op rs rt odstojanje Memorija + Reč PC Pseudodirektno adresiranje op adresa 31:26 25 : 0 PC + Memorija Reč 14

15 Adresni režimi 1/3 Registarsko adresiranje 5-bitni kod za jedan od 32 registra Neposredno adresiranje operanda Koristi 16-bitne konstante Punjenje 32-bitnog registra - dve instrukcije Registarsko adresiranje op rs rt rd... Registar Neposredno adresiranje op rs rt operand 15

16 Adresni režimi 2/3 Bazno i PC-relativno adresiranje Vrednost registra dopunjava se 16-bitnim odstojanjem u rečima, ne u bajtima štede se dva bita u instrukciji i proširuje adresni prostor registar gp na sredinu 64kW prostora Bazno adresiranje koriste load/store, i omogućava adresiranje polureči/bajta PC-relativno adresiranje koriste instrukcije uslovnog grananja Bazno adresiranje op rs rt odstojanje Registar Memorija byte + Reč polureč PC-relativno adresiranje op rs rt odstojanje Memorija + Reč PC 16

17 Adresni režimi 3/3 Pseudodirektno adresiranje Referencira memorijske reči korišćenjem (26+2)=28-bitne pseudoadrese Ona se mora proširiti sa gornja četiri bita programskog brojača PC(31:28) Pseudodirektno adresiranje op adresa 31:28 25 : 0 PC + Memorija Reč 17

18 Osnovni skup MIPS instrukcija Ime Sintaksa Značenje Tip Aritmetičke instrukcije Kop/ Fun Komentar Add add r1,r2,r3 r1 r2 + r3 R 00/20 Sabiranje dva registra Subtract add r1,r2,r3 r1 r2 - r3 R 00/22 Oduzimanje dva registra hex Add immediate addi r1,r2,const r1 r2 + const I 08/- Pristup memoriji i prenos između registara Load word lw r1,const(r2) r1 M[r2+const] I 23/- Store word sw r1,const(r2) M[r2+const] r1 I 2b/- Load byte lb r1,const(r2) r1 M[r2+const] I 24/- Store byte sb r1,const(r2) M[r2+const] r1 I 28/- Load upper immediate lui r1,const r1 const * 2 16 I 0f/- Logičke i instrukcije pomeranja Dodavanje konstante ili kopiranje registra (npr. addi rs1, rs2, 0 ) Punjenje registra rečju iz memorije sa adrese (r2+const) Upis reči u memoriju počev od (r2+const) Punjenje registra bajtom sa adrese (r2+const) Upis bajta u memoriju na adresu (r2+const) Puni 16-bitnu vrednost neposrednog operanda u u gornju polovinu registra Set on less than slt r1,r2,r3 r1 test(r2 < r3) R 00/2a Uporedi r2 i r3; r1 0 ili 1 Set on less than immediate slti r1,r2,const r1 test(r2<const) And and r1, r2, r3 r1 r2 r3 R 00/24 Logičko I I 0a/- Uporedi r2 sa konstantom; r1 0 ili 1 Or or r1,r2,r3 r1 r2 r3 R 00/25 Logičko ILI Shift left logical sll r1,r2,const r1 r2 << const R 00/00 Shift right logical Branch on equal Branch on not equal Jump srl r1,r2,const r1 r2 >> const R 00/02 Uslovno grananje beq r1,r2,const bne r1,r2,const Bezuslovni skok j const if (r1 == r2) go to PC+4+const if (r1!= r2) go to PC+4+const goto address const Pomeranje u levo *Nije realizovano u primerima Pomeranje u desno *Nije realizovano u primerima I 04/- Grananje ako su dva registra ista I 05/- Grananje ako dva registra nisu ista J 02/- Bezuslovni skok na zadatu adresu Jump register jr r1 goto address r1 R 00/08 Bezuslovni skok na adresu iz registra Jump and link jal const $31 PC + 4; goto const J 03/- Poziv procedure. Povratak se radi sa: jr $31. 18

19 Primer asemblerskog programa i njegove kopije u memoriji Početna adresa (20000 x 4) Čita vektor iz memorije (početna adresa u $s6), indeks u $s3 Izlazi čim se pročitana vrednost razlikuje od registra $s5 bne i j instrukcije koriste odstojanja (adrese) na reč MIPS adrese su poravnate na reč (ne na byte), ili se generiše izuzetak 19

20 MIPS procesor sa izvršenjem instrukcije u jednom taktu 20

21 Skup instrukcija MIPS-1T Redukovan skup instrukcija: Memorijske instrukcije: lw, sw Aritmetičko logičke instrukcije R-tipa: add, sub, and, or, slt Uslovno grananje: beq Skok: j Pokriva sva tri tipa instrukcija i osnovne elemente MIPS arhitekture 21

22 Polazna struktura MIPS-1T procesora s 1 4 MUX + + s 3 MUX Ulaz wr Izlaz1 alk MemWrite PC Adresa Instrukcija Programska memorija rd1 rd2 Registri Izlaz2 RegWrite s 2 MUX ALJ Adresa Podaci Ulaz Memorija podataka Izlaz MemRead Dve memorije, programska i za podatke PC deo: +4, +deo_inst, Zero bit iz ALJ kontrola MUX1 ALJ ima drugi ulaz iz registarskog bloka ili instrukcije 22

23 Izvršenje instrukcija procesora MIPS-1T Aritmetičko logičke, R-tip Primer: add $t1, $t2, $t3 Očitavaju se registri zadati sa i[25:21, 20:16]. ALJ izvršava operaciju prema i[5:0]. MUX3 propušta izlaz ALJ. Zapis rezultata u registar zadat sa i[15:11]. Grananje, I-tip Primer: beq $t1, $t2, offset Očitavaju se registri zadati sa i[25:21, 20:16] i oduzimaju pomoću ALJ. Odstojanje i[15:0] se proširuje znakom i pomera ulevo za dva mesta (x4). Sabiranjem sa PC formira se adresa grananja. MUX1 kontrolisan Zero bitom stanja određuje koji od izlaza sabirača daje novu vrednost PC. Memorijske, I-tip Primer: lw $t1, offset($t2) Očitava se registar zadat sa i[25:21]. Odstojanja i[15:0] se proširuje znakom. ALJ računa memorijsku adresu kao zbir pročitanog registra i proširenog odstojanja. Očitana mem. reč se prosleđuje preko MUX3. Zapis učitane reči u registar zadat sa i[20:16]. Primer: j adresa Skok, J-tip 32-bitna adresa skoka se formira na sledeći način: Najviši biti [31:28] adrese su preslikani iz vrednosti PC + 4 Biti [27:2] adrese su neposredni operand iz instrukcije skoka i[25:0] Najniži biti [1:0] se postavljaju na vrednost 00 (pristup reči) 23

24 Detaljna blok šema MIPS-1T procesora 4 PC+4 i[25:0] 28 <<2 PC+4[31:28] adresa skoka[31:0] << s 1 Mux1 1 0 s 4 Mux4 + PC Instrukcija [31:0] Adresa Programska memorija i[15:11] i[20:16] i[25:21] Mux5 1 0 s 5 Ulaz wr rd2 rd1 Izlaz1 Registri Izlaz2 RegWrite 1 0 s 3 Mux3 Mux2 0 1 s 2 alk ALJ Zero Adresa Memorija podataka Podaci Ulaz MemWrite Izlaz UJ i[31:26] i[15:0] Proširivač 16/32 bita MemRead ALUop s2 - s5 i[5:0] ALJ UJ ALJ kontrola Branch MemRead, MemWrite RegWrite Instrukcija beq - proširivač odstojanja i pomerač, Zero bit Instrukcija j - pomerač i MUX4 MUX 5 - zbog adresiranja odredišnog registra, koji se u instrukcijama I-tipa određuje poljem rt, a ne poljem rd 24

25 Zavisnost ALJ upravljačkih signala Logička šema upravljačke jedinice ALJ Ulazi Izlazi Mnemonik Tip ALJ operacija kop(5:0) ALUop(1:0) funkcija(5:0) alk(2:0) lw I saberi sw I saberi beq I oduzmi add R saberi sub R oduzmi and R logičko I or R logičko ILI slt R test(a < B) j J ALUop:0 ALUop[1:0] ALUop:1 f:3 alk:2 f:2 alk:1 alk[2:0] f[5:0] f:1 f:0 alk:0 25

26 Kombinaciona tabela upravljačke jedinice MIPS-1T 26

27 PLA Upravljačka jedinica MIPS-1T kop:5 kop:4 kop:3 kop:2 kop:1 kop:0 R-tip lw sw beq j s5 s4 s3 s2 RegWrite MemRead MemWrite Branch ALUop:1 ALUop:2 27

28 Komentar MIPS-1T Ovako projektovan procesor, bez značajnijeg povećanja kompleksnosti, može obuhvatiti kompletan repertoar instrukcija MIPS arhitekture. Ipak, ovakvo rešenje, iako korektno, nije prihvatljivo za moderne procesore. Osnovni razlog je neefikasnost u izvršenju instrukcija, jer vreme izvršavanja svih instrukcija zavisi od najduže putanje u strukturi procesora (u ovom slučaju lw). To vreme ograničava i vremenski period takta MIPS-1T procesora. Proučićemo dva standardna rešenja ovog problema: Izvršenje instrukcija u više taktova Protočna organizacija procesora 28

29 MIPS procesor sa izvršenjem instrukcije u više taktova 29

30 Osnovna blok šema MIPS-MT procesora PC PCLoad MemWrite Adresa Memorija Podaci MemRead IR IRWrite Izlaz MRP Ulaz wr rd2 rd1 Izlaz1 Registri Izlaz2 RegWrite A B alk ALJ Zero C Prednosti: promenljivo trajanje izvršenja instrukcije i mogućnost deljenja funkcionalnih jedinica Za PC više nije neophodan poseban sabirač Omogućeno je uvođenje jedinstvene memorije Zbog korišćenja rezultata izvršenja iz prethodnog takta, uvode se dodatni registri IR, MRP, i ALJ registri ulazni A i B, i izlazni registar C. Sem IR, svi oni su privremeni jer menjaju sadržaj iz takta u takt 30

31 Koraci tokom izvršenja instrukcije Korak 1: Prihvat instrukcije Korak 2: Dekodiranje instrukcije i čitanje registara Korak 3: Izvršenje, izračunavanje adrese ili završetak grananja/skoka Korak 4: Pristup memoriji ili završetak instrukcije R-tipa Korak 5: Završetak čitanja memorije sext označava proširenje znaka (sign-extension) do 32-bitne vrednosti 31

32 Funkcionalna šema MIPS-MT procesora PC[31:28] Mux6 PC Mux1 0 1 s 1 kop[5:0] Podaci Memorija Adresa MemW MemR UJ s 2 - s 4 S 5, S 6 IR i[31:26] i[25:21] i[20:16] i[15:0] IRWrite MRP i[15:11] i[15:0] Mux2 i[25:0] 0 1 s s 3 Mux3 rd1 rd2 wr Ulaz Izlaz1 Registri Proširivač 16/32 bita Izlaz2 RegWrite 32 A B << Mux4 0 1 s S 5 Mux5 <<2 28 alk ALJ Zero 32 C S 6 RegWrite ALUop i[5:0] ALJ UJ ALJ kontrola PCWrite Branch 32

33 Komentar šeme MIPS-MT Mux1 - izbor adrese kojom se pristupa memoriji Radi čitanja instrukcije (izvor PC) Radi podatka za čitanje/upis (izvor registar C) Mux2 - adresiranje odredišnog registra u instrukcijama I-tipa Mux3 - bira izvor podatka za upis u registar - MRP ili C Mux4 - izabira kao polazni registar A ili PC Mux5 - propušta jedan od ulaza: B, vrednost 4, znakom prošireno odstojanje, ili isto pomereno za dva bita ulevo Mux6 - bira izvor sledećeg sadržaja PC: direktno iz ALJ (PC + 4), adresa grananja iz ALJ, ili adresa skoka Upravljanje ALJ jedinicom se radi na isti način kao i u prethodnom primeru Kombinaciona mreža upravljačkih signala za upis u PC obezbeđuje: uslovni upis (signali Branch i Zero) u slučaju instrukcije uslovnog grananja bezuslovni upis (signal PCWrite) u slučajevima prelaza na sledeću instrukciju i instrukcije skoka 33

34 Upravljački signali MIPS-MT procesora 34

35 Konačni automat stanja za MIPS-MT Start S0: Prihvat instrukcije MemRead s4=0,s5=01 ALUop=00 IRWrite, PCWrite S6=00 S1: Dekodiranje instrukcije i čitanje registara s4=0 S5=11 ALUop=00 S2: Računanje memorijske adrese s4=1 S5=10 ALUop=00 lw, sw S6: Izvršenje s4=1 S5=00 ALUop=10 R-tip s4=1 S5=00 ALUop=10 Branch S6=01 beq j PCWrite S6=10 S9: Skok S3: Čitanje lw sw S5: Upis S8: Grananje S4: Upis u registar MemRead s1=1 s2=0 RegWrite s3 MemWrite s1=1 s2=1 RegWrite s3=0 S7: Upis rezultata R-instrukcije u registar 35

36 Blok šema UJ zasnovane na konačnom automatu stanja s1, s2, s3, s4 S5,S6 IR[kop] Registar stanja St3 St2 St1 St0 Kombinaciona logika: ROM, PLA RegWrite IRWrite, PCWrite MemW, MemR Branch ALUop nst3 nst2 nst1 nst0 Za skup instrukcija posmatran u primeru, imajući u vidu mali broj potrebnih stanja, ovakvo rešenje upravljačke jedinice je optimalno 36

37 Mikroprogramska UJ procesora MIPS-MT Branch S6 1 PCWrite s1 MemR MemW s3 IRWrite + 17 Uravljacka memorija (Memorija mikrokoda) ROM, PLA Registar stanja Mux ALUop S5 s4 RegWrite s2 AdrCtrl Registar stanja - mikroprogramski brojač MUX - 4 izvora sledeće adrese Početna adresa 0 novi ciklus Adresa iz ROM1/ROM2 Konverzija KOP u početnu adresu mikroprograma Sledeća adresa mikroprograma Adresni ROM2 Adresni ROM1 IR[kop] 37

38 Mikroprogram UJ-e MIPS-MT procesora Adr Labela ALJ kontrola Prvi ALJ operand Drugi ALJ operand Kontrola registara Kontrola memorije Upis u PC Sledeća adresa 0 Fetch saberi PC 4 čitajpc ALJ Sledeća 1 saberi PC sext<<2 čitaj arom1 2 Mem1 saberi A sext arom2 3 LW čitajc Sledeća 4 Upiši MRP Fetch 5 SW upišic Fetch 6 TipR F-kod A B Sledeća 7 Upiši C Fetch 8 Beq oduzmi A B uslovno Fetch 9 Jump skok Fetch Mikroprogram je organizovan na osnovu prethodne tabele, koja je ovde ponovljena radi lakšeg razumevanja 38

39 Binarni sadržaj ROM memorija μprog. UJ Adresni ROM1 Adresa (kop) Sadržaj Instrukcija R-tip j beq lw sw Adresni ROM2 Adresa (kop) Sadržaj Instrukcija lw sw Mikroprogramski ROM Adresa Biti 17-2 Biti Glavni ROM podeljen je na dva polja biti 17-2 upravljački signali ka spoljnim funkcionalnim jedinicama biti 1-0 adresni kontrolni signali Veličina glavnog ROM-a je 10x18=180bita Veličina adresnih memorija 2x2 6 x4=512bita. 39

40 MIPS-MT sa izuzecima Vrsta događaja Izvor MIPS Zahtev U/I uređaja spolja prekid Poziv operativnog sistema iz korisničkog programa iznutra izuzetak Aritmetičko prekoračenje iznutra izuzetak Korišćenje nedefinisane instrukcije iznutra izuzetak Otkaz elemenata fizičke arhitekure iznutra i spolja izuzetak i prekid MIPS-MT može generisati 2 izuzetka: korišćenje nedefinisane instrukcije aritmetičko prekoračenje Registar EPC (Exception Program Counter) čuva adresu instrukcije koja je izazvala izuzetak Upravljanje procesorom se prebacuje operativnom sistemu, posredstvom fiksne adrese Registar Cause pamti uzrok izuzetka, gde je najniži bit 0 - izvršenje nedefinisane instrukcija 1 - aritmetičko prekoračenje 40

41 PC Mux1 0 1 s 1 kop[5:0] Overflow MIPS-MT sa podrškom za 2 tipa izuzetka Podaci Memorija Adresa MemW UJ MemR s 2 - s 4 S 5, S 6 RegWrite ALUop IR i[31:26] i[25:21] i[20:16] i[15:0] IRWrite MRP i[15:11] i[15:0] i[5:0] Mux2 i[25:0] 0 1 s s 3 Mux3 ALJ UJ rd1 rd2 wr Ulaz Izlaz1 Registri Proširivač 16/32 bita Izlaz2 RegWrite 32 ALJ kontrola A B <<2 4 PC[31:28] 26 Mux4 0 1 s S 5 Mux5 <<2 alk Zero 28 ALJ C S6 EPC EPCWrite Cause Mux6 CauseWrite Mux7 0 1 s 7 PCWrite Branch EPCWrite, CauseWrite, s7 Mux7 postavlja/briše najniži bit Cause registra Mux6 puni adresu obrade izuzetka u PC Pošto se PC uvećava po učitavanju instrukcije, potrebno ga je umanjiti za 4 pre upisa u EPC registar, i zato je izlaz iz ALJ povezan na ulaz EPC 41

42 Konačni automat stanja UJ za MIPS-MT procesor sa izuzecima Start S0: Prihvat instrukcije MemRead s4=0,s5=01 ALUop=00 IRWrite, PCWrite S6=00 S1: Dekodiranje instrukcije i čitanje registara s4=0 S5=11 ALUop=00 Nepoznat KOP S2: Računanje memorijske adrese s4=1 S5=10 ALUop=00 lw, sw S6: Izvršenje s4=1 S5=00 ALUop=10 R-tip s4=1 S5=00 ALUop=10 Branch S6=01 beq j PCWrite S6=10 S9: Skok S3: Čitanje lw sw S5: Upis S7: Upis rezultata S8: Grananje S4: Upis u registar MemRead s1=1 MemWrite s1=1 s2=1 RegWrite s3=0 Overflow s7=1, s4=0 S5=01 ALUop=01 CauseWrite EPCWrite PCWrite S6=11 s7=0, s4=0 S5=01 ALUop=01 CauseWrite EPCWrite PCWrite S6=11 s2=0 RegWrite s3 S10: Prekoračenje S11: Nepoznata instrukcija 42

43 MIPS sa protočnom obradom 43

44 Polazne postavke s 1 Početna struktura je kao i za MIPS-1T Instrukcija se izvodi kroz pet segmenata PC 4 + Adresa MUX Instrukcija Programska memorija + Ulaz wr rd1 rd2 Izlaz1 Registri Izlaz2 RegWrite s 3 MUX s 2 MUX alk ALJ Adresa Memorija podataka Podaci Ulaz MemWrite Izlaz MemRead 44

45 Segmentiranje instrukcija iz posmatranog skupa Instrukcija IF ID EX MEM WB Trajanje lw 8 ns sw - 7 ns R-tip - 6 ns beq, j ns Teorijsko ubrzanje obrade jednako je broju segmenata Ono je nešto manje usled nejednakog trajanja pojedinih instrukcija Realno ubrzanje je još manje, u zavisnosti od pojave rizika podataka ili kontrole Realni programi izvršavaju veliki broj instrukcija, zato i statistika pojave određenih instrukcija može uticati na ubrzanje protočne strukture 45

46 Logička podela procesora na 5 segmenata 4 + Proširivač 16/32 bita <<2 + Instrukcija wr Izlaz1 Mux PC Adresa Programska memorija Registri rd1 rd2 Izlaz2 Ulaz Mux ALJ Adresa Ulaz Memorija podataka Izlaz Mux IF ID EX MEM WB Segmenati se izvode sleva na desno Sem povratnih (plavo obojenih) putanja kod ažuriranja PC i upisa u registar 46

47 Protočna struktura MIPS-PL procesora 4 + Proširivač 16/32 bita <<2 + rd1 Mux PC Adresa Instrukcija Programska memorija rd2 wr Ulaz Izlaz1 Registri Izlaz2 Mux ALJ Adresa Ulaz Memorija podataka Izlaz Mux IF/ID ID/EX EX/MEM MEM/WB Izolacioni registri, sinhrono rukovanje: zapis na prednju a čitanje na zadnju ivicu takta PC je protočni registar za ulaz u prvi segment Povratne veze u poslednja dva segmenta označavaju da u njihovom izvršenju učestvuju i elementi fizički prisutni u drugim segmentima Obezbeđeno je izbegavanje strukturnih rizika, odnosno situacija kada bi se iz različitih segmenata pokušala istovremena upotreba istih fizičkih elemenata Registarsko polje se iz segmenta ID samo čita, a iz WB se vrši upis Sinhronim rukovanjem registarskim poljem postiže se i vremenska razdvojenost predmetnih mikrooperacija 47

48 Upravljačka jedinica MIPS- PL Mogu se u celini preuzeti upravljački signali i upravljačka jedinica MIPS-1T procesora Jedini je problem vremenska distribucija upravljačkih signala do odredišnih komponenti, smeštenih u različitim segmentima Najjednostavnije rešenje za to je proširenje izolacionih registara Slično adresi odredišnog registra, oni mogu preneti i upravljačke signale od segmenta ID (kad se vrši njihovo postavljanje) do odredišnog segmenta i trenutka njihove upotrebe 48

49 Blok šema MIPS-PL UJ W B kop M W B E X ALUop, s2 M s 4 W B 4 + Proš. 16/32 <<2 + Branch 0 1 s s 4 PC Adresa Instrukcija Programska memorija rd1 rd2 wr Ulaz RegWrite Izlaz1 Registri Izlaz2 s Zero ALJ Adresa Ulaz MemRead MemWrite Memorija podataka Izlaz 0 1 s 3 i[15:11] i[20:16] 1 0 s 5 IF/ID ID/EX EX/MEM MEM/WB 49

50 Rizik podataka primer_zavisnosti: sub $2, $1, $3 # register $2 prima novu vrednost and $12, $2, $5 # prvi operand ($2) zavisi od sub or $13, $6, $2 # drugi operand ($2) zavisi od sub add $14, $2, $2 # prvi ($2) i drugi operand ($2) zavise od sub sw $15, 100($2) # bazna adresa zavisi od sub Vreme takt Registar $ / sub $2, $1, $3 IM Reg ALJ MP Reg and $12, $2, $5 IM Reg ALJ MP Reg or $13, $6, $2 IM Reg ALJ MP Reg add $14, $2, $2 IM Reg ALJ MP Reg sw $15, 100($2) IM Reg ALJ MP Reg 50

51 Prosleđivanje podatka Data forwarding Instrukcija iz EX segmenta traži registar čija će vrednost biti zapisana tek u WB segmentu Tražena vrednost se prosleđuje sa izlaza ALJ ili nekog od sledećih protočnih registara Tip Uslov 1.a EX/MEM.RegRd = ID/EX. RegRs 1.b EX/MEM.RegRd = ID/EX. RegRt 2.a MEM/WB.RegRd = ID/EX. RegRs 2.b MEM/WB.RegRd = ID/EX. RegRt Rizik podataka se može prosleđivanjem preduprediti, ako je neki od polaznih registara (Rs, Rt) nove instrukcije jednak odredišnom registru (Rd) još nezavršene instrukcije. Tada se ispravna vrednost registra može naći u jednom od dva zadnja razdvojna registra (EX/MEM ili MEM/WB). 51

52 Jedinice za prosleđivanje (forwarding unit) ID/EX EX/MEM MEM/WB Mux Zbog jednostavnosti, samo za R-instrukcije Zadatak jedinice: Detekcija rizika Transfer operanda iz jednog od protočnih registara na ulaz ALJ Deo je EX segmenta Zato je do njega potrebno propustiti adresu operand-registra iz segmenta ID, preko ID/EX Registri IF/ID.RegRs IF/ID.RegRt IF/ID.RegRd Mux ForwB ALJ ForwA Mux Prosleđivač Memorija podataka EX/MEM.RegRd MEM/WB.RegRd Mux MUX kontrola Izvor Objašnjenje Forward = 00 ID/EX Operand dolazi iz registarskog polja Forward = 10 EX/MEM Operand je rezultat prethodne instrukcije Forward = 01 MEM/WB Operand je rezultat instrukcije druge unazad 52

53 Pseudo-kod za ispitivanje uslova rizika i generisanje upravljačkih signala za prosleđivanje 1. EX rizik: if ( EX/MEM.RegWrite and (EX/MEM.RegRd 0) and (EX/MEM.RegRd = ID/EX.RegRs) ) ForwardA = 10 if ( EX/MEM.RegWrite and (EX/MEM.RegRd 0) and (EX/MEM.RegRd = ID/EX.RegRt) ) ForwardB = MEM rizik: if ( MEM/WB.RegWrite and (MEM/WB RegRd 0) and (MEM/WB.RegRd = ID/EX.RegRs) ) ForwardA = 01 if ( MEM/WB.RegWrite and (MEM/WB RegRd 0) and (MEM/WB.RegRd = ID/EX.RegRt) ) ForwardB = 01 53

54 Dodatna mogućnost pojave rizika podataka add $1, $1, $2 add $1, $1, $3 add $1, $1, $4 Između Rezultata instrukcije u WB segmentu, Rezultata instrukcije u MEM segmentu i... Rs operanda instrukcije u EX segmentu Podatak se prosleđuje iz MEM segmenta, jer je tu najsvežiji Modifikacija uslova if ( MEM/WB.RegWrite and (MEM/WB RegRd 0) and (EX/MEM.RegRd ID/EX.RegRs) and (MEM/WB.RegRd = ID/EX.RegRs) ) ForwardA = 01 if ( MEM/WB.RegWrite and (MEM/WB RegRd 0) and (EX/MEM.RegRd ID/EX.RegRt) and (MEM/WB.RegRd = ID/EX.RegRt) ) ForwardB = 01 54

55 Rizik podataka i zaustavljanje Vreme takt lw $2, 20($1) IM Reg ALJ MP Reg and $4, $2, $5 IM Reg ALJ MP Reg or $8, $2, $6 IM Reg ALJ MP Reg add $9, $4, $2 IM Reg ALJ MP Reg slt $1, $6, $7 IM Reg ALJ MP Reg Zadržavanje (stall) je neophodno kada Traženog podatka nema u protočnoj strukturi Jedinica za detekciju rizika, radi u ID segmentu Da li je reč o instrukciji čitanja (lw), koja je trenutno u EX segmentu Da li njena Rt odredišna adresa odgovara bilo kom polaznom registru sledeće instrukcije, koja je trenutno u segmentu ID. if ( ID/EX.MemRead and ((ID/EX.RegRt = IF/ID.RegRs) or (ID/EX.RegRt = IF/ID.RegRt)) ) zadrži_protočnu_strukturu 55

56 Stall ciklus Vreme takt lw $2, 20($1) IM Reg ALJ MP Reg and postaje nop IM Reg ALJ MP Reg and $4, $2, $5 IM Reg ALJ MP Reg or $8, $2, $6 IM Reg ALJ MP Reg add $9, $4, $2 IM Reg ALJ MP Reg slt $1, $6, $7 IM Reg ALJ MP Reg IF i ID segmenti se zaustavljaju tako što se sprečava promena PC i IF/ID registara, postavljanjem kontrolnog signala za unos (Write) na vrednost 0 Preostala tri segmenta moraju izvršavati NOP instrukciju, koja nema nikakav efekat. To se radi tako što se u ID/EX protočnom registru postavljaju na nulu svi upravljački signali (polja EX, MEM i WB), koji se kasnije prenose do kraja protočne strukture. Ovakva kombinacija onemogućava bilo kakve efekte izvršenja, jer vrednost nula sprečava upis u registarsko polje ili memoriju podataka. 56

57 57 MIPS-PL sa prosleđivanjem i detekcijom rizika podataka IF/ID Programska memorija PC Registri ALJ Memorija podataka Mux ID/EX EX/MEM MEM/WB IF/ID.RegRd IF/ID.RegRt IF/ID.RegRs Mux Mux Mux Prosleđivač EX/MEM.RegRd ForwA ForwB MEM/WB.RegRd UJ E X M W B M W B W B kop Detektor rizika Mux 0 ID/EX.MemRead Ulaz rd1 rd2 wr PCWrite IF/IDWrite ID/EX.RegRt Rs,Rt

58 Rizici grananja Adr Vreme takt beq $1, $3, 28 IM Reg ALJ MP Reg 44 and $12, $2, $5 IM Reg ALJ MP Reg 48 or $13, $6, $2 IM Reg ALJ MP Reg 52 add $14, $2, $2 IM Reg ALJ MP Reg 72 lw $4, 50($7) IM Reg ALJ MP Reg Iako se pojavljuje ređe od rizika podataka, rešenja su manje efikasna Kombinuju se dva pristupa Pražnjenje protočne strukture u slučaju grananja Smanjenje "cene" izvršenog skoka 58

59 Pražnjenje protočne strukture Pretpostavlja se do grananja neće doći Sledeća instrukcija se prihvata i dekodira Ako je uslov grananja ispunjen, ta instrukcija se mora odbaciti Brisanjem upravljačkih signala u sva tri protočna registra Sva tri segmenta (IF, ID i EX) se tako "prazne" (brišu) od instrukcija (flush instruction). 59

60 Smanjenje "cene" izvršenog skoka Pomeranjem izvršenja grananja ranije u protočnoj strukturi, manje segmenata će biti ispražnjeno Izvršenje grananja podrazumeva Izračunavanje adrese grananja i Proveru uslova grananja To se može izvršiti u ID segmentu (umesto u EX), ako se omogući sabiranje PC i neposrednog operanda iz IF/ID protočnog registra Provera uslova grananja je mnogo teža za realizaciju Upoređenje dva registra iz ID segmenta ($1:$3) nije problem Problem je potencijalna potreba za prosleđivanjem podataka u ID segment, te se postojeća jedinica za prosleđivanje mora modifikovati Takođe, operandi beq instrukcije se porede u ID segmentu, a mogu biti generisani kasnije u vremenu, te je moguć rizik podataka i zaustavljanje protočne strukture Unapređenje ipak, jer se u slučaju izvršenja grananja, odbacuje samo instrukcija koja je trenutno u fazi dobavljanja (u IF segmentu). 60

61 Konačan izgled MIPS-PL Detektor rizika ID/EX.MemRead ID/EX.RegRt Rs,Rt W B EX/MEM 4 + kop UJ + rd1 rd2 Registri wr Ulaz 0 Mux = M E X Mux Mux ALJ W B M Memorija podataka MEM/WB W B Mux Mux PC Programska memorija <<2 Proš. 16/32 IF.Flush IF/ID IF/ID.RegRs IF/ID.RegRt IF/ID.RegRd ID/EX Mux Prosleđivač EX/MEM.RegRd MEM/WB.RegRd Prikazani su novi elementi Signal IF.Flush koji briše instrukcijsko polje IF/ID registra Deo za proračun adrese grananja i poređenje registara Nije prikazana izmena jedinice za prosleđivanje 61

62 Izvršenje sekvence iz primera Vreme takt beq $1, $3, 28 IM Reg ALJ MP Reg 44 and $12, $2, $5 IM Reg ALJ MP Reg 72 lw $4, 50($7) IM Reg ALJ MP Reg U drugoj periodi takta određuje se da grananja mora biti, pa se: PC puni adresom grananja (dec 72) Polje instrukcije u IF/ID registru se postavlja na 0, tj. tekuća instrukcija pretvara u nop U taktu 3, grananje je izvršeno, a izvršenje nop zadržava protočnu obradu za jedan takt 62

63 Rukovanje izuzecima... 0x40 sub $11, $2, $4 0x44 and $12, $2, $5 0x48 or $13, $2, $6 0x4C add $1, $2, $1 0x50 slt $15, $6, $7 0x54 lw $16, 50($7)... obrada_izuzetka: 0x sw $25, 1000($0) 0x sw $26, 1004($0)... Dodatan oblik rizika kontrole je moguć kod pojave izuzetaka Pretpostavimo da add generiše aritmetičko prekoračenje Ono se detektuje u EX segmentu tokom šeste periode takta Reakcija na izuzetak pretpostavlja Prenos upravljanja rutini za obradu izuzetka, i Sprečavanje upisa netačnog rezultata u registar ili memoriju Pre punjenja adrese rutine za obradu izuzetka, mora se Isprazniti protočna struktura od instrukcija koje slede iza add, i Onemogućiti prenos lošeg rezultata do segmenta WB Prethodne instrukcije (and i or) treba pustiti da se normalno izvrše To se postiže postavljanjem Flush upravljačkih signala na 0 63

64 MIPS-PL struktura koja podržava izuzetke PCWrite 4 + IF/IDWrite Rs,Rt Detektor rizika ID.Flush UJ + rd1 rd2 wr Ulaz 0 = W B M E X 0 Mux Mux EX.Flush 0 Cause EPC ALJ EX/MEM W B M Memorija podataka MEM/WB W B Mux Mux PC Programska memorija IF.Flush IF/ID <<2 Proš. 16/32 IF/ID.RegRs IF/ID.RegRt IF/ID.RegRd ID/EX ForwA ForwB Mux Prosleđivač EX/MEM.RegRd MEM/WB.RegRd ID.Flush zajedno sa starim IF.Flush zaustavlja protočnu strukturu EX.Flush obavlja isto u EX i sprečava upis rezultata u WB segmentu PC se puni adresom potprograma za obradu izuzetka (0x ) EPC čuva adresu PC + 4; Cause registar čuva uzrok izuzetka. 64

65 Upravljanje protočnom strukturom Po uočavanju izuzetka, u istom taktu, čuva se adresa iz programskog brojača PC i aktiviraju svi Flush signali. U sledećem taktu ulazi se u stall ciklus, i u njemu se ostaje do pražnjenja poslednjeg segmenta protočne strukture. 65

66 Hvala na pažnji, bila nam je potrebna! 66

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

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Goran Stančić SIGNALI I SISTEMI Zbirka zadataka NIŠ, 014. Sadržaj 1 Konvolucija Literatura 11 Indeks pojmova 11 3 4 Sadržaj 1 Konvolucija Zadatak 1. Odrediti konvoluciju

Διαβάστε περισσότερα

Σχεδίαση μονάδας ελέγχου επεξεργαστή

Σχεδίαση μονάδας ελέγχου επεξεργαστή Σχεδίαση μονάδας ελέγχου επεξεργαστή Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 29-2 Νεκτάριος Κοζύρης nkoziris@cslab.ece.ntua.gr http://www.cslab.ece.ntua.gr/courses/comparch/ Datapath ενός

Διαβάστε περισσότερα

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

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)

Διαβάστε περισσότερα

Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining)

Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining) Κεφάλαιο 6 Βελτίωση Απόδοσης με Διασωλήνωση (Enhancing Performance with Pipelining) 1 Διασωλήνωση (Pipelining) Διασωληνώση: επικαλυπτόμενη εκτέλεση πολλαπλών εντολών σε ένα κύκλο του ρολογιού, όπως σε

Διαβάστε περισσότερα

3.1 Granična vrednost funkcije u tački

3.1 Granična vrednost funkcije u tački 3 Granična vrednost i neprekidnost funkcija 2 3 Granična vrednost i neprekidnost funkcija 3. Granična vrednost funkcije u tački Neka je funkcija f(x) definisana u tačkama x za koje je 0 < x x 0 < r, ili

Διαβάστε περισσότερα

numeričkih deskriptivnih mera.

numeričkih deskriptivnih mera. DESKRIPTIVNA STATISTIKA Numeričku seriju podataka opisujemo pomoću Numeričku seriju podataka opisujemo pomoću numeričkih deskriptivnih mera. Pokazatelji centralne tendencije Aritmetička sredina, Medijana,

Διαβάστε περισσότερα

Τέτοιες λειτουργίες γίνονται διαμέσου του

Τέτοιες λειτουργίες γίνονται διαμέσου του Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου

Διαβάστε περισσότερα

Θέµατα Φεβρουαρίου

Θέµατα Φεβρουαρίου Θέµατα Φεβρουαρίου 2-2 cslab@ntua 2- Θέµα ο (3%): Έστω η παρακάτω ακολουθία εντολών που χρησιµοποιείται για την αντιγραφ από µια θέση µνµης σε µια άλλη (memory-to-memory copy): lw $2, ($) sw $2, 2($) i)

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Καθυστερήσεις και Εκκενώσεις Εντολών

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls)

Διάλεξη 12 Καθυστερήσεις (Stalls) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 12 Καθυστερήσεις (Stalls) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ 1 Καθυστερήσεις και Εκκενώσεις Εντολών Οι κίνδυνοι δεδομένων (data

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

Elementi spektralne teorije matrica

Elementi spektralne teorije matrica Elementi spektralne teorije matrica Neka je X konačno dimenzionalan vektorski prostor nad poljem K i neka je A : X X linearni operator. Definicija. Skalar λ K i nenula vektor u X se nazivaju sopstvena

Διαβάστε περισσότερα

Najjednostavnija metoda upravljanja slijedom instrukcija:

Najjednostavnija metoda upravljanja slijedom instrukcija: 4. Upravljačka jedinica Funkcija upravljačke jedinice Prijenos upravljanja između programa Rekurzivni programi LIFO ili stožna struktura Uporaba stoga AIOR, S. Ribarić 1 Funkcije upravljačke jedinice:

Διαβάστε περισσότερα

LANGUAGE OF THE MACHINE. TEI Κρήτης, Τμ. ΕΠΠ, Αρχιτεκτονική Υπολογιστών. Οργάνωση Υπολογιστή. Τυπική οργάνωση υπολογιστή

LANGUAGE OF THE MACHINE. TEI Κρήτης, Τμ. ΕΠΠ, Αρχιτεκτονική Υπολογιστών. Οργάνωση Υπολογιστή. Τυπική οργάνωση υπολογιστή INSTRUCTIONS LANGUAGE OF THE MACHINE Οργάνωση Υπολογιστή Τυπική οργάνωση υπολογιστή 1 Εκτέλεση προγραμμάτων σε υπολογιστή INSTRUCTION SET Οι λέξεις στη γλώσσα μηχανής ονομάζονται εντολές (instructions)

Διαβάστε περισσότερα

Protočnost 1. PROTOČNOST. 1.1 Osnovne tehnike za eksploataciju paralelizma

Protočnost 1. PROTOČNOST. 1.1 Osnovne tehnike za eksploataciju paralelizma SADRŽAJ 1. PROTOČNOST...2 1.1 Osnovne tehnike za eksploataciju paralelizma...2 1.2 Protočna obrada na nivou instrukcije osnovni koncepti...3 1.3 Performansne mere... 1.4 Tehnika projektovanja protočnog

Διαβάστε περισσότερα

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4.

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4. Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή Time 6 PM 7 8 9 10 11 12 1 2 AM 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Task order A B C D Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Trigonometrijske jednačine i nejednačine. Zadaci koji se rade bez upotrebe trigonometrijskih formula. 00. FF cos x sin x

Διαβάστε περισσότερα

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović Novi Sad April 17, 2018 1 / 22 Teorija grafova April 17, 2018 2 / 22 Definicija Graf je ure dena trojka G = (V, G, ψ), gde je (i) V konačan skup čvorova,

Διαβάστε περισσότερα

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

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 Matrice - osnovni pojmovi (Matrice i determinante) 2 / 15 (Matrice i determinante) 2 / 15 Matrice - osnovni pojmovi Matrica reda

Διαβάστε περισσότερα

Διάλεξη 11 Προώθηση (Forwarding)

Διάλεξη 11 Προώθηση (Forwarding) ΗΥ 3 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη Προώθηση (Forwarding) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων (HY3) Η μέχρι τώρα μικρο-αρχιτεκτονική του MIPS ID/EX PCSrc Control WB

Διαβάστε περισσότερα

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

MIKRORAČUNAR. Sl.1. - Sklop mikroračunara kao crna kutija MIKRORAČUNAR Mikroračunar je sastavljen od četiri osnovna bloka (Sl.) - to zovemo hardver: -mikroprocesora -memorije -ulaznog međusklopa -izlaznog međusklopa Programska podrška (to zovemo softver) je vezivna

Διαβάστε περισσότερα

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 13 Διακλαδώσεις Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Η μέχρι τώρα μικρο-αρχιτεκτονική (Eντολές Διακλάδωσης) Η μικρο-αρχιτεκτονική

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

Komponente digitalnih sistema. Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka

Komponente digitalnih sistema. Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka Komponente digitalnih sistema Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka Standardne digitalne komponente (moduli) Obavljaju funkcije za koje

Διαβάστε περισσότερα

Pipelined Datapath, Hazards and Forwarding

Pipelined Datapath, Hazards and Forwarding Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Pipelined Datapath, Hazards and Forwarding Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Elementarna memorijska kola

Elementarna memorijska kola Elementarna memorijska kola gmemorijska kola mogu da zapamte prethodno stanje gflip-flop je logička mreža a koja može e da zapamti samo jedan bit podatka (jednu binarnu cifru) flip - flop je kolo sa dva

Διαβάστε περισσότερα

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 2 Εντολές : Η γλώσσα του υπολογιστή (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση:

Διαβάστε περισσότερα

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath O επεξεργαστής: Η δίοδος δεδοµένων (path) και η µονάδα ελέγχου (control) Σχεδίαση path 4 κατηγορίες εντολών: Αριθµητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη µνήµη (lw, sw) I

Διαβάστε περισσότερα

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

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012 Iskazna logika 3 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Deduktivni sistemi 1 Definicija Deduktivni sistem (ili formalna teorija)

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Time Task order A B C D 6 PM 7 8 9 10 11 12 1 2 AM Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 9 Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Ti είναι Αρχιτεκτονική και τι Μικροαρχιτεκτονική

Διαβάστε περισσότερα

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 9 Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ 1 Ti είναι Αρχιτεκτονική και τι Μικροαρχιτεκτονική

Διαβάστε περισσότερα

ORGANIZACIJA PROCESORA

ORGANIZACIJA PROCESORA JOVAN ðorðević ORGANIZACIJA PROCESORA Beograd 2006. SADRŽAJ SADRŽAJ...I 1 PROCESOR... 3 1.1 ARHITEKTURA I ORGANIZACIJA PROCESORA... 3 1.2 OPERACIONA JEDINICA... 11 1.2.1 OPERACIONA JEDINICA SA DIREKTNIM

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti). PRAVA Prava je kao i ravan osnovni geometrijski ojam i ne definiše se. Prava je u rostoru određena jednom svojom tačkom i vektorom aralelnim sa tom ravom ( vektor aralelnosti). M ( x, y, z ) 3 Posmatrajmo

Διαβάστε περισσότερα

Κεφάλαιο 4. Ο επεξεργαστής

Κεφάλαιο 4. Ο επεξεργαστής Κεφάλαιο 4 Ο επεξεργαστής Εισαγωγή Παράγοντες απόδοσης της CPU Πλήθος εντολών Καθορίζεται από την αρχιτεκτονική συνόλου εντολών και το μεταγλωττιστή CPI και Χρόνος κύκλου Καθορίζεται από το υλικό της CPU

Διαβάστε περισσότερα

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

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) Izračunavanje pokazatelja načina rada OTVORENOG RM RASPOLOŽIVO RADNO

Διαβάστε περισσότερα

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων

Διαβάστε περισσότερα

Εντολές του MIPS (2)

Εντολές του MIPS (2) ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3

Διαβάστε περισσότερα

Teorijske osnove informatike 1

Teorijske osnove informatike 1 Teorijske osnove informatike 1 9. oktobar 2014. () Teorijske osnove informatike 1 9. oktobar 2014. 1 / 17 Funkcije Veze me du skupovima uspostavljamo skupovima koje nazivamo funkcijama. Neformalno, funkcija

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo) Najpre da se podsetimo tablice i osnovnih pravila:. C`=0. `=. ( )`= 4. ( n )`=n n-. (a )`=a lna 6. (e )`=e 7. (log a )`= 8. (ln)`= ` ln a (>0) 9. = ( 0) 0. `= (>0) (ovde je >0 i a

Διαβάστε περισσότερα

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

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo IZVODI ZADACI ( IV deo) LOGARITAMSKI IZVOD Logariamskim izvodom funkcije f(), gde je >0 i, nazivamo izvod logarima e funkcije, o jes: (ln ) f ( ) f ( ) Primer. Nadji izvod funkcije Najpre ćemo logarimovai

Διαβάστε περισσότερα

Operacije s matricama

Operacije s matricama Linearna algebra I Operacije s matricama Korolar 3.1.5. Množenje matrica u vektorskom prostoru M n (F) ima sljedeća svojstva: (1) A(B + C) = AB + AC, A, B, C M n (F); (2) (A + B)C = AC + BC, A, B, C M

Διαβάστε περισσότερα

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Y Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3 = &A[0] = 0x0001080 &A[8]

Διαβάστε περισσότερα

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,

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, PARCIJALNI IZVODI I DIFERENCIJALI Sama definicija parcijalnog ivoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, naravno, naučiti onako kako vaš profesor ahteva. Mi ćemo probati

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές 5ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση ενός κύκλου

ΠΛΕ- 027 Μικροεπεξεργαστές 5ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση ενός κύκλου ΠΛΕ- 27 Μικροεπεξεργαστές 5ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση ενός κύκλου Αρης Ευθυμίου Δομή σύγχρονων υπολογιστών Κώδικας μηχανής Αρχιτεκτονικό συνόλο εντολών (InstrucDon Set Architecture ISA)

Διαβάστε περισσότερα

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri 1 1 Zadatak 1b Čisto savijanje - vezano dimenzionisanje Odrediti potrebnu površinu armature za presek poznatih dimenzija, pravougaonog

Διαβάστε περισσότερα

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Κεφάλαιο 4 Ο επεξεργαστής ιαφάνειες διδασκαλίας του πρωτότυπου βιβλίου µεταφρασµένες στα ελληνικά και εµπλουτισµένες (µετάφραση,

Διαβάστε περισσότερα

2 η Ενδιάμεση Εξέταση Λύσεις/Απαντήσεις

2 η Ενδιάμεση Εξέταση Λύσεις/Απαντήσεις ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMMY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 2 η Ενδιάμεση Εξέταση Λύσεις/Απαντήσεις Άσκηση 1: Διασωλήνωση

Διαβάστε περισσότερα

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Κεφάλαιο 4 Ο επεξεργαστής ιαφάνειες διδασκαλίας του πρωτότυπου βιβλίου µεταφρασµένες στα ελληνικά και εµπλουτισµένες (µετάφραση,

Διαβάστε περισσότερα

STANDARDNA ARHITEKTURA MIKROPROCESORA

STANDARDNA ARHITEKTURA MIKROPROCESORA STANDARDNA ARHITEKTURA MIKROPROCESORA UVOD Svaki sastavni deo, a time i celi mikroprocesor, najbolje je opisan skupom registara i njihovom funkcijom, putevima između registara, nizom operacija koje se

Διαβάστε περισσότερα

Zavrxni ispit iz Matematiqke analize 1

Zavrxni ispit iz Matematiqke analize 1 Građevinski fakultet Univerziteta u Beogradu 3.2.2016. Zavrxni ispit iz Matematiqke analize 1 Prezime i ime: Broj indeksa: 1. Definisati Koxijev niz. Dati primer niza koji nije Koxijev. 2. Dat je red n=1

Διαβάστε περισσότερα

INTELIGENTNO UPRAVLJANJE

INTELIGENTNO UPRAVLJANJE INTELIGENTNO UPRAVLJANJE Fuzzy sistemi zaključivanja Vanr.prof. Dr. Lejla Banjanović-Mehmedović Mehmedović 1 Osnovni elementi fuzzy sistema zaključivanja Fazifikacija Baza znanja Baze podataka Baze pravila

Διαβάστε περισσότερα

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log = ( > 0, 0)!" # > 0 je najčešći uslov koji postavljamo a još je,, > 0 se zove numerus (aritmand), je osnova (baza). 0.. ( ) +... 7.. 8. Za prelazak na neku novu bazu c: 9. Ako je baza (osnova) 0 takvi se

Διαβάστε περισσότερα

SISTEMI NELINEARNIH JEDNAČINA

SISTEMI NELINEARNIH JEDNAČINA SISTEMI NELINEARNIH JEDNAČINA April, 2013 Razni zapisi sistema Skalarni oblik: Vektorski oblik: F = f 1 f n f 1 (x 1,, x n ) = 0 f n (x 1,, x n ) = 0, x = (1) F(x) = 0, (2) x 1 0, 0 = x n 0 Definicije

Διαβάστε περισσότερα

με έμφαση στο MIPS R2000

με έμφαση στο MIPS R2000 ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ - VHDL ΥΛΙΚΟ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ενότητα 3 Αρχιτεκτονικές Συνόλου Εντολών με έμφαση στο MIPS R2000 Καθηγητής Αντώνης Πασχάλης

Διαβάστε περισσότερα

PRIMJER 3. MATLAB filtdemo

PRIMJER 3. MATLAB filtdemo PRIMJER 3. MATLAB filtdemo Prijenosna funkcija (IIR) Hz () =, 6 +, 3 z +, 78 z +, 3 z +, 53 z +, 3 z +, 78 z +, 3 z +, 6 z, 95 z +, 74 z +, z +, 9 z +, 4 z +, 5 z +, 3 z +, 4 z 3 4 5 6 7 8 3 4 5 6 7 8

Διαβάστε περισσότερα

41. Jednačine koje se svode na kvadratne

41. Jednačine koje se svode na kvadratne . Jednačine koje se svode na kvadrane Simerične recipročne) jednačine Jednačine oblika a n b n c n... c b a nazivamo simerične jednačine, zbog simeričnosi koeficijenaa koeficijeni uz jednaki). k i n k

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. Δίπλωμα 4. αποθήκευση Σειριακή προσέγγιση για 4 φορτία = 8h 30 min κάθε «φάση» Pipelined προσέγγιση για 4 φορτία = 3.5h Το

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

ELEKTROTEHNIČKI ODJEL

ELEKTROTEHNIČKI ODJEL MATEMATIKA. Neka je S skup svih živućih državljana Republike Hrvatske..04., a f preslikavanje koje svakom elementu skupa S pridružuje njegov horoskopski znak (bez podznaka). a) Pokažite da je f funkcija,

Διαβάστε περισσότερα

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1 ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1 Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Σύνολο Εντολών Το ρεπερτόριο

Διαβάστε περισσότερα

Ispitivanje toka i skiciranje grafika funkcija

Ispitivanje toka i skiciranje grafika funkcija Ispitivanje toka i skiciranje grafika funkcija Za skiciranje grafika funkcije potrebno je ispitati svako od sledećih svojstava: Oblast definisanosti: D f = { R f R}. Parnost, neparnost, periodičnost. 3

Διαβάστε περισσότερα

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy Chapter 5 Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου Ενδέκατη (11 η ) δίωρη διάλεξη. Διαφάνειες διδασκαλίας από το

Διαβάστε περισσότερα

STANDARDNA ARHITEKTURA MIKROPROCESORA

STANDARDNA ARHITEKTURA MIKROPROCESORA STANDARDNA ARHITEKTURA MIKROPROCESORA UVOD Svaki sastavni deo, a time i celi mikroprocesor, najbolje je opisan skupom registara i njihovom funkcijom, putevima između registara, nizom operacija koje se

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση Αρης Ευθυμίου Απόδοση απλής υλοποίησης Υλοποίηση ενός κύκλου είναι πολύ αργή κάθε κύκλος είναι τόσο μεγάλος όσο χρειάζεται

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Κεφάλαιο 2 Ασκήσεις Άσκηση 1 Κώδικας C: f = g + h + B[4]; f = g A[B[4]]; f, g, h, στους $s0, $s1, $s2, και διευθύνσεις βάσης των πινάκων Α και Β στους $s6 και $s7 Ποιος είναι ο αντίστοιχος κώδικας MIPS;

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Δευτέρα, 3 Νοεμβρίου 25 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΛΕΠΤΑ Για πλήρη

Διαβάστε περισσότερα

III VEŽBA: FURIJEOVI REDOVI

III VEŽBA: FURIJEOVI REDOVI III VEŽBA: URIJEOVI REDOVI 3.1. eorijska osnova Posmatrajmo neki vremenski kontinualan signal x(t) na intervalu definisati: t + t t. ada se može X [ k ] = 1 t + t x ( t ) e j 2 π kf t dt, gde je f = 1/.

Διαβάστε περισσότερα

3. STRUKTURE PODATAKA

3. STRUKTURE PODATAKA 3 STRUKTURE PODATAKA Osnovni ili primitivni tipovi podataka sa kojima se instrukcijama mikroprocesora C68020 direktno operiše, su označene i neoznačene celobrojne vrednosti, BCD celobrojne vrednosti i

Διαβάστε περισσότερα

OSNOVI ELEKTRONIKE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA

OSNOVI ELEKTRONIKE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA ELEKTROTEHNIČKI FAKULTET U BEOGRADU KATEDRA ZA ELEKTRONIKU OSNOVI ELEKTRONIKE SVI ODSECI OSIM ODSEKA ZA ELEKTRONIKU LABORATORIJSKE VEŽBE VEŽBA BROJ 1 OSNOVNA KOLA SA DIODAMA Autori: Goran Savić i Milan

Διαβάστε περισσότερα

19. INTEGRISANI DIGITALNI PROCESORI SIGNALA

19. INTEGRISANI DIGITALNI PROCESORI SIGNALA 19. INTEGRISANI DIGITALNI PROCESORI SIGNALA U prethodna dva poglavlja razmotrena su dva načina implementacije sistema za digitalnu obradu signala čije su karakteristike komplementarne. Softverska implementacija

Διαβάστε περισσότερα

Eliminacijski zadatak iz Matematike 1 za kemičare

Eliminacijski zadatak iz Matematike 1 za kemičare Za mnoge reakcije vrijedi Arrheniusova jednadžba, koja opisuje vezu koeficijenta brzine reakcije i temperature: K = Ae Ea/(RT ). - T termodinamička temperatura (u K), - R = 8, 3145 J K 1 mol 1 opća plinska

Διαβάστε περισσότερα

Digitalna mikroelektronika

Digitalna mikroelektronika Digitalna mikroelektronika Z. Prijić Elektronski fakultet Niš Katedra za mikroelektroniku Predavanja 27. Deo I Kombinaciona logička kola Kombinaciona logička kola Osnovna kombinaciona logička kola 2 3

Διαβάστε περισσότερα

Najjednostavnija metoda upravljanja slijedom instrukcija:

Najjednostavnija metoda upravljanja slijedom instrukcija: 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:

Διαβάστε περισσότερα

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

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. a b Verovatno a da sluqajna promenljiva X uzima vrednost iz intervala

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών

Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: = a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije = a + b + c je parabola. Najpre ćemo naučiti kako

Διαβάστε περισσότερα

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA : MAKSIMALNA BRZINA Maksimalna brzina kretanja F O (N) F OI i m =i I i m =i II F Oid Princip određivanja v MAX : Drugi Njutnov zakon Dokle god je: F O > ΣF otp vozilo ubrzava Kada postane: F O = ΣF otp

Διαβάστε περισσότερα

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla XI dvoqas veжbi dr Vladimir Balti 4. Stabla Teorijski uvod Teorijski uvod Definicija 5.7.1. Stablo je povezan graf bez kontura. Definicija 5.7.1. Stablo je povezan graf bez kontura. Primer 5.7.1. Sva stabla

Διαβάστε περισσότερα

Algoritmi zadaci za kontrolni

Algoritmi zadaci za kontrolni Algoritmi zadaci za kontrolni 1. Nacrtati algoritam za sabiranje ulaznih brojeva a i b Strana 1 . Nacrtati algoritam za izračunavanje sledeće funkcije: x y x 1 1 x x ako ako je : je : x x 1 x x 1 Strana

Διαβάστε περισσότερα

Obrada signala

Obrada signala Obrada signala 1 18.1.17. Greška kvantizacije Pretpostavka je da greška kvantizacije ima uniformnu raspodelu 7 6 5 4 -X m p x 1,, za x druge vrednosti x 3 x X m 1 X m = 3 x Greška kvantizacije x x x p

Διαβάστε περισσότερα

Program testirati pomoću podataka iz sledeće tabele:

Program testirati pomoću podataka iz sledeće tabele: Deo 2: Rešeni zadaci 135 Vrednost integrala je I = 2.40407 42. Napisati program za izračunavanje koeficijenta proste linearne korelacije (Pearsonovog koeficijenta) slučajnih veličina X = (x 1,..., x n

Διαβάστε περισσότερα

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2.

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2. ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: Ο επεξεργαστής 1. Διάδρομος δεδομένων και μονάδα ελέγχου 2. Pipelining (Αν υπάρχει χρόνος) Θα ξαναπάμε πίσω στο Κεφ.3αργότερα. ΕΠΛ 221--

Διαβάστε περισσότερα

Σχεδίαση της Διόδου Δεδομένων

Σχεδίαση της Διόδου Δεδομένων ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ - VHDL ΥΛΙΚΟ ΚΑΙ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ενότητα 4 Σχεδίαση της Διόδου Δεδομένων Καθηγητής Αντώνης Πασχάλης 207 Γενικές Γραμμές Επεξεργαστής

Διαβάστε περισσότερα

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove.

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove. Klasifikacija blizu Teorema Neka je M Kelerova mnogostrukost. Operator krivine R ima sledeća svojstva: R(X, Y, Z, W ) = R(Y, X, Z, W ) = R(X, Y, W, Z) R(X, Y, Z, W ) + R(Y, Z, X, W ) + R(Z, X, Y, W ) =

Διαβάστε περισσότερα

Διαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4

Διαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4 ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 4 Διαδικασίες Ι Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Εισαγωγή στους Η/Υ (ΗΥ134) 1 Διευθυνσιοδότηση διακλαδώσεων

Διαβάστε περισσότερα

Univerzitet u Nišu Građevinsko-arhitektonski fakultet. Informatika2. 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje.

Univerzitet u Nišu Građevinsko-arhitektonski fakultet. Informatika2. 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje. Univerzitet u Nišu Građevinsko-arhitektonski fakultet Informatika2 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje Milica Ćirić Ciklična algoritamska struktura Ciklična struktura (petlja)

Διαβάστε περισσότερα

Υλοποίηση Mικροεπεξεργαστή MIPS -16

Υλοποίηση Mικροεπεξεργαστή MIPS -16 Υλοποίηση Mικροεπεξεργαστή MIPS -16 Διάδρομος Δεδομένων και Μονάδα Ελέγχου 1 Περίληψη Μνήμη RAM Εκτέλεση εντολών με πολλαπλούς κύκλους Σχεδιασμός Διαδρόμου Δεδομένων (Data Path) Καταχωρητής Εντολών (Instruction

Διαβάστε περισσότερα

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

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f 2. Nule i znak funkcije; presek sa y-osom IspitivaƬe

Διαβάστε περισσότερα

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

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1 Strukture podataka i algoritmi 1. kolokvij Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i službeni šalabahter. Predajete samo papire koje ste dobili. Rezultati i uvid u kolokvije: ponedjeljak,

Διαβάστε περισσότερα

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) 1 ιασωλήνωση 2 Pipelining Παραλληλισμός + Pipelining 3 Χρόνος Εκτέλεσης = I x CPI x Cycle Time Με ή χωρις pipeline το Ι είναι το ίδιο όπως και τo CPI = 1. Το

Διαβάστε περισσότερα

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

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost M086 LA 1 M106 GRP Tema: CSB nejednakost. 19. 10. 2017. predavač: Rudolf Scitovski, Darija Marković asistent: Darija Brajković, Katarina Vincetić P 1 www.fizika.unios.hr/grpua/ 1 Baza vektorskog prostora.

Διαβάστε περισσότερα

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές

ΠΛΕ- 027 Μικροεπεξεργαστές ΠΛΕ- 027 Μικροεπεξεργαστές 3ο μάθημα: γλώσσα μηχανής MIPS, προγραμματισμός assembly Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Stored Program Computers Αναπαράσταση

Διαβάστε περισσότερα

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

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x Zadatak (Darjan, medicinska škola) Izračunaj vrijednosti trigonometrijskih funkcija broja ako je 6 sin =,,. 6 Rješenje Ponovimo trigonometrijske funkcije dvostrukog kuta! Za argument vrijede sljedeće formule:

Διαβάστε περισσότερα