AXI4的收发机制

1、AXI4的译码器

对于多个主机和从机的AXI4总线的互联架构,译码器都是重要的。主机的端口一般有三个译码器,分别是读地址通道、写地址通道和写数据通道的译码器。主要作用是将通道的信息和内部寄存器的信息相互转化。从机的端口就是写响应和读数据通道会有译码器。译码器就是保证一方可以向其他几个方向传递。这个根据设计需要自行决定。如果有确切的指向关系就可以不使用译码器。

2、AXI4的仲裁器

仲裁器,就是决定优先级的逻辑。多个主机可能同时向一个从机发起访问,这时就需要考虑那个主机先执行。这就是潜在执行顺序。可以看出,一个仲裁器的作用相当于交警在堵车时的作用。一个好的仲裁器可以快速地解决通道拥堵的问题。反之,总线的传输效率就会降低。有以下几个标准的解决方法:

1)时间切换时分复用

就是将总线的使用权按时间划分,依次分给总机使用。这和交通灯的交通秩序是一样的道理。优点是可以保证总体功能执行且结构简单,缺点是容易浪费。

2)事务时分复用

就是轮流使用,每个主机使用完成后向下一个主机传递。缺点也是对于重点的主机无法占用更多的作用。

3)固定优先级

这个方法就是事先就确定顺序,显然,这种方法需要事先对每个主机对于总线的使用效率做一个统计。这个对于设计这来说是比较大的挑战。

3、AXI4互联架构

互联结构,就是多个主机和多个从机如何组成一个网络。实际的设计中,主机与从机之间的通道有许多的通道是可以复用的。

1)M-1型互联

就是多个主机向一个从机进行数据传输时,所需要的仲裁器需要使用主机优先级判断和从机数据发送的功能。

2)1-N型互联

这个就是一个主机和N个从机,需要的互联的架构也是需要仲裁器支持。在zynq中使用的AXI4应该采用的就是这种架构。

3)M-N型互联

这种互联方式是有两种大的方向的,就是数据共享和地址共享。依旧需要靠仲裁器的工作原理来实现。具体的结构就不过多的了解了。

4、小结

通过对这个部分的AXI4总线协议的基本内容的了解,大致地知道了AXI总线的组成和工作结构。接下来的学习会基于具体的AXI4总线的从机的原理构建,从机的接受与发送来实现对该协议的具体认识。使用的架构应该是1-N互联。至于总机和仲裁器则是由IP核的设计确认。这里的目标只是通过了解AXI4协议得到zynq基于AXI4总线的挂载自定义IP的设计。

AXI4的主从机的收发机制的更多相关文章

  1. 如何在项目中引入MetaQ消息收发机制

    当需要异步发送和接收大量消息时,需要在Crystal项目中引入MetaQ消息收发机制. 关于MetaQ使用的官方例子可参考:https://github.com/killme2008/Metamorp ...

  2. DA_01_linux_物理机局域网工作机制

    一:物理机局域网工作机制: 二:域名服务的工作流程: 首先通过域名映射到IP地址,如果没有找到域名,向外部服务器DNS查询,然后通过IP地址访问服务器: 三:Vmware--NAT虚拟网络配置:

  3. STM32 HAL 库实现乒乓缓存加空闲中断的串口 DMA 收发机制,轻松跑上 2M 波特率

    前言 直接储存器访问(Direct Memory Access,DMA),允许一些设备独立地访问数据,而不需要经过 CPU 介入处理.因此在访问大量数据时,使用 DMA 可以节约可观的 CPU 处理时 ...

  4. 硬件IIC主从机中断代码注释解析

    目录 硬件IIC的主从中断在582的最新EVT中已支持. 对于IIC从机中断,例程中已封装好中断处理过程,用户调用app_i2c时,初始化中需要配置回调函数. 初始化的配置如下. struct i2c ...

  5. JAVA虚拟机15---虚拟机的类加载机制

    1.概述 在Class文件中描述的各类信息,最终都需要加载到虚拟机中之后才能被运行和使用.而虚拟机如何加载这些Class文件,Class文件中的信息进入到虚拟机后会发生什么变化,这就涉及到虚拟机的类加 ...

  6. redis主从 以及认证配置

    以前用redis用的很多,各种数据类型用的飞起,算是用得很溜了.不过那都是封装好的方法,自己直接调用.以前的公司比较规范,开发只是开发,很少去做跟运维相关的事情. 换了一份工作,不过这边项目刚开始起步 ...

  7. Zynq-PL中创建AXI Master接口IP及AXI4-Lite总线主从读写时序测试(转)

    转载:原文  http://www.eefocus.com/antaur/blog/17-08/423751_6cc0d.html 0. 引言 通过之前的学习,可以在PL端创建从机模式的AXI接口IP ...

  8. 学习6__STM32--SPI外设之中断收发---

    <目标> STM32双机 SPI中断收发通信 <描述> # STM32双机配置为一主一从模式 # 采用主机中断发送,从机中断接收 # 收发机制采用不间断收发(发送为空就发送,接 ...

  9. Redis学习 - 主从拷贝

    Redis主从拷贝的特点 同一个Master可以拥有多个Slaves. Master下的Slave还可以接受同一架构中其它slave的链接与同步请求,实现数据的级联复制,即Master->Sla ...

  10. PostgreSQL9.6主从配置

    参考文档: 备机日志传送:https://www.postgresql.org/docs/9.6/static/warm-standby.html 英文文档:https://www.postgresq ...

随机推荐

  1. mc命令

    mc命令 mc是一个基于字符的目录浏览器和文件管理器,其将熟悉的图形文件管理器和常见的命令行工具联系在一起,mc的设计基于文件管理器中双目录窗格的设计,其中同时显示两个目录的列表,可以执行所有常见的文 ...

  2. Swoole从入门到入土(17)——WebSocket服务器[成员函数与配置选项]

    这一节,我们重点了解websocket server的成员函数以及相关的配置选项. 1.成员函数 push:向 WebSocket 客户端连接推送数据,长度最大不得超过 2M. Swoole\WebS ...

  3. spring boot+layui实现增删改查实战

    说明: 最近在做一个后台,希望用一个现成的前端模板,找了一圈发现Layui比较合适.我知道很多人都有这个需求,为了使大家快速上手,我把自己写的最实用的增删改查案例完整的展示出来. 源码地址: http ...

  4. dataclass装饰器

    简介 根据定义dataclass时指"一个带有默认值的可变的namedtuple" 简单来说,就是你定义一个很普通的类,@dataclass装饰器可以 帮你生成__repr__._ ...

  5. django自定义模型管理器Manager及方法

    django自定义模型管理器Manager及方法 自定义管理器(Manager) 在语句Book.objects.all()中,objects是一个特殊的属性,通过它来查询数据库,它就是模型的一个Ma ...

  6. 领略一下swift函数派发机制流程

    函数派发 Swift中函数的派发机制有三种:静态派发,函数表派发,消息派发. 静态派发 静态派发是指在运行时不需要查表,直接跳转到方法进行执行.静态派发的性能也是最高的.c语言采用的是直接派发. 函数 ...

  7. 【Azure 云服务】如果云服务证书过期会有什么影响,证书时间应该如何查看

    问题描述 如果云服务证书过期会有什么影响,证书时间应该如何查看 问题答案 在云服务中,有两种证书:服务证书 和 管理证书 什么是服务证书? 通过浏览器访问云服务中的服务(Web Role)时候所使用的 ...

  8. 从真实案例出发,全方位解读 NebulaGraph 中的执行计划

    本文整理自 NebulaGraph 核心开发 Yee 在直播<聊聊执行计划这件事>中的主题分享.分享视频参见 B站:https://www.bilibili.com/video/BV1Cu ...

  9. Springboot 撞上 NebulaGraph——NGbatis 初体验

    本文首发于 NebulaGraph 公众号 https://mp.weixin.qq.com/s/z56o6AEz1Z4RmS8Zdx6dTA 大家好,我是开源项目 NGbatis 的发起人大叶(Co ...

  10. 主流开源分布式图计算框架 Benchmark

    本文由美团 NLP 团队高辰.赵登昌撰写,首发于 Nebula Graph Community 公众号 前言 随着近年来数据的爆炸式增长,如何高效地分析处理数据,在业界一直备受关注.现实世界中的数据往 ...