Sunteți pe pagina 1din 10

1.

A reconfigurable computer is a device which computes using post-fabrication spatial connections of


computes elements

2. Caracteristici ale CR
- paralelism adaptat pentru satisfacerea obictivelor de desing
- logica specializata pentru o functie specifica
- functionalitatea se schimba odata cu schimbara cerintelor

3. Arhitectura von Neumann:


-memorie pt stocarea programului si datelor
-unitatea de control care genereaza adresa instructiunii urmatoare, executata de ALU, secvential

4. Sisteme cu procesor(temporale)
- generalizate pentru a indeplini functii generale
-opereaza asupra datelor cu lungime fixa,
-inerent secventiale
- constrangeri pentru cai de date secventiale

5. Sisteme reconfigurabile(spatiale)
- creeaza hardware specializat pentru fiecare aplicatie
- unitati functionale optimizate pentru functii specifice,

6.Tipuri de paralelism:
-MIMD(multiple instruction multiple data)-la nivel de aplicatie,
- SIMD(single instruction multiple data)la nivel de bucla de aplic,
-ILP(instruction level parallelism)-nivel de instructie, pipeline(nivel de bucla),
-la nivel de bit]-procesoarele folosesc un singur paralelism, sistemele reconfig. folosesc mai multe.

7. Instruction Level Parallelism


- un procesor superscalar trebuie sa estimeze graful de date la executie, un sistem reconfigurabil
estimeaza graful de date la compilare
- fara limitari de dimeniune de pagina / legate de unitati functionale, fara supraincarcarea datorata
logicii de control.
8.ASIC (custom chip) oferă înaltă performanţă cu costul inflexibilităţii
-Procesorul este foarte flexibil dar nu adaptat la particularităţile aplicaţiei
-Hardware-ul reconfigurabil (FPGA – standard chip) reprezintă un compromis reuşit

9.Prototipare rapida
-fara timpi morti intre finalizarea designului si obtinerea circuitului final(functional)
-design programat in FPGA si testat imediat
-trecerea de la prototip la produsul final se poate face foarte usor, acelasi FPGA poate fi utilizat
pentru realizarea altor designuri fara costuri material

10. In system customization:


-timpul de punere pe piata inseamna un produs functional, dar cu functionalitati minime.
-posibilitate de upgrade care nu poate fi aplicata la asic
-in system customization inseamna upgrade post-vanzare

11.Computatie multi-mod
-utilizam o paleta de dispositive electronice care trebuie interconectate
-parametrii de intreconectare sunt diferiti pentru utilizatori diferiti ai aceluiasi dispozitiv
-o platforma reconfigurabila poate asigura interfata potrivita precum si posibilitati de extindere

12.Computatie adaptiva
-computer anytime-anywhere
-parametri impredictibili si variabili fac imposibila o strategie de tip compile-time
- o platforma reconfigurabila satisface cerintele adaptabilitatii run-time

13. PLD(Programmable Logic Device)


-ofereau 2 nivele de logica programabila(fuzibil sau antifuzibil)
- PLA(programmable logic array)-interconectau parti majore dintr-un design amplu
- FPGA - logica programabila multi-nivel, fara limitari cu elemente logice si interconexiuni
programabile
14. CPLD(complex programmable logic device)
-extinde conceptul de PLD ,care oferea logica limitata
-bazat pe macrocelule, blocuri IO si retea de interconectare
- macrocelule formate din bistabile si multe PLA, logica ramane limitata fata de FPGA
-folosite ca si glue-logic sau ca si dispositive de configurare pentru FPGA

15. FPGA(Field Programmable Gate Array)


- introdus in 1985 de Xilinx
- ahitectura similara CPLD: logic block, interconnection, Input/Output
-mai multe tehnologii de realizare: SRAM , flash, antifuse

16. LookUP Table (LUT)


-opereaza 4 intrari binare(A,B,C,D)
- iesirea este un singur bit (out)
- permite generarea oricarei functii binare de 4 intrari

17. Ce este un Element Logic?


- fiecare element logic are o singura iesire binara,
-conexiunile dintre EL sunt programabile (tracks),
-interconexiunile tracks sunt grupate in canale (channels)

18.FPGA “Fabric”
-Reconfigurabil de oricate ori
-Orientat catre glue logic
-programat prin design hardware
-timp de configurare foarte lung
-procesorul opereaza cu un program stocat intr-o memorie
-“personalitatea” FPGA consta in configuratia sa FPGA “Fabic”
19.Tipuri de FPGA:
- dupa modul de programare -run time(SRAM-based)
-permanent (antifuse,flash based)
- granularitate:-fine grained (un LE alcatuit din cateva porti si un registru);
-coarse grained (un LE alcatuit din ALU multibit si registri);
-platform FPGA(contine mai multe structuri pt implementarea optima a oricarei parti din
sistem; processor, memorie, cel putin o magistrala)

20. FPGA vs VLSI(ASIC)


-ASIC: - viteza superioara, consum redus,hardware optimizat,capacitate mare de integrare, pret mic la
volume mari,timp mare de executie,inflexibilitate
-FPGA: -viteza mai mica, consum mai mare, nefiind optimizate,
- flexibilitate, pret mic, timp mic de reconfigurare

21. Design bazat pe FPGA


-Performanta:- logica din interiorul design-ului trebuie sa functioneze la un nivel de performanta
acceptat
-Energia consumata: functionare optima.
 Alimentare de la baterie: criteriu evident
 Alimentare de la retea: costurile energiei si costurile disiparii de energie
-Costuri de productie: - replicarea unui sistem.
-Costuri multiple si adesea conflictuale – legate de HW si SW dar si de performanta si putere
consumata
-Avantaj decisiv pt fpga: datorita timpului scurt de design si mobilitatii pietei electronicelor

22. Masina lui Rammig


-sistemul era modular si modulele erau interconectate prin switchuri
-module integrate in placi de baza si fiecare placa se putea selecta software: -
-utilizata ca emulator putand controla total un circuit doar prin SW

23. Masina Xputer: -data sequencer, data memory, reconfigurable alu, oferea run time reconfiguration,
aplicatii: signal, image processing
24. Masina PAM:
-introduce programmable active memory.
- contine matrice de processin array blocks
-fiecare element combinational contine 5 LUT-uri si 5 intrari fiecare
- contine bistabil pt masini secventiale sau ca si memorie locala
- aplicatii: compresie de date, criptografie, fizica energetica

25. Masina SPLASH:


-magistrala SIMD transfera date in primul FGPA care apoi le distribuie celor 16 placi Xilinx
- aplicatii: cautare de text, procesare de imagini

26. Top-Down vs Bottom-Up


Top-down: -adauga notiuni functionale la fiecare nivel de abstractizare
- decizii luate cu minim de informatie, pot fi mai multe alternative de design la fiecare pas de
abstractizare
-se alege cea care indeplineste conditiile de performanta, consum, suprafata, energie si cost.
Bottom-up:
-rafineaza solutiile la fiecare pas,
-coreleaza specificatiile initiale cu costurile
27. Componente FPGA:
- logic element sau CLB-Configurable Logic Block:
-implementeaza fctii logice de amploare variabila
-pot fi de ordinul a catorva porti logice(fine-grained)
-sau poate fi de ordinul unor blocuri de insumare(coarse-graines)
-interconexiuni
-permit conectarea programabila a EL
-organizate de obicei in channels sau alte unitati
-in mod tipic se ofera mai multe tipuri de interconexiuni in functie de distanta dintre blocurile
logice care participa la conexiune
- IOB(InputOuput Block)
-sunt pinii de intrare/iesire ai circuitului
- in general programabili sa fie intrari, iesiri sau bidirectionali
-ofera facilitati suplimentare cum ar fi “Low power” sau “High speed connections”
28. Celula xilinx cx4000
-CLB-ul contine 2 parti identice, fiecare contine un LUT, logica pt propagarea transportului si
elementelor de memorie
- o parte are doua celule logice bazate pe LUT de 4 biti, intrari F1-F4, G1-G4
- fiecare LUT poate sa fie folosit ca registru de deplasare pe 16 biti sau memorie ROM sincrona pe 16
biti
- o adunare se face acceptand transportul "carry in" care va transporta primul etaj de carry control
logic, apoi pe al doilea fiind generat de semnalul carry out.
- logica contine o poarta XOR folosita pt generarea sumei LUT pt calcularea transportului
- fiecare parte contine un multiplexor, pt combinarea rezultatelor celor 2 generatoare de functii
- alt multiplxor combina iesirile celor 2 multiplexoare, rezultand astfel iesirea unui bloc CLB

