An alternative, single chip, up to 4 channels.
Using onchip DDS and WaveDAC components, simply set the respective DDS for the freq you want
for that channel. In example the channels are phase synchronous because of common clock to DDS's.
If you wanted a tracking system, one channel tracking the other, with a multiplying factor,
add onchip logic counter component to measure the freq in one channel and set the other
channel to the freq relationship you want. Of course this causes latency, but if you implemented a reciprocal freq cntr onchip and input was 50% duty cycle the latency would be < 1 period of
input waveform its measuring.
The WaveDACs can gen arbitrary, sine, ramp, square.....whatever. Even do bursting waveforms
with controlled bursts and interburst timing.
Programing done in C, each component has a lib of f() calls so you do not have to write drivers.
IDE, PSOC Creator, and compiler free. Board to use with moderate I/O for debug $ 15.
An example of a f() generator bursting.
Occasionally I need to generate custom wave forms and burst a known number of cycles into a DUT. This is a single chip solution, board I typically I use is $ 10. You just drag and drop components onto schematic, wire internally with a wire wizard tool and out to pins, right click and config...
components onboard the chip (multiple copies in many cases) -
Regards, Dana.