Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SistemasEmpotradosv3 Socbasa Feb2011
SistemasEmpotradosv3 Socbasa Feb2011
Definicin de Sistema Empotrado: Sistema Digital basado en un microprocesador (computer system) que realiza una funcin especfica
Ejemplos de Sistemas Empotrados: Navegadores GPS Moviles Reproductores de multimedia: Televisin (TDT, Satelite), mp3, Equipos informticas especficos: routers, modems Sistemas de control industriales: RTU's, etc,etc,etc,............
3
Lo que sigue esta tomado de la asignatura "Embedded Systems Design" de la Universidad de estatal de Iowa: http://www.dte.us.es/docencia/master/micr/soc-basados-en-sistemas-abiertossocbsa/Otros/temasobrEmSy-univer-Iowa/view
Characteristics
of embedded systems
Sophisticated functionality. Real-time operation. Low manufacturing cost. Low power. Designed to tight deadlines by small teams. (Diseado con plazos ajustados por equipos pequeos).
4
Functional complexity
Often have to run sophisticated algorithms or multiple algorithms.
Cell phone, laser printer.
Real-time operation
Must finish operations by deadlines.
Hard real time: missing deadline causes failure. Soft real time: missing deadline results in degraded performance.
Many systems are multi-rate: must handle operations at widely varying rates.
2000 Morgan Kaufman Overheads for Computers as Components
Non-functional requirements
Many embedded systems are massmarket items that must have low manufacturing costs.
Limited memory, microprocessor power, etc.
Design teams
Often designed by a small team of designers. Often must meet tight deadlines.
6 month market window is common. Cant miss back-to-school window for calculator.
Ventaja del SE: optimizacin en el diseo frente a los computadores de propsito general Caractersticas del diseo de SE: Se intenta optimizar en vez de usar un PC Reduccin de costes y de tamao Mejora en el rendimiento: velocidad, consumo, etc Basados en microcontroladores o en SoC implementados en FPGAs
9
Definicin de Microcontrolador: Es un sistema digital que incluye los componentes principales de un computador (microprocesador, memoria y perifricos) que esta integrado todo en un nico chip.
Tipos de Microcontroladores:
Bsicos: Microcontroladores de 8-bits: 8051, 68H11, etc - Rendimientos limitados - Ejecutan solo software especfico (no MMU, no S.O) (desarrollo de las aplicaciones en lenguaje C) - Se emplean en problemas muy especficos - Hoy en da no suelen ser el ncleo principal de un SE sino que se emplean para resolver algn problema muy especfico en el SE Avanzados: Microcontroladores de 32-bits: ARM, POWER PC, - Prcticamente podran emplearse para computadores de propsito general por su rendimiento - Pueden trabajar bajo un S.O.
10
A grandes rasgos: proceso de diseo de SE con Microcontr. Paso fundamental: Eleccin adecuada del microcontrolador que se necesita Desarrollar el programa que va a ejecutar el microcontrolador Se emplean entornos de desarrollo propietarios que pone a disposicin del diseador el fabricante del microcontrolador Lo ms habitual es programar en lenguaje C o algn derivado. Todava queda algn microcontrolador de 8 bit que se programa en ensamblador, aunque ya no es lo habitual. Hoy en da los microcontroladores tipo ARM incluyen entornos de desarrollo en otros lenguajes: Java Testado del sistema sobre Placas de desarrollo del microcontrolador Diseo e implementacin del PCB final del SE
11
Definicin de SoC: System on Chip, Sistema completo incluido en un chip. Suele ser un sistema basado en microprocesador. Un microcontrolador es un SoC, sin embargo, suele utilizarse la terminologa SoC para indicar que es el diseador del SE es el que disea e implementa el SoC Las tcnicas de implementacin de SoC empleadas hoy en da son ASIC y FPGAs ASIC: Circuito integrado de propsito especfico FPGA: Field Programmable Gate Array. Dispositivo lgico programable con una muy alta densidad de integracin y capacidad
12
A grandes rasgos:
Diseo de la arquitectura del sistema: Incluye el microprocesador que se va a emplear y los perifricos ms habituales, RS-232, Ethernet, USB, controladores de memoria Si es posible: Implantacin sobre la arquitectura de un S.O. Alternativamente: Desarrollo del software de aplicacin especfica que va a ejecutarse Diseo de perifricos de propsito especfico para la aplicacin. Incorporar el perifrico al Sistema global Si hay S.O.: Desarrollo del driver para el nuevo perifrico. Sntesis e implementacin sobre ASIC o FPGA Testado del sistema sobre placas de desarrollo Diseo e implementacin del PCB final del SE
13
Ejemplo de SE basado en FPGA desarrollado en Grupo ID2-DTE: Implementacin en Hardware de un cliente y un servidor SNTP Proyecto en cooperacin con TELVENT ENERGA
SPARTAN3E500
Fuente alimentacin
JTAG
Como el Sistema basado en computador ya esta diseado, el diseador solo tiene que disear el software de aplicacin del SE y finalizar el PCB del sistema completo. Sin duda alguna, es la opcin ms ampliamente utilizada hoy en da para el desarrollo de sistemas empotrados. Dan mayor versatilidad al poder incorporar al SoC un diseo especfico que se necesite. Sin embargo, hay que disear la plataforma hardware. Hoy en da se disponen de entornos de diseo que facilitan significativamente la construccin de la arquitectura del sistema: Ejemplo EDK de XILINX Tambin se facilita el desarrollo de perifricos y, al igual que en los microcontroladores, existen determinados microprocesadores para los que se facilita la implantacin de un S.O. y la construccin de los drivers de los perifricos 15 especficos: Ejemplo Petalinux para Microblace
Lenguajes de descripcin de hardware: VHDL, VERILOG Herramientas de ayuda al diseo: edicin, simulacin, sntesis - ASIGNATURA DAPA, DIH
Eleccin del Microprocesador: - Hard-core: ej. VirtexII-pro:PowerPC - Soft-Core: Microblaze,Mico32(Lattice), Nios(ALTERA), OpenHardware(LEON, OpenRISC, etc) Entornos de desarrollo de la arquitectura de SoC - ASIGNATURA: SoCBASA
16
Eleccin SO: Linux empotrado, windowsCE, Rtlinux, FreeRTOS Existen algunos entornos de desarrollo que facilitan la implantacin de SO, sin embargo, en la mayora de los casos hay que trabajarlos de forma muy manual - ASIGNATURA SoCBASA Entornos de desarrollo para procesado de seales: ej. MatlabSystem Generator de XILINX Algunos entornos que facilitan el desarrollo de drivers. Generalmente, desarrollo manual del driver. - ASIGNATURA CPS
17
Vamos a aprovechar el material docente elaborado dentro del programa universitario de XILINX: http://www.xilinx.com/university/index.htm Cursos que vamos a seguir: Embedded System Design Flow - Diseo de plataformas hardware para sistemas empotrados basadas en el microprocesador MicroBlaze Embedded Linux on MicroBlaze Processor: - Curso de implantacin de Petalinux en plataformas hardware basadas en MicroBlaze
18
Icono de la herramienta EDK en panel SE PIERDE LA INFORMACIN CADA VEZ QUE SE RESTAURE LA IMAGEN.
$ sshfs usrname@10.1.15.243: socbasa usuarios: socbasaXX donde XX va desde 01 a 06 Passwd: asabcosXX Conveniente: Cambiar el passwd
19