Just look at this assertion, this checks for valid signal at every posedge of clock and also makes sure , sop comes to low/zero on second posedge of clock
property p1;
@(posedge clk)valid |-> ($rose(sop) ##1 $fell(sop));
endproperty:p1
assert property (p1);