Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Sign in
P
Production Test Suite
  • Project
    • Project
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 9
    • Issues 9
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • Wiki
    • Wiki
  • image/svg+xml
    Discourse
    • Discourse
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Commits
  • Issue Boards
  • Projects
  • Production Test Suite
  • Wiki
  • Conv ttl blo rtm

Conv ttl blo rtm

Last edited by Theodor-Adrian Stana Mar 20, 2014
Page history

Documentation for the CONV-TTL-BLO-RTM PTS

User guide

PTS system

Unlike the rest of the PTS systems, that for the CONV-TTL-BLO-RTM is for now not designed for sending to the assembly facility. Instead, we will be testing the boards right here at CERN once they arrive upon shipment.

The test system is really simple. It comprises the following components:

  • CONV-TTL-BLO-RTM with piggyback under test
  • CONV-TTL-BLO with dedicated PTS bitstream
  • two signal loopback boards, described in the hardware guide
  • dedicated Python scripts

pts-sys.png

Tests

Number Name Description
test01 RTM Read RTM lines and compare versus RTM detection table
test02 Pulse repetition Send seven pulses on each channel and check input versus the number of pulses that should be received on each channel
test03 LEDs Light each rear panel LED in sequence and ask the user whether they light

Running

You should follow these steps to get started with the CONV-TTL-BLO-RTM PTS. Note that the steps are performed under Ubuntu Linux.

# Unpack the archive from the folder-struct/ folder in the repository to a location of your choice

# Go to the newly unpacked folder-struct/ and edit the file pyts/pts.py* at lines 67, 68, 69:

##-------------------------------------------------------------------------------------------------
## ELMA crate hostname and password
##-------------------------------------------------------------------------------------------------
def_hname = "" # Add the hostname or IP of the ELMA crate here
def_pwd   = "" # Add the admin password of the ELMA crate here
def_slot  = 0  # Add the slot number where the CONV-TTL-BLO is placed
  1. Run the make-links script in the newly-unpacked folder-struct/
  2. Plug a CONV-TTL-BLO in an ELMA crate of your choice
  3. Connect a JTAG cable to the CONV-TTL-BLO
  4. Format a USB key and format it as pts

Now, you're ready to run the script:

# Run the pts.py script in the unpacked folder-struct/

%> ./pts.py
Hello and Welcome to the CONV-TTL-BLO-RTM PTS!

# Scan or type the 1st and second barcodes

--> Scan the 1st barcode: 1234
--> Scan the 2nd barcode: 

--> Plug the CONV-TTL-BLO-RTM board '1234-0' into the VME crate.
  1. Connect two RTM board testers to the RTM under test, one between CH1-3 and one between CH4-6
  2. Now, plug the RTM board under test in the rear part of the ELMA crate and type "ok"
  3. A new xterm window will open up, informing you on the results
  4. When testing is finished, the xterm window will close and the output file will be copied to the stick
  5. In case of errors, they will be output to the console
  6. Unplug the card, disconnect the RTM board testers and place the RTM in its box

Debugging

FATAL ERROR: VME Crate: Unable to switch ON

Have you properly set the ELMA crate IP, username and password in pyts/pts.py*?

Pulse errors

LED errors should be pretty straightforward to debug, since you see which LED doesn't work.

However, errors on the pulse LED test can be harder to debug, but not too hard.

First things first, swap the RTM board testers between them and try the test again.*

If that doesn't work and the test outputs indicate the same errors, check the connection diagram of the RTM interface testers to pinpoint the error:

* Output * * Input * * Input * * Outputs *
O1 I1 I2 I3 I1 O11 O32 O23
O2 I2 I3 I1 I2 O21 O12 O33
O3 I3 I1 I2 I3 O31 O22 O13
O4 I4 I5 I6 I4 O41 O62 O53
O5 I5 I6 I4 I5 O51 O42 O63
O6 I6 I4 I5 I6 O61 O52 O43

The outputs of the test program show you the number of pulses sent and received on each channel:

good : O1 =  7 / I1 =  7
good : O1 =  7 / I2 =  7
good : O1 =  7 / I3 =  7
good : O2 =  7 / I1 = 14
good : O2 =  7 / I2 = 14
good : O2 =  7 / I3 = 14
good : O3 =  7 / I1 = 21
good : O3 =  7 / I2 = 21
good : O3 =  7 / I3 = 21
ERROR: O4 =  7 / I4 =  0 - expected  7
ERROR: O4 =  7 / I5 =  0 - expected  7
ERROR: O4 =  7 / I6 =  0 - expected  7
ERROR: O5 =  7 / I4 =  0 - expected 14
ERROR: O5 =  7 / I5 =  7 - expected 14
ERROR: O5 =  7 / I6 =  0 - expected 14
ERROR: O6 =  7 / I4 =  0 - expected 21
ERROR: O6 =  7 / I5 =  7 - expected 21
ERROR: O6 =  7 / I6 =  7 - expected 21

Using these test program outputs and the above connection diagram, we can find which connection is wrong.

Getting the files

* Clone the repository:

git clone -b conv-ttl-blo git@ohwr.org:misc/pts.git
cd pts/test/conv-ttl-blo-rtm
  • Download folder structure tarball

Other documentation

  • HDL guide
  • Hardware guide

Theodor-Adrian Stana, Mar. 2014

Clone repository
  • Documents
  • Home
  • News
  • Conv ttl blo rtm
  • Faqs
  • Documents
    • Conv ttl blo pts documentation
    • Fmc adc 100m 14b 4cha user guide
    • Fmc adc 200k 16b 11cha user guide
    • Fmc dio 5cha ttl user guide
    • Fine delay pts user guide
    • Pts environment: architecture and use
    • Spec pts user guide
    • Spec_pts_v2_incaa
    • Svec pts
    • Tdc pts user guide
More Pages

New Wiki Page

Tip: You can specify the full path for the new file. We will automatically create any missing directories.