background image

 

 

Wstęp do Informatyki 

Wykład 2

Komputer von 

Neumana

Autor: Dr hab. Marek J. Greniewski

background image

 

 

Podręcznik do wykłady

• William Stallings

• Organizacja i architektura 

systemu komputerowego – 
projektowanie systemu a jego 
wydajność

• Wydanie drugie 2000 lub trzecie 2004
• Wydawnictwo Naukowo-Techniczne

background image

 

 

Przykład pytań 

egzaminacyjnych

• Na czym polegała idea komputera von Neumana? 
• Przedstaw strukturę komputera von Neumana.
• Podaj formaty słów przechowywanych w pamięci komputera IAS.
• Jakie rejestry posiadał komputer IAS (podaj liczbę rejestrów i 

ich nazwy)?

• Z ilu instrukcji składała się lista rozkazów komputera IAS i na ile 

grup była podzielona? 

• Wymień nazwy rozkazów grup rozgałęzień bezwarunkowych i 

warunkowych komputera IAS i opisz ich funkcjonalność.

• Wymień nazwy rozkazów grupy przenoszenia danych komputera 

IAS i opisz ich funkcjonalność.

• Wymień nazwy rozkazów grupy arytmetycznej komputera IAS i 

opisz ich funkcjonalność.

• Narysuj i opisz graf stanów komputera IAS.
• Czym różnią się pojęcia organizacji i architektury komputerów?

background image

 

 

Przykład pytań 

egzaminacyjnych

• Jakie układy kombinacyjne można zbudować korzystając z 

bramki typu NAND, a jakie korzystając z bramki typu NOR?

• Podaj dwa prawa DeMorgana i ich tabliczki zerojedynkowe. 
• Podaj przykład prostego układu kombinacyjnego wraz z 

tabliczką zerojedynkową.

• Podaj przykład układu Multiplexera o czterech wejściach. 
• Do czego używane są Multiplexery w komputerach? 
• Podaj przykład układu Decoder o czterech wyjściach. 
• Do czego używane są układy Decoder w komputerze?
• Wymień znane typy przerzutników i narysuj ich schematy? 
• Dla każdego typu przerzutnika podaj tabliczkę zerojedynkową.

background image

 

 

Przykład pytań 

egzaminacyjnych

• Czym różnią się układy kombinacyjne od układów 

sekwencyjnych?

• Wyjaśnij rolę przerwań w komputerze 
• Narysuj graf stanów komputera z obsługą przerwań. 
• Wymień podstawowe moduły komputera i wyjaśnij przeznaczenie 

magistrali systemowej. 

• Podaj znane Ci metody koordynacji czasowej działania magistrali 

i wymień ich zalety i wady.

• Jakie rodzaje linii zawiera szyna uniwersalna komputera? 
• Jaka jest rola i działanie układ arbitrażu? 
• Wyjaśnij do czego służą linie sterowania magistrali - na 

przykładzie magistrali PCI. 

• Wyjaśnij co rozumiemy pod pojęciem przerwania wielokrotnego i 

jak należy zorganizować obsługę dopuszczającą ich wystąpienie.

• Jak działa układ DMA?

background image

 

 

Przykład pytań 

egzaminacyjnych

• Czym różnią się statyczne i dynamiczne pamięci RAM? 
• Jakie znasz typy odświeżania pamięci dynamicznych RAM?
• Wymień znane Ci sposoby dostępu do pamięci komputerowej. 
• Wyjaśnij na czym polega działanie pamięci asocjacyjnej cache.
• Wymień podstawowe różnice pomiędzy pamięcią cache i 

pamięcią wirtualną.

• Opisz funkcjonalność procesora. 
• Do czego służy pamięć typu cache i jak taka pamięć może być 

usytuowana w stosunku do szyny głównej i procesora? 

• Opisz mechanizm pamięci wirtualnej komputera. 
• Podaj zasady działania potokowego jednostki arytmetyczno-

logicznej procesora.

• Na czym polega kodowanie binarnych liczb ujemnych o 5 

cyfrach binarnych przez uzupełnienie do 2

6

background image

 

 

Przykład pytań 

egzaminacyjnych

• Jak kodowane są w komputerze liczby zmienno-przecinkowe?
• Wymień problemy pojawiające się w toku wykonywania operacji 

zmiennoprzecinkowych. 

• Opisz funkcje poszczególnych bitów rejestru F mikroprocesora 

PENTIUM. 

• Wyjaśnij na czym polega działanie kodu Hemminga dla M = 4 i K = 1.
• Wymień znane Ci systemy kodowania binarnego znaków stosowanych w 

komputerach. 

• Czym różni się system binarny przedstawiania liczb naturalnych od 

systemu dziesiętnego?

• Omów własności stosu i związek stosu z podstawowymi rejestrami 

procesora.

• Wymień elementy składowe instrukcji komputera i podaj występujące we 

współczesnych komputerach formaty instrukcji. 

