ARCHITEKTURA KOMPUTERÓW · definicja komputera

Preview:

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

ARCHITEKTURA KOMPUTERÓW

       definicja komputera

PROCESOR

PAMIĘĆ OPERACYJNA

URZĄDZENIA ZEWNĘTRZNE

PAMIĘĆ OPERACYJNA (PAO)

    bezpośrednio dostępna dla procesora

   zestaw ponumerowanych komórek do przechowywania ciągów binarnych

01

n

m 0

.

.

.

.

. . . .

. . . .

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 )

       podstawowy cykl pracy procesora

POBIERZ ROZKAZ Z PAMIĘCI OPERACYJNEJ

WYKONAJ ROZKAZ

POBIERZ ROZKAZZ PAMIĘCI OPERACYJNEJ

WSKAZANY PRZEZ LICZNIK ROZKAZÓW

WYKONAJ ROZKAZ

ZMIEŃ ZAWARTOŚĆ LICZNIKA ROZKAZÓW

       wskazanie rozkazu do wykonania :

licznik rozkazów, wskaźnik rozkazu ( rejestr )

LR ← LR + 1 LR ← LR + N

Budowa rozkazu

bezargumentowy

1 - argumentowy

2 - argumentowy

       Arg : liczba, adres PAO, ozn. rejestru procesora

KodOp

KodOp

KodOp

Arg

Arg1 Arg2

Prosty procesor

Rejestr A

Rejestr B

Licznik Rozkazów

Wskaźnik Stosu

RR

RA

RB

LR

WS

ARYTMOMETR

+ -

STEROWANIE

KodOp R Arg

Rejestr Rozkazu

• pole KodOp : kod ( numer ) rozkazu

• pole R : wskazuje RA ( 0 ) albo RB ( 1 )

• pole Arg : liczba NN albo

adres komórki pamięci AP

KodOp R Arg

Rejestr Rozkazu

Lista rozkazów, mnemoniczne kody rozkazów

rozkazy przesyłania danych

SET R, NN

MOV R, AP

MOV AP, R

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

    postać binarna rozkazu SET RA, 45H

1 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 RR

SET R NN

    realizacja rozkazu SET RA, 45H

1.  RR ← PAO ( LR )

2.  LR ← LR + 1

3.  dekodowanie KodOP

4.  RA ← RR.Arg

    postać binarna rozkazu ADD RB, 5AEH

1 1 0 0 1 1 0 1 1 0 1 0 1 1 1 0 RR

ADD R AP

       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

zmiana sekwencji rozkazów

       skok bezwarunkowy JMP

LR

JMP 370

+1+1

JMP 85+1

+1

.

.

.

85 86

250251252

370371

       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

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

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

0

1

0

1

RA

RB

bez modyfikacji

modyfikacja przez RA

MOV RB, RA + 500

RA Adres

0 500

1 501

2 502

150 650

151 651

3265 3765

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

• stos – zapis / odczyt

01

WS

NDD

wzroststosu

WS

skracaniestosu

szczyt stosu

szczyt stosu

PUSH R POP R

↓ ↓

PAO ( WS ) ← R WS ← WS + 1

WS ← WS – 1 R ← PAO ( WS )

istnieją inne realizacje

• stos – wywoływanie podprogramów

CALL YXX+1

RET

Y

.

.

.

WS

X + 1

WS

CALL AP RET

↓ ↓

PAO ( WS ) ← LR WS ← WS + 1

WS ← WS – 1 LR ← PAO ( WS )

LR ← AP

ADRESACJA PAMIĘCI

adres

k bitów 2k adresów

n = 2k k = log2 n

0

2k - 1

k-1 0

1 MB k = 20 4 GB k = 32

RAM, ROM, PROM, EPROM, EEPROM, flash ROM

czas zapisu / odczytu : od 10 ns

pojemność (PC) : od 1GB

• segmentacja pamięci

2k - 1

0

2n - 1

0

0

0

k-1

k-1

n-1

RPS

RAD

RKS

0

n < < kk = 32 4 GBn = 16 16 kB

RPS RAD

k-1 0 n-1 0

+

k-1 0

RAF

> k-1 0

RKS DOBRZE

BŁĄD

• przeadresator układowy

1 program 1 segment

1 program wiele segmentów

NrSeg NrBajtu

19 16 15 0

Adres pierwotny

Adres 32 bity Długość 32 bity

błąd

31 0

Adres fizyczny

• pamięć wirtualna

Czas dostępu Pojemność

Pamięć RAM 100 ns 2 GB

Pamięć dyskowa 10 ms 500 GB

100 000 x 250 x

pamięć wirtualna:

● z punktu widzenia programu pamięć adresowana liniowo o dużej pojemności ( np. 40GB )

● realizowana za pomocą pamięci dwupoziomowej :

stronicowanie

PAO PZ

.

.

.

.

.

.

4kB

4kB

