viernes, 17 de febrero de 2012

Arquitectura de microcontroladores

En esta entrada hablare de como se compone la arquitectura de microcontroladores, antes de eso esta es una breve introducción sobre que son estos pequeños dispositivos. 


El microcontrolador es un dispositivo electronico que es puede realizar proceso logicos, estos son programados en lenguaje ensamblador y son introducidos a esto mediante un programador.


Existen algunas ventajas entre un microcontrolador y microprocesador como las siguientes:
Microprocesador: 
  • Un microprocesador requiere de una memoria externa para el alacenamiento de datos/ programas.
  • La ejecución de instrucciones requiere de movimiento en los datos de la memoria externa a la interna y vice versa.
  • Tienen una buena potencia para facilitar los calculos.
Microcontrolador:

  • Un microcontrolador requiere un chip de memoria para los perifericos que contiene.
  • El funcionamiento de un microcontrolador es de usos múltiples.
  • Reducción de la cantidad de espacio en la implementación de un diseño dado.
  • Reduce el costo de implementación.
  • Permite desarrollo de aplicaciones especificas de manera mas rápida y eficiente.
  • Los fabricantes dan mucho soporte sobre las aplicaciones más comunes.
  • Se adaptan mejor a aplicaciones especificas.

Arquitectura:
La arquitectura se puede difinir dependiendo del modo de operación del mismo,  por sus instrucciones y modo de ejecución.
Por instrucciones existen 2 grupos: 
CISC(Complex Instruction Set Computer)

  • Instrucciones especializadas
  • Se requieren un set de instrucciones amplio para dar soporte a una arquitectura.
  • Programas requieren menos código fuente.

RISC(Reduced  Instruction Set Computer): 

  • Set de instrucciones reducido
  • Instrucciones de carácter general
  • Duración homogénea de la ejecución de las instrucciones.
  • Se requiere mas codigo para describir una operación que con una arquitectura CISC.
Von Neuman
  • Ejecución secuencial de las instrucciones
  • Existe solo una unidad de búsqueda y una unidad de ejecución.
  • La instrucción siguiente se busca hasta que se ejecute la instrucción actual.

Segmentada

  • Divide la busqueda de las instrucciones de manera cuando se ejecute la instruccion actual ya se esta ejecutando la siguiente.
  • Multiplica la velocidad de ejecucion al doble que la Von Neman.

Harvard

  • Se conoce como arquitectura de ejecución paralela.
  • Divide los procesos
  • Bus de direcciones y de datos separados en la arquitectura. 




Podemos encontrar elementos comunes en los microcontroladores

  • ADC(convertidor Analogico Digital)
  • USART
  • RTC
  • Puertos entrada/salida paralelos
  • PWM
  • USB
Existen diferentes aplicaciones de los microcontroladores(µcc) donde cualquier problema en el cual se requiera un instrumento digital compacto que sea capaz de realizar funciones como las siguientes, es posible pensar en sistema basado en un µcc: 
  • secuenciamiento
  • codificación/decodificación
  •  monitoreo
  • procesamiento de señales
  • control retroalimentado 
  • temporización
  • cálculos aritméticos sencillos
  • comunicaciones
  • automatización
  • despliegue digital 
  • control on - off etc 
Los siguientes son ejemplos de en que mas podria aplicarse: 


Instrumentos Portátiles Compactos
Dispositivos Periféricos
Dispositivos autónomos (stand  alone)
Subfunciones de instrumentos:
Aplicaciones automotrices:
Radio paginador numérico (beeper)
Modems
Buffer para impresora.
Fotocopiadoras
Panel frontal de un osciloscopio
Control de encendido e inyección de combustible.
Nivelímetro digital
Plotters
Maquinas de escribir
Controlador de display de cristal
Sistemas de frenado anti-
derrapante.
-Identificador-probador de circuitos integrados.
Posicionadores
-Selector
Codificador-Decodificador para T. V.
-Controlador de aspersores para jardín.
-Analizador de espectros (módulos
 de expansión para IR y RF)
-comunicados vía Inter-face serie)
-Control dinámico de la suspensión.
-Sistemas de navegación.
-Alarmas automotrice


Por ultimo podremos encontrar diferentes fabricantes algunos mas comunes que otros de microcontroladores aqui algunos de ellos:

