Kodea: 240306 | Irakasgaia: KONPUTAGAILUEN EGITURA | ||||
Kredituak: 6 | Mota: Oinarrizkoa | Ikasmaila: 2 | Iraupena: 1º S | ||
Saila: Ingeniaritza Elektrikoa, Elektronikoa eta Telekomunikazio Ingeniaritza | |||||
Irakasleak: | |||||
ARAMBURU MAYOZ, CANDIDO (Resp) [Tutoretzak ] |
Irakasgai honetan, konputagailu baten oinarrizko elementuak aztertzen dira, eta ikasleei ikuspegi orokor eta independente bat ematen diete konputagailu baten funtzionamenduaren arkitektura motei buruz. Irakasgaian, funtsezko alderdi hauek lantzen dira: informazioaren irudikapena (datuak eta instrukzioak), prozesadorea informazioa prozesatzeko unitate gisa, memoria-hierarkia informazioa biltegiratzeko unitate gisa, sarrera/irteerako sistema kanpoko aldeari informazioa komunikatzeko sistema gisa. Saio praktikoetan, softwarea garatzeko proiektuak egiten dira programa informatikoak editatzeko, konpilatzeko, estekatzeko, mihiztatzeko eta arazteko tresnak erabiliz, C programazio-lengoaietan eta x86 mihiztadura-lengoaian, GNU/Linux sistema eragilearen ingurunean betiere.
Hau da edukien zerrenda:
- Von Neumannen arkitektura. CPUa, memoria eta sarrera/irteera.
- Datuen irudikapena. Bita, bytea eta hitza. Karaktereak, osoak eta errealak.
- Aritmetika eta logika sistema bitarreko zenbaki osoekin. Zenbaki errealen biribiltzea eta erroreen hedapena.
- Instrukzioen irudikapena. Makina-lengoaia, mihiztadura-lengoaia eta maila handiko programazio-lengoaia. Erregistroak. Instrukzio formatua. Instrukzio bat exekutatzeko faseak. Instrukzio motak eta helbideratze-moduak.
- Maila handiko programazio-lengoaien oinarrizko eraikuntzak eta azpirrutina bati egiteko deiak mihiztadura-lengoaian programatzea.
- CPUaren arkitektura eta antolamendua. Instrukzio-multzoa. Datu-bidea. CISC, RISC eta VLIW arkitekturak.
Sarrera/irteerako sistema. Sarrera/irteerako kontrola: inkesta bidezkoa, etendura bidezkoa eta DMA. Etendura-bektorea. Etenduren arreta-errutinak mihiztadura-lengoaian programatzea.
- Memoriaren antolamendua. Latentzia eta banda-zabalera. Memoria-hierarkia. Cache memoria. Memoria birtuala.
Gaitasun orokor hauek eskuratu beharko lituzkete ikasleek irakasgai honetan:
3.OG - Datu esanguratsuak biltzeko eta interpretatzeko gaitasuna (normalean beren ikasketen arlokoak), bakoitzak bere iritzia eman dezan, eta horrekin batera zenbait gai sozial, zientifiko edo etikori buruzko hausnarketa egin dezan.
4.OG - Informazioa, ideiak, problemak eta konponbideak jakinarazteko gaitasuna, bai jende espezializatuari eta bai espezializatu gabeari ere.
1.GO - Sistema, zerbitzu eta aplikazio informatikoak asmatzea, garatzea edo ustiatzea xede duten informatikako ingeniaritzako proiektuak asmatzeko, idazteko, antolatzeko, planifikatzeko, garatzeko eta sinatzeko gaitasuna.
6.GO - Gaitasuna sistema edo arkitektura informatiko zentralizatuak edo banatuak asmatzeko eta garatzeko, hardwarea, softwarea eta sareak integratuz.
8.GO - Oinarrizko ikasgai eta teknologiak ezagutzea, metodo eta teknologia berriak ikasteko eta garatzeko gaitasuna ematen dutenak, baita egoera berrietara egokitzeko moldakortasun handia ematen dutenak ere.
9.GO - Ekimenez, erabakiak hartuz, autonomiaz eta sormena baliatuz problemak ebazteko gaitasuna. Gauza izatea Informatikako ingeniari teknikoaren lanbidearen ezagupenak, ahalmenak eta trebeziak komunikatzeko eta transmititzeko.
10.GO - Ezagutzak izatea neurketak, kalkuluak, balorazioak, tasazioak, peritu txostenak, azterketak, txostenak, zereginen plangintza eta antzeko beste lan batzuk egiteko.
1.ZG - Analisia eta sintesia egiteko gaitasuna.
3.ZG - Ahoz eta idatziz komunikatzekoa.
4.ZG - Problemak ebaztekoa.
8.ZG - Modu autonomoan ikastekoa.
Gaitasun espezifiko hauek eskuratu beharko lituzkete ikasleek irakasgai honetan:
4.OP - Oinarrizko alderdiak ezagutzea ingeniaritzan aplikatzen diren ordenagailuen erabilerari eta programazioari, sistema-eragileei, datu-baseei eta programa informatikoei buruz.
5.OP. - Sistema informatikoen egitura, antolamendua, funtzionamendua eta interkonexioa ezagutzea, bai eta sistema horiek programatzeko oinarriak ere, eta ingeniaritzako problemak ebazteko , horiek nola aplikatzen diren jakitea.
Metodologia - Jarduera | Ordu presentzialak | Ordu ez-presentzialak |
1.J Klase magistralak |
24
|
|
2.J Bakarka ikastea |
|
30 |
3.J Saio praktikoak |
16
|
|
4.J Programazioa/esperimentazioa edo ordenagailuko/laborategiko beste lan batzuk |
|
20 |
5.J Problemak, ariketak eta beste aplikazio-jarduera batzuk ebaztea |
|
12
|
6.J Problemetan eta/edo kasuetan oinarritutako ikaskuntza |
14
|
|
7.J Lanak eta/edo proiektuak prestatzea eta txostenak idaztea. |
|
11
|
8.J Lanen, proiektuen eta antzekoen aurkezpenak prestatzea. |
|
15
|
9.J Ebaluazio-jarduerak |
6
|
|
10.J Tutoretzak
|
2
|
|
|
|
|
Guztira |
62
|
88
|
Ikaskuntzaren emaitza |
Ebaluazio jarduera |
Pisua (%) | Errekupera daitekeen edo ez |
Eskatzen den nota minimoa |
---|---|---|---|---|
Ikaskuntza aktiboa, ikaslearen motibazioa | 15 | Ez | 0 | |
Organigramak eta oinarrizko programen kodea garatzea C lengoaietan eta mihiztatzailea x86 eta ARM arkitekturetarako, aurreko ikasturteetako programazio-kontzeptuetan oinarrituta, eta horiek araztea eta aztertzea GNU tresnen bidez, hala nola gcc, as, ld, gdb, file, objdump, elf eta abar, linux sistemen ingurune batean, bai lokalean, bai Quartus tresnaren bidez urrunetik. FPGA gailuetan soft mikroprozesadorea inplementatzea. Praktikak laborategitik kanpo amaitzea, modu autonomoan programatzeko gaitasuna izateko. Praktika-saioan zehar eta ondoren, azterketetan erabili beharreko dokumentu gisa, memoriak egitea. Ezarritako epean, miaulario-zereginen bidez gidoiak entregatzea aginduzkoa izango da. | Balio bera duten bi kontrol partzial. Kontrol partzial bat lehenengo bi saioen ondoren, eta azken kontrol bat praktika guztiak egin ondoren, praktiken memorien eta ikasgaiaren apunte-liburuaren laguntzarekin. Irakasgaia gainditzeko gutxienez 4 puntuko batez besteko nota. Errekuperazio-azterketa egiteko baldintza da praktiketako 16 orduetatik 14ra gutxienez joan izana, ezarritako epean memoriak entregatu izana eta bi kontrolak egin izana. | 15 | Ez | 4 |
Von Neumann motako arkitektura duen konputagailu baten egituraren oinarrizko moduluen oinarriak ezagutzea, hala, prozesuko unitate nagusiaren barne-egiturarekin eta eragiketarekin, memorien hierarkiarekin eta sarrera- eta irteera-moduluen eragiketa-mekanismoekin. | 90 minutuko bi partzial, kontzeptu teorikoei eta gelako ariketei buruzkoak. Irakasgaia gainditzeko gutxienez 4 puntuko batez besteko nota. Irakasgai osoa berreskuratzeko azterketa, ohiko deialdia gainditu ezean. | 35 | Bai | 4 |
Organigramak eta oinarrizko programen kodea garatzea C lengoaietan eta hainbat arkitekturaren (x86 eta ARM) mihiztatzailea, aurreko ikasturteetako programazio-kontzeptuetan oinarrituta. Lotu C kodea mihiztatze-kodearekin. Kontrolak eta lehengoratzea, aurreko kasuan bezala. Apunteak erabili ahal izango dira. C lengoaiako programak eta mihiztatzailea garatzea, sistema eragilera deirik egin gabe edo egin gabe, C motako liburutegietara deirik egin gabe, funtzioetara eta azpiutinetara deitu gabe. |
Laborategiko praktiken gidoietan oinarritutako algoritmoak eta programazioa egiteari buruzko idatzizko kontrol partziala. Irakasgaia gainditzeko gutxienez 4 puntuko batez besteko nota. Irakasgai osoa berreskuratzeko azterketa, ohiko deialdia gainditzen ez bada. Irakasleak ikasturte hasieran emandako apunteak erabili ahal izango dira. | 15 | Bai | 4 |
1 - Sarrera
2 - Von Neumannen Arkitektura
2.1 CPUa
2.2 Memoria
2.3 Sarrera/Irteera
3 - Datuen Irudikapena
3.1 Bita, Bytea eta Hitza
3.2 Karaktereak, osoak eta errealak
4 - Aritmetika eta logika
4.1 Datu osoekin oinarrizko eragiketa aritmetikoak eta logikoak egitea bitarrean
4.2 Zenbaki errealen biribiltzea eta erroreen hedapena
5 - Instrukzioen irudikapena
5.1 Makina-lengoaia, mihiztadura-lengoaia eta maila altuko programazio-lengoaia
5.2 Instrukzio formatua
5.3 Instrukzio motak eta helbideratze-moduak
6 - Maila handiko programazio-lengoaien oinarrizko eraikuntzak mihiztadura-lengoaian programatzea
6.1 Esleipen-sententziak
6.2 Baldintzazko sententziak
6.3 Begiztak
6.4 Deiak eta funtzioaren itzulera edo azpirrutina
7 - CPUaren arkitektura eta antolamendua
7.1 Instrukzio multzoa
7.2 CISC, RISC eta VLIW arkitekturak
7.3 Instrukzio bat exekutatzeko faseak
7.4 Datu-bidea
8 - Sarrera/irteerako sistema
8.1 Inkesta bidezko sinkronizazioa
8.2 Etendura-bektorea
8.3 Etendura-bektorea
8.4 DMA memoriarako atzipen zuzena
8.5 -Sarrera/irteerako errutinak mihiztadura-lengoaian programatzea
9 - Memoriaren antolamendua
9.1 Memoria-hierarkia
9.2 Latentzia eta banda-zabalera
9.3 Cache memoria
9.4 Memoria birtuala
Sar zaitez irakasleak liburutegiari eskatu dion bibliografian.
William Stallings. Computer Organization and Architecture: Designing for Performance. Prentice Hall. 9th Edition. 2012.
Paul Carter. PC Assembly Language. Sarbide librekoa. 2006.
Jonathan Bartlett. Programming from the Ground Up. Sarbide librekoa. 2004.
Bibliografia osagarria
K.N.King. C programming, a Modern Approach. W.W. Norton 2ªEd. 2008.
David A. Patterson, John L. Hennessy. Computer Organizarion and Design. The Hardware / Software Interface. Morgan Kaufmann. 2009.
Randal E. Bryant, David R. O'Hallaron. Computer Systems: A Programmer's Perspective. Addison-Wesley. 2nd Edition. 2010.
Jeff Duntemann. Assembly Language Step-by-Step: Programming with Linux. Wiley Ed. 3rd Edition. 2009.
Kip R. Irvine. Assembly Language for x86 Processors. Pearson. 6th Edition. 2014.