Testing 0x4049

>en 1-12 f t
>lt 1000 10
>st
            Board|    FED| SERIALNO| T1_VER| T2_REV| T2_SERNO|
               --|-------|---------|-------|-------|---------|
             INFO|       |       43| 0x4049|   0x2E|     0x2B|
           OUTPUT| 0x1234|         |       |       |         |

           Config| FAKE_SIZE| SRCID|
               --|----------|------|
        AMC_LINKS|     0x400|      |
               ID|          |     0|
           OUTPUT|          |     0|

          Control| DAQ| FAKE| LTRIG| RUN| TTCLOOP|
               --|----|-----|------|----|--------|
            REG_1|   0|    1|     1|   1|       1|

        AMC_Links| AMC01| AMC02| AMC03| AMC04| AMC05| AMC06| AMC07| AMC08| AMC09| AMC10| AMC11| AMC12|
               --|------|------|------|------|------|------|------|------|------|------|------|------|
   AMC_LINK_READY|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|
          LINK_OK|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|
  LINK_VERS_WRONG|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|     1|

              DT_Trig| TRIG0| TRIG1| VALUE|
                   --|------|------|------|
          INPUT_DELAY|     0|     0|      |
             LUT_WORD|      |      |     0|
 SAMPLE_BUFFER_ENABLE|      |      |     0|
       TRIGGER_ENABLE|      |      |     0|

    Event_Builder| COUNT| PCT_NO_BP|
               --|------|----------|
              L1A| 0x3E8|          |
             SFP0|      |       100|
             SFP1|      |       100|
             SFP2|      |       100|

   Monitor_Buffer| COUNT|
               --|------|
       UNREAD_BLK| 0x300|

     State_Timers|       COUNT| PERCENT|
               --|------------|--------|
             BUSY| 0x   100001|        |
 OVERFLOW_WARNING|           1|        |
            READY| 0x178EFD5D0|     100|
              RUN| 0x178FFD5C9|        |

           T2_TTC| BCNTERR|
               --|--------|
            VALUE|       1|

           TTC_Rx|       ENC|       RAW|
               --|----------|----------|
            STATE| RDY (0x0)| RDY (0x8)|

SVN: 44111
>df test.dat
 ...
Wrote 768 events to test.dat
>q

[hazen@cmssun1 firmware_test_tools]$ ~/work/arcaro/cms/trunk/tools/dump -e 4 -c -v 0 test.dat
File 1:test.dat
End of file
[hazen@cmssun1 firmware_test_tools]$ 

OK. Not sure why the buffer fills at 0x300 events.

Now test the boundary between 1 and 2 blocks. According to the table here: DebugLog the magic size is 0x13fc where we should see 2 blocks.

>wv CONF.AMC.FAKE_DATA_SIZE 0x13fb
Write to register CONF.AMC.FAKE_DATA_SIZE
>
>include mon.amc
General reset
Sending 1 local triggers
Trigger: 0 left
               STATUS.MONITOR_BUFFER.UNREAD_BLOCKS: 0x00000001
                  STATUS.MONITOR_BUFFER.WORDS_SFP0: 0x00002806
                           CONF.AMC.FAKE_DATA_SIZE: 0x000013fb
>wv CONF.AMC.FAKE_DATA_SIZE 0x13fc
Write to register CONF.AMC.FAKE_DATA_SIZE
>include mon.amc
General reset
Sending 1 local triggers
Trigger: 0 left
               STATUS.MONITOR_BUFFER.UNREAD_BLOCKS: 0x00000001
                  STATUS.MONITOR_BUFFER.WORDS_SFP0: 0x00002808
                           CONF.AMC.FAKE_DATA_SIZE: 0x000013fc
>wv CONF.AMC.FAKE_DATA_SIZE 0x13fd
Write to register CONF.AMC.FAKE_DATA_SIZE
>include mon.amc
General reset
Sending 1 local triggers
Trigger: 0 left
               STATUS.MONITOR_BUFFER.UNREAD_BLOCKS: 0x00000002
                  STATUS.MONITOR_BUFFER.WORDS_SFP0: 0x00002008
                           CONF.AMC.FAKE_DATA_SIZE: 0x000013fd

