Curso para iniciarse con FPGAs

Gracias por su respuesta ... Pero entonces cada proyecto realizado en el kit de altera me costara uno buenos dolares la pregunta es no venden solo el chip principal solamente par realizarle su placa
 
Sí que puedes comprar las FPGA por separado, pero tienes que tener cuidado porque no sólo es la FPGA sino toda la circuitería asociada (flash de configuración, condensadores de desacoplo para la alimentación, conector de programación, etc.). Por otro lado hacerte un PCB para una FPGA es complicado, es difícil que te quepa en sólo 2 caras por lo que ya hablamos de PCB multicapa, que tendrás que mandar a fabricar a algún lado... Por otro lado si compras una FPGA en encapsulado BGA, a ver cómo lo sueldas... -> Tienes que enviarlo a soldar a algún lado que tengan un horno para soldadura de BGA. No creas que diseñar con FPGA's es barato.

No es tan sencillo hacer un circuito con una FPGA, tiene bastante trabajo de diseño detrás. Tú tienes que ver si te compensa las horas de diseño y precios de los componentes.

Lo bueno del kit y de las FPGA es que son reutilizables, o sea puedes tener varios diseños y cuando vayas a usar uno pues le programas con lo que deseas. Lo malo es precisamente esto, que tienes que reprogramarla cada vez que cambies de diseño.

Para proyectos de aficionado, una tarjeta de evaluación y basta ya, que si no te dejas mucho dinero. No es como usar un PIC, que por poco dinero tienes un circuito.

Saludos
 
Yo no termino de entender ... :cabezon:

Siendo tan conveniente esta tecnología, tan rápida, tan pequeña, tan flexible, en fin ...
No sería más conveniente para las fábricas de FPGA que hubiera disponibles placas adaptadoras para estos integrados ?
Algo pequeño, con todas las capas internas necesarias, y con todo lo mínimo indispensable para conectar y arrancar ?
No tan sobrecargado como las placas de desarrollo, sino lo básico, para que resulte sencillo aplicarlas a diseños propios.

Tal vez sea una decisión de marketing, para que las soluciones resulten selectivas del usuario, y más o menos caras, de modo que sirva para ir financiando el desarrollo de esa tecnología.

No se, digo ... :rolleyes:
 
La verdad se echa de menos algo así. Yo por suerte tengo eso mismo, una plaquita de unos 9x9 cm que trae una FPGA bastante amplia con su Flash de configuración, conector JTAG, sus alimentaciones, un puerto serie y 8 leds, o sea lo más básico, y luego 128 pines de E/S de propósito general a los que conectar lo que se me ocurra. La compré hace tiempo en Ebay por unos 50 euros, pero ya no la venden (se llama Stratix SmartPack)

Igualmente para hacer diseños con FPGA más complejas, requieren registrar la herramienta del fabricante (Quartus de Altera, o ISE de Xilinx), o sea más desembolso... No obstante estos fabricantes tienen versiones de estudiante y similares que sirven para las FPGA más pequeñas.

No sé, si no lo hacen será porque no les sale rentable, ten en cuenta que una plaquita por muy sencilla que sea ya resulta cara para muchos bolsillos: precio de una FPGA pequeña pero algo amplia, 20€, fabricar el PCB puede salir fácil por otros 20€ si se hacen muchos para bajar los costes fijos de fabricación, soldar la FPGA es otro tema aparte con mucha historia detrás, más luego el resto de electrónica asociada... Hablamos de mínimo unos 50€ de fabricación por placa en el mejor de los casos, a lo que hay que sumar los márgenes de beneficio, al final no se vendería mucho. Como ya dije, diseñar con FPGA es un lujo nada barato.
 
BUENO TAL VES LA SOLUCION SERIA SOLO LA ´PLACA GENERAL AUNQUE ESTA BUENA LA OFERTA PARA EL CYCLONE III

UNA PREGUNTA HAY ALGUNA TIENDA EN ESPAÑA PARA COMPRAR DIRECTO ESTE APARATO ... surte tengo un familiar en Cordoba que ya se regresa a Peru
gracias por su gentil ayuda

Aqui un foto de cyclone iii en version reducida la que quiero adquirir

QUE OPINAN ...
 

Adjuntos

  • ALTERAA.rar
    911.7 KB · Visitas: 47
Última edición:
BUENO TAL VES LA SOLUCION SERIA SOLO LA ´PLACA GENERAL AUNQUE ESTA BUENA LA OFERTA PARA EL CYCLONE III

UNA PREGUNTA HAY ALGUNA TIENDA EN ESPAÑA PARA COMPRAR DIRECTO ESTE APARATO ... surte tengo un familiar en Cordoba que ya se regresa a Peru
gracias por su gentil ayuda

Aqui un foto de cyclone iii en version reducida la que quiero adquirir

QUE OPINAN ...

Por favor no escribas en mayusculas.... eso equivale a gritar...

Gracias...


En cuanto a las tablillas economicas si he visto pero son con CLPD... un FPGA requiere mucho soporte externo para poder funcionar y como es muy amplia la gama de cosas que puede hacerse no le veria sentido a ofrecer algo "basico"
 
Sí que puedes comprar las FPGA por separado, pero tienes que tener cuidado porque no sólo es la FPGA sino toda la circuitería asociada (flash de configuración, condensadores de desacoplo para la alimentación, conector de programación, etc.). Por otro lado hacerte un PCB para una FPGA es complicado, es difícil que te quepa en sólo 2 caras por lo que ya hablamos de PCB multicapa, que tendrás que mandar a fabricar a algún lado... Por otro lado si compras una FPGA en encapsulado BGA, a ver cómo lo sueldas... -> Tienes que enviarlo a soldar a algún lado que tengan un horno para soldadura de BGA. No creas que diseñar con FPGA's es barato.

No es tan sencillo hacer un circuito con una FPGA, tiene bastante trabajo de diseño detrás. Tú tienes que ver si te compensa las horas de diseño y precios de los componentes.

Lo bueno del kit y de las FPGA es que son reutilizables, o sea puedes tener varios diseños y cuando vayas a usar uno pues le programas con lo que deseas. Lo malo es precisamente esto, que tienes que reprogramarla cada vez que cambies de diseño.

Para proyectos de aficionado, una tarjeta de evaluación y basta ya, que si no te dejas mucho dinero. No es como usar un PIC, que por poco dinero tienes un circuito.

Saludos


Estoy trabajando con la tarjeta spartan3 y tengo un problema con la tarjeta el caso es que cada vez que cargo un programa y apago la tarjeta al conectarla otra vez ya no tiene nada, es como si se hubiera reiniciado, según he investigado tiene que ver con la configuración de la memoria flash... pero no se exactamente que es lo que tengo que hacer para que aun cuando se apague la tarjeta siga conservado el programa descargado..
si alguien sabe como configurarla se lo agradecería......
 
Tienes que generar un archivo para la memoria Flash, para eso usa el iMPACT y la opción Prom File Formatter (creo recordar que se llamaba así). La extensión suele ser .mcs pero creo que no siempre (depende del tipo de Flash que uses). Ese archivo lo cargas en la Flash de la tarjeta y así al apagar y encender vuelve a cargar la configuración. Mira el manual de tu tarjeta que seguro que viene algo ahí.
 
Alguien sabe como multiplexar los displyas de la tajeta, en mi caso es una spartan 3. Algo de lo que quiero hacer por ejemplo, es un decodificador de BCD a 7 segmentos y mostralo en los displays. si alguien sabe le agradeceria mucho que me ayudara.
PD: Gracias al foro que me a ayudado mucho a resover mis dudas.....
 
