verilog語法之force和release

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這個強制條件給解除了。

相關文章
相關標籤/搜索