drichmond / RISC-V-On-PYNQ

RISC-V Integration for PYNQ
Other
165 stars 57 forks source link

ConnectionError: Could not connect to PL server in "4-Packaging-An-Overlay.ipynb" #11

Open pkstud opened 5 years ago

pkstud commented 5 years ago

Until notebook 4 Packaging-An-Overlay everything went fine but instantiating the overlay leads to the following error: ConnectionError: Could not connect to PL server

Has anybody else experienced these issues and does anyone know how to fix it?

Full output:

import sys
sys.path.insert(0, '/home/xilinx/RISC-V-On-PYNQ/riscvonpynq/picorv32/')

from tut.tutorial import TutorialOverlay

overlay = TutorialOverlay("tutorial.bit")

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py:299: UserWarning: Users will not get PARAMETERS / REGISTERS information through TCL files. HWH file is recommended.
  warnings.warn(message, UserWarning)
---------------------------------------------------------------------------
ConnectionError                           Traceback (most recent call last)
<ipython-input-2-6d8ffe0f6845> in <module>()
      4 from tut.tutorial import TutorialOverlay
      5 
----> 6 overlay = TutorialOverlay("tutorial.bit")

/usr/local/lib/python3.6/dist-packages/riscvonpynq/Overlay.py in __init__(self, bitfile, **kwargs)
     83         if(not os.path.isabs(bitfile)):
     84             bitfile = os.path.join(self.__get_path(), bitfile)
---> 85         super().__init__(bitfile, **kwargs)
     86 

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py in __init__(self, bitfile_name, download, ignore_version)
    313 
    314         if download:
--> 315             self.download()
    316 
    317         self.__doc__ = _build_docstring(self._ip_map._description,

/usr/local/lib/python3.6/dist-packages/pynq/overlay.py in download(self, partial_bit)
    377                     Clocks.set_pl_clk(i)
    378 
--> 379             super().download()
    380             PL.reset(self.parser)
    381         else:

/usr/local/lib/python3.6/dist-packages/pynq/pl.py in download(self)
   1936         # use fpga manager to download bin
   1937         if not self.partial:
-> 1938             PL.shutdown()
   1939             flag = '0'
   1940         else:

/usr/local/lib/python3.6/dist-packages/pynq/pl.py in shutdown(cls)
   1456 
   1457         """
-> 1458         ip = cls.ip_dict
   1459         for name, details in ip.items():
   1460             if details['type'] == 'xilinx.com:ip:pr_axi_shutdown_manager:1.0':

/usr/local/lib/python3.6/dist-packages/pynq/pl.py in ip_dict(cls)
   1295 
   1296         """
-> 1297         cls.client_request()
   1298         cls.server_update()
   1299         return cls._ip_dict

/usr/local/lib/python3.6/dist-packages/pynq/pl.py in client_request(cls, address, key)
   1417         except FileNotFoundError:
   1418             raise ConnectionError(
-> 1419                 "Could not connect to PL server") from None
   1420         cls._bitfile_name, cls._timestamp, \
   1421             cls._ip_dict, cls._gpio_dict, \

ConnectionError: Could not connect to PL server
pkstud commented 5 years ago

FYI: rebooting the PYNQ board is a temporary fix for this issue

drichmond commented 5 years ago

This happens when the PL server goes down. Without more detail it's hard to help

But you can run sudo service pl_server restart and see if that fixes the problem