FPGA a timing constraints
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Pátek Březen 6 14:22:04 CET 2015
Aha, to jsem nejak cekal a napadlo me to, nastavit ta omezeni pro
zpozdeni - to se dela v .sdc souboru? Nejaky trivialni tutorial nemuzu
najit.
Ten problem frekvenci hodin by nemel mit vliv na funkci, jen signal
reset prechazi z jedne casti do druhe a je jedno jestli to bude ted nebo
v pristim cyklu (tedy do vsech 4 vzorkovacich ale tam uz je to zas
stabilne synchronizovano spolecne s adresou pro pamet), jinak je mezi
nimi dvouportova pamet a vycitat se bude v zastavenem stavu - cili
pobezi vzorkovani co bude plnit pamet cyklicky a trigger spusti odpocet
kdy se zvoleny pocet cyklu pred naplnenim pameti vzorkovani zastavi. Pak
se vycte, UART uz mi hezky funguje ;-) a to vycitani prave bezi na 60MHz
(ale je to fuk, jen jsem si tak spocital ze mi vyjde celkem hezky delic
pro 115200 Bd)
Dne 6. 3. 2015 v 14:13 Jan Smrz napsal(a):
> odpovedi nize.
>
> On 03/06/2015 01:57 PM, Jaroslav Buchta wrote:
>> Poprosil bych o nasmerovani - dejme tomu, ze mam 8 vstupnich pinu a
>> zalezi mi na tom, aby na registry prisel signal co nejvic soucasne -
>> nevic je kazdy pin pripojen na 4 registry, celkove by to melo byt co
>> nejmin rozhozene.
>> Jde/jakym zpusobem toto nastavit jako omezeni pro syntezu?
> Toto neni ani tak omezeni pro syntezu, ale pro place&route. Neznam
> nastroj, ktery by umoznoval definovat stejna zpozdeni, vetsinou se
> nejdrive zjisti prumerne zpozdeni a pak se nastavi min/max rozsah pro
> kazdy pin. Moc si od toho neslibujte. Moznosti FPGA jsou v tomto
> ohledu omezene.
>
>> Nasel jsem spoustu tutorialu ale samy hodinovy signal a je to hrozne
>> slozite... Jaka klicova slova hledat?
>
>> Idea je takova, ze to bude logicky analyzator a vzorkovat se bude
>> hodinami posunutymi o 90st zatim 100MHz, coz by melo ve vysledku
>> fungovat jako vzorkovani 400MHz (asi by to slo jeste i cca 2x zrychlit)
>>
>> Jeste druha otazka - mam 4x hodinovy signal 100MHz rozfazovany po
>> 90st (c0,1,2,3) a signal 60MHz (c4) z tehoz PLL.
>> Signal reset je synchronizovan nejdrive c4 pro zakladni logiku a pak
>> c3 pro vzorkovani. Pocitam s tim, ze se to bud stihne nebo nestihne a
>> signal tedy pro to vzorkovani beru jako asynchronni.
>> Je ovsem hlasen warning: Critical Warning (332148): Timing
>> requirements not met
> 100MHz a 60MHz jsou nesoudelne, takze analyza zjisti, ze existuje
> takove vzajemne posunuti hodin, kdy signal nestihne z vystupu registru
> prejit do druheho.
> Mimochodem, to vam u logickeho analyzatoru nevadi, ze u tohoto
> prechodu vam bude generovat chybne signaly? Zde se pouziva FIFO, ktere
> se postupne vybira. Budete ale muset nejak snizit rychlost dat
> (paralelizaci apod), abyste stihal data odebirat.
>
>> V simulaci to funguje dle ocekavani, nenapada me jina moznost jak
>> synchronizovat signaly mezi obvody s ruznymi hodinami, vzdycky se tam
>> muze takova situace vyskytnout a ty warningy se ignoruji nebo nejak
>> osetruji?
>> Kdyz nastavim 100 a 50 MHz tak je vse OK, hodiny maji stale stejny
>> vyhovujici odstup.
> Viz vyse.
>
>
>
> J.S.
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
---
This email has been checked for viruses by Avast antivirus software.
http://www.avast.com
Další informace o konferenci Hw-list