. . . "Alternatively, the software routines may be performed in hardware, as an application specific integrated circuit or other types of hardware implementation, or a combination of software or hardware." . .