Opracowanie zagadnień

System komputerowy – układ współdziałania dwóch składowych: sprzętu komputerowego oraz oprogramowania, działających coraz częściej również w ramach sieci komputerowej. Można mówić o następujących poziomach takiego systemu: sprzęt komputerowy, system operacyjny (oprogramowanie systemowe), oprogramowanie użytkowe (aplikacje).

Ze względu na sposób podziału pracy i dostęp procesora do pamięci możemy podzielić architektury na:

Ze względu na sposób organizacji pamięci i wykonywania programu:

Architektura von Neumanna - Rodzaj architektury komputera, przedstawionej po raz pierwszy w 1945 roku przez Johna von Neumanna stworzonej wspólnie z Johnem W. Mauchly'ym i Johnem Presper Eckertem. Polega na ścisłym podziale komputera na trzy podstawowe części:

Architektura Harvardzka - W odróżnieniu od architektury von Neumanna, pamięć danych programu jest oddzielona od pamięci rozkazów.

Klasyfikacje wg:

Klasyfikacja Flynn'a - Najstarsza klasyfikacja Flynna używała pojęć strumienia instrukcji i strumienia danych.

Według liczby procesorów: SMP (Symmetric MultiProcessing) - kilka mocnych procesorów używających wspólnej pamięci, stosowane w seryjnym sprzęcie. MPP (Massively Parallel Processing) - wiele relatywnie słabych procesorów, wyposażonych w osobne pamięci, z nałożoną siecią komunikacji.
Wg ziarnistości przetwarzania: wiele niezależnych programów (coarse-grained parallelism); programy z wieloma równoległymi watkami (np. gra w szachy); wykonywanie tych samych zestawów instrukcji na różnych danych — superkomputery numeryczne (fine-grained parallelism).
Wg gospodarki pamięci - Pamięć rozproszona (każdy procesor ma własną), zaleta: skalowalność. Pamięć wspólna, realne do ok. 128 procesorów. Często występującym konfliktom dostępu do wspólnej pamięci zapobiega się stosując przeplatanie pamięci (interleaving) — podział pamięci na moduły z osobnymi rejestrami adresowymi i buforowymi.
Wg modeli komunikacji - Wyznaczone sposobem połączenia: luźno sprzężone (looselycoupled, „duże” maszyny) vs. ściśle sprzężone (tightly-coupled, małe procesory).

Tranzystory bipolarne , w których prąd przepływa przez złącza półprzewodnika o różnym typie przewodnictwa (n i p). Zbudowany jest z trzech warstw półprzewodnika o typie przewodnictwa odpowiednio npn lub pnp (o nazwach emiter - E, baza - B i kolektor - C). Charakteryzuje się tym, że niewielki prąd płynący pomiędzy dwiema jego elektrodami (bazą i emiterem) steruje większym prądem płynącym między innymi elektrodami (kolektorem i emiterem).
Tranzystory unipolarne (tranzystory polowe) to takie, w których prąd płynie przez półprzewodnik o jednym typie przewodnictwa. Prąd wyjściowy jest w nich funkcją napięcia sterującego.

Układy kombinacyjne - Układy, w których stan wyjść zależy tylko od aktualnego stanu wejść.
Układy sekwencyjne - Układy, w których stan wyjść zależy nie tylko od aktualnego stanu wejść, ale także od poprzednich stanów wejść oraz kolejności ich występowania.
Układy asynchroniczne - zmiana sygnałów wejściowych X natychmiast powoduje zmianę wyjść Y. W związku z tym układy te są szybkie, ale jednocześnie podatne na zjawisko hazardu i wyścigu.
Układy synchroniczne - zmiana stanu wewnętrznego następuje wyłącznie w określonych chwilach, które wyznacza sygnał zegarowy (ang. clock).

