FIŞA DISCIPLINEI ANEXA nr. 3 la metodologie 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Politehnica din Bucureşti 1.2 Facultatea Automatică şi Calculatoare 1.3 Departamentul Calculatoare 1.4 Domeniul de studii Calculatoare şi tehnologia informaţiei 1.5 Ciclul de studii Master 1.6 Programul de studii/calificarea Arhitecturi Avansate de Calculatoare 2. Date despre disciplină 2.1 Denumirea disciplinei Sisteme cu microprocesoare avansate 2.2 Titularul activităţilor de curs Conf. dr. ing. Cornel Popescu 2.3 Titularul activităţilor de seminar Conf. dr. ing. Cornel Popescu 2.4 Anul de studiu 5AAC 2.5 Semestrul II 2.6 Tipul de evaluare E 2.7 Regimul disciplinei Obligatoriu 3. Timpul total estimat (ore pe semestru al activităţilor didactice) 3.1 Număr de ore pe săptămână 4 din care: 3.2 curs 2 3.3 seminar/laborator 2 3.4 Total ore din planul de învăţământ 56 din care: 3.5 curs 28 3.6 seminar/laborator 28 Distribuţia fondului de timp ore Studiul după manual, suport de curs, bibliografie și notițe 14 Documentare suplimentară în bibliotecă, pe platformele electronice de specialitate şi pe teren 14 Pregătire seminarii/laboratoare, teme, referate, portofolii și eseuri 41 Tutoriat 14 Examinări 3 Alte activităţi... - 3.7 Total ore studiu individual 83 3.9 Total ore pe semestru 156 3. 10 Numărul de credite 6 4. Precondiţii (acolo unde este cazul) 4.1 de curriculum 4.2 de competenţe 5. Condiţii (acolo unde este cazul) 5.1. de desfăşurare a cursului 5.2. de desfășurare a seminarului/laboratorului
Competenţe transversale Competenţe profesionale 6. Competenţele specifice acumulate Operarea cu concepte și metode științifice în calculatoare și tehnologia informației (1PC) Modelarea și implementarea sistemelor inteligente folosind tehnologii hardware actuale (2PC) Cercetare științifica în domeniul arhitecturilor avansate (2PC) Comportarea onorabila, responsabila, etica, în spiritul legii, pentru a asigura reputația profesiei (1PC) 7. Obiectivele disciplinei (reieşind din grila competenţelor specifice acumulate) 7.1 Obiectivul general al disciplinei Însușirea cunoștințelor legate de funcţionarea unor structuri de lucru cu microprocesoare avansate, de utilizarea tehnologiilor oferite de microprocesoarele avansate pentru realizare de sisteme pe un chip (arhitecturi DSP, multimedia şi de reţea), de influenţa tehnologiilor avansate la îmbunătăţirea funcţionalităţii, a performanţei şi a consumului de putere a noilor procesoare, de tendinţele noi de proiectare avansată a microprocesoarelor şi implicaţiile lor în proiectarea de sisteme performante, de dezvoltarea de aptitudini de cercetare în domeniul arhitecturilor avansate cu microprocesoare 7.2 Obiectivele specifice pentru curs: - Prezentarea şi utilizarea tehnologiilor actuale utilizate de microprocesoare, precum si a tehnologiilor de procesare avansată - Prezentarea caracteristicilor avansate ale sistemelor cu microprocesoare - Descrierea generală şi funcţională a unor arhitecturi avansate de sisteme cu microprocesoare: arhitecturi vectoriale și multimedia avansate; arhitecturi pe stream-uri; arhitecturi multithread, multicore și circuite multiprocesor; arhitecturi polimorfice bazate pe core grid, pe cluster-e, pe FPGA sau asincrone - Prezentarea şi utilizarea unor modele avansate de programare și compilare - Prezentarea şi utilizarea maşinilor virtuale în dezvoltarea şi execuţia sistemelor actuale cu microprocesoare - Prezentarea şi aplicarea metodelor de compilare dinamică în sistemele cu microprocesoare avansate - Descrierea generală şi funcţională a unor arhitecturi avansate tolerante la defecte - Aplicarea tehnicilor de învățare automată ML ( Machine Learning ) la sistemele cu microprocesoare avansate
pentru aplicaţii: - Studierea, dezvoltarea şi analiza din punct de vedere hardware/software a sistemelor cu microprocesoare avansate - Realizarea unor rapoarte de cercetare în domeniul proiectării avansate de procesoare şi sisteme cu procesoare 8. Conţinuturi 8. 1 Curs Metode de predare Observaţii Introducere. 1.1. Obiectivele cursului. 1.2. Tipuri de microprocesoare avansate. 1.3. Arhitecturi avansate de sisteme cu microprocesoare. Prezentarea tehnologiilor utilizate de microprocesoarele actuale. 2.1. Scalare şi superscalare, ierarhii de memorii, performanţă, tendinţe. 2.2. Niveluri de paralelism şi instrucţiuni multiple; procesare avansată multiscalară și VLIW. 2.3. Execuţia speculativă și superspeculativă: anticipare şi predicare. 2.4. Tehnologii oferite de producători de procesoare. Tehnologii de procesare avansată. 3.1. Noi organizări de memorie intermediară şi DRAM pentru a suporta streaming applications ; memorii DRAM scalabile. 3.2. Conceptul SOC ( System-on-a-Chip ); procesoare cuplate cu memoria (PIM) sau memorii RAM inteligente (IRAM); procesoare multiscalare, procesoare Trace și procesoare DataScalar. 3.3. Interconectări avansate de I/O şi magistrale. 3.4. Studii de caz: Intel, DSP, procesoare multimedia şi de reţea. Caracteristici avansate ale sistemelor cu microprocesoare. 4.1. Tehnologii VLSI. 4.2. Numărul de instrucţiuni pe ciclu de ceas. 4.3. Tipuri de paralelism. 4.4. Consumul de putere şi performanţa. 4.5. Eficienţa şi complexitatea proiectării. 4.6. Reconfigurabilitate la nivel de procesor şi de memorie. 4.7. Emergenţa aplicaţiilor pe ciclul de ceas al procesorului: multimedia, enterprise, securitate, reţea, ştiinţifice, recunoaştere, inteligenţă artificială, verificare. Arhitecturi paralele de date. 5.1. Arhitecturi vectoriale avansate. 5.2. Procesare multimedia avansată. 5.3. Procesare de imagine pe stream -uri. Arhitecturi de thread -uri paralele. 6.1. Analiza arhitecturilor multithreaded. 6.2. Procesoare multithreaded ; circuite multiprocesor sau arhitecturi multi-core. 6.2. Evaluare comparativă a tehnicilor multithreading. 6.3. Execuţia speculativă multithreading.
Arhitecturi polimorfice. 7.1. Arhitecturi bazate pe core Grid și rețele de cluster -e. 7.2. Arhitecturi reconfigurabile de memorii inteligente. 7.3. Sisteme reconfigurabile; arhitecturi FPGA, arhitecturi reconfigurabile de multiprocesare în reţea (studii de caz: PipeRench, MorphoSys, RAW, Xputer). 7.4. Sisteme cu procesoare asincrone. Modele avansate de programare și compilare. 8.1. Programare paralelă utilizând conceptul de container ca tip agregat de date. 8.2. Limbaje pentru paralelizarea programelor din paradigma de programare secvenţială. 8.3. Programarea pe stream -uri pentru arhitecturile expuse comunicaţiei. 8.4. Tehnici de compilare și compilatoare cu planificare space -time a execuţiei pe arhitecturi reconfigurabile. Maşini virtuale. 9.1. Utilizarea maşinilor virtuale pentru execuţia sistemelor de operare pe multiprocesoare scalabile. 9.2. Utilizarea maşinilor virtuale în Co-designed. 9.3. Tehnici de Profiling. Compilare dinamică in sistemele cu microprocesoare avansate. 10.1. Paralelizarea dinamică automată a programelor secvenţiale. 10.2. Optimizarea dinamică adaptivă şi intermodulară a programelor. 10.3. Compilarea dinamică selectivă. Arhitecturi avansate tolerante la defecte. Tehnici de învățare automată ML ( Machine Learning ) aplicate sistemelor cu microprocesoare avansate. 12.1. Sinteza automată predictivă. 12.2. Utilizarea perceptronilor. 12.3. Modele de învăţare predictivă. Discuţie finală şi brainstorming. Bibliografie "Modern Processor Design: Fundamentals of Superscalar Processors", J.P. Shen and M. Lipasti, 1st edition, McGraw-Hill "Computer Architecture: A Quantitative Approach, J. Hennessy & D. Patterson, 4th edition, Morgan Kaufmann Cornel Popescu, SMPA curs şi aplicaţii, www.csit-sun.pub.ro/-cpop Site curs si laborator SM: http://cs.curs.pub.ro/2012/ https://courseware.stanford.edu/pg/courses/95981/ee382a-fall-2010 http://www.stanford.edu/class/ee392c/ http://cva.stanford.edu/classes/ee482a/ www.cedu/classes/ee482c/va.stanford http://cacm.acm.org/magazines/2011/5/107702-the-future-of-microprocessors/fulltext www.realworldtech.com/ www.lighterra.com/articles/historyofcomputers/ www.lighterra.com/papers/modernmicroprocessors/ www.csd.ijs.si/courses/processor/ www.owlnet.rice.edu/~elec525/
8. 2 Seminar/laborator Metode de predare Observaţii L1. Tehnici de procesare avansată Suport de laborator disponibil în L2. Tehnologii avansate utilizate de microprocesoarele Actuale Suport de laborator disponibil în L3. Caracteristici ale sistemelor cu microprocesoare avansate Suport de laborator disponibil în L4. Procesoare vectoriale, procesoare multimedia, procesoare grafice, procesoare multicore şi sisteme bazate pe acestea Suport de laborator disponibil în L5. Procesoare polimorfice şi sisteme bazate pe acestea Suport de laborator disponibil în L6. Modele de programare pentru sistemele cu microprocesoare avansate Suport de laborator disponibil în L7. Virtualizare, compilare dinamică şi învăţare aplicate sistemelor cu microprocesoare avansate Suport de laborator disponibil în Tema 1 de laborator Suport de laborator disponibil în Tema 2 de laborator Suport de laborator disponibil în Tema 3 de laborator Suport de laborator disponibil în Tema 4 de laborator Suport de laborator disponibil în Tema 5 de laborator Suport de laborator disponibil în Tema de curs Suport de laborator disponibil în Proiect de cercetare într-un domeniu prezentat la curs și analizat prin activitățile de cercetare-proiectare L1-7 Bibliografie Aceeaşi cu cea de la curs Suport de laborator disponibil în 9. Coroborarea conţinuturilor disciplinei cu aşteptările reprezentanţilor comunităţii epistemice, asociaţiilor profesionale şi angajatori reprezentativi din domeniul aferent programului - 10. Evaluare Tip activitate 10.1 Criterii de evaluare 10.2 Metode de evaluare 10.3 Pondere din nota finală Corectitudinea rezolvării 1 temă cu evaluarea documentației scrise 20 puncte 10.4 Curs temelor de curs Corectitudinea și integralitatea Examen scris 30 puncte rezolvării subiectelor Activitatea la laborator Prezentarea de studii de cercetareproiectare 10 puncte 10.5 Seminar/laborator Corectitudinea rezolvării 5 teme de laborator cu evaluarea 20 puncte temelor de laborator documentațiilor scrise Corectitudinea elaborării proiectului Raport tehnico-științific al proiectului 20 puncte
10.6 Standard minim de performanţă - 50% din punctajul de laborator - 50% din punctajul pentru temele de curs şi proiect - Obtinerea a 50% din punctajul acordat pentru examen Data completării Semnătura titularului de curs Semnătura titularului de seminar......... Data avizării în departament Semnătura directorului de departament......