SoCFuzzer: SoC Vulnerability Detection using Cost Function enabled Fuzz Testing