吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA常用運(yùn)算模塊-乘加器

CHANBAEK ? 來(lái)源:FPGA and ICer ? 作者:Vuko ? 2023-05-22 16:17 ? 次閱讀

本文是本系列的第三篇,本文主要介紹FPGA常用運(yùn)算模塊-乘加器,xilinx提供了相關(guān)的IP以便于用戶進(jìn)行開(kāi)發(fā)使用。

乘加器

乘加器核提供使用DSP片的乘加實(shí)現(xiàn)。 它執(zhí)行兩個(gè)操作數(shù)的乘法,并將全精度乘積加(或減)到第三個(gè)操作數(shù),執(zhí)行P = C +/- A * B的操作。 乘加器模塊對(duì)有符號(hào)或無(wú)符號(hào)數(shù)據(jù)進(jìn)行操作。 該模塊可以流水線化。 支持二補(bǔ)符號(hào)和無(wú)符號(hào)操作。 支持從1到52位無(wú)符號(hào)或2到53位有符號(hào)的乘數(shù)輸入和從1到105位無(wú)符號(hào)或2到106位有符號(hào)的加減操作數(shù)輸入。 可選時(shí)鐘啟用和同步清除。

乘加器IP在許多配置中比單獨(dú)的乘和加操作更有效,因?yàn)樗褂肈SP48原語(yǔ)。 可以在許多應(yīng)用程序中使用這個(gè)IP,特別是那些基于多項(xiàng)式算法的應(yīng)用程序,如FIR和IIR實(shí)現(xiàn)。

IP核圖示以及端口介紹

wKgZomRrJLaAea4nAAB53770uC4937.jpg

Name I/O Description
A[N:0] Input A輸入(乘法操作數(shù)1)
B[M:0] Input B輸入(乘法操作數(shù)2)
C[L:0] Input C輸入(加減操作數(shù))
PCIN Input 級(jí)聯(lián)輸入
SUBTRACT Input 控制加/減操作(1=減法,0=加法)
CE Input 時(shí)鐘使能 (高有效)
CLK Input 時(shí)鐘信號(hào),上升沿有效
SCLR Input 同步復(fù)位,高有效
PCOUT Output 輸出級(jí)聯(lián)
P[Q:0] Output 輸出端口

操作指南

流水操作

乘法器核心考慮了兩種不同的延遲路徑; 一個(gè)是從A和B輸入到P輸出,另一個(gè)是從C/PCIN輸入到P輸出。 這些延遲被定義為A:B - P延遲和C - P延遲。

這些延遲只能采用兩個(gè)值:0 表示無(wú)延遲或 -1 表示最大/最佳延遲。 如果這兩個(gè)延遲中的任何一個(gè)指定為 -1,則它們都被視為 -1; 對(duì)于完全組合的設(shè)計(jì),兩者都必須設(shè)置為 0。

級(jí)聯(lián)的PCIN端口的使用也會(huì)影響延遲。

不用級(jí)聯(lián)輸入:

wKgaomRrJLaAQyl4AAEITdobYbQ991.jpg

使用級(jí)聯(lián)輸入:

wKgaomRrJLaAN2v3AAD2uworIFk779.jpg

下圖顯示了乘加器的內(nèi)部結(jié)構(gòu),在內(nèi)部相當(dāng)于引用了一個(gè)乘法器和一個(gè)加減法器。 從該結(jié)構(gòu)中可以清楚的看出,A:B - P 延時(shí)和C - P延時(shí)路徑。

poYBAGRrJOyAb31mAAHV7sGFnjQ821.png

數(shù)據(jù)調(diào)整

當(dāng)傳遞給IP輸入時(shí),所有輸入都是右對(duì)齊的。 必須設(shè)置輸入的正確 LSB 或 MSB 填充或符號(hào)擴(kuò)展(相當(dāng)于二進(jìn)制小數(shù)點(diǎn))。

在乘法加法器中,乘法器輸出沒(méi)有截?cái)嗷蛏崛耄?這是一個(gè)完整的精確結(jié)果。 C 輸入被添加到乘積中。 下面的例子實(shí)現(xiàn)了切片操作的功能。 切片選取輸出的0到11位。

wKgaomRrJLaAdrVhAAHW_asJUzk957.jpg

向量相乘的例子

圖3-4(單DSP片實(shí)現(xiàn))和圖3-5(多DSP片實(shí)現(xiàn))實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的矢量乘法。在3-4圖中,如果使用單DSP片實(shí)現(xiàn)向量相乘,則按照該圖示連接進(jìn)行實(shí)現(xiàn)。采用級(jí)聯(lián)操作,將級(jí)聯(lián)是輸入輸出相互連接。此時(shí)不能進(jìn)行設(shè)置C的輸入。

wKgaomRrJLaAC43IAAE5csqnZZE182.jpg

在3-5圖中,如果使用多DSP片實(shí)現(xiàn),則按照該圖示連接進(jìn)行實(shí)現(xiàn)。此時(shí)可以進(jìn)行設(shè)置C的輸入,級(jí)聯(lián)操作通過(guò)連接P和C端相互連接。

wKgZomRrJLaAJ1zcAAE4rW3GYo8596.jpg

乘加器IP配置

在乘加器IP配置界面,可以對(duì)輸入輸出的位寬進(jìn)行配置,以及相關(guān)IP的配置。

wKgZomRrJLaARHOuAAGyvsbZkf4127.jpg

A/B Input Width :設(shè)置端口A或者B輸入的寬度。有效的范圍是1 ~ 52無(wú)符號(hào)和2 ~ 53有符號(hào)。默認(rèn)值為18。該值在IP中自動(dòng)設(shè)置,可以手動(dòng)設(shè)置。

C Input Width :設(shè)置端口C(加/減操作數(shù))輸入的寬度。有效的范圍是1到105無(wú)符號(hào)和2到106有符號(hào)。默認(rèn)值為48。該值在IP中自動(dòng)設(shè)置,可以手動(dòng)設(shè)置。

A/B/C Input Type :設(shè)置端口A、B 、C數(shù)據(jù)的類型。0表示有符號(hào),1表示無(wú)符號(hào)。默認(rèn)值為0。該值在IP中自動(dòng)設(shè)置,可以手動(dòng)設(shè)置。

Output MSB / Output LSB :設(shè)置輸出的切片位寬范圍。

Use PCIN :當(dāng)該參數(shù)設(shè)置為1時(shí),使用PCIN 端口。 PCIN 端口是 加法器/減法器操作數(shù)的級(jí)聯(lián)輸入端口。設(shè)置為0時(shí),PCIN 端口為 忽略。設(shè)置為 1 時(shí),C 輸入寬度限制為 48 位。

Sync Control CE Priority :此參數(shù)控制 SCLR和CE信號(hào)的優(yōu)先級(jí)當(dāng)該信號(hào)為0時(shí),Sync Control CE Priority。當(dāng)該信號(hào)為1時(shí),SCLR 僅在 CE 為高電平時(shí)有效。這默認(rèn)值為0。

A:B - P Latency : A、B端口到輸出端口P的時(shí)延。 取值如下: -1, 0。 默認(rèn)值為-1。

C - P Latency :從 C 或 PCIN 端口到輸出端口 P 的延遲。 取值如下: -1, 0。 默認(rèn)值為-1。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    554

    文章

    8059

    瀏覽量

    350415
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21796

    瀏覽量

    605997
  • Xilinx
    +關(guān)注

    關(guān)注

    71

    文章

    2171

    瀏覽量

    122132
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    331

    瀏覽量

    49635
  • 乘加器
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    6048
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于FPGA的實(shí)時(shí)互相關(guān)運(yùn)算器

    600m,則每一時(shí)刻需要計(jì)算256個(gè)互相關(guān)值。如果窗口T取32,采樣模塊的采樣頻率F設(shè)為1MHz,互相關(guān)運(yùn)算器運(yùn)算能力需要達(dá)到F×T×R=500kHz×32×256=4GHz復(fù)數(shù)
    發(fā)表于 09-19 09:25

    基于改進(jìn)的CORDIC算法的FFT復(fù)及其FPGA實(shí)現(xiàn)

    ,所以CORDIC算法的移位、加減法運(yùn)算和流水線結(jié)構(gòu)更容易在FPGA上實(shí)現(xiàn)。本文在Altera公司的QuartusⅡ7.2軟件環(huán)境下使用VHDL,利用上述各種算法設(shè)計(jì)了16 bit寬的FFT復(fù)
    發(fā)表于 07-11 21:32

    stm32f407進(jìn)行一次32*32的運(yùn)算需要多少ns

    官方給出的只需要一個(gè)指令周期,按這個(gè)說(shuō)也就是6ns。而我自己測(cè)試的是20多ns,測(cè)試方法是進(jìn)行1000次運(yùn)算后把某個(gè)引腳拉低,用示波器觀察。請(qǐng)問(wèn)有什么好的方法測(cè)試嗎,或者有測(cè)試出需要一個(gè)指令周期的。希望有高人指點(diǎn)
    發(fā)表于 04-20 16:47

    機(jī)器學(xué)習(xí)處理單元支持浮點(diǎn)的運(yùn)算

    。  Achronix為了解決這一大困境,創(chuàng)新地設(shè)計(jì)了機(jī)器學(xué)習(xí)處理(MLP)單元,不僅支持浮點(diǎn)的運(yùn)算,還可以支持對(duì)多種定浮點(diǎn)數(shù)格式進(jìn)行拆分。
    發(fā)表于 11-26 06:42

    基于51單片機(jī)的54計(jì)算設(shè)計(jì)

    由STC89C52單片機(jī)+54按鍵模塊+LCD1602液晶顯示屏+電源構(gòu)成具體功能:利用輸入采用5×4矩陣鍵盤(pán),可以進(jìn)行、減、、除等十幾種數(shù)字
    發(fā)表于 07-21 08:41

    基于流水線重構(gòu)技術(shù)的16x16位的設(shè)計(jì)

    比較了幾種16x16 位的實(shí)現(xiàn)方法,給出了一種嵌入于微處理的基于流水線重構(gòu)技術(shù)的16x16 位
    發(fā)表于 06-22 09:04 ?12次下載

    HT MCU 、減、、除法

    HT MCU 、減、、除法文件編碼:HA0014s簡(jiǎn)介:本程序包含八位、十六位、二十四位及三十二位定點(diǎn)數(shù)據(jù)的基本運(yùn)算。基本的運(yùn)算包括:加法(有符號(hào)、無(wú)符號(hào))、減法
    發(fā)表于 03-26 08:34 ?21次下載

    模擬、除以及平方運(yùn)算電路

    模擬、除以及平方運(yùn)算電路
    發(fā)表于 04-09 10:28 ?2348次閱讀
    模擬<b class='flag-5'>乘</b>、除以及平方<b class='flag-5'>運(yùn)算</b>電路

    運(yùn)算器,運(yùn)算器的作用和原理是什么?

    運(yùn)算器,運(yùn)算器的作用和原理是什么? 運(yùn)算器:arithmetic unit,計(jì)算機(jī)中執(zhí)行各種算術(shù)和邏輯運(yùn)算操作的部件。運(yùn)算器的基本操作包括
    發(fā)表于 03-24 17:01 ?3.2w次閱讀

    FPGA浮點(diǎn)數(shù)轉(zhuǎn)化為定點(diǎn)數(shù)方法

    FPGA在常規(guī)運(yùn)算時(shí)不能進(jìn)行浮點(diǎn)運(yùn)算,只能進(jìn)行定點(diǎn)整型運(yùn)算,在處理數(shù)據(jù)的小數(shù)
    的頭像 發(fā)表于 10-13 16:23 ?4912次閱讀

    FPGA常用運(yùn)算模塊-加減法器和乘法器

    本文是本系列的第二篇,本文主要介紹FPGA常用運(yùn)算模塊-加減法器和乘法器,xilinx提供了相關(guān)的IP以便于用戶進(jìn)行開(kāi)發(fā)使用。
    的頭像 發(fā)表于 05-22 16:13 ?5195次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>常用</b><b class='flag-5'>運(yùn)算</b><b class='flag-5'>模塊</b>-加減法器和乘法器

    FPGA常用運(yùn)算模塊-除法器

    本文是本系列的第四篇,本文主要介紹FPGA常用運(yùn)算模塊-除法器,xilinx提供了相關(guān)的IP以便于用戶進(jìn)行開(kāi)發(fā)使用。
    的頭像 發(fā)表于 05-22 16:20 ?3883次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>常用</b><b class='flag-5'>運(yùn)算</b><b class='flag-5'>模塊</b>-除法器

    FPGA常用運(yùn)算模塊-復(fù)數(shù)乘法器

    本文是本系列的第五篇,本文主要介紹FPGA常用運(yùn)算模塊-復(fù)數(shù)乘法器,xilinx提供了相關(guān)的IP以便于用戶進(jìn)行開(kāi)發(fā)使用。
    的頭像 發(fā)表于 05-22 16:23 ?2753次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>常用</b><b class='flag-5'>運(yùn)算</b><b class='flag-5'>模塊</b>-復(fù)數(shù)乘法器

    FPGA常用運(yùn)算模塊-DDS信號(hào)發(fā)生

    本文是本系列的第六篇,本文主要介紹FPGA常用運(yùn)算模塊-DDS信號(hào)發(fā)生,xilinx提供了相關(guān)的IP以便于用戶進(jìn)行開(kāi)發(fā)使用。
    的頭像 發(fā)表于 05-24 10:37 ?5622次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>常用</b><b class='flag-5'>運(yùn)算</b><b class='flag-5'>模塊</b>-DDS信號(hào)發(fā)生<b class='flag-5'>器</b>

    基于FPGA的計(jì)算設(shè)計(jì)

    本文通過(guò)FPGA實(shí)現(xiàn)8位十進(jìn)制數(shù)的、減、、除運(yùn)算,通過(guò)矩陣鍵盤(pán)輸入數(shù)據(jù)和運(yùn)算符,矩陣鍵盤(pán)的布局圖如下所示。該計(jì)算
    的頭像 發(fā)表于 10-24 14:28 ?731次閱讀
    基于<b class='flag-5'>FPGA</b>的計(jì)算<b class='flag-5'>器</b>設(shè)計(jì)
    百家乐官网扑克牌耙| 大发888更名网址6222| 百家乐官网奥| 战神线上娱乐| 百家乐园鼎丰娱乐城| 六合彩票| 太阳城百家乐网址--| 大发百家乐官网现金| 大发888娱乐场开户| 宝马会百家乐现金网| 百家乐官网神算子| 立博开户| BB百家乐HD| 怎么赢百家乐官网的玩法技巧和规则 | 太阳城娱乐城申博| 百家乐下| 冀州市| 大发888娱乐场下载 df888ylc3403| 百家乐游戏玩法规则| 玩百家乐官网怎么能赢吗| 大发888 网站被攻击了| 百家乐赌场讨论群| 百家乐官网有没有单机版的| 高清| 澳门顶级赌场网址| 百家乐必胜法技巧| 百家乐官网破解秘| 百家乐官网长龙如何判断| 太阳城娱乐城88| 百家乐有人玩吗| 天天百家乐游戏| 百家乐官网赌博论坛博客| 西城区| 德州扑克初级教程| 金牌百家乐的玩法技巧和规则| 百家乐2珠路投注法| 玩百家乐官网免费| 博E百百家乐官网娱乐城| 足球开户| 大发888娱乐场 888| 功夫百家乐的玩法技巧和规则|