Hola a todos, primero quería felicitarlos por sus proyectos y además quería pedirles ayuda, en la u me mandaron a hacer un proyecto, en teoría nada complicado pero no sé ni por dónde comenzar.... tengo q explicar el funcionamiento de la comunicacion ethernet del Spartan 3 con el código correspondiente(el que viene de demo en el CD... alguien ha trabajado alguna vez con esta aplicación?... gracias de antemano por su ayuda
 
FernyLlevo un ciclo aprendiendo el manejo de las tarjetas, la que uso es la Spartan 3E, si me puedes ayudar a contar tiempo con la terjeta, es decir, que una accion se produzca cada cierto tiempo.
 
Es tan simple como usar un contador de ciclos de reloj. Si por ejemplo la frecuencia de reloj que usas es de 50 MHz, contando 50.000.000 de ciclos tienes un segundo de tiempo, e igualmente con otros tiempos.
 
Hola a todos,

me decidi por comprar de digilent una Nexys2, el caso es que voy muy pez.
me he bajado el programa de la pagina de digilent Adept, pero segun parece necesito tambien los programas de xilinx ISE 11.1, para poder cargar los VHDL y trabajar sobre la placa.

He instalado ISE sobre ubuntu, pero no acaba de funcionar el USB, asi que iba a probarlo en un ordenador con Windows, pero como no es mio queria que me orientarais un poco sobre que hacer. Despues, sabeis si la licencia hay que ir renovandola, o caduca tal cual tras 30 dias.

Perdonad mi ignorancia, Estoy haciendo telecomunicaciones y me interesaba este tema para un futuro proyecto.

Gracias.
 
Hola

Según he visto el Adept parece ser sólo para programar y verificar la tarjeta, no para compilar tus diseños, para lo cual necesitas el ISE. Con el ISE también puedes programar la tarjeta (con la aplicación IMPACT que viene incluida), así que yo me olvidaría del Adept si no aporta otra novedad interesante...

Creo que hay una versión gratuita de ISE que tiene algunas limitaciones, por ejemplo creo que tenía alguna limitación de líneas de código máximas o de qué dispositivos se pueden grabar o no. No creo que haya problemas para una tarjeta de evaluación ya que suele soportar las FPGA que montan en estas tarjetas. La licencia creo que tienes que pedirla en la web de Xilinx, te registras y buscas por ahí, te la mandan a tu email sin coste. Siento no ser de más ayuda pero es que llevo años sin usar el ISE gratuito y no sé bien cuánto ha cambiado desde entonces...

Respecto del sistema, si vas a probar en Ubuntu y no te va el USB puedes tratar de buscar un programador por puerto paralelo, es más lento pero debería funcionar bien ahí. De todas formas sigue intentándolo porque el USB debería funcionar, pero bueno ya se sabe que cuando metes algo "rarito" en un linux puede pasar de todo...

¡Suerte!
 
hola a todos en especial tengo una duda con el implemento de multiplexores en la fpga quiero desplegar en varios displays una palabra que valla recorriendose de letra en letra y al final quede toda la palabra desplegada en los displays

he estado investigando de multiplexores en cascada pero no veo algo que me ayude mucho

"aclaro" solo quiisiera una idea , si es con multiplexores o implementando flip-flops

muchas gracias :D

y a todos en general gracias!! este foro esta buenisimo me ha servido mucho
 
Hola,

Estoy intentando implementar este proyecto de una puerta de garage en una Nexys2, el caso es que no se como asignarle las entradas y salidas.
Lo hago desde ISE.

Mi idea era asignar un boton para el reset y otro para el mando a distancia, dos switch para dos sensores que detectan puerta_cerrada y puerta_abierta y en el display dibujar una 'o' y una 'c' cuando la puerta esta abierta o cerrada.

He intentado asignarlo a traves del archivo .ucf, pero me da error.

Si teneis alguna una idea, es el primer programa que intento por mi cuenta, a aparte de los que he cargado de ejemplos ( que esos si funcionaban claro ). Gracias.

Código:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity parking is
  port(
    puerta_cerrrada: in std_logic;
    puerta_abierta: in std_logic;
    mando: in std_logic;
    clk,reset: in std_logic;
    abrir_puerta: out std_logic;
    cerrar_puerta: out std_logic;
        sevenseg : out  std_logic_vector (6 downto 0); 
    anodes : out  std_logic_vector (3 downto 0);
  );
end parking;
architecture arq_ctrl_parking of parking is
type posibles_estados is (EstadoInicial,Cerrando,Cerrado,Abriendo,Abierto);
signal estado: posibles_estados;
begin
process (clk, reset)
begin
       if (reset='1') then
                estado <= EstadoInicial;
       elsif (clk'event and clk='1') then
                case estado is
                        when EstadoInicial =>
                               if (puerta_abierta='1') then estado <= Cerrado;
                               else estado <= Cerrando;
                               end if;
                        when Cerrando =>
                               if (puerta_cerrada='1') then estado <=Cerrado;
                               end if;
                        when Cerrado =>
                               if (mando='1') then estado <=Abriendo;
                               end if;
                        when Abriendo =>
                               if (puerta_abierta='1') then estado <=Abierto;
                               end if;
                        when Abierto =>
                               if (mando='1') then estado <=Cerrando;
                               end if;
                end case;
       end if;
end process;
process (estado)
begin
case estado is
        when EstadoInicial => abrir_puerta<='0';
                                                         cerrar_puerta<='0';
                                                         
        when Cerrando =>       cerrar_puerta<='1';
        when Cerrado =>        cerrar_puerta<='0';
                                                            sevenseg<="0000111";
        when Abriendo =>        abrir_puerta<='1';
        when Abierto =>         abrir_puerta<='0';
                                                            sevenseg<="0100011";
anodes<="1110";
end case;
end process;
end arq_ctrl_parking;


Este es el .ucf

NET "anodes<0>"  LOC = "F17";  
NET "anodes<1>"  LOC = "H17";  
NET "anodes<2>"  LOC = "C18";  
NET "anodes<3>"  LOC = "F15";  
  
NET "sevenseg<0>" LOC = "L18";  
NET "sevenseg<1>" LOC = "F18";  
NET "sevenseg<2>" LOC = "D17";  
NET "sevenseg<3>" LOC = "D16";  
NET "sevenseg<4>" LOC = "G14";  
NET "sevenseg<5>" LOC = "J17";  
NET "sevenseg<6>" LOC = "H14";  
  
NET "mando<0>" LOC = "B18";  
NET "reset<1>" LOC = "D18";  

NET "puerta_cerrada<0>" LOC = "G18";  
NET "puerta_abierta<1>" LOC = "H18";
 
Última edición por un moderador:
Sería bueno que copiaras el error que da.

Luego prueba quitando las comillas y espacios del = del archivo.ucf (creo que no pasa nada porque estén, pero no puedo probar ahora mismo si funciona así...), por ejemplo:

NET anodes<0> LOC="F17";

Porúltimo, ¿dónde has puesto el pin de clk?
 
Atrás
Arriba