Dual 137.5-4400MHz Frequency Synthesizer Programmable Modules A. Mattana, M.
Referee: Germano Bianchi 2
Index Index Index THE AIM OF THE PROJECT ........................................................................................................................................... 5 INTRO ............................................................................................................................................................................... 5 THE SYNTHESIZER MODULE .........................................................................................................................
Index (This page has been intentionally left blank) 4
Intro The aim of the project Intro Most of the data acquisition systems do not have their own stable clock to sample analog input signals but provide input lines to connect external ultra-stable clock source.
The synthesizer module The synthesizer module 5007 Valon Technology LLC Data Sheet The Valon Technology LLC 5007 Dual Frequency Synthesizer module provides two independent, low phase noise, frequency sources suitable for high quality clock, carrier, or local oscillator frequency generation applications. The unique feature of our synthesizers is our microprocessor controller with FLASH based non-volatile memory that lets you retain your frequency setting after power down.
5007 Valon Technology LLC Data Sheet should be ac coupled and between -10 and 10dBm. The external reference frequency should be an integer multiple of 10MHz, such as 10, 20, 50, 100, or 150MHz. A 5MHz external reference frequency can be used by enabling the reference doubler function with the Configuration Manager software. Both synthesizers will operate either in the fractional-N or integer-N mode depending on the user selected frequency.
The synthesizer module frequency to 1045MHz and the offset to 160MHz. The Configuration Manager calculates the correct LO output frequency. The low-power on-board microcontroller (µC) is used to load the multiple control and frequency registers of each synthesizer with the data stored in either its RAM or FLASH memory. The µC is also used to manage bi-directional communications over the serial interface.
5007 Dimensions and Mounting locations 5007 Dimensions and Mounting locations 5007 Connectors 9
The synthesizer module 5007 Typical Phase Noise Phase noise was measured using the internal 10MHz reference with the Phase Detector Frequency set to 10MHz. The Frequency Increment was set to 1000kHz. The Charge Pump Current setting was 5mA. The phase noise data was taken at the center of the 5 frequency bands. The phase noise will be slightly higher at the top of each band and slightly lower at the bottom. Using an external low phase noise frequency reference will also improve phase noise.
5007 User Interface 5007 User Interface When connected via USB (or serial RS-232 port) it is possible to configure it using a provided windows tool (see next picture). The producer provides also Labview driver to develop your own tool or you can use a GPL Licensed Python library developed by the NRAO observatory.
Moxa NPORT IA-5150 Moxa NPORT IA-5150 NPORT IA-5150 Data Sheet The NPort IA5150/5250 series of device servers deliver easy and reliable serial-to-Ethernet connectivity for the industrial automation market. The NPort IA5150/5250 series is designed to allow any serial device to connect to an Ethernet network.
Product Specifications Redundant dual DC power inputs Warning by relay output and E-mail 10/100BaseTX (RJ45) or 100BaseFX (SC connector, Single/Multi mode) available IP30 Product Specifications LAN Ethernet Switch Ports Protection 2 10/100BaseT(X) ports (RJ45 connector) Built-in 1.5 KV magnetic isolation Serial Interface Interface No.
Moxa NPORT IA-5150 Panel Layout Operation Modes NPort IA5150/5250 Serial Device Servers network-enable traditional RS-232/422/485 devices, in which a Serial Device Server is a tiny computer equipped with a CPU, real-time OS, and TCP/IP protocols that can bidirectionally translate data between the serial and Ethernet formats. Your computer can access, manage, and configure remote facilities and equipment over the Internet from anywhere in the world.
Real COM Mode Real COM Mode NPort IA5150/5250 comes equipped with COM drivers that work with Window 95/98/ME/NT/2000/XP systems, and also TTY drivers for Linux systems. The driver establishes a transparent connection between host and serial device by mapping the IP:Port of the NPort IA5150/5250’s serial port to a local COM/TTY port on the host computer. Real COM Mode also supports up to 4 simultaneous connections, so that multiple hosts can collect data from the same serial device at the same time.
Moxa NPORT IA-5150 Web Console Configuration The Web Console is the most user-friendly way to configure the NPort IA5150/5250 series products. Opening Your Browser with the cookie function enabled just Type 192.168.127.254 in the Address input box (use the correct IP address if different from the default), and then press Enter. The NPort IA5150/5250 homepage will open. On this page, you can see a brief description of the Web Console’s nine function groups.
Network Settings Network Settings You must assign a valid IP address to NPort IA5150/5250 before it will work in your network environment. Your network system administrator should provide you with an IP address and related settings for your network. The IP address must be unique within the network (otherwise, NPort IA5150/5250 will not have a valid connection to the network). First time users can refer to Chapter 3, “Initial IP Address Configuration,” for more information.
Moxa NPORT IA-5150 Serial Settings 18
Operating Settings Operating Settings 19
Boxing Two Synthesizer modules Boxing Two Synthesizer modules 1U Rack mountable Ethernet Controlled Synthesizer The first module is a 1U rack mountable device which is actually used as the main dual clock distributor in the BEST-2 rack in the northern cross control room at Medicina. The 10 MHz input reference is generated by the Medicina Maser Atomic Clock while the dual outputs serves directly a ROACH board equipped with two 8 bit 1Gbps ADCs.
1U Rack mountable Ethernet Controlled Synthesizer The front panel provides a button switch to power on and off the module, two green LEDs indicating if 5 Volts modules are powered, the SMA connectors for RF input/output of the clock synthesizer ant the Ethernet port of the TCP/RS-232 converter. On the rear panel you will find the 220V socket with the fuse.
Boxing Two Synthesizer modules USB Pocket Synthesizer A second unit has been realized. It is a USB pocket synthesizer which needs only of a 220VAC-5VDC switching power supply (Traco Power TMLM 10105, Input 100-240VAC, 50-60Hz, Output 5VDC / 2000mA).
Source Code NRAO Linux Python Library Source Code # # # # # # # # # # # # # # # # # # # # # Copyright (C) 2011 Associated Universities, Inc. Washington DC, USA. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
NRAO Linux Python Library def _generate_checksum(self, bytes): return chr(sum([ord(b) for b in bytes]) % 256) def _verify_checksum(self, bytes, checksum): return (self._generate_checksum(bytes) == checksum) def _pack_freq_registers(self, ncount, frac, mod, dbf, old_bytes): dbf_table = {1: 0, 2: 1, 4: 2, 8: 3, 16: 4} reg0, reg1, reg2, reg3, reg4, reg5 = struct.
Source Code if dbf > 16: dbf = 16 vco = freq * dbf EPDF = self._getEPDF(synth) ncount = int(vco / EPDF) frac = int((vco - ncount * float(EPDF)) / chan_spacing + 0.5) mod = int(EPDF / float(chan_spacing) + 0.5) if frac != 0 and mod != 0: while not (frac & 1) and not (mod & 1): frac /= 2 mod /= 2 else: frac = 0 mod = 1 self.conn.open() bytes = struct.pack('>B', 0x80 | synth) self.conn.write(bytes) old_bytes = self.conn.read(24) checksum = self.conn.read(1) #self.
NRAO Linux Python Library @return: dBm (int) """ rfl_table = {0: -4, 1: -1, 2: 2, 3: 5} self.conn.open() bytes = struct.pack('>B', 0x80 | synth) self.conn.write(bytes) bytes = self.conn.read(24) checksum = self.conn.read(1) self.conn.close() #self._verify_checksum(bytes, checksum) reg0, reg1, reg2, reg3, reg4, reg5 = struct.unpack('>IIIIII', bytes) rfl = (reg4 >> 3) & 0x03 rf_level = rfl_table.
Source Code checksum = self.conn.read(1) self.conn.close() #self._verify_checksum(bytes, checksum) reg0, reg1, reg2, reg3, reg4, reg5 = struct.unpack('>IIIIII', bytes) low_spur = ((reg2 >> 30) & 1) & ((reg2 >> 29) & 1) double = (reg2 >> 25) & 1 half = (reg2 >> 24) & 1 r = (reg2 >> 14) & 0x03ff return double, half, r, low_spur def set_options(self, synth, double = 0, half = 0, r = 1, low_spur = 0): """ Set options. double and half both True is same as both False.
NRAO Linux Python Library def set_ref_select(self, e_not_i = 1): """ Selects either internal or external reference clock. @param e_not_i : 1 (external) or 0 (internal); default 1 @type e_not_i : int @return: True if success (bool) """ self.conn.open() bytes = struct.pack('>BB', 0x06, e_not_i & 1) checksum = self._generate_checksum(bytes) self.conn.write(bytes + checksum) bytes = self.conn.read(1) self.conn.close() ack = struct.
Source Code @return: True if locked (bool) """ self.conn.open() bytes = struct.pack('>B', 0x86 | synth) self.conn.write(bytes) bytes = self.conn.read(1) checksum = self.conn.read(1) self.conn.close() #self._verify_checksum(bytes, checksum) mask = (synth << 1) or 0x20 lock = struct.unpack('>B', bytes)[0] & mask return lock > 0 def get_label(self, synth): """ Get synthesizer label or name @param synth : synthesizer base address @type synth : int @return: str """ self.conn.open() bytes = struct.
NRAO Linux Python Library def _getEPDF(self, synth): """ Returns effective phase detector frequency. This is the reference frequency with options applied. """ reference = self.get_reference() / 1e6 double, half, r, low_spur = self.get_options(synth) if(double): reference *= 2.0 if(half): reference /= 2.