TODOPIC
Otros Microcontroladores / Dispositivos programables => Lógica Programable => Mensaje iniciado por: juaperser1 en 05 de Marzo de 2015, 14:57:46
-
BUENAS,
soy novatillo casi total en temas de FPGAs, pero las necesitare para dentro de un tiempo y me voy informando, tengo una pregunta quiza muy tonta, pero pensad que yo soy de micros xd
He visto que existen FPGAs de las que te dicen que su frecuencia de funcionamiento es 100MHz o 200 MHz y otras que no te indican la frecuencia de funcionamiento por ningun lado. ¿que significa esto exactamente? por que unas tienen una frecuencia máxima y las otras que son dioses sin limites? jaja
segunda pregunta de tonto, si es por ejemplo una FPGA de 100 MHz de frecuencia de funcionamiento máximo, y por ejemplo la quiero usar de cooprocesador matematico o para filtros adaptativos, tener un microcontrolador o procesador para lo demas que funcione a 300 Mhz estaria limitado por esos 100 no?
un saludo y gracias por la atencion
-
Con respecto a la primera pregunta no se..
sobre la segunda pienso que depende lo que haga la FPGA , ya que si hay mucho procesamiento "paralelo" ya que no es secuencial como el microprocesador entonces esos 100Mhz te limitan unicamente a la comunicacion entre esos 2. Tabmien hay que ver cual es el maximo que soporta el micro de 300Mhz, me refiero a sus perfericos (Ejemplo un QSPI que funcione a 50 MHz como maximo ).
-
aja ok, o sea esa frecuencia no limita las operaciones matematicas pero si las comunicaciones o lecturas de memoria y esas cosas no? lo he entendido bien?
-
aja ok, o sea esa frecuencia no limita las operaciones matematicas pero si las comunicaciones o lecturas de memoria y esas cosas no? lo he entendido bien?
Repasate los conceptos de "sincrono" y "asincrono", ahí está la clave.
saludos!
-
Ok lo investigare pero lo k se me viene a la cabeza cuando hablo escucho síncrono y asíncrono son comunicaciones xd pero supongo k te refieres a que investigue sobre la fpga
-
Justo eso. En un micro todo depende de un reloj y se ejecuta de forma secuencial. En una fpga hay procesos concurrentes y otros que dependen de una señal de reloj. A su vez la máxima frecuencia con la que "latchear" depende de la distancia física del reloj de referencia a los LUTs (busca el concepto) y a los pines de salida. El paradigma es totalmente distinto.
Hay un montón de tutoriales en internet :)
-
Muy interesante del mundo de los FPGA, aunque extremadamente complejo, yo por ahí tengo un kit Spartan y varias placas de los chinos, que compré hace años. A lo máximo que llegué ya hace tiempo, fue a encender unos led y leer algunos pulsadores, en VHDL, un día de estos lo retomaré, aunque tengo tantos temas pendientes, que no doy abasto.
Desconozco a que frecuencia máxima puede trabajar un FPGA, pero según San Google a muchísimo menos que un ASIC (que desilusión):
" All of these resources used in an FPGA to make them very flexible slow things down. This is why you will never be able to clock an FPGA at speeds comparable to a dedicated chip. An ASIC design can reach speeds faster than 4GHz, while an FPGA is very fast if it's running at 450MHz. This is also why FPGAs consume considerably more power than their ASIC counterparts. An FPGA will require an order of magnitude more power to run than an 8bit microcontroller, like an AVR. However, they still have the huge advantage of being low-cost for small runs (or hobbyists) and re-configurable virtually unlimited times. "
-
OK creo que lo he entendido, los LUTs es la lista de salidas para combinación de entradas, es como si fuera guardando los resultados en un array. Las operaciones que hace una FPGA que son semejantes a las operaciones que haría un circuito logico por hardware las realizan los flip-flop y supongo que este es el proceso asincrono y paralelo, y la frecuencia que indica la FPGA es la frecuencia a la que refresca los LUTs o sea las salidas. ¿Es así? pero si es asi, por que las FPGA de gama alta no te da la frecuencia de funcionamiento?
-
Los LUTs no dependen del reloj: son cajas negras. Los flip flops son los que utilizan el reloj. Luego están los slices que son memorias.
http://zone.ni.com/reference/en-XX/help/371599G-01/lvfpgaconcepts/fpga_basic_chip_terms/
Lo de las fpgas caras no lo sé: mi bolsillo sólo da para spartan 6 :P.
-
haha muchas gracias, lo he entendido mal entonces. pff son carísimas el dia que utilice alguna esta claro que sera la spartan por que las demas pfff.
¿¿Es un mundo totalmente diferente a los micros y parece que mas caro, merece de verdad la pena como coprocesador matematico o para filtros? o seria mejor tener un buen DSP??
lo que si veo es una tendencia a mezclar micros con FPGAs y no FPGAS solas, en plan atmel o xilin que tienen sus versiones micro+FPGA
-
El rollo fpga+arm va mas por el tema de certificaciones y propiedad intelectual. Para algo genérico sin duda mejor un SoC normal.
-
En una fpga hay procesos concurrentes
Noooooooo esa palabra nooooo.. Desde la universidad que no leia esa palabra... me trajo mas que dolores de cabeza xD. Pero bueno algo creo que aprendi y ya me olvide de todo.
Lo maximo que hice fue un sumador y que lo muestre en unos diplays 7 segmentos. en VHDL. Deberia tener lso archivos guardados pero ni me acuerdo.
-
El rollo fpga+arm va mas por el tema de certificaciones y propiedad intelectual. Para algo genérico sin duda mejor un SoC normal.
Pero si lo k buscas es soc con procesamiento como el de un fpga, básicamente lo k hay son procesadores ARM con una FPGA integrada como los soc de xilinx no?
Un saludo
-
juaperser1: Sorry no entiendo la pregunta :(.
KILLERJC: yo no estudié electrónica como tal y ya me sonaba rara la palabra cuando empecé con fpgas :P
-
juaperser1: Sorry no entiendo la pregunta :(.
Perdona kiza yo no te entendi bien. Cuando dices k para una aplicacion generica es mejor un sos k un ARM+FPGA. ¿a que clase sos te refieres? Por k por ejemplo los que tiene xilinx son basicamente un procesador ARM + FPGA.
Un saludo
-
Me refiero a que un micro de freescale/texas (que podemos comprar los mortales) por no decir uno de qualcom (para grandes empresas) con mejores características vale 5 ó 10 veces menos. Lo que pasa es que los SoC+FPGA tienen justo eso, una fpga, donde puedes meter "un código" (mas bien un hardware) que es más facil de certificar y más dificil de copiar. Al mismo tiempo tienes un ARM al que fácilmente le pones un linux que te da acceso a miles de periféricos sin tocar una línea de software.
Saludos.
-
ok ok cuando has dicho SoC pensaba que te referias a esto:
http://www.xilinx.com/products/silicon-devices/soc/zynq-7000.html
-
No, más genéricamente a esto:
http://es.wikipedia.org/wiki/System_on_a_chip
-
He estado leyendo acerca de los SoC y para uno que nunca ha salido de los microcontoladores como yo, hay cosas que no le quedan demasiado claras por ejemplo.
tomando de ejemplo el enlace que me has pasado:
"System-on-a-chip o SoC (también referido como system-on-chip), describe la tendencia cada vez más frecuente de usar tecnologías de fabricación que integran todos o gran parte de los módulos componentes de un computador o cualquier otro sistema informático o electrónico en un único circuito integrado o chip."
esto tiene toda la pinta de referiste a un microcontrolador, con su memoria sus perifericos etc, pero mas abajo pone:
"La diferencia principal de un SoC con un microcontrolador tradicional no debe pasarse por alto, puesto que estos rara vez disponen de más de 100 Kilobytes de memoria RAM (de hecho, lo más frecuente es que las memorias -tanto la RAM como la flash- de un microcontrolador consten de unos pocos Kilobytes), y gran parte de estos son estructuras monochip"
-
Quizá los SoC son más parecidos a un PC convencional (gráficos, pcie, hdmi, etc.) pero con los microcontroladores de 200-300mhz (m4, m7, nuevos pic32) la diferencia parece cada vez menor.
-
a ok ok ahora lo entiendo, y claro los micros cada vez van para arriba llegara el momento en que se metan en otros campos como en este caso los SoC
saludos