If implemented in software, the software may be executed in a processor, such as a general purpose microprocessor, digital signal processor (DSP), application specific integrated circuit (ASIC), field programmable gate array (FPGA) or other type of processor.