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. Swoole从入门到入土(21)——毫秒定时器

    Swoole提供了毫秒精度的定时器,所有操作都是内存操作,无额外的IO开销. 下面让我们一起详细了解每个函数的作用: 1) 函数tick:设置一个间隔时钟定时器,这个定时器会持续触发 Swoole\T ...

  2. 解决Burpsuite1.6中文显示乱码问题

    说明 最近公司项目被测试团队测试出有越权访问等安全问题,用的是这个Burpsuit工具,我想做软件测试的同学应该很熟悉.那么中间在模拟请求响应过程中发现返回的信息中文是乱码,搜索了一圈发现很多人提供的 ...

  3. Vue+SpringBoot+ElementUI实战学生管理系统-2.搭建Vue+elementUI脚手架

    1.项目介绍 前一片介绍了项目的整体情况,这一篇开始搭建前端工程,需要的朋友可以拿去自己定制.:) 2.获取源码 源码是捐赠方式获取,详细请QQ联系我 :)! 3.项目截图 登录页 列表操作 动态图 ...

  4. 编译静态库遇到的 LNK2019 报错

    前文提到了 CMake 学习 文末基本涵盖了我遇到的编译问题,但是在得到一个编译好的 .lib 文件后,还需要放到项目中引用成功后才算真正的完成静态库的编译 嗯,我之所以说这些是因为我在项目中链接静态 ...

  5. win32-LPCSTR->String

    #include <string> void makebox(LPCSTR name) { std::string res(name); res += " is X"; ...

  6. Feign入门介绍

    Feign入门介绍 基本概述 除Feign之外,在Java中经常使用的HTTP客户端组件主要有3个,如下: (1)HttpURLConnection,JDK自带 (2)Apache HttpClien ...

  7. python开发接口时,使用jsonschema模块对数据进行校验

    import jsonschema schema = { "type": "object", # 先声明每个键都是对象 "properties&quo ...

  8. sqlserver数据库jar包下载

    链接:https://pan.baidu.com/s/1mCx5JpVpmU6uUaqMITxP_Q提取码:4piq 说明:若链接失效,联系会及时补上!

  9. 《Similarity-based Memory Enhanced Joint Entity and Relation Extraction》论文阅读笔记

    代码 原文 摘要 文档级联合实体和关系抽取是一项难度很大的信息抽取任务,它要求用一个神经网络同时完成四个子任务,分别是:提及检测.共指消解.实体分类和关系抽取.目前的方法大多采用顺序的多任务学习方式, ...

  10. 【Azure API 管理】APIM中的Policy是否有调用速率的方法(熔断机制)

    问题描述 APIM中的Policy是否有调用速率的方法(熔断机制) 问题解答 APIM的限制速率的方式有以下方式: 检查 HTTP 标头 - 强制 HTTP 标头必须存在和/或强制采用 HTTP 标头 ...