Sunteți pe pagina 1din 42

1

INDICE CONTENIDO
1. 2. PLANTEAMIENTO DEL PROBLEMA ................................................................................ 4 OBJETIVOS .............................................................................................................................. 4 2.1. 2.2. 3. Objetivo General ............................................................................................................... 4 Objetivos Especficos......................................................................................................... 4 Sistemas Embebidos .......................................................................................................... 5 Un sistema integrado independiente ........................................................................ 6 CLASIFICACIN DE PROCESADORES INTEGRADOS ........................................ 7 CONCEPTOS BSICOS ................................................................................................. 8 SISTEMAS EN TIEMPO REAL ..................................................................................... 9

MARCO TERICO ................................................................................................................. 5 3.1.

3.1.1. 3.2. 3.3. 3.4.

3.4.1 Estructura general de sistemas de tiempo real .............................................................. 9 3.4.2 Caractersticas de los sistemas en tiempo real ............................................................... 9 3.4.3 Clasificacin de los sistemas en tiempo real ................................................................. 10 3.5 FUNDAMENTOS DE DESARROLLO PARA SISTEMAS EMBEBIDOS ......................... 10 3.5.1 Componentes del entorno de los sistemas embebidos ................................................. 10 3.5.2 PROCESOS DEL ENTORNO DE LOS SISTEMAS EMBEBIDOS ........................ 11 3.6 IMGEN EJECUTABLE ....................................................................................................... 11 3.6.1 Caractersticas de la imagen ejecutable ....................................................................... 11 3.6.2 Formatos de la imagen ejecutable ................................................................................. 12 3.7 MAPEAR IMGENES EJECUTABLES EN TARJETA DE SISTEMAS EMBEBIDOS. .. 12 3.7.1. Archivos de comando del enlazador ............................................................................ 13 3.8 MAPEO DE IMGENES EJECUTABLES. .......................................................................... 14 3.9 INICIALIZACION DE SISTEMA INTEGRADO ................................................................. 15 3.9 HERRAMIENTA DEL SISTEMA TARGET Y TRANSFERENCIA DE IMGENES. ...... 15 3.9.1 Cargador Embebido....................................................................................................... 17 3.9.2 Monitor de Embebido .................................................................................................... 17 3.10 ESCENARIOS TARGET BOOT.......................................................................................... 18 3.10.1 Ejecucin de ROM y uso de RAM para datos. .......................................................... 19 3.10.2 Ejecucin de la RAM despus de transferencia de imgenes desde a ROM........... 20 3.10.3 Ejecucin de la RAM despus de la transferencia de imgenes desde el Host. ...... 21 3.11 SECUENCIA DE INICIALIZACIN DEL SOFTWARE DEL SISTEMA TARGET. ...... 22

2 3.11.1 Inicializacin del hardware. ........................................................................................ 22 3.11.2 Inicializacin RTOS ..................................................................................................... 23 3.11.3 Aplicacin de software de inicializacin. .................................................................... 23 3.12 DEPURAR ON CHIP (OCD) ............................................................................................... 24 3.12.1 Una Breve Historia de los Sistemas Operativos ........................................................ 24 3.12.2 Similitudes entre RTOS y GPOS ................................................................................ 24 3.12.3 Caractersticas de porque RTOS es mejor que GPOS.............................................. 24 3.12.4 Componentes de un RTOS .......................................................................................... 25 3.13 PROGRAMADOR .......................................................................................................... 25 3.13.1 Entidades programables .............................................................................................. 25 3.13.2 La multitarea ................................................................................................................ 25 3.13.3 El cambio de contexto .................................................................................................. 25 3.13.4 El Despachador............................................................................................................. 25 3.13.5 Programacin de Algoritmos ...................................................................................... 26 3.14 OBJETOS .............................................................................................................................. 26 3.15 SERVICIOS .......................................................................................................................... 26 3.16 CARACTERSTICAS PRINCIPALES DE UN RTOS ........................................................ 26 3.16.1 Fiabilidad ...................................................................................................................... 26 3.16.2 Predictibilidad .............................................................................................................. 27 3.16.3 Rendimiento .................................................................................................................. 27 3.16.4 Compacidad .................................................................................................................. 27 3.16.5 Escalabilidad ................................................................................................................. 27 3.17 TAREAS ............................................................................................................................... 27 3.17.1 Introduccin.................................................................................................................. 27 3.17.2 Definicin de una tarea ................................................................................................ 28 3.17.3Tareas del sistema: ........................................................................................................ 28 3.17.4 Estados de tareas y programacin .............................................................................. 28 3.17.5 Operaciones de tareas tpicas ...................................................................................... 29 3.17.6 Programacin de Tareas: ............................................................................................ 30 3.17.7 Revisin de tareas: ....................................................................................................... 30 3.17.8 Obteniendo Informacin de Tareas:........................................................................... 30 3.17.9 Ejemplos:....................................................................................................................... 31 3.17.10 Sincronizacin, Comunicacin y Concurrencia de una Tarea ............................... 32 3.18 SEMFOROS: ...................................................................................................................... 32

3 3.18.1 semforos binarios: ...................................................................................................... 33 3.18.2 Contador de semforos: ............................................................................................... 33 3.18.3 Operacin tpica de los semforos: ............................................................................. 34 3.19 ACCESO MULTIPLE DE COMPARTICIN - SINCRONIZACIN ............................... 35 4. DIAGRAMAS .......................................................................................................................... 35 4.1. 4.2. 5. 6. 7. DIAGRAMA DE BLOQUES ......................................................................................... 35 EJEMPPLO DE DIAGRAMA ELCTRICO DE UN SISTEMA EMBEBIDO. ...... 36

CONCLUSIONES ................................................................................................................... 36 RECOMENDACIONES ......................................................................................................... 36 APORTACIONES................................................................................................................... 37 7.1 Varios sistemas operativos de tiempo real .............................................................................. 37 APLICACIONES .................................................................................................................... 39 CRONOGRAMA .................................................................................................................... 40 BIBLIOGRAFA ................................................................................................................. 41 ANEXOS .............................................................................................................................. 41

8. 9. 10. 11.

11.1 PAPER .................................................................................................................................. 42

1. PLANTEAMIENTO DEL PROBLEMA


