Współpraca procesora ColdFire z pamięcią

Podobne dokumenty
Zarządzanie zasobami pamięci

Architektura systemu komputerowego

Współpraca procesora pamięcią

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

Zarządzanie pamięcią operacyjną

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

Schematy zarzadzania pamięcia

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Wykład 7. Zarządzanie pamięcią

Architektura komputerów

Zarządzanie pamięcią operacyjną zagadnienia podstawowe

Organizacja typowego mikroprocesora

Mikroinformatyka. Tryb wirtualny

architektura komputerów w. 8 Zarządzanie pamięcią

Zarządzanie pamięcią operacyjną

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci

Od programu źródłowego do procesu

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/ / 22

Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com

Zarządzanie pamięcią. Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem.

Mikroprocesory rodziny INTEL 80x86

System pamięci. Pamięć podręczna

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/

CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)

PODSTAWY INFORMATYKI

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

Architektura komputerów

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

Programowanie Niskopoziomowe

Architektura mikroprocesorów z rdzeniem ColdFire

Architektura komputerów

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

Zarządzanie pamięcią w systemie operacyjnym

PRZYDZIAŁ PAMIĘCI OPERACYJNEJ

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

Hierarchia pamięci w systemie komputerowym

ARCHITEKTURA PROCESORA,

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

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

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

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

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

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

Sprzętowe wspomaganie pamięci wirtualnej

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Podstawy. Podsystem zarządzania pamięcią - zadania: Wiązanie (binding) rozkazów i danych z adresami pamięci. W systemie wielozadaniowym:

Organizacja pamięci wewnętrznej komputerów

Temat: Pamięci. Programowalne struktury logiczne.

System pamięci. Pamięć podręczna

Architektura systemów informatycznych

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

Systemy operacyjne III

ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ

Architektura mikroprocesorów z rdzeniem ColdFire

System pamięci. Pamięć wirtualna

WPROWADZENIE Mikrosterownik mikrokontrolery

Zarządzanie pamięcią. Zarządzanie pamięcią. Podstawy. Podsystem zarządzania pamięcią. Zadania podsystemu: W systemie wielozadaniowym:

Architektura komputerów egzamin końcowy

Pamięci półprzewodnikowe

Pamięci półprzewodnikowe na podstawie książki: Nowoczesne pamięci

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

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

Architektura komputerów

dr inż. Jarosław Forenc

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

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

UKŁADY PAMIĘCI. Tomasz Dziubich

Procesory. Schemat budowy procesora

Stronicowanie w systemie pamięci wirtualnej

LEKCJA TEMAT: Zasada działania komputera.

System pamięci. Pamięć wirtualna

dr inż. Jarosław Forenc

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

URZĄDZENIA WEJŚCIA-WYJŚCIA

System mikroprocesorowy i peryferia. Dariusz Chaberski

Magistrala systemowa (System Bus)

Architektura systemu komputerowego

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

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

Programowanie Niskopoziomowe

Architektura komputera

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

Procesory Blackfin. Część 1

architektura komputerów w. 6 Pamięć I

Architektura systemów informatycznych

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

System pamięci. Pamięć wirtualna

LEKCJA. TEMAT: Pamięć operacyjna.

, " _/'--- " ~ n\l f.4e ' v. ,,v P-J.. ~ v v lu J. ... j -:;.",II. ,""", ",,> I->~" re. dr. f It41I r> ~ '<Q., M-c 'le...,,e. b,n '" u /.

Wstęp Podstawowe informacje o mikroprocesorach AT91SAM9...11

Procesory rodziny Intel

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

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

Współpraca procesora z urządzeniami peryferyjnymi

Technika Mikroprocesorowa

Szkolenia specjalistyczne

Działanie systemu operacyjnego

Transkrypt:

Współpraca procesora ColdFire z pamięcią 1

Współpraca procesora z pamięcią zewnętrzną (1) ROM Magistrala adresowa Pamięć programu Magistrala danych Sygnały sterujące CS, OE Mikroprocesor FLASH, SRAM, DRAM RAM Pamięć danych CS, OE WR FLASH, SRAM, DRAM 2

Współpraca procesora z pamięcią zewnętrzną (2) ColdFire magistrala wewnętrzna sterownik DRAM SDRAM / DDR sterownik magistrali zewnętrznej SRAM moduł chip select FLASH / EEPROM 3

Wewnętrzna pamięć statyczna Procesory z rodziny ColdFire posiadają do 128 kb wewnętrznej pamięci statycznej obsługiwanej w ciągu jednego cyklu zegarowego dołączonej do szybkiej magistrali wewnętrznej (pamięć dwuportowa). 4

Rejestr konfigurujący RAMBAR Przykład: RAMBAR = 0xF000.0121 Adres bazowy = F000.0000, rozmiar = 64 kb (2^16) wyłączone DMA, R/W 5

Moduł obsługujący urządzenia dołączone do zewnętrznej magistrali (1) \CS \BS \TS Dane ColdFire Adres A0-A23 Moduł Chip Select Dane Adres \W/R \WR \TA \OE Pamięć \TA Transfer Acknowledge, potwierdzenie transmisji \TS Transfer Strobe, ważne dane oraz adresy na magistralach \TIP Transfer In Progres, utrzymywany w stanie niskim do zakończenia transmisji \TEA Transfer Error, wejście sygnalizacji błędu zewnętrznego 6

Moduł obsługujący urządzenia dołączone do zewnętrznej magistrali (1) 7

Moduł obsługujący urządzenia dołączone do zewnętrznej magistrali (2) 8

Cykl odczytu Narastające zbocze zegara 9

Podstawowy cykl zapisu 10

Cykl odczytu z szybką zakończeniem Tryb z szybkim zakończeniem nie może zostać użyty podczas wewnętrznej terminacji. 11

Cykl zapisu burst (3-2-2-2) Cykle zapisu i odczytu wykorzystywane podczas transmisji DMA oraz operacji na pamięci podręcznej. 12

Rejestry konfiguracyjne Chip Select Address Registers (CSAR0 CSAR6) Chip Select Mask Registers (CSMR0 CSMR6) 13

Chip Select Control Registers (CSCR0 CSCR6) 14

Hierarchia pamięci Processor Control Size: ~1 ns ~100 B On-Chip Cache Speed: Registers Datapath Second Level Cache (SRAM) ~10 ns-100 ns ~kb-mb Main Memory (DRAM) ~100 ns ~MB peta 10^15 => PB exa 10^18 => EB Secondary Storage (Disk) Tertiary Storage (Tape) ~10 ms ~10 sec ~GB ~TB 15

Pamięć podręczna (Cache) (1) Pamięć podręczna procesorów ColdFire jest przeznaczona do przechowywania kopii niewielkiego obszaru pamięci programu i /lub danych (16 kb rozmiar linii danych), Pamięć dołączona do szybkiej magistrali wewnętrznej procesora, Odczyt/zapis w ciągu jednego cyklu zegarowego, Procesor MCF5282 wyposażony jest w 2 kb pamięci (512 x 32), MCF547x/8x z rodziny V4e = 32 kb (Pentium III cache L1 = 32 kb). Dane Rdzeń procesora ColdFire Adres Syg. sterujące Dane Pamięć podręczna Adres Syg. sterujące Pamięć zewnętrzna 16

Pamięć podręczna (Cache) (2) 7 bit = 2^7 = 128 Linijka pamięci podręcznej 17

Rejestry konfiguracyjne Maska adresu Adres bazowy Write protect Tryb pracy S/U Pamięć aktywna 18

Rejestr konfiguracyjny CACR 19

Sterownik pamięci dynamicznej Obsługa dwóch pamięci dynamicznych SDRAM MCF528x (MCF520x/MCF527x pamięci DDR) Programowalne linie SRAS, SCAS oraz czas odświeżania Obsługa pamięci 8, 16, 32 bitowych 20

Transmisja zapisu do pamięci SDRAM Transfer typu burst 21

Rejestry konfiguracyjne 22

64 Mbit pamięć firmy Micron 23

Konfiguracja pamięci SDRAM 24

Zarządzanie zasobami pamięci System operacyjny wykonuje programy umieszczone w pamięci operacyjnej. W pamięci operacyjnej przechowywany jest obecnie wykonywany program (proces) oraz niezbędne dane. Jeżeli system operacyjny obsługuje kilka procesów w pamięci muszą znajdować się poszczególne programy wraz z danymi (przynajmniej częściowo) procesy współdzielą dostępną pamięć. Po zakończeniu obsługi danego procesu (kończy się czas przeznaczony na obsługę zadania), następuje przełączenie kontekstu. Jeżeli nowy program znajduję się całkowicie w pamięci procesor wznawia pracę, jeżeli nie to program ładowany jest z pamięci pomocniczej (FLASH, HDD). Można wyróżnić cztery podstawowe sposoby zarządzania pamięcią: 1. Płaska przestrzeń adresowa, 2. Przydział ciągły, 3. Stronicowanie pamięci, 4. Segmentacja pamięci. Wymiana dwu procesów (swapping) 25

Płaska przestrzeń adresowa Adresy, dane Obliczenia odczyt Procesor zapis Adres logiczny = Adres fizyczny 26

MMU (Memory Management Unit) (1) MMU jest układem realizujących dostęp do pamięci fizycznej żądanej przez CPU. Zadania realizowane przez moduł zarządzający pamięcią: Translacja adresów logicznych na adresy pamięci fizycznej, Ochrona pamięci, kontrola uprawnień, Obsługa pamięci podręcznej, Zarządzanie szynami danych, przełączanie banków pamięci (mikrokontrolery 8-bitowe), Ułatwienie przełączania kontekstu (pamięć wykorzystywana przez proces, stos, itd...), Procesor ma bezpośredni dostęp do szybkiej pamięci statycznej, rejestrów oraz urządzeń mapowanych na pamięć, Dostęp do głównej pamięci może zająć więcej niż jeden cykl maszynowy (pamięci FLASH, HDD), Każdy proces pracuje w oddzielnej przestrzeni pamięci. 27

MMU (Memory Management Unit) (2) Translacja adresów logicznych na fizyczne Adres fizyczny Adres logiczny Procesor Logiczna przestrzeń adresowa MMU Adres logiczny = Adres fizyczny Fizyczna przestrzeń adresowa Adres logiczny, wirtualny (logical, virtual address) adres wygenerowany przez procesor Adres fizyczny (physical address) adres przetworzony przez jednostkę MMU, odzwierciedlający faktyczny adres w pamięci fizycznej. 28

Przydział ciągły Rejestr przemieszczenia Rejestr bazowy Adres fizyczny Adres logiczny CPU Tak < + Pamięć Nie Wyjątek przekroczenie dozwolonego obszaru pamięci umożliwia ochronę systemu operacyjnego, programów oraz danych. 29

Przydzielanie pamięci i planowanie długoterminowe 0 400 System operacyjny 0 400 P1 1000 System operacyjny 0 400 P1 1000 P2 2300 System operacyjny Obszar wolny P5 Obszar wolny P4 P4 Obszar wolny Obszar wolny Obszar wolny 2300 Obszar wolny 3060 1000 1000 2000 P3 400 P1 Obszar wolny 2000 System operacyjny 0 P3 2300 Obszar wolny 3060 2000 2000 P3 2300 Obszar wolny Obszar wolny 3060 P3 3060 30

Stronicowanie pamięci Numer strony Odległość na stronie P D m n 32-bit n szyna adresowa: 24-bit przestrzeń adresowa: 32-bit rozmiar strony=512 B, n = 2^9 P = 2^23 rozmiar tablicy stron 2^23 Adres logiczny = P * rozmiar_strony + D Procesor Adres fizyczny Adres logiczny Pamięć MMU Tablica stron 31 0 Logiczna przestrzeń adresowa 2 m strony Rozmiar strony 2 n 31 0 Fizyczna przestrzeń adresowa - ramki Pamięć fizyczna podzielona jest na obszary o stałej długości m, tzw. ramki (frames), Pamięć logiczna podzielona jest na obszary o takiej samej długości jak ramki, tzw. strony (pages), długość obszarów jest potęgą liczby dwa w przedziale od 512 B do kilkunastu Mb. Proces zajmuje n stron pamięci (ostatnia strona nie jest wypełniona fragmentacja wewnętrzna) Jednostka MMU tłumaczy adresy logiczne na adresy fizyczne. 31

Obliczenie adresy fizycznego Rozmiar strony = 512 B Adres logiczny = 7 x 512 + 100 = 3684 P = 7, D = 100 F=3 Adres fizyczny = 3 x 512 + 100 = 1636 512 Frame 1 1024 Przesunięcie Frame 2 1536 CPU P D 0 1 2 3 4 5 6 7 8 9 10 F D Frame 3 2084 Frame 4 2560 Frame 5 3076 Frame 3 Frame 6 3584 32

Model stronicowania pamięci fizycznej i logicznej 512 Strona 0 Strona 1 Strona 2 Strona 3 Lista wolnych ramek: 0-7 0 1 2 3 1 4 3 7 Lista wolnych ramek: 0, 2, 5, 6 1024 Frame 0 Frame 1 (strona 0) Frame 2 1536 Frame 3 (strona 2) 2084 Tablica stron Frame 4 (strona 1) 2560 Frame 5 3076 Frame 6 3584 Frame 7 (strona 3) 33

Tablica stron 32-bit Rozmiar strony Tablica stron 4 MB = 2^22 1 kb = 2^10 Trójstopniowa tablica stron Rozmiar strony 4 1 kb = 2^10 1 kb = 2^10 1 kb = 2^10 Tablica stron 0 1 2 3 1 4 3 7 R/W R/W R/W R/W Czas dostępu do rejestrów asocjacyjnych: Czas dostępu do pamięci: U/S U/S U/S U/S X X X X Valid Valid Valid Valid 20 ns 100 ns Wsp. trafień (hit ratio) = 80 % Efektywny czas dostępu = 0,8 x 120 + 0,2 x 220 = 140 ns Wsp. trafień (hit ratio) = 98 % Efektywny czas dostępu = 0,98 x 120 + 0,02 x 220 = 122 ns 34

Zastosowanie rejestrów asocjacyjnych TLB translation look-aside buffers Przesunięcie 512 CPU P D F 32-bit D Frame 1 1024 Frame 2 32-bit 1536 Frame 3 2084 Frame 4 Bufory TLB 0 1 2 3 4 5 2560 Frame 5 3076 Frame 3 Chybienie w TLB odwołanie do Tablicy stron Frame 6 3584 35

Segmentacja 0 Obszar wolny 1400 Stos Segment 0 Podprogram Obszar wolny Segment 3 Program główny Segment 1 Segment 3 4300 4700 Segment 0 Funkcja SQRT 3200 Tablica symboli Segment 2 Segment 2 Segment 4 Segment 4 Obszar wolny 6300 Segment 1 Obszar wolny 36

Obliczenie adresu fizycznego Numer segmentu Odległość S D Numer segmentu Adres logiczny = S + D 0 1 2 Granica Baza 3 4 5 Tablica segmentów Adres fizyczny = Baza segmentu + D 37

Segmentacja obliczanie adresu fizycznego 0 Obszar wolny 1400 Segment 0 Granica Baza Obszar wolny Tablica segmentów 3200 Segment 3 4300 4700 CPU S D Tak < Segment 2 Segment 4 + Obszar wolny Adres logiczny Nie Adres fizyczny 6300 Segment 1 Wyjątek błąd adresowania Obszar wolny 38

Segmentacja 0 Obszar wolny 1400 Stos Segment 0 Podprogram Obszar wolny Segment 3 Program główny Segment 1 Segment 3 4300 4700 Segment 0 Funkcja SQRT 3200 Tablica symboli Segment 2 Segment 2 Segment 4 Segment 4 Obszar wolny 6300 Segment 1 Obszar wolny 39

Rdzeń procesora ColdFire V4e z jednostką MMU 40

ColdFire V4e Procesor z rdzeniem V4e: MCF547x, MCF548x lub V5, 64 rejestry asocjacyjne TLB (32 dla pamięci programu i 32 dla pamięci danych), Obsługa wyjątków w przypadku niepowodzenia odczytu z pamięci (TLB miss), Rozmiar obsługiwanych stron: 1, 4, 8 kb i 1 MB, Jednostka MMU umożliwia uzyskanie poziomu trafności na poziomie 97% w odniesieniu, do procesora rodziny V4 (bez MMC), Obsługa uprawnień (użytkownik/superużytkownik, zapis/odczyt, pamięć wykonywalna), Dostęp do rejestrów TLB przez rejestry modułu MMC, Dostęp do urządzeń specjalnych mapowanych na pamięć (przerwania, urządzenia I/O) lub praca w trybie emulatora odbywa się przy wykorzystaniu adresów fizycznych. 41

Ramka stosu sytuacji wyjątkowych 42

Rejestr statusowy MMUSR 43

Rejestr konfiguracyjny MMUDR 44

Współpraca pamięci podręcznej z MMU CPU Virtual Address TLB Cached? Yes No Translate (MMU) e v t Sa sul Re Physical Address Physical Memory Data Read or Write (untranslated) 45