Forum: FPGA, VHDL & Co. Cypress Mcounter error


von Dominik (Gast)


Lesenswert?

Hallo,

das ist mein Quellcode (s.u.) und ich habe ein Fehler aus dem ich 
einfach nicht schlau werde. Mein Zähler beginnt richtig zu zählen. Die 
Werte von q6 und q5 stimmen, die habe ich nach außen geführt und mit dem 
Oszi überprüft. leider habe ich immer an zyx_enable ein Low-Signal 
anstehen, egal welchen Ausgang ich belege (eigentlich sollte es q(23) 
sein aber bei Versuch auf q(10) verbunden). Das Signal zyx_enable wird 
nur für die Abfrage im if/else Zweig verwendet. Hat jemand eine Idee?

Gruß Dominik


 -- Synchronzaehler xyz Enable
  Count5: Mcounter generic map (
    lpm_width => 24, lpm_hint => speed
  )
  port map ( clock => Clk, updown => '1', q(10) => zyx_enable, q(6) => 
q6,   q(5) => q5, aclr => xyz_count_clr,
  cnt_en => xyz_count_en
    );



process (a, Flag7,  zyx_enable)
begin
    if (a = '0'  and zyx_enable = '0')then
      XYZEnable <= '1';
    elsif ((a = '1') and (Flag7 = '1') )then
      XYZEnable <= '1';
    else
      XYZEnable <= '0';
    end if;
end process;

von Chef (Gast)


Lesenswert?

Dein Zähler wird zu früh gecleared, hat ein lo im enable, oder der Reset 
kommt.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> aclr => xyz_count_clr
Was macht der? Ein asynchroner Reset, richtig?
Wie wird der erzeugt? Sind da evtl. Glitches drauf?

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.