看板 Programming 關於我們 聯絡資訊
目前我是用ADC來擷取外部訊號 if Khertz_800'event and Khertz_800= '1' then --800K的頻率擷取一次 ar1(cnt1) <= ("0000"& ADC2IN(12 downto 1)); cnt1 <= cnt1 + 1; if cnt1 = 20 then 這邊開始做運算,然後驅動另一個cnt 但是下面存的直相當多所以我是用變數來存 xpoint := data1(32 downto 1);--data1是我在這個cnt內運算的結果 cnt1<= 1; cnt2<= cnt2 + 1; if cnt2 = 1000 then 這邊開始做相當多的運算 開根號與加減乘除 最後將我所求得的值丟至LCM觀看 LCM <= data2;--data2是最後運算的結果 cnt2<= 1; end if; end if; end if; 我想請教的是,我後面一大串的運算 能夠在我cnt2變為1之前執行完成嗎? 因為我用MATLAB跑的結果跟用VHDL跑出來的結果差異蠻大的 想說是不是運算時間拖的過長,導致結果錯誤 如果有人有寫過類似程式 也麻煩請提供我一些意見 謝謝 ps:因為程式有點冗長,所以我盡量簡化 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.164.75
proach:為什麼你想用電路開根號?改用MCU怎樣? 114.43.195.164 07/06 17:51
ga006736:我是用FPGA的實驗版去做的 203.68.164.75 07/07 10:50
ga006736:我想版子上的功能應該可以應付我的問題 203.68.164.75 07/07 10:52
MOONRAKER:我第一次聽說有內建開根號的FPGA 59.120.168.228 07/07 14:54
ga006736:我是用xilinx裡面的IP去做開根號運算的 203.68.164.75 07/07 16:11