Forum: FPGA, VHDL & Co. Component wird nicht eingebunden


von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe jetzt das zweite mal ein seltsames Problem:

Ich will eine Component einbinden, in der Top vhdl Datei ist das drinnen
1
architecture behav of blubb is
2
3
component div_16_16 is
4
  port (
5
    rfd : out STD_LOGIC; 
6
    clk : in STD_LOGIC := 'X'; 
7
    dividend : in STD_LOGIC_VECTOR ( 15 downto 0 ); 
8
    quotient : out STD_LOGIC_VECTOR ( 15 downto 0 ); 
9
    divisor : in STD_LOGIC_VECTOR ( 15 downto 0 ); 
10
    fractional : out STD_LOGIC_VECTOR ( 15 downto 0 ) 
11
  );
12
end component;
13
14
begin
15
16
divider: div_16_16 PORT MAP(
17
  rfd => open, 
18
  clk => CLK,
19
  dividend => input1,
20
  quotient => output,
21
  divisor => input2,
22
  fractional => open
23
);

Die Component die ich einbinden will hat natürlich auch die gleiche 
Bezeichnung:
1
entity div_16_16 is
2
  port (
3
    rfd : out STD_LOGIC; 
4
    clk : in STD_LOGIC := 'X'; 
5
    dividend : in STD_LOGIC_VECTOR ( 15 downto 0 ); 
6
    quotient : out STD_LOGIC_VECTOR ( 15 downto 0 ); 
7
    divisor : in STD_LOGIC_VECTOR ( 15 downto 0 ); 
8
    fractional : out STD_LOGIC_VECTOR ( 15 downto 0 ) 
9
  );
10
end div_16_16;
11
12
architecture STRUCTURE of div_16_16 is

Irgendwelche Ideen?

Edit:
Wenn ich oben statt Implementation Simulation anklicke dann ist es 
richtig eingebunden.

Vielen Dank!

: Bearbeitet durch User
von Gerald G. (gerald_g)


Lesenswert?

Mach mal das "is" in der components Zeile weg

von Gustl B. (-gb-)


Lesenswert?

Das hab ich auch bei vielen funktionierenden Projekten und auch wenn ich 
es weg mache ändert sich nix.

von S. N. (higgns)


Lesenswert?

Versuch es mal ohne extra component Deklaration einzubinden
1
divider: entity work.div_16_16(structure) port map (
2
  .. => ..,
3
  .. => .. );

Funktioniert bei mir immer so. Hat auch den Vorteil, dass man nicht 
immer an den Ports rumfrickeln muss;).

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

Wenn ich das so mache bekomme ich bei der Synthese (nicht Simulation) 
diesen Fehler:

ERROR:HDLCompiler:104 - "D:\vhdl\lx9_gauss_test\lx9_gauss_test.vhd" Line 
50: Cannot find <div_16_16> in library <work>. Please ensure that the 
library was compiled, and that a library and a use clause are present in 
the VHDL file.

Wenn ich es so mache wie vorhin dann läuft seltsamerweise die Synthese 
durch, aber alles von den eingebundenen Components beibt unverbunden und 
taucht auch nicht in der Simulation aus.

Also alles sehr seltsam.

Ich räume mal den Code etwas auf und hänge das an ...

von Gustl B. (-gb-)


Angehängte Dateien:

Lesenswert?

So, aufgeräumt. Also klar ist sehr minimal, die Synthese läuft durch, 
aber verbindet die Componente irgendwie nicht.

Edit:
Gelöst, anscheinend darf man bei den Xilinx Cores nicht die VHD Datei 
hinzufügen sondern die XCO und NGC. Die VHDL ist nicht synthetisierbar 
steht da drinnen. Seltsam weil eigentlich sieht das VHDL ganz brauchbar 
aus.

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.