国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

孩子都能學會的FPGA:第二十課——用FPGA實現定點數的開方運算

這篇具有很好參考價值的文章主要介紹了孩子都能學會的FPGA:第二十課——用FPGA實現定點數的開方運算。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

(原創(chuàng)聲明:該文是作者的原創(chuàng),面向對象是FPGA入門者,后續(xù)會有進階的高級教程。宗旨是讓每個想做FPGA的人輕松入門作者不光讓大家知其然,還要讓大家知其所以然!每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊top_tb.bat文件就可以完成整個的仿真(前提是安裝了modelsim),降低了初學者的門檻。如需整個工程請留言(WX:Blue23Light),不收任何費用,但是僅供參考,不建議大家獲得資料后從事一些商業(yè)活動!

前面的定點數的乘法和除法運行,至少我們還是能列豎式進行計算,所以用FPGA實現還算簡單。但是對于本節(jié)要講的開方運算,我們好像在數學書本上沒有學習過如何進行計算。我們對于一些比較小的數的開方,我們可以根據乘法口訣大體推算出來,比如64=8*8,那64的平方根就是8,但是對于比較大的數,比如12345678這樣的數,我們很難張口就算出了。

定點數的平方根,還是由一些算法能夠實現的,我們以《基于FPGA的數字信號處理》[高亞軍 編著] 這本書上Restoring 算法為例進行設計。下面是書上手工計算一個定點數平方根的過程。

第一步:將被開方數由低位至高位每兩位分為一組;

第二步: 由高兩位06開始,對應的平方根為2,即Q(2)=2。將Q(2)左移1位并與6相減獲得部分余數 r2=2;

第三步:r2與D(3)D(2)合并構成 214,講Q(2)左移1位為4,根據[4Q(1)]xQ(1)≤214,確定Q(1)=4,并獲得部分余數r1=38;

第四步:r1與D(1)D(0)合并構成 3858 , [Q(2)Q(1)]左移 1 位為 48 , 根據[48Q(0)]xQ(0)3858確定Q(0)=7, 并獲得部分余數r0,此即為最終余數R。

可見,該算法是一種迭代的過程,每次迭代獲得平方根的某一位。這其實就是恢復余數(Restoring) 算法。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

上面是書上的原話,大家可以理解一下,這種方法用在10進制數的開方計算上還是挺麻煩的,主要是中間有乘法運算,比如4Q(1)48Q(0)。書上由10進制推導出2進制數據的開方運行,使用了Restoring算法和Non-Restoring 算法來求數據的平方根,中間還有一些公式的推導,看的比較眼花繚亂,有興趣的讀者可以好好的看一下。下面是Restoring算法的計算過程圖。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

書中還給出了被開方數為8bit 的開方運算電路結構,如下所示。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

其實二進制的開方運算非常簡單,根本不需要涉及乘法除法和加法,只需要減法就可以完成。將被開方數從低位到高位2位一組進行處理。二進制的2位只能是11,10,01,和00,其中11,10,01的平方根是01,00的平方根是00,從高位到低位進行判斷,假如當前是第k步,用前面所有步計算的平方根結果Q[n:k+1]連接01和當前的余數進行比較,來確定當前這一步的Q(k)是0還是1,如果Q(k)是1,減去當前結果的平方值;如果Q(k)是0,保持余數不變即可。

下面我們通過FPGA來實現8位無符號整數的開方運算。由于2位數進行1次計算,所以8位無符號整數的開發(fā)運算其實只需要4次計算就可以得出結果,如下定義的開方運算次數SQUARE_CNT=4。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

余數的運算如下所示,從高到底依次取余數的兩位和前面計算結果與01的連接進行比較,來確定余數是減去當前的的平方值還是保持不變。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

同余數的處理,來當前確定平方根的值到底是1還是0。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

最后完成計算后,將結果鎖存輸出即可。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

在仿真文件中產生隨機數,雙擊sim文件夾下面的top_tb.bat文件,完成功能仿真。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga

仿真結果如下所示,我們測試幾個數據42=6*6+7;232=15*15+7;92=9*9+11;結果都是正確的,FPGA設計實現的功能正常。

non-restoring開方算法,輕松入門FPGA,fpga開發(fā),fpga文章來源地址http://www.zghlxwxcb.cn/news/detail-768626.html

到了這里,關于孩子都能學會的FPGA:第二十課——用FPGA實現定點數的開方運算的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 孩子都能學會的FPGA:第十八課——用FPGA實現定點數的除法

    孩子都能學會的FPGA:第十八課——用FPGA實現定點數的除法

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月04日
    瀏覽(21)
  • 孩子都能學會的FPGA:第十課——UART通信增加CRC校驗

    孩子都能學會的FPGA:第十課——UART通信增加CRC校驗

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月05日
    瀏覽(20)
  • 孩子都能學會的FPGA:第三十一課——用FPGA實現SPI主機發(fā)送數據

    孩子都能學會的FPGA:第三十一課——用FPGA實現SPI主機發(fā)送數據

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月04日
    瀏覽(25)
  • 孩子都能學會的FPGA:第十六課——用FPGA實現IIR濾波器濾波

    孩子都能學會的FPGA:第十六課——用FPGA實現IIR濾波器濾波

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年01月21日
    瀏覽(22)
  • 孩子都能學會的FPGA:第八課——狀態(tài)機

    孩子都能學會的FPGA:第八課——狀態(tài)機

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年01月21日
    瀏覽(26)
  • 孩子都能學會的FPGA:第十二課——利用內存產生正弦波

    孩子都能學會的FPGA:第十二課——利用內存產生正弦波

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月03日
    瀏覽(18)
  • 孩子都能學會的FPGA:第九課——多字節(jié)數據的發(fā)送和接收

    孩子都能學會的FPGA:第九課——多字節(jié)數據的發(fā)送和接收

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月04日
    瀏覽(42)
  • 孩子都能學會的FPGA:第十一課——基于握手機制的跨時鐘域同步

    孩子都能學會的FPGA:第十一課——基于握手機制的跨時鐘域同步

    (原創(chuàng)聲明:該文是 作者的原創(chuàng) ,面向對象是 FPGA入門者 ,后續(xù)會有進階的高級教程。宗旨是 讓每個想做FPGA的人輕松入門 , 作者不光讓大家知其然,還要讓大家知其所以然 !每個工程作者都搭建了全自動化的仿真環(huán)境,只需要雙擊 top_tb.bat 文件就可以完成整個的仿真(前

    2024年02月04日
    瀏覽(17)
  • 網絡安全進階學習第二十課——CTF之文件操作與隱寫

    網絡安全進階學習第二十課——CTF之文件操作與隱寫

    ------ 當文件沒有文件擴展名,或者具有文件擴展名但無法正常打開時,可以根據識別到的文件類型進行修改文件擴展名,從而使文件能夠正常打開。 使用場景:不知道后綴名,無法打開文件。 格式: file myheart 這里就識別到是一個PCAP的流量包 ------ 通過WinHex程序可以查看文件

    2024年02月07日
    瀏覽(31)
  • 【正點原子FPGA連載】第二十七章 MDIO接口讀寫測試實驗 摘自【正點原子】DFZU2EG/4EV MPSoC 之FPGA開發(fā)指南V1.0

    【正點原子FPGA連載】第二十七章 MDIO接口讀寫測試實驗 摘自【正點原子】DFZU2EG/4EV MPSoC 之FPGA開發(fā)指南V1.0

    1)實驗平臺:正點原子MPSoC開發(fā)板 2)平臺購買地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套實驗源碼+手冊+視頻下載地址: http://www.openedv.com/thread-340252-1-1.html 在以太網通信中,設備之間的物理層鏈路均由PHY芯片(物理層芯片,本文指YT8521)建立。PHY芯片有一個配置接

    2024年02月09日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包