HCAL DCC2 Documentation

Updated 9 February 2010

This page will contain the documentation for the new HCAL DCC, which has replaced the old one.
Working documents are (here). on the BU TWiki. 

Note: The DCC2 engages the right slot on the VME bus, while the DCC1 engages the left slot. So, in the same physical location a DCC1 is in slot 9 while a DCC2 is in slot 10!

Config Scripts

The DCC2 requires new cfgScript parameters as follows (please see documentation for details):
    dcc2XilinxAddrTableFile = "DCC2_XILINX_A32_r2.dat"
dcc2VmeAddrTableFile = "DCC2_VME_A24_r2.dat"
majorVersion = 2
firmwareRevDCC2DSP
firmwareRevDCC2LRB
firmwareRevDCC2VME
The majorVersion parameter should be conditional... i.e. set to 1 for old DCC and 2 for new DCC.

Crash Dumps

Please see this page for what to do it a run stops and a DCC2 is suspected to be the cause.

Firmware

The DCC2 has 3 programmble chips, VME, Xilinx (aka dsp_chip) and LRB. The prototype DCC2 (red face panel) and production DCC2 (black face panel) use different FPGAs for the LRB and VME functions. The prototype boards use files with 200 in the file name, while the production boards use files with 400 in the file name.

The VME chip firmware changes rarely and is typically not dependent on the others.

VME version Date Status Notes
vme200_chip104.mcs
vme400_chip104.mcs
5/21/09 Current Source code: vme400_chip104.zip
vme200_chip101.mcs 5/1/09 Obsolete  

The dsp_chip and LRB firmware versions must be compatible. Please take the latest versions linked from the table below. Preliminary documentation and release notes are linked under "Notes" for each version below.

LRB version Xilinx version Date Status Notes
lrb200_chip10e.mcs
lrb400_chip10e.mcs
dsp_chip3024.mcs 2/2/10 Current DSP change: BUSY time does not accumulate when not in run mode
Release NotesSource
lrb200_chip10e.mcs
lrb400_chip10e.mcs
dsp_chip3023.mcs 2/1/10 Bad DSP change: TTS now outputs "Disconnected" when not in run mode
Known problems - BUSY time starts counting at initializationRelease NotesSource
lrb200_chip10e.mcs
lrb400_chip10e.mcs
dsp_chip3022.mcs 11/18/09 Obsolete DSP change: SLINK LFFn status added to bit 10 of register 0 for debugging purposes
LRB change: Trying to fix a bug in reading counter high word
Release NotesSource
lrb200_chip10b.mcs
lrb400_chip10b.mcs
dsp_chip3021.mcs 11/9/09 Obsolete "timing problem due to UCF problem with v301f." – Apparent cause of spurious UERR reported in FED 700 at P5.
Passed all 904 tests... try at P5Release NotesSource (currently missing)
lrb200_chip10b.mcs
lrb400_chip10b.mcs
dsp_chip301f.mcs 10/24/09 Bad "A bug in HTR status counter is fixed. The bug causes counting errors and could stop the DCC event building. The bug in L1A fifo readout for version 301b and earlier is also fixed. This version works only with LRB10b. Bug in TTC BCNT error handling fixed". In service at P5 through 11/9/09Release NotesSource
Known problems – Timing problem in UCF file. Resulted in Uerrs being reported.
lrb200_chip10d.mcs
lrb400_chip10d.mcs
dsp_chip301d.mcs 8/3/09 Experimental Full speed memory system. Attempt to fix various readout bugs. May fix event size readout problem (need to test).
Known problems – do not use. Release Notes
lrb200_chip10d.mcs
lrb400_chip10d.mcs
dsp_chip301c.mcs 7/19/09 Experimental First release with memory subsystem running at full speed (600MB/sec event building) •
Known problems &ndash Local runs at P5 stop with some FEDs failing VME readout.Release Notes
lrb200_chip10b.mcs
lrb400_chip10b.mcs
dsp_chip301b.mcs 7/3/09 (DSP) 7/11/09 (LRB) Obsolete Still uses "slow" event builder (400MB/sec)
fixed problem with HTR counters
fixed potentially data-corrupting bug in LRB
Tested in P5
Problem found 10/23/09 which can cause runs to stop... v301f is a candidate fix
Release Notes
lrb200_chip10a.mcs
lrb400_chip10a.mcs
dsp_chip3018.mcs 6/18/09 (DSP) 6/28/09 (LRB) Obsolete Fixes in HTR counters from 3017; restore new HTR counters for status bits 9-11
LRB 10a fixes a bug in LRB counter readout
Tested at BU and 904
Release Notes
lrb200_chip108.mcs
lrb400_chip108.mcs
dsp_chip3017.mcs 6/16/09 Obsolete Fix EvN mismatch problems
Tested in local runs 6/19-6/22/09
Release Notes
lrb200_chip108.mcs
lrb400_chip108.mcs
dsp_chip3013.mcs 5/8/09 Current fixed a bug in spare connector testing; added HTR_bz and HTR_OW mask to prevent from deadlocking the DAQ
0x107 0x3010 2009-04-29 Obsolete Should fix high-rate S-LINK problem
Tested to 70kHz in MWGR 29-Apr with no problems
lrb200_chip107 0x300f 2009-04-28 Experimental Add more diagnostic counters at 0x2800-0x281c
lrb200_chip107 0x300e 2009-04-28 Experimental Add CRC check on S-LINK output with counter at 0x16c
lrb200_chip107 0x300d 2009-04-21 Obsolete Mismatch control register read/write bug fixed (may improve TTS behavior)
Known problems with S-LINK readout at high rates with ZS in pit
lrb200_chip107 0x300c 2009-04-15 Obsolete HTR status controlled TTS bugs fixed
Other TTS bugs may exist in this version!
lrb200_chip107 0x300b 2009-04-12 Obsolete Fix problems which caused the event builder to stop at high rates
0x103 0x3006 2009-04-09 Obsolete Add diagnostic features to debug losss of sync problems seen in lxcmdtest3
0x104 0x3007 2009-04-10 Obsolete Candidate fix for loss of sync

See programming instructions.