Overview | Releases | Download | Docs | Links | Help | RecentChanges

SettingUpDaqHardware

Instructions from JohnHill?...

There have been several occasions over the last couple of years where during the initial set up of a ROD crate there have been problems, which often end up with a ROD having corrupted flash. As a recent such incident gave us an insight into what may possibly be causing these problems, I thought it was wise to put out this mail. I hope it is useful. I should point out that this mail is only intended to help users avoid pitfalls with the hardware - it is not a tutorial on the software installation.

1) To start and most importantly - if you have installed a ROD and it does not behave as expected, it is ALMOST NEVER due to corrupted FPGA? or DSP flash! Please exhaust all other avenues before trying to rewrite the flash.

2) Starting from an empty crate, install the SBC first. Check, check and check again whether the SBC is fully seated into the crate. This is less of a problem with the SBCs having insertion/extraction handles, but it is still worth being absolutely sure. Even if the SBC boots properly at power-up, this is no guarantee that it is fully seated. Symptoms that it is not fully seated might include strange VME behaviour when accessing other modules (a recent case had the ROD at VME addresses which implied it was in slot 0).

3) If you can locate one, install a VME memory module. This is very useful as a VME debug tool - using a ROD to try and diagnose unexpected VME behaviour is very dangerous, as the ROD is not a simple module! An alternative to the ROD is to use a TIM, which as far as VME is concerned is a set of registers starting at 0x0d000000 plus some memory at 0x0d008000-0x0d00ffff. Ensure that you are talking to the memory module or TIM correctly before moving on to installing RODs.

4) When you install a ROD, ALWAYS install a BOC in the same slot number in the rear of the crate. RODs are shipped such that they expect an external clock source. If the BOC is not in place, behaviour is unpredictable, but the ROD will certainly not work sensibly! Do NOT change the jumper which controls the clock source (you'll only forget to change it again later!).

5) "scanvme" is a useful tool in the DataFlow? suite - typically it is in $DF_INST_PATH/i686-rh73-gcc32-opt/bin. The default mode is to scan in A32D32 in 0x10000 steps - it should give a set of addresses starting with 0xnn000000 for a ROD in slot nn (and the TIM at 0x0d000000). Then the "RodUtils?" tools should be used, starting with "TouchRod?" and followed by "EchoTest?", if you want to have some confidence in the ROD.

6) If the ROD is not behaving properly at this stage, please consult the experts - we have a better chance of understanding what is going on if you minimise your experiments.