Zbigniew S. Szewczak Podstawy Systemów Operacyjnych



Podobne dokumenty
Architektura komputerów

Technologie informacyjne - wykład 2 -

Architektura komputerów

Architektura komputerów

Technologia informacyjna. Urządzenia techniki komputerowej

dr inż. Jarosław Forenc

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

Struktura systemów komputerowych

Magistrala systemowa (System Bus)

Architektura komputerów

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Architektura systemu komputerowego

URZĄDZENIA WEJŚCIA-WYJŚCIA

Budowa systemów komputerowych

Architektura komputerów

Architektura harwardzka Architektura i organizacja systemu komputerowego Struktura i funkcjonowanie komputera procesor, rozkazy, przerwania

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Wstęp do informatyki. Interfejsy, urządzenia we/wy i komunikacja. Linie magistrali

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Który z podzespołów komputera przy wyłączonym zasilaniu przechowuje program rozpoczynający ładowanie systemu operacyjnego? A. CPU B. RAM C. ROM D.

43 Pamięci półprzewodnikowe w technice mikroprocesorowej - rodzaje, charakterystyka, zastosowania

Architektura systemu komputerowego

Podstawowe zadanie komputera to wykonywanie programu Program składa się z rozkazów przechowywanych w pamięci Rozkazy są przetwarzane w dwu krokach:

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Architektura komputerów. Układy wejścia-wyjścia komputera

Zasada działania pamięci RAM Pamięć operacyjna (robocza) komputera - zwana pamięcią RAM (ang. Random Access Memory - pamięć o swobodnym dostępie)

Pamięć. Podstawowe własności komputerowych systemów pamięciowych:

Urządzenia zewnętrzne

Chipset i magistrala Chipset Mostek północny (ang. Northbridge) Mostek południowy (ang. Southbridge) -

Wykład II. Pamięci operacyjne. Studia stacjonarne Pedagogika Budowa i zasada działania komputera

Bajt (Byte) - najmniejsza adresowalna jednostka informacji pamięci komputerowej, z bitów. Oznaczana jest literą B.

Interfejs urządzeń peryferyjnych

LEKCJA TEMAT: Zasada działania komputera.

Podstawy Informatyki JA-L i Pamięci

RODZAJE PAMIĘCI RAM. Cz. 1

8. MAGISTRALE I GNIAZDA ROZSZERZEŃ. INTERFEJSY ZEWNĘTRZNE.

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Wykład 14. Zagadnienia związane z systemem IO

Budowa Mikrokomputera

Jednostka centralna. Miejsca na napędy 5,25 :CD-ROM, DVD. Miejsca na napędy 3,5 : stacja dyskietek

Programowanie Niskopoziomowe

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Urządzenia wejścia-wyjścia

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

2. Podstawowe elementy PC

Działanie systemu operacyjnego

Pamięć operacyjna komputera

Architektura komputera

Opracował: Grzegorz Cygan 2012 r. CEZ Stalowa Wola. Pamięci półprzewodnikowe

Budowa komputera: dr inż. Jarosław Forenc. Zestaw komputerowy Jednostka centralna. płyta główna (przykłady, standardy)

Działanie systemu operacyjnego

Technika Mikroprocesorowa

Wykład II. Pamięci półprzewodnikowe. Studia Podyplomowe INFORMATYKA Architektura komputerów

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 2. Przedmowa Wstęp... 13

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Mikroprocesor Operacje wejścia / wyjścia

Układy wejścia/wyjścia

System mikroprocesorowy i peryferia. Dariusz Chaberski

Działanie systemu operacyjnego

Podstawowe, najczęściej spotykane elementy stacjonarnego komputera osobistego klasy PC

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

T2: Budowa komputera PC. dr inż. Stanisław Wszelak

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Płyta główna (ang. motherboard) najważniejsza płyta drukowana urządzenia elektronicznego, na której zamontowano najważniejsze elementy urządzenia, umo

Pamięć RAM. Pudełko UTK

Budowa pamięci RAM Parametry: tcl, trcd, trp, tras, tcr występują w specyfikacjach poszczególnych pamięci DRAM. Czym mniejsze są wartości tych

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Struktura i działanie jednostki centralnej

Systemy Operacyjne i Sieci Komputerowe

Architektura systemów komputerowych. dr Artur Bartoszewski

Komputerowa pamięć. System dziesiątkowego (decymalny)

Systemy operacyjne. Struktura i zasady budowy. Rozdział 1 Wprowadzenie do systemów komputerowych

W sklepie komputerowym sprzedawca zachwala klientowi swój najnowszy towar: -Ten komputer wykona za pana połowę pracy! - W takim razie biorę dwa.

System pamięci. Pamięć podręczna

Wykład II. Pamięci półprzewodnikowe. Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych

Organizacja typowego mikroprocesora

Z parametrów procesora zamieszczonego na zdjęciu powyżej wynika, że jest on taktowany z częstotliwością a) 1,86 GHz b) 540 MHz c) 533 MHz d) 1 GHz

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Architektura komputerów

Zagadnienia związane z systemem IO

dr inż. Jarosław Forenc

Budowa komputera: dr inż. Jarosław Forenc. IDE - Intelligent Drive Electronics, Integrated Device Electronics inne nazwy:

Temat 2. Logiczna budowa komputera.

LEKCJA. TEMAT: Pamięć operacyjna.

Charakterystyka urządzeń zewnętrznych

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Architektura systemów komputerowych. dr Artur Bartoszewski

Zaleta duża pojemność, niska cena

Wykład II. Pamięci półprzewodnikowe. Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych

Przestrzeń pamięci. Układy dekoderów adresowych

ARCHITEKTURA PROCESORA,

Transkrypt:

Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 3 Struktura systemu komputerowego Toruń, 2004

System komputerowy Struktura komputera Magistrala systemowa Funkcje jednostki centralnej Struktura wejścia/wyjścia Struktura pamięci

System komputerowy Sprzęt (ang. hardware) - zasoby o specyficznej architekturze oraz organizacji zarządzane przez system operacyjny System operacyjny - program, który nadzoruje i koordynuje dostęp programów do zasobów Programy użytkowe - realizują potrzeby użytkowników systemu komputerowego (kompilatory, bazy danych, gry,...) Użytkownicy - ludzie, maszyny, komputery..

Sprzęt komputerowy (c.d.) dyski drukarki taśma jednostka centralna sterownik dysków sterownik drukarek sterownik taśmy szyna systemowa sterownik pamięci pamięć operacyjna

Struktura komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Struktura komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Magistrala systemowa System bus (ang.) Droga zapewniająca komunikację między (modułami): procesorem, pamięcią i wejściemwyjściem Tryb rozgłaszania (ang. broadcast) 50 do 100 oddzielnych linii pogrupowanych w 8, 16, 32 linii zwanych szynami linie danych - do przenoszenia danych np. szyna danych 8b a rozkaz 16b: 2 x transfer z pamięci linie adresowe - do określenia adresu danych linie sterowania - do sterowania liniami linie zasilania

Schemat magistrali...... CPU pamięć pamięć wejściewyjście wejściewyjście sterowanie magistrala adres dane

Linie sterowania Kontrola dostępu i wykorzystanie danych i adresów zapis danych z magistrali pod określonym adresem w pamięci odczyt danych spod określonego adresu pamięci zapis do portu we/wy odczyt z portu we/wy potwierdzenie przesłania (ang. transfer ACK) zapotrzebowanie na magistralę (ang. bus request) rezygnacja z magistrali (ang. bus grant) żądanie przerwania (ang. interrupt request) - zawieszenie potwierdzenie przerwania (ang. interrupt ACK) - rozpoznanie zegar - synchronizowanie opercji reset - ustawienie modułów w stanie początkowym

Linie sterowania - działanie Moduły chcą przesłać dane między sobą: uzyskanie dostępu do magistrali przekazanie danych za pośrednictwem magistrali Moduł chce uzyskać dane z innego modułu: uzyskanie dostępu do magistrali przekazanie zapotrzebowania przez linie sterowania i adresowe czekanie na dane

Stuktury wielomagistralowe Duża ilość modułów opóźnia działanie magistrali można zwiększać szybkość magistrali lub jej szerokość (z 32b na 64b) jednak szybkość modułów (grafika, video) wzrasta bardziej Struktury wielomagistralowe o określonej hierarchii lokalna magistrala: procesor <->pamięć podręczna magistrala systemowa: we/wy komunikując się z pamięcią główną poprzez interfejs szyny rozszerzenia (ang. expansion bus) nie ma wpływu na działanie procesora szyna rozszerzenia buforuje dane między magistralą systemową a sterownikami we/wy dołączonymi do szyny rozszerzenia (ang. expansion bus)

Tradycyjna magistrala systemowa (ISA) procesor magistrala lokalna Pamięć podręczna Pamięć główna Lokalny sterownik we/wy magistrala systemowa Sieć SCSI Interfejs szyny rozszerzenia Modem Drukarka szyna rozszerzenia

Magistrala o dużej wydajności Pamięć główna Procesor magistrala lokalna Cache/ Bridge magistrala systemowa SCSI FireWire Grafika Wideo LAN szyna szybkiego przesyłania FAX Konsola Interfejs szyny rozszerzenia Modem Drukarka szyna rozszerzenia

Przykład Pentium cache(l2), local bus, memory bus PCI bridge chip: local, memory, szyna PCI ISA (ang. Industry Standard Architecture) I/O bus: EIDE (ang. Enhance Integrated Drive Electronics), ATA (ang. Advanced Technology Attachment) - dyski 16,67MBps PCI (ang. Peripheral Component Interconnect) SCSI (ang. Small Computer System Interface) szybkie we/wy do 160MBps (dyski,..) USB (ang. Universal Serial Bus) wolne urządzenia we/wy do 1.5MBps, (mysz, skaner,..) IEEE 1394 (FireWire) - do 50MBps (multimedia) sygnalizacja równoległa

Struktura magistralowa Pentium L2 cache magistrala podręczna CPU magistrala lokalna most PCI magistrala pamięci pamięć magistrala pci złącza PCI SCSI USB mysz klawiatura most ISA dysk IDE adapter grafiki monitor magistrala isa złącza ISA modem karta dźwiękowa drukarka

Płyta główna

PCI-X - architektura CPU processor system bus grafika AGP memory bridge (northbridge) pamięć HubLink USB 1.1 HDD ATA Chipset I/O bridge (southbridge) lokalne we/wy PCI

PCI Express - 3GIO multimedialne systemy systemy operacyjne video-on-demand, redystrybucja audio (GbEthernet) PCI Express: szyna III generacji 2xPCI kompatybilna z PCI, zastępuje szynę AGP(ang. Accelerated Graphics Port, 4xPCI) komunikacja szeregowa technologia szyny lokalnej (nie dla szyny pamięci) www.intel.com/technology/pciexpress/devnet/ CHIP 8/2003 technologia transmisji chip-to-chip - 6.5 GBps www.hypertransport.org/technology.html

PCI Express - architektura CPU grafika memory bridge pamięć Gb Ethernet HDD Serial ATA I/O bridge 3GIO USB 2.0 lokalne we/wy mobile docking switch PCI

Struktura komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Funkcje jednostki centralnej CPU = procesor = jednostka centralna Pobieranie rozkazów z pamięci Interpretowanie rozkazów Pobieranie danych (z pamięci lub we/wy) Przechowywanie danych w pamięci Przetwarzanie danych - wykonywanie rozkazów Zapisywanie wyników (do pamięci lub na we/wy)

Schemat jednostki centralnej CPU We/Wy Komputer System Bus Pamięć CPU Rejestry Połączenia wewnętrzne CPU Jednostka arytmetycznologiczna (ALU) Jednostka sterująca

Rejestry procesora licznik programu (PC) - adres rozkazu do pobrania rejestr rozkazu (IR) - kod rozkazu rejestr adresowy pamięci (MAR) - adres lokacji rejestr buforowy pamięci (MBR) - dane do/z pamięci rejestry PSW (ang. program status word) - słowo stanu programu, informacje o stanie

PSW (bity, flagi) znak - bit znaku ostatniej operacji zero - wynik operacji = zero przeniesienie (ang. carry) - przeniesienie w wielokrotnej precyzji równość (ang. equal) - wynik porównania logicznego przepełnienie - (ang. overflow) zezwolenie/blokowanie przerwań nadzorca - tryb systemu lub tryb użytkownika

Struktura - Jednostka sterująca Jednostka sterująca CPU ALU CPU Internal Bus Rejestry Jednostka sterująca Rejestry i dekodery Wewnętrzna szyna danych Układy logiczne szeregowania Synchronizacja i sterowanie

Technologia mobilna - Centrino Komputery przenośne (laptopy) Wireless LAN (do 11Mbps) Procesor Intel Pentium M modyfikacja Pentium Pro (energooszczędna 0.9GHz-1.6GHz) szyna systemowa 400MHz; L1 cache - 64kB; L2 cache - 1MB; Intel Chipset 855 grafika 3D; USB 2.0; do 2GB pamięci DDR SDRAM Intel PRO/Wireless 2100 standard 802.11b zarządzanie zasilaniem http://www.intel.com/products/mobiletechnology/centrino

Struktura komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Wejście/Wyjście Dlaczego nie łączy się urządzeń peryferyjnych bezpośrednio z magistralą systemową? wielka różnorodność urządzeń we/wy przesyłanie różnej ilości danych z różną prędkością w różnym formacie urządzenia we/wy za wolne dla procesora i pamięci Potrzeba modułu we/wy interfejs z procesorem i pamięcia przez magistralę interfejs z urządzeniami peryferyjnymi

Model modułu we/wy linie adresowe linie danych magistrala linie sterowania Moduł wejścia/wyjścia urządzenie we/wy urządzenie we/wy urządzenie we/wy

Kategorie wejścia/wyjścia Rodzaje urządzeń we/wy przeznaczone do odczytu przez człowieka (np. monitor ekranowy, wydruk, dźwięk) przeznaczone do odczytu przez maszynę (np. dyski magnetyczne, taśmy, czujniki w robotach ) komunikacyjne (np. modem, karta sieciowa)

Funkcje modułu we/wy Sterowanie i taktowanie (zegar) Komunikacja z procesorem Komunikacja z urządzeniem Buforowanie danych Wykrywanie błędów

Funkcje modułu we/wy (c.d.) Sterowanie i taktowanie (zegar), np.: procesor żąda statusu urządzenia we/wy moduł we/wy udziela odpowiedzi jeśli urządzenie jest gotowe procesor wydaje rozkaz moduł we/wy otrzymuje dane z urządzenia dane są przenoszone z modułu we/wy do procesora Komunikacja z procesorem dekodowanie rozkazu przez moduł we/wy przesyłanie danych poprzez magistralę przesyłanie informacji o stanie modułu we/wy rozpoznawanie adresu modułu we/wy

Funkcje modułu we/wy Komunikacja z urządzeniem sygnały sterujące z modułu we/wy (np. ustaw głowicę dysku) sygnały stanu do modułu we/wy (np. ready, not-ready) dane do/z modułu we/wy dane specyficzne dla urządzenia do/z otoczenia Buforowanie danych dane są buforowane w module we/wy i wysyłane do urządzenia z prędkością stosowaną dla tego urządzenia Wykrywanie błędów, np.: 7-bitowy kod ASCII, ósmy bit ustawiany w zależności od tego czy jest parzysta liczba jedynek czy nie

Prędkości urządzeń we/wy klawiatura - 10 bps mysz - 100 bps modem (56 kbps) - 7 kbps kanał telefoniczny - 8 kbps ISDN (dual) - 16 kbps drukarka laserowa - 100 kbps skaner - 400 kbps Ethernet klasyczny - 1.25 MBps USB - 1.5 MBps dysk IDE - 5 MBps 40x CD-ROM - 6 MBps

Prędkości urządzeń we/wy (c.d) Fast Ethernet - 12.5 MBps szyna ISA - 16.7 MBps dysk EIDE (ATA-2) - 16.7 MBps FireWire (IEE1394) - 50 MBps monitor XGA - 60 MBps łącze SONET OC-12-78 MBps dysk SCSI Ultra-2-80 MBps Ethernet gigabitowy - 125 MBps klasyczna szyna PCI - 133 MBps (32b na 33MHz) szyna PCI 2.1-533 MBps (64b na 66MHz) Sun Gigaplane XB backplane - 20 GBps

Struktura modułu we/wy interfejs z magistralą systemową interfejs z urządzeniem zewnętrznym linie danych linie adresowe linie sterowania rejestry danych rejestry stanu/sterowania Uklady logiczne wejścia/wyjścia... Uklady logiczne interfejsu z urządzeniem zewnętrznym... Uklady logiczne interfejsu z urządzeniem zewnętrznym dane status sterowanie dane status sterowanie

Rodzaje modułów we/wy Sterownik wejścia/wyjścia (urządzenia) - prymitywny, wymaga szczegółowego sterowania mikrokomputery, minikomputery Kanał (procesor) wejścia/wyjścia - przejmuje większość obciążenia we/wy CPU, wysoki priorytet dojścia do procesora superkomputery, duże instalacje

Sposoby realizacji we/wy programowane - dane są wymieniane między procesorem a modułem we/wy, procesor czeka na zakończenie operacji we/wy sterowane przerwaniami - procesor wydaje operację we/wy i wykonuje dalsze rozkazy do momentu zakończenia operacji we/wy (przerwanie we/wy) bezpośredni dostęp do pamięci (ang. direct memory access - DMA) - moduł we/wy wymienia dane bezpośrednio z pamięcią bez udziału procesora

We/wy progamowane błąd CPU -> we/wy we/wy -> CPU we/wy -> CPU CPU -> pamięć wydaj modułowi we/wy rozkaz odczytu odczytaj stan modułu we/wy sprawdź stan odczytaj słowo w module we/wy zapisz słowo w pamięci wykonane? nie gotowy nie tak następna instrukcja

We/wy sterowane przerwaniami wykonaj coś innego przerwanie błąd CPU -> we/wy we/wy -> CPU we/wy -> CPU CPU -> pamięć wydaj modułowi we/wy rozkaz odczytu odczytaj stan modułu we/wy sprawdź stan odczytaj słowo w module we/wy zapisz słowo w pamięci wykonane? nie gotowy nie tak następna instrukcja

Bezpośredni dostęp do pamięci wydaj modulowi DMA rozkaz odczytania bloku CPU -> DMA wykonaj coś innego odczytaj stan modułu DMA DMA -> CPU przerwanie następna instrukcja

Struktura komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Pamięć i jej własności Lokalizacja Pojemność Jednostka transferu Metoda dostępu Wydajność Rodzaj fizyczny Własności fizyczne Organizacja

Pamięć - lokalizacja, miara CPU wewnętrzna (główna) zewnętrzna (pomocnicza) długość słowa - 8, 16, 32 bitów (b) pojemność pamięci mierzona w ilości słów lub w Bajtach

Pamięć - jednostka transferu pamięć wewnętrzna zwykle szerokość szyny danych pamięć zewnętrzna zwykle bloki o wiele większe niż słowo jednostka adresowalna najmniejsza ilość danych dająca się jednoznacznie zaadresować (zwykle słowo ale może być to klaster na dysku) N = ilość adresowalnych jednostek; A = długość adresu zależność: N = 2^A

Pamięć - metody dostępu (1) dostęp sekwencyjny (ang. sequential) dostęp liniowy blok po bloku wprzód lub wtył czas dostępu zależy od pozycji bloku względem pozycji bieżącej np. taśmy dostęp bezpośredni (ang. direct) każdy blok ma unikalny adres czas dostępu realizowany przez skok do najbliższego otoczenia i sekwencyjne przeszukiwanie np. dysk magnetyczny

Prędkość kątowa a liniowa Dyski magnetyczne obracją się ze stałą prędkością kątową (ang. constant angular velocity) adresowanie bloków za pomocą cylindra, ścieżki i sektora wymagany jest tylko mały ruch głowicy przy zmianie ścieżki oraz oczekiwanie na sektor sporo pustego miejsca miejsca na zewnętrznych ścieżkach Płyty CD obracją się ze stałą prędkością liniową (ang. constant linear velocity) informacje na ścieżkach w segmentach o jednakowej długości dysk obraca się najwolniej na zewnętrznych scieżkach

Pamięć - metody dostępu (2) dostęp swobodny (ang. random) każda adresowalna lokacja w pamięci ma unikatowy, fizycznie wbudowany mechanizm adresowania czas dostępu nie zależy od poprzednich operacji i jest stały np. RAM dostęp skojarzeniowy (ang. associative) dane są lokalizowane raczej na podstawie porównania z ich zawartością niż na podstawie adresu czas dostępu nie zależy od poprzednich operacji i jest stały np. pamięć podręczna (ang. cache)

Pamięć - wydajność (definicje) czas dostępu dostęp swobodny : czas niezbędny do zrealizowania operacji dostęp nieswobodny : czas potrzebny na ustawienie głowicy czas_cyklu pamięci czas dostępu + czas, który musi upłynąć aby mógła nastąpić kolejna operacja ( zapis, odczyt) szybkość transferu dostęp swobodny : 1/czas_cyklu dostęp nieswobodny : T_n = T_a + n/r T_n - śr. czas operacji na n-bitach;t_a = śr. czas dostępu r - szybkość transferu w b/sek

Pamięć - rodzaje fizyczne półprzewodnikowa (ang. semiconductor) RAM magnetyczna dysk & taśma magneto-optyczna CD & DVD

Pamięć - własności fizyczne zanikanie, rozpad (ang. decay) ulotność (ang. volatility ) wymazywalność (ang. erasable) zasilanie do utrzymania zawartości

Pamięć - organizacja Naturalny porządek bitów w słowie Nie zawsze oczywisty

Fundamentalne pytania podstawowe pytania projektowania pamięci komputerów Ile? wszystkiego (otwarte) większa pojemność to mniejszy koszt na bit Jak szybko? większa pojemność to większy czas dostępu Za ile? mniejszy czas dostępu to większy koszt na bit kompromis: hierarchia pamięci

Hierarchia pamięci Jak osiągnąć efektywność ze względu na koszt? rejestry w CPU pamięć wewnętrzna lub główna pamięć podręczna (cache) - może być wiele poziomów pamięć główna - RAM pamięć zewnetrzna dyskowa pamięć podręczna pamięć dyskowa pamięć taśmowa lub dysk optyczny

Hierarchia pamięci (c.d.) od góry do dołu: malejący koszt na bit rosnąca pojemność rosnący czas dostępu malejąca częstotliwość dostępu do pamięci przez procesor

Zasada lokalności odniesień zasada lokalności odniesień (ang. locality of reference) oznacza, że w czasie wykonania programu odwołania do danych i rozkazów mają tendencję do gromadzenia się przyczyna: programy zwykle zawierają tablice deklaracji zmiennych oraz stałych i wiele pętli iteracyjnych i podprogramów wykorzystanie zasady lokalności odniesień pozwala na zmniejszenie częstotliwości dostępu przykład: pamięć podręczna procesora

Pamięć podręczna a główna prędkość procesora a prędkość pamięci mała szybka pamięć (droga) wykorzystanie zasady lokalności odniesień CPU Cache Pamięć w bajtach w blokach

Pamięć podręczna - działanie cache zawiera fragment pamięci głównej procesor sprawdza czy aktualnie potrzebne do wykonania rozkazu słowo z pamięci jest w cache u jeśli nie, to blok pamięci o ustalonej liczbie K słów zawierający potrzebne słowo jest ściągnięty do pamięci podręcznej

Pamięć podręczna (c.d.) rozmiar cache u mały cache poprawia wydajność rozmiar bloku większy blok: większe prawdopodobieństwo, że słowo jest w cache u (zasada lokalności) zbyt duży blok: większe prawdopodobieństwo, że słowo jest w usuniętym bloku funkcja mapująca (ang. mapping function) określa lokalizację bloku w cachu u przykład: 6b adres, 2b tag(znacznik) 01: 010000, 010001, 010010, 010011, 010100, 010101, 010110, 010111, 011000, 011001, 011010, 011011, 011100, 011101, 011110, 011111

Struktura pamięci podręcznej i głównej tag blok 0 0 1 1 2 C-1... długość bloku (K słów) cache 2 3... blok (K słów) blok 2^n-1 CPU długość słowa pamięć

Pamięć podręczna (c.d.) Algorytm zastępowania określa, który blok należy zastąpić last-recently-used (LRU) - zastąp najdawniej użyty Polityka zapisywania (ang. write policy) określa, kiedy zmieniony blok cache u jest zapisywany do pamięci głównej za każdym razem kiedy jest zmieniony tylko wtedy, gdy jest zastępowany: minimalizuje ilość operacji zapisywania ale pamięć główna może być nieaktualna (np. w połączeniu z DMA)

Pamięć podręczna - przykłady 80386 - brak 80486-8kB cache Pentium - dwa cache: 8kB dla danych i 8kB dla rozkazów Pentium II - 8kB (rozkazy) i 8kB-16kB (dane) - L1 cache (CPU chip) 256kB->1MB - L2 cache

Pamięć półprzewodnikowa RAM (ang. Random Access Memory) nazwa myląca bowiem wszystkie pamięci półprzewodnikowe mają dostęp swobodny odczyt/zapis ulotna sposób wymazywania: elektryczny statyczna (ang. static) lub dynamiczna (ang. dynamic) DIMM (ang. dual in-line memory module) rodzaj pamięci RAM dla PC

Pamięć dynamiczna (DRAM) bity zapamiętane jak ładunki w kondensatorach rozładowywanie okresowe odświeżanie ładunku prosta budowa mała tania wolna asynchroniczna zastosowanie: pamięć główna

Przykład działania DRAM 16 Mb DRAM - 4 bity czytane i pisane jednocześnie tablica: 2048 wierszy i 2048 kolumn linie adresowe A0-A10 (2^11=2048) 11 sygnałów określa połowę adresu wiersza lub kolumny sygnał wyboru wiersza RAS (ang. row address select) sygnał wyboru kolumny CAS (ang. column address select) DRAM zablokowany podczas odświeżania MUX pozwala na 4-krotne zwiększenie pamięci

Pamięć DRAM 16Mb (4Mx4) RAS CAS WE OE taktowanie i sterowanie licznik odświeżania MUX A0 A1 A10... bufor adresu wiersza bufor adresu kolumny dekoder wiersza... Tablica pamięci (2048x2048x4)... wzmacniacz odczytu i bramka we/wy dekoder kolumny wejściowy bufor danych wyjściowy bufor danych D1 D2 D3 D4

Inne pamięci DRAM EDRAM (ang. Enhanced DRAM)- wzbogacona o pamięć podręczną statyczną RAM (16b) CDRAM (ang. Cache DRAM)- zawiera pamięć podręczną o 2Kb statycznej RAM SDRAM (ang. Synchronous DRAM) - pamięć synchroniczna, transmisja do/z CPU pod kontrolą zewnętrznego zegara systemowego; bardzo wydajna przy dużych transferach (np. multimedia) DDR (ang. double-data-rate ) SDRAM - ok. 3GBps RDRAM (ang. Rambus DRAM) - do 3.5GBps

Pamięć statyczna (SRAM) bity przechowywane za pomocą przerzutników nie wymaga odświeżania bardziej złożona budowa większa droższa szybsza zastosowanie: pamięć podręczna przykład: CMOS (ang. complementary metaloxide-semiconductor) - zasilanie: bateria

Pamięć stała (ROM) ROM - ang. read-only memory trwały wzór danych zastosowanie: mikroprogramowanie tablice funkcji programy systemowe (BIOS, ang. Basic Input Output System - niskopoziomowe we/wy) podprogramy biblioteczne dla często wywoływanych funkcji

Rodzaje pamięci ROM (1) zapisywana w trakcie produkcji bardzo droga dla małych serii pamięć programowalna (PROM, ang. programmable) do zapisu (tylko raz) wymagane jest specjalne urządzenie pamięć głównie do odczytu (ang. read-mostly memory) optycznie wymazywalna programowalna pamięć stała (ang. Erasable Programmable (EPROM)) wymazywananie : naświetlanie promieniowaniem ultrafioletowym z układu znajdującego się w obudowie

Rodzaje pamięci ROM (2) pamięć głównie do odczytu (c.d.) elektrycznie wymazywalna programowalna pamięć stała (ang. Electrically Erasable Programmable (EEPROM)) zapisywane są tylko bajty zaadresowane zapisywanie trwa dłużej niż odczyt (kilka mikrosekund/b) mniej gęsto upakowana niż EPROM pamięć błyskawiczna (ang. Flash memory, Flash EEPROM) wymazywanie elektryczne nie umożliwia wymazywania na poziomie bajtu szybsza niż EPROM tańsza niż EEPROM zastosowanie: BIOS, Cisco IOS, PenDrive= USB flash memory drive (do 2GB)

Przykład - router Cisco System IOS FLASH Konfiguracja NVRAM CPU booting ROM interfejs szyny RAM IOS tablice routingu magistrala interfejs we/wy interfejs we/wy interfejs we/wy CPU CPU CPU

Literatura W. Stallings - Architektura i organizacja systemu komputerowego, WNT, 2000 http://william.stallings.com/coa5e.html

Strony WWW www.pcguide.com www.top500.org WWW Computer Architecture Home Page CPU Info Center ACM Special Interest Group on Computer Architecture IEEE Technical Committee on Computer Architecture Intel Technology Journal Strony domowe producentów komputerów Intel, IBM, etc.

Grupy dyskusyjne (Usenet) comp.arch comp.arch.arithmetic comp.arch.storage

Podsumowanie (1) struktura komputera: CPU wykonuje rozkazy pamięć przechowuje rozkazy i dane zewnętrzna lub wewnętrzna we/wy przesyła dane do/z pamięci magistrala zapewnia komunikację tego wszystkiego przykład Pentium we/wy - realizowane przez moduły we/wy programowo, sterowane przerwaniami, bezpośrednio (DMA)

Podsumowanie (2) dostęp do pamięci sekwencyjny, bezpośredni, swobodny, skojarzeniowy pamięć półprzewodnikowa ulotna: RAM dynamiczna lub statyczna stała : ROM PROM, EPROM, Flash

Co dalej? - działanie komputera Peryferia Komputer Jednostka centralna (CPU) Pamięć główna Komputer Magistrala systemowa Linie komunikacyjne Wejście- Wyjście

Następny wykład działanie komputera rozkazy cykl pobrania, wykonania i przerwania ochrona sprzętowa dualny tryb operacji: monitora i użytkownika uprzywilejowane rozkazy we/wy rejestr bazowy i graniczny machanizm przerwań zegarowych wywołania systemowe w procesie użytkownika