Isomet Modular Synthesiser (iMS) API  v1.4.2
iMS API
Classes | Namespaces
Compensation.h File Reference

Classes for creating and downloading data that is used in the Compensation tables of the Synthesiser. More...

#include "Containers.h"
#include "IMSSystem.h"
#include "IEventHandler.h"
#include "IMSTypeDefs.h"
#include "IBulkTransfer.h"
#include "FileSystem.h"
#include <memory>
#include <deque>
Include dependency graph for Compensation.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  iMS::CompensationEvents
 All the different types of events that can be triggered by the Compensation and CompensationTableDownload classes. More...
 
class  iMS::CompensationPoint
 Stores 4 data fields containing amplitude, phase, sync analogue and sync digital compensation data. More...
 
class  iMS::CompensationPointSpecification
 Completely specifies the desired compensation at a spot frequency. More...
 
class  iMS::CompensationFunction
 Class for performing Compensation related functions with the Synthesiser. More...
 
class  iMS::CompensationTable
 A table of CompensationPoints storing look-up data that can be transferred to memory in the Synthesiser. More...
 
class  iMS::CompensationTableDownload
 Provides a mechanism for downloading and verifying Compensation Tables to a Synthesiser's Look-Up memory. More...
 

Namespaces

 iMS
 The entire API is encapsulated by the iMS namespace.
 

Detailed Description

Classes for creating and downloading data that is used in the Compensation tables of the Synthesiser.

The Compensation Tables are a part of the signal chain in the Synthesiser. There are 4 of them, each serving a different purpose. All 4 are indexed by the signal frequency, spanning the lowest to the highest frequency supported by the Synthesiser, each table consisting of a sequence of look-up entries (typically 2,048) spaced equidistantly in frequency.

The 4 tables are:

(1) Amplitude: used to compensate for frequency-dependent inefficiency in the AO device, as well as in the RF Amplifier and the Synthesiser. The signal amplitude passing through the Synthesiser is multiplied by the compensation output to result in a combined amplitude being passed to the Synthesiser DDS device.

(2) Phase: used in beam-steered AO applications where multiple acoustic columns present in the crystal are offset in phase from each other in a way that is linearly dependent on the frequency offset from a central Bragg Angle adjusted frequency.

(3) Analogue Sync: The output of this table can be routed to the Synchronous DAC output which gives a handy analogue reference signal for either test purposes or for driving external custom circuitry. The advantage of driving this from the look-up table is that custom mappings can be generated which allows great flexibility in configuring the analogue signal in relation to the signal frequency that drives it.

(4) Digital Sync: As with the analogue sync, the output of this table is routed to external synchronous outputs which can be used for test purposes or for driving external custom circuitry. The digital output bits could, for example, be used to tune signal conditioning circuitry as the RF signal passes through certain frequency bands.

Author
Dave Cowan
Date
2015-11-03
Since
1.0