Post Go back to editing

AD9106 SRAM waveform output not working

Category: Software
Product Number: AD9106

I want to generate a continuous waveform from the AD9106 that outputs the waveform loaded into the device SRAM.
I configure the WAVE SELECT register, 0x27, to run a waveform read from RAM between START_ADDR1 and STOP_ADDR1 for WAVE_SEL1.
I load the 12 bit waveform into the SRAM locations 0x6fff to 0x6000. The waveform is linear ramp with values 0 to 4095.
I set the 12 bit left justified start and stop addresses for DAC1 into registers 0x5d and 0x5e.
I select a continuous waveform in the pattern type register, 0x1f.
I set all the values to 0 for the pattern time base register, 0x28. I use the default value in the patter period register.
I set the analog gain to 90 and the digital gain to 500, registers 0x07 and 0x35.
I set the bit to run the waveform in register 0x1e, pattern status register.
I set the external trigger bit low to start the waveform.
The waveform starts to run, the pattern generator on bit is set in register 0x1e.
I observe a very small waveform of only 4 0.003 V steps at OUT1 for DAC1 with a 220 micro-sec period.
There is a configuration error bit set, bit 4, in register 0x60: "When period register setting value is smaller than pattern play cycle, this error is toggled."

What am I doing wrong? I also don't understand what the output from the SRAM should look like relative to the values loaded in to that address space.

Thank you,

Rick Bauer

  • Hello Rick, 

    Thank you for your interest in AD9106.

    There is a sequence to load your data to RAM which is detailed in FAQ4 from this page. Another good reference is the mbed code for example1 in this wiki.

    Kind Regards, 


  • Hello rick bauer,

    i also facing same issue. i also refer datasheets, mbed example but not showing expected output. i want generate variable frequency and amplitude square wave but now i try to generate ramp wave as per mbed example...

    please if you got solution or steps or any code please can you help me? 

    I have thoroughly reviewed the datasheets, but it appears that I may be missing some crucial steps or misinterpreting certain instructions. I would greatly appreciate it if you could provide me with guidance and clarification on the correct procedure for performing write and read operations on the SRAM of the AD9106 devices.

    If possible, could you please provide me with detailed step-by-step instructions, highlighting any potential pitfalls or commonly overlooked aspects of the process? Additionally, if there are any specific register settings or considerations I should be aware of, kindly provide those details as well.

    i kindly wait for your help....