Disseny de Sistemes Basats en Microcomputadors

Esteu aquí

Crèdits
6
Tipus
Obligatòria d'especialitat (Enginyeria de Computadors)
Requisits
  • Prerequisit: CI
Departament
ESAII
L'objectiu principal de l'assignatura és adquirir els coneixements necessaris per tal de dissenyar i implementar sistemes encastats tant en la seva vessant maquinari (disseny d'interfícies d'entrada/sortida, disseny de sistemes de supervisió de microcontroladors, connexió de perifèrics avançats, disseny de maquinari amb immunitat al soroll ...) com programari (programació amb recursos escassos, programació conscient del maquinari, temps real a partir d'interrupcions, concurrència de tasques de temps real, comunicacions amb perifèrics avançats ...)

Professors

Responsable

  • Enric X. Martin Rull ( )

Altres

  • Daniel Garcia Solà ( )

Hores setmanals

Teoria
1.2
Problemes
0.8
Laboratori
2
Aprenentatge dirigit
0.4
Aprenentatge autònom
5.6

Competències

Competències Transversals

Tercera llengua

  • G3 - Conèixer l'idioma anglès amb un nivell adequat de forma oral i escrita, i en consonància amb les necessitats que tindran els graduats i les graduades en Enginyeria Informàtica. Capacitat de treballar en un grup multidisciplinar i en un entorn multilingüe i de comunicar, tant per escrit com de forma oral, coneixements, procediments, resultats i idees relacionats amb la professió d'enginyer tècnic en informàtica.
    • 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.

Competències Tècniques de cada especialitat

Especialitat enginyeria de computadors

  • CEC1 - Dissenyar i construir sistemes digitals, incloent computadors, sistemes basats en microprocessadors i sistemes de comunicacions.
    • CEC1.1 - Dissenyar un sistema basat en microprocessador/microcontrolador.
  • CEC2 - Analitzar i avaluar arquitectures de computadors incloent plataformes paral·leles i distribuïdes, i desenvolupar i optimitzar software per a aquestes plataformes.
    • 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 - Desenvolupar i analitzar hardware i software per a sistemes encastats i/o de molt baix consum.
    • 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

Competències tècniques comunes

  • CT7 - Avaluar i seleccionar plataformes de producció hardware i software per a l'execució d'aplicacions i de serveis informàtics.
    • CT7.2 - Avaluar sistemes hardware/software en funció d'un criteri de qualitat determinat.

Objectius

  1. 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.

    Related competences: CEC2.3, CT7.2,
  2. Identificar les regions crítiques d'un programa, i programar correctament codi lliure de bugs deguts al compartiment de dades.

    Related competences: CEC2.2, CEC3.1,
  3. Determinar les parts del codi que calen ser programades en assemblador, i les que es poden programar en llenguatge d'alt nivell.

    Related competences: CEC2.2,
  4. Dimensionar correctament la temporització del watchdog, i ubicar els ‘kicks' del watchdog de forma correcta dins del codi.

    Related competences: CEC3.2,
  5. 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.
    Related competences: CT7.2, CEC3.1,
  6. Determinar la millor interfície de comunicació sèrie per la comunicació entre dos circuits integrats (processadors, processadors-interfície).
    Related competences: CEC2.3,
  7. Generar les rutines mínimes d'abstracció de hardware per qualsevol interfície de comunicacions.
    Related competences: CEC2.3,
  8. Col.locar les proteccions adequades a un sistema microprocessador per la seva connectivitat amb l'exterior.
    Related competences: CEC3.2, CT7.2,
  9. Protegir contra la recepció i emissió de soroll un sistema microprocessador.
    Related competences: CEC1.1, CT7.2,
  10. Dimensionar correctament la freqüència de mostreig d'un o varis senyals segons la seva naturalesa i la càrrega computacional del micro.
    Related competences: CEC3.1,
  11. 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.
    Related competences: CEC3.1,
  12. Interpretar correctament la representació d'un senyal periòdic en un diagrama de Bode i la seva descomposició en sèries de Fourier.
    Related competences: CT7.2,
  13. Donat un circuit electrònic trobar les seves impedàncies d'entrada i sortida.

    Related competences: CEC1.1,
  14. Extraure els valors correctes de les característiques elèctriques publicades pel fabricant en els manuals de referència tècnica.

    Related competences: G3.2,
  15. 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ó.

    Related competences: CEC1.1,
  16. Dissenyar i interpretar correctament l'esquema electrònic d'un circuit.

    Related competences: CEC1.1, CT7.2,
  17. Defensar un disseny hardware o software basat en microprocessador en una presentació enfront els companys (objectiu de pràctiques).
    Related competences: CEC3.2, G3.2, CT7.2,
  18. Dibuixar i interpretar correctament diagrames de temps.
    Related competences: CT7.2, CEC3.1,
  19. Aprendre a usar els components de laboratori: oscil.loscopi, analitzador lògic, etc.. (objectiu de pràctiques)
    Related competences: CT7.2,
  20. Programar una sistema amb diferents sensors i interfícies complint uns requisits d'execució. (objectiu de pràctiques)
    Related competences: CEC2.3, CT7.2, CEC2.2,
  21. Dissenyar i implementar una solució amb microcontrolador per un problema donat. (objectiu de pràctiques)
    Related competences: CEC3.2, CEC1.1, G3.2,

Continguts

  1. Introducció.
    Característiques dels sistemes basats en microprocessador. Tipus, sol.lucions habituals al mercat.
  2. Eines de laboratori.
    Oscil.loscopi, analitzador lògic, emulador, simulador, ICD, debuggers.
  3. Aspectes Hardware
    Hardware per sistemes basats en microcomputador. Circuits, components, diagrames de temps, disseny d'esquemàtics.
  4. E/S analògiques i impulsionals.
    Com connectar sensors a un microprocessador, interfícies. Ponts, resolució, precissió.
    Entrades impulsionals. Límits, freqüència.
  5. 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.
  6. Interfícies entre sistemes.
    Descripció d'interfícies I2C, SPI, CAN, Ethernet, Bluetooth, RF.
  7. Supervisió i seguretat.
    Watchdog, NMI, redundància, monitorització.
  8. Proteccions, compatibilitat.
    Disseny robust al soroll, proteccions del sistema microprocessador, compatibilitat electromagnètica.

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.
Objectius: 16 18
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.
Objectius: 19
Continguts:
Teoria
0h
Problemes
0h
Laboratori
2h
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.
Objectius: 12 13 14 15 16
Continguts:
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.
Objectius: 19
Continguts:
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Pràctica 3

Posada en marxa del microcontrolador, proves soft i hardware.
Objectius: 20
Continguts:
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

CT1. Control teoria 1

Es farà un exercici de circuits bàsics en el muntatge un microcomputador
Objectius: 10 11 12 13 14 15 16 18
Setmana: 4
Tipus: examen de teoria
Teoria
1h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

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.
Objectius: 10 11 12
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.
Objectius: 20
Continguts:
Teoria
0h
Problemes
0h
Laboratori
6h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

PL1. Prova Laboratori 1

Es farà un exercici in situ sobre els aspectes hardware del sistema microcomputador.
Objectius: 19 20
Setmana: 7
Tipus: examen de laboratori
Teoria
0h
Problemes
0h
Laboratori
2h
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.
Objectius: 8 9
Continguts:
Teoria
1h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Teoria
0h
Problemes
0h
Laboratori
10h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

CT2. Control teoria 2

Es farà un exercici de tota la interconnexió d'un microcontrolador en una placa i les seves E/S.
Objectius: 6 7 10 16 18
Setmana: 8
Tipus: examen de teoria
Teoria
1h
Problemes
0h
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...
Objectius: 6 7
Continguts:
Teoria
3h
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...
Objectius: 4
Continguts:
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.
Objectius: 1 2 3 5
Continguts:
Teoria
3h
Problemes
3h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
14h

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
Tipus: examen de teoria
Teoria
1h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

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.
Objectius: 17
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
3h
Aprenentatge autònom
0h

PTL. Presentació del treball de Laboratori

Es presentarà al professor el treball pràctic de laboratori i es comprovarà el seu funcionament.
Objectius: 8 9 17 21
Setmana: 15 (Fora d'horari lectiu)
Tipus: examen final
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
3h
Aprenentatge autònom
4h

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àsica:

Complementaria:

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.