En los ltimos aos el mundo de la tecnologa ha cambiado drsticamente, con el tiempo varios avances han permitido realizar tareas que hace 10 aos demandaran das u horas en unos pocos minutos y dio origen a nuevas ideas. Hace varios aos atrs el diseo de algn producto era ms complicado ya que los elementos que se usaban aparte de no ahorrar espacio mantenerlos en funcionamiento resultaba bastante costoso. Actualmente existen los sistemas embebidos a pesar de no ser muy nombrados estn en muchas partes, en realidad, es difcil encontrar algn dispositivo cuyo funcionamiento no est basado en algn sistema embebido, desde vehculos hasta telfonos celulares e incluso en algunos electrodomsticos comunes como refrigeradores y hornos microondas El diseo de un producto que incorpora sistemas embebidos generalmente est orientado a minimizar los costos y maximizar la confiabilidad, pero tambin es esencial incorporar en el diseo consideraciones de seguridad, incluyendo funciones y protocolos que protejan la informacin durante todas las fases.

2. OBJETIVOS 2.1. Objetivo General

Reconocer los diferentes tipos de sistemas embebidos que trabajan en tiempo real, as como su desarrollo, funcionamiento y posibles aplicaciones, basndose en la investigacin en libros, internet, revistas tcnicas entre otras, con la finalidad de aprovechar las ventajas de estos dispositivos, para usarlos en estudios futuros.

2.2.
-

Objetivos Especficos

Definir las caractersticas de un sistema embebido en tiempo real Describir la estructura e implementacin de un sistema embebido. Nombrar las formas de inicializacin de un sistema embebido. Enumerar los diferentes tipos de sistemas embebidos que existen y su correspondiente aplicacin.

3. MARCO TERICO 3.1. Sistemas Embebidos


Los sistemas embebidos estn ocultos dentro de muchos aparatos elctricos, sistemas integrados, que se encuentran en todo lugar, estos dispositivos son diseados para realizar una o varias funciones dedicadas frecunteme a una tcnica de computacin en tiempo real.
SISTEMA EMBEBIDO

- Confiable - Predecibles -Convenientes - Fciles de usar.

Una clase especial de sistemas embebidos se distingue del resto por su obligacin de responder a los eventos externos en tiempo real

S. E. en el entorno domstico

S. E. en el entorno de trabajo

S. E. en las Actividades de Ocio

S. de navegacin y reproductor de msica porttil.

-Dentro de aparatos domsticos -Sistems de seguridad,cable y seguridad

-Conexiones de red (imresoras,modems,ro uters,etc)

-Juguetes de nos - Automoviles con sistemas de navegacin -Dispositivos GPS

Figura N 1. Clasificacin de un sistema embebido Los sistemas embebidos se pueden caracterizar por:

Error:
Pueden funcionar como sistemas independie ntes

Sistemas informticos o dispositivos sin teclado, la pantalla, o el ratn.


Sistemas informticos fuertemente acoplados hardware y software de integracin

Sistema integrado

Diseados para realizar una funcin especfica

Figura N 2. Caractersticas de un sistema embebido

6 3.1.1.

Un sistema integrado independiente


Se construye a partir de un procesador de comunicacin especializado, memoria, un nmero de interfaces de acceso de red (conocidos como puertos de red) y un software especial que implementa algoritmos de enrutamiento de paquetes. Enrutador de la red.- es un sistema incrustado independiente que enruta los paquetes procedentes de un puerto a otra, sobre la base de un algoritmo de enrutamiento programada.

Procesador embebido
Diseo complejo

Gran consumo de energa, la produccin de calor , y el tamao. Figura N 3. Caractersticas de un procesador embebido Funcionamiento de los procesadores modernos:

Procesadores modernos Realiza rpidamente operaciones de coma flotante.

tienen

Sistema incorporado en la gestin de unidad de memorias (MMU)

proporciona

-Proteccin memoria

de

-Memoria virtual para multitarea con alta capacidad

PDA no tienen un coprocesador de coma flotante debido a operaciones de punto flotante son o no necesarios o emulacin de software es suficiente

Figura N 4. Funcionamiento de los procesadores modernos.

3.2.

CLASIFICACIN DE PROCESADORES INTEGRADOS


Los procesadores integrados se pueden clasificar en:

Proceadores integrados centrados en el rendimiento

Lleno de avanzadas tecnologas de chip de diseo, como tuberas avanzado y procesamiento de arquitectura paralelo Procesadores de red desarrollados por el equipo de red e industrias en telecomunicaciones

Procesadores de proposito general Procesadores por el rendimiento , el tamao , el consumo de energa

Buscan realizar una aplicacin especifica

El procesador integrado de seal digital ( DSP ) que se utiliza en los telfonos celulares . De voz en tiempo real comunicacin implica el procesamiento de seal digital y no puede tolerar demoras. Un DSP se ha especializado unidades aritmticas , diseo optimizado en la memoria , y el direccionamiento y arquitecturas de bus con capacidad de multiprocesamiento.

Figura N 5. Clasificacin de los sistemas integrados. Los sistemas integrados presentan una caracterstica principal que es:

CARACTERISTICAS PRINCIPAL

Multiplataforma
Software para un sistema embebido se desarrolla en un plataforma, pero se ejecuta en otro sistema

Figura N 6. Caracterstica principal de los sistemas integrados. Para que sea multiplataforma debe existir un compilador cruzado es un compilador que se ejecuta en un tipo de arquitectura del procesador, pero produce cdigo objeto para un tipo diferente de arquitectura de procesador

3.3.

CONCEPTOS BSICOS
Se debe conocer varios conceptos bsicos que describen a un sistema embebido, tales como:
Contenido no voltil y sin la necesidad de una fuente de alimentacin externa Su contenido se programa durante el proceso de fabricacin Solo puede ser personalizado una vez Programado, borrado, y reprogramado cuantas veces sea necesario Borrable elctricamente

MEMORIA ROM

ROM Programable

ROM programable de campo ROM programable y borrable (EPROM)

EEPROM

MEMORIA RAM

Memoria requiere externa

lectura/escritura alimentacin

DRAM(Dinamica)

Requieren actualizacin peridica

SRAM

Conserva su contenido cuando est conectado a una fuente

NVRAM

Tiene energa de la batera de copia de seguridad por lo que puede retener su contenido despus de la alimentacin

Figura N 7. Conceptos bsicos.

3.4.

SISTEMAS EN TIEMPO REAL

Son aquellos sistemas que responden a los acontecimientos externos en forma oportuna y se garantiza un tiempo de respuesta mnimo.
Sncrona Eventos externos Asncrona

Figura N 8. Eventos externos de un sistema en tiempo real.

3.4.1 Estructura general de sistemas de tiempo real


Procesar y responder a los eventos y la informacin generada por el sistema de control en un marco de tiempo garantizado

Sitemas de control

Figura N 9. Estructura general de sistemas de tiempo real.

3.4.2 Caractersticas de los sistemas en tiempo real


Sistemas de tiempo real deben:

Producir resultados computacionales exactos , que estos clculos debern concluir en un plazo predefinido , llamado sincronizacin correcta .

Tener exactitud general del sistema depende tanto de la correccin funcional y la correccin de temporizacin .

Figura N 10. Caractersticas de los sistemas en tiempo real.

10

3.4.3 Clasificacin de los sistemas en tiempo real


Sistemas deterministas Sistemas de tiempo real estricto Sistemas de tiempo real suaves
El tiempo de respuesta a un evento detectado est limitada . La accin (o acciones ) tomadas en respuesta a un evento que se conoce a priori Puede ser menos adaptables a los cambios del entorno

El nivel de tolerancia para un plazo incumplido es muy pequeo o cero tolerancia . Los resultados calculados despus del vencimiento del plazo probablemente intil para muchos de estos sistemas .

El nivel de tolerancia es distinto de cero . Los resultados calculados despus del vencimiento del plazo tienen una tasa de depreciacin. La utilidad de los resultados no alcanza inmediatamente cero que pasa la fecha lmite , como en el caso de muchos sistemas de tiempo real

Figura N 11. Clasificacin de los sistemas en tiempo real.

La falta de recursos necesarios para el trabajo, como la CPU o la memoria, puede prevenir un trabajo se inicie y puede llevar a no cumplir el plazo de finalizacin del trabajo. En ltima instancia esto se convierte en un problema de recursos de programacin. Los algoritmos de planificacin de un sistema en tiempo real deben programar los recursos del sistema para que los trabajos creados en respuesta a ambos eventos peridicos y aperidicos pueden obtener los recursos en el momento apropiado. Este proceso produce cada trabajo la capacidad de cumplir con sus restricciones de tiempo especficos.

3.5 FUNDAMENTOS DE DESARROLLO PARA SISTEMAS EMBEBIDOS 3.5.1 Componentes del entorno de los sistemas embebidos
La metodologa de desarrollo de plataforma cruzada para sistemas embebidos

Figura N 12. Componentes del entorno de sistemas embebidos.

11

3.5.2 PROCESOS DEL ENTORNO DE LOS SISTEMAS EMBEBIDOS

Figura N 12. Componentes del entorno de sistemas embebidos.

3.6 IMGEN EJECUTABLE


Para sistemas embebidos se crea un cdigo fuente que puede ser escrito en lenguaje C o ensamblador, esto crea un conjunto de archivos objetos que a su vez forman una biblioteca. El enlazador se encarga de relacionar estos archivos objeto por medio de la creacin de una imagen ejecutable.

3.6.1 Caractersticas de la imagen ejecutable

Imagen ejcutable

Cada simbolo tiene una direccin de memoria absoluta

Un fichero objeto reubicable puede contener smbolos externos no resueltos

Figura N 13. Caractersticas de una imagen ejecutable.

12 Archivo de objeto se puede utilizar para enlazar con otros ficheros objeto compartidos o mdulos objeto reubicables o se puede utilizar como una imagen ejecutable con la vinculacin dinmica.

3.6.2 Formatos de la imagen ejecutable


Los formatos comunes para la representacin de la imagen ejecutable creada son:

Formato de archivo de objeto comn (COFF)

Ejecutable y formato de vinculacin (ELF)


Compilador organiza el programa en secciones

Figura N 14. Formatos de imagen ejecutable.

3.7 MAPEAR IMGENES EJECUTABLES EN TARJETA DE SISTEMAS EMBEBIDOS.

Luego de archivos de cdigo fuente de C/C++, se compilan y ensamblan en archivos objeto EFL.

El enlazador combina estos archivos objeto y fusiona las secciones de los archivos de objetos en segmentos del programa.

- Crea una sola imagen ejecutable para el sistema


integrado de destino. -El desarrollador incrustado controla como el enlazador combina las secciones y asigna los segmentos del sistema de destino.

- Se crea un archivo de comandos del vinculador es para el desarrolador integrado para la imagen ejecutable en el sistema de destino con precision y eficiencia

Figura N 15. Mapear imgenes ejecutables en la tarjeta de sistemas embebidos.

13

3.7.1. Archivos de comando del enlazador

Varan de enlazador a enlazador

Se debe consultar los comandos especficos de sintaxis y extensiones.

Algunas directivas se encuentran entre los conectores disponibles, y se usan para aplicaciones embebidas.

Las Directivas ms comunes soportados por la mayora de conectores son:

MEMORY SECTION

Define los tipos de memoria fsica presentes en el sistema de destino, ademas del rango de direcciones que ocupa cada bloque de memoria fisica

Se usa para indicar al desarrollador incrustado a donde asignar las secciones, es decir a donde se dirige.

Figura N 16. Comandos del enlazador.

Mapa de Memoria.- Enumera los diferentes tipos de memoria.(Ram, Rom, y flash), que estn presentes en el sistema de destino, junto con los rangos de direcciones a las que se acceden para almacenar o ejecutar una imagen ejecutable.

Figura N 17. Mapeo de memoria.

14 Ejemplo de la directiva MEMORY

Ejemplo de la directiva SECTION

3.8 MAPEO DE IMGENES EJECUTABLES.


Hay varias razones por las que un desarrollador desea definir secciones personalizadas, asi como su correspondencia con las secciones en las diferentes reas de la memoria de destino

Capacidad de actualizacin del mdulo

Actualizacin del software mientras el sistema sigue funcionando. Toda la seccin se programa en la memoria flash para una fcil capadidad de actualizacin en el futuro. La memoria fsica es limitada, y es imposible adaptarse a todo el cdigo en un tipo de memoria, por tanto se divide el programa en secciones mpultiples tanto en la SDARM Y DRAM.

Mapeo de imgenes ejecutables

Tamao de la limitacin de memoria

Proteccin de datos.

Los programas tienen varios tipos de constantes, que estn en la ROM para evitar la modificacin accidental, estas constantes son parte de una seccion de datos especial en la ROM

Figura N 18. Mapear imgenes ejecutables.

15

3.9 INICIALIZACION DE SISTEMA INTEGRADO


