Sisteme cu microprocesare

27
1. DECODIFICATORUL 74LS 138 Acest circuit este un decodificator de la 3 la 8. Pentru a ne reaminti ce este de fapt un decodor facem menţiunea că un decodificator este circuitul care îşi activează o ieşire şi doar una şi anume cea care reprezentată în cod binar la intrările de date. Activarea ieşirii selectate prin cod este condiţionată de una - E, sau mai multe - E1, E2, … intrări de validare - (enable). În acest din urmă caz activarea se produce prin acţiunea unei funcţii de variabilele –E1, E2, ş.a.m.d. Atât ieşirile cât şi intrările, atât cele de date cât şi cele de validare pot fi active la nivel logic 0 (L) sau 1 (H). Acest circuit logic combinaţional se utilizează pentru realizarea decodificatoarelor pentru memorii şi porturi. Schema sa funcţională se prezintă în figura 1.01. Se observă existenţa terminalelor specifice unui asemenea circuit şi anume :

Transcript of Sisteme cu microprocesare

Page 1: Sisteme cu microprocesare

1. DECODIFICATORUL 74LS 138

Acest circuit este un decodificator de la 3 la 8. Pentru a ne reaminti ce este de fapt un decodor facem menţiunea că un decodificator este circuitul care îşi activează o ieşire şi doar una şi anume cea care reprezentată în cod binar la intrările de date.

Activarea ieşirii selectate prin cod este condiţionată de una - E, sau mai multe - E1, E2, … intrări de validare - (enable). În acest din urmă caz activarea se produce prin acţiunea unei funcţii de variabilele –E1, E2, ş.a.m.d.

Atât ieşirile cât şi intrările, atât cele de date cât şi cele de validare pot fi active la nivel logic 0 (L) sau 1 (H).

Acest circuit logic combinaţional se utilizează pentru realizarea decodificatoarelor pentru memorii şi porturi.

Schema sa funcţională se prezintă în figura 1.01. Se observă existenţa terminalelor specifice unui asemenea circuit şi anume : (tabelul 1.01).

1 0 0 0 0 0 0 1 1 1 1 1 1 11 0 0 0 0 1 1 0 1 1 1 1 1 11 0 0 0 1 0 1 1 0 1 1 1 1 11 0 0 0 1 1 1 1 1 0 1 1 1 11 0 0 1 0 0 1 1 1 1 0 1 1 11 0 0 1 0 1 1 1 1 1 1 0 1 1

Page 2: Sisteme cu microprocesare

1 0 0 1 1 0 1 1 1 1 1 1 0 11 0 0 1 1 1 1 1 1 1 1 1 1 00 X X X X X 1 1 1 1 1 1 1 1X 1 X X X X 1 1 1 1 1 1 1 1X X 1 X X X 1 1 1 1 1 1 1 1

- 3 intrări de date -- 3 intrări de validare - - 8 ieşiri

La cele 3 intrări de date se prezintă în cod binar ieşirea la care se va regăsi valoarea logică 0, activarea unei ieşiri făcându-se la acest nivel logic semnalizat prin .

Selectare unei ieşiri, conform codului prezentat la intrările de date se produce doar dacă toate intrările de validare (enable) sunt activate, adică :

În orice altă situaţie nici una din ieşiri nu se activează, conform celor prezentate în tabelul de adevăr. (tabelul 1.01).

2. AMPLIFICATOR SEPARATOR 74LS244

Este un circuit folosit pentru separarea magistralelor unidirecţionale ale microprocesoarelor şi amplificarea semnalelor recepţionate de la acestea. În fapt ele asigură o funcţionare lejeră a magistralelor în condiţiile diferitelor încărcări. Schema funcţională a terminalelor sale se prezintă în figura 1.03.

Page 3: Sisteme cu microprocesare

Schema funcţională a circuitului se prezintă în figura 1.04.Observăm că avem de-a face cu două amplificatoare separatoare cu câte 4 căi,

fiecare amplificator având şi o intrare de validare activă la nivel logic 0. Terminalele specifice unui asemenea circuit sunt :

