simple AD9851 DDS project - Page 1
Forum section: electronics / projects

author: ealex
author_rank: Frequent Contributor
timestamp: November 11, 2016, 08:02:50 am
content: HelloI'm trying to make my own AD9851 based DDS. Chip datasheet:http://www.analog.com/media/en/technical-documentation/data-sheets/AD9851.pdfI'm using, as a reference:http://www.sp7ewl.one.pl/attach/DDS_AD9851_V1_Schematic.pngandhttp://www.n2pk.com/SVNA/N2PK_SVNA_V1.pdfI 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, etcI'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 debuggingDoes the RF layout look acceptable ?The board is 100x50mm ( one of the standard dimensions from seed )

author: danadak
author_rank: Super Contributor
timestamp: November 11, 2016, 11:13:34 am
content: 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/5100https://www.jlab.org/accel/eecad/pdf/050rfdesign.pdfhttp://www.semtech.com/images/datasheet/rf_design_guidelines_semtech.pdfRegards, Dana.

author: void_error
author_rank: Frequent Contributor
timestamp: November 11, 2016, 02:55:42 pm
content: 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).

author: ealex
author_rank: Frequent Contributor
timestamp: November 12, 2016, 09:40:22 am
content: 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 .

author: Kleinstein
author_rank: Super Contributor
timestamp: November 12, 2016, 09:51:04 am
content: 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

author: salbayeng
author_rank: Frequent Contributor
timestamp: November 12, 2016, 11:45:46 am
content: Some notes:"ouput" is spelled wrong.You should use the correct sort of RF inductors in the filter.Vishay? make identicalwoundinductors to the coilcraft ones , but at 1/10 the cost see IMC0805ERR47J01also 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 adequateThe 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.

author: ealex
author_rank: Frequent Contributor
timestamp: November 15, 2016, 02:12:13 pm
content: hellosalbayeng - 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, etcthe resistors just in front of the LDO's where planned as resistors - test points, etc.i can use them for ferrite beads as wellNext 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 webi'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 islandsany 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.pdfi'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

author: ealex
author_rank: Frequent Contributor
timestamp: November 15, 2016, 07:14:28 pm
content: one of these 2 inductors could work ?:MLF2012DR15KT000 :http://ro.mouser.com/ProductDetail/TDK/MLF2012DR15KT000/?qs=sGAEpiMZZMsg%252by3WlYCkU4Ucsz4Og40lpbv10WkHBqA%3dHK2125R15J-T :http://ro.mouser.com/ProductDetail/Taiyo-Yuden/HK2125R15J-T/?qs=sGAEpiMZZMsg%252by3WlYCkU5iuzh4MJmq0iHQXBlPKikQ%3dLQW2BASR15J00Lhttp://ro.mouser.com/ProductDetail/Murata-Electronics/LQW2BASR15J00L/?qs=sGAEpiMZZMsg%252by3WlYCkU2dEE1%252bhg4rW7JJl2r3mD9c%3d

author: ealex
author_rank: Frequent Contributor
timestamp: November 16, 2016, 10:34:05 am
content: i think i'll go with one form the series recommended by salbayeng: IMC0805ERR18J01data sheet:http://www.mouser.com/ds/2/427/imc08051-239795.pdf, the 180nH onei've simulated the filter in ltspice - added the inductor series resistance and parallel capacitancethe -3dB point is at ~59MHz.

author: salbayeng
author_rank: Frequent Contributor
timestamp: November 19, 2016, 10:06:17 am
content: 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.

author: ealex
author_rank: Frequent Contributor
timestamp: November 19, 2016, 10:47:51 am
content: thanks againmeanwhile 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.

author: salbayeng
author_rank: Frequent Contributor
timestamp: November 19, 2016, 12:49:51 pm
content: Hope it all goes well for you!Have you got a spectrum analyser to see how well your circuit performs?

author: ealex
author_rank: Frequent Contributor
timestamp: November 19, 2016, 03:24:59 pm
content: no, i don't have a proper one, only the FFT from DS1052 ... but that's barely usable.

author: bitseeker
author_rank: Super Contributor
timestamp: November 19, 2016, 11:53:06 pm
content: Neat project, ealex. Looking forward to seeing how it runs when you get the PCB built up.

author: salbayeng
author_rank: Frequent Contributor
timestamp: November 20, 2016, 12:36:10 am
content: 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 fromhttp://www.minicircuits.com/app/AN40-012.pdfwe can see that 0dbm=224mV , and -10dBm=71mVLot of useful stuff here:http://www.minicircuits.com/applications/applications_notes.htmlAlso note the MAR-02SM is the same as MSA-0286http://www.minicircuits.com/pdfs/MAR-2SM+.pdfThe 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_ASo 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)

author: ealex
author_rank: Frequent Contributor
timestamp: November 20, 2016, 04:16:25 pm
content: helloi'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.

author: ealex
author_rank: Frequent Contributor
timestamp: February 08, 2017, 07:36:12 pm
content: helloa quick update:I've finally got the pcb and partially assembled it: DDS + filter and power supplyI'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'sTest 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:

author: ealex
author_rank: Frequent Contributor
timestamp: February 10, 2017, 01:01:36 pm
content: finally got time to connect everything and set the board to output 0dBmi 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 fromhttp://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

author: ealex
author_rank: Frequent Contributor
timestamp: August 12, 2017, 10:58:28 am
content: 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 boardsthe control board uses a SPI IO expander to generate control signals for each DDS boardalso, 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 syncthe 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 workinga 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 ... )

author: Rerouter
author_rank: Super Contributor
timestamp: August 12, 2017, 12:19:39 pm
content: 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.

author: ealex
author_rank: Frequent Contributor
timestamp: August 12, 2017, 03:00:48 pm
content: 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