Sunteți pe pagina 1din 14

Facultatea de Inginerie și

Tehnologia informației

Introducere

Arhitectura sistemelor de calcul, an I

Piroska Haller
piroska.haller@ umfst.ro
Pentru uz intern
Este interzisă copierea și distribuirea neautorizată a acestui material.
Referințe bibliografice
• Donzellini, G., Oneto, L., Ponta, D., and Anguita, D. (2018). Introduction to Digital
Systems Design. Springer.
• Gabbrielli, M. and Martini, S. (2010). Programming languages: principles and
paradigms. Springer Science & Business Media.
• Hennessy, J. L. and Patterson, D. A. (2011). Computer architecture: a quantitative
approach. Elsevier.
• LaMeres, B. J. (2019). Introduction to logic circuits & logic design with VHDL. Springer.
• Nisan, N. and Schocken, S. (2008). The elements of computing systems: building a
modern computer from first principles. MIT press.
• Patterson, D. A. and Hennessy, J. L. (2016). Computer Organization and Design ARM
Edition: The Hardware Software Interface. Morgan kaufmann.
• Shen, J. P. and Lipasti, M. H. (2013). Modern processor design: fundamentals of
superscalar processors. Waveland Press.
• Tanenbaum, A. S. (2016). Structured computer organization. Pearson Education.

Este interzisă copierea și distribuirea neautorizată a acestui material.


Cerințe
• Proiectarea unui sistem simplu bazat pe Arduino
/ESP 8266 pe parcursul orelor de laborator
• 40% din nota finală

• Proiectarea unor componente ale sistemelor de


calcul pe baza principiilor învățate la curs pe
parcursul modulului
• 40% din nota finală

• Examen sumativ final


• 20% din nota finală

Este interzisă copierea și distribuirea neautorizată a acestui material.


Noțiuni fundamentale
• Sistem
• mulțime de componente interconectate
• formează o unitate
• intrări, ieșiri
• interacționează cu mediul înconjurător
• implementează un set de transformări (funcții, operații)
• funcții fixe stabilite la proiectare
• funcții ce pot fi modificate prin intrările speciale ale sistemului
• funcții adaptive care se schimbă determinist sau probabilistic în
funcție de intrări și starea sistemului
• O componentă nu poate fi la rândul ei sistem?
• Studiem sistemele din punct de vedere al structurii
lor interne, sau din punct de vedere funcțional

Este interzisă copierea și distribuirea neautorizată a acestui material.


Noțiuni fundamentale
• Arhitectura
• o descriere formală a sistemului
• pune în evidență structura dar și comportamentul
sistemului
• model

Un model este doar o aproximare a sistemului real, o


simplificare a acestuia cu scopul de a defini, explica,
înțelege aspectele importante, principiile generale

• Cunoscând arhitectura unui sistem se poate


îmbunătății, crește performanța, propune soluții noi

Este interzisă copierea și distribuirea neautorizată a acestui material.


Noțiuni fundamentale
• Calculator
• transformă un set de date de intrare în date de ieșire
• set de instrucțiuni predefinite
• ordinea de execuție a instrucțiunilor va fi stabilită dinamic
prin intrări speciale
• Enumerați exemple de sisteme de calcul pe baza
definiției de mai sus!

• Identificați noțiunile de bază ale modelului descris!

Este interzisă copierea și distribuirea neautorizată a acestui material.


Nivele de abstractizare
• Descrierea unui sistem de calcul pe mai multe nivele
formale:
• algoritm
• limbaje de programare
• setul de instrucțiuni al sistemului de calcul (ISA)
• micro-arhitectură
• transfer registre
• porți
• circuite
• fenomene fizice
• Cele evidențiate vor fi studiate în acest curs

Este interzisă copierea și distribuirea neautorizată a acestui material.


Algoritm
• Reprezentarea
informației - date
• O secvență de
instrucțiuni executate
după un set de reguli
predefinit - program
• Introducerea și
rularea algoritmilor
definiți de utilizator

Este interzisă copierea și distribuirea neautorizată a acestui material.


Paradigme de programare
• Paradigma imperativă
• setul de instrucțiuni, variabile stocate în locații predefinite,
controlul explicit al secvenței de execuție al instrucțiunilor
• în urma instrucțiunilor executate variabilele își schimbă
valoarea
• programatorul va impune controlul secvenței de execuție prin
instrucțiuni speciale
• Paradigma declarativă
• se bazează pe compunerea funcțiilor fără atribuiri și iterații
• nu operează cu stări și cu variabile stocate
• controlul fluxului va fi generat automat de mașina abstractă ce
va evalua expresiile
• permite verificarea formală a corectitudinii algoritmilor

Este interzisă copierea și distribuirea neautorizată a acestui material.


Model simplificat de calcul
• bazat pe modelul limbajelor imperative
• optimizat pentru executarea programelor scrise în
limbaje imperative
• set de instrucțiuni logice și aritmetice
• set de instrucțiuni de control
• set de instrucțiuni de transfer
• variabile stocate
• rezultate stocate în variabile
! Corectitudinea algoritmilor greu de verificat formal!

Este interzisă copierea și distribuirea neautorizată a acestui material.


Mașina Turing

• Cel mai simplu model de calcul


• Orice funcție matematică calculabilă, orice algoritm
poate fi implementat pe mașina Turing!
• Memoria calculatorului este o bandă magnetică fără
capete (infinită), capabil de a stoca simboluri
• Setul de instrucțiuni:
• schimbă simbolul de pe bandă de la poziția curentă
• poziționează capul de citire cu o poziție la dreapta
• poziționează capul de citire cu o poziție la stînga
• oprește sistemul.

Este interzisă copierea și distribuirea neautorizată a acestui material.


Sisteme digitale
• Datele și instrucțiunile sunt reprezentate de numere
scrise în baza 2, folosind doar 2 simboluri: 0, 1
• O singură cifră binară este unitatea de bază - bit
• Ușor de implementat cu elemente fizice ce au doar 2
stări (întrerupător)
• Semnalul abstract care variază în timp dar are 2 stări
– semnal digital
• Ce viteză de variație are semnalul la trecerea din
starea 0 în starea 1?

Este interzisă copierea și distribuirea neautorizată a acestui material.


Semnale

• Semnalul analogic este continuu și variază în timp, iar


tensiunea va avea un număr infinit de valori reale
• Semnalele digitale reale:
• continue
• viteză de variație finită
• distorsiuni datorate:
componentelor fizice,
zgomotelor, interferențelor

Este interzisă copierea și distribuirea neautorizată a acestui material.


Scopul cursului
• De a înțelege din perspectiva programatorului
interfața dintre soft și hard
• De a înțelege cum influențează componentele hard
performanța unui program
• De a dezvolta aplicații având performantă mai bună
• De a înțelege cum a influențat dezvoltarea soft
arhitectura sistemelor noi
• De a proiecta componente noi, de a interfața
sistemele existente cu echipamente
• De a propune noi principii de funcționare a
sistemelor de calcul

Este interzisă copierea și distribuirea neautorizată a acestui material.

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