Difference between revisions of "MCE commands"

From MCEWiki
 
Line 1: Line 1:
 +
= Address Card (ac) Commands =
 +
 
{| border="1"
 
{| border="1"
 
|-
 
|-
! Data Mode !! Summary !! Pixel-Data Description !! RC Firmware Revision  
+
! Parameter ID !! Physical Address !! Type !! Firmware Revision  
|-
+
! Parameters
| 0
+
! Description
|| Error
+
|-
|| 32b (signed) co-added Error signal err[31:0]. <br />
+
| -- || 0x00 || -- || --  
* [31:0] = error
+
|| --
 
+
|| Reserved
|| all
+
|-  
|-
+
| row_order || 0x01 || wb/rb || all
| 1
+
|| row1,
|| Feedback
+
row2, ...
||'''When servo_mode = 3:'''
+
|| '''This command is relevant when enbl_mux = 1 or 2.'''  Read/write the row-addressing orderA sequence of up to 41 rows is specified at onceThe row numbers that are specified with this command refer to the physical channel numbers on the Address CardNote: After this command is issued, a “flx_lp_init” command must be issued to all the readout cards to discard previous PID-loop calculations and to clean out the rest of the data pipeline. Default = 0,0,0,…
32b (signed) SQ1 Feedback data fb[31:0]. <br />
 
* [31:0] = sq1_fb * 2<sup>12</sup>
 
'''When servo_mode != 3:''' <br />
 
32b (signed) SQ1 Feedback from the rc? fb_const registers. These are DAC values. <br />
 
* [31:0] = sq1_fb
 
 
 
''Note that servo_mode=3 is the normal running condition. The non-servoing form, used at times during array-auto-tune for example, is included here for completeness.
 
''
 
|| all
 
|-
 
| 2
 
|| Filtered feedback
 
||32b (signed) low-pass filtered SQ1 feedback data fb[31:0].  <br />
 
* [31:0] = sq1_fb_filtered
 
 
 
|| 2.0.5 and later
 
|-
 
| 3 obsolete <br /> (see 12)
 
|| Raw 50 MHz
 
|| Raw 50 MHz ADC samples raw[13:i], where i=0 in rev. 4.3.7 and i=6 in all previous firmware. <br />
 
* [31:0] = raw_data / (2<sup>i</sup>),
 
 
 
|| Only 3.0.6, 3.0.16, 3.0.25, 4.1.7, 4.2.7, 4.3.7
 
|-
 
| 4
 
|| 18:14 Mixed
 
||Signed 18b SQ1 feedback fb[31] & fb[28:12] + signed 14b coadded error signal err[31] & err[12:0].  <br />
 
* [31:14] = sq1_fb
 
* [13:0]  = error
 
 
 
|| 2.0.9 and later
 
|-
 
| 5
 
|| 24:8 mixed
 
|| Signed 24b SQ1 feedback fb[31:8] + signed 8b num_flux_jumps fj[7:0]. <br />
 
* [31:8] = sq1_fb * 2<sup>4</sup>
 
* [7:0]  = num_flux_jumps
 
 
 
|| all
 
|-
 
| 6 obsolete
 
|| 18:14 mixed
 
|| Signed 18b filtered data filter[31] & filter[27:11] + signed 14b coadded error signal err[31] & err[12:0]. <br />
 
* [31:13] = sq1_fb_filtered / (2<sup>11</sup>)
 
* [12:0]  = error
 
 
 
|| 3.0.30 to 4.0.6 only
 
|-
 
| 7
 
|| 22:10 mixed
 
|| Signed 22b filtered data filter[31] & filter[27:7] + signed 10b coadded error signal err[31] & err[12:4]. <br />
 
* [31:10] = sq1_fb_filtered / (2<sup>7</sup>)
 
* [9:0]  = error / (2<sup>4</sup>)
 
 
 
|| 4.0.2 and later
 
|-
 
| 8 obsolete
 
||24:8 mixed
 
|| Signed 24b filtered data filter[31:8] + signed 8b num_flux_jumps fj[7:0]. <br />
 
* [31:8] = sq1_fb_filtered / (2<sup>8</sup>)
 
* [7:0] = num_flux_jumps
 
 
 
|| 4.0.4 only
 
|-
 
| 9
 
|| 24:8 mixed
 
|| Signed 24b filtered data filter[31] & filter[23:1] + signed 8b num_flux_jumps fj[7:0]. <br />
 
* [31:8] = sq1_fb_filtered/ (2<sup>1</sup>)
 
* [7:0] = num_flux_jumps
 
 
 
|| 4.0.5 and later
 
|-
 
| 10
 
|| 25:7 mixed
 
|| Signed 25b filtered data filter[27:3] + signed 7b num_flux_jumps fj[6:0]. <br />
 
* [31:7] = sq1_fb_filtered / (2<sup>3</sup>)
 
* [6:0] = num_flux_jumps
 
 
 
|| 4.1.6, 4.0.b and later
 
|-
 
| 11
 
|| 6:3 mixed, debugging mode
 
|| Unsigned 6b row_index + unsigned 3b column_index. <br />
 
* [31:10] '''----'''
 
* [9:3] '''row_index'''
 
* [2:0] '''column_index'''
 
 
 
|| 5.0.0 and later
 
|-
 
| 12
 
|| Raw 50 MHz
 
|| Raw 50 MHz ADC samples raw[13:0], sign-extended to 32 bits.
 
* [31:0] = raw_data
 
 
 
|| 4.0.d, 4.0.e, 5.0.1+
 
 
|}
 
|}

Revision as of 18:48, 20 January 2010

Address Card (ac) Commands

Parameter ID Physical Address Type Firmware Revision Parameters Description
-- 0x00 -- -- -- Reserved
row_order 0x01 wb/rb all row1,

row2, ...

This command is relevant when enbl_mux = 1 or 2. Read/write the row-addressing order. A sequence of up to 41 rows is specified at once. The row numbers that are specified with this command refer to the physical channel numbers on the Address Card. Note: After this command is issued, a “flx_lp_init” command must be issued to all the readout cards to discard previous PID-loop calculations and to clean out the rest of the data pipeline. Default = 0,0,0,…