1. 塊語句有兩種,一種是 begin-end 語句, 通常用來標志()執行的語句;一種是 fork-join 語句,通常用來標志()執行的語句。
答案:順序,并行
解析:
(1)begin_end順序塊,用于將多條語句組成順序塊,語句按順序一條一條執行(除了帶有內嵌延遲控制的非阻塞賦值語句),每條語句的延遲時間是相對于由上一條語句的仿真時間而言;
(2)fork-join并行塊,塊內語句同時執行。
2. 塊語句,下面這段語句中,第 40 時刻上,A、B 的值各是多少?
reg A;reg B;initial beginforkbeginA = 1;#20 A = 0;#30A=1;#50 A = 0;endbeginB = 1;#20 B = 0;#30 B = 1;#50 B = 0;endjoinend
答案:A = 0,B = 0
解析:
塊語句有兩種,begin...end 和 fork...join,其中 fork...join 是并行塊,begin...end 是順序執行塊,可以相互嵌套。
上面,兩個 begin...end 之間是并行的,而各自 begin...end 內部是順序執行,A 和 B 的賦值邏輯是一樣的,所以要么都是 1,要么都是 0。
按照順序執行,A 前 20 個時間單位是 1,然后持續 30 個時間單位的 0,所以 40 時刻是 0,同理 B 也是 0。

審核編輯 :李倩
-
Verilog
+關注
關注
30文章
1374瀏覽量
114520
原文標題:Verilog 的塊語句 fork...join 和 begin...end
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
Verilog HDL語法學習筆記
條件的執行語句
使用NucleiStudio生成tb仿真需要的.verilog文件
芯來e203移植開發分享(二)——仿真文件簡述與itcm固化程序
使用函數塊實現三相電機正反轉控制
基礎篇3:掌握Python中的條件語句與循環
verilog模塊的調用、任務和函數
深入理解C語言:C語言循環控制
一文詳解Verilog HDL
Verilog的塊語句
評論