Michel Courtoy gives a good potted history of functional verification and its evolution concluding that SoC verification is moving to self-verifying C tests that run on the SoCs embedded processors with no operating system or other production software required. He recommends Breker tools that can generate test cases are multi-threaded so that they exercise many parts of the SoC in parallel to stress-testing the design before tape.

Read more here.