<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

優秀的Verilog/FPGA開源項目-浮點運算器(FPU)介紹

OpenFPGA ? 來源:OpenFPGA ? 2024-04-26 11:27 ? 次閱讀

介紹

浮點運算器(英文:floating point unit,簡稱FPU)是計算機系統的一部分,它是專門用來進行浮點數運算的(CPU中也叫ALU)。

現在很多高端處理器都有自己的FPU,用來做一些特殊的運算,雖然早期的單片機是沒有FPU的,但是經過十幾年的發展,現在的單片機都有屬于自己的FPU,雖然其功能不是特別強大,但是最夠其單芯片應用環境下的運算使用。

目前簡單的FPU的運算有加減乘除和開方。復雜些還可以計算超越函數,例如指數函數或者三角函數,盡管對大多數現在的處理器,這些功能都由軟件的函數庫完成。

接下來介紹一些FPU項目。

?

https://github.com/dawsonjon/fpu

?

https://opencores.org/projects/fpu100

d2042826-0373-11ef-a297-92fbcf53809c.png

這是GitHub上排名比較靠前的FPU開源項目,下面是他的介紹:

Verilog 中可合成的 IEEE 754 浮點庫。每個算術模塊接受兩個 32 位數據流 a 和 b,并輸出一個數據流 z。

碼流接口在下面手冊中有描述:

?

https://github.com/dawsonjon/fpu

提供的運算:

提供除法器、乘法器和加法器

提供 float_to_int 和 int_to_float

支持非正規數

區域優化

超過 100,000,000 個測試向量(每個函數)

?

https://opencores.org/projects/fpu

這是OpenCores上的開源項目:

描述

這是一個單精度浮點單元。它完全符合 IEEE 754 標準。它目前可以執行加/減、乘/除 操作,以及整數到浮點數和浮點數到整數的轉換。它支持四種舍入模式:舍入到最近的偶數、舍入到零、舍入到+INF和舍入到-INF。

現在還有一個單獨的 FP 比較單元。它位于 fpu/fcmp 目錄中。

兼容性

FPU 100% 符合 IEEE 754。已經跑了超過 1400 萬測試向量,使用 John R. Hauser 的 SoftFloat 庫生成,可在以下網址找到:http ://www.jhauser.us/arithmetic/SoftFloat.html 。

性能

單周期執行

4 階段流水線

?

https://github.com/danshanley/FPU

這也是符合IEEE 754的FPU項目,相關的測試腳本也很完善。

?

https://github.com/pulp-platform/fpu

d232c9ce-0373-11ef-a297-92fbcf53809c.png

這是專門為pulp-platform(基于RISC-V的SoC平臺)制作的FPU,是經過流片驗證的。

關于pulp-platform的介紹請查看《RISC-V項目介紹》及下方的官方網址:

?

https://pulp-platform.org//

d25a7d2a-0373-11ef-a297-92fbcf53809c.png

?

https://github.com/cnrv/CNRV-FPU

?

https://github.com/jm2000/RISCV-FPU

這也是專門為RISC-V定制的FPU項目。

?

https://github.com/freecores/double_fpu

d28d0cea-0373-11ef-a297-92fbcf53809c.png

這是Xilinx器件實現的雙精度FPU,使用了FPGA內部的DSP資源。

?

https://github.com/GSejas/Dise-o-ASIC-FPGA-FPU

這也是Xilinx器件實現的FPU,既可以在Xilinx FPGA上使用,也可以作為ASIC設計一部分。

?

https://github.com/SeanZarzycki/openSPARC-FPU

d2abbb2c-0373-11ef-a297-92fbcf53809c.png

這個從標題就能看出來,這是專門為openSPARC這一CPU設計的FPU。

d2c42504-0373-11ef-a297-92fbcf53809c.png

openSPARC的項目地址:https://www.oracle.com/servers/technologies/opensparc-overview.html

也是開源的CPU。

d2fbc8a6-0373-11ef-a297-92fbcf53809c.png

?

https://github.com/YutaPic/FPU

d31a1d10-0373-11ef-a297-92fbcf53809c.png

這也是在Xilinx FPGA上驗證的FPU,下面是在KCU105開發板上運行的性能:

d3302434-0373-11ef-a297-92fbcf53809c.png

總結

今天只介紹了幾個FPU的項目,在SoC盛行的時代,有助于集成到你的系統里,同時一些運算的Verilog代碼也是值得參考的。運算和數字電路設計,這里推薦一個名為《Computer Arithmetic - Algorithms and Hardware Designs》的PDF,關于這些運算的理論知識都可以在這里學到。



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    18406

    瀏覽量

    222813
  • 單片機
    +關注

    關注

    6005

    文章

    44013

    瀏覽量

    621902
  • 乘法器
    +關注

    關注

    8

    文章

    192

    瀏覽量

    36608
  • FPU
    FPU
    +關注

    關注

    0

    文章

    38

    瀏覽量

    21028
  • 浮點運算器
    +關注

    關注

    0

    文章

    4

    瀏覽量

    5701

