Forum: FPGA, VHDL & Co. Betaktung Spartan-FPGA


von ChristianS. (Gast)


Lesenswert?

Hallo,
ich möcht im Spartan eine Flip Flop Schaltung realisieren.Dabei
ist mir beim durchlesen der Datenblätter aufgefallen,das es nur
3 Möglichkeiten für Takteingänge gibt.(50MHz-Oszi,SMA-externclk
und 8PIN-Sockel für 2.Oszi).
Wie kann ich denn mit einen seperaten Takt meine FF's
synchronisieren ohne die oben genannten Möglichkeiten zu
nutzen.
Also kann ich die Logik in der Art betakten,das ich ein
Signal auf irgendeinen IOB Block setze,mit dem wiederum
die CLB's betaktet werden können.
Irgendein Weg muss Xilinx dafür ja vorgesehen haben,ist ja nichts
ausgefallenes eine Schaltung von aussen zu synchronisieren
und die Möglichkeit über den SMA connector besteht ja nur
beim Starter Kit Board.

Vielen Dank im voraus
Sebastian

von John-eric K. (mockup)


Lesenswert?

Hy.
Eine Möglichkeit wäre, dein äußeres Taktsignal mit dem 50Mhz tackt zu 
Syncronisieren und das dann als enable signal nutzen. du könntest dann 
auf eine flanke triggern und dann würde es gehen.

so ungefähr
============
signal clk_außen_1, clk_außen :std_logic;

if rising_edge(clk_50MHz) then
  --syncronisieren
  clk_außen_1  <= clk_außen;
  clk_außen_2  <= clk_außen1;

  if clk_außen_2 = '0' and clk_außen_1 = '1' then -- steigende Flanke

   dein code

  end if;


  -- oder
  if clk_außen_2 = '1' and clk_außen_1 = '0' then -- fallende Flanke

   dein code

  end if;
end if;

===========

ist dann möglich, wenn das äußere Tacktsignal langsamer als das interne 
ist!!!

mfg

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.