Materiały do wykładu. 4.Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski. 5 kwietnia 2009

Wielkość: px
Rozpocząć pokaz od strony:

Download "Materiały do wykładu. 4.Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski. 5 kwietnia 2009"

Transkrypt

1 Materiały do wykładu 4.Mikroprocesor Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 5 kwietnia 2009

2 Architektura mikroprocesora 4.1 Rejestry Układ współpracy zszynami Jednostka sterująca połączenia wewnętrzne Jednostka arytmetyczno- -logiczna Jednostka arytmetyczno- -logiczna Jednostka arytmetyczno- -logiczna

3 Kod maszynowy a Asembler 4.2 Kod maszynowy binarny sposób opisu rozkazów procesora Każda architektura ma swój unikalny kod maszynowy. W obrębie tej samej architektury kod maszynowy może być nieco różny dla poszczególnych modeli procesorów. Asembler język programowania niskiego poziomu Jedno polecenie odpowiada zwykle jednemu rozkazowi maszynowemu. Każda architektura ma swój unikalny Asembler. asembler program tłumaczący Asembler na kod maszynowy

4 Dlaczego Z80? 4.3 Jeden z najpopularniejszych mikroprocesorów 8-bitowych Nadal produkowany i używany Bezpośredni wpływ na najpopularniejszą obecnie architekturę x86 Kompromisy projektowe, kompatybilność z 8080 Wystarczająco prosty

5 Z80 rejestry 4.4 A F A F B C B C D E D E H L H L PC SP IX IY I IFF R

6 Z80 przesyłanie danych 8-bitowych(1) 4.5 LDd,s 01 d s d, s argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A NiemarozkazuLD(HL),(HL);kod torozkazHALT!

7 Z80 przesyłanie danych 8-bitowych(2) 4.6 LDd,n 00 d 110 n d argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A

8 Z80 przesyłanie danych 8-bitowych(3) 4.7 LD(p),A LDA,(p) 000pd010 LD(aa),A LDA,(aa) 0011d010 aal aah p para rejestrów 0 BC 1 DE d kierunek 0 z akumulatora do pamięci 1 z pamięci do akumulatora

9 Z80 rejestry indeksowe(1) 4.8 LDr,(HL) LDr,(i+d) 01 r i r 110 d r rejestr 000 B 001 C 010 D 011 E 100 H 101 L 111 A i rejestr indeksowy 0 IX 1 IY

10 Z80 rejestry indeksowe(2) 4.9 LD(HL),n LD(i+d),n i n d n i rejestr indeksowy 0 IX 1 IY

11 Z80 rejestry primowane 4.10 EXAF,AF EXX

12 Z80 rejestr znaczników 4.11 S Z AC P/V N CY S najstarszy bit wyniku operacji, wynik ujemny Z wynikoperacjizerowy AC pomocnicze przeniesienie z pozycji 3, arytmetyka BCD P/V znacznik parzystości dla operacji logicznych i nadmiaru(ang. overflow) dla operacji arytmetycznych N znacznik zerowany przy wykonywaniu dodawania i ustawiany przy wykonywaniu odejmowania, arytmetyka BCD CY znacznik przeniesienia(pożyczki przy odejmowaniu)

13 Z80 8-bitowe operacje arytmetyczno-logiczne op s 11 op 110 n s argument 000 B 001 C 010 D 011 E 100 H 101 L 110 (HL) 111 A op operacja 000 ADDA,y 001 ADCA,y 010 SUBA,y 011 SBCA,y 100 ANDA,y 101 ORA,y 110 XORA,y 111 CPA,y y {s,n}

14 Z80 rotacje i przesunięcia bitów 4.13 RLx CY x RRx CY x RLCx CY x RRCx CY x SLAx x CY 0 SRL x 0 x CY SRA x x CY x {A,B,C,D,E,H,L,(HL),(IX+d),(IY+d)}

15 Z80 operacje na adresach(1) 4.14 Ładowanie LDp,nn LDp,(aa) LD(aa),p gdziep {BC,DE,HL,SP,IX,IY} Zamiana EXDE,HL Inkrementacja i dekrementacja INCp DECp gdziep {BC,DE,HL,SP,IX,IY}

16 Arytmetyka 16-bitowa ADDHL,p ADCHL,p SBCHL,p gdziep {BC,DE,HL,SP} Z80 operacje na adresach(2) 4.15 Dodawanie i odejmowanie wartości w rejestrach indeksowych ADDIX,p gdziep {BC,DE,SP,IX} ADDIY,p gdziep {BC,DE,SP,IY}

17 Z80 stos(1) 4.16 Zajmuje pewien obszar w pamięci. Rejestr SP wskazuje wierzchołek stosu ostatni zajęty bajt. Stosrośniewdół wkierunkumniejszychadresów.

18 PUSHp Z80 stos(2) 4.17 Odkłada na stos najpierw starszy, potem młodszy bajt argumentu(little-endian). ZmniejszaSPo2. p {AF,BC,DE,HL,IX,IY} POPp Zdejmuje ze stosu najpierw młodszy, potem starszy bajt i umieszcza je w argumencie. ZwiększaSPo2. p {AF,BC,DE,HL,IX,IY}

19 Inicjowanie wskaźnika stosu LDSP,nn LDSP,(aa) LDSP,p gdziep {HL,IX,IY} Manipulowanie wierzchołkiem stosu INCSP DECSP EX(SP),p gdziep {HL,IX,IY} Z80 stos(3) 4.18

20 Z80 skoki i podprogramy 4.19 JP aa CALL aa RET aal aal aah aah JPwykonujeskokpodpodanyadres(wpisujeaadoPC). CALL odkłada na stos adres następnego rozkazu(adres powrotu) i wykonuje skok pod podany adres. RETzdejmujezestosuadrespowrotuiwykonujeskokpodten adres.

