Forum: FPGA, VHDL & Co. VHDL: unsupported Clock statement


von opkatze (Gast)


Lesenswert?

Guten Tag

Warum bekomme ich bei folgendem VHDL Konstrukt immer die Fehlermeldung
"unsupported Clock statement" ?

process (ein_takt)
begin
 if ein_takt'event then
  --irgendwas
 end if;
end process;

Danke für eure Antworten!

von John-eric K. (mockup)


Lesenswert?

muss man nicht schreiben

if clk ='1' and clk'event then
  bla
end if;
für die steigende flanke

oder

if clk ='0' and clk'event then
  bla
end if;
für die fallende flanke

mfg
mockup

von opkatze (Gast)


Lesenswert?

Ich würde die Aktion aber gerne bei steigender UND fallender Taktflanke
ausführen lassen.

von John-eric K. (mockup)


Lesenswert?

wenn du das in hardware reinprogrammieren willst, dürfte es glaube ich
nur auf den coolrunner cplds laufen, weil die flipflops haben, die bei
steigender und fallenden flanke triggern.
mal was anderes, wenn du einen viel höheren tackt hast z.b 10mhz oder
so und dein clk niedriger ist(z.b 100khz, dann würde das auch noch so
gehen.

if rising_edge(clk_schneller) then
   clk_1 <= clk_langsam;
   clk_2 <= clk_1;

  if (clk_2 = '1' and clk_1 ='0') or (clk_2 = '0' and clk_1
='1') then
   hier erkennt er die fallende flanke und hier die steigende flanke.

      danach kommt dein code
  end if;
end if;

du synkronisierst deinen tackt mit dem viel schnelleren, schickst den
dann über 2 flipflops und fragst diese ab.

mfg
MockUp

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.