Programacion en VHDL

Iniciado por Fox_Neo, 10 Octubre 2013, 11:33 AM

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

Fox_Neo

Hola gracias por leer mi duda, estoy empezando a programa en VHDL  y me da un error de compilación que no consigo corregir el código es el siguiente :
Código (vhdl) [Seleccionar]
-------------------------------------------------------------------------------
--
-- Title       : demux
-- Design      : 3º practica
-- Author      : Manuel
-- Company     : Torca
--
-------------------------------------------------------------------------------
--
-- File        : demux.vhd
-- Generated   : Wed Oct  9 01:32:38 2013
-- From        : interface description file
-- By          : Itf2Vhdl ver. 1.22
--
-------------------------------------------------------------------------------
--
-- Description :
--
-------------------------------------------------------------------------------

--{{ Section below this comment is automatically maintained
--   and may be overwritten
--{entity {demux} architecture {demux}}

library IEEE;
use IEEE.STD_LOGIC_1164.all;
  use IEEE.std_logic_unsigned.all
entity demux is
port(
D : in STD_LOGIC;
S : in STD_LOGIC;
Z0 : out STD_LOGIC;
Z1 : out STD_LOGIC
     );
end demux;

--}} End of automatically maintained section

architecture demux of demux is
begin

-- enter your statements here --
process(D,S)
begin
example:
if S='0' then
Z0<=D;
else
Z1<=D;
end if;
end process;

end demux;

Estoy usando el programa de Active- HDL versión estudiante
El error que me da es el siguiente:

# Error: VLM_0040: VHDL unit cannot be compiled as the target library name is not a legal VHDL identifier.
Lo que intento realizar es un demultiplexor  que realice la selección de un dato en una entrada hacia uno de los dos  canales de salida para datos de 1 bits D es la entrada, S es la señal de control, z0 y z1 son las salidas

Gracias por la ayuda

Fox_Neo

Bueno ya lo he solucionado  lo he hecho con otro código que se me ha ocurrido mas secillo:
Código (vhdl) [Seleccionar]
library IEEE;
use IEEE.STD_LOGIC_1164.all;

entity Demux is
port(
s : in STD_LOGIC;
d : in STD_LOGIC;
z0 : out STD_LOGIC;
z1 : out STD_LOGIC;
)
end Demux;

--}} End of automatically maintained section

architecture Demux of Demux is
begin

z0<=d when (s='0')
else;
z1<=d when (s='1')
else ;
 
end Demux;

Gracias