• Wymień różnice pomiędzy formatami: trzyadresowym, dwuadresowym, 

jednoadresowym oraz bez-adresowym.

• Co to są instrukcje (rozkazy) uprzywilejowane komputera i kiedy są 

używa?

background image

 

 

Przykład pytań 

egzaminacyjnych

• Co rozumiemy pod pojęciem procesu realizowanego przez 

komputer? 

• Narysuj i opisz graf zmiany stanów procesów w wielozadaniowym 

systemie operacyjnym. 

• Podaj listę najważniejszych funkcji i tablic wieloprogramowego 

systemu operacyjnego. 

• Podaj listę różnic (specyficznych funkcji) różniących 

wieloprocesorowy system operacyjny od systemu 

jednoprocesorowego.

• Podaj miejsce lokalizacji i zasady działania programowanej jednostki 

sterującej komputera. 

• Podaj zasady działania potokowego jednostki sterującej procesora.
• Opisz działanie Pipeline dla instrukcji wykonywanych w pięciu 

krokach (Feach, Decode_1, Decode_2, Execute, Write).

• Jakie warianty rozkazów - ładuje logiczna jednostka szeregowania 

do rejestru adresów sterowania?

• Wyjaśnij na czym polega różnica pomiędzy mikrorozkazem 

poziomym a mikrorozkazem pionowym. 

• Podaj format poziomej i pionowej mikroinstrukcji sterującej.

background image

 

 

Przykład pytań 

egzaminacyjnych

• Podaj i omów sygnały kierujące działaniem jednostki sterującej. 
• Podaj i omów sygnały sterujące generowane przez jednostkę 

sterującą. 

• Przedstaw kroki cyklu pobierania jednostki sterującej.
• Jak opiszesz różnice pomiędzy komputerami typu RISC a 

komputerami typu CISC? 

• Podaj przykłady komputera RISC i komputera CISC. 
• Co to jest Firmware, np. w komputerze RISC i do czego służy? 
• Dlaczego komputer RISC sprawniej obsługuje układ przerwań? 
• Podaj znane Ci techniki przyśpieszania pracy procesora.
• Opisz do czego służy tablica historii rozgałęzień wykonywanego 

programu. 

• Wymień podstawowe własności systemów rozproszonych. 

background image

 

 

Przykład pytań 

egzaminacyjnych

• Podaj podstawowe metody łączenia modułów (pamięci i 

procesorów) wielo-procesora. 

• Opisz schemat współpracy w systemie klient - serwer.
• Podaj zasady działania super-komputera i różnice w porównaniu 

z komputerem super-skalarnym.

• Wymień podstawowe różnice pomiędzy komputerem skalarnym, 

super-skalarnym i wektorowym.

• Podaj listę komponentów pasywnych i aktywnych sieci 

komputerowej. 

• Wymień podstawowe topologie sieci. 
• Jakie właściwości różnią technologie Ethernet i TokenRing? 
• Przedstaw różnice pomiędzy modelem warstwowym ISO/OSI a 

stosem protokołów TPC/IP. 

• Podaj listę najpopularniejszych protokołów sieciowych i wskaż, 

które z nich są rutowalne, a które nierutowalne.

• Wyjaśnij czym różnią się sieci lokalne od globalnych. Podaj 

przykład sieci globalnej.

background image

 

 

Plan nauczania

1. Wprowadzenie, komputer von Neumana, 

komputer skalarny

2. Cyfrowe układy logiczne (kombinacyjne i 

sekwencyjne)

3. Magistrale systemowe i sterowanie urządzeniami 

we-wy

4. Pamięć wewnętrzna
5. Podstawy systemów operacyjnych
6. Arytmetyka komputera
7. Procesor i listy rozkazów procesorów
8. Komputery CISC a RISC
9. Jednostka sterująca komputera
10. Systemy wieloprocesorowe i wielo-komputery
11. Sieci komputerowe oraz system klient serwer.

background image

 

 

Krótki zarys historii 

• Prekursorzy podstaw techniki obliczeniowej i informatyki.
• Pionierzy komputerów (John von Neuman i Alan Turing)  i 

podstaw programowania, w tym programowania 

symbolicznego oraz pierwszych aplikacji.

• Druga generacja technicznych komputerów i kompilatorów 

języków wyższego rzędu (FORTRAN, COBOL) oraz metod 

zarządzania przedsięwzięciami (PERT, CPM).

• Trzecia generacja komputerów, systemów operacyjnych i 

systemów zarządzania bazami danych oraz powstania 

zaawansowanych programów aplikacyjnych.

• Superkomputery – czyli komputery wektorowe.
• Komputery czwartej generacji technicznej, systemu 

operacyjnego UNIX, jeżyka programowania C i zalążków 

sieci komputerowych w tym protokółów TCP/IP.

• Komputery osobiste, edytorów tekstów, arkuszy 

kalkulacyjnych i lokalne sieci komputerowe.

• Okres rewolucji Internet, powstania technologii Data 

Warehousing, technologii CRM oraz e-Business’u.

background image

 

 

Koncepcja Johna von Neumanna

• W 1945 roku po raz pierwszy została opublikowana idea 

komputera, który w pamięci wewnętrznej przechowuje 

program – według którego działa komputer, jest ona 

przypisywana jednemu z konsultantów projektu ENIAC – 

amerykańskiemu matematykowi węgierskiego 

pochodzenia John'owi von Neumanowi.

• Idea ta, znana jako koncepcja przechowywania 

programu, jest podstawą działania współczesnych 

komputerów.

• Należy wspomnieć, że niemal w tym samym czasie 

podobna koncepcja została opracowana również przez 

brytyjskiego matematyki Alana Turinga. 

• Według tej idei opracowany został projekt nowego 

komputera von Neumana – nazwanego EDVAC 

(Electronic Discrete Variable Computer).

background image

 

 

1. Wspólna pamięć do przechowywania zarówno 

rozkazów jak i danych.

2. Pamięć jednowymiarowa, złożona z kolejno 

ponumerowanych komórek o jednakowej wielkości.

3. Brak jawnego rozróżniania rozkazów i danych.

4. Brak jawnej specyfikacji typów danych.

5. Praca sekwencyjna - przed rozpoczęciem 

wykonywania kolejnego rozkazu musi zostać 
zakończone wykonywanie rozkazu chronologicznie 
poprzedniego. 

6. Każdy rozkaz określa jednoznacznie adres 

następnego.

Architektura von Neumanna

background image

 

 

A. Pięć zasad komputera 

wg von Neumanna

Po pierwsze, ponieważ urządzenie to jest przede 
wszystkim komputerem, najczęściej będzie 
wykonywało elementarne operacje matematyczne - 
dodawanie, odejmowanie, mnożenie, dzielenie. Jest 
więc rozsądne, że powinno posiadać 
wyspecjalizowane "organy" do
wykonywania tych operacji.
Należy jednak zauważyć, że chociaż powyższa 
zasada jako taka brzmi rozsądnie, to szczegółowy 
sposób jej realizacji wymaga głębokiego 
zastanowienia[...].
W każdym przypadku centralna, arytmetyczna część 
urządzenia będzie prawdopodobnie musiała istnieć, 
co oznacza występowanie pierwszej specyficznej 
części komputera: CA
.

background image

 

 

B. Pięć zasad komputera 

wg von Neumanna

Po drugie, logiczne sterowanie urządzeniem, to 
znaczy odpowiednie szeregowanie jego operacji 
może być najefektywniej realizowane przez 
centralny organ sterujący. Jeżeli urządzenie ma być 
elastyczne, to znaczy możliwie uniwersalne, należy 
rozróżniać specyficzne rozkazy związane z 
określonym problemem i ogólne "organy" sterujące, 
dbające o wykonanie tych rozkazów - czymkolwiek 
by one nie były. 
Te pierwsze muszą być w jakiś sposób 
przechowywane; te drugie - reprezentowane przez 
określone działające części urządzenia. Przez 
sterowanie centralne rozumiemy tylko tę ostatnią 
funkcję, a "organy", które ją realizują, tworzą drugą 
specyficzną część urządzenia: CC
.

background image

 

 

C. Pięć zasad komputera 

wg von Neumanna

Po trzecie, jakiekolwiek urządzenie, które ma 
wykonywać długie i skomplikowane sekwencje 
działań (w szczególności obliczeń), musi mieć 
odpowiednio dużą pamięć[...].
Rozkazów kierujących rozwiązywaniem 
skomplikowanego problemu może być bardzo 
dużo, zwłaszcza wtedy, gdy kod jest 
przypadkowy (a tak jest w większości 
przypadków).
Muszą one być pamiętane [...]

background image

 

 

D. Pięć zasad komputera 

wg von Neumanna

Trzy specyficzne części CA, CC (razem C) oraz M 
odpowiadają neuronom skojarzeniowym w systemie 
nerwowym człowieka. 
Pozostają do przedyskutowania równoważniki 
neuronów sensorycznych (doprowadzających) i 
motorycznych (odprowadzających). 
Są to "organy„ wejścia i wyjścia naszego urządzenia.
Urządzenie musi mieć możliwość utrzymania 
kontaktu z wejściem i wyjściem za pomocą 
specjalistycznego narzędzia. 
Narzędzie to będzie nazwane zewnętrznym 
narzędziem rejestrującym urządzenia: R 
[...]

background image

 

 

E. Pięć zasad komputera 

wg von Neumanna

Po czwarte urządzenie musi być wyposażone w 
organy przenoszące [...] informację z R do swoich 
specyficznych części C i M. "Organy" te stanowią 
jego wejście, a więc czwartą, specyficzną część: 
I
. Zobaczymy, że najlepiej jest dokonywać 
wszystkich przeniesień z R (poprzez I) do M, a 
nigdy bezpośrednio do C [...]

background image

 

 

F. Pięć zasad komputera 

wg von Neumanna

Po piąte, urządzenie musi mieć "organy" służące 
do przenoszenia [...] ze swoich specyficznych 
części C i M do R. 
Organy te tworzą jego wyjście, a więc piątą 
specyficzną część: O
. Zobaczymy, że znowu 
najlepiej jest dokonywać wszystkich transferów z 
M (poprzez O) do R, nigdy zaś bezpośrednio z C 
[...]

background image

 

 

Struktura komputera von 

Neumanna

background image

 

 

Pierwsza działająca 

realizacja

• Pierwszym w pełni działającym komputerem wg 

idei von Neumanna był zbudowany w Wielkiej 

Brytanii komputer EDSAC zbudowany przez zespół 

kierowany przez M. Wilkesa.

• Komputera EDSAC został uruchomiony w 1951 

roku.

• Komputera EDSAC był pełną realizacją projektu 

EDVAC.

background image

 

 

Komputer IAS

• W roku 1946 von Neumann w Princeton Institute 

for Advanced Studies rozpoczął projektowanie 
komputera, który wykorzystywał program 
przechowywany w pamięci. 

• Komputer ten nazwano IAS od nazwy Institute for 

Advanced Studies i był on prototypem wszystkich 
współczesnych komputerów o ogólnym 
przeznaczeniu.

• Komputer IAS został w pełni uruchomiony w 1952 

roku.

background image

 

 

Części składowe komputera 

IAS

• Pamięć główna (

Memory

) - w pamięci 

przechowywane są dane oraz rozkazy.

• Jednostka arytmetyczno-logiczna (

Arithmetical & 

Logical Unit

) - wykonuje działania arytmetyczne i 

logiczne na danych binarnych.

• Jednostka sterująca (

Control Unit

) - interpretuje i 

wykonuje rozkazy pobierane z pamięci.

• Urządzenia wejścia/wyjścia (

Input / Output Unit

) - 

ich pracą kieruje jednostka sterująca.

background image

 

 

Charakterystyka komputera 

IAS

• Pamięć komputera IAS składała się z 1000 miejsc 

przechowywania, zwanych słowami, z których każde 

zawierało 40 cyfr binarnych (bitów).

• W pamięci komputera IAS przechowywane były 

zarówno liczby (dane), jak i rozkazy.

• Liczby były prezentowane w formie binarnej, podobnie 

każdy rozkaz był zapisywany w formie binarnej.

• Każda liczba była reprezentowana przez bit znaku i 

39-bitową wartość bezwzględną (mantysę).

• Słowo mogło zawierać dwa 20-bitowe rozkazy, przy 

czym każdy rozkaz składał się 8-bitowego kodu 

operacji (określającego operację), oraz 12-bitowego 

adresu określającego jedno ze słów pamięci 

(ponumerowanych od 0 do  999).

background image

 

 

Formaty pamięci komputera 

IAS

Rozkaz lewy

Rozkaz prawy

0                8                          19 20             28                         39

   Kod                  Adres          Kod                 Adres 
operacji                                operacji

Bit znaku

  0   1                                                                                        39  

(a) Słowo danych (liczba)

(b) Słowo rozkazów

background image

 

 

Schemat blokowy komputera 

IAS

Urządzenia

wejścia

- wyjścia

I/O

Pamięć
główna

M

Jednostka centralna -procesor 

Jednostka arytmetyczno-
logiczna ALU

Jednostka sterująca CU

MBR

Układy ArytmLog

AC

MQ

IBR

IR

MAR

PC

Układy

sterujące

Sygnały 
sterujące

Rozkazy

i dane

background image

 

 

Rejestry komputera IAS

• MBR

 – rejestr buforowy pamięci (Memory Buffer Register)

• MAR

 – rejestr adresowy pamięci (Memory Address 

Register)

• IR

 – rejestr rozkazów (Instruction Register)

• IBR

 – rejestr buforowy rozkazów (Instruction Buffer 

Register)

• PC

 – licznik programu (Program Counter)

• AC

 – akumulator - rejestr wyników operacji 

arytmetycznych oraz logicznych (Accumulator Counter)

• MQ

 – rejestr mnożenia dzielenia (Multiplier-Quotier 

Register)

     Uwaga: np. wynikiem mnożenia dwóch liczb 40-

bitowych, jest liczba 80-bitowa. 40 bardziej znaczących 

bitów jest w rejestrze AC, natomiast 40 mniej znaczących 

bitów znajduje się w rejestrze MQ.

background image

 

 

Rozkazy komputera IAS

• Komputer IAS miał łącznie 21 różnych rozkazów.
• Rozkazy komputera IAS podzielono na 5 grup:

– Przenoszenie danych

. Należą tu rozkazy przesyłania danych 

pomiędzy pamięcią a rejestrami ALU lub pomiędzy dwoma 

rejestrami ALU.

– Rozgałęzienia bezwarunkowe

. Zwykle jednostka sterująca 

wykonuje szeregowo rozkazy pochodzące z kolejnych miejsc 

pamięci. Sekwencja rozkazów może być zmieniona przez 

rozkaz skoku. Umożliwia to wykonywanie sekwencji 

powtarzalnych rozkazów.

– Rozgałęzienia warunkowe

. Skoki mogą być wykonywane 

zależnie od spełnienia pewnego warunku, co oznacza 

występowanie punktów decyzyjnych programu.

– Arytmetyka

. Operacje wykonywane przez ALU.

– Modyfikowanie adresu

. Należą tu rozkazy, które po obliczanie 

adresów w ALU, umożliwiają wstawienie tych adresów do 

rozkazów przechowywanych w pamięci.

background image

 

 

Rozkazy przenoszenia 

danych

Kod 

operacji

Symbol

Opis

00001010

Load MQ

Przenieś zawartość MQ do AC

00001001

Load 

MQ,M(X)

Przenieś słowo X pamięci do 

MQ

00100001

Stor M(X)

Zapamiętaj AC w słowie X 

pamięci

00000001 Load M(X)

Przenieś słowo X pamięci do 

AC

00000010 Load – M(X)

Przenieś – (słowo X) pamięci 

do AC

00000011 Load |M(X)|

Przenieś |słowo X| pamięci do 

AC

00000100

Load - |

M(X)|

Przenieś - |słowo X| pamięci 

do AC

background image

 

 

Rozkazy rozgałęzień 

bezwarunkowych

Kod 

operacji

Symbol

Opis

0000110

1

Jump 

M(X,0:19)

Pobierz następny rozkaz 

z lewej połowy słowa 

M(X) pamięci

0000111

0

Jump 

M(X,20:39)

Pobierz następny rozkaz 

z prawej połowy słowa 

M(X) pamięci

background image

 

 

Rozkazy rozgałęzień 

warunkowych

Kod 

operacji

Symbol

Opis

0000111

1

Jump 

+M(X,0:19)

Jeśli zawartość AC > 0 

pobierz następny rozkaz 

z lewej połowy słowa 

M(X) pamięci

0001000

0

Jump 

+M(X,20:39)

Jeśli zawartość AC > 0 

pobierz następny rozkaz 

z prawej połowy słowa 

M(X) pamięci

background image

 

 

Rozkazy arytmetyki

Kod 

operacji

Symbol

Opis

0000010

1

Add M(X)

Dodaj M(X) do AC, wynik 

w AC 

0000011

1

Add |M(X)|

Dodaj |M(X)| do AC, 

wynik w AC

0000011

0

Sub M(X)

Odejmij M(X) od AC, 

wynik w AC

0000100

0

Sub |M(X)|

Odejmij |M(X)| od AC, 

wynik w AC

0000101

1

Mul M(X)

Pomnóż M(X) przez MQ, 

wynik w AC pierwszych 

40 bitów, pozostałe 40 

bitów umieść w MQ

0000110

0

Div M(X)

Podziel zawartość AC 

przez M(X), wynik w MQ, 

reszta w AC

0001010

1

LSH

Pomnóż AC przez 2

0001001

0

RSH

Podziel AC przez 2

background image

 

 

Rozkazy modyfikowania 

adresu

Kod 

operacji

Symbol

Opis

0001001

0

Store 

M(X,8:19)

Zamień pole adresowe 

lewego rozkazu słowa 

M(X) pamięci na 

zawartość części  AC

0001001

1

Store 

M(X,28:39)

Zamień pole adresowe 

prawego rozkazu słowa 

M(X) pamięci na 

zawartość części  AC

background image

 

 

Architektura komputera

• Pojęcie architektury komputera odnosi się do 

tych atrybutów systemu, które są widziane 
przez programistę.

• Innymi słowy, atrybuty te mają bezpośredni 

wpływ na logikę wykonywanego programu.

• Przykładami atrybutów architektury są:

– Lista rozkazów
– Liczba bitów wykorzystywanych do prezentacji 

różnych typów danych (np. liczb czy znaków)

– Mechanizmy układów wejścia-wyjścia
– Metody adresowania pamięci.

background image

 

 

Organizacja komputera

• Pojęcie organizacji komputera odnosi się do 

jednostek operacyjnych i ich połączeń, które 
stanowią realizację specyfikacji typu architektury. 

• Przykładami atrybutów organizacji są:

– Rozwiązania sprzętowe niewidoczne dla programisty, 

takie jak sygnały sterujące

– Interfejsy pomiędzy procesorem, a urządzeniami 

wejścia-wyjścia

– Wykorzystywane technologie pamięci.

background image

 

 

Generacje komputerów

Genera

cja

Lata

Technologia

Typowa 

szybkość

(operacji / 

sekundę)

1

1946-

1957

Lampy próżniowe

40.000

2

1958-

1964

tranzystory

200.000

3

