On Tue, Jan 02, 2007 at 09:52:18AM +0100, Mark van Doesburg wrote: > Hi, > > It seems that the following construction is not allowed in GHDL. > > ---------------------------------------- > library ieee; > use ieee.std_logic_1164.all; > use ieee.numeric_std.all; > > entity test_attribute is > port( > clk: in std_logic; > reset: in std_logic; > > toggle: out std_logic > ); > end; > > architecture first of test_attribute is > attribute max_fanout: string; > attribute max_fanout of toggle: signal is "100"; > signal toggle_i: std_logic:='0'; > begin > > process(clk) > begin > if rising_edge(clk) then > if reset='1' then > toggle<='0'; > toggle_i<='0'; > else > toggle<=not toggle_i; > toggle_i<=not toggle_i; > end if; > end if; > end process; > > end; > ---------------------------------------- > > When I try to compile this code, GHDL produces the following message: > > test_attribute.vhd:16:25: no named entities 'toggle' in declarative part > > This construction is required for xst (xilinx) and works fine with > modelsim. I really think GHDL is correct. Attribute specifications may only appear in the declarative region where the name is declared. You should put the attribute specification in the entity.
Tristan. _______________________________________________ Ghdl-discuss mailing list [email protected] https://mail.gna.org/listinfo/ghdl-discuss