- câte 4 intrări de date pentru fiecare amplificator separator - respectiv

- câte o intrare de validare pentru fiecare amplificator separator, comună pentru cele 4 căi

- respectiv -

- câte 4 ieşiri pentru fiecare amplificator separator notate :

Page 4: Sisteme cu microprocesare

- respectiv

-

Amplificatoarele separatoare fiind independente din punctul de vedere al transferului informaţional funcţionarea fiecăruia poate fi reprezentată de tabelul 1.03.

tabelul 1.03.

unde : şi

Admiterea transferului pentru şi oricare din amplificatoarele separatoare se produce doar dacă intrarea de validare (enable) este activă, adică :

Din tabelul de adevăr (funcţional) al circuitului se observă că pentru oricare din ieşiri are un nivel nedefinit numit generic a 3-a stare. Aceasta înseamnă că în această situaţie nivelul ieşirii este determinat de alte circuite conectate împreună cu (la) ea.

3. REGISTRUL 74 LS 373

Acesta este un registru

0

1 a 3 – a stare

Page 5: Sisteme cu microprocesare

Cu 8 ranguri, fiecare bistabil din componenţă fiind de tipul cu 3 stări. În aplicaţiile cu microprocesoare el se utilizeaază pentru de multiplexarea magistralelor magistralelor microprocesoarelor.. A cunoscut o largă răspândire în aplicaţiile ce utilizează microprocesorul 8086. Configuraţia funcţională a terminalelor cipului se prezintă în figura 1,xx. Pentru realizarea funcţiilor pentru care a fos concepu, registrul are o schemă internă ca cea din figura 1.xx. Din analiza acestei a observăm existenţa a 8 bistabile de tip D corespunzătoare rangurilor registrului. Registrul este prevăzut cu următoarele

intrări/ieşiri:

- 8 intrări de date notate 1D – 8D- 8 ieşiri notate 1Q – 8Q- 1 intrate de validare a ieşirilor (comună pentru toate rangurile / bistabilele), notată OC barat şă activă la nivelul logic 0- 1 intarre de comandă a încărcării bistabilelor (comună pentru toate), notată G şi activă la nivelul logic 1

tabel 1.05 G iQ

0 0 Vechiul conţinut0 1 iD1 x a-3-a stare

La aceste puncte de acces se adaugă pinii de alimentare Vcc şi de masă GND.Functionarea registrului este descrisă sintetic de tabelul 1.05.

4.MEMORIA EPROM 27256

După cum rezultă din denumirea circuitului avem de-a facecu o memorie programabilă (P) electric (E), destinată citirii (ROM). Ea are o capacitate de 256 kilobiţi grupaţi în 32 de kiloocteţi (kO). Schema funcţională a circuitului se prezintă în figura 1.xxx. Ea corespunde funcţiunilor/facilităţilor pe care circuitul trebuie să le realizeze/asigure în cadrul unui sistem cu microprocessor. Terminalele specifice circuitului sunt:

Page 6: Sisteme cu microprocesare

- 15 intrări de adresă notate AD0 – AD14. Numărul de intrări este argumentat de faptul că trebuie adresat oricare din cei 32 kOcteţi de memorie, adică mathematic:

- 8 liniii de date O0 – O7 . Acestea sunt ieşiri în cazl citirii şi respective intrări în faza de programare a memoriei- 1 intrare de selecţie / programare - - 1 intrare de validare a ieşirilor - 1 intrare pentru tensiunea de programare - Vpp

Această din urmă intrare se utilizează doar atunci când se face programarea memoriei. Din punctual de vedere al prezentului curs nu prezintă interes etapa de programare a memoriei. Pentru noi aici şi acum, parafrazând un ilustru profesor al meu, EPROM 27256 şi

altele se consideră programat. Aceasta înseamnă că se realizează doar cicluri de citire, când liniile de date O0 – O7 sunt ieşiri. În aceastş variantă de funcţionare –citire din memorie – intrarea corespunzătoare tensiunii de programare se conectează la Vcc. Pentru ilustrarea funcţionării memoriei EPROM 27256 în figura 1.10 se prezintă diagramele temporale ale semnalelor caracteristice şi anume:

- o intrare de adresă- o ieşire- intrarea de selecţie- intrarea de validare a ieşirii

Pentru efectuarea unui ciclu de citire trebuie respectată succeasiunea temporală a semnalelor de selecşie ( ) şi validare- OE barat. Pelangă aceast, este necesar să se şină seama şi de restricşiile cantitative referitoare la valorile finite necesare ale întîrzierilorşi anume:

- t1 -întîrzierea necesară a semnalului de selecţie- tCE- întîrzierea faşă de semnalul de selecţie- tOE.- întîrzierea faţă desemnalul de validareCa rezultat al celor de mai sus apare untimp finit de acces (la memorie) tACC,

definit conform figurii 1.10, de care trebuie să se ţină seama în aplicaţile în care se pune problema controlului proceselor rapide.

Ca ordin de mărime facem precizarea că în cazul acestui tip de memorie timpul de acces nu depăşeşte valorile:

Page 7: Sisteme cu microprocesare

5. UNITATE CENTRALA A MICROPROCESORULUI 8086 în modul minim

Pentru realizarea unei unităţi centrale (UC) cu microprocesorul 8086 este necesară

„înconjurarea” sa cu câteva circuite specifice, aşa cum se prezintă în figura 2.07.

Schema pune în evidenţă doar fluxul informaţional, de date, adrese, stări,

comenzi, fără a face referire la căi/linii, magistrale, multiplexate sau nu.

Dintre circuitele prezente în schema bloc nu au fost prezentate pâna acum:

- generatorul de tact GT

- generatorul semnalelor de comandă (pentru porturi şi memorii) GSC

Celelalte circuite prezentate prin blocuri au fost studiate atât la curs cât şi la lucrările

practice.

Vizavi de structura prezentată, amplificatoarele separatoare de pe magistrala de date pot

lipsi.

Unitate central ă cu µP 8086 în modul maxim

Modul de lucru maxim în configuraţia aferentă se recomandă în cazul unor

aplicaţii ample şi complexe (mai cu seamă în sisteme multiprocesor).

Deosebirea esenţială faţă de modul minim este faptul că în această configuraţie

(mod) semnalele de comandă necesare pentru comunicare şi transfer dintre µP pe de o

Page 8: Sisteme cu microprocesare

parte şi memorii şi porturi pe de altă parte, sunt generate de un circuit specializat şi

anume controlerul de magistrală 8288.

Schema funcţională a unei unităţi cu 8086, în modul maxim se prezintă în figura 2.11.

Din figură se observă deosebirea funcţională faţă de modul minim şi anume că

semnalele de comandă a transferurilor către/dinspre porturi şi memorii sunt generate de

controlerul de magistrală 8288.

Semnalele de intrare specifice pe baza cărora se generează cele de comandă (de

ieşire) sunt recepţionate de la µP şi sunt , ,. Ele codifică tipul de ciclu pe care îl va

executa µP, codificarea corespunzand tabelului 2.1.

tabelulu 2.1

Tipul de ciclu

Acceptarea unei cereri de întrerupere 0 0 0

Intrare 0 0 1

Ieşire 0 1 0

Oprire, aşteptare 0 1 1

Aducere cod de instrucţiune 1 0 0

Page 9: Sisteme cu microprocesare

Citire date 1 0 1

Scriere date 1 1 0

Inactiv 1 1 1

Vizavi de această deosebire este utilă cunoaşterea structurii şi funcţionării controlerului

de magistrală.

6. GENERATORUL SEMNALELOR DE COMANDA

Acest circuit este cel care comandă transferurile dintre microprocesor şi porturi,

respectiv memorii.El generează semnalele de comandă ale

citirii şi scrierii din/în memorii şi porturi. Solicitările

microprocesorului se exprimă prin semnalele de intrare

transmise GSC .

1. RD – comandă citire (din memorie sau port)

2.WR – comandă scriere (în memorie sau port)

3. M/IO – selecţia originii (destinaţiei) de citire (scriere).

Semnalele generate sunt distincte pentru porturi:

IOR – citire din port

Page 10: Sisteme cu microprocesare

IOW – scriere în port

Sau pentru memorii:

MEMR – citire din memorie

MEMW – scriere în memorie

Conform celor enumerate GSC are o schemă de principiu ca cea din figura

următoare:

Funcţionarea sa – simplă de altfel – se prezintă la lucrarile practice.

7.MICROPROCESORUL 80386 (structura)

Pentru asigurarea unei viteze sporite de lucru microprocesorul 386 este organizat

în 3 blocuri funcţionale şi anume:

- Blocul central de prelucrare BCP

- Blocul de gestionare a memoriei BGM

- Blocul de interfaţă cu magistralele BIM,

aşa cum se observă în figura 3.02. La rândul lor, fiecare din blocurile enumerate are mai

multe unităţi componente, după cum urmează:

a. BCP are în componenţă următoarele unităţi:

- unitatea centrală de execuţie UCeEx

- unitatea de decodificare UDec

- unitatea de aducere în avans a instrucţiunilor UAdIn

Page 11: Sisteme cu microprocesare

b. BGM are în componenţă următoarele unităţi:

- unitatea de segmentare USeg

- unitate de paginare UPag

c. BIM – unitate de interfaţă cu magistralele UinMa

8.MICROPROCESOARELE PENTIUN II PENTIUM III

Evoluţia despre care am vorbit la începutul capitolului precedent, s-a accelerat

după elaborarea microprocesoarelor 386 şi 486.

Page 12: Sisteme cu microprocesare

În acest sens au fost dezvoltate microprocesoarele Pentium: PI, PII, PIII şi PIV.

Dintre ele este reprezentativ Pentium II din motive ce vor rezulta în continuare.

Microprocesorul Pentium II este unui evoluat care face parte din familia P6 de

microprocesoare. Ele se caracterizează prin:

- implementarea conceptului de executare dinamică

- existenţa a 2 nivele de memorie cache:

L1 - 16Ko pentru date

L2 - 16Ko pentru instrucţiuni

- unificată – 512 Ko

- este pe acelaşi modul cu microprocesorul

- dispune de magistrale distincte pentru transferul dintre

microprocesor şi L2

- frecvenţa de tact – 230MHz – 500MHz

- existenţa unor facilităţi de autotestare.

- ca şi realizare hardware, microprocesoarele PII se plasează împreună cu

memoria cache L2 într-un modul distinct numit S.E.C.C. (sau S.E.C.) – Single Edge

Contact Cartridge. El se conectează la placa de bază printr-un conector serial numit

Slot1.Acest modul conţine şi

Modulul mai include şi sistemul derăcirealmicroprocesorului.

2. Arhitectura PII

Page 13: Sisteme cu microprocesare

Arhitectura microprocesorului PII este realizată în jurul conceptului de execuţie

dinamică a instrucţiunilor, revoluţionar din punct de vedere al optimizării executării

instrucţiunilor.

Structura necesară pentru implementarea execuţiei dinamice se prezintă în figura

4.01.

Această structură conţine o partea specifică care nu există la microprocesoarele

precedente şi anume Rezervorul de instrucţiuni. Aici sunt aduse în avans şi depuse

instrucţiunile.

De aici, după reţinere şi ordonare sunt preluate spre Analiză şi Execuţie de

unitatea corespunzătoare.

Page 14: Sisteme cu microprocesare

Structura aferentă execuţiei dinamice este integrată cu arhitectura calculatorului

PII conform schemei bloc din figura 4.02

Conform axesteia, în primă etapă funcţionarea rezultă după cum urmează:

1. Unitatea de Aducere – Decodificare are schema bloc din figura 4.03 Conform

informaţiei furnizate de „Următorul IP” din memoria cache L1 I se transferă unităţii o

linie de 16 octeţi

Informaţia din „Următorul IP” este furnizată de blocul Tampon Direcţie Salt care

efectuează previzionarea direcţiei de execuţie a programului (în cazul în care intervin

salturi, întreruperi, etc).

Instrucţiunile se convertesc în microinstrucţiuni iar cele complexe sunt completate cu

microcoduri.

În continuare microinstrucţiunile se combină, li se ataşează informaţia de stare, iar

ansamblul ajunge în Rezervorul de instrucţiuni.

2. Unitatea de Analiză Execuţie

are o structură complexă, prezentată în figura 4.04, conform sarcinilor îndeplinite, adică:

1. alegerea din Rezervorul de instrucţiuni a unei microinstrucţiuni

- planificarea execuţiei

- execuţia propriu-zisă

Page 15: Sisteme cu microprocesare

Funcţionarea este următoare:

a) o microinstrucţiune are toţi operanzii => Se verifică disponibilitatea resurselor

necesare

- există resurse. Blocul de planificare scoate din Rezervorul de instrucţiuni

microinstrucţiunea în cauză şi o transmite spre execuţie.

Selecţia de planificare se efectuează în funcţie de resurse şi constrângeri adică: -

O instrucţiune se execută dacă are operanzi şi resurse.

- dacă nu are operanzi şi resurse instrucţiunea nu se execută.

Dacă previziunea a fost corectă s-a câştigat timp, dacă nu atunci se va alege de

către „Selecţia frecvenţă” o nouă secvenţă care va iniţia un mare ciclu de execuţie.

Trebuie subliniată existenţa a 3 unităţi de execuţie distincte pentru:

- operaţii cu întregii

Page 16: Sisteme cu microprocesare

- operaţii în virgulă mobilă

- instrucţiuni MMX

Aceste instrucţiuni sunt specifice arhitecturilor microprocesoarelor evoluate şi

reprezintă o extensie a restului de instrucţiuni.

Această extensie utilizează organizarea de tip SIMD (Single Instruction Multiple

Date) care constă îm procesarea în paralel a datelor obţinându-se astfel o creştere a

vitezei software-ului în cazul aplicaţiilor de comunicaţii şi multimedia.

Tehnologia MMX se aplică şi în cazul microprocesoarelor PIII, fiind cunoscută

sub numele Steraming SIMD Extension.

9.INTERFATA (portul) USBModalităţile clasice de conectare a periferiei la PC au o serie de dezavantaje,

oferind în fiecare caz resurse limitate.

Pentru eliminarea parţială sau totală a acestora s-a elaborat interfaţa (magistrala)

alternativă USB.

Universal Serial Bus (USB) este o interfaţă ce a fost elaborată pentru înlocuirea

celorlalte tipuri de porturi. Ea este o realizare mai recentă care oferă câteva avantaje nete

şi anume:

- oferă posibilitatea unor viteze mari

- există posibilitatea conectării mai multor plăci de aplicaţii la acelaşi port

Structura unui sistem USB

Spre deosebire de conexiunile porturilor precedente, USB este o conexiune de tip

magistrală, nu o conexiune punct la punct.

Astfel toate parţile componente ale unui sistem USB au acces la informaţia de pe

magistrală, fiecare preluând numai pachetul de informaţie ce-i este adresat.

USB este organizat pe nivele, în evantai, echipamentele utilizate împărţindu-se în

două categorii:

- hub-uri

- funcţii

Funcţia este acel echipament care execută sarcini specifice (scanner, mouse,

tastatură, etc) fiind conectat la unul din porturile unui hub.

Page 17: Sisteme cu microprocesare

Hub-ul este un echipament ce permite conectarea (prin porturi) funcţiilor către

nivele superioare, până la PC.

Conform celor de mai sus sistemul USB este ierarhic, piramidal, în vârful (centrul)

sau găsindu-se host-ul (hub-ul rădăcină) conform schemei din figura 5.08.

Din examinarea

schemei rezultă

flexibilitatea deosebită

a sistemului. Ea este

determinată pe de o

parte de structura

hardware iar pe de altă

parte de funcţiile host-

ului, şi anume:

- detectarea, conectarea si deconectarea unui echipament;

- gestionarea transferului de date dintre PC şi echipamente;

- preluarea informaţiilor de stare de la echipamente;

- furnizarea tensiunilor de alimentare (dacă e cazul) către echipamente.

Conexiunea între echipamente se realizează cu cabluri prevăzute cu conectoare.

Există 2 tipuri de conectoare, codificate A si B.Hub-urile (inclusiv Host-ul) au conectori

de tip A iar funcţiile au conectori de tip B. Ca urmare a acestui fapt vom avea

următoarele tipuri de conexiuni (şi cabluri):

a) A → A

b) B → B

Acestea corespund situaţiilor din figura 5.10.

Page 18: Sisteme cu microprocesare

Cablul USB are 4 fire, cărora le vor corespunde 4 pini ai conectorului. Schema structurii

cablului USB este prezentată în figura 5. 11.

Firele de date (D+ si D-), aferente unui semnal diferenţial sunt torsodate, asigurându-se o

suplimentare a rezistenţei la perturbaţii. Celelalte două fire asigură tensiunea de

alimentare şi conexiunea de masă.

Structura unui Host se prezinta in figura 5.12.

Client SW este software-ul executat de către Host în cazul conexiunii la

echipament.

USB System SW este software-ul pentru gestionare magistralei sistemului.

Host Controler-ul este cel care gestionează funcţionarea sistemului USB.

Secvenţial, el integrează echipamentele conectate, le ia în evidenţă şi le inventariază,

având o adresă pentru fiecare din echipamentele conectate în acel moment.

Page 19: Sisteme cu microprocesare

Structura unui echipament USB se prezintă în figura 5.13.

10. INTERFATA (portul) SERIE- este şi ea foarte răspândită

- oferă linii mai puţine decât precedenta

- viteza este mai mică

- siguranţa în funcţionare este mai mare

- imunitatea la perturbaţii este mai mare decât la cea paralelă

- există multe plăci şi software diversificat pentru aplicaţii

A apărut şi se utilizează din momentul realizării primului PC. Şi în cazul portului

serie se poate utiliza conectorul de tip D cu 25 de pini sau cu 9 pini.

O comparaţie între cele două porţi arată că:

- utilizarea portului serie se recomandă când transmisia se face la distanţe mari

(d>3m)

- programarea portului serie este mai dificilă întrucât este necesară conversia-

reconversia serie-paralel şi există un număr mai mare de registre

- numărul minim de conductoare a unui cablu serie este 3, deci foarte avantajos

- pragul de zgomot, determinat de diferenţa de tensiune dintre cele 2 nivele logice,

0 şi 1, este mult mai mare la transferul serial

Pentru exemplificare se prezintă în tabelul 5.2 tensiunile caracteristice nivelelor

logice în cazul celor două tipuri de transmisie

Tip Transmisie Nivel logic 0 Nivel logic 1

Paralel 0V 5V

Serială (-25÷-3)V (3÷25)V

Transfer paralel 0 → 0V

1 → 5V

Transfer serie 0 → (-25 ÷ -3) V

1 → (3 ÷ 25) V

- transferul serial este posibil şi fără cablu (radio,IR,laser)

Page 20: Sisteme cu microprocesare

- transmisia serială este absolut necesară în cazul aplicaţiilor cu microcontrolere,

care, deşi orientate pe aplicaţii, necesită utilizarea PC-ului în fazele de punere în

funcţiune, verificare şi depanare

Întrucât pentru transmisia serială se utilizează, conform celor deja spuse , alte nivele

decât cele utilizate, la transmisia serie este necesară utilizarea unor circuite specializate.

Un circuit model este cel cu indicativul MAX 232 care are o schemă funcţională ca cea

din figura 1 şi o schemă a terminalelor ca cea din figura 5.01 şi 5.02.

Page 21: Sisteme cu microprocesare

Bus Interface - este cea care asigură conectarea la magistrală, inclusiv elementele

necesare serializării şi neserializării informaţiei.

Logical Device – reprezintă software-ul aferent nivelului de echipament.

Funcţia – reprezintă nivelul de software caracteristic funcţiei ca element material

component.