sisteme de calcul dedicate -...

Post on 19-Feb-2018

240 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Sisteme de calcul dedicate

Prof. Zoltan Francisc BaruchDepartamentul de CalculatoareUniversitatea Tehnică din Cluj-Napoca

Informații despre curs

•NotarePrezentarea unei teme (30%) sau implementarea unei aplicații (50%)

Examen (70% sau 50%)

•Pagini webhttp://users.utcluj.ro/~baruch/ro/

Cursuri Sisteme de calcul dedicate

Sisteme de calcul dedicate (01) 03.10.2017 2

Bibliografie (1)

•Vahid, Frank; Givargis, Tony: Embedded System Design – A Unified Hardware/Software Introduction, John Wiley & Sons, 2002, ISBN 0-471-38678-2

03.10.2017 Sisteme de calcul dedicate (01) 3

Bibliografie (2)

•Marwedel, Peter: Embedded System Design, Springer, 2006, ISBN 0-387-29237-3

03.10.2017 Sisteme de calcul dedicate (01) 4

Bibliografie (3)

•Catsoulis, John: Designing Embedded Hardware, Second Edition, O’Reilly Media, 2005, ISBN 0-596-00755-8

03.10.2017 Sisteme de calcul dedicate (01) 5

Bibliografie (4)

•Barr, Michael; Massa, Anthony: Programming Embedded Systems with C and GNU Development Tools, Second Edition, O’Reilly Media, 2006, ISBN 0-596-00983-6

03.10.2017 Sisteme de calcul dedicate (01) 6

Bibliografie (5)

•Yaghmour, Karim: Building Embedded Linux Systems, O’Reilly Media, 2003, ISBN 0-596-00222-X

03.10.2017 Sisteme de calcul dedicate (01) 7

Bibliografie (6)

•Hollabaugh, Craig: Embedded Linux: Hardware, Software, and Interfacing, Addison-Wesley/Pearson Education, 2002, ISBN 0-672-32226-9

03.10.2017 Sisteme de calcul dedicate (01) 8

Cuprins

1. Introducere

2. Modele și limbaje pentru specificația sistemelor

3. Interfețe de comunicație

4. Periferice pentru sisteme dedicate

5. Microcontrolere

6. Procesoare dedicate

7. Dezvoltarea programelor

8. Implementarea sistemelor dedicate

Sisteme de calcul dedicate (01) 03.10.2017 9

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 10

Sisteme de calcul dedicate (1)

•Sisteme de calcul: sunt produse milioane de sisteme în fiecare anPCCalculatoare portabile ServereSupercalculatoare

•Sisteme de calcul înglobate (“embedded”): sunt produse miliarde de sisteme în fiecare an

Sisteme de calcul dedicate (01) 03.10.2017 11

Sisteme de calcul dedicate (2)

•Definiții:Sistem de calcul încorporat într-un anumit dispozitiv electronic •Este dedicat pentru o anumită funcție particulară

•Nu este vizibil direct de către utilizator

Orice sistem de calcul diferit de un calculator de uz general

•Există zeci de sisteme de calcul dedicate în fiecare locuință și automobil

Sisteme de calcul dedicate (01) 03.10.2017 12

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 13

Aplicații (1)

•Automobile

ABS (Anti-lock Braking System)

ESP (Electronic Stability Program)

Airbag

Controlul transmisiei

Suspensie activă

Cheie inteligentă

Comunicație

Sisteme de calcul dedicate (01) 03.10.2017 14

Aplicații (2)

•Trenuri

•Aeronave

•Telecomunicații

Sisteme de calcul dedicate (01) 03.10.2017 15

Aplicații (3)

•Sisteme medicale

•Aplicații militareRadare

Sisteme de navigație

Armament

Sisteme de calcul dedicate (01) 03.10.2017 16

Aplicații (4)

•Electronică de consumAparate TV

Decodoare TV

Aparate foto digitale

Telefoane mobile

Calculatoare portabile

Aparate GPS

Console de jocuri

Aparate DVD, MP3

Sisteme de calcul dedicate (01) 03.10.2017 17

Aplicații (5)

•Echipamente de birouCopiatoare

Imprimante

Scanere

•Aparate electrocasniceCuptoare cu microundeTermostate

Maşini de spălat

Sisteme de securitate

Sisteme de calcul dedicate (01) 03.10.2017 18

Aplicații (6)

•Automatizări industriale

•Construcții

Sisteme de calcul dedicate (01) 03.10.2017 19

Aplicații (7)

•Robotică

(“Johnnie”, © H. Ulbrich,

F. Pfeiffer, UT München)

Sisteme de calcul dedicate (01) 03.10.2017 20

Aplicații (8)

•Componente pentru calculatoareProcesoare de 8 biți•Interfață USB•Tastatură, mouse

Procesoare de 32 biți•Unități de discuri

•Plăci de rețea

•Interfețe IR, Bluetooth

Sisteme de calcul dedicate (01) 03.10.2017 21

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 22

Caracteristici (1)

•Siguranța Numeroase sisteme de calcul dedicate trebuie să fie sigure

Exemple: centrale nucleare, aeronave, trenuri, automobile

Siguranța include mai multe aspecte:•Fiabilitatea

•Mentenabilitatea

•Disponibilitatea

•SecuritateaSisteme de calcul dedicate (01) 03.10.2017 23

Caracteristici (2)

•Eficiența Se pot utiliza mai multe metrici pentru evaluarea eficienței

Energia consumată•Dispozitive mobile alimentate de la o baterie

•Cerințele computaționale cresc cu o rată rapidă

Dimensiunea codului •Întregul cod trebuie memorat de către sistem

•Exemplu: SoC (System on a Chip)

Sisteme de calcul dedicate (01) 03.10.2017 24

Caracteristici (3)

Eficiența de implementare •Cerințele funcționale trebuie implementate

utilizând resurse minime •Resurse hardware minime •Consum de energie redus tensiunea de

alimentare; frecvența semnalului de ceas

Greutatea •Sistemele portabile trebuie să fie ușoare

dimensiune redusă

Costul•Costul redus este esențial în special pentru

electronica de consum

Sisteme de calcul dedicate (01) 03.10.2017 25

Caracteristici (4)

•Executarea unei funcții uniceSunt dedicate pentru o anumită aplicațieExecută un singur program, în mod repetat

•Executarea altor programe ar reduce siguranța •Ar fi necesare resurse neutilizate reducerea

eficienței

Excepții: •Actualizarea programului cu o nouă versiune•Executarea alternativă a mai multor programe

•Interfață dedicată cu utilizatorulButoane, manete, volane, pedale

Sisteme de calcul dedicate (01) 03.10.2017 26

Caracteristici (5)

•Constrângeri de timp realTrebuie să se calculeze rezultatele într-o anumită fereastră de timp•Reducerea calității •Funcționarea impredictibilă

Exemplu: controlul vitezei de croazieră al unui automobilLa sistemele în timp real, un răspuns garantat trebuie explicat fără argumente statistice (de exemplu, performanța sau întârzierea medie)

Sisteme de calcul dedicate (01) 03.10.2017 27

Caracteristici (6)

•Sisteme reactive Se află în interacțiune continuă cu mediul monitorizează intrările

Operațiile executate depind de acel mediu

Automatele sunt modele potrivite pentru aceste sisteme

•Sisteme hibride Conțin atât o parte analogică, cât și una digitală

Sisteme de calcul dedicate (01) 03.10.2017 28

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 29

Tehnologii de procesoare

•Arhitectura de calcul utilizată pentru implementarea funcției sistemului

•Tehnologii:Procesoare de uz general → microprocesoare

Procesoare dedicate → coprocesoare, acceleratoare, periferice

Procesoare specifice aplicației → ASIP (Application-Specific Instruction-set Processor)

Sisteme de calcul dedicate (01) 03.10.2017 30

Procesoare de uz general (1)

•Programabile pentru diferite tipuri de aplicații

•Caracteristici:Existența unei memorii de program

Cale de date generală: număr mare de registre; una sau mai multe UAL generale

•Avantaje:Timp și costuri de proiectare reduse

Flexibilitate ridicată

Costuri unitare reduse pentru cantități miciSisteme de calcul dedicate (01) 03.10.2017 31

Procesoare de uz general (2)

•Dezavantaje:Costuri unitare relativ ridicate pentru cantități mari

Performanțe reduse pentru anumite aplicații

Dimensiuni mari

Energie consumată ridicată

•Exemplu: Procesor de uz general pentru însumarea elementelor unui tablou

Sisteme de calcul dedicate (01) 03.10.2017 32

Cale de dateControler

Procesoare de uz general (3)

Sisteme de calcul dedicate (01) 03.10.2017 33

IR PC

Set de

registre

UAL

general

Memorie

de program

Cod în limbaj de

asamblare

pentru:

suma = 0;

for i =0 to …

Logică de

control și

registru de

stare

Memorie

de date

Procesoare dedicate (1)

•Circuite digitale proiectate să execute un singur programCoprocesoare, acceleratoare, periferice

•Avantaje:Performanțe ridicate

Dimensiuni mici

Energie consumată redusă

Costuri unitare reduse pentru cantități mari

Sisteme de calcul dedicate (01) 03.10.2017 34

Procesoare dedicate (2)

•Dezavantaje:Timp și costuri de proiectare ridicateFlexibilitate redusăCosturi unitare ridicate pentru cantități mici

•Exemplu: Procesor dedicat pentru însumarea elementelor unui tablouCalea de date conține numai componentele esențiale pentru execuția programuluiNu este necesară o memorie de program

Sisteme de calcul dedicate (01) 03.10.2017 35

Procesoare dedicate (3)

Sisteme de calcul dedicate (01) 03.10.2017 36

Cale de dateControler

Logică de

control

Registru de

stare

Memorie

de date

index

suma

+

Procesoare specifice aplicației (1)

•ASIP – procesor programabil optimizat pentru o clasă de aplicații cu caracteristici comune

Se poate optimiza calea de date

Compromis între procesoarele de uz general și cele dedicate

Microcontrolere și procesoare de semnal

•Avantaje:

Flexibilitate și performanțe ridicate

Energie consumată și dimensiuni reduse

Sisteme de calcul dedicate (01) 03.10.2017 37

Procesoare specifice aplicației (2)

•Dezavantaje:Costuri ridicate pentru proiectarea procesorului și realizarea compilatorului

•MicrocontrolereMicroprocesoare optimizate pentru aplicații dedicateCale de date simplăOperații la nivel de bitConțin periferice tipice: UART, numărătoare, contoare de timp, convertoare N/A și A/N

Sisteme de calcul dedicate (01) 03.10.2017 38

Procesoare specifice aplicației (3)

•Procesoare de semnal (DSP)Microprocesoare proiectate pentru operații tipice asupra semnalelor digitale

Necesită operații aritmetice intensive: înmulțire și adunare, deplasare și adunare

UAL specializate, de exemplu: A = A + M[i] *k

Creșterea vitezei: citirea secvențială a locațiilor de memorie în paralel cu alte operații

Sisteme de calcul dedicate (01) 03.10.2017 39

Cale de dateControler

Procesoare specifice aplicației (4)

Sisteme de calcul dedicate (01) 03.10.2017 40

IR PC

Registre

UAL

specific

Memorie

de program

Cod în limbaj de

asamblare

pentru:

suma = 0;

for i =0 to …

Logică de

control și

registru de

stare

Memorie

de date

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 41

Tehnologii de fabricație (1)

•Implementarea sistemului dedicat într-un circuit integrat (CI)CI: dispozitiv semiconductor format din tranzistoare și alte circuite interconectate

Diferite procese pentru realizarea elementelor semiconductoare → CMOS

Semiconductoare – formate din diferite straturi: tranzistoare; componente logice; conexiuni

Sisteme de calcul dedicate (01) 03.10.2017 42

Tehnologii de fabricație (2)

Straturile se pot crea prin depozitarea unor substanțe fotosensibile → acțiunea luminii prin intermediul unor măști

•Tehnologia de fabricație este independentă de tehnologia procesorului

03.10.2017 Sisteme de calcul dedicate (01) 43

sursă drenăcanal

oxid

poartă

Substrat de siliciuCapsulă CI CI

Tipuri de tehnologii de fabricație (1)

•VLSIToate straturile sunt optimizate pentru un anumit sistem dedicat•Plasarea tranzistoarelor

•Dimensionarea tranzistoarelor

•Rutarea conexiunilor

Avantaje: performanțe ridicate; dimensiuni și energie consumată reduse

Dezavantaje: costuri și timpi de proiectare mari

Sisteme de calcul dedicate (01) 03.10.2017 44

Tipuri de tehnologii de fabricație (2)

•ASIC (Application-Specific IntegratedCircuit)Straturile inferioare sunt realizate complet sau parțial

Proiectantul finalizează straturile superioareMatrice de porți (Gate Arrays)•Măștile pentru nivelul tranzistoarelor și cel al

porților sunt realizate din fabricație

•Proiectantul trebuie să interconecteze porțile conform sistemului cerut

Sisteme de calcul dedicate (01) 03.10.2017 45

Tipuri de tehnologii de fabricație (3)

Celule standard (Standard Cell)•Sunt realizate din fabricație porțiunile măștilor

pentru anumite celule logice

•Proiectantul trebuie să aranjeze porțiunile existente pentru masca finală la nivelul porților și să interconecteze celulele

Avantaje: performanțe ridicate; dimensiuni reduse; costuri mai mici (față de VLSI)

Dezavantaje: timpi de fabricație relativ mari

Sisteme de calcul dedicate (01) 03.10.2017 46

Tipuri de tehnologii de fabricație (4)

•PLD (Programmable Logic Device)Sunt realizate din fabricație toate straturile

Circuitul este configurabil (programabil): crearea sau distrugerea unor conexiuni•Fuzibile

•Comutatoare programabile

Tipuri de circuite PLD:•Simple: PLA, PAL

•Complexe: CPLD, FPGA

Sisteme de calcul dedicate (01) 03.10.2017 47

Tipuri de tehnologii de fabricație (5)

PLA (Programmable Logic Array): reţele programabile de porți ȘI, respectiv SAU•Se generează termeni produs

•Se conectează termenii cu porți SAU

03.10.2017 Sisteme de calcul dedicate (01) 48

Tipuri de tehnologii de fabricație (6)

PAL (Programmable Array Logic): o singură rețea programabilă de porți ȘI•Rețeaua de porți SAU are conexiuni fixe

03.10.2017 Sisteme de calcul dedicate (01) 49

Tipuri de tehnologii de fabricație (7)

CPLD (Complex PLD): conțin blocuri funcționale asemănătoare unor circuite PLD•Macrocelule

•Matrice de rutare

03.10.2017 Sisteme de calcul dedicate (01) 50

Tipuri de tehnologii de fabricație (8)

FPGA (Field ProgrammableGate Array): rețea de celule sau blocuri logice•Blocurile logice pot fi

configurate pentru a realiza o funcție logică

•Comutatoare programabile pentru interconectare

03.10.2017 Sisteme de calcul dedicate (01) 51

Tipuri de tehnologii de fabricație (9)

Avantaje ale tehnologiei PLD:•Costuri de proiectare foarte reduse

•Disponibilitate imediată a circuitelor

Dezavantaje ale tehnologiei PLD:•Costuri unitare mai mari

•Dimensiuni mai mari

•Energie consumată mai ridicată

•Viteză de funcționare mai redusă (în special circuitele FPGA)

Sisteme de calcul dedicate (01) 03.10.2017 52

1. Introducere

•Sisteme de calcul dedicate

•Aplicații

•Caracteristici

•TehnologiiTehnologii de procesoare

Tehnologii de fabricație

Tehnologii de proiectare

Sisteme de calcul dedicate (01) 03.10.2017 53

Tehnologii de proiectare

•Indică modul în care se translatează proiectul unui sistem într-o implementare

Sisteme de calcul dedicate (01) 03.10.2017 54

Specificație

de sistem

Specificație

funcțională

Specificație

RT

Specificație

logică

Implementare

Compilare/

Sinteză

Biblioteci/

IP

Test/

Verificare

Sinteză

de sistem

Sinteză

funcțională

Sinteză

RT

Sinteză

logică

Hw/Sw/

SO

Module

Componente

RT

Porți/

Celule

Simulatoare/

Verificatoare

Cosimulatoare

Hw-Sw

Simulatoare

HDL

Simulatoare

la nivel de porți

Metode de creștere a eficienței (1)

•Compilare/SintezăPermite specificarea funcționării într-un mod abstractGenerează în mod automat detaliile de implementareUtilitare pentru sinteza de sistem: convertesc o specificație de sistem într-un set de programe secvențialeCompilatoare software: convertesc un program secvențial în limbaj de asamblare

Sisteme de calcul dedicate (01) 03.10.2017 55

Metode de creștere a eficienței (2)

Utilitare pentru sinteza funcțională: convertesc un program secvențial în automate de stare și transferuri între registre

Utilitare pentru sinteza RT: convertesc automatele de stare și transferurile între registre într-o cale de date cu componente RT și un controler definit prin ecuații booleene

Utilitare pentru sinteza logică: convertesc ecuațiile booleene într-o listă de conexiuni între porțile logice (netlist)

Sisteme de calcul dedicate (01) 03.10.2017 56

Metode de creștere a eficienței (3)

•Biblioteci/IPBiblioteci: permit reutilizarea unor module

existenteBiblioteci la nivel de sistem: pot conține sisteme

complete pentru anumite aplicații (procesoare + SO + programe)Biblioteci la nivel funcțional: conțin componente

utilizate frecvent (interfețe, controlere pentru afișaje, procesoare)•Pot fi implementate într-o porțiune a CI → module

•Module IP (Intellectual Property)

Sisteme de calcul dedicate (01) 03.10.2017 57

Metode de creștere a eficienței (4)Biblioteci la nivel RT: conțin scheme pentru

componente RT (MUX, DCD, registre)

Biblioteci la nivel logic: conțin scheme de amplasare în CI pentru porți și celule

•Test/VerificareAsigură corectitudinea funcțională

Simularea: metoda cea mai utilizată de testare

Simulatoare la nivel de sistem: simulează specificația inițială a sistemului utilizând un model abstract•Verificatoare: testează anumite proprietăți ale

specificației

Sisteme de calcul dedicate (01) 03.10.2017 58

Metode de creștere a eficienței (5)

Simulatoare la nivel funcțional: •Simulatoarele HDL simulează programele

secvențiale•Cosimulatoarele Hw/Sw conectează simulatoarele

HDL și cele ale procesoarelor

Simulatoare la nivel RT: execută descrierile de la nivelul RT și afișează diagramele de timp ale semnalelor de ieșire Simulatoare la nivel logic: simulează ecuațiile logice la nivel de porți și afișează diagramele de timp ale semnalelor de ieșire

Sisteme de calcul dedicate (01) 03.10.2017 59

top related