Title: Podstawowe pojecia:
1Systemy wbudowane w ukladach sterowaniaWyklad
1dr inz. Andrzej PrzybylKatedra Inzynierii
KomputerowejWydzial Inzynierii Mechanicznej i
InformatykiPolitechnika Czestochowska
- Podstawowe pojecia
- System wbudowany (embedded), system
mikroprocesorowy, mikrokontroler - System On a Chip (SOC)
- Uklad sterowania
- Architektura i elementy skladowe typowego systemu
mikroprocesorowego
2Systemy wbudowane (ang. embedded systems)
- Systemy wbudowane
- systemy mikroprocesorowe/mikrokomputerowedo
zastosowan wbudowanych - System wbudowany
- Kompletny, kompaktowy system komputerowy zawarty
na jednej plycie bazowej. - Zawiera wszystkie niezbedne uklady peryferyjne,
niezbedne do pracy w dedykowanym obszarze
zastosowan, zawarte na plytce elektronicznej.
Wymaga tylko zasilania i ew. klawiatury, myszy i
monitora, itp. - Najczesciej pozbawiony jest gotowej obudowy
przeznaczony do wbudowania w sterowane urzadzenie
3Systemy wbudowane i ich oprogramowanie
- ) Systemy wbudowane to platformy sprzetowe i
programowe dedykowane do wykonywania scisle
okreslonych zadan (ich przeciwienstwo stanowia
komputery ogólnego zastosowania, np. klasy PC).
Niektóre z nich musza dodatkowo spelniac wymogi
systemów czasu rzeczywistego, inne moga miec
mniej restrykcyjne wymagania odnosnie wydajnosci,
co ma przelozenie na prostote konstrukcji i dalej
koszt produkcji. - Oprogramowanie (firmware) dla urzadzen
wbudowanych stanowi specyficzna galaz
programowania narzucajaca restrykcyjne
ograniczenia na rozmiar, budowe oraz szybkosc
dzialania programu (oprogramowanie czasu
rzeczywistego, tworzenie sterowników dla urzadzen
oraz systemów operacyjnych dedykowanych dla
konkretnych platform sprzetowych, przetwarzanie
sygnalów - DSP). - ) definicje znalezione, za pomoca wyszukiwarki
google, na stronie internetowej
http//www.codeconcept.pl/pl/Services_FW_Embedded.
php - Inne ciekawe informacje ze stron www
- http//www.sterowniki.pl/index.php?optionArticles
taskviewarticleartid13 - http//www.guru.com.pl/
4Przykladowe systemy mikroprocesorowe do
wbudowania
5Przykladowy procesor sygnalowy wyposazony w
liczne peryferia.ADSP21992 firmy Analog Devices
6System On a Chip (SOC) Zawiera wiekszosc
elementów niezbednych do pracy systemu zawarte w
strukturze krzemowej ukladu scalonego. W tym
czesto uklady o róznej technologii cyfrowe
analogowe. Typowy obszar zastosowan to systemy
wbudowane.
CMOS Intelligent Vision System-on-Chip
Full-frame CMOS active-pixel grey level image
High dynamic range logarithmic response to light
Non integrating continuos current reading pixels
320 x 256 pixel resolution, 8-µm pitch square
pixels, array size 2.560 x 2.048 mm2 Zródlo
www.neuricam.com
7Przykladowe systemy wbudowane
- -Klawiatura i mysz komputera PC
- -Drukarka, skaner, dysk twardy ...
- -Telefon GSM, fax, magnetofon cyfrowy, odtwarzacz
MP3,
Procesory z rodziny ARM
telefon UMTS z procesorem ARM 104MHz
8Klawiatura PC
1 - mikroprzelaczniki, 2 - mikroprocesor
- -lacznosc z PC szeregowa synchroniczna
(22przewody)
9Mysz PC
1. Kulka pokryta guma 2. Mikroprocesor
odbierajacy impulsy z rolek 3. Rolki - mierzace
ruch w pionie i w poziomie
- -lacznosc z PC szeregowa asynchroniczna
(22przewody)
10Dysk twardy, stacje dyskietek
- -sterowanie silnikami naped talerzy, przesuwanie
glowicy - przetwarzanie danych z glowicy, komunikacja z PC
11Podstawowe elementy Systemu Komputerowego sygnal
zerujacy (RESET) na przykladzie SAB80C537
12Sygnal taktujacy (zegar)
13Pamieci - rodzaje
Ulotne (volatile) Pamieci RAM (Random Access
Memories) statyczne/dynamiczne Nieulotne
(nonvolatile) wiele technologii, np.FLASH,
EPROM/EEPROM/FRAM, NVRAMOperacyjne/Masowe O
dostepie równoleglym/O dostepie
szergowymAsynchroniczna FPM DRAM (Fast Page
Mode), EDO RAM Synchroniczna SDRAM dominuje
w PCPodwójnej wydajnosci Dual Data Rate (DDR),
DDR2/DDR3 - transmisja na obu zboczach zegara
taktujacego. Specjalne np. dwuportowe, FIFO
14Podlaczenie pamieci do systemu komputerowego
15Pamiec dynamiczna Dynamic RAM (DRAM)tania i
bardzo szybka - pamiec wymagajaca cyklicznego
odswiezania zawartosci (poprzez odczytywanie),
uzywana w duzych systemach, np. PC
16Pamiec dynamiczna RAM
17Pamiec dynamiczna RAM
18Pamiec dynamiczna RAM
19Przykladowy system komputerowy z podlaczona
pamiecia dynamiczna (SDRAM)
- Widoczny jest sposób podlaczenia kilku ukladów
scalonych pamieci dynamicznej, w celu
rozszerzenia slowa z 4 do 16 bitów - Magistrala adresowa ma szerokosc slowa 15-bitów
(A14..0), co teoretycznie pozwala na
zaadresowanie tylko 32768 lokacji (215). Jednak
stosowany mechanizm adresowania RAS i CAS pozwala
na adresowanie w obszarze 1GB (230 1 giga) - Mozliwe jest podlaczenie 8 zamiast 4 ukladów
scalonych w celu uzyskania slowa 32-bitowego. - Procesor sterujacy musi posiadac specjalna
magistrale, z wszystkimi niezbednymi mechanizmami
do komunikacji z pamiecia synchroniczna
dynamiczna.
20Przykladowy cykl odczytu systemu ADSP21369 z
pamieci dynamicznej
- Widoczne sa kolejne synchroniczne cykle taktujace
pamiec - Adresowanie ROW (RAS)
- Adresowanie COL (CAS)
- puste cykle oczekiwania (NOP) zwiazane z
szybkoscia pamieci - Po szesciu cyklach od zainicjowania odczytu
pamiec wystawia dane na magistrale danych
21Przykladowy cykl zapisu systemu ADSP21369 do
pamieci dynamicznej
- Widoczne sa kolejne synchroniczne cykle taktujace
pamiec - Adresowanie ROW (RAS)
- Adresowanie COL (CAS)
- puste cykle oczekiwania (NOP) zwiazane z
szybkoscia pamieci - Po dwu cyklach od zainicjowania zapisu procesor
musi wystawic dane na magistrale danych, aby
pamiec mogla je zapisac w czasie kolejnych 4 cykli
22Pamiec statyczna Static RAM (sRAM)
- Szybka, dosc droga typowa pamiec uzywana jako
pamiec operacyjna w malych systemach
mikroprocesorowych, - Sluzy tez jako pamiec buforujaca miedzy duza
pamiecia operacyjna komputerów typu PC
(zrealizowana w postaci pamieci dynamicznej) i
procesorem (tzw. pamiec cache - poziomu /level/
I, II, III) - Rozsadna granica stosowania pamieci statycznej
jest zapotrzebowanie systemu komputerowego na
pamiec ponizej jednego megabajta (MB)
Rys. Budowa pojedynczego bitu pamieci statycznej
23Pamiec statyczna RAMpamiec statyczna typu
IS62C256 32K x 8 LOW POWER CMOS STATIC RAM,
producent ISSI
24Pamiec statyczna magistrale
25Cykl dostepu do pamieci statycznej
asynchronicznej odczyt pamieci (cykl odczytu)
CS CHIP SELECT (podobna nazwa CE CHIP
ENABLE) OE OUTPUT ENABLE (podobna nazwa RD
READ) Brak cykli zegarowych znanych z pamieci
synchronicznej operacje dostepu musza sie
odbywac w scisle okreslonych przedzialach
czasowych.
26Cykl dostepu do pamieci statycznej
asynchronicznejzapis do pamieci (cykl zapisu)
WE WRITE ENABLE (lub WR)
27Przykladowy system z procesorem DSP
wspólpracujacy z pamieciami StaticRAM i DynamicRAM
28Pamieci RAM - moduly
- Szeroka magistrala danych
- duza szybkosc duza liczba wyprowadzen (pinów)
29Dysk twardy, stacje dyskietek
- -sterowanie silnikami naped talerzy, przesuwanie
glowicy - przetwarzanie danych z glowicy, komunikacja z PC
30Wstepne wnioski
- Ze wzgledu na bardzo róznorodne wymagania i
funkcje systemów wbudowanych nie jest mozliwe
zbudowanie jednej uniwersalnej platformy
sprzetowej dla wszystkich zastosowan - Z technicznego punktu widzenia najlepszym
rozwiazaniem jest zaprojektowanie dedykowanego
sprzetu na potrzeby konkretnego zastosowania. - Jednak w przypadku produkcji maloseryjnej nie
jest to ekonomicznie uzasadnione. Dlatego, w
takim przypadku dobrze jest zastosowac gotowe
platformy sprzetowe do zastosowan wbudowanych.
31Okreslenie warunków jakie musi spelniac system
sterowania
- Warunek konieczny w kazdym systemie sterowania
zapewnienie determinizmu. Reakcja systemu za
zdarzenie nie moze zajsc pózniej niz w odgórnie
okreslonym limicie czasu. - Jest to tzw. system czasu rzeczywistego.
Praktycznie kazdy system sterowania musi byc
systemem czasu rzeczywistego. - Istnieje tzw. miekkie i twarde systemy czasu
rzeczywistego (Soft Real Time Systems i Hard Real
Time Systems) rózniace sie tym jak rygorystyczne
sa warunki dotyczace determinizmu. - W systemach Hard Real Time rygor czasu
rzeczywistego jest najwyzszy, co czesto
dyskwalifikuje mozliwosc uzycia jakiegokolwiek
systemu operacyjnego. Nawet tzw. Systemy
Operacyjne Czasu Rzeczywistego (Real Time
Operating Systems RTOS) nie sa w stanie czesto
spelnic wymaganego rezimu czasowego. - Uzycie systemu operacyjnego ulatwia prace
programiscie, gdyz udostepnia wiele gotowych i
przydatnych funkcji, takich jak konfiguracja
startowa systemu (zainicjowanie urzadzen do
pracy), obsluga pamieci masowej (system plików na
dyskach), zarzadzanie pamiecia wirtualna, obsluga
urzadzen interfejsu uzytkownika (ekran, mysz,
klawiatura, dzwiek) itp.
32Dobór platformy sprzetowej, do wykorzystania w
systemach sterowania
- Okreslenie algorytmu i programu, jaki ma byc
uzywany w projektowanym systemie. W szczególnosci
oszacowanie zapotrzebowania na - Koniecznosc stosowania systemu operacyjnego czasu
rzeczywistego lub brak koniecznosci stosowania
jakiegokolwiek systemu operacyjnego - Pamiec operacyjna (pojemnosc)
- Pamiec nieulotna/masowa pamiec flash, dysk
twardy itp. - Moc obliczeniowa procesora
- Specyficzne wlasciwosci procesora DSP,
specjalizowane koprocesory, jednostki FPGA, itp.. - Okreslenie wymaganych interfejsów I/O
(Input/Output) uzytkownika - Ekran graficzny, alfanumeryczny, proste
wyswietlacze LED, glosnik, klawiatura, mysz,
joystick, dodatkowe przyciski i czujniki - Okreslenie wymaganych interfejsów I/O do
komunikacji z urzadzeniem sterowanym oraz innymi
elementami systemu - linie wejsciowo-wyjsciowe (tzw. porty)
- generatory czasowo-licznikowe, sterowniki
impulsowe PWM - wejscia lub wyjscia analogowe
- specjalizowane lub uniwersalne interfejsy
komunikacyjne Ethernet, RS 232/485, CAN, USB,
Fire Wire, Bluetooth, WiFi, itp.
33Przykladowe platformy sprzetowe
- Moduly komputerowe w postaci kanapkowej PC/104
oraz kilka przykladowych kart rozszerzen
34Przykladowe platformy sprzetowe
- Przykladowe komputery przemyslowe PC do
zastosowan wbudowanych
35Przykladowe platformy sprzetowe
- Moduly z mikrokontrolerami lub ukladami FPGA
- Zdjecia modulu FPGA do serwonapedów (prawa strona
slajdu) pobrano ze strony autora wykladu - http//kik.pcz.czest.pl/ap/projekt/index.php?opt
ioncom_contenttaskviewid106Itemid36
36Przykladowe pytania testowe
- Czym róznia sie od siebie pamieci statyczne i
dynamiczne? - Czym rózni sie praca synchroniczna i
asynchroniczna pamieci operacyjnej? - Co to sa pamieci ulotne i nieulotne?
- Jak pod wzgledem logicznym adresowana jest pamiec
systemu komputerowego? (szerokosc magistral
adresowej i danych a dostepny dla programisty
obszar pamieci)? - Co dzieje sie w systemie komputerowym po podaniu
sygnalu RESET? - Do czego sluzy sygnal zegarowy w systemie
komputerowym?