• Nie Znaleziono Wyników

Technika mikroprocesorowa Seminarium dyplomowe

N/A
N/A
Protected

Academic year: 2021

Share "Technika mikroprocesorowa Seminarium dyplomowe"

Copied!
62
0
0

Pełen tekst

(1)

Technika mikroprocesorowa

Seminarium dyplomowe

Wykonali:

Michał Kochanowski Łukasz Duda Kamil Nicpoń

Wydział Informatyki, Elektroniki i Telekomunikacji Katedra Elektroniki

Kraków 26.11.2012r.

(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=10110011(U2)=-77 9D=10011101(U2)=-99

~(9D)=01100011(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=01101010(U2)=106 3E=00111110(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=11111111(U2)=-1

~FF=00000000+1=00000001(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 software’owo 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Ę

Cytaty

Powiązane dokumenty

dodatkowe informacje łączna ilość pamięci 256GB, pamięć kompatybilna z HP DL380 g9 E5-2500 v3 (774174-001) gwarancja [minimum] 11 miesięcy.. 2

MW1 Student posiada wiedzę z zakresu analizy studium literatury, opracowania koncepcji i konstrukcji pracy dyplo- mowej, opracowania założeń metodologicznych, przygotowania

Procesor Procesor o minimalnym taktowaniu zegara 3,5 GHz i do 4,7GHz w trybie podwyższonego zapotrzebowania na moc obliczeniową, ilości rdzeni/wątków nie mniejszenj niż 16C/32T

Narzędzie warto skonfigurować w ten sposób aby dokonać kilku cykli sprawdzania pamięci (większa pewność, że z modułem pamięci jest wszystko OK) - ilość przeprowadzonych

ich celu, przedmiotu i zakre- su, procedury badań oraz ich organizacji, nabycie umiejętności w zakresie realizacji badań i posługiwania się technikami badawczymi oraz

Student uczestniczy w zajęciach zgodnie z ustalonym harmonogramem, wykazuje się zadowalającą inicjatywą i aktywnością w przygotowaniu pracy dyplomowej, współpracuje z Promotorem

z zagadnieniem pracy dyplomowej SEU_K1_W02 wyniki

A to doświadczenie nie jest związane koniecznie ani z Ho- locaustem, ani nawet z GUŁagiem, choć może być także traumatyczne oraz niezmiernie ważne dla swoistej pamięci i