Sunteți pe pagina 1din 4

Informatic Aplicat 2

CURS 1

Istoric, tendine, comparaie ntre Microcontrolere,


Microprocesoare i FPGA-uri. Logica boolean.
Organizare curs: 7 spt. x 2 ore/curs.
Organizare proiect: 14 spt. x 2 ore/proiect.
Credite: 4K.
Nota disciplin: 30% Curs (minim 5) + 70% Proiect (minim 5).
*Club Microcontrolere ( http://ep.etc.tuiasi.ro/micro_cl.html )
Bibliografie selectiv
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]

Limbajul C Tehnici de programare, A. Srbu, Editura Gh. Asachi Iai, 2000.


Aplicaii Practice ale Microcontrolerelor , C. Aghion, O. Ursaru, PIM, Iasi-2009.
Silicon Laboratories, C8051F120 i C8051F340 Small Form Factor.
Programare C i C++ pentru Linux, Drago Acostchioaie.
Limbajele C i C++ pentru nceptori vol 1 i vol 2 Liviu Negrescu - microInformatic.
Microcontrolerul INTEL 8051.Aplicaii., P. Duma, Ed.TEHNOPRESS, Iai, 2004.
Phillips Semiconductors 80C51-Based 8-Bit Microcontrollers.
http://ro.wikipedia.org/wiki/Microcontroler

nc din cele mai vechi timpuri (2000 .Hr.) oamenii au fost preocupai de crearea unor
mainrii /echipamente pentru a realiza automat (fr intervenia uman) sau calcula (matematic)
diferite operaiuni/sarcini n mod secvenial - cu scopul de a uura lucrul oamenilor n activitile
lor i de a elimina eroarea uman. Dac la nceputuri aceste echipamente erau pur-mecanice, cu
timpul ele s-au mbuntit trecnd prin etapa de realizare electro-mecanic pentru ca n final s
fie transformate integral n sisteme/circuite electronice. De exemplu, transformarea circuitelor de
calcul a fost destul de lent pn prin anii 1960 (cnd a aprut primul calculator electronic)
urmnd ca din 1970 (an n care a aprut primul calculator de buzunar) pn n zilele noastre,
aceste circuite electronice s-au dezvoltat ntr-un ritm alert determinat n bun msur de cerinele
i nevoile cotidiene. Este greu de imaginat n zilele noastre realizarea activitilor zilnice fr
banalul calculator - iar dezvoltarea acestora nu se oprete aici ci va continua cu ajutorul
generaiilor ce vor veni.
De cele mai multe ori funcionarea unui sistem de calcul are la baz un Circuit Integrat
(CI) cu arhitectur intern complex, capabil s rezolve i s ia decizii pe baza unui
program/algoritm pe care l execut. Dac la nceputuri acest algoritm era prencrcat n
Circuitul Integrat direct de la realizarea n fabric a acestuia, n prezent aceste circuite pot fi
programate (scrise/citite/terse) de milioane de ori. Cele mai cunoscute Circuite Integrate
complexe sunt: Microcontrolerele, Microprocesoarele i FPGA-urile (eng. Field Programable
Gate Array; rom. Arii Logice Programabile). Scopul acestui curs (Informatic Aplicat 2) nu
este de a prezenta n detaliu funcionarea i particularitile categoriilor de circuite mai sus
menionate (acest lucru se va face n cadrul altor discipline de specialitate), ci este acela de a
realiza o introducere n conceptul de programare a Circuitelor Integrate complexe. Totui, pentru
a avea o imagine de ansamblu a acestora, cteva caracteristici ce definesc Microcontrolerele,
Microprocesoarele i FPGA-urile sunt date n cele ce urmeaz.

Pagina 1 din 4

Microprocesorul
Apare pentru prima dat (ca un tot unitar, ntr-un circuit integrat) n 1971 (microprocesor
pe 4 bii - Intel i Texas Intruments) iar n 1972 apare primul microprocesor pe 8 bii (Intel). Este
compus dintr-o Unitate Central de Procesare (CPU), Memorie i pini de Intrare/Ieire (I/O), aa
cum este prezentat n Figura 1. Unitatea Central de Procesare execut instruciuni aritmeticologice, instruciuni ce sunt citite dintr-o memorie ROM (eng. Read Only Memory - memorie ce
nu se terge la dispariia alimentrii). Exist mai multe tipuri de memorii ROM folosite de un
microprocesor, cel mai adesea se face referire la acea memorie ROM din care sunt citite
instruciunile(+operanzii) ce sunt executate de Unitatea Central de Procesare (un exemplu
concludent n acest sens este hard-disk -ul unui calculator, ce poate fi privit ca o memorie
ROM). n Figura 2 se d un exemplu de microprocesor realizat de compania Intel.
microprocesor
memorie
RAM ROM
CPU
pini - interfata
Intrare Iesire

Fig. 1 Arhitectura microprocesor

Fig. 2 Exemplu de microprocesor

Rezultatele execuiei CPU-ului sunt stocate temporar n zone mici de memorie RAM
(eng. Random Acces Memory; rom. Memorie cu Acces Aleator - memorie ce-i schimb
valoarea la pierderea alimentrii; n limbaj popular se terge memoria). Trebuie menionat c
zonele de memorie ROM i RAM din interiorul microprocesorului sunt de dimensiuni mici (dar
cu acces rapid), deoarece acesta se bazeaz pe zone mari de memorie ROM i RAM aflate n
exteriorul microprocesorului. [de exemplu, zone mici de memorie RAM dintr-un microprocesor
se mai numesc cache L1, L2; zon mic de memorie ROM dintr-un microprocesor este zona
boot]. Cu ajutorul pinilor de Intrare/Ieire ai microprocesorului se face schimbul de date (date de
intrare sau de ieire) dintre acesta i diverse echipamente externe (exp. hard-disk, RAM, placa
video, etc.)
Microcontrolerul
Are o arhitectur intern asemntoare cu cea a unui microprocesor (la nceput, n 1970
nici nu se fcea distincie ntre microprocesor i microcontroler) dar spre deosebire de
microprocesor, acesta a cunoscut o altfel de dezvoltare, fiind orientat mai mult n utilizarea lui n
mediul industrial (automatizri). De aceea a fost nevoie de creterea zonelor de memorie (RAM
i ROM) de pe chip (Circuit Integrat) i adugarea a unor noi blocuri interne (timere, convertor
analog-numeric, convertor numeric-analog, pwm, comunicaii: usb, ethernet, can, i2c, usart, etc.)
n Figura 3 este prezentat o arhitectur intern a microcontrolerului Intel 8051.

Pagina 2 din 4

External
Interrupts
4K
ROM /
EPROM

INTERRUPT
CON TRO L
RST

128 Bytes
RAM

TIM ER 1
TIM ER 0

4 I/O PO RTS

SER IA L
PO RT

P0 P2 P1 P3

TxD RxD

CPU

BU S
CO N TR O L

OSC

EA

PSEN

A LE

ADD RESS/DA TA

Fig. 3 Arhitectura intern a microcontrolerului Intel 8051

FPGA-ul
FPGA-urile (Field Programmable Gate Array) au aprut ncepnd din 1970, dezvoltate iniial de
Signetics. Acestea conin arii de pori logice i blocuri de memorie RAM pentru a se implementa
calcule logice complexe. Conin porturi (pini I/O) bidirecionali de intrare/ieire de mare vitez
pentru a se putea transfera rapid date seriale sau paralele (bus). n majoritatea cazurilor acestea
au memorie volatil (RAM) fiind necesar o ncrcare a logicii digitale dintr-o memorie ROM
(situat on-chip sau extern).
Ca arhitectur intern FPGA-urile sunt
realizate din arii de celule logice (pori logice) ce se
pot interconecta ntre ele pe baza unui program.
Arhitectura FPGA-urilor difer total de cea a unui
microcontroler sau microprocesor.
O arhitectur de baz a unui FPGA este
prezentat n Figura 4 i este format din: pini
intrare/ieire
Input/Output,
blocuri
logice
configurabile (CLB), logic de interconectare
programabil i zone de memorie RAM.
Cel mai des ntlnite limbaje de programare
Fig. 4 Arhitectura FPGA
ptr. FPGA-uri, sunt: VHDL i Verilog.

Logica boolean - pori logice


(noiuni detaliate din aceast tematic vor fi studiate la disciplina Circuite Integrate Digitale - an2)

Logica boolean se bazeaz pe dou tipuri de date/valori: adevrat sau fals, valori ce sunt
implementate general n electronic sub forma: adevrat = 1 = + (plus), respectiv fals = 0 = (minus). n cele ce urmeaz se vor utiliza valorile 1 pentru adevrat i 0 pentru fals. Valorile de
1 respectiv 0 se mai numesc valori digitale i reprezint valori posibile ale unui circuit digital.
De exemplu, dac se aduce un semnal digital (prin fir/srm) ctre un
microcontroler/microprocesor/FPGA, valoarea acestui semnal digital poate fi 1 sau 0, i nu o
valoare intermediar. Exemplul de mai sus corespunde cazului n care se aduce un semnal de un
bit ctre un microcontroler/microprocesor/FPGA.
Pori logice
1. Poarta logic I
a
c
b

a, b i c pot avea doar valori de 0 sau 1


Pagina 3 din 4

c = a & b (unde & este operatorul porii logice I)


Tabelul de adevr pentru aceast poart logic este:
a b c =a&b
0 0
0
0 1
0
1 0
0
1 1
1
2. Poarta logic SAU
a
c

c = a | b (unde | este operatorul porii logice SAU)

Tabelul de adevr pentru aceast poart logic este:


a b c =a|b
0 0
0
0 1
1
1 0
1
1 1
1

3. Poarta logic NU

b=~a

(unde ~ este operatorul porii logice NU)

Obs. la operaii logice pe un bit, noiunea de negat sau complement este similar.
Tabelul de adevr pentru aceast poart logic este:
a b=~a
0
1
1
0

4. Poarta logic XOR


c = a ^ b (unde ^ este operatorul porii logice XOR)

a
0
0
1
1

Tabelul de adevr pentru aceast poart logic este:


b c =a^b
0
0
1
1
0
1
1
0

De reinut:
bit = unitate de date (cea mai mic), poate avea valori de 0 sau 1.
byte/octet = grupare de 8 bii.

Pagina 4 din 4

S-ar putea să vă placă și