Pagalba VHDL?

B

BGA

Guest
-------
Paskutinį kartą redagavo BGA 2003
m. gegužės 23
d. 21:03, edited 1 kartą iš viso

 
Jei aš suprantu teisingai norite atidėti signalą,
o ne krašto jis.Tada su savo reikalavimus atrodo beveik neįmanoma.Jums reikės veeeery ilgas registre keičiamas į vėlavimą 500us, kuriame yra 100000 laikrodžio ciklai savo pagrindinio laikrodžio 20MHz.Akivaizdu, kad FPGAs yra registre turtingas, bet ne tiek ...Be to, kad jis būtų programuojamosios jums reikės pasirinkti išėjimo iš reikalaujama registruotis, kas taip pat negali būti nežymus.

Jei norite atidėti tik krašto signalo tai yra kita istorija.

 
BGA rašė:

Man reikia atidėti skaitmeninės linijos tarp 0 ns ir 500us tikslumu 5ns.

Suma vėlavimas yra nurodytas į registrą.

Any help?
 
Hi ...Thanks for the replay.
I'll try to paaiškinti daugiau ...
Ką aš turiu daryti tai, ką Gunship writed į postą.Norėdami išspręsti šią problemą atminties I'm thinking saugoti įėjimo signalo taip:
Man reikia naudoti 2 skaitikliai clocked ne 200MHz (pavadintas Counter1 ir Counter2).
-Pirmasis auga krašto įvesties signalas naudojamas pradėti Counter1;
-Kai kritimo krašto atvykęs, jis nustoja Counter1 ir leiskite pradėti Counter2.
-Vertė Counter1 yra saugomi atmintyje.
-Kai šalia auga krašto įvesties signalas aptinkamas, Counter2 yra sustabdytas ir Counter1 yra pradėtas.
-Vertė Counter2 yra saugomi.
....ir pan.
Pateikti išvesties signalas, reikia atlikti nuoseklius priėjimą prie apskrito buferio ir padėkite vertę į kitus du skaitikliai (Counter3 ir Counter4).
Terminalas skaitliukas signalo Counter3 naudojamas Nustatyti FF; terminalo skaitliukas Counter4 naudojamas Išvalyti FF.

Su savybes signalo įvesties gauti, reikia mažiau nei 1000 elementas yra 32 bitų atminties (tikriausiai 1000 * 16 bitų).

Vėlavimo D yra D = N * 5ns kur N yra saugomi registre ir gali pakeisti per vėlavimą procese.

Dabar problema yra ta, kad aš ne kvalifikuotų VHDL ir pagalbos reikalingus įgyvendinti šią mašiną į FPGA.
Can U help me?

 
Aš tikrai nežinote, ką norite daryti ..
Bet tai gali padėti, jei norite atidėti signalą į FPGA ..kuris FPGA naudojate?Jei tai Xilinx virtex / SpartanII, jūs galite įgyvendinti tai SRL16Es.

Kaip žinote iš pagrindinių elementų yra FPGA yra Skaitytis lentelėje.Xilinx FPGAs naudoti 4 įvesties ieškoti stalo, ir vėl aš kalbu apie Xilinx virtex Šeimos FPGAs.Į virtex FPGA, galite konfigūruoti Lut kaip registre keičiamas su 16 lygiais vėlavimą.Tokiu būdu jūs ne atliekų logikos išteklių luste.

Jei naudojate Xilinx įtaisai ..ypač virtex šeimos įtaisai ...ir I dont know

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Šypsotis" border="0" />Leiskite man žinoti, jei norite gauti daugiau informacijos apie šią SRL16Es

Hope this helps
Kode

 
Let's pabandyti taip:
1: gauti singal dėl augančio krašto, kad norite atidėti
2: naudoti 200M Dažnis [T = 5ns], (gali galima iš FPGA)
3: naudokite skaitiklis, ilgis yra 17 bent

kai aptinkama signalo kylančios kraštą, galite pradėti skaitiklis nuliui, nustatyti išvesties signalo su viena ta pačia time.as metu vyksta, kad couter toliau didės, kol pasieks savo tikslą tik nustatyti., tada disactive į išvesties signalas, abtain kritimo krašto.

tačiau problema yra ta, kad produkcija Jitter bus per 5ns.

 
Problema yra ta, kad per uždelsimo laikas, signalas, kad vėlavimas gali turėti daugiau nei vieną didėja ir mažėja krašto.Signalą galite pakeisti tarp 0 ir 1 be ypatingos taisyklės.

 

Welcome to EDABoard.com

Sponsor

Back
Top