ASK


Wydajność systemu komputerowego

Czas odpowiedzi:

-ile czasu potrzeba do wykonania zadania

-po jakim czasie uzyska się odpowiedź na zapytanie

-jak długo trzeba czekać aby skorzysta z zasobów systemu

Przepustowość:

-liczba zadań wykonana przez system jednocześnie

-średni czas wykonania zadania

-liczba zadań wykonanych w jednostce czasu

Miary wydajności:

CPI jest miarą wskazującą jakoś architektury systemu, efektywność listy instrukcji, jakość zastosowanych algorytmów i oprogramowania.

CPI = liczba taktów procesora/liczba instrukcji

MIPS Miliony instrukcji procesora na sekundę

MIPS = częstotliwość zegara/CPI*10 do 6

MFLOPS miliony instrukcji zmiennoprzecinkowych procesora na sekundę

Benchmark to zestaw operacji wykonywalnych przez maszynę dla określenia wydajności przetwarzania.

Pozwalają ocenić:

-wydajność systemów opartych na różnej architekturze

-wpływ zmiany konfiguracji sprzętu na prędkość działania

-wpływ na rozwój metod zwiększania wydajności komputera

Rodzaje:

-szkolne dla wykrywania zatorów i wyznaczenia szczytowych wydajności

-syntetyczne modelują rzeczywiste sytuacje przetwarzania Whestone

-jądra wydzielone z rzeczywistych programów krytyczne czasowo procedury przetwarzania

-rzeczywiste programy najczęściej do modelowania zjawisk fizycznych

SPEC ( System Performance Evaluation Cooperative)

Przygotowanie dla różnych klas aplikacji, uaktualniana jest wraz z postępem technologii komputerowych. Pozwala oceniać wydajność maszyn i jakość kompilatorów.

Równanie Amdahl'a:

Określa stopień zwiększania wydajności systemu komputerowego wynikający ze zmiany czasów wykonania operacji skł. programu użytkownika.

Przyspieszenie = czas wykonania / poprawiony czas wykonania

nowy czas= poprawiony czas / przyspieszenie + czas wykonania reszty

Pwypadkowe=1/1-U+U/P

Czas wykonania operacji A stanowiący ułamek U zadania został przyspieszony P razy korzystając z równania AMDAHL'A uzyskuje się wypadkowe przyspieszenie.

Lista instr.

CPI

Często. zegara

Alg.

*

Kompil.

*

*

List. Instr.

*

*

*

Org. Sys.

*

*

Tech.

*

Czynniki wpływające na wydajność:

-optymalizacja programu

-zmniejszenie CPI

-zwiększenie prędkości zegara

Cechy konfiguracji sprzętu wpływające na wydajność

-prędkość wykonywania programów

-prędkość wymiany danych

Własności oprogramowania wpływające na wydajność systemu

-złożoność algorytmu

-sposób zarządzania zasobami systemu komputerowego

Architektura systemu komputerowego

Historia komputerów:

-abaki : - , +

-suwaki logarytmiczne: * , /

-maszyna różnicowa: analityczne

-maszyna turinga: 1937

-elektroniczny komputer: Konrad Zausze - 1941

-ABC: prototyp częściowo elektronicznego kalkulatora ( system 2) - 1939

-Colosuss I i II: całkowicie elektroniczny deszyfrator enigmy - 1943

-ENIAC: pierwszy nagielski komputer do obliczania trajektorii lotów pocisków - 1943

-EDVAC: komputer z listą instrukcji - 1949

Rodziny komputerów:

IBM 300 - 197x

SUN Sparc - 1987

DEC Alpha - 1992

SGI MIPS - 1986

Intel x86 - 1978

Architektura systemów komputerowych:

-1950 - 60: arytmetyka komputerów

-1970 - 80: projektowanie listy instrukcji dla komputera wyższego poziomu

