<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Verilog代碼驗證的全面性與代碼覆蓋率分析

Verilog代碼驗證的全面性與代碼覆蓋率分析

作者: 時(shí)間:2012-04-20 來(lái)源:網(wǎng)絡(luò ) 收藏

對于復雜的設計來(lái)說(shuō),檢查是檢查工作是否完全的重要方法,(codecoverge)可以指示描述的功能有多少在仿真過(guò)程中被過(guò)了,代碼包括以下內容。

本文引用地址:http://dyxdggzs.com/article/149192.htm

1、語(yǔ)句覆蓋率(statementcoverge),又稱(chēng)為聲明覆蓋率,用于每個(gè)聲明在過(guò)程中執行的次數。例如:

always@(areq0orareq1)

begin

gnt0=0;//聲明

if(areq0==1)

gnt=1;//聲明2

end

仿真過(guò)程結束后將給出報告,說(shuō)明整個(gè)仿真過(guò)程中每個(gè)聲明執行了多少次。如果某些聲明沒(méi)有執行過(guò),則需要進(jìn)行補充仿真。

2、路徑覆蓋率(pathcoverge),在設計中往往使用分支控制語(yǔ)句來(lái)根據不同的條件進(jìn)行不同的操作,路徑覆蓋率分析可以指出所有分支是否執行了,路徑覆蓋率分析主要以if-else語(yǔ)句的各種分支為分析對象。例如:

If(areq0)

begin

……

end

If(areq1)

begin

……。。

End

這段代碼中存在4條路徑,分別對應著(zhù)從areq0=0,areq0=1,areq1=0,areq1=1,經(jīng)覆蓋率就是要分析整個(gè)驗證過(guò)程中所有分支路徑都曾經(jīng)出現過(guò)。

3、狀態(tài)機覆蓋率(statemachinecoverge)用于統計在仿真過(guò)程中狀態(tài)機發(fā)生了哪些跳轉,這種分析可以防止驗證過(guò)程中某些狀態(tài)跳轉從來(lái)沒(méi)有發(fā)生過(guò),從而造成設計隱患。

4、觸發(fā)覆蓋率(triggeringcoverge)分析用于檢查在仿真過(guò)程中某些局部電路是否發(fā)生過(guò)由于某個(gè)信號的變化而觸發(fā)進(jìn)行運算和操作的情況。例如:

always@(areq0orareq1orareq2)

begin

……。。

End

觸發(fā)覆蓋率分析會(huì )檢查該電路是否由于areq0、areq1、areq2的變化而被執行,如果仿真過(guò)程中沒(méi)有出現過(guò)因某個(gè)信號(如areq2)的變化而執行電路功能的情況,那么就會(huì )給出提示,驗證者需要在testbench中補充測試內容,以避免存在設計缺陷。

5、表達式覆蓋率分析(expressioncoverge),用于檢查布爾表達式驗證的充分性。例如:下面是連續賦值語(yǔ)句:

assignareq=areq0||areq1;

可能出現的信號值組合如下:

areq0=0areq1=0

areq0=0areq1=1

areq0=1areq1=0

areq0=1areq1=1

表達式覆蓋率分析,該分析針對的是這些組合在整個(gè)驗證過(guò)程中是否出現過(guò),并給出那些組合從未出的。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>