Wykład 4: Architektury mikroprocesorów: von Neumanna, Harvard

Slides:



Advertisements
Podobne prezentacje
Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Advertisements

Architektura jednostki centralnej RD MBR MAR IRPC +1 WR jednostka sterująca ALU A F Adres Dane Rejestry: MAR – (Memory Address Register) rejestr adresowy.
Rozwój i współczesne technologie procesorów dla komputerów osobistych
Wykonał : Marcin Sparniuk
Mikroprocesory i procesory sygnałowe
Idea, podstawowe parametry, cechy, charakterystyka
CPU.
Lista rozkazów Działanie mikroprocesora jest kontrolowane poprzez rozkazy (instrukcje). Dla każdego typu mikroprocesora istnieje specyficzny zbiór rozkazów,
Architektura szynowa systemu mikroprocesorowego szyna danych szyna sterująca szyna adresowa µP szyna danych szyna adresowa D7,..., D1, D0 A15,..., A1,
1 RISC – nasze założenia Podstawowe cechy: Wszystkie operacje są realizowane na rejestrach, Tylko operacje typu load i store wymagają dostępu do pamięci,
Wykład 7: Zmiennoprzecinkowe mikroprocesory sygnałowe firmy Analog Devices: zastosowania i rodziny architektura podstawowe operacje ALU.
Wykład 9 Dedykowane procesory DSP oraz mikrokontrolery z jednostką DSP
Podstawowe składniki funkcjonalne procesora i ich rola.
Alokacja pamięci struct Test {char c; int n; double x; } st1; st1 cnxcnx
ARCHITEKTURA KOMPUTERÓW definicja komputera PROCESOR PAMIĘĆ OPERACYJNA URZĄDZENIA ZEWNĘTRZNE.
Architektura Systemów Komputerowych
Wykład 5: Program Sequencer i struktura pamięci
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Magistrala & mostki PN/PD
Schemat blokowy komputera
Historia i rodzaje procesorów firmy Intel
Historia i rodzaje procesorów firmy Intel
Komputer, procesor, rozkaz.
Mikroprocesory i procesory sygnałowe
Procesory PENTIUM.
Procesory RISC.
Wieloprocesowy system operacyjny dla komputerów ATARI XL/XE
Mikroprocesory i mikrokontrolery
Architektura komputerów
przykładowy 8-bitowy mikroprocesor uniwersalny CISC
Technika Mikroprocesorowa - informacje podstawowe
Podstawowe elementy komputera i ich funkcje c.d.
Architektura komputerów
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Architektura komputerów
W skład komputera wchodzą
(Instruction Unit)dekoder
Architektura komputera
ARCHTEKTURA KOMPUTERA
Zasada działania komputera
Budowa komputera.
Literatura A.Skorupski - Podstawy budowy i działania komputerów (WKŁ 1996) P.Hadam - Projektowanie systemów mikroprocesorowych (BTC 2004) W.Stallings -
Etapy pracy biosu.
Mikroprocesory mgr inż. Sylwia Glińska.
Architektura komputerów
Architektura systemów komputerowych (jesień 2013)
Procesor Architektura.
Systemy operacyjne.
Budowa i rodzaje procesorów.
Mikroprocesory.
Mikroprocesory mgr inż. Sylwia Glińska.
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
PROCESORY (C) Wiesław Sornat.
Architektura PC.
W ą t e k (lekki proces) thread.
Procesor – charakterystyka elementów systemu. Parametry procesora.
BUDOWA I ZASADA DZIAŁANIA
Procesor, pamięć, przerwania, WE/WY, …
Struktura wewnętrzna mikrokontrolera zamkniętego
Architektury procesorów rdzeniowych mikrokontrolerów.
Architektura systemów komputerowych (jesień 2015) Wykład 5 Budowa i działanie komputera dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki.
WPROWADZENIE DO MIKROPROCESORÓW. Klasyfikacja mikroprocesorów SIMD – ang. Single Instruction Multiple Data SISD – ang. Single Instruction Single Data.
Tryby adresowania i formaty rozkazów mikroprocesora
POLITECHNIKA POZNAŃSKA
Opiekun: Stanisław Toton. 1. Co to jest mikroprocesor? 2. Początki mikroprocesora. 3. Budowa typowego mikroprocesora. 4. Rozwój mikroprocesorów na przełomie.
Schemat blokowy komputera
Organizacja i Architektura Komputerów
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Mikrokontrolery z rdzeniem ARM Cortex-M0+ Energooszczędność
Podział mikroprocesorów
Zapis prezentacji:

