module p_unpack_dvr #( parameter PipeSpec = `PS_def ) (
        inout [`P_w(PipeSpec)-1:0]           pipe,

        output [`P_Data_w(PipeSpec)-1:0]     data,
        output                               valid,
        input                                ready
    );

    assign data  = pipe[ `P_Data_m(PipeSpec):`P_Data_l(PipeSpec) ];
    assign valid = pipe[ `P_Valid_b(PipeSpec) ];
    assign pipe[ `P_Ready_b(PipeSpec) ] = ready;

endmodule