Para un desarrollador incrustado, una tarea de ejecutar una tarea puede durar das antes de ver un resultado exitoso, lo que puede ser frustrante para un desarrollador de sistemas embebidos. Surgen preguntas para resolver en esta etapa.

Como cargar la imagen en el sistema de destino

Como el programa produce una salida reconocible.

En que parte de la memoria se carga la imagen

Como inicial la ejecucin del programa

Figura N 19. Inicializacin de sistemas embebidos.

Se ha analizado la construccin de una imagen ejecutable con varias secciones del programa de acuerdo a la distribucin de memoria del sistema de destino. Luego de que se construye la imagen final y que reside en el sistema host con xito, luego se ejecuta.

3.9 HERRAMIENTA DEL SISTEMA TARGET Y TRANSFERENCIA DE IMGENES.


Una imagen ejecutable construida para un sistema integrado de destino puede ser transferido desde el sistema de desarrollo de host sobre el blanco, que se llama la carga de la imagen, por:

16

Programacin de toda la imagen en la memoria EEPROM o flash

Descarga de la imagen por una interfaz JTAG o BDM.

Descarga de la imagen a travs de una serie o conexin de red

Figura N20 . Formas de cargar la imagen ejecutable .

El software integrado para el producto final se almacena en la ROM o en la memoria flash. Para las placas de sistemas integrados que tienen tanto la ROM y la memoria flash, lo que contina es establecer los puentes necesarios.

Puentes: son los cableados del tablero que controla que chip de memoria del procesador utiliza para iniciar la ejecucin de su primera serie de instrucciones en el arranque.

Figura N21 . Definicin de puentes .

Este mtodo es poco prctico, por lo que se usa para la descarga de la imagen una conexin serie o de red o a travs de una interfaz JTAG o BDM.

17

3.9.1 Cargador Embebido Un enfoque adoptado en la fase de desarrollo es escribir un programa de carga por el lado de destino, se llama cargador, y se usa para descargar la imagen desde el sistema host. Suele ser programado en un chip ROM.

Se escribe el cargador

Se programa en la ROM (parte de la ROm esta ocupada por la imagen de arranque)

Se inicializa el hardware de destino, como el sistema fsico y memoria RAM fsica.

Figura N22 . Carga de imagen por cargador embebido .

Para que este mtodo funcione se debe tener en cuenta: Un protocolo de transferencia de datos (Reglas de transferencia). Los parmetros de comunicacin.

3.9.2 Monitor de Embebido Es una alternativa para ms para cargar la imagen, se usa un monitor incorporado.

Monitor incorporado

Software embebido que permite a los desarrolladores examinar y depurar el sistema de destino en tiempo de ejecucin. Se ejecuta al encender el aparato y realiza la inicializacion del sistema.

Figura N23. Carga de imagen por monitor incorporado .

18

Dentro de la inicializacin del sistema se realiza: Inicializacin de los dispositivos perifricos necesarios (interfaz serie del chip temporizador del sistema para la actualizacin de la memoria) Inicializar el sistema de memoria para la descarga de la imagen. Inicializar el controlador de interrupciones y la instalacin de controladores de interrupcin por defecto.

El monitor se define como un conjunto de comandos que permite al desarrollador: Descargar la imagen Leer y escribir en las posiciones del sistema Leer y escribir registros del sistema. Establecer los diferentes tipos de interrupcin. Reestablecer el sistema.

En esencia el monitor tiene tanto la imagen de arranque y las funcionalidades del cargador incorporado, pero con capacidad de depuracin interactiva aadido. El monitor sigue presente mientras que la imagen que se acaba de descargar ejecuta.

3.10 ESCENARIOS TARGET BOOT Los detalles de la operacin de carga a s mismo y como se transfiere el control a la imagen recin adquirida son:
Primera parte de arranque se pone al sistema en un estado conocido.

Se configuran los registros del prosesador con valores por defecto adecuados.

El cargador desactiva el sistema y se interrumpe debido a que el sistema an no esta preparado para manejar las interrupciones.

EL cargador tambin realiza diagnsticos de hardware limitados sobre los dispositivos necesarios para su funcionamiento.

Figura N24. Escenarios target boot .

19

Una imagen ejecutable contiene secciones de datos inicializados y sin inicializar. Estas secciones son de lectura y escritura y estn en la memoria RAM y es parte de la inicializacin del sistema. Luego de la inicializacin de todos los dispositivos, el programa cargador est listo para transferir la imagen de la aplicacin al sistema de destino. La imagen de la aplicacin contiene RTOS, el kernel, y el cdigo de aplicacin escrito por el desarrollador incrustado. La imagen de la aplicacin puede provenir de:
Los dispositivos de slo lectura de memoria en el objetivo

El sistema de desarrollo en acogida.

4
Figura N25. Origen de la imagen.

Existen 3 escenarios comunes para la ejecucin de una imagen.


escenarios comunes de ejecucin de imagen

Ejecutar la ROM durante el uso de memoria RAM para los datos

Ejecutar desde la RAM despus de haber sido copiado de la ROM

Ejecutar desde la RAM despus de ser descargado desde un sistema central

Figura N26. Escenarios de ejecucin de la imagen

3.10.1 Ejecucin de ROM y uso de RAM para datos.


Algunos dispositivos tienen recuros de memoria limitados La imagen se ejecuta directamente de la ROM Las secciones de datos deben residir en la memoria RAM

Figura N27. Ejecucin de ROM y uso de RAM para datos.

20

La secuencia de arranque para una imagen que va desde la ROM es la siguiente:

1. El IP de la CPU ejecuta la primera instruccion de la memoria.(RESET)

El registro SP est configurado para sealar el comienzo de la pila recien creado. Es decir se realiza el inicio.

Salta a la primera instruccuon . La secccin de texto permanecera en la ROM, la CPU usa el IP para ejecutar texto. EL cdigo inicializa el sistema de memoria, incuido la RAM

Se reserva espacio de pila en la memoria RAMEl

Se copia en la RAM la seccin de datos de la imagen, ya que es a la vez de lectura y escritura

Se reserva espacio en la RAM, para la seccin bss de la imagen de arranque

Figura N28. Secuencia de arranque para una imagen que va desde la ROM

La imagen de arranque tiene que mantener la informacin interna en su programa, que es fundamental para la inicializacin de las secciones de datos, ya que la tabla de encabezado de seccin no est presente.

3.10.2 Ejecucin de la RAM despus de transferencia de imgenes desde a ROM


El cargador de arranque transfiere una imagen de la aplicacin de la ROM a la RAM para su ejecucin. La imagen de la aplicacion grande se almacena en la ROM de forma comprimida para reducir el espacio de almacenamiento.

El cargador debe descomprimir la imagen, para esto necesita un rea de trabajo en la RAM.

Figura N29. Ejecucin de la RAM despus de trasferencia de imgenes desde la ROM

La secuencia de arranque para este caso es: Inicialmente los 6 pasos anteriores son los mismos. 7. La imagen de la aplicacin comprimida se copia de la ROM a la RAM. 8. Pasos de inicializacin que forman parte del procedimiento de descompresin se completan. 9. El cargador transfiere el control a la imagen.

21

10. El rea de memoria del cargador se recicla, es decir el puntero de pila se reinicializa para que apunte a esta zona, por lo que se puede utilizar como pila para el nuevo programa.

3.10.3 Ejecucin de la RAM despus de la transferencia de imgenes desde el Host.


Este es el tercer escenario de arranque, el agente de depuracin objetivo transfiere una imagen de la aplicacin del sistema host en la RAM para su ejecucin. Esta prctica es tpica en desarrollos cuando los controladores del dispositivo se han aplicado y depurado plenamente.

El sistema puede manejar interrupciones y escepciones correctamente El sistema de destino facilita un entorno estable para el desarrollo de aplicaciones.
El agente de depuracin se puede comunicar con un depurador host y de transferencia de imgenes de destino a travs del depurador de acogida.
El agente de depuracin descarga la imagen en una area temporal de la RAM, luego la descarga se completa verificando la integridad de la imagen, luego inicializa la imagen deacuerdo con la informacin presentada en la cabecera de la seccin de programa.

Figura N30. Ejecucin de la RAM despus de trasferencia de imgenes desde el Host

La secuencia de arranque para este caso es: Los primeros pasos de igual forma se mantienen, y luego sigue con: 7. La imagen de la aplicacin se descarga desde el sistema de desarrollo del host. 8. La integridad de la imagen se verifica. 9. La imagen se descomprime si es necesario. 10. El agente de depuracin carga las secciones de imagen en sus respectivas direcciones que se ejecutan en la RAM. 11. El agente de depuracin transfiere el control a la imagen de descarga.

22

3.11 SECUENCIA DE INICIALIZACIN DEL SOFTWARE DEL SISTEMA TARGET.


Los pasos necesarios para iniciar la mayora de los sistemas de destino son:

Inicializacin del hardware

Inicializacin RTOS

Inicializacin de la aplicacin

Figura N31. Secuencia de inicializacin del software del sistema Target.

Nota: Estos pasos no son todos los necesarios para inicializar el sistema de destino.

3.11.1 Inicializacin del hardware.


Cuando la CPU comienza a ejecutar las instrucciones a partir del vector reset, se realiza la inicializacin de hardware mnimo necesario para obtener la imagen de arranque para ejecutar, esto incluye:

1. Iniciar la ejecucin del vector reset


2. Poner el procesador en un estado conocido por el establecimiento de los correspoendientes registros o conseguir el tipo de procesador. 3. Interrupciones discapacitantes y cachs. 4. Controlador de incializacin de memoria, chips de memoria y cach de unidades, o obtener las direcciones de inicio para la memoria.

Figura N32. Inicializacin del hardware.

Luego de la secuencia de inicio se inicializa la CPU y la secuencia de arranque de copias se descomprime de la memoria. Tambin copia y descomprime los datos en la memoria RAM. A medida que el cdigo de inicio se ejecuta, el cdigo llama a las funciones apropiadas para analizar otros componentes de hardware, si estn presente en el sistema de destino. Eventualmente todos los dispositivos del tablero se inicializan, y esto incluye:

23

La creacin de controladores de ejecuin.

Inicializar el manejador de interrupciones

Interfaces de bus de inicializacin, VME, PCI y USB

Inicializacin de perifricos de mesa como el de serie, LAN y SCSI Figura N33. Inicializaciones posteriores.

3.11.2 Inicializacin RTOS


Puntos clave que pueden suceder en la inicializacin.

1. Inicializar el RTOS
2. Inicializar los dispositivos objetos y servicios RTOS, si esta presente (generalmente controlado por un archivo de cabecera configurable por el usuario)

3. Creacin de pilas necesarias para RTOS


4. Inicializacin de extensiones RTOS adicionales como pila TCP/IP, sistema de archivos

5. Arrancar el RTOS y sus tareas iniciales.


Figura N34. Inicializacin RTOS.

3.11.3 Aplicacin de software de inicializacin.


Luego de que la RTOS se inicializa y ejecuta los componentes necesarios, se transfiere el control a una aplicacin definida por el usuario. Esto tiene lugar cuando el cdigo RTOS llama a una funcin predefinida, que la realiza mediante una aplicacin definida por el usuario. Luego la aplicacin para a travs de la inicializacin, durante el cual todos los objetos necesarios, servicios, estructuras de datos, variables y otras construcciones se declaran e implementan. Estas tareas de aplicaciones creadas se ejecutarn una vez que el programador de kernel se ejecuta. El planificador de kernel se ejecuta cuando la funcin de control de transferencia da salidas.

24

3.12 DEPURAR ON CHIP (OCD)


Depurar es limpiar el microprocesador y hay varios tipos como el BDM y JTAG que sin necesidad de agentes de software permiten un conexin directa con el microprocesador, logrando as un interfaz externa que permite al programador descargar, leer o escribir datos, acceder a la memoria, y as facilitar la depuracin paso a paso. Una solucin de OCD se compone de hardware y software. Mediante hardware especiales, llamados personalidad mdulos, se construyen para el tipo de procesador especfico y se requiere para la conexin entre la interfaz de OCD en el sistema de destino y el sistema de desarrollo de acogida. La interfaz del sistema de destino suele ser de 8 - 10 pines de conexin. El lado del host de la conexin puede ser el puerto paralelo, puerto serie o la interfaz de red. El RTOS es un sistema operativo en tiempo real que ofrece una plataforma sobre la cual se puede realizar aplicaciones. El RTOS es utilizado por una gran parte de sistemas embebidos.

3.12.1 Una Breve Historia de los Sistemas Operativos.


La evolucin de los sistemas operativos ayud a cambiar el diseo de aplicaciones de software de aplicaciones de gran tamao, monolticos a, aplicaciones interconectadas ms modulares que podan correr sobre el entorno del sistema operativo.

