Mirrors CERN QMUL |
ATLAS Level 1 Calorimeter Trigger Software | |
L1Calo Software | Minutes: 19 April 1999 at RAL | |
![]() |
Level 1 Calo Software Meeting at RAL on Friday 19 April 1999. ------------------------------------------------------------- Present: Murrough, Kithsiri, Norman, Tara, Bill, Eric, Scott, Reg. The agenda was: (1) Diagnostic Software....................Kithsiri (2) DAQ Software...........................Bill (3) Summary of recent discussions..........Norman/Murrough (4) Hardware Platforms.....................Murrough (5) Thoughts on Calibration................Reg (6) Progress with software tools...........Tara (7) Experience with Heidelberg Software....Murrough (8) Future software workplan...............Discussion (9) AOB & Next Meeting Diagnostics ----------- Kithsiri and Murrough reported on the status of the diagnostic software for the DSS. The software was tested using a VIC as a VME memory and most of the standard functions worked as expected. The Verify command was not working properly. After looking at the code it appears that the software expects the hardware and model to be in sync before a Verify is done. This has not been checked with hardware. Murrough has added an extra Tcl command to speed up the initialisation of large memory widgets so the DSS memory windows now open much faster. Before the meeting, Murrough and Kithsiri made a few cleanups of the code removing a few superfluous items from the windows. Kithsiri has added an Autotest window for quick Verify tests of all the registers and memories on the DSS module. This has not been tested yet. DAQ Software ------------ Bill and Scott outlined the status of the DAQ software. Bill has now completed a version of the event readout. At the moment the event format is variable, only channels with errors are read out. The daqctl menus allow a variety of runs to be started with multiple DSS modules connected in a number of ways. Scott has included the DSS in the event dump program and is now working on adding histograms for the DSS in the analyser program. Unfortunately a hard to trace bug in the producer program prevented a demonstration of the DAQ system before the meeting. Attempts to help understand this were hindered as the Birmingham LynxOS system is sitting behind their firewall. Birmingham should investigate safe ways to allow limited external access to their LynxOS system. The DAQ version at Birmingham needs to be merged with the existing versions at RAL. The recent work at Birmingham started from their local version using the Bit3 VME connections instead of VICs and may not include changes made in the last version at RAL. Summary of recent discussions ----------------------------- Norman and Murrough have had two day long discussions covering a number of topics, mostly related to the ROD and readout issues. For the ROD, a scheme has been agreed for connecting and using the DSP. This sits on a PCI Mezzanine card and has (almost) no control over the rest of the ROD module. Communication between the DSP and its host ROD passes through a memory which is divided into a multievent buffer and an area for the DSP to report its results. Complete events destined for the Slink are copied into the multievent buffer and a flag is set for each full slot in this buffer. The DSP quickly examines each event header and copies interesting events into its own memory for further analysis and clears the flag. From time to time (eg at the end of a run or during calibrations?) the DSP places the results of its analyses into the results section of the memory. Normally, if the ROD finds that all slots in the multievent buffer are full, it will only send a new event to the Slink. However there is provision for the DSP to request all events which may be useful for calibrations. The readout of the serialising Asics on the CPMs has also been discussed. Normally we only want to read out a single time slice, but because the inputs are Bunch Crossing multiplexed, we actually need to read two slices to be confident we can reconstruct the data for the L1Accept slice. The choice to which two slices depends on whether, for each channel, the L1A slice is the first or second of the two BCMuxed slices. However for some sample of events we may want to read out up to five slices. For the above reasons, this actually means we need six slices. Ideally the choice of whether to read one or five slices would be made on the basis of the trigger type word. But this arrives via the TTC system long after the slice data has to be read out into the derandomiser buffer. After toying with ideas such as requesting a prompt trigger type from the CTP via a separate cable, it has been proposed instead that we always read the maximum number of slices from the serialising Asic (and the CP Asic results). The ROD, which does get the trigger type in time, can then decide how much to include in the data stream. The Glink bandwidth into the RODs is quite adequate for this. We should also expect the same strategy for the Jet system readout. This is still just a proposal as its not clear that the ROD will actually be capable of the multitude of tasks we are assigning it. To gauge this, Norman has started writing (in C++) a model of the dataflow through the readout buffers in the system. Hardware Platforms ------------------ Murrough reported that Cornelius has followed up our discussions at the Birmingham joint meeting and has been investigating possibilities for new hardware platforms (for VME access) at Heidelberg. Following this Murrough asked the DAQ group for the status of their support and plans. To upgrade their CES RIO2 system to LynxOS 2.5 and to add another 32M memory would cost 5kDM. However the DAQ group use systems with just 32M so the memory upgrade might not be required. One alternative is for a PC based VME processor board. Examples from Concurrent or Dynatem cost about 10kDM. Apparently Mainz already have a slower cheaper one which they are quite happy with. This is Cornelius favoured solution (running Linux). The DAQ group (Louis Tremblet) has used a VMIC-78xx - unknown cost. Another alternative is a desktop PC with a PCI to VME bridge or adapter. The SBS Bit3-617 (which the DAQ group have also used) costs 4-8kDM (depending on quality, features?). QMW and some other Silicon Tracker sites in Atlas have PCI-VME interfaces from National Instruments (MXI-2) for use with LabView. It is not clear if these support DMA functions which we might want. Eric will check. On the operating systems, it is clear that the DAQ group are moving towards Linux and away from NT. Thoughts on Calibration ----------------------- As his introduction to working on Atlas, Reg has been starting to think about our calibration issues. He begun by presenting all the calibration systems used by both LAr and TileCal calorimeters. Having gleaned all available information from their TDRs, it is clear that we still dont have enough information about the granularity with which we might be able to use either the LAr electronic calibration or the TileCal laser calibration. Also how we would actually gain access to their systems. Reg will continue to chase up the information via subsequent technical notes (if available) and through our contacts (if not). In other discussions, Reg has agreed to make a list of all our requirements in the calibration area: from integrity of cabling, energy calibrations to the timing setup. Progress with Software Tools ---------------------------- Tara has not restarted work on this after his Indian holiday. Murrough reported some problems with CVS hanging when accessed from QMW over AFS (whereas CVS network access from Heidelberg worked fine!). Tara will check if this is a known problem, eg at DESY? Experience with Heidelberg Software ----------------------------------- After some initial problems on OSF and with the (too?) clever Makefile on Linux, Murrough has linked the Heidelberg test software. It proved easy to make windows for various DSS registers. However attempts to connect memories to histogram windows only produced crashes. Cornelius does not see this on his system. At present the Heidelberg software is designed to be extremely flexible and configured by text files. Its not obvious how to implement test suites or DAQ type code which would ideally reference registers as specific C++ objects rather than generic, dynamically configured ones. The C++ part of the UK diagnostics does have considerable flexibility, but this is not accessible via the Tcl/Tk GUI. However the existence of the model code throughout doesnt make it very suitable for the DAQ area. In the Heidelberg setup, test suites would presumably have to use test vectors or code which knew the expected results, rather than the completely general approach of Dave Rees model software. Some suitable way forward must be found. Murrough and Cornelius should have more discussions..... Future software workplan ------------------------ Norman and Murrough should discuss this and produce something for review and comment. Next meeting ------------ Wednesday 19 May at RAL.
Last updated on 20-Apr-1999. Send comments on this page to Murrough Landon |