0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ZYNQ7000系列MIO/EMIO/AXI_GPIO接口

OpenFPGA 来源:OpenFPGA 2020-08-27 14:30 次阅读

PS部分框图如上图所示,PS 和外部接口之间的通信主要是通过复用的输入 / 输出( Multiplexed Input/Output,MIO)实现的,它提供了可以做灵活配置的 54 个引脚,这表明外部设备和引脚之间的映射是可以按需定义的。这样的连接也可以通过扩展 MIO (ExtendedMIO,EMIO)来实现,EMIO 并不是 PS 和外部连接之间的直接通路,而是通过共用了PL 的 I/O 资源来实现的 。这些都出现在上图的左侧。当需要扩展超过 54 个引脚的时候可以用 EMIO,而当 PL 中实现了一个 IP 包的时候,这也是 PS 和 PL 中的IP 包接口的一种方法。

可用的 I/O 包括标准通信接口和通用输入 / 输出 (General Purpose Input/Output,GPIO),GPIO 可以用做各种用途,包括简单的按钮、开关和 LED

在ZYNQ7000系列PS中除了上面提到的MIO和EMIO之外,还包括AXI_GPIO。

这三者关系如下:

其中MIO和EMIO是直接挂在PS上的GPIO。而AXI_GPIO是通过AXI总线挂在PS上的GPIO上。

我们先看一下MIO和EMIO:下图EMIO和MIO的结构。其中MIO分布在BANK0,BANK1,而EMIO则分布在BANK2、BANK3。

注意一下几项:

首先、MIO在zynq上的管脚是固定的,而EMIO,是通过PL部分扩展的,所以使用EMIO时候需要在约束文件中分配管脚,所以设计EMIO的程序时,需要生成PL部分的bit文件,烧写到FPGA中。

其次、由下图可以看出MIO共占54bit,而EMIO占64bit。其中MIO占用IO号为0-53。而EMIO占用IO号为54-117。

再者、无论是EMIO还是MIO都属于PS上的IO,直接由PS操作。在调用头文件,只调用#include "xgpiops.h"即可,而在调用AXI_GPIO时,则需要#include "xgpio.h"。

关于EMIO:

从 PS 出来,有几种连接可以经由 PL 到外部接口上,这被称作扩展的 MIO (Extended MIO) ,即 EMIO。

EMIO 涉及到两个域之间的信号传输,是由一组简单的导线连接实现的,因此,EMIO 并不支持所有的 MIO 接口,而支持的那些中,也有些的能力受到了限制 。这些连接被安排成两个 32 位的组。

很多情况下,经由 EMIO 的接口是直接连接到所需的 PL 的外部引脚上的,这个连接是由一个约束(描述)文件中的条目所指定的。在这个模式下,EMIO 可以实现额外的 64 个输入线和 64 个带有输出始能的输出线。另一个选择是用 EMIO 来连接PS 和 PL 里的外设模块。下图描绘了这两种使用模式:

最后看一下,AXI_GPIO相当于GPIO的IP核,我们调用时是占用相应AXI总线地址空间,如下图,占用地址为0x41200000和0x41210000

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    8633

    浏览量

    151361
  • 引脚
    +关注

    关注

    16

    文章

    1200

    浏览量

    50622
  • GPIO
    +关注

    关注

    16

    文章

    1205

    浏览量

    52166

原文标题:ZYNQ7000系列MIO/EMIO/AXI_GPIO接口

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MIOEMIO的关系解析 GPIOMIOEMIO的区别

    通过AXI点亮PL端LED。 1. MIOEMIO 首先来理清楚MIOEMIO的关系。MIO
    的头像 发表于 11-24 14:32 2.4w次阅读
    <b class='flag-5'>MIO</b>与<b class='flag-5'>EMIO</b>的关系解析 <b class='flag-5'>GPIO</b>、<b class='flag-5'>MIO</b>、<b class='flag-5'>EMIO</b>的区别

    Xilinx ZYNQ开发GPIO的三种方式:MIOEMIOAXI_GPIO

    AXI_GPIO是封装好的IP核,PS通过M_AXI_GPIO接口控制PL部分实现IO,使用时消耗管脚资源和逻辑资源。 使用的板子是zc702。 1.MIO方式
    的头像 发表于 12-26 10:12 3961次阅读
    Xilinx <b class='flag-5'>ZYNQ</b>开发<b class='flag-5'>GPIO</b>的三种方式:<b class='flag-5'>MIO</b>、<b class='flag-5'>EMIO</b>、<b class='flag-5'>AXI_GPIO</b>

    分享黑金ZYNQ7000系列视频教程

    视频太大了,无法上传,直接分享百度网盘了介绍一下内容【黑金ZYNQ7000系列原创视频教程】20.Linux下的GPIO操作【黑金ZYNQ7000
    发表于 11-14 21:04

    玩转Zynq连载31——[ex53] 基于Zynq PS的EMIO控制

    EMIO功能开启,EMIO引脚将会引出到PS系统。完成配置后,回到ZYNQ7系统框图中,可以看到多了一个名为GPIO_0的接口。展开
    发表于 10-12 17:35

    MIO/EMIO/AXI_GPIO接口详解

    ZYNQ-7000系列MIO/EMIO/AXI_GPIO接口
    发表于 02-02 07:30

    ZYNQGPIO相关资料推荐

    上,也可以通过 EMIO 连接到 PL 端的引脚。Zynq-7000 系列芯片一般有 54 个 MIO,个别芯片如 7z007s 只有 32 个。G
    发表于 02-08 07:27

    ZYNQ 的三种GPIOMIOEMIOAXI

    GPIO的博客说的有一些不一样呢。 我们先看有哪三种GPIOMIOEMIOAXI_GPIO。其中M
    发表于 02-08 10:23 3332次阅读
    <b class='flag-5'>ZYNQ</b> 的三种<b class='flag-5'>GPIO</b> :<b class='flag-5'>MIO</b>、<b class='flag-5'>EMIO</b>、<b class='flag-5'>AXI</b>

    Zynq7000系列之芯片引脚功能综述

    很多人做了很久的FPGA,知道怎么去给信号分配引脚,却对这些引脚的功能及其资源限制知之甚少;在第一章里对Zynq7000系列的系统框架进行了分析和论述,对Zynq7000系列的基本资源
    发表于 02-09 05:52 4840次阅读

    第二章 Zynq7000芯片的简介

    详细介绍zynq7000系列板子的资料,适合初学者借鉴学习。
    发表于 02-28 15:12 11次下载

    zynqGPIO唬住,告诉你zynq的3种GPIO

    我们先看有哪三种GPIOMIOEMIOAXI_GPIO。其中MIOEMIO是直接挂在PS
    发表于 07-07 08:23 5247次阅读

    ZYNQ-7000系列MIOEMIOAXI_GPIO接口

    ZYNQ-7000系列MIO/EMIO/AXI_GPIO接口
    发表于 07-25 17:41 2791次阅读
    <b class='flag-5'>ZYNQ-7000</b><b class='flag-5'>系列</b><b class='flag-5'>MIO</b>、<b class='flag-5'>EMIO</b>、<b class='flag-5'>AXI_GPIO</b><b class='flag-5'>接口</b>

    ZYNQ-7000系列MIO/EMIO/AXI_GPIO接口

    ZYNQ-7000系列MIO/EMIO/AXI_GPIO接口
    发表于 01-31 06:50 12次下载
    <b class='flag-5'>ZYNQ-7000</b><b class='flag-5'>系列</b><b class='flag-5'>MIO</b>/<b class='flag-5'>EMIO</b>/<b class='flag-5'>AXI_GPIO</b><b class='flag-5'>接口</b>

    ZYNQGPIO简介

    上,也可以通过 EMIO 连接到 PL 端的引脚。Zynq-7000 系列芯片一般有 54 个 MIO,个别芯片如 7z007s 只有 32 个。G
    发表于 12-04 18:51 16次下载
    <b class='flag-5'>ZYNQ</b>的<b class='flag-5'>GPIO</b>简介

    ZYNQ学习笔记_GPIO之输入输出

    ZYNQ学习笔记_GPIOGPIO介绍MIO介绍EMIO介绍控制GPIO接口的寄存器原理GPIO
    发表于 12-04 19:36 10次下载
    <b class='flag-5'>ZYNQ</b>学习笔记_<b class='flag-5'>GPIO</b>之输入输出

    AXI_GPIO简介与使用指南

    前面简单学习了关于GPIO的操作,本次将使用PL 端调用 AXI GPIO IP 核, 并通过 AXI4-Lite 接口实现 PS 与 PL
    的头像 发表于 07-19 17:36 4838次阅读