Wykład 4: Architektury mikroprocesorów: von Neumanna, Harvard VLIW i EPIC, ARM, MIPS

typowego mikroprocesora Architektura typowego mikroprocesora

Etapy wykonywania instrukcji add EAX, 1234h

Cykl rozkazowy procesora o pięciu fazach potoku add EAX, 1234h = 05 34 12 00 00 HIPERPOTOK PROCESORA Intel Pentium 4                                                                                                                                                            

Cykl rozkazowy procesora add EAX, 1234h = 05 34 12 00 00 W wykonaniu każdej instrukcji przez procesor można wyróżnić kilka faz. Typowo wyróżnia się następujące fazy: FETCH - pobranie instrukcji DECODE - dekodowanie obrazu binarnego instrukcji READ - odczyt argumentów instrukcji z rejestrów procesora lub z pamięci EXECUTE - wykonanie operacji arytmetycznej lub logicznej WRITE - zapis wyniku do rejestru lub pamięci Należy zauważyć, że dla wielu instrukcji niektóre z wymienionych faz są zbędne, np. instrukcja przesłania międzyrejestrowego nie wymaga użycia jednostki arytmetyczno-logicznej.

Praca potokowa Potok o „głębokości” 5: Wykonywanie każdej instrukcji trwa 5 cykli, ale efektywnie tylko jeden.

Praca potokowa synchronizacja potoku - "odczyt po zapisie„ Podstawowe problemy: oczekiwanie na wyniki synchronizacja potoku - "odczyt po zapisie„ (RAW - Read After Write) -SCOREBOARDING - flagi wskazujące na ważność zawartości rejestrów procesora -BYPASSES (obejścia) - dodatkowe szyny wewnątrz procesora

Praca potokowa Podstawowe problemy: rozgałęzienia programu

sposoby minimalizacji wad Praca potokowa - sposoby minimalizacji wad - Przewidywanie skoków Współczesne procesory potrafią przewidywać skoki z 90% skutecznością - Wykonywanie jednoczesne obu rozgałezień programu (architektura hiperskalarna) do czasu sprawdzenia warunku rozgałęzienia - Opóźnienie skoków w potoku: Skok opóźniony (delayed branch): wykonaj następną instrukcję za bieżącą, a potem skocz

Magistrala - „wąskie gardło” add [1234h],ebx = 01 1D 34 12 00 00 Różna długość instrukcji Podwójne pobranie z pamięci Efekt ten NIE WYSTĘPUJE w procesorach o architekturze RISC (LES)

Magistrala dostępu do pamięci – „wąskie gardło” -konieczność pobierania równocześnie instrukcji (kodu) oraz argumentów instrukcji (danych) z tej samej pamięci

Architektury dostępu do pamięci von Neumanna i Harvard

Architektura von Neumanna i Harvard

Architektura von Neumanna i Harvard

VLIW - Very Long Instruction Word Architektura VLIW - Very Long Instruction Word ADD DI,BX MOV CX,10 MOV SI,DX MUL BX FDIV ST(1) ALU1 ALU2 ALU3 MOV FPU Wada: brak skalowalności

Architektura EPIC (Intel Itanium) Explicitly Parallel Instruction Computing - przetwarzanie jawnie równoległe Grupowanie instrukcji i oznaczaniu ich wzajemnych relacji już na etapie kompilacji programu. Instrukcje są zamknięte w tzw. paczkach (po trzy instrukcje), które są ładowane do procesora równocześnie. Każda paczka zawiera przedrostek - grupę bitów informujących procesor o tym, do których jednostek ma skierować poszczególne rozkazy. W przedrostku znajdują się też informacje o tzw. barierach wykonań służących do koordynacji wykonywania poszczególnych instrukcji. Jeśli pomiędzy dwoma ciągami rozkazów znajdują się bariery wykonania, to drugi ciąg zostanie wykonany dopiero wtedy gdy znane będą wyniki działania rozkazów z pierwszego ciągu. Skalowalność: Kod nie jest on dostosowany ściśle do budowy procesora (jak w układach VLIW) - zamiast równoległych instrukcji i odwołań zawiera tylko informacje, które instrukcje mogą się wykonać równolegle przedrostek INSTR 1 INSTR 2 INSTR 3

