Sei sulla pagina 1di 5

Microcontroladores y FPGA 1

Hector Ivan Gutierrez Nina


Comparación entreTECSUP-AREQUIPA
Microcontroladores y FPGA

El presente documento nos mostrara las caracteristicas entre


los dos dispositivos a comparar y estos son, los
microcontroladores y los FPGA (Field Programmable Gate
Array). Asi mismo se realize este documento teniendo en
cuenta su arquitectura, modo de trabajo, lenguajes de programación,
fabricantes, nichos de utilización y estado del arte de los componentes.

I. INTRODUCCION

L a tecnología FPGA permite realizar diseños a medida, de


bajo coste de desarrollo, incluso para la producción de
pocas unidades. Estas características la hacen muy interesante B.
Imagen 1: FPGA Stratix IV.ALTERA (altera, 2014)
Microcontroladores
para realizar prototipado rápido. Especialmente tiene un gran Es un circuito integrado que contiene muchas de las mismas
interés dentro del campo docente. En el caso de la tarjeta JPS, cualidades que una computadora de escritorio, tales como la
el estudiante puede definir su propio microcontrolador CPU, la memoria, etc., pero no incluye ningún dispositivo de
(arquitectura y juego de instrucciones) específicamente “comunicación con humanos”, como monitor, teclados o
orientado a aplicaciones de Robótica. En unas pocas semanas mouse.
puede tener su prototipo funcionando e interactuando con los Son diseñados para aplicación de control de máquinas, más
motores, sensores, etc. Adicionalmente, puede utilizar la JPS que para interactuar con humanos.
para construir periféricos complejos como medidores de
distancia por ultrasonido, conversores serie paralelo, unidades
de PWM, bloques de transmisión de datos, etc. Sobre FPGAs,
la mayoría de estas aplicaciones funcionan cerca un orden de
magnitud más rápido que en un microcontrolador.

Los microcontroladores están basados en una arquitectura


CPU y ejecutan las instrucciones de una manera secuencial.
En contra parte, las FPGAs son dispositivos de lógica
programable y el algoritmo se ejecuta de una manera paralela.
Imagen 2: Microcontrolador
II. DEFINICION
. III. ARQUITECTURA
A continuacion se detallara sobre cada element a comparar. A continuacion se detallara la arquitectura de cada
A. FPGA elemento.
El término FPGA (Field Programmable Gate Array) hace A. FPGA
referencia a dispositivos lógicos programables de propósito En la actualidad las FPGAs está implantada en muchos
general. Como su nombre lo dice se basa en un arreglo de sectores de la industria, tales como procesamiento digital de
bloques compuertas y su funcionamiento se basa en la señales, sistemas militares, prototipado de la funcionalidad de
posibilidad de configurar la interconexión entre dichos otros dispositivos electrónicos (por ejemplo un ASIC), etc.
bloques, para de esta manera poder describir el
comportamiento de prácticamente cualquier circuito digital. Básicamente, una FPGA consiste en:

Una matriz de bloques de lógica configurables (CLB): bloques


lógicos cuyos parámetros se pueden modificar de forma que
presente diferentes funcionalidades. Cada CLB consiste, de
forma genérica, en varias tablas de LUTs (look-up tables, o
tablas de consulta) cuyas salidas están multiplexadas y unos
parámetros de configuración de dicho CLB. El diseño de un
CLB varía de un fabricante a otro. En la figura puede verse un
CLB de una XC4000 de Xilinx:


Microcontroladores y FPGA 2

Imagen 4: Estructura de una microcomputadora

Imagen 3: Estructura de un FPGA IV. MODO DE TRABAJO

