Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
CCS
Manage
Activity
Members
Plan
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Marko Mecina
CCS
Commits
69c0a697
Commit
69c0a697
authored
2 years ago
by
Marko Mecina
Browse files
Options
Downloads
Patches
Plain Diff
organise FEE parameters in classes for better overview
parent
8aede399
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
Ccs/packet_config_SMILE.py
+129
-115
129 additions, 115 deletions
Ccs/packet_config_SMILE.py
with
129 additions
and
115 deletions
Ccs/packet_config_SMILE.py
+
129
−
115
View file @
69c0a697
...
@@ -456,8 +456,10 @@ fee_id = {'vstart': {'pid': 345544373, 'idx': 1},
...
@@ -456,8 +456,10 @@ fee_id = {'vstart': {'pid': 345544373, 'idx': 1},
'
ccd_mode2_config
'
:
{
'
pid
'
:
345544341
,
'
idx
'
:
42
},
'
ccd_mode2_config
'
:
{
'
pid
'
:
345544341
,
'
idx
'
:
42
},
'
pix_offset
'
:
{
'
pid
'
:
345544367
,
'
idx
'
:
43
}}
'
pix_offset
'
:
{
'
pid
'
:
345544367
,
'
idx
'
:
43
}}
# FEE RW registers (SMILE-MSSL-PL-Register_map_v0.20)
# TODO: the FEE related parameters might need an update
# FEE RW registers (SMILE-MSSL-PL-Register_map_v0.20)
class
FeeCfgReg
:
FEE_CFG_REG_0
=
0x00000000
FEE_CFG_REG_0
=
0x00000000
FEE_CFG_REG_1
=
0x00000004
FEE_CFG_REG_1
=
0x00000004
FEE_CFG_REG_2
=
0x00000008
FEE_CFG_REG_2
=
0x00000008
...
@@ -486,8 +488,9 @@ FEE_CFG_REG_24 = 0x00000060
...
@@ -486,8 +488,9 @@ FEE_CFG_REG_24 = 0x00000060
FEE_CFG_REG_25
=
0x00000064
FEE_CFG_REG_25
=
0x00000064
FEE_CFG_REG_26
=
0x00000068
FEE_CFG_REG_26
=
0x00000068
# FEE RO registers (SMILE-MSSL-PL-Register_map_v0.20)
# FEE RO registers (SMILE-MSSL-PL-Register_map_v0.20)
class
FeeHkReg
:
FEE_HK_REG_0
=
0x00000700
# reserved
FEE_HK_REG_0
=
0x00000700
# reserved
FEE_HK_REG_1
=
0x00000704
# reserved
FEE_HK_REG_1
=
0x00000704
# reserved
FEE_HK_REG_2
=
0x00000708
# reserved
FEE_HK_REG_2
=
0x00000708
# reserved
...
@@ -527,10 +530,11 @@ FEE_HK_REG_35 = 0x0000078C
...
@@ -527,10 +530,11 @@ FEE_HK_REG_35 = 0x0000078C
FEE_HK_REG_36
=
0x00000790
FEE_HK_REG_36
=
0x00000790
FEE_HK_REG_37
=
0x00000794
FEE_HK_REG_37
=
0x00000794
# FEE modes
# FEE modes
# see MSSL-SMILE-SXI-IRD-0001 Draft A.14, req. MSSL-IF-17
# see MSSL-SMILE-SXI-IRD-0001 Draft A.14, req. MSSL-IF-17
# also SMILE-MSSL-PL-Register_map_v0.22, as the IRD does not list all modes
# also SMILE-MSSL-PL-Register_map_v0.22, as the IRD does not list all modes
class
FeeMode
:
FEE_MODE_ID_ON
=
0x0
# the thing is switched on
FEE_MODE_ID_ON
=
0x0
# the thing is switched on
FEE_MODE_ID_FTP
=
0x1
# frame transfer pattern
FEE_MODE_ID_FTP
=
0x1
# frame transfer pattern
FEE_MODE_ID_STBY
=
0x2
# stand-by-mode
FEE_MODE_ID_STBY
=
0x2
# stand-by-mode
...
@@ -544,24 +548,34 @@ FEE_MODE_ID_PTP2 = 0xC # parallel trap pump mode 2
...
@@ -544,24 +548,34 @@ FEE_MODE_ID_PTP2 = 0xC # parallel trap pump mode 2
FEE_MODE_ID_STP1
=
0xD
# serial trap pump mode 1
FEE_MODE_ID_STP1
=
0xD
# serial trap pump mode 1
FEE_MODE_ID_STP2
=
0xE
# serial trap pump mode 2
FEE_MODE_ID_STP2
=
0xE
# serial trap pump mode 2
class
FeeMode2
:
FEE_MODE2_NOBIN
=
0x1
# no binning mode
FEE_MODE2_NOBIN
=
0x1
# no binning mode
FEE_MODE2_BIN6
=
0x2
# 6x6 binning mode
FEE_MODE2_BIN6
=
0x2
# 6x6 binning mode
FEE_MODE2_BIN24
=
0x3
# 24x4 binning mode
FEE_MODE2_BIN24
=
0x3
# 24x4 binning mode
# these identifiy the bits in the readout node selection register
# these identifiy the bits in the readout node selection register
class
FeeReadoutNode
:
FEE_READOUT_NODE_E2
=
0b0010
FEE_READOUT_NODE_E2
=
0b0010
FEE_READOUT_NODE_F2
=
0b0001
FEE_READOUT_NODE_F2
=
0b0001
FEE_READOUT_NODE_E4
=
0b1000
FEE_READOUT_NODE_E4
=
0b1000
FEE_READOUT_NODE_F4
=
0b0100
FEE_READOUT_NODE_F4
=
0b0100
# see MSSL-SMILE-SXI-IRD-0001 Draft A.14, req. MSSL-IF-108
# see MSSL-SMILE-SXI-IRD-0001 Draft A.14, req. MSSL-IF-108
class
FeeCcdSide
:
FEE_CCD_SIDE_F
=
0x0
# left side
FEE_CCD_SIDE_F
=
0x0
# left side
FEE_CCD_SIDE_E
=
0x1
# right side
FEE_CCD_SIDE_E
=
0x1
# right side
FEE_CCD_INTERLEAVED
=
0x2
# F and E inverleaved
FEE_CCD_INTERLEAVED
=
0x2
# F and E inverleaved
class
FeeCcdId
:
FEE_CCD_ID_2
=
0x0
FEE_CCD_ID_2
=
0x0
FEE_CCD_ID_4
=
0x1
FEE_CCD_ID_4
=
0x1
class
FeePktType
:
FEE_PKT_TYPE_DATA
=
0x0
# any data
FEE_PKT_TYPE_DATA
=
0x0
# any data
FEE_PKT_TYPE_EV_DET
=
0x1
# event detection
FEE_PKT_TYPE_EV_DET
=
0x1
# event detection
FEE_PKT_TYPE_HK
=
0x2
# housekeeping
FEE_PKT_TYPE_HK
=
0x2
# housekeeping
...
@@ -661,26 +675,26 @@ class FeeDataTransfer(FeeDataTransferHeader):
...
@@ -661,26 +675,26 @@ class FeeDataTransfer(FeeDataTransferHeader):
- bits 1:0 = packet type: 0 = data packet, 1 = Event detection packet, 2 = housekeeping packet
- bits 1:0 = packet type: 0 = data packet, 1 = Event detection packet, 2 = housekeeping packet
"""
"""
_modes
=
{
FEE_MODE_ID_ON
:
"
On Mode
"
,
_modes
=
{
FeeMode
.
FEE_MODE_ID_ON
:
"
On Mode
"
,
FEE_MODE_ID_FTP
:
"
Frame Transfer Pattern
"
,
FeeMode
.
FEE_MODE_ID_FTP
:
"
Frame Transfer Pattern
"
,
FEE_MODE_ID_STBY
:
"
Stand-By-Mode
"
,
FeeMode
.
FEE_MODE_ID_STBY
:
"
Stand-By-Mode
"
,
FEE_MODE_ID_FT
:
"
Frame Transfer
"
,
FeeMode
.
FEE_MODE_ID_FT
:
"
Frame Transfer
"
,
FEE_MODE_ID_FF
:
"
Full Frame
"
,
FeeMode
.
FEE_MODE_ID_FF
:
"
Full Frame
"
,
FEE_MODE_ID_FFSIM
:
"
Full frame simulation
"
,
FeeMode
.
FEE_MODE_ID_FFSIM
:
"
Full frame simulation
"
,
FEE_MODE_ID_EVSIM
:
"
Event detection simulation
"
,
FeeMode
.
FEE_MODE_ID_EVSIM
:
"
Event detection simulation
"
,
FEE_MODE_ID_PTP1
:
"
Parallel trap pumping mode 1
"
,
FeeMode
.
FEE_MODE_ID_PTP1
:
"
Parallel trap pumping mode 1
"
,
FEE_MODE_ID_PTP2
:
"
Parallel trap pumping mode 2
"
,
FeeMode
.
FEE_MODE_ID_PTP2
:
"
Parallel trap pumping mode 2
"
,
FEE_MODE_ID_STP1
:
"
Serial trap pumping mode 1
"
,
FeeMode
.
FEE_MODE_ID_STP1
:
"
Serial trap pumping mode 1
"
,
FEE_MODE_ID_STP2
:
"
Serial trap pumping mode 2
"
}
FeeMode
.
FEE_MODE_ID_STP2
:
"
Serial trap pumping mode 2
"
}
_ccd_sides
=
{
FEE_CCD_SIDE_F
:
"
left side (F)
"
,
_ccd_sides
=
{
FeeCcdSide
.
FEE_CCD_SIDE_F
:
"
left side (F)
"
,
FEE_CCD_SIDE_E
:
"
right side (E)
"
,
FeeCcdSide
.
FEE_CCD_SIDE_E
:
"
right side (E)
"
,
FEE_CCD_INTERLEAVED
:
"
F&E interleaved
"
}
FeeCcdSide
.
FEE_CCD_INTERLEAVED
:
"
F&E interleaved
"
}
_ccds
=
{
FEE_CCD_ID_2
:
"
CCD2
"
,
_ccds
=
{
FeeCcdId
.
FEE_CCD_ID_2
:
"
CCD2
"
,
FEE_CCD_ID_4
:
"
CCD4
"
}
FeeCcdId
.
FEE_CCD_ID_4
:
"
CCD4
"
}
_pkt_types
=
{
FEE_PKT_TYPE_DATA
:
"
Data
"
,
_pkt_types
=
{
FeePktType
.
FEE_PKT_TYPE_DATA
:
"
Data
"
,
FEE_PKT_TYPE_EV_DET
:
"
Event detection
"
,
FeePktType
.
FEE_PKT_TYPE_EV_DET
:
"
Event detection
"
,
FEE_PKT_TYPE_HK
:
"
Housekeeping
"
,
FeePktType
.
FEE_PKT_TYPE_HK
:
"
Housekeeping
"
,
FEE_PKT_TYPE_WMASK
:
"
Wandering mask
"
}
FeePktType
.
FEE_PKT_TYPE_WMASK
:
"
Wandering mask
"
}
_DATA_HK_STRUCT
=
[]
_DATA_HK_STRUCT
=
[]
...
@@ -735,7 +749,7 @@ class FeeDataTransfer(FeeDataTransferHeader):
...
@@ -735,7 +749,7 @@ class FeeDataTransfer(FeeDataTransferHeader):
self
.
bits
.
PKT_TYPE
]
if
self
.
bits
.
PKT_TYPE
in
self
.
_pkt_types
else
self
.
bits
.
PKT_TYPE
}
self
.
bits
.
PKT_TYPE
]
if
self
.
bits
.
PKT_TYPE
in
self
.
_pkt_types
else
self
.
bits
.
PKT_TYPE
}
def
set_evt_data
(
self
):
def
set_evt_data
(
self
):
if
self
.
bits
.
PKT_TYPE
==
FEE_PKT_TYPE_EV_DET
:
if
self
.
bits
.
PKT_TYPE
==
FeePktType
.
FEE_PKT_TYPE_EV_DET
:
evtdata
=
EventDetectionData
()
evtdata
=
EventDetectionData
()
evtdata
.
bin
[:]
=
self
.
data
evtdata
.
bin
[:]
=
self
.
data
# structure according to MSSL-SMILE-SXI-IRD-0001
# structure according to MSSL-SMILE-SXI-IRD-0001
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment