AMBA AHB的burst termination

news2024/10/7 12:19:55

前言

在AMBA AHB协议中,AHB master可以用burst传输连续取多笔数据。AHB定义了4、8和16拍的burst传输、未定义长度的burst传输和单次传输。Burst传输中支持incrementing和wrapping。

  • Incrementing burst用于访问顺序的memory地址,burst中每个拍的地址都是前一拍地址的增量,增量大小取决于HSIZE。
  • Wrapping burst在跨越地址边界时会卷绕回去。地址边界值是由burst中的拍数和每拍传输大小的乘积得来的。Burst传输的拍数是受HBURST控制,每拍传输大小是受HSIZE控制。举个例子:如果1笔burst传输的HBURST为INCR4(传输4拍),HSIZE为3’b010(传输大小为Word),那么它的地址边界值为16Byte(4*4=16)。因此,假如这笔burst传输的起始地址是0x14,那么它4拍的地址将是:0x14, 0x18, 0x1c, 0x10。

那么burst传输允许没发完全部的beat就终止(termination)吗?答案是满足一定的条件就可以提前终止,不过AXI是无法提前终止的。

Burst termination场景1

对于未定义长度(undefined length)的burst传输(HBURST为INCR),AHB master如果需要更多时间才能送出INCR Burst的下一拍数据传输,那么它会先插入BUSY拍,表示master处于忙状态。但如果AHB master最终发现自己不需要下一拍数据了,那么它可以直接结束当前的INCR burst传输,回到IDLE或者发起另一个burst传输了。要回到IDLE的话,下一拍的HTRANS将是IDLE,要发起另一个burst传输的话,下一拍的HTRANS将是NONSEQUENTIAL。

未定义长度burst传输从INCR回到IDLE的时序图示例为:

未定义长度burst传输从INCR回到NONSEQUENTIAL的时序图示例为:

另外需要注意的是,AHB协议不允许其它有固定长度的burst传输以BUSY拍结束的,它们必须以SEQ拍结束。固定长度的burst传输有:INCR4, INCR8, INCR16, WRAP4, WRAP8, WRAP16。

对于单次传输(HBURST为SINGLE),它的下一拍只能是IDLE或者NONSEQUENTIAL,也就是不可能是BUSY。

总结这个场景,AHB中想要从BUSY拍直接结束的传输只可能是未定义长度的burst传输,不可能是其它传输的。

Burst termination场景2

在Burst传输过程中,如果AHB slave返回错误的响应,那么Burst传输也是可以终止的。

如果AHB slave返回ERROR响应,那么AHB master是可以取消burst传输中还未发出的拍,不过这也不是一个严格要求,AHB master仍然可以继续把剩下的拍都发送完。举个例子:在WRAP8的burst传输中,如果AHB master在收到slave的ERROR响应时,才完成了2拍,那么协议允许剩下的6拍不必发给AHB slave了。这样对AHB的性能提升和节省功耗还是有些帮助的,因为前面出现EROOR响应,AHB master通常要先去处理下,那么之后未发送的拍是可以省掉的。

Burst termination场景3

在多层互联总线和多AHB master情况下,也可能存在burst提前终止。

尽管AHB master不允许无缘无故提前终止burst传输,但是AHB slave必须设计成允许burst提前终止。当多层互联总线用于多个AHB master系统的场景中,当前互联总线正在burst访问1个slave,如果其它master来了个新请求,互联总线中的仲裁逻辑会决定新请求是否优先于当前的burts访问。如果不是,那么就等当前burst传输完之后,排序传输新来的请求。如果是,那么它可以提前终止当前的burst传输,以便给优先级更高的请求腾出总线去访问AHB slave。因此AHB slave必须终止原来burst传输,然后去处理新AHB master发出的请求。

 

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

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

相关文章

数据压缩的常用手段以及方法

0. 简介 之前我们在《经典文献阅读之–R-PCC(基于距离图像的点云压缩方法)》中提到了,我们可以通过一些算法层面来完成数据的压缩,而其实更简单或者说更直接的方法就是使用half这种形式来完成数据压缩。 1. half和float Half是用16位表示浮点数的一种…

什么是 FL Studio?2023年最新版 FL Studio21.0.3.3517中文版图文安装教程

什么是 FL Studio? FL Studio 是一个数字音频工作站 (DAW)。该软件借助各种编辑工具、插件和效果,让您可以录制、混音和掌握高度复杂的音乐作品。FL Studio 还允许您注册和编辑 MIDI 文件,您可以在众多可用乐器之一上演奏这些文件。FL Studi…

树莓派 python3.9降级为python3.7

今天烧录了一个官方烧录器中的最新的镜像,打开之后python的版本是3.9的,之前做的一些东西都是基于python3.7的,再重新架构十分麻烦,于是干脆就把python3.9进行降级,降为python3.7. 这个镜像不像之前的一些镜像&#x…

通用商城项目(上)

通用型产品(电商)发布解决方案落地实现(基于分布式微服务技术栈: SpringBootSpring CloudSpring Cloud Alibaba VueElementUl MyBatis-Plus MySQL Git Maven Linux Nginx Docker 前后端分离) 项目技术栈和前置技术 项…