A. FPGA
Una matriz de rutado, encargada de conectar los CLBs entre
Programar un procesador de propósito general. La tarea del
ellos, y a su vez éstos con las celdas de entrada y salida.
programador es definir la función lógica que realizará cada
Celdas de entrada y salida (IOB): su misión es comunicar la
uno de los bloques lógicos de la FPGA e interconectarlos. Para
lógica interna de la FPGA con el exterior.
ello debe utilizar alguno de los entornos de desarrollo
especializados en el diseño de sistemas sobre FPGA. Si se
trata de un diseño sencillo puede hacerse con un esquemático,
No sólo los bloques de lógica son configurables, sino que
si no, habrá que utilizar un lenguaje de programación especial
tanto la matriz de rutado como las celdas de entrada y salida
HDL (Hardware Description Language) como VHDL o
son programables, otorgándole a las FPGAs de una gran
Verilog.
flexibilidad a la hora de ajustarse a las especificaciones de
cada diseño. (generatecnologias, 2014)
Además, en los últimos años han aparecido lenguajes para
diseñar sistemas en FPGA de un nivel mucho más alto, por lo
B. Microcontroladores que un diseñador poco experimentado tendrá mucho más fácil
su trabajo. Con lenguajes como SystemC o HandelC, pasar de
Aunque inicialmente todos los microcontroladores adoptaron la implementación software en C de una aplicación a su diseño
la arquitectura clásica de von Neumann, en el momento sobre una FPGA es mucho más rápido y sencillo.
presente se impone la arquitectura Harvard. B. Microcontroladores
La arquitectura de von Neumann se caracteriza por disponer
La idea principal era de expresar las formas lógicas por medio
de una sola memoria principal donde se almacenan datos e
de las funciones algebraicas. Tal idea pronto se transformó en
instrucciones de forma indistinta. A dicha memoria se accede a
un producto práctico que se convirtió más tarde en lo que hoy
través de un sistema de buses único (direcciones, datos y
en día conocemos como circuitos lógicos Y (AND), O (OR) o
control) mientras que la arquitectura Harvard dispone de dos
NO (NOT). El principio de su funcionamiento es conocido
memorias independientes, una que contiene sólo instrucciones
como algebra de Boole.
y otra sólo datos. Ambas disponen de sus respectivos sistemas
de buses de acceso y es posible realizar operaciones de acceso
V. LENGUAJES DE PROGRAMACION
(lectura o escritura) simultáneamente en ambas memorias.
* Ver Imagen N°2
Algunas arquitecturas de microcontrolador están disponibles A. FPGA
por tal cantidad de vendedores y en tantas variedades, que
podrían tener, con total corrección, su propia categoría. Entre La tarea del programador es definir la función lógica que
ellos encontramos, principalmente, las variantes de 8051 y realizará cada uno de los CLB, seleccionar el modo de trabajo
Z80. de cada IOB e interconectarlos. (programacion1abundiz.,
2014)

El diseñador cuenta con la ayuda de entornos de desarrollo


especializados en el diseño de sistemas a implementarse en un
FPGA. Un diseño puede ser capturado ya sea como
esquemático, o haciendo uso de un lenguaje de programación
especial. Estos lenguajes de programación especiales son
conocidos como HDL o Hardware Description Language
(lenguajes de descripción de hardware). Los HDLs más
utilizados son:
Microcontroladores y FPGA 3

 VHDL  (10/100/1000)MBits
 Verilog  Multiplicación/División hardware en coma flotante
 ABEL  Debug vía conexión JTAG; 2 hardware breakpoints
En un intento de reducir la complejidad y el tiempo de y 2 data triggers
desarrollo en fases de prototipaje rápido, y para validar un  Entornos de diseño:
diseño en HDL, existen varias propuestas y niveles de  Quartus II
abstracción del diseño. Entre otras, National Instruments  Nios II ID
LabVIEW FPGA propone un acercamiento de programación
gráfica de alto nivel.
B. Microcontroladores
B. Microcontroladores
o El voltaje externo (I/O) que necesita (generalmente 3,3
V);
Hay muchos lenguajes de programación para los o El voltaje interno (core) que necesita (será menor o
microprocesadores, pero algunos de los más destacados son: igual que el de I/O)
o Su multiplicador (4x, 4,5x, 5x...) y su velocidad de bus
• Lenguajes Declarativos: son los más parecidos al castellano
(66, 100, 133... MHz).
o ingles en su potencia expresiva y funcionalidad están en el
o El control de un electrodoméstico o un dispositivo
nivel más alto respecto a los otros. Son: SAS, SPSS,
sencillo usa un procesador muy pequeño.(4 u 8 bit).
NATURAL, IMS.
o El control de un dispositivo más complejo (mp3 o mp4)
• Lenguajes de Alto Nivel: son los más utilizados como usa un procesador más complejo (32 o 64 bit) y de uno
lenguaje de programación. Permiten que los algoritmos se o más Códec de señal digital (audio y/o vídeo).
expresen en un nivel y estilo de escritura fácilmente legible y o Suelen ser dispositivos de baja potencia.
comprensible por otros programadores. Son: PASCAL, APL,
FORTRAN, COBOL, SNOBOL, LISP, PROLOG, C, ADA,
PL/I. VII. FABRICANTES

A. FPGA.
• Lenguajes Ensambladores y los Lenguajes Maquina: son
A principios del año 2007, el mercado de las FPGA se ha
dependientes de la maquina. Cada tipo de máquina, tal como
colocado en un estado donde hay dos productores de FPGA de
VAX de digital, tiene su propio lenguaje maquina distinto y su
propósito general que están a la cabeza del mismo, y un
lenguaje ensamblador asociado.
conjunto de otros competidores quienes se diferencian por
ofrecer dispositivos de capacidades únicas.
• Algunos otros son: BASIC, C++, ASSEMBLER
• Xilinx es uno de los dos grandes líderes en la fabricación de
FPGA.
VI. CARACTERISTICAS TECNICAS EN GENERAL
• Altera es el otro gran líder.
A. FPGA
 FPGA Altera Cyclone IV. • Lattice Semiconductor lanzó al mercado dispositivos FPGA
 280 pines I/O disponibles al usuario. con tecnología de 90nm. En adición, Lattice es un proveedor
 5 SPI. líder en tecnología no volátil, FPGA basadas en tecnología
 5 I2C Flash, con productos de 90nm y 130nm.
 5 Timers de 32 bits.
 2 UART. • Actel tiene FPGAs basados en tecnología Flash
 25.000 LE (Logic Elements), de los cuales reprogrammable. También ofrece FPGAs que incluyen
 20.000 LE disponibles para el usuario. mezcladores de señales basados en Flash.
 Memoria Flash 32MBytes.
• QuickLogic tiene productos basados en antifusibles
 Memoria DDR2-SDRAM, 200MHz,
(programables una sola vez).
 32MBytes.
 Alimentación a 12Vdc, DC/DC incluidos,
• Atmel es uno de los fabricantes cuyos productos son
 técnicas de “sequencing & soft-start”. reconfigurables (el Xilinx XC62xx fue uno de éstos, pero no
 Mecanización sin conectores. están siendo fabricados actualmente). Ellos se enfocaron en
 µP Nios II embebido de 32 bits con µCOS proveer microcontroladores AVR con FPGAs, todo en el
 RTOS (Real Time Operating System). mismo encapsulado.
 Web Server
 Server Socket • Achronix Semiconductor tienen en desarrollo FPGAs muy
 Triple Ethernet connection veloces
Microcontroladores y FPGA 4

VIII. APLICACIONES
• MathStar, Inc. ofrecen FPGA que ellos llaman FPOA
(Arreglo de objetos de matriz programable).
A. FPGA

Cualquier circuito de aplicación específica puede ser


implementado en una FPGA, siempre y cuando ésta disponga
de los recursos necesarios. Las aplicaciones donde más
comúnmente se utilizan las FPGA incluyen a los DSP, radio
Imagen 5:Marca Xilinx definido por software, sistemas aeroespaciales y de defensa,
prototipos de ASICs, sistemas de imágenes para medicina,
sistemas de visión para computadoras, reconocimiento de voz,
bioinformática, emulación de hardware de computadora, entre
otras. Cabe notar que su uso en otras áreas es cada vez mayor,
sobre todo en aquellas aplicaciones que requieren un alto
Imagen 6: Marca Altera.
grado de paralelismo.

B. Microcontroladores

• Atmel AVR Freescale (antes Motorola)


