Jak obliczyć sinus funkcja cosinus za pomocą FPGA?

N

nattawoot_s

Guest
Jak obliczyć sinus i funkcji consine za pomocą FPGA lub VHDL?
 
spróbuj wyszukać w google lub podobnych, o "CORDIC" algorytmy Powodzenia Lollo
 
Można używać tablicy look-up lub CORDIC algorytmu. Spróbuj wyszukiwania również w tym forum. Jeśli używasz @ ltera mają makro oceny, która implementuje CORDIC w sposób szeregowy lub równoległy. Bye
 
[Quote = nattawoot_s] W jaki sposób obliczyć sinus i funkcji consine za pomocą FPGA lub VHDL kodu? [/Quote] Jeśli używasz Xilinx, można użyć coregen do produkcji sine tablica cosinus. Nie jestem pewien, jak Altera działa prawidłowo, ale zakładam, że coś takiego również. Gunship
 
dla małych tabeli sinusa / cosinusa można użyć tablicy look-up, na bardziej precyzyjne wartości można używać CORDIC. CORDIC jest bardzo prosty w rzeczywistości, jeśli podejmują wszelkie liczby zespolonej, niech to będzie overal długości 1, a następnie, jeśli pomnożyć z innej liczby zespolonej o długości 1, to jest w rzeczywistości po prostu obraca się pierwszy. na przykład wziąć Z * e ^ ia, gdzie a jest kątem (niech to będzie 0) a ja to sqrt (-1); urojona i Z jest niezerowa stała. jest to liczba zespolona r. na rzeczywistych ax (cos + sin i) zasada-Eulera. a następnie, jeśli pomnożyć to e ^ ib, gdzie b jest również kąt (różną od zera, na przykład), otrzymasz Z * e ^ i (a + b). jak widać obróceniu wektora Z całym centrum kąt b. : Idea: w związku z tym można zrobić sin / cos generator (ale musisz bardzo mały stolik wygląd - bardzo eficient metodą jest zasada kolejnych aproximation). resut jest precyzyjne, jak chcesz:) Za pomocą mnożnika rurociągu, bo potrzebujemy czterech mnożników (jeśli "to potokowym, można multipleksu wpisałeś danych, a następnie wynik Demultipleksacja)
 
Istnieją specjalne IP Core W Xilinx Core Generator. IMHO, najlepszym sposobem - look-up table - obliczenia dostarczają wielu komórek i powoli.
 
Czy chcesz obliczyć sinus dowolnego kąta. (0, pi / 2, pi, pi / 4 .. losowo) lub chcesz obliczyć sinus okresowych przyrostowe kąt. (0,0.01,0.02,0.03 .....) Który?
 
[Quote = nattawoot_s] W jaki sposób obliczyć sinus i consine funkcji za pomocą FPGA lub VHDL kod [/quote] Dla Synopsys użytkowników: Jeśli masz DesignWare Foundation Library (dw_2) licencję, można użyć DW02_sincos model. patrz załączony plik.
 
Xilinx ma IPcore nazwie CORDIC. To może być skonfigurowany jako grzech, cos arc tan, pierwiastek kwadratowy.
 
jeśli mogę użyć FPGA Xilinx, jaka jest maksymalna prędkość, którą można osiągnąć ... i ile zasobów zajmie ...
 
jeśli mogę użyć FPGA Xilinx i używać CORDIC algorytm, co jest maksymalna prędkość, którą można osiągnąć ... i ile zasobów zajmie ...
 
Dla CORDIC core w OpenCores następujące dane są dostępne: Rodzina urządzeń dostawcy zasobów Max użytkowania. Częstotliwość taktowania Altera ACEX EP1K50-1 2190lcells Xilinx Spartan-II 68MHz XC2S100-6 704slices 93MHz Maniac Samoloty
 
Jeśli chcesz "Roll Your Own" tutaj ciekawe PDF na CORDIC Algorytmy FPGA. Zawsze dobrze jest wiedzieć, dlaczego!
 
Chcę, aby zaimplementować funkcję, która zamieni kartezjański polarnych współpracy orinates pomocą IPcoder CORDIC w VHDL za pomocą Xlinx. mi pomóc
 

Welcome to EDABoard.com

Sponsor

Back
Top