原文標題:優秀的 Verilog/FPGA開源項目介紹(十九)- 浮點運算器(FPU)

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    verilog語音實現浮點運算

    Verilog可以通過使用IEEE標準的浮點數表示來實現浮點運算。下面是一個基本的Verilog模塊示例,展示了如何進行加法、乘法和除法等常
    發表于 03-25 21:49

    基于FPGA的實時互相關運算器

    基于FPGA的實時互相關運算器對無源雷達的直通信號和反射信號進行互相關運算可以檢測目標是否存在。本文介紹了基于FPGA流水線操作的陣列
    發表于 09-19 09:25

    FPGA verilog浮點運算

    求用verilog實現浮點運算的資料,謝謝
    發表于 12-17 21:15

    一位整數立方運算器!大神賜教???!

    verilog 語言寫個 一位整數立方運算器 的程序 ??!
    發表于 06-07 10:41

    求一種在FPGA上實現單精度浮點加法運算的方法

    介紹一種在FPGA上實現的單精度浮點加法運算器,運算器算法的實現考慮了FPGA器件本身的特點,算
    發表于 04-29 06:27

    FPU settings浮點運算單元設置

    void SystemInit(void){/* FPU settings 浮點運算單元設置,此處一般不執行
    發表于 08-23 06:20

    運算器,運算器的作用和原理是什么?

    運算器,運算器的作用和原理是什么? 運算器:arithmetic unit,計算機中執行各種算術和邏輯運算操作的部件。運算器的基本操作包括
    發表于 03-24 17:01 ?3.1w次閱讀

    浮點運算浮點運算器

    浮點運算浮點運算器 浮點加減法的運算步驟 設兩個浮點
    發表于 04-15 13:42 ?6559次閱讀

    基于FPGA高精度浮點運算器的FFT設計與仿真

    提出一種基2FFT的FPGA方法,完成了基于FPGA高精度浮點運算器的FFT的設計。利用VHDL語言描述了蝶形運算過程及地址產生單元,其仿真
    發表于 12-23 14:24 ?46次下載
    基于<b class='flag-5'>FPGA</b>高精度<b class='flag-5'>浮點</b><b class='flag-5'>運算器</b>的FFT設計與仿真

    利用FPGA技術能更方便靈活設計出浮點運算器

    FPGA(現場可編程門陣列)技術的理論研究和實際應用正越來越受到人們的重視。FPGA 技術常常使一些原來比較難解決的技術瓶頸得以輕松實現,從而使產品的開發周期大為縮短,性能價格比大幅提高。運算器
    發表于 07-14 09:50 ?3322次閱讀
    利用<b class='flag-5'>FPGA</b>技術能更方便靈活設計出<b class='flag-5'>浮點</b><b class='flag-5'>運算器</b>

    優秀Verilog/FPGA開源項目介紹(一)

    優秀Verilog/FPGA開源項目介紹(一)-PCIe通信 今天開始會陸續
    的頭像 發表于 10-11 15:31 ?8580次閱讀
    <b class='flag-5'>優秀</b>的 <b class='flag-5'>Verilog</b>/<b class='flag-5'>FPGA</b><b class='flag-5'>開源</b><b class='flag-5'>項目</b><b class='flag-5'>介紹</b>(一)

    優秀Verilog/FPGA開源項目之 USB通信

    優秀Verilog/FPGA開源項目介紹(五)- USB通信 USB是我們生活中非常非常常見
    的頭像 發表于 11-02 14:54 ?8043次閱讀
    <b class='flag-5'>優秀</b>的 <b class='flag-5'>Verilog</b>/<b class='flag-5'>FPGA</b><b class='flag-5'>開源</b><b class='flag-5'>項目</b>之 USB通信

    Verilog/FPGA開源項目介紹

    優秀Verilog/FPGA開源項目介紹(七)- CAN0、CAN總線
    的頭像 發表于 11-17 11:19 ?2796次閱讀

    浮點運算單元FPU能給電機控制帶來什么?

    編者按:在計算領域,例如三角函數以及時域頻域變換通常會用到浮點運算。當CPU執行一個需要浮點運算的程序時,有三種方式可以執行:軟件仿真器(浮點
    發表于 12-04 13:36 ?19次下載
    <b class='flag-5'>浮點</b><b class='flag-5'>運算</b>單元<b class='flag-5'>FPU</b>能給電機控制帶來什么?

    優秀的IC/FPGA開源項目:偽紅外圖像處理

    優秀的IC/FPGA開源項目》是新開的系列,旨在介紹單一項目,會比《
    的頭像 發表于 06-09 09:42 ?1502次閱讀
    <b class='flag-5'>優秀</b>的IC/<b class='flag-5'>FPGA</b><b class='flag-5'>開源</b><b class='flag-5'>項目</b>:偽紅外圖像處理
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>