Está en la página 1de 104

Sistemas Empotrados

Ing. Jos Luis Peralta Lujn

Qu es un Sistema Empotrado?


Un sistema empotrado es un sistema de


cmputo aplicado (de funcin especifica), a
diferencia de otros tipos como computadoras
personales (PC) o supercomputadoras.
Sin embargo, la definicin de "sistema
empotrado" es flexible y difcil de precisar, ya
que constantemente evoluciona con los avances
en la tecnologa y la disminucin en el costo de
implementacin de muchos componentes de
hardware y software.




En los ltimos aos el campo ha superado


muchas de sus descripciones tradicionales.
Debido a que se encontrar algunas de estas
descripciones y definiciones es importante
entender el razonamiento detrs de ellas y por
qu ellas pueden o no ser exactas el da de hoy,
y ser capaces de hablar de ellas con
conocimiento. Las siguientes son algunas
descripciones ms comunes de un sistema
empotrado:

a)

Los sistemas empotrados son ms limitados en


hardware y/o funcionalidad software que un PC.
HW: Procesamiento, consumo de energa,
memoria, funcionalidades hw, etc.
SW: Ningn o limitado SO, aplicaciones a baja
escala.
Sin embargo, esta definicin es solo
parcialmente cierta, en la actualidad las tarjetas
de circuitos y software encontrado en PCs del
pasado han sido reempaquetados en diseos de
sistemas empotrados ms complejos

b)

Un sistema empotrado est diseado para


realizar una funcin especfica.
Sin embargo PDA y celulares, son sistemas
diseados para ser capaces de hacer una
variedad de funciones especfica.
Adems, los televisores digitales de ltima
generacin incluyen aplicaciones interactivas
que realizan una amplia variedad de funciones
generales no relacionadas a la funcin de "TV",
pero igual de importantes, como correo
electrnico, navegacin web y juegos.

c)

Un sistema empotrado es un sistema de


cmputo con mayores exigencias en calidad y
fiabilidad que otros tipos de sistemas. Ejemplo:
SE en central nuclear.

d)

Algunos dispositivos que son llamados sistemas


empotrados, tales como PDAs o Web pads no
son realmente sistemas empotrados.
Existe cierto debate en cuanto a si estos
dispositivos forman parte o no de estos
sistemas, pero no todas las definiciones
tradicionales de sistema empotrados son en
realidad sistemas empotrados o algo ms.

En realidad los ingenieros de sistemas


embebidos estn divididos en cuanto a si estos
diseos son o no sistemas empotrados, aun
cuando actualmente estos sistemas a menudo
son llamados como tal entre los diseadores.
Pero hay que tener presente que las
definiciones
tradicionales
seguirn
desarrollndose o en algn momento un nuevo
campo de sistemas informticos podr ser
designado para incluir estos sistemas ms
complejos

Pero hay que tener presente que las


definiciones
tradicionales
seguirn
desarrollndose o en algn momento un nuevo
campo de sistemas informticos podr ser
designado para incluir estos sistemas ms
complejos.
Por ahora, no hay ningn nuevo campo apoyado
por la industria de sistemas computo designado
a diseos que estn entre el sistema empotrado
tradicional y los sistemas de propsito general.
Apoyaremos el punto de vista evolutivo de los
sistemas empotrados que abarca estos tipos de
diseos de sistema cmputo.

En la siguiente tabla se puede observar


dispositivos electrnicos clasificados segn el
segmento de mercado, la nica caracterstica
que tienen en comn es que todos ello son
sistemas de cmputo, es por esto que no hay
una definicin de sistemas empotrados que se
refleje en todos los mercados.

Diseo de Sistemas Empotrados




Para describir el ciclo de diseo de un sistema


empotrado se utilizar el modelo propuesto por
Tammy Noergaard.
Modelo: Es la representacion formal o simplificada
de un proceso (conjunto estructurado de
actividades requeridas para desarrollar un
sistema, las actividades varan dependiendo de la
organizacin y del tipo de sistema a desarrollarse)

Este modelo es una combinacin de los modelos


cascada y espiral.

El concluy que los primeros proyectos tenan al


menos un factor en comn del que los otros
carecieron. Este factor es el mostrado en la
siguiente figura y por eso introduce este modelo
como una herramienta importante en la
comprensin del proceso de diseo de sistemas
embebidos
En esta figura, el proceso de diseo y desarrollo
de sistemas empotrados es dividido en 4 fases:
Creacin de la arquitectura, implementacin de la
arquitectura, pruebas del sistema y mantenimiento
del sistema

