BONUS Readout: Difference between revisions
Jump to navigation
Jump to search
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 | 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= | 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:// | [https://clonwiki0.jlab.org/wiki/clondocs/Docs/RCUFirmwar2511.pdf RCU Firmware User Manual (pdf)] | ||
[https:// | [https://clonwiki0.jlab.org/wiki/clondocs/Docs/rorc_lib_rev10.pdf ALICE Detector Data Link (DDL-RORC Library) (pdf)] | ||
[https:// | [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
- fibers goes from crates to RORCs; to see if RORCs are configured by Linux, use /date/rorc/Linux/rorc_find; to check connection use http://www.jlab.org/~devita/eg6/eg6_electronics.pdf
- 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)