desarrollado para facilitar acceso multiusuario

dirigido a usuarios residenciales de area personal

Microsoft Windows

Figura N34. Historia de los sistemas operativos.

3.12.2 Similitudes entre RTOS y GPOS


algn nivel de multitarea. software y gestin de los recursos de hardware. prestacin de servicios del sistema operativo a las aplicaciones. abstraer el hardware de la aplicacin de software. Mayor fiabilidad en los contextos de aplicacin incorporados La capacidad de escalar hacia arriba o hacia abajo para satisfacer las necesidades de aplicacin. Rendimiento ms rpido.

3.12.3 Caractersticas de porque RTOS es mejor que GPOS

RTOS , GPOS

dirigidos a la informatica enbebida

Unix

25

Menos uso de memoria. Polticas de programacin adaptados para sistemas embebidos en tiempo real Apoyo a los sistemas embebidos sin disco al permitir ejecutables para arrancar y ejecutar desde la ROM o RAM Mejor portabilidad a diferentes plataformas de hardware.

3.12.4 Componentes de un RTOS


el programador esta en el nucleo y consta con un algoritmo que le indica cuando y como ejecutar cada tarea. son construciones especiales creadas por el nucleo que ayudan a los programadores a realizar aplicaciones para los RTOS.

PROGRAMADOR

OBJETOS

son operaciones que realiza el nucleo en un objeto.


SERVICIOS

Figura N35. Componentes de un RTOS.

3.13 PROGRAMADOR 3.13.1 Entidades programables


Una entidad programable es un objeto de ncleo que pueden competir por el tiempo de ejecucin en un sistema como las tareas y procesos.

3.13.2 La multitarea
Es la capacidad del SO de manejar varias actividades en plazos de tiempo, el ncleo se encarga de ir ejecutndolas secuencialmente en base a algoritmos ya establecidos.

3.13.3 El cambio de contexto


Cada tarea tiene su propio contexto (estado de los registros de la CPU), se produce un cambio cuando el programador crea una nueva tarea, por lo cual la tarea anterior se congela y se guarda en la TCB para luego volver a ser ejecutada desde donde se qued.

3.13.4 El Despachador
Es una parte del programador que realiza el cambio de contexto y cambia el flujo de ejecucin o de control que estar pasando a travs de una tarea de aplicacin, a travs de un ISR, o a travs del ncleo.

26

Despus de la ISR completa la ejecucin, el ncleo sale a travs del despachador de modo que puede entonces enviar la tarea correcta.

3.13.5 Programacin de Algoritmos


Los algoritmos vienen definidos por el fabricante, pero los programadores pueden modificar, crear y definir sus propios algoritmos de programacin. Son dos: Planificacin basada en prioridades preventivas Se refiere a que cada tarea tiene cierta prioridad y la tarea con mayor prioridad se ejecuta primero. La prioridad de una tarea se puede cambiar dinmicamente utilizando llamadas proporcionadas por el ncleo.
Planificacin round robin

Todas las tareas cuentan intervalos definidos, lo cual permite que cada una se ejecute en tiempos especficos y continuos (ronda robin), y al terminar de ejecutarse simplemente se coloca al final del ciclo.

3.14 OBJETOS
Los objetos ms comunes del ncleo RTOS son: Tareas: son subprocesos simultneos e independientes que compiten por el tiempo de ejecucin. Semforos: son objetos simblicos que puedan ser aumentados o disminuidos por las tareas para la sincronizacin o exclusin mutua. Colas de mensajes: son estructuras de datos de amortiguamiento que se pueden utilizar para la sincronizacin, la exclusin mutua, y el intercambio de datos mediante el paso de mensajes entre tareas.

3.15 SERVICIOS
La mayora de ncleos ofrecen servicios que ayudan a los programadores a desarrollar aplicaciones para RTOS (API). Se los puede utilizar para realizar operaciones con los objetos del ncleo y configurar varias herramientas como: temporizadores, interrupciones, etc. Y otros servicios podran ser proporcionados.

3.16 CARACTERSTICAS PRINCIPALES DE UN RTOS 3.16.1 Fiabilidad


La fiabilidad consiste en que el sistema se encuentre prestando servicios sin interrupciones ni fallas. Para lo cual hay grados de fiabilidad en relacin a cunto tiempo el sistema estara fuera de servicio en un ao.

27

Nmero de 9s 3 Nines (99.9%) 4 Nines (99.99%) 5 Nines (99.999%) 6 Nines (99.9999%)

Tiempo de inactividad por aplicacin tpica ao ~9 hours Escritorio ~1 hour ~5 minutes ~31 seconds Enterprise Server Carrier-Class Server Carrier Switch Equipment

Fuente: "Proporcionar Arquitectura Abierta soluciones de alta disponibilidad, 'Revisin 1.0, Publicado por HA Forum, Febrero de 2001.

3.16.2 Predictibilidad
Un RTOS debe ser predecible hasta cierto punto. Se hacen llamadas al sistema operativo en plazos de tiempo y mientras el tiempo sea ms pequeo el sistema tiene una mejor predictibilidad.

3.16.3 Rendimiento
El rendimiento de un sistema se refiere a la velocidad para procesar datos (entrada salida) en bits por segundo (bps), generalmente la velocidad suele venir especificada en el hardware pero el rendimiento tambin depende del software, es decir es una medida en conjunto de hardware y software.

3.16.4 Compacidad
Son las normas que limitan el diseo y el costo de los sistemas embebidos, por tanto afectan a la memoria del sistema. Un RTOS debe ser pequeo y eficiente.

3.16.5 Escalabilidad
Un RTOS debe ser capaz de aadir o eliminar componentes modulares, incluyendo sistemas de archivos y las pilas de protocolos, de acuerdo a las necesidades de la aplicacin.

3.17 TAREAS 3.17.1 Introduccin


En los sistemas embebidos es necesario un software diseado para concurrencia, es decir que puede realizar multitareas, dando as un buen rendimiento en los tiempos requeridos para un sistema en tiempo real.

28

3.17.2 Definicin de una tarea


Una tarea es un hilo con ejecucin independiente y consta con una prioridad que le competir con varias tareas concurrentes para su respectiva ejecucin. Cada tarea tiene un nombre asociado, una prioridad, un bloque de control de tarea (TCB), una pila y una rutina de tareas, a este conjunto se le denomina objeto de tarea. Cuando el ncleo arranca crea sus propias tareas del sistema y sus niveles de prioridad a los cuales no pueden acceder las otras tareas ya que podran afectar al rendimiento general o comportamiento del sistema.