Introduccin a la Arq. de un SE


La Arq. de un SE es una abstraccin del


dispositivo empotrado (sin detalles de hw y sw).

En el nivel arquitectnico, los componentes


hardware y software en un sistema empotrado son
representados como una composicin de
elementos que interactan.

Los elementos arquitectnicos pueden estar


internamente integrados dentro del dispositivo
empotrado, o existir externamente al sistema
empotrado y interactuar como los elementos
internos.




La informacin a nivel arquitectnico es


representada fsicamente en forma de estructuras.
Una estructura es una posible representacin de
la arquitectura, conteniendo su propio conjunto de
elementos
representados,
propiedades,
e
informacin de interrelacin.
Una estructura es por lo tanto "una foto" del
sistema hardware y software en tiempo de diseo
y/o tiempo de ejecucin dado un entorno en
particular y un conjunto de elementos dados.

Ya que es muy difcil que una "foto" capture toda


la complejidad de un sistema, una arquitectura
est tpicamente conformada por ms de una
estructura.

Todas las estructuras dentro de una arquitectura


estn intrnsecamente relacionados entre s, y la
suma de todas estas estructuras es la arquitectura
de un dispositivo empotrado.

La siguiente tabla resume algunas estructuras


ms comunes que pueden formar parte de las
arquitecturas
empotradas,
y
generalmente
muestra cuales son los elementos de una
estructura en particular y como estos elementos
se interrelacionan.

Esta tabla tambin muestra la gran variedad de


estructuras arquitectnicas disponibles para
representar un sistema empotrado.

El Modelo de Sistemas Empotrados




El campo de los sistemas empotrados es amplio


y variado, y es difcil precisar definiciones o
descripciones exactas.

Entonces es necesario utilizar un modelo que


sea aplicable a todos los sistemas empotrados.

En un nivel ms alto, la herramienta arquitectnica


base usada para introducir los elementos ms
importantes localizados dentro de un diseo de un
sistema empotrado es lo que se conoce como
modelo de un sistema empotrado, el cual es
mostrado en la siguiente figura

Se selecciona esta representacin modular como


estructura principal por dos razones:
La representacin visual de los elementos
principales y sus funciones asociadas.
Las
representaciones
arquitectnicas
modulares son tpicamente las estructuras de
apoyo para estructurar
completamente
el
proyecto empotrado.

Hardware de SE


Tener en cuenta que es importante que todos los


diseadores de SE puedan ser capaces de
entender los diagramas y smbolos que los
ingenieros de hardware crean y usan para
describir su diseo de hardware al mundo exterior.
Los diagramas contienen la informacin que un
desarrollador de software empotrado necesita
para disear cualquier software que requiere
compatibilidad con el hardware, y ellos
proporcionan la visin a el desarrollador en cuanto
a
como
comunicar
exitosamente
los
requerimientos hardware del software a un
ingeniero de hardware.

Existen diferentes diagramas:


 Diagrama

en bloques.

 Diagrama

esquemtico.

 Diagrama

de cableado (buses).

 Diagrama

lgico.

 Diagrama

de tiempos.

Tarjeta del SE (Embedded Board )

Todo el hardware electrnico reside sobre esta


placa o tarjeta (board).

Tambin conocida como tarjeta de alambrado


impreso (printed wiring board PWB) o tarjeta de
circuito impreso (PCB).

En un nivel ms alto, los componentes principales


de hardware de la tarjeta pueden ser clasificados
en 5 categoras principales.

 Unidad

Central de Procesamiento (CPU): El


procesador maestro.
 Memoria: Donde el software y los clculos
productos de l son almacenados.
 Dispositivos de Entrada: Procesadores esclavos de
entrada y componentes elctricos relativos.
 Dispositivos de Salida: Procesadores esclavos de
salida y componentes elctricos relativos.
 Buses:
Interconectan
otros
componentes,
proporcionando "un camino" para que los datos
viajen de un componente a otro, incluyendo
cualquier cable, pasarelas (bridge) de bus, y/o
controladores de bus.

PROCESADOR


Unidades funcionales de una embedded board


y son los responsables de procesar datos e
instrucciones

Un dispositivo electrnico contiene al menos


un procesador maestro el cual acta como
dispositivo de control central.

