Closed
Description
I have been trying to run the emulator on my PYNQ-Z2 board, but before the overlay loads, I keep encountering the same CacheMetadataError
. I am using this repository for a class project, and I would really appreciate some help troubleshooting. The program's output is:
[2022-10-22 03:55:53,880][INFO] Loading Pynq libraries...
[2022-10-22 03:56:03,622][INFO] Finished loading Pynq libraries
[2022-10-22 03:56:04,176][INFO] Loading overlay...
[2022-10-22 03:56:04,190][DEBUG] Using selector: EpollSelector
Traceback (most recent call last):
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/embedded_device.py", line 252, in get_parser
parser = self._get_cache()
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/embedded_device.py", line 228, in _get_cache
raise CacheMetadataError(f"No cached metadata present")
pynq.pl_server.embedded_device.CacheMetadataError: No cached metadata present
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/home/xilinx/final/gameboy_ps/__main__.py", line 17, in <module>
system = system.System(rom_directory)
File "/home/xilinx/final/gameboy_ps/system.py", line 15, in __init__
self.gameboy = Gameboy()
File "/home/xilinx/final/gameboy_ps/gameboy.py", line 72, in __init__
self.overlay = Overlay(str(overlay_path))
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/overlay.py", line 319, in __init__
self.device.set_bitfile_name(self.bitfile_name)
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/device.py", line 118, in set_bitfile_name
self.parser = self.get_bitfile_metadata(self.bitfile_name)
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/embedded_device.py", line 690, in get_bitfile_metadata
parser = _get_bitstream_handler(bitfile_name).get_parser(partial=partial)
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynq/pl_server/embedded_device.py", line 254, in get_parser
parser = RuntimeMetadataParser(Metadata(input=self._filepath.with_suffix(".hwh")))
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynqmetadata/frontends/metadata.py", line 40, in Metadata
return HwhFrontend(_hwhfile=input)
File "<string>", line 25, in __init__
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynqmetadata/frontends/hwh_frontend.py", line 219, in __post_init__
self.parse()
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynqmetadata/frontends/hwh_frontend.py", line 240, in parse
self.resolve_addressing()
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynqmetadata/frontends/hwh_frontend.py", line 596, in resolve_addressing
self._resolve_subordinate_addressing()
File "/usr/local/share/pynq-venv/lib/python3.10/site-packages/pynqmetadata/frontends/hwh_frontend.py", line 452, in _resolve_subordinate_addressing
core = self.blocks[i.get("INSTANCE")]
KeyError: 'M_AXI_0'
Additional info:
- Using v3.0.1 of the PYNQ-Z2 SD card image
- Using the precompiled bitstream
- Tested with multiple ROM files
- Followed set-up instructions: moved
gameboy.bit
andgameboy.hwh
togameboy_ps/resources
; loadedxpad
andjoydev
drivers from the repo'sextra
directory; installed required Python packages
Metadata
Metadata
Assignees
Labels
No labels