XIA PZ-TIO User manual

PZ-TIO
User Manual
Version 1.01
April 4, 2022
Hardware Revisions: A
Software Revision: 0x1103
Firmware Revision and Variants:
0xAF00 0x0100 (standard)
XIA LLC
2744 East 11th St
Oakland, CA 94601, USA
Tel: (510) 401-5760; Fax: (510) 401-5761
http://www.xia.com/
Information furnished by XIA LLC is believed to be accurate and reliable. However, no responsibility is assumed by
XIA for its use, or for any infringements of patents or other rights of third parties which may result from its use. No
license is granted by implication or otherwise under any patent or patent rights of XIA. XIA reserves the right to
change hardware or software specifications at any time without notice.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 2
Contents
Safety ............................................................................................................................................................ 4
Specific Precautions.................................................................................................................................. 4
Power Source ........................................................................................................................................ 4
User Adjustments/Disassembly ............................................................................................................ 4
Voltage Ratings..................................................................................................................................... 4
Servicing and Cleaning......................................................................................................................... 4
Linux Passwords ................................................................................................................................... 4
Linux Backup........................................................................................................................................ 4
Warranty Statement ...................................................................................................................................... 5
Contact Information: ................................................................................................................................. 5
Manual Conventions ..................................................................................................................................... 6
1Introduction........................................................................................................................................... 7
1.1 PZ-TIO Features ........................................................................................................................... 8
1.2 Specifications................................................................................................................................ 9
1.3 System Requirements.................................................................................................................. 10
1.3.1 Drivers and Software .......................................................................................................... 10
1.3.2 Input Signals ....................................................................................................................... 10
1.3.3 Power Requirements ........................................................................................................... 11
1.3.4 Connectors and Cabling ...................................................................................................... 11
1.4 Software and Firmware Overview .............................................................................................. 11
1.5 Support........................................................................................................................................ 11
2Setup ................................................................................................................................................... 12
2.1 Power .......................................................................................................................................... 12
2.2 Serial Port (USB-UART) ............................................................................................................ 12
2.3 SSH login .................................................................................................................................... 13
2.4 Web Interface.............................................................................................................................. 13
2.5 SMB (Samba).............................................................................................................................. 14
2.6 Required Initial Linux Commands.............................................................................................. 14
2.7 White Rabbit ............................................................................................................................... 14
2.8 Useful Linux Commands ............................................................................................................ 15
2.9 Direct Network Connection between PZ-TIO and a Windows PC............................................. 15
3PZ-TIO Operation............................................................................................................................... 17
3.1 Adjust Parameters ....................................................................................................................... 17
3.2 Data Acquisition Monitoring ...................................................................................................... 17
3.3 User Interface Options ................................................................................................................ 18
3.3.1 Terminal.............................................................................................................................. 18
3.3.2 Terminal and Webpages...................................................................................................... 18
3.3.3 Terminal, SMB and Windows programs ............................................................................ 19
3.3.4 Webpage-Only Operation ................................................................................................... 19
4API functions ...................................................................................................................................... 21
4.1 progfippi...................................................................................................................................... 21
4.2 runstats, cgistats .......................................................................................................................... 21
4.3 Clockprog –not yet implemented ............................................................................................... 22
4.1 monitordaq .................................................................................................................................. 22

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 3
5Web Pages........................................................................................................................................... 23
5.1 index.html ................................................................................................................................... 23
5.2 rspage.html, cgistats.cgi .............................................................................................................. 24
6Parameters in the Settings Files .......................................................................................................... 25
6.1 System Parameters ...................................................................................................................... 25
6.2 Control Parameters...................................................................................................................... 26
7Data Formats....................................................................................................................................... 27
7.1 Status Files (RS.csv) ................................................................................................................... 27
8Registers Visible to Linux ..................................................................................................................28
8.1 Input/Output Registers ................................................................................................................ 28
8.2 Output Registers.......................................................................................................................... 29
9Linux Configuration ........................................................................................................................... 30
9.1 Licensing Information................................................................................................................. 30
9.2 Software Information .................................................................................................................. 30
9.2.1 Ubuntu 18............................................................................................................................ 31
9.2.2 Systemd startup routine to configure FPGAs...................................................................... 31
9.2.3 Other configurations ........................................................................................................... 32
9.3 Other Settings.............................................................................................................................. 32
9.3.1 Static IP address.................................................................................................................. 32
10 Hardware Information......................................................................................................................... 33
10.1 Board Architecture...................................................................................................................... 33
10.2 Connections................................................................................................................................. 33
10.2.1 Data Connectors.................................................................................................................. 33
10.2.2 MMCX Connectors for Clocks and Triggers...................................................................... 34
10.2.3 PMOD and HDMI Connectors for GPIO............................................................................ 34
10.2.4 Test Points........................................................................................................................... 35
10.2.5 Daughterboard Connections................................................................................................ 35
10.3 Clocks ......................................................................................................................................... 36
10.4 Jumpers ....................................................................................................................................... 36
10.5 LEDs ........................................................................................................................................... 37
10.6 IEEE 1588 Precision Timing Protocol........................................................................................ 37
10.6.1 Overview............................................................................................................................. 37
10.6.2 PTP Stack Software: LinuxPTP.......................................................................................... 38
10.6.3 PTP PHY Control Software: ptp-mii-tool........................................................................... 38
10.6.4 Reduced General Purpose Functionality............................................................................. 39
10.7 White Rabbit Hardware Elements............................................................................................... 39
10.8 PicoZed configuration................................................................................................................. 40
11 Software Information.......................................................................................................................... 41
11.1.1 File structure ....................................................................................................................... 41
11.1.2 Parameter Definitions ......................................................................................................... 42
11.1.3 FPGA registers.................................................................................................................... 42
11.1.4 Status Registers –cgi vs file vs page .................................................................................. 42
12 Firmware Information......................................................................................................................... 43
13 Known Bugs ....................................................................................................................................... 44

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 4
Safety
Please take a moment to review these safety precautions. They are provided both for your
protection and to prevent damage to the Pixie module and connected equipment. This
safety information applies to all operators and service personnel.
Specific Precautions
Power Source
The PZ-TIO module is powered through an AC/DC wall adapter. The default adapter has
a variety of AC plug attachments for different localities. Please remember to shut down the
Linux OS before removing the power plug from the PZ-TIO.
User Adjustments/Disassembly
To avoid personal injury, and/or damage, always disconnect power before accessing the
module’s interior. There are a few jumpers related to clocking on the board that
experienced users may want to use.
Voltage Ratings
Signals on the inputs and outputs must not exceed ± 3.3V. Please review the pinout in the
appendix before making any connections.
Servicing and Cleaning
To avoid personal injury, and/or damage to the module or connected equipment, do not
attempt to repair or clean the inside of these units.
Linux Passwords
The PZ-TIO Linux OS comes with default user IDs and passwords for 1) SSH login, 2)
SMB file sharing, and 3) Web Operations as described below. Users should immediately
change these passwords, especially when the PZ-TIO is connected to external networks.
Don’t let hackers take over your PZ-TIO!
Linux Backup
The PZ-TIO Linux OS is stored on a removable SD card. SD cards’ file systems can
become corrupted, which would crash the Linux system and make the PZ-TIO unable to
operate. Therefore periodic backup of the SD card is recommended, for example using
Win32DiskImager. (Byte for byte copy is required).
Note that all Linux passwords are stored on the SD card.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 5
Warranty Statement
XIA LLC warrants that this product will be free from defects in materials and workmanship
for a period of one (1) year from the date of shipment. If any such product proves defective
during this warranty period, XIA LLC, at its option, will either repair the defective products
without charge for parts and labor, or will provide a replacement in exchange for the
defective product.
In order to obtain service under this warranty, Customer must notify XIA LLC of the defect
before the expiration of the warranty period and make suitable arrangements for the
performance of the service.
This warranty shall not apply to any defect, failure or damage caused by improper uses or
inadequate care. XIA LLC shall not be obligated to furnish service under this warranty a)
to repair damage resulting from attempts by personnel other than XIA LLC representatives
to repair or service the product; or b) to repair damage resulting from improper use or
connection to incompatible equipment.
THIS WARRANTY IS GIVEN BY XIA LLC WITH RESPECT TO THIS PRODUCT IN
LIEU OF ANY OTHER WARRANTIES, EXPRESSED OR IMPLIED. XIA LLC AND
ITS VENDORS DISCLAIM ANY IMPLIED WARRANTIES OF
MERCHANTABILITYOR FITNESS FOR A PARTICULAR PURPOSE. XIA’S
RESPONSIBILITY TO REPAIR OR REPLACE DEFECTIVE PRODUCTS IS THE
SOLE AND EXCLUSIVE REMEDY PROVIDED TO THE CUSTOMER FOR BREACH
OF THIS WARRANTY. XIA LLC AND ITS VENDORS WILL NOT BE LIABLE FOR
ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
IRRESPECTIVE OF WHETHER XIA LLC OR THE VENDOR HAS ADVANCE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.
Contact Information:
XIA LLC
2744 East 11th St.
Oakland, CA 94601 USA
Telephone: (510) 401-5760
Downloads: http://support.xia.com

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 6
Manual Conventions
The following conventions are used throughout this manual
Convention
Description
Example
»
The » symbol leads you
through nested menu items
and dialog box options.
The sequence
File»Page Setup»Options directs you to pull
down the File menu, select the Page Setup
item, and choose Options from the sub menu.
Bold
Bold text denotes items that you
must select or click on in the
software, such as menu items,
and dialog box options.
...click on the MCA tab.
[Bold]
Bold text within [ ] denotes a
command button.
[Start Run] indicates the command button
labeled Start Run.
Monospace
Items in this font denote text
or characters that you enter
from the keyboard, sections
of code, file contents, and
syntax examples.
Setup.exe refers to a file called “setup.exe”
on the host computer.
“window”
Text in quotation refers to
window titles, and quotations
from other sources
“Options” indicates the window accessed via
Tools»Options.
Italics
Italic text denotes a new term
being introduced , or simply
emphasis
peaking time refers to the length of the slow
filter.
...it is important first to set the energy filter Gap
so that SLOWGAP to at least one unit greater
than the preamplifier risetime...
<Key>
<Shift-Alt-
Delete> or
<Ctrl+D>
Angle brackets denote a key
on the keybord (not case
sensitive).
A hyphen or plus between
two or more key names
denotes that the keys should
be pressed simultaneously
(not case sensitive).
<W> indicates the W key
<Ctrl+W> represents holding the control key
while pressing the W key on the keyboard
Bold italic
Warnings and cautionary text.
CAUTION: Improper connections or settings
can result in damage to system components.
CAPITALS
CAPITALS denote DSP
parameter names
SLOWLEN is the length of the slow energy
filter
SMALL CAPS
SMALL CAPS are used for
panels/windows/graphs in the
GUI.
…go to the MCADISPLAY panel and you see…

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 7
1 Introduction
The PZ-TIO is an input/output carrier board for a Zynq System on Module
1
(SoM). The
Zynq is a combination of an FPGA (Programmable Logic, PL) with an ARM processor
(Processing System, PS). The PL can implement the White Rabbit IP core, and additional
logic to route input and output signals –if desired synchronous with a White Rabbit master
clock to sub-nanosecond precision. The PS can run Ubuntu 18 with gcc, webserver, etc; it
has USB and Ethernet peripherals and 1GB of memory.
The PZ-TIO carrier board connects the PL to ~40 GPIO lines and 3 SFP interface ports.
All of the SFP interfaces can be replaced by GPIO connectors, and two
2
are capable of 1
Gbps Ethernet with White Rabbit time synchronization, when using replaceable
daughterboards for the White Rabbit clocking circuitry. The PS can be accessed via
USB/UART and 10/100/100M Ethernet port (alternatively a PTP
3
compatible 10/100M
Ethernet port).
At this time, the PZ-TIO should not be considered a commercial product. XIA does not
promise any particular functionality or suggests its use as part of a setup for the readout of
radiation detectors
4
, which is XIA’s main line of business. Instead, it should be seen as a
byproduct of recent R&D
5
. In that development, we benefited from a number of freely
available designs and concepts, and their supporting communities. We therefore spent a
little extra time to pull them together in an evaluation board of sorts and make them
available to the community in combination. We provide the PZ-TIO “as is”, but not for
free -- there are real production costs. We will try to answer questions as “moderately
experienced implementers” as time allows, but we are not the creators of, or experts in, the
designs above. At this point, all the PZ-TIO really does is allowing a PicoZed to blink an
LED or toggle an output pin in sync with a White Rabbit or other PTP master. Legally, we
are [probably] only selling a circuit board –not even the PicoZed itself –that may allow
you to run firmware and software you obtain separately. However, the hope is that this is
still useful to other developers.
Note: some functions not fully tested are highlighted in yellow
1
Model Avnet PicoZed 7015
2
Currently only one is tested
3
IEEE 1588 Precision Time Protocol
4
Though it might in the future, with suitable firmware for specific applications
5
See Pixie-Net XL on XIA’s website

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 8
1.1 PZ-TIO Features
The PZ-TIO is designed as a “switchboard” for GPIO signals, synchronized by White
Rabbit, to route input signals to output signals and make logical combinations between
them in FPGA fabric. It has the following features and capabilities:
40+ GPIO connections to PicoZed Zynq SOM
3 SFP interfaces
Supports White Rabbit IP core implementation in PicoZed by providing clocking
circuitry for 2 SFPs (on daughterboards)
Carries PicoZed Zynq processor with embedded Linux, acting as a standalone PC
with built-in SD card drive, USB host, 10/100/1000 Ethernet, webserver, etc
Optional 1588 PTP and SyncE clock synchronization for Linux
Open source user access to hardware, software and firmware

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 9
1.2 Specifications
PL (Fabric) IO connectors
3 SFP
3 SFP connectors for Ethernet I/O, routed to PL GTX pins for data and
generic I/O pins for control.
Generic I/O lines also available on PMOD-style I/O connectors (not
stuffed by default)
7 MMCX
7 MMCX coaxial connectors with input or output buffers for
-Clock input
-Clock output
-Veto Input
-Sync input
-3x Trigger output
The functionality is configurable by jumpers and/or in the firmware.
3 PMOD
3 PMOD-style I/O connectors for direct connection to PL pins
-1 connector is a 12-pin receptacle
-2 connectors are right angle headers (not stuffed by default)
-3.3V power from PZ-TIO to peripheral
1 microHDMI
1 microHDMI for buffered 5V TTL input or output signals
-6 outputs
-7 inputs
-5V power from PZ-TIO to peripheral
-Not used for video
2 Daughtercards
2 High density, 40-pin headers to expand PL functionality
-25 I/O signals, 3.3V power
-Matches XIA’s White Rabbit clocking daughtercard
Power and PS (ARM) IO connectors
Power
12V DC in.
AC adapter requirements: 12V, 10W
Barrel Plug 2.1mm I.D. x 5.5mm O.D., center positive
SD card
16 GB micro SD card (removable)
UART
Micro USB connector for PS UART I/O
2 RJ-45
2 RJ-45 connectors for
-10/100/1000M Ethernet from PicoZed PHY on PS
-Alternative routing of PS Ethernet through PL and PTP
compatible 10/100M PHY.
USB
USB type A for USB host from Zynq PS

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 10
Matching Embedded Processing
Processor
Xilinx Zynq –Avnet PicoZed
Data Interfaces
10/100/1000 Ethernet
USB 2.0 (host)
USB-UART
Memory
1 GB of DDR3 SDRAM
128 Mb of QSPI Flash
4 GB of eMMC memory
Operating System
Linux (Xillinux –based on Ubuntu 18)
Operates from Linux partition on SD card
Firmware and Software Possibilities
Trigger Routing
and Coincidence
Firmware demo code for
-controlling connections between inputs and outputs
-counting input pulses for WR defined time periods
FPGA register
programming
C software to
-program FPGA registers that enable or disable connections.
-read FPGA status registers
Time
synchronization
Clock synchronization with White Rabbit core or DP83640 PTP PHY
C software (LinuxPTP) to operate IEEE 1588 PTP timers and adjust local
clock to network clock master
C software to define PTP timed triggers
Table 1-1. Specifications for the PZ-TIO
1.3 System Requirements
The system considered here consists of a PZ-TIO, a PicoZed, and a White Rabbit switch
(or other PTP master) plus appropriate cabling. Optional connections can be made to
external electronics. A PC, smartphone or tablet is required to communicate with the
PicoZed, but trigger routing and clock synchronization is fully contained in the
combination of PicoZed and PZ-TIO.
1.3.1 Drivers and Software
The PicoZed on the PZ-TIO operates with an embedded Linux system that includes all
software and drivers to communicate with external devices via Ethernet or USB. It can
-Make status information available via webserver
-Read and write USB drives for data exchanges
-Share files over a Windows network
1.3.2 Input Signals
Input signals must not exceed ± 3.3V, except on the 5V compatible GPIO of the HDMI
connector.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 11
1.3.3 Power Requirements
The combination of PicoZed and PZ-TIO consume roughly 10 W. It requires following
currents: 12V up to 1.0 A (preliminary)
1.3.4 Connectors and Cabling
MMCX connectors are used for clock input/outputs. MMCX to BNC adapter cables are
provided with the module.
CAT-5, HDMI, SFP, and USB connections use commercially available cabling, which is
not provided with the module
1.4 Software and Firmware Overview
The software of the PicoZed carried by the PZ-TIO consists of a small set of C programs
(API functions) applying settings to the PL, reading data from the PL, and storing it on the
SD card. The API functions are called from the Linux command line or as CGI scripts from
a web page. Results can be viewed or downloaded via the web page, or copied over the
network. Configuration parameters are stored in an .ini file that can be edited by the user
to adjust parameter settings.
Firmware code for the PL on-board pulse processing functions is loaded to the PL as part
of the powerup boot sequence.
Users may modify the API functions (source code and gcc compiler is included in the Linux
environment on the SD card). Source code of the firmware is available.
1.5 Support
A unique benefit of dealing with a small company like XIA is that the technical support for
our sophisticated instruments is often provided by the same people who designed them.
Our customers are thus able to get in-depth technical advice on how to fully utilize our
products within the context of their particular applications.
For the PZ-TIO, any such support is provided on a best effort basis.
Please read through the following sections before contacting us. Contact information is
listed in the first few pages of this manual.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 12
2 Setup
When powered up, the PZ-TIO
6
automatically boots the FPGA configuration and starts the
Linux OS. There are several ways for a user to connect to the PZ-TIO Linux OS:
1. Serial port via USB-UART
2. Network SSH terminal
3. Web server
4. SMB (Samba) file sharing
The typical procedure for setup would be to first to power up the PZ-TIO (2.1), then install
and configure drivers for the serial port on a USB master PC (2.2). Log on via serial port
terminal, find the PZ-TIO’s IP address, and execute a few setup programs (2.5). After that,
the PZ-TIO can be operated through terminal, web interface and/or SMB.
2.1 Power
To power up the PZ-TIO, simply connect the 12V DC power plug from the AC adapter.
The center pin must be positive and the adapter must be rated for 18W or more.
Several outputs and internal settings are undefined after powerup, so it is recommended to
log in quickly via serial port or SSH and apply the settings.
To power down the PZ-TIO, first shut down the Linux OS (type halt), then remove the
12V DC power plug.
A green LED will blink when power is on and the PL configured properly. It will be
continuously on if the White Rabbit IP core is fully synchronized.
2.2 Serial Port (USB-UART)
The serial port connection on the Zynq SOM is made via a micro USB cable. It requires a
driver to map the UART to a Windows serial port as well as a terminal running on the USB
master PC. Windows installation consists of the following steps:
1. Download and extract/install the Silicon Labs CP210x USB-to-UART driver from
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers. For
more information, see
microzed.org/sites/default/files/documentations/CP210x_Setup_Guide_1_2.pdf
2. Download and install Tera Term (or other suitable terminal program). See
http://ttssh2.osdn.jp/
3. Connect USB cable between Zynq SOM board and PC, then power up the PZ-TIO
(see 2.1)
(PC: any USB port, PZ-TIO: micro USB port J141)
4. From the Silicon Labs installation, run CP210xVCPInstaller_x64.exe to create a
COM port
- Find the new COM port’s number in the Windows device manager
- The COM port assignment is device specific, so this has to be repeated
6
In the following “PZ-TIO” often should be understood as “PZ-TIO and/or the PicoZed Zynq it carries”

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 13
every time switching to a different PZ-TIO unit. For the same PZ-TIO, this
is a one-time operation.
5. Open Tera Term.
- Connect via the serial port showing the COM number above
- Select Setup > Serial port. Defaults are ok, except baud rate must be 115200
- Adjust the font and size if desired
- Currently, no login credentials are required for Linux login via serial port
On a Linux system, it is possible to use the Minicom utility as for serial port I/O. Usually
no installation or drivers are required. It can be configured via
sudo minicom –s
and by specifying ttyUSB0 as the port, with no HW flow control. See also
https://help.ubuntu.com/community/Minicom.
2.3 SSH login
Tera Term or another suitable program can be used to log in via the network once the PZ-
TIO is powered, connected to a network, and its IP address is known. The IP address can
be found by
connecting via serial port terminal as described above, and typing ifconfig
log on to router, see list of connected devices
just try the one it had before, IP addresses seem fairly persistent through power
cycles
To connect, open a terminal and make connection to the PZ-TIO’s IP address. Default
ID/PW is root/xia17pxn (please change).
Two possible free SSH terminal program for Android are “SSH Client” and “JuiceSSH”,
allowing login from a tablet or smartphone.
2.4 Web Interface
Any web browser can be used to log in via the network once the PZ-TIO is powered,
connected to a network, and its IP address is known. The IP address can be found by
connecting via serial port terminal as described above, and typing ifconfig
log on to router, see list of connected devices
just try the one it had before, they seem fairly persistent through power cycles
To connect, enter the PZ-TIO’s IP address as the web address in your browser. Any
browser should work; XIA uses Firefox and does not test for compatibility with other
browsers. No password is required for the PZ-TIO home page, however, login is required
for web operations duplicating terminal access (not yet implemented). The default ID/PW
is webops/xia17pxn (please change).
For proper operation of most links in the home page, prior execution of a function in the
Linux terminal is required. See below for details.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 14
2.5 SMB (Samba)
The PZ-TIO Linux OS is running Samba, a “Windows interoperability suite of programs
for Linux and Unix”. It allows the files in the Linux partition of the PZ-TIO SD card to be
shared with Windows networking. By default, only one folder is shared (/var/www) which
is the location of the API functions.
To connect, type \\192.168.1.xxx\PNvarwww in the Windows Explorer location
bar, where 192.168.1.xxx is the IP Address of the PZ-TIO found as above and
PNvarwww is the name given to /var/www for file sharing purposes in Samba. Windows
will prompt for login; the default ID/PW is root/xia17pxn (please change).
The settings file settings.ini, output data files, and all (source and executable) files
of the API functions can now easily be copied or edited with Windows tools and programs.
However, to execute the API functions, serial port or SSH login is required (or in some
cases, API functions can be executed from the web interface)
2.6 Required Initial Linux Commands
Once logged on via the Linux terminal or the web operations page, the following steps
must be performed:
1. Change directory: cd /var/www
This is the directory visible via the web server. Data created by execution of XIA
API functions can be read via the web browser from this directory. For convenience,
it contains a “release” of all XIA SW functions and is used as the default working
directory. (Not required for web operations page)
2. Apply settings to FPGA: ./progfippi (automatically?)
2.7 White Rabbit
For White Rabbit synchronization, the White Rabbit enabled SFP must connect to a White
Rabbit master, such as the WR Switch. Use of White Rabbit approved fiber and SFP
module is recommended for best time synchronization, but not essential. Make sure to
connect the blue module to the PZ-TIO, the purple with the White Rabbit master. This
Ethernet connection is currently used only for the exchange of timing messages. Ethernet
data I/O is possible with appropriate firmware, but only with the PL; it is not visible to the
Linux OS.
The White Rabbit core is part of the PL firmware that automatically loads at powerup or
reboot. A green LED on the PZ-TIO blinks while the PZynq is powered and configured,
and stays on if the White Rabbit core is fully synchronized.
The White Rabbit core has a UART interface that is separate from the USB/UART
connection to a PC; it is connected to a 2nd PS UART interface. Therefore, once logged on
to the PZ-TIO Linux OS terminal via SSH or primary UART, type minicom to access the
White Rabbit core via the secondary UART. In that minicom interface, users can type the
commands described in the White Rabbit manual. Examples include
-gui shows status information of the White Rabbit core

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 15
-<escape> exit from GUI
-sfp show shows known SFP modules
-init show shows the startup commands for the White Rabbit core
2.8 Useful Linux Commands
The following commands may be helpful
1. Type ifconfig to find the IP address
The network does not come up by itself occasionally. Type ifconfig eth1 up
xxx.xxx.xxx.xxx with a known allowed IP number to restart. The IP number
can be omitted in some cases. Or, for a change of restart, type sudo
/etc/init.d/networking restart else power cycle.
2. The temperature is reported as a raw number in
/sys/devices/soc0/amba/f8007100.adc/iio:device0/in_temp0
_raw; the actual temperature can be computed by subtracting 2219 and multiplying
with 0.12304. Board and Zynq temperatures are also reported in the status
information and by ./progfippi
3. To change a parameter value in the settings file without opening/editing/closing the
file, a sed command as follows can be used:
sed –i ‘/RUN_TYPE/c RUN_TYPE 1281’ settings.ini
This replaces (-i = in the file) the line containing the string “RUN_TYPE” with the
text “RUN_TYPE 1281”.
4. To mount a USB drive
7
(e.g. to copy data or SW updates), type
mount /dev/sda1 /mnt/usb
/var is not a suitable directory to mount the USB stick, as it confuses the web server
5. Type date to verify Linux time automagically updated to UTC from its Ethernet
connection (nothing to do with PTP or White Rabbit)
6. Use the mount command to mount external network drives. For example, to mount
NASdrive/data from a PC with IP address 192.168.1.123, type
mount //192.168.1.123/data /mnt/data –o
“username=[user],password=[passwd]”
with the appropriate values filled in for [user] and [passwd]
7. To mount the SD card boot partition to a folder /mnt/sd, execute
mount /dev/mmcblk0p1 /mnt/sd
this is useful to update the boot files without removing the SD card. The PZ-TIOhas
to be rebooted before the new boot files become effective.
8. To clear the command line history, type
history –c
history –w
2.9 Direct Network Connection between PZ-TIO and a Windows PC
The above description of setup and operation of the PZ-TIO assumes both PZ-TIO and the
user device (PC, tablet, smartphone) are connected to a local network with DHCP server
and gateway. Instead, it is possible to directly connect the PZ-TIO to a laptop or desktop
7
Currently /dev/sda1 is not available in Linux

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 16
with a standard Ethernet cable (no crossover cable required). However, a number of
configurations have to be set manually:
1. On the PZ-TIO terminal, type ifconfig eth1 up 192.168.1.86 to bring up
the Ethernet connection and assign the IP number. In some cases, eth0 or eth2 has to
be used instead of eth1.
2. On the Windows PC (here Windows 7), go to Start > Control Panel > Network and
Sharing Center > Change Adapter Settings > Local Area Connection
In the Local Area Connection “Properties”dialog, select “Internet Protocol Version 4
(TCP/IPv4)” and click “Properties”.
In the properties dialog, set IP address, subnet mask, and gateway as shown above.
(The gateway is equal to PZ-TIO’s IP address.)
Note: The network will not be able to connect to the internet. The date/time of the PZ-TIO
will likely be initialized to 1970.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 17
3 PZ-TIO Operation
Basic operation of the PZ-TIO uses a combination of terminal commands and web
interface. The former controls all parameter settings (and possible DAQ monitoring) and
requires login to the system. The latter displays data and is accessible to anyone. This
provides a measure of security in instrument control while making it convenient to view
data.
3.1 Adjust Parameters
The FPGA parameters control the connections between inputs and outputs, for example
direction (front to back vs back to front) and output enable. In addition they can be used to
control certain other aspects of operation. The current set of parameters and functions are
an example only.
All settings are stored in an .ini file. A default settings file, defaults.ini, contains all the
parameter settings as described in section 6. A condensed settings file, settings.ini, contains
the most important parameters and will override the defaults. The normal method to
change settings is to edit settings.ini and then execute ./progfippi to apply them to the
FPGA. If necessary, lines with additional parameters can be copied from defaults.ini into
settings.ini; also lines can be deleted from settings.ini if there is no need to vary specific
parameters. The file defaults.ini should be considered a read-only file. Editing can be
accomplished with a built-in Linux editor through the terminal (for example VI) or by
opening the file in a Windows editor through the SMB file sharing.
After execution of ./progfippi, you can also open/refresh the Status page in the web
browser or execute ./runstats and read the output parameters in the resulting RS.csv
file. The current state of the inputs, results of counters, temperatures, and FPGA system
time will be reported. In a Windows Explorer window pointing to \\<Pixie_Net
IP>\PNvarwww, the file RS.csv can be copied or opened by Windows tools and
programs.
The typical startup sequence (see also section 2.6) is to run ./progfippi pretty much
as soon as the modules is powered up to initialize all parameters in the FPGA logic. Every
time there is a change in settings.ini, run ./progfippi to apply the changes to the pulse
processing logic.
3.2 Data Acquisition Monitoring
The C function “monitordaq” is a template demonstrating how to periodically read FPGA
status registers and print them to file.
At this point, the PZ-TIO is mainly a demonstration unit for the White Rabbit IP core
implementation. As such, the main interest if for firmware programmers who want to
understand and test the IP core. The “data acquisition” functionality is very minimal;
basically the idea is to define a WR run start and stop time some time in the future and at
that time, the PZ-TIO will do <something>. The <something> currently is to reset the pulse

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 18
counters for the VETO and SYNC inputs, as well as the TOTAl_TIME counter, and keep
incrementing them again until the stop time is reached. One can then compute a VETO
input rate during the data acquisition time. Obviously, this functionality can be expanded
for some real data acquisition if users feel the need to do so. The key point here is that
things happen at points in time that match the time of the WR clock master to ns precision.
3.3 User Interface Options
There are a variety of interface options to operate the PZ-TIO. They range from basic
terminal and file I/O to plug-ins for data acquisition or data analysis software.
Fundamentally, the PZ-TIO communicates through generic interfaces such as serial port
and Ethernet, so that any program emulating a serial port and reading files from a network
drive can be used to operate the system. A few examples are listed in the following sections
3.3.1 Terminal
At the most basic level, users can log in to the PZ-TIO with a terminal program and execute
the C programs to set up and read status (e.g. ./progfippi and ./runstats).
Settings are modified by editing the settings file settings.ini with a basic text editor like VI.
Results are files on the PZ-TIO’s SD card, which can be viewed with a text editor or copied
to mounted network drives.
This environment may appeal most to users familiar with Linux, and also allows
modification and recompilation of the C programs with the built-in gcc compiler.
3.3.2 Terminal and Webpages
For direct graphical feedback, users can log in via terminal as in the preceding section, but
view results as a webpage. The PZ-TIO is running a web server, and the output files are
formatted as plots or tables on webpages with a variety of java scripts.
While still requiring familiarity with Linux, the graphical feedback makes for an easier
setup and a better presentation of the results.

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 19
3.3.3 Terminal, SMB and Windows programs
With SMB file sharing, Windows programs can be used to directly view, edit, and analyze
settings and results. For example, the workflow could be
1) Using WordPad, open, modify, and save settings.ini
2) Execute ./progfippi and ./runstats in the terminal
3) Open RS.csv in Excel or other program to view, analyze, and plot results
3.3.4 Webpage-Only Operation
Not yet implemented
As an alternative to the terminal entry and execution of the C programs to set up and read
status (e.g. ./progfippi and ./runstats), there is a [moderately] secure web page
that allows execution of the C programs as a cgi script through a browser. The Web
Operation page can be reached via a link in the “CGI Current Data” section of the PZ-TIO
Home page. It essentially lists the C functions that would normally be called by typing in
the terminal; clicking on the function name executes the function. Data is created in a
separate subdirectory with Linux permissions for data write access for the webserver

PZ-TIO Manual Version 1.01
© 2022 XIA LLC 20
(/var/www/webops). The Web Operation page shows the equivalent links from the PZ-TIO
home page to download and display the data.
Settings files can currently not be modified through the Web Operation page.
As this webpage allows generation and execution of files from any remote user, the
webserver has been set up to require authentication to access this webpage. Details of the
setup are described in section 10. The default user ID/password is webops/xia17pxn,
currently specified as plain text in the file /var/www/webopspasswords. Obviously, this is
only moderately secure and should be a) changed by the user as soon as possible and b)
upgraded to encrypted password storage for sensitive environments.
Table of contents
Other XIA Computer Hardware manuals