Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Technika Mikroprocesorowa - informacje podstawowe.

Podobne prezentacje


Prezentacja na temat: "Technika Mikroprocesorowa - informacje podstawowe."— Zapis prezentacji:

1 Technika Mikroprocesorowa - informacje podstawowe

2 Treść wykładu 2/46 Zasada budowy i działania mikroprocesora Historia Architektury Podstawowe pojęcia Funkcjonowanie procesorów Tryby adresowania operandów rozkazów Przykłady procesorów

3 1011 Budowa i działanie mikroprocesora 3/46 Σ AB W W=(A+B+C IN ) mod 16 C IN C OUT C OUT =(A+B+C IN ) / 16 A+B+C IN = W+16·C OUT

4 Budowa i działanie mikroprocesora 4/46 ALU AB W C OUT C IN S 2..S 0

5 Budowa i działanie mikroprocesora 5/46 S 2..S 0 ALU C OUT C IN AB W

6 Budowa i działanie mikroprocesora 6/46 A B C D E F TEMP2TEMP1 rozkaz S 2..S 0 1a. Pobranie argumentu #1 1b. Pobranie argumentu #2 2. Działanie ALU 3. Zapisanie wyniku sekwencja działań sekwencyjny układ sterujący ALU CY

7 rejestr rozkazu Budowa i działanie mikroprocesora 7/46 sekwencyjny układ sterujący rozkaz 3a. Pobranie argumentu #1 3b. Pobranie argumentu #2 4. Działanie ALU 5. Zapisanie wyniku 1. Pobranie rozkazu licznik rozkazów pamięć programu n-1 n A B C D E F TEMP2TEMP1 ALU CY 2. Dekodowanie rozkazu

8 Budowa i działanie mikroprocesora 8/46 Zał: sposób kodowania rejestrów roboczych: A B C D E F Przykład programu: suma 3 liczb z rej. B, C i D umieszczona w rej. A (A := B + C + D) wymaga to następujących działań: 1. CY := 0, np. poprzez A:=A A 2. A := B + C 3. CY := 0, np. poprzez A:=A A 4. A := A + D Kody rozkazów: A:=A A: A:=B+C: A:=A A: A:=A+D:

9 Historia 9/ mechaniczny sumator Pascala 1833 algebra Boolea maszyna licząca Leibniza 1820 kalkulator Thomasa młyn arytmetyczny - projekt Babbagea wykorzystanie maszyn liczących Holleritha do spisu ludności w USA Ilustracje:http://www.phys.uni.torun.pl/~duch/books-fsk/historia/timeline.pdf

10 Historia 10/ programowaln e elektro-mech. kalkulatory Z1, Z2, Z3 Konrad Zuse, Anglia logika SSI i MSI kHz kHz MHz MHz 1900 MARK1 Harward logika tranzystorowa ENIAC Pensylwania ukoń Alan Turing John von Neumann Altair 400$ zrób sam (1975) MHz Z80 2,5MHz Ilustracje:http://www.phys.uni.torun.pl/~duch/books-fsk/historia/timeline.pdf

11 Historia 11/ MB RAM 5-10MHz MB RAM 6-16MHz GB RAM wielozadaniowość 16-33MHz GB RAM FP unit, 8kB L MHz Pentium P5 4GB RAM superskalarność FP unit, 8kB/46kB L MHz RISC 1 i 2 Berkeley 1993 pierwszy ARM Am486DXx MHz

12 Historia 12/46 Athlon 0,5-1GHz Pentium MMX przetw. danych wideo, audio, grafiki MHz Pentium P5 4GB RAM superskalarność FP unit, dzielony cache MHz Pentium Pro dalszy rozwój superskalarności MHz Pentium II techn. MMX MHz Celeron MHz Pentium III techn. 3D-FP 0,45-1,1GHz 1996 Pentium 4 przetw. danych multimedialnych 1,3-1,8GHz Itanium techn. IA-64 1,3-1,8GHz Celeron II MHz AMD K MHz AMD K MHz

