Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Technika mikroprocesorowa Seminarium dyplomowe Wykonali: Michał Kochanowski Łukasz Duda Kamil Nicpoń Wydział Informatyki, Elektroniki i Telekomunikacji.

Podobne prezentacje


Prezentacja na temat: "Technika mikroprocesorowa Seminarium dyplomowe Wykonali: Michał Kochanowski Łukasz Duda Kamil Nicpoń Wydział Informatyki, Elektroniki i Telekomunikacji."— Zapis prezentacji:

1 Technika mikroprocesorowa Seminarium dyplomowe Wykonali: Michał Kochanowski Łukasz Duda Kamil Nicpoń Wydział Informatyki, Elektroniki i Telekomunikacji Katedra Elektroniki Kraków r.

2 Pytanie 1: Po odjęciu dwóch bajtów (B3 minus 9D, kod heksadecymalny), stany bitów warunkowych C, Z (przeniesienia, zerowości) będą wynosiły: a)0,1 b)0,0 c)1,1

3 Bity warunkowe Układ ALU na podstawie efektów obliczeń ustawia tzw. bity warunkowe. Mamy następujące bity: Carry (C)- przeniesienie Overflow (V)- nadmiar Zero (Z)- wynik zerowy Negative (N) - wynik ujemny Extend (X) - przedłużenie

4 Bity warunkowe Flaga Z jest ustawiana na 1 gdy wynik ostatnio wykonanej operacji jest zerowy, to znaczy wszystkie aktywne bity wyniku są, zerowe (ilość bitów aktywnych zależy od typu danych użytych w operacji). W przeciwnym przypadku flaga ta jest zerowana. Flaga N jest ustawiana na 1 gdy wynik operacji jest ujemny, w przeciwnym przypadku jest zerowana. Przy operacjach w kodzie U2, więc flaga N jest kopią najstarszego z aktywnych bitów wyniku. Flaga C jest ustawiana na 1, gdy w wyniku operacji arytmetycznej następuje przeniesienie z najstarszej aktywnej pozycji, lub przy operacji przesuwania – wysuwany jest bit 1. Flaga X jest ustawiana podobnie jak C, ale tylko przez niektóre instrukcje. Pełni rolę bitu przeniesienia potrzebnego do przedłużania operacji arytmetycznych na większą, ilość słów. Flaga V sygnalizuje wystąpienie nadmiaru w czasie ostatniej operacji arytmetycznej. Nadmiar ma miejsce, gdy wynik operacji nie mieści się w przyjętej reprezentacji liczb. Na przykład, po dodaniu dwóch liczb ujemnych otrzymujemy wynik dodatni.

5 Kod U2 Kod uzpełnień do dwóch (ang. 2C - Two's Complement) Liczba jest dodatnia, gdy bit znaku ma wartość 0 - suma pozostałych wag tworzy zawsze liczbę dodatnią lub zero. Jeśli bit znaku przyjmie wartość 1, to liczba jest ujemna. Procedura wyznaczania liczby przeciwnej w kodzie U2 (1) 1.Dokonać negacji wszystkich bitów zapisu liczby U2. 2.Do wyniku dodać 1

6 Kod U2 Procedura wyznaczania liczby przeciwnej w kodzie U2 (2) 1.Przejść do pierwszego od prawej strony bitu zapisu liczby. 2.Do wyniku przepisać kolejne bity 0, aż do napotkania bitu o wartości 1, który również przepisać. 3.Wszystkie pozostałe bity przepisać zmieniając ich wartość na przeciwną. B3= (U2)=-77 9D= (U2)=-99 ~(9D)= (U2) Przy wyniku odejmowania bajtów, negujemy bit przeniesienia C z stąd stan bitów C i Z =0,0

7 Pytanie 2: Dodając dwa bajty w kodzie uzupełnień do dwóch (6A i 3E – zapis heksadecymalny), otrzymujemy następujące stany bitów warunkowych N,Z,V (znak, zerowość, przekroczenie zakresu): a)0,0,0 b)0,1,0 c)0,0,1 d)1,0,1

8 Wyjaśnienie 6A= (U2)=106 3E= (U2)=62 Stan bitów warunkowych po tej operacji to: Z=0, N=1, V=1

9 Pytanie 3: Funkcja bitów warunkowych (ustawione po rozkazie odejmowania lub porównania ) dla liczb w kodzie uzupełnień do dwóch: !((N modulo 2 V) lub Z) gdzie N – bit znaku, V – bit przekroczenia zakresu, Z – bit zerowości, osiąga stan logicznej jedynki dla relacji : a)Większy b)większy lub równy c)mniejszy lub równy d)mniejszy

10 Wyjaśnienie !((N modulo 2 V) lub Z)= Dla > mamy N=1 V=1 Z=0 – wartość 1 Dla = mamy N=0 V=0 Z=1 – wartość 0 Dla < mamy N=1 V=0 Z=0 – wartość 0

11 Pytanie 4: Bajt FF (zapis heksadecymalny, kod uzupełnień do dwóch), po operacji zmiany znaku będzie miał postać: a)01 b)FE c)00

12 Wyjaśnienie FF= (U2)=-1 ~FF= = (U2)=1<-liczba przeciwna

13 Pytanie 5: Jednoargumentowe są rozkazy: a)selektywnej negacji bitu b)konwersji kodu c)sumy logicznej d)dekrementacja

14 Wyjaśnienie Jednoargumentowymi rozkazami są wszystkie te rozkazy, które wykonują operacje odwołując się tylko do jednego argumentu. Czyli np. dodanie dwóch rejestrów wymaga 2 argumentów: adresu jednego rejestru oraz adresu drugiego rejestru. A przykładowo operacje inkrementacji, dekrementacji, są operacjami jednoargumentowymi ponieważ wymagają podania tylko jednego argumentu.

15 Pytanie 6: Rejestry niezbędne dla prawidłowej pracy mikroprocesora: a)statusowy, b)wyróżniony rejestr – akumulator, c)licznik programu ( PC ), d)wskaźnik stosu(SP),

16 Wyjaśnienie Do prawidłowej pracy mikroprocesor potrzebuje rejestry które wykorzystuje do zarządzania przebiegiem wykonywania programu. Są to : Rejestr statusowy Licznik programu Wskaźnik stosu

17 Pytanie 7: Przez cykl magistrali ( CM ) rozumiemy jednokrotny kontakt mikroprocesora z pamięcią ( programu, danych ). Rozkazy które do wykonania potrzebują dwóch CM ( argumenty znajdują się w pamięci ) to: a)Zerowania b)iloczynu logicznego z maską natychmiastową c)Dekrementacji d)Pojedynczy zapis do pamięci

18 Wyjaśnienie Rozkazy potrzebujące dwóch cykli magistrali to takie, które do zrealizowania operacji potrzebują 2 kontaktów z pamięcią. Czyli: odczyt z pamięci danej (pierwszy CM) -> modyfikacja danej -> zapis do pamięci zmodyfikowanej danej (drugi CM)

19 Pytanie 8: Mikroprocesor zwraca magistralę: a)po skończeniu cyklu magistrali, b)po skończeniu procedury, c)po skończeniu rozkazu, d)Po zakończeniu przerwania,

20 Pytanie 9: Mikroprocesor zaakceptuje przerwanie typu niemaskowanego: a)natychmiast, tj. po każdym takcie sygnału zegarowego b)po skończeniu bieżącego cyklu magistrali c)po skończeniu bieżącego rozkazu

21 Ciekawostka Jeżeli podczas obsługi NMI pojawi się znowu przerwanie tego typu to zachowanie uP może być różne: a)Zagnieżdżenie obsługi (Motorola) b)Zapamiętanie faktu i ponowne powtórzenie procedury (Intel)

22 Pytanie 10: Procesory typu RISC (reduced instruction set computer ) charakteryzują się: a)zredukowaną liczbą trybów adresowania b)wykonywaniem każdego rozkazu w jednym takcie zegarowym c)zredukowaną liczbą rejestrów d)Zredukowaną liczbą rozkazów

23 Wyjaśnienie RISC Zredukowana liczba rozkazów do niezbędnego minimum. Ich liczba wynosi kilkadziesiąt, podczas gdy w procesorach CISC sięga setek. Upraszcza to znacznie dekoder rozkazów. Redukcja trybów adresowania, dzięki czemu kody rozkazów są prostsze, bardziej zunifikowane, co dodatkowo upraszcza wspomniany wcześniej dekoder rozkazów. Ponadto wprowadzono tryb adresowania, który ogranicza ilość przesłań.

24 Pytanie 11: Tryby adresacji stosowane konsekwentnie dla rozkazów skoków i wywołań, zapewniające własność relokowalności segmentu kodu to: a)Względny b)bazowy (indeksowy) c)Rejestrowy

25 Wyjaśnienie Tryb adresowy względny – adresuje względem PC Tryb adresowany rejestrowy – adresuje za pomocą wartość znajdującej się w danym rejestrze Tryb bazowy (indeksowy) – w odniesieniu do jakiejś wartości bazowej.

26 Pytanie 12: Numerowany ( wektorowy ) system przerwań ( jedna linia INT – wiele źródeł przerwań ) wymaga: a)instalacji w pamięci danych tablicy adresów startowych programów obsług b)trybu adresacji indeksowego w procedurach obsługi c)cyklu magistrali akceptacji przerwania d)Osobnego bloku pamięci

27 Wyjaśnienie Instalacja takiej tablicy wektorów przerwao jest konieczna aby mikrokontroler wiedział, który kod obsługi przerwania jest przyporządkowany do którego numeru przerwania.

28 Pytanie 13: Każdy mikrokontroler po wyzerowaniu: a)blokuje przerwania b)ustawia linie portów jako wejścia c)zeruje pamięć danych d)Czyści pamięć programu

29 Wyjaśnienie Po wyzerowaniu każdy uP wraca do bezpiecznego stanu, tzn. wyłącza przerwania maskowalne oraz ustawia linie danych jako wejścia.

30 Pytanie 14: Interfejsy wewnętrzne absolutnie niezbędne w mikrokontrolerze to: a)przetwornik A/C b)linie we/wy c)licznik – czasomierz d)Interfejs SPI

31 Wyjaśnienie Każdy mikrokontroler musi móc jakoś komunikować się ze światem zewnętrznym dlatego konieczne są linie we/wy, co więcej aby mógł nastąpić przesył danych na magistralach wewnętrznych musi nastąpić synchronizacja danych, więc uP musi również posiadać wbudowany Timer.

32 Pytanie 15: Zegar czuwania (watchdog) zabezpiecza przed: a)samoistnym przekłamaniem kodu b)błędnym działaniem układów wykonawczych c)zanikiem sygnału zegarowego d)Resetowaniem mikroprocesora e)Zbyt długim pozostawaniem w pętli bez końca

33 Wyjaśnienie Zegar czuwania (watchdog) służy do ochrony kodu programu przed zamknięciem się w pętli bez końca oraz przekłamaniami kodu. Polega to na tym, że co jakiś – określony czas należy softwareowo resetowad licznik watchdoga, który odlicza czas w dół i wtedy system wie, że kod programu wykonuję się tak jak to było zaplanowane. Jeśli licznik watchdoga się wyzeruje to mikrokontroler jest resetowany.

34 Pytanie 16: Podzespoły, które muszą być bezwzględnie zasilone po wprowadzeniu mikrokontrolera w stan maksymalnego oszczędzania mocy to: a)logika portów we –wy b)logika wewnętrznych interfejsów c)pamięć danych d)ALU

35 Wyjaśnienie Pamięć RAM to jedyny podzespół, który musi być zasilony w trybie hibernacji, po to aby zachować tam stan mikrokontrolera i przywrócić (wczytać z pamięci RAM) stany systemów wewnętrznych oraz funkcjonowanie sprzed hibernacji.

36 Pytanie 17: Rozkazy, które mogą przejąć funkcję instrukcji pustej tj. NOP: a)XCHG AX, AX (wymiana) b)BRN (skok nigdy) c)OR R1, 0 (suma z argumentem natychmiastowym) d)JMP *

37 Wyjaśnienie 2 pierwsze instrukcje nie zmieniają stanu procesora oraz danych są więc podobne do instrukcji NOP, jednak ilość cykli magistrali potrzebna na wykonanie danej instrukcji może być inna.

38 Pytanie 18: Mikroprocesor nie posiada wywołań i powrotów warunkowych. Aby zrealizować wywołanie/powrót dla zerowości (bit Z=1) należy, oprócz wywołania/powrotu bezwarunkowego, posłużyć się dodatkowo: a)instrukcją NOP b)skokiem dla warunku Z=0 c)dedykowaną procedurą

39 Wyjaśnienie Po skoku bezwarunkowym należy skasować flagę Z – tak działają właśnie wywołania/powroty warunkowe.

40 Pytanie 19: Instrukcja PSH to zapis rejestru na stos zaś POP to odczyt ze stosu. Sekwencja rozkazów dotycząca rejestrów Rx i Ry : PSH Rx, PSH Rx, POP Ry, POP Rx : a)kopiuje Ry do Rx, b)wymienia stany rejestrów c)kopiuje Rx do Ry d)Nic nie robi

41 Wyjaśnienie

42 Pytanie 20: Większość mikroprocesorów dysponuje rozkazami zatrzymania. Mikroprocesor można efektywnie wyprowadzić ze stanu zatrzymania poprzez: a)dedykowaną instrukcję b)wyłączenie i załączenie zasilania c)przerwanie

43 Wyjaśnienie Mikrokontroler można również wyprowadzić z tego stanu po przez wyłączenie i włączenie zasilania nie jest to jednak efektywne. Nie można tego dokonać przez dedykowaną instrukcję, ponieważ w tym stanie uP nie przyjmuje instrukcji.

44 Pytanie 21: Pamięć podręczna: a)powiększa dysponowany obszar pamięci b)zmniejsza ilość cykli magistrali c)powoduje że ta sama procedura może być wykonywana szybciej lub wolniej d)Ma zawsze tylko jeden poziom e)W procesorach wielordzeniowych jest wspólna

45 Wyjaśnienie Pamięć podręczna (ang. cache) – mechanizm, w którym część spośród danych zgromadzonych w źródłach o długim czasie dostępu i niższej przepustowości jest dodatkowo przechowywana w pamięci o lepszych parametrach. Ma to na celu poprawę szybkości dostępu do tych informacji, które przypuszczalnie będą potrzebne w najbliższej przyszłości. Pamięć podręczna jest elementem właściwie wszystkich systemów – współczesny procesor ma 2 albo 3 poziomy pamięci podręcznej oddzielającej go od pamięci RAM. Charakteryzuje się bardzo krótkim czasem dostępu.

46 Pytanie 22: Aby przyśpieszyć pracę mikroprocesora wprowadza się mechanizmy: a)pracę potokową b)zewnętrzną jednostkę zmiennoprzecinkową c)przewidywania rozgałęzień( tzw. BTB) d)Oszczędzania energii

47 Wyjaśnienie Praca potokowa tzw. praca na zakładkę z j.ang. Pipeline. Zastosowanie przetwarzania potokowego teoretycznie pozwala na kilkukrotnie zwiększenie szybkości pracy. Prowadzi to do wykonywania większości instrukcji w jednym cyklu pracy procesora. Z pracą potokową związany jest blok prefetchera wraz z układem BTB. Prefetcher ma za zadanie wcześniejsze pobieranie kodów instrukcji programu i umieszczanie ich w kolejce rozkazów. Występuje z nim układ przewidywania realizacji rozgałęzień, którego częścią jest buffer rozgałęzień BTB.

48 Pytanie 23: Struktura Harvard różni się od struktury von Neumana: a)dodatkowymi dwoma liniami sterującymi zapisem/odczytem układów we-wy b)obecnością pamięci podręcznych drugiego poziomu c)oddzielnymi magistralami dostępu do kodu i danych

49 Wyjaśnienie W architekturze von Neumanna komputer składa się z czterech głównych komponentów: -pamięci komputerowej przechowującej dane programu oraz instrukcje programu; -- jednostki kontrolnej odpowiedzialnej za pobieranie danych i instrukcji z pamięci oraz ich sekwencyjne przetwarzanie -- jednostki arytmetyczno-logicznej odpowiedzialnej za wykonywanie podstawowych operacji arytmetycznych. -- urządzeń wejścia/wyjścia służących do interakcji z operatorem. W odróżnieniu od architektury von Neumanna, pamięć danych programu jest tutaj oddzielona od pamięci rozkazów. Prostsza (w stosunku do architektury von Neumanna) budowa przekłada się na większą szybkość działania - dlatego ten typ architektury jest często wykorzystywany w procesorach sygnałowych oraz przy dostępie procesora do pamięci cache. Separacja pamięci danych od pamięci rozkazów sprawia, że architektura harwardzka jest obecnie powszechnie stosowana w mikrokomputerach jednoukładowych, w których dane programu są najczęściej zapisane w nieulotnej pamięci ROM (EPROM/EEPROM), natomiast dla danych tymczasowych wykorzystana jest pamięć RAM (wewnętrzna lub zewnętrzna).

50 Pytanie 24: Wyrównanie binarne to (argumenty 1, 2, 4 i 8-bitowe): a)używanie adresów podzielnych przez rozmiar argumentu b)stosowanie dla każdego bajtu oddzielnej linii parzystości c)rozkazy o parzystej liczbie bajtów d)Wszystkie rejestry mają taką samą liczbę bitów

51 Wyjaśnienie Wyrównanie binarne polega na tym, że adres argumentu jest podzielny przez jego rozmiar (1, 2, 4, 8). Zachowując wyrównanie binarne nie tracimy dodatkowych CM przy kontaktach z argumentem w pamięci.

52 Pytanie 25: Przenoszalność programu do nowszej wersji mikroprocesora uniemożliwia: a)usunięcie części instrukcji b)inne reguły ustawiania bitów warunkowych c)dodanie nowych rejestrów d)Większa liczba I/O

53 Pytanie 26: Jaki podzespół jest niezbędny na karcie we-wy systemu mikroprocesorowego: a)logika parzystości b)bufor dwukierunkowy szyny danych c)dekoder adresowy d)Przetwornik ADC

54 Wyjaśnienie Niezbędnym elementem jest dekoder adresowy, bez niego nie moglibyśmy odnieść się do danego portu. Czyli nasz interfejs wyjścia/wejścia byłby bezużyteczny.

55 Pytanie 27: W procesorze wielordzeniowym są oddzielne dla każdego rdzenia: a)układy zegarowe b)pamięć podręczna c)rozkazy

56 Wyjaśnienie Zazwyczaj pamięć podręczna jest oddzielna dla każdego rdzenia pozwala to na szybszy dostęp i lepszą optymalizację jej zawartości.

57 Pytanie 28: Tryb pracy write-back dla pamięci podręcznej: a)powoduje niespójność danych b)wymaga blokowej aktualizacji pamięci głównej c)wymaga dwupoziomowej pamięci podręcznej d)Może powodować potrzebę powtórzenia cyklu dostępu do pamięci

58 Wyjaśnienie Tryb zapisu wprowadzony razem z architekturą Pentium. Jest to rodzaj zapisu z opóźnieniem. Po wpisaniu danej do pamięci cache aktualizacja reszty pamięci jest opóźniana do momentu wymuszenia wymiany danych, które nie zostały jeszcze zaktualizowane. Przyspiesza to znacznie działanie systemu cache zmniejszając tym samym aktywność na magistrali. Jednakże, może prowadzić w przypadku awarii do utraty części danych.

59 Pytanie 29: Przy pracy wielozadaniowej jako zadanie zajęte traktujemy: a)zadanie czekające na koniec obsługi b)każde zadanie obsługowe c)zadanie aktualnie wykonywane d)zadanie ukończone

60 Pytanie 30: Mechanizm stronicowania (procesory Intela): a)pozwala przyśpieszyć działanie pamięci podręcznej b)pozwala na lepsze wykorzystanie dysponowanego obszaru pamięci c)wymaga użycia dodatkowych tablic w pamięci zewnętrznej d)Skuteczną ochronę pamięci przy wielozadaniowości

61 Wyjaśnienie Stronicowanie jest jednym ze sposobów rozwiązania problemu zewnętrznej fragmentacji polegającym na dopuszczeniu nieciągłości rozmieszczenia logicznej przestrzeni adresowej procesu w pamięci fizycznej. Podstawowa filozofia stronicowania: Pamięć fizyczna dzielona jest na bloki stałej długości zwane ramkami. Pamięć logiczna dzielona jest na bloki stałej długości zwane stronami. Rozmiary stron i ramek są identyczne. Przy wykonywaniu procesu, strony z pamięci pomocniczej wprowadzane są w odpowiednie ramki pamięci operacyjnej. Stronicowaniem w systemach komputerowych nazywamy podział pamięci na mniejsze obszary o ustalonej lub zmiennej wielkości i przydzielanie tym blokom adresów fizycznych lub logicznych.

62 DZIĘKUJEMY ZA UWAGĘ


Pobierz ppt "Technika mikroprocesorowa Seminarium dyplomowe Wykonali: Michał Kochanowski Łukasz Duda Kamil Nicpoń Wydział Informatyki, Elektroniki i Telekomunikacji."

Podobne prezentacje


Reklamy Google