BONUS Readout: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Boiarino (talk | contribs)
m Text replacement - "clonwiki.jlab.org" to "clonwiki0.jlab.org"
 
(5 intermediate revisions by one other user not shown)
Line 3: Line 3:
== Drivers and system software ==
== Drivers and system software ==


'''IMPORTANT NOTE''': Edit the file /boot/grub/menu.lst (as root). Pass the argument 'mem=xxxM' to the kernel to limit LINUX memory to  xxxMegaBytes (xxx should be replaced by a number, in our case 1024).
'''IMPORTANT NOTE''': Edit the file /boot/grub/menu.lst (as root). Move ''smp'' kernel to the first place to make it default. Pass the argument 'mem=xxxM' to the kernel (right after ''quiet'') to limit LINUX memory to  xxxMegaBytes (xxx should be replaced by a number, in our case 1024).




Line 12: Line 12:
  tar xvf tirpci.tar
  tar xvf tirpci.tar
  rm tirpci.tar
  rm tirpci.tar
  cd tirpci.tar
  cd tirpci
  cp etc_initd_tirpci /etc/init.d/tirpci
  cp etc_initd_tirpci /etc/init.d/tirpci
  chkconfig --add tirpci
  chkconfig --add tirpci
Line 51: Line 51:
  /sbin/depmod      # (as root)
  /sbin/depmod      # (as root)


* Edit the file /etc/rc.modules (as root). Add the line '/sbin/modprobe physmem physmemsize0=xxx' to limit the size of the /dev/physmem0 PHYSMEM device to xxxMegaBytes. The size of the /dev/physmem1 device will be the complement of the LINUX memory and the /dev/physmem0 memory. RORC sw test programs use /dev/physmem0, while DATE uses /dev/physmem1 memories.
* Edit the file /etc/rc.modules (as root). Add the line '/sbin/modprobe physmem physmemsize0=xxx' (normally xxx=512) to limit the size of the /dev/physmem0 PHYSMEM device to xxxMegaBytes. The size of the /dev/physmem1 device will be the complement of the LINUX memory and the /dev/physmem0 memory. RORC sw test programs use /dev/physmem0, while DATE uses /dev/physmem1 memories.


  chmod +x /etc/rc.modules # (as root)
  chmod +x /etc/rc.modules # (as root)
Line 179: Line 179:
* to check FECs use command:
* to check FECs use command:


  bonuspc0(left): --ddl-serial=9045
  bonuspc0(left): --ddl-serial=9043
  bonuspc1(left): /rcufec/altro-loopback/altro-loopback -N -p0 -f0 -a5 -c8 --ddl-revision=4 --ddl-channel=1 --ddl-serial=7165
  bonuspc1(left): /rcufec/altro-loopback/altro-loopback -N -p0 -f0 -a5 -c8 --ddl-revision=4 --ddl-channel=1 --ddl-serial=7165
  bonuspc2(right): same,  --ddl-serial=6038
  bonuspc2(right): same,  --ddl-serial=6038
Line 209: Line 209:
== useful docs ==
== useful docs ==