- Microchip: Familas de PIC´s (
- Arquitecturas RISC, Harvard
- Motorola: Familia 68XX(6100, 6800, 6809, 650x).
- Arquitecturas CISC, segmentada
- Intel: Familias 80XX(8008, 80186, 8035, 8080, 8086, z80, etc)
- Arquitecturas CISC, Von neuman
NEC
Referencias: 

Microcontrollers and Applications 
Tecnologia y Electronica
Tipos de Microcontroladores 

jueves, 9 de febrero de 2012

Circuito en Simulador Oregano

Oregano fue desarrollado en un principio por Richard Hult, quien trabajó hasta el año2002, luego fue tomado por Ricardo Markiewics y Andrés Barbará quienes lo mantienen en la actualidad. 

Oregano es una aplicacion que permite el diseño de circuitos, para luego servir de frontend para la simulacion de circuitos de corriente continua y corriente alterna. 
Puede realizar analisis de corriente continua y corriente alterna. Por elmomento sólo utiliza la medida de tensión para realizar el análisis.

Aqui les presento una pequeña simulación de un circuito con solo 3 resistencias una entrada de voltaje y dos fuentes conectados a tierra con este solo existen dos tipos de salidas que es positiva y negativa como se muestra en la imagen.


CIRCUITO


SIMULACIÓN



sábado, 4 de febrero de 2012

Sistemas Integrados

¿Qué son?

Como concepto encontramos que un Sistema Embebido o tambien es llamado sistema integrado puede ser definido como un sistema de control o sistema informático diseñado para realizar una tarea especifica y que cumple funciones de monitoreo.
En la práctica muchos sistemas que poseen una interfaz digital (relojes, micro-ondas, automóviles) utilizan sistemas embebidos. Algunos sistemas embebidos incluyen un sistema operativo, pero muchos son tan especializados que toda la lógica puede implementarse en un solo programa.


El sector de los sistemas integrados se ha convertido en unos de los más atractivos debido a su clara aparición de futuro en cualquier ámbito de la sociedad: comunicaciones móviles, tráfico y transporte (aéreo, autopistas), electromedicina, hogar inteligente, juguetes inteligentes, electrónica en el automóvil. 
En general, un sistema integrado:
  • Es un sistema diseñado para cumplir con su deber, total o parcialmente independiente de la intervención humana.
  • Está especialmente diseñado para realizar algunas tareas de la manera más eficiente.
  • Interactúa con los elementos físicos de nuestro entorno, a saber. controlar y accionar un motor, sensor de temperatura, etc. 




En los últimos años, el hardware tales como microprocesadores, microcontroladores, y los chips FPGA se han convertido en mucho lo más barato. La producción de un chip a medida para manejar una tarea específica o un conjunto de tareas cuesta mucho más tiempo y dinero. Muchos ordenadores integrados incluso vienen con amplias bibliotecas, de modo que "escribir su propio software" se convierte en una tarea muy trivial.
Desde un punto de vista de aplicación, hay una gran diferencia entre un ordenador y un sistema integrado o embebido.
  • Los sistemas integrados son a menudo obligados a proporcionar en tiempo real de respuesta. Un sistema de tiempo real se define como un sistema cuya corrección depende de la oportunidad de su respuesta. 

Podriamos encontrar algunos ejemplos de tales sistemas como sistemas de control de vuelo de un sistema de sensores de aeronaves, en los reactores nucleares y plantas de energía. Para estos sistemas, un retraso en la respuesta es un error fatal. Una versión más relajada de Sistemas de Tiempo Real , es en la que la respuesta oportuna, con pequeños retrasos es aceptable. 
Otro ejemplo de tal sistema sería el sistema de pantalla de Programación en las plataformas ferroviarias. 

Complejidad
Hoy día, un sistema integrado puede constar de cientos de miles de líneas de código de programación. Cada vez más frecuentemente, los productos incluyen sistemas integrados
complejos, esto implica la capacidad para integrar mejores prácticas y el desarrollo de plataformas de productos.
Conectividad
Actualmente, los sistemas integrados suelen formar parte de redes distribuidas refinadas, esto es, se integran numerosos dispositivos complejos por medio de buses de campo.
Sistemas integrados interconectados
Otro importante aspecto de esta evolución son los sistemas integrados distribuidos, llamados sistemas integrados interconectados para resaltar la infraestructura de interconexión y el protocolo de comunicación.


Referencia.
Embedded Systems
Sistemas Integrados con FPGA's y Linux