Autor Tema: mini duda con multiplexor  (Leído 4860 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
mini duda con multiplexor
« en: 23 de Junio de 2010, 22:24:54 »
Hola a todos!!
Estoy practicando un poco de vhdl porque me lo piden en una materia, y tenia una pequeña duda. Hice un multiplexor para practicar un poco, este es el codigo:

Código: VHDL
  1. library ieee;
  2. use ieee_std_logic_1164.all;
  3.  
  4. ENTITY mux IS
  5. PORT(
  6.         sel: in std_logic;
  7.         in1,in2: in std_logic_vector(0 to 3);
  8.         output: out std_logic_vector(0 to 3)
  9.         )
  10. END mux;
  11.  
  12. ARCHITECTURE mux_arc OF mux IS
  13. BEGIN
  14.         output <= in1 WHEN sel='0' ELSE
  15.                   in2 WHEN sel='1' ELSE
  16.                   UNAFFECTED;
  17. END mux_arc;

Pero en wikipedia hay un ejemplo que me pierde un poco. Por qué usa el process? Yo tengo por entendido que si se trata de un combinacional no es necesario.
Espero q me aclaren la duda y desde ya muchas gracias!! :D

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado JOJOJORGE5

  • PIC16
  • ***
  • Mensajes: 167
Re: mini duda con multiplexor
« Respuesta #1 en: 27 de Junio de 2010, 18:23:49 »
Hola gera

yo tampoco tengo mucho conocimiento de VHDL pero estoy casi seguro que usan process para poder usar las estructuras como case y demas que simplifican y ayudan mucho.

salu2:)

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mini duda con multiplexor
« Respuesta #2 en: 27 de Junio de 2010, 19:26:14 »
Entonces supongo q en el caso de un simple combinacional no se justifica. No sabia q no se puede usar case, if y esas cosas fuera de un process, pero ahora q me lo mencionas me doy cuenta.
Muchas gracias por la respuesta! :)

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
Re: mini duda con multiplexor
« Respuesta #3 en: 28 de Junio de 2010, 03:54:18 »
Al ser un proceso combinacional, diría que no hay diferencia significativa entre una implementación y otra, ya que al no haber reloj por ningun sitio, no se registran ni entradas ni salidas

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
Re: mini duda con multiplexor
« Respuesta #4 en: 28 de Junio de 2010, 04:00:26 »
Pues si que resulta significativa la diferencia a la hora de sintetizar



Uploaded with ImageShack.us

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mini duda con multiplexor
« Respuesta #5 en: 28 de Junio de 2010, 13:18:07 »
Interesante. Que programa usaste para simular y sintetizar modulay??

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado pablomanieri

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 639
Re: mini duda con multiplexor
« Respuesta #6 en: 28 de Junio de 2010, 13:43:13 »
Modulay, si se ven diferencias al sintetizar, pero tengo que hacer una observación, en el primero, usando process, no se tiene en cuenta el estado de alta impedancia, y en el segundo si. Además en el primero, cada bit del SEL tiene que estar en un valor determinado para que se cumpla la condición, en el segundo se le hace caso solo a un bit del SEL. Creo que no se le está diciendo al sintetizador que haga lo mismo. Por eso las diferencias

Desconectado Modulay

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 2651
Re: mini duda con multiplexor
« Respuesta #7 en: 28 de Junio de 2010, 14:26:34 »
Interesante. Que programa usaste para simular y sintetizar modulay??

Esa imagenlao he sacado de un pdf que tengo por aquí, gera.
Para simular diseños uso modelsim.
Para síntesis y configuración uso Xilinx ISE

Modulay, si se ven diferencias al sintetizar, pero tengo que hacer una observación, en el primero, usando process, no se tiene en cuenta el estado de alta impedancia, y en el segundo si. Además en el primero, cada bit del SEL tiene que estar en un valor determinado para que se cumpla la condición, en el segundo se le hace caso solo a un bit del SEL. Creo que no se le está diciendo al sintetizador que haga lo mismo. Por eso las diferencias

Pues si, parece que me dejé llevar por la euforia jaja.