4kB

4kB

4kB

4kB

NrStrony NrBajtu Adres pierwotny

Tabela Stron

Adres strony P

Adres fizyczny

0

1

• gdy P = 0 system operacyjny sprowadza stronę

• 80 90 % trafień

pamięć notatnikowa ( cache )

Procesor 2 GHZ 0,5 ns

RAM 100 ns

200 x

• szybka pamięć pomiędzy procesorem a RAM (10 ns)

NrWiersza NrBajtu

Adres fizyczny RAM

Pamięć Asocjacyjna Pamięć Danych

NrW

NrW

NrW

128 B

128 B

128 B

.

.

.

.

.

.

tak nie

0

255

1

32 kB

● pamięć hierarchiczna

Pamięćnotatnikowa

I rzędu

PamięćRAM/ROM

Pamięćdyskowa

Pamięćnotatnikowa

II rzędu

Pamięć operacyjna

Pamięć wirtualna

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

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)

POBRANIE ROZKAZU

POWIĘKSZENIE LR

WYKONANIE ROZKAZU

PRZERWANIE ?NIE ZAPAMIĘTAJ

LR

DO LRWPISZ ADRES

PODPROGRAMU OBSŁUGI

PRZERWANIA

TAK

realizacja procesora

– RISC : dla każdego rozkazu zestaw układów cyfrowych

– CISC : wewnętrzny mikroprocesor, rozkaz mikroprogram

• kanały danych ( DMA )

Adres PAO

Licznik bajtów

DMA

Procesor

INTR

HOLD

HLDA

PAO

READ WRITE

READ

WRITE UZ

ACK

WRITE

READ

• architektura PC

MAGI-

STRALA

Procesor RAM ROM P. Notat. Ster. Graf. Ster. Dysk

Monitor HD

CD

Sterownik

Magistrali

Sterownik

Klawiat.

Zegar Analizator

Przerwań

DMA Sterownik

USB

CHIPSET

udoskonalenia podstawowej pętli pracy procesora

– przetwarzanie potokowe

– kilka arytmometrów ( stało i zmiennopozycyjnych )

– wykonanie kilku rozkazów równocześnie

ADD RA, 5 ADD RA, 25

ADD RB, 27 MOV 100, RA

– predykcja skoków

pobieranie rozkazu

przygotowanie argumentów

wykonanie rozkazu

RK3 RK2 RK1

. . .

. . .

RWA

RWB

A A A . . .

• komputery wektorowe i macierzowe

• komputery wieloprocesorowe, wielordzeniowe

PAO

P1 P2 Pn . . .

Połączenia

P1 P2 Pn . . .

PAO 1

PAO 2

PAO n

. . .

• superkomputery www.top500.org

(11.2011)

1. K computer, RIKEN Advanced Institute for Computational Science (AICS), Japan, SPARC64 VIIIfx 2.0GHz, Tofu interconnect, 10.5 PFlop/s, Fujitsu

• NUDT YH MPP, National Supercomputing Center in Tianjin, China, Xeon X5670 6C, 2.93 GHz, NVIDIA 2050, 2.5 PFlop/s, NUDT

• Cray XT5-HE, DOE/SC/Oak Ridge National Laboratory, United States, Opteron 6-core, 2.6 GHz, 2.3 PFlop/s, Cray Inc.

ad 1.

– SPARC64 VIIIfx, 2.0GHz, 8 rdzeni, 45 nm CMOS

– 88128 procesorów, 705024 rdzeni

– 864 obudowy, w obudowie:

102 procesory SPARC,

6 procesorów I/O,

– dla każdego procesora SPARC 16GB PAO, razem 1,4 PB

– pobór mocy elektrycznej 12.7 MW

– układ połączeń : 6-wymiarowy torus

– system operacyjny : Linux

– moc obliczeniowa 10.5 PFlop/s (sprawność 93,2%)

Sieci Komputerowe

• sieć rozległa ARPA od 1957, uruchomienie 1969

• ok. 20 komputerów

K K K

• Interface Message Processor

K

K

K

IMP

IMP

IMP

• sieci lokalne, lata 70-te

SERWER

K K K K

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

• Protokół IP : ramki danych , adresy IP

NAGŁÓWEK DANE UŻYTKOWE

adres IP odbiorcy

adresy IP : 32 bity (4 bajty)

0 . 0 . 0 . 0

255 . 255 . 255 . 255

ponad 4,2 mld

adresów

grupy adresów nr_sieci | nr_komputera

– A : 1 126 | ok. 17 mln komputerów

126 sieci

– B : 128 191 | ok. 65 tys. komputerów

ok. 16 tys. sieci

– C : 192 223 | 254 komputery

ok. 2 mln sieci

adres sieci Komisja

adres komputera administrator sieci : ustawić w systemie operacyjnym

sieci prywatne 192.168.x.x

dynamiczny przydział adresu IP : DHCP

