Difference between revisions of "Readout Controller Configuration"

From New IAC Wiki
Jump to navigation Jump to search
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
MVME 6100 <br>
+
rocdaq1:134.50.3.17
ROC1 ethernet address: 0001AF1998B5<br>
+
rocdaq2:134.50.3.46
ROC1 ethernet address: 0001AF1998B6<br>
+
rocdaq3:134.50.3.33
MPC7457 RISC G4 processor (PPC family)<br>
 
==  Download files from JLAB ==
 
  
I downloaded the boot file and VXworks kernel from JLAB
 
  
/site/coda/kern/5.5/boot/boot6100_122.bin 
+
[[MVME_6100_ROC]]
/site/coda/kern/5.5/vx6100_v4.1
 
  
and put in /tftpboot subdirectory on Host computer
 
 
  
==Debug Connector ==
+
[[GE_XVB601_ROC]]
  
I then used the serial port on the host computer to interface with the MVME6100 via the "DEBUG" port.  The debug port took an RJ45 standard cable so I got and RJ45-DB9 converter.  This seemed to work out of the box.  Just in case I ever need to make my own connector record the pinouts below.
+
[[CODA_REMEX]]
  
 +
=JLAbs GitHub repository for readout modules=
  
[http://www.slac.stanford.edu/grp/lcls/controls/global/standards/hardware/v6100a_ih.pdf Information below is Table 5-11 pg 92 of this reference]
+
I uploaded the subdirectory on daq2 using the following commands
{| border="1"
 
|  ROC Pin# || DB9 Pin # || DB9 shell || Signal 
 
|-
 
|  1      || 1        || Blue      || DCD (Carrier Detect)
 
|-
 
|  2      || 7        || Orange    || RTS (Request to Send)
 
|-
 
|  3      || 5        || Black    || GNDC
 
|-
 
|  4      || 3        || Red      || TX (Transmit)
 
|-
 
|  5      || 2        || Green    || RX (Recieve)
 
|-
 
|  6      || 5        || Yellow    || GNDC
 
|-
 
|  7      || 8        || Brown    || CTS (Clear to Send)
 
|-
 
|  8      || 4        || White    || DTR (Data Terminal Ready)
 
|}
 
 
 
== MVME6100 BOOT screen==
 
 
 
I used "minicom"  on the host computer to talk to the ROC.  You have to be super user in order to run minicom unless  you change the default permissions.  The speed should be 9600 baud which you set using the keyboard sequence "Ctrl-A Z P E".
 
 
 
<pre>
 
Copyright Motorola Inc. 1999-2007, All Rights Reserved
 
MOTLoad RTOS Version 2.0,  PAL Version 2.1 RM02
 
Wed Feb  7 11:32:02 MST 2007
 
 
 
MPU-Type            =MPC74x7
 
MPU-Int Clock Speed  =1266MHz
 
MPU-Ext Clock Speed  =133MHz
 
MPU-Int Cache(L2) Enabled, 512KB, L2CR =C0000000
 
MPU-Ext Cache(L3) Enabled, 2MB, 211MHz, L3CR =DC026000
 
 
 
PCI bus instance 0  =64 bit, 133 Mhz, PCI-X
 
PCI bus instance 1  =64 bit, PCI
 
 
 
Reset/Boot Vector    =Flash1
 
 
 
Local Memory Found  =20000000 (&536870912)
 
User Download Buffer =006B7000:008B6FFF
 
</pre>
 
 
 
== Basic commands==
 
 
 
=== setting the time===
 
 
 
The command below will print the help screen for the time set command
 
 
 
he set
 
 
 
for example
 
 
 
MVME6100> set -t082604163100
 
 
 
08 = Month<br>
 
26 = day<br>
 
04 = year<br>
 
16 = hour (24 hour clock)<br>
 
31 = min<br>
 
00 = seconds<br>
 
 
 
 
 
MVME6100> time
 
 
 
THU AUG 26 16:31:02.00 2004
 
 
 
=== Ping another computer to check network===
 
 
 
I was unable to ping unless I used the "LAN1" RJ45 etherenet port
 
 
 
 
 
MVME6100> ping -c134.50.3.216 -s134.50.3.210
 
Client (Source) IP Address      = 134.50.3.216
 
Server (Destination) IP Address = 134.50.3.210
 
Server/Host Found, E-Address    = 0030487A9468
 
170 (128+42) bytes from 134.50.3.210: icmp_seq=0 time=179 us
 
Packets Transmitted =1, Packets Received =1, Packets Lost =0 (0%)
 
Round-Trip Min/Avg/Max = 179/179/179 uS
 
 
 
=== show the flash memory===
 
 
 
MVME6100> flashShow
 
Device-Name  Base-Address,Size  Device-Size,Count  Boot  Type
 
/dev/flash0  F4000000,04000000  02000000,00000002  No    Intel 28F256
 
/dev/flash1  F8000000,04000000  02000000,00000002  Yes  Intel 28F256
 
 
 
 
 
=== Load in the VxWorks boot kernel ===
 
 
 
MVME6100> tftpGet -cCLIENT_IP_ADDRESS -sSERVER_IP_ADDRESS -fFILENAME
 
 
 
CLIENT_IP_ADDESS is the IP address of the computer receiving the file <br>
 
SERVER_IP_ADDRESS is the IP address of the computer hosting the file (by default tftp uses the subdirectory /tftpboot) <br>
 
 
 
 
 
MVME6100> tftpGet -c134.50.3.216 -s134.50.3.210 -fboot6100_122.bin
 
Network Loading from: /dev/enet0
 
Loading File: boot6100_122.bin
 
Load Address: 006B7000
 
Download Buffer Size = 00200000
 
 
 
Client IP Address      = 134.50.3.216
 
Server IP Address      = 134.50.3.210
 
Gateway IP Address    = 134.50.3.253
 
Subnet IP Address Mask = 255.255.255.0
 
 
 
Network File Load in Progress...
 
 
 
Bytes Received =&594768, Bytes Loaded =&594768
 
Bytes/Second  =&594768, Elapsed Time =1 Second(s)
 
 
 
=== Flash the RAM with the program===
 
 
 
>MVME6100>flashProgram -d/dev/flash0 -o03f00100 -nfff00
 
 
 
MVME6100> flashProgram -d/dev/flash0 -o03f00100 -nfff00
 
Source Starting/Ending Addresses      =006B7000/007B6EFF
 
Destination Starting/Ending Addresses =F7F00100/F7FFFFFF
 
Number of Effective Bytes            =000FFF00 (&1048320)
 
 
 
Program Flash Memory (Y/N)? Y
 
 
 
=== set BOOTA dip switch===
 
After flashing you flip dipswitch #2 on S4 fo off and powercycle
 
I moved the dip switch on S4 labeled "BOOT A" to OFF
 
 
 
=== Error===
 
MVME6100> sysMotVpdInit: Unable to read Vital Product Data (VPD).
 
sysMotVpdInit: Unable to read Vital Product Data (VPD).
 
 
 
The above error results when the "Normal" dip switch on S4 is set to
 
"OFF".  The S4 dipswitch are now set to
 
 
 
{| border="1" cellpadding="4"
 
|-
 
|Pin|| Name ||Setting
 
|-
 
|1|| NORM ENV||on
 
|-
 
|2 ||BOOT A ||off
 
|-
 
|3|| WPA ||on
 
|-
 
|4 ||WPB ||off
 
|}
 
 
 
=== The VxWorks Boot screen===
 
 
 
<pre>
 
                            VxWorks System Boot
 
 
 
 
 
Copyright 1984-2002  Wind River Systems, Inc.
 
 
 
 
 
 
 
 
 
 
 
CPU: Motorola MVME6100-0163 - MPC 7457
 
Version: VxWorks5.5.1
 
BSP version: 1.2/2
 
Creation date: Feb  2 2007, 16:49:27
 
 
 
 
 
 
 
 
 
Press any key to stop auto-boot...
 
7
 
 
 
[VxWorks Boot]:
 
</pre>
 
 
 
== Setting VxWorks Parameters==
 
=== view the boot parameters===
 
 
 
The parameters below were used on 5/21/09
 
 
 
  
 
  <pre>
 
  <pre>
[VxWorks Boot]: p
+
cd CODA
 
+
git clone https://github.com/JeffersonLab/mkLinuxvmeDist.git
boot device          : geisc
+
cd mkLinuxvmeDist
unit number          : 0
+
./getGIT
processor number    : 0
+
./getGIT -o
host name            : localdaq
 
file name            : /home/daq/CODA/VXWorks/vx6100_v4.1
 
inet on ethernet (e) : 10.1.1.2
 
inet on backplane (b): 0
 
host inet (h)        : 10.1.1.1
 
user (u)            : daq
 
flags (f)            : 0x20
 
target name (tn)    : roc1
 
startup script (s)  : /home/daq/CODA/bootscripts/roc1.boot
 
 
 
 
 
[VxWorks Boot]:
 
 
</pre>
 
</pre>
  
=== set the boot parameters ===
 
<pre>
 
 
Typing a "c" will CONFIGURE the boot parameters
 
 
[VxWorks Boot]: c
 
 
'.' = clear field;  '-' = go to previous field;  ^D = quit
 
 
boot device          : geisc0
 
processor number    : 0
 
host name            : daq1
 
file name            : /home/daq/CODA/VXWorks/vx6100_v4.1
 
inet on ethernet (e) : 134.50.3.216
 
inet on backplane (b): 0
 
host inet (h)        : 134.50.3.210
 
gateway inet (g)    :
 
user (u)            : daq
 
ftp password (pw) (blank = use rsh):
 
flags (f)            : 0x20
 
target name (tn)    : roc1
 
startup script (s)  : /home/daq/CODA/bootscripts/roc1.boot
 
other (o)            :
 
</pre>
 
 
The flag "0x20" tells VxWorks to disable the rlogin/telnet security so no username or password is required.
 
 
=== sample boot script===
 
# Boot file for CODA ROC 2.0
 
# PowerPC version
 
 
# up the sliding window
 
tcp_sendspace=0x8000
 
tcp_recvspace=0x8000
 
 
# Setup environment / load coda_roc
 
putenv "MSQL_TCP_HOST=daq1"
 
putenv "EXPID=LDS"
 
putenv "TCL_LIBRARY=/home/daq/CODA/2.5/common/lib/tcl7.4"
 
putenv "ITCL_LIBRARY=/home/daq/CODA/2.5/common/lib/itcl2.0"
 
putenv "DP_LIBRARY=/home/daq/CODA/2.5/common/lib/dp"
 
putenv "CMLOG_PORT=8102"
 
putenv "TOKEN_PORT=5555"
 
putenv "SESSION=daq"
 
 
# Download Message logging libraries/client
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogClientD
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/lib/ppc-vw55/libcmlog.a
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogVxLogMsg
 
cd "/home/daq/CODA/2.5/VXWORKSPPC55/lib"
 
ld < libcamac.o
 
 
cd "/home/daq/CODA/2.5/VXWORKSPPC55/bin"
 
ld < coda_roc
 
ld < caSrvr
 
 
#cd "/home/daq/ROClibs"
 
#ld < adc1182_ppc.o 
 
#ld < scale32Lib_ppc.o
 
#ld < pas9740Lib_ppc.o
 
#ld < sis3610Lib_ppc.o 
 
 
# Spawn tasks
 
sp cmlogClientD
 
sp cmlogVxLogMsg
 
taskDelay (60*5)
 
# spawn the CAMAC remote server
 
taskSpawn "caServ",110,spTaskOptions,10000,caSrvr_main
 
# spawn the roc task
 
taskSpawn ("ROC",200,0x8,250000,coda_roc,"-i","-s","daq","-objects","roc1 ROC")
 
 
== Type "@" to reboot the ROC ==
 
 
 
[VxWorks Boot]: @
 
 
boot device          : geisc
 
unit number          : 0
 
processor number    : 0
 
host name            : daq1
 
file name            : /home/daq/CODA/VXWorks/vx6100_v4.1
 
inet on ethernet (e) : 134.50.3.216
 
inet on backplane (b): 0
 
host inet (h)        : 134.50.3.210
 
user (u)            : daq
 
flags (f)            : 0x0
 
target name (tn)    : roc1
 
startup script (s)  : /home/daq/CODA/bootscripts/roc1.boot
 
 
Attached TCP/IP interface to geisc0.
 
Warning: no netmask specified.
 
Attaching network interface lo0... done.
 
Loading... 1784832
 
Starting at 0x100000...
 
 
Attached TCP/IP interface to geisc unit 0
 
Attaching interface lo0...done
 
 
Adding 5075 symbols for standalone.
 
 
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
 
      ]]]]]]]]]]]  ]]]]    ]]]]]]]]]]      ]]              ]]]]        (R)
 
]    ]]]]]]]]]  ]]]]]]    ]]]]]]]]      ]]              ]]]]           
 
]]    ]]]]]]]  ]]]]]]]]    ]]]]]] ]    ]]                ]]]]           
 
]]]    ]]]]] ]    ]]]  ]    ]]]] ]]]  ]]]]]]]]]  ]]]] ]] ]]]]  ]]  ]]]]]
 
]]]]    ]]]  ]]    ]  ]]]    ]] ]]]]] ]]]]]]  ]] ]]]]]]] ]]]] ]]  ]]]] 
 
]]]]]    ]  ]]]]    ]]]]]      ]]]]]]]] ]]]]  ]] ]]]]    ]]]]]]]    ]]]]
 
]]]]]]      ]]]]]    ]]]]]]    ]  ]]]]]  ]]]]  ]] ]]]]    ]]]]]]]]    ]]]]
 
]]]]]]]    ]]]]]  ]    ]]]]]]  ]    ]]]  ]]]]  ]] ]]]]    ]]]] ]]]]    ]]]]
 
]]]]]]]]  ]]]]]  ]]]    ]]]]]]]      ]    ]]]]]]]  ]]]]    ]]]]  ]]]] ]]]]]
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]      Development System
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]]
 
]]]]]]]]]]]]]]]]]]]]]]]]]]]      VxWorks version 5.5.1
 
]]]]]]]]]]]]]]]]]]]]]]]]]]      KERNEL: WIND version 2.6
 
]]]]]]]]]]]]]]]]]]]]]]]]]      Copyright Wind River Systems, Inc., 1984-2003
 
 
                              CPU: Motorola MVME6100-0163 - MPC 7457.  Processor #0.
 
                              Memory Size: 0x10000000.  BSP version 1.2/2.
 
                            WDB Comm Type: WDB_COMM_END
 
                            WDB: Ready.
 