21 Z80 rozkazy warunkowe 4.20 JPw,aa CALLw,aa RETw 11 w w w 000 aal aah aal aah w skrót warunek skoku 000 NZ Z=0 001 Z Z=1 010 NC CY=0 011 C CY=1 100 PO P/V=0 101 PE P/V=1 110 P S=0 111 M S=1

22 Z80 skoki względne 4.21 JRd JRv,d v 000 d d v skrót warunek skoku 00 NZ Z=0 01 Z Z=1 10 NC CY=0 11 C CY=1 SkokwzględnydodajedoPCwartośćdtraktowanąjakoliczbaze znakiem.

23 Z80 przykład procedury 4.22 MUL: PUSH AF ; Nie modyfikuj rejestrów roboczych. PUSHBC ;wbicargumenty LD HL,0 ;whlwynik LD A,B LD B,H ;wyzerowanieb MULTST:CP A,0 JR Z,MULEND SRL A JR NC, MUL2BC ADD HL,BC MUL2BC: SLA C ; pomnożenie BC RL B ; przez2 JR MULTST MULEND: POP BC ; przywrócenie wartości POP AF ; rejestrom roboczym RET

24 Z80 przekazywanie argumentów przez stos 4.23 LDH,(x) ;drugi(ostatni)argument LD L, 5 ; pierwszy(przedostatni) argument PUSH HL ; argumenty na stosie od ostatniego CALL MUL INC SP ; czyszczenie stosu przez INC SP ; procedurę wołającą LD(y),HL;zapisaniewyniku MUL: PUSHIX LDIX,3 ADDIX,SP... ;(IX+1)-pierwszyargument... ;(IX+2)-drugiargument POPIX RET

25 Z80 przekazywanie argumentów przez stos 4.24 LDH,5 ;pierwszyargument LDL,(x) ;drugiargument PUSH HL ; argumenty na stosie od pierwszego CALL MUL LD(y),HL;zapisaniewyniku MUL: LDIX,4 ADDIX,SP... ;(IX-1)-pierwszyargument... ;(IX-2)-drugiargument POP IY ; zdjęcie adresu powrotu LDSP,IX ;stosczyściprocedurawołana JP(IY) ;powrótzprocedury

26 Z80 cykl pracy 4.25 cykl rozkazowy cykle procesora cykle zegara ADDA,E pobranie T 1 T 2 T 3 T 4 cykl rozkazowy cykle procesora cykle zegara INC(HL) pobranie odczyt zapis T 1 T 2 T 3 T 4 T 1 T 2 T 3 T 1 T 2 T 3 Liczą się tylko dostępy do pamięci!

27 Z80 przerwania 4.26 Służą do sygnalizowania procesorowi, że jakieś urządzenie wymaga obsługi, np.: wciśnięto klawisz, odebrano pakiet danych. Niemaskowalne zawsze aktywne Maskowalne włączane rozkazem EI ustawienie przerzutnika przerwań IFF wyłączane rozkazem DI wyzerowanie IFF trzy tryby, ustawiane odpowiednio rozkazami: IM0, IM1, IM2 Tryby0i1sąodziedziczonepo8080,omówimytylkotryb2.

28 Z80 zgłaszanie przerwań 4.27 Urządzenie chcąc zgłasić przerwanie, podaje stan niski na wejście NMIlubINT. Procesor testuje stan tych wejść w ostatnim takcie zegara każdego cyklu rozkazowego. Jeśli wejście NMI ma stan niski, zamiast wykonywać kolejny rozkaz, procesor przechodzi do obsługi przerwania niemaskowalnego. Jeśli wejście INT ma stan niski i przerwanie maskowalne jest włączone, zamiast wykonywać kolejny rozkaz, procesor przechodzi do obsługi przerwania maskowalnego.

29 Z80 obsługa przerwania niemaskowalnego 4.28 Zapamiętywany jest aktualny stan IFF. Przerwania maskowalne są wyłączane IFF jest zerowany. Wykonywany jest skok do podprogramu obsługi rozpoczynającego sięodadresu(66) 16. Zakończenie obsługi polega na wykonaniu rozkazu RETN. RozkazRETNzdejmujezestosuadrespowrotuiwpisujegodoPC oraz przywraca poprzednią wartość IFF.

30 Z80 obsługa przerwania maskowalnego(1) 4.29 Procesor generuje zmodyfikowany cykl pobrania rozkazu. W tym cyklu wystawia sygnał potwierdzenia przyjęcia przerwania. Urządzenie zgłaszające przerwanie po rozpoznaniu potwierdzenia wystawia na szynę danych numer przerwania b. Wartość PC jest odkładana na stosie. Przerwanie maskowalne jest wyłączane. Z tablicy przerwań pobierany jest adres obsługi przerwania. Tablica przerwań jest wskazywana przez rejestr przerwań I.

31 Z80 obsługa przerwania maskowalnego(2) 4.30 Adres początku procedury obługi przerwania numer b znajduje się podadresami28 I+b(młodszybajt),28 I+b+1(starszybajt). Do PC wpisywany jest adres początku procedury obługi przerwania. Przed zakończeniem obsługi zwykle włącza się ponownie przyjmowanie przerwań rozkazem EI. Zakończenie obsługi polega zwykle na wykonaniu rozkazu RETI. RozkazRETIzdejmujezestosuadrespowrotuiwpisujegodoPC. Do manipulowania rejestrem przerwań służą rozkazy LDI,A LDA,I

32 Z80 szkielet procedury obsługi przerwania 4.31 INT: EXAF,AF EXX... EXX EXAF,AF EI RETI

33 Komunikacja z urządzeniami, np.: Z80 wejście-wyjście 4.32 odczytanie kodu wciśniętego klawisza, odczytanie odebranego pakietu danych, sterowanie wyświetlaczem. Oddzielna przestrzeń adresowa wejścia-wyjścia Rozkazy INA,(n) OUT(n),A INr,(C) OUT(C),r gdzier {A,B,C,D,E,H,L}

34 Z80 pozostałe rozkazy(1) 4.33 Arytmetyczno-logiczne INCx DECx BITb,x SETb,x RESb,x RLD RRD CPL NEG CCF SCF DAA gdzieb {0,1,...,7}, x {A,B,C,D,E,H,L,(HL),(IX+d),(IY+d)}

35 Z80 pozostałe rozkazy(2) 4.34 Skoki DJNZd JP(p) gdzied { 128, 127,...,127},p {HL,IX,IY} Operacje na ciągach bajtów w pamięci LDI LDD LDIR LDDR CPI CPD CPIR CPDR

36 Z80 pozostałe rozkazy(3) 4.35 Przesłania blokowe z wejścia i na wyjście INI IND INIR INDR OUTI OUTD OUTIR OUTDR Przerwania programowe RSTa gdziea {0,8,16,...,56}

37 Z80 pozostałe rozkazy(4) 4.36 Inne NOP HALT LDR,A LDA,R Nieudokumentowane EXDE,IX EXDE,IY SLLx/SL1x...

38 Małe podsumowanie(1) 4.37 Z punku widzenia programisty wszystkie mikroprocesory działają podobnie do opisanego. Poszczególne architektury różnią się m.in.: porządkiem bajtów, liczbą i przeznaczeniem rejestrów, listą oferowanych instrukcji(rozkazów), semantyką operacji dwuargumentowych, sposobem realizacji sterowania programem, trybami adresowania, systemem przerwań.

39 Dalsze różnice: Małe podsumowanie(2) 4.38 rozdzielne lub wspólne przestrzenie adresowe: danych i programu (architektury typu Princeton lub Harward), wejścia-wyjścia, mechanizmy ochrony pamięci(brak, segmentacja, stronicowanie). Żeby móc działać szybciej, współczesne mikroprocesory mają zupełnie inną organizację(budowę) niż opisany.

40 Rejestry(1) 4.39 danych adresowe ogólnego przeznaczenia specjalizowane stanu, znaczników wskaźnik stosu licznik programu zmiennopozycyjne wektorowe segmentowe zarządzania pamięcią debugowania

41 architektura bezrejestrowa minimalny zestaw rejestrów mały zestaw rejestrów specjalizowanych mały zestaw rejestrów uniwersalnych duży zestaw rejestrów uniwersalnych bufor wierzchołka stosu stosowy zestaw rejestrów Rejestry(2) 4.40

42 Aplikacyjne przesyłanie danych operacje arytmetyczne operacje bitowe operacje na blokach danych Lista instrukcji(rozkazów) 4.41 instrukcje sterujące(skok bezwarunkowy i warunkowy, warunkowe wykonanie instrukcji, wołanie procedury, powrót z procedury) Systemowe(tryb uprzywilejowany lub nadzorcy) zarządzanie systemowymi strukturami danych zmiana trybu pracy procesora

43 Operacje dwuargumentowe 4.42 Przykładowa składnia Możliwa semantyka addr1,r2 addr1,r2 addr1,r2,r3 addr1,r2,r3 r1:=r1+r2 r2:=r1+r2 r1:=r2+r3 r3:=r1+r2

44 Sterowanie wykonaniem programu 4.43 Jednoetapowe(bez znaczników) bzs1,label jecxzlabel Dwuetapowe ze znacznikami CPA,0 JRZ,MULEND cmpeax,0 jzmulend ;branchifs1=0 ;jumpifecx=0 ;setflags ;jumpifz=1 ;setflags ;jumpifzf=1 Dwuetapowe z predykatami cmp.eqp1,p2=r1,r2 ;ifr1=r2 (p1)addr3=1,r3 ;thenr3:=r3+1 (p2)addr3=3,r3 ;elser3:=r3+3

45 Tryby adresowania argumentów(1) 4.44 Nazwa Z80 IA-32 natychmiastowy LD B, 7 mov ebx, 7 bezpośredni LD A,(1000) mov eax,[1000] rejestrowy(bezpośredni) ADD A, B add eax, ebx (rejestrowy) pośredni ADD A,(HL) add eax,[ebx] indeksowy LD A,(IX+8) mov eax,[ebx+4*ecx+8] stosowy PUSH AF push eax POP AF pop eax EX(SP), HL xchg[esp+8*ecx], eax względny JR Z, MULEND jz mulend

46 Tryby adresowania argumentów(2) 4.45 Nazwa Oznaczenia Z80 IA-32 rejestrowy pośredni [+r1](+r1) z preinkrementacją rejestrowy pośredni [r1+](r1+) LDI movs z POP AF pop eax rejestrowy pośredni [-r1](-r1) DJNZ d loop d z predekrementacją PUSH AF push eax rejestrowy pośredni [r1-](r1-) LDD z movs

47 System przerwań 4.46 Przerwania sprzętowe maskowalne niemaskowalne Przerwania programowe Praca krokowa debugowanie Wyjątki ponawianie instrukcji, która spowodowała wyjątek Element tablicy przerwań adres procedury obsługi instrukcja skoku do procedury obsługi deskryptor procedury obsługi

48 Pomiar wydajności 4.47 IPS Instructions Per Second MIPS=10 6 IPS FLOPS Floating Point Operations Per Second MFLOPS=10 6 FLOPS GFLOPS=10 9 FLOPS TFLOPS=10 12 FLOPS PFLOPS=10 15 FLOPS

49 Metody zwiększania wydajności(1) 4.48 Zwiększanie częstotliwości taktowania ograniczenia konstrukcyjne i technologiczne wydzielanie ciepła czas propagacji Inne pomysły pobieranie instrukcji na zakładkę kolejka(bufor) instrukcji przetwarzanie potokowe zrównoleglanie wykonywania instrukcji

50 Metody zwiększania wydajności(2) 4.49 Nienadążanie szybkość pracy pamięci za wzrostem szybkości pracy procesorów zwiększanie szerokości szyny danych wielopoziomowe pamięci podręczne, początkowo jako zewnętrzne, a obecnie w jednym układzie scalonym z procesorem pamięci umożliwiające pobieranie danych co jeden cykl zegara, anawetdwarazywjednymcykluzegara