Rozwój architektur CPU

-”najelegantszy” procesor Procesor ARM -”najelegantszy” procesor Najprostszy procesor 32-bitowy o architekturze RISC występujący w wielu odmianach (wersje jądra 1..6) – zawiera tylko ok. 35 tys. tranzystorów. Skonstruowany całkowicie od podstaw w 1983 roku na zlecenie brytyjskiej firmy Acorn przez grupę inżynierów kierowaną przez Rogera Wilsona i Steve'a Furbera. Skonstruowany poprzez udoskonalenie procesora 65xx (np. Atari (6502), Commodore (6510), Apple II). Krótka lista rozkazów (nieco ponad 50 instrukcji). 16 uniwersalnych rejestrów, kilka trybów pracy (użytkownika, systemu, przerwań, itp. …) Jądro może być łączone z różnymi dedykowanymi do konkretnych zastosowań modułami rozszerzeń (tzw. mikrokontrolery oparte na ARM). Nazwa to skrót: Acorn RISC Machine, „przechrzczony” po kupieniu Acorna przez Olivetti na Advanced RISC Machine Prosta konstrukcja przekładająca się na bardzo mały pobór mocy: Np. procesor Strong ARM, pracuje z zegarami w zakresie 100-300 MHz przy poborze mocy rzędu zaledwie 1 W !!!

Procesor ARM Wersje: 1987: ARM2 , 1989: ARM3 , 1991: ARM6 , 1993: ARM7(v.4) , 1995: ARM8 , 1998: ARM10 (v.7) Producenci: IBM, Infineon, Intel, Freescale (dawniej Motorola), NEC, Philips, Samsung, Texas Instruments, Toshiba, NetSilicon, Atmel, … Zastosowany min. w komputerach BBC (moduł z procesorem rozszerzającym możliwości komputera 8-bitowego) oraz w komputerze Apple Newton (pierwowzór dzisiejszych kieszonkowych PDA - Personal Digital Asistants), telefonach komórkowych, .. i w bardzo wielu innych urządzeniach. Każda z instrukcji zawiera 4-bitowy kod, określający warunki jej wykonania, a także bit wskazujący na to, czy dana instrukcja może zmienić zawartość rejestru stanu procesora. IF warunek INSTRUKCJA Konstrukcja taka pozwala na eliminację wielu rozgałęzień programu, upraszcza znacznie logikę procesora, a równocześnie przyspiesza wykonanie programu dzięki zmniejszeniu objętości kodu.

Procesor MIPS Microprocessor without Interlocked Pipeline Stages (Kalifornijski Uniwersytet Stanford) Pomiedzy poszczególnymi fazami potoku nie występują relacje wymagające sprzętowego uzależnienia. Obowiązek odpowiedniego ułożenia kodu programu spada na kompilatory - Idea w praktyce bardzo trudna do spełnienia. Najnowsze z procesorów MIPS - R10000 i R12000 (64 bitowe)- wyposażone są w zwielokrotnione jednostki zmiennoprzecinkowe, oraz w superskalarne jednostki wykonawcze (do 5 instrukcji równocześnie). Układy MIPS stanowią serce graficznych stacji roboczych Silicon Graphics. (Filmy „Toy Story", „Jurassic Park", „Dawno temu w trawie".)

Rodziny procesorów • Pierwsze mikrokomputery „domowe”: –    8-bitowy Z80: Sinclair ZX-81, ZX-Spectrum 48; 6502, 6510: ATARI 800XL, Commodore 64, •      Intel x86 (komputery PC): –    16 bitowe: 8086/88, 80286 –    32 bitowe: i386, i486, Pentium, Pentium Pro, Pentium II, Celeron, Pentium III, Celeron II, Pentium IV (CISC/RISC) –    64 bitowe: Itanium (architektura EPIC) •      AMD (zgodna z x86): –    32 bitowe: AMD486, 5x86, K5, K6, Athlon, Duron •      Motorola 68k (komputery Apple): –    68000, 68020 (16-bit), 68030, 68040, 68060 (32-bit) •      architektury RISC (32, 64- bitowe – systemy UNIX): –    Alpha (DEC/Compaq), MIPS (SGI), SPARC (Sun), PA (HP), Power (IBM), PowerPC (IBM/Motorola) •     Procesory sygnałowe (Harvard + praca potokowa + zwielokrotnione jednostki ALU/FPU)