Maszyna von Neumana
Rodzaj architektury komputera opisana przez matematyka Johna von Neumana w 1945r,zakłada ona podział na 3 części: procesor pamięć ...
5 downloads
8 Views
Maszyna von Neumana
Rodzaj architektury komputera opisana przez matematyka Johna von Neumana w 1945r,zakłada ona podział na 3 części: procesor pamięć główna urządzenia wejścia wyjścia. Komórki pamięci w architekturze mają jednakowy rozmiar, zawierają one jednostki informacji zwane słowami. Komórki te tworzą uporządkowany zbiór, każda komórka ma przypisany unikalny numer zwany adresem. Zawartość komórki może być zmieniony tylko przez program (uniwersalność). Dane i instrukcje przechowywane w tej samej pamięci jednakowo dostępnej do odczytu i zapisu i zakodowane są za pomocą liczb. Praca systemu polega na sekwencyjnym odczytywaniu instrukcji z pamięci i wykonywanie przez procesor. System ma skończoną i w pełni funkcjonalną listę rozkazów.
Neumann bottleneck –szybkie przetwarzanie instrukcji i danych przez procesor , ale oczekiwanie na pobranie instrukcji z pamięci
Architektura Princeton wspólna pamięć programów i danych, wspólna magistrala do przechowywania danych i kodu, uporządkowany dostęp do danych i instrukcji, brak równoczesnego pobierania danych i instrukcji, pamięć dostępna do odczytu i zapisu, procek szybko przetwarza dane ale musi czkać na pobranie instrukcji, jedna wspólna magistrala
Architektura Harwardzka:
Pamięć danych oddzielona od pamięci instrukcji, pamięć ta może różnic się od siebie technologią wykonania. System ma jednakowy dostęp do danych i instrukcji, dzięki temu i prostej budowie system jest szybszy od architektury Pinceton. Pamieć ma oddzielne magistrale do procesora. Pamięć programu tylko dostępna do odczytu.
Architektura Harward-Princetown:
Wspólna pamięć programu i danych. Łączy zalety architektury Harward(wydajność) i Princetown(modyfikacja pamięci). Dostęp do pamięci instrukcji, która może zawierać stałe dane w postaci łańcuchów znaków. Możliwość zapisy do pamięci programu. Eliminacaj konfliktu odwołań do pamięci.
Ograniczenia Rozwoju Technologi Półprzewodników:
Jest to granica zmniejszania rozmiaru tranzystorów, nie możemy zwiększać w nieskończoność częstotliwości taktowania procesora. Problemy z emitowanym ciepłem z procesora. Nie możemy przesyłać informacji niż wykonywać czynności.
Taksonomia Flyna:
Klasyfikacja architektór komputerowych która opiera się na liczbie przetwarzanych strumieni danych i rozkazów:
SISD (single instruction, single data)- przetwarza jeden strumień danych i wykonuje jeden program, komputery sekwencyjne, zawierają jeden procesor i jeden blok pamięci operacyjnej(maszyna von Neumana).
SIMD(single instruction, multiple data)- przetwarza wiele strumieni danych ale wykonuje jeden program, są to komputery wektorowe wykorzystywane do obliczen naukowo technicznych.
MISD(multiple instruction, single data)- przetwarza jeden strumień danych ale wykonuje równolegle wiele programów,
MIMD(Multiple Instuction, multiple Data) wykonuje równolegle wiele programow każdy z nich przetwarza własne strumienie danych.
Wieloprocesory i Wielokomputery:
- Multiprocessors (wiele układów mikroprocesorów) wspólna pamięć w wieloprocesorze, istnieje pojedyńcza przestrzeń adresowa współdzielona przez wszystkie procesy gdzie odbywa się komunikacja. Jedna zmiana pamięci od razu widzialna dla każdego procesu. Wyróżniamy:
środowisku progarmistycznym, testowanie modułów systemu)
4.testowanie(w celu wykrycia błędów w systemie, oceny niezawodności systemu)
5.konserwacja (instalacja, wypełnianie baz, szkolenia, nadzór systemu, usunięcie błędów , przekazanie klientowi )
6.faza strategiczna
(okreslenie strat celów, okreslenie wymagan, analiza rozwiazan)
7.analiza
(rozpoznanie czynników lub warunków, zmiana wymagań użytkownika, ustalenie kontekstu projektu)
8.dokumentacja
9.instalacja
10.szkolenia
Modele cyklów życia oprogramowania:
Model kaskadowy
-Kolejne etapy następują po sobie
-każda faza zaczyna się po zakończeniu poprzedniej
Zalety:
-ułatwione zarządzenie projektem
Wady:
-narzucona ścicła kolejnośc wykonania instrukcji
-wysoki koszt błędów popełnionych wcześniej w innych w fazach
-długa przerwa w kontakcie z klientem
-próba zmian to duży koszt
Model kaskadowy z interacjami
-możliwość na każdym etapie powrót do poprzednich
-bardziej realistyczny od modelu oryginalnego
-likwidacja podstawowych wad modelu kaskadowego
Zalety:
-możliwość realizacji innych faz przez inną firmę
-ścisła współpraca z klientem
-łatwe planowanie i monitorowanie
Wady :
-duży nakład pracy do stworzenia dokumentacji
-przerwy w realizacji przeznaczone na sprawdzanie dokumentacji przez klienta
Model V
-rozbudowana faza testowa
-testy mające na celu sprawdzenia poprawności wykonania
-rozbudowana sekwencja etapów ma na celu otrzymanie najwyższej jakości produktu
Prototypowanie
-prototyp- niepełny system spełniający część wymagań, przeznaczony do testów
-celem jest minimalizacja wykrycie nieporozumień co do wymagań
-fazy realizacji:
*ogólne określenie wymagań
*budowa prototypu
*weryfikacja przez klienta
*pełne ookreślenie wymagań
*realizacja pełnego systemu zgodnie z modelem kaskadowym
Zalety:
-wykrycie nieporozumień w określeniu wymagań
-znalezienie brakujących funkcji przed projektowaniem
-możliwośc szybkiej demonstracji
-rozpoczęcie szkoleń przed powstaniem pełnej wersji
Wady*dodatkowy koszt na prototyp
*niezadowolenie klienta który musi długo czekać po zobaczeniu prototypu i duzo płacić za końcowy system
Ścieżka krytyczna to ta która zajmuje najwięcej czasu(suma cyfr w środkowej komórce)
1 2 3
4
5 6 7
1maxymalna wartość z kratki nr 3 ze wcześniejszych komórek powiększona o 1 (wartość )
2.różnica pola1-pole5 lub 3 i 7
3. to suma pola 1(z tej samej komórki)+czas(z tej samej komórki)-1(wartość )
4czas
5.wartość z 7 (z tej samej komórki)-czas (z tej samej kom)+1(wartość )
6.różnica między polami1 i 3 minus wartość 1
7.minimalna warość z 5( idąc z prawej strony wykresu) -1(wartość )
Protokół mesi - protokół spójności danych w pamięci podręcznej komputera, określa każdą linie pamięci na dodatkowych dwóch bitach. Wyróżniamy 4 określenia:
Modified zmodyfikowana linia dostępna tylko w jednej pamięci podręcznej,
exclusive - linia zgodna z pamięcią operacyjną,
shared- zgodna z pamięcią operacyjną i występuje w innych pamięciach podręcznych,
invaild - linia nieużywana.
Strategie zapisu:
read hit-szybki dostęp do danych,
read miss-ładowanie bloku do pamieci podręcznej,
write miss-zapis do pamięci głównej,
write hit – podzielone na :
-write-trought jednocześnie zapisuje do pamięci podręcznej i głównej,
-write-back zapis do pamięci podręcznej pamięć główna uaktualnia się po odwołaniu się do bloku pamięci,
-write-once pierwszy zapis do pam podręcznej powoduje ustawienie znacznika modyfikacji i aktualizacje pamieci głównej a kolejne zapisy odbywają się w pamieci podręcznej.
Podstawory rejestr procesora:
-rejestr danych-przechowuje dane takie jak wynik obliczeń,
-rejestr adresowy-przechowywanie adresów, uzyskanie dostępu do pamieci.
Przetwarzanie potokowe-każdy blok może mieć swoją logikę, ale następne bloki są uzależnione od poprzedników, skutkuje to tym że jeśli dany blok wpadnie w pętle nie wykonają się następne.
Metoda punktów funkcyjnych:
-służy do szacowania miary zastosowania programów
-polega ona na wydzieleniu 5 typów punktów i na podstawie ich określić miarę zastosowania programu
Moc obliczeniowa-ilość obliczeń arytmetycznych które może wykopnąć komputer w danym czasie. Ponieważ jest wiele architektur komputerowych na moc obliczeniową wpływają również inne czynniki takie jak wydajność pamięci operacyjnej lub szybkości komunikacji między podzespołami.
Architektura chipsetu procesora Intel Core i7 zintegrowany Kontroler pamięci z procesorem, Dedykowana magistrala łącząca procesor z pamięcią Trójkanałowy kontroler pamięci , Wyeliminowano magistralę systemową ,Szybki interfejs
-UMA – jednolity dostęp do pamięci, wspóna pamięć dla wszystkich procesorów, czas dostępu taki sam dla wszystkich procesorów
-NUMA- brak jednolitego dostępu do pamieci, pamięci lokalne procesorow tworzą pamięc globalną która jest dostępna dla procesorów jednolitej przestrzeni,czas dostępu do pamięci zależny od położenia komórki względem procesora, procesor ma szybszy dostęp do swojej pamięci lokalnej niż globalnej
-COMA- dostęp przez pamięć cache, pamięć współdzielona złożona z pamięci podręcznych poszczególnych procesorów, wspólna przestrzeń adresowa obejmująca moduły cache.
-Multicomputers- każdy komputer ma swoją pamięć fizyczną (oddzielną) brak pamięci wspólnej, komunikacja przez sieć połączeń,
MPP:
Wezłami systemy są urządzenia specjalnie zaprojektowane wieloprocesory, karty graficzne itp. Superwęzeł- najczęściej wieloprocesor ma najczęściej dostęp do własnej pamięci, połączona przełącznikami (swich) ,duże możliwości rozbudowy, modułowa budowa.
Klastry Obliczeniowe:
-węzłami są urządzenia typowe (np.PC),równoległy lub rozproszony system składający się z PC, połączone z siecią lokalną
Podsystem połączeń w systemie- łączy jednostkę centralna pamięć i podsystem wejścia wyjścia, jest kilka różnych magistrali bloków systemu, z dostosowanymi parametrami szybkości przesyłu sygnału.
Łącza:
-szeregowe-polega na przesyłaniu danych sekwencyjnie bit po bicie, informacja wprowadzana do rejestru przesuwnego styku szeregowego który wysyła kolejno bity na wyjście układu
-równolegle-polega na przesyłaniu pól słowa danych jednocześnie, równoległy przesył powoduje większą prędkość przesyłu, Ograniczenia to ograniczona możliwość zwiększania częstotliwości rozprzestrzeniania sygnału, skomplikowana struktura połączeń
Przepustowość magistrali- przepustowość= szerokość magistrali * częstotliwość * liczba maksymalna
Dual Chanel-architektura dwukanałowa, technologi stosowana do wydajniejszej obsługi Ram’u, polega na podwojeniu przepustowości przesyłu danych międzi kontrolerem pamięci a pamięcią RAM
PCI-Express- połączenie point-to-point służące do instalacji kart rozszerzeń na płycie głównej, nie jest magistralą i jest nikompatybilna ze zwykłym PCi.
Prawo Moore’a – liczba tranzystorów umieszczonych w układzie scalonym rośnie wykładniczo w czasie, na podwojenie liczby elementów potrzeba około 18-24 miesięcy
Podstawowe rejestry procesora:
-Rejestry ogólne
-Rejestry adresowe
-Wskaźnik stosu SP (Stack Pointer)
-Rejestr znaczników
-Licznik rozkazów PC (Program Counter)
Instrukcje na procesorach
-push umieszczenie wartości na szczycie stosu
-pop zdjęcie wartości ze stosu
-instrukcje używające stosu: call instrukcje wywołana procedury,int przerwań programowych, ret instrukcja powrotu
Cykl życia oprogramowania : 1 2 3 4 5
6 7 910 8
1.określenie wymagań
(określenie wymagań klienta do systemu,zdefiniowanie wymagań funkcyjnych i niefunkcyjnych, przygotowanie dokumentacji)
2.projektowanie(projektowanie interfejsu, zarządzanie danymi i pamięcią) 3.implementacja(kodowanie modułów