[https://clonwiki.jlab.org/wiki/clondocs/Docs/RCUFirmwar2511.pdf RCU Firmware User Manual (pdf)]
[https://clonwiki0.jlab.org/wiki/clondocs/Docs/RCUFirmwar2511.pdf RCU Firmware User Manual (pdf)]


[https://clonwiki.jlab.org/wiki/clondocs/Docs/rorc_lib_rev10.pdf ALICE Detector Data Link (DDL-RORC Library) (pdf)]
[https://clonwiki0.jlab.org/wiki/clondocs/Docs/rorc_lib_rev10.pdf ALICE Detector Data Link (DDL-RORC Library) (pdf)]


[https://clonwiki.jlab.org/wiki/clondocs/Docs/UserManual_draft_02.pdf ALICE TPC Readout Chip User Manual (pdf)]
[https://clonwiki0.jlab.org/wiki/clondocs/Docs/UserManual_draft_02.pdf ALICE TPC Readout Chip User Manual (pdf)]

Latest revision as of 15:10, 17 April 2015

This page contains information related to the BONUS TPC chamber readout system.

Drivers and system software

IMPORTANT NOTE: Edit the file /boot/grub/menu.lst (as root). Move smp kernel to the first place to make it default. Pass the argument 'mem=xxxM' to the kernel (right after quiet) to limit LINUX memory to xxxMegaBytes (xxx should be replaced by a number, in our case 1024).


TIRPCI

cd /
cp /usr/local/downloads/tirpci.tar .
tar xvf tirpci.tar
rm tirpci.tar
cd tirpci
cp etc_initd_tirpci /etc/init.d/tirpci
chkconfig --add tirpci
chkconfig --level 3 tirpci on
chkconfig --level 4 tirpci on
chkconfig --level 5 tirpci on
chkconfig --list | grep tirpci
  tirpci          0:off   1:off   2:off   3:on    4:on    5:on    6:off


DHCP

dhcpd server must be running using config file /etc/dhcpd.conf provided by CERN (copy from bonuspc1 or other configured machines); set port eth1 to static 10.10.10.10 with mask 255.0.0.0

RORC driver installation

ssh root@bonuspc2
cd /date/rorc
export DATE_MAKEFILES=/date/makefiles/
add at the beginning of GNUmakefile line
  DATE_SYS := Linux
make distclean
make                # errors must be ignored
make driver
make dev         # (as root)
reboot


PHYSMEM installation

cd /date/physmem
make
make driver
make dev       # (as root)
cp physmem.ko /lib/modules/`uname -r`/kernel/drivers/misc/ # (as root)
/sbin/depmod       # (as root)
  • Edit the file /etc/rc.modules (as root). Add the line '/sbin/modprobe physmem physmemsize0=xxx' (normally xxx=512) to limit the size of the /dev/physmem0 PHYSMEM device to xxxMegaBytes. The size of the /dev/physmem1 device will be the complement of the LINUX memory and the /dev/physmem0 memory. RORC sw test programs use /dev/physmem0, while DATE uses /dev/physmem1 memories.
chmod +x /etc/rc.modules					# (as root)
  • Switch off autoupdate by the following way (as root).
/etc/rc.d/init.d/yum-autoupdate stop
 - Check /var/lock/subsys/yum-autoupdate (have to create if missing).
 - Edit /etc/sysconfig/yum-autoupdate :
   YUMUPDATE=0
   YUMONBOOT=0
  • reboot

NOTE: to run test programs as root add following to the /root/.bashrc:

export LD_LIBRARY_PATH=/rcufec/tools:/rcufec/rcu:/rcufec/fec::$LD_LIBRARY_PATH

History

From:  Stephen Bueltmann <sbueltma@odu.edu> 11/30/07 14:48
Subject:  Fwd: RORC and DDL Information
To: 
       Sergey Boyarinov <boiarino@jlab.org>, David Abbott <abbottd@jlab.org>,
       Stepan Stepanyan <stepanya@jlab.org>, Howard Fenker <hcf@jlab.org>, hafidi@jlab.org
Hello All,
I am attaching a reply I received from the Hungarian company manufacturing the  
ALICE (not the TPC) side of the electronics.
As per their web site (http://www.cerntech.hu) the price for the
PCI-X RORC is 1540 Euro and for one
SIU card 615 Euro. 
The total would be 2770 Euro for a complete readout w/o RCU and w/o spares.
There seem to be special prices for CERN collaborating institutions.
Wrote to Luciano about the RCU boards but have not heard back.
Cheers,
   Stephen 
Begin forwarded message:
From: "Kiss Tivadar" <tivadar.kiss@cerntech.hu>
Date: November 30, 2007 2:35:36 PM EST
To: "'Stephen Bueltmann'" <sbueltma@odu.edu>
Subject: RE: RORC and DDL Information
Dear Stephen,  
We are pleased to receive your inquiry for DDL hardware. Of course it is possible for you to get such boards from our company. Delivery time would be cca. 1-3
monthes after receiving an order, depending on the quantity. (We have usually only a few cards on stock.)
The DIU (Destination Interface Unit) of a DDL link is now integrated on the RORC (Read-out Receiver Card). A single RORC (that is 100 MHz, 64-bit
PCI-X interaface card) has two DIUs integrated on it. Thus, for two DDL links (that is, to read out two ALICE RCUs) you need 2 SIU cards and 1 RORC card.
Please let me know how many quantities you are interested in, and what is a delivery schedule that would fit to your needs. 
Best regards, 
  Tivadar Kiss
Cerntech Ltd. 
Ulloi ut 31.
H-1091 Budapest
Hungary
tel: +36 1 216 8219)
fax: +36 20 919 5132
     From: Stephen Bueltmann [1] 
     Sent: Thursday, November 29, 2007 4:05 PM
     To: info@cerntech.hu
     Subject: RORC and DDL Information
     Hello, 
     I am involved with the experimental programme at Jefferson Lab
     in the US. One of the experiments is using a TPC which we are
     reading out with the ALICE TPC front end cards FECs and their
     USB readout controller (U2F).
     We are considering to change to the standard ALICE readout controller 
     (RCU) used by the ALICE TPC.
     This would require to purchase also the RORC and DDL hardware.
     Would it be possible and how long would it take to get one RORC, one
     SIU and one DIU card from you?
     Thanks in advance and
     Cheers,
     Stephen
     ---------------------------------------------------------------------
     Stephen Bueltmann
     Old Dominion University
     At ODU:   Physics Department
               4600 Elkhorn Avenue
               Norfolk, VA 23529, USA
               Telephone (757) 683-6401
               Facsimile (757) 683-5809
               sbueltma@odu.edu
     ----------------------------------------------------------------------
     ---------------------------------------------------------------------
     Stephen Bueltmann
     Old Dominion University
     At ODU:   Physics Department
         4600 Elkhorn Avenue
         Norfolk, VA 23529, USA
         Telephone (757) 683-6401
         Facsimile (757) 683-5809
         sbueltma@odu.edu


Sep 2009 NOTES for the system operations

  • firmware loading:
from croctest5: ssh root@10.1.3.241 (bottm crate, top has .236), pass is 'dcs'
cd /eg6
./program rcu_170809.bit
  • documentation
http://www.ge.infn.it/~minutoli/BONUS/SW/
http://www.jlab.org/~devita/eg6/
  • event size (spars off, 200 threshold - no noise): 68+4+128+Nfecs
  • expected rate about 1.3kHz

connections

  • every crates is connected to 4 power supplies, one 4.0V and 3 3.3V
  • several crates can be connected to the same power supplies
  • + or - labels must be ignored, rad cable always goes to plus
  • ethernets from crates goes to switch, switch is connected to the eth1 of the host machine; those connections will be used to load firmware; to get IP address crates must be off, use 'tail -f /var/log/messages' and turn crate on, message will be issued containing IP addresses:
bonuspc1(left): upper crate: 10.0.2.254, bottom crate 10.0.2.252
bonuspc2(right): upper crate: 10.1.3.242, bottom crate 10.1.3.241
bonuspc3: 10.1.3.236
  • to download firmware ssh root@10.1.3.241 (etc) with password 'dcs', goto /eg6 and run command ./program rcu_170809.bit
  • to check FECs use command:
bonuspc0(left): --ddl-serial=9043
bonuspc1(left): /rcufec/altro-loopback/altro-loopback -N -p0 -f0 -a5 -c8 --ddl-revision=4 --ddl-channel=1 --ddl-serial=7165
bonuspc2(right): same,  --ddl-serial=6038
bonuspc3(): same,  --ddl-serial=9044
see /proc/rorc_map for serial and other parameters

output should looks like this

Switching on FEC 0...done.
Writing data to ALTROs for event: 1...2...3...4...done.
Reading data from ALTROs for event: 1...354 words, 2...355 words, 3...355 words, 4...355 words, done.
Verifying event: 1...2...3...4...done.
Switching off FEC 0...done.
  • to check real communications do following:
cd /rcufec/fec
./fecscope
2
1,1 (rorc channel number)
3,0,0
3,0,3(the number of FECs),0,1,2
10,100,0,0,1/6
cd /date/rorc/Linux
./rorc_receive -m0 -X0 -c1 -e1
it will wait for 1 event; to issue software trigger ssh root@10.1.3.241 and type rcu-sh c 0x5306

useful docs

RCU Firmware User Manual (pdf)

ALICE Detector Data Link (DDL-RORC Library) (pdf)

ALICE TPC Readout Chip User Manual (pdf)