【软件设计师暴击考点】操作系统知识高频考点暴击系列【一】

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:软件…

Web网页制作-知识点(1)——HTML5介绍、HTML5的DOCTYPE声明、HTML基本骨架、标题标签、段落 换行、水平线图片图片路径、超链接

目录 HTML5介绍 HTML5的DOCTYPE声明 HTML基本骨架 标题标签 段落、换行、水平线 图片 图片路径* 超链接 HTML5介绍 HTML5是用来描述网页的一种语言,被称为超文本标记语言。用HTML5编写的文件,后缀以.html结尾 HTML是一种标记语言,标…

自动化神器AutoIt,告别重复劳动

概要 计算机已经进入大众家庭多年,它给我们带来了便利,却也带来了枯燥、重复、机械的重复工作。今天,我要和大家分享一款自动化工具AutoIt,它能够帮助你告别这些烦恼,并提高工作效率。 AutoIt 是一款完全免费的Windows…

leetcode82. 删除排序链表中的重复元素 II(java)

删除排序链表中的重复元素 leetcode82. 删除排序链表中的重复元素 II题目描述一次遍历代码演示 链表专题 leetcode82. 删除排序链表中的重复元素 II 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/remove-duplicates-fr…

1.1 编写一个简单的C++程序

博主介绍:爱打游戏的计算机专业学生 博主主页:夏驰和徐策 所属专栏:夏驰和徐策带你从零开始学C 1.1.0 这段话告诉我们什么? 这段话解释了一个C程序中的main函数的基本结构和功能。 它告诉我们以下几点: 1. C程序的…

Debian11 编译bluez

之前的几篇文章写过如果编译x86和dv300 版本的bluez,不过那都是在 Centos7 上编译的。然而当我从taobao 上买了一个蓝牙适配器后发现无法使用(淘宝客服说不支持Centos,只支持ubuntu 和 debian)。再者 Centos 现在也停止支持服务了…

头歌网页设计与制作实训答案

我这里已经看不见原题目了,只粘贴了有Begin和End部分的代码,如果题目符合但答案不符合的的,欢迎在评论区找我。如果有帮助,请赞一个。注意看目录里有没有你需要的。 目录 一、HTML——基础 1.初识HTML: 简单的Hello World网页制…

程序员秋招最全Java面试题及答案整理(2023最新版)

前言 大家好,最近一个月,花了不少时间,给大家整理了一套 2023 的技术面试资料 包括各大厂最新面试题以及面经解析涉及JVM,Mysql,并发,Spring,Mybatis,Redis,RocketMQ&a…

Firefly-SRC资产探测平台

前言 Firefly是一个集资产管理、信息收集和漏洞扫描的综合平台。 Firefly-SRC依托于Firefly平台中的信息收集功能,不断收集和整理各大src相关资产数据。希望能为各位白帽子师傅们提供更稳定可靠的src资产数据,减少师傅挖洞前期的信息收集时间&#xff0c…

一体化个人门户Web Portal

什么是 Web Portal ? Web Portal 是一个一体化的 Web 仪表板,提供许多小部件来构建个人门户。具有加载外部插件的能力。对于那些只需要链接仪表板并希望使用 yaml 配置它的人来说,Lite 版是一个精简版本。 构建镜像 如果你不想自己构建,可以…

Qt的基本知识与应用

一、C梳理 1. 面向对象的三大特性 1.1 封装 把类的一些属性和细节隐藏(private、protected),根据读写需要重新开放外部调用接口(public、protected)。 1.2 继承 在已有的类的基础上创建一个新的类,新的类拥…

最新AI创作系统V5.0.2+支持GPT4+支持ai绘画+实时语音识别输入+文章资讯发布功能+用户会员套餐

最新AI创作系统V5.0.2支持GPT4支持ai绘画实时语音识别输入文章资讯发布功能用户会员套餐! AI创作系统一、源码系统介绍二、AI创作系统程序下载三、安装教程四、主要功能展示五、更新日志 AI创作系统 1、提问:程序已经支持GPT3.5、GPT4.0接口 2、支持三种…

全网唯一正确的一部:GPT式网页上逐字输出像打字的效果用vue js实现全代码-使用SSE技术

GPT逐字显示效果 开篇 像这种屏幕上逐字输出,像一个机器人自动在屏幕上用传统的打印机或者说像“红警”、“COD”游戏里那种电传打字机逐字输出的效果是不是很酷? 其实,这种输出方式不仅仅只是酷,而是有着其设计原理性的东西存在的。GPT采用“逐字输出”的方式回答用户问…

Linux配置静态IP-包教包会(纯干货)

如有错误,敬请谅解! 此文章仅为本人学习笔记,仅供参考,如有冒犯,请联系作者删除!! 方法一:图形化操作 1 选用NAT模式 打开虚拟机软件VM主页,如图,点击编辑虚…

Python3 OS 文件/目录方法 | 菜鸟教程(十四) 详解!!!

目录 一、os 模块提供了非常丰富的方法用来处理文件和目录。 二、常用的方法如下表所示: 三、常用方法详解 (一)Python3 os.access() 方法 1、概述 2、语法 3、参数 (1)path -- 要用来检测是否有访问权限的路径…