3.17.3Tareas del sistema:


Inicializacin o tarea de inicio: inicializa el sistema y crea e inicia tareas del sistema. Tarea vaca: consume ciclos de inactividad del procesador cuando ninguna otra actividad est presente. Tarea de registro: registra los mensajes del sistema Tarea de control de excepciones: maneja excepciones Tarea de depuracin: permite la depuracin con un depurador de acogida. Tarea inactiva: se ejecuta en un bucle infinito y asegura que el contador de programa del procesador es siempre vlida cuando no hay otras tareas se estn ejecutando.

Nota: El ncleo puede cambiar el control a la rutina proporcionada por el usuario en lugar de a la tarea inactiva.

3.17.4 Estados de tareas y programacin


Estado finito sencillo (FSM)

Figura N36. Estados de tareas y programacin.

29

Estado de tarea lista: est listo para funcionar pero no puede porque una tarea de mayor prioridad se est ejecutando, estas tareas solo pueden pasar al estado de ejecucin. Estado de tarea en funcionamiento (ejecucin): es la tarea de prioridad ms alta y se est ejecutando, puede regresar al estado de tarea lista si una tarea con mayor prioridad se crea. La tarea se mueve desde el estado de funcionamiento al estado bloqueado solo: Haciendo una llamada que solicita un recurso no disponible. Haciendo una llamada que solicita que espere a que suceda un evento. Haciendo una llamada a retrasar la tarea por un cierto tiempo.

Estado de la tarea bloqueada: bloque la tarea si ha solicitado un recurso que no est disponible (semforo), se ha solicitado que esperar hasta que algn evento ocurra (mensaje), o ha retrasado en s de una cierta duracin (retardo). Cuando una tarea se desbloquee puede ir al estado de tarea lista o al estado de funcionamiento, dependiendo de la prioridad de la tarea.

3.17.5 Operaciones de tareas tpicas.


Los ncleos proporcionan servicios de gestin de tareas, es decir servicios para apoyar a las tareas como la creacin y mantenimiento de TCB y pilas. Adems provee una API para que los programadores puedan acceder a las tareas y manipularlas.

Tareas

Creacin

Borrado

Por medio del API kemel.

Termina la tarea y libera memoria.

Elimina las tareas de TCB y stack.

Problemas

Prdida de Memoria: Sistema se queda sin memoria.

Mientras se ejecuta y borran tareas

Datos Corruptos Escritura incmopleta

Semforo Indito - No esta disponible para otras tareas.

Estructura de datos inaccesibles.

Figura N37. Proceso de creacin y borrado de las tareas.

30

Los procesos que sigue una tarea son:


EVENTOS (Ejecutables kenmel) Tarea Suspendida

Tarea Creada

Tarea Borrado

Figura N38. Procesos de una tarea.

3.17.6 Programacin de Tareas:


Desde el momento una tarea es creada al tiempo que es borrado. Manual de Programacin: OPERACIN Suspender Resumir Retardo Reinicio Generar Prioridad Configura Prioridad DESCRIPCIN Suspende una tarea Resumir una tarea Demora una tarea Reinicia una tarea Define prioridad de last areas Hace dinmicas a las tareas. Tabla 1. Manual de programacin

3.17.7 Revisin de tareas:


Una tarea retrasada a la espera de una condicin externa puede despertar despus de un tiempo establecido para comprobar si se ha producido una condicin especificada o un evento, que se denomina sondeo. Cuando acaba el tiempo, la tarea se devuelve a la lista de tareas listo despus de todas las dems tareas de listas en su nivel de prioridad.

3.17.8 Obteniendo Informacin de Tareas:


OPERACIN Conseguir ID Conseguir TCB DESCRIPCIN Consigue una tarea actual con una ID. Consigue una tarea actual con TCB. Tabla 2. Obtencin de Tareas Un uso es para obtener una tarea por una ID en particular, se utiliza para obtener ms informacin acerca de la tarea.

31

La obtencin de un TCB, sin embargo, slo se toma una instantnea del contexto de la tarea.

Estructura Tpica de una Tarea

Ejecutarse hasta su finalizacin

Bucle sin Fin Manipulacin de I/O

Figura N39. Estructura de una tarea.

3.17.9 Ejemplos:
Ejecutarse hasta su finalizacin: Tarea de inicializacin inicializa la aplicacin y crea servicios adicionales, las tareas y los objetos del kernel necesarios.