• Hitachi, Ltd
• Holtek
• Intel
• National Semiconductor
• Microchip
• Maxim (Dallas)
• NEC
• Parallax
• Texas Instruments
• Zilog
• Silabs
• Analog Device Imagen 8: FPGA
• Cirrus Logic
• Cygnal
• Freescale (Motorola) B. Microcontroladores
• Fujitsu
• Infineon •Instrumentos portátiles compactos:
• NS (NATIONAL SEMICONDUCTOR) Radio paginador numérico (beeper)
• Philips Planímetro electrónico
• Rabbit Semiconductor Nivelímetro digital
• Renesas Identificador-probador de circuitos integrados
• ST (SGS-THOMSON) Tacómetro digital (desarrollado en el Laboratorio de
• Ubicom (Scenix) Electrónica)
• Toshiba
•Dispositivos periféricos:
Modems
Buffer para impresoras
Plotters
Posicionadores

•Dispositivos autónomos (stand alone):


Fotocopiadoras y Máquinas de escribir
Selector, Codificador- decodificador de T.V.
Localizador de peces
Controlador de aspersores para riego de jardines
Teléfonos de tarjeta
Imagen 7: Marca Phillips
•Subfunciones de instrumentos:
Panel frontal de un osciloscopio
Microcontroladores y FPGA 5

Contador de microondas con interface HP-IB En consecuencia, los circuitos lógicos programables tienen un
Multímetro multiplexado gran campo de aplicación en la implementación de circuitos
Analizador de espectros (módulos de expansión para IR y RF lógicos de todo tipo.
comunicados vía Inter-face serie) Entre la amplia gama de PLDs tenemos a laa FPGAs, que son
utilizadas para diseños que manejan una mayor transferencia
•Aplicaciones automotrices: de datos y registros; además permiten implementar dentro de
Sistemas de frenado antiderrapante ellas memorias del tipo RAM, ROM, FIFO, etc, a través de
Control dinámico de la suspensión sus bloques de memoria.
Sistemas de navegación La elección de la familia de FPGA a utilizar dependerá de la
Alarmas automotrices cantidad de lógica combinacional (compuertas), la cantidad de
lógica secuencial (flip-flops) y por supuesto la cantidad de
•Otros: memoria a implementar. También un factor a tener en cuenta
Controladores de CRT son los tiempos de propagación internos, asimismo la cantidad
Teléfonos celulares de pines del dispositivo.
Cerraduras electrónicas
Control de displays
Secuenciamiento
Codificación/decodificación
Monitoreo y Adquisición de datos
Control retroalimentado
Temporización IX. REFERENCIAS
Cálculos aritméticos sencillos
[1] altera. (20 de 11 de 2014). http://www.altera.com.
Automatización
Obtenido de http://www.altera.com:
Despliegue digital
http://www.altera.com/products/devices/stratix-
Control on – off
fpgas/stratix-iv/stxiv-index.jsp
[2] galia. (s.f.). http://galia.fc.uaslp.mx. Obtenido de
(galia)
http://galia.fc.uaslp.mx:
http://galia.fc.uaslp.mx/~cantocar/microcontroladores
/SLIDES_8051_PDF/3_APLICA.PDF
[3] generatecnologias. (2014).
http://www.generatecnologias.es. Obtenido de
http://www.generatecnologias.es:
http://www.generatecnologias.es/ingenieria_fpga.htm
l
[4] programacion1abundiz. (2014).
http://programacion1abundiz.blogspot.com/.
Obtenido de
http://programacion1abundiz.blogspot.com/:
http://programacion1abundiz.blogspot.com/2009/09/l
enguaje-de-descripcion-de-hardware.html
Imagen 9: Automatizaciones
IV. CONCLUSIONES

La importancia de los dispositivos lógicos programables


radica en el hecho de que la mayoría de los equipos
electrónicos modernos incluyen en su diseño PLDs, por lo que
todo profesional relacionado con el mantenimiento o
fabricación de equipo electrónico deberá dominar dicha
metodología.
Los PLDs combinan muchos de los beneficios de la lógica
discreta, utilización de circuitos integrados comerciales TTL o
CMOS, con la gran ventaja de implementar circuitos a la
medida del cliente. Entre otras ventajas de esta tecnología son:
• Diseño sencillo
• Alto rendimiento
• Fiabilidad
• Ahorro en costo
• Reprogramación
• Seguridad

Potrebbero piacerti anche