Note
This documentation is for a development version. Click here for the latest stable release (v0.3.2).
Using PYNQ¶
The PYNQ board runs Ubuntu, which is a richly featured Linux operating system,
and operates similar to the Ubuntu desktop installation. You have access to the
package manager apt
and utilities such as pip
. The board runs multiple
python versions and it is important to note that the PYNQ ecosystem is only set
up to run with Python 3.6. In the NengoBrainBoard SD image, the python
and pip
aliases have been modified to point to the correct version, so
you will be able to call these command from the terminal without having to make
any modifications to the operating system.
Caution
If you are not using the NengoBrainBoard SD card image, ensure you are using
python3.6
and pip3.6
when scripting and adding packages.
NengoFPGA¶
The Nengo interface for the board is installed in /opt/nengo-pynq
. The
hardware bitstreams (*.bit
files) and their associated *.hwh
(formerly
*.tcl
) files must be saved in /opt/nengo-pynq/lib
. Refer to the
README
in the /opt/nengo-pynq/lib
folder on the board for details. If
these files do not exist in this directory, see the Updating Bitstreams
section below for details on how to obtain them.
For running networks on the board please refer to the NengoFPGA usage documentation.
Updating Bitstreams¶
The NengoFPGA bitstreams for the PYNQ are tailored to your specific device. We will need your Device ID in order to build a new bitstream. You can obtain your Device ID and acquire bitstreams by following the instructions in the NengoFPGA copy protection documentation.
Once we have obtained your Device ID, your custom bitstream will be built and
distributed to you. You will receive an email with a weblink to download
your tailored bitstreams. The link will allow you to download an archive
(zip file) named as the Device ID that was provided to us, for example,
0x0123456789abcdef.zip
. This archive contains the following files:
pes_relu_rate.bit
: The hardware design that implements rate model rectified linear units.pes_relu_rate.hwh
: The hardware description used by PYNQ for the rate model rectified linear units.pes_relu_spiking.bit
: The hardware design that implements spiking model rectified linear units.pes_relu_spiking.hwh
: The hardware description used by PYNQ for the spiking model rectified linear units.
Unzip the archive and copy all of these files to /opt/nengo-pynq/lib
on
the board. See Copying Files to/from PYNQ
for help copying the files to the board.