51 Przetwarzanie potokowe 4.50 I 1 I 2 I 3 I 4 I 1 I 2 I 3 I 4 F D E MW F D E MW F D E MW F D E MW F D E MW F D E MW F D E MW F D E MW F fetch D decode E execute M memoryaccess W writeback

52 Potokowanie rozkazów 4.51 Rozkazy procesora takiego jak Z80 źle się potokuje: kodrozkazuzajmujeod1do4bajtów,cowymagado4dostępów do pamięci; rozkaz może wykonywać skomplikowane operacje na argumentach w pamięci, co może wymagać kilku kolejnych odwołań. Listę rozkazów należy przeprojektować tak, aby wszystkie rozkazy: miały kod tego samego rozmiaru, wykonywały podobną liczbę operacji, potrzebowały co najwyżej jednego dodatkowego dostępu do pamięci(oprócz wczytania kodu rozkazu).

53 Klasy rozkazów 4.52 Ograniczamy repertuar rozkazów do następujących klas. Odczytzpamięcidorejestru(ang.load),np.: r1:=(r2+offset) Zapiszrejestrudopamięci(ang.store),np.: (r2+offset):=r1 Arytmetyczno-logiczne tylko na rejestrach, np.: r1:=r2+r3 Rozgałęzienia jednoetapowe, np.: branchtolabelifr1=r2

54 Podział rozkazów na etapy 4.53 Rozważamy przykładowy potok piecioetapowy. F pobraniekodurozkazuzpamięci D zdekodowanie rozkazu i pobranie argumentów z rejestrów E wykonanie operacji arytmetyczno-logicznych, obliczenie adresu M odczytaniedanychzpamięcilubzapisaniedanychdopamięci W zapisaniewynikudorejestru

55 Przykładowe czasy wykonania 4.54 klasa instrukcji F D E M W razem odczytzpam. 200ps 100ps 200ps 200ps 100ps 800ps zapisdopam. 200ps 100ps 200ps 200ps 700ps arytm.-logiczne 200ps 100ps 200ps 100ps 600ps rozgałęzienia 200ps 100ps 200ps 500ps Rozkazmusiprzebywaćwjednymetapiepotoku200ps. Czas wykonania jednego rozkazu wynosi 1000 ps, czyli dłużej niż najdłuższy czas wykonania rozkazu wykonywanego niepotokowo. Czaswykonanianrozkazówwynosi200(n+4)ps.

56 Zależności zasobów, strukturalne 4.55 Potok może zostać wstrzymany, gdy rozkazy będące na różnych etapach wykonania potrzebują dostępu do tego samego sprzętu. Przykładoworozkazchcewykonaćodczytdanychzpamięci,awtym samym czasie trzeba pobrać kod kolejnego rozkazu. F D E MW F D E MW F D E MW F D E MW Zależności strukturalne usuwa się przez dołożenie sprzętu. Dlatego m.in. współczesne mikroprocesory mają oddzielne pamięci podręczne pierwszego poziomu dla kodu i danych.

57 Zależności danych typu define-use 4.56 Potok może zostać wstrzymany, gdy rozkaz potrzebuje wyniku poprzedniego rozkazu. r1:=r2+r3 r4:=r1-r5 F D E MW F D D D E MW Takie zależności usuwa się przez data forwarding lub data bypassing. Wynik obliczony na etapie E pierwszego rozkazu przesyła się bezpośrednio do etapu E drugiego rozkazu, zanim zostanie zapisany do rejestru wynikowego. r1:=r2+r3 r4:=r1-r5 F D E MW F D E MW

58 Zależności danych typu load-use 4.57 Potok może zostać wstrzymany, gdy rozkaz potrzebuje danych ładowanych z pamięci przez poprzedni rozkaz. r1:=(r2+4) r4:=r1-r5 F D E MW F D D D E MW Data forwarding nie zawsze jest w stanie usunąć taką zależność. r1:=(r2+4) r4:=r1-r5 F D E MW F D D E MW Dodatkowe opóźnienie wprowadzane przez rozkaz, gdy następny rozkaz potrzebuje jego wyniku, nazywa się latency. Kompilator może usuwać latency, zmieniając kolejność rozkazów.

59 Zależności sterowania 4.58 Potok musi być opróżniony, gdy rozkaz warunkowy wykona skok. branch F D E MW F D F F D E MW W rozważanym przykładzie dodatkowe opóźnienie(latency) wynosi dwa takty.

60 Rozwiązywanie zależności sterowania 4.59 Równoległe przetwarzanie obu gałęzi programu Predykcja skoków(przewidywanie rozgałęzień) zawsze następuje skok nigdy nie następuje skok decyduje kod instrukcji(kompilator) jak przy ostatnim wykonaniu tablica historii skoków Opóźnione rozgałęzianie

61 Przykład potoku trzyetapowego Budowa potoku 4.60 f µ fg g µ gh h Każdyetappotokutoukładsekwencyjny,narysunkusątof,g,h. Stan przetwarzania pomiędzy etapami jest zapamiętywany w rejestrachpotokowych,narysunkuµ fg iµ gh.

62 Metody zrównoleglania 4.61 Procesor superskalarny wektorowy (SIMD Single Instruction Multiple Data) z bardzo długim słowem instrukcji (VLIW Very Long Instruction Word) Zrównoleglenie w trakcie wykonywania algorytm kompilator

63 Przetwarzanie wielopotokowe 4.62 pipeline 1 scheduler pipeline 2 re-order buffer pipeline 3 Wydawanie/wykonywanie rozkazów w zmienionej kolejności(ang. out of order issue/execution)

64 Zależności danych przy out of order issue 4.63 RAW odczytpozapisie load-use mov eax,[ecx+4] addebx,eax WAR zapispoodczycie addeax,ebx movebx,4 WAW zapispozapisie addeax,ebx andecx,edx define-use add eax, ecx addebx,eax Zależności RAW rozwiązuje się jak poprzednio przez data forwarding lub data bypassing. Zależności WAR i WAW są zależnościami fałszywymi i rozwiązuje się je przez przemianowanie rejestrów.

