Crèdits
6
Tipus
- GIA: Optativa
- GRAU: Obligatòria d'especialitat (Enginyeria de Computadors)
Requisits
- Prerequisit: CI
Departament
ESAII
Professorat
Responsable
- Enric X. Martin Rull ( enric.xavier.martin@upc.edu )
Altres
- Daniel Garcia Solà ( daniel.garcia.sola@upc.edu )
- Fabio Francisco Banchelli Gracia ( fabio.francisco.banchelli@upc.edu )
Hores setmanals
Teoria
1.2
Problemes
0.8
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
6
Competències
Tercera llengua
- G3.2 - Estudiar amb materials escrits en anglès. Redactar un informe o un treball de tipus tècnic en anglès. Participar en una reunió tècnica en anglès.
Especialitat enginyeria de computadors
- CEC1.1 - Dissenyar un sistema basat en microprocessador/microcontrolador.
- CEC2.2 - Programar considerant l'arquitectura hardware, tant en assemblador com en alt nivell.
- CEC2.3 - Desenvolupar i analitzar software per a sistemes basats en microprocessadors i les seves interfícies amb usuaris i altres dispositius.
- CEC3.1 - Analitzar, avaluar i seleccionar les plataformes hardware i software més adients per al suport d'aplicacions encastades i de temps real.
- CEC3.2 - Desenvolupar processadors específics i sistemes encastats; desenvolupar i optimitzar el software d'aquests sistemes.
Competències tècniques comunes
- CT7.2 - Avaluar sistemes hardware/software en funció d'un criteri de qualitat determinat.
Objectius
-
Donada una aplicació, determinar per a cada tasca: la seva durada, el temps d'espera màxim, el temps de d'atenció crític, i programar l'estratègia correcta per a satisfer aquests requeriments.
Competències relacionades: CEC2.3, CT7.2, -
Identificar les regions crítiques d'un programa, i programar correctament codi lliure de bugs deguts al compartiment de dades.
Competències relacionades: CEC2.2, CEC3.1, -
Determinar les parts del codi que calen ser programades en assemblador, i les que es poden programar en llenguatge d'alt nivell.
Competències relacionades: CEC2.2, -
Dimensionar correctament la temporització del watchdog, i ubicar els kicks' del watchdog de forma correcta dins del codi.
Competències relacionades: CEC3.2, -
Determinar l'arquitectura software més adequada per a una aplicació concreta, a partir del nombre de processos, la càrrega computacional d'aquests i els requeriments de resposta immediata.
Competències relacionades: CT7.2, CEC3.1, -
Determinar la millor interfície de comunicació sèrie per la comunicació entre dos circuits integrats (processadors, processadors-interfície).
Competències relacionades: CEC2.3, -
Generar les rutines mínimes d'abstracció de hardware per qualsevol interfície de comunicacions.
Competències relacionades: CEC2.3, -
Col.locar les proteccions adequades a un sistema microprocessador per la seva connectivitat amb l'exterior.
Competències relacionades: CEC3.2, CT7.2, -
Protegir contra la recepció i emissió de soroll un sistema microprocessador.
Competències relacionades: CEC1.1, CT7.2, -
Dimensionar correctament la freqüència de mostreig d'un o varis senyals segons la seva naturalesa i la càrrega computacional del micro.
Competències relacionades: CEC3.1, -
Configurar les tensions de referència d'un conversor AD amb els valors adients a partir del rang dinàmic del senyal i la resolució requerida.
Competències relacionades: CEC3.1, -
Interpretar correctament la representació d'un senyal periòdic en un diagrama de Bode i la seva descomposició en sèries de Fourier.
Competències relacionades: CT7.2, -
Donat un circuit electrònic trobar les seves impedàncies d'entrada i sortida.
Competències relacionades: CEC1.1, -
Extraure els valors correctes de les característiques elèctriques publicades pel fabricant en els manuals de referència tècnica.
Competències relacionades: G3.2, -
Seleccionar el dispositiu idoni (transistor, relé, triac, optoaillant) per a connectar càrregues externes a pins del micro. Dimensionar correctament els components necessaris per a realitzar la connexió.
Competències relacionades: CEC1.1, -
Dissenyar i interpretar correctament l'esquema electrònic d'un circuit.
Competències relacionades: CEC1.1, CT7.2, -
Defensar un disseny hardware o software basat en microprocessador en una presentació enfront els companys (objectiu de pràctiques).
Competències relacionades: CEC3.2, G3.2, CT7.2, -
Dibuixar i interpretar correctament diagrames de temps.
Competències relacionades: CT7.2, CEC3.1, -
Aprendre a usar els components de laboratori: oscil.loscopi, analitzador lògic, etc.. (objectiu de pràctiques)
Competències relacionades: CT7.2, -
Programar una sistema amb diferents sensors i interfícies complint uns requisits d'execució. (objectiu de pràctiques)
Competències relacionades: CEC2.3, CT7.2, CEC2.2, -
Dissenyar i implementar una solució amb microcontrolador per un problema donat. (objectiu de pràctiques)
Competències relacionades: CEC3.2, CEC1.1, G3.2,
Continguts
-
Introducció.
Característiques dels sistemes basats en microprocessador. Tipus, sol.lucions habituals al mercat. -
Aspectes Hardware
Hardware per sistemes basats en microcomputador. Circuits, components, diagrames de temps, disseny d'esquemàtics. Entrades i sortides. Alimentació, energia. -
Aspectes Software dels sistemes basats en microprocessador.
Optimització i inspecció de codi. Startup, linkatge, ubicació de codi, bootloaders.
Concurrència, canvi de contexte, gestió de tasques, interrupcions, RTOS. Algorismes habituals: captació de dades, control de sistemes. -
Interfícies entre sistemes. Comunicacions.
Descripció d'interfícies I2C, SPI, CAN, Ethernet, Bluetooth, RF. -
Proteccions, seguretat, compatibilitat electromagnètica.
Disseny robust al soroll, proteccions del sistema microprocessador, compatibilitat electromagnètica. Watchdog, NMI, redundància, monitorització.
Activitats
Activitat Acte avaluatiu
Introducció
Veure els tipus de solucions disponibles al mercat. Avaluar les més adecuades per un problema. Entendre la seva representació i les magnituds associades.- Teoria: Característiques dels sistemes basats en microcomputadors, característiques, tipus, solucions disponibles.
- Aprenentatge autònom: Es donarà a l'alumne un conjunt de lectures a realitzar per conèixer plataformes disponibles al mercat.
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Pràctica 1
Aprendre a usar les eines de compilació, en llenguatge ASM i C. Entendre l'arquitectura del microcomputador.- Laboratori: Revisió del micro: compilador, asm, C.
- Aprenentatge autònom: Revisió del micro: compilador, asm, C.
Continguts:
Teoria
0h
Problemes
0h
Laboratori
4h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Hardware per plaques amb microcontrolador.
Circuits, components, esquemes bàsics, diagrames de temps, eines de disseny d'esquemàtics...- Teoria: Circuits, components, esquemes bàsics, diagrames de temps, eines de disseny d'esquemàtics...
- Problemes: Es realitzaran problemes bàsics d'anàlisi de circuits amb microcontroladors.
- Aprenentatge autònom: Es donarà a l'alumne una col.lecció de problemes per practicar els coneixements mostrats a classe.
Teoria
2h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h
Pràctica 2
Eines de laboratori: analitzador, oscil.loscopi, emulador i simulador. ICD, debug.- Laboratori: Eines de laboratori: analitzador, oscil.loscopi, emulador i simulador. ICD, debug.
- Aprenentatge autònom: Aprofundir en l'ús del simulador.
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h
Teoria
0h
Problemes
0h
Laboratori
4h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
E/S Analògiques i impulsionals.
Conceptes d'E/S, com connectar sensors, ponts, resolució, precisió. Conceptes relacionats amb freqüència, mostreig, divisors de freqüència.- Teoria: Conceptes d'E/S, com connectar sensors, ponts, resolució, precisió. Conceptes relacionats amb freqüència, mostreig, divisors de freqüència.
- Problemes: Problemes bàsics de com connectar sensors a microcontroladors. Circuits amb ponts. Problemes de resolució i precisió. Problemes relacionats amb freqüència, mostreig, divisors de freqüència.
- Aprenentatge autònom: Es donaran problemes a l'alumne per la pràctica a casa dels exercicis més habituals d'E/S.
Continguts:
Teoria
3h
Problemes
4h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h
Pràctica 4
Pràctica d'E/S. Es desenvoluparà un exercici per treballar les interfícies en un sistema microcontrolador.- Laboratori: Pràctica d'E/S. Es desenvoluparà un exercici per treballar les interfícies en un sistema microcontrolador.
Continguts:
Teoria
0h
Problemes
0h
Laboratori
6h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Soroll, proteccions, compatibilitat EM.
Estudi de les proteccions contra el soroll elèctric i les radiacions EM. Garantir la compatibilitat dels sistemes dissenyats amb la resta de sistemes existents.- Teoria: Estudi de les proteccions contra el soroll elèctric i les radiacions EM. Garantir la compatibilitat dels sistemes dissenyats amb la resta de sistemes existents.
- Problemes: Problemes pràctics d'estudi de les proteccions contra el soroll en els circuits dissenyats.
- Aprenentatge autònom: Es farà un estudi sobre les proteccions contra el soroll aplicades als treballs fets a laboratori.
Continguts:
Teoria
1h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Interfícies entre sistemes
S'explicaran conceptes bàsics de les intefícies de comunicació I2C, SPI, CAN, Ethernet, Bluetooth, RF... per ser treballades a la pràctica.- Teoria: S'explicaran conceptes bàsics de les intefícies de comunicació I2C, SPI, CAN, Ethernet, Bluetooth, RF... per ser treballades a la pràctica.
- Problemes: Problemes bàsics per comprendre el funcionament de les interfícies de comunicació sèrie.
- Aprenentatge autònom: Es proposaran lectures i exercicies per aprofundir en les intefícies de comunicació I2C, SPI, CAN, Ethernet, Bluetooth, RF...
Continguts:
Teoria
2h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Sistemes de supervisió
Estudi dels sistemes de supervisió del funcionament dels microcontroladors: watchdogs, NMI, redundància...- Teoria: Estudi dels sistemes de supervisió del funcionament dels microcontroladors: watchdogs, NMI, redundància...
- Problemes: Casos pràctics dels sistemes de supervisió del funcionament dels microcontroladors: watchdogs, NMI, redundància...
- Aprenentatge autònom: Lectures relacionades amb els sistemes de supervisió del funcionament dels microcontroladors: watchdogs, NMI, redundància...
Teoria
1h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Software per microcontroladors
Optimització i inspecció de codi, startup, linkatge, ubicació del codi, bootloaders. Concurrència, canvis de context, gestió d'interrupció, tasques i RTOS.- Teoria: Optimització i inspecció de codi, startup, linkatge, ubicació del codi, bootloaders. Concurrència, canvis de context, gestió d'interrupció, tasques i RTOS.
- Problemes: Problemes d'optimització i inspecció de codi, startup, linkatge, ubicació del codi, bootloaders. Exercicis bàsics sobre concurrència, canvis de context, gestió d'interrupció, tasques i RTOS aplicats a microcontroladors.
- Aprenentatge autònom: Es faran problemes i petits treballs sobre els aspectes software dels sistemes basats en microcomputadors.
Continguts:
Teoria
3h
Problemes
3h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h
CT3. Control teoria 3
1.- S'estudiarà un article en anglès referit a aspectes software del sistemes encastats i es farà una presentació pública en català/castellà. 2.- Es farà un disseny teòric d'un sistema encastat a partir d'un enunciat. S'haurà de lliurar una memòria del disseny redactada en anglès.Objectius: 1 2 3 4 5
Setmana: 14
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Preparació dels treballs pràctics i les presentacions
S'ajudarà i guiarà als alumnes a preparar el seu treball pràctic que mostraran al final de curs.- Aprenentatge dirigit: S'ajudarà i guiarà als alumnes a preparar el seu treball pràctic que mostraran al final de curs.
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h
Metodologia docent
Hi haurà una gran complementació entre classes de teoria i problemes, les classes teòriques es reforçaran amb exemples mostrant les possibles alternatives i solucions als problemes habituals.En alguns temes es proposaran exercicis d'autoavaluació per a que l'estudiant pugui ser conscient del seu progrés, i pugui solicitar ajuda al professor en el cas de que detecti alguna carència.
Les sessions de pràctiques es realitzaran 'in situ' al laboratori docent del departament a la FIB. Hi haurà dues pràctiques grans que requeriran el treball acumulatiu dels alumnes en la confecció d'un projecte.
Mètode d'avaluació
La nota de l'assignatura s'obtindrà a partir de la mitjana ponderada de les notes de teoria (40%), de les pràctiques de laboratori (40%) i del treball final (20%)NF = 0.1 CT1 + 0.1 CT2 + 0.1 CT3 + 0.1 CT4 + 0.40 PL +0.2 TF ( CT= control de teoria, PL=Pràctiques de laboratori, TF = Treball Final)
La nota de pràctiques de laboratori (PL) s'obtindrà a partir de les notes posades a classe durant l'execució de les pràctiques. Hi haurà com a mínim dues entregues parcials de pràctiques.
D'altra banda els alumnes hauran de fer un disseny teòric d'un sistema encastat a partir d'un enunciat, aquest treball es presentarà al final de l'assignatura i donarà la nota TF. La memòria del disseny estarà redactada en anglès. S'avaluarà la qualitat del disseny, la tria de components i la presentació.
Amb la memòria en anglès i la presentació del treball final s'obtindrà la nota de la competència tranversal d'anglès (G3.2)
Bibliografia
Bàsic
-
Designing embedded hardware
- Catsoulis, J,
O'Reilly,
2005.
ISBN: 9780596007553
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002895339706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
An embedded software primer
- Simon, D.E,
Addison-Wesley,
1999.
ISBN: 020161569X
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003076329706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Better embedded system software
- Koopman, P,
Drumnadrochit Press,
2010.
ISBN: 9780984449002
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003826209706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Complementari
-
Designing Microcontroller Systems for Electrically Noisy Environments: AP-125 Application note
- Williamson, T,
Intel,
1996.
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991000861259706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
The art of electronics
- Horowitz, P.; Hill, W,
Cambridge University Press,
2015.
ISBN: 9780521809269
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004054299706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Sensores y acondicionadores de señal
- Pallas Areny, R,
Marcombo Boixareu,
2003.
ISBN: 8426713440
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002690349706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Capacitats prèvies
Programació en llenguatge d'alt nivell (preferiblement C).Programació en llenguatge ensamblador de microcomputadors.
Coneixements d'arquitectura de microcomputadors.
Coneixements de Sistemes Operatius.
Coneixement del funcionament dels diferents components electrònics: R, L, C, diodes i transistors MOS.
Anàlisi de circuits electrònics en DC. Càlcul de tensions, corrents i consums.
Saber representar números en base binària i hexadecimal, i realitzar-ne operacions aritmètico-lògiques.
Conèixer el funcionament de les diferents portes lògiques i blocs combinacionals o sequencials.
Saber analitzar i sintetitzar circuits lògics.
Conèixer el funcionament i estructura del processador.
Conèixer el funcionament i jerarquia de la memòria d'un computador.
Entendre correctament documentació escrita en anglès.
Saber redactar documentació tècnica bàsica en anglès.