Analog Devices (AD) provide good PC software with an easy to use GUI for the control of their frequency synthesiser chips. Versions are available for their Int-N and Frac-N chips and also those with on-chip VCOs. If you have one of their evaluation boards you can use the software to “tweak” the different register settings to be programmed into the chips to set them up to optimise their performance in different applications. By careful adjustment of the parameters such as the charge pump current it is possible to improve the phase noise performance. The software is also useful for debugging home brewed PLL boards using the ADF4XXX chips by directing different on-chip signals to the MUXOUT pin.
The evaluation kits are aimed at professional users and are expensive, but the support software can be downloaded free from AD's website! The evaluation kits are controlled over USB using a Cypress CY7C68013A USB interface chip. The Cypress chips are available on Ebay mounted on small PCBs of Chinese origin all ready to go. They cost anywhere between £4 to £10, depending how long you are willing to wait for them to be delivered. You probably could not buy the parts for that price! Figure 1 shows one of the boards.
More recently small PCBs have become available on Ebay again from China/Hong Kong that have ADF4350/1 chips with all the support circuitry mounted on them which cover the frequency range 35 MHz to 4.4 GHz.
The idea of the controller is to take the USB input from a PC running the evaluation software and give out the three SPI control lines for loading the register data into the ADF4xxx. The trick is to “fool” the software on the PC into thinking it is connected to one of the AD Evaluation PCBs by programming in the VID (vendor identity) and the PID (product identity) into the CY7C68013A so that it loads the necessary drivers and takes command of the ADF4xxx chip.
The VID and PID for the Int-N are VID 0456 and PID B403. These values, in my experience, work with all of the software for the different AD PLLs that I have tried.
The software I used for setting up the CY7C68013A USB interface chip was written by G8KBB for his interface for the N2PK VNA and can be downloaded from here .http://www.g8kbb.co.uk/html/downloads.html
The one you want is titled “USB v0-22 drivers 32/64 bit incl V5 VNA for XP / Vista / Windows 7”. Download this and unzip it into a folder of your choice. The new folder will contain a folder and four files. One is an executable which is used to set the VID and the PID in the Cypress chip. In the zip archive there are also some instructions on what to do. I have cut and pasted out the relevant bits below:
STEP BY STEP (new signed drivers) Courtesy of G8KBB and GM3SEK.
1. Unzip the driver files into a suitable location. This will install the 'usb configure.exe'
program and also create driver subdirectories called ‘XP’ and ‘Vista-Windows 7’.
2. Plug in the USB card. Windows will identify there is a new USB device, and may then
search for several minutes to find drivers; you have to wait until it gives up. (If you see
any messages about "This device will go faster", ignore them and they will go away. See
step 10 for more details.). Note: it is possible that, if previously unsigned drivers were
loaded or Windows was instructed not to install the drivers, that no such response will be
obtained. In this case, run Device Manager, locate the entry for the interface and select
“update drivers” manually.
3. When the "Found New Hardware Wizard" eventually appears:
3.1 Choose "No, do not connect to Windows Update" and click Next.
3.2 Choose "Install from a list or specific location" and click Next.
3.3 Choose "Search for the best driver in these locations", check "Include this
location" and Browse to one of the subdirectories created in step 1 as
appropriate for the operating system, (”latest Drivers/Windows 7”). Click OK and then click Next. That installs the interim drivers in the Cypress and it shoukd be showing at Cyrpress NOEEPROM FX2 in “Device manager”, under “USB controllers”, If not go back over the previous steps.
4. The USB drivers are installed. Ignore any "EEPROM missing" error message and click
“Next”. It will then tell you that the drivers have not passed Windows Logo testing.
Ignore this and click "Continue Anyway" (all this means is that the chip has been found
correctly and either the EEPROM is missing or it is blank). When the process completes,
click the "Finish" button. You are returned to the Windows desktop and the "Found New
hardware" flag pops up at the lower right.
5. Go to the directory you created in step 1 and double-click the 'usb configure.exe'
program. If you get a "Compressed Files warning", click "Run". The "N2PK USB
Interface Control" dialog opens. Make sure that the title of the dialog box indicates
version 2.2 or later of the program.
6. Go to the "Setup" tab and use the Browse" button in the "Vend_Ax filename" field to
find the 'Vend_Ax ‘ Hex' file which is in the archive that you have downloaded. Click "Save Settings". Click on the “Find devices” button and select the device indicated. Note that if you have any other Cypress controller chips plugged in at this point then it may find these as well; be careful not to reprogram them inadvertently.
7. Go to the "Program FX2 Chip EEPROM" tab and click "Download".
Watch the messages at the bottom. If the download succeeds, the final line will say
"SUCCESS: Program downloaded" and it will enable the "Read" and "Write" buttons on
that tab. Click "Read" and you should get 8 bytes of FF. At this point you are
communicating correctly with the USB card. If you navigate away from this tab in the
program at this time then you will find you can no longer communicate with the card
until you reset it by disconnecting it and reconnecting it.
8. In the "Write EEPROM" field of the same tab, select the "User Selected Value" option from the drop-down list and type following Hex data into the box below, “C0 56 04 03 B4 00 00 00”. This is the AD PID and VID reverse order hex. Then click the “Format” button and then the “Write data” button. That should result in a success message, and the EEPROM will have been programmed. Now click the "Read" button and check that it reads back the same string that was programmed in (see "Data to be written" at bottom of tab). If the EEPROM does not read back correctly, go to the drop-down list, select the "Erase (write FFs)" option and repeat the "Write Data" operation to (try to) reset the EEPROM.
Do not pull the USB plug out while the EEPROM is not reading back correctly, or you will lose control of the EEPROM. When all is OK in step 8, close the 'usb configure.exe' program. Note that at this point the program running on the USB controller chip is the “Vend_Ax” programming utility and not the AD ADF4xxx Eval program.
I have come across boards that cannot be re-programmed. This was because the EEPROM had a write protect bit set to prevent it being re-programmed. I could not find a way of defeating this, that worked, so I simple replaced the EEPROM chip. They are around £1 each on ebay.
9. Pull the USB plug out and reconnect it. When the "Found New Hardware Wizard"
9.1 Choose "No, do not connect to Windows Update" and click Next.
9.2 Choose "Install from a list or specific location" and click Next.
9.3 Choose "Search for the best driver in these locations", check "Include this
location" and Browse to the appropriate subdirectory created in step 1. Click
OK and then click Next.
If the wizard does not appear, open Control Panel, select the “System” Icon and from
there select the “Hardware” tab. Then click the “Device Manager” button. Select the first
item in the list and from the Action menu select “scan for hardware changes”. This
should then cause Windows to find the device.
10. If you have already installed the AD Int-N Eval software good and well, if not go and get it and install it. At this stage it is probably good to reboot the PC and re-plug the Cypress controller. Looking at your “Device manager you should see under “USB Serial Bus Controllers” An entry “ADF4xxx USB Adapter Board” or some such reference to the ADF synthesiser. At this stage all the drivers are installed. If the "Found New Hardware Wizard" appears again, repeat steps 9 and 10 until Windows can routinely find the USB interface when it is plugged in.
As with all things to do with PCs and particularly USB interfaces lots of patience and sedatives are required!
11. Start up the AD Int N package and connect the headers on the Cypress board to the ADF4XXX as follows:
PA0 - LE
PA1 - CLK
PA2 – DATA
GND – GND (on ADF4XXX board)
In the Int N package select your device and check the USB board (green) button and press “Connect”. After a few second the programme should respond saying “ADF4XXX adapter Board Connected” in the lower left of the window in green lettering. You are now ready to start programming up the chip and playing with the registers from the GUI interface. The software can be used to debug PLL boards by routing internal signals on the chip to MUXOUT pin and probing it with a scope.
1. There are two versions be of the blue Chinese Cypress boards that I have come across, one produced by LCSOFT and the other by GEEETECH.COM and they have different configurations of the jumpers. The board pictured is the Geeetech variant and this has two jumpers. J1 simply connects the two SMD LEDs beside it in and out of circuit and for our purposes can be left open. J2 is the one of interest here. It has to be open to programme and enable the small 8-pin EEPROM chip beside it. This is where the VID and PID for the AD PLL is stored. When it is closed the EEPROM is disabled and the board will enumerate with the default Cypress PID/VID. The LCSOFT board has only one jumper and it operates in the opposite way, and it has to be closed to enable the programming and operation of the EEPROM.
2. The VID and PID numbers are in Hex and are as follows for some of the different AD Evaluation boards:
VID_0456&PID_B403.DeviceDesc="ADF4xxx USB Adapter Board"
VID_0456&PID_B408.DeviceDesc="Analog Devices RF Eval Board"
VID_0456&PID_B40D.DeviceDesc="Analog Devices RFG.L Eval Board"
VID_0456&PID_B40E.DeviceDesc="Analog Devices RFG.L2 Eval Board"
VID_0456&PID_7050.DeviceDesc="Analog Devices RFG.W Eval Board"
VID_0456&PID_7051.DeviceDesc="Analog Devices RFG.W2 Eval Board"
VID_0456&PID_7052.DeviceDesc="Analog Devices RFG.W3 Eval Board"
3. The Hex string that is typed into the “Write EEPROM” window of the G8KBB USB interface. It is composed in the following way. The C0 at the start tells the programme to write the EEPROM. The following four Hex numbers are the VID and PID in little endian format, ie in reverse order! Don’t know why! The zeros just seem to be padding.