Executing startup script /home/daq/CODA/bootscripts/roc1.boot ...
 
# Boot file for CODA ROC 2.0
 
# PowerPC version
 
 
# up the sliding window
 
tcp_sendspace=0x8000
 
tcp_sendspace = 0x283a60: value = 32768 = 0x8000
 
tcp_recvspace=0x8000
 
tcp_recvspace = 0x283a64: value = 32768 = 0x8000
 
 
# Setup environment / load coda_roc
 
putenv "MSQL_TCP_HOST=daq1"
 
value = 0 = 0x0
 
putenv "EXPID=LDS"
 
value = 0 = 0x0
 
putenv "TCL_LIBRARY=/home/daq/CODA/2.5/common/lib/tcl7.4"
 
value = 0 = 0x0
 
putenv "ITCL_LIBRARY=/home/daq/CODA/2.5/common/lib/itcl2.0"
 
value = 0 = 0x0
 
putenv "DP_LIBRARY=/home/daq/CODA/2.5/common/lib/dp"
 
value = 0 = 0x0
 
putenv "CMLOG_PORT=8102"
 
value = 0 = 0x0
 
putenv "TOKEN_PORT=5555"
 
value = 0 = 0x0
 
putenv "SESSION=daq"
 
value = 0 = 0x0
 
 
# Download Message logging libraries/client
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogClientD
 
