force和releasespa
在程序中常常會遇到force和release,以下圖:接口
add u_add(.a(a1),.b(b1),.c(c1));it
initial
begin
a1 = 2'b1;
b1 = 2'b1;
#20 force u_add.a = 2'd2;
#10 release u_add.a ;
end程序
對force和release的做用進行說明:總結
在u_add模塊中,a接口與a1相連,b接口與b1相連,c接口與c1相連,那麼就有以下兩種狀況:co
(1)在沒有force下,即release環境下,u_add模塊的a接口輸入的就是a1信號,a1信號爲高a則爲高,b、c接口同理;系統
(2)在force下,至關於系統作了一個強制賦值,此時u_add模塊的a接口爲2`d2。
總結以下:force的做用至關於給模塊的接口強制賦值了一個值;
release的做用至關於把force這個強制條件給解除了。