1.WYKLAD
Komputer-urzadzenie do przetwarzania danych realizujace automatycznie liste instrukcji (
przechowywana w pamieci głównej) CPU > data transfer< >control MM
Architektura-programista -> instrukcje,reprezentacje danych,mechanizmy komunikacji, techniki
adresowania (wspolna architektura zapewnia kompatybilnosc kodu binarnego)
Organizacja-cechy architektury -> sygnaly sterujace, interfejsy, technologie pamieci (rozni sie
wersjami
Funkcje :
·ð przetwarzanie danych(Storage->Control->Processing->Storage)
·ð przechowywanie danych(Movement->Control->Storage
·ð przesylanie danych (Movement ->Control)
·ð sterowanie poz. komponentami
przetwarzanie danych do I/O ( ->Storage->Processing->Control->Movement<-)
Komputer zbudowany jest z procesora glownego CPU, pamieci glownej MAINMEMORY, systemem
wejsc i wyjsc I/O, polaczeni systemu INTERCONNECTIONS
Procesor zbudowany jest z rejestrow, ukladow arytmetyczno logicznych, polaczenia, jednostka
sterujaca CONTROL UNIT.
Jednostka sterujaca zbudowana jest ze sterowania programu,pamieci jednostki sterujacej i polaczen
wewnetrznych
Stare komputery;
przelaczanie kabli zeby rozwiazac nowy problem
Von Neumann->zaczal przechowywac instrukcje tam gdzie dane.
ENIAC 43-46-55-dziesietna reprezatacja liczb przez 20akumulatorow 10-pozycyjnych (po 10 cyfr
kazdy)
JOHN MAUCHLY , J.PRESPER.ECKERT UOP
IAS -architektura von neumana, koncepcja przechowywania programu w pamieci glownej gdzie
przechowuje dane i kod programu.jednostka arytmetyczno logiczna dziala na danych
binarnych.Jednastka sterujaca CU sluzyla do interpretacji i wykonywaia instrukcji pobranych z
pamieci a takze do obslugi urzadzen I/O.instukcje wykonywane sekwencyjnie.
pamiec 1000 slow 5Kb reprezentacja liczb dlugosci 20bit.Zestaw rejestrow (pamiec w ramach
CPU):MEMORY BUFFER REGISTER[MBR],MEMORY ADRESS REGISTER[MAR],INSTRUCTION
REGISTER[IR],INSTRUCTION BUFFER REGISTER [IBR], PROGRAM COUNTER
[PC],ACCUMULATOR,MULTIPLIER/QUEANTENT[MQ]
dodawnaie w 62mikros
Komputery komercyjne [ECKERT-MAUCHLY]
UNIVAC I -1947
UNIVAC II-1950S-szybszy,wiecej pamieci
IBM[wyposarzenie do kart perforowanych]
Generacje komputerow: 1[46-57].lampy elektronowe->40tys operacji 2[58-64].tranzystorowe-
>200tys operacji 3[65-71].uklady scalonej malej i sredniej integracji mln operacji 4[72-77].uklady
scalonej duzej skali integracji 10mln operacji. 5[78-90].bardzo wielka skala integracji 100mln operacji
.6[91>]ultra wielka skala integracji 1mld operacji.
Uklady scalone->glowna czescio jest czip w ktorej znajduja sie bramki, wafer to platek krzemu a
packaged chip to uklad scalony na tejze plytce.
Prawo Moora 1965; wzrasta gestosc ukladow scalonych,liczba tranzystorow bedzie sie podwajac
corocznie.
RozwiÄ…zania aby pamiec nadazyla za procesorem-zwiekszenie ilosci bitow uzywanych
jednoczesnie,pamieci dram na szersze, zmiana interfejsu DRAM, szybsza pamiec cache,redukcja
czestosci odwolam do pamieci,zwiekszenie przepustowosci szyny systemowej,szyny hierarhiczne.
Urzadzenia prefyferyjne I/O-konieczna duza przepustowosc transferu danych; problem przesylania
dancyh w ramach komputera, rozwiazania; szybka pamiec cache,buforowanie,szybsza
magistraala,bardziej zlozone struktury magistrali,konfiguracje wieloprocesorowe.
2.WYKLAD
stworzyc program-> kazdy krok programu aktywuje zestaw sygnalow sterujacych kierujacych praca
sprzetu.krop programu to operacja logiczna lub arytmetyczna.kazda operacja wymaga odmiennego
zestwawu syhnalow ster. kodowanie nie wymaga zmian w obwodach logicznych
INSTRUKCJE reprezentowana jako wzorce binarne ident. krok ktory ma zostac wykonany.Stosowany
segment sprzetu na podstawie kodu instrukci musi wygenerowac sygnaly sterujace.
INTERPRETER INSTRUKJCI-urzadzenie ktory otrzymujac instrukcje zmienia je na sygnaly sterujace
jednostka arytm i logiczna.
CYKL INSTRUKCJI; kazdy cykl sklada sie z dwoch krokow : 1.pobieranie instrukcji z pamieci [fetch]
2.wykonanie instrukcji[execute].
FETCH-rejestr CPU zwany PROGRAM COUNTER zawiera zawsze adres[lokalizacje] kolejnej instrukcji
do pobrania z pamieci.procesor pobiera zawartosc pamieci spod adresu wskazanego przez
PC.nastepnie procesor zwieksza wartosc PC o jeden, instrukcja pobrana ze wskazanej lokalizacji
pamieci jest natychmiast zapisywana w CPU do rejestru instruction register.Instrukcja
przechowywana w ir jest interpretowana przez procesor ktory wykonuje dzialanie.
EXECUTOR-komunikacja procersor-pamiec,komunikacja procesor I/O, przetwarzanie danych czyli
wykonanie operacji arytmetycznej lub logicznej na wskazanaych danych[IR].STEROWANIE
programem czyli zmiana kolejnosci instrukcjI NAZYWANA INSTRUCKJA SKOKOWA
3.WYKLAD
PRZERWANIA-mechanizm dzieki ktoremu moduly moga przerwac normalna kolejnosc
przetwarzania.Normalna kolejnosc wyznacz CU pod wplywem instrukcji.kolejnosc moze byc inna
wymaga to zakomunikowania do cpu.Przerwania poprawiaja wydajnosc przetwarzania
Zrodla przerwan: Program->dzielenie przez zero,proba wykonanie nielegalnej instrukcji
maszynowej,odwolanie do nieistniejacego adresu,nadmiar arytmetyczny.Timer->generowanie przez
uklad timera w cpu,pozwala np.wykonywac regularnie zadania systemu operacyjnego.I/O->normalne
zakonczenie operacji,sytaucje wyst.bledow. Awarie sprzetu->brak zasilania,blad parzystosci pamieci.
Zalety: nie jest potrzebny dodatkowy kod do reagowania na specjalne
zdarzenia(potwarzalne,podobne), obsluga nalezy do kodu systemu operacyjnego.Specjalne zdarzenia
obslugiwane sa (przetwarzane) przez procedury obslugi przerwan ISR.
Cykl przerwania:dodany do cyklu instrukcji,w cyklu CPU sprawdza czy zostalo zgloszone przerwanie,
jesli nie to pobierz kolejna instrukcje fetch. Jezeli oczekuje zgloszenie przerwania:wykonanie
obecnego programu zostaje zawieszone, CPU zapisuje swoj kontekst.Do PC zwpisany adres obslugi
przerwania ISR.wykonanie procedury obslugi przerwania,zakonczenie wlaczony kontekst CPU i wraca
do zawieszonego programU. KONTEKST-wszystkie informacje opisujace jego stan.
przerwania mozna wylaczyc, moduly beda zglaszaly przerwania ale CPU nie bedzie wykonywal cyklu
przerwan, obsluge mozna wylaczyc globalnie[wszystkie] i lokalnie [niektore].
przerwania sekwencyjne, przerwania zagniezdzone.
4.WYKLAD
PAMIEC-otrzymuje i wysyla dane,otrzymuje adresy lokalizacji,otrzymuje sygnaly
sterujace[odczyt,zapis,sygnaly synchronizacji[timing]]
I/O - wyjscie otrzyumuje dane od komputera,wysyla dane do peryferiow wejscie; otrzymuje dan od
urzadzen peryferyjnych,wysyla dane do komputera.Otrzymuje sygnaly sterujace z
komputera,otrzymuje adresy komputera tzn numery portu ktory identyfikuje urzadzenie, wysyla
sygnaly przerwan[sterujace]
CPU-odczytuje instrukcje i dane,zapisuje dane,wysyla sygnaly sterujace do innych jednostek,odbiera i
reaguje na przerwania.
SZYNY pojedyncze oraz wielokrotne:w komputerach sa: szyny adresowe,szyna danych,szyna
sterujaca
Szyna-sciezka komunikacyjna ktora laczy dwa lub wiecej urzadzen.Komunikacja
rozgloszeniowa[broadcast].Wszystkie komponenty otrzymuja sygnaly z szyny.W kazdej chwili tylko 1
urzadzenie moze wysylac informacje.Sklada sie z wielu kanalow/linii-czesto wszystkie kanaly uzywane
sa do wysylania informacji rownoczesnie; szyna 32bit-32 jednobitowe kanaly.Kanal jednobitowy
przesyla bit informacji-jednej cyfry bitowej.
Szyna danych-sluzy do przesylania danych,nie ma roznicy miedzy danymi i instrukcjami, dane jak i i
nstrukcje reprezentowane sa jako liczby, szerokosc szyny jest glownym czynnikiem wplywajacym na
wydajnosc.
szyna adresowa-identyfikuje adres zrodlowy[do pobierania danych] lub docelowy[do
zapisu].Szerokosc okresla max pojemnosc pamieci systemu.Szyna podzielona na starsze i mlodsze
linie. Starsze wskazuja modul pamieci przechowujacy adresowana zawartosc, mlodsze lokalizacje
zawartosci w ramach tego modulu.
szyna sterujaca-informacje sterujace i synchronizujace:sygnal zapisu lub odczytu pamieci,sygnal
przerwania,sygnaly zegarowe
Problemy pojedynczej szyny-duza ilosc podlaczonych do jednej szyny -> niska wydajnosc, opoznienia
propagacji sygnal[kordynacja dostepu do szyny sie pogarsza], laczna ilosc przesylanych informacji
siega max przepustowosci szyny.Wolne urzadzenia ograniczaja predkosc szyny
Szyny posrednie[MEZZOZINIE]-roznica predkosci wymagaja odseparowania wolniejszych
urzadzen,dodaje sie szybka szyne do komunikacji z urzadzeniami szybkimi.Zaleta-szybsze
urzadzennia znajda sie blizej CPU.oddzielone mnijesza iloscia przewodow.
Szyny wielokrotne-
Bufory[FIFO]-sluza do przechowywania dancych otrzymane z szybkiej szyny zanim zostana w calosci
wyslane wolniejsza szyna.niekiedy same urzadzenia i/o zawieraja budory i wysylaja informacje z
predkoscia dopasowana do mozliwosci szyny.
Mosty[bridges]-lacza szyny o odmiennych predkosciach
Zalety wielokrotnych-odgradzja szybki ruch CPU od wolnego I/O.roznorodne polacznia,szyna
wychadzca z CPU nie jest podlaczona do I/O.Urzadznia I/O podlaczone do dedykowanej szyny
rozszerzen,ktora laczy sie posrednio z CPU,obwody posrednie nazywane INTERFEJSAMI, interfejsem
moze byc pamiec podreczna[CACHE] CPU
TYPY SZYN-dedykowane;oddzielne linie danych,oddzielne linie adresowe-
mulitipleksowe[przylaczane]te same linie wykorzystywane do roznych zastosowan,dodatkowa linia
wskazujaca czy przesylany jest adres czy dana.Zalety;mniej linii w szynie Wady:zlozone
sterowanie,slaba wydajnosc maksymalna.
5.WYKLAD
Transfer I/O->CPU-Moduly I/O dostarczaja dane lub pobieraja dane zlokalizowane w PAMIECI
GLOWNEJ.Moduly I/O moga bezposrednio wymieniac dane z CPU.CPU moze odczytac lub zapisac
dane z modulu I/O.
TRANSFER I/O -> MM- moduly I/O moge bezposrednio wymieniac dane z pamiecia .CPU moze
przyznac modulowy I/O prawo dostepu do pamieci, po czym moduly nie zatrzymuja sie na cpu tylko
prosto do pamieci leca.Wysyla polecenia bezposrednio do pamiecia.Jest to tzw.Bezporedni dostep do
pamieci DMA -> DIRECT MEMORY ACCES
ARBITRAÅ»-algorytm postepowania pozwalajacy na ustalenie kolejnosci dostepu urzadzen do szyny w
celu nadawania; moze byc centralne,rozproszony.Centralny-specjalnie zaprojektowane obwody
logiczne[sprzet] steruje dostepem do szyny.[sterownik szyny,arbiter,czesc CPU.] rozproszony-kazdy
modul moze zadac dostepu do szyny,obwody logiczne w kazdym module,moduly wspolpracuja i
dziela sie sterowaniem szyny.
TIMING[zaleznosci czasowe]-sposob koordynowania zdarzen zwiazanych z
szyna.synchroniczny[zalezy od wspolnego zegara],asynchroniczny[zaleznosci czasowe ujete w
specyfikacje szyny;reakcja nastepuje w okreslonym czasie od pojawienia sie sygnalu.
TIMING SYNCHRONICZNY-zegar doprowadzony do wszystkich urzadzen,zmienia swoj stan na
przeciwny(z 0 na 1) dwukrotnie w kazdym cyklu ze stala czestotliwoscia.Wszystkie urzadzenia moga
zmieniac stan co najwyzej jeden raz w kazdym cyklu.Nowy stan osiagniety w momencie gdy sygnal
zmeinia sie z 0 na1[ tzw ZBOCZE NARASTAJACE].zwykle zdarzenia trawaja jeden cykl zegara
szyny.latwy do realizacji i testow,zadne urzadzenie nie moze nadawac szybicej niz dykuje zegar
ASYNCHRONICZNY-urzadzenia reaguje na sygnaly z pewna tolerancja czasowa,w pewnym przedziale
czasu.ulatwia to wspolprace urzadzen szybkich z wolniejszymi na jednej szynie.Wydajnosc szybkich
jest ograniczona.urzadzenia o roznej predkosci moga korzystac ze wspolnej szyny.
TYPY TRANSMSISJI- zapis-transfer danych od urzadzenia nadrzednego[BUS MASTER] do
podrzednego[BUS SLAVE],odczytu-tranfer danych od urzadzenia podrzednego do
nadrzednego.Niektore urzadzenia obsluguja operacje kombinowane:odczytaj-modyfikuj-
zapisz,odczytaj-po-zapisie,transfer blokowy.Operacje kombinowane sa nierozdzielne.
odczytaj-modyfikuj-zapisz-polega na odczycie, po ktorym nastepuje zapis pod ten sam adres,
wykorzystywana w multiprogrammingu,do ochrony pamieci dzielonej.
odczytaj-po-zapisie-polega na zapisie, po ktorym nastepuje odczyt spod tego samego adresu.
Transfer blokowy-uzyciu n cykli danych po jednym cyklu adresu,pierwszy elementr danych jest
przesylany do/ze wskazanego adresu;kolejne elementy danych do/z kolejnych adresow
Szyna PCI
6.WYKLAD
Lokalizacja pamieci: Wewnatrz CPU-rejestru CPU, pamiec Jednostki Sterujacej,pamiec podreczna
CPU pierwszego rzedu[L1 CACHE] WEW.komp - pamiec glowna,pamiec podrecza 2 rzedu
cache[l2 cache]. Zew.dysk,naped tasm,sieciowe systemy przech. danych.
Pojemnosc pamieci;Wielkosc slowa,slowo to naturalna ilosc danych dla CPU[8,16 bitow] procesor 32
bitowy oznacza ze ma slowo 32 bitowe.Wielkosc slowa wiaze sie z szerokoscia szyny danych
CPU[iloscia bitow w instrukcji CPU, iloscia bitow w pojedynczej prostej danej CPU].Potrzebna
szerokosc danych jest otrzymywana przez rownolegle ulozenie ukladow pamieci doprowadzona do
wszystkich jednakowych linii adresowych.
Jednostki transferu; do pam. Wew. -wynika z szerokosci szyny danych,zazywczaj to slowo CPU ,
do pamieci zew. blok danych wiekszy od slowa.
Metody dostepu: Sekwencyjny (np. napędy taśmowe) Rozpoczęcie na początku pamięci,
i odczytywanie informacji organizacyjnych,oraz kolejnych lokalizacjidanych w kolejności rosnących
adresów Czas dostępu zależy od żądanej lokalizacji oraz od poprzedniej
lokalizacji Swobodny (np. RAM)Sam adres jednoznacznie pozwala odnalezć lokalizacje Czas
dostępu nie zależy od żądanej lokalizacji, ani od poprzednio używanej lokalizacji Bezpośredni
(np.dysk) Poszczególne bloki pamięci maja niepowtarzalne adresy, po których można je odnalezć
Dostęp polega na sięgnięciu do bloku (=w pobliże żądanej lokalizacji),i sekwencyjnym poszukiwaniuw
nim lokalizacji Czas dostępu zależy od poprzedniejlokalizacji, oraz żądanej lokalizacji
Skojarzeniowy (np. cache) Dane lokalizowane są poprzez porównanieich adresu z
fragmentem opisu (informacji organizacyjnych Czas dostępu nie zależy od żądanejlokalizacji, ani od
poprzednio używanej lokalizacji
Typ Fizyczny: pamiec polprzewodnikowa[RAM] pamiec magnetyczna[dyski,tasmy]
optyczna[dvd,cd,blue] PENDRIVE-polprzewodnikowa
Charakterystyka fizyczna- Zanik stanu pamieci-stopniowe slabniecie zapisu w pamieci,mozliwe dla
wiekszych nosnikow
Ulotnosc pamieci-pamiec ulotna traci wszystkie dane gdy prad off
nieulotna-nie wymaga zasilania
polprzewodnikowa moze byc ulotna[ram] lub nieulotna[flash]
Kasowalnosc pamieci:niekasowalna nie moze byc zmieniona bez zniszczenia
nosnika.polprzewodnikowa pamiec niekasowalna jest ROM[read-only-memory] pamiec niekasowalna
jest nieulotna.
Czas dostepu:Czas uplywajacy od przedtawienia adresu,do uzyskania kompletncyh i poprawnych
danych.Czas cyklu pamieci-jest suma czasu dostepu i czasu odtworzenia.Wspolczynnik szybkosci jest
odmienny od czasu dostepu,ilosc danych przesylanych z pamieci w jednostce czasu.
Organizacja modolow pamieci-kluczowa cecha pamieci RAM,okresla fizyczne uporzadkowanie bitow
w slowie, w celu zwiekszenia szybkosci dostepu do pamieci uzywa se skomplikowane organizacje
np.przeplot.
7.WYKLAD
Hierarchia pamięci-> rejestry, cache L1, cache L2,pamiec glowna,pamiec podreczna cahae
dysku,dysk,pamiec optyczna,tasma
Celem jest wyposazenie komputera w pojemny system pamieci,dzialajaco szybko i tanio.Lokalnosc
odwolan(lokalnosc odniesien)->podczas wykonania programu,odwolania do pamieci dotycza
przewaznie tych samych miejsc.
Zasada Lokalnosci odwolan[programy wykorzystuja w kazdym momencie tylko niewielki fragment
swojej przestrzeni adresowej]
Lokalnosc czasowa;elementy uzywane ostatnio beda prawdopodobnie uzywane wkrotce.[petle]
Lokalnos przestrzenna;zapewne wkrotce uzywane beda elementy w poblizu tych ktore byly ostatnio
uzywane.
Cache->mala ilosc szybkiej pamieci,zlokalizowana pomiedzy main memory a cpu. moze fizycznie
znajdowac sie w cpu,w oddzielnych modolach cache.
wykorzystanie lokalnosci->poczatkowo wszystko przechowywane jest na dysku,niedawno uzywane
elementy sa kopiowane z dysku do mniejszej ale szybszej pamieci DRAM[MM]
Jeszcze mniej dawno uzywane elementy kopiowae z DRAM do mniejszej ale szybciej pamieci SRAM
[CACHE]
Operacja odczytu stosowania cache; CPU zada odczytu zawartosci pewnej lokalizacji pamieci;tak?-
>pobierz zawartosc z cache nie?->pobierz z MM blok zawierajacy lokalizacje.Caly blok zapisany w
jednej lini CACHE, zawartosc zadana dostarczona do CPU.
ZNACZNIKI[tags]-w cache, wskazuja ktore bloki pamieci glownej sa w ktorch liniach cache
POJECIA CACHE; TRAFIENIE [CACHE HIT]-syt. gdy zawartosc zadanej lokalizacji pamieci
przechowywana jest w cache CHYBIENIE[CACHE MISS]-zawartosc nie ma w cache
WSPOLCZYNNIK TRAFNOSCI[HIT RATIO]-wyrazona procentowo ilosc dostepow do pamieci
zaspokojonych z cache WSPOLCZYNNIK CHYBIEN[MISS RATIO]-wyrazona najczesciej
procentowo ilosc dostepow do pamieci ktora nie mogla byc zaspokojona z cache, poniewaz
zawartosc nie znajdowala sie cache MISS+HIT=100%
BUFORY odcinaja CPU od reszty systemu w razie trafienia w cache, pozwala to zmniejszyc ruch na
szynie.
W razie chybienia dane z pamieci glownej trafiaja rownoczesnie do CPU I Cache
Adresy cache-fiz.log
funkcja mapujaca; bezposrednie,asocjacyjne,asocjacynje wielodrozne
algorytm zastepowania; LEAST RECENTLY USED,FIRST IN FIRST OUT,LEAST FREQUENTLY USED,
LOSOWY
Adresy CACHE wobec CPU I MMU
Cache logiczna[wirtualna] przechowuje dane na bazie adresow wirtualnych, proces komunikuje sie
bezposrednictwa MMU,dostep do cache szybszy.
Adresy wirtualne pozwalaja wykorzystac te same adresy(przestrzen adresowa )przez wszystkie
aplikacje.Cache wymaa dodatkowych informacji o identyfikatorach wirtualnych przestrzeni
adresowej[ lub czyszczenia przy przelaczaniu miedzy aplikacjami[tzw context switch]]
Cache fizyczna przechowuje dane na bazie adresow fizycznych pamieci glownej.
8.WYKLAD
Funkcja mapujaca-pozwala okreslic powiazanie pomiedzy adresem lokalizacji pamieci a miejsce
[blokiem] cache. Wykorzystywana gdy do cache kopiowany jest blok z pamieci nizszego poziomu,gdy
potrzebny jest dostep do zawartosci okreslonej lokalizacji pamieci.
Mapowanie bezposrednie:przyjety system zapisywania, od razu pozwala odnalezc zdarzenie z
dnia.Cache->kazdy blok pamieci glownej przypisany jest do dokladnie jednej lini cache, jedna linia
przypisana do wielu blokow pamieci glownej.
Zapis pozycyjny; <- liczby -> <-starsze pozycje wnosza wiecej do wartosci ->mlodsze pozycje
mniej. Jesli blok pamieci jest w cache to ma prawo znalezc sie tam tylko w jednym miejscu.Dwie
czesci adresu mlode bity idnet.poszczegolne slowo, starsze bity dokladnie jeden blok.
Zawartosc cache sprawdza sie odszukujac na podstawie adresu linie cache i porownuje fragment
adresu z tagiem przypisanym do tej linii.W tej samej lini cache moga byc przechowywane w roznych
momentach czasu rozne bloki pamieci.ale rozne bloki beda mialy wowczas odmienny tag -> i po tym
odrozniamy ktory jest aktualnie w cache
Zalety-proste w realizacji,niedrogie
Wady-lokalizacja bloku w cache sztywno ustalona na zawsze,wiele blokow powiazanych z ta sama
linia cache.chybienia gdy trafia do tej samej lini.
VICTIM CACHE to dodatkowa pamiec cache do przechowywania ofiar ktore wlasnie musialby byc
wyrzucone z podstawowej cache.wyrzucona a beedzie potrzbna to bedzie w victim
cache.Pojemnosc jest ograniczona dlatego ne beda przebywac tam na zawsze.
9.WYKLAD
Mapowanie asocjacyjne-blok pamieci glownej moze byc przechowywany w dowolnej lini
cache.adres interpretowany jako tag oraz slowo.TAG jednoznacznie identyfikje blok w pameci.TAG
kazdej lini cache jest porownywany po kolej z tagiem adresu,az do znalezienia szukanej
wartosci,przeszukiwanie jest kosztowne.
WADY-duza strata bitow na informacje organizacyjne;zeby przechowac kazde 32 bity, trzeba
przechowac 22bity z fragmentu adresu.duzy koszt poszukiwania
MAPOWANIE ASOCJACYJNE WIELODROZNE;blok pamieci moze byc przechowywany w dowolnej lini
cache,w ramach okreslonego zbioru linii.Cache podzielona na pewna ilosc zbiorow.Zbior - tyle samo
linii.
Roznica wydajnosci miedzy asocjacyjnym a wielodroznym;wraz ze zwiekszenie droznisci wzrasta
zlozonosc cache.zwiekszanie droznosci nieuzasadnione jesli mozna zwiekszc cache do
8kb.zwiekszanie droznosci nieefektywne dla cache powyzej 32kb.
10.WYKLAD
Problemy urzadzen I/O; duza roznorodnosc peryferiow,rozna ilosc dostarczanych danych,rozne
predkosci dostarczania dancych,rozne formaty dostarczanych danych,rozne metody obslugi.
Wszystkie I/O sa wolniejsze od CPU I RAM, peryferia sa bezposrednio podlaczone do szyny
systemowej.stosuje sie moduly I/O
Modul I/O; z jednej strony interfejs do CPU i pamieci z drugiej interfejs do urzadzenia np mysz.
Urzadzenia zewnetrzne[peryferyjne] mozna podzielic;do komunikacji z czlowiekiem,zwiazane z
kolejnymi elementami wyposarzenia,komunikacyjne.
Funkcje modulu I/O; sterowanie i kontrola zaleznosci czasowych[timing],komunikacja z
cpu,komunikacja z urzadzeniem, buforowanie danych, detekcja bledow. Sterowanie i timing-; cpu
odczytuje z modulu I/O status urzadzneia, modul zwraca [ gotowy? nie?]jezeli urzadzenie jest
gotowe, procesor inicjuje transfer danych.W przypadku odczytu danych ,modul I/O pobiera dane z
urzadenia, przekazuje dane do CPU.
Komunikacja Z CPU-dekodowanie danych: modol I/O odbiera i interpretuje polecenia CPU, transfer
danych;poprzez szyne danych nastepuje wymiana danych miedzy CPU a modulem I/O.Raportowanie
statusu; CPU potrzebuje znac stan samego modulu, a czesto takze urzadzen.Rozpoznawanie adresu;
modul musi rozpoznawac oddzielne adresy dla kazdego z obslugiwanych urzadzen.
Rozwiazania w modulach I/O; ukrywanie lub udostepnianie cech urzadzen dla CPU, obsluga wielu lub
pojedynczego urzadzenia, sterowanie urzadzeniami autonomicznie, albo wedlug polecen CPU.
Programowana komunikacja I/O; CPU bezposrednio steruje I/O, odczytuje status,wysyla komendy
odczytu lub zapisu,uczestniczy w transferze danych do i z pamieci.Cpu czeka na zakonczenie kazdej
operacji przez modul I/O.powtarza petle ReaDY?. programowana komunikacja I/O powoduje tym
samym duze zuzycie czasu procesora
KOMENDY I/O; CPU wysyla adres, adres okresla modul I/O, dodatkowo okresla numer urzadzenia,
jesli jest ich wiecej. CPU wysyla komende : STERUJACA:okresla jakie zadanie ma wykonac modul
TESTUJACA;sprawdzanie statusu ODCZYTU LUB ZAPISU danych;modul poprzez bufor przesyla dane z
lub do urzadzenia;
Kazde urzadzenie ma swoj niepowtarzalny identfikator, komendy zawieraja ten identyfikator
Mapowanie I/O;urzadzenia I/O oraz pamiec znajduja sie w jednej wspolnej przestrzeni adresowej,
dostep analogicznie jak do pamieci, cpu nie potrzebuje oddzielnyh instrukcji.szeroka gama instrukcji
dostepu do pamieci. Oddzielny dostep I/O; moduly I/O maja oddzielna przestrzen adresowa,w szynie
dodatkowe linie wskazujace na wybor I/O lub pamieci.CPU potrzebuje oddzielnych instrukcji do
realizacji operacji I/O
11.WYKLAD
Komunikacja z wykorzystaniem przerwan; pozwala uniknac oczekiwania CPU na urzadzenie, CPU nie
musi odpytywac cyklicznie urzadzenia,oczekujac na jego gotowosc.Modul I/O zglasza przerwanie gdy
jest gotowy.
PSW-program/processor status word-rejestr zawierajacy minimalna niezbedna ilosc inf opisujacych
stan CPU.
Identyfikacja modulu I/O zglaszajacego przerwanie; metoda 1-oddzielne linie zglaszania i
potwierdzania przerwan dla kazdego modulu I/O. Metoda 2.-odpytywanie porgramowe-po
otrzymaniu sygnalu przerwania, CPU odpytuje po kolei wszystkie moduly,zeby okreslic ktore to
nadal.Metoda 3.-polaczenie lancuchowe urzadzen-potwierdzenie przerwania przez CPU jest
przekazywane kolejno miedzy polaczonymi urzadzeniami.Gdy potwierdzenie przerwania dotrze do
modulu zglaszajacego przerwanie,wysyla on na szyne wektor[ wielocyfrowa liczba bitowa] na
podstawie wektora CPU wybiera stosowna ISR. Metoda 4.-kontorla szyny[bus master]-modul musi
uzyskac dostep do szyny zanim zglosi przerwanie.
Przerwania rownoczesne- rozwiazanie problemu; kazda linia przerwan ma swoj priorytet,przerwania
z linii o wyzszym priorytecie przerywaja obsluge przerwan o nizszym priorytecie.Gdy stosowana jest
kontrola szyny, obslugiwane sa tylko kolejne przerwania zglaszane przez modul pelniacy role
zarzadcy.
procesor 80x86 ma jedno wejscie przerwan, maja dodatkowy uklad kontrolera przerwan, ma 8 linii.
DMA; problem dotychczas przedstawionych metod obslugi I/O; zarowno obsluga programowa I/O,
jak i korzystanie z przerwan angazuja CPU- ogranicza to predkosc tranferu,marnotrawi czas
CPU.Rozwiazanie; DMA - komunikacja bezposrednia modulu I/O z pamiecia, bez CPU.
Stosowanie DMA wymaga kontrolera DMA, dodatkowy modul sprzetowy na szynie , przejmuje od
cpu zadania zwiazane z transferem miedzy modulami I/O a pamiecia.
Kradziez cykli-podczas transferu danych z/do modulu kontroler DMA potrzebuje dostepu do
pamieci.Dlatego uzywa szyn, wykorzystuje pojedynczy cykl szyny na przeslanie pojedynczego slowa
danych.W tym czasie CPU ani nic nie moze uzywac szyn.Dzialanie CPU JEST
WSTRZYMANE.Wstrzymanie CPU to nie to samo co przerwanie, cpu nie zmienia kontekstu dzialania,
dzialanie cpu spowalnia sie ale mniej niz przerwanie.
CPU jest wstrzymywany w cyklach, w ktorych DMA komunikuje sie po szynach, gdy CPU uzywa szyn
nie zezwana na kradziez cykli przez DMA. tryb fly-by dma controller-dane dma odbywa sie tylko
miedzy portem i/o a pamiecia.
Wyszukiwarka
Podobne podstrony:
TI 99 08 19 B M pl(1)TI 03 03 08 T pl(1)TI Wykład 08TI 03 10 08 B pl(1)TI 02 10 30 T pl(2)TI 00 11 27 B pl(2)TI 01 11 14 T M plTI 01 09 21 T pl(1)TI 02 05 29 T B pl(1)TI 00 08 22 T pl(2)TI 99 09 24 T B pl(1)TI 03 01 22 T pl(1)więcej podobnych podstron