Forum: FPGA, VHDL & Co. was ist der fehler!


von Gast (Gast)


Lesenswert?

Hallo ich  habe leider immer noch den gleichen problem , ich weiss nicht 
leider wo den Fehler ist !!!!!!!!
Bei der Processing  sagt  mir

Error (10500): VHDL syntax error at teiler.vhd(18) near text ";"; 
expecting ":", or ","
heisst es dieser Zeil :  variable var_Q ;
hier ist das Programm


LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_ARITH.all;
USE ieee.std_logic_UNSIGNED.all;

entity teiler is
      generic (n: integer:= 16);          -- Teiler verhähltnis
      port(
           rising : in std_logic;
           Q  : out Std_logic);
end teiler;

architecture Behaviour of teiler is
signal sig_Q : std_logic := '0';
begin
process (rising)
variable Z:integer range 0 to n-1 ;
variable var_Q ;

begin
  if rising_edge(rising) then                -- Synchron zaehlen
          if Z< n-1 then Z := Z+1;
          else Z :=0 ;                   -- löschen
          end if;
          if Z=0 then var_Q :='1';
          end if;
          if Z= n/2 then var_Q :='0';
          end if;
   end if ;
Sig_Q<= var_Q ;                          --- Counter zuürcksetzen
end process ;
Q <= sig_Q;
end Behaviour;


danke

von Jim (Gast)


Lesenswert?

probier einfach mal:

variable var_Q : std_logic ;

oder

variable var_Q : unsigned ;

von Jim (Gast)


Lesenswert?

sorry, habe gerade gesehen dass Q std_logic ist.
also

variable var_Q : std_logic ;

wuss gehen!

von Gast (Gast)


Lesenswert?

danke dir Jim
 noch ein frage, was kann man so von den programm erwarten in der 
simulation , ??
wenn ich fragen darf
 danke

von Jim (Gast)


Lesenswert?

Habe gerade mit Active-HDL simuliert.
Es ist ein frequenzteiler durch 16
Also Q = rising / 16

MfG

von Gast (Gast)


Lesenswert?

Danke sehr

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.