Preferably, major functions of the transmitter and receiver, such as compression and decompression, and operations conventionally performed by a modem, or a controller, are implemented mainly in software so as to reduce the cost of the hardware and to achieve greater flexibility in the operation of the system.