65 Architektury RISC i CISC(1) 4.64 RISC Reduced Instruction Set Computers Zawierają ograniczony, prosty zbiór instrukcji. Zawierają dużą liczbę uniwersalnych rejestrów. Instrukcje arytmetyczno- -logiczne wykonywane są na rejestrach. CISC Complex Instruction Set Computers Występują skomplikowane instrukcje wspierające języki wysokiego poziomu. Zawierają małą liczbą rejestrów i/lub rejestry specjalizowane. Instrukcje arytmetyczno- -logiczne mogą pobierać argumenty z pamięci i umieszczać wynik w pamięci.

66 Architektury RISC i CISC(2) 4.65 RISC Reduced Instruction Set Computers Kody instrukcji są stałej długości,typowo4bajty,imająstałe rozmieszczenie pól, co ułatwia dekodowanie. Posiadają małą liczbę trybów adresowania. Dozwolone jest tylko adresowanie wyrównane. CISC Complex Instruction Set Computers Kody instrukcji mają zmienną długość, typowo od jednego do kilkunastu bajtów. Występuje prefiksowanie instrukcji utrudniające dekodowanie. Posiadają dużą liczbę trybów adresowania. Dozwolone jest adresowanie niewyrównane.

67 Architektury RISC i CISC(3) 4.66 CISC rozkazy Translator µops RISC

68 Geneza mikroprocesora 4.67 Zbyt czasochłonne projektowanie od podstaw z bramek logicznych nowego modelu np. kalkulatora lub sterownika windy Podczas projektowania łatwo popełnić trudny do usunięcia błąd Układ uniwersalny mikroprocesor Nowa funkcjonalność przez wymianę programu

69 Geneza mikroprogramowania 4.68 Zbyt czasochłonne projektowanie od podstaw z bramek logicznych nowej jednostki sterującej(mikro)procesora Podczas projektowania łatwo popełnić trudny do usunięcia błąd Uniwersalna jednostka sterująca Nowa funkcjonalność przez wymianę mikroprogramu

70 Mikroprogramowanie 4.69 Język wysokiego poziomu Asembler Kod maszynowy µoperacje µprogram sprzęt

71 Sprzętowe wsparcie dla systemów operacyjnych 4.70 Translacja adresów segmentacja stronicowanie, prosta i odwrotna tablica stron Poziomy ochrony wewnętrzny, nadzorcy, uprzywilejowany zewnętrzny, aplikacji Wywoływanie usług systemu operacyjnego przerwania specjalna instrukcja(syscall)

72 Segmentacja 4.71 pamieć wirtualna procesu 1 pamięć liniowa pamieć wirtualna procesu 2

73 Stronicowanie 4.72 pamięć fizyczna (ramki) liniowa pamięć wirtualna (strony) dysk

74 liniowy adres wirtualny nr strony przemieszczenie tablica stron Tablica stron 4.73 atrybuty nr ramki nr ramki specjalny rejestr nr ramki przemieszczenie adres fizyczny

75 Stronicowanie wielopoziomowe 4.74 liniowy adres wirtualny nr tablicy nr strony przemieszczenie katalog tablic tablica stron nr ramki nr ramki nr ramki specjalny rejestr nr ramki przemieszczenie adres fizyczny

76 liniowy adres wirtualny nr strony przemieszczenie Odwrócona tablica stron 4.75 funkcja haszująca odwrócona tablica stron nrstrony atrybuty nr ramki przemieszczenie adres fizyczny

77 TLB 4.76 Każde odwołanie do pamięci wymaga zajrzenia do tablicy stron, która sama jest przechowywana w pamięci. Taki mechanizm jest nieefektywny. Przy odwoływaniu się do pamięci obowiązuje zasada lokalności. Rozwiązaniem jest bufor translacji adresów(ang. TLB Translation Lookaside Buffer).

78 DMA Direct Memory Access 4.77 Odciąża procesor przy przesyłaniu dużych bloków danych. Dane przesyłane są bezpośrednio między sterownikiem urządzenia a pamięcią operacyjną. Przesyłanie obsługuje sterownik DMA specjalizowany układ podłączony do szyny systemowej. Fazy transmisji: rozkazów procesor inicjuje kanał DMA i zapisuje parametry transmisji, danych wykonywane jest przesyłanie, statusu sterownik DMA zgłasza przerwanie, procesor odczytuje status i zwalnia kanał DMA.

79 Mikroprocesory są wszędzie 4.78

Materiały do wykładu. 4. Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski

Materiały do wykładu. 4. Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski Materiały do wykładu 4. Mikroprocesor Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 19 marca 2007 Małe przypomnienie 4.1 Rejestry Układ współpracy z szynami Jednostka sterująca połączenia

Bardziej szczegółowo

Model von Neumanna 0.1

Model von Neumanna 0.1 Model von Neumanna 0.1 dane i rozkazy AC Jednostka arytmetyczno- -logiczna MBR Urządzenia wejścia- -wyjścia Pamięć główna rozkazy sygnały sterujące adresy IR Programowa jednostka sterująca MAR PC Procesor

Bardziej szczegółowo

4.Mikroprocesor. Małe przypomnienie 4.1. Marcin Peczarski. Rejestry(2) 4.3. Rejestry(1) 4.2. KodmaszynowyaAsembler(AVR) 4.5. KodmaszynowyaAsembler 4.

4.Mikroprocesor. Małe przypomnienie 4.1. Marcin Peczarski. Rejestry(2) 4.3. Rejestry(1) 4.2. KodmaszynowyaAsembler(AVR) 4.5. KodmaszynowyaAsembler 4. Materiałydowykładu Małe przypomnienie 4.1 4.Mikroprocesor Rejestry Układ współpracy zszynami sterująca Marcin Peczarski InstytutInformatyki UniwersytetWarszawski arytmetyczno- -logiczna połączeniawewnętrzne