Contents of mon.amc:

rg
lt
sleep 0.1
rv STATUS.MONITOR_BUFFER.UNREAD_BLOCKS 
rv STATUS.MONITOR_BUFFER.WORDS_SFP0
rv CONF.AMC.FAKE_DATA_SIZE 

Reported this bug to Mr Wu. Onward!

>wv CONF.AMC.FAKE_DATA_SIZE 0x1400       # two blocks
>en 1-12 f t
>lt 100 10
>df test.dat

Check the data:

$ ~/work/arcaro/cms/trunk/tools/dump -e 4 -c test.dat
  ...
EvN 000062 (000098) BcN 1f4 ID 0000 Evt_ty=1   [2 blocks, 0xf042 words] 
EvN 000063 (000099) BcN 1f4 ID 0000 Evt_ty=1   [2 blocks, 0xf042 words] 
EvN 000064 (000100) BcN 1f4 ID 0000 Evt_ty=1   [2 blocks, 0xf042 words] 
End of file

Looks OK.

Moving to 86/258 so I can use AMC fake data.

NOTES:

  • Have to put loop-back on fake data generator for HCAL FW (SN 258)
  • Have to set bit 31 of register 17 of the fake data generator (wv 0x17 0x80000000)
  • On AMC13 do wv CONF.AM.TTS_DISABLE_MASK 0xfff to avoid TTS issues
  • On AMC13 do wv CONF.EVB.MON_FULL_STOP_EVB 1 to stop monitor buffer when full

Now all seems good. Can record data at high rate until monitor buffer

Test procedure and results

This is a relatively simple test which runs at 100kHz random trigger rate using one AMC13 in slot 13 and one additional AMC13 in slot 12 running 0x1000 series firmware.

The script below must be edited so that 0x17 of the second AMC13 is set to 0 for CMS firmwares and 0x8000000 for HCAL firmwares.

Here is a script: random_high_rate.amc13

$ AMC13Tool2.exe -c 86/c -c 258/c -X random_high_rate.amc13 | tee random.log
$ ~/work/arcaro/cms/trunk/tools/dump -c -e 4  test.dat | head
File 1:test.dat
EvN 000001 (000001) BcN 188 ID 0000 Evt_ty=1   [4 blocks, 0x3c87 words] 
EvN 000002 (000002) BcN 2e0 ID 0000 Evt_ty=1   [8 blocks, 0x7ebb words] 
EvN 000003 (000003) BcN 2ff ID 0000 Evt_ty=1   [3 blocks, 0x3355 words] 
EvN 000004 (000004) BcN 393 ID 0000 Evt_ty=1   [7 blocks, 0x6b5b words] 
EvN 000005 (000005) BcN 7d6 ID 0000 Evt_ty=1   [2 blocks, 0x15cd words] 
EvN 000006 (000006) BcN 9cc ID 0000 Evt_ty=1   [1 blocks, 0x1283 words] 
EvN 000007 (000007) BcN a9d ID 0000 Evt_ty=1   [1 blocks, 0x5db words] 
EvN 000008 (000008) BcN bbd ID 0000 Evt_ty=1   [1 blocks, 0xddb words] 
EvN 000009 (000009) BcN d13 ID 0000 Evt_ty=1   [3 blocks, 0x310d words] 
  ..
EvN 000128 (000296) BcN 37d ID 0000 Evt_ty=1   [3 blocks, 0x2c93 words] 
EvN 000129 (000297) BcN 4e6 ID 0000 Evt_ty=1   [1 blocks, 0x19a words] 
EvN 00012a (000298) BcN 619 ID 0000 Evt_ty=1   [3 blocks, 0x2ea0 words] 
End of file

Here are outputs from a successful test:

-- EricHazen - 30 Mar 2016

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r2 - 30 Mar 2016 - EricHazen
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback