As you probably know, often one has a choice of implementing a function is either hardware or software. I understand that this is a hardware rather than a software forum, but you may want to consider the fact that this can be done completely in software.
Here is full documentation on the project: https://sites.google.com/site/ki4mcw/Home/arduino-tnc
In response to the comment I will add some background. Generally modems, either telephone or radio, use tones of various frequencies to transmit data. On the transmitting end one needs to generate tones, and the receiver needs to detect them. Timing and accurate frequency are important to successful operation.
To generate tones of a particular frequency, one can use purely analog circuits employing precision inductors and capacitors. Think of touch-tone telephones from the 1960s. Alternatively one can use a digital to analog converter (DAC) and a micro-controller to generate accurate tones, generally at far less cost.
On the receiving end one can also use a purely analog tone detector, once again with precision inductors and capacitors, to detect tones of a preset frequency. A key drawback of this is that a separate tuned circuit is required for each tone frequency to be detected. The digital alternative is to use a analog to digital converter (ADC) to convert the incoming signal to digital format and pass it to a micro-controller. In the processor one generally runs a fast fourier transform (FFT) to detect the tone frequencies contained in the signal.
A further refinement is that many micro-controllers designed for digital signal processing will have on-board ADCs and DACs.