13 Historia 13/ MB RAM 8-20MHz 32b ALU 16b DATA-BUS GB RAM 32b DATA-BUS 16-33MHz GB RAM 20-50MHz FP unit 8kBcache do 50MHz FP unit 8kBcache do 75MHz

14 Architektury 14/46 PROCESOR PAMIĘĆ OPERACYJNA URZĄDZENIA WE/WY pierwotna koncepcja von Neumana PROCESOR PAMIĘĆ OPERACYJNA URZĄDZENIA WE/WY uwspółcześniona koncepcja von Neumana URZĄDZENIA WE/WY MAGISTRALA SYSTEMOWA

15 Architektury - pojęcia 15/46 Pamięć operacyjna - układy służące przechowywaniu: programów podczas ich wykonywania; danych dla tych programów; wyników ich pracy. Urządzenia zewnętrzne - układy pośredniczące w wymianie informacji pomiędzy systemem mikrokomputerowym a: człowiekiem (urz. operatorskie); otoczeniem fizycznym (urz. obiektowe); innymi systemami (urz. komunikacyjne).

16 Architektury 16/46 struktura współczesnego komputera zgodnego z koncepcją von Neumana blok rejestrów magistrala wewnętrzna urządzenia zewnętrzne pamięć danych i programu flagi b u f o r y s y g n. z e w n. A B ALU rejestr rozkazu układ sterowania rejestr adresów PC licznik rozkazów wspólne magistrale danych, adresów i sterowań procesor

17 Architektury 17/46 struktura komputera typu Harvard blok rejestrów wewnętrzna magistrala danych urządzenia zewnętrzne pamięć danych flagi A B ALU rejestr rozkazu układ sterowania rejestr adresów danych PC licznik rozkazów wspólna magistrala pamięci danych i urz. zewn. procesor b u f o r y s y g n. z e w n. wewnętrzna magistrala rozkazów pamięć programu wydzielona magistrala pamięci programu

18 Architektury 18/46 struktura komputera typu Harvard wersja oszczędnościowa blok rejestrów wewnętrzna magistrala danych urządzenia zewnętrzne pamięć danych flagi A B ALU rejestr rozkazu układ sterowania rejestr adresów danych PC licznik rozkazów procesor b u f o r y s y g n. z e w n. wewnętrzna magistrala rozkazów pamięć programu rozdzielone linie sterujące wspólne linie danych i adresów

19 Architektury 19/46 Typowe składniki wewnętrznej struktury procesorów Powszechnie spotyka się: rejestry uniwersalne; rejestry dedykowane (akumulatory, liczniki rozkazów, wskaźniki stosu, rejestry adresujące, rejestry stanu i sterujące, rejestry przesuwające); dekodery (rozpoznające kody rozkazów); liczniki; jednostki arytmetyczno-logiczne (ALU); układy sterowania sekwencyjnego (sieci działań realizujące mikroprogramy); bufory sygnałów zewnętrznych; wewnętrzne magistrale. Rzadziej: wbudowane pamięci danych lub programu.

20 Architektury 20/46 przykład rejestru stanu procesora S - flaga znaku, najbardziej znaczący bit wyniku operacji Z - flaga zera, =1 gdy wynik operacji jest równy 0 H - flaga przeniesienia połówkowego przy dodawaniu lub pożyczki przy odejmowaniu (między bitami 3 i 4) P/V - flaga parzystości po operacjach logicznych (=1 przy parzystej liczbie 1 w wyniku) albo nadmiaru po operacjach arytmetycznych N - flaga odejmowania C - flaga przeniesienia

21 Podstawowe pojęcia 21/46 Mikroprocesor uniwersalny - procesor wymagający przy konstruowaniu systemu mikroprocesorowego (systemu mikrokomputerowego) dołączenia zewnętrznych układów: pamięci operacyjnej; urządzeń zewnętrznych. Mikrokomputer jednoukładowy - układ scalony zawierający: właściwy procesor (np. rdzeń procesora uniwersalnego); pamięć operacyjną (całą dostępną lub jej część); wybrane urządzenia zewnętrzne (porty we/wy); podstawowe układy sterujące systemem (np. kontroler przerwań, dekodery adresu, układ resetu, generator taktu).

22 Podstawowe pojęcia 22/46 szerokość słowa procesora (słowa maszynowego) - ilość bitów słów binarnych, które mogą być przetwarzane przez większość rozkazów procesora przestrzeń adresowa - zakres adresów jakimi może operować dany mikroprocesor przy odwołaniach do komórek pamięci lub rejestrów urządzeń zewnętrznych stos - specyficzna struktura danych, działająca jak rejestr LIFO, może być zrealizowany jako: wbudowana struktura sprzętowa albo stos programowy

23 Funkcjonowanie - przetwarzanie rozkazów 23/46 Sekwencja działań procesora przy przetwarzaniu pojedynczego rozkazu cykl rozkazowy (CR) - odcinek czasu niezbędny do pobrania i wykonania danego rozkazu cykl maszynowy (CM) - odcinek czasu niezbędny do realizacji elementarnego odwołania do pamięci lub urządzenia we/wy

24 Funkcjonowanie - architektura von Neumana 24/46 rejestry robocze urządzenia zewnętrzne pamięć danych i programu flagi ALU RR US rej. adr. PC procesor DR Cykl realizacji rozkazu - ilustracja dla struktury von Neumana

25 pobranie rozkazu dekodowanie rozkazu pobranie argumentu wykonanie operacji zapamiętanie wyniku rejestry robocze urządzenia zewnętrzne pamięć danych i programu flagi ALU RR US rej. adr. PC procesor DR RR US rej. adr. PC DR rej.a dr. RR DR rej.tym. rej. adr. rej.tym. rejestry robocze flagi ALU rej.a dr. Funkcjonowanie - architektura von Neumana 25/46 Cykl realizacji rozkazu - ilustracja dla struktury von Neumana pobranie rozkazu dekodowanie rozkazu pobranie rozkazu pobranie argumentu dekodowanie rozkazu wykonanie operacji pobranie argumentu zapamiętanie wyniku wykonanie operacji zapamiętanie wyniku flagi US rej. adr. ALU

26 dekodowanie rozkazu pobranie rozkazu [PC+1] dekodowanie rozkazu pobranie rozkazu [PC+1] Funkcjonowanie - architektura Harvard 26/46 Cykl realizacji rozkazu - ilustracja dla struktury Harvard rejestry robocze I/O pamięć danych flagi ALU RR US rej.adr PC procesor pamięć programu DR pobranie rozkazu dekodowanie rozkazu pobranie argumentu wykonanie operacji zapamiętanie wyniku pobranie rozkazu [PC] dekodowanie rozkazu pobranie argumentu wykonanie operacji zapamiętanie wyniku rej. tymcz. rej.adr rej. tymcz

27 Funkcjonowanie - przetwarzanie rozkazów 27/46 Schematy przetwarzania sekwencji rozkazów

28 Funkcjonowanie - przetwarzanie rozkazów 28/46 Schematy przetwarzania sekwencji rozkazów c.d. Warunek realizowalności: podział wewnętrznej struktury procesora na niezależnie działające bloki Zalecana architektura typu Harvard

29 Funkcjonowanie - przetwarzanie rozkazów 29/46 Schematy przetwarzania sekwencji rozkazów c.d. Warunki realizowalności: zwielokrotnione układy wewnętrzne procesora; odpowiednie oprogramowanie

30 Funkcjonowanie - tryby adresowania 30/46 tryby adresowania mogą być: proste - jednoskładnikowe (pojedyncze słowo binarne wskazujące lokalizację operandu); dwuskładnikowe (adres operandu powstaje jako suma dwóch słów binarnych); wieloskładnikowe (na adres operandu składają się więcej niż 2 słowa binarne). tryby adresowania - sposoby wskazywania w kodzie rozkazów umiejscowienia ich argumentów i wyników (zwanych ogólnie operandami) kod arg1 arg2 wyn rozkaz:

31 Funkcjonowanie - tryby adresowania 31/46 Jednoskładnikowe tryby adresowania natychmiastowy kod rozkazuargument bezpośredni kod rozkazuadres PAO pośredni kod rozkazu adres PAO rejestrowy pośredni adres kod rozkazu Rx: rejestrowy operand kod rozkazu Rx:

32 Funkcjonowanie - tryby adresowania 32/46 Dwuskładnikowe tryby adresowania adres operandu = baza + przemieszczenie Składniki te traktuje się jako zmienne, jeżeli są pobierane z rejestrów procesora, albo stałe - gdy są dostarczane razem z kodem rozkazu. baza - powinna być słowem binarnym o długości umożliwiającej dostęp do całej przestrzeni adresowej przemieszczenie - może być słowem krótszym od bazy, zapisanym w kodzie NB lub U2 Podstawowe warianty trybów dwuskładnikowych: przemieszczenie stałeprzemieszczenie zmienne baza stała-indeksowy baza zmienna bazowy bazowo-indeksowy

33 Funkcjonowanie - tryby adresowania 33/46 Dwuskładnikowe tryby adresowania - przykłady indeksowy d kod rozkazubaza PAO Ry: bazowy baza kod rozkazud PAO Rx: bazowo-indeksowy baza kod rozkazu d PAO Rx: Ry:

34 Funkcjonowanie - tryby adresowania 34/46 Dwuskładnikowe tryby adresowania - przykłady PC: adresowanie indeksowo-względne d kod rozkazu PAO baza Ry: adresowanie względne baza kod rozkazud U2 PAO PC: adresowanie stronicowe - położenie operandu jest określane jako adres względem początku wskazanej strony pamięci adresowanie segmentowe - położenie operandu jest określane jako adres względem początku aktualnie używanego segmentu pamięci

35 Funkcjonowanie - tryby adresowania 35/46 Trójskładnikowe tryby adresowania - przykłady bazowo-indeksowy z przesunięciem baza kod rozkazud indeks PAO Rx: Ry: bazowo-indeksowy skalowalny z przesunięciem baza kod rozkazud indeks S S Ry PAO Rx: Ry:

36 Procesory - CISC 36/46 CISC - (Complex Instruction Set Computer) - klasyczne procesory o rozbudowanej ( ) liście rozkazów Struktura 8-bitowego mikroprocesora uniwersalnego CISC - Z80

37 Procesory - CISC 37/46 Schemat blokowy 8086/88 multipleksowana szyna danych/adresów (16b danych w 8086, 8b danych w 8088) AH AL BH BL CH CL DH DL SP BP DI SI szyna adresowa 20b CS DS SS ES IP rejestry komunikacji wewn. ALU rejestry chwilowe znaczniki układ sterowania jednostką wykonawczą wewnętrzna szyna danych EU jednostka wykonawcza kolejka rozkazów: 6B w 8086, 4B w 8088 jednostka złącza BIU układ ster. szyną i bufory

38 Procesory - CISC 38/46 Pamięć podręczna danych L1 8kB Blok rejestrów FPBlok rejestrów całkowitoliczbowych Jednostka FPU/MMX ALU złożonych liczb całk. ALU prostych liczb całk. układ łado- wania adresu układ przecho- wywania adresu Jednostka przeno- szenia liczb FP Pamięć podręczna L2 256kB Pamięć podręczna rozkazów L1 12k mikrooperacji Jednostka pobierania i dekodowania rozkazów Układy wykonywania rozkazów poza kolejnością 256b 64b magistrala systemowa Schemat blokowy Pentium 4

