A Functional Verification Methodology for an Improved Coverage of System-on-Chips