Miten luodaan PI / 4 vaiheen viivettä?

H

hbsustc

Guest
Hei, kaikki. Olen vanha Atera FPGA, ei ole mitään PLL sitä. Nyt minulla on referenssikello noin 10MHz, ongelma on, miten tuottaa toiselle referenssikello jonka vaihe johtaa entinen 45 astetta, tai jäljessä entisen 45 astetta? Näyttää siltä, minun on käytettävä koodia toteuttamaan sitä. Kiitos etukäteen!
 
Näen kaksi vaihtoehtoa, mikäli sinulla ei ole muita kelloja. 1. Luo noin 12,5 NS viivytystä logiikka-solu viive linjan. 2. Suunnittele rengas oskillaattorin kellotus digitaalinen viive piiri. Molemmissa tapauksissa synteesi attribuutit on velvollisuus estää HDL työkalu poistamasta viivyttää logiikka soluja. Vastaava työkalu käsikirjat kertovat, miten.
 
Kiitos ehdotuksista, FVM, pelkään sen suorituskyky on heikentynyt seuraavat kohdat: 1. Jos Logic-cell viive line, sen viivästyminen ei ole tarkka, se vaikuttaa jännitelähteen ja lämpötilan. 2. 3-portainen rengas oskillaattori toteutua FPGA näyttää ole mahdollista, se on hieman epävakaa pitkän aikavälin käyttöä. Tänään iltapäivällä, yritin käyttää seuraavia tapa toteuttaa PI / 4 lyijyä tai lag vaihe viive: 1. Käytä 10MHz * 8 = 80MHz kello käynnistää yksi harmaa Code laskuri (yritin käyttää Binary counter Ensinnäkin, mutta glitch perseestä) 2. Tuotos Gray koodi laskuri on 1, 3, 2, 6, 7, 5, 4, 0 säännöllisesti, joten kirjoitan jotain, jotta moduuli tuottaa pulssin, kun ulostulo = 1 tai teho = 7. (Generoi muut 2 pulssia kun lähtö = 3 tai 5 ja lähtö = 2 tai 4) 3. Käytä pulssit laukaista taajuus devider. Joten se luo kolme kelloviestien jonka vaihe on PI / 4 lyijyä, 0, pii / 4 viiveellä.
 
Kyllä, lisäksi kellon mahdollistaisi tarkemman ratkaisun. Mutta se on viive vaihtelu / epävarmuus yhden jakson suurtaajuus kellon, jos molemmat kellot eivät liity toisiinsa. Se olisi paljon korkeammalla taajuudella moninkertaistaa vähentää epävarmuutta hyväksyttävän määrän. Viive linja voi saavuttaa korkeampi vaihe accuray kuin liity lisätoiminnon tehonsyöttöä kellon, joka vähemmällä vaivalla.
 
Kyllä, olet oikeassa. Reaaliaikainen viiveellä LE puskureita ei voi saatua ajoitus simulointi, normaalisti se on pienempi kuin simuloitu arvo. Joten minun täytyy ohjelma siru ja mitata. Kiitos!
 

Welcome to EDABoard.com

Sponsor

Back
Top