Part 3: Implementation of GPIO via EMIO in All Programmable SoC (AP SoC) Zynq 7000

Abstract: In this tutorial, ZedBoard is used to implement GPIO via EMIO. Here, the GPIOs i.e., 5 buttons, 8 sliding switches, 8 LEDs, and Pmod A B C D which are not directly accessible in PS of ZedBoard are used. These GPIOs are controlled and monitored by PS through PL via EMIO interface.

Implementation: The block diagram illustrated in following figure provides an overview of implementation


The PS in ZedBoard can communicate with PL via EMIO interface. The PS uses Bank 2 ( Pins 54–85 ) and 3 ((Pins 86–117 ) to access and configure the EMIO interface. Each 32-bit bank independently controls 32 EMIO pins with each pin can be configured either input or output at a time. The EMIO pins are wired to PL, communicating with buttons, LEDs, sliding switches and PMODs.

The TCL file available in the following GitHub link can be used to generate the EMIO relatd hardware files (i.e., bitstream file) in Vivado. The SDK project containing the C driver files of EMIO interfaces are available in this GitHub Link. Each link has read me files instructing to build the complete project.

The video given below explains all the steps needed to implement GPIO via EMIO interfaces in ZedBoard.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s