1965-

1971

Małą i średnia skala 

integracji

1.000.000

4

1972-

1977

Wielka skala integracji

10.000.000

5

1978-???

?

Bardzo wielka skala 

integracji

100.000.000

background image

 

 

Współczesne komputery 

osobiste

background image

 

 

Podział na części architektoniczną i 

układową współczesnego komputera

Układy we-wy

Procesor

Kompilator

System

operacyjny

(Windows 2K)

Aplikacje (np. Netscape)

Układy cyfrowe

Obwody 

scalone

Lista rozkazów

określająca architekturę

Ścieżki danych i sterowanie

 

Bramki i 

elementy 

pamięci 

Pamięć

Hardware

Software

Assemble
r

background image

 

 

background image

 

 

Procesor

• Procesor jest centralną częścią systemu komputerowego.
• Procesor wykonuje następujące czynności:

– Pobiera rozkazy z pamięci.
– Interpretuje i wykonuje poszczególne rozkazy 
– Pobiera dane - z pamięci lub modułu wejścia-wyjścia.
– Przetwarza dane – czyli wykonuje na danych pewne operacje 

arytmetyczne lub logiczne.

– Zapisuje dane - w pamięci lub module wejścia-wyjścia.

• Cztery główne części składowe procesora:

– Jednostkę arytmetyczno-logiczną (ALU) - ta część procesora jest 

odpowiedzialna za wykonanie obliczeń i przetwarzanie danych.

– Jednostkę sterującą (CU) - kieruje ona ruchem danych i rozkazów 

do/z procesora i steruje pracą ALU.

– Rejestry i pamięć podręczna- część pamięci wewnętrznej 

uprzywilejowanej wykorzystywanej przez procesor do adresowania, 

odczytu danych, itp.

– Układ powiązań pomiędzy trzema wyżej wymienionymi częściami 

procesora oraz pozostałymi modułami komputera. W komputerach 

skalarnych ma postać tzw.magistrali systemowej.

background image

 

 

Struktura wewnętrzna CPU 

(procesora)

background image

 

 

Magistrala zewnętrzna 

procesora

background image

 

 

Części składowe ALU

• Układy realizujące operacje arytmetyczne i 

logiczne na danych.

• Układ przesuwania: 

Arytmetycznego danych, w lewo albo prawo

Logicznego (cyklicznego) danych, w lewo albo  
prawo.

• Układ zmiany znaku, tzw. układ dopełniania.
• Generator tzw. znaczników stanu (flag) 

wyników operacji arytmetycznych, logicznych 
i przesuwań.

background image

 

 

Magistrala systemowa

• System komputerowy zawiera pewną liczbę 

magistrali.

• Najważniejsza z nich to 

magistrala systemowa

 

(niektóre systemy wykorzystują kilka magistrali 
systemowych) łącząca najważniejsze podzespoły 
komputera tj. procesor, pamięć, układy wejścia-
wyjścia.

• Magistrala systemowa składa się z wielu oddzielnych 

linii o określonym znaczeniu lub funkcji. Linie 
zawarte w magistrali można podzielić na trzy grupy:

– linie sterowania
– linie adresów

 

– linie danych

.

background image

 

 

background image

 

 

Własności pamięci 

komputera

Dla zrozumienia istoty pamięci oraz sposobu ich 

wykorzystywania przez system komputerowy należy je 

uszeregować ze względu na dalej wymienione własności.

Położenie pamięci:

– pamięć wewnętrzna - składają się na nią: pamięć główna, pamięć 

procesora (rejestry, pamięć podręczna)

– pamięć masowa - urządzenia dostępne przez sterownik wejścia/wyjścia 

(np. dyski twarde).

Pojemność pamięci: zwykle wyrażana w bajtach (1 bajt=8 bitów).

Jednostka transferu ilość danych transmitowanych w jednostce 

czasu, np. bajt/s.

Sposób dostępu:

– sekwencyjny - pamięć masowa zorganizowana jest za pomocą jednostek 

danych zwanych rekordami, a dostęp (zapis i odczyt) do wymaganej 

komórki pamięci wg kolejności rekordów;

– bezpośredni – pamięć masowa z dostępem do poszczególnych rekordów;

– swobodny – typowy dla pamięci głównych zwanych również operacyjnymi;

– dostęp skojarzeniowy – typowy dla pamięci podręcznych.

Wydajność określają: czas dostępu, czas cyklu pamięci i 

szybkość transferu.

Własności fizyczne: ulotna / nie ulotna i wymazywalna / nie 

wymazywalna.

background image

 

 

Pamięć główna

• Pamięć o dostępie swobodnym 

RAM

 (Random Access Memory

pozwala w stosunkowo łatwy sposób na 
odczytywanie/zapisywanie danych z/do pamięci. 

• Zapis oraz odczyt odbywają się za pomocą sygnałów 

elektrycznych. 

• Ważną cechą pamięci RAM jest jej ulotność, pamięć RAM 

potrzebuje źródła zasilania, a w przypadku jego braku dane 
ulegają skasowaniu. 

• Pamięć RAM można podzielić na statyczną i dynamiczną.
• Uzupełnieniem pamięci RAM, jest pamięć 

ROM

 (Read Only 

Memory) jak sama nazwa wskazuje jest pamięcią tylko do 
odczytu, informacja zapisana jest na trwałe, a nowe dane nie 
mogą być zapisywane. 

• Zaletą pamięci ROM jest to, że program znajduje się cały czas w 

pamięci głównej i nigdy nie wymaga ładowania z innych 
urządzeń

.

background image

 

 

Pamięci masowe

• Wyróżniamy dwie podstawowe klasy pamięci masowych, 

ze względu na sposób dostępu:

– sekwencyjny - pamięć masowa zorganizowana jest za pomocą 

jednostek danych zwanych rekordami, a dostęp (zapis i odczyt) 

do wymaganej komórki pamięci wg kolejności rekordów;

– bezpośredni – pamięć masowa z dostępem do poszczególnych 

rekordów;

• Do klasy pamięci masowych o dostępie sekwencyjnym 

zaliczamy:

– Pamięci na wielościeżkowej taśmie magnetycznej, działających 

na podobnych zasadach jak magnetofon;

– Pamięci z wirującą głowicą magnetyczną, działające na podobnej 

zasadach jak magnetowid.

• Do klasy pamięci masowych o dostępie bezpośrednim 

zaliczamy:

– Pamięci dyskowe;
– Pamięci optyczne, np. klasy urządzeń CD-ROM.

background image

 

 

Pamięć dyskowa

• Dysk magnetyczny ma kształt okrągłej płyty i pokryty jest materiałem 

magnetycznym. Dane są na nim zapisywane i odczytywane za pomocą 
głowicy, którą stanowi cewka elektryczna. W czasie operacji 
odczytu/zapisu wiruje dysk, zaś głowica pozostaje nieruchoma.

• Organizacja danych na płycie magnetycznej ma postać koncentrycznego 

zespołu pierścieni, nazywanych ścieżkami, z których każda ma taką samą 
szerokość jak głowica. Sąsiednie ścieżki są od siebie oddzielone, dzięki 
czemu błędy wynikające z niewłaściwego ustawienia głowicy lub 
interferencji pola magnetycznego zostają zminimalizowane. Aby uprościć 
układy elektroniczne współpracujące z głowicą, na każdej ścieżce 
przechowywana jest taka sama liczba bitów, a wielkość tę nazywa się 
gęstością i wyraża w bitach na cal.

• Na rozkaz zapisu, do głowicy wysyłane są impulsy, które powodują 

zapisanie określonych wzorów magnetycznych na powierzchni płyty, 
znajdującej się nad głowicą (zależnie od polaryzacji głowicy wzory te są 
różne). 

• Odczyt polega na wykorzystaniu zjawiska przepływu prądu elektrycznego 

pod wpływem pola magnetycznego wirującego, względem głowicy dysku.

background image

 

 

Organizacja dysku 

magnetycznego

background image

 

 

Dysk twardy firmy Quantum

background image

 

 

Pamięć optyczna

• Dyski CD i CD-ROM są dziś najpowszechniej 

wykorzystywanym nośnikiem informacji.

• Płyty CD I CD-ROM są wykonane w ten sam sposób: dysk 

składa się z czterech warstw: warstwy nośnej z 

poliwęglanu (plastik), warstwy barwnika (topi się podczas 

zapisu), warstwy dobrze odbijającej światło (np. 

aluminium) i lakierowej warstwy ochronnej. 

• Płyta CD posiada spiralny rowek prowadzący (groove), 

który naprowadza laser, wskazuje mu drogę. 

• Informacja zarejestrowana cyfrowo nanoszona jest, w 

postaci małych zagłębień (pit), na powierzchnię 

odbijającą. Po raz pierwszy wykonuje się to za pomocą 

dobrze zogniskowanego światła lasera o dużej mocy 

(podczas zapisu barwnik wytapia się, odsłaniając 

odbijającą światło powierzchnię) - tak powstaje dysk 

wzorcowy, który służy jako matryca do tłoczenia kopii. 

• Powierzchnia z naniesioną informacją jest zabezpieczona 

bezbarwnym lakierem.

background image

 

 

Zasada działania napędu CD-ROM

background image

 

 

Urządzenia wejścia-wyjścia

• Urządzeniem wejścia-wyjścia, dotychczas nie omawianym, 

jest sterownik interfejsu sieciowego - umożliwiający 

łącznie z odpowiednim modemem, zapewnienie wymiany 

informacji z siecią komputerową, w szczególności z siecią 

Internet. 

• Do urządzeń wejścia-wyjścia obok pamięci masowych 

zaliczamy szereg urządzeń umożliwiających kontakt 

użytkownika z komputerem.

• Najczęściej spotykane urządzenia wejścia, czyli urządzenia 

umożliwiające wprowadzanie danych do komputera to: 

klawiatura, mysz i skaner.

• Najczęściej spotykane urządzenia wyjścia, czyli urządzenia 

umożliwiające wyprowadzanie informacji z komputera to: 

monitor ekranowy lub ciekłokrystaliczny z adapterem (np. 

kartą SVGA), drukarka atramentowa i drukarka laserowa.

background image

 

 

Schemat obsługi klawiatury

background image

 

 

Mysz firmy Microsoft

background image

 

 

Skaner płaski

background image

 

 

Karty SVGA (Super VGA)

background image

 

 

Monitor ekranowy

background image

 

 

Drukarka atramentowa firmy 

HP

background image

 

 

Zasada działania drukarki 

laserowej

background image

 

 

Przerwania

Przerwania są ważnym elementem funkcjonowania systemu 

komputerowego. Nazwa odnosi się do tego, że przerwania 

mają w zwyczaju przerywać normalną pracę programów.

Np. jeśli urządzenie zewnętrzne jest gotowe do obsługi 

(czyli np. przyjmowania danych od procesora). Wtedy 

moduł we-wy tego urządzenia wysyła sygnał żądania 

przerwania do procesora. 

W odpowiedzi procesor zawiesza działanie bieżącego 

programu i wykonuje skok do programu obsługującego to 

urządzenie, czyli programu obsługi przerwania (interrupt 

handler). 

Po obsłużeniu urządzenia następuje powrót do programu, 

który został przerwany. 

Zawieszenie programu użytkownika, a następnie powrót do 

miejsca, gdzie nastąpiło przerwanie jego działania, realizuje 

procesor i system operacyjny.

background image

 

 

Cykl rozkazu z przerwaniami

background image

 

 

Przekazywanie sterowania po 

przerwania

background image

 

 

Płyta główna współczesnego 

PC

background image

 

 

Pamięć

background image

 

 

Języki programowania

background image

 

 

Sekwencje czynności 

procesora 

w czasie wykonywania 

instrukcji

background image

 

 

Przykład

background image

 

 

Krok 1

background image

 

 

Krok 2

background image

 

 

Krok 3

background image

 

 

Krok 4

background image

 

 

Krok 5

background image

 

 

Krok 6

background image

 

 

Podsumowanie

• Powyższy fragment programu dodaje 

zawartość słowa pamięci o adresie 
940H do zawartości słowa zapisanego 
pod adresem 941H oraz zapisuje wynik 
pod adres 941H

• Wykonywane są 3 rozkazy, które 

zostały opisane jako 3 cykle rozkazowe. 

• W każdym cyklu pokazano fazę 

pobrania oraz wykonania rozkazu.

background image

 

 

Parametry komputerów

- Moc obliczeniowa, np. mierzona w

MIPS (Million Operations Per Second)
MFLOPS (Million Floppy Operations Per 

Second)

-Szybkość transmisji danych do/z różnych 

urządzeń
- Niezawodność, np. mierzona w

MTBF (Mean Time Between Faults)

- Koszt, np. mierzony w

TCO (Total Cost of Ownership)

- ....

background image

 

 

Szybkość mikroprocesorów

W przypadku mikroprocesorów dodawanie 
nowych układów oraz zwiększanie szybkości 
wynikające ze zmniejszenia odległości między 
nimi poprawiało wydajność 4-krotnie w ciągu 
każdych 3 lat (prawo Moore’a).

Aby wykorzystać potencjalne możliwości 
mikroprocesora, należy zapewnić jego 
„zasilanie” ciągłym strumieniem zadań 
(rozkazów). Dlatego projektanci procesorów 
wykorzystują coraz bardziej wymyślne 
rozwiązania jak:

- przewidywanie rozgałęzienia (ang. branch 
prediction
),

- analiza przepływu danych,

- spekulatywne wykonywanie rozkazów.

background image

 

 

Równowaga wydajności

Podczas gdy moc procesorów rosła z zawrotną 
szybkością, rozwój innych krytycznych 
zespołów komputera był zbyt wolny. Powstała 
potrzeba znalezienia

tzw. -  równowagi wydajności :

dostosowanie organizacji i architektury w celu 
skompensowania niezgodności między 
możliwościami różnych zespołów komputera.

Problem krytyczny

interfejs między procesorem a pamięcią 
główną.

background image

 

 

Sposoby uzyskiwania 

równowagi

• Zwiększanie liczby bitów, które są 

jednocześnie wprowadzane (projektowanie 

„szerokich” układów DRAM),

• Stosowanie bardziej efektywnych 

interfejsów pamięci DRAM przez 

umieszczanie układów buforowanych w 

strukturach DRAM,

• Redukowanie częstości odwołań do pamięci 

głównej przez wprowadzanie efektywnych 

struktur pamięci podręcznych (cache

pomiędzy procesorem a pamięcią główną.


Document Outline