To add and configure IP addresses, follow these steps.
Right-click the block diagram and select Add IP from the IP catalog.
Search for AXI GPIO and double-click the AXI GPIO IP to add it to your design.
Add another instance of the AXI GPIO IP into the design.
Search for AXI Uartlite in the IP catalog and add it into the design.
Click Run Connection Automation in the Block Design view.
The Run Connection Automation dialog box opens.
In the Run Connection Automation dialog box, select the All Automation check box.
This checks the automation for all the ports of the AXI GPIO IP.
Click GPIO of axi_gpio_0 and set the Select Board Part Interface to Custom as shown below.
Click S_AXI of axi_gpio_0. Set the configurations as shown in the following figure:
Repeat previous step 7 and Step 8 for axi_gpio_1.
Click S_AXI of axi_uartlite_0. Set the configurations as shown in the following figure:
This configuration sets the following connections:
Connects the S_AXI of AXI_GPIO and AXI Uartlite to M_AXI_FPD of CIPS with SmartConnect as a bridge IP between CIPS and AXI GPIO IPs.
Enables the processor system reset IP.
Connects the pl0_ref_clk to the processor system reset, AXI GPIO, and the SmartConnect IP clocks.
Connects the reset of the SmartConnect and AXI GPIO to the peripheral_aresetn of the processor system reset IP.
Click UART of axi_uartlite_0. Set the configurations as shown in the following figure:
Click OK.
Click Run Connection Automation in the block design window and select the All Automation check box.
Click ext_reset_in and configure the setting as shown below.
This connects the ext_reset_in of the processor system reset IP to the pl_resetn of the CIPS.
Click OK.
Disconnect the aresetn of SmartConnect IP from peripheral_aresetn of processor system reset IP.
Connect the aresetn of SmartConnect IP to interconnect_aresetn of processor system reset IP.
Double-click the axi_gpio_0 IP to open it.
Go to the IP Configuration tab and configure the settings as shown in the following figure.
Make the same setting for axi_gpio_1.
Add four more instances of Slice IP.
Delete the external pins of the AXI GPIO IP and expand the interfaces.
Connect the output pin gpio_io_0 of axi_gpio_0 to slice 0 and slice 1.
Similarly, connect the output pin gpio_io_0 of axi_gpio_1 to slice 2 and slice 3.
Make the output of Slice IP as External.
Configure each Slice IP as shown below.
Double-click axi_uartlite_0 to open the IP.
In the Board tab, set Board interface as shown below:
Go to the IP Configuration tab and configure the settings as shown in the following figure.
Add Clock Wizard IP. Double-click to open the IP.
Go to Clocking Features tab and set the configuration as shown below:
Make sure the Source option in Input Clock Information is set to Global buffer.
Go to Output clocks tab and configure as follows:
Right-click pl0_ref_clk of CIPS and click Disconnect Pin.
Connect the pl0_ref_clk from CIPS to input clk_in1 of the Clocking wizard.
Connect the output of clocking wizard to slowest_sync_clock of Processor System Reset IP.
This will help in avoiding timing failure.
The overall block design is shown in the following figure: