Sunteți pe pagina 1din 5

AuP

1. Enumerați diferențele existente între un calculator de uz general (PC) şi un sistem


embedded.

Calculatoare de uz general1 Dispozitive embedded

Pot efectua sarcini diverse (divertisment, calcule Efectuează o sarcină sau un număr mic de sarcini
matematice, comunicaţii etc.) atâta timp cât există predefinite într‐un mod eficient și la costuri cât mai
o aplicaţie (program – software) şi resursele scăzute.
necesare efectuării ei.

Nu implică constrângeri de procesare sau O bună parte din aceste sisteme necesită performanțe
prelucrare a datelor de timp real. Constrângerile de timp real pentru asigurarea siguranței și funcțiilor
existente țin doar de fluența comunicării, echipamentelor în care sunt incluse.
prezentării informațiilor către un utilizator (de
confortul acestuia).

Toate calculatoarele personale au o arhitectură ce Dispozitivele embedded nu respectă nici un standard


respectă un anumit standard. (fiind de altfel de o diversitate rar întâlnită).
Arhitectura acestora este specifică: sarcinii pe care
trebuie să o îndeplinească şi mediului de lucru.

În cea mai mare parte a lor sunt sisteme În cea mai mare parte a lor sunt părți componente a
independente. unui sistem mult mai complex.

Dezvoltarea programelor se poate realiza pe Dezvoltarea aplicaţiei software ce va rula pe aceste


acelaşi sistem pe care vor rula. dispozitive este realizată de cele mai multe ori pe un
alt sistem (PC), care de cele mai multe ori au
arhitecturi diferite decât cele pe care va rula
programul.

Dispozitive mecanice de tipul hardisk (HDD) Stocarea se realizează pe medii SSSD (solid state
stochează programele software şi sistemul de storage devices) – gen memorii flash. Aceste
operare (SO). HDD oferă de asemenea capacităţi dispozitive nu au părți mecanice în mişcare iar
suplimentare de stocare pentru diversele capacitatea lor medie de stocare este net inferioară
necesităţi ale utilizatorului. HDD.

Constrângerile de consum a acestor sisteme nu Funcție de aplicația specifica în care aceste sisteme
sunt foarte limitative, din acest motiv consumul sunt utilizate constrângerile de consum pot fi extrem
este mult mai mare ca al sistemelor embedded. de dure, existând familii întregi de dispozitive care sunt
optimizate doar pentru un consum redus. În genere
consumul dispozitivelor embedded este mult mai mic
decât al calculatoarelor de uz general.

Fiabilitatea este medie, fiind dată în principal de Sunt sisteme de înaltă fiabilitate. Datorită rolului critic
evoluțiile tehnologice și de prețul pe care pe care îl îndeplinesc (comanda și controlul diferitelor
utilizatorul sistemului este dispus să îl plătească. echipamente industriale, auto sau, de exemplu, în
Acestea sisteme sunt de altfel bunuri de larg industria aeronautică), cea mai mare parte din aceste
consum. sisteme trebuie să aibă o fiabilitate foarte ridicată.

2. Definiți noțiunea de arhitectură a unui procesor.


Prin arhitectura unui sistem de tip IoT sau embbedded înțelegem modalitatea prin care
diferitele componente ale unui astfel de sistem sunt conectate între ele. Arhitectura unu
microprocessor precizeaza conceptele fundamentale ce stau la baza constructiei interne
a acestuia, definind structura care sustine si care se afla in spatele modului de
manipulare a datelor .

3. Enumerați 4 arhitecturi diferite :


 IA-32 (Intel Architecture 32-bit) cunoscută publicului larg sub denumirea
X86,X86-32 sau I386;
 ARM (Advanced RISC Machines) este o arhitectură RISC pe 32 și pe 64 de biţi
 MIPS (Microprocessor without Interlocked Pipeline Stages) este o arhitectură de tip
RISC ce a stat la baza dezvoltării unei întregi familii de microprocesoare pe 32
sau pe 64 biţi.
 SH sau SuperH a fost la origine o arhitectură de tip RISC pe 32 de biţi

4. Testul Dhrystone.

Dhrystone este un test, un benchmark, sintetic – deci este un program proiectat


săefectueze cele mai reprezentative elemente (reprezentative din punct de vedere
statistic)ce se regăsesc în orice tip de aplicație. Testul determină un indice de
performanță pentru operațiile de tip întreg a unui anumit tip de procesor.Acest tip de test
nu implică nici un fel de analiză a capabilităților procesorului de a lucra cu numere și
operații în virgulă mobilă. Benchmark-ul Dhrystones caută să caracterizeze viteza de
execuție a unui CPU pe baza unor activități caracteristice unei clase largi de aplicații
generice. În cadrul acestui test sunt executate o serie largă de elemente fundamentale
ale limbajului de programare și diferite operații specifice, caracteristice precum: apeluri
de funcții, decizii logice, lucru cu pointeri, diferite tipuri de atribuiri, lucrul cu diferite
structuri de date, operații aritmetice simple, operații cu string-uri etc. Acest test nu
execută nici o operație de tip I/O (intrare/ieșire) sau apeluri de funcții ale sistemului de
operare. În final ieșirea acestui program este numărul de Dhrystones pe secundă, mai exact
numărul de iterații realizate ale buclei principale a programului pe unitatea de timp – deci
pe secundă.

5. Testul Linpack

Testul Linpack măsoară puterea de calcul în virgulă mobilă a unui sistem – operații
reprezentate pe numere în virgulă mobilă pe 64 de biți.
Acest test cuantizează cât de repede un sistem este capabil să rezolve un sistem de n
ecuații cu n necunoscute de tipul Aꞏ x = b (unde: A este o matrice n x n, x este vectorul
necunoscutelor de tip n x 1, iar b este un vector de valori n x 1). În cadrul testului
LINPACK 100 matricea A are un ordin egal cu 100. În timp ce în cadrul testului
LINPACK 1000 matricea A este de tipul 1000 x 1000.
Ultima versiune a acestui test, denumită HPLinpack (Linpack’s Highly Parallel
Computing benchmark), a fost dezvoltată pentru testarea performanțelor sistemelor de
calcul paralele și este cea utilizată în determinarea celor mai performante 500 de
calculatoare din întreaga lume – TOP500.

6. Ce semnificație are parametrul MIPS? Million Instructions Per Second


7. Explicați conceptual modalitatea de diminuare a consumurilor dinamice prin existența
mai multor procesoare diferite.

