/
Bunch Bank Control (Version 1.3)

Bunch Bank Control (Version 1.3)


This panel shows the control configuration for a single bunch bank.  The bunch control is determined by three waveforms, which can written to directly as waveform PVs, or can be individually edited using the controls on this page.  These are the three waveform PVs (each prefixed with $(device):$(axis), with n from 0 to 3):

TitlePVDescription
Bunch FIR Select:BUN:n:FIRWF_SDetermines which of the four available bunch by bunch filters is active on each bunch.
Output Selection:BUN:n:OUTWF_S

Determines which outputs are selected for each bunch.  The output selection is a bit mask of sources:

BitSource
1Bunch by bunch FIR output.  Select this for normal feedback on this bunch.
2Fixed frequency NCO output.  Select this for programmable fixed frequency excitation on this bunch.
4Swept NCO output.  Select this for swept frequency excitation under sequencer control.  Note that this source will be zero when the sequencer is inactive.
8Tune PLL output.  Select this for the tune PLL NCO.
Bunch Gains:BUN:n:GAINWF_SIndividual bunch gains, should be a number in the range -1 to 1 for each bunch.

The bottom right of this screen, labelled "Settings", shows a summary of the three waveforms, as described in the Bunch Bank section of the Sequencer and Bunch Control page.

Bunch Waveform Setting

The rest of this screen is provided for manual configuration of bunch control settings.  Down the right hand side, each of three sets of controls ("Set FIR", "Set DAC out", "Set DAC gain") allows a selected set of bunch to be set to the selected value, and at the bottom left ("Set Bunches") allows the bunch selection to be set and all three waveforms to be programmed in a single action.

The section "Set Bunches" provides the following PVs:

TitlePVDescription

:BUN:n:BUNCH_SELECT_SThis field can be set to a string describing the bunches to be modified by the buttons "Set All", "Set FIR", "Set DAC", and "Set gain".  The exact syntax of this string is described below.  If an invalid value is written the write is rejected and the Status field below is updated with a description of the format error.
Status:BUN:n:SELECT_STATUSAfter a successful write to :BUNCH_SELECT_S this field reads "Ok".  After any unsuccessful write this field has minor severity and shows a description of the reason why the write was rejected.

The three groups on the side enable control of the corresponding waveform.

NamePVDescription
Set FIR:BUN:n:FIR_SELECT_SChooses the FIR selection that will be written to the selected bunches when the "Set FIR" button is pressed.

:BUN:n:FIRWF:SET_SUpdates the selected bunches of :BUN:n:FIRWF_S with the selected value.
Set DAC out:BUN:n:DAC_SELECT_SChooses the DAC output selection that will be written to the selected bunches when the "Set DAC" button is pressed.

:BUN:n:OUTWF:SET_SUpdates the selected bunches of :BUN:n:OUTWF_S with the selected value.
Set DAC gain:BUN:n:GAIN_SELECT_SChooses the DAC gain selection that will be written to the selected bunches when the "Set gain" button is pressed.

:BUN:n:GAINWF:SET_SUpdates the selected bunches of :BUN:n:GAINWF_S with the selected value.

Bunch Select Syntax

The string written to the :BUNCH:SELECT_S PV determines the range of bunches that will be modified by the "Set" PVs.  This string is either a single : character, selecting all bunches, or is a sequence of numbers or ranges or "skip ranges".  A formal syntax can be written thus:

bunch_select = all | range range+
all = ":"
range = bunch | start ":" end | start ":" step ":" end

The various syntactic options are described below:

SyntaxMeaning
:Selects all bunches
bunchSelects the specified single bunch
start:endSelects the inclusive range of bunches from start to end
start:step:end

Selects bunches starting from start spaced at intervals of step extending until but not after end.

Valid examples are:

:Selects all bunches
1 2 5 6Selects four named bunches
0:935Also selects all bunches (at DLS with 936 bunch ring)
0:100 200:300

Selects two ranges of numbers for a total of 202 selected bunches.

0:5:20Same as selection "0 5 10 15 20".

Related content

Bunch Bank Control
More like this
Sequencer and Bunch Control (version 1.3)
Sequencer and Bunch Control (version 1.3)
More like this
Sequencer and Bunch Control
Sequencer and Bunch Control
More like this
Bunch Source Gain Control
Bunch Source Gain Control
More like this
Detector Bunch Enables
Detector Bunch Enables
More like this