Verification of a heterogeneous multi-processor SoC