Projecte d'Enginyeria de Computadors

Esteu aquí

Crèdits
6
Tipus
Obligatòria d'especialitat (Enginyeria de Computadors)
Requisits
  • Precorequisit: AC2
  • Precorequisit: DSBM
  • Precorequisit: SO2
Departament
AC;ESAII
Aquesta assignatura és impartida pel departament d'ESAII i el departament d'AC en quadrimestres alterns. El projecte a realitzar (i les seves tasques associades) és una mica diferent en funció del quadrimestre.

El quadrimestre de tardor (Q1) és impartit pel departament d'ESAII i el projecte consistirà en la obtenció d'un prototip en funcionament d'un disseny basat en sistemes encastats que haurà de complir amb unes especificacions marcades a principi del curs.

El quadrimestre de primavera (Q2) és impartit pel departament d'AC i el projecte consistirà en implementar completament un processador senzill en un dispositiu programable i programar un petit nucli de Sistema Operatiu.

Professors

Responsable

  • Josep-Llorenç Cruz Diaz ( )

Altres

  • Antonio Benito Martínez Velasco ( )
  • Carlos Morata Núñez ( )

Competències

Competències Transversals

Treball en equip

  • G5 - Ser capaç de treballar com a membre d'un equip, ja sigui com a un membre més, ja sigui realitzant tasques de direcció, amb la finalitat de contribuir a desenvolupar projectes d'una manera pragmàtica i amb sentit de la responsabilitat; assumir compromisos tenint en compte els recursos disponibles.
    • G5.3 - Identificar els rols, les habilitats i les carències dels diferents membres del grup. Proposar millores en l'estructura del grup. Interactuar amb eficàcia i professionalitat. Negociar i gestionar conflictes en el grup. Reconèixer i donar suport o assumir el paper de líder en el grup de treball. Avaluar i presentar els resultats del treball de grup. Representar el grup en negociacions amb terceres persones. Capacitat de col·laborar en un entorn multidisciplinar. Conèixer i saber aplicar les tècniques per a promoure la creativitat.

Emprenedoria i innovació

  • G1 - Conèixer i comprendre l'organització d'una empresa i les ciències que regeixen la seva activitat; capacitat de comprendre les regles laborals i les relacions entre la planificació, les estratègies industrials i comercials, la qualitat i el benefici. Desenvolupar la creativitat, l'esperit emprenedor i la tendència a la innovació.
    • G1.3 - Ser resolutiu. Utilitzar coneixements i habilitats estratègiques per a la creació i la gestió de projectes, aplicar solucions sistèmiques a problemes complexos, i dissenyar i gestionar la innovació en la organització. Demostrar flexibilitat i professionalitat en el desenvolupament de la seva feina.

Comunicació eficaç oral i escrita

  • G4 - Comunicar de forma oral i escrita amb altres persones coneixements, procediments, resultats i idees. Participar en debats sobre temes propis de l'activitat de l'enginyer tècnic en informàtica.
    • G4.3 - Comunicar-se de manera clara i eficient en presentacions orals i escrites sobre temes complexos, adaptant-se a la situació, al tipus de públic i als objectius de la comunicació, utilitzant les estratègies i els mitjans adequats. Analitzar, valorar i respondre adequadament a les preguntes de l'auditori.

Competències Tècniques

Competències tècniques comunes

  • CT6 - Demostrar coneixement i comprensió del funcionament intern d'un computador i del funcionament de les comunicacions entre ordinadors.
    • CT6.2 - Demostrar coneixement, comprensió i capacitat d'avaluar l'estructura i l'arquitectura dels computadors, i els components bàsics que els componen.
  • CT7 - Avaluar i seleccionar plataformes de producció hardware i software per a l'execució d'aplicacions i de serveis informàtics.
    • CT7.1 - Demostrar coneixement de les mètriques de qualitat i saber-les utilitzar.
  • CT8 - Planificar, concebre, desplegar i dirigir projectes, serveis i sistemes informàtics en tots els àmbits, liderar-ne la posada en marxa, la millora contínua i valorar-ne l'impacte econòmic i social.
    • CT8.7 - Controlar versions i configuracions del projecte.

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.1 - Analitzar, avaluar, seleccionar i configurar plataformes hardware per al desenvolupament i l'execució d'aplicacions i serveis informàtics.
    • 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.2 - Desenvolupar processadors específics i sistemes encastats; desenvolupar i optimitzar el software d'aquests sistemes. 

Objectius

  1. Nombrar i definir els conceptes bàsics en la gestió de projectes
    Related competences: G1.3, G4.3, G5.3,
  2. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Especificar els objectius d'un sistema encastat
    Related competences: G1.3, G5.3, CT6.2,
  3. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Descriure el hardware d'un sistema enquestat a partir de les especificacions
    Related competences: CEC2.1, G5.3, CEC1.1, CT6.2, CT8.7,
  4. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Obtenir el disseny hardware a partir de l'esquema de blocs
    Related competences: CEC2.1, CEC3.2, G5.3, CEC1.1, CT6.2,
  5. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Implementar el hardware d'un sistema encastat
    Related competences: CEC2.1, CEC3.2, CEC1.1,
  6. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Obtenir el disseny software d'un sistema enquestat a partir de les especificacions
    Related competences: CEC2.3, CEC3.2, G5.3, CEC1.1, CT8.7,
  7. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Implementar el software d'un sistema encastat
    Related competences: G1.3, CEC2.3, CEC3.2, G5.3, CEC1.1, CEC2.2,
  8. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Integrar el disseny hardware i software en un prototipus
    Related competences: CEC2.1, CEC3.2, G5.3, CT8.7,
  9. (Q2 – Projecte d'implementació d'un processador) Usar correctament el llenguatge de descripció del hardware (VHDL) i dissenyar sistemes digitals utilitzant un llenguatge de descripció del hardware.
    Related competences: CEC1.1, CEC2.2,
  10. (Q2 – Projecte d'implementació d'un processador) Usar les eines i programar les plaques de desenvolupament per a una FPGA.
    Related competences: CEC1.1, CEC2.2,
    Subcompetences:
    • Fer servir correctament eines de simulació.
  11. (Q2 – Projecte d'implementació d'un processador) Comprendre i posar en pràctica la microarquitectura d'un processador a nivell bàsic i avançat.
    Related competences: CEC2.1, CEC1.1, CT6.2,
    Subcompetences:
    • Entendre alguna de les restriccions tecnològiques en la implementació d'un processador.
  12. (Q2 – Projecte d'implementació d'un processador) Implementar un processador senzill (reduït) unicicle.
    Related competences: G5.3, CEC1.1, CT6.2, CEC2.2,
    Subcompetences:
    • Dissenyar els blocs bàsics (banc de registres i ALU) d'un processador.
    • Dissenyar un sistema d'arrancada per a un processador.
    • Dissenyar una memòria (ROM/RAM) en una FPGA.
    • Interpretar correctament l'esquema electrònic d'un circuit.
    • Fer servir correctament eines de depuració.
    • Dissenyar una unitat de control d'un processador.
  13. (Q2 – Projecte d'implementació d'un processador) Implementar un processador multicicle.
    Related competences: G5.3, CEC1.1, CT6.2, CT8.7, CEC2.2,
    Subcompetences:
    • Dibuixar i interpretar correctament els diagrames de temps dels senyals d'un circuit.
    • Dissenyar un controlador de memòria per a l'ús de memòries externes a la FPGA.
    • Crear diferents senyals de rellotge per a el funcionament dels diferents components del computador.
  14. (Q2 – Projecte d'implementació d'un processador) Implementar un processador amb característiques avançades.
    Related competences: CT7.1, CT6.2,
    Subcompetences:
    • Avaluar el consum i el rendiment del processador implementat.
    • Crear un SoC (System on Chip) afegint els controladors de pantalla VGA y teclat PS/2 al processador.
    • Afegir suport a interrupcions i excepcions.
    • Afegir un suport bàsic per part del processador per als sistemes operatius actuals (gestió de memòria virtual i execució d'instruccions de forma privilegiada).
  15. (Q2 – Projecte d'implementació d'un processador) Presentar i defensar alternatives de disseny hardware per a diferents components del processador.
    Related competences: G1.3, G4.3, CT6.2,
  16. (Q2 – Projecte d'implementació d'un processador) Implementar un petit nucli de Sistema Operatiu per al processador dissenyat.
    Related competences: CEC2.3, CEC3.2, CEC2.2,

Continguts

  1. Introducció.
    Una breu presentació de l'assignatura. Una introducció a la gestió de projectes. En el Q1 una introducció al disseny basat en sistemes encastats i en el Q2 una introducció al dispositius programables (FPGA) i als llenguatges de descripció de hardware
  2. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Desenvolupament d'un projecte de sistema encastat
    Etapes de desenvolupament i planificació d'un sistema encastat.
    Eines de desenvolupament. Repercussions sòcio-ambientals del projecte. Memòria i plec de condicions.
  3. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Descripció hardware dels sistemes encastats
    Tècniques i eines de descripció del hardware d'un sistema encastat. Diagrames de blocs. Esquemes elèctrics. Sistemes de captura d'esquemes
  4. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Implementació hardware dels sistemes encastats
    Mètodes i eines per a l'obtenció d'un prototipus a partir del disseny
  5. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Disseny de sistemes autònoms low cost low power
    Es presenten les alternatives de disseny per tal d'obtenir sistemes de baix consum i baix cost
  6. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Descripció software dels sistemes encastats
    Tècniques i eines de descripció del software d'un sistema encastat. Diagrames de flux, diagrames d'estats, disseny basat en models. Idoneïtat segons l'aplicació.
  7. (Q1 – Projecte de disseny i implementació d'un sistema encastat) Implementació software dels sistema encastats
    Depuració i prova del firmware dels sistemes encastats
  8. (Q2 – Projecte d'implementació d'un processador) Eines de desenvolupament d'FPGA.
    Eines per a la descripció y programació de hardware sobre FPGA. Simuladors y depuradors (debuggers) de circuits. Descripció de la placa de proves. Implementació d'alguns blocs bàsics (multiplexors, sumadors, rellotges) en una placa de proves.
  9. (Q2 – Projecte d'implementació d'un processador) Llenguatges de descripció de hardware.
    Repàs dels conceptes bàsics de VHDL y ampliació dels coneixements en llenguatges de descripció del hardware.
  10. (Q2 – Projecte d'implementació d'un processador) Descripció del processador.
    Repàs d'alguns de des coneixements y tècniques adquirits prèviament en el disseny de computadors. Mostar el repertori d'instruccions i el disseny de blocs hardware del processador a implementar.
  11. (Q2 – Projecte d'implementació d'un processador) Implementació bàsica del processador.
    Implementació d'un processador bàsic (banc de registres i ALU simple) unicicle. Implementació d'una memòria en una FPGA.
  12. (Q2 – Projecte d'implementació d'un processador) Implementació del processador complert.
    Implementació d'un processador segmentat multicicle. Implementació d'un controlador de memòria que gestioni memòries ROM i RAM externes a la FPGA. Implementació més complerta d'una ALU i de les instruccions de salt. Implementació d'un controlador dels sistemes d'entrada/sortida. Afegir suport a interrupcions i excepcions. Afegir un suport bàsic per part del processador per als sistemes operatius actuals (gestió de memòria virtual i execució d'instruccions de forma privilegiada).

Activitats

Activitat Acte avaluatiu


Introducció

  • (Q1) – Projecte de disseny i implementació d'un sistema encastat

    Presentació de l'assignatura. Introducció a la gestió de projectes. Introducció al disseny basat en sistemes encastats.

  • (Q2) – Projecte d'implementació d'un processador

    Presentació de l'assignatura. Introducció a la gestió de projectes. Introducció al dispositius programables (FPGA) i als llenguatges de descripció de hardware.

    • Laboratori:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Conceptes teòrics sobre la gestió de projectes. Definició del projecte. Etapes i tasques de desenvolupament.

    • (Q2) – Projecte d'implementació d'un processador

      Conceptes teòrics sobre la gestió de projectes i sobre el funcionament dels dispositius programables (FPGA)

    Objectius: 1
    Continguts:
  • Teoria
    0h
    Problemes
    0h
    Laboratori
    2h
    Aprenentatge dirigit
    0h
    Aprenentatge autònom
    0h

    Fase inicial del projecte

  • (Q1) – Projecte de disseny i implementació d'un sistema encastat

    Especificacions i objectius del projecte. Obtenir unes especificacions dels sistema a partir de les alternatives donades pel professor. Definició dels blocs de tasques de desenvolupament i distribució en els diferents grups de laboratori. Diagrama de Gannt del projecte. Diagrama de blocs del sistema complint amb les especificacions. Generar un primer esquema del Hardware de la placa base del sistema.

  • (Q2) – Projecte d'implementació d'un processador

    Aprendre conceptes de VHDL. Pautes del disseny de blocs tipus sumadors, comptadors, registres.

    • Laboratori:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Discussió de les diferents alternatives. Consensuar una proposta d'objectius i prestacions. Estudiar els dispositius, interfícies i perifèrics externs que necessita el sistema per complir les especificacions. Identificació dels diferents blocs de tasques a realitzar. Distribuir els diferents blocs entre els grups de laboratori. Aprendre a utilitzar la captura d'esquemes de l'eina CAD de disseny de circuits impresos.

    • (Q2) – Projecte d'implementació d'un processador

      Recordar conceptes bàsics VHDL. Fer un exemple pas a pas i complert amb diagrama de blocs (Schematic) i després amb VHDL implementar un circuit fent servir els switch i els leds de la placa. Aprendre a fer servir el simulador Qsim. Explicar conceptes nous d'VHDL i pautes del disseny de blocs tipus sumadors, comptadors, registres. Explicar funcionament del rellotge de la placa FPGA i com fer-ne múltiples amb VHDL. Treballar en la connexió i jerarquia de components en VHDL.

    • Aprenentatge autònom:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Generar unes especificacions tècniques del sistema. Generar diagrama de Gannt del projecte. Generar l'esquema de blocs del sistema a partir de les especificacions del projecte. Generar un primer esquema hard de la placa base del sistema a partir del diagrama de blocs, utilitzant una eina de captura d'esquemes compatible amb eines CAD de disseny de circuits impresos.

    • (Q2) – Projecte d'implementació d'un processador

      Dissenyar blocs senzills (multiplexor Mx4-1). Aprendre a utilitzar els interruptors, polsadors i visors 7-segments de la placa. Fer un traductor d'alguns caràcters alfabètics codificats en 4 bits, emmagatzemats en un registre, al alfabet Morse i mostrar el resultat pels leds de la placa.

    Objectius: 9 10 2 3 4
    Continguts:
  • Teoria
    0h
    Problemes
    0h
    Laboratori
    6h
    Aprenentatge dirigit
    0h
    Aprenentatge autònom
    6h

    Fase intermèdia del projecte

  • (Q1) – Projecte de disseny i implementació d'un sistema encastat

    Obtenció de la placa base prototip del sistema. Implementació del software del sistema. Obtenir el firmware de control dels diferents dispositius externs (perifèrics, interfícies ,sensors i actuadors). Posada en funcionament de la placa base i dels dispositius externs.

  • (Q2) – Projecte d'implementació d'un processador

    Primer implementar un processador unicicle senzill tipus RISC. Aquest processador estarà format nomes per dos blocs (Banc de Registres i ALU) i una petita lògica de control. Aquest processador serà la base per més endavant desenvolupar-ne un més complert. Seguidament implementar un processador multicicle. Recordar el concepte de fases d'execució. A més a més el processador gestionarà una memòria RAM externa per a les dades i una memòria Flash amb el programa a executar.

    • Laboratori:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Construcció d'un placa base prototip que inclou una CPU amb la connexió dels diferents dispositius extern (perifèrics, interfícies, sensors i actuadors) atenent a les metodologies descrites pel professor. Disposició dels elements necessaris per garantir l'alimentació de la placa base i de tots els dispositius externs. Posada en funcionament del prototip base i dels diferents dispositius externs. Depuració i perfeccionament del codi de funcionament de la placa base, així com del codi dels diferents dispositius externs per separat.

    • (Q2) – Projecte d'implementació d'un processador

      Primer aprendre l'arquitectura del processador bàsic, el seu repertori d'instruccions i el seu funcionament. Aprendre a fer un banc de registres i una ALU d'exemple en VHDL. Aprendre dissenyar el sistema d'arrancada per al processador. Aprendre a dissenyar una memòria (ROM/RAM) en una FPGA. Dissenyar el Banc de Registres del processador i l'ALU. Comprovar el seu funcionament amb un simulador. Dissenyar la lògica de control del processador. Fer una memòria ROM a la FPGA i carregar-hi instruccions per a ser executades. Executar el primer programa en el computador. Seguidament, aprendre el processador multicicle per poder fer accessos a memòria. Aprendre el sistema de memòria del processador (concepte bàsic). Recordar el concepte de fases d'execució (fetch, decode, execució, accés a memòria, escriptura dades). Aprendre a implementar un graf d'estats amb VHDL. Aprendre a generar diversos senyals de rellotge i a fer un circuit d'inicialització. Fer una ALU complerta per al processador. Aprendre a crear i interpretar correctament els diagrames de temps dels senyals d'un circuit. Aprendre a dissenyar un controlador de memòria per a l'ús de memòries externes a la FPGA. Crear diferents senyals de rellotge per al funcionament dels diferents components del computador. Implementar el graf d'estats de control del processador mitjançant VHDL. Modificar l'ALU del processador per a que sigui complerta. Modificar la UC per a suportar les noves instruccions. Afegir noves instruccions de salt i implementar el nou fetch. Afegir dispositius d’entrada/sortida.

    • Aprenentatge autònom:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Generació del codi del sistema base i dels dispositius externs en llenguatge C i amb l'entorn de desenvolupament proposat, atenent al disseny del software i a les recomanacions proposades pel professor.

    • (Q2) – Projecte d'implementació d'un processador

      Desenvolupar les tasques començades al laboratori.

    Objectius: 11 12 13 4 5 6
    Continguts:
  • Teoria
    0h
    Problemes
    0h
    Laboratori
    20h
    Aprenentatge dirigit
    0h
    Aprenentatge autònom
    26h

    Fase avançada del projecte

  • (Q1) – Projecte de disseny i implementació d'un sistema encastat

    Integració hardware de tots els dispositius externs a la placa base. Integració del firmware de control dels dispositius externs a la placa base.

  • (Q2) – Projecte d'implementació d'un processador

    Connectar dispositius d'entrada/sortida més complexos. Implementar sistemes i estructures avançades en un processador. Afegir suport a interrupcions i excepcions. Afegir un suport bàsic per part del processador per als sistemes operatius actuals (gestió de memòria virtual i execució d'instruccions de forma privilegiada). Inicialització del sistema operatiu. Anàlisi de recursos.

    • Laboratori:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Connexió de tots els dispositius externs a la placa base. Integració del codi de control dels dispositius externs amb el codi de la placa base. Proves i depuració dels codis.

    • (Q2) – Projecte d'implementació d'un processador

      Connectar controladors de pantalla VGA y teclat PS/2 al processador dissenyat per crear un SoC (System on Chip). Afegir el sistema de gestió d’interrupcions i excepcions al processador i generar jocs de proves que funcionin per interrupcions. Definir el mode sistema del processador i afegir el sistema de crides a sistema. Definir i afegir una TLB al processador i les instruccions per a gestionar-la. Implementació d’un sistema d’arrancada per a un sistema operatiu. Dissenyar un mini sistema operatiu que funcioni sobre la placa amb el processador implementat. Aquest sistema operatiu gestionarà el mecanismes d’entrada/sortida al sistema i gestionarà la memòria basada en paginació i el control de processos. Analitzar els recursos utilitzats. Fer anàlisis del rendiment, cost. Possibles optimitzacions.

    • Aprenentatge autònom:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Adaptació dels codis, sistema base i control de dispositius externs per la integració en un únic sistema.

    • (Q2) – Projecte d'implementació d'un processador

      Desenvolupar les tasques començades al laboratori.

    Objectius: 13 14 5 7 8
    Continguts:
  • Teoria
    0h
    Problemes
    0h
    Laboratori
    20h
    Aprenentatge dirigit
    0h
    Aprenentatge autònom
    26h

    Fase final del projecte

  • (Q1) – Projecte de disseny i implementació d'un sistema encastat

    Verificar que les prestacions i el funcionament del sistema integrat compleixen les especificacions i objectius marcats inicialment. Correcció i ajust de les desviacions.

  • (Q2) – Projecte d'implementació d'un processador

    Proposar e implementar millores en les capacitats del processadors, en l'arquitectura del processador, en els dispositius d'entrada/sortida o en el sistema operatiu del projecte realitzat.

    • Laboratori:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Correcció i ajust de les desviacions detectades en els objectius, prestacions o funcionament del sistema integrat.

    • (Q2) – Projecte d'implementació d'un processador

      A partir d’un disseny del processador que s’ha implementat afegir-li funcionalitats noves o millorar les ja existents a nivell d’arquitectura o sistema operatiu.

    • Aprenentatge autònom:
    • (Q1) – Projecte de disseny i implementació d'un sistema encastat

      Proves en el entorn de treball del sistema. Detecció de les desviacions en els objectius, prestacions o funcionament del sistema respecte les marcades en les especificacions inicials. Valoració dels resultats obtinguts. Obtenció d'una memòria del projecte.

    • (Q2) – Projecte d'implementació d'un processador

      Desenvolupar les tasques començades al laboratori.

    Objectius: 15 5 7 8 16
    Continguts:
  • Teoria
    0h
    Problemes
    0h
    Laboratori
    12h
    Aprenentatge dirigit
    0h
    Aprenentatge autònom
    18h

    Presentació oral del treball de recerca i avaluació de competències transversals.


    Objectius: 15
    Setmana: 15
    Tipus: entrega
    Teoria
    0h
    Problemes
    0h
    Laboratori
    0h
    Aprenentatge dirigit
    3h
    Aprenentatge autònom
    8h

    Entrega de la pràctica (documentació i codi) i entrevista del projecte



    Setmana: 15
    Tipus: entrega
    Teoria
    0h
    Problemes
    0h
    Laboratori
    0h
    Aprenentatge dirigit
    3h
    Aprenentatge autònom
    0h

    Metodologia docent

    L'assignatura només tindrà classes de laboratori. Al inici de cada sessió de laboratori es farà una breu explicació teòrica, d'uns 20 minuts de durada. Aquesta explicació teòrica serà per recordar els conceptes apresos en assignatures anteriors i per presentar en detall la tasca a realitzar en la sessió de laboratori.
    Les classes de laboratori seran setmanals.

    Durant el quadrimestre de tardor (Q1) es dissenyarà i es construirà el prototipus del sistema encastat, que es detallarà a les explicacions teòriques, amb l'ajuda d'un entorn de desenvolupament de microcontroladors i les tècniques d'implementació de prototipus.

    Durant el quadrimestre de primavera (Q2) al laboratori s'implementarà en una placa de desenvolupament de FPGA el processador mostrat a les explicacions teòriques, fent servir eines de desenvolupament professionals.

    Totes aquesta implementacions i dissenys es realitzaran en grups de 2 persones.

    Mètode d'avaluació

    (Q1) – Projecte de disseny i implementació d'un sistema encastat

    La nota final (NF) estarà formada per la suma de tres components:

    NF = 20% NP1 + 40% NP2 + 40% NP3
    · La nota NP1 correspon a les tasques realitzades durant la fase d'especificació del projecte (fase inicial del projecte)
    · La nota NP2 correspon a la avaluació de la implementació i integració del hardware i del software del sistema (fases intermèdia i avançada del projecte).
    · La nota NP3 correspon als resultats obtinguts comparant les especificacions i objectius marcats al principi de curs (fase final del projecte).

    Les notes de les competències transversals s'obtindran de la següent manera:
    Emprenedoria i innovació: es tindrà en compte la iniciativa en trobar solucions innovadores així com la seva originalitat

    Treball en equip: es tindrà en compte el treball de coordinació del propi grup de treball així com la coordinació entre els diferents grups a l'hora de prendre decisions de disseny i implementació comunes al projecte

    Comunicació eficaç oral i escrita: s'avaluarà la memòria del projecte així com la seva presentació oral. Es presentarà oralment fora d'hores de classe al final del curs (en hores d'activitats dirigides).



    (Q2) – Projecte d'implementació d'un processador

    La nota final (NF) estarà formada per la suma de tres components:

    NF = 5% NP1 + 75% NP2 + 20% NP3
    · La nota NP1 correspon a les tasques realitzades durant la fase d'aprenentatge de les eines i tècniques (fase inicial del projecte).
    · La nota NP2 correspon a la implementació del processador (fases intermèdia i avançada del projecte).
    · La nota NP3 correspon a la proposta e implementació de millores en el processador (fase final del projecte).

    Cadascuna de les notes NP2 i NP3 s'obtindran a partir de l'entrega i comprovació del funcionament de tot el disseny implementat i de l'entrega d'un informe sobre el projecte realitzat.

    Les notes de les competències transversals d'emprenedoria i innovació, i de treball en equip s'obtindran a partir de les propostes presentades en la fase avançada del projecte i dels resultats obtinguts.

    Les notes de la competència transversal comunicació eficaç oral i escrita s'obtindran mitjançant la preparació d'un treball escrit relacionat amb el temari del curs i d'una breu presentació oral. El treball es presentarà oralment fora d'hores de classe al final del curs (en hores d'activitats dirigides).

    La qualificació de les competències transversals: Tindran valors A, B, C o D (on A correspon a un nivell excel·lent, B correspon a un nivell desitjat, C correspon a un nivell suficient i D correspon a un nivell no superat).

    Bibliografia

    Bàsica:

    Complementaria:

    Web links

    Capacitats prèvies

    L'estudiant ha de tenir les capacitats tècniques que li atorguen les assignatures cursades prèviament a més d'un nivell d'anglès suficient per a llegir i entendre una documentació tècnica.

    Coneixements de programació en llenguatge màquina i en codi assemblador.
    Conèixer el funcionament de les diferents portes lògiques i blocs combinacionals o seqüencials.
    Saber analitzar i sintetitzar circuits lògics.
    Saber el funcionament d'un computador a nivell de components i interconnexions.
    Conèixer el funcionament, els elements principals i l'estructura d'un processador.
    Coneixements de Sistemes Operatius a nivell de desenvolupador.
    Coneixements sobre l'arquitectura i funcionament els microcontroladors
    Saber configurar perifèrics integrats als microcontroladors
    Saber interconnectar els microcontroladors a perifèrics externs
    Coneixements del disseny de sistemes encastats (S.E)
    Aspectes Hardware i software dels SE
    Saber utilitzar les eines pel desenvolupament de S.E