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.
Professorat
Responsable
- Antonio Benito Martínez Velasco ( antonio.b.martinez@upc.edu )
- Josep-Llorenç Cruz Diaz ( cruz@ac.upc.edu )
Altres
- Carlos Morata Núñez ( carlos.morata@upc.edu )
Competències
Treball en equip
- 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.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.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 comunes
- 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.1 - Demostrar coneixement de les mètriques de qualitat i saber-les utilitzar.
- CT8.7 - Controlar versions i configuracions del projecte.
Especialitat enginyeria de computadors
- CEC1.1 - Dissenyar un sistema basat en microprocessador/microcontrolador.
- 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.2 - Desenvolupar processadors específics i sistemes encastats; desenvolupar i optimitzar el software d'aquests sistemes.
Objectius
-
Nombrar i definir els conceptes bàsics en la gestió de projectes
Competències relacionades: G1.3, G4.3, G5.3, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Especificar els objectius d'un sistema encastat
Competències relacionades: G1.3, G5.3, CT6.2, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Descriure el hardware d'un sistema enquestat a partir de les especificacions
Competències relacionades: CEC2.1, G5.3, CEC1.1, CT6.2, CT8.7, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Obtenir el disseny hardware a partir de l'esquema de blocs
Competències relacionades: CEC2.1, CEC3.2, G5.3, CEC1.1, CT6.2, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementar el hardware d'un sistema encastat
Competències relacionades: CEC2.1, CEC3.2, CEC1.1, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Obtenir el disseny software d'un sistema enquestat a partir de les especificacions
Competències relacionades: CEC2.3, CEC3.2, G5.3, CEC1.1, CT8.7, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementar el software d'un sistema encastat
Competències relacionades: G1.3, CEC2.3, CEC3.2, G5.3, CEC1.1, CEC2.2, -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Integrar el disseny hardware i software en un prototipus
Competències relacionades: CEC2.1, CEC3.2, G5.3, CT8.7, -
(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.
Competències relacionades: CEC1.1, CEC2.2, -
(Q2 - Projecte d'implementació d'un processador) Usar les eines i programar les plaques de desenvolupament per a una FPGA.
Competències relacionades: CEC1.1, CEC2.2,
Subcompetences- Fer servir correctament eines de simulació.
-
(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.
Competències relacionades: CEC2.1, CEC1.1, CT6.2,
Subcompetences- Entendre alguna de les restriccions tecnològiques en la implementació d'un processador.
-
(Q2 - Projecte d'implementació d'un processador) Implementar un processador senzill (reduït) unicicle.
Competències relacionades: 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.
-
(Q2 - Projecte d'implementació d'un processador) Implementar un processador multicicle.
Competències relacionades: 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.
-
(Q2 - Projecte d'implementació d'un processador) Implementar un processador amb característiques avançades.
Competències relacionades: CT7.1, CT6.2,
Subcompetences- 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).
- Crear un SoC (System on Chip) afegint els controladors de pantalla VGA y teclat PS/2 al processador.
- Avaluar el consum i el rendiment del processador implementat.
- Afegir suport a interrupcions i excepcions.
-
(Q2 - Projecte d'implementació d'un processador) Presentar i defensar alternatives de disseny hardware per a diferents components del processador.
Competències relacionades: G1.3, G4.3, CT6.2, -
(Q2 - Projecte d'implementació d'un processador) Implementar un petit nucli de Sistema Operatiu per al processador dissenyat.
Competències relacionades: CEC2.3, CEC3.2, CEC2.2,
Continguts
-
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 -
(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.
-
(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 -
(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 -
(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 -
(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ó. -
(Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació software dels sistema encastats
Depuració i prova del firmware dels sistemes encastats -
(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. -
(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. -
(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. -
(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. -
(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ó
<li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Presentació de l'assignatura. Introducció a la gestió de projectes. Introducció al disseny basat en sistemes encastats. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Presentació de l'assignatura. Introducció a la gestió de projectes. Introducció al dispositius programables (FPGA) i als llenguatges de descripció de hardware.- Laboratori: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Conceptes teòrics sobre la gestió de projectes. Definició del projecte. Etapes i tasques de desenvolupament. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Conceptes teòrics sobre la gestió de projectes i sobre el funcionament dels dispositius programables (FPGA)
Continguts:
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Fase inicial del projecte
<li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Aprendre conceptes de VHDL. Pautes del disseny de blocs tipus sumadors, comptadors, registres.- Laboratori: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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.
Continguts:
- 9 . (Q2 - Projecte d'implementació d'un processador) Llenguatges de descripció de hardware.
- 8 . (Q2 - Projecte d'implementació d'un processador) Eines de desenvolupament d'FPGA.
- 2 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Desenvolupament d'un projecte de sistema encastat
- 5 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Disseny de sistemes autònoms low cost low power
Teoria
0h
Problemes
0h
Laboratori
6h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h
Fase intermèdia del projecte
<li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Desenvolupar les tasques començades al laboratori.
Continguts:
- 10 . (Q2 - Projecte d'implementació d'un processador) Descripció del processador.
- 11 . (Q2 - Projecte d'implementació d'un processador) Implementació bàsica del processador.
- 2 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Desenvolupament d'un projecte de sistema encastat
- 3 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Descripció hardware dels sistemes encastats
- 4 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació hardware dels sistemes encastats
- 7 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació software dels sistema encastats
Teoria
0h
Problemes
0h
Laboratori
20h
Aprenentatge dirigit
0h
Aprenentatge autònom
26h
Fase avançada del projecte
<li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Integració hardware de tots els dispositius externs a la placa base. Integració del firmware de control dels dispositius externs a la placa base. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Adaptació dels codis, sistema base i control de dispositius externs per la integració en un únic sistema. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Desenvolupar les tasques començades al laboratori.
Continguts:
- 12 . (Q2 - Projecte d'implementació d'un processador) Implementació del processador complert.
- 4 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació hardware dels sistemes encastats
- 7 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació software dels sistema encastats
Teoria
0h
Problemes
0h
Laboratori
20h
Aprenentatge dirigit
0h
Aprenentatge autònom
26h
Fase final del projecte
<li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Verificar que les prestacions i el funcionament del sistema integrat compleixen les especificacions i objectius marcats inicialment. Correcció i ajust de les desviacions. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> Correcció i ajust de les desviacions detectades en els objectius, prestacions o funcionament del sistema integrat. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> 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: <li>(Q1) - Projecte de disseny i implementació d'un sistema encastat<p> 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. <br> <li>(Q2) - Projecte d'implementació d'un processador<p> Desenvolupar les tasques començades al laboratori.
Continguts:
- 12 . (Q2 - Projecte d'implementació d'un processador) Implementació del processador complert.
- 4 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació hardware dels sistemes encastats
- 7 . (Q1 - Projecte de disseny i implementació d'un sistema encastat) Implementació software dels sistema encastats
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 (Fora d'horari lectiu)
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Entrega de la pràctica (documentació i codi) i entrevista del projecte
Setmana: 15 (Fora d'horari lectiu)
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
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 encastatLa 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àsic
-
Computer architecture: a quantitative approach
- Hennessy, J.L.; Patterson, D.A,
Elsevier/Morgan Kaufmann,
2019.
ISBN: 9780128119051
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004117509706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Estructura y diseño de computadores: la interfaz software/hardware
- Patterson, D.A.; Hennessy, J.L,
Reverté,
2011.
ISBN: 978-84-291-2620-4
http://cataleg.upc.edu/record=b1387697~S1*cat -
The art of designing embedded systems
- Ganssle, J.G,
Elsevier / Newnes,
2008.
ISBN: 9780750686440
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003636679706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
The art of programming embedded systems
- Ganssle, J.G,
Academic Press,
1992.
ISBN: 0122748808
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003931829706711&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
-
LittleProc: disseny d'un microprocessador en una plataforma reconfigurable
- Saiz, J.; Portero, A.; Aragonès, R,
Servei de Publicacions de la Universitat Autònoma de Barcelona,
2010.
ISBN: 9788449026355
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003931779706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Designing embedded hardware
- Catsoulis, J,
O'Reilly,
2005.
ISBN: 0596007558
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002895339706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Design with PIC microcontrollers
- Peatman, J.B,
Prentice Hall,
1998.
ISBN: 0137592590
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001882099706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Web links
- web de sistemes encastats http://www.embedded.com
- Web de disseny basat en microcontroladors http://www.epanorama.net/links/microprocessor.html
- Grup especialitzat en sistemes encastats http://www.ganssle.com/
- Web dels microcontroladors PIC http://www.microchipc.com/
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