[elektro] FPGA nagyon kezdo kerdesek

Zoltán Radó levlista at maxcore.hu
Sat Nov 14 00:09:32 CET 2015


Az FPGA-nak nincs olyanja, hogy reset.

Alapvetően az FPGA-kat szinkron rendszerek megvalósítására tervezték, 
tehát minden regiszter egy (vagy több) órajel le vagy felfutó élénél 
tárolja el az elötte lévő kombinációs hálózat aktuális eredményét.
A legtöbb esetben nem mindegy, hogy melyik regiszter milyen állapottal 
kezd. Ezért szükséges egy "reset" jel. Ezt neked kell megvalósítani a 
kódban és nem szerencsés az FPGA "kezdeti" értékére hagyatkozni. 
Tapasztalataim szerint (meg mintha egyszer olvastam is volna, de lehet 
csak egy fórumban) a Xilinx-nál alapértelmezetten 0 értékű minden 
regiszter és asszem nem definiálható - de ezt ne vedd készpénznek.

A regisztereknek, vannak aszinkron Set, illetve Reset bemenetei. Hogy 
ezeket használod-e vagy nem, az rajtad és a megvalósított kapcsolástól 
függ. (Szinkron vagy asszinkron reset.)
Szinkron esetben a kombinációs hálózatba "integrálódik" a reset 
feltétel, ami csökkenti a maximális elérhető órajel frekvenciát. 
Asszinkron esetben egyszerűbb a kombinációs hálózat, de figyelni kell 
arra, hogy a reset jel (terjedési idejét is figyelembe véve minden 
regiszterre figyelve) az órajel aktív éléhez képest betartsa az előírt 
időket. (Hazard jelenségek elkerülése végett)
(Ez a döntés egyébként a fórumokat olvasva néha hitvitának tűnik.)

Én kezdőként asszinkron resettel teljesen jól elvoltam. Kezdőként 
érdemes szinte az összes regiszternek értéket adni a reset jelre. - sok 
szívástól megóvod magad.

Ebben találsz kód mintákat:

http://www.sunburst-design.com/papers/CummingsSNUG2003Boston_Resets.pdf

Z.




2015-11-12 22:51 keltezéssel, Gergely Vakulya írta:
> Udvozletem!
>
> Kozben felmerultek ujabb kerdesek. Mi hatarozza meg egy FPGA
> regisztereinek allapotat reset utan? En olyasmit olvastam, hogy kezdo
> erteket nem lehet nekik adni, vagyis lehet, csak nem szintetizalhato.
> Akkor erre milyen formaban van lehetoseg?
>
> 73/DX
> HA4UC Gergo
>
> -----------------------------------------
>            elektro[-flame|-etc]
>



More information about the Elektro mailing list