Enabling protocol coexistence: hardware-software codesign of wireless transceivers on heterogeneous computing architectures.