chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

用HDL代碼描述加法運(yùn)算要用操作符“+” 看似很簡單實(shí)則不然

FPGA技術(shù)驛站 ? 來源:Lauren的FPGA ? 作者:Lauren的FPGA ? 2020-09-24 14:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

采用HDL代碼描述加法運(yùn)算只需要用操作符“+”即可,這看似很簡單,這里我們以兩個(gè)4-bit數(shù)相加為例,對輸入/輸出數(shù)據(jù)均寄存,從而形成如下圖所示電路。

此電路對應(yīng)的HDL代碼如下圖所示。這里采用了SystemVerilog語言。有兩點(diǎn)值得注意:一是兩個(gè)N位數(shù)相加,無論是有符號(hào)數(shù)還是無符號(hào)數(shù),其結(jié)果都有可能是N+1位,故輸出比輸入位寬多1位,這樣才能保證不會(huì)發(fā)生溢出(Overflow)。二是默認(rèn)情況下,代碼中的logic表示的都是無符號(hào)數(shù),但是對于下面這段代碼,無符號(hào)數(shù)和有符號(hào)數(shù)均適用,這是因?yàn)橛蟹?hào)數(shù)是以二進(jìn)制補(bǔ)碼表示的。

為了進(jìn)一步說明,我們看如下例子。數(shù)據(jù)a二進(jìn)制形式位1001,既可以看作無符號(hào)數(shù)9(十進(jìn)制),也可以看作有符號(hào)數(shù)-7(十進(jìn)制);數(shù)據(jù)b二進(jìn)制形式為1010,既可以看作無符號(hào)數(shù)10(十進(jìn)制),也可以看作有符號(hào)數(shù)-6(十進(jìn)制)。最終結(jié)果的二進(jìn)制形式為10011,既可以看作無符號(hào)數(shù)19(十進(jìn)制),也可以看作有符號(hào)數(shù)-13(十進(jìn)制)。

這里兩個(gè)4-bit數(shù)相加和設(shè)置為5-bit,如果和設(shè)置為6-bit,有符號(hào)數(shù)和無符號(hào)數(shù)的結(jié)果是否一致呢?對于無符號(hào)數(shù),sum[5]補(bǔ)0,如圖中紅色方框所示。

對于有符號(hào)數(shù),sum[5]則是sum[4]的復(fù)制版本,實(shí)質(zhì)上是符號(hào)位擴(kuò)展。

本質(zhì)上,在賦值時(shí),如果把一個(gè)N位數(shù)據(jù)a賦值給一個(gè)位寬M的數(shù)據(jù)b(這里M>N),且兩個(gè)數(shù)據(jù)均為同一類型(都是有符號(hào)或無符號(hào)),此時(shí)是將N位數(shù)據(jù)做符號(hào)位擴(kuò)展為M位再賦值給b。因此,對于兩個(gè)N位數(shù)據(jù)相加,如果輸出位寬選擇大于N+1,那么上述代碼只適合于無符號(hào)數(shù),對于有符號(hào)數(shù)需要在logic后加關(guān)鍵字signed,如下圖所示。

如果兩個(gè)位寬不等的數(shù)相加,同樣需要指明是有符號(hào)數(shù)還是無符號(hào)數(shù)。例如,一個(gè)4-bit數(shù)和一個(gè)3-bit數(shù)相加,如下圖所示。如果a二進(jìn)制為1001,對應(yīng)無符號(hào)數(shù)9(十進(jìn)制),b二進(jìn)制形式為101,對應(yīng)無符號(hào)數(shù)5(十進(jìn)制),兩個(gè)無符號(hào)數(shù)相加,先將b高位補(bǔ)0,最終和為01110;如果將a和b看作有符號(hào)數(shù),則要將b符號(hào)位擴(kuò)展為1101,最終和為10110。符號(hào)位擴(kuò)展是工具完成的,無需人工干預(yù)。

總體而言,在描述加法運(yùn)算時(shí),如果兩個(gè)數(shù)據(jù)均為N位,那么和要設(shè)置為N+1位,此時(shí)無符號(hào)數(shù)的描述方式也適合于有符號(hào)數(shù)。如果兩個(gè)數(shù)一個(gè)是N位,一個(gè)是M位,且M>N,那么和要設(shè)置為M+1位,此時(shí)要明確指出是有符號(hào)數(shù)還是無符號(hào)數(shù)。

原文標(biāo)題:加法運(yùn)算很簡單?

文章出處:【微信公眾號(hào):Lauren的FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    10414

    文章

    10738

    瀏覽量

    543276
  • HDL
    HDL
    +關(guān)注

    關(guān)注

    8

    文章

    330

    瀏覽量

    48062
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70758

原文標(biāo)題:加法運(yùn)算很簡單?

文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    為什么光刻要用黃光?

    進(jìn)入過無塵間光刻區(qū)的朋友,應(yīng)該都知道光刻區(qū)里的都是黃燈,這個(gè)看似很簡單的問題的背后卻蘊(yùn)含了很多鮮為人知的道理,那為什么實(shí)驗(yàn)室光刻要用黃光呢? 光刻是微流控芯片制造中的重要工藝之一。
    的頭像 發(fā)表于 06-16 14:36 ?249次閱讀

    USB組合設(shè)備的配置描述符里一定要用IAD描述符嗎?

    USB組合設(shè)備的配置描述符里一定要用IAD描述符
    發(fā)表于 03-11 06:41

    邏輯異或運(yùn)算符在Python中的用法

    在Python編程語言中,邏輯異或運(yùn)算符并不直接作為一個(gè)內(nèi)置的操作符存在,因?yàn)镻ython更側(cè)重于高級編程和可讀性,并沒有直接提供異或運(yùn)算符的簡寫形式用于邏輯運(yùn)算(真/假值的異或)。然
    的頭像 發(fā)表于 11-19 09:46 ?861次閱讀

    FPGA中的浮點(diǎn)四則運(yùn)算是什么

    由于定點(diǎn)的四則運(yùn)算比較簡單,如加減法只要注意符號(hào)擴(kuò)展,小數(shù)點(diǎn)對齊等問題即可。在本文中,運(yùn)用在前一節(jié)中描述的自定義浮點(diǎn)格式FPGA中數(shù)的表示方法(下),完成浮點(diǎn)四則運(yùn)算的實(shí)現(xiàn)過程 1.自
    的頭像 發(fā)表于 11-16 12:51 ?939次閱讀
    FPGA中的浮點(diǎn)四則<b class='flag-5'>運(yùn)算</b>是什么

    FPGA中浮點(diǎn)四則運(yùn)算的實(shí)現(xiàn)過程

    由于定點(diǎn)的四則運(yùn)算比較簡單,如加減法只要注意符號(hào)擴(kuò)展,小數(shù)點(diǎn)對齊等問題即可。在本文中,運(yùn)用在前一節(jié)中描述的自定義浮點(diǎn)格式FPGA中數(shù)的表示方法(下),完成浮點(diǎn)四則運(yùn)算的實(shí)現(xiàn)過程 1.自
    的頭像 發(fā)表于 11-16 11:19 ?1435次閱讀
    FPGA中浮點(diǎn)四則<b class='flag-5'>運(yùn)算</b>的實(shí)現(xiàn)過程

    C語言指針運(yùn)算符詳解

    在C語言中,當(dāng)你有一個(gè)指向數(shù)組中某個(gè)元素的指針時(shí),你可以對該指針執(zhí)行某些算術(shù)運(yùn)算,例如加法或減法。這些運(yùn)算可以用來遍歷數(shù)組中的元素,如ptr[i]等價(jià)于*(ptr + i)。然而,如果你的操作
    的頭像 發(fā)表于 10-30 11:16 ?797次閱讀

    Verilog語法中運(yùn)算符的用法

    verilog語法中使用以下兩個(gè)運(yùn)算符可以簡化我們的位選擇代碼
    的頭像 發(fā)表于 10-25 15:17 ?2575次閱讀
    Verilog語法中<b class='flag-5'>運(yùn)算符</b>的用法

    技術(shù)干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運(yùn)算符與優(yōu)先級

    在C語言的學(xué)習(xí)過程中,運(yùn)算符的使用是不可忽視的重要環(huán)節(jié)。本文將繼續(xù)深入探討C語言中的運(yùn)算符,重點(diǎn)介紹位運(yùn)算符、賦值運(yùn)算符及其優(yōu)先級。掌握這些運(yùn)算符
    的頭像 發(fā)表于 10-13 08:09 ?639次閱讀
    技術(shù)干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析<b class='flag-5'>運(yùn)算符</b>與優(yōu)先級

    【「數(shù)字IC設(shè)計(jì)入門」閱讀體驗(yàn)】+目錄和前2章

    4.1.8函數(shù)調(diào)用30 4.2操作符30 4.2.1算術(shù)操作符31 4.2.2關(guān)系操作符33 4.2.3相等關(guān)系操作符33 4.2.4邏輯操作符
    發(fā)表于 10-10 17:12

    技術(shù)干貨驛站 ▏深入理解C語言:編程高手必備,全方位解析運(yùn)算符的核心技能!

    在C語言的編程領(lǐng)域中,運(yùn)算符是實(shí)現(xiàn)數(shù)據(jù)處理與邏輯操作的關(guān)鍵工具。無論是在處理簡單的數(shù)值計(jì)算,還是在構(gòu)建復(fù)雜的邏輯結(jié)構(gòu)時(shí),運(yùn)算符的使用貫穿始終。作為編程語言的基礎(chǔ)組成部分之一,
    的頭像 發(fā)表于 09-18 15:56 ?770次閱讀
    技術(shù)干貨驛站 ▏深入理解C語言:編程高手必備,全方位解析<b class='flag-5'>運(yùn)算符</b>的核心技能!

    鴻蒙原生應(yīng)用元服務(wù)開發(fā)-倉頡基礎(chǔ)數(shù)據(jù)類型整數(shù)類型

    :一元負(fù)號(hào)(-)、加法(+)、減法(-)、乘法(*)、除法(/)、取模(%)、冪運(yùn)算( )。 除了一元負(fù)號(hào)(-)和冪運(yùn)算( ),其他操作符要求左右
    發(fā)表于 09-13 14:55

    鴻蒙原生應(yīng)用元服務(wù)開發(fā)-倉頡基礎(chǔ)數(shù)據(jù)類型布爾類型

    let b: Bool = false 布爾類型支持的操作 布爾類型支持的操作符包括:邏輯操作符(邏輯非!,邏輯與 &&,邏輯或 ||)、部分關(guān)系操作符
    發(fā)表于 09-09 09:57

    c語言中從左到右結(jié)合怎么看

    在C語言中,操作符的結(jié)合性(Associativity)是指當(dāng)操作符在表達(dá)式中連續(xù)出現(xiàn)時(shí),它們?nèi)绾闻c操作數(shù)結(jié)合的順序。對于大多數(shù)二元操作符(即需要兩個(gè)
    的頭像 發(fā)表于 08-20 11:42 ?1671次閱讀

    c語言從右到左的運(yùn)算符有哪些

    用在變量之后時(shí),它們會(huì)先返回變量的原始值,然后再進(jìn)行遞增或遞減。 三元條件運(yùn)算符 ( ?: ):這個(gè)運(yùn)算符的求值順序是從右到左。首先計(jì)算第三個(gè)表達(dá)式,然后根據(jù)第一個(gè)表達(dá)式的結(jié)果選擇第二個(gè)或第三個(gè)表達(dá)式。 賦值運(yùn)算符 ( = ):
    的頭像 發(fā)表于 08-20 11:39 ?1847次閱讀

    請問全差分運(yùn)算放大器能像一般運(yùn)算放大器一樣設(shè)計(jì)加法器嗎?

    全差分運(yùn)算放大器能像一般運(yùn)算放大器一樣設(shè)計(jì)加法器嗎?
    發(fā)表于 08-09 06:26