OOCE: Object-Oriented Communication Engine for SoC Design