TODOPIC

Otros Microcontroladores / Dispositivos programables => Lógica Programable => Mensaje iniciado por: Arbolito en 13 de Septiembre de 2003, 16:24:00

Título: duda
Publicado por: Arbolito en 13 de Septiembre de 2003, 16:24:00
buenasssssssssssssssssssssss
mi no entender
primero :este me parece un tema interesante
segundo: no tengo ni idea
tercero: estube pispeando algo y me surge una pregunta ay que saber programar en c
cuarto :otra pregunta ¿alguien podria empezar a orientarme desde cero?
quinto :saludos a todos y un abrazo
sexto :juanacho
Título: RE: duda
Publicado por: Elena2000 en 14 de Septiembre de 2003, 04:53:00
Hola juanacho_ar!!

Vaya lista de la compra que has puesto en tu mensaje..... seguro que no se te ha olvidado algo? las cebollas, por ejemplo?...

Bueno, a ver si puedo ayudarte...
Primero: pues claro que es un tema interesantísimo!
Segundo: Ya debes tener algo de idea, no te hagas el humilde...
Tercero: NO hay que saber programar en C... el VHDL no hereda nada del C, en todo caso podría parecerse al Pascal, pero tampoco...
Cuarto: Para eso estamos Jorgevert y yo, para ayudar en lo que podamos y animaros a "pispear" (como tú dices, qué graciosa palabrita) en este mundillo...
Quinta: esta y el abrazo lo dejamos para el final del mensaje.

Para empezar bien, debes leerte aunque sea por encima el libro de cocina del VHDL, está en este subforo, vale?

Te daré detalles ahora mismo para que sigas pispeando luego, con un ejemplo: Una puerta AND de cuatro entradas.

--      
-- 4-input AND gate... especial para Juanacho_ar
--

Library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_UNSIGNED.all;
-- Necesitas estas líneas para indicar qué standard del
-- lenguaje estás usando y cargar las librerías.

entity MyAnd is
   port (X: in STD_LOGIC_VECTOR(3 downto 0);
         Output: out STD_LOGIC);
end MyAnd;
-- Acabamos de definir la ENTIDAD: MyAND
-- como un array de cuatro elementos en un puerto de entrada.
-- Los elementos del array se numeran de esta forma: 3, 2, 1, 0

--Bien... Ahora describimos el COMPORTAMIENTO de la
--entidad que hemos definido antes
architecture behavioural of MyAnd is
signal S1, S2: STD_LOGIC;

-- Estas son señales que se aplican al array de entrada
begin
  S1 <=X(0) AND X(1);
  S2 <=X(2) AND X(3);
  Output <= S1 AND S2;

end behavioural;

-- Lo ves? es MUY SENCILLO!!! hemos implementado una puerta AND de cuatro entradas! Este modulito podrías usarlo en otro diseños más grandotes...


Buuuuuuueno..... a ver qué me cuentas. Espero que te haya parecido fácil y que te anime a seguir con ello, vale? y esto va también por el resto de los alumnos de la clase!! qué se han dormido?????

Y ahora si:
Quinto: Saludetes!!
Sexto: Besotes!!

Elena
Título: RE: duda
Publicado por: Sispic en 15 de Septiembre de 2003, 14:45:00
Hola Elena.

Pos si acaso escribiendo en el post de las dudas.

Novato total y perdona por mi ignorancia en este tema, entiendo  mas o menos la manera como se crean las definiciones y funciones  pero....

Esto se compila y tiene alguna aplicación practica, o es para algún tipo de simulación ¿
 Para que se usa vamos..

No me refiero al ejemplo en concreto si no en el soft en general .

No me riñas todavía no he bajado el soft . haver si tengo un rato.

Saludos.
sisco
Título: RE: duda
Publicado por: Arbolito en 15 de Septiembre de 2003, 21:55:00
queridisima elena
primero:e leido algo del manual de cocina que decis peeeeeeeeeeero no se ingles y asique como te podras imaginar no case un cuero
segundo:El ingles no me va a asustar asique te voy a seguir inchando la paciencia
tercero:realmente no se nada de esta forma de programar
cuarto:¿hay material en castellano (por ejemplo el mismo manual pero en castellano)
quinto:tambien relojie el ejemplo que dejaste no parece muuuuuuy dificil pero no  conosco los comandos que mencionas alli
sexto:como bajo el progama (si esto se puede aser)
septimo:este programa cada vez me interesa mas asique no te libraras de mi asta que no aprenda a utilizarlo (aunqhe sea lo minimo para arrancar solo)
octavo:no te molestes en retarme por las faltas de ortografia porque de eso ya se encargo marmatar ademas las h no suenan y ay que aorrar espacio (pero les aseguro que las pronuncio todas)
noveno:saludirigillos y llenate de paciencia porque la vas a necesitar
decimo y ultimo :juanacho
Título: RE: duda
Publicado por: Elena2000 en 17 de Septiembre de 2003, 06:24:00
Hoooola chicos!!

Para Sispic: holasss, Sissssco! vale, no te riño,ya me imagino que estás hasta arriba con tus cositas y machacando la batería de tu móvil...  Te cuento para qué se usa el VHDL, en resumen: programación y reconfiguración de dispositivos configurables, como PLDs y FPGAs. Con el lenguaje describes el hardware, con el compilador produces una "lista de nodos" (netlist) que puedes someter a simulación por software, para probar el diseño, y por último puedes sintetizar el diseño en un dispositivo de puertas lógicas programables.
Es importante que entiendas la terminología: descripción, síntesis, reconfiguración.... Describes el circuito tal y como lo quieres, con el comportamiento que quieres que tenga. Después, en la etapa de síntesis, podrás convertir tu descripción a puertas lógicas, y además optimizarlo en función de la tecnología que quieras usar.
Una de las principales ventajas del VHDL es que es indepediente de la plataforma donde lo vayas a grabar, el mismo diseño descrito para una FPGA podría valerte para un ASIC, por ejemplo.
Y por último... por si os suena a chino, una FPGA es un array de puertas programables... en cada celda del chip hay una celda funcional que puede implementar cualquier función lógica... y como cualquier función lógica se puede implementar como una suma de productos, ves que una combinación adecuada de estas celditas puede implementar cualquier circuito combinacional....

ZZzzzzzzzzzzzzzzz ......

Vale, sólo una cosita más: el VHDL es hoy por hoy el lenguaje de descripción hardware más utilizado en la industria electrónica... Deberías sacar un microsegundo, entre trama y trama, y bajarte el software para juguetear con él... y no te estoy riñendo.. eh

Ya se acabó el rollo por ahora.
Besotes!
Elena

Título: RE: duda
Publicado por: Elena2000 en 17 de Septiembre de 2003, 06:36:00
Hola again,

A ver, Juanacho.... Pero, TU DE DONDE HAS SALIDO???? ...  jaja... anda, descansa, que seguro que estás agotado después de enumerar tantos puntos (y yo que pensé que los hombres sólo sabíais contar hasta tres....).....

Antes de que se me olvide, para los monolingües, me  pondré a rastrear para ver si encuentro documentación de VHDL en espanishhhhhh.... vale?

Y no te preocupes, que tengo muuuuuuuuuucha paciencia, y tus amenazas no me asustan ni un  poquito....
Así que puedes seguir dando la brasa todo lo que quieras, chiquitín... y de paso aplícate el consejo que le di a Sispic, y bájate el software!! ¿qué cómo se baja?.... glub..... ...  nunca antes jamás de los jamases te has bajado un software de internet??? ....... .... no puede ser cierto... aunque sea un salvapantallas de pamela anderson... Ah! eso si, verdad? pues con MaxPlus es igual! sólo tienes que pinchar con el ratón en el link y... dejarte llevar.............................

Por las faltas de ortografía no te preocupes tampoco, que no me voy a espantar.... si supieras cómo escribe mi jefe los memorandums... tú a su lado eres Shakespeare... jeje.. así que imagínate.... y además, como dices que Marmatar ya libró esta batalla y perdió, con la paciencia infinita que tiene el master de la fresadora, no haré yo el mínimo intento de corregirte, nene, así que por mi puedes pronunciar las "h" con acento argentino o zamboyano, como prefieras........

Besotes!! y volveré con un manual del VHDL en cristiano.
Elena
Título: RE: duda
Publicado por: Arbolito en 18 de Septiembre de 2003, 14:45:00
aaaaaaaaaaaah sangras por la erida mujer los hombres sabemos contar asta20 el problema es que las mujeres aun no descubren los dedos de los pies
primero:mira en la pagina ik-tut ay mucho en criollo
segundo:ya algo voy cazando
quinto volvere con preguntas
sexto saludirigillos
sexto juanacho
Título: RE: duda
Publicado por: marmatar en 18 de Septiembre de 2003, 16:06:00
Pare que no pierdan tiempo buscando lo que ya alguien de nosotros buscó...

http://directo-a.com/VHDL

http://www.geocities.com/SiliconValley/Campus/5745/index.htm
(Curso en español)

http://www.uag.mx/214/inicio.htm
(Curso en español - México)

http://tapec.uv.es/VHDL/libro.html  
(Explicación en una página dinámica... colorida)

Luego mando mas... un beso
marmatar
Título: RE: duda
Publicado por: marmatar en 18 de Septiembre de 2003, 16:41:00
Algunos links mas...

http://ttt.upv.es/~rcolom/ficheros/vhdl_01_html/
(Introducción al VHDL)

http://www2.ate.uniovi.es/personal/personales/fernando/Doc2003/EI/Lenguaje%20VHDL.pdf  
(en español y pinta bien)

http://ttt.upv.es/~rcolom/ficheros/vhdl_01_html/tsld002.htm
(otro indroducción... creo)

http://apollo.cps.unizar.es/~fbeltran/vhdl.pdf
Algo mas...

Bueno en cada uno, además hay links a otras páginas principalmente en englés... y la mayoría de éstas páginas que les pasé son básicas... así que la ayuda de Elena será primordial.

Besos y abrazos a quien correponda...
marmatar
Título: RE: duda
Publicado por: Elena2000 en 19 de Septiembre de 2003, 03:27:00
Jeje... no hay nada como tener un Marmatar en el foro... eh.. este chico es increíble, ¡cúantos links! muchas gracias, guapo.
Vamos, a "pispear" entonces.....

Espero vuestras preguntas.... disparen!

Besotes!
Elena

Ah, Juanacho... no dupliques las respuestas porque no tenemos mucho espacio, vale, resalao?
Título: RE: duda
Publicado por: Mady_Tavernier en 19 de Septiembre de 2003, 12:35:00
Hola Elena estoy interesada en aprender VHDL, asi como conseguir algun simulador gratuito, ¿puedes decirme donde enconrtrar los ficheros que comentas?
Título: RE: duda
Publicado por: Elena2000 en 20 de Septiembre de 2003, 11:06:00
Hola Mady_Tavenier,

Bienvenida al foro!

Verás, yo tengo el software de Xilinx, que comprende el compilador VHDL, simulador y síntesis en FPGA´s de Xilinx, claro. Si es eso lo que necesitas, ya diría algún sitio para poder bajártelo (ocupa mucho). Si está empezando, comienza por los tutoriales que has visto en este subforo (Jorgevert acaba de poner uno en español). También podrías juguetear con el MaxPlus, que está muy bien y se aprende mucho.

Ya nos contarás,
Saludos!
Elena
Título: RE: duda
Publicado por: adfgarcia en 20 de Septiembre de 2003, 17:06:00
Hola Elena como estas, me acoplo a este foro, suena interesante esto del VHDL, aunque no se de que se trata, tratare de aprender, un besote grande para ti, y saludos a todos los integrantes del foro.-
Título: RE: duda
Publicado por: ebs_z en 13 de Mayo de 2005, 17:11:00
que mas amigos del Vhdl, quisiera saber si alguno tiene un tutorial de maxplus 2,que trate sobre el grafic editor

gracias
Título: RE: duda
Publicado por: fer_zone en 06 de Junio de 2005, 20:44:00
Hola Elena, es la primera vez que entro al foro de vhdl, en realidad no me habia dado cuenta que estaba (siempre directo a los PIC perdiendome este tema tan bueno), empece a estudiar el lenguaje hace poco tiempo, estoy con deseos de conseguir un kit de desarrollo de Xilinx (CoolRunerII) (de paso te pregunto qué opinas de el), en fin me gustaria saber un poco porqué resuelves ese ejemplo del principio de esa forma, es decir con señales, no es suficiente esto: ?

architecture behavioural of MyAnd is  
 begin
Output <= X(0) AND X(1) AND X(2) AND X(3);
 end behavioural;

Por supuesto, mi experiencia es nula, por eso la pregunta. Desde ya gracias.

Fer.
Título: RE: duda
Publicado por: Elena2000 en 07 de Junio de 2005, 02:51:00
Hola Fer! bienvenido a este subforo! Sonrisa

Realmente no hay un método único para describir el comportamiento de un sistema lógico en VHDL, sino que puedes usar muchas mecanismos y al final aplicar lo que más fácil te resulta, la experiencia va guiándote. Lo importante es que te animes a hacer cositas, las pruebes y ya verás que te funcionarán, seguro. Y si no, pregunta por aquí que haremos lo que podamos por ayudarte, además ahora tenemos un excelente moderador, Antoniof, que es un sol.
En cuanto al kit de desarrollo de Xilinx, personalmente no le conozco, pero te diré que siempre siempre he trabajado con xilinx, y son fenomenales, y yo creo que tienen los mejores dispositivos, sin duda, además de un excelente soporte. Yo los recomiendo.

Bueno, ya nos contarás!
Bye!
Elena
PD: Ah! el ejemplo que has descrito tú para el comportamiento de MyAnd también es perfectamente correcto.
Título: RE: duda
Publicado por: fer_zone en 07 de Junio de 2005, 08:45:00
Gracias Elena, ya estare esperando tener el kit de desarrollo para poner "las manos en el horno" y empezar a tener un poco de experiencia con todo esto.
En cuanto tenga algo hecho lo posteare aqui en el foro.

Una pregunta más: cómo se maneja el asunto del reloj con los CPLD y FPGA, es como los micros? reloj externo nos da frec. de trabajo, o es diferente? Gracias.

Título: RE: duda
Publicado por: antoniof en 08 de Junio de 2005, 03:43:00
En las FPGAS el reloj externo determina la frecuencia de trabajo. Después depende de como manejes el reloj internamente. En VHDL se programan mediante procesos. Un ejemplo:
Codigo:
divisor:process (clk,rst) begin

   if ( rst ="1" ) then                 
    contador <= 0;
   elsif (clk="1" and clk"event ) then
      if (contador = 62500) then
       contador <= 0;
       clk2 <= not clk2;
      else
         contador <= contador + 1;
      end if;
   end if;
end process divisor;


Este proceso es sensible a dos señales: el reloj "clk" y el reset "rst". Si se activa el reset, se pone a cero un contador. Si se da un flanco ascendente del reloj, este contador va aumentando hasta que llega a 62500 en cuyo caso se vuleve a poner a cero y se niega otra señal "clk2". Con esto hemos construido un divisor de frecuencia por 125000. Si la frecuencia del reloj de entrada es de 50MHz, la frecuencia de la señal "clk2" es de 400Hz. Esta señal de 400Hz se puede utilizar en otros procesos para realizar diferentes operaciones, por ejemplo, un PWM para un servo, lectura de un ADC, etc.

Hay FPGAs que tienen módulos DCM (Digital Clock Manager) con los que se puede programar una frecuencia de reloj mayor a la frecuencia de entrada, es decir, que a partir de una señal de 50MHz puedes generar otra de 80MHz por ejemplo o incluso de hasta 240MHz.

Si algo caracteriza a una FPGA es que son muy flexibles, para poder hacer con ellas lo que quieras.