A softmodem (software modem) is a modem with minimal hardware that uses software running on the host computer, and the computer's resources (especially the central processing unit, random access memory, and sometimes audio processing), in place of the hardware in a conventional modem. Softmodems are sometimes called winmodems because the first ones worked only on IBM PC compatible computers with a Microsoft Windows operating system.
Softmodems cost less to manufacture than conventional modems because they had less hardware. However, they shared the computer's limited resources with other tasks, which reduced the resources available to, and sometimes the performance of, the computer's primary tasks.
Softmodems are sometimes used as an example of a hard real-time system. The audio signals to be transmitted must be computed on a tight interval (on the order of every 5 or 10 milliseconds); they cannot be computed in advance, and they cannot be late or the receiving modem will lose synchronization.
As PSTN hardware modem technology advanced, the modulation and encoding schemes became increasingly more complex, thus forcing the hardware used by the modems themselves to increase in complexity.
The first generations of hardware modems (including acoustic couplers) and their protocols used relatively simple modulation techniques such as FSK or ASK at low speeds and with inefficient use of the telephone line's bandwidth. Under these conditions, modems could be built with the analog discrete component technology used during the late 70s and early 80s.
As more sophisticated transmission schemes were devised, the circuits grew in complexity, mixing analog with digital parts and eventually incorporating multiple ICs such as logical gates, PLLs and microcontrollers, while the techniques used in modern V.34, V.90 and V.92 protocols (like 1024-QAM) are so complex that implementing a modem supporting them with discrete components or general purpose IC's would be very impractical, and a dedicated DSP or ASIC is used instead, effectively turning the modem into a special embedded system, a dedicated computer in its own right.