Currently I'm working on a DDS based function generator. The idea is to use an AD9834 chip that will generate a triangle/sine or square wave. With some amplification electronics I want a configurable frequency, offset and amplitude. I have no set frequency I want to achieve, but getting more than 10MHz would be nice. I'm trying to get things to work out for the best result.
I've been looking into ways to switch between several ranges of amplitude resolution. For example, I wish to get 10V amplitude as a maximum but with 1mV step size on the lower amplitudes (<2V). To avoid using a 16-bit DAC I was thinking of using relays to switch between two feedback resistors or two amplification circuits (two different ranges on closed and open contact). The relays would be switched by a microcontroller of somesort that would determine which settings all DAC's and relays should be in for the desired waveform.
My main concern is that relays may add additional noise. I think mechanical relays might be OK (is this true?). I was also looking at solid state relays because of their size.
However, I've read on wikipedia that solid state relays have a higher resistance when they are closed and 'increased electrical noise'. How big are the issues with solid-state relays on low-amplitude (100mVpp for example) or high frequency signals (>5MHz). Is it even worth using SSR or use several MOSFETs instead?
Should I avoid solid-state relays and focus on mechanical switching instead (because I expect they pass through a signal much cleaner)?