Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
DESY facilities
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
MSK-SW
Low-Level Radio Frequency
LLRF Controller
LLRF controller configuration
DESY facilities
Merge requests
!21
feat: SLED cavity for TDS BC2 (#12436)
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
feat: SLED cavity for TDS BC2 (#12436)
wip/focus-2023-autumn
into
master
Overview
0
Commits
2
Pipelines
0
Changes
2
Merged
Martin Christoph Hierholzer
requested to merge
wip/focus-2023-autumn
into
master
1 year ago
Overview
0
Commits
2
Pipelines
0
Changes
2
Expand
0
0
Merge request reports
Viewing commit
e1952f11
Prev
Next
Show latest version
2 files
+
3
−
1
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
2
Search (e.g. *.vue) (Ctrl+P)
e1952f11
feat: SLED cavity for TDS BC2 (#12436)
· e1952f11
Martin Christoph Hierholzer
authored
1 year ago
llrfctrl6/settings/FACILITY.XFEL.py
+
257
−
255
Options
if
ACCELERATOR
==
"
XFEL
"
:
OPER_GID
=
512
EXPERT_GID
=
6194
T_ZERO
=
800
TINERUN
=
1
DOOCS_NAMING_SCHEME
=
2
pulseLength
=
16384
provideLimiterEnable
=
1
enableAutomation
=
0
enableMicroDAQ
=
0
clockFrequency
=
81.25
IQdetectionLength
=
9
gradientUnit
=
"
MV
"
powerUnit
=
"
kW
"
nSinCosTableSize
=
3
phaseStep
=
240
sinSign
=-
1
enableStatistics
=
0
enablePhaseSetter
=
1
MAXIMUM_TRIGGER_INTERVAL
=
1
lengthScale
=
1.036
# TODO: Use formula to compute as used for AH1, but 0.2% difference!
nCellsPerCavity
=
9
enablePerBunchSetpoints
=
True
nMaxFlattops
=
3
if
STATION
==
"
1
"
:
multiCavityStation
().
useDirectClock
()
rfFrequency
=
1300
QL
=
4600000
SECTION_NAME
=
""
boardDWC10
(
slot
=
12
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
)
boardDWC10
(
slot
=
10
,
cryomodule
=
1
,
signal
=
"
FORW
"
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
8
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
4
).
withBeam
(
toroidLinkSource
=
1
)
CRATE_NAME
=
"
A
"
+
STATION
SECTION_NAME
=
"
I1
"
STATION_LOCATION_SUFFIX
=
CRATE_NAME
+
"
.
"
+
SECTION_NAME
CRYOMODULES_NO_SPACE
=
"
12
"
# FIXME: This line should be removed, but panels expect the wrong M12 in location names!
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLAH1I1
"
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LLAH1I1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.I1
"
if
STATION
==
"
H1
"
:
multiCavityStation
().
useDirectClock
()
SERVERNAME
=
"
llrfCtrl_39_server
"
RPC_NUMBER
=
610489970
BPN
=
9000
SECTION_NAME
=
""
rfFrequency
=
3900
QL
=
3260000
lengthScale
=
299792458
/
(
rfFrequency
*
1000000
)
*
nCellsPerCavity
/
2
boardDWC10
(
slot
=
11
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
9
,
cryomodule
=
1
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
7
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
3
).
withBeam
(
toroidLinkSource
=
1
)
CRATE_NAME
=
"
A
"
+
STATION
SECTION_NAME
=
"
I1
"
SVR_LOCATION
=
"
XFELCPULLAH1I1._SVR
"
STATION_LOCATION_SUFFIX
=
CRATE_NAME
+
"
.
"
+
SECTION_NAME
CRYOMODULES_NO_SPACE
=
"
12
"
# FIXME: This line should be removed, but panels expect the wrong M12 in location names!
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLAH1I1
"
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRLAH1
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LLAH1I1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.I1
"
if
STATION
in
list
(
map
(
str
,
range
(
2
,
26
+
1
)))
+
[
"
0
"
,
"
2SP
"
,
"
HS
"
]
:
rfFrequency
=
1300
QL
=
4600000
CRATE_NAME
=
"
A
"
+
STATION
+
(
"
M
"
if
INSTANCE_TYPE
==
InstanceType
.
mulcavMaster
else
"
S
"
)
STATION_LOCATION_SUFFIX
=
"
A
"
+
STATION
if
STATION
in
[
"
2
"
,
"
2SP
"
]
:
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
"
L1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M12.A2.L1
"
if
STATION
in
map
(
str
,
range
(
3
,
5
+
1
))
:
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
"
L2
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M12.A
"
+
STATION
+
"
.L2
"
if
STATION
in
map
(
str
,
range
(
6
,
26
+
1
))
:
multiCavityStation
().
useULOG
()
SECTION_NAME
=
"
L3
"
if
STATION
in
[
"
0
"
]
:
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
""
LOC_REFM_OPT
=
""
if
STATION
in
[
"
HS
"
]
:
multiCavityStation
().
useULOG
()
SECTION_NAME
=
""
LOC_REFM_OPT
=
""
STATION_LOCATION_SUFFIX
=
STATION
CRATE_NAME
=
STATION
if
SECTION_NAME
!=
""
:
STATION_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
+
"
.
"
+
SECTION_NAME
boardDWC10
(
slot
=
12
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
)
boardDWC10
(
slot
=
11
,
cryomodule
=
2
,
signal
=
"
PROB
"
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
10
,
cryomodule
=
1
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
9
,
cryomodule
=
2
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
8
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardDWC10
(
slot
=
7
,
cryomodule
=
2
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
4
).
withBeam
(
toroidLinkSource
=
1
)
# this is the TCK7 board location of the crate (i.e. on slave not the one with the controller inside!)
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LL
"
+
CRATE_NAME
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
if
STATION
in
map
(
str
,
range
(
6
,
11
+
1
))
:
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A8.L3
"
if
STATION
in
map
(
str
,
range
(
12
,
17
+
1
))
:
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A14.L3
"
if
STATION
in
map
(
str
,
range
(
18
,
23
+
1
))
:
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A20.L3
"
if
STATION
in
map
(
str
,
range
(
24
,
26
+
1
))
:
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A26.L3
"
if
STATION
in
list
(
map
(
str
,
range
(
2
,
26
+
1
)))
+
[
"
0
"
,
"
1
"
,
"
H1
"
,
"
2SP
"
,
"
HS
"
]
:
CRATE_LOCATION_SUFFIX
=
"
M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
==
"
1
"
:
SVR_LOCATION
=
"
XFELCPULLA
"
+
STATION
+
"
I1._SVR
"
else
:
SVR_LOCATION
=
HOSTNAME
.
upper
()
+
"
._SVR
"
MPS_LOCATION
=
FACILITY
+
"
/MPS/LL
"
+
CRATE_NAME
if
STATION
==
"
GUN1
"
:
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
1300
QL
=
9000
phaseStep
=
240
sinSign
=-
1
nSinCosTableSize
=
3
boardDWC8VM1
(
5
,
"
xfelgun
"
,
[
"
GUN/REFL
"
,
"
GUN/FORW
"
,
"
WG12/REFL
"
,
"
WG12/FORW
"
,
"
WG34/REFL
"
,
"
WG34/FORW
"
,
"
REFER1/REFER
"
,
"
VM
"
])
boardDWC10sincav
(
4
,
"
xfelgun
"
,
[
"
SIS4CH0
"
,
"
KLY1/FORW
"
,
"
KLY1/REFL
"
,
"
KLY2/FORW
"
,
"
KLY2/REFL
"
])
boardDWC10sincav
(
6
,
"
xfelgun
"
,
[
"
SIS6CH0
"
,
"
WG1/FORW
"
,
"
WG1/REFL
"
,
"
WG2/FORW
"
,
"
WG2/REFL
"
,
"
WG3/FORW
"
,
"
WG3/REFL
"
,
"
WG4/FORW
"
,
"
WG4/REFL
"
,
"
REFER2/REFER
"
])
SECTION_NAME
=
"
I1
"
CRATE_NAME
=
"
GUN
"
STATION_LOCATION_SUFFIX
=
"
GUN.I1
"
SVR_LOCATION
=
"
XFELCPULLGUN1._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLGUN1
"
WATCHDOG_ADDRESS
=
"
XFEL.SYSTEM/XFELCPULLGUN1.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LL
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
==
"
GUN1SP
"
:
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
1300
QL
=
9000
phaseStep
=
240
sinSign
=-
1
nSinCosTableSize
=
3
boardDWC8VM1
(
3
,
"
mesa
"
,
[
"
GUN/REFL
"
,
"
GUN/FORW
"
,
"
WG12/REFL
"
,
"
WG12/FORW
"
,
"
WG34/REFL
"
,
"
WG34/FORW
"
,
"
REFER1/REFER
"
,
"
VM
"
],
firmwareProject
=
"
llrf_scav_sis8300ku
"
)
boardDWC10sincav
(
6
,
""
,
[
"
SIS6CH0
"
,
"
WG1/FORW
"
,
"
WG1/REFL
"
,
"
WG2/FORW
"
,
"
WG2/REFL
"
,
"
WG3/FORW
"
,
"
WG3/REFL
"
,
"
WG4/FORW
"
,
"
WG4/REFL
"
,
"
REFER2/REFER
"
],
firmwareProject
=
"
llrf_mcav_fd_sis8300ku
"
)
SECTION_NAME
=
"
I1
"
CRATE_NAME
=
"
GUN_SP
"
STATION_LOCATION_SUFFIX
=
"
GUN_SP.I1
"
SVR_LOCATION
=
"
XFELCPULLGUN1SP._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLGUN1SP
"
WATCHDOG_ADDRESS
=
"
XFEL.SYSTEM/XFELCPULLGUN1SP.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LL
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
in
[
"
LLTDSI1
"
,
"
LLTDSB2
"
]
:
DOOCS_NAMING_SCHEME
=
1
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
3000
clockFrequency
=
81.25
QL
=
10000
pulseLength
=
2048
enablePerBunchSetpoints
=
False
enablePhaseSetter
=
0
phaseStep
=
160
sinSign
=-
1
nSinCosTableSize
=
9
IQdetectionLength
=
1
if
STATION
==
"
LLTDSI1
"
:
boardDWC8VM1
(
3
,
"
tds
"
,
[
"
PROBE1
"
,
"
PROBE2
"
,
"
FORWARD
"
,
"
REFLECTED
"
,
"
KLYFORWARD
"
,
"
KLYREFLECTED
"
,
"
REFER
"
,
"
VMMONITOR
"
])
if
STATION
==
"
LLTDSB2
"
:
boardDWC8VM1
(
4
,
"
tds
"
,
[
"
PROBE1
"
,
"
PROBE2
"
,
"
PROBE3
"
,
"
PROBE4
"
,
"
FORWARD
"
,
"
REFLECTED
"
,
"
REFER
"
,
"
VMMONITOR
"
])
SECTION_NAME
=
""
CRATE_NAME
=
STATION
STATION_LOCATION_SUFFIX
=
STATION
SVR_LOCATION
=
HOSTNAME
.
upper
()
+
"
._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/
"
+
STATION
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
ACCELERATOR
==
"
XFEL
"
:
OPER_GID
=
512
EXPERT_GID
=
6194
T_ZERO
=
800
TINERUN
=
1
DOOCS_NAMING_SCHEME
=
2
pulseLength
=
16384
provideLimiterEnable
=
1
enableAutomation
=
0
enableMicroDAQ
=
0
clockFrequency
=
81.25
IQdetectionLength
=
9
gradientUnit
=
"
MV
"
powerUnit
=
"
kW
"
nSinCosTableSize
=
3
phaseStep
=
240
sinSign
=
-
1
enableStatistics
=
0
enablePhaseSetter
=
1
MAXIMUM_TRIGGER_INTERVAL
=
1
lengthScale
=
1.036
# TODO: Use formula to compute as used for AH1, but 0.2% difference!
nCellsPerCavity
=
9
enablePerBunchSetpoints
=
True
nMaxFlattops
=
3
if
STATION
==
"
1
"
:
multiCavityStation
().
useDirectClock
()
rfFrequency
=
1300
QL
=
4600000
SECTION_NAME
=
""
boardDWC10
(
slot
=
12
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
)
boardDWC10
(
slot
=
10
,
cryomodule
=
1
,
signal
=
"
FORW
"
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
8
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
4
).
withBeam
(
toroidLinkSource
=
1
)
CRATE_NAME
=
"
A
"
+
STATION
SECTION_NAME
=
"
I1
"
STATION_LOCATION_SUFFIX
=
CRATE_NAME
+
"
.
"
+
SECTION_NAME
CRYOMODULES_NO_SPACE
=
"
12
"
# FIXME: This line should be removed, but panels expect the wrong M12 in location names!
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLAH1I1
"
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LLAH1I1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.I1
"
if
STATION
==
"
H1
"
:
multiCavityStation
().
useDirectClock
()
SERVERNAME
=
"
llrfCtrl_39_server
"
RPC_NUMBER
=
610489970
BPN
=
9000
SECTION_NAME
=
""
rfFrequency
=
3900
QL
=
3260000
lengthScale
=
299792458
/
(
rfFrequency
*
1000000
)
*
nCellsPerCavity
/
2
boardDWC10
(
slot
=
11
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
9
,
cryomodule
=
1
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
7
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
3
).
withBeam
(
toroidLinkSource
=
1
)
CRATE_NAME
=
"
A
"
+
STATION
SECTION_NAME
=
"
I1
"
SVR_LOCATION
=
"
XFELCPULLAH1I1._SVR
"
STATION_LOCATION_SUFFIX
=
CRATE_NAME
+
"
.
"
+
SECTION_NAME
CRYOMODULES_NO_SPACE
=
"
12
"
# FIXME: This line should be removed, but panels expect the wrong M12 in location names!
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLAH1I1
"
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRLAH1
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LLAH1I1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.I1
"
if
STATION
in
list
(
map
(
str
,
range
(
2
,
26
+
1
)))
+
[
"
0
"
,
"
2SP
"
,
"
HS
"
]:
rfFrequency
=
1300
QL
=
4600000
CRATE_NAME
=
"
A
"
+
STATION
+
(
"
M
"
if
INSTANCE_TYPE
==
InstanceType
.
mulcavMaster
else
"
S
"
)
STATION_LOCATION_SUFFIX
=
"
A
"
+
STATION
if
STATION
in
[
"
2
"
,
"
2SP
"
]:
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
"
L1
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M12.A2.L1
"
if
STATION
in
map
(
str
,
range
(
3
,
5
+
1
)):
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
"
L2
"
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M12.A
"
+
STATION
+
"
.L2
"
if
STATION
in
map
(
str
,
range
(
6
,
26
+
1
)):
multiCavityStation
().
useULOG
()
SECTION_NAME
=
"
L3
"
if
STATION
in
[
"
0
"
]:
multiCavityStation
().
useLOGM
()
SECTION_NAME
=
""
LOC_REFM_OPT
=
""
if
STATION
in
[
"
HS
"
]:
multiCavityStation
().
useULOG
()
SECTION_NAME
=
""
LOC_REFM_OPT
=
""
STATION_LOCATION_SUFFIX
=
STATION
CRATE_NAME
=
STATION
if
SECTION_NAME
!=
""
:
STATION_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
+
"
.
"
+
SECTION_NAME
boardDWC10
(
slot
=
12
,
cryomodule
=
1
,
signal
=
"
PROB
"
,
vmLoopChannel
=
0
)
boardDWC10
(
slot
=
11
,
cryomodule
=
2
,
signal
=
"
PROB
"
,
vmCpimChannel
=
0
)
boardDWC10
(
slot
=
10
,
cryomodule
=
1
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
9
,
cryomodule
=
2
,
signal
=
"
FORW
"
)
boardDWC10
(
slot
=
8
,
cryomodule
=
1
,
signal
=
"
REFL
"
)
boardDWC10
(
slot
=
7
,
cryomodule
=
2
,
signal
=
"
REFL
"
)
boardTCK7
(
slot
=
4
).
withBeam
(
toroidLinkSource
=
1
)
# this is the TCK7 board location of the crate (i.e. on slave not the one with the controller inside!)
CTRL_BOARD_LOCATION
=
"
BOARD_TCK7
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LL
"
+
CRATE_NAME
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
if
STATION
in
map
(
str
,
range
(
6
,
11
+
1
)):
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A8.L3
"
if
STATION
in
map
(
str
,
range
(
12
,
17
+
1
)):
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A14.L3
"
if
STATION
in
map
(
str
,
range
(
18
,
23
+
1
)):
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A20.L3
"
if
STATION
in
map
(
str
,
range
(
24
,
26
+
1
)):
LOC_REFM_OPT
=
ACCELERATOR
+
"
.RF/LLRF.REFMOPT/TMCB.M34.A26.L3
"
if
STATION
in
list
(
map
(
str
,
range
(
2
,
26
+
1
)))
+
[
"
0
"
,
"
1
"
,
"
H1
"
,
"
2SP
"
,
"
HS
"
]:
CRATE_LOCATION_SUFFIX
=
"
M
"
+
CRYOMODULES_NO_SPACE
+
"
.
"
+
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
==
"
1
"
:
SVR_LOCATION
=
"
XFELCPULLA
"
+
STATION
+
"
I1._SVR
"
else
:
SVR_LOCATION
=
HOSTNAME
.
upper
()
+
"
._SVR
"
MPS_LOCATION
=
FACILITY
+
"
/MPS/LL
"
+
CRATE_NAME
if
STATION
==
"
GUN1
"
:
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
1300
QL
=
9000
phaseStep
=
240
sinSign
=
-
1
nSinCosTableSize
=
3
boardDWC8VM1
(
5
,
"
xfelgun
"
,
[
"
GUN/REFL
"
,
"
GUN/FORW
"
,
"
WG12/REFL
"
,
"
WG12/FORW
"
,
"
WG34/REFL
"
,
"
WG34/FORW
"
,
"
REFER1/REFER
"
,
"
VM
"
])
boardDWC10sincav
(
4
,
"
xfelgun
"
,
[
"
SIS4CH0
"
,
"
KLY1/FORW
"
,
"
KLY1/REFL
"
,
"
KLY2/FORW
"
,
"
KLY2/REFL
"
])
boardDWC10sincav
(
6
,
"
xfelgun
"
,
[
"
SIS6CH0
"
,
"
WG1/FORW
"
,
"
WG1/REFL
"
,
"
WG2/FORW
"
,
"
WG2/REFL
"
,
"
WG3/FORW
"
,
"
WG3/REFL
"
,
"
WG4/FORW
"
,
"
WG4/REFL
"
,
"
REFER2/REFER
"
])
SECTION_NAME
=
"
I1
"
CRATE_NAME
=
"
GUN
"
STATION_LOCATION_SUFFIX
=
"
GUN.I1
"
SVR_LOCATION
=
"
XFELCPULLGUN1._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLGUN1
"
WATCHDOG_ADDRESS
=
"
XFEL.SYSTEM/XFELCPULLGUN1.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LL
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
==
"
GUN1SP
"
:
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
1300
QL
=
9000
phaseStep
=
240
sinSign
=
-
1
nSinCosTableSize
=
3
boardDWC8VM1
(
3
,
"
mesa
"
,
[
"
GUN/REFL
"
,
"
GUN/FORW
"
,
"
WG12/REFL
"
,
"
WG12/FORW
"
,
"
WG34/REFL
"
,
"
WG34/FORW
"
,
"
REFER1/REFER
"
,
"
VM
"
],
firmwareProject
=
"
llrf_scav_sis8300ku
"
)
boardDWC10sincav
(
6
,
""
,
[
"
SIS6CH0
"
,
"
WG1/FORW
"
,
"
WG1/REFL
"
,
"
WG2/FORW
"
,
"
WG2/REFL
"
,
"
WG3/FORW
"
,
"
WG3/REFL
"
,
"
WG4/FORW
"
,
"
WG4/REFL
"
,
"
REFER2/REFER
"
],
firmwareProject
=
"
llrf_mcav_fd_sis8300ku
"
)
SECTION_NAME
=
"
I1
"
CRATE_NAME
=
"
GUN_SP
"
STATION_LOCATION_SUFFIX
=
"
GUN_SP.I1
"
SVR_LOCATION
=
"
XFELCPULLGUN1SP._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/LLGUN1SP
"
WATCHDOG_ADDRESS
=
"
XFEL.SYSTEM/XFELCPULLGUN1SP.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/LL
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
if
STATION
in
[
"
LLTDSI1
"
,
"
LLTDSB2
"
]:
DOOCS_NAMING_SCHEME
=
1
FULL_STATION_NAME
=
STATION
singleCavityStation
().
useLOGM
()
rfFrequency
=
3000
clockFrequency
=
81.25
QL
=
10000
pulseLength
=
2048
enablePerBunchSetpoints
=
False
enablePhaseSetter
=
0
phaseStep
=
160
sinSign
=
-
1
nSinCosTableSize
=
9
IQdetectionLength
=
1
if
STATION
==
"
LLTDSI1
"
:
boardDWC8VM1
(
3
,
"
tds
"
,
[
"
PROBE1
"
,
"
PROBE2
"
,
"
FORWARD
"
,
"
REFLECTED
"
,
"
KLYFORWARD
"
,
"
KLYREFLECTED
"
,
"
REFER
"
,
"
VMMONITOR
"
])
if
STATION
==
"
LLTDSB2
"
:
boardDWC8VM1
(
4
,
"
tds
"
,
[
"
PROBE1
"
,
"
PROBE2
"
,
"
PROBE3
"
,
"
PROBE4
"
,
"
FORWARD
"
,
"
REFLECTED
"
,
"
REFER
"
,
"
VMMONITOR
"
])
boardDWC8VM1
(
6
,
"
tds
"
,
[
"
KLYFORWARD
"
,
"
KLYREFLECTED
"
,
"
PREAMP
"
,
"
ADC1_CH3
"
,
"
ADC1_CH4
"
,
"
ADC1_CH5
"
,
"
ADC1_CH6
"
,
"
ADC1_CH7
"
],
skipController
=
True
)
SECTION_NAME
=
""
CRATE_NAME
=
STATION
STATION_LOCATION_SUFFIX
=
STATION
SVR_LOCATION
=
HOSTNAME
.
upper
()
+
"
._SVR
"
MODULE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
CTRL_BOARD_LOCATION
=
"
BOARD_ADC
"
+
str
(
CTRLBOARD_SLOT
)
+
"
.
"
+
STATION_LOCATION_SUFFIX
VM_BOARD_LOCATION
=
CTRL_BOARD_LOCATION
TIMING_LOCATION
=
"
XFEL.RF/TIMER/
"
+
STATION
WATCHDOG_ADDRESS
=
ACCELERATOR
+
"
.SYSTEM/
"
+
HOSTNAME
.
upper
()
+
"
.WATCH/SVR.LLRFCTRL
"
MPS_LOCATION
=
ACCELERATOR
+
"
.RF/MPS/
"
+
STATION
CRATE_LOCATION_SUFFIX
=
STATION_LOCATION_SUFFIX
MAIN_LOCATION_SUFFIX
=
CRATE_LOCATION_SUFFIX
Loading