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

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

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

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

使用函數(shù)表示組合邏輯的方法

OpenFPGA ? 來(lái)源:OpenFPGA ? 作者:OpenFPGA ? 2022-12-21 09:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

數(shù)字門級(jí)電路可分為兩大類:組合邏輯和時(shí)序邏輯。鎖存器是組合邏輯和時(shí)序邏輯的一個(gè)交叉點(diǎn),在后面會(huì)作為單獨(dú)的主題處理。

組合邏輯描述了門級(jí)電路,其中邏輯塊的輸出直接反映到該塊的輸入值的組合,例如,雙輸入AND門的輸出是兩個(gè)輸入的邏輯與。如果輸入值發(fā)生變化,輸出值將反映這一變化,組合邏輯的RTL模型需要反映這種門級(jí)行為,這意味著邏輯塊的輸出必須始終反映該邏輯塊當(dāng)前輸入值的組合。

SystemVerilog有三種在可綜合RTL級(jí)別表示組合邏輯的方法:連續(xù)賦值語(yǔ)句、always程序塊和函數(shù)。接下來(lái)幾篇文章將探討每種編碼風(fēng)格,并推薦最佳實(shí)踐編碼風(fēng)格。

425b3fb4-80cc-11ed-8abf-dac502259ad0.png

使用函數(shù)表示組合邏輯

當(dāng)編碼正確時(shí),函數(shù)的行為和綜合就像組合邏輯一樣。

最佳實(shí)踐指南7-7
將RTL模型中使用的函數(shù)聲明為自動(dòng)automatic。

為了表示組合邏輯行為,每次調(diào)用函數(shù)時(shí)都必須計(jì)算一個(gè)新的函數(shù)返回值。如果調(diào)用了靜態(tài)函數(shù),但沒(méi)有指定返回值,則靜態(tài)函數(shù)將隱式返回其上一次調(diào)用的值。這是鎖存邏輯的行為,而不是組合邏輯。通過(guò)將RTL模型中使用的所有函數(shù)聲明為自動(dòng)函數(shù)(automatic),可以避免這種編碼錯(cuò)誤。

例7-2定義了一個(gè)使用Russian Peasant Multiplication算法(一系列加法和移位運(yùn)算)計(jì)算乘法運(yùn)算的函數(shù)。該函數(shù)被定義在一個(gè)包中,任何模塊都可以使用該乘法器算法。

SystemVerilog會(huì)推斷出一個(gè)與函數(shù)名稱和數(shù)據(jù)類型相同的變量,示例7-2中的代碼就是利用了這一點(diǎn)。函數(shù)名multiply_f被用作臨時(shí)變量來(lái)保存for循環(huán)中的中間計(jì)算結(jié)果,函數(shù)名中存儲(chǔ)的最終值在函數(shù)退出時(shí)成為函數(shù)返回值。

圖7-2顯示了綜合該函數(shù)的結(jié)果,以及從連續(xù)賦值語(yǔ)句調(diào)用該函數(shù)的模塊。

示例7-2:定義乘法運(yùn)算的算法函數(shù)

//`begin_keywords"1800-2012"http://useSystemVerilog-2012keywords
packagedefinitions_pkg;
timeunit1ns;timeprecision1ns;

//RussianPeasantMultiplicationAlgorithm
functionautomatic[7:0]multiply_f([7:0]a,b);
multiply_f=0;
for(inti=0;i<=3;?i++)?begin?
??????if?(b?==?0)?continue;?//?all?done,?finish?looping
??????else?begin?
?????????if?(b?&?1)?multiply_f?+=?a;
?????????a?<<=?1;??//?multiply?by?2
?????????b?>>=1;//divideby2
end
end
endfunction
endpackage:definitions_pkg
//`end_keywords

//`begin_keywords"1800-2012"http://useSystemVerilog-2012keywords
modulealgorithmic_multiplier
importdefinitions_pkg::*;
(inputlogic[3:0]a,b,
outputlogic[7:0]result
);
timeunit1ns;timeprecision1ns;

assignresult=multiply_f(a,b);

endmodule:algorithmic_multiplier
//`end_keywords
圖7-2:示例7-2的綜合結(jié)果:作為組合邏輯的函數(shù)

42abd94c-80cc-11ed-8abf-dac502259ad0.png

最佳實(shí)踐指南7-8
在可能的情況下,使用SystemVerilog運(yùn)算符,如*,而不是使用循環(huán)和其他編程語(yǔ)句。

算法乘法器的示例7-2還說(shuō)明了為什么在乘法和除法等復(fù)雜運(yùn)算中最好使用SystemVerilog運(yùn)算符。如果在示例7-2中使用了乘法運(yùn)算符(*),則綜合編譯器可以將該運(yùn)算符映射到ASICFPGA的最有效的乘法器。

設(shè)計(jì)工程師在使用算術(shù)運(yùn)算符或算法來(lái)表示復(fù)雜操作時(shí)需要謹(jǐn)慎。RTL模型不是在具有大量?jī)?nèi)存資源的通用計(jì)算機(jī)上運(yùn)行的軟件程序。RTL模型是門級(jí)實(shí)現(xiàn)的抽象。所表示的功能需要在物理上適合目標(biāo)ASIC或FPGA,并且在時(shí)間上在有限的數(shù)量或時(shí)鐘周期內(nèi)。之前的文章有詳細(xì)介紹了在RTL模型中使用算術(shù)運(yùn)算符(如乘法和除法)的指導(dǎo)原則。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 鎖存器
    +關(guān)注

    關(guān)注

    8

    文章

    947

    瀏覽量

    43307
  • 組合邏輯
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    10292
  • and
    and
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    7637

原文標(biāo)題:使用函數(shù)表示組合邏輯

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    電壓放大器驅(qū)動(dòng)的混凝土組合結(jié)構(gòu)界面損傷高靈敏檢測(cè)方法研究

    鋼-混組合結(jié)構(gòu)無(wú)損檢測(cè)技術(shù),可用于指導(dǎo)MASW方法的實(shí)際工程應(yīng)用。 測(cè)試設(shè)備: ATA-2041高壓放大器、采集卡、示波器、任意函數(shù)波形發(fā)生器。 實(shí)驗(yàn)過(guò)程: 圖:MASW試驗(yàn)檢測(cè)系統(tǒng) 搭建MASW檢測(cè)系統(tǒng),MASW檢測(cè)系統(tǒng)的硬件
    的頭像 發(fā)表于 08-05 11:42 ?357次閱讀
    電壓放大器驅(qū)動(dòng)的混凝土<b class='flag-5'>組合</b>結(jié)構(gòu)界面損傷高靈敏檢測(cè)<b class='flag-5'>方法</b>研究

    WP4000變頻功率分析儀的精度表示與常規(guī)儀表精度表示方法有什么不同?

    WP4000變頻功率分析儀的精度表示與常規(guī)儀表精度表示方法有什么不同呢? 一 相對(duì)誤差與引用誤差的概念 相對(duì)誤差是指測(cè)量所造成的絕對(duì)誤差與被測(cè)量真值之比,一般以百分數(shù)表示。 由于被測(cè)量
    的頭像 發(fā)表于 05-13 09:58 ?367次閱讀

    用電設(shè)備功率因數(shù)表

    用電設(shè)備功率因數(shù)表
    發(fā)表于 04-01 16:25 ?0次下載

    數(shù)字電路—22、時(shí)序邏輯電路

    時(shí)序電路的邏輯功能可用邏輯表達(dá)式、狀態(tài)表、卡諾圖、狀態(tài)圖、時(shí)序圖和邏輯圖6種方式表示,這些表示方法
    發(fā)表于 03-26 15:03

    數(shù)字電路—6、邏輯函數(shù)表示方法

    發(fā)表于 03-25 10:26

    迅為RK3568開發(fā)板篇Openharmony配置HDF控制UART-實(shí)操-HDF驅(qū)動(dòng)配置UART-UART應(yīng)用開發(fā)-UART驅(qū)動(dòng)API接口介紹

    ,返回值為負(fù)數(shù)表示 UART 設(shè)置設(shè)備屬性失敗。 (5) UartGetAttribute 設(shè)置 UART 的設(shè)備屬性后,可以通過(guò)獲取設(shè)備屬性接口來(lái)查看 UART 當(dāng)前的設(shè)備屬性。函數(shù)原型如下所示
    發(fā)表于 03-24 11:19

    解鎖TSMaster fifo函數(shù):報(bào)文讀取的高效方法

    前言:TSMaster目前有兩種讀取報(bào)文的模式:回調(diào)函數(shù)模式和fifo模式。fifo函數(shù)是TSMaster近期新增的函數(shù),本文將重點(diǎn)介紹fifo模塊。關(guān)于回調(diào)函數(shù)的使用
    的頭像 發(fā)表于 03-14 20:04 ?771次閱讀
    解鎖TSMaster fifo<b class='flag-5'>函數(shù)</b>:報(bào)文讀取的高效<b class='flag-5'>方法</b>

    迅為RK3568開發(fā)板篇Openharmony配置HDF控制UART-實(shí)操-HDF驅(qū)動(dòng)配置UART-UART應(yīng)用開發(fā)-UART驅(qū)動(dòng)API接口介紹

    屬性成功,返回值為負(fù)數(shù)表示 UART 設(shè)置設(shè)備屬性失敗。 (5) UartGetAttribute 設(shè)置 UART 的設(shè)備屬性后,可以通過(guò)獲取設(shè)備屬性接口來(lái)查看 UART 當(dāng)前的設(shè)備屬性。函數(shù)原型如下
    發(fā)表于 03-11 10:27

    請(qǐng)問(wèn)AFE5801 AD轉(zhuǎn)換后數(shù)字信號(hào)是用有符號(hào)數(shù)還是無(wú)符號(hào)數(shù)表示的?

    請(qǐng)問(wèn)AFE5801 AD轉(zhuǎn)換后數(shù)字信號(hào)是用有符號(hào)數(shù)還是無(wú)符號(hào)數(shù)表示的啊?
    發(fā)表于 02-11 07:18

    傅立葉變換的基本概念 傅立葉變換在信號(hào)處理中的應(yīng)用

    傅里葉變換的基本概念 傅里葉變換是一種數(shù)學(xué)變換,它能夠?qū)M足一定條件的某個(gè)函數(shù)表示成三角函數(shù)(正弦和/或余弦函數(shù))或者它們的積分的線性組合。這種變換在不同的研究領(lǐng)域有多種變體形式,如連
    的頭像 發(fā)表于 12-06 16:48 ?2049次閱讀

    經(jīng)典傅里葉變換與快速傅里葉變換的區(qū)別

    經(jīng)典傅里葉變換與快速傅里葉變換(FFT)在多個(gè)方面存在顯著的區(qū)別,以下是對(duì)這兩者的比較: 一、定義與基本原理 經(jīng)典傅里葉變換 : 是一種將滿足一定條件的某個(gè)函數(shù)表示成三角函數(shù)(正弦和/或余弦函數(shù)
    的頭像 發(fā)表于 11-14 09:37 ?1655次閱讀

    如何優(yōu)化SUMIF函數(shù)的效率

    在Excel中, SUMIF 函數(shù)是一個(gè)非常有用的工具,它可以根據(jù)指定的條件對(duì)數(shù)據(jù)進(jìn)行求和。然而,在處理大量數(shù)據(jù)時(shí), SUMIF 函數(shù)可能會(huì)變得效率低下。以下是一些優(yōu)化 SUMIF 函數(shù)效率的
    的頭像 發(fā)表于 11-11 09:20 ?1781次閱讀

    SUMIF函數(shù)使用教程

    SUMIF函數(shù)是Excel中非常實(shí)用的函數(shù)之一,能夠根據(jù)指定條件對(duì)數(shù)據(jù)進(jìn)行篩選和求和操作。以下是對(duì)SUMIF函數(shù)使用方法的詳細(xì)教程: 一、基本語(yǔ)法 SUMIF
    的頭像 發(fā)表于 10-30 09:50 ?6127次閱讀

    LM4675測(cè)試條件中負(fù)載電阻的2個(gè)15uH的電感參數(shù)表示什么意思?

    測(cè)試條件中負(fù)載電阻的2個(gè)15uH的電感參數(shù)表示什么意思?常規(guī)不是默認(rèn)8歐的直流阻抗值?
    發(fā)表于 10-25 07:00

    如何由系統(tǒng)函數(shù)求頻率響應(yīng)

    頻率響應(yīng)函數(shù)表征了測(cè)試系統(tǒng)對(duì)給定頻率下的穩(wěn)態(tài)輸出與輸入的關(guān)系,可以通過(guò)系統(tǒng)函數(shù)(或稱為傳遞函數(shù))來(lái)求解。以下是由系統(tǒng)函數(shù)求頻率響應(yīng)的步驟: 一、理解系統(tǒng)
    的頭像 發(fā)表于 10-18 09:32 ?4030次閱讀