Bardziej szczegółowo

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania

Bardziej szczegółowo

Technika mikroprocesorowa I Wykład 2

Technika mikroprocesorowa I Wykład 2 Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,

Bardziej szczegółowo

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje

Bardziej szczegółowo

Organizacja typowego mikroprocesora

Organizacja typowego mikroprocesora Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły

Bardziej szczegółowo

Architektura komputerów. Asembler procesorów rodziny x86

Architektura komputerów. Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych

Bardziej szczegółowo

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz] Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową

Bardziej szczegółowo

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta

Bardziej szczegółowo

Projektowanie. Projektowanie mikroprocesorów

Projektowanie. Projektowanie mikroprocesorów WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 12 Wspomaganie systemu operacyjnego: pamięć wirtualna Partycjonowanie Pamięć jest dzielona, aby mogło korzystać z niej wiele procesów. Dla jednego procesu przydzielana jest

Bardziej szczegółowo

Struktura i działanie jednostki centralnej

Struktura i działanie jednostki centralnej Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala

Bardziej szczegółowo

ARCHITEKTURA PROCESORA,

ARCHITEKTURA PROCESORA, ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy

Bardziej szczegółowo

2 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.02 Rok akad. 2011/ / 24

2 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.02 Rok akad. 2011/ / 24 ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe komputerów ASK MP.02 c Dr inż. Ignacy Pardyka 1 UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach 2 Literatura Rok akad. 2011/2012 c Dr inż. Ignacy Pardyka

Bardziej szczegółowo

Architektura systemów komputerowych

Architektura systemów komputerowych Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych Architektura systemów komputerowych dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat

Bardziej szczegółowo

Budowa Mikrokomputera

Budowa Mikrokomputera Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,

Bardziej szczegółowo

Programowalne układy logiczne

Programowalne układy logiczne Programowalne układy logiczne Mikroprocesor Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 6 grudnia 2014 Zbudujmy własny mikroprocesor Bardzo prosty: 16-bitowy, 16 rejestrów

Bardziej szczegółowo

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor. Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz

Bardziej szczegółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 4: Struktura użytkowego modelu programowego komputera Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcie użytkowego

Bardziej szczegółowo

Budowa komputera Komputer computer computare

Budowa komputera Komputer computer computare 11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału

Bardziej szczegółowo

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...

Bardziej szczegółowo

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność obliczeń a architektura procesorów Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych

Bardziej szczegółowo

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor Operacje wejścia / wyjścia Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 5 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) c.d. 2 Architektura CPU Jednostka arytmetyczno-logiczna (ALU) Rejestry Układ sterujący przebiegiem programu

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11 Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.

Bardziej szczegółowo

Logiczny model komputera i działanie procesora. Część 1.

Logiczny model komputera i działanie procesora. Część 1. Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.

Bardziej szczegółowo

Architektura mikroprocesorów TEO 2009/2010

Architektura mikroprocesorów TEO 2009/2010 Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład

Bardziej szczegółowo

Witold Komorowski: RISC. Witold Komorowski, dr inż.

Witold Komorowski: RISC. Witold Komorowski, dr inż. Witold Komorowski, dr inż. Koncepcja RISC i przetwarzanie potokowe RISC koncepcja architektury i organizacji komputera Aspekty opisu komputera Architektura Jak się zachowuje? Organizacja Jak działa? Realizacja

Bardziej szczegółowo

Programowanie Niskopoziomowe

Programowanie Niskopoziomowe Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie

Bardziej szczegółowo

Przetwarzanie potokowe pipelining

Przetwarzanie potokowe pipelining Przetwarzanie potokowe pipelining (część A) Przypomnienie - implementacja jednocyklowa 4 Add Add PC Address memory ister # isters Address ister # ister # memory Wstęp W implementacjach prezentowanych tydzień

Bardziej szczegółowo

Budowa i zasada działania komputera. dr Artur Bartoszewski

Budowa i zasada działania komputera. dr Artur Bartoszewski Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz

Bardziej szczegółowo

organizacja procesora 8086

organizacja procesora 8086 Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala

Bardziej szczegółowo

Wprowadzenie do architektury komputerów. Model programowy procesora i jego struktura Procesory CISC i RISC

Wprowadzenie do architektury komputerów. Model programowy procesora i jego struktura Procesory CISC i RISC Wprowadzenie do architektury komputerów Model programowy procesora i jego struktura Procesory CISC i RISC Użytkowy model programowy Użytkowym modelem programowym nazywamy zestaw zasobów logicznych komputera

Bardziej szczegółowo

Architektura mikroprocesorów z rdzeniem ColdFire

Architektura mikroprocesorów z rdzeniem ColdFire Architektura mikroprocesorów z rdzeniem ColdFire 1 Rodzina procesorów z rdzeniem ColdFire Rdzeń ColdFire V1: uproszczona wersja rdzenia ColdFire V2. Tryby adresowania, rozkazy procesora oraz operacje MAC/EMAC/DIV

Bardziej szczegółowo

Architektura potokowa RISC

Architektura potokowa RISC Architektura potokowa RISC Podział zadania na odrębne części i niezależny sprzęt szeregowe Brak nawrotów" podczas pracy potokowe Przetwarzanie szeregowe i potokowe Podział instrukcji na fazy wykonania

Bardziej szczegółowo

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne

Bardziej szczegółowo

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski Architektura systemów komputerowych 1 dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat blokowy CPU 4. Architektura CISC i RISC 2 Jednostka arytmetyczno-logiczna 3 Schemat blokowy

Bardziej szczegółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

LEKCJA TEMAT: Współczesne procesory.

LEKCJA TEMAT: Współczesne procesory. LEKCJA TEMAT: Współczesne procesory. 1. Wymagania dla ucznia: zna pojęcia: procesor, CPU, ALU, potrafi podać typowe rozkazy; potrafi omówić uproszczony i rozszerzony schemat mikroprocesora; potraf omówić

Bardziej szczegółowo

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,

Bardziej szczegółowo

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,

Bardziej szczegółowo

Magistrala systemowa (System Bus)

Magistrala systemowa (System Bus) Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki

Bardziej szczegółowo

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy: Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

architektura komputerów w. 4 Realizacja sterowania

architektura komputerów w. 4 Realizacja sterowania architektura komputerów w. 4 Realizacja sterowania Model komputera CPU Jednostka sterująca Program umieszczony wraz z danymi w pamięci jest wykonywany przez CPU program wykonywany jest sekwencyjnie, zmiana

Bardziej szczegółowo

Architektura typu Single-Cycle

Architektura typu Single-Cycle Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć

Bardziej szczegółowo

Budowa systemów komputerowych

Budowa systemów komputerowych Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności. Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych

Bardziej szczegółowo

Schematy zarzadzania pamięcia

Schematy zarzadzania pamięcia Schematy zarzadzania pamięcia Segmentacja podział obszaru pamięci procesu na logiczne jednostki segmenty o dowolnej długości. Postać adresu logicznego: [nr segmentu, przesunięcie]. Zwykle przechowywana

Bardziej szczegółowo

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna Architektura komputerów. Literatura: 1. Piotr Metzger, Anatomia PC, wyd. IX, Helion 2004 2. Scott Mueller, Rozbudowa i naprawa PC, wyd. XVIII, Helion 2009 3. Tomasz Kowalski, Urządzenia techniki komputerowej,

Bardziej szczegółowo

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania

Bardziej szczegółowo

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów Marcin Stępniak Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów 1. Informacje Poniższe laboratoria zawierają podsumowanie najważniejszych informacji na temat

Bardziej szczegółowo

Podstawy Techniki Mikroprocesorowej

Podstawy Techniki Mikroprocesorowej Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.

Bardziej szczegółowo

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

dr inż. Rafał Klaus Zajęcia finansowane z projektu Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle POKL Architektura komputerów wprowadzenie materiał do wykładu 3/3 dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie

Bardziej szczegółowo

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Podstawy techniki cyfrowej Mikroprocesory. Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin Podstawy techniki cyfrowej Mikroprocesory Mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Mikroprocesor to układ cyfrowy wykonany jako pojedynczy układ scalony o wielkim stopniu integracji zdolny do wykonywania

Bardziej szczegółowo

4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24

4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24 Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.

Bardziej szczegółowo

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów

Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów Sprzęt komputera - zespół układów wykonujących programy wprowadzone do pamięci komputera (ang. hardware) Oprogramowanie komputera - zespół programów przeznaczonych do wykonania w komputerze (ang. software).

Bardziej szczegółowo

Architektura systemów komputerowych. Lista instrukcji procesora

Architektura systemów komputerowych. Lista instrukcji procesora Architektura systemów komputerowych Plan wykładu 1. Rozkaz, lista rozkazów procesora. 2. Mikroprogramowanie. 3. Język maszynowy. 4. Projekt P: koncepcja, model rozkazu. Cele Architektura procesorów: von

Bardziej szczegółowo

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386 Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać

Bardziej szczegółowo

drklaus 1 Model funkcjonalny komputera struktura, funkcje, komputer dr inż. Rafał KLAUS STRUKTURA I DZIAŁANIE KOMPUTERA

drklaus 1 Model funkcjonalny komputera struktura, funkcje, komputer dr inż. Rafał KLAUS STRUKTURA I DZIAŁANIE KOMPUTERA Szablon wykładu należy uzupełnić podczas spotkania z wykładowcą STRUKTURA I DZIAŁANIE KOMPUTERA dr inż. Rafał Klaus Instytut Informatyki Politechnika Poznańska rafal.klaus@cs.put.poznan.pl www.cs.put.poznan.pl/rklaus

Bardziej szczegółowo

Pytania. W obecnie wykorzystywanych komputerach osobistych jest stosowana architektura: jednoszynowa. pamięciowo-centryczna.

Pytania. W obecnie wykorzystywanych komputerach osobistych jest stosowana architektura: jednoszynowa. pamięciowo-centryczna. Pytania W obecnie wykorzystywanych komputerach osobistych jest stosowana architektura: jednoszynowa pamięciowo-centryczna punkt-punkt Pamięć EEPROM jest pamięcią: kasowalną elektrycznie tylko 1 raz kasowalną

Bardziej szczegółowo

Wydajność obliczeń a architektura procesorów

Wydajność obliczeń a architektura procesorów Wydajność obliczeń a architektura procesorów 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych zadań, np.: liczba rozkazów na sekundę

Bardziej szczegółowo

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika Rejestry procesora Procesor podczas wykonywania instrukcji posługuje się w dużej części pamięcią RAM. Pobiera z niej kolejne instrukcje do wykonania i dane, jeżeli instrukcja operuje na jakiś zmiennych.

Bardziej szczegółowo

Podstawy techniki mikroprocesorowej. Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel

Podstawy techniki mikroprocesorowej. Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel Podstawy techniki mikroprocesorowej Dr inż. Grzegorz Kosobudzki p.311a A-5. Tel. 071 3203746 grzegorz.kosobudzki@pwr.wroc.pl 2 Terminy zajęć Wykłady: niedziela 7.30 12.00 s.312 Kolokwium przedostatnie

Bardziej szczegółowo

Sprzęt i architektura komputerów

Sprzęt i architektura komputerów Radosław Maciaszczyk Mirosław Łazoryszczak Sprzęt i architektura komputerów Laboratorium Temat: Mikroprocesory i elementy asemblera Katedra Architektury Komputerów i Telekomunikacji 1. MIKROPROCESORY I

Bardziej szczegółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 8: Procesory wielopotokowe, czyli superskalarne Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Struktury i rodzaje

Bardziej szczegółowo

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Spis treści Wprowadzenie... 11 1. Architektura procesorów rodziny x86... 17 1.1. Model procesorów

Bardziej szczegółowo

Stronicowanie w systemie pamięci wirtualnej

Stronicowanie w systemie pamięci wirtualnej Pamięć wirtualna Stronicowanie w systemie pamięci wirtualnej Stronicowanie z wymianą stron pomiędzy pamięcią pierwszego i drugiego rzędu. Zalety w porównaniu z prostym stronicowaniem: rozszerzenie przestrzeni

Bardziej szczegółowo

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia Podstawy techniki cyfrowej i mikroprocesorowej II Urządzenia wejścia-wyjścia Tomasz Piasecki magistrala procesor pamięć wejście wyjście W systemie mikroprocesorowym CPU może współpracować za pośrednictwem

Bardziej szczegółowo

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin Podstawy techniki cyfrowej Układy wejścia-wyjścia mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Układem wejścia-wyjścia nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Programowanie Niskopoziomowe

Programowanie Niskopoziomowe Programowanie Niskopoziomowe Wykład 4: Architektura i zarządzanie pamięcią IA-32 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Tryby pracy Rejestry

Bardziej szczegółowo

Lista instrukcji mikroprocesora 8086. Programowanie w assemblerze

Lista instrukcji mikroprocesora 8086. Programowanie w assemblerze Lista instrukcji mikroprocesora 8086 Programowanie w assemblerze Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora 8086 Lista instrukcji mikroprocesora

Bardziej szczegółowo

Programowanie Niskopoziomowe

Programowanie Niskopoziomowe Programowanie Niskopoziomowe Wykład 3: Architektura procesorów x86 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcia ogólne Budowa mikrokomputera Cykl

Bardziej szczegółowo

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu

Bardziej szczegółowo

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski Architektura systemów komputerowych dr Artur Bartoszewski Procesor część II Rejestry procesora dostępne programowo AX Akumulator Zawiera jeden z operandów działania i do niego przekazywany jest wynik BX,CX,DX,EX,HX,LX

Bardziej szczegółowo

Język programowania: Lista instrukcji (IL Instruction List)

Język programowania: Lista instrukcji (IL Instruction List) Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski 08.12.2009 Norma IEC 1131 Języki tekstowe Języki graficzne

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej

Bardziej szczegółowo

Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008

Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008 Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer. 1.4 Wojciech Myszka 16 pa«zdziernika 2008 CISC I Complex Instruction Set Computers nazwa architektury mikroprocesorów

Bardziej szczegółowo

Architektura komputerów egzamin końcowy

Architektura komputerów egzamin końcowy Architektura komputerów egzamin końcowy Warszawa, dn. 25.02.11 r. I. Zaznacz prawidłową odpowiedź (tylko jedna jest prawidłowa): 1. Czteroetapowe przetwarzanie potoku architektury superskalarnej drugiego

Bardziej szczegółowo

Programowanie Niskopoziomowe

Programowanie Niskopoziomowe Programowanie Niskopoziomowe Wykład 11: Procedury zaawansowane Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Ramki stosu Rekurencja INVOKE, ADDR, PROC,

Bardziej szczegółowo

Technika mikroprocesorowa I Wykład 1

Technika mikroprocesorowa I Wykład 1 Technika mikroprocesorowa I Wykład 1 Układy mikroprocesorowe. Przykłady rozwiązań Autor: Bartłomiej Zieliński Układy mikroprocesorowe Ryszard Krzyżanowski Mikroprocesor Z80 Jerzy Karczmarczuk "Układy mikroprocesorowe

Bardziej szczegółowo

Praktycznie całe zamieszanie dotyczące konwencji wywoływania funkcji kręci się w okół wskaźnika stosu.

Praktycznie całe zamieszanie dotyczące konwencji wywoływania funkcji kręci się w okół wskaźnika stosu. Krótki artykuł opisujący trzy podstawowe konwencje wywoływania funkcji C++ (a jest ich więcej). Konwencje wywoływania funkcji nie są tematem, na który można się szeroko rozpisać, jednak należy znać i odróżniać

Bardziej szczegółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 7: Potokowe jednostki wykonawcze Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Budowa potoku Problemy synchronizacji

Bardziej szczegółowo

MIKROKONTROLERY I MIKROPROCESORY

MIKROKONTROLERY I MIKROPROCESORY PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy

Bardziej szczegółowo

2. Architektura mikrokontrolerów PIC16F8x... 13

2. Architektura mikrokontrolerów PIC16F8x... 13 Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator

Bardziej szczegółowo

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4 Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,

Bardziej szczegółowo

Systemy operacyjne III

Systemy operacyjne III Systemy operacyjne III WYKŁAD Jan Kazimirski Pamięć wirtualna Stronicowanie Pamięć podzielona na niewielki bloki Bloki procesu to strony a bloki fizyczne to ramki System operacyjny przechowuje dla każdego

Bardziej szczegółowo

Technika mikroprocesorowa I Wykład 1

Technika mikroprocesorowa I Wykład 1 Technika mikroprocesorowa I Wykład 1 Układy mikroprocesorowe. Przykłady rozwiązań Autor: Bartłomiej Zieliński Układy mikroprocesorowe Ryszard Krzyżanowski Mikroprocesor Z80 Jerzy Karczmarczuk "Układy mikroprocesorowe

Bardziej szczegółowo

Lista rozkazów mikrokontrolera 8051

Lista rozkazów mikrokontrolera 8051 Lista rozkazów mikrokontrolera 8051 Spis treści: Architektura mikrokontrolera Rozkazy Architektura mikrokontrolera Mikrokontroler 8051 posiada trzy typy pamięci: układ zawiera pamięć wewnętrzną (On-Chip

Bardziej szczegółowo

System pamięci. Pamięć wirtualna

System pamięci. Pamięć wirtualna System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni

Bardziej szczegółowo

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22 ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH struktury procesorów ASK SP.06 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 Maszyny wirtualne 2 3 Literatura c Dr inż. Ignacy

Bardziej szczegółowo