Sisällysluettelo:

Cordic -algoritmi VHDL: n avulla: 4 vaihetta
Cordic -algoritmi VHDL: n avulla: 4 vaihetta

Video: Cordic -algoritmi VHDL: n avulla: 4 vaihetta

Video: Cordic -algoritmi VHDL: n avulla: 4 vaihetta
Video: FPGA 19 - AMD Xilinx VHDL CORDIC Sine/Cosine generator 2024, Marraskuu
Anonim

Kirjoittanut AmCoderhttps://www.linkedin.com/in/mitu

Synkronisen FIFO: n, LIFO/Stackin suunnittelu Verilogissa
Synkronisen FIFO: n, LIFO/Stackin suunnittelu Verilogissa
Synkronisen FIFO: n, LIFO/Stackin suunnittelu Verilogissa
Synkronisen FIFO: n, LIFO/Stackin suunnittelu Verilogissa
Videoliitäntä FPGA: lla VGA: ta käyttäen
Videoliitäntä FPGA: lla VGA: ta käyttäen
Videoliitäntä FPGA: lla VGA: ta käyttäen
Videoliitäntä FPGA: lla VGA: ta käyttäen
Synkronisaattorit, kellotunnusten ylitys, kelligeneraattorit, reunanilmaisimet, paljon muuta - olennaiset säätöpiirit
Synkronisaattorit, kellotunnusten ylitys, kelligeneraattorit, reunanilmaisimet, paljon muuta - olennaiset säätöpiirit
Synkronisaattorit, kellotunnusten ylitys, kelligeneraattorit, reuna -ilmaisimet, paljon muuta - olennaiset säätöpiirit
Synkronisaattorit, kellotunnusten ylitys, kelligeneraattorit, reuna -ilmaisimet, paljon muuta - olennaiset säätöpiirit

Tietoja: Mitu Raj - vain harrastaja ja oppija - sirusuunnittelija - ohjelmistokehittäjä - fysiikan ja matematiikan harrastaja Lisätietoja AmCoderista »

## Tämä on Googlen suosituin linkki CORDIC ALGORITHM: n VHDL -toteutukseen sini- ja kosini -aallon luomiseksi ## Tällä hetkellä on olemassa monia laitteistotehokkaita algoritmeja, mutta niitä ei tunneta hyvin, koska ohjelmistojärjestelmät ovat hallitsevia monta vuotta. CORDIC on sellainen algoritmi, joka on vain joukko siirto- ja lisäyslogiikkaa, jota käytetään monenlaisten toimintojen laskemiseen, mukaan lukien tietyt trigonometriset, hyperboliset, lineaariset ja logaritmiset funktiot. Tämä on algoritmi, jota käytetään laskimissa jne. Näin ollen vain yksinkertaisia vaihtajia ja lisäyksiä käyttämällä voimme suunnitella laitteiston, jolla on vähemmän monimutkaisuus, mutta DSP: n teho, käyttämällä johdollista algoritmia. Siksi se voidaan suunnitella paljaana RTL -mallina VHDL: ssä tai Verilogissa ilman erillisiä liukulukuyksiköitä tai monimutkaisia matemaattisia IP -osoitteita.

Vaihe 1: VHDL ja Modelsim

Tässä sydämen algoritmi toteutetaan VHDL: n avulla sini- ja cose -aallon luomiseksi. Se voi tulostaa syöttökulman sinin ja kosinin erittäin tarkasti. Koodi voidaan syntetisoida FPGA: lla. Modelsim -mallia käytetään simuloimaan suunnittelua ja testipenkkiä.

Vaihe 2: VHDL -koodi suunnittelulle ja testipenkille

VHDL -koodi suunnitteluun ja testipenkkiin
VHDL -koodi suunnitteluun ja testipenkkiin

Binaarista skaalaustekniikkaa käytetään edustamaan liukulukuja.

Käy oheisten asiakirjojen läpi ennen koodin kirjoittamista.

Siirry läpi simuloimalla cordic_v4.vhd - Suunnittelu -Tulo on kulma 32 bittiä + merkkibitti; se voi käsitellä mitä tahansa kulmaa 0-+/- 360 astetta sisääntulon tarkkuudella 0,000000000233 astetta. Syötettäessä -> MSB on merkkibitti ja loput 32 bittiä edustavat suuruusluokkaa. tarkasti 0,00001526. Huomaa, että lähtö näytetään 2: n kohteliaisuusmuodossa, jos vastaava sini- tai cos -arvo on negatiivinen. Testb.vhd: n simulointi - suunnittelupenkki (1) Syöttökulmat ja vedon nollaus = '0'. Kahden simulointivaiheen jälkeen vedä palautus arvoon '1' ja "suorita kaikki". (2) Aseta simulaatioikkunassa sini- ja cos -signaalien säde desimaaliksi ja muotoksi> Analoginen (automaattinen). (3) Loitonna nähdäksesi aaltomuodon asianmukaisesti.

Vaihe 3: Liitetyt tiedostot

(1) cordic_v4.vhd - Suunnittelu. (2) testb.vhd - Suunnittelupenkki.

(3) Asiakirja siitä, miten pakottaa kulmatulot ja muuntaa binääriset tulokset.

Päivitys: NÄMÄ TIEDOSTOT OVAT SULJETTUJA, EI TOIMITETAAN ENÄÄ. KÄYTÄ TIEDOSTOJA SEURAAVASTA VAIHEESTA

Vaihe 4: Mini -Cordic IP Core - 16 -bittinen

Yllä olevan toteutuksen rajoitus on hidas, alhaisempi kellotaajuus, koska laskutoimitukset suoritetaan yhdessä kellosyklissä. Mini-Cordic IP Core- 16 Bit

- Kriittiset reitit jaettu useisiin sykleihin suorituskyvyn parantamiseksi.- Nopeampi- FPGA: n todistettu muotoilu syntetisoitu jopa 100 Mhz: n kelloon.- Enemmän aluetta optimoitu HDL: ssä, vähemmän laitteistoa.- Lisätty kuormitus- ja valmiustilasignaalit.- Ainoa haittapuoli on pienempi resoluutio verrattuna edellinen. Testipenkki:

täysin automatisoitu 0 - 360 asteen kulmatuloista

Liitetiedostot: 1) mini -cordic -päävdl -tiedosto 2) mini -cordic -testipenkki 3) Mini Cordic IP Core -opas 4) Asiakirja kulmien pakottamisesta ja tulosten muuntamisesta

Jos sinulla on kysyttävää, ota rohkeasti yhteyttä minuun:

Mitu Raj

seuraa minua:

sähköposti: [email protected]

### Latauksia yhteensä: 325 1.5.2021 asti ###

### Koodia muokattu viimeksi: 07.07.2020 ###

Suositeltava: