阻塞賦值和非阻塞賦值的可綜合性
Blocking Assignment阻塞賦值和NonBlocking Assignment非阻塞賦值,原本是軟件進(jìn)程管理的術(shù)語(yǔ)。由于Verilog團(tuán)隊(duì)是從C語(yǔ)言發(fā)展,所以基于的C的術(shù)語(yǔ)和概念出現(xiàn)在EDA中,原本是一個(gè)“誤打誤撞”,但歷史造成的現(xiàn)實(shí)則是:必須理解和正確掌握它們的用法。
軟件中阻塞進(jìn)程,是指調(diào)用返回之前,應(yīng)用進(jìn)程一直等待:

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

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

Verilog的非阻塞賦值:

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

其中,復(fù)位信號(hào)rst_n初始化RA(a)為0, RB(b)為1。觀察其物理連接,在時(shí)鐘沿作用下,兩個(gè)寄存器將互相交換數(shù)據(jù)。(同時(shí)交換)
為以上電路模型進(jìn)行驗(yàn)證,在循環(huán)行為體并分別使用阻塞賦值和非阻塞賦值。并驗(yàn)證其前仿和后仿,觀察對(duì)比真實(shí)性。
應(yīng)該得到的結(jié)論:
使用阻塞賦值:前仿不真實(shí)(沒(méi)有發(fā)生兩個(gè)寄存器的交換),后仿真實(shí)(發(fā)生交換)
使用非阻塞賦值:前仿真實(shí)(交換),后仿真實(shí)(交換)
基于以上結(jié)論:
“倒阻派”認(rèn)為,沒(méi)有使用阻塞賦值的必要,必須在行為語(yǔ)句賦值中全部使用非阻塞。
“挺阻派”認(rèn)為,基于電平敏感賦值用阻塞,沿敏感賦值用非阻塞,阻塞語(yǔ)句是必要的。
2000年以后,進(jìn)入從“綜合為王”進(jìn)入“驗(yàn)證為王”的時(shí)代。同樣的Verilog代碼需要回到電腦中,用于非綜合目的。驗(yàn)證代碼中的賦值驅(qū)動(dòng)與軟件編寫(xiě)概念相同,帶來(lái)非常大的便利。這就是“阻塞”賦值的反轉(zhuǎn)。
編輯:jq
-
非阻塞賦值
+關(guān)注
關(guān)注
0文章
11瀏覽量
10125 -
阻塞
+關(guān)注
關(guān)注
0文章
24瀏覽量
8436
原文標(biāo)題:FPGA學(xué)習(xí):阻塞賦值和非阻塞賦值的可綜合性
文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
比斯特綜合性能測(cè)試機(jī)提升電池組性能驗(yàn)證效率精度
電信接收機(jī) IF/RF 前端 SAW 濾波方案:70–300MHz 選擇性提升 + 阻塞防護(hù) + 匹配驗(yàn)證全流程(FSF-5050 系列)
解析SN65LVDS125A和SN65LVDT125A:4x4非阻塞交叉點(diǎn)開(kāi)關(guān)的卓越性能
探索SN65LVDS125A和SN65LVDT125A:4x4非阻塞交叉點(diǎn)開(kāi)關(guān)的卓越性能
綜合性能檢測(cè)機(jī)選型要點(diǎn)深度解析及參考
飛凌嵌入式ElfBoard-文件I/O的深入學(xué)習(xí)之阻塞I/O與非阻塞I/O
CH32V307 串口發(fā)送阻塞的原因?怎么解決?
matlab appdesigner 表格組件賦值問(wèn)題,求助
合肥綜合性國(guó)家科學(xué)中心能源研究院與宏微科技達(dá)成合作
CH32V307串口發(fā)送阻塞的原因?如何解決?
在testbench中如何使用阻塞賦值和非阻塞賦值
簡(jiǎn)述阻塞賦值和非阻塞賦值的可綜合性
評(píng)論