Documente Academic
Documente Profesional
Documente Cultură
Sistemas embebidos
Temas
Sistemas Operati os
Sistemas Embebidos
%n sistema embebido &S'E( es un sistema computador destinado a una aplicacin en particular' )os sistemas computadores de propsito general tienen muchas aplicaciones* seg+n el so,t-are .ue se instale'
Caractersticas
Es una combinacin de hard-are* so,t-are y posibles elementos mec/nicos' Espec,icos para una tarea por lo .ue son optimi0ados para la misma'
Firm-are
So,t-are .ue se encuentra inmerso en el dispositi o de hard-are a controlar' Es so,t-are muy acoplado con un hard-are particular'
Interact+an con el entorno 2irectamente sensando y controlando se3ales' Comunic/ndose con otros dispositi os' Interaccin con restricciones de tiempo real' Ba4o consumo'
Electrodom#sticos* peri,#ricos para computadora* control industrial* tel#,onos celulares* 51S* routers* mp6* m/.uinas de ,otos* consolas de ideo4uegos* e.uipos para medicina* canaleras para T7* 272* autos* entre otros'
Disponibilidad
Mayores e8igencias
Con,iabilidad9 C(t), probabilidad .ue un sistema cumpla sus re.uerimientos hasta un tiempo t cuando opera ba4o sus condiciones establecidas de ,uncionamiento' 2isponibilidad9 D(t), probabilidad .ue el sistema est# operando correctamente en el instante t de tiempo'
Mayores e8igencias
Seguridad &sa,ety(9 S&t( es la probabilidad .ue condiciones .ue pueden deri ar en una situacin ad ersa* no ocurran* independientemente de si el sistema cumple o no con su misin' Especialmente nos re,erimos a da3os a propiedad* medio ambiente e incluso* idas humanas'
Mayores e8igencias
!"ue atributo de calidad considera m/s importante para un sistema .ue controla el acceso a un centro de cmputos$
;eroespacio9 Mariners <* 6* =* ;riane > &<??@(' Sobredosis radiolgicas en 1anam/' 2urante el ABB@* el @BC de los autom iles de una marca de lu4o alemana ol ieron a taller por ,allas en el so,t-are'
;+n ba4o implementaciones Dper,ectasE de so,t-areF,irm-are los sistemas embebidos se encuentran inmersos en un ambiente e8terno* el cual puede a,ectar el correcto ,uncionamiento Este ambiente produce de,ectos transitorios en el dispositi o debido principalmente a9 Inter,erencia electromagn#tica &EMI( Rayos csmicos Temperatura alta Su naturale0a transitoria hacen muy di,cil de detectarFreproducirFcorregir
Gatch 2og Timer Es utili0ado para pre enir cadas del so,t-are' En entornos con ruido el#ctrico* puede ocurrir .ue el 1rogram Counter del C1% se ea a,ectado y #ste comience a e4ecutar en un lugar indeterminado' El circuito G2T se encarga de resetear el C1% si el registro G2 se desborda' )nea de reset e8terna
EntradaFSalida &EFS(
2ebido a su caracterstica los sistemas embebidos deben interactuar con el ambiente .ue los rodea' Sensando se3ales del ambiente o actuando sobre el mismo' :ay dos maneras de mane4ar la EFS9
2igital ;nalgica
EFS 2igital
Se intercambian DunosE y DcerosE' Esos alores corresponden a olta4es de re,erencia' %tili0ado para implementar protocolos de comunicacin' Htil para controlar algunos dispositi os electrnicos9
EFS ;nalgica
(1/2)
)os alores .ue se intercambian pueden tomar arios alores' Es necesario disponer de con ersores 2igital IJ ;nalgico &2F;( o ;nalgico IJ 2igital &;F2(' %n con ersor ;F2 con ierte un olta4e en un pin de entrada a un alor digital' )a resolucin del con ersor condiciona la cantidad de alores a representar' %n canal de <B bits a a permitir representar alores desde B a <BA6'
EFS ;nalgica
(2/2)
%n con ersor 2F; con ierte un alor digital a un olta4e en un pin de salida' Muchos sensores se mane4an de esta manera9
1arlantes* motores
)ecturaFescritura de EFS
(1/2)
1olling9 2onde se utili0an ciclos de C1% para estar constantemente consultando el alor de alguna entrada' Interrupciones9 El C1% es noti,icado e8ternamente' ; ni el de so,t-are se e4ecuta una rutina de atencin a la interrupcin'
; tener en cuenta'''
)atencia de interrupcin9 Tiempo entre la ocurrencia de la interrupcin y e4ecucin de la rutina de interrupcin' En sistemas de tiempo real se trata de acotar a alores mnimos la latencia de interrupcin'
)ecturaFescritura de EFS
(2/2)
Tambi#n puede e8istir un en,o.ue hbrido donde se utilice una interrupcin de timer para consultar el estado de un peri,#rico .ue no genera interrupciones'
Comunicacin
Serial RSIA6A S1I IAC 1aralela :oy da se est/ comen0ando a utili0ar otros mecanismos %SB Gi,i Ethernet Sncrona o asncrona' Redes de dispositi os'
Microcontroladores
(1/3)
%n microprocesador &K1( es una C1% en un solo circuito integrado' %n computador es una C1%* m/s memoria y puertos de EFS' %n sistema computador es un computador m/s peri,#ricos'
(2/3)
%n microcontrolador &KC( es un sistema autocontenido donde el microprocesador* soporte* memoria y entradaFsalida se presentan dentro de un mismo integrado'
Power Reset Clocking Power Reset Control Clock & Timing Control Store Processor RAM
I/O Ports
(3/3)
F/ciles de utili0ar' Ba4o costo' Fle8ibles' 2ebido a su tama3o puede incluirse dentro del dispositi o .ue gobierna'
Tipos de Microcontroladores
)os microcontroladores se pueden clasi,icar en9
Microcontroladores de = bits
(1/3)
Todos los recursos necesarios est/n incluidos en el chip' Solo necesitan alimentacin y relo4' 1roporcionan control e inter,a0 con dispositi os e8ternos de manera econmica y programable'
Microcontroladores de = bits
2isponen de9
(2/3)
Reset Relo4 1rocesador Memoria ROM para el programa e inter,a0 de programacin Memoria R;M para ariables' IFO 1ins' Capacidad de debugging Interrupciones IFO analgica Comunicacin serial yFo paralela Inter,a0 con memoria
Microcontroladores de = bits
(3/3)
Muy poca R;M &decenas de LB(' Muy poca elocidad de relo4 &decenas de M:M(' Muy utili0ados en aplicaciones de control' Ba4o costo' Ba4o consumo energ#tico &algunos KG(' E4emplo9 Control remoto %ni ersal
&programable(
Es una categora relati amente nue a de microprocesadores' El ob4eti o de los 2S1 es tomar un se3al analgica y calcular una respuesta apropiada' E4ecutan a gran elocidad para permitir el control en tiempo real' E4emplo9 reproductor M16
Registros de EFS
Son los componentes m/s utili0ados de los microcontroladores ' )os microcontroladores disponen de registros para controlar los dispositi os de EFS' Espacios
)os KC est/n dise3ados para e4ecutar con poco soporte e8terno para el relo4 del sistema' )os KCs corren en el entorno de las decenas de M:0' E8isten di ersos m#todos para proporcionarle el relo4 al KC9 %sando un cristal Resonador cer/mico Oscilador RC %tili0ando un clocN interno en el KC'
;limentacin
Minimi0ar el consumo de corriente es un tema a tener en cuenta' :ay .ue tener en cuenta el consumo9
Timers
Se utili0a para traba4ar con e entos de tiempo' Contadores9 cuentan acontecimientos .ue suceden en el e8terior' Tempori0adores9 controlan perodos de tiempo'
;r.uitectura
IO Boards
(1/2)
E8isten placas orientadas a traba4ar con entradaFsalida .ue permiten reali0ar dise3os embebidos en base a ellas' %tili0adas para prototipar o dise3ar productos de pocas unidades' Incluyen un microcontrolador* se3al de relo4* conectores de EFS* memoria ,lash e8terna* acondicionamiento de se3ales'
IO Boards
(2/2)
2esarrollo de so,t-are
IDE
;ssembler
)engua4e de alto ni el
MultitasNing Scheduling Conte8t S-itching Respuestas en tiempo a e entos del mundo' Comunicacin entre procesos' StacN TC1FI1 E4emplos9 Sal o* FreeRTOS* KCFOS* '''
Fabricantes
Intel
=BP= =B>< &Intel y Otros( =B<=@* =B<=@ y =B6=@ ES' 1IC @=:C<< &Motorola y Toshiba( @=688 ;7R
Microchip
Motorola
;tmel
Consuman menos por transistor Cuesten menos por transistor Sean m/s r/pidos
Se re,iere a integrar todos los componentes de un computador u otro dispositi o electrnico en un chip' )a principal di,erencia con un KC es la memoria disponible y el soporte para MM%' En general* los SOC permiten e4ecutar sistemas operati os &S'O( tradicionales' Cada SOC esta orientado a determinado tipo de aplicaciones'
;l incrementar el ni el de integracin se disminuye el costo de ,abricacin' 1ermite implementar sistemas m/s pe.ue3os de altas prestaciones'
)a ar.uitectura de hard-are para los sistemas embebidos por lo general di,iere a la de los sistemas de escritorio'
;RM* MI1S o 1o-er1C son muy utili0ados por su ba4o consumo y buena per,ormance' 8=@ actualmente no es tan ,recuente* pero tambi#n es utili0ado'
;lmacenamiento en ,lash :ay .ue tener en cuenta .ue los ciclos de borrado son limitados* para alargar la ida +til de la memoria' O E8isten t#cnicas para DgastarE de ,orma uni,orme la memoria &-ear le eling(' O To es recomendable utili0arlas para implementar espacio de s-ap'
Cantidad de R;M limitada &desde unos pocos MB a arias decenas de MB( 7elocidad de C1% in,erior a sistemas de escritorio' 7arios buses de intercone8in &IAC* S1I* %SB* serial( y puertos de EFS'
(Se"i!ast +esear!h)
2ispositi os dise3ados con SOC se adaptan me4or a nue os re.uerimientos .ue los dise3ados con microcontroladores 1ermiten utili0ar Sistemas Operati os de propsito general* so,t-are* de ice dri ers y peri,#ricos utili0ados en 1cs ;cortan la cur a de aprendi0a4e
En resumen
2ise3os basados en SOC presentan muchas enta4as respecto los sistemas basados en KC' Sin embargo e8isten casos de dispositi os muy sencillos* o .ue re.uieren muy ba4o consumo* donde los dise3os basados en Kc siguen siendo utili0ados'
SingleIboard computers &SBCs( son computadoras completas ,abricadas en una +nica placa de circuito' El dise3o es centrado en un microprocesador con R;M* almacenamiento* EFS y otras caractersticas necesarias para ser una computadora ,uncional en una sola placa'
;ctualmente e8iste una gran gama de SBC basadas en SOC' %n SOC por si solo no puede ,uncionar* necesita de alimentacin* acondicionamientos de se3ales* conectores* y alg+n controlador adicional' M/s pe.ue3as* m/s e,icientes energ#ticamente y con mayores posibilidades de EFS .ue un sistema tradicional'
Son utili,adas "u!has e!es para prototipar solu!iones. -ara produ!!i.n de po!as unidades no es rentable dise/ar hardware. Dise/ar en base a S0Cs resulta una op!i.n a tener en !uenta. Existen diferentes S0C seg1n las ne!esidades del siste"a e"bebido a reali,ar. 2rientadas a "ulti"edia3 rob.ti!a3 apli!a!iones ". iles.
;certi4o
Respuesta9
5T%F)inu89 Sistema operati o libre compuesto por el Nernel &)inu8( y herramientas del sistema 5T%' El Lernel es el componente del S'O' .ue nos abstrae del hard-are y nos ,acilita su uso' ;ctualmente es el sistema operati o de uso general m/s utili0ado en sistemas embebidos'
El Lernel )inu8
Originalmente no ,ue pensando como un sistema operati o embebido' Escrito originalmente para la ar.uitectura I;I6A* portado por primera e0 a procesadores Motorola' El proceso ,ue costoso* lo .ue implic un redise3o de la ar.uitectura para hacerlo ,/cilmente portable' Este cambio abri la puerta para ser portado a otras ar.uitecturas'
El Lernel )inu8
Soporta numerosas ar.uitecturas &6'='6(9 alpha* arm* arm@P* a r6A* blacN,in* c@8* cris* ,r * h=6BB* he8agon* ia@P* m6Ar* m@=N* microbla0e* mips* mn<B6BB* openrisc* parisc* po-erpc* s6?B* score* sh* sparc* tile* um* unicore6A* 8=@* 8tensa
To e8iste un Nernel de )inu8 especial para sistemas embebidos y otro para estaciones de traba4o' Es el mismo cdigo ,uente .ue se compila para ser idores* estaciones de traba4o o sistemas embebidos' ;l momento de compilar la imagen del Nernel* se incluye soporte +nicamente para el hard-are a utili0ar'
2istribuciones embebidas
(1/2)
Meego9 http9FFmeego'comF
;punta a celulares* reproductores de multimedia* netbooNs* T s* I7I' Soportado por Intel y ToNia &m/s o menos(' 2istribucin de 5oogle para tel#,onos y tablet 1Cs' Sal o el Lernel* un userspace muy di,erente de otras distribuciones' Muy e8itosa* muchas aplicaciones disponibles & arias propietarias('
;ndroid9 http9FF---'android'comF
2istribuciones embebidas
(2/2)
UngstrVm9 http9FF---'angstromIdistribution'orgF
;punta a 12;s y MI2s &Siemens Simpad'''( Binarios para arm little endian'
%buntu ;RM
Re.uerimientos mnimos
C1% de 6A bits P MB R;M C1%Ws sin MM% son tambi#n soportados mediante el proyecto uClinu8'
2ispositi o de hard-are' En los sistemas operati os modernos cada proceso dispone de un espacio de direcciones lgicas o irtuales' En momento de e4ecucin la direccin irtual es trans,ormada en una direccin ,sica por la Memory Management Unit &MM%(' 1ermite implementar proteccin de memoria* memoria irtual'
Reutili0acin de bibliotecas de so,t-are e8istente' Tos permite centrarnos en dar alor agregado a una solucin y no en Drein entar la ruedaE' Calidad' %so de lengua4es de programacin de mayor ni el de abstraccin &Ra a* 1ython* )ua(' 1osibilidad de prototipar y debugear en un 1C muchos de los componentes del sistema' Brinda portabilidad de mi sistema a otras ar.uitecturas &independencia tecnolgica('
E8tensiones para mane4o de tiempo real' Mantenibilidad 1uedo auditar el cdigo ,uente' )ibertad de modi,icar el cdigo ,uente' Menor costo en licencias' ;cceso m/s sencillo al so,t-are y a las herramientas' 1ermite hacer ,rente a los re.uerimientos cada e0 m/s comple4os impuestos por el mercado' :erramientas de desarrollo independientes de la plata,orma
;lgunos dri ers propietarios solo e8isten para ersiones ie4as del Nernel y el ,abricante no publica sus ,uentes' ;lgunos Sistemas Embebidos basados en 5T%F)inu8 toman un ,orN del Nernel ainilla y nunca integran sus cambios' Muchas eces no tengo opcin de .ue distribucin usar' 1uede ocurrir .ue ni si.uiera e8ista una distribucin &usar Buildroot* OpenEmbedded('
RTOS9 S'O con la habilidad de brindar el ni el re.uerido de ser icio en un perodo de tiempo acotado &1OSIS <BB6'<b( Con el tiempo )inu8 ,ue incorporando parches RT* como los timers de alta resolucin' Es raro tener restricciones de tiempo blandas .ue un Lernel 7anilla no pueda pro eer &)atencia de peor caso <ms(' Si se necesita menor latencia usar parches para el Lernel9 1REEM1TXRT O,rece una latencia m/8ima de <BBKs
Cada e0 se dispone de hard-are con mayores prestaciones* .ue incluso permite e4ecutar un S'O de propsito general con RT y seguir siendo econmicamente iable' El mercado le e8ige m/s re.uerimientos a los dispositi os embebidos'
:oy en da los S'E' tienen m/s puntos en com+n con los sistemas de propsito general .ue en el pasado' :erramientas de desarrollo de mayor ni el de abstraccin' Reutili0acin de so,t-are y peri,#ricos utili0ados en sistemas de propsito general Es necesario contar con e.uipos interdisciplinarios'
Componentes de So,t-are
CrossItoolchain9 Compilador .ue corre en la m/.uina de desarrollo* pero genera cdigo para el sistema embebido' Bootloader9 Iniciado por el hard-are' Responsable de la iniciali0acin b/sica* cargar y e4ecutar el Nernel' Lernel )inu89 Contiene el mane4o de los procesos* memoria* red* dri ers y pro ee ser icios para las aplicaciones de usuario' Biblioteca de C9 Inter,a0 entre el Lernel y las aplicaciones &glibc* KClibc(' Bibliotecas y aplicaciones9 reutili0adas o desarrolladas por nosotros'
Toolchain
)as herramientas usuales de desarrollo disponibles en una estacin de traba4o 5T%F)inu8 es un toolchain nativo Este toolchain e4ecuta en la estacin de traba4o y genera codigo para esta estacin de traba4o* generalmente 8=@
Toolchain
En sistemas embebidos* es usualmente imposible o poco interesante utili0ar un toolchain nati o' El target es muy restricti o en terminos de almacenamiento o memoria' El target es muy lento comparado con la estacin de traba4o' 1uede no ser desado de instalar todas las herramientas de desarrollo en el target' 1or lo tanto cross-compiling toolchains son generalmente utili0ados' E4ecutan en el -orNstation pero generan cdigo para el target'
Toolchain
C.digo %uente Cross$!o"piling tool!hain x45
tool!hain nati o
E7uipo de !o"pila!i.n
E7uipo a e8e!utar
Bibliogra,a
Inyeccin de de,ectos y su aplicacin en dispositi os %SB* http9FF---'sase'com'arFAB<<F,ilesFAB<BF<<F S;SEAB<<IInyeccionXde,ectosXyXsuXaplicacio nXenX%SB'pd, http9FF---'linu8,orde ices'comF http9FF,reeIelectrons'comF http9FFNernel'org Building Embedded )inu8 Systems Embedded )inu8 System 2esign and 2e elopment &;uerbach* ABB@(
1reguntas