AMBA总线协议(0)——目录与传送门

一、AMBA总线协议

         Arm高级微控制器总线架构(Advanced Microcontroller Bus Architecture,AMBA)是一种开放式标准片上互联规范,用于连接和管理片上系统(System on Chip,Soc)中的功能块。

        AMBA是一种广泛用于Soc设计的架构,可在芯片总线中找到。AMBA规范标准用于设计高级嵌入式微控制器。AMBA的主要目的是提供技术独立性并鼓励模块化系统设计。更进一步说,它强烈鼓励开发可重复使用的外设,同时最大限度地减少硅基础设备。

        简而言之,它是鼓励每个人用来在其芯片中将块连接在一起的接口。
 

二、AMBA总线协议详解

1、概述

        本文是对于AMBA总线的一个简单概述,我们主要关注的是其中的AHB,APB,AXI协议,很多概念在本文中只是简单的涉及,没有进行具体展开,所有读者可能有些部分无法理解,这是正常的,随着学习的深入我们会对于细节逐渐展开,在这里我们首先要明确AHB是高性能总线,用于CPU等高性能系统,APB可以理解成AHB的一个外设,作为局部二级总线存在。AXI经常用于外设的拓展使用。

AMBA总线协议(1)——概述https://blog.csdn.net/apple_53311083/article/details/132383230

2、信号

        这篇文章我们来详细介绍AHB,APB,AXI协议的信号。对于AMBA总线协议有一个初步直观的认识。

AMBA总线协议(2)——AMBA信号https://blog.csdn.net/apple_53311083/article/details/132383902

3、AHB

        从本文开始我们将正式开始学习AMBA总线的细节,  在本文中对于AMBA AHB做了一个简单的介绍,AHB 主要用于高性能模块(如 CPU、DMA 和 DSP 等)之间的连接,是Soc所经常采用的一种总线协议,AHB可以支持多主机多从机结构。设备之间的互联使用一个中央多路选择器互联方案

AMBA总线协议(3)——AHB(一):概述https://blog.csdn.net/apple_53311083/article/details/132390890

        本文中我们详细讲述了关于AHB的基本操作流程,主机要先从仲裁器获得授权,然后进行总线的访问,这样可以避免总线冲突,获得授权后,主机给出地址和控制信号,从机根据自身情况进行响应,可以分成有等待的情况和无等待的情况,这主要通过从机控制HREADY信号实现。AHB传输共分成4种类型,由主机通过HTRANS体现。

AMBA总线协议(4)——AHB(二):基本传输https://blog.csdn.net/apple_53311083/article/details/132396045

        在本文中我们展现了AHB猝发传输的具体细节,学习了猝发的类型和具体传输方式,猝发是AHB传输中非常重要的一部分,到这里我们已经基本学习完了AHB的核心内容

AMBA总线协议(5)——AHB(三):猝发传输https://blog.csdn.net/apple_53311083/article/details/132415543

        在本文中我们讨论了AHB的很多传输细节,主要有控制信号,地址信号的译码,从机的响应等,其中重点介绍了双周期响应,最后介绍了数据总线及端结构。

AMBA总线协议(6)——AHB(四):传输细节https://blog.csdn.net/apple_53311083/article/details/132425028

        本文中,我们重点介绍了AHB传输的仲裁,首先介绍了仲裁相关的信号,然后分别介绍了请求总线访问,授权总线访问,猝发提前终止,锁定传输和默认主机总线

AMBA总线协议(7)——AHB(五):传输仲裁https://blog.csdn.net/apple_53311083/article/details/132426952        

        在本文中我们讲述了AHB协议的分割传输机制,它使得从机可以决定一次传输是否继续进行,以防止传输的执行将占据大量的时钟周期,有效提高了总线的公平性与效率问题

AMBA总线协议(8)——AHB(六):分割传输https://blog.csdn.net/apple_53311083/article/details/132430386

        至此我们就结束了AHB部分的全部内容,本文讲述了AHB的复位,数据总线位宽,包括有如何在宽总线实现窄从设备和如何在窄总线实现宽从设备。最后展现了AHB各类接口设备。当然学习AMBA AHB仅仅通过这一系列的文章是不够的,但是还是希望能够过这个系类帮助刚刚入门的朋友有一个基本的概念,笔者也在不断学习的过程中。

AMBA总线协议(9)——AHB(七):终章https://blog.csdn.net/apple_53311083/article/details/132434466

4、APB

        在本文中,我们介绍了 AMBA APB 协议,分别介绍了APB传输(读传输,写参数,错误传输),其中读写又可以分别分成有等待状态和无等待状态,最后介绍了APB的操作状态。APB相对于AHB来说会简单很多,但是也是非常有用的。

AMBA总线协议(9)——APBhttps://blog.csdn.net/apple_53311083/article/details/132459990

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式-代理模式

代理模式 ● 为对象提供一个代理类,增强该对象的方法,控制对这个对象的访问 ● 静态代理和动态代理:静态代理就是编译的时候就已经确定,而动态代理就是运行时才会生成 静态代理的使用场景 缓存代理 ● 提供数据的缓存功能&…

python字符串处理15题-刷题

题目一:最长无重复子串长度 给定一个字符串,找出其中不含有重复字符的最长子串的长度。 示例: 输入: "abcabcbb" 输出: 3 解释: 最长无重复子串是 "abc",长度为 3。 解答: def length_of_longest…

Ubuntu vi 左下角没有提示

1 打开终端,输入以下命令 sudo gedit /etc/vim/vimrc.tiny 2 进入文件后,修改 set compatible 为set nocompatible,如下所示: " Vim configuration file, in effect when invoked as "vi". The aim of this "…

全球公链进展| Shibarium已上线;opBNB测试网PreContract硬分叉;Sui 主网 V1.7.1 版本

01 ETH 以太坊最新一次核心开发者执行会议:讨论 Devnet 8 更新、ElP-4788、Holesky 测试网等 以太坊核心开发者 Tim Beiko 总结最新一次以太坊核心开发者执行会议(ACDE),讨论内容包括 Devnet 8 更新、ElP-4788、Holesky 测试网、…

【DevOps视频笔记】4.Build 阶段 - Maven安装配置

一、Build 阶段工具 二、Operate阶段工具 三、服务器中安装 四、修改网卡信息 五、安装 jdk 和 maven Stage1 : 安装 JDK Stage 2 : 安装 Maven 2-1 : 更换文件夹名称 2-2 : 替换配置文件 settings.xml- 2-3 : 修改settings.xml详情 A. 修改maven仓库地址 - 阿里云 B…

CentOS系统环境搭建(十七)——elasticsearch设置密码

centos系统环境搭建专栏🔗点击跳转 elasticsearch设置密码 没有密码是很不安全的一件事😭 文章目录 elasticsearch设置密码1.设置密码2.登录elasticsearch3.登录kibana4.登录elasticsearch-head 1.设置密码 关于Elasticsearch的安装请看CentOS系统环境搭…

适配小程序隐私保护指引设置

由于小程序发布了一个公告,那么接下来就是怎么改简单的问题了。毕竟不太想大的改动历史上的代码。尽量简单的适配隐私策略就可以了。 整体思路也是参考现在App普遍的启动就让用户同意隐私策略,不同意不让用,同意了之后才能够继续使用。 公告…

ubuntu下mysql

安装: sudo apt update sudo apt install my_sql 安装客户端: sudo apt-get install mysql-client sudo apt-get install libmysqlclient-dev 启动服务 启动方式之一: sudo service mysql start 检查服务器状态方式之一:sudo …

计算机网络 QA

DNS 的解析过程 浏览器缓存。当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名对应的 IP 地址(曾经访问过该域名并且没有清空缓存)系统缓存。当浏览器缓存中无域名对应的 IP 地址时,会自动检测用户计算机…

在WPF Visual Tree中查找父控件

实现 private static T FindVisualParent<T>(DependencyObject child)where T : DependencyObject{DependencyObject parentObject VisualTreeHelper.GetParent(child);if (parentObject null){return null;}T parent parentObject as T;if (parent ! null){return pa…

软件测试技术之可用性测试之WhatsApp Web

Tag&#xff1a;可行性测试、测试流程、结果分析、案例分析 WhatsApp是一款面向智能手机的网络通讯服务&#xff0c;它可以通过网络传送短信、图片、音频和视频。WhatsApp在全球范围内被广泛使用&#xff0c;是最受欢迎的即时聊天软件。 虽然&#xff0c;在电脑上使用WhatsAp…

docker搭建owncloud,Harbor,构建镜像

1、使用mysql:5.6和 owncloud 镜像&#xff0c;构建一个个人网盘。 拉取镜像 docker pull owncloud docker pull mysql:5.6 2、安装搭建私有仓库 Harbor 1.下载docker-compose 2.安装harbor 3.编辑 harbor.yml文件 使用./intall.sh安装 4.登录 3、编写Dockerfile制作Web应用系…

【学习FreeRTOS】第13章——FreeRTOS队列

1.队列简介 队列是任务到任务、任务到中断、中断到任务数据交流的一种机制&#xff08;消息传递&#xff09; FreeRTOS基于队列&#xff0c; 实现了多种功能&#xff0c;其中包括队列集、互斥信号量、计数型信号量、二值信号量、 递归互斥信号量&#xff0c;因此很有必要深入了…

奇葩的this与$emit传值

需求&#xff1a;最近遇到了一个需求&#xff0c;把一个页面内部的tab选项卡改为路由控制的页面 问题&#xff1a;查询条件单独封装一个组件后给父组件页面通过$emit事件传递表单参数&#xff1b;但是在父组件中每次得到的表单值都是undefined&#xff1b;调试了半天&#xff0…

Linux CentOS7系统,抓取http协议的数据包

使用 tcpdump 命令 1.首先确认是否安装 [rootlocalhost ~]# which tcpdump /usr/bin/which: no tcpdump in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin) [rootlocalhost ~]#我这里没有安装 1.1 安装 tcpdump yum install tcpdump 安装成功如下&#xf…

设计模式 07 桥接模式

桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型模式 概述 桥接模式是将抽象部分与它的实现部分分离&#xff0c;使它们都可以独立地变化。它是一种对象结构型模式&#xff0c;又称为柄体&#xff08;Handle and Body&#xff09;模式或接口&#xff08;Interface&…

一生一芯6——ubuntu rpm软件安装

ubuntu不支持rpm&#xff0c;需要将rpm软件安装包转成deb进行安装 安装alien sudo apt-get install alien格式转换 sudo alien xxx.rpm 在目录下会生成deb的安装包 软件安装 sudo dpkg -i xxx_amd64.deb 安装完成

【C++ 学习 ⑯】- 继承(上)

目录 一、继承的概念和定义 1.1 - 概念 1.2 - 定义 二、继承时的对象内存模型 三、向上转型和向下转型 四、继承时的名字遮蔽问题 4.1 - 有成员变量遮蔽时的内存分布 4.2 - 重名的基类成员函数和派生类成员函数不构成重载 一、继承的概念和定义 1.1 - 概念 C 中的继承…

(五)、Redisson锁机制源码分析

1、了解分布式锁的特性 1、锁的互斥性 也就是说,在任意时刻,只能有一个客户端能获取到锁,不能同时有两个或多个客户端获取到锁。简单来说,就比如上厕所,一个厕所只有一个坑位,只能一个人上,不能同时两个人或多个人上。2、锁的同一性 也就是说,锁只能被持有该锁的客户端…

MMEdu实现摄像头图像分类(Python版)

先安装MMEdu库&#xff01; MMEdu安装&#xff1a;https://blog.csdn.net/zyl_coder/article/details/132483865 下面的代码请在Jupyter上运行&#xff0c;并自己准备数据集。若模型还未训练&#xff0c;请先在本地训练完模型后再进行模型推理。 import cv2 capture cv2.Vi…