29. De la design la implementare FPGA


- uneltele CAD pt translatarea descrierii text in implementare fizica
- in modul curent, designerii FPGA utilizeaza specificari Register - Transfer Level(aceeasi pasi si pt
ASIC)

30.Compilarea unui circuit: technology mapping -> placement-> routing

31. Tipuri de reconfigurare:


-statica: aplicatia nu ruleaza in timpul configurarii
-partial static: portiuni ale apl sunt multiplexate in timp pe acelasi FPGA Fabric
-dinamica: aplicatia se schimba in fct de evoultia mediului extern

32. FGPA bazat pe SRAM


- sunt cele mai raspandite FPGA-uri
- arhitectura memoriilor SRAM din FPGA difera fata de cele comerciale
-o celula de memorie(5 tranzistori) controleaza permanent configuratia unui circuit
- avantaje: configurare rapida de un nr nelimitat de ori, permit reconfigurare
dinamica
-dezavantaje: suprafata ocupata mare, config se pierde la oprire (volatila),
consum de energie,informatia sensibila la furt
33.Antifuse:
-in mod normal conexiune deschisa, dielectric intre terminale,
-stare initiala: rezistenta mare a dielectricului, aplicarea unei tensiuni topeste dielectricul, programare
rapida
-stare finala: rezistenta redusa a dielectricului,
- avantaje: suprafata scazuta, imposibilitatea furtului, rezistenta si capacitate parazita scazuta fata de
tranzistori
- dezavantaje: nu sunt potrivite pt reprogramari frecvente, sunt programate o singura data

34. FPGA bazat pe EPROM:


- baza este o poarta flotanta, programabila,
- se aplica 10-21V intre control gate si transistor drain=>incarcare negativa a control gate
- se compenseaza tensiunea pe control gate si tranzistorul devine blocat
- EEPROM: -se aplica o tensiune ridicata la control gate
- 2+ tranzistori folositi intr-o celula ROM: accessing si programmed transistor (acceasi functie cu
floating gate din EPROM),
-reprogramibilitate similara SRAM dar mai lenta
- FLASH: -mem nevolatila, finit programabila, nepotrivita pentru reconfigurable computing

35. Exemple de CLB


-CLB(Xilinx si Altera Cyclone):
-LUT cu 4-6 intrari pt memorarea configuratiei
-un set de multiplexoare pt selectia intrarilor la LUT si bistabil
-logica aritmetica pt sumatoare
-bistabil
36. Structuri de FPGA
- Matrice de CLB si interconexiuni programabile cu structura dependenta de fabricant:
-structuri: - symetrical array,
-row based,
- sea of gates,
- hierarcy based
- symetrical array:
-matrice 2D de CLB-uri integrate intr-un set de interconexiuni verticale si
orizontale, rutare asigurata de switch-uri la intersectia unei linii orizontala si
una verticala
-row based
- consta in alternante de linii de blocuri logice si canale de comunicatii,
spatiile dintre blocurile logice sunt canele de comunicatii
-sea of gates
- similar cu symmetrical arrays, macrocelule aranjate intr-o matrice 2D
-nu exista spatiu de rutare intre macrocelule
-interconexiunile sunt configurate in celule
-Hierarchical based
- macrocelule plasate ierarhic in circuit
-elemente cu granularitate mica formeaza elem urm nivel
-fiecare coloana de interconexiuni ruteaza intre linii
-un semnal de pe o coloana trebuie rutat mai intai pe o linie inainte de a intra intr-un LE

37. Reprogramabilitate:
-Reprogramarea FPGA: timp de ordinul 100ms
-timp prea lung pt Reconfigurable computing
-solutii:
- scaderea timpului
- virtualizarea designului
-reconfigurare partial a FPGA
-partitionarea FPGA Fabric
-adresarea partitiillor
-limitare: complexitatea structurii de interconectare
38.Elemente Logice
-Un LE din FPGA considerabil mai complex decât o poartă CMOS standard.
 Poarta: o funcţie logică bine precizată
 LE: o varietate de funcţii logice la alegere
-LUT vs CMOS
 CMOS NAND/NOR: N intrări, 2N tranzistori
 LUT: o celulă – 8 tranzistori, 2N celule
-Întârzieri:
 LUT: independente de funcţia implementată
 CMOS: depind de numărul de intrări, funcţia logică şi tehnologie
-Putere consumată: CMOS mai eficient

39. CMOS MUX


 CMOS-MUX cu 4 intrări, mai mic decât tabelele LUT, suficient de mare pentru a-i arăta structura
internă
 2 nivele de logică, invertoare al 3 -lea nivel
 Întârzierea prin NAND cu n intrări proporţională cu (n+2)/3
 Întârzierea totală b lg(b), unde b=4

40. Numarul pinilor


-FPGA oferă logică nededicată ð este necesară găsirea unei căi de estimare a necesarului numarului de
pini
 Pini prea mulţi ð cost mărit pentru circuit (adesea costul package-ului este mai mare decat costul chip-
ului)
 Pini prea puţini ð pericol de a nu putea utiliza toata logica FPGA
41. Legea lui Rent

β
N p =K p⋅N g N p ≈0. 8⋅√ N g
Np – numarul de pini,Ng – numarul de porti logice (gates),ß – constanta lui Rent
Kp – constanta de proportionalitate

42. Linii bidirectionale: implica resurse considerabile pentru rutare


Liniile directionale (stânga) implica jumatate dintre interconexiunile necesare pentru linii bidirectionale
Liniile lungi se obtin prin interconectarea mai multor segmente
Fiecare MUX adauga la întârzierea semnalului!
Liniile lungi sunt sensibile la perturbatii externe
Se utilizeaza rasucirea liniilor (wire twisting)!

43. Procesarea în reţea


 Elemente de procesare a datelor în reţea bazate pe ASIC sau custom silicon
 Se găsesc între placa dereţea şi interconexiunile la porturi
 Conţin sute sau chiar mii de circuite li automate pentru rutare, filtrare sau procesarea datagramelor
 Sistemele SW prezintă flexibilitate maximă de procesare dar viteză limitată datorită naturii
secvenţiale
 ASIC/custom silicon oferă performanţă mult superioară dar cu costul inflexibilităţii de programare
 Identificarea adreselor IP pentru rutare
 Scanare pentru detecţia unor tipare în pachet
 Data queuing to provide quality of service (QoS)
 Detecţia intruziunii şi atacului asupra reţelei
 Prevenirea intruziunilor pentru oprirea atacurilor
 Procesare semantică a datelor

44.Beamforming
 Reprezintă o filtrare spaţială a informaţiilor de la senzori pentru a identifica direcţia unui semnal
 Poate amplifica semnale de pe o direcţie faţă de alte semnale
 Semnalele identice sînt în fază
 Aplicaţii: Sonar,Radar,Telecomunicaţii wireless,Software radio