Hardware
Details on HELIOS Digital DAQ Hardware
Below is information on the types and configurations of the hardware components used in the system. This info should be kept up to date in case of hardware failures.
Construction (To Do List)
Keep a list of things to do for construction and optimization of the the acquisition.
- Modify power supply on VME crates (x2)
- Take data with just digitizer (no trigger)
- Install cable for PC diagnostics
- Install pulse generator module
- Setup trigger boards and trigger system
- Move forward with Trigger IOC readout
- Determine data storage plan
- Determine online/offline sorting options
Input/Output Controllers (IOCs) [MVME5500]
Seven (7) IOCs, model type MVME5500, were purchased for the HELIOS acquisition. A full list of the HELIOS IOCs and their current settings can be found here HELIOS IOC Settings.
Due to an updated ethernet part on the board they required an updated board support package (BSP) from 1.2/1 -> 1.2/3. This was completed (after an additional update of VxWorks from 5.5 -> 5.5.2 (??)) by Andrew Johnson of APS. ADDITIONAL DETAILS ARE REQUIRED
One of these new IOCs has been flashed with the new BSP/VxWorks. The rest must be flashed. The flashing procedure is below.
Flashing IOC
- Ensure that Flash JUMPER is set to FLASH1 on the IOC you wish to flash.
- Login to the IOC you wish to flash
telnet ts <location>
where location is typically 20## from 01 - 99.
- Load the new bootrom of choice, currently (June 2015) we are using
tftpGet -d/dev/enet1 -c192.168.1.20 -s192.168.1.2 -g192.168.1.1 -fdgs2/bootrom.mv5500
you should see the following
Network Loading from: /dev/enet1 Loading File: dgs2/bootrom.mv5500 Load Address: 00695000 Download Buffer Size = 00200000 Client IP Address = 192.168.1.20 Server IP Address = 192.168.1.2 Gateway IP Address = 192.168.1.1 Subnet IP Address Mask = 255.255.255.0 Network File Load in Progress... Bytes Received =&589520, Bytes Loaded =&589520 Bytes/Second =&589520, Elapsed Time =1 Second(s)
This should take only a few seconds.
- Ensure that you are flashing the memory you are not booted to by executing flashShow and seeing
flashShow Device-Name Base-Address,Size Device-Size,Count Boot Type /dev/flash0 F2000000,02000000 01000000,00000002 No Intel 28F128 /dev/flash1 FF800000,00800000 00400000,00000002 Yes Intel 28F320
NEVER FLASH THE MEMORY YOU ARE BOOTING FROM!!!
- Flash the new bootrom
flashProgram -d/dev/flash0 -o01f00100 -nfff00 -v
The following should appear.
Source Starting/Ending Addresses =00695000/00794EFF Destination Starting/Ending Addresses =F3F00100/F3FFFFFF Number of Effective Bytes =000FFF00 (&1048320) Program Flash Memory (Y/N)? Y Virtual-Device-Number =00 Manufacturer-Identifier =89 Device-Identifier =18 Virtual-Device-Number =01 Manufacturer-Identifier =89 Device-Identifier =18 Address-Mask =FE000000
- Switch jumper to newly flashed FLASH0
- Need to set a bunch of parameters and paths ?? Which of the below have to be unique ?? To set a value, ctrl-x to start reboot, then press any key. Type p to show the parameter settings as below. To modify these type c then for each line you wish to change type a . then type c again and make the appropriate change.
boot device : gei unit number : 0 processor number : 0 host name : helios1 file name : /global/devel/boot/mvme5500/vxWorks inet on ethernet (e) : 192.168.1.20:ffffff00 host inet (h) : 192.168.1.2 user (u) : dgs ftp password (pw) : ########### flags (f) : 0x0 target name (tn) : ioc1 startup script (s) : /global/devel/gretTop/9-22/dgsIoc/iocBoot/iocArray/vme01.HELIOS.cmd
A full list of the HELIOS IOCs and their current settings can be found here HELIOS IOC Settings.
What is done in the vme01.HELIOS.cmd file.
- Check to make sure that the new BSP is loaded (ctrl-x to autoboot)
> > ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] > ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] > ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] > ]]]]]]]]]]] ]]]] ]]]]]]]]]] ]] ]]]] (R) > ] ]]]]]]]]] ]]]]]] ]]]]]]]] ]] ]]]] > ]] ]]]]]]] ]]]]]]]] ]]]]]] ] ]] ]]]] > ]]] ]]]]] ] ]]] ] ]]]] ]]] ]]]]]]]]] ]]]] ]] ]]]] ]] ]]]]] > ]]]] ]]] ]] ] ]]] ]] ]]]]] ]]]]]] ]] ]]]]]]] ]]]] ]] ]]]] > ]]]]] ] ]]]] ]]]]] ]]]]]]]] ]]]] ]] ]]]] ]]]]]]] ]]]] > ]]]]]] ]]]]] ]]]]]] ] ]]]]] ]]]] ]] ]]]] ]]]]]]]] ]]]] > ]]]]]]] ]]]]] ] ]]]]]] ] ]]] ]]]] ]] ]]]] ]]]] ]]]] ]]]] > ]]]]]]]] ]]]]] ]]] ]]]]]]] ] ]]]]]]] ]]]] ]]]] ]]]] ]]]]] > ]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] > ]]]]]]]]]]]]]]]]]]]]]]]]]]]]] Development System > ]]]]]]]]]]]]]]]]]]]]]]]]]]]] > ]]]]]]]]]]]]]]]]]]]]]]]]]]] VxWorks version 5.5.2 > ]]]]]]]]]]]]]]]]]]]]]]]]]] KERNEL: WIND version 2.6 > ]]]]]]]]]]]]]]]]]]]]]]]]] Copyright Wind River Systems, Inc., 1984-2006 > > CPU: Motorola MVME5500-0163 - MPC 7457. Processor #0. > Memory Size: 0x20000000. BSP version 1.2/3. > >
IOC Errors and Issues
Cannot acquire boot file. Likely an issue with the ftp server (I believe is pure-ftpd ??). Solution was to kill 'bad' server as it was hogging the connection and start 'good' server by:
I killed the bad ftp server (K80proftpd) and started the good one (S85pure-ftpd) and now the processor boots just fine.
At end of boot a lot of cannot save errors seem to pop up. Must figure out how to get this corrected. Is it simply permissions?
At end of boot usually get the following wierdness...why??
numMonitoredChans 5 firstMonitorCount 1 assignCount 7 firstConnectCount 3 numMonitoredChans 5 firstMonitorCount 1 assignCount 7 firstConnectCount 3 numMonitoredChans 5 firstMonitorCount 1 assignCount 7 firstConnectCount 3 numMonitoredChans 5 firstMonitorCount 1 assignCount 7 firstConnectCount 3 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31 numMonitoredChans 31 firstMonitorCount 23 assignCount 39 firstConnectCount 31
????
- readInt32: status=3, function=0, value=0
2016/05/31 17:30:22.558 VME04:DBG:dbg_card_number_RBV devAsynInt32 process read error asynPortDriver:readInt32: status=3, function=7, value=0 2016/05/31 17:30:22.558 VME04:DBG:dbg_long_address_RBV devAsynInt32 process read error asynPortDriver:readInt32: status=3, function=1, value=0 2016/05/31 17:30:22.558 VME04:DBG:dbg_read_long_addr_RBV devAsynInt32 process read error asynPortDriver:readInt32: status=3, function=6, value=0 2016/05/31 17:30:22.624 VME04:DBG:dbg_value_RBV devAsynInt32 process read error asynPortDriver:readInt32: status=3, function=2, value=0 2016/05/31 17:30:22.758 VME04:DBG:dbg_write_long_addr_RBV devAsynInt32 process read error asynPortDriver:readInt32: status=3, function=5, value=0 iocRun: All initialization complete value = 0 = 0x0
VME
Power supply polarities need to be switched to accommodate additional power of new digitizers!
Digitizers
Firmware documentation can be found here File:ANL Firmware for LBL Digitizer June 2015.pdf, this is from the hep/digital gs svn (rev 4129); see DGS SVN Repo for the latest version. This svn repo requires authentication; contact John Anderson for access.
-LOG-
5/28/2016 - Digitizers in F-Wing lab(Last 5 were tested at HEP by SAK, JW, DSG, with help from JTA)
S/N D87, D81, D84, D95, D98, D88, C8, C29, D97, D8D, C46, C42, C5A, 0B2, C37, D89
11/9/2015 - Digitizers in my possession updated to current firmware (DONE IN BOLD - XXX-XXX)
S/N: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 D81', D84, D86, D87, D88, D8A, D8B, D8C, D8D, D8E, D8F, D90, D95, D96, D97, D98, C46, 0C8
6/17/2015 - 3 Digitizers and 2 IOC cables borrowed by DGS/X-Array
S/N D90, D8C, D8B
5/21/2015 - 4 Digitizers were borrowed by DFMA
S/N D86, D8A, D8F, D8E
5/18/2015 - 4 Digitizers were installed in DigiOS
3/1/2015 - 16 Digitizers were delivered by HEP.
S/N: 1 2 3 4 5 6 7 8 9 10 11 12 D8D, D8C, D8B, D90, D98, D97, D96, D95, D86, D8A, D8F, D8E, + 4 in Digios