1 / 75

ARCHITEKTURA KOMPUTERÓW · definicja komputera

ARCHITEKTURA KOMPUTERÓW · definicja komputera. PAMIĘĆ OPERACYJNA. PROCESOR. URZĄDZENIA ZEWNĘTRZNE. PAMIĘĆ OPERACYJNA (PAO) · bezpośrednio dostępna dla procesora · zestaw ponumerowanych komórek do przechowywania ciągów binarnych. m 0.

perry
Download Presentation

ARCHITEKTURA KOMPUTERÓW · definicja komputera

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ARCHITEKTURA KOMPUTERÓW ·definicja komputera PAMIĘĆ OPERACYJNA PROCESOR URZĄDZENIA ZEWNĘTRZNE

  2. PAMIĘĆ OPERACYJNA (PAO) ·bezpośrednio dostępna dla procesora ·zestaw ponumerowanych komórek do przechowywania ciągów binarnych m 0 . . . . 0 1 n . . . . . . . .

  3. PROCESOR ·procesor : układ, który samoczynnie realizuje program ·program : ciąg poleceń, które może wykonywać procesor ·polecenie → rozkaz, zapisany jako ciąg binarny ·program → sekwencja (ciąg) rozkazów ·lista rozkazów ( charakteryzuje procesor ) ·lokalizacja programu : PAO ( von Neumann 1946 )

  4. ·podstawowy cykl pracy procesora POBIERZ ROZKAZ Z PAMIĘCI OPERACYJNEJ WYKONAJ ROZKAZ

  5. ·wskazanie rozkazu do wykonania : licznik rozkazów, wskaźnik rozkazu ( rejestr ) POBIERZ ROZKAZ Z PAMIĘCI OPERACYJNEJ WSKAZANY PRZEZ LICZNIK ROZKAZÓW ZMIEŃ ZAWARTOŚĆ LICZNIKA ROZKAZÓW WYKONAJ ROZKAZ ·LR ← LR + 1 LR ← LR + N

  6. KodOp KodOp Arg KodOp Arg1 Arg2 Budowa rozkazu bezargumentowy 1 - argumentowy 2 - argumentowy ·Arg : liczba, adres PAO, ozn. rejestru procesora

  7. Rejestr Rozkazu KodOp R Arg Prosty procesor RR RA RB LR WS ARYTMOMETR + - Rejestr A Rejestr B STEROWANIE Licznik Rozkazów Wskaźnik Stosu

  8. pole KodOp : kod ( numer ) rozkazu • pole R : wskazuje RA ( 0 ) albo RB ( 1 ) • pole Arg : liczba NN albo • adres komórki pamięci AP Rejestr Rozkazu KodOp R Arg

  9. Lista rozkazów, mnemoniczne kody rozkazów rozkazy przesyłania danych SET R, NN MOV R, AP MOV AP, R

  10. rozkazy arytmetyczne ADD R, AP SUB R, AP INC R DEC R rozkazy skoków JMP AP JZ R, AP rozkazy wprowadzania-wyprowadzania danych IN R, NN OUT NN, R

  11. SET R NN 1 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 RR ·postać binarna rozkazu SET RA, 45H ·realizacja rozkazu SET RA, 45H 1.RR ← PAO ( LR ) 2.LR ← LR + 1 3. dekodowanie KodOP 4. RA ← RR.Arg

  12. ·postać binarna rozkazu ADD RB, 5AEH ADD R AP 1 1 0 0 1 1 0 1 1 0 1 0 1 1 1 0 RR ·realizacja rozkazu ADD RB, 5AEH 1.RR ← PAO ( LR ) 2.LR ← LR + 1 3. dekodowanie KodOP 4. RT ← PAO ( RR.Arg ) 5. Arytmometr ← RB, RT, PLUS 6. RB ← Arytmometr

  13. zmiana sekwencji rozkazów ·skok bezwarunkowy JMP +1 85 86 250 251 252 370 371 . . . LR +1 +1 JMP 370 +1 JMP 85

  14. ·wykonanie rozkazu JMP 370 1.RR ← PAO ( LR ) 2.LR ← LR + 1 3. dekodowanie KodOP 4. LR ← RR.Arg ·skok warunkowy JZ RA, 3223 1.RR ← PAO ( LR ) 2.LR ← LR + 1 3. dekodowanie KodOP 4. jeżeli RA == 0 to LR ← RR.Arg

  15. prosty program S = Σ ai 1 ≤ i ≤ n n, a1, a2, ... , an 100 : SET RA, 0 ; zeruj sumę S 101 : MOV 200, RA ; zapamiętaj S 102 : IN RB, 1 ; czytaj n 103 : IN RA, 1 ; czytaj a 104 : ADD RA, 200 ; a + S 105 : MOV 200, RA ; zapamiętaj S 106 : DEC RB ; n – 1 107 : JZ RB, 109 ; skocz gdy n = 0 108 : JMP 103 ; skocz gdy n ≠ 0 109 : OUT 2, RA ; wyprowadź wynik

  16. modyfikacja argumentu rozkazu • adresowanie bezwzględne : • adres PAO = argument • adresowanie względne : • adres PAO = argument + zawartość rejestru • dodatkowe pole w rozkazie KodOP R M Arg RA RB bez modyfikacji modyfikacja przez RA 0 1 0 1

  17. MOV RB, RA + 500

  18. zerowanie obszaru pamięci o długości 2038 bajtów począwszy od adresu 1033 • 300 : SET RB, 2038 ;długość • 301 : MOV 150, RB ;pamiętaj • 302 : MOV RA, 0 ;modyfikator • 303 : MOV RB, 0 ;wartość • 304 : MOV RA + 1033, RB ;zeruj • 305 : INC RA ;modyfikator+1 • 306 : MOV RB, 150 ;odczytaj • 307 : DEC RB ;długość-1 • 308 : MOV 150, RB ;pamiętaj • 309 : JZ RB, 311 ;gdy koniec • 310 : JMP 303 ;powrót • 311 : ;koniec

  19. stos – zapis / odczyt 0 1 wzrost stosu skracanie stosu WS szczyt stosu WS N D D szczyt stosu

  20. PUSH R POP R • ↓ ↓ • PAO ( WS ) ← R WS ← WS + 1 • WS ← WS – 1 R ← PAO ( WS ) • istnieją inne realizacje

  21. X X+1 CALL Y Y . . . RET WS WS X + 1 • stos – wywoływanie podprogramów

  22. CALL AP RET ↓ ↓ PAO ( WS ) ← LR WS ← WS + 1 WS ← WS – 1 LR ← PAO ( WS ) LR ← AP

  23. 0 k-1 0 2k - 1 • ADRESACJA PAMIĘCI • adres • k bitów  2k adresów • n = 2k k = log2 n 1 MB  k = 20 4 GB  k = 32

  24. RAM, ROM, PROM, EPROM, EEPROM, flash ROM • czas zapisu / odczytu : od 10 ns • pojemność (PC) : od 1GB

  25. segmentacja pamięci 0 k-1 0 RPS 0 n-1 0 RAD 2n - 1 k-1 0 RKS n < < k k = 32  4 GB n = 16  16 kB 2k - 1

  26. przeadresator układowy k-1 0 n-1 0 RPS RAD + k-1 0 RAF k-1 0 > RKS DOBRZE 1 program  1 segment 1 program  wiele segmentów BŁĄD

  27. 19 16 15 0 NrSeg NrBajtu Adres pierwotny Adres 32 bity Długość 32 bity błąd 31 0 Adres fizyczny

  28. pamięć wirtualna 100 000 x 250 x

  29. PAO PZ 4kB 4kB 4kB 4kB 4kB 4kB . . . . . . • pamięć wirtualna: • z punktu widzenia programu pamięć adresowana liniowo o dużej pojemności ( np. 40GB ) • realizowana za pomocą pamięci dwupoziomowej : stronicowanie

  30. NrStrony NrBajtu Adres pierwotny Tabela Stron 0 1 Adres strony P • gdy P = 0 system operacyjny sprowadza stronę • 80  90 % trafień Adres fizyczny

  31. pamięć notatnikowa ( cache ) • Procesor  2 GHZ  0,5 ns • RAM  100 ns • 200 x • szybka pamięć pomiędzy procesorem a RAM (10 ns)

  32. Adres fizyczny RAM NrWiersza NrBajtu Pamięć Asocjacyjna Pamięć Danych 128 B 0 NrW 1 128 B NrW . . . . . . 128 B 255 NrW 32 kB tak nie

  33. Pamięć notatnikowa I rzędu Pamięć notatnikowa II rzędu Pamięć operacyjna Pamięć RAM/ROM Pamięć wirtualna Pamięć dyskowa • pamięć hierarchiczna

  34. System przerwań • IN R, NN ; odczyt znaku z klawiatury • Procesor : 1 rozkaz 1 μs * 1000000 = 1 s • Człowiek : 1 znak 1 s * 1000000 = 1000000 s • (ok. 12 dni) • procesor wykonuje inne rozkazy do czasu otrzymania sygnału gotowości urządzenia : • sygnał przerwania

  35. reakcja na sygnał przerwania • składowanie stanu procesora • zawsze w tym samym miejscu • stos systemu operacyjnego • stos programu użytkowego  • ustalenie adresu podprogramu obsługi przerwania • adres zawsze taki sam • adres obliczany na postawie numeru przerwania (wektoryzacja)  • wykonanie programu obsługi przerwania • na końcu podprogramu obsługi przerwania rozkaz powrotu do przerwanego programu (RETI)

  36. POBRANIE ROZKAZU POWIĘKSZENIE LR WYKONANIE ROZKAZU TAK NIE ZAPAMIĘTAJ LR PRZERWANIE ? DO LR WPISZ ADRES PODPROGRAMU OBSŁUGI PRZERWANIA

  37. realizacja procesora • RISC : dla każdego rozkazu zestaw układów cyfrowych • CISC : wewnętrzny mikroprocesor, rozkaz  mikroprogram

  38. kanały danych ( DMA ) DMA Procesor INTR Adres PAO HOLD HLDA Licznik bajtów READ WRITE ACK PAO UZ READ WRITE WRITE READ

  39. architektura PC CD Monitor HD Procesor RAM ROM P. Notat. Ster. Graf. Ster. Dysk MAGI- STRALA Analizator Przerwań DMA Sterownik Magistrali Sterownik Klawiat. Zegar Sterownik USB CHIPSET

  40. udoskonalenia podstawowej pętli pracy procesora • przetwarzanie potokowe • kilka arytmometrów ( stało i zmiennopozycyjnych ) • wykonanie kilku rozkazów równocześnie • ADD RA, 5ADD RA, 25 • ADD RB, 27MOV 100, RA • predykcja skoków pobieranie rozkazu przygotowanie argumentów wykonanie rozkazu RK3 RK2 RK1

  41. . . . RWA . . . A A A RWB . . . • komputery wektorowe i macierzowe

  42. PAO P1 P2 Pn . . . • komputery wieloprocesorowe, wielordzeniowe

  43. Połączenia P1 P2 Pn . . . PAO 1 PAO n PAO 2 . . .

  44. superkomputery www.top500.org (11.2013)

  45. K K K • Sieci Komputerowe • sieć rozległa ARPA od 1957, uruchomienie 1969 • ok. 20 komputerów

  46. K IMP K IMP K IMP • Interface Message Processor

  47. SERWER K K K K • sieci lokalne, lata 70-te

  48. Internet (1983) : globalna sieć komputerowa powstała z połączenia wielu sieci lokalnych za pomocą sieci rozległych (szkieletowych) • wspólna metoda przesyłania danych : protokół TCP/IP • rozproszona struktura własności • Komisja Standaryzacyjna • Komisja Przydzielająca Adresy

  49. Protokół IP : ramki danych , adresy IP NAGŁÓWEK DANE UŻYTKOWE adres IP odbiorcy

  50. adresy IP : 32 bity (4 bajty) • 0 . 0 . 0 . 0 • 255 . 255 . 255 . 255 Ponad 4,2 mld adresów

More Related