Observăm existența mai multor procesoare care lucrează în segmente de timp distincte
pentru a reduce consumul de energie global al sistemului cât mai mult posibil.
De exemplu CC2650 are trei astfel de procesoare. Primul dintre ele este un Cortex-M0
dedicat gestionării tuturor sarcinilor radio Bluetooth de nivel scăzut pentru sistem. Acest
ARM Cortex M0 (CM0) este responsabil atât pentru interfața cu partea de radiofrecvență,
cât și pentru traducerea instrucțiunilor complexe de la ARM Cortex M3 (CM3) în biți care
sunt transmiși pe calea aerului prin modemul radio. Acest lucru elimină o parte din
sarcinile CPU-ul principal. Pentru protocolul Bluetooth Low Energy, CM0
implementează stratul PHY (Physical Layer) al stivei de protocol. De multe ori, CM0 este
capabil să funcționeze în mod autonom, ceea ce eliberează CM3 pentru protocoale de
nivel superior și procesarea layer-urilor de aplicație. CM3 comunică cu CM0 printr-o
interfață hardware numită doorbell.
Cel de al doilea procesor este un ARM Cortex-M3 (CM3) care este procesorul
principal al platformei SimpleLink. CM3 lucrează la o viteză maximă de 48 MHz la care
consumă mai puțin de 3 mA [Monnier, 2015]. Acest procesor oferă toată performanța
necesară pentru a servi ca MCU autonom, care poate gestiona în mod inteligent un sistem
bazat pe senzori. CM3 este proiectat să ruleze stack-ul protocolului BLE de la stratul de
legătură până la stratul aplicației utilizatorului. Stratul de legătură interfațează cu nucleul
radio printr-un modul software numit driverul RF, care se află deasupra RF doorbell.
Driverul RF rulează pe CM3 și acționează ca o interfață radio pentru CC2650 și
gestionează, de asemenea, domeniile de putere ale nucleului radio. Deasupra driverului
RF este setul de protocoale TI Bluetooth low energy. Cortex-M3 oferă o mare putere de
procesare pentru a gestiona aplicația și stiva de protocoale Bluetooth LE la nivel înalt și
este extrem de eficientă din punct de vedere energetic, cu o putere de procesare de 48
MIPS.
Controller-ul de senzori (SCE – sensor controller engine) este un MCU integrat pe 16
biți, cu o putere atât de calcul cât și consumată extrem de scăzută, se ocupă de
monitorizarea rapidă și eficientă a senzorilor. Acesta este conceput pentru a oferi doar
nivelul necesar de putere de procesare pentru eșantionarea datelor și luarea deciziilor
simple în legătură cu informația preluată de la senzorilor. În plus, memoria este limitată și
nu are periferice externe. SCE a fost proiectat să lucreze autonom de restul sistemului care
este într-un mod de lucru specific pentru reducerea consumului de energie. Acest lucru îl
face extrem de eficient pentru sarcini cum ar fi verificarea regulată a ieșirii unui senzor și
determinarea producerii unui anumit eveniment. El execută toate sarcinile legate de
senzori și evită cât mai mult să trezească procesorul principal când acest lucru nu este
necesar.

8. Scalarea dinamică a tensiunii și frecvenței - Dynamic voltage and frequency scaling


(DVFS).

În modul de lucru Dynamic voltage and frequency scaling (DVFS) programul


software ce rulează pe SoC determină schimbarea frecvențelor de lucru a diferitelor părți
componente ale SoC-ului funcție de necesitățile practice ale celorlalte componente ce
rulează pe sistem. Aceasta este o tehnică clasică de optimizare a consumului aplicată și
utilizată pe larg în cadrul dispozitivelor portabile (laptop-uri, telefoane mobile etc.). Ideea
fundamentală a tehnicii DVFS este aceea de a defini un număr de puncte de operare OPP
(Operating Power Points) în care SoC va funcționa cu certitudine, iar ulterior funcție de
încărcarea procesorului sau a procesoarelor interne o aplicație software a SO, care
analizează în mod continuu încărcarea procesorului sau a procesoarelor, va comunica cu
circuitele regulatoare de tensiune și cu cele care generează semnalele de tact astfel încât
SoC să opereze în unul din aceste puncte. În noul mod de lucru – caracterizat de o nouă
tensiune de alimentare și frecvență de lucru, procesorul sau procesoarele încă mai sunt
capabile să răspundă cerințelor de încărcare computațională a aplicațiilor. Deoarece
consumul este direct proporțional cu tensiunea de alimentare (P = V2 / R) și cu frecvența
de lucru a sistemului (cu numărul de treceri prin regiunea liniară a porții) acesta este
influențat de acești doi parametrii.

9. Scalarea adaptivă a tensiunii - Adaptive voltage scaling (AVS).

Tehnica de adaptare dinamică a tensiunii de alimentare, AVS, atunci când temperatura


SoC și încărcarea procesorului sau a procesoarelor componente permite, este cunoscută
sub denumirea tehnică de SmartReflex™. Dar, această denumire comercială,
SmartReflex™, este utilizată în mod global pentru a descrie toate cele trei tehnici
prezentate în mod succint anterior.

Această tehnică are la bază un fenomen existent în cadrul liniilor tehnologice de


realizare a circuitelor SoC. Astfel, datorită dispersiei tehnologice vor exista întotdeauna
dispozitive performante (cunoscute sub diferite nume de jargon de tipul: “hot”, “strong”
sau “fast”) care pentru o anumită frecvență specifică de lucru vor necesita o tensiune
mai scăzută de lucru în timp ce alte dispozitive (“cold”, “weak” sau “slow”) pentru
aceeași frecvență de lucru vor necesita o tensiune de alimentare mai mare.
În mod clasic producătorii circuitelor, pentru a fi siguri că acestea funcționează la o
frecvență nominală de, să zicem, 125 MHz setează tensiunea de alimentare a tuturor
dispozitivelor la o valoare de 0.95 V (tensiunea V1) astfel încât chiar și cele mai “slabe”
dispozitive (caracteristica „Cold Device” din Figura 3.11) cu certitudine vor fi capabile să
lucreze la această frecvență, în timp ce dispozitivele cele mai performante ar putea
teoretic să lucreze la o frecvență de peste 200 MHz dar vor lucra doar la 125 MHz. Prin
intermediul tehnicii adaptive SmartReflex™ dacă un dispozitiv performant (caracteristica
“Hot Devices” din Figura 3.11) este introdus într-un astfel de sistem alimentat la 0.95 V
datorită mecanismului de reglare intern al SoC tensiune exterioară va fi scăzută automat la
0.85 V sau chiar 0.83 V (tensiunea V2) tensiuni la care dispozitivul încă poate să lucreze
fără nici o problemă în schimb consumul lui se reduce în mod corespunzător.
Acest mecanism de reglare este independent de utilizatorul sistemului și caută să
optimizeze în mod dinamic tensiunea funcție de dispersia tehnologică, temperatură și
funcție de îmbătrânirea inerentă a siliciului. Mecanismul software DVFS alege un anumit
punct de funcționare pentru SoC conform încărcării computaționale în timp ce
mecanismul hardware AVS va regla incremental tensiunea exterioară până în momentul
în care procesorul mai este încă capabil să funcționeze, dar la tensiunea minimă.
Mecanismele AVS și DVFS sunt complementare și sinergice căutând să optimizeze
consumul SoC în conformitate cu necesitățile computaționale momentane.
Din cauza mecanismelor existente de control continuu a tensiunii externe și a
frecvenței de operare (AVS și DVFS), SoC din familia OMAP35x necesită existența unor
circuite analogice suport externe (regulatoarele de tensiune) cu care trebuie să comunice
continuu prin intermediul unui bus I2C. Soluția completă pentru familia OMAP35x este
dată de circuitul suport TPS65950. Alte circuite cum sunt TPS65930 și TPS65920 pot fi
de asemenea utilizate dar nu oferă flexibilitatea circuitului TPS65950.

10. Comutarea dinamică a puterii - Dynamic power switching (DPS)

Tehnica Dynamic power switching (DPS) analizează în mod continuu funcționarea


diferitelor blocuri constitutive ale SoC. În momentul în care un anumit bloc și-a finalizat
activitatea, ne mai fiind necesar în continuare este trecut în mod automat într-un mod de
consum redus. Utilizarea acestei tehnici implică existența unei topologii insulare a
circuitului și tăierea alimentării diferitelor blocuri individuale în parte. Variabilitatea
consumului în momentul utilizării mecanismului DPS și atunci când acesta nu este
prezent în cadrului unui SoC se prezintă în Figura 3.12. Necesitatea utilizării acestui
mecanism devine evidentă atunci când transferăm datele (de exemplu o imagine) prin DMA
sau EDMA și o unitate de tip CPU trebuie să aștepte sosirea întregului pachet de date, atunci
când se așteaptă ca acceleratorul grafic să termine de prelucrat datele sau chiar atunci când
acceleratorul grafic nu este utilizat și poate fi închis. Avantajul acestei tehnici de reducere a
consumului stă în faptul că controlul consumului diferitelor blocuri funcționale este
transparent utilizatorului fiind realizat independent de controlul acestuia.
11. Prezentați conceptele fundamentale ale arhitecturii CISC