Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Technika Mikroprocesorowa 1 __________________________ Podstawy Techniki Mikroprocesorowej.

Podobne prezentacje


Prezentacja na temat: "Technika Mikroprocesorowa 1 __________________________ Podstawy Techniki Mikroprocesorowej."— Zapis prezentacji:

1 Technika Mikroprocesorowa 1 __________________________ Podstawy Techniki Mikroprocesorowej

2 Literatura A.Skorupski - Podstawy budowy i działania komputerów (WKŁ 1996) P.Hadam - Projektowanie systemów mikroprocesorowych (BTC 2004) W.Stallings - Organizacja i architektura systemu komputerowego (WNT 2004) B.Prince - Nowoczesne pamięci półprzewodnikowe (WNT 1999) J.Karczmarczuk - Mikroprocesor Z80 (WNT 1987) K.Fedyna,M.Mizeracki - Układy mikroprocesorowe Z80 (WKŁ 1989) L.Grodzki - materiały do przedmiotu - pliki *.pdf dostępne na stronie www przedmiotu

3 Wykład 1 1/37 Zasada budowy i działania mikroprocesora Historia Architektury Funkcjonowanie procesorów Podstawowe pojęcia Przykłady procesorów

4 1011 Budowa i działanie mikroprocesora 1/6 Σ 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

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

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

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

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

9 Budowa i działanie mikroprocesora 6/6 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:

10 Historia 1/ mechaniczny sumator Pascala maszyna licząca Leibniza wykorzystanie maszyn liczących do spisu ludności w USA 1833 młyn arytmetyczny - projekt Babbagea algebra Boolea

11 Historia 2/ programowalny kalkulator Z3 Anglia ENIAC Pensylwania ukoń logika SSI i MSI 1944 MARK1 Harward logika tranzystorowa kHz kHz MHz MHz MHz Z80 2,5MHz 1900

12 Historia 3/ 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/8kB L MHz Am486DXx MHz

13 Historia 4/5 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

14 Historia 5/ 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

15 Architektury 1/8 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

16 Architektury - pojęcia 2/8 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).

17 Architektury 3/8 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

18 Architektury 4/8 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

19 Architektury 5/8 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

20 Architektury 6/8 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.

21 Architektury 7/8 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

22 Architektury - pojęcia 8/8 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).

23 Funkcjonowanie - przetwarzanie rozkazów 1/13 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 - przetwarzanie rozkazów 2/13 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 - przetwarzanie rozkazów 2/13 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] Architektury 3/13 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 4/13 Schematy przetwarzania sekwencji rozkazów

28 Funkcjonowanie - przetwarzanie rozkazów 5/13 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 6/13 Schematy przetwarzania sekwencji rozkazów c.d. Warunki realizowalności: zwielokrotnione układy wewnętrzne procesora; odpowiednie oprogramowanie

30 Funkcjonowanie - pojęcia 7/13 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

31 Funkcjonowanie - tryby adresowania 8/13 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 też operandami)

32 Funkcjonowanie - tryby adresowania 9/13 Jednoskładnikowe tryby adresowania natychmiastowy kod rozkazuoperand bezpośredni kod rozkazuadres PAO pośredni kod rozkazu adres PAO rejestrowy pośredni adres kod rozkazu Rx: rejestrowy operand kod rozkazu Rx:

33 Funkcjonowanie - tryby adresowania 10/13 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

34 Funkcjonowanie - tryby adresowania 11/13 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:

35 Funkcjonowanie - tryby adresowania 12/13 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

36 Funkcjonowanie - tryby adresowania 13/13 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:

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

38 Procesory - CISC 2/11 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

39 Procesory - CISC 3/11 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

40 Procesory - RISC 4/11 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.

41 Procesory - RISC 5/11 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/89), rodzina PowerPC

42 Procesory - RISC 6/11 Przykład 8-bitowego mikrokomputera jednoukładowego RISC Harvard z rodziny AVR Atmela

43 Procesory - RISC 7/11 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

44 Procesory - DSP 8/11 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;

45 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 9/11

46 Procesory - DSP 10/11 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.

47 Procesory - DSP 11/11 Struktura blokowa 32-bitowego procesora ADSP2106x SHARC

48


Pobierz ppt "Technika Mikroprocesorowa 1 __________________________ Podstawy Techniki Mikroprocesorowej."

Podobne prezentacje


Reklamy Google