1. begin....end
用来组合需要顺序执行的语句,称为串行块。
- module test (
- input wire clk ;
- input wire [7:0] data_in ;
- output reg [7:0] data_out ;
- ):
- reg [7:0] data_in_dl1 ;
- reg [7:0] data_in_dl2 ;
- reg [7:0] data_in_dl3 ;
- always@(posedge clk)
- begin
- data_in_dl1 <= data_in ;
- data_in_dl2 <= data_in_dl1 ;
- data_in_dl3 <= data_in_dl2 ;
- data_out <= data_in_dl3 ;
- end
串行块内的各条语句时按它们在块内的语句逐句顺序执行的,当前一条执行完之后才能执行下一条。块内每一条语句中的延时控制都是相对于前一条语句结束时刻的延时控制。
2. fork...join
用来组合需要并行执行的语句,称为并行块。例如:
|