pynq.pl_server.xclbin_parser Module

The pynq.pl_server.xclbin_parser module parses the metadata file from the xclbin file. It extracts useful information about the system such as the memory ports.

class pynq.pl_server.xclbin_parser.XclBin(filename)[source]

Bases: object

Helper Class to extract information from an xclbin file


This class requires the absolute path of the ‘.xclbin’ file. Most of the dictionaries are empty to ensure compatibility with the HWH files.


All the addressable IPs from PS7. Key is the name of the IP; value is a dictionary mapping the physical address, address range, IP type, memory segment ID, the state associated with that IP, any interrupts and GPIO pins attached to the IP and the full path to the IP in the block design: {str: {‘phys_addr’ : int, ‘addr_range’ : int, ‘type’ : str, ‘mem_id’ : str, ‘state’ : str, ‘interrupts’ : dict, ‘gpio’ : dict, ‘fullpath’ : str}}.


All of the memory regions and streaming connections in the design: {str: {‘used’ : bool, ‘base_address’ : int, ‘size’ : int, ‘idx’ : int, ‘raw_type’ : int, ‘type’ : str, ‘streaming’ : bool}}.


All of the clocks in the design: {str: {‘name’ : str, ‘frequency’ : int, ‘type’ : str}}.