Lab setup
The board is hosted in a Wiener crate in building 29 and is connected to the network.
It's name is PCLBCC05 (location 29 R-003, outlet 003/02), corresponding to IP number
137.138.88.48
hardware Setup
The setup is made by
- Wiener crate
- CAEN V2718 bridge (used to configure the RF2TTC board)
- RF2TTC board (used to produce a buch clock and an orbit)
- BPIM Board
- Pulser device (produces a beam like signal latching the RF2TTC bunch clock)
Connections:
Picture: BPIM Setup in b29:
Connecting to the BPIM board
Telnet connection:
user = bpim
pass = <>
Two environment variables should be defined, before starting the DIM server (in
/home/bpim/.bash_profile
):
export DIM_DNS_NAME=pctofdcs.cern.ch
export DIM_DNS_PORT=2505
[pclbcc05] /home/bpim > ./bin/TFC_server3.2 -sbpim01 pctofdcs
Starting TFC_server v3.2 (2007011600) on pclbcc05 at Mon Jun 30 15:52:09 2008
Connecting to DIM DNS on pctofdcs:2505
Initializing PCI
Starting up server /TFC/bpim01/SERVER
On the second board, it will be launched with
bpim02
instead of
bpim01
.
Other commands:
[pclbcc05] /home/bpim/bin > tstat
Current system: pclbcc05 on TFC:BpimV101
Module type: BpimV1
Glue Light version 2005.08.15:00
Main FPGA version 2000.00.00:00 (v0.00)
[pclbcc05] /home/tfc/BPIM > sudo jbi_gpio -aconfigure Q_BPIM.jbc
Jam STAPL Byte-Code Player Version 2.1
Copyright (C) 1998-2000 Altera Corporation
Initializing PCI
GPIO Setup, GPIO_DIR 0x14 : B0
Device #1 IDCODE is 082000DD
configuring SRAM device(s)...
DONE
Exit code = 0... Success
Closing PCI
Commands for reading and writing:
[pclbcc05] /home/tfc/BPIM > ctrl -r 0x10fc
Add 0x10FC : Value 0x0
Add 0x10FC : Value 0
[pclbcc05] /home/tfc/BPIM > ctrl -r 0x10f8
Add 0x10F8 : Value 0x0
Add 0x10F8 : Value 0
[pclbcc05] /home/tfc/BPIM > ctrl -w0x1 0x1000
Add 0x1000 : Value 0x0
Add 0x1000 : Value 0
[pclbcc05] /home/tfc/BPIM > ctrl -r 0x0
Add 0x0 : Value 0x343
Add 0x0 : Value 835
[pclbcc05] /home/tfc/BPIM > ctrl -r 0x14
Add 0x14 : Value 0xB0
Add 0x14 : Value 176
FSM for the lab setup
Control Unit
ALI_BPTX_CU
ůstate: NOT_READY
when ( $ANY$FwCHILDREN in_state ERROR ) move_to ERROR
when ( $ANY$FwCHILDREN in_state UNKNOWN ) move_to UNKNOWN
when ( $ALL$FwCHILDREN in_state {CONFIGURING,READY} ) move_to CONFIGURING
action: GO_READY
action: RESET
state: READY
when ( $ANY$FwCHILDREN in_state ERROR ) move_to ERROR
when ( $ANY$FwCHILDREN in_state UNKNOWN ) move_to UNKNOWN
when ( $ANY$FwCHILDREN not_in_state READY ) move_to NOT_READY
action: RESET
action: CONFIGURE
state: CONFIGURING
when ( $ANY$FwCHILDREN in_state ERROR ) move_to ERROR
when ( $ANY$FwCHILDREN in_state UNKNOWN ) move_to UNKNOWN
when ( $ALL$FwCHILDREN in_state READY ) move_to READY
when ( $ANY$FwCHILDREN not_in_state {CONFIGURING,READY} ) move_to NOT_READY
state: ERROR
when ( $ANY$FwCHILDREN in_state UNKNOWN ) move_to UNKNOWN
when ( $ALL$FwCHILDREN not_in_state ERROR ) move_to NOT_READY
action: RESET
state: UNKNOWN
when ( $ALL$FwCHILDREN not_in_state UNKNOWN ) move_to NOT_READY
Device Unit BPIM_ALI
#uses "lbFwTFC/lbFwTFC_General.lctl"
#uses "lbFwTFC/lbFwTFC_Odin.lctl"
BPIM_ALI_doCommand(string domain, string device, string command)
{
if (command == "CONFIGURE")
{
// CONFIGURE č da RIFARE!!!!!
//fwDU_getCommandParameter(domain, device, "RUN_TYPE", RunType);
//fwDU_getCommandParameter(domain, device, "PART_ID", PartitionID);
//TFC_FSMLoadRecipe(device, RunType);
//BPIM_Configure(device, PartitionID);
BPIM_GetHWInfo(device);
}
if (command == "GO_READY")
{
//BPIM_Configure(device, 0);
BPIM_GetHWInfo(device);
}
if (command == "RESET")
{
TFC_Recover(device);
}
}
--
OmbrettaPinazza - 12 Jul 2008
- FSM hierarchy:
- LHC top node FSM panel:
- FSM hierarchy:
--
OmbrettaPinazza - 12 Jul 2008
- Bunch clock generated by RF2TTC:
- Beam generated by the pulser:
- Orbit generated by the RF2TTC board:
- Puser device used to generate the beam like signal: