Przetwarzanie potokowe (cd.) oraz zaawansowane organizacje procesorów
|
|
- Bronisław Małecki
- 8 lat temu
- Przeglądów:
Transkrypt
1 Przetwarzanie potokowe (cd.) oraz zaawansowane organizacje procesorów
2 Wynik porównania dla branch znany dopiero w fazie MEM (pod koniec EX) 4.8 Control Hazards Hazardy sterowania unieszkodliwić te rozkazy (ustawić syg. ster. na 0) PC Chapter 4 The Processor 2
3 Ograniczanie skutków haz. st. Przesuńmy układy potrzebne rozkazom branch do fazy ID stage Obliczanie adresu skoku Porównanie rejestru Przykład: (branch się wykonuje) 36: 40: 44: 48: 52: 56: 72: sub beq and or add slt... lw $10, $1, $12, $13, $14, $15, $4, $3, $2, $2, $4, $6, $8 7 $5 $6 $2 $7 $4, 50($7) Chapter 4 The Processor 3
4 Przesunięte układy dla branch Chapter 4 The Processor 4
5 Przykład cd. Chapter 4 The Processor 5
6 Hazardy danych i branch Jesli rejestry do porównanie pochodzą z drugiej lub trzeciej poprzedzającej instrukcji ALU add $1, $2, $3 IF add $4, $5, $6 ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM beq $1, $4, target WB Używamy forwardingu Chapter 4 The Processor 6
7 Hazardy danych i branch Jeśli rejestry do porównania pochodzą z poprzedniej instrukcji ALU lub instrukcji lw sprzed dwóch cykli lw Potrzebne opóźnienie o cykl... $1, addr IF add $4, $5, $6 beq stalled beq $1, $4, target ID EX MEM WB IF ID EX MEM WB IF ID ID EX MEM WB Chapter 4 The Processor 7
8 Hazardy danych i branche Jeśli rejestr do porównania pochodzi z poprzedniej instrukcji lw lw Potrzebne opóźnienie o 2 cykle! $1, addr IF beq stalled beq stalled beq $1, $0, target ID EX IF ID MEM WB ID ID EX MEM WB Chapter 4 The Processor 8
9 Dynamiczna predykcja skoków W dłuższych potokach lub rozwiązaniach superskalarnych branch penalty dotkliwsza Używa się dynamicznej predykcji Branch prediction buffer (aka branch history table) Indeksowany adresami ostatnich skoków Zapisuje się wynik skoku (wykonany/nie wykonany) Po napotkaniu skoku Zajrzyj do tabeli i załóż wynik jak poprzednio Zacznij pobierać kolejny rozkaz zgodnie z predykcją W razie pomyłki napraw szkody i zmień wpis w tabeli Chapter 4 The Processor 9
10 Predyktor 1-bitowy Dwa błędy w pętli wewnątrznej: outer: inner: beq,, inner beq,, outer Przy ostatniej iteracji pętli wewnętrznej Przy pierwszej iterazji pętli wewnętrzenj w następnej iteracji pętli zewnętrznej Chapter 4 The Processor 10
11 Predyktor 2-bitory Zmienia predykcje tylko po dwóch kolejnych błędach Chapter 4 The Processor 11
12 Obliczanie adresu skoku Nawet z predykcją trzeba obliczyć adres skoku Potrzebne opóźnienie przy skoku wykonywanym Specjalny bufor adresów skoków Rodzaj cache dla adresów skoków Odczytywany podczas pobieranie instrukcji Jeśli adres jest w buforze i przewidujemy skok możemy natychmiast pobrać odpowiedni rozkaz Chapter 4 The Processor 12
13 ,,Nieoczekiwane zdarzenia wymagające zmiany naturalnego przepływu rozkazów Różne użycie obu terminów w różnych architekturach Wyjątek Powstaje wewnątrz procesora np. niezdefiniowany opcode, przepełnienie,... Przerwanie 4.9 Exceptions Wyjątki i przerwania Z kontrolera wejścia-wyjścia Zaplanowanie ich obsługi bez utraty efektywności procesora jest sporym wyzwaniem Chapter 4 The Processor 13
14 Obsługa wyjątków W MIPS obsługiwane przez System Control Coprocessor (CP0) Zapisz PC rozkazu powodującego wyjątek (lub w czasie którego wystąpiło przerwanie) W MIPS: Exception Program Counter (EPC) Zapisz rodzaj problemu W MIPS: specjalny 32-bitowy rejestr (Cause register) W naszym przykładzie założymy, że Cause reg. 1bitowy: 0 niezdefiniowany opcode, 1 przepełnienie arytmetyczne Skocz do programu obsługi wyjątków (adres ) Chapter 4 The Processor 14
15 Alternatywne rozwiązanie Przerwania wektorowe Np.: Adres,,krótkiej'' procedury obsługi zależy od rodzaju problemu Niezdefiniowany opcode: C Przepełnienie: C : C ,,Krótka'' procedura obsługi Obsługuje w pełni przerwanie lub Zapisuje potrzebne informacje i skacze do prawdziwej procedury obsługi Chapter 4 The Processor 15
16 Obsługa wyjątków Odczytaj Cause reg., przekarz sterowanie do odpowiedniej podprocedury obsługi Określ rodzaj problemu Jeśli program,,restartowalny'' Wykonaj odpowiednie czynności,,naprawcze'' Użyj EPC aby wrócić do programu W przeciwnym przypadku Zatrzymaj program Zgłoś błąd podając dane z EPC, Cause reg., Chapter 4 The Processor 16
17 Wyjątki w potoku Kolejny rodzaj hazardu sterowania Rozważamy przepełniene w faze EX rozkazu add add $1, $2, $1 Zatrzyma zapis do rejsestru $1 Dokończ wcześniejsze instrukcje Wyczyść kolejne instrukcje z potoku Ustaw wartości rejestrów Cause i EPC Ustwa PC na adres procedury obsługi Podobne do źle przewidzianego skoku W podobny sposób rozwiązywane Chapter 4 The Processor 17
18 Potok z wyjątkami Chapter 4 The Processor 18
19 Wyjątki restartowalne Wyjątki restartowalne Potok czyszczony Wyjątek obsługiwany, potem powrót do rozkazu powodującego wyjątek Rozkaz ponownie pobierany PC zapisywany w rejestrze EPC Identyfikuje przerwany rozkaz Tak naprawdę zapisywane jest PC + 4 Procedura obsługi bierze to pod uwagę Chapter 4 The Processor 19
20 Przykład wyjątku Exception on add in C sub and or add slt lw $11, $12, $13, $1, $15, $16, $2, $4 $2, $5 $2, $6 $2, $1 $6, $7 50($7) Handler sw sw $25, 1000($0) $26, 1004($0) Chapter 4 The Processor 20
21 Przykład wyjątku Chapter 4 The Processor 21
22 Przykład wyjątku Chapter 4 The Processor 22
23 Wiele wyjątków na raz W potkoku jednocześnie kilka rozkazów Mogą jednocześnie powodować wyjątki Proste rozwiązanie: obsłuż najpierw wyjątek z najstarszego rozkazu,,wyczyść'' kolejne rozkazy W złożonych potokach Wiele rozkazów startuje równocześnie Wykonywane są,,out-of-order'' Obsługa wyjątków bardzo skomplikowana Chapter 4 The Processor 23
24 Przetwarzanie potokowe: wiele rozkazów wykonywanych równolegle (różne fazy) Jak zwiększyć ILP? Dłuższy potok Mniej pracy w jednej fazie krótszy cykl zegarowy Muliple issue Zwielokrotnienie potoku W jednym cyklu starutje kilka rozkazów Instructions Per Cycle (IPC) liczba cykl przeciętnie kończonych w jednym cyklu; Cycles Per Instruction co ile cykli przeciętnie kończy się jeden rozkaz. Np., 4GHz 4-drożny multiple-issue 4.10 Parallelism via Instructions Instruction-Level Parallelism (ILP) optymalne CPI = 0.25, optymalne IPC = 4 W praktyce IPC I CPI gorsze z powodu hazardów Chapter 4 The Processor 24
25 Multiple Issue Static multiple issue Kompilator grupuje rozkazy Pakuje je w,,paczki''; rozkazy z paczki mogą być wykonane równolegle Kompilator dba o unikanie hazardów Dynamic multiple issue CPU wybiera, które rozkazy rozpocząć w danym cyklu Kompilator może pomagać odpowiednio ustawiając rozkazy CPU rozwiązuje hazardy w czasie rzeczywistym (używając skomplikowanych technik) Chapter 4 The Processor 25
26 Spekulacja,Zgadnij co zrobić z rozkazem Rozpocznij operacje jak najszybciej Sprawdź, czy zgadnięcie się udało Jeśli tak: dokończ rozkaz Jeśli nie: wycofaj rozkaz i zrób to co trzeba Częste w przypadku static oraz dynamic multiple issue Przykłady Spekulacje na temat wykonania skoku Spekulacja na temat lw Wycofaj się jeśli dana lokacja uległa zmianie Chapter 4 The Processor 26
27 Spekulacja soft./sprzętowa Kompilator może przeorganizować rozkazy np. przesunąć lw przed branch Może dodać rozkazy,,naprawiające'' w przypadku błędnego zgadnięcia Sprzęt może szukać rozkazów do wykonania Buforuje wyniki dopóki nie jest pewien, że są potrzebne Czyści bufory w przypadu błędnego zgadnięcia Chapter 4 The Processor 27
28 Spekulacja a wyjątki Co jeśli spekulatywnie wykonywany rozkaz jest przerywany wyjątkiem np. spekulatywny load Spekulacja statyczna ISA może wspierać wycofywanie wyjątków Spekulacja dynamiczna Można buforować wyjątki aż do zakończenia rozkazu (które może nie następić) Chapter 4 The Processor 28
29 Static Multiple Issue Kompilator grupuje rozkazy w paczki Cała paczka może być rozpoczęta w jednym cyklu Rozkazy w jednej paczce nie mogą być dowolne (ograniczone zasoby, hazardy) Można myśleć, że jedna paczka to pojedynczy,,bardzo długi'' rozkaz Specyfikujacy kilka równoległych czynności Very Long Instruction Word (VLIW) Chapter 4 The Processor 29
30 Planowanie Static Multiple Issue Kompilator usuwa wszystkie lub część hazardów Przeorganizowuje rozkazy aby umeścić je w paczkach Nie ma zależności w paczce Mogą być pomiędzy paczkami W różnych ISAs różne rozwiązania; kompilator musi je znać! Czasem (często) trzeba wstawić rozkaz pusty NOP Chapter 4 The Processor 30
31 MIPS: Static Dual Issue Dwa rozkazy w paczce Jeden rozkaz ALU/branch, jeden rozkaz load/store Wyrównanie do 64-bitów ALU/branch, potem load/store; NOP w niewykorz. polach Address Instruction type Pipeline Stages n ALU/branch IF ID EX MEM WB n+4 Load/store IF ID EX MEM WB n+8 ALU/branch IF ID EX MEM WB n + 12 Load/store IF ID EX MEM WB n + 16 ALU/branch IF ID EX MEM WB n + 20 Load/store IF ID EX MEM WB Chapter 4 The Processor 31
32 MIPS: Static Dual Issue Chapter 4 The Processor 32
33 Hazardy w Dual-Issue MIPS Mamy większą równoległość Hazard EX Forwarding rozwiązywał je w pojedynczym potoku Teraz nie możemy użyć wyniku ALU dla load/store z tej samej paczki Load-use hazard add $t0, $s0, $s1 load $s2, 0($t0) Rodzielane na dwie paczki Wciąż jeden cykl opóźnienia, ale teraz opóźniamy obie instrukcje z paczki Wymagane,,agresywniejsze'' planowanie Chapter 4 The Processor 33
34 Przykład planowania Planujemy program dla dual-issue MIPS Loop: lw addu sw addi bne $t0, $t0, $t0, $s1, $s1, 0($s1) $t0, $s2 0($s1) $s1, 4 $zero, Loop # # # # # $t0=array element add scalar in $s2 store result decrement pointer branch $s1!=0 Chapter 4 The Processor 34
35 Przykład planowania cd. Loop: ALU/branch Load/store Cykle nop lw 1 addi $s1, $s1, 4 nop 2 addu $t0, $t0, $s2 nop 3 bne sw $s1, $zero, Loop $t0, 0($s1) $t0, 4($s1) IPC = 5/4 = 1.25 (por. opt. IPC = 2) 4
36 Rozwijanie pętli Rozwijamy ciało pętli (redukuje to m.in. pracę przy sprawdzaniu warunku pętli) Używamy różnych rejestrów dla różnych etapów,,rozwinięcia'',,register renaming Unikaj niesionych przez pętle,,antyzależności SW a po nim LW z tym samym rejestrem aka name dependence Chapter 4 The Processor 36
37 Rozwijanie pętli - przykład ALU/branch Load/store cycle lw $t0, 0($s1) 1 nop lw $t1, 12($s1) 2 addu $t0, $t0, $s2 lw $t2, 8($s1) 3 addu $t1, $t1, $s2 lw $t3, 4($s1) 4 addu $t2, $t2, $s2 sw $t0, 16($s1) 5 Loop: addi $s1, $s1, 16 Wskaźnik bliższy optymalnemu (1.75) koszt: rejestry addu $t3, $t4, $s2 sw $t1, 12($s1) 6 Chapter 4 The Processor 37 I długość kodu
38 Dynamic Multiple Issue Procesory,,superskalarne'' CPU decyduje czy uruchomć 0, 1, 2, rozkazy w danym cyklu Stara się unikać hazardów Kompilator nie musi dbać o unikanie hazardów Ale może wciąż pomagać O poprawność dba CPU Chapter 4 The Processor 38
39 Planowanie dynamiczne Pozwalamy CPU wykonywać rozkazy outof-order aby uniknąć przestojów Ale wyniki do pamięci/rejestrów idą po kolei! Np.: lw $t0, 20($s2) addu $t1, $t0, $t2 sub $s4, $s4, $t3 slti $t5, $s4, 20 Może rozpocząć sub gdy addu czeka na lw Chapter 4 The Processor 39
40 Dynamically Scheduled CPU Preserves dependencies Hold pending operands Results also sent to any waiting reservation stations Reorders buffer for register writes Can supply operands for issued instructions Chapter 4 The Processor 40
41 Core i7 Pipeline Chapter 4 The Processor 41
Przetwarzanie potokowe pipelining
Przetwarzanie potokowe pipelining (część A) Przypomnienie - implementacja jednocyklowa 4 Add Add PC Address memory ister # isters Address ister # ister # memory Wstęp W implementacjach prezentowanych tydzień
Architektura potokowa RISC
Architektura potokowa RISC Podział zadania na odrębne części i niezależny sprzęt szeregowe Brak nawrotów" podczas pracy potokowe Przetwarzanie szeregowe i potokowe Podział instrukcji na fazy wykonania
Architektura komputerów, Informatyka, sem.iii. Rozwiązywanie konfliktów danych i sterowania w architekturze potokowej
Rozwiązywanie konfliktów danych i sterowania w architekturze potokowej Konflikty w przetwarzaniu potokowym Konflikt danych Data Hazard Wstrzymywanie kolejki Pipeline Stall Optymalizacja kodu (metody programowe)
Architektura typu Single-Cycle
Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć
Architektura typu multi cycle
PC ux ress Write data emdata [3-26] [25-2] [2-6] [5-] register [5-] Cond IorD em emwrite emtoreg IRWrite [25-] [5-] Outputs Control Op [5-] ux ux PCSource Op SrcB Src RegWrite RegDst register register
Architektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 7: Potokowe jednostki wykonawcze Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Budowa potoku Problemy synchronizacji
Witold Komorowski: RISC. Witold Komorowski, dr inż.
Witold Komorowski, dr inż. Koncepcja RISC i przetwarzanie potokowe RISC koncepcja architektury i organizacji komputera Aspekty opisu komputera Architektura Jak się zachowuje? Organizacja Jak działa? Realizacja
UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386
Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać
Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność obliczeń a architektura procesorów Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych
Lista Rozkazów: Język komputera
Lista Rozkazów: Język komputera Większość slajdów do tego wykładu to tłumaczenia i przeróbki oficjalnych sladjów do podręcznika Pattersona i Hennessy ego Lista rozkazów Zestaw rozkazów wykonywanych przez
Architektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 8: Procesory wielopotokowe, czyli superskalarne Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Struktury i rodzaje
Przetwarzanie instrukcji w mikroprocesorach
Przetwarzanie instrukcji w mikroprocesorach Przetwarzanie sekwencyjne Przetwarzanie sekwencyjne ang. Sequential tradycyjna technika przetwarzania instrukcji w mikroprocesorach; polega na ściśle określonym
architektura komputerów w. 4 Realizacja sterowania
architektura komputerów w. 4 Realizacja sterowania Model komputera CPU Jednostka sterująca Program umieszczony wraz z danymi w pamięci jest wykonywany przez CPU program wykonywany jest sekwencyjnie, zmiana
Architektura komputerów
Architektura komputerów Wykład 5 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) c.d. 2 Architektura CPU Jednostka arytmetyczno-logiczna (ALU) Rejestry Układ sterujący przebiegiem programu
Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach
mikrokontrolery mikroprocesory Technika mikroprocesorowa Linia rozwojowa procesorów firmy Intel w latach 1970-2000 W krótkim pionierskim okresie firma Intel produkowała tylko mikroprocesory. W okresie
Przetwarzanie potokowe
p. 1/3 Przetwarzanie potokowe (pipelining) p. 2/3 Przypomnienie - implementacja jednocyklowa 4 Add Add PC Address Instrction Instrction ister # isters Address ister # ister # p. 3/3 Wstęp W implementacjach
Architektura mikroprocesorów z rdzeniem ColdFire
Architektura mikroprocesorów z rdzeniem ColdFire 1 Rodzina procesorów z rdzeniem ColdFire Rdzeń ColdFire V1: uproszczona wersja rdzenia ColdFire V2. Tryby adresowania, rozkazy procesora oraz operacje MAC/EMAC/DIV
ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH. Klasyczny cykl pracy procesora sekwencyjnego. współczesne architektury. c Dr inż.
ARCHITETURA SYSTEMÓW OMPUTEROWYCH współczesne architektury c Dr inż. Ignacy Pardyka UNIWERSYTET JANA OCHANOWSIEGO w ielcach 1 Rok akad. 2014/2015 1 lasyczne procesory sekwencyjne i potokowe 1 Instytut
Wydajność obliczeń a architektura procesorów
Wydajność obliczeń a architektura procesorów 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych zadań, np.: liczba rozkazów na sekundę
Struktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Architektura mikroprocesorów TEO 2009/2010
Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład
Architektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Architektura systemów komputerowych. Przetwarzanie potokowe I
Architektura systemów komputerowych Plan wykładu. Praca potokowa. 2. Projekt P koncepcja potoku: 2.. model ścieżki danych 2.2. rejestry w potoku, 2.3. wykonanie instrukcji, 2.3. program w potoku. Cele
Metody optymalizacji soft-procesorów NIOS
POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Warszawa, 27.01.2011
4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.01 Rok akad. 2011/2012 2 / 27
ARCHITEKTURA SYSTEÓW KOPUTEROWYCH strktry procesorów ASK SP. c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2/22 Założenia konstrkcyjne Układ pobierania instrkcji Układ przygotowania
Zegar - układ wysyłający regularne impulsy o stałej szerokości (J) i częstotliwości (f)
Zegar Zegar - układ wysyłający regularne impulsy o stałej szerokości (J) i częstotliwości (f) http://en.wikipedia.org/wiki/computer_clock umożliwia kontrolę relacji czasowych w CPU pobieranie, dekodowanie,
Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC
Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową
Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].
ABAP/4 Instrukcja IF Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek]. [ELSEIF warunek. ] [ELSE. ] ENDIF. gdzie: warunek dowolne wyrażenie logiczne o wartości
4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.02 Rok akad. 2011/ / 35
ARCHITEKTURA SYSTEÓW KOPUTEROWYCH strktry procesorów ASK SP.2 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2/22 Procesor IPS R3 Potokowe wykonywanie instrkcji Konflikty
Architektura komputerów
Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne
Shellcody a architektura MIPS na systemach IRIX. Adam Zabrocki.
Adam Zabrocki http://pi3.shellcode.pl pi3@itsec.pl Architektura MIPS: MIPS Microprocessor without Interlocked Piped Stages: RISC Rationalized Instruction Set Computers (Reduced Instruction Set Computers)
dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL
Architektura komputerów wprowadzenie materiał do wykładu 3/3 dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych
1 Ogolnie o asemblerach. 2 Zarys architektury MIPS
1 Ogolnie o asemblerach Kod zerojedynkowy jakim posªuguje si komputer jest niewygodny dla czªowieka. Pomysª: wprowadzenie symbolicznych nazw instrukcji, odzieli pola argumentów. Wci» jest niewygodnie,
Architektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 10: Redukcja opóźnień w procesorach superpotokowych i superskalarnych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie
Projektowanie. Projektowanie mikroprocesorów
WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna
Logiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Plan wykładu. Architektura systemów komputerowych. Cezary Bolek. Składowe architektury komputera
Architektura systemów komputerowych Konwencjonalny poziom maszynowy Cezary Bolek Katedra Informatyki Plan wykładu Składowe architektury komputera Architektura poziomu maszynowego Organizacja jednostki
Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt
Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu
Oprogramowanie komputerów wer. 9
Oprogramowanie komputerów wer. 9 Wojciech Myszka, Maciej Panek listopad 2014 r. Od czego zależy szybkość komputerów? Od czego zależy szybkość komputerów? 1. Częstość zegara. Od czego zależy szybkość komputerów?
Podstawy Techniki Mikroprocesorowej
Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.
A Machine Architecture that is Really Intuitive and Easy. Dane: notacja dwójkowa, zapis w kodzie dopełnieniowym
MARIE A Machine Architecture that is Really Intuitive and Easy http://computerscience.jbpub.com/ecoa Słowo 16b Dane: notacja dwójkowa, zapis w kodzie dopełnieniowym od 8000h (- 32,768 = -2^15) do 7FFFh
Architektura systemów komputerowych Laboratorium 8 Symulator SMS32 Instrukcje skoku i pętle
Marcin Stępniak Architektura systemów komputerowych Laboratorium 8 Symulator SMS32 Instrukcje skoku i pętle 1. Informacje 1.1. Instrukcje skoku Instrukcje skoku zmieniają wskaźnik instrukcji w rejestrze
List s a R ozkazó z w: w Ję J z ę y z k y k k o k mp o u mp t u er e a a ( cd c. d )
Lista Rozkazów: Język komputera (cd.) Procedury int funkcja (int n){ int i,j; (...) return j; } main () { int i,j; i=funkcja(i);... j=funkcja(i); } funkcja operuje na pewnych rejestrach, być może na tych
Adam Korzeniewski p Katedra Systemów Multimedialnych
Adam Korzeniewski adamkorz@sound.eti.pg.gda.pl p. 732 - Katedra Systemów Multimedialnych Operacja na dwóch funkcjach dająca w wyniku modyfikację oryginalnych funkcji (wynikiem jest iloczyn splotowy). Jest
Architektura komputerów
Architektura komputerów Tydzień 13 Procesory superskalarne Procesor superskalarny Termin superskalarny określa procesory, które mogą wykonywać dwie lub więcej instrukcje skalarne (arytmetyczne, logiczne)
Architektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 6: Budowa jednostki centralnej - CPU Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Procesor jednocyklowy Procesor
Architektura von Neumanna. Jak zbudowany jest współczesny komputer? Schemat architektury typowego PC-ta. Architektura PC wersja techniczna
Architektura von Neumanna CPU pamięć wejście wyjście Jak zbudowany jest współczesny komputer? magistrala systemowa CPU jednostka centralna (procesor) pamięć obszar przechowywania programu i danych wejście
Architektura Systemów Komputerowych. Architektura potokowa Klasyfikacja architektur równoległych
Archiekura Sysemów Kompuerowych Archiekura pookowa Klasyfikacja archiekur równoległych 1 Archiekura pookowa Sekwencyjne wykonanie programu w mikroprocesorze o archiekurze von Neumanna Insr.1 Φ1 Insr.1
Zrównoleglenie i przetwarzanie potokowe
Zrównoleglenie i przetwarzanie potokowe Zrównoleglenie wysoka wydajność pozostaje osiągnięta w efekcie jednoczesnego wykonania różnych części zagadnienia. Przetwarzanie potokowe proces jest rozdzielony
dr inż. Jarosław Forenc
Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki
Prosty procesor dla framgentu listy rozkazów MIPSa
p. /33 Prosty procesor dla framgent listy rozkazów IPSa (rysnki pochodza z ksiażki Hennessy ego i Pattersona) p. 2/33 Wstęp Naszym celem będzie zaprojektowanie prostego procesora realizjacego fragment
Budowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
1 Zarys architektury MIPS
1 Zarys architektury MIPS Procesory rmy MIPS Technologies u»ywane s w komputerach (Silicon Graphics), skomputeryzowanych zabawkach (Nintendo, Sony) oraz w systemach wbudowanych (w jakie wyposa»one s np.
Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika
Rejestry procesora Procesor podczas wykonywania instrukcji posługuje się w dużej części pamięcią RAM. Pobiera z niej kolejne instrukcje do wykonania i dane, jeżeli instrukcja operuje na jakiś zmiennych.
Procedury. int mult (int mcand, int mlier){ int product = 0; while (mlier > 0) { product = product + mcand; mlier = mlier -1; } return product; }
main() { int i,j,k,m;... i = mult(j,k);... m = mult(i,i);... Procedury int mult (int mcand, int mlier){ int product = 0; while (mlier > 0) { product = product + mcand; mlier = mlier -1; return product;
Programowanie w asemblerze MIPSa
p. 1/28 Programowanie w asemblerze MIPSa (ciąg dalszy) p. 2/28 Przypomnienie Trzy poziomy języka: Język maszynowy - kody operacji, wszystkie adresy, numery rejestrów i stałe zakodowane za pomoca zer i
Przerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
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]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami
Larrabee GPGPU Zastosowanie, wydajność i porównanie z innymi układami Larrabee a inne GPU Różnią się w trzech podstawowych aspektach: Larrabee a inne GPU Różnią się w trzech podstawowych aspektach: Larrabee
Architektura komputerów
Wykład jest przygotowany dla IV semestru kierunku Elektronika i Telekomunikacja. Studia I stopnia Dr inż. Małgorzata Langer Architektura komputerów Prezentacja multimedialna współfinansowana przez Unię
Mikroprocesory rodziny INTEL 80x86
Mikroprocesory rodziny INTEL 80x86 Podstawowe wła ciwo ci procesora PENTIUM Rodzina procesorów INTEL 80x86 obejmuje mikroprocesory Intel 8086, 8088, 80286, 80386, 80486 oraz mikroprocesory PENTIUM. Wprowadzając
Energooszczędne programowanie
Projektowanie energooszczędnych systemów wbudowanych dr inż. Ireneusz Brzozowski C-3, p. 512 WIET KATEDRA ELEKTRONIKI Elektronika i Telekomunikacja, Systemy Wbudowane www.agh.edu.pl Projektowanie energooszczędnych
Programowalne układy logiczne
Programowalne układy logiczne Mikroprocesor Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 6 grudnia 2014 Zbudujmy własny mikroprocesor Bardzo prosty: 16-bitowy, 16 rejestrów
Technologie informacyjne wykład 2 wer. 1.2
Technologie informacyjne wykład 2 wer. 1.2 Wojciech Myszka 24 października 2010 1 Część I Elementy systemu komputerowego. Czynniki wpływające na wydajność. Elementy systemu komputerowego. Czynniki wpływające
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 3: Architektura procesorów x86 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcia ogólne Budowa mikrokomputera Cykl
Metody obsługi zdarzeń
SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału
Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer Wojciech Myszka 16 pa«zdziernika 2008
Procesor i jego architektura (CISC, RISC, 32/64 bity). Systemy wieloprocesorowe. wer. 1.4 Wojciech Myszka 16 pa«zdziernika 2008 CISC I Complex Instruction Set Computers nazwa architektury mikroprocesorów
Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki
Informatyka I Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Operacje relacji (porównania) A
Page 1. Pięcio-krokowy pipeline
1 Pięcio-krokowy pipeline Każdy cykl zegara staje się jednym krokiem pipeline Kroki mogą być wykonywane równolegle Mimo, że wykonanie instrukcji zabiera 5 cykli zegara, liczba CPI zmienia się z 5 na 1
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Jednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ
Jednostka centralna dr hab. inż. Krzysztof Patan, prof. PWSZ Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa w Głogowie k.patan@issi.uz.zgora.pl Architektura i organizacja komputerów Architektura
Architektura komputerów. Asembler procesorów rodziny x86
Architektura komputerów Asembler procesorów rodziny x86 Architektura komputerów Asembler procesorów rodziny x86 Rozkazy mikroprocesora Rozkazy mikroprocesora 8086 można podzielić na siedem funkcjonalnych
Bibliografia: pl.wikipedia.org www.intel.com. Historia i rodzaje procesorów w firmy Intel
Bibliografia: pl.wikipedia.org www.intel.com Historia i rodzaje procesorów w firmy Intel Specyfikacja Lista mikroprocesorów produkowanych przez firmę Intel 4-bitowe 4004 4040 8-bitowe x86 IA-64 8008 8080
Magistrala systemowa (System Bus)
Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki
. III atyka, sem, Inform Symulator puterów Escape rchitektura kom A
Symulator Escape Konfiguracja ogólna Enable MUL and DIV Complete Set of Comp.Oper Sign Extension of B/H/W Memory Oper on B/H/W Program Program Dane Dane Załaduj konfigurację symulatora (File -> OpenFile)
Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów
Marcin Stępniak Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów 1. Informacje Poniższe laboratoria zawierają podsumowanie najważniejszych informacji na temat
System pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Architektura systemów komputerowych. dr Artur Bartoszewski
Architektura systemów komputerowych dr Artur Bartoszewski Procesor część II Rejestry procesora dostępne programowo AX Akumulator Zawiera jeden z operandów działania i do niego przekazywany jest wynik BX,CX,DX,EX,HX,LX
Technologie Informacyjne Wykład 3
Technologie Informacyjne Wykład 3 Procesor i jego architektura (CISC, RISC, 32/64 bity) Systemy wieloprocesorowe Wojciech Myszka Jakub Słowiński Katedra Mechaniki i Inżynierii Materiałowej Wydział Mechaniczny
Administracja i programowanie pod Microsoft SQL Server 2000
Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Optymalizacja zapytań Pobieranie planu wykonania Indeksy i wydajność - 1 - Zadania optymalizatora
Architektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Kurs Zaawansowany S7. Spis treści. Dzień 1
Spis treści Dzień 1 I Konfiguracja sprzętowa i parametryzacja stacji SIMATIC S7 (wersja 1211) I-3 Dlaczego powinna zostać stworzona konfiguracja sprzętowa? I-4 Zadanie Konfiguracja sprzętowa I-5 Konfiguracja
Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Metodologia programowania równoległego Przykłady podziałów zadania na podzadania: Podział ze względu na funkcje (functional
Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.
Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych
Materiały do wykładu. 4. Mikroprocesor. Marcin Peczarski. Instytut Informatyki Uniwersytet Warszawski
Materiały do wykładu 4. Mikroprocesor Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 19 marca 2007 Małe przypomnienie 4.1 Rejestry Układ współpracy z szynami Jednostka sterująca połączenia
Architektura systemów komputerowych. Porównanie architektury jednycyklowej i wielocyklowej Zmiany w ścieŝce danych Cykle
rchitektra systeów kopterowych rchitektra wielocyklowa Mlticycle Cezary olek Katedra Inforatyki Plan wykład Porównanie architektry jednycyklowej i wielocyklowej Ziany w ścieŝce danych Cykle. Pobór instrkcji.
organizacja procesora 8086
Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala
Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
System pamięci. Pamięć podręczna
System pamięci Pamięć podręczna Technologia Static RAM (SRAM) Ułamki nanosekund, $500-$1000 za GB (2012r) Dynamic RAM (DRAM) 50ns 70ns, $10 $20 za GB Pamięci Flash 5000-50000 ns, $0.75 - $1 Dyski magnetyczne
Technika mikroprocesorowa I Wykład 2
Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,
PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6
PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6 TEMAT: Programowanie w języku C/C++: instrukcje iteracyjne for, while, do while Ogólna postać instrukcji for for (wyr1; wyr2; wyr3) Instrukcja for twory pętlę działającą
Oprogramowanie komputerów
Oprogramowanie komputerów wer. 10 z drobnymi modyfikacjami! Wojciech Myszka 2018-11-04 20:13:59 +0100 Od czego zależy szybkość komputerów? Od czego zależy szybkość komputerów? 1. Częstość zegara. Od czego
Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Programowanie w C++ 1 Opis procesora Sextium II. Opis procesora Sextium. materiały dydaktyczne udostępnione przez Tomasza Wierzbickiego
Programowanie w C++ Opis procesora Sextium materiały dydaktyczne udostępnione przez Tomasza Wierzbickiego 1 Opis procesora Sextium II Budowa procesora Sextium II 1 o architekturze typu RISC 2 jest przedstawiona
1. Tworzenie nowego projektu.
Załącznik do Instrukcji 1. Tworzenie nowego projektu. Wybieramy opcję z menu głównego New->QNX C Project. Wprowadzamy nazwę przechodzimy do następnego kroku NEXT. Wybieramy platformę docelową oraz warianty
Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4
Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,
Architektury Komputerów. Tomasz Dziubich p.530, konsultacje czwartek. 9-10 i 11-12, dziubich@eti.pg.gda.pl
Architektury Komputerów Tomasz Dziubich p.530, konsultacje czwartek. 9-10 i 11-12, dziubich@eti.pg.gda.pl Urządzenia przetwarzające zwane komputerami - kiedyś EDSAC, University of Cambridge, UK, 1949 i
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,
1. Liczby i w zapisie zmiennoprzecinkowym przedstawia się następująco
1. Liczby 3456.0012 i 0.000076235 w zapisie zmiennoprzecinkowym przedstawia się następująco a) 0.34560012 10 4 i 0.76235 10 4 b) 3.4560012 10 3 i 7.6235 10 5 c) 3.4560012 10 3 i 7.6235 10 5 d) po prostu