Tema 2: Metodología de diseño

Documentos relacionados
Tema 1: Introducción

M. C. Felipe Santiago Espinosa

INSTRUMENTACIÓN ELECTRÓNICA

Verificación de sistemas

Arquitectura del PLC. Dpto. Electrónica, Automática e Informática Industrial)

1 Microprocesadores: Introducción

GUÍA DOCENTE DE LA ASIGNATURA

Diseño de Circuitos Integrados de Alta Escala Curso Académico 2009/2010

Sistemas Electrónicos Especialidad del Grado de Ingeniería de Tecnologías de Telecomunicación

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO

PROGRAMA DE LA ASIGNATURA Curso académico: 2016/2017 Código Denominación (español) Denominación (inglés) Titulaciones Centro Identificación y c

Los modelos de proceso que se discuten en este capítulo son:

Dispositivos de Entrada/Salida

Sistemas de Computación

Nombre de la asignatura : Arquitectura de Computadoras I. Carrera : Ingeniería en Sistemas Computacionales. Clave de la asignatura : SCC-9337

Microelectrónica. Evolución de la tecnología

GUÍA DOCENTE DE LA ASIGNATURA

El DTE en la Ingeniería Informática

CONTROLADORES E INSTRUMENTOS BASADOS EN MICROCONTROLADORES

Todo es cuestión de preferencias

Introducción a Programación de Microprocesadores con. Benjamín Celis Ingeniero de Aplicaciones, National Instruments

Carrera: Participantes Representante de las academias de ingeniería Mecatrónica de los Institutos Tecnológicos.

Carrera: MTF Participantes Representante de las academias de ingeniería Mecatrónica de los Institutos Tecnológicos.

CAPITULO III CONTROLADORES

SISTEMAS EMPOTRADOS (MÁSTER EN INGENIERÍA INFORMÁTICA)

Definición de S. Tiempo Real

UNIVERSIDAD TECNICA DE AMBATO NOVENO SEMESTRE INGENIERIA ROBOTICA MICROCONTROLADORES Y SU APLICACION EN ROBOTICA PROFESOR: UTA 2009 ING. G.

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO CENTRO DE FÍSICA APLICADA Y TECNOLOGÍA AVANZADA Y FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN

SISTEMAS CON MICROPROCESADORES

Sistemas Operativos. Introducción. Tema 6

Arquitectura de Computadoras

UNA APLICACIÓN DE INGENIERÍA BIOMÉDICA BASADA EN MICROCONTROLADORES: CONTROL DE TEMPERATURA EN RATAS DE LABORATORIO PARA EXPERIMENTACIÓN QUIRÚRGICA.

Sistemas de 32 bits. Panorámica actual del mercado de los sistemas embebidos. Sistemas Embebidos, S.A.

Ingeniería del Software 2

Sílabo de Microcontroladores

CONTROL DE DISTANCIA DE SEGURIDAD EN ADELANTAMIENTOS A BICICLETAS

INTRODUCCIÓN A LOS CIRCUITOS INTEGRADOS

PANORAMA GENERAL DE LOS µc

AC2 - Arquitectura de Computadores II

Parte I: El computador y el proceso de programación

Lenguajes de Descripción de Hardware

Estructura y tecnología de computadores - prácticas en ensamblador

Planificaciones Seminario de Electrónica. Docente responsable: ALBERTO JORGE ARMANDO. 1 de 5

UNIVERSIDAD AUTONOMA DE QUERETARO Facultad de Informática

Sistemas empotrados y ubicuos

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE MECANICA ELECTRICA LABORATORIO DE ELECTRONICA PENSUM ELECTRONICA 6

INGENIERÍA DE SOFTWARE. Sesión 12: Comportamiento del sistema

Organización del Computador I. Introducción e Historia

TRAYECTO SISTEMÁTICO DISEÑO DE SISTEMAS EMBEBIDOS

