QXR SLOW SPILL DATA BASE DEVICES
This is a list of the data base devices for the Tevatron QXR
microprocessor relating to slow spill. There are other devices
related to QXR not on this list because they do not operate directly
through the QXR microprocessor.
The devices are in order of increasing TAN (the TAN is the code
used by the GAS communications protocol).
Most of these devices have only a setting property and no reading
property. Exceptions are noted.
Limits are shown only when they are different from the range.
S:SPILLT FLAT TOP SPILL LENGTH
T,A,N=11,0,0 units=sec RANGE: 0 - 45.5 sec
S:SPILLP FRONT PORCH SPILL LENGTH
T,A,N=11,0,1 units=sec RANGE: 0 - 45.5 sec
LIMITS: 0 - 35.7 sec (for S:SPILLT + S:SPILLP)
These spill lengths are the time from the end of the QXR ramp until
the end of the spill. They do NOT include the RAMP TIME or SPILL
DELAY. Software ends the spill this many QXR cycles after the end of
the ramp. Both bucker and QXR turn off at this time. These spill
lengths are stored internally as whole numbers of QXR cycles, hence
the full scale value:
1 second
32768 cycles * ---------- = 45.5 seconds
720 cycles
S:TBEAM % BEAM IN FLAT TOP
QXR SLOW SPILL DATA BASE DEVICES Page A-2
T,A,N=11,1,0 UNITS=% RANGE: 0 - 100 %
S:PBEAM % BEAM IN FRONT PORCH
T,A,N=11,1,1 UNITS=% RANGE: 0 - 100 %
Only the % BEAM IN FLAT TOP is implemented at this time. It is the
fraction of beam, measured at the start of flat top, which QXR will
attempt to extract during the spill.
S:QXTSL QXR FLAT TOP START LEV
T,A,N=11,2,0 UNITS=amps RANGE: 0 - 50 amps
S:QXPSL QXR FNT PORCH START LEV
T,A,N=11,2,1 UNITS=amps RANGE: 0 - 50 amps
These start levels are used in two different ways: they are the
initial values for the QXR ramps (see QXR FNT PORCH / FLAT TOP RAMP
TIME) and they are the values to which QXR memory is set when a QXR
MEMORY RESET is done (see device of that name). It is important to
note that entering new values for these devices does not in itself
affect the QXR memory. A QXR MEMORY RESET must be done to do that.
S:QXTSD QXR FLAT TOP SPILL DELAY
T,A,N=11,3,0 units=msec RANGE: 0 - 45,511 msec
LIMITS: 0 - 5686 msec
S:QXPSD QXR FNT PORCH SPILL DELY
T,A,N=11,3,1 units=msec RANGE: 0 - 45,511 msec
These are the time after the "start of flat top (or front porch)"
clock event which the software waits before starting the QXR ramp.
These delays are stored internally as whole numbers of QXR cycles,
hence the full scale value:
1 second
32768 cycles * ---------- = 45,511 milliseconds
720 cycles
S:QXTRL QXR FLAT TOP RAMP TIME
T,A,N=11,4,0 units=msec RANGE: 0 - 45,511 msec
LIMITS: 0 - 2000 msec
S:QXPRL QXR FNT PORCH RAMP TIME
T,A,N=11,4,1 units=msec RANGE: 0 - 45,511 msec
These are the durations of the QXR ramps. During these ramps, the QXR
QXR SLOW SPILL DATA BASE DEVICES Page A-3
output changes linearly upward at 720Hz. The starting values for the
ramps are QXR FLAT TOP START LEV and QXR FNT PORCH START LEV. The
final values are given by the memory signal for cell 0 of flat top and
front porch. These durations are stored internally as whole numbers
of QXR cycles, hence the full scale value:
1 second
32768 cycles * ---------- = 45,511 milliseconds
720 cycles
S:BKTSL BKR FLAT TOP START LEV
T,A,N=11,5,0 UNITS=amps RANGE: -50 amps to 50 amp
S:BKPSL BKR FNT PORCH START LEV
T,A,N=11,5,1 UNITS=amps RANGE: -50 amps to 50 amp
These are the values to which the bucker memory is set when a BUCKER
MEMORY RESET is done (see device of that name). It is important to
note that entering new values for these devices does not in itself
affect the bucker memory. A BUCKER MEMORY RESET must be done to do
that. It is expected that this value will be close to zero.
S:BKTSD BKR FLAT TOP SPILL DELAY
T,A,N=11,6,0 units=msec RANGE: 0 - 5,689 msec
LIMITS: 0 - 5686 msec
S:BKPSD BKR FNT PORCH SPILL DELY
T,A,N=11,6,1 units=msec RANGE: 0 - 5,689 msec
These are the time after the "start of flat top (or front porch)"
clock event which the software waits before starting bucker output.
Usually this should be very close to the sum of QXR FNT PORCH / FLAT
TOP SPILL DELAY and QXR FNT PORCH / FLAT TOP RAMP TIME. These delays
are stored internally as whole numbers of bucker cycles, hence the
full scale value:
1 second
32768 cycles * ----------- = 5,689 milliseconds
5760 cycles
S:FPLPAR FP PARAB IDEAL BM LENGTH
T,A,N=11,7,1 UNITS=msec RANGE: 0 - 45,511 MSEC
S:FTLPAR FT PARAB IDEAL BM LENGTH
QXR SLOW SPILL DATA BASE DEVICES Page A-4
T,A,N=11,7,0 UNITS=msec RANGE: 0 - 45,511 MSEC
This is the time duration at the start of a spill during which the
ideal beam signal decreases parabolically. It starts with a slope of
zero.
S:FTSDF FLAT TOP SPILL DUTY FAC
reading T,A,N=12,8,0 UNITS=% RANGE: 0 - 100 %
S:FPSDF FNT PORCH SPILL DUTY FAC
reading T,A,N=12,8,1 UNITS=% RANGE: 0 - 100 %
The spill duty factor is a measure of the quality of slow spill. It
is calculated between cycles as follows (read the giant angular
brackets as parentheses and note the giant sigmas):
/ #cells \
/ ------ \ 2
/ \ \
/ \ \
/ \ S(cell) \
\ / /
\ / /
\ / /
\ ------ /
\ cell=1 /
---------------------------------
/ #cells \
/ ------ \
/ \ \
/ \ 2 \
#cells * / \ S(cell) \
\ / /
\ / /
\ / /
\ ------ /
\ cell=1 /
where "S(cell)" is the spill reading at each cell, and " cells" is the
number of cells that actually occurred. This calculation is done only
if beam was present in the spill; the value is set to zero if no beam
was present. The calculation is done by the slave (BKR) processor and
takes quite a while (tens of seconds). If it is not complete by the
start of the next cycle, strange things (such as partial learning) can
occur. This probably will not be a problem, but the current version
of software does not even detect the situation, much less give any
warning.
QXR SLOW SPILL DATA BASE DEVICES Page A-5
S:TSBEAM % SLOW BEAM IN FLAT TOP
reading T,A,N=12,21,0 UNITS=% RANGE: 0 - 100 %
S:PSBEAM % SLOW BM IN FRONT PORCH
reading T,A,N=12,21,1 UNITS=% RANGE: 0 - 100 %
This read-only value is the percentage of beam to be removed by slow
spill. QXR calculates it by subtracting the pulse desired intensities
from the % BEAM IN FLAT TOP (or FRONT PORCH). At present, there is a
controversy about what percents mean for front porch. Because we are
not yet running with a front porch, it is not urgent that this be
settled.
S:QXNG QXR NEIGHBOR GAIN
T,A,N=13,0,0 UNITS=% RANGE: 0 - 100 %
S:BKNG BKR NEIGHBOR GAIN
T,A,N=14,0,0 UNITS=% RANGE: 0 - 100 %
After each ramp, after QXR and bucker learning are complete, both the
QXR and bucker memories are "smoothed". The algorithm used is to
replace each cell's value with a weighted sum of its own value and
those of its two neighbors. The neighbor gain N is the fraction of
the SUM of the neighbor values used; one less that fraction of the
cell being smoothed is retained:
N/2 * preceding neighbor
+
cell value <- (1-N) * old cell value
+
N/2 * following neighbor
S:QXPHS QXR PHASE SHIFT
T,A,N=13,1,0 UNITS=cell RANGE: 0 - 32768 cell
LIMITS: 0 - 720 cell
S:BKPHS BUCKER PHASE SHIFT
T,A,N=14,1,0 UNITS=cell RANGE: 0 - 32768 cell
During learning, the error signal which should be added into memory
for a given cell is not the error signal from that cell, but from a
later cell. This is so because the correction (i.e. memory signal
output) does not affect the beam immediately, but after some delay.
This delay can be specified for QXR and bucker through these
parameters.
A "cell" here is a time period during which QXR or the bucker
output one value to the power supplies. Since QXR operates at 720 Hz,
the duration of a "QXR cell" is 1/720 seconds = 1.38 milliseconds.
QXR SLOW SPILL DATA BASE DEVICES Page A-6
Since bucker operates eight times faster, at 5760 Hz, the duration of
a "bucker cell" is 1/5760 seconds = 174 microseconds.
S:QXLRR QXR LEARNING RATE RATE
T,A,N=13,2,0 UNITS=%/cy RANGE: 0 - 100 %/cy
S:BKLRR BKR LEARNING RATE RATE
T,A,N=14,2,0 UNITS=%/cy RANGE: 0 - 100 %/cy
(The unit here is % per tevatron cycle).
After a memory reset, it is a good idea to specify a larger than
usual LEARNING RATE to more quickly build up a reasonable memory. To
automate this, an INITial LEARNING RATE may be specified together with
a FINAL LEARNING RATE and a LEARNING RATE RATE. The actual learning
rate used starts out, after a memory reset, at the INITial LEARNING
RATE. After each learning process, the learning rate is multiplied by
the LEARNING RATE RATE. When the learning rate becomes lower than the
FINAL LEARNING RATE, it is set to the FINAL LEARNING RATE and remains
there until another memory reset or until the FINAL LEARNING RATE is
changed. If the FINAL LEARNING RATE is changed, the learning rate
switches immediately to the new value; the LEARNING RATE RATE is only
used after memory resets. Note too that a memory reset is done
automatically on reboot.
S:QXILR QXR INIT LEARNING RATE
T,A,N=13,3,0 UNITS=% RANGE: 0 - 100 %
S:BKILR BKR INIT LEARNING RATE
T,A,N=14,3,0 UNITS=% RANGE: 0 - 100 %
These are the values to which the learning rate is set when a memory
reset is done (note that an automatic memory reset is done on reboot).
After each cycle, the learning rate is multiplied by the LEARNING RATE
RATEs until it reaches the final learning rate.
S:QXFLR QXR FINAL LEARNING RATE
setting T,A,N=13,4,0 UNITS=% RANGE: 0 - 100 %
reading T,A,N=15,0,0
S:BKFLR BKR FINAL LEARNING RATE
setting T,A,N=14,4,0 UNITS=% RANGE: 0 - 100 %
reading T,A,N=16,0,0
The settings are the final learning rates desired; the readings are
_______
the current learning rates. On memory reset, the learning rates are
QXR SLOW SPILL DATA BASE DEVICES Page A-7
set to the INITial LEARNING RATES. After each cycle, they are
multiplied by the LEARNING RATE RATEs, decreasing until they reach (or
go below) the FINAL LEARNING RATEs. They then stay at the FINAL
LEARNING RATEs. If a FINAL LEARNING is changed, its learning rate
immediately changes to that value; the RATE RATE is only used on
memory reset.
S:QRESET QXR MEMORY RESET
T,A,N=13,5,0 UNITS=none RANGE: 0 - 1
S:BRESET BKR MEMORY RESET
T,A,N=14,5,0 UNITS=none RANGE: 0 - 1
The actual QXR/BKR output is the sum of several things, one of which
is a memory signal. This memory signal is initialized to the QXR/BKR
FNT PORCH START LEV and QXR/BKR FLAT TOP START LEV and then, after
each ramp, has an error signal added into it. The initialization
happens automatically on reboot. To force it to occur again (if, for
example, it is feared that the memory signal has been corrupted) these
parameters are used.
Normally these parameters should have a value of 0. To request a
memory reset, set the value to 1. The value changes to 1 immediately
(of course the new value will not show up immediatly on a parameter
page as long as we use event-triggered updating). The memory is not
immediately reset, however. That is delayed until just before the
next learning phase. After the reset is complete, the value of this
parameter should change back to 0.
S:QXMRR QXR MEM RETENTION RATE
T,A,N=13,6,0 UNITS=% RANGE: 0 - 100 %
S:BKMRR BKR MEM RETENTION RATE
T,A,N=14,6,0 UNITS=% RANGE: 0 - 100 %
For an explanation of these parameters, see the explanation of
Learning.
S:QXSPG QXR SPILL GAIN
T,A,N=13,7,0 UNITS=QXR output volts RANGE: 0 - 10
Each of the analog input signals is multiplied, in the multibus
hardware, by a gain specified by software. The resulting value is
usually added directly into either the QXR or bucker output signal.
Therefore these gains convert some kind of input volts to some kind of
QXR SLOW SPILL DATA BASE DEVICES Page A-8
output volts. The gains are used to specify how much the input signal
should contribute to the output signal.
In this case, the hardware multiply is cleverly used to perform
two funtions: the spill is both normalized AND has the QXR SPILL GAIN
applied. The software does this by first calculating the normalized
spill "Ng", and then outputting an actual QXR spill gain of QXR SPILL
GAIN divided by Ng:
QXR SPILL GAIN
actual QXR spill gain = --------------
Ng
where
I*Is/Gi I = initial beam (intensity volts)
------- Is = % BEAM IN FLAT TOP
Ls Gi = QXR DC BEAM GAIN
Ng = -------------- Ls = FLAT TOP SPILL LENGTH
K K = SPILL NORM SCALE FACTOR
-------- n = QXR spill attenuation
10^(n/2) (see ATTEN SWITCH THRESHOLD)
Ng = normalized spill (spill volts)
S:BKSPG BKR SPILL GAIN
T,A,N=14,7,0
UNITS=bucker output volts per spill input volt
RANGE: 0 - 10
Each of the analog input signals is multiplied, in the multibus
hardware, by a gain specified by software. The resulting value is
usually added directly into either the QXR or bucker output signal.
Therefore these gains convert some kind of input volts to some kind of
output volts. The gains are used to specify how much the input signal
should contribute to the output signal.
BKR SPILL GAIN is a number of bucker volts per spill volt. The
resulting spill signal is stored away in memory, in bucker volts, and
is used, after the end of the spill, to calculate the error signal
added into bucker memory during learning.
S:DCGAIN QXR DC BEAM GAIN
T,A,N=17,0,0 UNITS=none RANGE: 0 - 10
Each of the analog input signals is multiplied, in the multibus
hardware, by a gain specified by software. The resulting value is
usually added directly into either the QXR or bucker output signal.
QXR SLOW SPILL DATA BASE DEVICES Page A-9
Therefore these gains convert some kind of input volts to some kind of
output volts. The gains are used to specify how much the input signal
should contribute to the output signal.
S:QEGAIN QXR ERROR GAIN
setting T,A,N=17,1,0
UNITS=QXR output volts per intensity input volt
RANGE: 0 - 16
The QXR error (measured beam intensity minus desired intensity) at
each cell during spill is multiplied by this gain and saved. After
the spill, during learning, those values are incorporated into the QXR
memory (see "LEARNING" ABOVE).
S:RPGAIN BUCKER RPOS GAIN
T,A,N=18,0,0
UNITS=bucker output volts per RPOS input volt
RANGE: 0 - 10
Each of the analog input signals is multiplied, in the multibus
hardware, by a gain specified by software. The resulting value is
usually added directly into either the QXR or bucker output signal.
Therefore these gains convert some kind of input volts to some kind of
output volts. The gains are used to specify how much the input signal
should contribute to the output signal.
The BUCKER RPOS GAIN is a number of bucker output volts per RPOS
input volt. It specifies how much RPOS should contribute to the
bucker output signal:
bucker output <- bucker memory + RPOS + BDOT
S:BDGAIN BUCKER BDOT GAIN
T,A,N=18,1,0
UNITS=bucker output volts per BDOT input volt
RANGE: 0 - 10
Each of the analog input signals is multiplied, in the multibus
hardware, by a gain specified by software. The resulting value is
usually added directly into either the QXR or bucker output signal.
Therefore these gains convert some kind of input volts to some kind of
output volts. The gains are used to specify how much the input signal
should contribute to the output signal.
QXR SLOW SPILL DATA BASE DEVICES Page A-10
The BUCKER BDOT GAIN is a number of bucker output volts per BDOT
input volt. It specifies how much BDOT should contribute to the
bucker output signal:
bucker output <- bucker memory + RPOS + BDOT
S:BGMEM BKR MEMORY GAIN
T,A,N=18,11,0 UNITS=none RANGE: 0 - 16
This parameter controls the amount of bucker memory to be added to the
real-time spill signal and output during slow spill.
S:SPLATT SPILL MONITOR ATTENUAT'N 26
reading T,A,N=19,8,0 UNITS=none RANGE: 0 - 3
See the explanations of S:QXSPG (QXR SPILL GAIN) and S:ATTRSH (ATTEN
SWITCH THRESHOLD). This is the "n" referred to there.
S:SNORML SPILL NORMALIZING LEVEL 26
reading T,A,N=22,0,0 UNITS=volts RANGE: 0 - 16 V
See the explanation of S:QXSPG (QXR SPILL GAIN). This is the "Ng"
referred to there.
S:NORMSF SPILL NORM SCALE FACTOR
T,A,N=21,0,0
UNITS=intensity volts per spill volt seconds
RANGE: 0 - 16
Popularly known as "K", this parameter is actually a constant, the
ratio of the voltage conversion factors for spill and intensity:
5x10^12 p/second
----------------
spill volt 5 intensity volt
K = ------------------------ = ------------------------
3x10^12 p 3 spill volt x second
--------------
intensity volt
QXR SLOW SPILL DATA BASE DEVICES Page A-11
K is used in calculating the Spill Normalizing Level "Ng". If either
of the above conversions ever changes, someone must remember to change
K (fat chance).
S:BMTRSH BEAM THRESHOLD
setting T,A,N=21,1,0
reading T,A,N=22,2,0
UNITS=intensity input volts
RANGE: 0 - 10 V
Before each spill, the software decides whether beam is present. It
makes that decision by measuring the intensity immediately after the
start of front porch or start of flat top event and comparing the
value to this threshold. If the intensity is greater than the
threshold, beam is considered present. If the intensity is less than
or equal to the threshold, beam is not considered present.
The software does several things differently if beam is not
present:
1. The actual QXR spill gain sent to the multibus hardware is
zero. This causes the spill signal to be zero.
2. The spill attenuation sent to the multibus hardware is set to
zero.
3. The ideal beam signal is set to zero. This causes the QXR
error signal to be essentially zero (since the intensity
signal should be small).
4. No learning will occur for the spill.
5. No smoothing will occur for the spill.
S:ATTRSH ATTEN SWITCH THRESHOLD
T,A,N=21,2,0
UNITS=spill input volts
RANGE: 0 - 16 V
This parameter is used by the software in choosing the attenuation
sent to hardware for QXR spill (see QXR SPILL GAIN explanation). The
attenuation "n" is a whole number from 0 to 3 inclusive, chosen so
that the normalized spill "Ng" is as small as possible but larger than
ATTEN SWITCH THRESHOLD.
QXR SLOW SPILL DATA BASE DEVICES Page A-12
S:QEXTEN QXR EXTRACTION ENABLE
T,A,N=29,8,2 UNITS=none RANGE: 0 - 1
S:BEXTEN BUCKER EXTRACTION ENABLE
T,A,N=30,8,2 UNITS=none RANGE: 0 - 1
After a reboot, both QXR and BUCKER EXTRACTION are disabled (the value
of both of these parameters should be 0). That is, neither system
will respond to tevatron clock events. Instead, each will remain in
state 2 (this is observable on the front panel LEDs on the multibus
crate). This is to allow operators (and eventually the front end,
automatically) to download the appropriate parameters.
When the parameters are satisfactory extraction is enabled by
setting both of these parameters to 1.
To run QXR without bucker, set QXR EXTRACTION ENABLE to 1 and
BUCKER EXTRACTION ENABLE to 0. These two parameters are independent
and can be changed at any time. Presently, however, the bucker is
somewhat dependent on QXR and will not run correctly by itself.
APPENDIX B
QXR FAST SPILL DATA BASE DEVICES
This is a list of the data base devices for the Tevatron QXR
microprocessor relating to fast spill. There are other devices
related to QXR not on this list because they do not operate directly
through the QXR microprocessor.
The devices are in no particular order.
Most of these devices have only a setting property and no reading
property. Exceptions are noted.
Limits are shown only when they are different from the range.
Ping devices are listed along with pulse devices even though
pings are not yet supported by the micro software.
S:PIDECQ QXR PING DECREMENT
T,A,N=17,9,0 UNITS=amps RANGE: 0 - 50 amps
S:PUDECQ QXR PULSE DECREMENT
T,A,N=17,8,0 UNITS=amps RANGE: 0 - 50 amps
This is the amount by which the QXR output is decremented at the
receipt of a pulse event. The micro always keeps track of the last
value output. When a pulse event occurs, the micro subtracts this
decrement and outputs the result to QXR. If the result is negative,
zero is output. No other output is done to QXR during the PULSE DEAD
TIME.
S:PIDECB BKR PING DECREMENT
T,A,N=18,8,0 UNITS=amps RANGE: -50 amps TO 50 amp
S:PUDECB BKR PULSE DECREMENT
T,A,N=18,9,0 UNITS=amps RANGE: -50 amps TO 50 amp
This is the amount by which the BKR output is decremented at the
receipt of a pulse event. The micro always keeps track of the last
QXR FAST SPILL DATA BASE DEVICES Page B-2
value output. When a pulse event occurs, the micro subtracts this
decrement and outputs the result to BKR. The result is allowed to be
negative. For the end pulse, the decrement is ignored; zero is
output. No other output is done to BKR during the PULSE DEAD TIME.
zS:PIDEAD PING DEAD TIME
T,A,N=21,3,0 UNITS=msec RANGE: 0 - 45,511 msec
S:PUDEAD PULSE DEAD TIME
T,A,N=21,4,0 UNITS=msec RANGE: 0 - 45,511 msec
This is the time duration, starting at the receipt of a pulse event,
during which the regular cyclic outputs to QXR and BKR are not done.
Instead they are set to constant values (see PULSE DECREMENTs above).
It is during this time, after the PULSE DELAY (or END PULSE DELAY),
that the pulse is done.
S:PIDEL PING DELAY
T,A,N=18,2,0 UNITS=msec RANGE: 0 - 5,689 msec
S:PUDEL PULSE DELAY
T,A,N=17,2,0 UNITS=msec RANGE: 0 - 5,689 msec
S:ENDPDL END PULSE DELAY
T,A,N=17,15,0 UNITS=msec RANGE: 0 - 5,689 msec
This is the time duration, starting at the receipt of a pulse event,
before the pulse is actually done. All pulses except the end pulse
use PULSE DELAY. The end pulse has its own parameter, END PULSE
DELAY.
S:PISLEV PING START LEVEL
T,A,N=18,3,0 UNITS=amps RANGE: -50 amps TO 50 amp
S:PUSLEV PULSE START LEVEL
T,A,N=17,3,0 UNITS=amps RANGE: 0 - 250 amps
This is the value given to all pulse levels (except for the end pulse)
when a PULSE RESET is done (recall that a pulse reset is also done at
boot and whenever a BKR RESET is done). After each cycle, the pulse
level is then modified by learning. Note that all pulses start with
the same level and then develop different levels by learning.
S:PILR PING LEARNING RATE
T,A,N=18,5,0 UNITS=% RANGE: 0 - 100 %
S:PULR PULSE LEARNING RATE
T,A,N=17,5,0 UNITS=% RANGE: 0 - 100 %
This is the fraction of the pulse error added into the pulse level
during learning (no learning is done for the end pulse). The actual
formula is:
QXR FAST SPILL DATA BASE DEVICES Page B-3
V <- V + L*E*G
where
V = level
L = PULSE LEARNING RATE
E = error
= desired intensity
- intensity actually removed
G = PULSE ERROR GAIN
Note that L and G are identical for all pulses while V and E differ
for each pulse and for each cycle.
S:PIGE PING ERROR GAIN
T,A,N=18,6,0 UNITS=V/V RANGE: -128 V/V TO 128 V/V
S:PUGE PULSE ERROR GAIN
T,A,N=17,6,0 UNITS=V/V RANGE: 0 - 128 V/V
See PULSE LEARNING RATE.
S:PIDIi PING i DESIRED INTENSITY
T,A,N=37,0,0 UNITS=Volts RANGE: 0 - 10 V
S:PUDIi PULSE i DESIRED INTNSITY
T,A,N=35,0,0 UNITS=% RANGE: 0 - 100 %
This is really ten different devices, with i ranging from 1 to 10.
This is the percentage of beam one wishes to remove in a given pulse
including the end pulse. The software multiplies these percents by
the actual beam intensity and uses the resulting absolute desired
intensities.
S:FPNPI FP NUMBER PINGS
reading T,A,N=12,9,1 UNITS=none RANGE: 0 - 10
setting T,A,N=11,8,1 UNITS=none RANGE: 0 - 10
S:FPNPU FP NUMBER PULSES
reading T,A,N=12,10,1 UNITS=none RANGE: 0 - 10
setting T,A,N=11,9,1 UNITS=none RANGE: 0 - 10
S:FTNPI FT NUMBER PINGS
reading T,A,N=12,9,0 UNITS=none RANGE: 0 - 10
setting T,A,N=11,8,0 UNITS=none RANGE: 0 - 10
S:FTNPU FT NUMBER PULSES
reading T,A,N=12,10,0 UNITS=none RANGE: 0 - 10
setting T,A,N=11,9,0 UNITS=none RANGE: 0 - 10
LIMITS: 0 - 10 (FT NUMBER PULSES + FP NUMBER PULSES)
LIMITS: 0 - 10 (FT NUMBER PINGS + FP NUMBER PINGS)
These settings tell the micro how many pulses to expect in each spill.
The micro needs to know this in order to calculate ideal beam. It
QXR FAST SPILL DATA BASE DEVICES Page B-4
also need to know this because it assumes that the final flat top
pulse (if FT NUMBER PULSES is not zero) is going to be the end pulse
and will occur shortly after the end of the flat top slow spill.
The reading property gives the number of pulses that have
actually occurred so far in the spill. Thus the reading "counts up"
to the setting during each cycle. Note that the micro does not know
precisely when to expect the pulses until the pulse clock events
actually occur.
S:PIRES PING RESET
T,A,N=14,9,0 UNITS=none RANGE: 0 - 1
S:PURES PULSE RESET
T,A,N=13,9,0 UNITS=none RANGE: 0 - 1
Setting this to one causes the micro to reset all the pulse levels to
the PULSE START LEVEL. Note that all pulse levels are reset to the
same value. Note too that this does not apply to the end pulse (if
there is one); its value is always END PULSE LEVEL.
S:PIWID PING WIDTH
T,A,N=18,4,0 UNITS=msec RANGE: 0 - 5,689 MSEC
S:PUWID PULSE WIDTH
T,A,N=17,4,0 UNITS=msec RANGE: 0 - 5,689 MSEC
This is the time during which the pulse is actually done. During this
time, the pulse waveform, scaled in time by PULSE WIDTH and scaled in
height by the pulse level, is output. The output is done not to the
normal QXR channel but to a special channel devoted to pulsing.
S:PIENAB PING ENABLE
T,A,N=18,7,0 UNITS=none RANGE: 0 - 1
S:PUENAB PULSE ENABLE
T,A,N=17,7,0 UNITS=none RANGE: 0 - 1
This is a way to enable (set to one) and disable (set to zero) pulsing
without changing the other parameters. If pulsing is disabled using
this device, the correct numbers of pulse events are still expected by
the software. The software even calculates ideal beam as if the
pulses were going to occur! (This is done in order to avoid a change
of slope when pulsing is re-enabled.) The only effect of this device
being set to zero is that when the pulse event actually occurs, the
pulse waveform is not output (QXR and BKR are decremented for PULSE
DEAD TIME).
S:ENDPLV END PULSE LEVEL
T,A,N=17,10,0 UNITS=Amps RANGE: 0 - 250 AMPS
QXR FAST SPILL DATA BASE DEVICES Page B-5
The end pulse has a level like all the other pulses. But it does not
get initialized to the PULSE START LEVEL and it does not learn using
PULSE LEARNING RATE and PULSE ERROR GAIN. It is set to END PULSE
LEVEL and remains at that value until END PULSE LEVEL is changed by a
user.
S:ENDPTH END PULSE THRESHOLD
setting T,A,N=17,11,0
reading T,A,N=19,15,0
UNITS=Volts
RANGE: 0 - 10 V
The end pulse is done only if the beam intensity at the time of the
end pulse event is less than this END PULSE THRESHOLD.
The END PULSE THRESHOLD is normalized. That is, the setting is
divided by the QXR DC BEAM GAIN and the resulting value is the value
actually used by the microprocessor. This normalized value is the
reading.
S:MAXPU MAXIMUM PULSE INTENSITY
reading T,A,N=19,17,0 UNITS=Volts RANGE: 0 - 10 V
setting T,A,N=17,12,0 UNITS=Volts RANGE: 0 - 16 V
Each pulse (including the end pulse) is done only if the absolute
desired intensity for the pulse is less than the MAXIMUM PULSE
INTENSITY. The absolute desired intensity for each pulse is
calculated at the start of the spill by multiplying the percent
desired intensities (provided by the user via GAS commands) by the
actual intensity in the machine. Note that because there is only one
MAXIMUM PULSE INTENSITY applied to several pulses with (possibly)
different desired intensities, it can happen that only the larger
pulses will be thwarted by this restriction in any given spill.
The MAXIMUM PULSE INTENSITY is normalized. That is, the setting
is divided by the QXR DC BEAM GAIN and the resulting value is the
value actually used by the microprocessor. This normalized value is
the reading.
S:ABPURR ABORTED PULSE RET RATE
T,A,N=17,13,0 UNITS=% RANGE: 0 - 100 %
If an abort occurs during a pulse's PULSE DEAD TIME, the software
assumes that QXR might have caused the abort and should back off.
Therefore, rather than do the regular learning, the pulse level for
this pulse is decreased by multiplying it by the ABORTED PULSE
RETention RATE. If the pulse really is causing the abort, it should
eventually stop because its level will be reduced after every cycle.
QXR FAST SPILL DATA BASE DEVICES Page B-6
S:PULPAR PULSE PARABOLA LENGTH
T,A,N=17,14,0 UNITS=msec RANGE: 0 - 45,511 MSEC
After each pulse (except the end pulse), the ideal beam decreases
parobolically for PULSE PARABOLA LENGTH. This parabola is similar to
the parabola at the start of the spill. Note that another pulse event
is not allowed during the parabolic ideal beam. Any such event will
be ignored! (The reason for this is that it would be impossible to
calculate the entire ideal beam signal with incomplete parobolic
segments.)
APPENDIX C
QXR SYSTEM DATA BASE DEVICES
S:QXRGAS GAS ERRORS FOR QXR
Bit Priority Message
0 7 QXR MICRO UMQ OVRFLOW
1 7 QXR MICRO BAD EOP INT
2 7 QXR MICRO BAD SET CMD
3 7 QXR MICRO UNEXPD HINT
4 7 QXR MICRO BAD STD STRING
5 7 QXR MICRO ILLEGAL SET
These are the standard GAS errors applied to QXR in this data base
device.
QXR SYSTEM DATA BASE DEVICES Page C-2
S:QXRSYS SYSTEM EVENTS FOR QXR
Bit Priority Message
0 10 (S) GINT W/O INT BIT SET
1 10 (M) GINT W/O INT BIT SET
2 13 CODE DOWNLOAD SUCCESSFUL
3 13 CODE DOWNLOAD FAILED
4 13 CODE DOWNLOAD REQUESTED
5 7 (S) PERIODIC TASK RETRIG
6 7 (M) PERIODIC TASK RETRIG
7 8 AUTO DC BEAM GAIN SAT
8 10 (S) BAD INTERRUPT
9 10 (M) BAD INTERRUPT
10 7 LINK NOT READY
11 0 ABORT
12 8 TOTAL PULSE % TOO BIG
13 7 LINK READBACK BAD (NAF)
14 7 LINK READBACK BAD (VALUE)
15 9 BAD MBIP DETECTED
16 9 BAD SBIP DETECTED
17 7 (S) ATTD STATE CHG FAILED
18 7 (M) ATTD STATE CHG FAILED
19 9 LINK READBACK BAD (AGG)
20 9 LINK READBACK BAD (HIGH)
21 10 (S) BAD EXCEPTION
22 10 (M) BAD EXCEPTION
23 0 TEST NOTEWORTHY EVENT
24 7 TOO FEW PINGS FOR SPILL
25 7 TOO MANY PINGS FOR SPILL
26 7 TOO FEW PULSES FOR SPILL
27 7 TOO MANY PULSES FOR SPILL
28 7 NO PULSE.br;S: DISABLED
29 7 NO PULSE.br;S: L NOT FINAL
30 7 NO PULSE.br;S: EST TOO BIG
31 7 NO END PULSE: TOO BIG
QXR SYSTEM DATA BASE DEVICES Page C-3
S:MSTATE MASTER'S CURRENT STATE
reading T,A,N=27,2,0 UNITS=none RANGE: 0 - 31
S:SSTATE SLAVE'S CURRENT STATE
reading T,A,N=28,2,0 UNITS=none RANGE: 0 - 31
Each processor's current state can be read using these parameters.
They can even be plotted!