99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

簡述阻塞賦值和非阻塞賦值的可綜合性

電子工程師 ? 來源:FPGA設(shè)計論壇 ? 作者:FPGA設(shè)計論壇 ? 2021-05-12 09:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

阻塞賦值和非阻塞賦值的可綜合性

Blocking Assignment阻塞賦值和NonBlocking Assignment非阻塞賦值,原本是軟件進程管理的術(shù)語。由于Verilog團隊是從C語言發(fā)展,所以基于的C的術(shù)語和概念出現(xiàn)在EDA中,原本是一個“誤打誤撞”,但歷史造成的現(xiàn)實則是:必須理解和正確掌握它們的用法。

軟件中阻塞進程,是指調(diào)用返回之前,應(yīng)用進程一直等待:

395df0f8-b2a3-11eb-bf61-12bb97331649.png

為了保證應(yīng)用進程的效率,不至于被子程序的運算過程“掛起”。非阻塞進程得到應(yīng)用:

3968d040-b2a3-11eb-bf61-12bb97331649.png

在非阻塞賦值進程中,無論子程序是否返回,不影響應(yīng)用進程的正常運行。C語言的阻塞和非阻塞概念被Verilog團隊引用,Verilog的阻塞賦值:

39747fe4-b2a3-11eb-bf61-12bb97331649.png

Verilog的非阻塞賦值:

3984bb34-b2a3-11eb-bf61-12bb97331649.png

關(guān)于阻塞和非阻塞爭議中,有一個辯論雙方都引用的電路模型:反饋震蕩器:

398e8ede-b2a3-11eb-bf61-12bb97331649.png

其中,復(fù)位信號rst_n初始化RA(a)為0, RB(b)為1。觀察其物理連接,在時鐘沿作用下,兩個寄存器將互相交換數(shù)據(jù)。(同時交換)

為以上電路模型進行驗證,在循環(huán)行為體并分別使用阻塞賦值和非阻塞賦值。并驗證其前仿和后仿,觀察對比真實性。

應(yīng)該得到的結(jié)論:

使用阻塞賦值:前仿不真實(沒有發(fā)生兩個寄存器的交換),后仿真實(發(fā)生交換)

使用非阻塞賦值:前仿真實(交換),后仿真實(交換)

基于以上結(jié)論:

“倒阻派”認(rèn)為,沒有使用阻塞賦值的必要,必須在行為語句賦值中全部使用非阻塞。

“挺阻派”認(rèn)為,基于電平敏感賦值用阻塞,沿敏感賦值用非阻塞,阻塞語句是必要的。

2000年以后,進入從“綜合為王”進入“驗證為王”的時代。同樣的Verilog代碼需要回到電腦中,用于非綜合目的。驗證代碼中的賦值驅(qū)動與軟件編寫概念相同,帶來非常大的便利。這就是“阻塞”賦值的反轉(zhuǎn)。

編輯:jq

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

    關(guān)注

    0

    文章

    11

    瀏覽量

    10071
  • 阻塞
    +關(guān)注

    關(guān)注

    0

    文章

    24

    瀏覽量

    8294

原文標(biāo)題:FPGA學(xué)習(xí):阻塞賦值和非阻塞賦值的可綜合性

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    matlab appdesigner 表格組件賦值問題,求助

    如上圖所示,我在用matlab2021Ra APP模塊進行編程的時候,想在表格中調(diào)入自己編寫的結(jié)構(gòu)數(shù)組,我從網(wǎng)上AI了一個程序語句,看著沒問題,但是就是給表格賦值不了,還請各位大神幫忙看一下這個是怎么回事,我是初學(xué)者,請各位幫忙看看
    發(fā)表于 07-12 11:45

    CH32V307串口發(fā)送阻塞的原因?如何解決?

    */ modbus_set_rx_mode(master); modbus發(fā)送,不知為何阻塞在rt_device_write,初始化 find open 正常
    發(fā)表于 06-11 08:05

    在testbench中如何使用阻塞賦值阻塞賦值

    本文詳細(xì)闡述了在一個testbench中,應(yīng)該如何使用阻塞賦值阻塞賦值。首先說結(jié)論,建議在testbench中,對時鐘信號(包括分頻時鐘
    的頭像 發(fā)表于 04-15 09:34 ?664次閱讀
    在testbench中如何使用<b class='flag-5'>阻塞</b><b class='flag-5'>賦值</b>和<b class='flag-5'>非</b><b class='flag-5'>阻塞</b><b class='flag-5'>賦值</b>

    如何綜合性測試一款電源芯片?——以ASP3605芯片為例

    引言 在現(xiàn)代電子系統(tǒng)中,電源芯片是不可或缺的核心組件之一。其性能的優(yōu)劣直接關(guān)系到整個電子設(shè)備的穩(wěn)定性和可靠。因此,對電源芯片進行綜合性的測試至關(guān)重要。本文以國科安芯生產(chǎn)的ASP3605芯片為例
    的頭像 發(fā)表于 04-07 09:26 ?414次閱讀

    在S32DS上使用JLINK調(diào)試S32K341,被阻塞了,怎么處理?

    我正在嘗試使用 S32K341 在新板上刷寫程序,但在 S32K3X4EVB 上運行并為 S32K341配置的相同代碼出現(xiàn)錯誤。具體來說,當(dāng)我使用 S32DS 的 J-Link 探針運行調(diào)試時,它在此地址被阻塞,并且不會將其閃存到內(nèi)存中。有人遇到同樣的問題或可以幫助我嗎?
    發(fā)表于 04-03 08:13

    FreeRTOS進階使用之流緩沖區(qū):高效處理字節(jié)流的秘密武器

    開銷 基于連續(xù)內(nèi)存存儲,相比隊列(每個數(shù)據(jù)項獨立存儲)更節(jié)省RAM。 觸發(fā)通知機制 當(dāng)緩沖區(qū)數(shù)據(jù)量達到預(yù)設(shè)的觸發(fā)閾值**時,自動喚醒等待的任務(wù),避免輪詢開銷。 阻塞阻塞模式 阻塞
    發(fā)表于 03-24 11:37

    “串口阻塞”你真的會用嗎?

    很久才會發(fā)出來,一下子出來很多數(shù)據(jù)”。經(jīng)過幫客戶檢查應(yīng)用程序源碼,發(fā)現(xiàn)應(yīng)用程序在串口阻塞方面沒有做正確的處理,修改后解決。阻塞打開串口open("/dev/tty
    的頭像 發(fā)表于 02-13 11:42 ?765次閱讀
    “串口<b class='flag-5'>阻塞</b>”你真的會用嗎?

    數(shù)組名之間可以直接賦值

    數(shù)組之間的賦值能不能直接使用等于號?比如這樣的代碼。 int main(){ int a[5] = {1, 2, 3, 4, 5}; int b[5] = {0}; b = a
    的頭像 發(fā)表于 11-26 11:23 ?635次閱讀

    TPA3004功放,開機保護,聲音阻塞,為什么?

    TPA3004功放,開機保護,聲音阻塞。過一段時間,芯片發(fā)熱后正常。詢求問題解決方法
    發(fā)表于 11-08 08:30

    socket編程中的阻塞阻塞

    在網(wǎng)絡(luò)編程中, socket 是一個非常重要的概念,它提供了一個抽象層,使得開發(fā)者可以不必關(guān)心底層的網(wǎng)絡(luò)通信細(xì)節(jié)。 socket 編程中的阻塞阻塞模式是兩種不同的操作方式,它們對程序的響應(yīng)
    的頭像 發(fā)表于 11-01 16:13 ?755次閱讀

    Verilog HDL的基礎(chǔ)知識

    本文繼續(xù)介紹Verilog HDL基礎(chǔ)知識,重點介紹賦值語句、阻塞阻塞、循環(huán)語句、同步與異步、函數(shù)與任務(wù)語法知識。
    的頭像 發(fā)表于 10-24 15:00 ?1210次閱讀
    Verilog HDL的基礎(chǔ)知識

    基于OpenHarmony標(biāo)準(zhǔn)系統(tǒng)的C++公共基礎(chǔ)類庫案例:SafeBlockQueue

    1、程序簡介該程序是基于OpenHarmony的C++公共基礎(chǔ)類庫的讀寫鎖:SafeBlockQueue。線程安全阻塞隊列SafeBlockQueue類,提供阻塞阻塞版的入隊入隊和
    的頭像 發(fā)表于 08-30 12:41 ?588次閱讀
    基于OpenHarmony標(biāo)準(zhǔn)系統(tǒng)的C++公共基礎(chǔ)類庫案例:SafeBlockQueue

    SystemView上下文統(tǒng)計窗口識別阻塞原因

    SystemView工具可以記錄嵌入式系統(tǒng)的運行時行為,實現(xiàn)可視化的深入分析。在新發(fā)布的v3.54版本中,增加了一項新功能:上下文統(tǒng)計窗口,提供了對任務(wù)運行時統(tǒng)計信息的深入分析,使用戶能夠徹底檢查每個任務(wù),幫助開發(fā)人員識別阻塞原因。
    的頭像 發(fā)表于 08-20 11:31 ?706次閱讀

    socket阻塞阻塞的區(qū)別是什么

    在計算機編程中,socket 是一種通信端點,用于在網(wǎng)絡(luò)中進行數(shù)據(jù)傳輸。Socket 可以是阻塞的或阻塞的,這兩種模式在處理數(shù)據(jù)傳輸時有不同的行為。 阻塞模式(Blocking Mo
    的頭像 發(fā)表于 08-16 11:13 ?1248次閱讀

    求助,關(guān)于CyU3PUsbHostEpWaitForCompletion函數(shù)中的阻塞問題求解

    主線程)調(diào)用該函數(shù)時,CyU3PUsbHostEpWaitForCompletion 函數(shù)經(jīng)常阻塞,雖然指定了超時值,但從未返回。 我想應(yīng)該在主程序線程中調(diào)用該函數(shù),以避免出現(xiàn)阻塞問題。 如何正確使用該功能而不造成
    發(fā)表于 07-23 07:57