Softmodem
From Wikipedia, the free encyclopedia
A Softmodem is a software modem designed to use a host computer's resources (mostly CPU power and RAM but sometimes even audio hardware) instead of dedicated hardware of its own, unlike traditional modems.
They are also referred to as a Winmodem because the first commercially available softmodems mostly targeted the Microsoft Windows operating system running on IBM-PC compatibles. Although their usage has become more widespread over other operating systems and machines e.g. embedded systems and Linux, they are still difficult to use on operating systems besides Windows due to lack of vendor support and lack of a standard device interface. The term "Winmodem" is a trademark of U.S. Robotics but it is usually used to describe other modems with similar technologies.
Contents |
[edit] Evolution and technology
As PSTN modem technology advanced, the modulation and encoding schemes became more and more complex, thus making the hardware used by the modems themselves increase in complexity.
In fact, the first generations of 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 even with the analog discrete component technology still 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, PLL's and microcontrollers, while the techniques used in modern v34, v90 and v92 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 on its own right.
Furthermore, improved compression and error corrections schemes were introduced in the newest protocols, requiring some processing power by the modem itself and which made, de-facto, the construction of a mainly analog/discrete component modem impossible, especially when trying to achieve compatibility with older protocols using completely different modulation schemes.
This also meant that modems supporting those standards were becoming steadily more complex and expensive themselves, not to mention the existence of several conflicting standards in the early days of the various 33.6K (v34) and 56K protocols, which led to incompatibilities and the construction of modems with upgradeable firmware, which did all of the processing via a programmable DSP.
This is where software based modems really kicked in, offering (or claiming to offer) the same functionality as a (relatively expensive) hardware modem at a fraction of the price and (theoretically) unlimited upgradeability although they would require significant advances in home PC's CPU power in order to really compete with hardware modems in terms of performance and reliability.
[edit] Advantages
Having most of the modulation functions delegated to software does serve to provide the advantage of easier upgradability to newer modem standards. However, this is hardly an advantage as of 2005, with the latest V.92 56K protocol practically bearing the maximum achievable performance for a normal PSTN modem and telephone line and no significant plans future improvements/advancements seeming possible. Nevertheless this is not yet the case with the more recent software-based DSL modems, whose easy upgradeability can still be an advantage, DSL being a younger technology. This doesn't mean however that softmodems can be "upgraded" to support DSL, since DSL uses frequencies beyond the 300-3400 Hz telephone band where the hardware part of softmodems is designed to operate.
More commonly however, softmodem drivers are usually enhanced in regard to their performance and to eliminate possible software bugs.
A more practical advantage of softmodems is given by the considerable reductions in production costs, component count, size, weight and power requirements compared to a "true" hardware modem, whether external or internal, to the point that most portable computer systems' (including high-end laptops and PDAs) integrated modems are softmodems, due to the single-chip design of most softmodems.
Because they do so little by themselves, a computer program could use a Softmodem as something other than a modem; for example, it could emulate an answering machine or a signal generator.
[edit] Disadvantages
Winmodems have earned a certain notoriety for slowing down their host computer systems and for having buggy drivers, although this reputation was largely garnered during the period of their introduction to the mass-market, whereupon they were apt to use substandard drivers, and be found in entry-level computers with slow CPUs. Any such reputation has not, however, halted their market popularity, and it is typical for any internal 56k-modem produced today to be a software-based modem. What is yet to be seen is how the recently introduced software-based DSL modems will fare in a similar context.
Their most serious drawback is that they cannot always be used on other operating systems and host machines because the driver support requires far more effort to produce (they are, in fact, operating system and machine dependent).
In addition, they consume some of the CPU cycles on the computer to which they are attached, which can slow down application software on older computers. (They are sometimes referred to as a "port-on-a-stick.")
The advantage of software upgradeability is diminished when many newer 'hardware modems', which also have the ability to upgrade firmware to support new standards, though limited by the capability for the modem's processors and memory capacity. Modems such as those made by U.S. Robotics used generic digital signal processors architecture, which achieves the flexibility of softmodems, without sacrificing compatibility.
[edit] Categories
Softmodems can be separated into two clear classes: controllerless modems and pure software modems. Controllerless modems, such as those made by Lucent and Motorola, perform much of the modem work on the card, and require only small amounts of CPU power to complete. Conexant's HCF standard also falls into the controllerless category. Pure software modems perform the entire emulation of a hardware modem on the main CPU, with Conexant's HSF standard being the most common.
Another way of classifying softmodems is by means of their communication interface with the host computer: on desktop systems the most common option is an internal PCI or ISA expansion card, which can be easily be told apart from an internal "hardware" modem by the significantly reduced size and component count.
Softmodems can also be integrated in MiniPCI and PCMCIA cards for use in a portable computer, such as a laptop or palmtop computer.
Recently, external USB softmodems have appeared, using the same chipsets as internal ones plus a PCI-to-USB bridging interface. They can be easily told apart from USB "hardware" modems from their reduced size and their lack of an external power supply (a USB connector alone would not be able to power up a "real" hardware modem due to current limitations).
Note: most manufacturers do not state clearly whether their USB modems are software or hardware based, however the majority of USB modems uses drivers designed for known software-based chipsets such as those by Agere or Conexant, and the size, power consumption and weight of at least the most compact USB modems makes their being hardware based improbable, and in fact there are very few USB "hardware" based modems. USB hardware modems known to exist are nothing more than serial-based hardware modems with a USB-to-serial conversion chipset on the board, and usually require external power as would be expected of a standard external modem.
[edit] DSL softmodems
Although the term has historically been used to indicate the traditional "analog" PSTN software modems, there are some software-based DSL modems or even routers, which work on the same principles as their PSTN ancestors, only on a larger bandwidth and on a more complex signal. One of the first software based DSL modem chipsets was Motorola's SoftDSL chipset, for which similar considerations as "ordinary" PSTN modems can be made. A new term, WinDSL has started to show up on technology sites like Slashdot regarding the new trend [1].
However, the increasing popularity of home networking is likely to limit the prospects for DSL softmodems -- the trend is for a household or small business to have a router connected to the DSL modem, and all their computers are connected by various types of wired or wireless networks to that router.
[edit] General description
Often, the term "Winmodem" or "softmodem" is used in a derogatory manner, as opposed to hardware or "real" modems. The argument is that a softmodem isn't a real modem at all, but rather a simple electrical interface between computer and phone line, limiting itself to very basic functions such as voltage/current adaptation and functioning essentially as a DAC/ADC, much like a sound card which handles pure PCM and analog signals from and to the telephone line, while the host's CPU does the actual job of synthesizing or analyzing all necessary waveforms (carrier, dialing tones) and applying all necessary DSP techniques (FSK, QAM, PSK etc.) to a "virtual" signal, in order to encode and decode inbound or outbound data.
This means that at least the simplest softmodem is nothing more than a special purpose sound card with mono DAC/ADC's and a telephone line interface, while all actual signal encoding/decoding (as well as compression/decompression, error correction etc.) is done by the host machine, hence the terms HAM (Host Assisted Modulation) or HSP (Host Signal Processing). Many of the latest softmodem chipsets, e.g., the Intel Ambient, are even built around a standard AC'97 audio codec interface.
[edit] Software & Soundcard projects
The first softmodem-related announcements were made by Motorola, Intel and other companies, back in 1997, claiming that an ordinary sound card and some CPU power would be enough to emulate the functionality of an actual modem, although "sound card telephone adapters" and related software was never released or at least never caught on.
Reasons for that might have been the lack of standardized and fully functional audio card standards by 1997 (AC'97 was not standardized yet, and most sound cards were partially functioning "Soundblaster clones" which lacked even full duplex capabilities) and the lack of CPU power on entry-level PC's.
The approach of using a standard sound card was used by an experimental open-source 96 kbit/s leased-line softmodem called AuDSL in 1999.
[edit] Winmodem as a brand name
Although "Winmodem" is actually a specific brand of U.S. Robotics modem, the term has now come to mean any software-based modem (in the same way that Xerox refers to any brand of copy machine). The term linmodem is often used to denote a winmodem with support for Linux.
[edit] See also
- Winprinter
- Dehardwarization