FPGA stability
Zoltán Radó
elektro1.zrado at axelero.hu
Sun Dec 25 19:57:44 CET 2005
Hali!
Legtöbbször a reset asszinkron. Persze ez nem zárja ki a szinkron
reset használatát se, vagy akár mindkettõjét. Érdemes mások forrásait
nézegetni. (Persze nem rögtön egy procit. :)
A FPGA-k világában minden eseményt egy órajelhez érdemes
szinkronizálni, mivel az FPGA felépítésébõl adódóan elõre nem
megállapítható, hogy két regiszter között mennyi a késleltetési idõ.
Ez csak a fordítás, illetve a huzalozás során dõl el.
Ha minden (egyszerüség kedvéért) mûveletet egy órajel felfutó (vagy
le) éléhez szinkronizálsz, és az órajelet úgy választod meg, hogy
annak periódusideje hosszabb legyen a regiszterek közt lévõ
kombinációs hálózatok legnagyobb késleltetéséhez képest, akkor egy
stabil szinkron logikai hálózatot terveztél.
Linket most hirtelen nem tudok.
Sok sikert és kellemes karácsonyt!
Zoli
hh> Sziasztok,
hh> Vmikor regebben a listan volt szo valami olyasmirol, hogy FPGA-nal mindent
hh> erdemes globalis orajelekhez szinkronizalni a stabilitas miatt.
hh> Sajnos toroltem mar ezeket a leveleket es nem emlexem mar pontosan rajuk.
hh> Volt vmi link is FPGA stabilitasrol. Meg tudnatok ezt megegyszer addni?
hh> A reset-et is globalis orajelhez erdemes szinkronizalni?
hh> vhogy, igy?:
hh> always begin
hh> if (posedge clk) begin
hh> if (oldReset==0 and reset==1) resetTask();
hh> else if (negedge clk) begin
hh> oldReset=rest;
hh> end
hh> vagy inkabb igy?:
hh> always @(posedge clk) begin
hh> if (reset) resetTask();
hh> Elore is koszi,
hh> hoyuka
More information about the Elektro
mailing list