IPv4 IPv6 : adres 128 bitów

numery portów 150.254.56.12:3422

• przełącznik trasujący (router) tablice trasowania (routing)

RR

RR

R

R

R

K K

K K

K K

Usługi Internetu

przesyłanie plików : ftp ftp.man.poznan.pl

poczta elektroniczna

zdalna praca : telnet, putty, ssh

strony WWW

WWW

Timothy B. Lee, CERN, 1991

– plik powitanie/info

– automatyczne sprowadzanie/wyświetlanie

– stała nazwa : index.html

– strona WWW plik danych

podział na

– serwery WWW przechowują i udostępniają strony (pliki)

– terminale WWW sprowadzają i wyświetlają

strony (pliki)

oprogramowanie

– serwer WWW Apache, IIS

– przeglądarka WWW Internet Explorer, Chrome

Netscape, Mozilla, Opera, Firefox

nazwy serwerów WWW URL

www.wp.pl www.microsoft.com

kraj rodzaj

podstawowe domeny

.com .edu .net .gov .org .......

domena

główna

nazwy stron WWW URL

www.news.info/info5-html

zamiana URL IP : serwery DNS

K

DNS

S

IPDNS | URLS IPK | IPS

IPS | URLS

IPK | plik

rezerwacja domen

– Polska NASK, ...

domena regionalna .poznan.pl : 50 zł/rok

domena funkcjonalna .com.pl : 150 zł/rok

domena ogólnopolska .onet.pl : 200 zł/rok

– USA BetterWhois.com lista firm, $20/rok

• dostęp do Internetu

– modem analogowy 56 kb/s ~ 5 kB/s

komputer modem komputermodem

l. telef.

f [Hz] 500 700

"0" "1"

– modem cyfrowy ADSL wiele kanałów częstotliwościowych

– max 6144 kb/s ~600 kB/s ok. 4 km

– Neostrada 1024/256 , ... , 4096/1024kb/s

– częstotliwości ortogonalne

N1

N2

O3

N4

N247

O1

O2

N3

O4

O247

f1

f2

f3

f4

f247

f1

f2

f3

f4

f247

KLIENT SIEĆ

– łącze kablowe

skrętka do 1Gb/s

światłowód do 10 Gb/s

– łącza radiowe

Bluetooth 1 Mb/s 2.4 GHz 10 m

WiFi 802.11b 11 Mb/s 2.4 Ghz 30 m Hot Spot

GSM :

GPRS ok. 50 kbit/s,

EDGE do 240 kbit/s

UMTS do 14,4 Mbit/s.

LTE do 300 Mbit/s

Sieć naukowa PIONIER (10 GB/s)

• struktura warstwowa sieci komputerowej

– model warstwowy

Prezes Prezes

Tłumacza w

Tłumaczb a

Sekretarka Sekretarka

Mejl Mejl

WĘGRY BIRMA

• struktura warstwowa sieci komputerowej

– model warstwowy OSI

prezentacji

sesji

transport.

sieciowa

łączadanych

fizyczna

prezentacji

sesji

transport.

sieciowa

łączadanych

fizyczna

aplikacjiaplikacji

– fizyczna : transmisja bitów

– łącza danych : ramki, poprawność, potwierdzenia

retransmisje

– sieciowa : trasa transmisji ramki

– transportowa : podział danych na bloki, przesył w odpowiedniej kolejności, szyfrowanie

– sesji : sterowanie dialogiem partnerów

– prezentacji : definicja formatu danych i ich transformacja dla aplikacji

– aplikacji : dostęp do sieci dla aplikacji partnerów

transmisja danych do/z urządzeń zewnętrznych

łącze równoległe

– 25-pin, DATA[ 8 ] , STROBE/, ACK/ , BUSY

– "1" +5V , "0" 0V

– prędkość dla trybu Centronics ok. 50 - 150 kB/s

– ECP, EPP prędkość 0.5 - 115 MB/s

łącze szeregowe RS232C

– asynchroniczna transmisja szeregowa

S 0 1 0 1 0 1 1 0 P K

TxD

K1 RxD

GND

TxD

RxD K2

GND

– "1" -3 ÷ -25V , "0" +3 ÷ +25V

– prędkości 150, 300, 600, 1200, 2400, 4800 9600, 19200, 38400, 115200 b/s

łącze PS2

– klawiatura i myszka

6-pin Mini-DIN (PS/2):

1 – Data2 - Nothing 3 - Ground4 - Vcc (+5V)5 - Clock

6 - Nothing

port USB

– szybkie łącze szeregowe

– "1" D+ != D- ; "0" D+ == D-

– USB 1.0 12 Mb/s ; USB 2.0 480 Mb/s

łącze ThunderBolt

– bardzo szybkie łącze szeregowe

10 Gbit/s – kabel miedziany do 100 m

100 Gbit/s – kabel światłowodowy

Recommended