39 Procesory - RISC 39/46 RISC - (Reduced Instruction Set Computer) - procesory o zredukowanej (około 100) liczbie rozkazów Cechy listy rozkazów procesora RISC: dostęp do pamięci operacyjnej jest możliwy tylko rozkazami przesłań; operandy wszystkich rozkazów znajdują się tylko w rejestrach wewnętrznych procesora; rozkazy mają stały (jednakowy) format (długość w bitach); ograniczenie dostępnych trybów adresowania.

40 Procesory - RISC 40/46 Różnice pomiędzy procesorem RISC a CISC: zastosowanie przetwarzania potokowego, co daje skrócenie czasu wykonywania rozkazów; dzięki małej liczbie rozkazów o stałym formacie i prostym trybom adresowania, uzyskuje się uproszczony i szybko działający układ sterowania; często wykorzystuje się architekturę typu Harvard; przy dużej liczbie rejestrów procesora możliwa jest sprzętowa realizacja stosu, co przyśpiesza wywoływanie i zagnieżdżanie podprogramów. Przykłady procesorów RISC: IBM801, AM29000, Intel 80960, MIPS R2000/R3000, Motorola 88100, Sun SPARC (1988/469), rodzina PowerPC

41 Procesory - RISC 41/46 Przykład 8-bitowego mikrokomputera jednoukładowego RISC Harvard z rodziny AVR Atmela

42 Procesory - RISC 42/46 Schemat blokowy Itanium 2 BBB MMII FF rozgałęzienie i predykacja 128 rejestrów całkowitoliczbowych 128 rejestrów zmiennopozycyjnych jednostki rozgałęzień jednostki całkowito- liczbowe i MMU 16kB cache L1 danych 2-portowa ALAT jednostki zmienno- pozycyjne sterownik magistrali 96kB cache L2 dekodo- wanie i stero- wanie przewidywane rozgałęzienie tablica wyników, bity predykacji, wyjątki 4MB cache L3 16kB cache L1 rozkazów ITLB

43 Procesory - DSP 43/46 Cechy procesorów DSP (Digital Signal Processing): wykorzystanie arytmetyki stałopozycyjnej (16b) lub zmiennopozycyjnej (32b na cechę i mantysę); rozbudowane moduły arytmetyki - zrównoleglone, sprzętowe układy mnożące realizujące operacje w jednym cyklu; rejestry dedykowane dla układów arytmetyki znacząco dłuższe od słowa maszynowego procesora (np. 80b przy słowie 32b-ym); jednostka ALU mogąca jednocześnie obliczać sumy i różnice argumentów; wbudowany cykliczny rejestr przesuwający, realizujący wielobitowe obroty i przesunięcia w jednym cyklu;

44 Cechy procesorów DSP - c.d. co najmniej zdwojone układy generacji adresów, celem przyśpieszenia dostępów do pamięci; architektura Harvard; wbudowana pamięć RAM, co najmniej dwuportowa, o pojemności wystarczającej dla większości zastosowań; możliwość akceptacji większej liczby przerwań zewnętrznych; system przerwań wielopoziomowy i priorytetowy; wbudowane układy do sprzętowej realizacji pętli programowych; w zaawansowanych procesorach większość podstawowych rozkazów może być wykonywana warunkowo; wbudowane interfejsy do zewnętrznych przetworników A/C i C/A (najczęściej szybkie szeregowe); Procesory - DSP 44/46

45 Procesory - DSP 45/46 Dziedziny zastosowań procesorów DSP: sterowanie silnikami asynchronicznymi; systemy GPS; obróbka i kompresja dźwięku; przetwarzanie i rozpoznawanie sygnałów mowy; kompresja sygnału mowy; pomiary dźwięków; obróbka obrazu; telefonia cyfrowa - automaty zgłoszeniowe i informacyjne; wideotelefony; modemy; mierniki mocy prądu 1- i 3-fazowego.

46 Procesory - DSP 46/46 Struktura blokowa 32-bitowego procesora ADSP2106x SHARC


Pobierz ppt "Technika Mikroprocesorowa - informacje podstawowe."

Podobne prezentacje


Reklamy Google