BNMR: PSM (Pol Synth Module): Difference between revisions
en>Suz mNo edit summary |
en>Suz mNo edit summary |
||
Line 11: | Line 11: | ||
== Introduction == | == Introduction == | ||
The PSM | The PSM/PSM2/PSM3 VME modules are used to produce RF for the {{bnmqr|join=and}} respectively. In this document, "PSM" refers to any of these modules. There are significant differences between the modules. The PSM must be run on the {{bnqr}} experiment only, and the PSM2 on {{bnmr}} only (see [[#PSM2]] for details). | ||
The PSM3 is designed to be run on either {{bnmr}} or {{bnqr}}. A front-panel switch selects between {{bnmr}} or {{bnqr}} operating mode. Only one PSM3 module has been built. Currently it is located in the {{bnmr}} VME crate and is still being tested. | |||
== PSM Manuals == | == PSM Manuals == | ||
* Hardware Manuals: | * Hardware Manuals: | ||
** [http://www.triumf.info/wiki/DAQwiki/images/8/8c/PSM.pdf PSM] | ** PSM/PSM2 | ||
** [http://www.triumf.info/wiki/DAQwiki/images/5/50/AD9857_c_ps.pdf AD9857 Quadrature Digital Upconverter] | *** [http://www.triumf.info/wiki/DAQwiki/images/8/8c/PSM.pdf PSM] | ||
*** [http://www.triumf.info/wiki/DAQwiki/images/5/50/AD9857_c_ps.pdf AD9857 Quadrature Digital Upconverter] | |||
** PSM3 (VFS) | |||
*** [https://www.triumf.info/wiki/DAQwiki/images/4/4e/VME_Pol_Synth_III_Manual_rev_0_srk.pdf PSM3] | |||
* Programming Guides: | * Programming Guides: | ||
** [http://www.triumf.info/wiki/DAQwiki/images/e/eb/Psm_ps.pdf PSM] | ** PSM/PSM2 | ||
** [http://www.triumf.info/wiki/DAQwiki/images/8/85/Psmii_ps.pdf | *** [http://www.triumf.info/wiki/DAQwiki/images/e/eb/Psm_ps.pdf PSM] | ||
*** [http://www.triumf.info/wiki/DAQwiki/images/8/85/Psmii_ps.pdf PSM2] | |||
== Description == | == Description == | ||
Please refer to the [[#PSM Manuals]] from which much of this information is derived. | Please refer to the [[#PSM Manuals]] from which much of this information is derived. | ||
The POL Synthesizer Module (PSM) is a VME module built at TRIUMF, incorporating a AD9857 Quadrature digital upconverter. It has been designed to generate a complex modulation swept RF signal summed with a reference frequency (fREF). | === PSM/PSM2 === | ||
The POL Synthesizer Module (PSM/PSM2) is a VME module built at TRIUMF, incorporating a AD9857 Quadrature digital upconverter. It has been designed to generate a complex modulation swept RF signal summed with a reference frequency (fREF). | |||
In the case of the PSM, the swept signal may be a single modulated carrier (1f) or include the modulated 3rd and 5th harmonics (3f and 5f). In the case of the PSM2 the 3f and 5f profiles output the same frequency as the 1f profile. | |||
They are designed to be used to produce RF shifted in phase compared to the 1f profile by 90 or 270 degrees. | |||
Each carrier is independently modulated. | |||
;Note | ;Note | ||
: the harmonics and the reference frequency ( 1f,3f,5f, fREF) are known as "profiles". | : the harmonics and the reference frequency ( 1f,3f,5f, fREF) are known as "profiles". | ||
: '''Do not confuse the "1f" profile with the [[BNMR: Experimental Modes|Experimental (PPG) Mode]] 1f (Freq) !! ''' | : '''Do not confuse the "1f" profile with the [[BNMR: Experimental Modes|Experimental (PPG) Mode]] 1f (Freq) !! ''' | ||
For the {{bnmqr|join=and}} experiments '''only profile "1f" is implemented''', except for PPG Mode 1f (Freq) where both profile "1f" and fREF are supported. | At the time of writing, '''only the "1f" profile''' has actually been used in the {{bnmr}} and {{bnqr}} experiments. | ||
For the {{bnmqr|join=and}} experiments '''only profile "1f" is implemented''' in the frontend code, except for PPG Mode 1f (Freq) where both profile "1f" and fREF are supported. | |||
To avoid confusion, the profile "1f" is referred to in the programs and the [[BNMR: Custom Parameters page|custom parameters page]] as "one-f". | To avoid confusion, the profile "1f" is referred to in the programs and the [[BNMR: Custom Parameters page|custom parameters page]] as "one-f". | ||
The PSM can be operated in two modes: | The PSM/PSM2 can be operated in two modes: | ||
;Single Tone Mode | ;Single Tone Mode | ||
Line 40: | Line 53: | ||
: both the I and Q data paths are active, the output is a quadrature modulated analog output signal. The I and Q data are read from the I&Q data memory. Each profile (1f,3f,5f,fREF) has its own I&Q memory. If an unmodulated carried is needed, I,Q pairs are set to constant values. When the I,Q memory length is set to zero, the output is modulated by a pair of constant values. | : both the I and Q data paths are active, the output is a quadrature modulated analog output signal. The I and Q data are read from the I&Q data memory. Each profile (1f,3f,5f,fREF) has its own I&Q memory. If an unmodulated carried is needed, I,Q pairs are set to constant values. When the I,Q memory length is set to zero, the output is modulated by a pair of constant values. | ||
The carriers are synthesized and modulated digitally. In quadrature modulation mode, the modulation data consists of up to 2048 I,Q pairs sampled at a submultiple of the carrier sample rate. The synthesizer circuit interpolates the I,Q sample rate to match the carrier sample rate before modulation. | |||
See [[#PSM2 Module]] for a note on how the PSM2 differs from the PSM. | |||
=== PSM2 === | |||
The PSM is designed for use in the BNQR experiment. The PSM2 module was later designed for use in the BNMR experiment, and is a modified PSM module, running at a higher frequency (up to almost 80MHz compared with the PSM's almost 40MHz). See [http://www.triumf.info/wiki/DAQwiki/images/8/85/Psmii_ps.pdf PSM2] for the differences between the PSM and PSM2. | |||
;Note | |||
:Due to a bug in the module, the PSM2 does not support Single Tone Mode. To simulate Single Tone Mode, the PSM2 is run in Quadrature Modulation Mode with the Idle i,q pair set to (511,0). This is set up automatically by the custom parameters page when the user selects Single Tone Mode. A note to this effect appears below the [[BNMR Mode Parameters#Mode 1f(Freq)|PSM2 parameters]]. | |||
=== PSM3 === | |||
This module will replace the PSM and PSM2. | |||
The POL Synthesizer Module (PSM3/VFS) is a VME module built at TRIUMF. It has been designed to generate a complex modulation swept RF signal summed with a reference frequency (f1). It comprises four independent frequency channels (f0 Ch1-4) and a fifth reference channel (f1). | |||
The PSM3 has two operating modes (programmable or selected by a switch on the front panel). In BNMR mode, the four frequency channels output RF at the selected frequency in four fixed phases: O,90,180 and 270 degrees output from f0 Ch1-4 respectively. The f1 reference channel outputs the reference frequency at the same phase at the 0 degree channel. | |||
In BNQR mode, the module outputs harmonics of the f0 Ch1 RF on the f0 Ch2-4 channels. In BNQR mode, a phase offset from f0 Ch1 can be programmed for Ch2-4 channels. | |||
The PSM3 has no single tone/quadrature mode register. Single tone mode is achieved by modulating with a fixed I,Q pair of e.g. (512,0). | |||
=== Idle Frequency, Idle I,Q pair === | |||
The PSM defines a location in Frequency memory where a single frequency can be loaded, known as the '''Idle Frequency''' location or "Idle". The Idle location is the highest Frequency DM address in the module. | |||
Similarly, in each I,Q pairs memory, the highest address is defined as the '''Idle I,Q''' location for that profile/channel. | |||
Loading a frequency value into Idle, resetting the memory pointer to point to this location and issuing a strobe will result in a single RF frequency being loaded, provided... | |||
* the amplitude is set > 0 | |||
* external gate(s) supplied or select "gated always" | |||
* PSM/PSM2 : | |||
** the module must not be set to full sleep mode | |||
* PSM : | |||
** select "single tone mode" | |||
* PSM2 : | |||
** load IQ pair (512,0) into Idle I,Q for all enabled profiles | |||
* PSM3 : | |||
* load IQ pair (512,0) into Idle I,Q for all enabled channels | |||
== | == Using the PSM in the BNMR/BNQR experiment == | ||
Programming the PSM | Programming the PSM module (loading the registers/generating frequency/iq files) is done automatically depending on the parameters the experimenter enters on the [[BNMR: Custom Parameters page|custom parameters page]]. The client {{Client|name=rf_config}} checks the PSM parameters, and generates I,Q pairs file(s) and/or a frequency file if needed. | ||
The output signal can be modulated with a single I,Q pair ("Single Tone Mode") or by I,Q pairs read from the I,Q Memory. | |||
I,Q pairs file(s) are generated automatically (by rf_config) for "Quadrature Modulation Mode" according to the parameters supplied. Currently the modulation modes supported in the {{bnmqr|join=and}} are "Hermite" and "ln-sech". The I,Q pairs file | |||
is loaded into the I,Q memory at begin-of-run. | |||
When a frequency file is loaded, if the number of strobes exceeds the number of frequencies, the frequency is set according | |||
to the input parameters. The frequency may stay at the final frequency, jump to the idle frequency, or return to the first value in the frequency file. Similarly if an I,Q pairs file is loaded and the gate remains active for longer than the time taken to read out the I,Q memory, depending on the input parameters, the idle I,Q pair, or the first or last I,Q pair in memory may be used for the modulation. | |||
If desired, all the I values or all the Q values in the file can be set to 0 for testing. | |||
When the experimenter switches to a particular PPG Mode, default values for the PSM parameters are loaded. The experimenters | |||
can then change the PSM parameters as desired. | |||
''' In the {{bnmqr|join=and}} ''' experiments, the PSM module is programmed differently for a Type 1 (I-MUSR) or Type 2 (TD-MUSR) experiment.''' | |||
=== Type 1 (I-MUSR) RF experiments === | |||
Some Type 1 experiments (Modes 1a,1b,1f,1g) include a frequency (RF) scan. During the run, the frequency is incremented between the start and stop values. The frequency remains constant during the cycle, and is incremented by a software command from the frontend at the end of each cycle. When the frequency value reaches the stop value, the helicity may be flipped and the scan is restarted. The desired frequency is loaded into the | |||
[[BNMR Mode Parameters#Idle Frequency, Idle I,Q pair|Idle Frequency location]] (no frequency table is generated). | |||
'''Randomized frequency values''' are supported for some Modes (1a,1b). In this case, a frequency table is generated (by rf_config) but not downloaded into the module. The frequency table is a list of the frequency values to be loaded for the scan. | |||
The frequency table is loaded into an array at begin-of-run and randomized (i.e. the frequency step values are randomly selected). The random frequency values are then loaded into the | |||
[[BNMR Mode Parameters#Idle Frequency, Idle I,Q pair|Idle frequency location]] in turn and the cycle started. When all the values are exhausted, the scan is finished. The frequency values are then re-randomized and the process repeated. | |||
=== Type 2 (TD-MUSR) experiments === | |||
Type 2 Modes are divided into two cases: | |||
==== Non-Table-Driven Modes ==== | |||
* Modes 20*,2d,2s | |||
A fixed frequency is used for the run (no frequency scan). The frequency value is loaded into the | |||
[[BNMR Mode Parameters#Idle Frequency, Idle I,Q pair|Idle Frequency]]. | |||
The RF is gated by output(s) from the PPG, so the RF comes on during part of the cycle. | |||
: * Mode 20 can also used with no RF. | |||
==== Table-Driven Modes ==== | |||
* Modes 2a,2b,2e,2f | |||
These are frequency ''table-driven modes'', which include a frequency scan. During each PPG cycle, the frequency is scanned by incrementing between the start and stop values. To implement this, a '''frequency table is downloaded into the PSM'''. The frequency table is a list of all the frequency values to be loaded for one scan of the RF between the start and stop values. The frequency file is generated by rf_config from the input parameters in the ODB. The frequency table is loaded into the PSM DM at begin-of-run. During each PPG cycle, the PSM outputs each frequency in turn from DM, on receipt of a strobe signal from the PPG. | |||
'''Randomized frequency values''' are supported for some table-driven Modes (2a,2e,2f). | |||
In this case, the frequency table is generated by rf_config. This table is read into an array at begin-of-run and randomized. The random values are loaded into the PSM DM from a pointer (rather than from a file). This process (randomize and load into PSM DM) | |||
is repeated between each PPG cycle. The random frequencies are output in turn on receipt of the PPG strobe signal. | |||
[[Category:PSM]] | [[Category:PSM]] |
Revision as of 15:07, 28 May 2018
Links
Introduction
The PSM/PSM2/PSM3 VME modules are used to produce RF for the bnmr and bnqr respectively. In this document, "PSM" refers to any of these modules. There are significant differences between the modules. The PSM must be run on the bnqr experiment only, and the PSM2 on bnmr only (see #PSM2 for details).
The PSM3 is designed to be run on either bnmr or bnqr. A front-panel switch selects between bnmr or bnqr operating mode. Only one PSM3 module has been built. Currently it is located in the bnmr VME crate and is still being tested.
PSM Manuals
- Hardware Manuals:
- PSM/PSM2
- PSM3 (VFS)
- Programming Guides:
Description
Please refer to the #PSM Manuals from which much of this information is derived.
PSM/PSM2
The POL Synthesizer Module (PSM/PSM2) is a VME module built at TRIUMF, incorporating a AD9857 Quadrature digital upconverter. It has been designed to generate a complex modulation swept RF signal summed with a reference frequency (fREF). In the case of the PSM, the swept signal may be a single modulated carrier (1f) or include the modulated 3rd and 5th harmonics (3f and 5f). In the case of the PSM2 the 3f and 5f profiles output the same frequency as the 1f profile. They are designed to be used to produce RF shifted in phase compared to the 1f profile by 90 or 270 degrees.
Each carrier is independently modulated.
- Note
- the harmonics and the reference frequency ( 1f,3f,5f, fREF) are known as "profiles".
- Do not confuse the "1f" profile with the Experimental (PPG) Mode 1f (Freq) !!
At the time of writing, only the "1f" profile has actually been used in the bnmr and bnqr experiments.
For the bnmr and bnqr experiments only profile "1f" is implemented in the frontend code, except for PPG Mode 1f (Freq) where both profile "1f" and fREF are supported. To avoid confusion, the profile "1f" is referred to in the programs and the custom parameters page as "one-f".
The PSM/PSM2 can be operated in two modes:
- Single Tone Mode
- carrier is not modulated, the output signal consists of a single frequency signal. Frequency data are read from the Frequency Sweep Memory (1f,3f,5f) or from the Frequency tuning register (fREF). At least one strobe must be issued.
- Quadrature Modulation Mode
- both the I and Q data paths are active, the output is a quadrature modulated analog output signal. The I and Q data are read from the I&Q data memory. Each profile (1f,3f,5f,fREF) has its own I&Q memory. If an unmodulated carried is needed, I,Q pairs are set to constant values. When the I,Q memory length is set to zero, the output is modulated by a pair of constant values.
The carriers are synthesized and modulated digitally. In quadrature modulation mode, the modulation data consists of up to 2048 I,Q pairs sampled at a submultiple of the carrier sample rate. The synthesizer circuit interpolates the I,Q sample rate to match the carrier sample rate before modulation.
See #PSM2 Module for a note on how the PSM2 differs from the PSM.
PSM2
The PSM is designed for use in the BNQR experiment. The PSM2 module was later designed for use in the BNMR experiment, and is a modified PSM module, running at a higher frequency (up to almost 80MHz compared with the PSM's almost 40MHz). See PSM2 for the differences between the PSM and PSM2.
- Note
- Due to a bug in the module, the PSM2 does not support Single Tone Mode. To simulate Single Tone Mode, the PSM2 is run in Quadrature Modulation Mode with the Idle i,q pair set to (511,0). This is set up automatically by the custom parameters page when the user selects Single Tone Mode. A note to this effect appears below the PSM2 parameters.
PSM3
This module will replace the PSM and PSM2.
The POL Synthesizer Module (PSM3/VFS) is a VME module built at TRIUMF. It has been designed to generate a complex modulation swept RF signal summed with a reference frequency (f1). It comprises four independent frequency channels (f0 Ch1-4) and a fifth reference channel (f1).
The PSM3 has two operating modes (programmable or selected by a switch on the front panel). In BNMR mode, the four frequency channels output RF at the selected frequency in four fixed phases: O,90,180 and 270 degrees output from f0 Ch1-4 respectively. The f1 reference channel outputs the reference frequency at the same phase at the 0 degree channel.
In BNQR mode, the module outputs harmonics of the f0 Ch1 RF on the f0 Ch2-4 channels. In BNQR mode, a phase offset from f0 Ch1 can be programmed for Ch2-4 channels.
The PSM3 has no single tone/quadrature mode register. Single tone mode is achieved by modulating with a fixed I,Q pair of e.g. (512,0).
Idle Frequency, Idle I,Q pair
The PSM defines a location in Frequency memory where a single frequency can be loaded, known as the Idle Frequency location or "Idle". The Idle location is the highest Frequency DM address in the module.
Similarly, in each I,Q pairs memory, the highest address is defined as the Idle I,Q location for that profile/channel.
Loading a frequency value into Idle, resetting the memory pointer to point to this location and issuing a strobe will result in a single RF frequency being loaded, provided...
- the amplitude is set > 0
- external gate(s) supplied or select "gated always"
- PSM/PSM2 :
- the module must not be set to full sleep mode
- PSM :
- select "single tone mode"
- PSM2 :
- load IQ pair (512,0) into Idle I,Q for all enabled profiles
- PSM3 :
- load IQ pair (512,0) into Idle I,Q for all enabled channels
Using the PSM in the BNMR/BNQR experiment
Programming the PSM module (loading the registers/generating frequency/iq files) is done automatically depending on the parameters the experimenter enters on the custom parameters page. The client rf_config checks the PSM parameters, and generates I,Q pairs file(s) and/or a frequency file if needed.
The output signal can be modulated with a single I,Q pair ("Single Tone Mode") or by I,Q pairs read from the I,Q Memory. I,Q pairs file(s) are generated automatically (by rf_config) for "Quadrature Modulation Mode" according to the parameters supplied. Currently the modulation modes supported in the bnmr and bnqr are "Hermite" and "ln-sech". The I,Q pairs file is loaded into the I,Q memory at begin-of-run.
When a frequency file is loaded, if the number of strobes exceeds the number of frequencies, the frequency is set according to the input parameters. The frequency may stay at the final frequency, jump to the idle frequency, or return to the first value in the frequency file. Similarly if an I,Q pairs file is loaded and the gate remains active for longer than the time taken to read out the I,Q memory, depending on the input parameters, the idle I,Q pair, or the first or last I,Q pair in memory may be used for the modulation.
If desired, all the I values or all the Q values in the file can be set to 0 for testing.
When the experimenter switches to a particular PPG Mode, default values for the PSM parameters are loaded. The experimenters can then change the PSM parameters as desired.
In the bnmr and bnqr experiments, the PSM module is programmed differently for a Type 1 (I-MUSR) or Type 2 (TD-MUSR) experiment.
Type 1 (I-MUSR) RF experiments
Some Type 1 experiments (Modes 1a,1b,1f,1g) include a frequency (RF) scan. During the run, the frequency is incremented between the start and stop values. The frequency remains constant during the cycle, and is incremented by a software command from the frontend at the end of each cycle. When the frequency value reaches the stop value, the helicity may be flipped and the scan is restarted. The desired frequency is loaded into the Idle Frequency location (no frequency table is generated).
Randomized frequency values are supported for some Modes (1a,1b). In this case, a frequency table is generated (by rf_config) but not downloaded into the module. The frequency table is a list of the frequency values to be loaded for the scan. The frequency table is loaded into an array at begin-of-run and randomized (i.e. the frequency step values are randomly selected). The random frequency values are then loaded into the Idle frequency location in turn and the cycle started. When all the values are exhausted, the scan is finished. The frequency values are then re-randomized and the process repeated.
Type 2 (TD-MUSR) experiments
Type 2 Modes are divided into two cases:
Non-Table-Driven Modes
- Modes 20*,2d,2s
A fixed frequency is used for the run (no frequency scan). The frequency value is loaded into the Idle Frequency. The RF is gated by output(s) from the PPG, so the RF comes on during part of the cycle.
- * Mode 20 can also used with no RF.
Table-Driven Modes
- Modes 2a,2b,2e,2f
These are frequency table-driven modes, which include a frequency scan. During each PPG cycle, the frequency is scanned by incrementing between the start and stop values. To implement this, a frequency table is downloaded into the PSM. The frequency table is a list of all the frequency values to be loaded for one scan of the RF between the start and stop values. The frequency file is generated by rf_config from the input parameters in the ODB. The frequency table is loaded into the PSM DM at begin-of-run. During each PPG cycle, the PSM outputs each frequency in turn from DM, on receipt of a strobe signal from the PPG.
Randomized frequency values are supported for some table-driven Modes (2a,2e,2f). In this case, the frequency table is generated by rf_config. This table is read into an array at begin-of-run and randomized. The random values are loaded into the PSM DM from a pointer (rather than from a file). This process (randomize and load into PSM DM) is repeated between each PPG cycle. The random frequencies are output in turn on receipt of the PPG strobe signal.