教程:在PYNQ-Z1或PYNQ-Z2上新增硬件设计,以AXI GPIO为例

本教程基于《Tutorial: Using a new hardware design with PYNQ (AXI GPIO)》编写。本教程有些地方与原文有出入,比如原文使用的板子是PYNQ-Z2,本文写的是PYNQ-Z1或者PYNQ-Z2,这是因为我使用PYNQ-Z1也完成了本实验。其他不一致的地方同理。

本教程将向您展示如何将上一篇教程中创建的Vivado硬件设计用于PYNQ。本教程是前一篇教程的后续,前一篇教程介绍了如何为PYNQ创建一个新的硬件设计。

环境说明

  • 开发板:PYNQ-Z1或者PYNQ-Z2
  • v2.4 PYNQ 镜像
  • vivado 2018.2或者vivado2019.1

原文链接:https://discuss.pynq.io/t/tutorial-using-a-new-hardware-design-with-pynq-axi-gpio/146

相关资源:

  • ipynb源文件:https://discuss.pynq.io/uploads/short-url/g8O85AMwDcYgspPkqDpG1cH4xWm.ipynb
  • 硬件设计文件:https://discuss.pynq.io/uploads/short-url/gjwp4jNJzWGot5lJkeaT2mn8YGW.zip

1 使用pynq Overaly类将Overlay实例化。

Overlay类的原型为:Overlay(bitfile_name, download=True, ignore_version=False)

bitfile_name是FPGA位流文件的完整文件名。

  • 默认情况下,downloadTrue,当Overlay被实例化时,位流将被下载到PL。
  • 也可以将download设置为False,以便在不下载比特流的情况下实例化Overlay。

Overlay类将自动为已知的IP分配一个驱动(如果可用)。每个PYNQ image都是用Vivado的一个版本来验证的。每个Vivado版本在IP目录中可能有不同版本的IP。PYNQ假定Vivado设计与经PYNQ image验证的Vivado版本相匹配。其他版本的Vivado可用于创建设计,但它们不被支持,也不保证它们能够工作。

设计中的任何IP的版本应该与为之编写的驱动程序的版本相同。Overlay类可以在分配驱动程序之前检查IP版本,也可以跳过版本检查。ignore_version可以被设置为True,以强制Overlay类在分配驱动前检查IP版本。

在没有PYNQ驱动的情况下,Overlay类会给一个IP分配一个默认的驱动(DefaultIP),为该IP的地址空间提供基本的MMIO(Memory mapping I/O,内存映射I/O)读写功能。这对于不需要完整的PYNQ驱动的简单IP来说很有用,或者对于新IP的原型设计来说也很有用。

!pwd
/home/xilinx/jupyter_notebooks/workspace

1.1 实例化Overlay

实例化前面教程中创建的设计。只指定了比特流,但Overlay类也会读取相应的.hwh.tcl文件。如果这两个文件都没有提供,Overlay类将出现错误。

from pynq import Overlaytutorial = Overlay("../../hardware/pynq_tutorial_new_hardware_files_v2_4/pynq_tutorial_new_hardware.bit")

2 Check list of IP in the design

在使用设计之前,你需要知道有哪些IP可用。你可以根据你创建的Vivado设计来确定这一点。你需要记住确切的IP名称和层次结构。对于一个简单的设计,这是直接的,但对于一个较大的设计,这就变得比较复杂了。

可以通过查询覆盖层来确定可用的IP。

tutorial?

请注意,在Vivado中使用AXI GPIO IP的按钮、开关和LED已经被分配到pynq.lib.axigpio.AxiGPIO驱动。

BRAM被分配到pynq.Overlay.DefaultIP驱动。这是因为DefaultIP提供了对IP的MMIO访问。在BRAM这个内存的情况下,只需要MMIO来读写内存位置。

Overlay的IP信息也可以从 "ip_dict "中读取。这将打印出设计中的IP的完整列表,以及各种属性。这些信息来自于与Overlay一起提供的Hardware Hand-off文件(.hwh)。

tutorial.ip_dict
{'buttons': {'fullpath': 'buttons','type': 'xilinx.com:ip:axi_gpio:2.0','bdtype': None,'state': None,'addr_range': 65536,'phys_addr': 1092616192,'mem_id': 'S_AXI','memtype': 'REGISTER','gpio': {},'interrupts': {},'parameters': {'C_FAMILY': 'zynq','C_S_AXI_ADDR_WIDTH': '9','C_S_AXI_DATA_WIDTH': '32','C_GPIO_WIDTH': '4','C_GPIO2_WIDTH': '32','C_ALL_INPUTS': '1','C_ALL_INPUTS_2': '0','C_ALL_OUTPUTS': '0','C_ALL_OUTPUTS_2': '0','C_INTERRUPT_PRESENT': '0','C_DOUT_DEFAULT': '0x00000000','C_TRI_DEFAULT': '0xFFFFFFFF','C_IS_DUAL': '0','C_DOUT_DEFAULT_2': '0x00000000','C_TRI_DEFAULT_2': '0xFFFFFFFF','Component_Name': 'pynq_tutorial_axi_gpio_0_0','USE_BOARD_FLOW': 'true','GPIO_BOARD_INTERFACE': 'btns_4bits','GPIO2_BOARD_INTERFACE': 'Custom','EDK_IPTYPE': 'PERIPHERAL','C_BASEADDR': '0x41200000','C_HIGHADDR': '0x4120FFFF'},'registers': {'GPIO_DATA': {'address_offset': 0,'size': 4,'access': 'read-write','description': 'Channel-1 AXI GPIO Data register','fields': {'Channel-1 GPIO DATA': {'bit_offset': 0,'bit_width': 4,'description': 'Channel-1 AXI GPIO Data register','access': 'read-write'}}},'GPIO_TRI': {'address_offset': 4,'size': 4,'access': 'read-write','description': 'Channel-1 AXI GPIO 3-State Control register','fields': {'Channel-1 GPIO TRI': {'bit_offset': 0,'bit_width': 4,'description': 'Channel-1 AXI GPIO 3-State Control register','access': 'read-write'}}},'GPIO2_DATA': {'address_offset': 8,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO Data register','fields': {'Channel-2 GPIO DATA': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO Data register','access': 'read-write'}}},'GPIO2_TRI': {'address_offset': 12,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO 3-State Control register','fields': {'Channel-2 GPIO TRI': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO 3-State Control register','access': 'read-write'}}},'GIER': {'address_offset': 284,'size': 32,'access': 'read-write','description': 'Global Interrupt Enable register','fields': {'Global Interrupt Enable': {'bit_offset': 31,'bit_width': 1,'description': 'Global Interrupt Enable register','access': 'read-write'}}},'IP_IER': {'address_offset': 296,'size': 32,'access': 'read-write','description': 'IP Interrupt Enable register','fields': {'Channel-1 Interrupt Enable': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'},'Channel-2 Interrupt Enable': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'}}},'IP_ISR': {'address_offset': 288,'size': 32,'access': 'read-write','description': 'IP Interrupt Status register','fields': {'Channel-1 Interrupt Status': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'},'Channel-2 Interrupt Status': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'}}}},'device': ,'driver': pynq.lib.axigpio.AxiGPIO},'switches': {'fullpath': 'switches','type': 'xilinx.com:ip:axi_gpio:2.0','bdtype': None,'state': None,'addr_range': 65536,'phys_addr': 1092681728,'mem_id': 'S_AXI','memtype': 'REGISTER','gpio': {},'interrupts': {},'parameters': {'C_FAMILY': 'zynq','C_S_AXI_ADDR_WIDTH': '9','C_S_AXI_DATA_WIDTH': '32','C_GPIO_WIDTH': '2','C_GPIO2_WIDTH': '32','C_ALL_INPUTS': '1','C_ALL_INPUTS_2': '0','C_ALL_OUTPUTS': '0','C_ALL_OUTPUTS_2': '0','C_INTERRUPT_PRESENT': '0','C_DOUT_DEFAULT': '0x00000000','C_TRI_DEFAULT': '0xFFFFFFFF','C_IS_DUAL': '0','C_DOUT_DEFAULT_2': '0x00000000','C_TRI_DEFAULT_2': '0xFFFFFFFF','Component_Name': 'pynq_tutorial_axi_gpio_0_1','USE_BOARD_FLOW': 'true','GPIO_BOARD_INTERFACE': 'sws_2bits','GPIO2_BOARD_INTERFACE': 'Custom','EDK_IPTYPE': 'PERIPHERAL','C_BASEADDR': '0x41210000','C_HIGHADDR': '0x4121FFFF'},'registers': {'GPIO_DATA': {'address_offset': 0,'size': 2,'access': 'read-write','description': 'Channel-1 AXI GPIO Data register','fields': {'Channel-1 GPIO DATA': {'bit_offset': 0,'bit_width': 2,'description': 'Channel-1 AXI GPIO Data register','access': 'read-write'}}},'GPIO_TRI': {'address_offset': 4,'size': 2,'access': 'read-write','description': 'Channel-1 AXI GPIO 3-State Control register','fields': {'Channel-1 GPIO TRI': {'bit_offset': 0,'bit_width': 2,'description': 'Channel-1 AXI GPIO 3-State Control register','access': 'read-write'}}},'GPIO2_DATA': {'address_offset': 8,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO Data register','fields': {'Channel-2 GPIO DATA': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO Data register','access': 'read-write'}}},'GPIO2_TRI': {'address_offset': 12,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO 3-State Control register','fields': {'Channel-2 GPIO TRI': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO 3-State Control register','access': 'read-write'}}},'GIER': {'address_offset': 284,'size': 32,'access': 'read-write','description': 'Global Interrupt Enable register','fields': {'Global Interrupt Enable': {'bit_offset': 31,'bit_width': 1,'description': 'Global Interrupt Enable register','access': 'read-write'}}},'IP_IER': {'address_offset': 296,'size': 32,'access': 'read-write','description': 'IP Interrupt Enable register','fields': {'Channel-1 Interrupt Enable': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'},'Channel-2 Interrupt Enable': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'}}},'IP_ISR': {'address_offset': 288,'size': 32,'access': 'read-write','description': 'IP Interrupt Status register','fields': {'Channel-1 Interrupt Status': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'},'Channel-2 Interrupt Status': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'}}}},'device': ,'driver': pynq.lib.axigpio.AxiGPIO},'leds': {'fullpath': 'leds','type': 'xilinx.com:ip:axi_gpio:2.0','bdtype': None,'state': None,'addr_range': 65536,'phys_addr': 1092747264,'mem_id': 'S_AXI','memtype': 'REGISTER','gpio': {},'interrupts': {},'parameters': {'C_FAMILY': 'zynq','C_S_AXI_ADDR_WIDTH': '9','C_S_AXI_DATA_WIDTH': '32','C_GPIO_WIDTH': '4','C_GPIO2_WIDTH': '32','C_ALL_INPUTS': '0','C_ALL_INPUTS_2': '0','C_ALL_OUTPUTS': '0','C_ALL_OUTPUTS_2': '0','C_INTERRUPT_PRESENT': '0','C_DOUT_DEFAULT': '0x00000000','C_TRI_DEFAULT': '0xFFFFFFFF','C_IS_DUAL': '0','C_DOUT_DEFAULT_2': '0x00000000','C_TRI_DEFAULT_2': '0xFFFFFFFF','Component_Name': 'pynq_tutorial_axi_gpio_0_2','USE_BOARD_FLOW': 'true','GPIO_BOARD_INTERFACE': 'leds_4bits','GPIO2_BOARD_INTERFACE': 'Custom','EDK_IPTYPE': 'PERIPHERAL','C_BASEADDR': '0x41220000','C_HIGHADDR': '0x4122FFFF'},'registers': {'GPIO_DATA': {'address_offset': 0,'size': 4,'access': 'read-write','description': 'Channel-1 AXI GPIO Data register','fields': {'Channel-1 GPIO DATA': {'bit_offset': 0,'bit_width': 4,'description': 'Channel-1 AXI GPIO Data register','access': 'read-write'}}},'GPIO_TRI': {'address_offset': 4,'size': 4,'access': 'read-write','description': 'Channel-1 AXI GPIO 3-State Control register','fields': {'Channel-1 GPIO TRI': {'bit_offset': 0,'bit_width': 4,'description': 'Channel-1 AXI GPIO 3-State Control register','access': 'read-write'}}},'GPIO2_DATA': {'address_offset': 8,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO Data register','fields': {'Channel-2 GPIO DATA': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO Data register','access': 'read-write'}}},'GPIO2_TRI': {'address_offset': 12,'size': 32,'access': 'read-write','description': 'Channel-2 AXI GPIO 3-State Control register','fields': {'Channel-2 GPIO TRI': {'bit_offset': 0,'bit_width': 32,'description': 'Channel-2 AXI GPIO 3-State Control register','access': 'read-write'}}},'GIER': {'address_offset': 284,'size': 32,'access': 'read-write','description': 'Global Interrupt Enable register','fields': {'Global Interrupt Enable': {'bit_offset': 31,'bit_width': 1,'description': 'Global Interrupt Enable register','access': 'read-write'}}},'IP_IER': {'address_offset': 296,'size': 32,'access': 'read-write','description': 'IP Interrupt Enable register','fields': {'Channel-1 Interrupt Enable': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'},'Channel-2 Interrupt Enable': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Enable register','access': 'read-write'}}},'IP_ISR': {'address_offset': 288,'size': 32,'access': 'read-write','description': 'IP Interrupt Status register','fields': {'Channel-1 Interrupt Status': {'bit_offset': 0,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'},'Channel-2 Interrupt Status': {'bit_offset': 1,'bit_width': 1,'description': 'IP Interrupt Status register','access': 'read-write'}}}},'device': ,'driver': pynq.lib.axigpio.AxiGPIO},'processing_system7_0': {'gpio': {},'interrupts': {},'parameters': {'C_EN_EMIO_PJTAG': '0','C_EN_EMIO_ENET0': '0','C_EN_EMIO_ENET1': '0','C_EN_EMIO_TRACE': '0','C_INCLUDE_TRACE_BUFFER': '0','C_TRACE_BUFFER_FIFO_SIZE': '128','USE_TRACE_DATA_EDGE_DETECTOR': '0','C_TRACE_PIPELINE_WIDTH': '8','C_TRACE_BUFFER_CLOCK_DELAY': '12','C_EMIO_GPIO_WIDTH': '64','C_INCLUDE_ACP_TRANS_CHECK': '0','C_USE_DEFAULT_ACP_USER_VAL': '0','C_S_AXI_ACP_ARUSER_VAL': '31','C_S_AXI_ACP_AWUSER_VAL': '31','C_M_AXI_GP0_ID_WIDTH': '12','C_M_AXI_GP0_ENABLE_STATIC_REMAP': '0','C_M_AXI_GP1_ID_WIDTH': '12','C_M_AXI_GP1_ENABLE_STATIC_REMAP': '0','C_S_AXI_GP0_ID_WIDTH': '6','C_S_AXI_GP1_ID_WIDTH': '6','C_S_AXI_ACP_ID_WIDTH': '3','C_S_AXI_HP0_ID_WIDTH': '6','C_S_AXI_HP0_DATA_WIDTH': '64','C_S_AXI_HP1_ID_WIDTH': '6','C_S_AXI_HP1_DATA_WIDTH': '64','C_S_AXI_HP2_ID_WIDTH': '6','C_S_AXI_HP2_DATA_WIDTH': '64','C_S_AXI_HP3_ID_WIDTH': '6','C_S_AXI_HP3_DATA_WIDTH': '64','C_M_AXI_GP0_THREAD_ID_WIDTH': '12','C_M_AXI_GP1_THREAD_ID_WIDTH': '12','C_NUM_F2P_INTR_INPUTS': '1','C_IRQ_F2P_MODE': 'DIRECT','C_DQ_WIDTH': '32','C_DQS_WIDTH': '4','C_DM_WIDTH': '4','C_MIO_PRIMITIVE': '54','C_TRACE_INTERNAL_WIDTH': '2','C_USE_AXI_NONSECURE': '0','C_USE_M_AXI_GP0': '1','C_USE_M_AXI_GP1': '0','C_USE_S_AXI_GP0': '0','C_USE_S_AXI_GP1': '0','C_USE_S_AXI_HP0': '0','C_USE_S_AXI_HP1': '0','C_USE_S_AXI_HP2': '0','C_USE_S_AXI_HP3': '0','C_USE_S_AXI_ACP': '0','C_PS7_SI_REV': 'PRODUCTION','C_FCLK_CLK0_BUF': 'TRUE','C_FCLK_CLK1_BUF': 'FALSE','C_FCLK_CLK2_BUF': 'FALSE','C_FCLK_CLK3_BUF': 'FALSE','C_PACKAGE_NAME': 'clg400','C_GP0_EN_MODIFIABLE_TXN': '1','C_GP1_EN_MODIFIABLE_TXN': '1','PCW_DDR_RAM_BASEADDR': '0x00100000','PCW_DDR_RAM_HIGHADDR': '0x1FFFFFFF','PCW_UART0_BASEADDR': '0xE0000000','PCW_UART0_HIGHADDR': '0xE0000FFF','PCW_UART1_BASEADDR': '0xE0001000','PCW_UART1_HIGHADDR': '0xE0001FFF','PCW_I2C0_BASEADDR': '0xE0004000','PCW_I2C0_HIGHADDR': '0xE0004FFF','PCW_I2C1_BASEADDR': '0xE0005000','PCW_I2C1_HIGHADDR': '0xE0005FFF','PCW_SPI0_BASEADDR': '0xE0006000','PCW_SPI0_HIGHADDR': '0xE0006FFF','PCW_SPI1_BASEADDR': '0xE0007000','PCW_SPI1_HIGHADDR': '0xE0007FFF','PCW_CAN0_BASEADDR': '0xE0008000','PCW_CAN0_HIGHADDR': '0xE0008FFF','PCW_CAN1_BASEADDR': '0xE0009000','PCW_CAN1_HIGHADDR': '0xE0009FFF','PCW_GPIO_BASEADDR': '0xE000A000','PCW_GPIO_HIGHADDR': '0xE000AFFF','PCW_ENET0_BASEADDR': '0xE000B000','PCW_ENET0_HIGHADDR': '0xE000BFFF','PCW_ENET1_BASEADDR': '0xE000C000','PCW_ENET1_HIGHADDR': '0xE000CFFF','PCW_SDIO0_BASEADDR': '0xE0100000','PCW_SDIO0_HIGHADDR': '0xE0100FFF','PCW_SDIO1_BASEADDR': '0xE0101000','PCW_SDIO1_HIGHADDR': '0xE0101FFF','PCW_USB0_BASEADDR': '0xE0102000','PCW_USB0_HIGHADDR': '0xE0102fff','PCW_USB1_BASEADDR': '0xE0103000','PCW_USB1_HIGHADDR': '0xE0103fff','PCW_TTC0_BASEADDR': '0xE0104000','PCW_TTC0_HIGHADDR': '0xE0104fff','PCW_TTC1_BASEADDR': '0xE0105000','PCW_TTC1_HIGHADDR': '0xE0105fff','PCW_FCLK_CLK0_BUF': 'TRUE','PCW_FCLK_CLK1_BUF': 'FALSE','PCW_FCLK_CLK2_BUF': 'FALSE','PCW_FCLK_CLK3_BUF': 'FALSE','PCW_UIPARAM_DDR_FREQ_MHZ': '525','PCW_UIPARAM_DDR_BANK_ADDR_COUNT': '3','PCW_UIPARAM_DDR_ROW_ADDR_COUNT': '15','PCW_UIPARAM_DDR_COL_ADDR_COUNT': '10','PCW_UIPARAM_DDR_CL': '7','PCW_UIPARAM_DDR_CWL': '6','PCW_UIPARAM_DDR_T_RCD': '7','PCW_UIPARAM_DDR_T_RP': '7','PCW_UIPARAM_DDR_T_RC': '48.91','PCW_UIPARAM_DDR_T_RAS_MIN': '35.0','PCW_UIPARAM_DDR_T_FAW': '40.0','PCW_UIPARAM_DDR_AL': '0','PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_0': '-0.051','PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_1': '-0.006','PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_2': '-0.009','PCW_UIPARAM_DDR_DQS_TO_CLK_DELAY_3': '-0.033','PCW_UIPARAM_DDR_BOARD_DELAY0': '0.279','PCW_UIPARAM_DDR_BOARD_DELAY1': '0.260','PCW_UIPARAM_DDR_BOARD_DELAY2': '0.085','PCW_UIPARAM_DDR_BOARD_DELAY3': '0.092','PCW_UIPARAM_DDR_DQS_0_LENGTH_MM': '32.14','PCW_UIPARAM_DDR_DQS_1_LENGTH_MM': '31.12','PCW_UIPARAM_DDR_DQS_2_LENGTH_MM': '0','PCW_UIPARAM_DDR_DQS_3_LENGTH_MM': '0','PCW_UIPARAM_DDR_DQ_0_LENGTH_MM': '32.2','PCW_UIPARAM_DDR_DQ_1_LENGTH_MM': '31.08','PCW_UIPARAM_DDR_DQ_2_LENGTH_MM': '0','PCW_UIPARAM_DDR_DQ_3_LENGTH_MM': '0','PCW_UIPARAM_DDR_CLOCK_0_LENGTH_MM': '27.95','PCW_UIPARAM_DDR_CLOCK_1_LENGTH_MM': '27.95','PCW_UIPARAM_DDR_CLOCK_2_LENGTH_MM': '0','PCW_UIPARAM_DDR_CLOCK_3_LENGTH_MM': '0','PCW_UIPARAM_DDR_DQS_0_PACKAGE_LENGTH': '105.056','PCW_UIPARAM_DDR_DQS_1_PACKAGE_LENGTH': '66.904','PCW_UIPARAM_DDR_DQS_2_PACKAGE_LENGTH': '89.1715','PCW_UIPARAM_DDR_DQS_3_PACKAGE_LENGTH': '113.63','PCW_UIPARAM_DDR_DQ_0_PACKAGE_LENGTH': '98.503','PCW_UIPARAM_DDR_DQ_1_PACKAGE_LENGTH': '68.5855','PCW_UIPARAM_DDR_DQ_2_PACKAGE_LENGTH': '90.295','PCW_UIPARAM_DDR_DQ_3_PACKAGE_LENGTH': '103.977','PCW_UIPARAM_DDR_CLOCK_0_PACKAGE_LENGTH': '80.4535','PCW_UIPARAM_DDR_CLOCK_1_PACKAGE_LENGTH': '80.4535','PCW_UIPARAM_DDR_CLOCK_2_PACKAGE_LENGTH': '80.4535','PCW_UIPARAM_DDR_CLOCK_3_PACKAGE_LENGTH': '80.4535','PCW_UIPARAM_DDR_DQS_0_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQS_1_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQS_2_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQS_3_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQ_0_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQ_1_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQ_2_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_DQ_3_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_CLOCK_0_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_CLOCK_1_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_CLOCK_2_PROPOGATION_DELAY': '160','PCW_UIPARAM_DDR_CLOCK_3_PROPOGATION_DELAY': '160','PCW_PACKAGE_DDR_DQS_TO_CLK_DELAY_0': '-0.051','PCW_PACKAGE_DDR_DQS_TO_CLK_DELAY_1': '-0.006','PCW_PACKAGE_DDR_DQS_TO_CLK_DELAY_2': '-0.009','PCW_PACKAGE_DDR_DQS_TO_CLK_DELAY_3': '-0.033','PCW_PACKAGE_DDR_BOARD_DELAY0': '0.279','PCW_PACKAGE_DDR_BOARD_DELAY1': '0.260','PCW_PACKAGE_DDR_BOARD_DELAY2': '0.085','PCW_PACKAGE_DDR_BOARD_DELAY3': '0.092','PCW_CPU_CPU_6X4X_MAX_RANGE': '667','PCW_CRYSTAL_PERIPHERAL_FREQMHZ': '50','PCW_APU_PERIPHERAL_FREQMHZ': '650','PCW_DCI_PERIPHERAL_FREQMHZ': '10.159','PCW_QSPI_PERIPHERAL_FREQMHZ': '200','PCW_SMC_PERIPHERAL_FREQMHZ': '100','PCW_USB0_PERIPHERAL_FREQMHZ': '60','PCW_USB1_PERIPHERAL_FREQMHZ': '60','PCW_SDIO_PERIPHERAL_FREQMHZ': '50','PCW_UART_PERIPHERAL_FREQMHZ': '100','PCW_SPI_PERIPHERAL_FREQMHZ': '166.666666','PCW_CAN_PERIPHERAL_FREQMHZ': '100','PCW_CAN0_PERIPHERAL_FREQMHZ': '-1','PCW_CAN1_PERIPHERAL_FREQMHZ': '-1','PCW_I2C_PERIPHERAL_FREQMHZ': '25','PCW_WDT_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC_PERIPHERAL_FREQMHZ': '50','PCW_TTC0_CLK0_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC0_CLK1_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC0_CLK2_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC1_CLK0_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC1_CLK1_PERIPHERAL_FREQMHZ': '133.333333','PCW_TTC1_CLK2_PERIPHERAL_FREQMHZ': '133.333333','PCW_PCAP_PERIPHERAL_FREQMHZ': '200','PCW_TPIU_PERIPHERAL_FREQMHZ': '200','PCW_FPGA0_PERIPHERAL_FREQMHZ': '100','PCW_FPGA1_PERIPHERAL_FREQMHZ': '50','PCW_FPGA2_PERIPHERAL_FREQMHZ': '50','PCW_FPGA3_PERIPHERAL_FREQMHZ': '50','PCW_ACT_APU_PERIPHERAL_FREQMHZ': '650.000000','PCW_UIPARAM_ACT_DDR_FREQ_MHZ': '525.000000','PCW_ACT_DCI_PERIPHERAL_FREQMHZ': '10.096154','PCW_ACT_QSPI_PERIPHERAL_FREQMHZ': '200.000000','PCW_ACT_SMC_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_ENET0_PERIPHERAL_FREQMHZ': '125.000000','PCW_ACT_ENET1_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_USB0_PERIPHERAL_FREQMHZ': '60','PCW_ACT_USB1_PERIPHERAL_FREQMHZ': '60','PCW_ACT_SDIO_PERIPHERAL_FREQMHZ': '50.000000','PCW_ACT_UART_PERIPHERAL_FREQMHZ': '100.000000','PCW_ACT_SPI_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_CAN_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_CAN0_PERIPHERAL_FREQMHZ': '23.8095','PCW_ACT_CAN1_PERIPHERAL_FREQMHZ': '23.8095','PCW_ACT_I2C_PERIPHERAL_FREQMHZ': '50','PCW_ACT_WDT_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC_PERIPHERAL_FREQMHZ': '50','PCW_ACT_PCAP_PERIPHERAL_FREQMHZ': '200.000000','PCW_ACT_TPIU_PERIPHERAL_FREQMHZ': '200.000000','PCW_ACT_FPGA0_PERIPHERAL_FREQMHZ': '100.000000','PCW_ACT_FPGA1_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_FPGA2_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_FPGA3_PERIPHERAL_FREQMHZ': '10.000000','PCW_ACT_TTC0_CLK0_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC0_CLK1_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC0_CLK2_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC1_CLK0_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC1_CLK1_PERIPHERAL_FREQMHZ': '108.333336','PCW_ACT_TTC1_CLK2_PERIPHERAL_FREQMHZ': '108.333336','PCW_CLK0_FREQ': '100000000','PCW_CLK1_FREQ': '10000000','PCW_CLK2_FREQ': '10000000','PCW_CLK3_FREQ': '10000000','PCW_OVERRIDE_BASIC_CLOCK': '0','PCW_CPU_PERIPHERAL_DIVISOR0': '2','PCW_DDR_PERIPHERAL_DIVISOR0': '2','PCW_SMC_PERIPHERAL_DIVISOR0': '1','PCW_QSPI_PERIPHERAL_DIVISOR0': '5','PCW_SDIO_PERIPHERAL_DIVISOR0': '20','PCW_UART_PERIPHERAL_DIVISOR0': '10','PCW_SPI_PERIPHERAL_DIVISOR0': '1','PCW_CAN_PERIPHERAL_DIVISOR0': '1','PCW_CAN_PERIPHERAL_DIVISOR1': '1','PCW_FCLK0_PERIPHERAL_DIVISOR0': '5','PCW_FCLK1_PERIPHERAL_DIVISOR0': '1','PCW_FCLK2_PERIPHERAL_DIVISOR0': '1','PCW_FCLK3_PERIPHERAL_DIVISOR0': '1','PCW_FCLK0_PERIPHERAL_DIVISOR1': '2','PCW_FCLK1_PERIPHERAL_DIVISOR1': '1','PCW_FCLK2_PERIPHERAL_DIVISOR1': '1','PCW_FCLK3_PERIPHERAL_DIVISOR1': '1','PCW_ENET0_PERIPHERAL_DIVISOR0': '8','PCW_ENET1_PERIPHERAL_DIVISOR0': '1','PCW_ENET0_PERIPHERAL_DIVISOR1': '1','PCW_ENET1_PERIPHERAL_DIVISOR1': '1','PCW_TPIU_PERIPHERAL_DIVISOR0': '1','PCW_DCI_PERIPHERAL_DIVISOR0': '52','PCW_DCI_PERIPHERAL_DIVISOR1': '2','PCW_PCAP_PERIPHERAL_DIVISOR0': '5','PCW_TTC0_CLK0_PERIPHERAL_DIVISOR0': '1','PCW_TTC0_CLK1_PERIPHERAL_DIVISOR0': '1','PCW_TTC0_CLK2_PERIPHERAL_DIVISOR0': '1','PCW_TTC1_CLK0_PERIPHERAL_DIVISOR0': '1','PCW_TTC1_CLK1_PERIPHERAL_DIVISOR0': '1','PCW_TTC1_CLK2_PERIPHERAL_DIVISOR0': '1','PCW_WDT_PERIPHERAL_DIVISOR0': '1','PCW_ARMPLL_CTRL_FBDIV': '26','PCW_IOPLL_CTRL_FBDIV': '20','PCW_DDRPLL_CTRL_FBDIV': '21','PCW_CPU_CPU_PLL_FREQMHZ': '1300.000','PCW_IO_IO_PLL_FREQMHZ': '1000.000','PCW_DDR_DDR_PLL_FREQMHZ': '1050.000','PCW_SMC_PERIPHERAL_VALID': '0','PCW_SDIO_PERIPHERAL_VALID': '1','PCW_SPI_PERIPHERAL_VALID': '0','PCW_CAN_PERIPHERAL_VALID': '0','PCW_UART_PERIPHERAL_VALID': '1','PCW_EN_EMIO_CAN0': '0','PCW_EN_EMIO_CAN1': '0','PCW_EN_EMIO_ENET0': '0','PCW_EN_EMIO_ENET1': '0','PCW_EN_PTP_ENET0': '0','PCW_EN_PTP_ENET1': '0','PCW_EN_EMIO_GPIO': '0','PCW_EN_EMIO_I2C0': '0','PCW_EN_EMIO_I2C1': '0','PCW_EN_EMIO_PJTAG': '0','PCW_EN_EMIO_SDIO0': '0','PCW_EN_EMIO_CD_SDIO0': '0','PCW_EN_EMIO_WP_SDIO0': '0','PCW_EN_EMIO_SDIO1': '0','PCW_EN_EMIO_CD_SDIO1': '0','PCW_EN_EMIO_WP_SDIO1': '0','PCW_EN_EMIO_SPI0': '0','PCW_EN_EMIO_SPI1': '0','PCW_EN_EMIO_UART0': '0','PCW_EN_EMIO_UART1': '0','PCW_EN_EMIO_MODEM_UART0': '0','PCW_EN_EMIO_MODEM_UART1': '0','PCW_EN_EMIO_TTC0': '0','PCW_EN_EMIO_TTC1': '0','PCW_EN_EMIO_WDT': '0','PCW_EN_EMIO_TRACE': '0','PCW_USE_AXI_NONSECURE': '0','PCW_USE_M_AXI_GP0': '1','PCW_USE_M_AXI_GP1': '0','PCW_USE_S_AXI_GP0': '0','PCW_USE_S_AXI_GP1': '0','PCW_USE_S_AXI_ACP': '0','PCW_USE_S_AXI_HP0': '0','PCW_USE_S_AXI_HP1': '0','PCW_USE_S_AXI_HP2': '0','PCW_USE_S_AXI_HP3': '0','PCW_M_AXI_GP0_FREQMHZ': '10','PCW_M_AXI_GP1_FREQMHZ': '10','PCW_S_AXI_GP0_FREQMHZ': '10','PCW_S_AXI_GP1_FREQMHZ': '10','PCW_S_AXI_ACP_FREQMHZ': '10','PCW_S_AXI_HP0_FREQMHZ': '10','PCW_S_AXI_HP1_FREQMHZ': '10','PCW_S_AXI_HP2_FREQMHZ': '10','PCW_S_AXI_HP3_FREQMHZ': '10','PCW_USE_DMA0': '0','PCW_USE_DMA1': '0','PCW_USE_DMA2': '0','PCW_USE_DMA3': '0','PCW_USE_TRACE': '0','PCW_TRACE_PIPELINE_WIDTH': '8','PCW_INCLUDE_TRACE_BUFFER': '0','PCW_TRACE_BUFFER_FIFO_SIZE': '128','PCW_USE_TRACE_DATA_EDGE_DETECTOR': '0','PCW_TRACE_BUFFER_CLOCK_DELAY': '12','PCW_USE_CROSS_TRIGGER': '0','PCW_FTM_CTI_IN0': '','PCW_FTM_CTI_IN2': '','PCW_FTM_CTI_OUT0': '','PCW_FTM_CTI_OUT2': '','PCW_USE_DEBUG': '0','PCW_USE_CR_FABRIC': '1','PCW_USE_AXI_FABRIC_IDLE': '0','PCW_USE_DDR_BYPASS': '0','PCW_USE_FABRIC_INTERRUPT': '0','PCW_USE_PROC_EVENT_BUS': '0','PCW_USE_EXPANDED_IOP': '0','PCW_USE_HIGH_OCM': '0','PCW_USE_PS_SLCR_REGISTERS': '0','PCW_USE_EXPANDED_PS_SLCR_REGISTERS': '0','PCW_USE_CORESIGHT': '0','PCW_EN_EMIO_SRAM_INT': '0','PCW_GPIO_EMIO_GPIO_WIDTH': '64','PCW_GP0_NUM_WRITE_THREADS': '4','PCW_GP0_NUM_READ_THREADS': '4','PCW_GP1_NUM_WRITE_THREADS': '4','PCW_GP1_NUM_READ_THREADS': '4','PCW_UART0_BAUD_RATE': '115200','PCW_UART1_BAUD_RATE': '115200','PCW_EN_4K_TIMER': '0','PCW_M_AXI_GP0_ID_WIDTH': '12','PCW_M_AXI_GP0_ENABLE_STATIC_REMAP': '0','PCW_M_AXI_GP0_SUPPORT_NARROW_BURST': '0','PCW_M_AXI_GP0_THREAD_ID_WIDTH': '12','PCW_M_AXI_GP1_ID_WIDTH': '12','PCW_M_AXI_GP1_ENABLE_STATIC_REMAP': '0','PCW_M_AXI_GP1_SUPPORT_NARROW_BURST': '0','PCW_M_AXI_GP1_THREAD_ID_WIDTH': '12','PCW_S_AXI_GP0_ID_WIDTH': '6','PCW_S_AXI_GP1_ID_WIDTH': '6','PCW_S_AXI_ACP_ID_WIDTH': '3','PCW_INCLUDE_ACP_TRANS_CHECK': '0','PCW_USE_DEFAULT_ACP_USER_VAL': '0','PCW_S_AXI_ACP_ARUSER_VAL': '31','PCW_S_AXI_ACP_AWUSER_VAL': '31','PCW_S_AXI_HP0_ID_WIDTH': '6','PCW_S_AXI_HP0_DATA_WIDTH': '64','PCW_S_AXI_HP1_ID_WIDTH': '6','PCW_S_AXI_HP1_DATA_WIDTH': '64','PCW_S_AXI_HP2_ID_WIDTH': '6','PCW_S_AXI_HP2_DATA_WIDTH': '64','PCW_S_AXI_HP3_ID_WIDTH': '6','PCW_S_AXI_HP3_DATA_WIDTH': '64','PCW_NUM_F2P_INTR_INPUTS': '1','PCW_EN_DDR': '1','PCW_EN_SMC': '0','PCW_EN_QSPI': '1','PCW_EN_CAN0': '0','PCW_EN_CAN1': '0','PCW_EN_ENET0': '1','PCW_EN_ENET1': '0','PCW_EN_GPIO': '1','PCW_EN_I2C0': '0','PCW_EN_I2C1': '0','PCW_EN_PJTAG': '0','PCW_EN_SDIO0': '1','PCW_EN_SDIO1': '0','PCW_EN_SPI0': '0','PCW_EN_SPI1': '0','PCW_EN_UART0': '1','PCW_EN_UART1': '0','PCW_EN_MODEM_UART0': '0','PCW_EN_MODEM_UART1': '0','PCW_EN_TTC0': '0','PCW_EN_TTC1': '0','PCW_EN_WDT': '0','PCW_EN_TRACE': '0','PCW_EN_USB0': '1','PCW_EN_USB1': '0','PCW_DQ_WIDTH': '32','PCW_DQS_WIDTH': '4','PCW_DM_WIDTH': '4','PCW_MIO_PRIMITIVE': '54','PCW_EN_CLK0_PORT': '1','PCW_EN_CLK1_PORT': '0','PCW_EN_CLK2_PORT': '0','PCW_EN_CLK3_PORT': '0','PCW_EN_RST0_PORT': '1','PCW_EN_RST1_PORT': '0','PCW_EN_RST2_PORT': '0','PCW_EN_RST3_PORT': '0','PCW_EN_CLKTRIG0_PORT': '0','PCW_EN_CLKTRIG1_PORT': '0','PCW_EN_CLKTRIG2_PORT': '0','PCW_EN_CLKTRIG3_PORT': '0','PCW_P2F_DMAC_ABORT_INTR': '0','PCW_P2F_DMAC0_INTR': '0','PCW_P2F_DMAC1_INTR': '0','PCW_P2F_DMAC2_INTR': '0','PCW_P2F_DMAC3_INTR': '0','PCW_P2F_DMAC4_INTR': '0','PCW_P2F_DMAC5_INTR': '0','PCW_P2F_DMAC6_INTR': '0','PCW_P2F_DMAC7_INTR': '0','PCW_P2F_SMC_INTR': '0','PCW_P2F_QSPI_INTR': '0','PCW_P2F_CTI_INTR': '0','PCW_P2F_GPIO_INTR': '0','PCW_P2F_USB0_INTR': '0','PCW_P2F_ENET0_INTR': '0','PCW_P2F_SDIO0_INTR': '0','PCW_P2F_I2C0_INTR': '0','PCW_P2F_SPI0_INTR': '0','PCW_P2F_UART0_INTR': '0','PCW_P2F_CAN0_INTR': '0','PCW_P2F_USB1_INTR': '0','PCW_P2F_ENET1_INTR': '0','PCW_P2F_SDIO1_INTR': '0','PCW_P2F_I2C1_INTR': '0','PCW_P2F_SPI1_INTR': '0','PCW_P2F_UART1_INTR': '0','PCW_P2F_CAN1_INTR': '0','PCW_IRQ_F2P_INTR': '0','PCW_IRQ_F2P_MODE': 'DIRECT','PCW_CORE0_FIQ_INTR': '0','PCW_CORE0_IRQ_INTR': '0','PCW_CORE1_FIQ_INTR': '0','PCW_CORE1_IRQ_INTR': '0','PCW_VALUE_SILVERSION': '3','PCW_GP0_EN_MODIFIABLE_TXN': '1','PCW_GP1_EN_MODIFIABLE_TXN': '1','PCW_IMPORT_BOARD_PRESET': 'None','PCW_PERIPHERAL_BOARD_PRESET': 'None','PCW_PRESET_BANK0_VOLTAGE': 'LVCMOS 3.3V','PCW_PRESET_BANK1_VOLTAGE': 'LVCMOS 1.8V','PCW_UIPARAM_DDR_ENABLE': '1','PCW_UIPARAM_DDR_ADV_ENABLE': '0','PCW_UIPARAM_DDR_MEMORY_TYPE': 'DDR 3','PCW_UIPARAM_DDR_ECC': 'Disabled','PCW_UIPARAM_DDR_BUS_WIDTH': '16 Bit','PCW_UIPARAM_DDR_BL': '8','PCW_UIPARAM_DDR_HIGH_TEMP': 'Normal (0-85)','PCW_UIPARAM_DDR_PARTNO': 'MT41J256M16 RE-125','PCW_UIPARAM_DDR_DRAM_WIDTH': '16 Bits','PCW_UIPARAM_DDR_DEVICE_CAPACITY': '4096 MBits','PCW_UIPARAM_DDR_SPEED_BIN': 'DDR3_1066F','PCW_UIPARAM_DDR_TRAIN_WRITE_LEVEL': '1','PCW_UIPARAM_DDR_TRAIN_READ_GATE': '1','PCW_UIPARAM_DDR_TRAIN_DATA_EYE': '1','PCW_UIPARAM_DDR_CLOCK_STOP_EN': '0','PCW_UIPARAM_DDR_USE_INTERNAL_VREF': '0','PCW_DDR_PRIORITY_WRITEPORT_0': '','PCW_DDR_PRIORITY_WRITEPORT_2': '','PCW_DDR_PRIORITY_READPORT_0': '','PCW_DDR_PRIORITY_READPORT_2': '','PCW_DDR_PORT0_HPR_ENABLE': '0','PCW_DDR_PORT1_HPR_ENABLE': '0','PCW_DDR_PORT2_HPR_ENABLE': '0','PCW_DDR_PORT3_HPR_ENABLE': '0','PCW_DDR_HPRLPR_QUEUE_PARTITION': 'HPR(0)/LPR(32)','PCW_DDR_LPR_TO_CRITICAL_PRIORITY_LEVEL': '2','PCW_DDR_HPR_TO_CRITICAL_PRIORITY_LEVEL': '15','PCW_DDR_WRITE_TO_CRITICAL_PRIORITY_LEVEL': '2','PCW_NAND_PERIPHERAL_ENABLE': '0','PCW_NAND_NAND_IO': '','PCW_NOR_PERIPHERAL_ENABLE': '0','PCW_NOR_NOR_IO': '','PCW_NOR_GRP_CS0_ENABLE': '0','PCW_NOR_GRP_CS0_IO': '','PCW_NOR_GRP_CS1_ENABLE': '0','PCW_NOR_GRP_CS1_IO': '','PCW_NOR_GRP_SRAM_INT_ENABLE': '0','PCW_NOR_GRP_SRAM_INT_IO': '','PCW_SINGLE_QSPI_DATA_MODE': 'x4','PCW_DUAL_STACK_QSPI_DATA_MODE': '','PCW_QSPI_GRP_IO1_ENABLE': '0','PCW_QSPI_GRP_IO1_IO': '','PCW_ENET1_GRP_MDIO_ENABLE': '0','PCW_ENET1_GRP_MDIO_IO': '','PCW_SD0_PERIPHERAL_ENABLE': '1','PCW_SD0_SD0_IO': 'MIO 40 .. 45','PCW_SD0_GRP_CD_ENABLE': '1','PCW_SD0_GRP_CD_IO': 'MIO 47','PCW_SD0_GRP_WP_ENABLE': '0','PCW_SD0_GRP_WP_IO': '','PCW_SD1_PERIPHERAL_ENABLE': '0','PCW_SD1_SD1_IO': '','PCW_SD1_GRP_WP_ENABLE': '0','PCW_SD1_GRP_WP_IO': '','PCW_UART0_PERIPHERAL_ENABLE': '1','PCW_UART0_UART0_IO': 'MIO 14 .. 15','PCW_UART0_GRP_FULL_ENABLE': '0','PCW_UART0_GRP_FULL_IO': '','PCW_UART1_GRP_FULL_ENABLE': '0','PCW_UART1_GRP_FULL_IO': '','PCW_SPI0_GRP_SS0_ENABLE': '0','PCW_SPI0_GRP_SS0_IO': '','PCW_SPI0_GRP_SS2_ENABLE': '0','PCW_SPI0_GRP_SS2_IO': '','PCW_SPI1_GRP_SS0_ENABLE': '0','PCW_SPI1_GRP_SS0_IO': '','PCW_SPI1_GRP_SS2_ENABLE': '0','PCW_SPI1_GRP_SS2_IO': '','PCW_CAN0_GRP_CLK_ENABLE': '0','PCW_CAN0_GRP_CLK_IO': '','PCW_CAN1_GRP_CLK_ENABLE': '0','PCW_CAN1_GRP_CLK_IO': '','PCW_TRACE_GRP_2BIT_ENABLE': '0','PCW_TRACE_GRP_2BIT_IO': '','PCW_TRACE_GRP_8BIT_ENABLE': '0','PCW_TRACE_GRP_8BIT_IO': '','PCW_TRACE_GRP_32BIT_ENABLE': '0','PCW_TRACE_GRP_32BIT_IO': '','PCW_TTC0_PERIPHERAL_ENABLE': '0','PCW_TTC0_TTC0_IO': '','PCW_PJTAG_PERIPHERAL_ENABLE': '0','PCW_PJTAG_PJTAG_IO': '','PCW_USB1_RESET_ENABLE': '0','PCW_USB1_RESET_IO': '','PCW_I2C0_GRP_INT_ENABLE': '0','PCW_I2C0_GRP_INT_IO': '','PCW_I2C1_PERIPHERAL_ENABLE': '0','PCW_I2C1_I2C1_IO': '','PCW_I2C_RESET_ENABLE': '1','PCW_I2C_RESET_SELECT': '','PCW_GPIO_PERIPHERAL_ENABLE': '0','PCW_GPIO_MIO_GPIO_ENABLE': '1','PCW_GPIO_MIO_GPIO_IO': 'MIO','PCW_GPIO_EMIO_GPIO_ENABLE': '0','PCW_GPIO_EMIO_GPIO_IO': '