(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

Unidad I: Organización del Computador. Ing. Marglorie Colina

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD CIENCIAS DE LA COMPUTACIÓN

(Informática Industrial)

Clasificación de las Herramientas CASE

Tema 3: Herramientas de diseño

Colegioo Diocesano San José de Carolinas Privado Concertado

Introducción a la Computación. Herramientas Informáticas. Omar Ernesto Cabrera Rosero Universidad de Nariño

Computadora y Sistema Operativo

Vamos a definir un ordenador, lo que hay en la diapositiva son ordenadores, algunos más especializados que otros, pero todos son ordenadores.

Tema: Microprocesadores

Microcontroladores y FPGA para el Desarrollo de Sistemas Embebidos

Introducción a los Sistemas de Tiempo Real

Arquitectura de Computadores II

FACULTAD DE INGENIERÍA

Sistemas de Tiempo Real

Sistemas empotrados, ubicuos y móviles

Especialidad del Grado de Ingeniería de

DATOS DE IDENTIFICACIÓN DEL CURSO

Arquitectura de un Controlador Electrónico de Procesos

EXÁMENES CONVOCATORIA DE JUNIO M1 9 a 12 M2 12 a 15 T1 15 a 18 T2 18 a 21

Unidad de aprendizaje: maneja componentes del equipo de cómputo. Numero: 1

Tema 1. Introducción al Paradigma Orientado a Objetos

Carrera: Clave de la asignatura: Participantes. Academias de la carrera de ingeniería eléctrica

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO

Objetivo: Contenido

Proyecto Final Laboratorio de Estructura de Computadores ELO-312 Segundo Semestre 2009

G: GRADOS PLAN 2014 (COMPUTADORES, SOFTWARE Y SISTEMAS DE INFORMACIÓN), C: COMPUTADORES (PLAN 2009), S: SOFTWARE (PLAN 2009)

ANX-PR/CL/ GUÍA DE APRENDIZAJE

AUTOMATIZACIÓN INDUSTRIAL

ANX-PR/CL/ GUÍA DE APRENDIZAJE

157 - GRADO EN INGENIERÍA INFORMÁTICA PRIMER CURSO CURSO

Ingeniería de Computadores

Reparación y ampliación de equipos y componentes hardware microinformáticos. IFCT0309 Montaje y reparación de sistemas microinformáticos

Microcontroladores ( C)

Sistemas empotrados y ubicuos

ENTRADA/SALIDA. Universidad San Pablo-CEU Escuela Politécnica Superior Rodrigo García Carmona

Programación Arduino Con Visualino

INTRODUCCIÓN A LOS SISTEMAS BASADOS EN MICROCONTROLADOR

INTRODUCCIÓN. Las ventajas de la simulación son entre otras:

SISTEMAS DIGITALES AVANZADOS. Tecnología Electrónica TECNOLOGÍA ESPECÍFICA 6 ECTS. Español. Francisco José Plaza Pérez

PROGRAMA DE ESTÍMULOS A LA INNOVACIÓN

Introducción a la arquitectura de computadores

Qué es un Microcontrolador?

Sistemas Empotrados y Ubicuos

GUÍA DEL CURSO ACADÉMICO ESCUELA UNIVERSITARIA DE INFORMÁTICA UNIVERSIDAD POLITÉCNICA DE MADRID

Qué es un Microcontrolador?

Introducción a LabVIEW FPGA. Juan Gil

GUÍA DEL CURSO ACADÉMICO ESCUELA UNIVERSITARIA DE INFORMÁTICA UNIVERSIDAD POLITÉCNICA DE MADRID

Transcripción:

Tema 2: Metodología de diseño Retos en el diseño de sistemas empotrados Pasos en el diseño de SE Ejemplo: navegador GPS Bibliografía: (Capítulos introductorios) Computer as Components: Principles of Embedded Computing System Design. Wayne Wolf. Morgan Kaufmann P, 2000. Cap. 1 (1.3) Embedded Systems Design: An introduction to Processes, Tools, & Techniques. Arnold S. Berger. CMP Books, 2002. Cap. 1. Embedded Microprocessor Suystems: Real World Design. Stuart R. Ball. Elsevier, 2000. Cap. 1. 1 Diseño de Sistemas Basados en Microprocesador

Computador empotrado Componentes hardware de un SE ASIC/FPGA salida actuador CPU entrada sensor computador empotrado memoria 2 Diseño de Sistemas Basados en Microprocesador

Retos en el diseño de sistemas empotrados Cuanto hardware necesitamos? Cuál es el tamaño de la CPU? Y de la Memoria? Cómo alcanzamos a respetar los tiempos de respuesta límite (dead lines)? Hardware rápido? Software inteligente? Cómo minimizamos el consumo de potencia? Desconectar la lógica innecesaria? Reducir los accesos a memoria? 3 Diseño de Sistemas Basados en Microprocesador

Retos en el diseño de sistemas empotrados (cont.) Cómo comprobamos que funciona? La especificación es correcta? La implementación cumple las especificaciones? Cómo comprobamos la características de tiempo real? Cómo comprobamos con datos reales? Cómo trabajamos en el sistema? Observabilidad, controlabilidad? Cuál es nuestra plataforma de desarrollo? 4 Diseño de Sistemas Basados en Microprocesador

Metodologías de diseño Un procedimiento para diseñar un sistema Comprender nuestra metodología ayudará a asegurarnos que no nos dejamos nada Compiladores, herramientas de ingeniería del software, herramientas de diseño asistidas por computador (CAD), etc., pueden usarse para: Ayudar a automatizar los pasos de la metodología Seguir la metodología en sí misma Algunas mejoras en la tecnología de diseño: El paso de RTL a silicio es una realidad La calidad del diseño depende mucho de la tecnología de diseño Tecnología de diseño = CAD 5 Diseño de Sistemas Basados en Microprocesador

Objetivos del diseño Prestaciones Velocidad global Tiempos límite Funcionalidad e interfaz de usuario Coste de fabricación Consumo de potencia Otros requerimientos (tamaño físico, peso, etc.) 6 Diseño de Sistemas Basados en Microprocesador

Ciclo de vida de la electrónica de consumo Elegir un microprocesador/ microcontrolador Añadir chips de soporte Construir un sistema empotrado Programar en él funciones adecuadas Venderlo Caída de ventas 7 Diseño de Sistemas Basados en Microprocesador

Principales tareas del diseño de SE Modelado El sistema que se va a diseñar, y experimentación con los algoritmos involucrados Refinado (o particionado) La función a ser implementada en pequeñas piezas, que interactúan Particionado HW/SW: emplazamiento Elementos en el modelo refinado pasan a (1) unidades hardware o (2) SW ejecutándose en un procesador Gestión Los tiempos en que las funciones son ejecutadas. Importante cuando varios módulos comparten una misma/única unidad HW Implementación Descripción funcional del (1) SW que se ejecuta en un procesador o (2) de una colección de custom, semi-custom o HW adecuado (µ P, DSP core, interfaz para bus o red, etc.) 8 Diseño de Sistemas Basados en Microprocesador

Codiseño HW/SW vs. Diseño tradicional Diseño tradicional El particionado HW y SW se decide en las primeras etapas El diseño se realiza separadamente a partir de este punto CAD: orientado hoy a problemas de síntesis hardware puro Técnicas eficientes para la síntesis de camino de datos y el control en silicio SE utilizan diversos componentes µp, núcleos DSP, interfaces de redes y buses, etc. Codiseño HW/SW Estrategia de diseño flexible Los diseños HW y SW proceden en paralelo Realimentación e interacción entre ambos a medida que se avanza Particionado/emplazamiento final después de evaluar Alternativas Prestaciones 9 Diseño de Sistemas Basados en Microprocesador

Niveles de abstracción requerimientos especificación Top Down arquitectura diseño del componente Integración del sistema Bottom Up 10 Diseño de Sistemas Basados en Microprocesador

Niveles de abstracción requerimientos especificación arquitectura Arquitectura Hardware Componentes Hardware Arquitectura Software Componentes Software Integración del sistema 11 Diseño de Sistemas Basados en Microprocesador

Top-down vs. bottom-up Diseño Top-down : Comienza desde la descripción más abstracta Se trabaja hacia un mayor detalle Diseño Bottom-up: Se trabaja desde pequeños componentes hacia un gran sistema Los diseños reales usan ambas técnicas 12 Diseño de Sistemas Basados en Microprocesador

Pasos de refinamiento En cada nivel del diseño debemos: Analizar el diseño para determinar las características del estado actual de éste Evita inconsistencias entre niveles Refinar el diseño para añadir detalle Elegir solo unas pocas unidades en el paso de un nivel a otro Uniformizar los niveles de detalle 13 Diseño de Sistemas Basados en Microprocesador

Nivels de abstracción requerimientos especificación arquitectura diseño del componente Integración del sistema 14 Diseño de Sistemas Basados en Microprocesador

Requerimientos Descripción, en un lenguaje sencillo, de lo que quiere y espera obtenerlo del usuario Puede desarrollarse de diversos modos Hablando directamente con los consumidores del producto Hablando con los representante de ventas Realizando prototipos para comentarlos con los usuarios 15 Diseño de Sistemas Basados en Microprocesador

Requerimientos funcionales vs. no funcionales Requerimientos funcionales: La salida (S) como función de la entrada (E): S = f(e) Requerimientos no funcionales: Tiempo requerido para calcular la salida Tamaño, peso, etc. Consumo de potencia Fiabilidad etc. 16 Diseño de Sistemas Basados en Microprocesador

Forma de nuestros requerimientos Nombre Propósito Entradas Salidas Funciones Prestaciones Coste de fabricación Potencia Tamaño y peso físico 17 Diseño de Sistemas Basados en Microprocesador

Ejemplo: requerimientos de un guiador GPS portátil El guiador obtiene la posición del GPS y marca nuestra posición en un mapa obtenido de una base de datos local A 7 Carretera Borriol lat: 40 03 lon: 00 19 18 Diseño de Sistemas Basados en Microprocesador

Necesidades del guiador GPS portátil Funcionalidad: Para utilizar en el coche. Mostrar las principales carreteras y ciudades. Interfaz de usuario: Al menos una pantalla de 400 x 600 pixels. Máximo tres botones. Menú de opciones Prestaciones: El mapa debe desplazarse suavemente. No más de 1 segundo de puesta en marcha. Localización del GPS en 15 segundos. Coste: precio de venta 300 = coste de fabrica approx. 60 para obtener beneficios. Peso y tamaño: Debe caber en la mano. Consumo de potencia: debe de funcionar durante 8 horas con 4 baterías AA. 19 Diseño de Sistemas Basados en Microprocesador

Nivels de abstracción requerimientos especificación arquitectura diseño del componente Integración del sistema 20 Diseño de Sistemas Basados en Microprocesador

Requerimientos formales del guiador GPS portátil Nombre Guiador GPS móvil Propósito Guiar al conductor en la conducción mediante un mapa entradas Botón de encendido, dos botones de control salidas display LCD 400 X 600 funciones prestaciones Coste fabricación potencia Tam. físico/peso 5-recepciones GPS; resolución de 3; visualizar latit/long actual Actualizar a pantalla cada 0.25 seg de movimiento Coste de 100 para Buena venta 100 mw No más de 7x12x2 cm. 21 Diseño de Sistemas Basados en Microprocesador

Especificación: características Una descripción más precisa del sistema: No debe implicar una arquitectura particular Proporciona entradas para el proceso de diseño de la arquitectura Puede incluir elementos funcionales y no funcionales Puede ser ejecutable (un algoritmo) o expresarse de forma matemática para comprobaciones 22 Diseño de Sistemas Basados en Microprocesador

Especificación del GPS Debe incluir: Qué se recibe desde el GPS? Datos que aparecerán en el mapa Interfaz con el usuario Operaciones necesarias para satisfacer las peticiones del usuario Operaciones necesarias para mantener el sistema funcionando 23 Diseño de Sistemas Basados en Microprocesador

Nivels de abstracción requerimientos especificación arquitectura diseño del componente Integración del sistema 24 Diseño de Sistemas Basados en Microprocesador

Diseño de la arquitectura Qué componentes principales satisfacen las especificaciones? Componentes Hardware : CPUs, memoria, periféricos, etc. Componentes Software: Principales programas y sus operaciones. Debe tener en cuenta las especificaciones funcionales y no funcionales 25 Diseño de Sistemas Basados en Microprocesador

Diseño de las interfaces Entradas? Pulsadores, botones de control Teclado Ratón, etc. Salidas? Monitor LCD (ASCII o gráfico) LEDs Otras interfaces? con computadores con impresoras, etc. 26 Diseño de Sistemas Basados en Microprocesador

Diseño de los componentes hardware Minimizar la cantidad y coste de los componentes Memoria Cuánta necesitamos? De qué tipo? E/S usuario botones, teclados, monitores Entradas analógicas Requiere un conv. A/D Necesita adaptación de la señal? Filtrado? Salidas analógicas Requiere un conv. D/A Monitor LCD (ASCII o gráfico) E/S Digitales Sincronas/Asíncronas(handshake) Alimentación Cuanta es necesaria? Interfaz Serie Requiere chips adaptadores? Fecha/Temporización Requiere batería para reloj en tiempo real? Circuitería de Reloj y Reset Imprescindible 27 Diseño de Sistemas Basados en Microprocesador

Requerimientos del Software Cómo estará estructurada? Programa principal y drivers de dispositivos Dirigida por interrupciones o por consulta de estado? Se pondrá el programa en la EPROM/EEPROM? Si no, qué necesitamos más? Hay suficiente Memoria? Si no, cuanto más necesitamos? Necesitamos memoria persistente (No Volatile RAM)? 28 Diseño de Sistemas Basados en Microprocesador

Diagrama de bloques del guiador GPS Receptor GPS Dispositivo búsqueda Render base de datos Interfaz usuario Pantalla 29 Diseño de Sistemas Basados en Microprocesador

Arquitectura hardware del guiador GPS Pantalla Memoria video CPU Receptor GPS Memoria Panel E/S Bus 30 Diseño de Sistemas Basados en Microprocesador

Arquitectura software del guiador GPS acceso base datos render pixels posición interfaz usuario reloj 31 Diseño de Sistemas Basados en Microprocesador

Nivels de abstracción requerimientos especificación arquitectura diseño del componente Integración del sistema 32 Diseño de Sistemas Basados en Microprocesador

Diseño de los componentes hard. y soft. Se debe dedicar tiempo a diseñar la arquitectura del sistema antes de comenzar a producir código (programas) Si no se construye, al menos debe de conocerse muy bien En cuanto a los componentes : Algunos están listos para ser utilizados Algunos pueden modificarse de diseños existentes (reingeniería) Otros deben ser diseñados desde cero 33 Diseño de Sistemas Basados en Microprocesador

Nivels de abstracción requerimientos especificación arquitectura diseño del componente Integración del sistema 34 Diseño de Sistemas Basados en Microprocesador

Integración del sistema Juntar todos los componentes Muchos errores ( bugs ) aparecen sólo en esta etapa Tener un plan para resolver los errores rápidamente en la integración de componentes Comprobar la funcionalidad tan pronto como sea posible Pruebas/tests parciales de partes del diseño 35 Diseño de Sistemas Basados en Microprocesador

Conclusiones Los sistemas empotrados poseen muchos retos de diseño: Tiempo de diseño Fechas límite (dead lines) Consumo de potencia etc. Las metodologías de diseño, y simulación, nos ayudan a desarrollar el proceso de diseño 36 Diseño de Sistemas Basados en Microprocesador