FPGA vs Microcontrolador, ¿cual es mejor?

Hola, buen dia, te recomiendo que te des una vuelta por la pagina de Xilinx o de Altera, ya que ahi existe información de como armar un Jtag para programar dichos dispositivos, en caso que tu diseño no sea tan elaborado puede implementarlo en un CPLD, el cual tambien puede ser programado con un Jtag, la segunda posibilidad es que compres un jtag, el cual tambien los fabricantes ya venden, debes considerar que si vas a armar un diseño con un FPGA se requieren memorias externas para almecenar tu programa, de lo contrario tienes que cargar el programa cada vez que alimentes al FPGA, otra cosa, te recomiendo que estudies los nuevos pic de microchip, ya que aunque el PIC16F84 es considerado como un clasico, es un microcontrolador obsoleto, te recomiendo el PIC16F88, PIC16F887 y el PIC16F1937, ya que aunque no lo creas cuestan lo mismo que el 16F84 y poseen muchos dispositivos perifericos muy interesantes.
 
Puedes aprender al 100% del 16F84A con este libro www.pic16f84a.org

228_microcontrolador_pic16f84_alfa.jpg
 
Gracias por contestar¡¡¡

Pues si, meta, ese libro es el que estoy leyendo para mis inicios, está muy y parte de lo basico pero viendo las caracteristicas del PIC16F88 como dijo neec, por 1 euro mas, tiene muchas mas cosas que neceisto como a/d y pwr. Entonces, es que yo ya, si salgo de los entrenadores de los kit spartan 3, me pierdo. Es realizarme un grabador cpld que se programará igual que una fpga,no? por vhdl¡¡ He estado mirando y he encontrado esto:

http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,798&Prod=CMOD

Si no lo he entendido bien, es un cpld de xilinx que se programa igual que una fpga, por jtag y con el ise, a traves del vhdl?

Y otra pregunta, los cpld, se algo, lo que he estudiado en la uni, pero poco, la version antigua de una fpga, pero en cuanto yo programe, solamente me tendria fijar en cuando a la capacidad,no?
 
Precisamente es el PIC-16F88 que uso, estoy cambiando del 16F84A los ejemplos del libro al 16F88, está mejor. En mi caso, el precio del 16F84A es el mismo que el 16F88.
 
CPLD = sistema viejo de lógica programable con poca capacidad y 'granularidad' elevada.
FPGA = sistema más moderno de lógica programable con mucha capacidad y 'granularidad' fina.

FPGA != uC.

Si uno 'programa' un 'core' de uC en una FPGA tiene un rendimiento pobre en cuanto a prestaciones/consumo de recursos, aunque la velocidad de reloj sea mucho más elevada. Sin embargo, a la hora de realizar cálculos, las FPGA tienen mayor potencia de cálculo a un precio y consumo menor que cualquier DSP/GPU/CPU, pero generalmente a base de paralelizar y ampliar el bus. No en vano, las máquinas más avanzadas de procesado matemático que existen hoy en día se basan en FPGAs y no en DSPs.

Además, en las FPGA, se puede cambiar el diseño del sistema de cálculo para adaptarlo y optimizarlo para el proceso a ejecutar en cada momento, es decir, que ofrecen una flexibilidad que muchos DSP ya quisieran.

Lo malo es que primero hay que 'programar' el HW del circuito (en VHDL, Verilog, o similar, incluso en C), y luego hay que programar el SW que correrá en ese HW.

Personalmente estoy trabajando en un par de proyectos en los que pocos uC podrían hacer lo que hace una FPGA. Por ejemplo, tener 100 contadores de 16bits en un solo integrado (y sólo usa un 10% de los recursos disponibles).
 
Siii, en eso estoy de acuerdo, una fpga, cuando te acostumbras es la leche, pero creo, que para proyectos de poca embergadura, con un pic sobra. Por eso estoy aprendiendo¡¡¡ Una cosa Meta, en que tiendas lo compras, online,no?? es que estoy buscando por internet y encontrado algunas pero seguro que hay otras¡¡
 
más bien los deficientes son algunos de ustedes (sobretodo meta) que no estan preparados para la tecnología...
Aca con faltas de respeto NO, Meta al igual que todos aca en el foro estamos para compartir lo poco o lo mucho que sabemos asi que sin agresiones por favor. Existen formas mas educadas de decir las cosas.

Y en cuanto a la discusion eso depende de lo que uno esta desarrollando no les parece?

Personalmente estoy trabajando en un par de proyectos en los que pocos uC podrían hacer lo que hace una FPGA. Por ejemplo, tener 100 contadores de 16bits en un solo integrado (y sólo usa un 10% de los recursos disponibles).
100 contadores de 16b ? que estas haciendo? :)
 
Última edición:
Que tal foro aprovechando el foro y el tema me doy a la tarea de ver si alguno de unstedes tiene la oportunidad de ver esta encuesta acerca de los fpgas, comparandolos con otros sistemas digitales, gracias por su tiempo, :D

Nombre.____________________________________________ Fecha___ /___ /___ Carrera_________________________ Ocupación __________________ Semestre________

1. ¿Cómo considera la velocidad de procesamiento en un FPGA?
a)Excelente b)Muy buena c)Buena d)Regular e)Mala

2. ¿Crees que los sistemas digitales basados en FPGA son más rápidos que los basados en compuertas lógicas?
a)Totalmente de acuerdo b)De acuerdo c)En ocasiones d)Desacuerdo e)Totalmente en desacuerdo

3. ¿Crees que los sistemas digitales basados en FPGA son más rápidos que los basados en microcontroladores?
a)Totalmente de acuerdo b)De acuerdo c)En ocasiones d)Desacuerdo e)Totalmente en desacuerdo

4. ¿De qué tamaño te parece optimo un procesador básico?
a)20 cm2 o más b)Alrededor de 10 cm2 c)Alrededor de 5 cm2
d) Alrededor de 1 cm2 e)Menos de 1cm2

5. ¿Qué dispositivo le encuentras el tamaño más óptimo?
a)Microprocesador b)Compuertas lógicas c)FPGA d)CPLD e)GAL

6. ¿Qué dispositivo programable satisface mejor tu necesidad de procesamiento digital?
a)Microprocesador b)Microcontrolador c)FPGA d)CPLD e)GAL

7. ¿Qué lenguaje de programación te es más útil?
a)VHDL b)Verilog c)c d)Ensamblador e)CUPL

8. ¿Qué dispositivo te parece más caro de acuerdo a lo que este es capaz de ofrecerte?
a)Microprocesador b)Compuertas lógicas c)FPGA d)CPLD e)GAL

9. ¿Te parece justo el precio de los sistemas digitales actuales?
a)Totalmente de acuerdo b)De acuerdo c)Depende del producto
d)Desacuerdo e)Totalmente en desacuerdo

10 . ¿Qué dispositivo te parece que consume más energía de acuerdo a lo que este es capaz de ofrecerte?
a)Microprocesador b)Compuertas lógicas c)FPGA d)CPLD e)GAL

11. ¿Qué dispositivo utilizarías en un sistema de procesamiento de datos digital y por qué?


12. ¿Qué te agrada mas, FPGA o los microcontroladores? ¿Por qué? ¿Qué ventajas les ves sobre el otro?
 
¿No hiciste esa encuesta hace tiempo?

Que tal foro aprovechando el foro y el tema me doy a la tarea de ver si alguno de unstedes tiene la oportunidad de ver esta encuesta acerca de los fpgas, comparandolos con otros sistemas digitales, gracias por su tiempo, :D

Nombre.__El mio________________________________ Fecha_Hoy
Carrera__La maratón_________________ Ocupación __Las menos posibles___ Semestre__Yo que se___

1. ¿Cómo considera la velocidad de procesamiento en un FPGA?
a)Excelente b)Muy buena c)Buena d)Regular e)Mala f)instantánea por definición

2. ¿Crees que los sistemas digitales basados en FPGA son más rápidos que los basados en compuertas lógicas?
a)Totalmente de acuerdo b)De acuerdo c)En ocasiones d)Desacuerdo e)Totalmente en desacuerdo f) De acuerdo con lo que digan los datasheet, en la electrónica no caben las "creencias"

3. ¿Crees que los sistemas digitales basados en FPGA son más rápidos que los basados en microcontroladores?
a)Totalmente de acuerdo b)De acuerdo c)En ocasiones d)Desacuerdo e)Totalmente en desacuerdo f) No lo creo, lo se

4. ¿De qué tamaño te parece optimo un procesador básico?
a)20 cm2 o más b)Alrededor de 10 cm2 c)Alrededor de 5 cm2
d) Alrededor de 1 cm2 e)Menos de 1cm2 f)Intrascendente, me interesan los MIPs y MFLOPs

5. ¿Qué dispositivo le encuentras el tamaño óptimo?
a)Microprocesador b)Compuertas lógicas c)FPGA dependiendo de la aplicación y del precio d)CPLD e)GAL

6. ¿Qué dispositivo programable satisface mejor tu necesidad de procesamiento digital?
a)Microprocesador b)Microcontrolador c)FPGA d)CPLD e)GAL f)Dependerá de la aplicación, ¿Como voy a contestar si no se lo que estoy haciendo?

7. ¿Qué lenguaje de programación te es más útil?
a)VHDL b)Verilog c)c d)Ensamblador e)CUPL f)Depende del dispositivo; no se puede programar un microcontrolador en vhdl

8. ¿Qué dispositivo te parece más caro de acuerdo a lo que este es capaz de ofrecerte?
a)Microprocesador b)Compuertas lógicas c)FPGA d)CPLD e)GAL f)En cada aplicación uno

9. ¿Te parece justo el precio de los sistemas digitales actuales?
a)Totalmente de acuerdo b)De acuerdo c)Depende del producto... y del proveedor
d)Desacuerdo e)Totalmente en desacuerdo

10 . ¿Qué dispositivo te parece que consume más energía de acuerdo a lo que este es capaz de ofrecerte?
a)Microprocesador b)Compuertas lógicas c)FPGA d)CPLD e)GAL f) No me parece nada, leo el datasheet y decido

11. ¿Qué dispositivo utilizarías en un sistema de procesamiento de datos digital y por qué? Depende del sistema, de lo que procese y de a que este conectado. Porque esta encuesta no para de comparar churras con merinas y son cosas diferentes aunque el ámbito de aplicación se pueda solapar.


12. ¿Qué te agrada mas, FPGA o los microcontroladores? ¿Por qué? ¿Qué ventajas les ves sobre el otro?En principio he usado mas microcontroladores, pero dependerá de la aplicación. Ver pregunta 11

Estoy de acuerdo con el que preguntaba "¿Que es mejor, un condensador o una resistencia?" son cosas diferentes aunque ciertas aplicaciones se puedan resolver con los dos componentes.
 
Última edición:
Si scooter era parecida, pero le cambie el enfoque a las preguntas, es que ocupo evaluar lo que los demas opinan acerca de los fpgas dentro de mi investigacion que es de los fpgas :LOL:, pero igual gracias por responder.
 
Un error comun en ingenieria es querer ajustar el problema a la solucion, cuando de hecho es todo lo contrario, ya que debemos ajustar nuestra solucion a un problema, la encuesta parece un poco tendenciosa en algunas preguntas, en lo particular yo concuerdo con los comentarios enteriores ya que en la mayoria de los casos depende de la aplicacion y el dispositivo a utilizar, actualmente existen kits de desarrollo muy economicos tanto para FPGA como para microcontroladores, lo unico que nos queda como ingenieros es buscar la solucion adecuada.
 
A largo plazo las fpgas ganarán terreno, pienso yo, de igual modo que nadie hace un diseño "simplificado a puertas nand" hoy en día, tampoco lo hace si ocupa 10 circuitos integrados, pone un microcontrolador y conforme se hagan populares, probablemente ponga una fpga.
 
Bueno en lo que seria mi concepto es que con una FPGA podes obtener un microcontrolador,
las ventajas que podemos tener con una fpga es que procesos como los de una suma por ejemplo
se pueden hacer en un solo ciclo de reloj mientras en un procesador tardaria n cantidad de ciclos.

se dificulta al comienzo la descripción del hardware para los que no están familiarizados con el tema, pero si sabes si tienes conocimientos de lógica matemática les aseguro que les quedara gustando, ademas que ay herramientas en el lenguaje vhdl que se te hacen familiares con el lenguaje c..

y como lo han dicho las usan en la múltiples facetas, como en el tratamiento de imágenes, filtros y n cantidad de cosas que se puedan imaginar.
 
Quiero incursionar en las FPGA pero los tuturiales o las guias que se encuentran son muy pocas y las que se encuentran vienen en ingles.
En la universidad que estudio hay muy buenos proyectos con fpga (procesamiento digital de sonido y de video), me tocaria averiguar como es que lo hacen para aprender y compartir. Cada vez me emocionan mas las FPGA´s¡¡
SAlu2¡¡
 
Hola, yo llevo poco tiempo trabajando con fpga's y se los recomiendo para los que quieran utilizar la electronica digital a su maxima expresion. Con los lenguajes de descripcion de hardware se puede realizar cualquier sistema ya sea VHDL o Verilog.
Y la ventaja que he notado, es que puedes personalizar tu unidad de procesamiento. Si requieres un microprocesador solo lo montas agregando los ip cores o modulos que necesites(usart,pwm usb, ethernet,contadores,memorias,IIC,Spi, etc. o crear tus modulos y agregarlos a tu CPU. Por ejemplo yo les recomiendo Xilinx , con una tarjeta spartan 3, pueden programarlo en Vhdl -verilog o descargarle un soft core Micoblaze, que es un microprocesador risc de 32bits y el picoblaze de 8bits y programarlas en C con el SDK de xilinx. Puedes combinar HDL y C.

Hola mi pregunta es como usar los ip cores, por que no encuentro mucha info al respecto, y claro hay por ahi y demás sobre todo de uC, pero si necesito hacer más bloques ip cores y que todos se comuniquen entre ellos?? no se quizá haya algun enlace por ahi ke conozcan por ke hoy e estao toa la santa mañana en la biblio de la uni y na de na :confused:, y además para programar el uC una vez lo tengamos implementado, sino es con el SDK ke mencionas no hay otra manera??

espero me echen una mano, saludos y graciassss
 
yo estuve con microcontroladores buen tiempo y ya basta , son practicos pero ahi no acaba la cosa si quieres aprender solo lo que ya sabe mas de 1 millon de gente en internet , en mi universidad no enseñan fpga ni enseñaran pero ya me compre el mio , no tenia el dinero para comprarlo (500 dolares) pero tuve que darle duro cachueleandome con proyectos de pics ,capaz ahi me sirvieron mas los pics, asta un punto veo innceseario los fpga ya que los pic son casi completos (ethernet usbhost pwm i2c uart adcs)pero aun asi lo compre , uno no se vuelve mediocre si no usa los fpga pero los que lo usan dan la diferencia . ahhh los fpgas no son caros(9 -12 dolares)(obvio aprendamos como soldarlos no ).
Saludossss desde Arequipa Peru


uno bueno es esta nanoboard 3000 con pantalla color tactil host para 3 usb , acepta camara usb,teclado mouse , 2 sd card, ampliable para usar con xbees , host para redes de internet ,eetc
 
Hola:

La cantidad de microcontroladores que hay, ya no saben que escoger las grandes empresas. Lo más graciasoso que ya están sacando microcontroladores de 4 núcleos, 8 y en el futuro muchos más. Parece estar de moda los múltiples núcleos hasta en los móviles, así no duran las baterías.


Saludo.
 
Atrás
Arriba