Skip to content
Snippets Groups Projects
Commit fdf89c3a authored by Gabriel Fedel's avatar Gabriel Fedel :speech_balloon:
Browse files

Clean and implement new event names

parent b55f26f1
No related branches found
No related tags found
1 merge request!1First version for RFQ
......@@ -53,29 +53,3 @@ iocInit
iocshLoad "$(mrfioc2_DIR)/evrr.iocsh" "P=$(PREFIX), INTREF=$(INTREF=)"
iocshLoad "$(mrfioc2_DIR)/evrtclkr.iocsh" "P=$(PREFIX)"
iocshLoad "$(mrfioc2_DIR)/evrlbseq0r.iocsh" "P=$(PREFIX)"
#dbpf $(PREFIX):Enable-Sel "Ena Master"
#dbpf $(PREFIX):1ppsInp-Sel "Sys Clk"
#
## - Set MXC0 to generate 14 Hz
dbpf $(PREFIX):PS0-Div-SP 6289464
#dbpf $(PREFIX):Mxc0-Polarity-Sel "Orginal"
#
## - Generate event 14 upon trigger on Mxc0
#dbpf $(PREFIX):TrigEvt0-EvtCode-SP 14
#dbpf $(PREFIX):TrigEvt0-TrigSrc-Sel "Mxc0"
#
## - Configure sequencers
#dbpf $(PREFIX):SoftSeq0-RunMode-Sel "Normal"
#dbpf $(PREFIX):SoftSeq0-TsResolution-Sel "uSec"
#dbpf $(PREFIX):SoftSeq0-TrigSrc-2-Sel "Prescaler 0"
#dbpf $(PREFIX):SoftSeq0-Load-Cmd "1"
##
#dbpf $(PREFIX):SoftSeq1-RunMode-Sel "Normal"
#dbpf $(PREFIX):SoftSeq1-TsResolution-Sel "uSec"
#dbpf $(PREFIX):SoftSeq1-TrigSrc-2-Sel "Prescaler 0"
#dbpf $(PREFIX):SoftSeq1-Load-Cmd "1"
#
## - Start sequencers
dbpf $(PREFIX):SeqSelecCalc.PROC "1"
#
epicsEnvSet("RepRate_event", "14")
epicsEnvSet("Modulator_event" "60")
epicsEnvSet("Pulse_coming_event" "15")
epicsEnvSet("Pulse_start_event" "12")
epicsEnvSet("Pulse_end_event" "13")
epicsEnvSet("Post_mortem_event" "40")
epicsEnvSet "OBJ" "EVR"
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(RepRate_event), OBJ=$(OBJ), CODE=$(RepRate_event), EVNT=$(RepRate_event)")
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(Pulse_coming_event), OBJ=$(OBJ), CODE=$(Pulse_coming_event), EVNT=$(Pulse_coming_event)")
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(Pulse_start_event), OBJ=$(OBJ), CODE=$(Pulse_start_event), EVNT=$(Pulse_start_event)")
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(Pulse_end_event), OBJ=$(OBJ), CODE=$(Pulse_end_event), EVNT=$(Pulse_end_event)")
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(Post_mortem_event), OBJ=$(OBJ), CODE=$(Post_mortem_event), EVNT=$(Post_mortem_event)")
dbLoadRecords("evrevent.db","EN=$(PREFIX)-$(Modulator_event), OBJ=$(OBJ), CODE=$(Modulator_event), EVNT=$(Modulator_event)")
#- Backplane trigger line configuration
#- 14 Hz repeating signal, sequence in pulse is unimportant - There is no backplane here
afterInit("dbpf $(IOC)-$(DEV1):DlyGen0-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen0-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):OutFP0-Src-SP 0")
#-Pulse Coming - TX17
afterInit("dbpf $(IOC)-$(DEV1):DlyGen1-Evt-Trig0-SP $(Pulse_coming_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen1-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):OutBack1-Src-SP 1") # trigger from delay generator 0 to TX17
#-Pulse Start - RX18
afterInit("dbpf $(IOC)-$(DEV1):DlyGen2-Evt-Trig0-SP $(Pulse_start_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen2-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):OutBack2-Src-SP 2") # trigger from delay generator 0 to RX18
afterInit("dbpf $(IOC)-$(DEV1):OutFP2-Src-SP 2")
#-Pulse End - TX18
afterInit("dbpf $(IOC)-$(DEV1):DlyGen3-Evt-Trig0-SP $(Pulse_end_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen3-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):OutBack3-Src-SP 3") # trigger from delay generator 0 to TX18
afterInit("dbpf $(IOC)-$(DEV1):OutFP3-Src-SP 3")
#-Post-morten trigger - RX19
afterInit("dbpf $(IOC)-$(DEV1):DlyGen4-Evt-Trig0-SP $(Post_mortem_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen4-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):OutBack4-Src-SP 4") # trigger from delay generator 0 to RX19
# FIM Event comes from the same as the modultor, but with Delay of 5000
#- RX17
afterInit("dbpf $(IOC)-$(DEV1):DlyGen5-Evt-Trig0-SP $(Modulator_event)")
afterInit("dbpf $(IOC)-$(DEV1):OutBack0-Src-SP 5") # trigger from delay generator 5 to RX17
afterInit("dbpf $(IOC)-$(DEV1):DlyGen5-Width-SP 1000") # time in micro-seconds
afterInit("dbpf $(IOC)-$(DEV1):DlyGen5-Delay-SP 5000") # micro-seconds
# Modulator event
afterInit("dbpf $(IOC)-$(DEV1):DlyGen6-Evt-Trig0-SP $(Modulator_event)")
afterInit("dbpf $(IOC)-$(DEV1):DlyGen6-Width-SP 100") # time in micro-seconds
# Output to modulator from Pulser 6 on Front Panel 1
afterInit("dbpf $(IOC)-$(DEV1):OutFP1-Src-SP 6")
## Default values
# pre-pulse delay: 1000us
# HV sync width: 1000us
# RF sync delay: 1900us
# RF sync width: 2600us
# Beam pulse dealay: 200us
# Beam pulse width : 2000us
# FIm delay: 100us
#- Backplane trigger line configuration / Front output
# Pulser 0 - HV Sync - Modulator
afterInit("dbpf $(PREFIX):DlyGen0-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen0-Delay-SP 100") # Pre-pulse delay
afterInit("dbpf $(PREFIX):DlyGen0-Width-SP 1000") # time in micro-seconds
## FP 0 and 1
afterInit("dbpf $(PREFIX):OutFP0-Src-SP 0")
afterInit("dbpf $(PREFIX):OutFP1-Src-SP 0")
## FP UNIVTTL 0
#afterInit("dbpf $(PREFIX):OutFPUV0-Src-SP 0")
# Pulser 1 - RF Sync
afterInit("dbpf $(PREFIX):DlyGen1-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen1-Delay-SP 2000") # Pre-pulse delay + RF Sync Delay
afterInit("dbpf $(PREFIX):DlyGen1-Width-SP 2600") # time in micro-seconds
## FP 1 and 2
afterInit("dbpf $(PREFIX):OutFP2-Src-SP 1")
afterInit("dbpf $(PREFIX):OutFP3-Src-SP 1")
## FP UNIVTTL 1, 2 and 3
#afterInit("dbpf $(PREFIX):OutFPUV1-Src-SP 1")
#afterInit("dbpf $(PREFIX):OutFPUV2-Src-SP 1")
#afterInit("dbpf $(PREFIX):OutFPUV3-Src-SP 1")
# Pulser 2 - LLRF Start - TX17
afterInit("dbpf $(PREFIX):DlyGen2-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen2-Delay-SP 2000") # Pre-pulse delay + RF Sync Delay
afterInit("dbpf $(PREFIX):DlyGen2-Width-SP 100") # time in micro-seconds
afterInit("dbpf $(PREFIX):OutBack1-Src-SP 2") # trigger from delay generator 2 to TX17
#Pulser 3 - LLRF End - TX20
afterInit("dbpf $(PREFIX):DlyGen3-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen3-Delay-SP 4600") # Pre-pulse delay + RF Sync Delay + Rf Sync width
afterInit("dbpf $(PREFIX):DlyGen3-Width-SP 100") # time in micro-seconds
afterInit("dbpf $(PREFIX):OutBack7-Src-SP 3") # trigger from delay generator 3 to TX20
#Pulser 4 Beam Start - RX18
afterInit("dbpf $(PREFIX):DlyGen4-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen4-Delay-SP 2200") # Pre-pulse delay + RF Sync Delay + Beam pulse delay
afterInit("dbpf $(PREFIX):DlyGen4-Width-SP 100") # time in micro-seconds
afterInit("dbpf $(PREFIX):OutBack2-Src-SP 4") # trigger from delay generator 4 to RX18
#Pulser 5 Beam End - TX18
afterInit("dbpf $(PREFIX):DlyGen5-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen5-Delay-SP 4200") # Pre-pulse delay + RF Sync Delay + Beam pulse delay + Beam pulse width
afterInit("dbpf $(PREFIX):DlyGen5-Width-SP 100") # time in micro-seconds
afterInit("dbpf $(PREFIX):OutBack3-Src-SP 4") # trigger from delay generator 5 to TX18
# Pulser 6 - FIM Trigger - RX17
afterInit("dbpf $(PREFIX):DlyGen6-Evt-Trig0-SP $(RepRate_event)")
afterInit("dbpf $(PREFIX):DlyGen6-Delay-SP 4700") # Pre-pulse delay + RF Sync Delay + Rf sync width + fim delay
afterInit("dbpf $(PREFIX):DlyGen6-Width-SP 100") # time in micro-seconds
afterInit("dbpf $(PREFIX):OutBack0-Src-SP 5") # trigger from delay generator 5 to RX17
afterInit("dbpf $(PREFIX):#SetInitVals.PROC 1")
......@@ -13,299 +13,161 @@ record(ao, "$(P)$(R=)CycleFreq-SP") {
field(FLNK, "$(P)$(R=)RFFreq-Divider PP")
}
record(calc, "$(P)$(R=)CycleFreq-RB") {
field(DESC, "Cycle frequency readback")
field(INPA, "$(EVGPREFIX)PS0-Rate-I CP")
field(CALC, "A*1000000")
field(PREC, "5")
field(EGU, "Hz")
}
record(calcout, "$(P)$(R=)RFFreq-Divider") {
field(INPA, "$(P)$(R=)CycleFreq-SP")
field(CALC, "(88052500 / A)")
field(OUT, "$(EVGPREFIX)Mxc0-Prescaler-SP PP")
field(OUT, "$(EVGPREFIX)PS0-Div-SP PP")
field(TPRO, "0")
field(FLNK, "$(P)$(R=)SeqSelecCalc PP")
}
#####
# Fixed values
####
########################################################
# RF Pulse Lenght
########################################################
record(ao, "$(P)$(R=)RFPulseLen-SP") {
field(DESC, "RF Pulse Length")
field(VAL, "3000")
field(DRVL, "404")
field(DRVH, "3600")
record(ai, "$(P)$(R=)PrePulseDly-RB") {
field(DESC, "Pre Pulse Delay")
field(VAL, "1000")
field(EGU, "us")
info(autosaveFields_pass0, "VAL")
field(FLNK, "$(P)$(R=)SeqSelecCalc PP")
}
record(ai, "$(P)$(R=)RFPulseLen-RB") {
field(DESC, "RF Pulse Length RB")
record(ai, "$(P)$(R=)HVSyncWdt-RB") {
field(DESC, "HV Sync Width")
field(VAL, "1000")
field(EGU, "us")
}
record(ai, "$(P)$(R=)RFPulseDelay-RB") {
field(DESC, "RF Pulse Delay RB")
record(ai, "$(P)$(R=)FIMDly-RB") {
field(DESC, "FIM Delay")
field(VAL, "1000")
field(EGU, "us")
}
####
# Defined Delays/Width
####
########################################################
# Proton Pulse Lenght
########################################################
record(ao, "$(P)$(R=)PBLen-SP") {
field(DESC, "Beam Length")
field(VAL, "50")
field(DRVL, "1")
field(DRVH, "2863")
record(ao, "$(P)$(R=)RFSyncDly-SP") {
field(DESC, "RF Sync Delay")
field(VAL, "1000")
field(EGU, "us")
info(autosaveFields_pass0, "VAL")
}
field(FLNK, "$(P)$(R=)SeqSelecCalc PP")
record(ao, "$(P)$(R=)RFSyncWdt-SP") {
field(DESC, "RF Sync Width")
field(VAL, "3000")
field(EGU, "us")
field(OUT, "$(EVGPREFIX)DlyGen1-Width-SP PP") #TODO check
info(autosaveFields_pass0, "VAL")
}
record(ai, "$(P)$(R=)PBLen-RB") {
field(DESC, "RF Pulse Length RB")
record(ao, "$(P)$(R=)BeamPulseDly-SP") {
field(DESC, "Beam Pulse Delay")
field(VAL, "200")
field(EGU, "us")
info(autosaveFields_pass0, "VAL")
}
record(ao, "$(P)$(R=)PBDelay-SP") {
field(DESC, "Beam Delay from RF init")
field(VAL, "400")
field(DRVL, "400")
field(DRVH, "10000000")
record(ao, "$(P)$(R=)BeamPulseWdt-SP") {
field(DESC, "Beam Pulse Width")
field(VAL, "2000")
field(EGU, "us")
info(autosaveFields_pass0, "VAL")
}
######
# Records to update the EVR Pulsers
######
# Set fixed values
record(seq, "$(P)$(R=)#SeqFixedVals") {
field(DOL0, "$(P)$(R=)PrePulseDly-RB")
field(LNK0, "$(EVGPREFIX)DlyGen0-Delay-SP PP")
field(FLNK, "$(P)$(R=)SeqSelecCalc PP")
field(DOL1, "$(P)$(R=)HVSyncWdt-RB")
field(LNK1, "$(EVGPREFIX)DlyGen0-Width-SP PP")
}
record(ai, "$(P)$(R=)PBDelay-RB") {
field(DESC, "Beam Delay from RF init RB")
field(EGU, "us")
# Pulser 1
record(calcout, "$(P)$(R=)#SetPulser1Dly"){
field(INPA, "$(P)$(R=)PrePulseDly-RB")
field(INPB, "$(P)$(R=)RFSyncDly-SP CP") # When updates value, update evr
field(CALC, "A+B")
field(OUT, "$(EVGPREFIX)DlyGen1-Delay-SP PP" )
}
########################################################
# Pulse Coming Event
########################################################
record(ao, "$(P)$(R=)PulseCmDelay-SP") {
field(DESC, "Pulse Coming delay")
field(VAL, "100")
field(DRVL, "100")
field(DRVH, "10000000")
field(EGU, "us")
info(autosaveFields_pass0, "VAL")
# Pulser 2
record(calcout, "$(P)$(R=)#SetPulser2Dly"){
field(INPA, "$(P)$(R=)PrePulseDly-RB")
field(INPB, "$(P)$(R=)RFSyncDly-SP CP") # When updates value, update evr
field(CALC, "A+B")
field(OUT, "$(EVGPREFIX)DlyGen2-Delay-SP PP" )
}
field(FLNK, "$(P)$(R=)SeqSelecCalc PP")
# Pulser 3
record(calcout, "$(P)$(R=)#SetPulser3Dly"){
field(INPA, "$(P)$(R=)PrePulseDly-RB")
field(INPB, "$(P)$(R=)RFSyncDly-SP CP") # When updates value, update evr
field(INPC, "$(P)$(R=)RFSyncWdt-SP CP") # When updates value, update evr
field(CALC, "A+B+C")
field(OUT, "$(EVGPREFIX)DlyGen3-Delay-SP PP" )
}
record(ai, "$(P)$(R=)PulseCmDelay-RB") {
field(DESC, "Pulse Coming delay RB")
field(EGU, "us")
# Pulser 4
record(calcout, "$(P)$(R=)#SetPulser4Dly"){
field(INPA, "$(P)$(R=)PrePulseDly-RB")
field(INPB, "$(P)$(R=)RFSyncDly-SP CP") # When updates value, update evr
field(INPC, "$(P)$(R=)BeamPulseDly-SP CP") # When updates value, update evr
field(CALC, "A+B+C")
field(OUT, "$(EVGPREFIX)DlyGen4-Delay-SP PP" )
}
# Pulser 5
record(calcout, "$(P)$(R=)#SetPulser5Dly"){
field(INPA, "$(P)$(R=)PrePulseDly-RB")
field(INPB, "$(P)$(R=)RFSyncDly-SP CP") # When updates value, update evr
field(INPC, "$(P)$(R=)BeamPulseDly-SP CP") # When updates value, update evr
field(INPD, "$(P)$(R=)BeamPulseWdt-SP CP") # When updates value, update evr
field(CALC, "A+B+C+D")
field(OUT, "$(EVGPREFIX)DlyGen5-Delay-SP PP" )
}
#########################################################
## Record logic to alternate activation of sequencers
#########################################################
#record(calc, "$(P)$(R=)SeqSelecCalc") {
# field(CALC, "A > 0 ? 0 : 1")
# field(INPA, "$(P)$(R=)SeqSelecCalc")
# field(VAL, "0")
# field(FLNK, "$(P)$(R=)SeqSelecFOut")
# field(TPRO, "0")
#}
#
#record(fanout, "$(P)$(R=)SeqSelecFOut") {
# field(SELM, "Specified")
# field(SELL, "$(P)$(R=)SeqSelecCalc")
# field(LNK0, "$(P)$(R=)Seq0-Write-aSub")
# field(LNK1, "$(P)$(R=)Seq1-Write-aSub")
# field(TPRO, "0")
#}
#
#########################################################
## aSub process - Sequencer 0
#########################################################
#record(aSub, "$(P)$(R=)Seq0-Write-aSub") {
# field(DESC, "Sequencer arrays")
# field(SNAM, "seqConfigure")
# field(SCAN, "Passive")
#
# # input A -> RF pulse length
# field(INPA, "$(P)$(R=)RFPulseLen-SP")
# field(FTA, "FLOAT")
# field(NOA, "1")
#
# # input B -> Proton beam length
# field(INPB, "$(P)$(R=)PBLen-SP")
# field(FTB, "FLOAT")
# field(NOB, "1")
#
# # input C -> RF pulse delay with respect to fiducial mark
# # field(INPC, "$(P)$(R=)RFPulseDelay-SP")
# # field(FTC, "FLOAT")
# # field(NOC, "1")
#
# # input C -> Proton beam delay with respect to RF pulse
# field(INPC, "$(P)$(R=)PBDelay-SP")
# field(FTC, "FLOAT")
# field(NOC, "1")
#
# # input D -> Frequency
# field(INPD, "$(P)$(R=)CycleFreq-SP")
# field(FTD, "FLOAT")
# field(NOD, "1")
#
# # input E -> Pulse Coming
# field(INPE, "$(P)$(R=)PulseCmDelay-SP")
# field(FTE, "FLOAT")
# field(NOE, "1")
#
# # outputs A,B -> EVM Sequencer arrays
# field(FTVA, "ULONG")
# field(OUTA, "$(EVGPREFIX)SoftSeq0-EvtCode-SP CP")
# field(NOVA, "2047")
# field(FTVB, "DOUBLE")
# field(OUTB, "$(EVGPREFIX)SoftSeq0-Timestamp-SP CP")
# field(NOVB, "2047")
#
# # output C -> readback of RF Pulse Length
# field(FTVC, "FLOAT")
# field(OUTC, "$(P)$(R=)RFPulseLen-RB PP")
#
# # output D -> readback of Proton Beam Length
# field(FTVD, "FLOAT")
# field(OUTD, "$(P)$(R=)PBLen-RB PP")
#
# # output E -> readback of RF pulse delay
# field(FTVE, "FLOAT")
# field(OUTE, "$(P)$(R=)RFPulseDelay-RB PP")
#
# # output F -> readback of Proton Beam Delay
# field(FTVF, "FLOAT")
# field(OUTF, "$(P)$(R=)PBDelay-RB PP")
#
# # output G -> readback of Pulse Coming Delay
# field(FTVG, "FLOAT")
# field(OUTG, "$(P)$(R=)PulseCmDelay-RB PP")
#
# # Process the sequencer commands
# field(FLNK, "$(P)$(R=)Seq0-Enable PP")
# field(TPRO, "0")
#}
# Set all initial values
record(fanout, "$(P)$(R=)#SetInitVals") {
field(LNK0, "$(P)$(R=)#SeqFixedVals")
field(LNK1, "$(P)$(R=)#SetPulser1Dly")
field(LNK2, "$(P)$(R=)#SetPulser2Dly")
field(LNK3, "$(P)$(R=)#SetPulser3Dly")
field(LNK4, "$(P)$(R=)#SetPulser4Dly")
field(LNK5, "$(P)$(R=)#SetPulser5Dly")
}
### Sequencer 0
record(seq, "$(P)$(R=)Seq0-Enable") {
field(SELM, "All")
# Unload sequencer 1
field(DOL0, "1")
field(LNK0, "$(EVGPREFIX)SoftSeq1-Unload-Cmd CP")
# Disable sequencer 1
field(DOL1, "1")
field(LNK1, "$(EVGPREFIX)SoftSeq1-Disable-Cmd CP")
# Load sequencer 0
field(DOL2, "1")
field(LNK2, "$(EVGPREFIX)SoftSeq0-Load-Cmd CP")
field(DOL0, "1")
field(LNK0, "$(EVGPREFIX)SoftSeq0-Load-Cmd CP")
# Commit sequencer 0
field(DOL3, "1")
field(LNK3, "$(EVGPREFIX)SoftSeq0-Commit-Cmd CP")
field(DOL1, "1")
field(LNK1, "$(EVGPREFIX)SoftSeq0-Commit-Cmd CP")
# Enable sequencer 0
field(DOL4, "1")
field(LNK4, "$(EVGPREFIX)SoftSeq0-Enable-Cmd CP")
field(DOL2, "1")
field(LNK2, "$(EVGPREFIX)SoftSeq0-Enable-Cmd CP")
field(TPRO, "0")
}
#########################################################
## aSub process - Sequencer 1
#########################################################
#record(aSub, "$(P)$(R=)Seq1-Write-aSub") {
# field(DESC, "Sequencer arrays")
# field(SNAM, "seqConfigure")
# field(SCAN, "Passive")
#
# # input A -> RF pulse length
# field(INPA, "$(P)$(R=)RFPulseLen-SP")
# field(FTA, "FLOAT")
# field(NOA, "1")
#
# # input B -> Proton beam length
# field(INPB, "$(P)$(R=)PBLen-SP")
# field(FTB, "FLOAT")
# field(NOB, "1")
#
# # input C -> RF pulse delay with respect to fiducial mark
# # field(INPC, "$(P)$(R=)RFPulseDelay-SP")
# # field(FTC, "FLOAT")
# # field(NOC, "1")
#
# # input C -> Proton beam delay with respect to RF pulse
# field(INPC, "$(P)$(R=)PBDelay-SP")
# field(FTC, "FLOAT")
# field(NOC, "1")
#
# # input D -> Frequency
# field(INPD, "$(P)$(R=)CycleFreq-SP")
# field(FTD, "FLOAT")
# field(NOD, "1")
#
# # input E -> Pulse Coming
# field(INPE, "$(P)$(R=)PulseCmDelay-SP")
# field(FTE, "FLOAT")
# field(NOE, "1")
#
# # outputs A,B -> EVM Sequencer arrays
# field(FTVA, "ULONG")
# field(OUTA, "$(EVGPREFIX)SoftSeq1-EvtCode-SP CP")
# field(NOVA, "2047")
# field(FTVB, "DOUBLE")
# field(OUTB, "$(EVGPREFIX)SoftSeq1-Timestamp-SP CP")
# field(NOVB, "2047")
#
# # output C -> readback of RF Pulse Length
# field(FTVC, "FLOAT")
# field(OUTC, "$(P)$(R=)RFPulseLen-RB PP")
#
# # output D -> readback of Proton Beam Length
# field(FTVD, "FLOAT")
# field(OUTD, "$(P)$(R=)PBLen-RB PP")
#
# # output E -> readback of RF pulse delay
# field(FTVE, "FLOAT")
# field(OUTE, "$(P)$(R=)RFPulseDelay-RB PP")
#
# # output F -> readback of Proton Beam Delay
# field(FTVF, "FLOAT")
# field(OUTF, "$(P)$(R=)PBDelay-RB PP")
#
# # output G -> readback of Pulse Coming Delay
# field(FTVG, "FLOAT")
# field(OUTG, "$(P)$(R=)PulseCmDelay-RB PP")
#
# # Process the sequencer commands
# field(FLNK, "$(P)$(R=)Seq1-Enable PP")
# field(TPRO, "0")
#}
#
#record(seq, "$(P)$(R=)Seq1-Enable") {
# field(SELM, "All")
# # Unload sequencer 0
# field(DOL0, "1")
# field(LNK0, "$(EVGPREFIX)SoftSeq0-Unload-Cmd CP")
# # Disable sequencer 0
# field(DOL1, "1")
# field(LNK1, "$(EVGPREFIX)SoftSeq0-Disable-Cmd CP")
# # Load sequencer 1
# field(DOL2, "1")
# field(LNK2, "$(EVGPREFIX)SoftSeq1-Load-Cmd CP")
# # Commit sequencer 1
# field(DOL3, "1")
# field(LNK3, "$(EVGPREFIX)SoftSeq1-Commit-Cmd CP")
# # Enable sequencer 1
# field(DOL4, "1")
# field(LNK4, "$(EVGPREFIX)SoftSeq1-Enable-Cmd CP")
#
# field(TPRO, "0")
#}
#########################################################
## Cycle counter
#########################################################
......@@ -316,57 +178,6 @@ record(calc, "$(P)$(R=)Cycle-Cnt")
field(SCAN, "Passive")
field(INPA, "$(EVGPREFIX)SoftSeq0-NumOfStarts-I CPP")
}
#
#
#########################################################
## aSub process - Databuffer
#########################################################
#record(seq, "$(P)$(R=)CycleId-aSub-Proc") {
# field(SELM, "All")
# # field(PINI, "RUNNING")
# field(SCAN, "Passive")
# #field(DOL1, "")
# field(DO1, "1")
# field(DLY1, "0.03")
# field(LNK1, "$(P)$(R=)CycleId-aSub.PROC CA")
# field(TPRO, "0")
#}
#
#record(aSub, "$(P)$(R=)CycleId-aSub") {
# field(DESC, "Sequencer arrays")
# field(INAM, "cycleIdInit")
# field(SNAM, "dataBufProcess")
# field(SCAN, "Passive")
#
# field(INPA, "$(P)$(R=)RFPulseLen-SP")
# field(FTA, "ULONG")
# field(NOA, "1")
#
# field(INPB, "$(P)$(R=)PBLen-SP")
# field(FTB, "ULONG")
# field(NOB, "1")
#
# field(FTVA, "ULONG")
# field(NOVA, "2046")
# field(OUTA, "$(EVGPREFIX)dbus-send-u32 CP")
#
# field(FTVB, "ULONG")
# field(OUTB, "$(P)$(R=)CycleId-RB CP")
#
# field(TPRO, "0")
#
#}
#
#########################################################
## Cycle ID readback
#########################################################
#record(int64in, "$(P)$(R=)CycleId-RB") {
# field(DESC, "ID Cycle")
# field(DTYP, "Soft Channel")
# field(SCAN, "Passive")
# field(EGU, "id")
#}
#
########################################################
# Free-running or fixed number of cycles
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment