ATLAS     Level 1     Calorimeter Trigger     Software    

L1Calo Software Minutes: 14 March 2000 at RAL/Heidelberg

 


L1 Calo Software Video conference at RAL/Heidelberg on 14 March 2000.
---------------------------------------------------------------------

This is a brief summary of what we discussed during this
video conference between the UK and Heidelberg software groups.

Present: Murrough, Eric, Norman, Scott, Tara, Bruce; Cornelius, Volker.



HDMC Developments at Heidelberg
-------------------------------

A number of improvements and changes to HDMC have been made in the last
couple of months by Cornelius and Volker.

- The busserver is now independent of both Qt and STL. This should be
  tested on UK LynxOS systems.
- Bus error handling has been implemented and notification is passed
  across the network link. Exceptions are generated in the client
  which must be caught eg in the GUI.
- It is now possible to duplicate partial Part hierarchies, ie to
  make a second copy of a Module. You are prompted for the new base
  address.
- Improvements to various Parts: better histogramming; find facility
  in MemoryGUI; display of path to Part (eg identify same Register in
  different Modules); more GUIs can be scripted.
- The PartCollection has been "retired". Its facilities really belong
  in the GUI, not in the Part subclass.



Future Plans/Wishes for HDMC
----------------------------

A number of desired additions to HDMC were discussed. Top of the UK
list is a GUI for Modules displaying capable of displaying all its
Registers and Memories in one (or few) windows. Cornelius will look
into providing this... and report at Mainz.

For use in the DAQ, we considered two separate ideas:
- Module subclasses could have data members for the Registers they
  need frequent access to. Such Part pointers can be initialised
  from the PartManagers information. This just saves looking up
  the pointer each time that DAQ specific functions need to read
  and write to know registers.
- it would be useful to provide clear and easy access to bit fields
  in Registers from C++ code. Since the bit fields are defined in
  the configuration file, one convenient way of doing this would be
  to parse the file and create a header file defining a Register
  subclass for each Register format with member functions to read
  and write to each bit field. This needs more detailed thought,
  eg on how to handle read only and write only registers. Murrough
  should present something at Mainz.

Also for use from C++, easy to use Part constructors should be
added back to HDMC. The present ones are intended for use from GUI
classes and are not so easy to call "by hand".



DAQ Strategy
------------

After some work pursuing two parallel paths for either evolving the
old DAQ or starting afresh with a purely DAQ -1 based system, the UK
groups decided to concentrate on the former strategy.

Recent UK discussions have identified a likely shape for the first
prototype of an evolved system which is needed by June for tests of
the ROD. This will use ROOT for histogramming, do VME access over
the network to the HDMC bus server, may use DAQ -1 run controller
skeleton starting or communicating with updated versions of the
producer and analyser processes.

Outstanding questions relate to the buffer manager, how much of the
HDMC infrastructure to use for DAQ Module classes. Nicer constructors
for Parts would help in using higher level Parts and thus increase
the commonality between the two systems.

Tara has looked into use of ROOT IO classes as a basis for the Event
object and maybe buffer manager. He will present something on this
at the Mainz meeting.



Linux on MVME167 processors
---------------------------

Since (until today!) the default HDMC busserver could not be compiled
on LynxOS, Bruce investigated running Linux on our old MVME167 boards.
The Debian distribution (via ESRF) supports both diskless and disk based
systems (the former works at RAL, the latter has been tried at QMW).
Debian is much less slick than RedHat and you have to do a lot more
by yourself. Given the Qt-less busserver, Linux developments may take
a lower priority in future.



Visit by Bob Jones
------------------

We recently had a visit by Bob Jones of the ATLAS DAQ group. He gave
us a demonstration of the present back end software and also discussed
the new open source policy. He is recommending that their component
model of software development would be suitable for the whole of the
ATLAS online software.



Configuration databases
-----------------------

A few months ago, Eric produced a list of quantities we need to store
in our configuration database: from hardware configuration, run parameters,
calibrations and physics choices.

Murrough has made a start at modelling these in class diagrams, partly
based on the existing schema of the DAQ -1 database. A lot more work
and thought is needed....hopefuly before Mainz.



AOB
---

The DAQ group is holding a tutorial on 13-14 April. Members of the group
are encouraged to attend. Early booking for the limited hands on sessions
is advisable.

The DAQ/high level trigger TP is soon to be submitted. We should check
that the parts which concern us (eg list of requirements in the Detector
Interface Group chapter) are OK. Norman has already sent in some comments.



Next meeting(s)
---------------

No dates was fixed during the meeting. The UK group will probably have
another meeting a couple of weeks after Mainz (and possible some less
formal brainstorming in between). Another video conference in about six
weeks or so seems sensible.


Last updated on 14-Mar-2000. Send comments on this page to Murrough Landon