1 votos

¿Permite VHDL mapear un puerto de salida de un solo bit a múltiples bits conducidos al mismo valor, en una línea?

Para esta hipotética entidad:

entity test is
  port (
    a_out: std_logic
  );
end entity;

El a_out debe conducir tres señales al mismo valor donde la entidad de prueba es instanciada. Ahora se puede crear un std_logic y el puerto lo mapea a a_out y luego manejar las otras tres señales desde esta señal mapeada en el puerto. Algo así:

signal bit_signal : std_logic;
signal x : std_logic;
signal y : std_logic;
signal z : std_logic;

test_i: test
  port map (
  a_out => bit_signal
);

x <= bit_signal; 
y <= bit_signal;
z <= bit_signal;

Sería estupendo que el intermedio bit_signal no es necesario y el a_out puede conducir directamente las señales x, y, z haciendo algo así:

test_i: test
  port map (
  a_out => x, y, z
);

Creo que VHDL 2008 no lo permite, aunque no puedo decir nada de VHDL 2019.

2voto

Puede intentar utilizar alias Algo así:

signal x: std_logic;
alias y is x;
alias z is x;

test_i: test
  port map (
  a_out => x
);

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X