Frequency Synthesizer User's Guide (TN-006)
This article describes the Frequency Synthesizer developed at CSU-CHILL suitable for use as the STALO for the Solid-state X-band project as well as on the CSU-CHILL and CSU-Pawnee radar systems.
Block Diagram
The figure below shows a block diagram of the frequency synthesizer. An Atmel microcontroller (ATmega164P) is used as the primary controller. Two serial interfaces are provided, RS-232 and RS-485. The RS-232 interface may be configured as a DCE or DTE through jumpers. An in-system programming (ISP) port is provided. Three indicator LEDs and 8 GPIOs are available. A Herley-CTI synthesizer module produces the 9 GHz output. Finally, an alphanumeric display is used to indicate the current operating frequency .
Frequency Synthesizer Block Diagram
Components
Microcontroller
The microcontroller used is an Atmel ATmega164P. This device contains 16k Flash memory, 1k of SRAM and 512 bytes of EEPROM. The ATmega series of controllers is chosen since they provide an inexpensive means of controlling remote devices, and open-source programming tools such as WinAVR are available.
Two independent USARTs are available on the device. In this design, they are used to drive the RS-232 and RS-485 interfaces of the synthesizer. The RS-485 interface is used to implement the Modbus/RTU protocol. This permits the synthesizer to be remotely controlled, while sharing the control bus with various other devices that also use the Modbus protocol.
The SPI interface port available on the microcontroller provides a convenient means of controlling the Herley-CTI microwave synthesizer module, which requires a serial interface. The same interface is also used to control the on-board LED display.
I/O ports available on the controller are used to implement the 8-bit GPIO port on the board. Each bit has independent direction control and an optional pullup resistor.
The microcontroller is clocked by a 7.3726 MHz crystal oscillator. The frequency is chosen to be a multiple of popular serial port baud rates such as 9600 bps. This permits the microcontroller to divide down the oscillator frequency to the baud rate with a very small error.
Synthesizer
The design uses a Herley-CTI XS-93xx series microwave multiloop frequency synthesizer. The exact model used can be chosen based on the application. In the case of the X-band project, an XS-9303 was chosen, which can output between 9.16 and 9.36 GHz, with a step-size of 1 MHz. The synthesizer phase-locks to a 10 MHz reference signal at 0 dBm input power.
The synthesizer achieves phase lock within 60-100 ms of being issued a frequency switch command. It is programmed over a serial port, which uses a strobe, clock and data, similar to the SPI bus. The output power is rated at +13 dBm. An alarm output is available, which permits external devices to know if the synthesizer has fallen out of lock,
The synthesizer is chosen for its excellent RF properties. It can achieve harmonics 60 dB below the carrier frequency (second harmonic). The phase noise specifications are shown below:
Offset from Carrier (Hz) | Phase Noise (dBc) | ||
---|---|---|---|
Spec | @ 9.16 GHz | @ 9.36 GHz | |
100 | -80 | -80 | -80 |
1k | -95 | -96 | -96 |
10k | -100 | -100 | -101 |
100k | -104 | -108 | -108 |
1M | -127 | -134 | -134 |
Phase Noise Specifications - XS9303 synthesizer
Communication Interface
The frequency synthesizer provides two means of communication: RS-232 and Modbus/RTU over RS-485.
RS-232
The RS-232 protocol is used when the synthesizer must operate in an environment without any available Modbus infrastructure. The port is used merely as a means of downloading a configuration to the synthesizer, which is stored on the EEPROM non-volatile memory.
The RS-232 port can be configured for either DCE (Data Communications Equipment) or DTE (Data Terminal Equipment) modes of the RS-232 standard. In the DCE mode, a straight-through cable can be used to attach the synthesizer to a standard DB-9 Serial Port, such as those found on PCs or USB-to-Serial converters. In the DTE mode, a crossover cable is needed to attach to a standard port. The modes are chosen by selectively populating resistors, as shown below:
R15 | R16 | R17 | R18 | R19 | R20 | R21 | R22 | |
---|---|---|---|---|---|---|---|---|
DCE Mode | x | x | x | x | ||||
DTE Mode | x | x | x | x |
RS-232 Mode Selection Resistors
Modbus/RTU over RS-485
The Modbus/RTU over RS-485 protocol is used in an environment where the synthesizer output frequency must be changed over time. The Modbus/RTU protocol provides an industry-standard mechanism to achieve this. The RS-485 physical-layer provides a multi-drop bus, which permits multiple devices to attach to the bus by tapping off the differential-pair transmission line.
The Modbus/RTU protocol assigns a unique address to each device on the bus. The controller uses a DIP switch to assign a Modbus address.
Switch Position | Address | |||
---|---|---|---|---|
3 | 2 | 1 | 0 | |
0 | 0 | 0 | 0 | 0x40 |
0 | 0 | 0 | 1 | 0x41 |
0 | 0 | 1 | 0 | 0x42 |
0 | 0 | 1 | 1 | 0x43 |
0 | 1 | 0 | 0 | 0x44 |
0 | 1 | 0 | 1 | 0x45 |
0 | 1 | 1 | 0 | 0x46 |
0 | 1 | 1 | 1 | 0x47 |
1 | 0 | 0 | 0 | 0x48 |
1 | 0 | 0 | 1 | 0x49 |
1 | 0 | 1 | 0 | 0x4A |
1 | 0 | 1 | 1 | 0x4B |
1 | 1 | 0 | 0 | 0x4C |
1 | 1 | 0 | 1 | 0x4D |
1 | 1 | 1 | 0 | 0x4E |
1 | 1 | 1 | 1 | 0x4F |
Modbus/RTU Address Switch Settings
In addition to the standard Modbus/RTU signals, the synthesizer also provides an open-drain alarm output (ALM), which may be wire-or connected with other Modbus/RTU devices in order to provide an interrupt or service required line to the Modbus master. The output is driven by a VN10 MOSFET, and can sink up to 150 mA.
Display
The synthesizer includes the Avago HCMS-2973 eight-character dot-matrix LED display. The display interfaces to the microcontroller through the SPI bus. It appears as a shift register, with each bit corresponding to a pixel on the display. The microcontroller driver code includes a character map to convert ASCII characters to their dot-matrix representations. The display is used to indicate frequency setting and error messages.
LED Indicators
The board features three LED indicators, as shown below
Indicator | Color | Purpose |
---|---|---|
ALARM | Red | Indicates an alarm condition (such as synthesizer out-of-lock) |
OK | Green | Indicates normal operating conditions. Blinks to indicate that a host has addressed the synthesizer on the Modbus interface. |
COMM | Yellow | Flashes to indicate any communications activity on the Modbus interface |
Channel-to-Frequency Mapping
Modbus Registers
The interface to the synthesizer is through Modbus/RTU. The Modbus communications model is a single master controlling various slave devices[1]. Each slave is addressable, and has different registers which may be read or written. This design implements read-only registers (referred to as Input Registers in the Modbus specifications) and read-write registers (Holding Registers). There are no coils or status bits available.
Input Registers
The available input registers are shown in the table below:
Register Number | Name | Description |
---|---|---|
1000 | ALARM | Indicates the cause of any alarms indicated by the Modbus ALM signal. Reading the register clears the alarm condition and deasserts the Modbus ALM signal. |
1001 | STATUS | Indicates the operating status of the synthesizer. |
1002 | GPIO_IN | Reflects the contents of the GPIO port |
Input Register Map
7-1 | 0 |
---|---|
Reserved | Synthesizer Unlocked |
ALARM register
7-1 | 0 |
---|---|
Reserved | Synthesizer Unlocked |
STATUS register
Holding Registers
The available holding registers are shown in the table below:
Register Number | Name | Description |
---|---|---|
1000 | CHANNEL | The current channel at which the synthesizer module operates. The channel-to-frequency mapping is specific to the XS-93xx module used. |
1001 | CONTROL | Operating parameters for the synthesizer module |
1002 | DEFCHANNEL | The default channel to use on power-on. This is stored to Non-volatile storage. |
1003 | DEFCONTROL | The default control word to use on power-on. This is stored to Non-volatile storage. |
1004 | GPIO | Writing to this register changes the state of the GPIO pins (when configured as outputs) and the state of the pullups (when configured as inputs). |
1005 | GPIODIR | Writing to this register changes the state of the GPIO pins (when configured as outputs) and the state of the pullups (when configured as inputs). |
1006 | DEFGPIO | Default GPIO Output/Pullup, stored in EEPROM. |
1007 | DEFGPIODIR | Default GPIO Direction, stored in EEPROM. |
Holding Register Map
Channel | Frequency (GHz) |
---|---|
0 | 9.160 |
1 | 9.161 |
2 | 9.162 |
... | ... |
200 | 9.360 |
Channel-to-Frequency Mapping, CHANNEL register (for XS-9303)
7-1 | 0 |
---|---|
Reserved | Display Mode (0 - Frequency, 1 - Channel Number) |
CONTROL/DEFCONTROL register
Connectors
Refdes | Purpose |
---|---|
J1 | Controller Power |
J2 | Modbus I/O |
J3 | RS-232 I/O |
J4 | Frequency Synthesizer Interface |
J5 | GPIO |
J6 | Synthesizer +5.2V Supply |
J7 | In-System Programming Port |
J8 | Synthesizer +15V Supply |
List of Connectors register
Controller Power
This connector provides power to the microcontroller and logic circuits. This connector provides reverse-voltage and over-voltage protection. Any voltage over 6.8V or below -0.6V will cause an on-board Transient Suppressor Diode to switch on. Prolonged fault voltages may cause damage to the board.
Pin | Signal |
---|---|
1 | +5V |
2 | GND |
J1 (Controller Power)
Modbus I/O
This connector allows the synthesizer to connect to a Modbus/RTU bus. Also provides connection to the ALM (alarm) output. The "A" and "B" outputs are protected by a pair of transient suppressor diodes. Ferrite common-mode chokes are also provided for additional noise immunity.
Pin | Signal |
---|---|
1 | A |
2 | B |
3 | GND |
4 | ALM |
J2 (Modbus I/O)
RS-232 I/O
This connector allows the synthesizer to connect to an RS-232 port. Note that two possible pin-outs are possible, based on whether the board is configured as a DCE or a DTE.
Pin | Signal | |
---|---|---|
DCE | DTE | |
1, 4, 6, 9 | No Connect | No Connect |
2 | TXD | RXD |
3 | RXD | TXD |
5 | Signal GND | Signal GND |
7 | CTS | RTS |
8 | RTS | CTS |
Shell | I/O GND | I/O GND |
J3 (RS-232 I/O)
Frequency Synthesizer I/O
This connector is attached by a 10-pin ribbon cable to the XS-93xx synthesizer module.
Pin | Signal |
---|---|
1,2 | GND |
3,4 | +5.2V to Synthesizer |
5 | +15V to Synthesizer |
6 | No Connect |
7 | Locked input |
8 | Serial Clock |
9 | Serial Enable |
10 | Serial Data |
J4 (Frequency Synthesizer I/O)
GPIO
The GPIO connector is not populated, but will accept a 16-pin shrouded header. The General-purpose I/O pins are available on this port. The I/O pins are 5V TTL compatible, and have a 22 ohm series resistor. If 3.3V I/Os are used, ensure that the target device has clamp diodes to +3.3V, and replace the 22 ohm series resistor networks with 330 ohm.
Pin | Signal |
---|---|
2,4,6,8,10,12,14,16 | GND |
1 | GPIO 0 |
3 | GPIO 1 |
5 | GPIO 2 |
7 | GPIO 3 |
9 | GPIO 4 |
11 | GPIO 5 |
13 | GPIO 6 |
15 | GPIO 7 |
J4 (Frequency Synthesizer I/O)
Synthesizer Power (+5.2V)
This connector provides +5V (at 900 mA) power to the XS-93xx Synthesizer module
Pin | Signal |
---|---|
1 | +5.2V |
2 | GND |
J6 (Synthesizer +5.2V Power)
In-System Programming Port
This connector permits the ATmega164P Flash and EEPROM to be programmed during development. It is designed to mate with the Atmel USBice II programming cable.
Pin | Signal |
---|---|
1 | MISO |
2 | +5V |
3 | SCK |
4 | MOSI |
5 | RESET |
6 | GND |
J7 (In-System Programming Port)
Synthesizer Power (+15V)
This connector provides +15V (at 80 mA) power to the XS-93xx Synthesizer module
Pin | Signal |
---|---|
1 | +5.2V |
2 | GND |
J8 (Synthesizer +15V Power)
External Links
- http://www.atmel.com Atmel website
References
- ↑ http://www.modbus.org/specs.php Modbus specifications