Using Formal Techniques to Verify SoC Reset Schemes