Author Topic: simple AD9851 DDS project  (Read 9224 times)

0 Members and 1 Guest are viewing this topic.

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
simple AD9851 DDS project
« on: November 11, 2016, 08:02:50 am »
Hello

I'm trying to make my own AD9851 based DDS. Chip datasheet: http://www.analog.com/media/en/technical-documentation/data-sheets/AD9851.pdf
I'm using, as a reference:
http://www.sp7ewl.one.pl/attach/DDS_AD9851_V1_Schematic.png and
http://www.n2pk.com/SVNA/N2PK_SVNA_V1.pdf

I ended up with the design from the attached PDF and the partial lay-out from the attached image. It still needs a lot of clean-up, etc

I've added a bunch of attenuator pads in front and after the RF amplifier stage - i want to get as close to 0dBm as possible and i don't know how much output range control i have from the DDS I_SET resistor.
All the "extra" parts have the same role - to help with the debugging

Does the RF layout look acceptable ?

The board is 100x50mm ( one of the standard dimensions from seed )




 

Offline danadak

  • Super Contributor
  • ***
  • Posts: 1875
  • Country: us
  • Reactor Operator SSN-583, Retired EE
Re: simple AD9851 DDS project
« Reply #1 on: November 11, 2016, 11:13:34 am »
I am not a layout expert by any measure, but I assume other side of board is ground plane ?

If so I think you should have a few more vias in the board to build a consistent ground plane.


https://www.maximintegrated.com/en/app-notes/index.mvp/id/5100

https://www.jlab.org/accel/eecad/pdf/050rfdesign.pdf

http://www.semtech.com/images/datasheet/rf_design_guidelines_semtech.pdf


Regards, Dana.
Love Cypress PSOC, ATTiny, Bit Slice, OpAmps, Oscilloscopes, and Analog Gurus like Pease, Miller, Widlar, Dobkin, obsessed with being an engineer
 

Offline void_error

  • Frequent Contributor
  • **
  • Posts: 673
  • Country: ro
  • I can transistor...
Re: simple AD9851 DDS project
« Reply #2 on: November 11, 2016, 02:55:42 pm »
I'm no expert either but I'd put more vias to the ground plane to provide a low impedance path to ground assuming the other side of your board is a ground plane. Also, watch out for silkscreen markings over component pads (R20).
Trust me, I'm NOT an engineer.
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #3 on: November 12, 2016, 09:40:22 am »
yes, the bottom side will be ground plane.
also, i plan to add vias around the RF area.

the pcb is not yet finished - i need to clean it up - silkscreen over pads, add the ground planes and stitch them, finish power rails, etc.

i was curios if the layout of the RF section is ok.

anyway, i will build it and keep the thread updated - add the design documentation and some pictures / measurements when the PCB's get here .
 

Offline Kleinstein

  • Super Contributor
  • ***
  • Posts: 14620
  • Country: de
Re: simple AD9851 DDS project
« Reply #4 on: November 12, 2016, 09:51:04 am »
I am not an high frequency expert, but the layout sofar does not look good. Even if the second layer is a GND plane it is a good idea to have some GND connections even on the top layer too. At least those that need to be short, like for decoupling at the DDS chip. Also the filter part is quite stretched out - though some distance between the inductors is a good idea.

Depending on the overall use one could use the separation in ground provided by the transformer. So it could be a good idea to use a separated ground area for the output section
 

Offline salbayeng

  • Frequent Contributor
  • **
  • Posts: 296
  • Country: au
Re: simple AD9851 DDS project
« Reply #5 on: November 12, 2016, 11:45:46 am »
Some notes:
"ouput" is spelled wrong.

You should use the correct sort of RF inductors in the filter.
Vishay? make identical wound inductors to the coilcraft ones , but at 1/10 the cost see IMC0805ERR47J01
also the IMC0603  range (Mouser have them).
Below ~100MHz, you can get away with multilayer inductors (depends on the Q and SRF you need).

You seem to have way too many resistors in the attenuators, you only need 3 resistors each, throw the other 8 away.

You don't need 3 capacitors in parrallel, they are are only coupling 50ohms.  Ordinary MLCC's are just fine at these frequencies and power levels (Use NP0 or C0G dielectric).   Component size 0805 with pads is pretty close to 50ohms too.