value = 231515072 = 0xdcca3c0
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/lib/ppc-vw55/libcmlog.a
 
value = 231514544 = 0xdcca1b0
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogVxLogMsg
 
value = 231514016 = 0xdcc9fa0
 
cd "/home/daq/CODA/2.5/VXWORKSPPC55/lib"
 
value = 0 = 0x0
 
ld < libcamac.o
 
value = 231515648 = 0xdcca600 = camacLockKey + 0x260
 
 
cd "/home/daq/CODA/2.5/VXWORKSPPC55/bin"
 
value = 0 = 0x0
 
ld < coda_roc
 
value = 231495344 = 0xdcc56b0 = eventNumber + 0xd0
 
ld < caSrvr
 
value = 230293088 = 0xdb9fe60
 
 
#cd "/home/daq/ROClibs"
 
#ld < adc1182_ppc.o 
 
#ld < scale32Lib_ppc.o
 
#ld < pas9740Lib_ppc.o
 
#ld < sis3610Lib_ppc.o 
 
 
# Spawn tasks
 
sp cmlogClientD
 
task spawned: id = cmlogC0xlient Daemon uses db9a620default prior, name = ity 190
 
t1
 
value = cmlogClient 230270496daemon uses = 0x default stack db9a620size 20000
 
 
sp cmlogVxLogMsgcmlog
 
ClientD with task spawned: id = cmlogVx0xLogMsg uses defauldc10fb0t priority 19, name = 9
 
t2cmlog p
 
cmlogVxLogMsg uses value = default stac230756272k size 1000 = 0x0
 
dc10fb0rotoco
 
l version 2.xtaskDelay (60*5)
 
 
Waiting fCannot find any cmlog server running
 
or Cannot connect to a cmlog server
 
cmlogClStarting up cmlog client daemon....
 
ientD to start up
 
value = 0 = 0x0
 
# spawn the CAMAC remote server
 
taskSpawn "caServ",110,spTaskOptions,10000,caSrvr_main
 
value = 230877024 = 0xdc2e760
 
# spawn the roc task
 
taskSpawn ("ROC",200,0x8,250000,coda_roc,"-i","-s","daq","-objects","roc1 ROC")
 
value = 230148128 = 0xdb7c820
 
 
 
 
Args = -i -s daq -objects roc1 ROC
 
roc1
 
 
Done executing startup script /home/daq/CODA/bootscripts/roc1.boot
 
 
-> Connect: S_errno_EHOSTUNREACH
 
msql error : Can't connect to MSQL server on daq1
 
Connect: S_errno_EHOSTUNREACH
 
MSQL_Cmd_Connect: error 'cause socket < 0
 
msql: Can't connect to MSQL server on daq1
 
 
Now i need to install CODA and run the MSQL data base
 
 
== ROC boot script==
 
 
 
# Boot file for CODA ROC 2.0
 
# PowerPC version
 
 
# up the sliding window
 
tcp_sendspace=0x8000
 
tcp_recvspace=0x8000
 
 
# Setup environment / load coda_roc
 
putenv "MSQL_TCP_HOST=daq1"
 
putenv "EXPID=LDS"
 
putenv "TCL_LIBRARY=/home/daq/CODA/2.5/common/lib/tcl7.4"
 
putenv "ITCL_LIBRARY=/home/daq/CODA/2.5/common/lib/itcl2.0"
 
putenv "DP_LIBRARY=/home/daq/CODA/2.5/common/lib/dp"
 
putenv "CMLOG_PORT=8102"
 
putenv "TOKEN_PORT=5555"
 
putenv "SESSION=daq"
 
 
# Download Message logging libraries/client
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogClientD
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/lib/ppc-vw55/libcmlog.a
 
ld < /home/daq/CODA/2.5/CMLOG/2.1/bin/ppc-vw55/cmlogVxLogMsg
 
#cd "/home/daq/CODA/2.5/VXWORKSPPC55/lib"
 
#ld < libcamac.o
 
 
cd "/home/daq/CODA/2.5/VXWORKSPPC55/bin"
 
ld < coda_roc
 
#ld < caSrvr
 
 
#cd "/home/daq/ROClibs"
 
#ld < adc1182_ppc.o 
 
#ld < scale32Lib_ppc.o
 
#ld < pas9740Lib_ppc.o
 
#ld < sis3610Lib_ppc.o 
 
 
# Spawn tasks
 
sp cmlogClientD
 
sp cmlogVxLogMsg
 
taskDelay (60*5)
 
# spawn the CAMAC remote server
 
taskSpawn "caServ",110,spTaskOptions,10000,caSrvr_main
 
# spawn the roc task
 
taskSpawn ("ROC",200,0x8,250000,coda_roc,"-i","-s","daq","-objects","roc1 ROC")
 
 
==Installing CMLOG==
 
 
I copied the binary files at /site/coda/cmlog over to /home/daq/CODA/2.5
 
  
 +
the result is a subdirectory called "linxvme" which contains all the libraries
  
  
[http://www.iac.isu.edu/mediawiki/index.php/Data_Acquisition return to DAQ page]
+
[[Data_Acquisition]]

Latest revision as of 21:12, 15 November 2016

rocdaq1:134.50.3.17 rocdaq2:134.50.3.46 rocdaq3:134.50.3.33


MVME_6100_ROC


GE_XVB601_ROC

CODA_REMEX

JLAbs GitHub repository for readout modules

I uploaded the subdirectory on daq2 using the following commands

cd CODA
git clone https://github.com/JeffersonLab/mkLinuxvmeDist.git
cd mkLinuxvmeDist
./getGIT
./getGIT -o


the result is a subdirectory called "linxvme" which contains all the libraries


Data_Acquisition