AHB协议理解

news2024/10/7 10:22:45

目录

Chapter1 AHB Block Diagram

Ginput signal

lnput signals

Output Signal

Chapter3 Transfers

AHB接口Overview 

 Chapter6 Data Buses

HWDATA

HRDATA


Chapter1 Introduction

AHB: Advanced High-performance Bus ( 高级高性能总线 )
应用场景:针对高效率,高频宽所设计的总线,可以连接微处理器,片内或片外的内存模块,以及 DMA 等高效模块,可以构成完整独立的 SOC 系统

AHB Block Diagram

 Figure 1-1 shows only the main address and data buses and typical data routing. Not all signals are shown.

Decoder 监控 Master 的地址选择到对应的 Slave
Multiplexor 将对应的 slave 的输出路由回 Master

 

 Figure 1-3 Subordinate interface

Global Singal

lnput signals

 

 

Output Signal

 

 

Chapter3 Transfers

  1. Address phase One address and control cycle.
  2. Data phase One or more cycles for the data.
  3. HWRITE is HIGH, it indicates a write transfer and the Manager broadcasts data on the write data bus, HWDATA.
  4. HWRITE is LOW, a read transfer is performed, and the Subordinate must generate the data on the read data bus, HRDATA.

Figure Transfer with no wait state

在采集到 hclk 的上升沿后, master 开始驱动地址和控制信号
Slave 在第二个上升沿后采集到地址和控制信息
Slave 会驱动 HREADYOUT response Master 会在第三个上升沿采集到这个 response ,传输结束

 Figure 3-1 Read transfer

Figure 3-2 Write transfer

Figure AHB transfer with wait

原因:从机未必处于就绪状态

等待时的读写:

写:要保持写的状态直至传输完成

读:只有当Hready为高时,slave才会获取有效值

 

Figure 3-3 Read transfer with two wait states

Figure 3-4 Write transfer with one wait state

Figure 3-5 Multiple transfers

 Table 3-1 Transfer type encoding

Figure 3-6 shows the use of the NONSEQ, BUSY , and SEQ transfer types.

带控制信号的多笔传输时序

 Figure 3-6 Transfer type examples

Figure 3-7 Locked transfer

Table 3-2 Transfer size encoding

Table 3-4 Burst signal encoding

Figure 3-8 shows a write transfer using a four-beat wrapping burst, with a wait state added for the first transfer.

Figure 3-8 Four-beat wrapping burst

AHB接口Overview 

MASTER

SLAVE

 

 Figure 5-1 ERROR response

 Chapter6 Data Buses

HWDATA

The Manager drives the write data bus during write transfers. If the transfer is extended, then the Manager must hold the data valid until the transfer completes, as indicated by HREADY HIGH. See Clock on page 7-72 for details on holding signals valid across multiple cycles.
For transfers that are narrower than the width of the bus, for example a 16-bit transfer on a 32-bit bus, the Manager only has to drive the appropriate byte lanes. The Subordinate selects the write data from the correct byte lanes. See Endianness on page 6-65 for details of the byte lanes that are active for a little-endian and big-endian system.

HRDATA

The appropriate Subordinate drives the read data bus during read transfers. If the Subordinate extends the read transfer by holding HREADY LOW, then the Subordinate only has to provide valid data in the final cycle of the transfer, as indicated by HREADY HIGH.
For transfers that are narrower than the width of the bus, the Subordinate is only required to provide valid data on the active byte lanes. The Manager selects the data from the correct byte lanes.
A Subordinate only has to provide valid data when a transfer completes with an OKAY response. ERROR responses do not require valid read data.

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

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

相关文章

cancal报错 config dir not found

替换classpath中间封号两边的值

这款录音转文字工具让你的录音转写更加便捷

小明:小李,最近我一直在做一个听力练习,但是听力材料都是录音,手动转写真的好慢,有什么办法可以提高录音转写效率吗? 小李:当然有啦!我之前也遇到过这种情况,最后我是通…

边缘检测之loG算子

note // 边缘检测之loG算子:对高斯函数求二阶导数 // G(x,y) exp(-1 * (x*x y*y) / 2 / sigma / sigma) // loG(x,y) ((x*x y*y - 2 * sigma * sigma) / (sigma^4)) * exp(-1 * (x*x y*y) / 2 / sigma /sigma) /* [ 0,0,-1,0,0; 0,-1,-2,-1,0; -1,-2,16,-2…

『红外图像 数据增强』DDE(Digital Detail Enhancement)算法

DDE处理的细节 分离背景层和细节层:使用特殊的滤波器,将图像分成背景层和细节层。背景层通常包含低频信息,而细节层包含高频信息。 对背景层进行灰度增强:通过对背景层应用适当的灰度增强算法,提高背景层的对比度和视…

数据结构(王道)——数据结构之 二叉树的存储结构

一、顺序存储 静态顺序存储 顺序存储的二叉树结构特性: 顺序存储的非完全二叉树特性 不完全二叉树的可能会浪费大量空间,所以一般顺序存储二叉树比较少用。 图示为什么很少用顺序存储来存二叉树 顺序存储的二叉树总结: 二、链式存储 二叉链表…

MYSQL数据库-数据库的学习

MYSQL数据库-数据库的学习 MYSQL数据库一、数据库的基本概念二、常见的数据库三、MySQL数据库四、SQL操作五、SQL高级操作六、SQL函数(SQL 拥有很多可用于计数和计算的内建函数) MYSQL数据库 一、数据库的基本概念 1、数据库的英文单词:DataBase 简称 : DB 2、什么…

浙大数据结构第四周之04-树6 Complete Binary Search Tree

题目详情: A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties: The left subtree of a node contains only nodes with keys less than the nodes key.The right subtree of a node contains only nodes w…

2023软件测试八股文,拿下满意的offer就靠这了

前言 2023年软件测试行业就业越来越严峻,金三银四也成了铜三铁四,内卷成为了软件测试领域的代名词。 深圳,我的一个HR朋友告诉我,软件测试由于门槛低,现在普通测试岗(偏功能)的投递太多了&…

如何把本地项目的代码上传到 GitHub 上(详解)

此教程适用于已经安装 git ,并且已经注册 GitHub 账号的电脑,如果没有下载 git ,或者还没有注册过 GitHub 账号的,可以找相关教程弄一下。下面直接开整 说明:这里的案例就用我之前写的一个前端页面(内蒙古招…

04 QT坐标系

在QT中默认左上角为原点,即(0,0)点。x轴右侧为正方向,y轴以下侧为正方向

【1++的C++初阶】之vector

👍作者主页:进击的1 🤩 专栏链接:【1的C初阶】 文章目录 一,什么是vector?二,构造与析构三,vector迭代器的实现四,vector部分重要接口的实现 一,什么是vector? vector…

curl操作

下载路径:https://curl.se/windows/ 参考:https://blog.csdn.net/weixin_45191386/article/details/130652821 操作: curl http://localhost:8085/api/v1/aaa/bbbb/?ccc 652781344055627776

Android应用启动全流程分析(源码深度剖析)

作者:努比亚技术团队 源码来源:努比亚技术团队 1.前言 从用户手指点击桌面上的应用图标到屏幕上显示出应用主Activity界面而完成应用启动,快的话往往都不需要一秒钟,但是这整个过程却是十分复杂的,其中涉及了Android系…

Echarts折线图分割线颜色

直接上代码 splitLine: {show: true, // 是否显示分隔线。默认数值轴显示,类目轴不显示type: solid, // 坐标轴线线的类型(solid,实线类型;dashed,虚线类型;dotted,点状类型)lineStyle:…

一本通1910:【00NOIP普及组】计算器的改良题解

今天是编程集训的第二天,也是我来到CSDN整整1年。感谢所有阅读过我的文章的人,谢谢。 今天的比赛难度略低于昨天,但这道题也卡了我好久。 进入正题 题目: 题目描述: NCL是一家专门从事计算器改良与升级的实验室&a…

【软件测试】selenium中元素的定位

1.元素的定位 不管用那种方式,必须保证页面上该属性的唯一性 1.CSS 定位 CSS(Cascading Style Sheets)是一种语言,它被用来描述HTML 和XML 文档的表现。 CSS 使用选择器来为页面元素绑定属性。这些选择器可以被selenium 用作另外的定位策略CSS的获取可…

牛客小白月赛75题解

C 豆子 构造题 由构造公式知 第n级好豆子 第n-1级坏豆子^1 所以只需要构造一个豆子结构就行 第 i 级豆子 第 i 级豆子 第 i 级豆子 第 i 级豆子 第 i 级豆子 ^ 1 第i级豆子\begin{aligned} 第i级豆子 && 第i级豆子 \\ 第i级豆子 && 第i级豆子 \verb|^| 1 …

研究IOT,发现硬件和软件的结合才是解决方案,IOT的软件服务可以通过售卖硬件一起捆绑销售。而单纯做云服务比较难。

1,研究4G网卡,调研到DTU 关于DTU: DTU (Data Transfer Unit)是一种常见的的物联网通信终端产品,起到网关的作用,它一边通过串口或无线技术连接各种传感器、控制器、执行器等,另一边…

【Spring Boot学习一】创建项目 Spring Boot的配置文件

目录 一、安装插件 二、创建Spring Boot项目 1、创建项目 1.1 使用IDEA创建 1.2 网页版本创建 2、项目目录介绍与运行 三、Sping Boot的配置文件(重点) 🌷1、.properties配置文件 (1)基础语法:Key …

【C++】将类对象转换成基本数据类型

2023年7月19日,周三晚上: 今天晚上看源码的时候,突然在某个类里面看到了“operator bool() const;”,我完全想不起来这是啥意思了,于是今晚重新学习了一下 目录 类型转换函数的定义类型转换函数的作用 类型转换函数的…