On the anti alias filter caps C17,22,24,26 the ground pad should have a 2 vias, one on each side of the pad, this gives the lowest ESL. I would make this filter section in one line, rather than meandering , the text "data In, W_clk, FQDS RESET" waste an enormous amount of space, you could shorten to D W F R , and move the DDS chip to the left, giving more space for the filter.  Note that the track from the transformer to C17 is potentially radiating EMI across to the input attenuator, so should be short.  L1 can be closer to L2 ,  but L2 to L3 spacing maybe a bit more , if you stagger the inductors so they are 36degrees off centre they will have minimal coupling.

Lose C14 , C12 , when you draw 3 decoupling caps on a schematic, you are supposed to sprinkle them around the PCB, on each IC's power pin, piling them all together is pointless (unless you are working with SMPS or RF power stages)

You only need one of R33 R34 R35, it should be close to the signal line to avoid a "stub" , the connection to the power can be made with a thin trace to make it more inductive.
Actually I would swap R33 for a ferrite bead (2500ohms) and move c27 over to decouple the other end of R33, and remove R34.

R10 is a ferrite bead I hope?

Is that  a MAR-06 on the output?

Put ground plane islands in the empty spaces leave about 100mil (2.5mm) gap to the signal trace, ground these islands with vias. Note you don't need to go overboard with lots of tiny vias !!! 36mil (0.9mm) vias spaced at 200mils (5mm) are perfectly adequate

The DDS chip may need a heatsink or some careful thermal vias, at 555mW it will get warm.

I've made freq hopping 2450MHz synths on 1.6mm FR4 , so you shouldn't have any real problems with this. I would try to make the filter / amplifier more compact and leave out unneccesary parts.  Long windy tracks can turn into inductors ~ 10nH per 10mm.
 
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #6 on: November 15, 2016, 02:12:13 pm »
hello

salbayeng - thanks for your advice.

also, i've updated some stuff - i decided i need 2 buffered outputs instead of one.

the changes from the first version are:
- removed all extra components - resistors and decoupling capacitors, etc.
- the anti-alias filter is arranged in a line, no more bends
- added several vias next to the filter caps - see the photo that has the silk screen displayed
- added a power divider - to split the signal to the two output amplifiers
- remade the MMIC bias network - moved the caps in the proper place, removed extra resistor.
- added the second amplifier and it's components
- clean-up, silkscreen over pads, etc

the resistors just in front of the LDO's where planned as resistors - test points, etc.
i can use them for ferrite beads as well

Next step:
- update the MMIC bias as you said - one resistor and one ferrite bead.
- remove the 2 pin headers that where planned for hand-made toroid inductors.
- i'll have to check if i can find appropriate inductors from the range you proposed.
  the entire filter section is copy-paste from some examples found on the web
  i'll try to keep it like that for now, as i don't have proper gear to test any changes, other than ltspice.
- add vias where they're needed - next to bypass caps / rf stuff, unconnected copper islands

any hint how to bring 12V to the amplifier section ? now i plan to add a jumper wire from P13 to P12 so the ground plane under the RF section is kept intact.

the amplifier is this: http://datasheet.octopart.com/MSA-0286-BLKG-Avago-datasheet-10310790.pdf

i'll have to add a small heatsink on the DDS - it does not have a thermal pad.

note: some of the part numbers where changed in the schematic

 


Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #8 on: November 16, 2016, 10:34:05 am »
i think i'll go with one form the series recommended by salbayeng: IMC0805ERR18J01
data sheet: http://www.mouser.com/ds/2/427/imc08051-239795.pdf , the 180nH one

i've simulated the filter in ltspice - added the inductor series resistance and parallel capacitance
the -3dB point is at ~59MHz.
 

Offline salbayeng

  • Frequent Contributor
  • **
  • Posts: 296
  • Country: au
Re: simple AD9851 DDS project
« Reply #9 on: November 19, 2016, 10:06:17 am »
The Taiyo Yuden HK2125R15J-T  would probably work OK in your application, it has a Q of 30, and SRF of 500MHz.
( I have a sample kit of the Taiyo Yuden HK2121 range, bought about 25years ago, amazing the same part is still made!)

When using simulators you should include the parasitic values of the components,
So for example at 100MHz ,  the Q of the HK2125R15 is 30,  so given the impedance of 120nH at 100MHz is 80, you need to include a parasitic resistor of 80/30 ohms in series with the coil, or  80 * 30 = 2400 ohms across the coil, this probably a more representative loss model. (Also spice type simulators are happier with a parallel resistors.

The SRF is 500MHz , so this is 1pF stray capacitance for resonance with 150nH.
Eyeballing the effect of the parasitic cap is fairly easy, it goes like a square law: if SRF is twice your operating frequency, then the parasitic cap is 1/4 of the cap needed to resonate, if SRF is 3 times then stray cap is 1/9 of Cres , if it's 4 times then stray cap is 1/16 of Cres.

So your simulator should use a parallel combination of 150nH, 2400ohm, and 1pF for the HK2125.

In arm-wavy terms when the Q drops below ~12 or the SRF is less than twice your operating frequency the parasitic effects will be quite visible.

Capacitors also have loss and stray inductance but the parasitics of inductive parts dominate.
(Stray inductance is typically 1-2nH for SMD parts.)
So you could add say 1nH in series with a 100pF capacitor, this gives a resonance at ~ 500MHz, and Zof 3ohms, if you include this in your simulator, it will put a dip in the response around 500Mhz.
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #10 on: November 19, 2016, 10:47:51 am »
thanks again

meanwhile the design was updated and the pcb is almost ready, see the attached files.
i've added the parasitics, as you described, in the ltspice simulation - i can't get the .asc now.

i will remove the "12V present" led ( D3 and it's resistors ) as it useless.

still needs some clean-up, i'll try to finish it this weekend and send it out on monday to try and get them as early in december as possible.
 

Offline salbayeng

  • Frequent Contributor
  • **
  • Posts: 296
  • Country: au
Re: simple AD9851 DDS project
« Reply #11 on: November 19, 2016, 12:49:51 pm »
Hope it all goes well for you!
Have you got a spectrum analyser to see how well your circuit performs?
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #12 on: November 19, 2016, 03:24:59 pm »
no, i don't have a proper one, only the FFT from DS1052 ... but that's barely usable.
 

Offline bitseeker

  • Super Contributor
  • ***
  • Posts: 9057
  • Country: us
  • Lots of engineer-tweakable parts inside!
Re: simple AD9851 DDS project
« Reply #13 on: November 19, 2016, 11:53:06 pm »
Neat project, ealex. Looking forward to seeing how it runs when you get the PCB built up.
TEA is the way. | TEA Time channel
 

Offline salbayeng

  • Frequent Contributor
  • **
  • Posts: 296
  • Country: au
Re: simple AD9851 DDS project
« Reply #14 on: November 20, 2016, 12:36:10 am »
Re spectrum analyser: Might be useful to make friends with someone at a local Uni EE dept. or  a radio-comms service centre or avionics tech at an airport or a tech at a local radio/tv transmitting station. Any of these guys will be more than happy to help out someone who has built something from scratch, and might even give you some free stuff!.

Re the note on your schematic, top right, "measure power here" , you can't actually measure "power" without changing the power at that point, you can measure voltage however, so from http://www.minicircuits.com/app/AN40-012.pdf we can see that 0dbm=224mV , and -10dBm=71mV
Lot of useful stuff here: http://www.minicircuits.com/applications/applications_notes.html
Also note the MAR-02SM is the same as MSA-0286 http://www.minicircuits.com/pdfs/MAR-2SM+.pdf

The AD9581 datasheet says nominal output is 10mA into 200ohm , that is peak current, so RMS is 7.07mA,  I^2R says that's 10mW = 10dbm (and 1.414V RMS = 2v peak = 4vpk-pk)
If you use both outputs and a transformer,  you get 20mW out of transformer , half of this goes into your sourcing resistor R24 = 50ohm, and the remaining 10mW (10dbm) goes down the line.
Your power splitter R43 R44 (each 50ohm) loses 6dB so 4dBm (.35v) goes one way and 4dbm (.35v) the other . 
If you allow, say,  2db loss across the transformer and filter, then its only 2dBm at this point , so you could in theory replace the amps with a piece of wire and follow with a 2dB attenuator.
Note that without the amp, the voltage on one output port depends on whether the other port is open or has 50ohms load.
So available power with ATTA = 0dB is 2dBm at DDS_OUT_A

So to setup the levels we need to work backwards,  for an -02 amp the 1db compression point is ~4.5dBm , so lets say we use 3dBm at this point,  and follow with a 3dB pad (this value pad ensures reasonable tolerance to mismatched loads) to give 0dB out the connector.  Given the -02 has 3dBm at it's output, and 13dB gain, the input needs therefore to be -10dBm ,  so ATTA needs to be -12dB.
You won't get 0dB across the full frequency band,  the lower frequency -1db point  is determined by your transformer ,  and the upper frequency by the filter.

Note also the values for the filter are tied to the reference clock, so if you change from 180MHz, you need different filters.

Note there isn't much headroom on the AD9851 output with 200ohm load and 10mA out, so you might need to mark the pot at 3900ohms.
(Also you might consider using a DAC or an electronic pot here then you can do software level calibration vs frequency , bit of an overkill really)
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #15 on: November 20, 2016, 04:16:25 pm »
hello

i've added the 2 amplifiers to isolate the 2 outputs as much as possible.
one idea for this is to make an AD8302 module -> i'll need a stable reference output.

i'll try to get access to a lab somewhere, but i don't think i have a real chance.
maybe try to get in touch with some local amateur radio operators.

i'll order the PCB's tomorrow morning and continue updating this thread once i get them.
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #16 on: February 08, 2017, 07:36:12 pm »
hello

a quick update:
I've finally got the pcb and partially assembled it: DDS + filter and power supply

I've found 2 mistakes (untill now):
    - the Rset footprint is too small and it was hard to solder
    - the LDO's used for 5V rails have a 6V input limit - i had to hack in some 7805's

Test setup:
- DDS filter output terminated in a 50 ohm resistor soldered on the board
- Rset was not adjusted - just as it happened to be straight from the package
- 30MHz oscillator and the 6x multiplier is enabled.
- DDS is configured from a python script on a rpi.
i'm amazed it actually works, because the logic 1 level is specified at over 3.5V when VDD is 5V.

the frequency and vrms are displayed in each picture.
"out of the box" it's outputting ~6dBm of RF.
( i need to get the radio amateur license - this can easily generate PSK / FSK digital modes )

Some FFT data ( new + hacked DS1054 )












the following captures show the output filter response:




« Last Edit: February 08, 2017, 07:40:30 pm by ealex »
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #17 on: February 10, 2017, 01:01:36 pm »
finally got time to connect everything and set the board to output 0dBm

i had to set the output attenuator to 5dBm - a basic RTFM mistake ...
the mmic amplifier will start distorting once the output gets over 4.5dBm: page 2 from
http://datasheet.octopart.com/MSA-0286-BLKG-Avago-datasheet-9792763.pdf

=> i had to bypass the attenuator pad in front of the amplifier block, use a 5dBm output pad and adjust DDS's RSET for 0dBm output.

i will add an updated schematic and the perl script i'm using to drive the DDS
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #18 on: August 12, 2017, 10:58:28 am »
just an update + code that might be useful for someone:
- got the control board and bots DDS boards connected and working
- wrote some code that will start both DDS boards synchronized -> phase offset is usable and stable / under software control as long as the frequency is the same for both DDS boards

the control board uses a SPI IO expander to generate control signals for each DDS board
also, as described in Analog's application note, there is a common FQ_UPDATE that will update  both DDS devices at once -> this allows the phase to be in sync

the control board is attached to a RPI SPI0 port.
there will also be a link via one of the I2C ports for the ADC that reads the output of a AD8302 chip.
i'll make a full post once i get that part working

a photo of the stacked boards:


see the attached archive for the code.
feel free to laugh at my C++ style - i'm using this project as a reason to learn OOP ( 10+ years of bare-metal c background ... )
 
The following users thanked this post: diyaudio

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4700
  • Country: au
  • Question Everything... Except This Statement
Re: simple AD9851 DDS project
« Reply #19 on: August 12, 2017, 12:19:39 pm »
Be aware you will have a small shift over time due to deviations in the local oscillators. Its why for my own project using AD9837's, i ended up using a strong driving oscillator to just run all 6 DDS chips.
 

Online ealexTopic starter

  • Frequent Contributor
  • **
  • Posts: 318
  • Country: ro
Re: simple AD9851 DDS project
« Reply #20 on: August 12, 2017, 03:00:48 pm »
I've got the same setup: the only LO is on the control board.
there is another LO on one of the boards but it's just left there.
it's not powered or connected to the DDS chips
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf