AMBA总线介绍

AMBA(Advanced Microcontroller Bus Architecture)是由ARM(Advanced RISC Machines)公司设计的一种高性能、高带宽的总线架构。AMBA总线广泛应用于各种嵌入式系统中,包括数字信号处理器、图形处理器、嵌入式处理器以及SoC(System-on-Chip)等。

AMBA包含一系列总线,包含AHB(Advanced High-Performance Bus,高级高性能总线)、APB(Advanced Peripheral Bus,高级外设总线)、AXI(Advanced Extensible Interface,高级可扩展总线接口)等。AMBA的演进如下

APB:低带宽总线协议,为了支持外围设备,在低功耗和低复杂性方面进行了特定的优化。读写操作共享同一组信号,不支持burst数据传输。用于外围设备的低成本接口,不需要大量的数据,低延迟的传输,因此不需要高性能的流水线总线接口。APB总线的任何传输至少需要2个周期。典型的含有APB总线的系统,在 AHB、AXI与连接外围设备接口的APB总线之间含有APB桥接器,通过它可以访问外围设备的可编程寄存器。

AHB:主要针对高性能、高时钟频率以及快速系统模块所设计的总线,可以充当高性能系统主干线,可以链接微处理器、芯片上或者芯片外的内存模块、DMA等高效率模块。支持多个总线主控,并支持高带宽操作。典型的AMBA系统设计包含 AHB主机、AHB从机、AHB仲裁器和AHB解码器。它用于在共享总线上连接需要高带宽的组件,如DMA、DSP和内存。AMBA AHB支持了如下特性:

  • 突发传输
  • 更宽的数据总线配置(64/128位)
  • 单时钟边沿操作
  • 单周期总线主切换

AHB-lite:是AHB的简化版本。简化之后只支持一个Master,消除了对任何仲裁、充实、分割事务等需求,通过简化设计,提高了传输性能。

AXI:是一种并行、高性能、高频率、同步的总线协议。适合于高带宽和低延迟互连。这是一个点对点的互连协议,支持乱序传输、读写通道分离,它克服了AHB、APB等共享总线协议在可连接的代理数量方面的限制。该协议支持多个outstanding 的数据传输(多组未完成事务共存)、burst数据传输、单独的读写通道和支持不同的总线宽度。它针对高性能和高频系统,具有以下主要特点:

  • 多笔未完成Transaction
  • 乱序数据补全
  • 仅发布起始地址的基于突发的事务
  • 支持使用选通的非对齐数据传输
  • 同时读取和写入事务
  • 用于高速操作的流水线互连

AXI-lite:简单低吞吐量的内存映射通信,是AXI总线协议的简化版本,简化后不支持突发数据传输,用于操作控制和状态寄存器。

AXI-stream:是AXI总线协议的另一种风格,它只支持数据流从master流到slave单向流动,用于高速流数据传输。与完整的AXI或AXI-lite不同,AXI-stream协议数据流只在一个方向流动,没有单独的读、写通道

典型应用场景:

基于amba的微控制器通常由一个高性能系统主干总线组成,能够维持CPU和其他直接内存访问(DMA)设备所在的外部存储器带宽,加上一个到较窄的APB总线的桥,低带宽外围设备位于APB总线上。下图显示了一个典型的AMBA系统中的APB。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/605461.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

收银系统源码--什么是千呼智慧新零售系统?

千呼智慧新零售系统是一套针对零售行业线上线下一体化收银系统。给门店提供线下称重收银、o2o线上商城、erp进销存、精细化会员管理、丰富营销插件等一体化解决方案。多端数据打通,实现线上线下一体化,提升门店工作效率,实现数字化升级&#…

vue3 依赖-组件tablepage-vue3版本1.0.3更新内容

github求⭐ 可通过github 地址和npm 地址查看全部内容 vue3 依赖-组件tablepage-vue3说明文档,列表页快速开发,使用思路及范例-汇总 vue3 依赖-组件tablepage-vue3说明文档,列表页快速开发,使用思路及范例(Ⅰ&#…

【第38天】SQL进阶-SQL设计优化-范式设计(SQL 小虚竹)

回城传送–》《100天精通MYSQL从入门到就业》 文章目录 零、前言一、练习题目二、SQL思路初始化数据什么是范式设计第一范式(1NF)第二范式(2NF)第三范式(3NF) 三、总结四、参考 零、前言 今天是学习 SQL …

期权和期货有什么区别?

今天期权懂带你了解期权和期货有什么区别?期权和期货是两种常见的衍生金融工具,它们在结构和盈利方式上存在一些关键的区别: 期权 期权是一种给予持有者在未来某个时间以特定价格买入或卖出基础资产的权利,但不是义务。期权的主要…

ORACLE 19C RAC DIAG进程消耗大量内存的分析

近期一个ORACLE 19C的RAC环境,多次出现数据库实例的后台进程DIAG消耗很多内存(达到20G),节点1、节点2都出现过次问题。 问题分析:通过对DIAG进程TRACE分析,结合在ORACLE官方后台进行问题、BUG查询匹配&…

uniapp怎么使用jsx

安装vitejs/plugin-vue-jsx npm install vitejs/plugin-vue-jsx -Dvite.config.js配置 import { defineConfig } from "vite"; import uni from "dcloudio/vite-plugin-uni"; import vueJsx from vitejs/plugin-vue-jsxexport default defineConfig({plu…

初始Java篇(JavaSE基础语法)(7)抽象类和接口(下)

找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏:JavaSE 接上文:初始Java篇(JavaSE基础语法)(7)抽象类和接口(上&#xf…

Netty HTTP2 示例-响应式编程-013

🤗 ApiHug {Postman|Swagger|Api...} = 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱,有温度,有质量,有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace The Next Generation API Development Platform …

上海亚商投顾:沪指缩量调整 合成生物概念股持续爆发

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 沪指昨日缩量震荡调整,深成指、创业板指均跌超1%。细胞免疫治疗概念股大涨,冠昊生物、…

运营一个在线课堂有哪些基础费用?

我是酷瓜云课堂的作者,对这个问题还是很有心得的。我们的系统是基于腾讯云服务的,下面简单罗列一些基础费用,价格和腾讯云官方有些许出入,仅供参考。 (1)域名 域名注册通常 60 - 80元 / 年,续…

【JavaEE网络】HTTP响应详解:状态码、报头与正文的全面解析

目录 HTTP响应(Response)认识 "状态码" (status code)认识响应 “报头”(header)认识响应 “正文”(body) HTTP响应(Response) 响应: 首行响应头空行正文 认…

AI大模型探索之路-训练篇18:大语言模型预训练-微调技术之Prompt Tuning

系列篇章💥 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概…

信息系统项目管理师0095:项目管理知识领域(6项目管理概论—6.4价值驱动的项目管理知识体系—6.4.4项目管理知识领域)

点击查看专栏目录 文章目录 6.4.4项目管理知识领域6.4.4项目管理知识领域 除了过程组,过程还可以按知识领域进行分类。知识领域指按所需知识内容来定义的项目管理领域,并用其所含过程、实践、输入、输出、工具和技术进行描述。 虽然知识领域相互联系,但从项目管理的角度来看…

使用unplugin-icons报错:Icon `eos-icons/ai` not found

代码: import IconNanobert from ~icons/eos-icons/ai 报错: Icon eos-icons/ai not found解决办法: npm i -D iconify-json/eos-icons (把eos-icons替换成报错的那个collection-id即可,collection-id名称见图2&…

JVM堆内存分析

jmap工具查看堆内存 jmap:全称JVM Memory Map 是一个可以输出所有内存中对象的工具,可以将JVM中的heap(堆),以二进制输出成文本,打印出Java进程对应的内存 找到pid jmap -heap 19792 Attaching to process ID 19792…

鸿蒙DevEco Studio 4.1 Release-模拟器启动方式错误

软件版本:DevEco Studio 4.1 Release 报错提示: 没有权限查看处理指导 Size on Disk 显示1.0MB 尝试方案(统统无效): 1、“windows虚拟机监控程序平台”、"虚拟机平台"已开启 启用CPU虚拟化 2、C…

如何使用过滤器和监听器

Filter:过滤器 Listener:监听器 Filter:过滤器 1. 概念:* 生活中的过滤器:净水器,空气净化器,土匪、* web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特…

蓝桥杯【第15届省赛】Python B组 32.60 分

F 题列表越界访问了……省一但没什么好名次 测评链接:https://www.dotcpp.com/oj/train/1120/ C 语言网真是 ** 测评,时间限制和考试的不一样,E 题给我整时间超限? A:穿越时空之门 100🏆 【问题描述】 随…

简要介绍三大脚本语言 Shell、Python 和 Lua

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 脚本语言是一种用于自动化操作系统任务和应用程序功能的编程语言。它们通常用于编写小到中等规模的程序,以提高任务执行的速度和效率。在众多脚本语言中,Shell、Python 和 Lua 是…

Python | Leetcode Python题解之第77题组合

题目: 题解: class Solution:def combine(self, n: int, k: int) -> List[List[int]]:ans []path []def dfs(x):remain k - len(path)if not remain:ans.append(list(path))returnif n 1 - x > remain:dfs(x 1)path.append(x)dfs(x 1)path.…
最新文章