-1990 - ? : projektowanie procesorów, rozwiązań wieloprocesorowych, doskonalenie układów WE/WY i

systemów pamięci.

Generacje komputerów:

I Generacja (1951-1960) - lampowe, pierwszy IBM seria 700

II Generacja (1956-1964) - tranzystorowe z pamięciami ferrytowymi z klawiaturą i monitorem PDP 1

III Generacja (1964-1975) - układy scalone w technologii TTL, pierwszy minikomputer PDD-8 firmy DEC, opracowanie IBM

system 1360

IV Generacja (1975-+...) - technologia MOS układy VLSI, pierwsze mikroprocesory

Prawo Moor'a: prędkość taktowania procesorów podwaja się co 18 miesięcy.

Tempo rozwoju technologii VLSI

Architektura: własności i funkcje systemu komputerowego widziane przez programistę - sztuka planowania.

Model komputera Von Neumana:

-Jeśli komputer ma przede wszystkim liczyć, to musi mieć wydzieloną jednostkę arytmetyczną, i musi to być jego centralna część, jednostka centralna

-jeśli komputer ma być uniwersalny, to musi zawierać urządzenie w prosty sposób szeregujące operacje do wykonania kolejno i rozróżniające specyficzne rozkazy - sterowanie

-jeśli urządzenie ma pozwalać na wykonywanie długich obliczeń, to rozkazów do wykonania musi przyjąć wiele i muszą one być pamiętane - pamięć,

-przyjmując analogię do systemu nerwowego człowieka jednostka centralna i sterowanie odpowiadają neuronom skojarzeniowym, należy więc dodać urządzenia odpowiadające neuronom sensorycznym i motorycznym - wejście i wyjście,

-informacja z we / wy nie powinna zaprzątać bezpośrednio jednostki centralnej, lecz trafiać najpierw do pamięci - sterowanie urządzeń i buforowanie we / wy

0x08 graphic
0x01 graphic

Architektura Harvardzka:

0x08 graphic
0x01 graphic


Opracowania przez Aikensa w 1948 rozdzielane rozkazy od danych (2 obszary adresowania.)

Pamięć:

-informacje przechowywane są w komórce o jednakowym rozmiarze

-znaczenie słów nie jest przypisane ich treści , dane i instrukcje są nierozróżnialne

-interpretacja słowa zależ od stanu maszyny w chwili pobierania słowa za pamięci

-komórki tworzą uporządkowany zbiór i posiadają jednoznacznie przypisany wskażnik położenia - adres

-zawartość komórki może zmienić tylko procesor.

Program jest sekwencją rozkazów.

Licznik rozkazów generuje adres kolejnego rozkazu, adres może nie być kolejnym w sekwencji gdy wykonano skok lub rozgałęzienie.

Nowe cechy komputera:

-stos programowy część pameci o dostępie typu LIFO

-tryb adresowania metoda określania adresu ułatwiają wymianę danych

-pamięć wirtualna metoda adresowania i organizacji pamięci umożliwiająca ominięcie ograniczeń fizycznego rozmiaru pamięci

-nowe typy danych liczby zmiennoprzecinkowe, łańcuchy znaków

-przetwarzanie potokowe

-wieloprocesorowe architektury

Przetwarzanie potokowe

-kompilacja sprzętu

-wprowadzenie „długich” rejestrów pośrednich przekazujących wszystkie informacje dotyczące wykonywanej instrukcji do

następnej fazy

-instrukcje wykorzystujące po kolei wszystkie zasoby procesora

-wzrost wydajności odbywa się za cenę uproszczenia zestawu instrukcji

-konsekwencją uproszczenia instrukcji jest łatwiejsza realizacja sterowania

[ L ] [ D] [ P ] [ M ]

[ L ] [ D] [ P ] [ M ]

[ L ] [ D] [ P ] [ M ]

Komputer jako automat:

-Można potraktować komputer jako automat skończony FSM (finite state machine)

-Stan komputera jest superpozycja stanu procesora i stanu pamięci.

-Zmiana stanu jest skutkiem wykonania rozkazu przez CPU

-Czas pomiędzy kolejnymi zmianami stanu - cykl.-

-Cykl pamięci lub rozkazowy - zmiana stanu pamięci

Wieloprocesowość jest to cecha systemu operacyjnego (a dokładniej jądra, inaczej kernela) mówiąca czy może on wykonywać "jednocześnie" kilka procesów. Wieloprocesowość otrzymuje się poprzez tzw. scheduler czyli algorytm kolejkujący i porządkujący procesy, które mają być wykonane. W tym systemie każdy proces jest wykonywany jakiś kwant czasu, a później czeka "w uśpieniu" (oczywiście z uwzględnieniem różnych priorytetów).

Systemami wielozadaniowymi są:

-systemy UNIX

-32-bitowe systemy z rodziny Microsoft Windows (np. Microsoft Windows 95)

-MacOS

-BeOS

Nie są:

-DOS (może być więcej niż jeden proces, ale tylko jeden będzie wykonywany)

Pamięć

Klasyfikacja:

0x08 graphic
0x01 graphic

Pamięć statyczna (Static RAM), budowana z dwustabilnych przerzutników (zawierających po dwa tranzystory), wygodniejsza w użyciu od pamięci dynamicznej, lecz o mniejszej pojemności. Cechuje ją bardzo krótki czas dostępu do poszczególnej komórki i nieulotność. Niestety, pamięci SRAM są drogie, dlatego też wykorzystuje się je głównie jako pamięci cache.

Pamięci dynamiczne

DRAM (Dynamic RAM) pamięć dynamiczna wykonana w oparciu o tranzystory MOS. Pamięć ta jest wolniejsza niż pamięć SRAM a w dodatku jest ona ulotna. Aby pamięć ta nie utraciła danych trzeba ją odświeżać z częstotliwością co najmniej kilkaset Hz. Odświeżanie polega na zwykłym odczycie zawartości komórki.

Okres odświeżania do kilkunastu ms w czasie odświeżania pamięć niedostępna.

SDRAM (Synchronous Dynamic RAM) pamięć dynamiczna, synchroniczna. Pamięć ta jest podobna do pamięci DRAM, z tym że dostęp do komórek pamięci jest zsynchronizowany z zewnętrznym zegarem taktującym procesor.taktowanie 100MHz ,150MHZ,...długość słowa = 8 bajtów SDRAM DIMM oznaczane są PC 100 , PC 150

DDR (Double Data Rate) SDRAM Taktowanie 100 MHz , 150 MHz , 200MHz, przepustowosć 2x zegar x 8B = 1600, 2400,3200 MB/s

- DDR ,SDRAM DIMM oznaczenia wskazują na przepustowość PC1600, PC 2400 ,PC 3200.

Dostęp do pamięci DRAM

- pobieranie danych z wiersza pamięci - w trybie „burst”

- skrócenie średniego czasu dostępu do danych

- czas odświerzania przypada na odczyt wiersza danych

Organizacja pamięci, podstawowe parametry: podstawowym elementem jest komórka pamięci wszytskie komórki mają wspólne cechy

-mają 2 stabilne (lub półstabilne ) stany , które mogą być użyte do reprezentowania 1 i 0

-umożliwiają zapis (przynajmniej jednokrotny )

-umożliwiają odczyt..

Wydajność pamięci:

-czas dostępu - -czas który upływa od podania adresu : sygnał odczytu 10 pojawienie się odczytanych danych na magistrali danych

pamięci

-czas cyklu pamięci - czas dostępu + dodatkowy czas 10 następnego dostępu

-prędkość transferu - szybkość z jaką dane mogą być wprowadzane do jednostki pamięci z niej wyprowadzane.

Tablicowanie - służy do zidentyfikowania miejsc wzajemnie równoważnych

Pamięć wirtualna odwzorowuje używane zasoby dyskowe w pamięci operacyjnej.

Mechanizm pamięci wirtualnej działa jak „cache” do dysku . Tłumaczenie adresów pamięci wirtualnej zamienia adresy wirtualne nieistniejące fizycznie

Zalety pamięci wirtualnej

-pozwala wielu programom dzielić tę samą pamięć fizyczną

-programiści mogą pisać kod korzystając z bardzo dużej przestrzeni adresowej

-mechanizm Pam. Wirtu. dba o właściwą wymianę stron lub segmentów danych na dysk.

-blok pamięci cache => strona lub segmenty

-chybienie cache => brak strony w pamięci operacyjnej lub błąd adresowania

Segmentacja pamięci pozwala wielu użytkownikom korzystać z kodu ,np. procesora tekstów mając własne części pamięci wykorzystywane do przechowywania swoich tekstów i konfiguracji programów.

Fragmentacja:

• Fragmentacja zewnętrzna (external fragmentation): suma wolnych obszarów w pamięci wystarcza na spełnienie zamówienia, ale nie tworzą one spójnego obszaru.

Reguła 50 procent - w strategii pierwszego dopasowania z powodu fragmentacji straty wynoszą na ogół ok. 50% tego co zostało przydzielone.

• Fragmentacja wewnętrzna (internal fragmentation): Przydzielona pamięć może być nieco większa niż zamawiana (nie opłaca się trzymać informacji o bardzo małych dziurach) - ten nadodatek znajduje się wewnątrz przydzielonego obszaru, ale jest niewykorzystywany.

Pamięci o dostępie sekwencyjnym (masowe) (pamieci dyskowe , dyskietki ) pamięć zorganizowana za pomocą rekordów , dostęp jest możliwy w określonej sekwencji liniowej . Do oddzielania rekordów i do pomocy przy odczycie są wykorzystywane do przechowywania informacji adresowych , w rezultacie czas dostępu do różnych rekordów może się bardzo różnić.

Pamięci skojarzeniowe - rodzaj dostępu swobodnego , słowo jest wyprowadzane raczej na podstawie części swojej zawartości niż na podstawie adresu . Każda lokacja ma własny mechanizm adresowania, a czas dostępu jest stały i nie zależny od poprzednich operacji dostępu <pamięci podręczne>

Pamięć podręczna

Zasada lokalności:

-czasowa: w zadanym niewielkim odcinku czasu zakres używanych adresów pamięci przez program jest zwarty i niewielki

-przestrzenna: treść i dane programu zajmują zwartą przestrzeń adresową. Programy wykonywane są sekwencyjnie z kolejnych komórek pamięci.

Zarządzanie pamięcią, pobranie, przydział i wymiana danych:

Wybór strategii zarządzania pamięcią podręczną ma znaczny wpływ na współczynnik trafień. Zasady kopiowania informacji z pamięci masowej do pamięci operacyjnej. Obejmuje ona:

-strategie wypełnienia pamięci podręcznej obejmujące zasady odwzorowania linii pamięci głównej w pamięci podręcznej

-strategie pobrania linii z pamci głównej obejmujące reguły podejmowania decyzji o wypełnieniu linii

-strategie aktualizacji i wymiany kopii w pamięci podręcznej.

Strategie pobrania:

-żądanie pobierania danych brak danych w pamięci operacyjnej

-realizacja uprzedzającego pobrania implementując zasade lokalności pobierania się na zapas sąsiednie do uprzednio pobranych, dane z pamięci podręcznej

Strategie przydziału:

-BF (best fit) blok umieszczony w pierwszej "dziurze" o wystarczającym rozmiarze, lista dziur o rosnącym rozmiarze, adresy nieuporządkowane

-FF (first fit) blok umieszczony w pierwszej "dziurze" o wystarczającym rozmiarze,dresy uporządkowane rosnąco(kumuluje male dziury)

-WF (worst fit) blok umieszczony w pierwszej "dziurze" o wystarczającym rozmiarze, lista dziur o malejącym rozmiarze, adresy nieuporządkowane(pozostałe dziury są duże)

-BB (binary buddy) blok umieszczony w pierwszej "dziurze" o wystarczającym rozmiarze, dziury uporządkowane wymiarami, adresy uporządkowane kolejno.

Co pewien czas dokonuje się defragmentacja stąd istotną cechą strategii przydziału jest łatwość realizacji tego zadania . Obraz pamięci po BF i WF trudny do defragmentacji.

Strategie wymiany:

Pamięć z blokami o stałym rozmiarze:

-FIFO - nie uwzględnia intensywności użytkowania

-losowa - przydatna dla programów bazo - danowych

-FINUFO (firstin, notused, firstout) - uwzględnia znaczki używalności

-LRU (last recently used)- wymienia blok najdawniej używany

Pamięć z blokami o zmiennym rozmiarze:

-WS wymiana całego zbioru roboczego

-PFF wymiana nie używanych stron po przekroczeniu progu występowania błędu braku strony.

Trafienie obecność poprzedniej kopii danych w pamięci podręcznej

-współczynnik trafienia h prawdopodobieństwo znalezienia poprzedniej kopii danych

-czas trafienia Tca czas dostępu do danej + czas określenia czy dana jest w pamięci

Chybienie -współczynnik chybień m=1-n

-strata czasu Tmp czas wymiany bloku danych w pamięci podręcznej

Średni czas dostępu Ta=(1-m)Tac+m(Tpao+Tmp)

Organizacja pamięci:

-linia blok danych w pamięci podręcznej

dane + wskaźniki towarzyszące

Typowa linia od 4 do 8 słów, liczba linii w pamięci podręcznej 64-4096. PAo

podzielona na bloki po k słów, pamięć podręczna zawiera C linii po k słów, zawiera 2 do n słow.

Operacje na pamięci:

-unieważnienie linii

-wypełnienie pobranie danych bloku z PAO

-odczyt danej :*"hit on read" dana odczytywana i przekazywana do procesora

*"miss on read" brak danej przejście do wypełnienia linii

-zapis danej : *zapis jednoczesny z uaktualnieniem wszystkich kopii na wyższych poziomach pamięci

*zapis lokalny zapis tylko w pamięci podręcznej

*zapis bezpośredni zapis wprost do PAO i unieważnienie linii.

Reguły odwzorowania PAO w pamięci podręcznej:

-całkowicie skojarzeniowa, dowolna linia PAO może być skopiowana do pamięci podręcznej

- z odwzorowaniem bezpośrednim, rozłączne linie w PAO odwzorowane przez linie pamięci podręcznej

-wielodrożna, rozłączne zbiory linii w PAO odwzorowane prze rozłączne zbiory linii(bloki) w pamięci podręcznej

Lista rozkazów

Cechy dobrej listy rozkazów

-łatwo rozszerzalna , przenośna

-uniwersalna

-pozwala na sprawną implementację narzędzi do programowania na „niskim poziomie”

-dogodnie może być wykorzystywana przez oprogramowanie wyższego poziomu

Rozkaz, mnemonik, argumenty:

Każdy rozkaz reprezentowany jest za pomocą ciągu bitów, rozkaz dzielony jest na pola odpowiadające elementom składowym rozkazu ten obraz rozkazu nazywa się formatem rozkazu dla programistów rozkazy są reprezentowane za pomocą symbolicznej reprezentacji rozkazów maszynowych kody operacji są zapisywane za pomocą skrótów zwanych mnemonikami. Argumenty zostają zapisywane lub odczytywane z pamięci głównej lub wirtualnej, rejestrach procesora bądź z urządzenia wejścia-wyjścia.

Specyfikacja rozkazów:

-składnia (syntax)

-funkcja (operation)

-cechy (atributes)

-opis funkconalny (decscription)

-sposób modyfikacji wskaź. w procesorze (condition codes)

-format kodu (code structure)

Rodzaje rozkazów:

-rozkaz arytmetyczno-logiczny (przetwarzanie danych)

-rozkazy pamięciowe (przechowywanie danych)

-rozkazy WE/WY (ruch danych)

-rozkazy testowania i rozgałęziania (sterowanie)

Stos Stos jest zbiorem lokacji funkcjonującym za zasadzie ostatnie na wejściu- pierwszy na wyjściu . Stos znajduje się w znanym położeniu i często przynajmniej jego 2 szczytowe dane znajdują się w rejestrach procesora.

Wskaźnik stosu -(stach pointer) - rejestr procesora, adresuje pamięć o organizacji typu stos, wskazując tzw. wierzchołek stosu, czyli adres ostatnio zapisanych danych

Wykorzystanie STOSU

-do tymczasowego zapisu danych

-przechowywanych w rejestrach

-w fazie wykonywania rozkazu przez mikrokomp.

-przechowywania danych ... za pomocą notacji przyrostkowej

-zapis zawartości licznika rozkazów PL

Wyrównanie danych: big Indian i littre Indian:

Słowo dwubajtowe można zapisać w pamięci na dwa sposoby: w kolejności big-endian, czyli z bardziej znaczącym bajtem jako pierwszym, lub w kolejności little-endian, w której pierwszeństwo ma bajt mniej znaczący. Wypada tu także powiedzieć, co rozumiemy jako „pierwszeństwo'' - pierwszym jest ten bajt, który przechowywany jest w komórce pamięci o niższym adresie.

0x01 graphic
0x01 graphic

Liczba 1234H w kolejności: big endian little endian

Sposoby adresowania:

a) natychmiastowe gdy w formacie rozkazu po słowie operacji następuje bezpośrednio argument, czyli nia ma potrzeby pobierać go

ani z pamięci, ani z żadnego rejestru procesora.

b) rejestrowe - Żądany rejestr roboczy zazwyczaj jest wybierany przez wydzielone pole w słowie operacji.

c) wskaźnikowe - Jeśli w rejestrze roboczym jest umieszczony nie argument, lecz jego adres zwany wskaźnikiem argumentu, to

otrzymuje się adresownie wskażnikowe, określane również jako rejestrowe pośrednie

d)bezpośrednie - adres argumentu jest umieszczony wprost w części adresowej rozkazu

e)indeksowe - Nazwa ta pochodzi od typowego zastosowania, związanego z operacjami na tablicach. Wówczas adrse początku

tablicy umieszcza się w części adresowej rozkazu, a pozycję (indeks) elementu tablicy określa zawartość rejestru indeksowego,

którą można łatwo modyfikować (np. cyklicznie zwiększać lub zmniejszać o 1)

f) względne (bazowe) - rejestr bazowy zawiera adres początku struktury (np. rekordu), natomiast część adresowa rozkazu zawiera

odpowiednie przesunięcie tego adresu.

Projektowanie listy:

-częstość użycia rozkazów

-częstość użycia trybów adresowania

-koncepcja architektury

-struktura kodu rozkazu

Komputery CISC i RISC

Mikroprogram, realizacja sterowania w postaci sterowania o n bitowych słowach zwanych mikroinstrukcjami które reprezentują wartość lini sterujących mikroprocesor i która jest adresowana przez licznik mikroinstrukcji.

-W kolejnych cyklach zegara mikroinstrukcje są podawane na wyjscie pamięci zapewniając prawidłową realizację każdej instrukcji.

-Sekwencje mikroinstrukcji realizujące wszystkie instrukcje procesora nazywa się mikroprogramem.

-Niektóre mikroinstrukcje mogą być wspólne dla instrukcji mikroprocesora co ogranicza pamięć mikroprogramu a liczba wszystkich mikroinstrukcji może być równa liczbie stanów maszyny stanowej.

-Mikroprogram musi mieć możliwość zarówno wykorzystywania sekwencyjnego jak i wykonywania skoków bezwarunkowych bezwarunkowych warunkowych wewn.

Klasyfikacja Flynn'a:

Opiera się na rozmiarach strumieni danych instrukcji

-SISD pojedyncza instrukcja i dana

-SIMD jeden procesor wiele danych

-MIMD wiele instrukcji i danych

-MISD wiele instrukcji i jeden strumień danych

Klasyfikacja Trealeaven'a:

Klasyfikacja oparta na mechanizmach sterowania oraz wymiany danych w jednostkach obliczeniowych

Wyróżnia się mechanizmy sterowania

-przekazywanie sterowania

-przekazywanie danych jednostki obliczeniowe oczekują na dane i uaktywnianie są gdy dane dostają

-przekazywanie żądań jednostki obliczeniowe żądają danych

-poszukiwanie skojarzeń po spełnieniu warunku lub wskutek skojarzenia następuje wykonanie danych.

Topografie systemów komputerowych:

-przełącznica -magistrala -pierścień -siatka -gwiazda -drzewo -mieszany -hipersześcian

Przetwarzanie potokowe:

Dekompozycja rozkazu przetwarzania:

-pobranie rozkazu

-dekodowanie rozkazu

-obliczanie efektywnych adresów argumentów

-pobieranie argumentów

-wykonanie rozkazu (z reguły zajmuje najwięcej czasu !)

-zapisanie argumentu

Problem rozgałęzień:

-zwielokrotnienie strumienia

-pobieranie rozkazu docelowego z wyprzedzeniem

-bufor pętli

-przewidywane rozgałęzienia

-opóźnione rozgałęzienie

Cechy architektury potokowej

-instrukcje wykonywane na zakładkę

-każdy blok architektury jest wykorzystywany w każdym cyklu zegara

-czas wyszukiwania informacji musi być identyczny

-wzrost wydajności jest proporcjonalny do liczby faz instrukcji

-łatwiejsza realizacja danych

-instrukcje wykorzystują po kolei wszystkie zasoby procesora

-komplikacja sprzętu,

-każdy blok arch. proc. jest wykorzystywany w każdym cyklu zegarowym, przetwarzając inne fazy różnych instrukcji

-czas wykonywania wszystkich instrukcji musi być identyczny

-czas wykonywania pojedynczych instrukcji w przetwarzaniu potokowym nie zmniejsza się

Potoki i superpotoki:

Potoki i superpotoki - hazardy

*Hazardy strukturalne - procesor nie ma dość zasobów, aby obsłużyć w trybie potokowym dana kombinację instrukcji

*Hazardy sterowania - związane są z instrukcjami rozgałęzień w programie. Jeżeli instrukcja skoku nakazuje skok do instrukcji nieobecnej w pamięci podręcznej poziomu 1, wówczas konieczne jest pobranie instrukcji z pamięci głównej co powoduje zawieszenie wykonania potokowego.

*Hazardy danych

-próba czytania danych przed zapisem,

-próba zapisu przed zakończeniem czytania,

-próba zapisu przed zakończeniem zapisu.

Magistrale

Obsługa programowa przerwania:

DMA:

Wymiana danych pomiędzy elementami systemu komputerowego:

Specyfikacja magistrali:

Magistrala zestaw linii połączeń między elementami systemu komputerowego. Wadą jest ograniczoność, tylko żadna ilość urządzeń, opóźnienie przez sprzęt . Prędkość magistrali (czas obsługi wymiany danych, czas dostępu). Magistrala jest drogą zapewniającą komunikację między urządzeniami. Główną charakterystyczną cechą magistrali jest to, że jest ona wspólnym nośnikiem transmisji. Do magistrali dołącza się wiele urządzeń, a sygnały wysyłane przez którekolwiek z nich mogą być odbierane przez wszystkie pozostałe urządzenia. Jeśli dwa urządzenia nadawałyby w tym samym czasie, ich sygnały nakładałyby się i ulegały zakłócaniu. W określonym czasie może więc nadawać tylko jedno urządzenie. Często magistrala składa się z wielu dróg (linii) komunikacyjnych. Każdą linią mogą być przesyłane sygnały reprezentujące binarne 0 i 1. W ciągu pewnego czasu przez pojedynczą linię może być przekazana sekwencja cyfr binarnych. Wiele linii zawartych w magistrali można wykorzystywać razem do jednoczesnego (równoległego) transmitowania cyfr binarnych. Na przykład 8-bitowa jednostka danych może być przesyłana przez 8 linii magistrali. System komputerowy zawiera pewną liczbę różnych magistrali, które łączą zespoły komputera na różnych poziomach hierarchii. Magistrala łącząca główne zespoły komputera (procesor, pamięć, wejście-wyjście) nazywana jest magistralą systemową. Najczęściej spotykane struktury połączeń komputera wykorzystują jedną lub więcej magistrali systemowych.

Transakcja, protokół:

Hand shake:

Arbitraż, błędy działania:

Magistrala szeregowa USB:

Magistrala równoległa PCI:

System połączeń urządzeń peryferyjnych PCI (skrót od ang. Peripheral Component Interconnect) jest współczesną, szerokopasmową magistralą niezależną od procesora. W porównaniu z innymi, powszechnie spotykanymi magistralami PCI umożliwia uzyskanie większej wydajności systemu, jeśli są wykorzystywane szybkie podsystemy wejścia-wyjścia (np. sterowniki interfejsów sieciowych, sterowniki dysków i inne). Magistrala PCI pracująca w trybie 33 MHz pozwala na osiągnięcie teoretycznej maksymalnej przepustowości 132 MB/s. Jej 64 bitowe rozszerzenie (pracujące z częstotliwością 66 MHz) umożliwia transfer z maksymalną prędkością 264 MB/s. Magistrala PCI została zaprojektowana jako ekonomiczne rozwiązanie spełniające wymagania wejścia-wyjścia w nowoczesnych systemach. Wymaga niewielu mikroukładów i wspomaga działanie innych magistrali, związanych z magistralą PCI. Do magistrali PCI mogą być podłączone dwa rodzaje urządzeń: inicjatory (initiator) mogące przejmować kontrolę nad magistralą oraz jednostki podporządkowane (slave) zdolne tylko do transmisji danych. Transmisja może przebiegać między dwoma inicjatorami lub inicjatorem i jednostką podporządkowaną.

1

WE / WY

Jednostka sterujaca

CPU

Pamięć główna

Pamięć programu

CPU

Jednostka sterujaca

WE / WY

Pamięć danych

Taśmowe

Skojarzeniowe

O dostępie sekwencyjnym

O dostępie swobodnym

Pamięci

dyskowe

RAM

ROM

SRAM

DRAM



Wyszukiwarka

Podobne podstrony:
ASK w2 id 70602 Nieznany (2)
li ask zz ge3 5E2JZTQ5PYH7Q3CI6HVII64U3BJBL6JHS7BPSTA
ASK w1
ASK m1
ASK 11 Autoryzacja
ASK notatki
ASK Kolokwiumnr1
sprawko 1 grafika Ask
ASK m sz przetw
ASK 11 PiotrGębala MateuszMacięga
LI ASK RT IT700
01 ASK Tematy referatów 2012
ASK 12 Parallel
sciaga-skrocona, Informatyka Stosowana, Architektura systemów komputerowych, ASK
LI ASK SA IT711
ASK w4 id 70603 Nieznany
MWP ASK
calosc ask
ASK 3
ASK 12 FTP

więcej podobnych podstron