Un SE puede tener procesadores adicionales


que trabajan como esclavos y que son
controlados por el procesador maestro.

Los procesadores esclavos pueden ampliar el


juego de instruccin del procesador maestro o
actuar para administrar la memoria, buses y
dispositivos de E/S.

La complejidad del procesador maestro por lo


general determina si se clasifica como
microprocesador o microcontrolador.

Los microprocesadores tienen una mnima


cantidad de memoria y poqusimos componentes
de I/O integrados; los microcontroladores tienen la
mayor parte de memoria del sistema y
componentes de I/O integrados en el chip.

Sin embargo hay que tener presente que estas


definiciones tradicionales no pueden aplicarse
estrictamente a diseos de procesadores
recientes. Por ejemplo los microprocesadores se
hacen cada vez ms integrados.

Procesador Integrado
Si bien algunos componentes, con I/O, pueden
mostrar una disminucin en su desempeo
cuando se integran en un procesador maestro en
lugar de estar en chips esclavos dedicados,
muchos otros muestran un incremento en el
rendimiento porque ya no tienen que lidiar con el
tiempo de latencia al transmitir datos a travs de
un bus entre procesadores.

Un procesador integrado simplifica el diseo


de toda la placa:
 Menos componentes.
 Menos requerimientos de energa.
 Menor costo.

Por otro lado, hay menos flexibilidad en la


adicin,
cambio
o
remocin
de
funcionalidades desde los componentes
empotrados en el procesador.

Hay literalmente cientos de procesadores


integrados disponibles, y ninguno de ellos
actualmente domina los diseos de sistemas
empotrados

A pesar de la gran cantidad de diseos


disponibles los procesadores empotrados
pueden ser separados en varios "grupos"
llamados arquitecturas.

Se consideran que dos procesadores tienen la


misma arquitectura cuando ellos pueden
ejecutar el mismo conjunto de instrucciones
en cdigo mquina.

Modelos de Arquitectura ISA


Las caractersticas que se integran en el
conjunto
de
instrucciones
de
una
arquitectura se conocen como ISA
(Instruction Set Architecture o Arquitectura
del Conjunto de Instrucciones)

ISA define caractersticas tales como:


 Operaciones que pueden ser utilizadas por los
programadores para esa arquitectura
 Tipos de Operaciones:

 Formato

de Operaciones:

Operandos (datos), que son aceptados y


procesados por la arquitectura.

Almacenamiento

Modos de Direccionamiento

Interrupciones y manejo de excepciones

Modelos ISA de Aplicacin Especfica




Modelo Controlador:
Implementado en procesadores que no requieren
realizar una manipulacin de datos compleja, como
los procesadores de vdeo y audio que son usados
como procesadores esclavos en una placa de TV.

Modelo Datapath
Datapath ISA es implementado en procesadores cuyo
objetivo es realizar repetidamente cmputos fijos
sobre un conjuntos diferentes de datos, un ejemplo es
el procesador digital de seales (DSPs)

Modelo maquina de estados finitos con Datapath


(FSMD)
El FSMD es una implementacin basada sobre una
combinacin del Datapath ISA y Controlador ISA para
procesadores que no requieren realizar manipulacin
compleja de datos y realizar repetidamente cmputos
fijos sobre conjuntos diferentes de datos. Ejemplos
comunes de una implementacin FSMD son circuitos
integrados
de
aplicacin
especfica
(ASICs)
mostrados en la siguiente figura, dispositivos lgicos
programables (PLDs), FPGAs (que son esencialmente
ms complejos que los PLDs).

Modelo Java Virtual Machine (JVM)


La mquina virtual de Java puede ser implementada
en un sistema empotrado va hardware en
procesadores aJiles, aj-80 y aj-100.

Modelos ISA de Propsito General


Son implementados en procesadores que tienen
como objetivo ser usados en una amplia variedad de
sistemas y no solo en tipos especficos de sistemas
empotrados

Modelo de Computador de Conjunto de


Instrucciones Complejas (Complex Instruction Set
Computing - CISC)
CISC ISA, como su nombre lo indica, define
operaciones complejas compuestas de varias
instrucciones. Los ejemplos ms comunes de las
arquitecturas que implementan CISC ISA son las
familias
de
procesadores
Intel's
x86
y
Motorola/Freescale's 68000.

Modelo de Computador de Conjunto de


Instrucciones Reducido (Reduced Instruction Set
Computing - RISC)
A diferencia del CISC, ISA RISC por lo general
define:
 Una arquitectura simple y/o menor nmero de
operaciones
realizadas
por
menos
instrucciones.
 Una arquitectura que tiene un nmero reducido
de ciclos por operacin disponible.

Muchos procesadores RISC tienen operaciones que se


ejecutan dentro de un ciclo de reloj, mientras que CISCS
normalmente tiene operaciones de mltiples ciclos.
AMR, PowerPC, SPARC y MIPS son ejemplos de
arquitecturas basadas en RISC.

Diseo Interno del Procesador




ISA define lo que un procesador puede hacer y son


las interconexiones internas de los componentes
hardware
que
fsicamente
implementan
las
caractersticas ISA.

Curiosamente los componentes fundamentales que


constituye la embedded board son los mismos que los
que implementan las caractersticas ISA en un
procesador.

Muchos de los procesadores actuales son


ms complejos en diseo que el modelo de
Von Neumann.

Sin embargo, la mayor parte de los diseos


hardware de estos procesadores estn
todava basados en componentes de Von
Neumann o una versin del modelo de Von
Neumann llamado modelo de arquitectura
Harvard.

Algunos procesadores del mundo real basados en


Harvard son ARMs ARM9/ARM10,MPC860, 8031 y
DSPs

Los procesadores ARMs ARM7 y x86 son diseos


basados en Von Neumann

Memoria en el chip

PIC16F84

Board Memory


Las plataformas de memoria pueden tener una


jerarqua de memoria, una coleccin de diferentes
tipos de memoria, cada uno con velocidades nicas,
tamaos y aplicaciones diferentes.

A diferencia del tipo de memoria que siempre est


integrada en el procesador (cache de nivel 1) este tipo
de memoria se encuentra normalmente situada fuera
de el o puede estar integrada en el encapsulado pero
fuera del procesador.

Nos referimos a la memoria primaria como ROM,


cach de nivel 2+, memoria principal y memoria
secundaria/terciaria (la cual se encuentra conectada a
la placa pero no al procesador maestro)

La memoria primaria es normalmente una parte del


subsistema
de
memoria
compuesta
de
4
componentes.
 Circuito integrado (IC) de memoria
 Un bus de Direcciones
 Un bus de Datos
 Un bus de Control

En general, un circuito integrado (IC) de memoria est


formada por 4 unidades:
 El

arreglo de memoria.

 El

decodificador de direcciones.

 La

interfaz de datos.

 La

lgica de control.

Los circuitos integrados (IC) de memoria pueden


conectarse a placa en una variedad de empaquetados
dependiendo del tipo de memoria:
 Paquetes

de doble lnea (DIPs)

 Mdulos

de memoria en lnea simple (SIMM, los


contactos de las dos caras estn conectados)

 Mdulo

de memoria en doble lnea (DIMM, los


contactos de las dos caras son independientes).

En un nivel ms alto, tanto la memoria primaria


como secundaria pueden ser ubicadas en dos
grupos:
 No

voltil.

 Voltil.

ROM:


ROM programable por mascarilla (MPROM o


Mask ROM)


Este fue el tipo original de diseo de ROM

Se basan normalmente en MOS (NMOS, CMOS)


o circuitos basados en transistores bipolares.

Bits programados permanentemente en el chip


por mismo fabricante.

Debido a que la marcarilla de programacin es un


poco cara por lo general solo se producen en
grandes volmenes.

ROM programable una sola vez (One-Time


Programmable ROM o OTPRom o OTP)


Construidos a base de transistores bipolares.

Solo puede ser programada una sola vez como su


nombre lo indica pero fuera del lugar de
fabricacin usando un quemador de ROM.

El grabador de memoria slo quema los fusibles


de acuerdo a la informacin que quiere grabar
utilizando altos voltaje.

ROM programable y borrable


Programmable ROM o EPROM).

(Erasable

Est formada por celdas de FAMOS (Floating


Gate
Avalanche
Injection
Metal
Oxide
Semiconductor) o transistores de puerta flotante,
cada uno de los cuales viene de fbrica sin carga,
por lo que son ledos como 0.

Se programan mediante un dispositivo electrnico


que proporciona voltajes superiores a los
normalmente
utilizados
en
los
circuitos
electrnicos. Las celdas que reciben carga se
leen entonces como un 1.

Una vez programada, una EPROM se puede


borrar solamente mediante exposicin a una
fuerte luz ultravioleta.

ROM programable y borrable elctricamente


(Electrically-Erasable Programmable ReadOnly Memory o EEPROM o EPROM )


Tipo de memoria ROM que puede ser


programada,
borrada
y
reprogramada
elctricamente, a diferencia de la EPROM.

Distribucin de
terminales de la
EEPROM 2716, 2K x 8

Memoria Flash


Es una forma desarrollada de la EEPROM.

Permite que mltiples posiciones de memoria


sean escritas o borradas en una misma operacin
de programacin mediante impulsos elctricos.

RAM (Random Access Memory)




RAM ESTATICA.

RAM DINAMICA

RAM DINAMICA









Almacena como carga


de capacitor
Los capacitores se
descargan.
Necesita
refrescamiento.
Construccin simple.
Celdas mas
pequeas.
Mas barata.
Mas lenta.
Uso en arreglos
grandes y lentos
(Memoria Principal).
Es bsicamente
analgica

RAM ESTATICA









Almacena como valor


digital en flip-flops.
No sufre descargas.
No necesita
refrescamiento.
Construccin
Compleja.
Celdas mas grandes.
Mas Costosa.
Mas Rpida.
Uso en arreglos mas
pequeos y rpidos
(Memoria Cach).
Circuito Digital.

RAM ESTATICA:

RAM DINAMICA:

Memoria Auxiliar

Comnmente llamada memoria auxiliar o


memoria de almacenamiento.

Utilizada para almacenar grandes cantidades


de datos, durante largos perodos de tiempo.

El procesador maestro solo se puede acceder


a ella utilizando un dispositivo conectado a la
embedded board.

Board I/O


Los componentes de entrada y salida (I/O) son los


responsables de mover datos hacia dentro o hacia
fuera de la embedded board. Los datos vienen o van a
los dispositivos conectados al sistema empotrado.

Cualquier sistema electromecnico, embebido o no,


ya sea tradicional o no, puede ser conectado a una
embedded board y actuar como un dispositivo de I/O.

Los dispositivos pueden ser clasificados como:


 Dispositivos de salida (led, impresora, etc)
 Dispositivos de entrada (ratn, control remoto, etc)
 Dispositivos que son de entrada y salida (modem)

Un dispositivo puede
embedded board:
 Alambricamente
 Inalmbricamente

estar

conectado

una

Debido a que los dispositivos de I/O son variados, los


componentes de I/O de una embedded board pueden
estar bajo una o varias categoras:


Interconexin (Networking) y comunicaciones (capa


fsica del modelo OSI).

Entradas (Teclado, Mouse, control remoto, etc.)

Grfica (pantalla tctil, CRT, impresoras, leds, etc.)

Almacenamiento (controlador de disco ptico,


controlador de disco magntico, controlador de
cinta magntica, etc.)

Depuracin (BDM, JTAG, puerto serial, puerto


paralelo, etc.)

Tiempo real y miscelneos (timers/contadores,


ADC, DAC, switchs, etc.)

El hardware de I/O est conformado normalmente por


todas o alguna combinacin de las siguientes 6
unidades lgicas:


El medio de transmisin, inalmbrico o almbrico,


que conecta al dispositivo I/O a la embedded board
para la comunicacin e intercambio de datos.

Puerto de comunicacin, al que el medio de


transmisin se conecta en la embedded board o si es
un sistema inalmbrico el que recibe la seal
inalmbrica.

Interfaz de comunicacin, que administra la


comunicacin entre el CPU maestro y el dispositivo
I/O o controlador I/O, y es la responsable de codificar
y decodificar datos a un nivel lgico de IC a nivel
lgico del puerto I/O. Esta interfaz puede estar
integrada en el procesador maestro o puede estar
separada en un IC.

Un controlador I/O, un procesador esclavo que


gestiona el dispositivo I/O.

Buses I/O, conexiones entre las I/O de la embedded


board y el procesador maestro.

Procesador Maestro Integrado con I/O.

Las I/O en una embedded board pueden variar de un


compleja combinacin de componentes, a unos pocos
componentes integrados con I/O como se muestra en
las siguientes figuras.

La composicin actual del sistema de I/O


implementado en una embedded board, ya sea
usando conectores y puertos o usando controladores
de dispositivos de I/O, depende del tipo de dispositivo
I/O conectado, o ubicacin en el embedded board.

También podría gustarte