Bucle sin fin: Al igual que con la estructura de la tarea de inicializacin de la aplicacin, la estructura de una tarea de bucle sin fin tambin puede contener cdigo de inicializacin. Cdigo de inicializacin del bucle sin fin, sin embargo, slo tiene que ejecutar cuando la tarea se ejecuta en primer lugar, despus de lo cual la tarea se ejecuta en un bucle sin fin. `

32

3.17.10 Sincronizacin, Comunicacin y Concurrencia de una Tarea


Mediante el uso de primitivas intertask

Sincronizacin, Comunicacin y Concurrencia


Objetos: Entre Hilos de ejecucin -Semforos -Coals de mensajes -Senales

7
Figura N40. Sincronizacin, comunicacin y concurrencia de una tarea.

3.18 SEMFOROS:
Se basa en la aplicacin de hilos debido a que una aplicacin debe ser capaz de sincronizar su ejecucin y coordinar mutuamente accesos exclusivos para compartir recursos.

33

Permiten acceder a un recurso

Adquirir o liberar a los efectos de la sincronizacin Objeto de ncleo que une uno o ms hilos de ejecucin Definicin Exclusin mutua

Identificacin, un valor binario, y una lista de tareas en espera

Tiene un lmite para la creacin de semforos.

Figura N41. Definicin de semforo.

3.18.1 semforos binarios:


Un semforo binario puede tener un valor de 0 1. Cuando el valor de un semforo binario es 0, el semforo es considerado disponible (o vaco). Cuando el valor es 1, el semforo binario se considera disponible.

Figura N41. Definicin de semforo.

3.18.2 Contador de semforos:


Si el inicial count es 0, el semforo de cuenta se crea en el estado de no disponibilidad. Si el contador es mayor que 0, el semforo est creado en el estado disponible, y el nmero de fichas que tiene es igual a su recuento.

Figura N42. Diagrama de estado de cuenta del semforo.

34

3.18.3 Operacin tpica de los semforos:


Creacin y eliminacin de semforos

Diferentes llamadas pueden ser utilizados para la creacin de binario, conteo, y los semforos de exclusin mutua. Esperar siempre la tarea permanece bloqueada hasta que sea capaz de adquirir un semforo. La operacin de vaciado es til para la difusin de sealizacin a un grupo de tareas. Estas operaciones son relativamente sencillas, pero deben utilizarse juiciosamente, como la informacin del semforo podra ser dinmica en el momento que se solicite.

Adquisicin y liberacin de los semforos

Limpiar la lista de tareas en espera de un semforo

Obtencin de informacin de semforos

Figura N43. Operacin tpica de los semforos.

Semforo de Uso Tpico


Requisitos de diseo de sincronizaci n comunes con eficacia Esperar y seal de sincronizaci n eEperar a la seal de mltiples tareas recursos de acceso compartido recursiva recursos de acceso compartido mltiple

Figura N44. Semforo de uso tpico.

35

3.19 ACCESO MULTIPLE DE COMPARTICIN - SINCRONIZACIN


Para los casos en que se utilizan mltiples recursos compartidos equivalentes

Figura N45. Diagrama de bloques de multiplicacin de tareas.

4. DIAGRAMAS 4.1. DIAGRAMA DE BLOQUES

Figura N46. Diagrama de bloques de un sistema embebido.

36

4.2.

EJEMPPLO DE DIAGRAMA ELCTRICO DE UN SISTEMA EMBEBIDO.

Figura N 47. Ejemplo de diagrama electrnico de un sistema embebido.

5. CONCLUSIONES
- Se revisaron las diferentes clases de sistemas embebidos que existen, su estructura, desarrollo e implementacin, con lo que se puede concluir que se elige el dispositivo dependiendo de la aplicacin que se desee realizar ya que a veces se puede necesitar o no que los procesos tengan una respuesta rpida. - Los sistemas embebidos con respuesta en tiempo real tienen una variedad de aplicaciones como sistemas elctricos, domtica, medicina entre otros, que permiten analizar sistemas complejos y a su vez optimizar recursos. - Un sistema embebido tiene un tiempo de respuesta mnimo a una accin y realiza una funcin general dependiendo de la necesidad del usuario

6. RECOMENDACIONES - Es recomendable verificar la necesidad de utilizar un tipo de sistema embebido, ya que esto depender nicamente de la aplicacin que se

37

quiera dar al dispositivo, y al no hacerlo puede generar prdidas de recursos - Para la realizacin de aplicaciones es recomendable el conocimiento de las funciones internas que realizan los sistemas, de tal modo que evitemos ocasionar posibles daos. 7. APORTACIONES 7.1 Varios sistemas operativos de tiempo real

Tabla 3. Ejemplos de sistemas operativos en tiempo real.

7.1.1 uClinux
Clinux es un derivado del kernel 2.0 de Linux destinado para microcontroladores y microprocesadores sin unidades de administracin de memoria (MMUs). Clinux hoy en da incluye las versiones 2.4 y 2.6 del kernel de Linux con las debidas modificaciones o extensiones. Incluso, gracias a la popularidad que estn tomando los sistemas embebidos, Clinux ha sido incluido en la versin principal del kernel de Linux, la 2.6. Es un sistema operativo apto para Internet y sistemas embebidos, donde no se necesita de una arquitectura de alto desempeo. Se tiene soporte para varios sistemas de archivos tales como: NFS, ext2, fat32, romfs, jffs y muchos ms gracias al sistema de archivos virtual que desciende de Linux Razones para usar Clinux Las siguientes caractersticas muestran porque Clinux puede ser usado en aplicaciones embebidas de alta complejidad con limitantes en la arquitectura.

38

Linux: Conectividad IP incluida, fiabilidad, portabilidad, manejo de numerosos sistemas de archivos, software libre o gratuito. Peso liviano: se puede obtener un kernel de Linux 2.6 en menos de 300kb, adems, los binarios son mucho ms pequeos con la librera Clibc. Ejecucin en el lugar (XIP): No se necesita cargar los ejecutables en la memoria RAM ya que se pueden correr directamente desde la memoria ROM. Sin embargo la ejecucin ser ms lenta que si lo ejecuta normalmente. Ms barato: Los ncleos ARM sin MMU son aproximadamente un 30% ms pequeos. Un gran nmero de aplicaciones en sistemas embebidos no necesitan MMU. Rpido: con Clinux, los cambios de contexto son bastante rpidos. Acceso del usuario al hardware: Las aplicaciones de usuario pueden acceder al sistema entero, incluyendo registros de dispositivo. APIs de Linux completas: Se pueden usar la mayora de llamadas de sistema con algunas excepciones. Las aplicaciones que vienen con la distribucin Clinux ya han sido portadas. Caractersticas completas del kernel 2.6: Estabilidad, ncleo apropiativo, drivers, entre otros. Multitarea: Soporte completo para ejecucin de tareas mltiples. Claro est, con algunas limitaciones. Procesadores soportados: M68K, ARM7, MIPS, entre otros.

uClinux se utiliza en: Ipods

Figura N 48. Ipods.

39

Play station porttil (PSP)

Figura N 49. PSP. Smathphones

Figura N 50. Celular.

8. APLICACIONES
Domtica - Electrodomsticos - Consolas - Iluminacin - Climatizacin - Seguridad

Figura N 51. Sistemas manejados por domotica.

Automocin - ABS - Sistemas de navegacin - Control del motor

Figura N 52. Sistema de un automovil.

40

Sistemas elctricos - Control de demanda - Calidad del suministro

Figura N 53.Antenas. Medicina - Marcapasos - Imagen (resonancia magntica),

Figura N 54. Sistemas magneticos. Tecnologia - smarthphones - ipods - tablets, etc

9. CRONOGRAMA

Figura N 55. Cronograma de actividades

41

10. BIBLIOGRAFA - Real Time Concepts for Embedded Systems, Qing Li y Canolyn, CMP ,2003, 294 pags0 Sistemas Embebidos basados en FPGAs para instrumentacin, Guillermo Carpintero del Barrio, Universidad Carlos III de Madrid. Prototipado de sistemas empotrados, Marco A. Pea. Disponible en: http://docencia.ac.upc.edu/EPSC/PSE/documentos/Trabajos/Archivo/Trabaj o_Linux_empotrado.pdf Revisado: [23 04 2014]

11. ANEXOS

42

11.1 PAPER

S-ar putea să vă placă și