Calculatoare electronice

269
Petre Ogruţan, Calculatoare electronice ISBN 978-606-19-0757-1 1 Petre Lucian Ogruţan CALCULATOARE ELECTRONICE Editura Universităţii Transilvania din Braşov, 2016 ISBN 978-606-19-0757-1

Transcript of Calculatoare electronice

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    1

    Petre Lucian Ogruan

    CALCULATOARE ELECTRONICE

    Editura Universitii Transilvania din Braov, 2016

    ISBN 978-606-19-0757-1

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    2

    Recenzeni:

    Prof. dr.ing. Georghe TOACE, Departamentul de Electronic i Calculatoare, Facultatea de Inginerie Electric i tiina Calculatoarelor, Universitatea Transilvania din Braov

    Prof. dr.ing. Mihai ROMANCA, Departamentul de Electronic i Calculatoare, Facultatea de Inginerie Electric i tiina Calculatoarelor, Universitatea Transilvania din Braov

    Coperta: detaliu dintr-o pictur a artistei braovene Iulia chiopu, https://www.facebook.com/iulia.schiopu.5

    Simbolurile din domeniul tehnicii de calcul sunt preluate de pe site-ul Shutterstock, http://www.shutterstock.com/

    Aceast carte, scris pentru specialitii din afara domeniului de calculatoare este o premier n limba Romn i se remarc prin:

    o O structurare original a materialului prezentat, adaptat la nivelul cititorilor int;

    o O tratare extins i complet a domeniului de calculatoare electronice, cu exemplificri de realizri i aplicaii dintre cele mai recente;

    o O expunere clar, cu o grafic potrivit aleas, cu explicaii ntr-un limbaj simplu, fr o abunden de termeni profesionali, reuind ca vastul domeniu al "neneleselor" calculatoare s poat fi neles. Astfel cartea este atrgtoare i n acelai timp foarte util pentru neprofesioniti.

    Extras din referatul dl. prof. dr.ing. Georghe TOACE

    https://www.facebook.com/iulia.schiopu.5http://www.shutterstock.com/

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    3

    De ce i pentru cine am scris aceast carte?

    Se scriu multe cri despre calculatoare. Aceast carte exprim o viziune general asupra calculatoarelor electronice digitale n interaciunea lor cu utilizatorul uman i cu mediul, cu avantajele lor dar i cu limite. Aria de cuprindere a crii nu se limiteaz la calculatoare PC extinzndu-se spre telefoane inteligente, microcontrollere i echipamente periferice. Aceast viziune global este fireasc n acest stadiu al dezvoltrii tehnicii de calcul i ea poate fi remarcat n cartea lui Hennessy i Patterson, Computer Architecture din 2012 [1].

    Materialul dedicat calculatoarelor electronice din aceast carte este destinat n primul rnd inginerilor i specialitilor din domenii tehnice. Cartea poate fi citit ns de oricine care dorete s aib o imagine de ansamblu a calculatoarelor, cu excepia unor pri mai dificile din anumite capitole peste care se poate sri. Materialul poate fi folosit de studenii de la programele de studiu n domeniile inginerie electric, mecanic, construcii etc. pentru a face cunotin cu un domeniu extrem de vast i dinamic. Materialul a fost conceput n ideea de a constitui o lectur uoar i plcut care s prezinte informaiile necesare nelegerii calculatoarelor i a terminologiei utilizate n domeniu. Elevii termin liceul avnd competene de operare a calculatorului, competene pe care le are o mare parte a populaiei adulte datorit preteniilor locului de munc. De aceea acest material nu conine informaii despre aplicaii software ci este focalizat ctre descrierea simplificat a calculatoarelor din punctul de vedere al structurii i arhitecturii lor, ntr-o imagine global care cuprinde comunicaiile i cele mai importante echipamente periferice. Pentru a face materialul ct mai plcut de parcurs justificrile matematice sunt ct mai reduse. Din acelai motiv materialul conine multe ilustraii iar bibliografia este dat n text acolo unde a fost referit, la sfrit exist doar titlurile care pot oferi documentare suplimentar. Imaginile componentelor de calculator i capturile de ecran au rolul de a face acest material ct mai practic, atractiv i uor de parcurs. Am vzut cri pentru nceptori care au doar ecuaii i scheme. Cum poate o asemenea carte s genereze la un amator de calculatoare plcerea de a nva mai mult?

    Este o provocare s alegi din cunotinele de calculatoare care n acest moment sunt vaste pe cele care ar trebui s le aib un nespecialist. Unii au afirmat c poi lucra cu aplicaiile dorite fr nicio cunotin de hardware iar alii afirm c

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    4

    trebuie s tii totul, ambele extreme fiind exagerri. Dac asculi dialogurile tinerilor poi s observi c terminologia utilizat este una foarte modern. De exemplu doi copii cam de clasa a V-a discutau n autobuz despre plci video, n stilul bieilor - eu sunt mai tare dect tine, placa mea video este pe 128 de bii. Acest dialog, i multe dialoguri asemntoare se bazeaz pe frnturi de caracteristici tehnice din reclame i nu pe cunotine. Materialul selectat i propus de mine constituie ceea ce cred eu c este minimul necesar s tie un inginer despre calculatoare, aspecte de structur, care s-i permit nu numai s poarte un dialog dar s poat propune soluii de dotare i configurare. Din experien tiu c mult lume este derutat de avalana de caracteristici, fr ca cineva s spun care sunt cele importante i care sunt mai puin importante. n aceast carte ncerc s clarific care sunt noiunile importante, n opinia mea. Am introdus un capitol de fiabilitate pentru c aceast caracteristic a componentelor este trecut sub tcere i nu puin lume este luat prin surprindere cnd ceva se stric. La fel, la stocarea informaiei am abordat aspecte ale duratei de stocare i un concept unitar de viziune a stocrii. Pentru a justifica cititorului importana parcurgerii acestei cri am introdus un capitol numit La ce folosesc cunotinele despre calculatoare? pentru c mi-am dat seama n cursul activitii didactice c studenii citesc cu mai mare plcere un material dac au convingerea c le va folosi. Poate c acest capitol ar trebui citit primul. Un alt capitol care poate strni interesul cititorului este cel dedicat telefonului mobil. n acest capitol ncerc s demonstrez c telefonul inteligent are o structur de calculator prin faptul c multe elemente din structura lui au fost tratate n aceast carte, cu link-uri ctre locul unde au fost tratate. Am fost ntrebat de multe ori ct este de duntor sntii s existe un router wireless n camera n care dormi sau ct de duntor este s utilizezi un telefon mobil. Am prezentat poziia mea n acest domeniu ntr-un capitol dedicat influenei cmpului electromagnetic asupra sntii. Acest capitol are numrul 13, numr predestinat temei tratate. Mi-am permis n unele capitole s prezint preri personale i mi cer scuze cititorilor pentru aceast vanitate.

    n acest material exist multe referiri la istorie. Un citat atribuit lui Jorge Agustn Nicols Ruiz de Santayana este Cei care nu pot nva din istorie sunt condamnai s o repete. Cititorul poate gsi lecii utile de via citind paragrafele de istorie, de exemplu realizrile tinerilor, cum este cea a studentului Bernard Silver care a inventat codul de bare n 1948, a studentului Peter Decker de la Aachen University din Germania care a avut contribuii la inventarea transmisiei de date prin telefonia mobil, a studentului Robert Wilson care a inventat monitorul cu plasm n 1964 sau a studentului Gene Dolgoff care a inventat proiectorul LCD n 1984. Pentru a stimula modestia la bieii care sunt majoritari la inginerie i pentru a justifica prezena fetelor la

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    5

    inginerie, n carte este pomenit Hedy Lamarr i invenia ei, transmisia cu salt de frecven care se afl la baza majoritii sistemelor de comunicaie actuale.

    O parte a materialului din carte este preluat, prelucrat, sintetizat i prezentat ntr-o manier proprie, menionnd sursa iniial a materialului. O alt parte se bazeaz pe cercetrile proprii i pe proiectele de diplom a studenilor pe care i-am coordonat n decursul anilor. n calitate de cadru didactic la Facultatea de Inginerie Electric i tiina Calculatoarelor din cadrul Universitii Transilvania din Braov mi-au fost puse din 1991 pn n prezent foarte multe ntrebri despre calculatoare. n calitate de consultant al unei firme de calculatoare am fost ntrebat de asemenea de foarte multe ori. Aceste ntrebri puse de-a lungul timpului m-au convins de necesitatea unei cri n care s rspund la cele mai frecvente ntrebri. Bineneles c rspunsurile sunt presrate de-a lungul crii, iar coninutul acesteia nu este centrat pe rspunsuri ci pe descrierea logic a calculatoarelor electronice i a celor mai importante echipamente periferice.

    O problem care apare n domeniul crilor de calculatoare este limba n care sunt scrise. Excesul de termeni preluai din englez este uneori obositor. Traducerea acestor termeni, uneori incorect, poate fi chiar mai obositoare pentru cititor. Am ncercat s pstrez un echilibru, n aa fel nct s fiu criticat n mod egal att de cei care i-ar fi dorit mai muli termeni n englez ct i de cei care ar fi dorit mai muli termeni tradui.

    Multe din crile tiinifice care apar acum sunt orientate ctre domenii nguste, n care ofer detalii originale. Aceast carte acoper un domeniu foarte larg iar selecia realizat de mine este una subiectiv. Am introdus n materialul prezentat elemente originale, dar mai important dect acestea este conceptul de selecie i organizare a informaiei cu scopul de a fi uor i plcut de citit. Ca urmare atept preri despre acest material, att despre ce este bun ct i despre ceea ce trebuie schimbat. n acest domeniu informaia este att de dinamic nct i rog pe cititori s se grbeasc s parcurg cartea acum, peste civa ani aproape tot ce am scris va fi depit.

    Petre Ogruan

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    6

    Cuprins

    De ce i pentru cine am scris aceast carte? ..............................................................3 Cuprins..........................................................................................................................6 1.Definiia i istoria calculatoarelor ...........................................................................8

    1.1.Primele maini de calcul ......................................................................................9 1.2.Calculatorul digital.............................................................................................12 1.3.Istoria calculatoarelor romneti........................................................................17

    2.Procesarea i memorarea datelor ..........................................................................19 2.1.Noiuni introductive despre unitatea central de prelucrare date i memorie....19 2.2.Aritmetica calculatoarelor..................................................................................22 2.3.Analog, digital, paralel, serial i informaii utile ...............................................27 2.4.Structura i funcionarea unui procesor .............................................................31 2.5.Magistrale i arhitecturi bazate pe magistrale....................................................32 2.6.Microcontrollere ................................................................................................36 2.7.Ct este de greu de realizat o aplicaie cu microcontroller? ..............................40 2.8.Diversitatea interfeelor i importana cunoaterii lor .......................................42 2.9.Cteva interfee seriale tipice............................................................................45

    3.Stocarea datelor ......................................................................................................57 3.1.Stocarea datelor pe suporturi magnetice ............................................................57 3.2.Stocarea datelor pe suporturi semiconductoare .................................................62 3.3.Stocarea datelor pe suporturi optice...................................................................64 3.4.Concluzii ............................................................................................................71

    4.Reele de calculatoare .............................................................................................73 4.1.Codificarea datelor seriale .................................................................................73 4.2.Istoric, topologie i mediul de transmisie ..........................................................74 4.3.Organizarea reelei .............................................................................................76 4.4.Configurarea reelei ...........................................................................................78 4.5.Conectarea reelei de calculatoare la Internet i programarea unui router.........81 4.6.Alte dispozitive IP..............................................................................................84

    5.Comunicaii fr fir ................................................................................................88 5.1.Introducere i istoric ..........................................................................................88 5.2.Modulaia datelor ...............................................................................................90 5.3.Acces n reele locale (Wireless Local Area Network)......................................93 5.4.Acces n reele extinse (Wide Area Network (WAN)) ......................................95 5.5. Reele de senzori (Wireless Sensor Networks (WSN)) ....................................98 5.6.Identificarea prin frecven radio RFID...........................................................102 5.7.Concluzii ..........................................................................................................104

    6.Afiarea imaginilor ...............................................................................................106 6.1.Afiaje LCD.....................................................................................................106 6.2.Afiaje cu plasm .............................................................................................111 6.3.Afiaje electroluminiscente..............................................................................113 6.4.Proiectoare LCD ..............................................................................................115 6.5.De ce este nevoie de controllere grafice? ........................................................117

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    7

    7.Imprimarea............................................................................................................125 7.1.Imprimarea: istoric, caracteristici, imprimarea color.......................................125 7.2.Imprimarea electrofotografic .........................................................................131 7.3.Imprimarea cu jet de cerneal ..........................................................................134 7.4.Imprimarea cu cerneal solid .........................................................................140 7.5.Imprimarea termic ..........................................................................................141 7.6.Imprimarea 3D.................................................................................................144 7.7.Cum se poate proiecta o imprimant?..............................................................148 7.8.Imprimantele i protecia mediului ..................................................................149

    8.Echipamente de legtur om calculator .............................................................154 8.1.Ecrane sensibile la atingere (Touchscreen)......................................................154 8.2.Tableta grafic .................................................................................................158 8.3.Scanner.............................................................................................................162 8.4.Este diferit imaginea preluat cu tableta grafic de imaginea scanat? .........168 8.5.Scanner de coduri de bare ................................................................................169 8.6.Plotter ...............................................................................................................172

    9.Multimedia i realitatea virtual .........................................................................174 9.1.Multimedia n calculatoarele personale ...........................................................174 9.2.Realitatea virtual, simulare i proiecie ..........................................................178 9.3.Realitatea virtual prin imersiune ....................................................................182 9.4.Giroscopul........................................................................................................188

    10.Telefonul mobil ca i calculator .........................................................................191 10.1.Istoria telefonului mobil.................................................................................192 10.2.Structura telefonului mobil ............................................................................194 10.3.Alimentarea cu energie ..................................................................................197 10.4.Descrierea unor module interne din telefoanele inteligente ..........................201

    11.Putem estima ct timp va funciona un echipament de calcul?......................213 11.1.Estimarea fiabilitii unui sistem ...................................................................215 11.2.Sisteme tolerante la erori ...............................................................................217

    12.La ce folosesc cunotinele despre calculatoare?..............................................223 12.1.Importana cunotinelor de calculatoare pentru cei care cred c nu au nevoie de aceste cunotine................................................................................................223 12.2.Necesitatea cunotinelor de calculatoare pentru inginerii care lucreaz n tehnologia materialelor ..........................................................................................225 12.3.Cum sunt construite calculatoarele? De ce trebuie s tie calculatoare inginerii care lucreaz n tehnologia electronic ..................................................................231

    13.Ct sunt de periculoase cmpurile electromagnetice generate de funcionarea calculatoarelor i a transmisiilor fr fir?.............................................................240

    13.1.Telefoane mobile ...........................................................................................240 13.2.Reeaua de transport a energiei electrice. Msurarea cmpului electric. .......247 13.3.Dispozitive absorbante a radiaiei electromagnetice......................................250

    14.Virui i atacuri cibernetice ...............................................................................253 14.1.Istoric, prezent i viitor ..................................................................................253 14.2.Virui i antivirui..........................................................................................255 14.3.Metode de protejare .......................................................................................260

    15.Bibliografie ..........................................................................................................265

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    8

    1.Definiia i istoria calculatoarelor

    Un calculator, numit i sistem de calcul, computer sau ordinator, este o main de prelucrat date conform unei liste de instruciuni numit program (https://ro.wikipedia.org/wiki/Calculator). Un calculator, definit prin ceea ce poate face i ceea ce conine este un ansamblu a cinci componente: 1.Un mediu de intrare prin care se introduc date i programe din exterior; 2.O unitate central care prelucreaz aceste date: 3.Un program care asigur ordinea de efectuare a operaiilor pentru obinerea rezultatelor dorite; 4.O memorie n care se stocheaz date, rezultate pariale i rezultate finale; 5.Un mediu de ieire prin care rezultatele sunt furnizate operatorului.

    Una dintre personalitile majore care a contribuit la realizarea calculatoarelor a fost John Von Neumann, un savant american de origine maghiar care a trit ntre anii 1903-1957, cu contribuii importante n domeniile mecanicii cuantice, a teoriei economice, a teoriei jocurilor, a mecanicii fluidelor, a arhitecturii calculatoarelor digitale, programarea calculatoarelor, fizica nuclear i construirea primei bombe cu hidrogen etc. John von Neumann putea rezolva n minte probleme dificile, cum ar fi de exemplu nsumarea seriilor infinite. Contribuiile lui principale la dezvoltarea calculatoarelor sunt: arhitectura pe baz de magistrale, ierarhizarea memoriilor i redundana. Aceste contribuii stau la baza calculatoarelor moderne. Una dintre contribuii- automatele cu auto replicare i rspndire n progresie geometric nu a fost nc aplicat dect n Science Fiction (replicanii din Star Gate).

    Dac o persoan este solicitat s dea un exemplu de calculator, cel mai probabil rspuns va fi PC-ul (Personal Computer) sau notebook-ul. Calculatoarele personale s-au rspndit mult i foarte mult lume deine un calculator personal sau lucreaz la locul de munc pe un asemenea calculator. Calculatoarele sunt ns mult mai variate ca i dimensiuni, putere de calcul i utilitate. n partea superioar a performanelor se afl supercalculatoarele care ofer spaii de stocare i putere de calcul clienilor, accesibile prin Internet i formnd aa numitul cloud (nori n romnete). n partea de jos a performanelor se afl sistemele pe baz de calculator (embedded n englez) care conduc funcionarea majoritii aparatelor actuale, de exemplu a telefoanelor mobile, a centralelor termice, a interfoanelor de bloc, a alarmelor auto, a televizoarelor etc. Oamenii sunt nconjurai de aceste sisteme pe baz de calculator i, pentru c un card bancar are un circuit integrat (chip n englez) care ndeplinete criteriile din definiia lui von Neumann, nseamn c fiecare persoan modern are cel puin dou calculatoare asupra sa, cardul i telefonul mobil.

    Dac toat lumea este acum obinuit s aib conectivitate Internet prin telefonul mobil, n ultima vreme un nou concept descrie integrarea tuturor dispozitivelor pe baz de calculator n Internet. Acest concept se numete Internetul lucrurilor (Internet

    https://ro.wikipedia.org/wiki/Calculator

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    9

    of Things (IoT)) i va permite ca frigiderul s comande produse online cnd acestea se termin, s poi porni centrala termic prin smartphone i filtrul de cafea nainte de a ajunge acas dintr-o cltorie, televizorul s aleag emisiunile preferate n funcie de persoana care privete i este recunoscut prin analiz de imagine etc.

    1.1.Primele maini de calcul

    Din punct de vedere istoric abacul a fost primul dispozitiv de calcul, folosit prima oar n Babilon n 2400 B.C. Un dispozitiv interesant, Antikytera nc este insuficient neles. El a fost construit n anii 100-150BC dar are o complexitate atins de maetrii elveieni care fceau ceasuri abia n secolul XVII, figura 1.1. Se pare c a fost construit n insula Rodos de ctre greci, existnd o legtur ntre dispozitiv i filozoful Arhimede. Se presupune c se utiliza n scopuri astronomice. Dispozitivul a fost gsit mpreun cu un manual de utilizare. Pentru studierea lui a fost fondat Antikythera Mechanism Research Project, un proiect internaional. Dispozitivul a fost studiat cu amnunime, inclusiv cu raze X i a fost conceput o schem. Dup aceast schem a fost reconstruit i expus la un muzeu.

    Figura 1.1. Dispozitivul Antikythera, sursa http://en.wikipedia.org/wiki/Antikythera_mechanism

    Ceasul astronomic construit de Al-Jazari n 1206 a fost primul calculator analogic mecanic programabil care arta date astronomice- durata zilei i nopii, fazele lunii etc. A urmat apoi John Napier care a descoperit modul de efectuare a nmulirilor i mpririlor prin adunri i scderi, ceea ce adus n 1620 la descoperirea riglei de calcul (figura 1.2.) folosit pn la apariia calculatoarelor de buzunar (inclusiv de primele expediii Apollo n spaiul cosmic).

    http://en.wikipedia.org/wiki/Antikythera_mechanism

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    10

    Figura 1.2. Rigla de calcul, sursa http://ro.wikipedia.org/wiki/Rigl%C4%83_de_calcul

    Wilhelm Schickard a realizat primul calculator mecanic n 1623, apoi au urmat Blaise Pascal (Figura 1.3.) i Leibnitz.

    Figura 1.3. Calculatorul lui Blaise Pascal, (1642), sursa http://en.wikipedia.org/wiki/Blaise_Pascal

    n 1725 Basile Bouchon a imaginat i realizat sistemul de memorare cu perforaii pentru mainile de prelucrare a esturilor, figura 1.4.:

    Figura 1.4. Maina lui Bouchon, sursa http://en.wikipedia.org/wiki/Basile_Bouchon

    http://ro.wikipedia.org/wiki/Rigl%C4%83_de_calculhttp://en.wikipedia.org/wiki/Blaise_Pascalhttp://en.wikipedia.org/wiki/Basile_Bouchon

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    11

    n 1833 Charles Babbage a construit primul calculator mecanic cu hrtie perforat la intrare de date i un motor cu abur ca surs de alimentare, figura 1.5. Calculatorul nu a funcionat niciodat, dar principiile au fost corecte.

    Figura 1.5. Primul calculator mecanic construit de Charles Babbage, sursa http://en.wikipedia.org/wiki/Charles_Babbage

    Un pas nainte n domeniul portabilitii datelor a fost apariia cartelelor perforate. Prima realizare a fost maina lui Hermann Hollerith (1890), cu cartele perforate, folosit la recensmnt n SUA, figura 1.6.:

    Figura 1.6. Maina lui Hollerith cu cartele perforate, sursa http://en.wikipedia.org/wiki/Herman_Hollerith

    ncepnd din anii 1900 au fost construite diverse tipuri de calculatoare mecanice. Au fost construite calculatoare mari, cum este calculatorul mecanic diferenial de la Cambridge n 1938 dar i calculatoare portabile, de exemplu calculatorul CURTA n 1948, figura 1.7.

    http://en.wikipedia.org/wiki/Charles_Babbagehttp://en.wikipedia.org/wiki/Herman_Hollerith

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    12

    Figura 1.7. Calculatoare mecanice, construit la Cambridge (stnga) i Curta (dreapta) sursa http://ro.wikipedia.org/wiki/Istoria_ma%C8%99inilor_de_calcul

    1.2.Calculatorul digital

    Un pas nainte esenial n dezvoltarea calculatoarelor a fost apariia calculatoarelor digitale, n care prelucrarea i stocarea informaiei se face binar. Teoria calculatoarelor digitale a fost iniiat prin lucrrile: lui Alan Touring (1936) care a definit arhitectura calculatorului digital i structura algoritmului de execuie a unui program de pe o band perforat i a lui John Von Neumann care a conceput arhitectura unui calculator pe baz de magistrale.

    Konrad Zuse a realizat n Germania primul calculator mecanic digital (Z1) n 1938 i unul cu relee (Z3 n 1941), figura 1.8., opera lui fiind parial distrus n al doilea rzboi mondial i astfel necunoscut n mare parte de lumea modern.

    Figura 1.8. Calculatorul Z1 a lui Konrad Zuse, reconstituit, sursa http://en.wikipedia.org/wiki/Z1_%28computer%29

    http://ro.wikipedia.org/wiki/Istoria_ma%C8%99inilor_de_calculhttp://en.wikipedia.org/wiki/Z1_%28computer%29

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    13

    Proiectul COLOSSUS a fost iniiat n Anglia n anii celui de-al doilea rzboi mondial, calculatorul devenind funcional n 1943. Calculatorul MARK 1 a construit n cadrul acestui proiect a fost digital cu tuburi electronice i a fost construit pentru codificarea mesajelor proprii i decriptarea mesajelor armatei germane, figura 1.9. Calculatorul a fost complet distrus dup rzboi pentru a pstra secretul. Dup 1970 au fost cunoscute amnunte referitoare la structura calculatorului. Perioada rzboiului a fost una de suferine i distrugeri, dar i de mobilizare a resurselor intelectuale a oamenilor valoroi, astfel c tiina i tehnologia a nregistrat progrese rapide.

    Figura 1.9. Calculatorul digital cu tuburi electronice construit n cadrul proiectului Colossus, sursa http://en.wikipedia.org/wiki/Colossus_computer

    n SUA n 1939 John Vincent au construit calculatorul AtanasoffBerry, cu 300 de tuburi electronice i o memorie format dintr-un cilindru rotitor cu condensatori (un fel de hard disc). n perioada 1943-1945 a fost construit ENIAC, primul calculator electronic digital de uz general care fcea adunri, scderi, nmuliri, mpriri i extragere de radical, cu o vitez de 5000 de operaii pe secund. Greutatea calculatorului era de 30 de tone, figura 1.10.

    Figura 1.10. Calculatorul AtanasoffBerry (stnga) i ENIAC (dreapta), sursa http://en.wikipedia.org/wiki/Atanasoff%E2%80%93Berry_computer si

    http://en.wikipedia.org/wiki/ENIAC

    http://en.wikipedia.org/wiki/Colossus_computerhttp://en.wikipedia.org/wiki/Atanasoff%E2%80%93Berry_computerhttp://en.wikipedia.org/wiki/ENIAC

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    14

    Un alt pas important a fost construirea calculatoarelor digitale cu arhitectura Von Neumann. Primul calculator construit cu aceast structur, succesor al ENIAC a fost EDVAC, dar care nu a funcionat. Primul calculator funcional a fost realizat n 1948 la Manchester, numit Baby. n 1951 UNIVAC a fost primul calculator cu aceast structur (electronic, digital, von Neumann) vndut comercial 46 exemplare a peste 1 milion USD bucata. n aceast perioad memoria a nceput s fie realizat cu inele magnetice de ferit, fiecare bit un inel, figura 1.11. Aceste realizri formeaz aa numita generaia I a calculatoarelor electronice.

    Figura 1.11. Consola operatorului (UNIVAC) http://en.wikipedia.org/wiki/UNIVAC_I i memorie cu inele de ferit

    http://en.wikipedia.org/wiki/Magnetic-core_memory

    Generaia a doua de calculatoare electronice digitale a aprut dup descoperirea tranzistorului n 1947. Circa 120 calculatoare IBM 1401 (Figura 1.12.) cu tranzistori au fost vndute ntre anii 1960 i 1964. S-a mbuntit att unitatea central ct i periferia: au aprut hard discurile magnetice i unitile de band magnetic. A aprut i conceptul de staii legate prin linia telefonic de calculatorul central.

    Figura 1.12. Calculatorul IBM 1401, unitate de cartele perforate (stnga), unitate central mijloc i imprimant (dreapta), sursa http://en.wikipedia.org/wiki/IBM_1401

    i un hard disc din calculatorul IBM 350 Ramac, sursa http://en.wikipedia.org/wiki/IBM_305_RAMAC

    http://en.wikipedia.org/wiki/UNIVAC_Ihttp://en.wikipedia.org/wiki/Magnetic-core_memoryhttp://en.wikipedia.org/wiki/IBM_1401http://en.wikipedia.org/wiki/IBM_305_RAMAC

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    15

    Inventarea circuitelor integrate de ctre Jack St. Clair Kilby i Robert Noyce i apoi a microprocesorului de ctre Ted Hoff, Federico Faggin, i Stanley Mazor la Intel, a dus la a treia generaie de calculatoare. Steve Wozniak co-fondator al Apple Computer a produs n serie primul calculator pentru acas, n acelai timp cu calculatorul COMMODORE, figura 1.13. Aceste calculatoare aveau imagine grafic i sunet la nceputul anilor 80.

    Figura 1.13 Calculatorul Commodore 64 (1982), cu procesor pe 8 bii, 64Koctei RAM, deine recordul de vnzri n SUA ntre anii 1983-1986. Sursa

    http://en.wikipedia.org/wiki/Commodore_64

    n 1980 companiile IBM i Microsoft au iniiat un proiect secret pentru un calculator personal, figura 14. IBM urma s realizeze partea hardware i Microsoft sistemul de operare. IBM a ales procesorul firmei INTEL pe care avea dreptul s-l foloseasc n schimbul cedrii ctre INTEL a dreptului de folosire a tehnologiei de producie a memoriei. Caracteristicile calculatorului: procesor INTEL la 4,77MHz, 16 koctei de memorie RAM, dou uniti de floppy disc de 160 koctei la preul de 1500 USD (Figura 1.14.). Unul dintre motivele rspndirii acestui sistem s-a datorat faptului c specificaiile de construcie au fost cedate domeniului public.

    http://en.wikipedia.org/wiki/Commodore_64

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    16

    Figura 1.14. Calculatorul IBM PC, sursa https://www-03.ibm.com/ibm/history/exhibits/pc25/pc25_intro.html

    Un alt pas care aduce dezvoltarea calculatoarelor aproape de zilele noastre este apariia notebook-urilor (numite i laptop-uri). Primul notebook a fost Osborne 1, creat de Osborne Computer Corporation in 1981. Primul notebook avea 10,7 kg i costa 1795 dolari. Un notebook Amstrad cu procesor Intel 386SX este dat n figura 1.15:

    Figura 1.15. Notebook Intel 386SX, marca Amstrad, colecia Petre Ogruan

    https://www-03.ibm.com/ibm/history/exhibits/pc25/pc25_intro.htmlhttps://www-03.ibm.com/ibm/history/exhibits/pc25/pc25_intro.html

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    17

    1.3.Istoria calculatoarelor romneti

    Cteva rnduri se cuvin a fi scrise despre dezvoltarea calculatoarelor n Romnia. Primul calculator electronic romnesc a fost construit de Victor Toma n 1957 (https://ro.wikipedia.org/wiki/Victor_Toma). O realizare important a fost calculatorul MECIPT, construit la Timioara n 1961 de ctre un colectiv condus de William Lwenfeld, figura 15. n urma strngerii relaiilor cu Frana, a fost cumprat licena pentru calculatoare IRIS n 1968, pentru Fabrica de Calculatoare Electronice FCE. A fost nfiinat i Institutul de Tehnic de Calcul cu contribuii importante n dezvoltarea calculatoarelor. Cu ajutorul acestei licene s-a construit calculatorul FELIX C256 care a echipat centrele de calcul din Romnia. n anii 1972-1973 au fost concepute i realizate 2 tipuri de minicalculatoare, numite INDEPENDENT i CORAL care au fost i exportate. Structura lor s-a bazat pe circuite integrate. Primul calculator personal a fost M18 cu microprocesor Intel 8080 de 8 bii. Pasul urmtor, spre PC-uri nu a mai fost fcut n ar pentru c partidul comunist la putere n acele vremuri nu mai agrea domeniul calculatoarelor. Calculatoare personale compatibile Spectrum cu microprocesor Z80 au fost construite la noi n diverse forme, cum ar fi HC95 la Bucureti, figura 1.16.

    Figura 1.16. MECIPT i William Lwenfeld (stnga), sursa http://evocari.blogspot.ro/ i calculatorul HC95, produs n anii 1985-1990, cu procesor Z80, afiare pe TV i stocarea datelor pe casetofon audio, programabil n BASIC, colecia Petre Ogruan

    Primul calculator construit la Braov a fost Cobra (Figura 1.17) la ITC (Institutul de tehnic de calcul), condus n acel timp de prof. dr. ing. Gh. Toace, n prezent cadru

    https://ro.wikipedia.org/wiki/Victor_Tomahttp://evocari.blogspot.ro/

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    18

    didactic la Departamentul de Electronic i Calculatoare. Un articol aprut n 1988 n presa ruseasc arat fotografii ale calculatorului i laud structura acestuia. Calculatorul era echipat cu monitor TV i casetofon audio, precum i o imprimant de mari dimensiuni.

    Figura 1.17 Calculatorul COBRA, fabricat la Braov, colecia Petre Ogruan

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    19

    2.Procesarea i memorarea datelor

    Prin prisma definiiei calculatorului dat de Von Neumann, procesarea i memorarea datelor sunt funcionalitile 2 i 4, adic 2.O unitate central care prelucreaz aceste date; 4.O memorie n care se stocheaz date, rezultate pariale i rezultate finale.

    2.1.Noiuni introductive despre unitatea central de prelucrare date i memorie

    O plac de baz de calculator PC i un sistem de dezvoltare sunt date n figura 2.1.

    Figura 2.1. Plac de baz de calculator personal (stnga) i un sistem de dezvoltare cu microcontroller Fujitsu (dreapta), sursa: autorul

    Acest capitol i propune s prezinte sumar microprocesoarele, microcontrollerele i memoria, cu istoria, structura lor i relaiile funcionale dintre acestea. n figura 16 au fost marcate cele mai importante elemente care vor constitui subiectul acestui capitol. Chipset-ul unei plci de baz de calculator personal reprezint setul de circuite integrate care mpreun cu microprocesorul ndeplinesc funciile plcii.

    Microprocesoarele au fost inventate ntre anii 1960 i 1970, respectnd legea a lui Moore care afirm c numrul de tranzistori integrai ntr-un circuit integrat se dubleaz la fiecare 2 ani. Legea lui Moore este exemplificat n figura 2.2. cu un grafic al numrului de tranzistori integrai n procesoare ncepnd din 1960 pn n 2010.

    Microprocesor

    Memorie RAM

    Magistrala PCI

    Chipset

    Microcontroller

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    20

    Figura 2.2. Fotografia la microscop a unui microprocesor (stnga) sursa http://en.wikipedia.org/wiki/Central_processing_unit i exemplificarea legii lui Moore

    (dreapta), sursa http://hightechforum.org/100-years-of-moores-law/

    Din punct de vedere istoric, trei microprocesoare au aprut aproape simultan: INTEL 4004, TEXAS INSTRUMENTS TMS1000 i un microprocesor creat de Central Air Data Computer pentru o aplicaie militar pe avioanele F14 Tomcat. Acest ultim proiect a fost secret (dezvluit doar n 1997) i ca urmare puin cunoscut. Primul microprocesor pe 8 bii a aprut n 1972, fabricat de INTEL, numit 8008 i Z80 de la firma Zilog n 1976. Cu Z80 a fost construit calculatorul Sinclair ZX 81 care se vindea cu 99USD. Microprocesorul RCA 1802 creat n 1976 a echipat sondele NASA Viking, Galileo i Voyager datorit proprietii lor de a putea funciona cu tact mai redus, deci cu consum de energie mai mic.

    Primul microprocesor pe 16 bii a fost creat de TI, numit TMS 9900. INTEL a creat microprocesoare pe 16 bii numite 8086, 8088, 80186 i 80286 (formnd familia numit x86), compatibile cu variantele anterioare cu care au echipat calculatorul IBM PC. Primul procesor pe 32 de bii a fost creat de MOTOROLA, MC68000. Din 1985 procesoarele din familia x86 ale companiei INTEL au devenit preponderente pe pia, primul fiind 80386. n aceast etap multe firme fabricau microprocesoare: AMD, Cyrix, TMS, Zilog etc. Apariia procesoarelor pe 64 de bii prima dat la AMD (AMD64), apoi la INTEL (INTEL64) proiectate n anii 1990 i aprute pe pia n 2000 a eliminat celelalte firme productoare deoarece INTEL nu a vndut licena acestor procesoare.

    Evoluia microprocesoarelor a avut urmtoarele tendine:

    1.Magistrala a crescut de la 4 bii la 64 de bii de date;

    2.Frecvena a crescut de la 2MHz la 3,5GHz;

    3.Numrul de tranzistori din componen a crescut.

    http://en.wikipedia.org/wiki/Central_processing_unithttp://hightechforum.org/100-years-of-moores-law/

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    21

    Aceste tendine au dus la o la o limitare fizic a densitii de integrare, care a putut fi depit prin modificarea arhitecturii. n 1990 au nceput s fie fabricate calculatoare cu mai multe procesoare care lucreaz n paralel. Schimbul de informaii ntre ele se face pe o magistral extern, lent. n aceast idee, n 2005 a aprut microprocesorul cu dou nuclee care efectueaz calcule pe acelai chip, cu schimb de informaie rapid ntre ele, magistrala fiind n interior. Microprocesoare dual core sunt construite din 2007 de INTEL i de AMD i sunt larg folosite. Au aprut microprocesoarele quad core care conin 4 nuclee. SUN Microsystems (cunoscut prin aplicaiile de Office free) a creat microprocesorul Niagara care conine 8 nuclee i n continuare se construiesc procesoare multicore cu din ce n ce mai multe nuclee. Pentru ca un microprocesor cu mai multe nuclee s asigure global o vitez mai mare trebuie ca sistemul de operare s poat s asigure date conform cu structura microprocesorului.

    ntre anii 1980-1990 au aprut primele microprocesoare RISC (reduced instruction set computer), spre deosebire de microprocesoarele descrise pn acum care sunt CISC (complex instruction set computer). Microprocesoarele RISC au mai puine instruciuni dar acestea sunt perfect simetrice, adic se pot folosi la fel cu oricare dintre registrele microprocesorului. Consecina faptului c au mai puine instruciuni este faptul c viteza lor poate fi mai mare, o instruciune poate fi executat ntr-un tact. Aceste microprocesoare nu se folosesc n calculatoare personale ci n aplicaii specifice, n timp anumite arhitecturi de microprocesoare migrnd ctre arhitecturi de microcontrollere. Toate firmele au microprocesoare RISC, astfel exist IBM Power, SUN SPARC, AMD 29000, INTEL i860, MOTOROLA 88000 etc. Arhitecturi actuale de succes sunt ARM (https://en.wikipedia.org/wiki/ARM_architecture), INTEL (https://en.wikipedia.org/wiki/List_of_Intel_CPU_microarchitectures) i MIPS (https://en.wikipedia.org/wiki/MIPS_instruction_set).

    Pentru aplicaii specifice au fost concepute microcontrollerele care sunt calculatoare pe un singur chip, au n circuit memorie, diverse controllere (care n sistemele cu microprocesoare sunt nglobate n chipset), i diverse interfee. Interfaa este un circuit electronic care face legtura ntre o unitate central i un proces. Exemple de interfee sunt cele prin care se acioneaz motoare, circuite de timp, convertoare din domeniul analogic n digital i invers, circuite de afiare etc. Cele mai cunoscute microcontrollere sunt cele fabricate de ATMEL, Microchip, Fujitsu etc.

    O ntrebare pe care mult lume i-o pune des este diferena ntre microprocesoare i microcontrollere. Rspunsul se poate baza pe evoluia i scopul acestor circuite.

    Evoluia i scopul microprocesoarelor este caracterizat de: frecvene din ce n ce mai mari, magistrale de date i adrese mai mari pentru a asigura o viteza ct mai mare a calculatoarelor personale

    Evoluia i scopul microcontrollerelor sunt caracterizate de: ct mai multe interfee pe un singur chip, interfee din ce n ce mai complexe i apropiate de procesul comandat pentru a nu fi nevoie de circuite auxiliare.

    https://en.wikipedia.org/wiki/ARM_architecturehttps://en.wikipedia.org/wiki/List_of_Intel_CPU_microarchitectureshttps://en.wikipedia.org/wiki/MIPS_instruction_set

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    22

    Exist i circuite de gen microprocesor sau microcontroller, dar cu utilizare dedicat. Cele mai cunoscute sunt:

    o DSP (Digital Signal Processor) asigur prelucrri avansate ale semnalului analogic, aplicaia cea mai cunoscut fiind telefonul mobil.

    o GPU (Graphics Processing Units) asigur prelucrarea imaginii grafice, cea mai cunoscut aplicaie fiind chip-urile de pe plcile video.

    Memorarea datelor n sistemele cu microprocesoare i microcontrollere este realizat cu memorii. Localizarea unei locaii de memorie se face prin adresare, adresarea fiind sarcina microprocesorului sau microcontrollerului.

    Memoriile sunt de mai multe tipuri. Tipurile de memorii utilizate n prezent la microcontrollere sunt:

    1. Memoria ROM (Read Only Memory) este cea mai ieftin i simpl memorie i se folosete la stocarea programelor n faza de fabricaie. Unitatea central poate citi informaiile, dar nu le poate modifica.

    2. Memoria PROM (Programmable Read Only Memory) este similar cu memoria ROM, dar ea se poate programa de ctre utilizator. Dup posibilitile de tergere, aceast memorie poate fi de mai multe feluri:

    OTP (One Time Programmable, PROM) este de fapt o memorie EPROM, dar chipul a fost capsulat ntr-o capsul de material plastic fr fereastr, care este mult mai ieftin. Memoria nu se poate terge sau reprograma. Preul unui MC cu OTP este mic, viteza este bun, dar aplicaiile sunt lipsite de flexibilitate.

    Memorii care pot fi terse electric de ctre unitatea central, n timpul funcionrii. tergerea este selectiv, iar pentru renscriere trebuie fcui mai muli pai. Astfel de memorii sunt cele EEPROM (Electrically Erasable Programmable Read Only Memory) i memoria FLASH EPROM.

    3.Memoria RAM (Random Access Memory) este o memorie volatil care poate fi citit sau scris de unitatea central. Locaiile din RAM pot fi accesibile n orice ordine. Pe chip, memoria RAM ocup mult loc i implicit costurile de implementare sunt mari. De aceea un MC include de obicei puin RAM.

    2.2.Aritmetica calculatoarelor

    Un bit este unitatea de msur pentru cantitatea de informaie i reprezint cantitatea de informaie necesar pentru reducerea incertitudinii la jumtate. Termenul a fost introdus de matematicianul i statisticianul american John Wilder Tuckey ca o prescurtare a cuvintelor engleze binary digit (cifr binar), ntr-un articol din 1958, scris pe vremea cnd lucra cu John von Neumann la proiectarea unor modele timpurii de computere. Un bit poate fi stocat de ctre un dispozitiv digital sau alt sistem fizic

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    23

    care exist n fiecare dintre cele dou stri distincte posibile, zero sau unu (sursa http://ro.wikipedia.org/wiki/Bit ).

    Reprezentarea numerelor n calculatoare se face n binar, adic n baza de numeraie 2, spre deosebire de sistemul de numeraie utilizat ntre persoane care este cel zecimal. Cteva exemple vor lmuri diferenele de reprezentare:

    n baza 10: 2011=2x103+0x102+1x101+1x100

    n baza 2: 1010011011=1x29+0x28+1x27+0x26+0x25+1x24+1x23+0x22+1x21+1x20=512+128+16+8+2+1=667

    Operaiile aritmetice n binar sunt:

    Adunarea Scderea nmulirea

    0 + 0 = 0 0 - 0 = 0 0 x 0 = 0

    0 + 1 = 1 0 - 1 = 1 (mprumut 1) 0 x 1 = 0

    1 + 0 = 1 1 - 0 = 1 1 x 0 = 0

    1 + 1 = 0 (transport 1) 1 - 1 = 0 1 x 1 = 1

    Operaiile logice n binar sunt:

    I (AND) 0 AND 0=0 0 AND 1=0 1 AND 0=0 1 AND 1=1

    SAU (OR) 0 OR 0=0 0 OR 1=1 1 OR 0=1 1 OR 1=1

    Negaie (NOT) NOT 0=1 NOT 1=0

    Pentru a concentra scrierea numerelor binare ntr-un spaiu mai redus, se utilizeaz sistemul de numeraie n baza 16, sistemul hexazecimal. Acest sistem de numeraie utilizeaz 16 cifre hexazecimale, care se noteaz astfel: 0 1 2 3 4 5 6 7 8 9 A B C D E F.

    n acest ir de cifre hexazecimale:

    1. cifrele de la 0(16) la 9(16) au valorile zecimale echivalente, de la 0(10) la 9(10),

    2. iar cifrele A(16) ... F(16) au valorile zecimale de la 10(10) la 15(10).

    Pentru reprezentarea valorilor zecimale de la 0 la 15 sunt necesari exact 4 bii, ncepnd cu 0000 i sfrind cu 1111. Transformarea unui numr binar ntr-unul hexazecimal se face prin gruparea biilor n cte 4 bii, de la dreapta la stnga i asocierea a cte 4 bii cu cte o cifra hexazecimal. Exemplu:

    110110110111001= (0)110_1101_1011_1001 = 6DB9

    http://ro.wikipedia.org/wiki/Bit

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    24

    Conversia ntre sistemul zecimal i cel binar se face astfel:

    Pentru conversia din zecimal n binar se mparte numrul la 2; restul reprezint cifra cea mai puin semnificativ (cea mai din dreapta) a rezultatului conversiei. Ctul se remparte la 2, se noteaz restul, i procedura se repet cu noul ct (recursiv). Operaia se sfrete cnd ctul devine nul.

    Exemplu: 118(10) = ? (2)

    Pentru conversia din binar n zecimal se adun puterile lui 2, nmulite cu cifra binar respectiv. Puterile la care trebuie ridicat 2 ncep cu n-1, unde n este numrul de cifre binare, i devin din ce n ce mai mici, de la stnga la dreapta.

    Exemplu: 1110110(2) = ? (10)

    Binar: 1 1 1 0 1 1 0

    Zecimal: 261 + 251 + 241 + 230 + 221 + 211 + 200 = 118

    Multiplii unitii de msur bit (b) se folosesc pentru c n calculatoarele actuale cantitatea de informaie este foarte mare. Calculatoarele prelucreaz informaia n paralel, mai muli bii deodat. Caracteristici importante ale microprocesoarelor sunt dimensiunea cuvntului (ci bii formeaz un cuvnt) i dimensiunea magistralei de date, deci numrul de bii care se prelucreaz n paralel. Dimensiunea cuvntului i a magistralei pot fi egale sau diferite i valori uzuale sunt 8, 16, 32, sau 64. Grupul de 8 bii (8b) se numete octet sau byte.

    Conform standardului IEEE 1541 multiplii byte-ului sunt: o kB sau kO - kilobyte sau kilooctet - 103 bytes (1 000 bytes) (sau 210 1024) o MB sau MO - megabyte sau megaoctet - 106 bytes (1 000 000 bytes) (sau 220) o GB sau GO - gigabyte sau gigaoctet - 109 bytes (1 000 000 000 bytes) (sau 230)

    o TB sau TO - terabyte sau teraoctet - 1012 bytes (1 000 000 000 000 bytes) (sau 240)

    Multiplii bit-ului se utilizeaz mult n societatea actual pentru a descrie caracteristicile unor sisteme de stocare a informaiei. De aceea transformrile sunt

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    25

    operaii uzuale i rspunsul la ntrebrile urmtoare poate lmuri cititorul dac a neles.

    1.Ct nseamn n MB pe secund viteza de download de la o reea Internet de 100Mbps (bii pe secund)? 2.Ci MB are un hard disc de 1TB?

    n arhitectura calculatoarelor, un registru de procesor este o cantitate mic de spaiu de stocare disponibil pe unitatea central de procesare, spaiu al crui coninut poate fi accesat mai rapid dect datele aflate n alt parte (de exemplu, n memoria principal).

    Registrul este caracterizat de numrul de bii: 8, 16 sau 32 de bii.

    Registrele microprocesoarelor din familia x86 (INTEL) sunt:

    AX, BX, CX, DX de 16 bii care pot fi mprite n cte dou registre pe 8 bii,

    AH, AL, BH, BL, CH, CL, DH, DL i registrele pe 16 bii: SI, DI

    Porturile sunt registre de acces n exteriorul microprocesorului, caracterizate de numrul de bii.

    Limbajul de asamblare este limbajul cel mai apropiat de structura unui microprocesor, dar i limbajul cel mai primitiv i ndeprtat de modul de comunicaie uman.

    n liceu i n alte faculti dect cele de IT nu se nva programarea n asamblare. Motivul este c realizarea unui program, de exemplu ordonarea unor numere naturale este foarte greu de realizat n limbaj de asamblare i mult mai uor n C. Dar pentru nelegerea funcionrii unei uniti centrale sau a unor procese de interfaare se pot rula programe simple n asamblare care, rulate pas cu pas arat modul intim de funcionare al calculatorului. Litera H dup un numr arat c numrul este reprezentat n hexazecimal.

    De exemplu instruciunea:

    MOV AL, BL mut coninutul registrului de 8 bii BL n AL (ntotdeauna operandul din stnga este destinaia iar cel din dreapta sursa)

    Unele registre pot avea semnificaii dedicate:

    o registrul DX se folosete pentru a indica adresa unui port (Address Pointer) iar

    o registrul BX o adres de memorie (Memory Address)

    Presupunem c la portul cu adresa 0378H se afl conectate 8 LED-uri. Secvena de program urmtoare are ca efect stingerea LED-urilor.

    MOV DX, 0378H ; valoarea hexa 0378 se ncarc n registrul DX

    MOV AL, 00H ; valoarea 00H se ncarc n registrul AL

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    26

    OUT DX, AL ; valoarea 00 este trimis la portul cu adresa 0378H

    Secvena urmtoare are ca efect aprinderea celor 8 LED-uri:

    MOV DX, 0378H ; valoarea hexa 0378 se ncarc n registrul DX

    MOV AL, FFH ; valoarea FFH se ncarc n registrul AL

    OUT DX, AL ; valoarea FF este trimis la portul cu adresa 0378H

    Instruciuni aritmetice i logice

    Adunare i scdere

    ADD AL, BL ; se execut AL + BL i rezultatul este n AL

    SUB AL, BL ; se execut BL-AL i rezultatul este n AL

    ! Registrul care stocheaz ntotdeauna rezultatele se numete Acumulator

    nmulire i mprire

    MUL AL,BL ; se execut AL * BL i rezultatul este n AL

    DIV AL,BL ; se execut AL / BL i rezultatul este n AL

    Operaii logice

    AND AL, BL ; se execut AL AND BL i rezultatul este n AL

    OR AL, BL ; se execut AL OR BL i rezultatul este n AL

    Stocarea n memorie

    MOV BX, 1000H ; valoarea 1000H este ncrcat n BX

    MOV [BX], AL ; se salveaz coninutul AL la adresa de memorie coninut n BX

    Instruciunile de salt se folosesc pentru a sri n program de la o instruciune la alta, n funcie de ndeplinirea unor condiii. Condiiile se afl memorate n registrul de stare care se actualizeaz dup fiecare operaie. Exemple de condiii: zero, pozitiv, negativ, egal.

    JMP 0100H ; salt necondiionat la adresa 0100H

    JN 0100H ; salt dac este negativ (indicatorul de condiie indic faptul ca operaia aritmetica anterioara a avut un rezultat negativ) la 0100H

    JZ 0100H ; salt dac este zero (indicatorul de condiie indic faptul c operaia aritmetic anterioar a avut un rezultat nul) la adresa 0100H

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    27

    Condiiile se refer la rezultatul operaiei aritmetice anterioare:

    JP ; salt dac pozitiv

    JNZ ; salt dac diferit de zero

    JE ; salt dac egal

    JNE ; salt dac diferit

    Setarea (stabilirea) unei condiii se poate face cu o instruciune de comparare:

    CMP AL, BL ; compar coninutul registrelor AL i BL prin scdere. Dac sunt egale se seteaz condiia de zero i egal.

    2.3.Analog, digital, paralel, serial i informaii utile

    Un semnal analogic are o variaie continu n timp. Exemple de mrimi analogice: temperatura, umiditatea, sunetele, etc. Un semnal digital are o variaie discret n timp, el poate lua doar 2 valori. Exemplu: comanda dat de un ntreruptor ctre un bec. Variaia n timp a unui semnal analogic i a unuia digital sunt date n figura 2.3:

    Figura 2.3. Semnal analogic (stnga) i digital (dreapta)

    Exist circuite de conversie a semnalelor analogice n semnale digitale numite convertoare analog digitale i circuite de conversie invers numite convertoare digital analogice. Exemplu: placa de sunet a unui calculator conine un convertor analog digital la intrarea de la microfon i un convertor digital analogic la ieirea de boxe.Aceste convertoare sunt importante pentru c n natur predomin mrimile analogice i pentru ca acestea s fie msurate i prelucrate cu calculatorul digital este nevoie de conversia analog digital i digital anlogic.

    ntr-o schem bloc n care este figurat un sistem de calcul, figura 2.4 se poate observa modul de reprezentare prin sgei a mrimilor de intrare i ieire. Sensul sgeilor arat sensul de transfer al datelor. Exist semnale care pot fi bidirecionale reprezentate cu sgei n ambele sensuri. Un bloc de mrimi este reprezentat printr-o sgeat lat. Arhitecturile actuale sunt arhitecturi bazate pe magistrale, care, fiind grupuri de linii se reprezint cu sgei late. Intrrile i ieirile din sistem se numesc

    t

    Mrime analogic

    t

    Mrime digital

    +5V

    0V

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    28

    porturi. La aceste porturi se pot conecta interfee. Prin interfee se pot conecta la sistem echipamente periferice (EP) care trebuie s fie prevzut cu o interfa de conectare compatibil cu cea a sistemului gazd.

    Figura 2.4. Schema bloc a unui sistem de calcul

    n domeniul calculatoarelor interfaa este punctul de ntlnire a unitii centrale cu dispozitivele periferice cu scopul transferului de date. Interfeele pot fi hardware sau software, iar n cazul interfeelor software situarea punctului de ntlnire este ntre dou programe.

    Interfeele pot fi bidirecionale n care datele circul n ambele direcii (ex. interfaa cu hard discul) i unidirecionale n care datele circul ntr-o singur direcie (ex. interfaa cu mouse-ul). Interfeele pot fi punct la punct ceea ce nseamn c pot fi conectate pe o linie doar un sistem gazd i un periferic (ex. interfaa PS2 cu tastatura) sau multipunct n care la un sistem gazd se pot lega mai multe periferice (ex. USB).

    Echipamentul periferic este un dispozitiv conectat la un sistem de calcul gazd care extinde funcionalitatea sistemului gazd dar nu face parte din nucleul de calcul. Echipamentul periferic este deseori, dar nu ntotdeauna dependent de sistemul gazd. Exemple: unitate DVD-RW, imprimanta, monitorul etc.

    Organizarea informaiei i circulaia ei n i ntre calculatoare se poate realiza n mod paralel sau serial.

    Sistem de calcul Linii de intrare, analogice sau digitale

    Bloc (grup) de linii de intrare

    Linii de ieire

    Grup de linii de ieire

    Linii bidirecionale

    Magistral

    Acces bidirecional la

    magistral

    Interfee Interfee Interfee Porturi Echipament periferic

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    29

    La circulaia n mod paralel informaia este transmis pe mai multe linii (8, 16, 32, 64, 128 ...), cu un numr de bii transmis la un impuls de tact egal cu numrul de linii, cuvintele fiind transmise succesiv, figura 2.5:

    Figura 2.5. circulaia datelor n mod paralel

    Exemple de circulaie paralel a datelor sunt magistralele i interfa paralel de la vechile calculatoare PC pentru conectarea imprimantei.

    O diagram de timp este un grafic de variaie n timp a unui semnal. Semnalele digitale pot avea doar valoarea 0 sau 1, aa nct ele se reprezint prin linii paralele cu axa x, ntre nivelele de 0 sau 1 tranziiile fiind reprezentate cu linii verticale sau oblice. Un singur semnal digital se reprezint printr-o singur linie, ca n figura 2.6 jos. Pentru a reprezenta mai multe semnale digitale care au aceeai form de evoluie n timp dar nu i aceleai valori logice i se dorete o economie de spaiu se pot trasa cte 2 linii paralele cu axa x, ca n figura 2.6 sus, n care se reprezint 8 semnale. Liniile oblice la o tranziie pun n eviden faptul c trecerea de la o valoare logic la alta are loc ntr-o anumit perioad de timp.

    Diagrama de timp comprimat a transferului este dat n figura 2.6. Semnalul de tact are rolul de stabili momentul exact al citirii datelor, pentru a evita situaiile n care datele sunt citite cnd nc nu sunt stabile pe linie. n anumite interfee acest semnal poate lipsi dar viteza de transfer este mai mic n acest caz.

    Figura 2.6. Diagrama de timp a transferului

    Emitor D0D1D2D3D4D5D6D7

    TACT

    Receptor

    D0-D7 TACT

    Perioada de timp n care se transmit 8 bii

    t

    Timp de tranziie

    t Momentul citirii datelor

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    30

    La transferul serial informaia este transmis bit dup bit, pe mai puine fire (minimum 2 fire, dintre care unul de referin, masa electric), figura 2.7. Pentru transmisia datelor acestea trebuie codificate. Preul mic al interfeelor seriale au dus la rspndirea acestor interfee n majoritatea aplicaiilor.

    Figura 2.7. Schema bloc general a interfeei seriale pe un fir (linia de mas nu este considerat)

    n perioada actual numrul, viteza i calitatea interfeelor seriale cresc, cucerind din ce n ce mai multe segmente de pia. Exemple de circulaie serial a datelor sunt interfeele Ethernet de reea, USB, SATA, etc.

    Tactul n transmisiile seriale are rolul de a stabili momentul citirii (eantionare) i are o importan major. Dac datele seriale vin la receptor pe un singur fir receptorul le poate citi / eantiona cu o anumit frecven i s obin datele recepionate ca n figura 2.8:

    .

    Figura 2.8. Importana eantionrii corecte

    Dac datele sunt eantionate cu o anumit frecven (pe fond rou) se obine un anumit ir de date iar dac datele sunt eantionate cu alt frecven (pe fond albastru) se obine un ir de date diferit. Acest lucru arat importana ca datele s fie recepionate cu acelai tact cu care au fost trimise. Este nevoie ca tactul de transmisie s fie cunoscut de receptor.

    t

    Linia de transmisie

    1 1 0 1 1 1 0 0 1 0 0 0 1 1 0

    0 1 1 0 0

    Emitor DATE

    Receptor

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    31

    2.4.Structura i funcionarea unui procesor

    Unitatea de prelucrare de date este format din ALU (Unitatea Aritmetic i Logic) i un set de regitri interni, figura 2.9, folosii pentru memorarea unor date des folosite sau pentru programarea unor anumite funcii.

    Figura 2.9. Schema bloc a unei uniti de prelucrare de date tipice

    Diferitele familii de microprocesoare i microcontrollere folosesc seturi diferite de regitri. Exist ns civa regitri des ntlnii:

    1. A (Accumulator) registrul acumulator care este folosit deseori pentru a stoca un operand i rezultatul unei operaii aritmetice.

    2. I registru de index, folosit la adresri indirecte.

    3. S registru de stare, care conine indicatorii de stare: Carry, Zero etc.

    4. PC (Program Counter) este stocat adresa urmtoarei instruciuni de executat. Dup un RESET (iniializarea MC), registrul PC se ncarc dintr-o locaie de memorie numit vector de reset. Aceast locaie conine adresa primei

    Magistrala de instruciuni pentru sisteme cu arhitectura Harvard

    ALU

    Magistral intern

    Registru de stare

    Acumulator (CISC) Registre generale (RISC)

    Indicator de stiv

    RAM (memoria de date)

    ROM/PROM/EPROM(memoria program)

    Program Counter

    Decodificare instruciuni

    UC

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    32

    instruciuni de executat. Dup execuia acestei prime instruciuni, PC se incrementeaz.

    5. SP (Stack Pointer) conine indicatorul de stiv. Stiva este o memorie de tip LIFO, n care ultimul octet stocat este primul scos din memorie. Coninutul acestui registru stabilete adresa din memorie unde este definit stiva.

    Unitatea aritmetic i logic ALU execut operaiile aritmetice i logice conform instruciunilor din programul software. Programul se afl stocat n memoria de program i este executat instruciune cu instruciune, adresele fiind puse de registru numrtor de program (Program Counter). Instruciunile sunt transmise prin magistrala intern comun de instruciuni i date la arhitectura de tip von Neumann sau prin magistrala de instruciuni la arhitectura de tip Harvard. Arhitectura Harvard prevede o magistral diferit pentru date i instruciuni, ceea ce complic structura procesorului dar mrete viteza, pentru c n timp ce se transfer date pe magistrala de date, urmtoarea instruciune de executat este deja pe magistrala de instruciuni.

    Instruciunea este decodificat i comand operaia aritmetic dorit n ALU, ntre doi regitri ALU sau ntre un registru i memorie. Rezultatul operaiei este pus pe magistrala de date i n funcie de rezultat se stabilesc condiiile de stare (zero, pozitiv, negativ, egal) n registrul de stare. Datele din ALU pot ajunge n memoria de date sau din memoria de date n ALU. Cnd programul principal ajunge s execute un subprogram (subrutin) datele programului principal se salveaz n memoria de date, ntr-o zon definit de un registru indicator de stiv.

    La un microprocesor memoria de date i instruciuni este comun i nu este integrat n acesta, iar la un microcontroller memoria de date i instruciuni sunt diferite i de regul sunt integrate n microcontroller. Schema unitii de prelucrare de date este prin urmare asemntoare la microprocesoare i microcontrollere.

    2.5.Magistrale i arhitecturi bazate pe magistrale

    Legtura ntre procesor, memorie, i EP (Echipamente Periferice) se realizeaz prin intermediul magistralei. Evoluia n timp a canalelor I/O este n acelai timp o evoluie a creterii complexitii i performanelor.

    Definiie: o magistral este un subsistem cu funcia de comutator universal bidirecional prin care se transfer date n interiorul unui sistem de calcul sau ntre sisteme de calcul. Schema bloc a unui sistem bazat pe magistrale este dat n figura 2.10:

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    33

    Figura 2.10. Structura unui sistem pe baz de magistrale

    Sistemul prezentat n figura 2.10 este format din n subsisteme dintre care unul este Master la un moment dat iar celelalte Slave. Comutatorul este comandat de Master care stabilete subsistemul Slave cu care face transfer de date i stabilete sensul transferului.

    Prima magistral a aprut n 1984 n structura calculatorului IBM PC i s-a numit ISA (Industry Standard Architecture). Magistrala este sincron, are 16 bii de date, 24 de bii de adres, subansamblele conectate se configureaz manual, viteza maxim este de 16Mbps. Specificaiile tehnice ale magistralei au fost n domeniul public, ceea ce a determinat ca magistrala s fie un succes i ca urmare compatibilele IBM PC s se rspndeasc n toat lumea.

    Specificaiile fiind libere, IBM nu a beneficiat financiar prea mult de pe urma acestei magistrale, aa nct a lansat n 1987 o nou magistral, superioar, pentru calculatoarele PS2 numit MCA (Microchannel). Caracteristicile ei: 32 de bii de adres, 32 de bii de date, configurare automat, viteza maxim 32Mbps, cu posibilitatea de a lucra multiprocesor. Pentru a construi dispozitive MCA era nevoie de cumprarea licenei de la IBM i au fost puine firme care s fac acest lucru, ca urmare calculatoarele cu MCA nu s-au rspndit.

    Ca reacie la MCA, un consoriu de firme (Compaq, Epson, Hewlett Packard, NEC, Olivetti i Zenith) a lansat magistrala EISA (Extended ISA) n 1988. Magistrala EISA are performane cel puin att de bune ca i MCA: 32 de bii de adres, 32 de bii de date, configurare automat sau manual, viteza maxim 120Mbps i asigura compatibilitate cu plcile ISA. Specificaiile au fost n domeniul public i probabil magistrala ar fi avut succes.

    EISA nu s-a rspndit pentru c INTEL a lansat n 1990 magistrala PCI (Peripheral Component Interconnect) cu specificaii n domeniul public, cu un concept nou al arhitecturii. PCI poate lucra cu 32 sau 64 de bii de date la o vitez de maximum 2,112Gbps. Conceptul de ierarhizare a magistralei dup vitez permite compatibilitatea cu magistrala ISA. n ultimul timp plachetele ISA au disprut dar PCI

    1 Master 2 3

    4

    5

    n

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    34

    a pstrat intern o magistral de vitez mic numit LPC (Low Pin Count), de fapt o magistral ISA cu semnale multiplexate pe aceleai linii pentru economia de pini.

    n cazul unui sistem de calcul din familia x86 magistralele microprocesorului sunt magistrala de adrese prin care microprocesorul selecteaz modulul slave cu care dorete s transfere date, magistrala de date prin care se face transferul i magistrala de comenzi /stri care conine semnale de gestionare a transferului. Cele mai importante semnale din magistrala de comenzi sunt cele generate de microprocesor care stabilesc dac transferul se face cu memoria (MEM) sau cu un dispozitiv de intrare ieire (IO) i selectarea sensului transferului, spre microprocesor (RD) i de la microprocesor (WR). n figura figura 2.11 este dat o schem bloc simplificat a sistemului de calcul.

    Figura 2.11. Schema bloc principial a unui sistem x86

    Transferurile efectuate de microprocesor prin program1 pot fi:

    A.Citire din memorie, MOV AL, [BX] Pe magistrala de adrese este pus adresa de memorie din registrul BX, care identific o locaie de memorie. Pe magistrala de comenzi este activat semnalul MEMR. Coninutul locaiei de memorie adresat este pus pe magistrala de date i intr n registrul AL al microprocesorului (linii cu rou).

    B.Scriere n memorie, MOV [BX], AL Pe magistrala de adrese este pus adresa de memorie din registrul BX, care identific o locaie de memorie. Pe magistrala de comenzi este activat semnalul MEMW. Coninutul registrului AL este pus pe magistrala de date i este salvat n locaia adresat.

    1 Nu se recomand citirea acestor informaii dect dup parcurgerea capitolului Aritmetica calculatoarelor

    Master Procesor

    Slave Dispozitiv I/O

    Slave Memorie

    Magistrala date

    Magistrala adrese

    Magistrala de comenzi MEMR, MEMW, IOR, IOW

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    35

    C.Citire de la un dispozitiv de I/O, IN AL, DX Pe magistrala de adrese este pus adresa dispozitivului din registrul DX, care identific dispozitivul. Pe magistrala de comenzi este activat semnalul IOR. Coninutul portului de intrare este pus pe magistrala de date i intr n registrul AL al microprocesorului (linii cu albastru).

    D.Scriere la un dispozitiv de I/O, OUT DX, AL Pe magistrala de adrese este pus adresa dispozitivului din registrul DX, care identific dispozitivul. Pe magistrala de comenzi este activat semnalul IOW. Coninutul registrului AL al microprocesorului este pus pe magistrala de date i este trimis la portul de ieire.

    Magistrala PCI are o arhitectur care permite existena a dou magistrale pentru I/O, una de vitez mare i una de vitez mic. La magistrala de vitez mare se conecteaz dispozitivele rapide iar la cea lent se cupleaz canalele care necesit o vitez mic. n cazul sistemelor PC arhitectura ierarhizat a magistralelor este dat n figura 2.12.

    Figura 2.12. Principiul magistralei ierarhizate la PC

    Se poate vedea arhitectura pe 3 nivele, cel mai de sus fiind constituit pe lng magistrala procesorului care are viteza cea mai mare, tactul fiind FSB (Front Side Bus). Pe aceast magistral sunt conectate controllerul video integrat, controllerul de memorie DRAM i controllerul magistralei PCI. Pe al doilea nivel este situat

    Magistrala procesor, 100, 200, 400 MHz

    Magistrala PCI 33MHz

    Magistrala LPC 14 MHz

    Procesor Cache

    Controller de magistral PCI

    Controller de magistral PCIe

    RAM video

    Monitor

    Controller de memorie

    MEMORIE

    Controller de magistral LPC

    SATA, IDE, USB, Ethernet 10/100, audio.

    PS2, interfa paralel, audio.

    DDR3 1600MHz 1333MHz

    Ethernet 1G

    Traseul instruciunii OUT DX,AL dac DX este 0378H

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    36

    magistrala PCI cu un tact de 33MHz, la care sunt conectate dispozitivele de intrare / ieire rapide, adic canale USB, interfaa SATA, interfaa Ethernet 10/100Mbps. Al treilea nivel este reprezentat de magistrala LPC (Low Pin Count) (standard ISA) la care sunt conectate cele mai lente dispozitive de I/O, adic canalele PS2 pentru tastatur i mouse. Probabil c n timp se va renuna la nivelul magistralei LPC, existnd tendina ca dispozitivele de I/O s devin mai rapide i migrarea ctre USB. n general creterea vitezei interfeelor face ca acestea s urce pe diagrama magistralelor. Un exemplu clar este interfaa Ethernet care la viteza de 10/100Mbps este conectat la magistrala PCI dar la viteza de 1Gbps este conectat la magistrala procesor.

    Unu nou tip de magistral, PCI Express (PCIe) are o alt filozofie a magistralelor, de la magistrale paralele la care fiecare linie este de semnal este un traseu clasic, la o magistral paralel care conine mai multe grupuri de linii de comunicaii seriale numite canale. Un canal conine 2 linii de transmisie seriale unidirecionale. Magistrala PCI Express poate conine un canal (PCIe x2), 2 canale (PCIe x4), .a.m.d. pn la 16 canale (PCIe x32). Arhitectura magistralei seamn cu arhitectura USB, viteza superioar fiind asigurat de un numr mai mare de canale seriale prin care se transfer date simultan.

    2.6.Microcontrollere

    n societatea actual aplicaiile cu microcontrollere devin din ce n ce mai variate. Microcontrollerul este un calculator ntr-un singur circuit integrat care conine o unitate de prelucrare de date, memorie i o gam larg de interfee. Numrul i tipul interfeelor depinde de tipul de microcontroller, care se alege n funcie de cerinele aplicaiei.

    Cteva aplicaii sunt date n figura 2.13.

    Microcontrollerul (MC) are schema bloc general simplificat din figura 2.14. n aceast schem sunt puse n eviden interfeele, numite i dispozitive de intrare ieire I/O.

    Unitatea central execut instruciunile din memoria program, pe care le primete prin magistrala de date. Arhitectura Harvard este posibil i rspndit la MC pentru c de regul instruciunile sunt stocate n memoria ROM iar datele n cea RAM. Modulele de interfa interne pot fi seriale sau paralele. Fiecare modul transfer date cu exteriorul prin intermediul registrului de date (RD). Modulul este comandat (configurat) de unitatea central prin intermediul unui registru de comenzi (RC) i se poate citi starea modulului prin registrul de stare (RS). De regul structura de baz a familiei conine anumite interfee considerate foarte importante (timer, canal serial de comunicaii) i linii de I/O grupate n porturi paralele de uz general. Pe structura de baz se adaug diferite tipuri de interfee care mpart liniile de intrare / ieire cu porturile paralele de uz general.

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    37

    Figura 2.13. Aplicaii cu microcontrollere, sursa http://blog.meti.in/general/bit-and-byte-of-a-microcontroller

    Figura 2.14. Schema bloc general simplificat a unui microcontroller

    BUS INTERN

    Unitate prelucrare date

    Unitate aritmetic i logic (ALU)

    Registre interne

    Memorie pentru programe

    Memorie pentru date

    RDRCRS

    http://blog.meti.in/general/bit-and-byte-of-a-microcontrollerhttp://blog.meti.in/general/bit-and-byte-of-a-microcontroller

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    38

    Blocurile interne ale MC sunt legate ntre ele printr-o magistral (bus) de date i una de adrese. Mrimea acestor magistrale constituie una dintre caracteristicile cele mai importante ale unui MC.

    Arhitectura Von Neuman prevede existena unui bus unic folosit pentru circulaia datelor i a instruciunilor. Cnd un controller cu o astfel de arhitectur adreseaz memoria pe linia de date se pune nti codul instruciunii apoi coninutul memoriei, accesul fiind realizat n 2 pai, deci destul de lent. Arhitectura Harvard prevede un bus separat pentru date i instruciuni.

    Timerul este modulul intern care realizeaz funciile de timp, fiind unul dintre modulele cele mai importante i des folosite. Modulele timer sunt foarte diferite ca i funcionaliti i complexitate, aspect de care trebuie inut cont la alegerea microcontroller-ului pentru aplicaiile sensibile la timp.

    De exemplu un vitezometru cu microcontroller pentru biciclet ar putea fi proiectat pe baza unui timer intern, figura 2.15. Timerul numr cte secunde (sau milisecunde) trec ntre 2 impulsuri de la senzorul pe spi. tiind circumferina roii, se poate afla spaiul parcurs n perioada de timp i astfel se poate calcula viteza bicicletei.

    Figura 2.15. Schema bloc simplificat a modului timer pentru aplicaia de determinare a vitezei unei biciclete (stnga) i un dispozitiv comercial (dreapta), sursa

    http://www.gasbike.net/speedometer-2682-2820-prd1.htm

    Un alt modul important este convertorul analog digital. O aplicaie n care este folosit acest modul este implementarea unei sigurane automate la supracurent pentru reeaua de 240V. Microcontrollerul citete n bucl valoarea curentului i o compar cu o valoare de referin. Dac curentul msurat este mai mare dect o anumit valoare microcontrollerul comand ntreruperea circuitului cu un releu, figura 2.16:

    Modul timer n microcontroller

    Alegere tact

    Tact sistem (intern) Tact de la un pin extern Numrtor 8-16 bii

    Senzor pe spi care d un impuls la fiecare rotire a roii

    Un impuls pe secund

    http://www.gasbike.net/speedometer-2682-2820-prd1.htm

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    39

    Figura 2.16. Schema bloc simplificat a unei aplicaii de tip siguran electronic cu microcontroller

    nainte de a face programul software care va rula pe microcontroller i va controla funcionarea aplicaiei este recomandat s se fac o schem logic a programului, figura 2.17. Schema logic arat succesiunea de comenzi necesar realizrii funcionalitii dorite.

    .

    Figura 2.17. Schema logic a programului siguranei electronice cu microcontroller

    Microcontroller

    Consumator (de exemplu un bec)

    Reea Convertor

    Analog Numeric

    Unitate prelucrare date

    Releu comandat de microcontroller

    IN

    CMP 0AH > 0

    Magnet permanent

    nfurri perpendiculare situate n cmp magnetic prin care trece curent

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    69

    Curentul care trece printr-o nfurare n cmp magnetic creeaz o for electrodinamic care mic lentila. Lentila fiind aezat pe 2 nfurri perpendiculare, ea poate fi comandat pe 2 direcii, de reglare a focalizrii (prin apropierea sau ndeprtarea de discul optic) sau de reglare a poziiei fine (tracking) prin micarea pe raza discului optic.

    n figura 3.18 este prezentat principiul reglrii fine a poziiei pe baza imaginii de pe detector.

    .

    Figura 3.18. Principiul reglrii fine a poziiei

    Pentru a mri cantitatea de informaie stocat pe un suport optic a fost realizat sistemul de stocare pe 2 nivele (dual layer), figura 3.19.

    Raza laser este focalizat pe unul sau cellalt dintre nivele, separarea dintre nivele fiind realizat cu un strat semitransparent i un spaiu de separare. Schimbarea focalizrii de la un nivel la altul este realizat prin comanda lentilei de poziionare i

    A B

    D C

    A B D C

    A B D C

    A BD C

    A BD C

    A BD C

    t

    A+C

    t

    B+D

    t

    A+C

    t

    B+D

    Pentru reglarea poziionrii se exploateazdiferena de faz la citire ntre zoneledetectorului. Defazajul este analizat iconstituie semnal de intrare pentrureglarea poziiei. n dreapta se vede c spotul luminos estela mijlocul detectorului, ceea ce nseamnc este exact pe pista de date. n acest cazdefazajul ntre A+C i B+D este zero. nstnga spotul nu este pe pist i diferenade defazaj va genera semnalul de eroarepentru reglarea poziiei Reglarea poziiei pe pist se face n 2 faze:1.Se aduce capul de citire scriere n poziiaaproximativ a datelor cu motorul decurent continuu de acionare. 2.Se corecteaz prin tracking pn seobine poziia exact i se citesc / scriudate; 3.Pista cu date este spiral, iar capul,urmrind datele se ndeprteaz demijlocul pistei, aa c procesul de urmrireeste unul dinamic.

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    70

    dureaz un timp de ordinul secundelor, ceea ce face ca gsirea informaiei la unitile dual layer s fie mai lent. Prin aceast metod de stocare capacitatea unui disc optic poate fi dublat.

    Figura 3.19. Principiul stocrii dual layer, sursa http://www.pcstats.com/articleview.cfm?articleID=2464

    Pentru scrierea pe suporturi optice se utilizeaz 2 metode:

    1. Stratul reflexiv se acoper cu vopsea transparent termosensibil care, nclzit de raza laser devine ntunecat, i astfel nu mai reflect la citire

    2. Stratul reflexiv se acoper cu substane care i pot schimba starea din amorf n cristalin i invers la nclzire. Metoda este aplicat i la mediile optice care pot fi rescrise. Se consider c citirea prin discurilor scrise cu aceast metod este mai dificil, diferena ntre reflexii fiind mai mic.

    Unitile au o parte electronic numit OPC Optimum Power Calibration care determin puterea optim emisiv a diodei laser.

    O caracteristic foarte important la mediile optice este durata de via. Aceasta este foarte important pentru situaiile n care informaii importante se stocheaz optic pentru un timp ndelungat, n firme unde exist obligativitatea pstrrii unor informaii pe perioad nelimitat sau chiar fotografii i documente de familie. Datele de catalog are mediilor optice arat c durata de via este de mai multe zeci de ani. Unele studii arat ns c media de via este de aproximativ 10 ani.

    Modul de depozitare al discurilor este foarte important, praful care zgrie suprafaa discurilor fiind o cauz pentru erorile de citire. De asemenea micarea discurilor produce zgrierea, aa c discurile dintr-o main au o durat de via medie de ordinul a 3 sau 4 ani. O cauz des ntlnit de distrugere a discului este faptul c discul nu este perfect echilibrat. Vibraia discului la citire poate produce zgrierea lui sau chiar spargerea. Vopseaua termosensibil care acoper stratul reflexiv este

    Etichet Policarbonat Strat reflectorizant Date nivel 1 Spaiu de separare Strat semireflectorizant Date nivel 0 Policarbonat

    Laser

    http://www.pcstats.com/articleview.cfm?articleID=2464

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    71

    sensibil la razele UV, de aceea expunerea la soare micoreaz durata de via. Astfel un disc se distruge dup cteva sptmni de expunere direct la soare.

    3.4.Concluzii

    Din acest capitol se poate vedea c stocarea datelor pe suporturi magnetice i optice sunt asemntoare, ceea ce dovedete o frumoas unitate a teoriei aplicate. Imagini sugestive ale zonelor nregistrate sunt date n figura 3.20 la un hard disc i n figura 3.21 la un CD.

    Figura 3.20. Imagine a datelor scrise pe un hard disc, sursa: http://en.wikipedia.org/wiki/Hard_disk_drive

    Figura 3.21. Imagine a datelor scrise pe un CD cu polimeri care reflect lumina, imagine mrit de 10000 de ori, sursa: http://www.polymersolutions.com/psi-

    newsletter-archive/november-psi

    http://en.wikipedia.org/wiki/Hard_disk_drivehttp://www.polymersolutions.com/psi-newsletter-archive/november-psihttp://www.polymersolutions.com/psi-newsletter-archive/november-psi

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    72

    Un exemplu de viziune unitar aplicat la diversele metode de stocare apare n tabelul din figura 3.22:

    Figura 3.22. Tabel comparativ al limitelor principiilor de stocare (sursa https://www.usenix.org/legacy/event/fast10/tutorials/T2.pdf )

    Analiza comparativ arat unitatea modurilor de stocare a informaiei. Principiile de stocare cu semiconductori, optice i magnetice pot fi comparate prin densitate i pre. n tabel sunt prezentate date pentru 3 principii de stocare semiconductoare (DRAM, NAND pe 1 bit i pe 2 bii), pentru hard discuri i uniti optice Blu-Ray. Se poate remarca c densitatea cea mai mare de stocare la ora actual este realizat la unitile de hard disc i cea mai mic la Blu-Ray. (Sursa R. Freitas, L. Chiu, Solid-State Storage: Technology, Design and Applications, IBM Almaden Research Center, 2010, http://static.usenix.org/event/fast10/tutorials/T2.pdf )

    Tendina actual este rspndirea din ce n ce mai mare a unitilor semiconductoare de stocare (hard discuri SSD, hard discuri hibride i memorii FLASH pe stick-uri). Unitile optice sunt din ce n ce mai puin utilizate.

    Mai multe detalii despre noiunile parcurse n capitolul 3 pot fi gsite n 15.Bibliografie, [20, 21, 22].

    https://www.usenix.org/legacy/event/fast10/tutorials/T2.pdfhttp://static.usenix.org/event/fast10/tutorials/T2.pdf

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    73

    4.Reele de calculatoare

    4.1.Codificarea datelor seriale

    Primul pas n transmiterea datelor digitale pe o linie de transmisie este asocierea fiecrui bit cu variaia unui semnal electric printr-un proces de codare.

    Cea mai simpl i natural codare este Codarea NRZ (Non Return to Zero) n care fiecare valoare logic se codeaz cu un nivel de tensiune.

    Regula de codare este: 1. Zero se codific cu 0V; 2. Unu se codific cu +5V.

    n figura 4.1 16 bii ntr-o succesiune aleas la ntmplare au fost codificai cu 7 tranziii (2,28 bii/tranziie). Dac apare un ir de 0-uri sau 1-uri semnalul electric nu are variaii. Intervalul de timp n care se codeaz un bit se numete celul bit (interval cu rou).

    Figura 4.1 Codarea NRZ

    Codarea Manchester a fost realizat prima oar la Universitatea din Manchester cu ocazia construirii calculatorului Baby n 1948.

    Regula de codare este: 1. Zero se codific cu un front descresctor; 2. Unu se codific cu un front cresctor.

    n figura 4.2. 8 bii ntr-o succesiune aleas la ntmplare au fost codificai 8 bii cu 12 tranziii (0,66 bii pe tranziie). Dac apare un ir de 0-uri sau 1-uri semnalul electric are variaii. Codarea Manchester se folosete la reeaua Ethernet.

    t

    1 1 0 1 1 1 0 0 1 0 0 0 1 1 0 0

    Tensiune

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    74

    Figura 4.2. Codarea Manchester

    O codare este asigur o vitez de transfer mai mare cu ct se pot trimite ct mai muli bii cu ct mai puine tranziii. Deci la codul NRZ au fost codificai n medie 2,28 bii cu o tranziie, iar la codul Manchester eficiena a fost mult redus, doar 0,66 bii cu o tranziie. Concluzia este c NRZ este mai eficient, dar NRZ are un dezavantaj, anume c nu este autosincronizabil, adic tactul la receptor nu se poate reface din datele transmise. Acest lucru se datoreaz faptului c la NRZ pot exista secvene lungi de bii de 1 sau 0 transmii pentru care nu exist tranziii pe linia de transmisie. Acest dezavantaj a fost determinant pentru ca reeaua Ethernet s utilizeze codarea Manchester.

    4.2.Istoric, topologie i mediul de transmisie

    Ethernet este denumirea unei familii de tehnologii de reele de calculatoare bazat pe transmisia cadrelor i utilizat la implementarea reelelor locale LAN. Numele provine de la cuvntul englez ether (tradus: eter), despre care mult vreme s-a crezut c este mediul n care acionau i comunicau zeitile. Ethernet-ul se definete printr-un set de standarde pentru cablare i semnalizare electric aparinnd primelor dou niveluri din modelul OSI - nivelul fizic i legtur de date.

    Ethernet-ul este standardizat de IEEE n seria de standarde IEEE 802.3. Aceste standarde permit transmisia datelor prin mai multe medii fizice, cum ar fi:

    cabluri coaxiale, folosite n primele reele Ethernet, n topologie bus;

    cabluri torsadate, pentru conectarea sistemelor individuale la reea, n topologie stea;

    cabluri de fibr optic, pentru vitez i debit mare de date.

    Istoricul Ethernet ncepe n 1973 la Centrul de Cercetri de la Palo Alto al corporaiei Xerox PARC, cnd Robert Metcalfe a proiectat i testat prima reea. El a dezvoltat metode fizice de cablare ce conectau dispozitive pe Ethernet i standardele de comunicaie pe cablu. Iniial, comunicaia se desfura la viteza de cca. 3 Mbps, pe un singur cablu, partajat de toate dispozitivele din reea. Acest lucru a permis extinderea reelei fr a necesita modificri asupra dispozitivelor existente n reea.

    0 1 1 0 0 0 1 1

    t

    Tensiune

  • Petre Ogruan, Calculatoare electronice ISBN 978-606-19-0757-1

    75

    n 1979 Digital Equipment Corporation (DEC) i Intel s-au asociat cu Xerox pentru standardizarea sistemului. Prima specificaie a celor trei companii, denumit Ethernet Blue Book, a fost lansat n 1980, cunoscut sub denumirea DIX standard. Era un sistem pe 10 Mbit/s ce utiliza cablu coaxial gros ca backbone n interiorul unei cldiri, cu cabluri coaxiale subiri legate la intervale de 2.5 m pentru a conecta staiile de lucru.

    IEEE (Institute of Electrical and Electronic Engineers) a lansat n 1983 standardul oficial Ethernet denumit IEEE 802.3 dup numele grupului de lucru care a rspuns de dezvoltarea sa. n 1985 a lansat versiunea 2 (IEEE 802.3a) cunoscut sub denumirea Thin Ethernet sau 10Base2, n acest c