This is a favorite question of software folks. They will ask you to swap two registers using a sequential machine.
RTL designers get irritated as we can do it simply in one clock by doing the following.
always @(posedge clock) begin
A <= B;
B <= A;
end
Ask follow-up questions. You will hear something like this.
"How many clocks this operation takes is not a concern. You may take 2-3 clocks to complete this operation."
This is a hint along with the ALU block.