Bramka logiczna - element konstrukcyjny maszyn i mechanizmów (dziś zazwyczaj: układ scalony, choć podobne funkcje można zrealizować również za pomocą innych rozwiązań technicznych, np. hydrauliki czy pneumatyki), realizujący fizycznie pewną prostą funkcję logiczną, której argumenty (zmienne logiczne) oraz sama funkcja mogą przybierać jedną z dwóch wartości, np. 0 lub 1 (zob. algebra Boole'a). Bramką logiczną nazywamy prosty obwód elektroniczny realizujący funkcję logiczną. Pewien zakres napięcia odpowiada stanowi logicznemu 0, a inny zakres stanowi logicznemu 1.
Czas propagacji (Td) - określa czas opóźnienia odpowiedzi układu na sygnał sterujący i jest podstawową miarą szybkości działania układu cyfrowego.
Bramki

System funkcjonalnie pełny – zbiór bramek logicznych, który pozwala zrealizować dowolną funkcję logiczną. Przykłady systemów funkcjonalnie pełnych: OR, AND, NOT OR, NOT AND, NOT NOR NAND

Układy komutacyjne:

Multiplekser (w skrócie MUX) – układ kombinacyjny, najczęściej cyfrowy, służący do wyboru przez wejście adresowe aj jednego z kilku dostępnych sygnałów wejściowych xi i przekazania go na wyjście y. Można wykorzystać go do zamiany wielu wejść na jedno, które następnie może być demultiplekserowane. Poszczególne wejścia są przełączane kolejno.

Demultiplekser – układ kombinacyjny, posiadający jedno wejście x, n wejść adresowych oraz k wyjść (zazwyczaj k=2^n), którego działanie polega na przekazaniu sygnału z wejścia x na jedno z wyjść yi.

Komutator – element przełączający.

Programowalne struktury logiczne
Rodzaje układów PLD:

Przerzutnik – układ cyfrowy (logiczny), którego funkcją jest pamiętanie jednego bitu informacji.

Licznik jest układem cyfrowym służącym do zliczania i pamiętania liczby impulsów wejściowych, zbudowanym z przerzutników synchronicznych. Pojemność licznika – liczba stanów jakie może przyjąć licznik.

Procesor (ang. processor), także CPU (ang. Central Processing Unit) – urządzenie cyfrowe sekwencyjne, które pobiera dane z pamięci, interpretuje je i wykonuje jako rozkazy. Wykonuje on ciąg prostych operacji (rozkazów) wybranych ze zbioru operacji podstawowych określonych zazwyczaj przez producenta procesora jako lista rozkazów procesora.
Jedną z podstawowych cech procesora jest długość (liczba bitów) słowa, na którym wykonywane są podstawowe operacje obliczeniowe. Jeśli słowo ma 64 bity, mówimy, że procesor jest 64-bitowy. Innym ważnym parametrem określającym procesor jest szybkość z jaką wykonuje on rozkazy. Przy danej architekturze procesora, szybkość ta w znacznym stopniu zależy od czasu trwania pojedynczego taktu zegara.

Standardowa architektura CPU

Zadaniem układu sterowania jest:

• koordynacja pracy bloków procesora
• wystawianie sygnałów sterujących na szynę sterującą

Zadaniem układu wykonawczego jest realizacja operacji określonych przez sygnały sterujące

W skład układu wykonawczego wchodzi:

• jednostka arytmetyczno-logiczna ALU
• akumulator
• rejestr przejściowy
• rejestr wskaźników (rejestr stanu)

Cykl wykonania rozkazu odbywa się w krokach:

  1. pobranie kodu rozkazu z pamięci programu do rejestru rozkazów

  2. Aktualizacja wskaźnika rozkazu by wskazywał następną instrukcję

  3. Dekodowanie rozkazu

  4. Jeśli trzeba pobiera 16bitowy argument rozkazu z pamięci

  5. Jeśli trzeba to aktualizuje wskaźnika rozkazu by wskazywał za argument

  6. Pobranie argumentu

  7. Zapis obliczonej wartości do wskazanego rejestru docelowego

Rozkaz mov memory, register:

  1. Pobranie rozkazu z pamięci (1 cykl zegara)

  2. Aktualizacja wskaźnika rozkazu (1 cykl zegara)

  3. Dekodowanie rozkazy by zobaczyć co robi (1 cykl zegara)

  4. Pobranie argumentu z pamięci

(0/1/2 cykli zegara – Acc, Reg, Mem)

  1. Aktualizacja wskaźnika rozkazu (1 cykl zegara)

  2. Obliczenie adresu argumentu (0/1 cykli zegara)

  3. Pobranie wartości do zapisu (1 cykl zegara)

  4. Zapis pobranej wartości w lokalizacji docelowej

(1/2/3 cykle zegara – Acc, Reg, Mem)

Skok warunkowy jump działa następująco:

  1. Pobranie rozkazu z pamięci (1 cykl zegara)

  2. Aktualizacja wskaźnika rozkazu (1 cykl zegara)

  3. Dekodowanie rozkazy by zobaczyć co robi (1 cykl zegara)

  4. Pobranie adresu docelowego z pamięci (1/2 cykli zegara)

  5. Aktualizacja wskaźnika rozkazu (1 cykl zegara)

  6. Test flag 'less than' i 'quality' CPU (1 cykl zegara)

  7. Jeśli wartość flagi jest odpowiednia do skoku to CPU kopiuje 16bitową stałą do wskaźnika rozkazu (0/1 cykli zegara)

Cykl maszynowy obejmuje kilka cykli zegarowych i może mieć różne długości zależnie od rodzajów wykonywanych operacji.
Cykl rozkazowy obejmuje od jednego do kilku cykli maszynowych, zależnie od rodzaju rozkazu.

System przerwań jest układem umożliwiającym procesorowi zawieszenie wykonywania bieżącego programu i skok do wykonywania specjalnego podprogramu (programu obsługi przerwania) na skutek pojawienia się zewnętrznego sygnału przerwania.
Rodzaje przerwań Programowe – generowane przez warunki będące wynikami wykonywania rozkazów (np. przepełnienie arytmetyczne, dzielenie przez zero) Zegarowe – generowane przez wewnętrzny zegar procesora (umożliwiają wykonanie określonych funkcji) Wejścia – wyjścia – generowane przez urządzenia zewnętrzne. Uszkodzenie sprzętu – generowane przez uszkodzenia, np. defekt zasilania, błąd parzystości pamięci.

Hierarchia pamięci

Metody wykrywania błędów pamięci

Pamięć podręczna - Można przyjąć, że rozkazy i dane używane w krótkim odstępie czasu są zwykle przechowywane w pamięci blisko siebie (zasada lokalności). W pamięci podręcznej przechowywany jest blok programu z pamięci głównej. W czasie wykonywania programu procesor szuka rozkazów i danych w pamięci podręcznej. Jeśli słowo zostaje znalezione, sygnalizowane jest tzw. „trafienie” i słowo przesyłane jest do procesora. Jeśli słowo nie zostaje znalezione, jest ono pobierane z pamięci głównej, a pamięć podręczna jest uaktualniana blokiem zawierającym to słowo.

MMX są rozkazami wykonującymi jedną instrukcję na wielu danych naraz (SIMD – Single Instruction Multiple Data). Wprowadzone przez Intela w 1996 roku wraz z procesorami Pentium P5. AMD wprowadził podobne rozkazy dla swoich procesorów pod nazwą 3dNow! MMX dodaje osiem 64bitowych rejestrów (MM0..MM7). Rozkazy MMX opierają się na koncepcji spakowanych danych, tzn przetwarzaniu dwóch 32bitowych lub czterech 16 bitowych danych naraz. Następcami MMX są SSE (Streaming SIMD Extensions) oraz SSE2 czy SSE4 w procesorach Intel Core i7 z dłuższymi rejestrami i nowymi rozkazami.

Systemy wbudowane są zaszyte (wbudowane) wewnątrz urządzeń użytkowych, maszyn pojazdów itp. I wyposażone w dedykowane oprogramowanie realizujące żądane funkcje.

Cechy:

dedykowany programowo do określonego urządzenia

Klasyfikacja:

Ze względu na strukturę logiczną

Systemy proste „simplex”

Systemy proste z procesorem w/w

Systemy master-slave

Systemy podwójne

Funkcje komputerowego systemu sterowania (KSS) obejmują zarówno te, które realizowane są przez klasyczne układy sterowania:

Otoczenie KSS = automatyzowany proces + zespół operatorów procesu

Zdolność wypracowania decyzji: cecha każdego systemu automatyki

Sterowanie procesem – wypracowanie decyzji i jej realizacja

Zmienne sterujące (sterowania) – zmienne procesowe, poprzez które system sterowania lub operator może zmieniać stan procesu

Stan procesu – wartości liczbowe pewnego minimalnego zbioru zmiennych procesowych, których znajomość w chwili to oraz znajomość wymuszeń w okresie od to do t (to<t) pozwala określić stan procesu w chwili t.

Klasyfikacja KSS

Ze względu na powiązania z procesem

System czasu rzeczywistego (ang. Real Time System – RTS) jest systemem, który współpracuje z zewnętrznym procesem oraz musi zapewnić wymagany czas reakcji na zewnętrzne zdrzenia.

Poprawność RTS zależy od spełnienia warunków logicznych i czasowych:

Warunki logiczne - odpowiedź na zdarzenie przy uwzględnieniu stanu systemu musi być prawidłowa.

Warunki czasowe - odpowiedź musi nadejść we właściwym czasie.

Najczęściej RTS dzielimy na dwa rodzaje:

RTS współdziała z otoczeniem. Jego zachowanie zależy od:

Rygorystyczne ograniczenie czasowe (ang. Hard Deadline) to takie ograniczenie które zawsze pozostaje spełnione. Jeśli choć raz zostało przekroczone uważa się, że nie zostało spełnione. Wymaga się aby istniała procedura walidacyjna pozwalająca na sprawdzenie czy warunek ten został spełniony.

Rygorystyczny system czasu rzeczywistego (ang. Hard Real Time System) to system w którym wymaga się spełnienia rygorystycznych ograniczeń czasowych.
Przykłady:

Łagodne ograniczenie czasowe (ang. Soft Deadline) to takie ograniczenie czasowe które czasami może być przekroczone (wg kategorii prawdopodobieństwa – np. ograniczenie spełnione jest w 99% przypadków lub wg funkcji użyteczności – podaje ocenę korzyści w zależności od czasu uzyskania odpowiedzi).

Łagodny system czasu rzeczywistego (ang. Soft RealTime System) to system w którym wymaga się

spełnienia łagodnych ograniczeń czasowych.

Przykłady:

Wymagania dla RTS

Wymagania RTOS

1. Musi umożliwiać wykonywanie procesów wielowątkowych

2. Wątki muszą posiadać priorytety.

3. Musi być stosowana wywłaszczająca strategia szeregowania.

4. Musi wspierać mechanizm przewidywalnej synchronizacji wątków.

5. Musi istnieć dziedziczenie priorytetów.

6. System musi być deterministyczny.

7. Musi być pozbawiony błędów

8. Musi być dobrze udokumentowany.

Mikrokontrolerem nazywamy układ scalony z wyspecjalizowanym mikroprocesorem, spełniający dwa kryteria:

Cechy mikrokontrolera:

-zamknięcie magistrali danych i adresowej wewnątrz układu scalonego

-stała struktura pamięci ROM/RAM

-stałość programu sterującego

-dostęp do rejestrów procesora i układów we/wy przez mechanizm adresowania pamięci RAM

-rejestrowa struktura jednostki centralnej

-bogaty zestaw urządzeń we/wy

-rozbudowane układy przerwań

-różnorodne tryby i środki redukcji poboru mocy

-rozbudowane mechanizmy kontroli i detekcji nieprawidłowych stanów mikrokontrolera

-umieszczenie w jednej strukturze układów cyfrowych i analogowych

Przykładowa struktura mapy pamięci mikrokontrolera

Najczęściej spotykane wbudowane urządzenia peryferyjne:

-układy licznikowe/czasowe

-licznik nadzorcy – watchdog

-przetworniki A/C

-sterowniki komunikacji szeregowej (UART, SPI, 1-Wire, I2C,USB)

Innymi spotykanymi wbudowanymi urządzeniami peryferyjnymi są:

System przerwań

Przerwania dzieli się na cztery kategorie zdarzeń:

Systemy uruchomieniowe - pozwalają użytkownikowi na sprawdzenie wydajności oprogramowania

i przetestowanie poprawności działania prototypowej aplikacji. Zawierają bogate peryferia, złącza

rozszerzające oraz interfejsy.

Wyróżniamy:

- Systemy wykorzystujące program monitora

- Systemy wykorzystujące emulację układową (tzw. emulatory)

Mikrosystemy kontrolerów

Koncepcja scalonego, kompletnego mikrosystemu kontrolera o elastycznej strukturze opiera się na

następujących założeniach:

Programmable Logic Device),

projektanta zwiększa możliwości zastosowania mikrosystemu.

Struktury mikrosystemów

Ze względu na sposób korzystania z zewnętrznych pamięci możemy wyróżnić mikrokontrolery:

Środki wspomagające uruchamianie systemów uC

PLC Programowalne sterowniki logiczne (ang. Programmable Loggic Controller) – uniwersalne urządzenie mikroprocesorowe przeznaczone do sterowania pracą maszyny lub urządzenia technologicznego.

Cechy:
Sterownik PLC musi zostać dopasowany do określonego obiektu sterowania poprzez

wprowadzenie do jego pamięci zadanego algorytmu działania obiektu.
Cechą charakterystyczną sterowników PLC odróżniającą ten sterownik od innych sterowników komputerowych jest cykliczny obieg pamięci programu.
Algorytm jest zapisywany w dedykowanym sterownikowi języku programowania. Istnieje możliwość zmiany algorytmu przez zmianę zawartości pamięci programu.

Sterownik wyposaża się w odpowiednią liczbę układów wejściowych zbierających informacje o stanie

obiektu i żądaniach obsługi oraz odpowiednią liczbę i rodzaj układów wyjściowych połączonych z

elementami wykonawczymi, sygnalizacyjnymi lub transmisji danych.
Zastosowania pojedynczych sterowników PLC: maszyny,obrabiarki, sterowanie urządzeniami na niewielkim obszarze.

Języki programowania PLC zwykle mniej lub bardziej dokładną implementacją zaleceń normy IEC 61131-3, która to norma definiuje następujące warianty:

Wybrane elementy języka drabinkowego:

Styki - element przekazujący na prawą stronę styku stan będący wynikiem mnożenia logicznego AND

stanu linii po lewej stronie styku oraz przypisanej mu wartości logicznej (zmiennej wejściowej,

wyjściowej lub pamięciowej).

Cewki - przekazuje stan połączeń z lewej strony na prawą bez zmian, powodując jednoczesne

zapamiętanie stanu przez przypisaną jej zmienną logiczną.

timer'y

liczniki

Cykl pracy PLC składa się z następujących etapów:

odczyt wejść, wykonanie programu, obsługa żądań komunikacji, wykonanie diagnostyki CPU, zapis wyjść.

Schemat logiczny PLC

Koprocesor, jednostka zmiennoprzecinkowa (FPU, ang. Floating Point Unit) to układ scalony wspomagający procesor w obliczeniach zmiennoprzecinkowych. W większości współczesnych konstrukcji, koprocesor arytmetyczny, a także jednostki obsługujące bardziej skomplikowane obliczenia (np. instrukcje wektorowe) są zintegrowane z procesorem w jednym układzie.

Posiada:

Instrukcje koprocesora


Wyszukiwarka

Podobne podstrony:
Opracowanie Zagadnień na egzamin Mikroprocki
opracowane zagadnienia 2011
monopolizacja gospodarki, Opracowane zagadnienia
Opracowanie zagadnień NIK, Bezpieczenstwo Narodowe rok I
temp krytyczna, TRANSPORT PWR, STUDIA, SEMESTR II, FIZYKA, fizyka-wyklad, zagadnienia opracowane, za
socjologia - opracowane zagadnienia(2), Uniwerek
Opracowane zagadnienia na koło z podstaw turystyki, Notatki na koła
opracowane zagadnienia ściąga nowa
chemia fizyczna wykłady, sprawozdania, opracowane zagadnienia do egzaminu Sprawozdanie ćw 7 zależ
Drobnoustroje chorobotwórcze opracowane zagadnienia
Egzamin opracowane zagadnienia 2
Opracowanie zagadnień na prawo handlowe
Podstawy biologicznego rozwoju człowieka opracowane zagadnienia z roku 14 2015
opracowane zagadnienia na egazamin
Opracowane Zagadnienia
Socjologia organizacji socjologia organizacji opracowanie zagadnien
ChMB kolokwium I opracowane zagadnienia by Owca
METODOLOGIA opracowane zagadnienia pdf
PKM opracowane zagadnienia sc

więcej podobnych podstron