Wykład. Potokowe wykonywanie operacji i rozkazów, stos, podprogramy, przerwania, układ sterowania, zarys historii komputera elektronicznego.
|
|
- Helena Orzechowska
- 6 lat temu
- Przeglądów:
Transkrypt
1 Wykład Potokowe wykonywanie operacji i rozkazów, stos, podprogramy, przerwania, układ sterowania, zarys historii komputera elektronicznego. Zawartość wykładu: 1. Potokowe wykonywanie operacji obliczeniowych 2. Potokowe wykonywanie rozkazów 3. Pamięć stosowa w komputerze 4. Wywołania podprogramów 5. Przerwania i wyjątki 6. Budowa układów sterowania komputerów 7. Zarys historii komputera elektronicznego
2 Potokowe wykonywanie operacji obliczeniowych Potokowe przetwarzanie danych (ang. pipelined processing) polega na zorganizowaniu wykonywania operacji w komputerze, w sposób podobny do wytwarzania produkowania wyrobów w fabryce przy pomocy taśmy produkcyjnej. Taśma produkcyjna (ang. production pipeline) jest to urządzenie, które przesuwa wytwarzane produkty między kolejnymi stanowiskami, na których wykonywane są kolejne składowe operacje na produktach potrzebne do wytworzenia całego wyrobu. Stanowiska są ustawione w szereg wzdłuż taśmy w kolejności odpowiadającej kolejnym fazom procesu produkcyjnego.
3 Przed każdym przesunięciem taśmy na jej początek wstawia się kolejny nieobrobiony przez taśmę produkt inicjalny (mogą to być surowce lub produkt w stanie inicjalnym). Produkt jest przesuwany następnie przez wszystkie stanowiska robocze. Na każdym stanowisku produkt jest wzbogacany o wyniki wykonanych na nim odpowiednich operacji. Po przejściu przez wszystkie stanowiska produkt zamienia się w gotowy wyrób. Czas wykonania operacji na wszystkich stanowiskach na taśmie jest w przybliżeniu taki sam. W czasie między kolejnymi przesunięciami taśmy, muszą zakończyć się operacje na wszystkich stanowiskach, by taśma mogła być przesunięta o jedno stanowisko w kierunku ostatniej operacji w procesie produkcyjnym. Podczas pracy taśmy produkcyjnej na której jest n stanowisk, obrabianych jest jednocześnie n produktów.
4 Po każdym przesunięciu taśmy schodzi z niej gotowy produkt, o ile na początek taśmy stale podawane są produkty w stanie inicjalnym. Przy produkcji taśmowej na n stanowiskach, szybkość uzyskiwania gotowych wyrobów jest n razy większa w porównaniu z taką organizacją produkcji, gdzie nie ma przesuwającej się taśmy a cały wyrób jest wytwarzany od początku do końca na jednym stanowisku.
5 W informatyce taśmowe wykonywanie operacji obliczeniowych jest nazywane przetwarzaniem potokowym (ang. pipelined processing). Aby operacje obliczeniowe mogły być wykonywane w sposób potokowy musimy zbudować układ wykonawczy, który będzie działał podobnie jak taśma produkcyjna.
6 W celu zaprojektowania potokowego wykonania danej operacji obliczeniowej należy: podzielić operację obliczeniową na pewną liczbę n operacji składowych, wykonywanych sekwencyjnie - jedna po drugiej, takich, że czas wykonania wszystkich operacji składowych jest w przybliżeniu identyczny, zbudować dla każdej operacji składowej odrębny układ wykonawczy tzw. stopień potoku (ang. pipeline stage), połączyć stopnie potoku w taki sposób, aby wyjście z poprzedniego stopnia było podawane na wejście następnego stopnia, zbudować układ synchronizacji przekazywania danych między stopniami, aby dane przekazywane były między wszystkimi stopniami jednocześnie, w odstępach czasu równych czasowi wykonania operacji składowych, zwanych taktami potoku,
7 zapewnić, aby w chwili przekazywania danych między stopniami na wejście pierwszego stopnia podawane były nowe argumenty operacji obliczeniowej, odbierać co każdy takt wyniki z ostatniego stopnia potoku, stanowiące wyniki wykonania całej operacji obliczeniowej.
8 Rzadko udaje się podzielić operacje obliczeniową na dokładnie równe czasowo operacje składowe. Dlatego, między stopniami potoku wstawia się układy buforowe, do których wpisuje się wyniki działania stopni (patrz rysunek poniżej po prawej stronie). Każdy układ buforowy stanowi układ dwu rejestrów: rejestru wyjściowego stopnia poprzedniego i rejestru wejściowego stopnia następnego. Rejestr wyjściowy służy do asynchronicznego zapamiętania wyniku stopnia poprzedniego. Rejestry w obrębie jednego bufora są połączone ze sobą równolegle, w taki sposób, że co takt potoku następuje przepisanie zawartości rejestru wyjściowego do wejściowego. Przepisanie następuje we wszystkich buforach równocześnie, co zapewnia układ sterowania potoku.
9 Wyznacza się najdłuższy czas wykonania operacji wśród wszystkich stopni, włączając w to zapis wyniku stopnia do wyjściowego rejestru buforowego i ten czas przyjmuje się za długość taktu potoku. Wyniki działania stopni przekazuje się ze wszystkich buforów na wejście następnego stopnia w odstępach czasu równych przyjętemu taktowi potoku, równemu najdłuższemu czasowi działania stopnia. Pojedyncze rejestry buforowe umieszcza się również na wejściu pierwszego stopnia i wyjściu ostatniego stopnia potoku. Tak zbudowany potok pozwala na wykonanie przetwarzania potokowego również dla operacji, które nie dają się podzielić na dokładnie równe czasowo operacje składowe.
10 Struktura potoku dla wykonania operacji obliczeniowej rejestr we Stopień 1 (operacja 1) bufor 1 Sterowanie przesłaniem danych między stopniami Stopień 2 (operacja 2) bufor 2 Stopień n-1 (operacja n-1) bufor n-1 Stopień n (operacja n) rejestr wy
11 Budowa bufora między stopniami potoku Z poprzedniego stopnia Rejestr buforowy wy Sterowanie przesłaniem danych między stopniami Rejestr buforowy we Do następnego stopnia
12 Łatwo zauważyć, że przez n-1 pierwszych taktów działania potoku na wyjściu potoku nie pojawi się żaden wynik. Pierwszy wynik operacji pojawi się po n-tym takcie i odtąd po każdym takcie będziemy odbierać wynik operacji obliczeniowej. Pomijając początkowe opóźnienie, potok obliczeniowy zawierający n stopni przyspiesza więc wykonanie operacji obliczeniowej n krotnie.
13 Potokowe wykonywania rozkazów Ideę przetwarzania potokowego można z powodzeniem zastosować do wykonania rozkazów w procesorze. Jak wiadomo cykl wykonawczy rozkazu można podzielić na następujące operacje składowe: Pobranie rozkazu Zdekodowanie rozkazu Wyznaczenie adresu argumentów Pobranie argumentów Wykonanie operacji Zapis wyników do pamięci
14 Sprzęt wykonawczy komputera możemy zbudować w ten sposób, że każda z podanych operacji składowych cyklu rozkazu będzie wykonana przez odrębny układ wykonawczy. Układ ten jest wstawiony jako stopień do potoku wykonania rozkazu, jak pokazano na rysunku poniżej. Założymy, że takt potoku ustalimy równy czasowi wykonania najdłuższej z powyższych operacji składowych. Między stopniami potoku wstawimy buforowe układy pamiętające, które będą przechowywać wyniki wykonania stopnia poprzedniego jako wejście dla stopnia następnego. Na wejście potoku będziemy podawać adresy kolejnych rozkazów programu wykonywanego przez procesor.
15 Stopnie potoku wykonującego rozkazy komputera adres rozkazu Pobranie rozkazu Zdekodowanie rozkazu Wyznaczenie adresu arg. Pobranie argumentu Wykonanie rozkazu Zapis wyniku
16 W kolejnych taktach potoku coraz to nowe adresy rozkazów będą wprowadzane do pierwszego stopnia potoku i pobierane będą z pamięci operacyjnej kolejne rozkazy programu. Po 6-tym takcie potoku otrzymamy wykonanie pierwszego rozkazu programu i po każdym następnym takcie będziemy mięć wykonany kolejny rozkaz programu, o ile potok będzie pracował bez przestojów - tzn. każdy stopień potoku będzie miał w każdym takcie gotowe dane wejściowe. Potok wykonania rozkazów zawierający 6 stopni, pracujący bez przestojów, przyspiesza wykonanie programu 6-ciokrotnie. Dzieje się tak dlatego, że przy pomocy potoku wykonanie programu zostaje zrównoleglone. Każdy stopień potoku pracuje dla innego rozkazu.
17 + Wykonanie potokowe rozkazów takty zegara Stopnie potoku: pobranie rozkazu zdekodowanie rozkazu wyznaczenie adresu operandów pobranie argumentów wykonanie operacji rozkazu zapis wyniku nr rozkazu
18 Przy wykonywaniu programów metodą potokową występują problemy z wykonaniem pewnych typów rozkazów oraz z wykonaniem programów o pewnych strukturach następstwa rozkazów. Rozkazy te powodują tzw. przestoje w potoku, z powodu braku danych na wejściu stopni potoku. Brak danej wejściowej uniemożliwia pracę danego stopnia, brak wyniku do przesłania do następnego stopnia a w konsekwencji, z pewnym opóźnieniem, brak wyniku na wyjściu potoku. Jeśli brak danych wejściowych trwa więcej niż jeden takt, powoduje to zatrzymanie pracy całego potoku (jego końcowego stopnia) na tyle taktów, dla ilu brak było danych wejściowych.
19 Problem rozkazów skoku Pierwszym typem rozkazów, które powodują przestoje w potoku wykonania rozkazów są rozkazy skoku. Wynikiem rozkazu skoku jest wprowadzenie do licznika rozkazów adresu następnego rozkazu do wykonania tj. adresu wytworzonego (lub zawartego) w tym rozkazie.
20 Przykład czas adres rozkazu R 1 Pobranie rozkazu R 2 R 3 rozkaz skoku Zdekodowanie rozkazu Wyznaczenie adresu arg. R 4 Pobranie argumentu R 5 Wykonanie rozkazu R 6 Zapis wyniku Dla pobrania rozkazu R 4, jego adres powinien znaleźć się w liczniku rozkazów już w chwili 3. Natomiast rozkaz skoku R 3 dostarczy ten adres dopiero w chwili 8. Tak więc, pierwszy stopień potoku nie będzie mógł pracować w chwilach od 3 do 7, powodując w konsekwencji przestoje dalszych stopni potoku i brak wyników na wyjściu potoku.
21 Sytuację tę można poprawić w trakcie kompilacji programu. Kompilator umieszcza w programie za rozkazem skoku odpowiedniej liczby rozkazów nic nie rób, które zastępuje następnie rozkazami obliczeniowymi obojętnymi z punktu widzenia miejsca ich wykonania w programie. W ten sposób lukę w ciągłej pracy potoku może być wypełniona. Metoda ta nosi nazwę opóźnionych skoków (ang. delayed branches).
22 Problem wzajemnej zależności kolejnych rozkazów Inną sytuacją w programie, w której potok zostaje wstrzymany jest bezpośrednia zależność kolejnych rozkazów ze względu na dane. Dzieje się tak, gdy następny rozkaz wykonuje operację na wyniku poprzedniego. Przykład M (125) := M (125) + R1 (ADD) R2 := R2 M (125) (MUL) gdzie: ADD, MUL oznacza rozkazy dodaj, pomnóż; M(125), R1, R2 oznaczają odpowiednio zawartości: komórki pamięci o adresie 125, rejestru R1, rejestru R2.
23 czas adres rozkazu r 1 r 2 r 3 ADD r 4 MUL Przestój potoku z powodu braku danej M (125) wytworzonej przez ADD Zdekodowanie rozkazu Wyznaczenie adresu arg. Pobranie argumentu Pobranie rozkazu Wykonanie rozkazu r 5 Zapis wyniku Przestój potoku w wyniku zależności sąsiednich instrukcji Na rysunku wykonania programu powyżej, widzimy przerwę długości 2 taktów potoku w wykonywaniu instrukcji MUL z powodu braku wyliczonego i odesłanego do pamięci wyniku dodawania ADD. Przerwa ta może być wypełniona przez wykonanie dwu obojętnych instrukcji obliczeniowych, wstawionych przez kompilator do programu bezpośrednio po instrukcji ADD.
24 Pamięć stosowa w komputerze Pamięć stosowa (ang. stack memory) jest specjalnym rodzajem pamięci wykorzystywanym w komputerze dla tymczasowego przechowywania informacji, gdy chcemy odczytywać informacje w dokładnie odwrotnym porządku w stosunku do kolejności zapisu, nie zajmując się problemami adresacji informacji Pamięć stosowa jest pamięcią szeregową ze szczególnymi ograniczeniami dostępu na zapis i odczyt do tylko jednej komórki tej pamięci tzw. wierzchołka (szczytu) stosu (ang. top of the stack).
25 Pamięć stosowa zachowuje się tak jak kolejka, w której informacja może być wpisywana do wierzchołka stosu, powodując przesunięcie informacji przechowywanych w kolejnych komórkach stosu o jedna pozycję w głąb tej kolejki. Odczyt ze stosu jest możliwy tylko z wierzchołka stosu a więc można odczytać tylko ostatnio zapisaną informację. Odczyt powoduje usunięcie wiadomości ze szczytu stosu i wprowadzenie na jej miejsce pierwszej informacji z głębi stosu, z przesunięciem wszystkich pozostałych informacji o jedno miejsce w kierunku szczytu stosu. Jest to więc kolejka typu Ostatni- Wpisany - Pierwszy - Odczytany (ang. Last-In-First-Out czyli LIFO).
26 Pamięć stosowa działa podobnie do magazynku karabinu, w którym wprowadzenie kolejnego naboju wpycha pozostałe naboje w głąb magazynka, a użycie naboju powoduje jego usunięcie i wprowadzenie na wierzch magazynka pierwszego naboju, który znajdował się pod tym zużytym.
27 Dla obsługi pamięci stosowej używane są trzy rozkazy: Wprowadź do stosu (ang. Push) Czytaj wierzchołek stosu (ang. Read Stack) Usuń ze stosu (ang. Pop ) Aby wpisać informację D do stosu wykonujemy operacje Push D. Aby odczytać informacje z wierzchołka stosu wykonujemy operacje Read stack. Aby usnąć informacje ze szczytu stosu wykonujemy operacje Pop.
28 Czasami stosowane są operacje arytmetyczne stosowe, które wykonują się na argumentach zapisanych w dwu kolejnych komórkach na szczycie stosu. Po wykonaniu operacji arytmetycznej wykonywana jest operacja Pop i wynik jest umieszczany na szczycie stosu. Wierzchołek Wierzchołek C B A Wierzchołek Dana C Dana B Dana A D C B A C B A Stan początkowy Po operacji PUSH D (wprowadź D do stosu) Po operacji POP (usuń ze stosu)
29 Budowa pamięci stosowej Pierwsze realizacje pamięci stosowej polegały na wykorzystaniu rejestrów, między którymi informacja była przesuwana równolegle, przy operacjach Push i Pop. Współcześnie pamięć stosowa jest realizowana w pamięci operacyjnej ze wspomaganiem sprzętowym w postaci rejestrów obsługujących mechanizm dostępu do stosu. Stos jest nieprzerwanym ciągiem komórek o kolejnych adresach zarezerwowanym w pamięci operacyjnej przy pomocy dwu specjalnych rejestrów procesora, przechowujących adresy komórek stanowiących górną i dolną granicę stosu. Są to tzw. rejestry podstawy i granicy stosu (ang. stack base register, stack limit register). Obszar pamięci pomiędzy tymi adresami jest wyłączony z innego wykorzystywania niż dla realizacji pamięci stosowej. Wierzchołek stosu jest określony przez adres przechowywany w trzecim rejestrze tzw. rejestrze wskaźnika stosu (ang. stack pointer register).
30 Przed rozpoczęciem wykonywania programów komputera, rejestr wskaźnika stosu jest ustawiany na zawartość rejestru podstawy stosu. Po każdej operacji Push, zawartość rejestru wskaźnika stosu jest zmieniana o liczbę bajtów odpowiadających jednemu słowu stosu w kierunku adresu granicy stosu. Po każdej operacji Pop, zawartość rejestru wskaźnika stosu jest zmieniana o liczbę bajtów odpowiadających jednemu słowu stosu w kierunku adresu podstawy stosu.
31 Pamięć operacyjna Rejestry specjalne procesora Rejestr granicy stosu Rejestr wskaźnika stosu Rejestr podstawy stosu Dane zapisane w stosie Obszar Stosu Realizacja stosu w pamięci operacyjnej komputera wierzchołek stosu w pamięci
32 Rysunek powyżej pokazuje przypadek realizacji stosu w pamięci operacyjnej gdzie wierzchołek stosu jest przechowywany bezpośrednio w pamięci. Inne rozwiązanie, pokazane na rysunku poniżej, zakłada, że wierzchołek stosu oraz komórka stosu bezpośrednio poniżej wierzchołka są przechowywane w specjalnych rejestrach procesora: rejestr wierzchołka stosu i rejestr pod-wierzchołka stosu.
33 Rejestry specjalne procesora Pamięć operacyjna Rejestr wierzchołka stosu Rejestr pod-wierzchołka stosu Rejestr granicy stosu Rejestr wskaźnika stosu Rejestr podstawy stosu Dane zapisane w stosie Obszar Stosu Realizacja stosu w pamięci operacyjnej z wierzchołkiem stosu w rejestrach
34 Wywołania podprogramów Wśród sterujących rozkazów wewnętrznych komputera wyróżniliśmy rozkazy wywołania podprogramów (ang. subroutine call) o symbolu Call i rozkazy powrotu z podprogramu (ang. subroutine return) o symbolu Ret. Podprogram (ang. subroutine) jest to sekwencja rozkazów zakończona rozkazem powrotu Ret. Z rozkazem wywołania podprogramu jest zawsze związany adres pierwszego rozkazu w podprogramie, zwany adresem podprogramu. Mechanizm wywoływania podprogramów i realizacja rozkazów Call i Ret opiera się na wykorzystaniu stosu.
35 Wykonanie rozkazu wywołania podprogramu Call polega na: 1. wprowadzeniu do stosu bieżącej zawartości licznika rozkazów (a więc adresu powrotu do rozkazu, następnego do wykonania po rozkazie Call ) poprzez operację Push, 2. wpisaniu następnie do licznika rozkazów adresu podprogramu z rozkazu Call, 3. pobranie rozkazu według nowej zawartości licznika rozkazów. Adres zapisywany do stosu będzie wykorzystany przez rozkaz powrotu z podprogramu Ret, do automatycznego powrócenia po wykonaniu podprogramu do następnego rozkazu po rozkazie Call.
36 Wykonanie rozkazu powrotu z podprogramu Ret polega na: 1. odczytaniu z wierzchołka stosu zapisanego tam adresu powrotu (do rozkazu następnego po rozkazie Call ), 2. wpisaniu tego adresu powrotu do licznika rozkazów, 3. wykonaniu operacji Pop na stosie, 4. pobraniu rozkazu według nowej zawartości licznika rozkazów. Adres powrotu zapisywany do stosu przy wywołaniu podprogramu nazywany jest czasem śladem (ang. trace) a rozkaz wywołania podprogramu nazywany jest inaczej skokiem ze śladem.
37 Istnieją zagnieżdżone wywołania podprogramów (ang. nested calls)), tzn. z wywołanego podprogramu można znowu wywołać następny podprogram, z niego następny, itd. Mechanizm powrotu z podprogramu według śladu zapisanych w stosie zapewnia automatyczne powroty do kolejnych podprogramów przy zachowaniu poprawnej kolejności.
38 Pamięć operacyjna Adresy 000 Program wiodący Stos CALL 500 Zapisz 101 do stosu Stos Podprogram 1 Stos 101 Pobierz ze stosu CALL 900 RET Zapisz 601 do stosu Stos Podprogram 2 Stos Pobierz ze stosu 950 RET Wykorzystanie stosu przy wywołaniach podprogramów
39 Rysunek powyżej przedstawia czynności związane z zagnieżdżonym wywołaniem podprogramów z programu wiodącego. Przy wywołaniu podprogramu 1 (Call 500 zapisany pod adresem 100) do stosu zostaje wpisany adres 101 powrotu z wywołanego podprogramu. Przy wywołaniu podprogramu 2 (Call 900 zapisany pod adresem 600) do stosu zostaje wpisany adres powrotu 601. Przy wykonaniu powrotu z podprogramu 2 ze stosu pobierany jest adres 601. Przy wykonaniu powrotu z podprogramu 1 ze stosu pobierany jest adres 101.
40 Przerwania i wyjątki Przerwania (ang. interrupts) umożliwiają sprzętową ingerencję z zewnątrz komputera w przebieg wykonywania programu. Procesor ma zazwyczaj 2 końcówki przerwań (końcówka maskowalna i niemaskowalna), na które układy zewnętrzne w stosunku do komputera mogą wysłać sygnały w celu wymuszenia wykonania programu obsługi przerwania. Zgłoszenie przerwania powoduje ( po dokończeniu aktualnie wykonywanego rozkazu) zawieszenie normalnego toku wykonywania bieżącego programu (następny rozkaz tego programu nie jest wykonywany) a zamiast tego następuje sprzętowe wymuszenie wywołania podprogramu obsługi przerwania spod adresu ustalonego w odpowiednim specjalnym rejestrze lub tablicy w pamięci procesora.
41 Operacje związane z obsługą przerwania Rozkaz Rozkaz Wywołanie podprogramu obsługi Zapamiętanie stanu wybranych rejestrów mikroprocesora w stosie Wykonanie podprogramu obsługi przerwania Przywrócenie stanu rejestrów mikroprocesora ze stosu Powrót (RET) Rozkaz
42 Podprogram obsługi przerwania zapamiętuje w stosie stan podstawowych rejestrów procesora, które potrzebne będą do odtworzenia stanu wykonywanego programu przy powrocie do jego wykonywania, tzw. kontekst programu. Są to licznik rozkazów, rejestr stanu procesora, wskaźnik stosu procesora, inne rejestry specjalne i często stan akumulatora lub paru podstawowych rejestrów uniwersalnych zawierających dane. Następnie wykonywany jest właściwy podprogram obsługi przerwania, który zwykle wypełnia jakieś operacje wyższej konieczności ( bardziej priorytetowe niż bieżący program) wywoływane asynchronicznie metodą zgłoszenia przerwania. Po zakończeniu programu obsługi przerwania, zawartości rejestrów procesora potrzebne do wznowienia przerwanego programu są jedna po drugiej pobierane ze stosu ( poprzez wykonania rozkazów read stack do akumulatora oraz Pop oraz rozkazów przesłania między rejestrem akumulatora i innymi rejestrami). Po przywróceniu stanu potrzebnych rejestrów wykonywany jest rozkaz powrotu z podprogramu przerwania, który pobiera rozkaz według licznika rozkazów.
43 Badanie obecności zgłoszenia przerwania odbywa się w cyklu wykonania rozkazów po każdym rozkazie, po którym przerwania są dozwolone. Wydłuża to cykl rozkazowy o trzecią fazę: fazę obsługi przerwań. Nie po wszystkich rodzajach rozkazów przerwania są dozwolone. Przerwania nie są dozwolone po rozkazach w których zbadano lub ustawiono stan komputera, który musi być zachowany przy wykonaniu następnego rozkazu. Rozkazy, po których nie może nastąpić obsługa przerwania są nazywane rozkazami nieprzerywalnymi. Obsługa przerwań może być zablokowana również w sposób programowy - poprzez maskowanie przerwań w wyniku wykonania związanego z tym rozkazu wewnętrznego. Nie dotyczy to jednak przerwań przychodzących na końcówkę przerwań niemaskowalnych. Te muszą być zawsze obsłużone, jednak tylko po rozkazach przerywalnych.
44 Obsługa przerwań a cykl wykonania rozkazów Start Pobierz następny rozkaz Faza pobierania rozkazu Przerwania zablokowane Wykonaj rozkaz Przerwania dozwolone Faza wykonania rozkazu Sprawdź, czy jest przerwanie: obsłuż przerwanie Faza obsługi przerwań Koniec
45 Na końcówkę przerwań może przychodzić sygnał, który jest sumą logiczną sygnałów przerwań pochodzących z wielu źródeł. Powstaje problem rozpoznania z jakich źródeł pochodzi dany sygnał przerwania i jeśli tych źródeł jest wiele na raz, powstaje dalszy problemsygnał z którego źródła obsłużyć, gdyż procesor może obsługiwać tylko jedno przerwanie w danej chwili. Problemami tymi zajmują się tzw. kontrolery obsługi przerwań (ang. interupt controllers), o których będzie mowa w wykładzie dotyczącym kontrolerów układów wejścia/ wyjścia. Obsługa przerwań może być zorganizowana z jednym lub wieloma poziomami priorytetów przerwań pochodzących z różnych źródeł. Kontrolery obsługi przerwań dostarczają do komputera oprócz sumarycznego sygnału przerwania, również kod identyfikacyjny przerwania o najwyższym priorytecie.
46 Przy jednym poziomie priorytetu, programy obsługi przerwań nie są przerywalne przez następne przychodzące przerwania. Przy obsłudze przerwań z wieloma priorytetami, przerwania o wyższym priorytecie przerywają obsługę przerwań o niższym priorytecie, na zasadzie zagnieżdżonego wywoływania podprogramów obsługi z użyciem stosu na zapis stanów przerywanych programów.
47 Zasada obsługi przerwań z jednym poziomem priorytetu Priorytet 2 Przerwanie 1 Przerwanie 2 Przerwanie 3 1 Obsługa przerwania 1 Obsługa przerwania 2 Obsługa przerwania 3 0 Priorytet przerwania 3 = priorytet przerwania 2 = priorytet przerwania 1 czas
48 Zasada obsługi przerwań z wieloma poziomami priorytetów. Priorytet 7 Przerwanie 1 Przerwanie 2 Przerwanie 3 Przerwanie 4 Priorytet przerwania 4 > priorytet przerwania 2 > > priorytet przerwania 1 > priorytet przerwania czas Obsługa przerwania 1 Obsługa przerwania 4 Obsługa przerwania 2 Obsługa przerwania 3
49 Wyjątki (ang. exceptions) są swego rodzaju przerwaniami wewnętrznymi komputera, które są wywoływane bądź przez specjalne rozkazy wewnętrzne bądź przez wyjątkowe sytuacje zagrażające integralności systemu, jakie mogą pojawiać się przy wykonywaniu programów. Wyjątki są obsługiwane podobnie jak przerwania przychodzące na końcówkę przerwań niemaskowalnych.
50 Budowa układu sterowania komputera Zadaniem układu sterowania (układu sterującego) komputera (ang. control unit) jest pobieranie rozkazów programu z pamięci operacyjnej do rejestru rozkazów komputera i generowanie na podstawie kodu operacyjnego rozkazów sygnałów sterujących wykonaniem rozkazów. Sygnały te są rozsyłane do wszystkich bloków komputera, które biorą udział w wykonaniu rozkazu. W komputerach występują dwa typy układów sterowania: sprzętowe (układowe) układy sterowania (ang. hardwired control units) mikroprogramowane układy sterowania (ang. microprogrammable control units).
51 Schemat sprzętowego układu sterowania komputera Rejestr rozkazów Część operacyjna Część adresowa Sygnał prostokątny z zegara kwarcowego Dekoder rozkazów Układ taktujący Generator następnego stanu ster. Matryca sygnałów sterujących Sygnały sterujące dla układów wykonawczych Flagi i zmienne Sygnały zewnętrzne
52 Nazwa sprzętowy (układowy) układ sterujący pochodzi od tego, że część tego układu generator sygnałów sterujących potrzebnych do wykonania rozkazów, jest zaszyty w sprzęcie (ang. hardwired). Oznacza to, że pożądane sygnały sterujące są wytwarzane przez specjalnie zaprojektowane sprzętowe układy logiczne, w których nie można zmienić sposobu generowania sygnałów bez fizycznej zmiany (przebudowy) ich struktury. Podstawowe dane dla generowania sygnałów sterujących są zawarte w części operacyjnej rozkazu. Część operacyjna jest dekodowana w dekoderze rozkazów. Dekoder rozkazów jest to w ogólności zespół wielu dekoderów dekodujących różne pola części operacyjnej rozkazu. W wyniku zdekodowania rozkazu, zwykle kilka linii wychodzących z dekodera rozkazów uzyskuje aktywną wartość sygnału. Sygnały z tych linii są następnie stale podawane na wejście matrycy generującej sygnały sterujące dla układów wykonawczych komputera. Matryca ta realizuje kombinacje logiczne tych sygnałów z wyjściami matrycy wytwarzającej kolejne stany sterowania i z sygnałami przychodzącymi z zewnątrz komputera, np. sygnałami przerwań. Jest ona zbudowana podobnie do programowalnych układów logicznych.
53 Sygnały sterujące dla danego rozkazu muszą być wytwarzane zwykle nie w jednej chwili lecz w przeciągu interwału czasowego zawierającego wiele taktów czasowych, który odpowiada cyklowi wykonania danego rozkazu. Ten cykl jest zorganizowany w postaci szeregu stanów, które osiąga układ sterowania. Część sygnałów wyjściowych generowanych przez matryce sygnałów sterujących jest podana zwrotnie na wejście matrycy generatora następnego stanu sterowania. Ta matryca kombinuje te sygnały z sygnałami czasowymi wytwarzanymi w układach taktujących z podstawowego przebiegu zegarowego dostarczanego zwykle w wyniku działania generatora kwarcowego. W momencie dostarczenia nowego rozkazu do układu sterującego, układ ten przebywa w stanie inicjalnym - pobrania nowego rozkazu. Zdekodowanie rozkazu powoduje, poprzez linie sprzężenia zwrotnego, przejście do pierwszego stanu wykonania danego rozkazu, który trwa tak długo jak długo są niezmienione: sygnał taktujący lub inne sygnały wejściowe: flagi i zmienne stanu komputera.
54 Po zmianie każdego wejść generatora, następuje zmiana stanu sterowania, która powoduje wygenerowanie odpowiedniego wejścia dla matrycy generatora sygnałów sterujących. Pojawienie się sygnału zewnętrznego : np. sygnału przerwania, spowoduje, że następnym stanem sterowania, będzie stan związany z reakcja na ten sygnał zewnętrzny np. przerwanie. Wartości flag i zmiennych stanu komputera powodują wybranie odpowiednich stanów cyklu wykonawczego rozkazu. Ostatnimi stanami w cyklu są stany sterowania wywołujące pobranie następnego rozkazu programu: przesłanie zawartości licznika rozkazów do rejestru buforowego adresu pamięci operacyjnej a następnie odczyt z pamięci do rejestru rozkazów komputera. Gdy wykonywanym rozkazem jest rozkaz stopu, kończący wykonanie programu, układ sterowania zostaje wprowadzony w stan pracy systemu operacyjnego, w którym oczekuje on na następną dyrektywę użytkownika.
55 Struktury mikroprogramowanych układów sterowania Zasadniczą różnicą w budowie tych układów porównaniu ze sprzętowym układem sterowania jest obecność pamięci sterowania, która służy do przechowywania słów zawierających zakodowane sygnały sterujące, potrzebne dla wykonania rozkazów. W mikroprogramowanym układzie sterowania kolejne rozkazy są pobierane do rejestru rozkazów. Jednak część operacyjna rozkazu nie jest bezpośrednio dekodowana dla celów generacji sygnałów sterujących, lecz stanowi adres początkowy mikroprogramu zawartego w pamięci sterowania.
56 Działanie mikroprogramowanego układu sterowania z jednopoziomową pamięcią sterowania W wyniku podania kodu z części operacyjnej rozkazu do pamięci sterowania (do jej rejestru adresowego) odczytany jest do rejestru mikrorozkazów pierwszy mikrorozkaz z mikroprogramu, który interpretuje (realizuje poprzez interpretację przez mikrorozkazy) wykonanie tego rozkazu. Mikrorozkaz zawiera w części operacyjnej zakodowane sygnały sterujące, przeważnie w postaci wielu pól bitowych. Część operacyjna podlega dekodowaniu w zespole dekoderów pól mikrorozkazu. Oprócz części operacyjnej, w mikrorozkazie znajduje się adres następnego mikrorozkazu w mikroprogramie interpretującym dany rozkaz oraz pole sterujące układem generacji adresu mikrorozkazu.
57 Pole sterujące układem generacji adresu określa tryb adresowania (operacje adresowa) do wykonania na adresie pochodzącym z bieżącego mikrorozkazu. Przy mikrorozkazach z warunkowym trybem adresowania następnego mikrorozkazu, adres jest modyfikowany przez wartości bitów z przerzutników warunków (flag), które reprezentują informacje o stanie obliczeń w komputerze. Ostatnim mikrorozkazem mikroprogramu danego rozkazu jest zwykle mikrorozkaz pobrania następnego rozkazu z pamięci operacyjnej do rejestru rozkazów.
58 Schemat mikroprogramowanego układu sterowania z jednopoziomową pamięcią sterowania Pamięć sterowania (mikroprogramów) Dekoder Rejestr adresu mikrorozkazu Z pamięci operacyjnej Rejestr rozkazów Część operacyjna Adres Część operacyjna Cz.ster. Adres Rejestr mikrorozkazów Dekoder DEK1 DEKp Sygnały sterujące Układy generacji adresu mikrorozkazu Informacje stanu z układów wykonawczych
59 W układzie sterowania z dwupoziomową pamięć sterowania, oprócz pamięci mikrorozkazów, występuje pamięć tzw. nanorozkazów. W takim układzie sterowania, mikrorozkazy nie zawierają zakodowanych sygnałów sterujących. W miejsce tego, w części operacyjnej mikrorozkazu podany jest adres słowa w pamięci nanorozkazów, które zawiera zakodowane sygnały sterujące. Pamięć nanorozkazów zawiera wszystkie możliwe kombinacje sygnałów sterujących występujące w mikroprogramach interpretujących zbiór wszystkich rozkazów danego komputera, zapisane jednokrotnie w postaci nanorozkazów. W ten sposób unika się wielokrotnego pamiętania tych samych części operacyjnych w mikrorozkazach.
60 Słowo mikrorozkazu jest w tym przypadku znacznie krótsze niż przy jednopoziomowej pamięci sterowania. Daje to znacznie mniejszą objętość w bitach pamięci mikrorozkazów a w rezultacie znacznie mniejszą objętość całej pamięci sterowania. W pamięci mikrorozkazów zapisane jest sterowanie wybieraniem kolejnych mikrorozkazów, natomiast sygnały sterujące są generowane na podstawie nanorozkazów. W nanorozkazach sygnały sterujące są często zakodowane metodą 1 bit na 1 sygnał, co eliminuje potrzebę dekodowania. Jednakże możliwe jest kodowanie sygnałów w polach wielobitowych, wymagających wprowadzenia dekoderów.
61 Schemat mikroprogramowanego układu sterowania z dwupoziomową pamięcią sterowania Pamięć mikrorozkazów Dekoder Rejestr adresu mikrorozkazu Z pamięci operacyjnej Rejestr rozkazów Część operacyjna Adres Część operacyjna Cz.ster. Adres Rejestr mikrorozkazów Układy generacji adresu mikrorozkazu Informacje stanu z układów wykonawczych Dekoder Pamięć nanorozkazów Sygnały sterujące zakodowane w słowie nanorozkazu
62 Mikroprogramowane układy sterujące nie są rzadkością w wykorzystywanych obecnie mikroprocesorach. Mikroprocesory firmy Intel serii x86 (USA), wykorzystywane do budowy komputerów personalnych typu IBM PC, mają układy sterowania z jednopoziomowymi pamięciami sterowania. Mikroprocesory firmy Motorola serii 68xxx (USA), wykorzystywane do budowy komputerów personalnych typu Mackintosh firmy Apple, mają mikroprogramowane układy sterowania z dwupoziomowymi pamięciami sterowania. Mikroprocesory typu RISC firm DECAlpha, Hewlett-Packard, SUN mają sprzętowe układy sterowania.
63 Zarys historii komputera elektronicznego J. Atanasoff, (pochodzenia bułgarskiego), Uniwersytet Iowa, USA, projekt komputera binarnego, częściowo elektronicznego o architekturze zbliżonej do architektury von Neumana, komputer ABC (1942) nie zrealizowany do końca fizycznie. K. Zuse, Niemcy, komputery Z1, Z2, Z3, budowa mechaniczno-elektryczno - przekaźnikowa, arytmetyka binarna, Z3 sterowany taśmą perforowaną, 8 bitowe instrukcje. B. Williams, firma Bell Telephone, USA, komputery zbudowane na przekaźnikach. H. Aiken, Uniwersytet Harvard, USA, komputer Mark I (ASCC), automatyczny kalkulator, z
64 pamięcią danych na przekaźnikach i pamięcią rozkazów programu na kartach perforowanych J. Ragazzini, R,. Randall, F. Russel, USA, komputer analogowy. J. Mauchly, J.P. Eckert, Universytet Pensylvania, USA, komputer ENIAC, pierwszy komputer na lampach elektronicznych, stały program programowany przewodami i przełącznikami, 20 rejestrów. J. Mauchly, J.P. Eckert, Universytet Pensylvania, USA, komputer programowany tablicami - przewody + przełączniki, pamięć 312 słów 12 cyfrowych. J. von Neuman, (pochodzenia węgierskiego), Uniwersytet Pensylvania, USA, komputer EDVAC, komputer na lampach elektronicznych, pamiętany wymienialny program w pamięci operacyjnej, pamięć na rtęciowej linii
65 opóźniającej, następnie komputer IAS M. Wilkes, Uniwersytet Cambridge, Anglia, komputer EDSAC, elektroniczny z pamięcią rtęciową, następnie komputer BINAC, USA, z pamięcią rtęciową. A. Turing, Uniwersytet Cambridge, Anglia, komputer ACE, elektroniczny z pamięcią rtęciową. J. Eckert, J. Mauchly, firma i komputery rynkowe UNIVAC, wzorowane na ENIAC F. Williams, komputer z pamięcią na lampie kineskopowej. J von Neuman, Uniwersytet Princeton, USA, model komputera ORDVAC z pamięcią na lampie kineskopowej Williamsa MIT, Politechnika Massachussets, USA,
66 komputer WHIRLWIND I, z pamięcią na lampie kineskopowej Sperry RAND, CALDIC, USA, komputery z magnetyczną pamięcią bębnową. NCR, RCA, USA, pierwsze komputery tranzystorowe. DEC, USA, pierwszy minikomputer tranzystorowy PDP-1. IBM, USA, komputery tranzystorowe 7090 (7094), z magnetyczną pamięcią rdzeniową RAM i centralnym przełączaniu dostępu kanałów zewnętrznych do procesora. IBM, USA, pierwszy komputer serii IBM System 360, architektura oparta na centralnym przełączaniu kanałów DEC, USA, minikomputer PDP-8 ze strukturą
67 modularną opartą na centralnej magistrali systemowej, pamięć rdzeniowa INTEL, USA, mikroprocesor 4-bitowy Intel INTEL, USA, mikroprocesory 8-bitowe Intel 8008 i Intel DEC, USA, mikrokomputer PDP-8/A z pamięcią półprzewodnikową i procesorem zmiennoprzecinkowym. INTEL, USA, mikroprocesory 16-bitowe Intel Berkeley University, Kalifornia, USA, komputery RISC I i II Stanford University, Kalifornia, USA, komputer
68 typu RISC Stanford MIPS IBM, USA, komputer personalny IBM PC XT, (Intel bitowy). MIT, USA, komputer sterowany przepływem danych MIT Static Data Flow. INTEL, USA, mikroprocesor 16-bitowy Intel 80286, stosowany w komputerach personalnych IBM PC AT. INMOS, Anglia, pierwsze procesory transputerowe T414, potem T800. INTEL, USA, mikroprocesory 32-bitowe Intel 80386, zewnętrzna pamięć cache i koprocesor zmiennoprzecinkowy. INTEL, USA, mikroprocesory 32-bitowe Intel 80486, wbudowana pamięć cache i wewnętrzna jednostka zmiennoprzecinkowa, przetwarzanie
69 potokowe DEC, USA, początek rodziny 64-bitowych mikroprocesorów DECAlpha, model DECAlpha Hewlett-Packard, USA, początek rodziny mikroprocesorów PA-RISC, 32-bitowe INTEL, USA, mikroprocesory 32-bitowe Intel Pentium, przetwarzanie superskalarne i potokowe. IBM/Motorola/Apple, USA, początek rodziny mikroprocesorów PowerPC, model PowerPC 601. INTEL, USA, mikroprocesory 32-bitowe Intel Pentium Pro, przetwarzanie superskalarne, konwersja instrukcji CISC na RISC, przetwarzanie out of order.
70 Japonia, pierwszy mikroprocesor RISC z zegarem 1GHz. IBM, USA, pierwszy procesor dwurdzeniowy (dual core) - IBM Power4. INTEL, USA, mikroprocesory 64-bitowe IA-64 Itanium, architektura EPIC, format instrukcji typu VLIW. INTEL, USA, pierwsza wewnętrzna pamięć cache trzeciego poziomu (łączna) 3 Mbajty, (rozdzielna L1-16 Kbajtów każda, wbudowana łączna L2 256 Kbajtów ) Itanium 2. INTEL, USA, mikroprocesor Pentium 4 z zegarem 2,8 GHz. AMD, mikroprocesory 64-bitowe Athlon 64 FX z zegarem 2,2 GHz
71 INTEL, USA, mikroprocesor Pentium 4 z architekturą Hyper Threading z zegarem 3,06 GHz INTEL, USA, mikroprocesor dwurdzeniowy Intel Pentium Extreme Edition 840 z zegarem 3,2 GHz AMD, USA, mikroprocesor dwurdzeniowy Athlon 64 X , z zegarem 2,4 GHz AMD, USA, 64-bitowy mikroprocesor dwurdzeniowy Opteron Dual Core. INTEL, USA, mikroprocesor czterordzeniowy Intel Core 2 Extreme Quad-Core z zegarem 2,8 GHz SUN, USA, 8-rdzeniowy procesor Niagara 2 (UltraSPARC T2) z zegarem do 1,4 GHz, 64 wątki, technologia 65 nm.
72 AMD, USA, 4-rdzeniowy procesor Phenom X4 z zegarem do 2,6 GHz, technologia 65 nm. Procesory 3-rdzeniowe Phenom X3. Intel, USA, 4-rdzeniowy procesor Intel Core i7 z zegarem do 3,2 GHz, pamięci podręczne L1, L2, zintegrowana pamięć podręczna L3-8MB, kontroler pamięci w układzie procesora. Tilera, USA, rodzina rdzeniowych procesorów TILE Gx stanowiących macierze 64-bitowych procesorów z lokalnymi pamięciami L1, L2, L3, zegar do 1,5 GHz. Procesory 6-rdzeniowe Intel Core i7 980X oraz AMD Phenom II X6, z lokalnymi pamięciami podręcznymi L1, L2, L3. Oracle, USA, (dawniej SUN Microsystems), procesor SPARC T3 (Niagara-3), 16 rdzeni z 8 wątkami SMT na rdzeń, 1.67 GHz.
73 2011 AMD, USA, 8-rdzeniowe procesory serii Buldozer - AMD FX 81xx.
Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Bardziej szczegółowoOrganizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Bardziej szczegółowoBudowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Bardziej szczegółowoTechnika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach
mikrokontrolery mikroprocesory Technika mikroprocesorowa Linia rozwojowa procesorów firmy Intel w latach 1970-2000 W krótkim pionierskim okresie firma Intel produkowała tylko mikroprocesory. W okresie
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoSpis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11
Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.
Bardziej szczegółowoLogiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Bardziej szczegółowoLEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Bardziej szczegółowoBudowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Bardziej szczegółowoARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
Bardziej szczegółowoMOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Bardziej szczegółowoMikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
Bardziej szczegółowoArchitektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt
Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu
Bardziej szczegółowoStruktura i działanie jednostki centralnej
Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala
Bardziej szczegółowoArchitektura systemów komputerowych
Studia stacjonarne inżynierskie, kierunek INFORMATYKA Architektura systemów komputerowych Architektura systemów komputerowych dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat
Bardziej szczegółowoPrzerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
Bardziej szczegółowoTechnika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2
Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowoMetody obsługi zdarzeń
SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału
Bardziej szczegółowoLEKCJA TEMAT: Współczesne procesory.
LEKCJA TEMAT: Współczesne procesory. 1. Wymagania dla ucznia: zna pojęcia: procesor, CPU, ALU, potrafi podać typowe rozkazy; potrafi omówić uproszczony i rozszerzony schemat mikroprocesora; potraf omówić
Bardziej szczegółowoUKŁADY MIKROPROGRAMOWALNE
UKŁAD MIKROPROGRAMOWALNE Układy sterujące mogą pracować samodzielnie, jednakże w przypadku bardziej złożonych układów (zwanych zespołami funkcjonalnymi) układ sterujący jest tylko jednym z układów drugim
Bardziej szczegółowoBudowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
Bardziej szczegółowoBudowa komputera Komputer computer computare
11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału
Bardziej szczegółowoProcesory. Schemat budowy procesora
Procesory Procesor jednostka centralna (CPU Central Processing Unit) to sekwencyjne urządzenie cyfrowe którego zadaniem jest wykonywanie rozkazów i sterowanie pracą wszystkich pozostałych bloków systemu
Bardziej szczegółowoArchitektura systemów komputerowych. dr Artur Bartoszewski
Architektura systemów komputerowych 1 dr Artur Bartoszewski Procesor część I 1. ALU 2. Cykl rozkazowy 3. Schemat blokowy CPU 4. Architektura CISC i RISC 2 Jednostka arytmetyczno-logiczna 3 Schemat blokowy
Bardziej szczegółowoarchitektura komputerów w. 4 Realizacja sterowania
architektura komputerów w. 4 Realizacja sterowania Model komputera CPU Jednostka sterująca Program umieszczony wraz z danymi w pamięci jest wykonywany przez CPU program wykonywany jest sekwencyjnie, zmiana
Bardziej szczegółowoUkład wykonawczy, instrukcje i adresowanie. Dariusz Chaberski
Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta
Bardziej szczegółowoArchitektura komputerów. Układy wejścia-wyjścia komputera
Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs
Bardziej szczegółowoUTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386
Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać
Bardziej szczegółowoPodstawy Informatyki Układ przerwań
maszyny W Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu maszyny W 1 Wprowadzenie Przerwania we współczesnych procesorach Rodzaje systemów przerwań Cykl rozkazowy
Bardziej szczegółowoArchitektura systemów komputerowych. dr Artur Bartoszewski
Architektura systemów komputerowych dr Artur Bartoszewski Procesor część II Rejestry procesora dostępne programowo AX Akumulator Zawiera jeden z operandów działania i do niego przekazywany jest wynik BX,CX,DX,EX,HX,LX
Bardziej szczegółowoArchitektura komputerów wer. 7
Architektura komputerów wer. 7 Wojciech Myszka 2013-10-29 19:47:07 +0100 Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie i wynik
Bardziej szczegółowoPrzykładowe pytania DSP 1
Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..
Bardziej szczegółowoArchitektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC
Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową
Bardziej szczegółowoTechnika mikroprocesorowa I Wykład 2
Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,
Bardziej szczegółowoUTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.
Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz
Bardziej szczegółowoSpis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
Bardziej szczegółowoArchitektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoKomputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury
1976 r. Apple PC Personal Computer 1981 r. pierwszy IBM PC Komputer jest wart tyle, ile wart jest człowiek, który go wykorzystuje... Hardware sprzęt Software oprogramowanie Komputer IBM PC niezależnie
Bardziej szczegółowoMIKROKONTROLERY I MIKROPROCESORY
PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz
Bardziej szczegółowoSprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Bardziej szczegółowoProjektowanie. Projektowanie mikroprocesorów
WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna
Bardziej szczegółowoJednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ
Jednostka centralna dr hab. inż. Krzysztof Patan, prof. PWSZ Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa w Głogowie k.patan@issi.uz.zgora.pl Architektura i organizacja komputerów Architektura
Bardziej szczegółowoArchitektura komputerów egzamin końcowy
Architektura komputerów egzamin końcowy Warszawa, dn. 25.02.11 r. I. Zaznacz prawidłową odpowiedź (tylko jedna jest prawidłowa): 1. Czteroetapowe przetwarzanie potoku architektury superskalarnej drugiego
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne
Bardziej szczegółowoProgramowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 3: Architektura procesorów x86 Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Pojęcia ogólne Budowa mikrokomputera Cykl
Bardziej szczegółowoWstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek
Wstęp do informatyki Architektura komputera Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki System komputerowy systemowa (System Bus) Pamięć operacyjna ROM,
Bardziej szczegółowoDodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych
Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów
Bardziej szczegółowoArchitektura komputerów wer. 3
Architektura komputerów wer. 3 Wojciech Myszka, Maciej Panek listopad 2014 r. Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie
Bardziej szczegółowoZygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak 2 Centralny falownik (ang. central inverter system) Zygmunt Kubiak 3 Micro-Inverter Mikro-przetwornice działają podobnie do systemów
Bardziej szczegółowoSystemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1
i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:
Bardziej szczegółowoWitold Komorowski: RISC. Witold Komorowski, dr inż.
Witold Komorowski, dr inż. Koncepcja RISC i przetwarzanie potokowe RISC koncepcja architektury i organizacji komputera Aspekty opisu komputera Architektura Jak się zachowuje? Organizacja Jak działa? Realizacja
Bardziej szczegółowoMagistrala systemowa (System Bus)
Cezary Bolek cbolek@ki.uni.lodz.pl Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki systemowa (System Bus) Pamięć operacyjna ROM, RAM Jednostka centralna Układy we/wy In/Out Wstęp do Informatyki
Bardziej szczegółowoArchitektura potokowa RISC
Architektura potokowa RISC Podział zadania na odrębne części i niezależny sprzęt szeregowe Brak nawrotów" podczas pracy potokowe Przetwarzanie szeregowe i potokowe Podział instrukcji na fazy wykonania
Bardziej szczegółowoPRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.
PRZERWANIA 1. Obsługa zdarzeń, odpytywanie i Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego. Istnieją dwie metody pozyskania informacji o zdarzeniach: 1. Cykliczne
Bardziej szczegółowoHardware mikrokontrolera X51
Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)
Bardziej szczegółowoPodstawy Informatyki Układ sterujący
- wersja szyta - wersja mikroprogramowana Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi - wersja szyta - wersja mikroprogramowana Plan wykładu 1 Maszyna W Lista rozkazów maszyny
Bardziej szczegółowoRozszerzalne kody operacji (przykład)
Tryby adresowania natychmiastowy (ang. immediate) bezpośredni (ang. direct) pośredni (ang. indirect) rejestrowy (ang. register) rejestrowy pośredni (ang. register indirect) z przesunieciem (indeksowanie)
Bardziej szczegółowoWPROWADZENIE Mikrosterownik mikrokontrolery
WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:
Bardziej szczegółowoWstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)
Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?
Bardziej szczegółowoPodstawy architektury procesorów z równoległością na poziomie instrukcji - równoległość w procesorach superskalarnych
Temat: Podstawy architektury procesorów z równoległością na poziomie instrukcji - równoległość w procesorach superskalarnych Treść wykładu: 1. Potokowe wykonywanie operacji i instrukcji w komputerach.
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 5 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) c.d. 2 Architektura CPU Jednostka arytmetyczno-logiczna (ALU) Rejestry Układ sterujący przebiegiem programu
Bardziej szczegółowoLABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM
LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM Strona 1 z 7 Opracował mgr inż. Jacek Lis (c) ZNE 2004 1.Budowa przetwornika ADC procesora
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Bardziej szczegółowoorganizacja procesora 8086
Systemy komputerowe Procesor 8086 - tendencji w organizacji procesora organizacja procesora 8086 " # $ " % strali " & ' ' ' ( )" % *"towego + ", -" danych. Magistrala adresowa jest 20.bitowa, co pozwala
Bardziej szczegółowoRDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,
RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem
Bardziej szczegółowoAdresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów
Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Bardziej szczegółowoArchitektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 8: Procesory wielopotokowe, czyli superskalarne Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Struktury i rodzaje
Bardziej szczegółowoPodstawy Informatyki Systemy sterowane przepływem argumentów
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer
Bardziej szczegółowoSystemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
Bardziej szczegółowoArchitektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 7: Potokowe jednostki wykonawcze Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Budowa potoku Problemy synchronizacji
Bardziej szczegółowo4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24
Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.
Bardziej szczegółowoPrzetwarzanie potokowe pipelining
Przetwarzanie potokowe pipelining (część A) Przypomnienie - implementacja jednocyklowa 4 Add Add PC Address memory ister # isters Address ister # ister # memory Wstęp W implementacjach prezentowanych tydzień
Bardziej szczegółowoInstrukcja do ćwiczenia : Matryca komutacyjna
Instrukcja do ćwiczenia : Matryca komutacyjna 1. Wstęp Każdy kanał w systemach ze zwielokrotnieniem czasowym jest jednocześnie określany przez swoją współrzędną czasową T i współrzędną przestrzenną S.
Bardziej szczegółowoLICZNIKI PODZIAŁ I PARAMETRY
LICZNIKI PODZIAŁ I PARAMETRY Licznik jest układem służącym do zliczania impulsów zerojedynkowych oraz zapamiętywania ich liczby. Zależnie od liczby n przerzutników wchodzących w skład licznika pojemność
Bardziej szczegółowoArchitektura systemów komputerowych. Przetwarzanie potokowe I
Architektura systemów komputerowych Plan wykładu. Praca potokowa. 2. Projekt P koncepcja potoku: 2.. model ścieżki danych 2.2. rejestry w potoku, 2.3. wykonanie instrukcji, 2.3. program w potoku. Cele
Bardziej szczegółowoPodstawy Informatyki JA-L i Pamięci
Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Operator elementarny Proste układy z akumulatorem Realizacja dodawania Realizacja JAL dla pojedynczego bitu 2 Parametry
Bardziej szczegółowoPodstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...
Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...4 Podział układów logicznych...6 Cyfrowe układy funkcjonalne...8 Rejestry...8
Bardziej szczegółowoWprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy
1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć
Bardziej szczegółowoArchitektura komputerów Wykład 2
Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana
Bardziej szczegółowoArchitektura komputerów Historia systemów liczących
Historia systemów liczących Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka bez ograniczeń - zintegrowany rozwój
Bardziej szczegółowoWydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność obliczeń a architektura procesorów Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych
Bardziej szczegółowoWykład Mikroprocesory i kontrolery
Wykład Mikroprocesory i kontrolery Cele wykładu: Poznanie podstaw budowy, zasad działania mikroprocesorów i układów z nimi współpracujących. Podstawowa wiedza potrzebna do dalszego kształcenia się w technice
Bardziej szczegółowoSYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM
SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM Marcin Tomana marcin@tomana.net SKRÓT WYKŁADU Zastosowania systemów operacyjnych Architektury sprzętowe i mikroprocesory Integracja systemu operacyjnego
Bardziej szczegółowoPRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1
PRZERWANIA 1. Obsługa zdarzeń poprzez Obsługa polega na przerwaniu aktualnie wykonywanego procesu i wykonaniu procedury przypisanej danemu zdarzeniu gdy takie zdarzenie zajdzie. Procedura nazywa się procedurą
Bardziej szczegółowoPodstawy Techniki Mikroprocesorowej
Podstawy Techniki Mikroprocesorowej Architektury mikroprocesorów Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.
Bardziej szczegółowoArchitektura mikroprocesorów TEO 2009/2010
Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład
Bardziej szczegółowodr hab. Joanna Jędrzejowicz Podstawy informatyki i komputeryzacji Gdańska Wyższa Szkoła Humanistyczna
dr hab. Joanna Jędrzejowicz Podstawy informatyki i komputeryzacji Gdańska Wyższa Szkoła Humanistyczna Literatura B. Siemieniecki, W. Lewandowski Internet w szkole, Wyd. A. Marszałek 2001, B. Siemieniecki
Bardziej szczegółowoSystem mikroprocesorowy i peryferia. Dariusz Chaberski
System mikroprocesorowy i peryferia Dariusz Chaberski System mikroprocesorowy mikroprocesor pamięć kontroler przerwań układy wejścia wyjścia kontroler DMA 2 Pamięć rodzaje (podział ze względu na sposób
Bardziej szczegółowoJęzyk programowania: Lista instrukcji (IL Instruction List)
Język programowania: Lista instrukcji (IL Instruction List) Wykład w ramach przedmiotu: Sterowniki programowalne Opracował dr inż. Jarosław Tarnawski 08.12.2009 Norma IEC 1131 Języki tekstowe Języki graficzne
Bardziej szczegółowoProcesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Bardziej szczegółowoCYKL ROZKAZOWY = 1 lub 2(4) cykle maszynowe
MIKROKONTROLER RODZINY MCS 5 Cykl rozkazowy mikrokontrolera rodziny MCS 5 Mikroprocesory rodziny MCS 5 zawierają wewnętrzny generator sygnałów zegarowych ustalający czas trwania cyklu zegarowego Częstotliwość
Bardziej szczegółowoSYSTEM MIKROPROCESOROWY
SYSTEM MIKROPROCESOROWY CPU ROM RAM I/O AB DB CB Rys 4.1. System mikroprocesorowy MIKROPROCESOR RDZEŃ MIKROPROCESORA PODSTAWOWE ZESPOŁY FUNKCJONALNE MIKROPROCESORA Mikroprocesor zawiera następujące, podstawowe
Bardziej szczegółowoProgramowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie
Bardziej szczegółowoProjekt zespołowy. Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT. Rok akademicki 2008/2009
Projekt zespołowy Rok akademicki 2008/2009 Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT Kierunek studiów: Semestr: Grupa: Informatyka VII PKiSI 2 Wykonawca:
Bardziej szczegółowo