AMBA总线协议的终结者,一文稿定ACECHIAXI

news2024/9/24 11:31:39

无论你是IC设计工程师、验证工程师、FPGA工程师、还是微电子相关专业的学生,对于AMBA总线一定不陌生。

随着技术迭代的发展、基于各种复用IP的SoC芯片场景被高度使用,越来越多的人开始和总线互联打交道。

你肯定听说过AMBA、AHB、APB、AXI、ACE

一、AMBA总线及其版本
AMBA的全称为Advanced Microcontroller Bus Architecture。AMBA总线协议是一套由ARM提供的互连规范,该规范标准化了各种IP之间的芯片通信机制。这些设计通常有一个或多个微处理器以及集成其他一些组件——内部存储器或外部存储器桥、DSP、DMA、加速器和各种其他外围设备,如USB、UART、PCIE、I2C等。AMBA协议的主要动机是用一种标准和高效的方法来重用这些跨多个设计的IP。ACE、CHI这些熟悉而又让人头疼的字眼。
在这里插入图片描述

AMBA系列历时更新五代,目前我们广泛使用和接触的就是AMBA5,在第五代协议中,CHI协议成为“最终boss”登场,难道无数工程师。
在这里插入图片描述

二、掌握AMBA总线的三个阶段

尽管ARM已经开源了所有的AMBA协议,所有的规范都可以从ARM的网站上免费下载。但是AMBA协议官方文档的晦涩难懂,汉化资料往往又不全,其中模块级lab也没有人提供标注解读,学习之路依旧痛苦。

一般来说,AMBA总线的学习难度分为三个阶段:
● 第一个阶段是 APB和AHB的基础阶段
● 第二个阶段是 AXI阶段
● 第三个阶段是 ACE&CHI阶段

大部分人目前对于APB和AHB的掌握程度都已然OK,对于传统的AHB2APB bridge之类的模块都能理解运用,插入一些uart接口也可以处理。

而AXI协议的理解和实战,甚至是进阶到ACE&CHI这个阶段,大部分工程师都是基于官方文档和网络上不一定靠谱的资料心得,摸着石头过河。

三、我们要学会哪些东西?

● 总线访问控制协议(ABA):ABA协议用于控制AMBA总线的访问权限,包括读、写、中断等操作。

● 地址协议(AP):AP协议定义了AMBA总线上的地址格式和寻址方式,包括全局地址、局部地址、直接寻址等。

● 数据传输协议(DP):DP协议定义了AMBA总线上的数据传输方式,包括同步传输和异步传输。

● 时序控制协议(SC):SC协议用于控制AMBA总线上的操作时序,包括时钟源、时钟分频、时序同步等。

● 使能控制协议(EC):EC协议用于控制AMBA总线的使能状态,包括总线使能、中断使能等。

四、AMBA学习的福音
▶ 【AMBA进阶】AXI总线技能全覆盖

移知创始人团长带队,特邀三位行业资深技术专家,精心打磨 《AMBA进阶之AXI总线实战》新课升级,一课搞定AXI总线技能全覆盖。

课程系统全面解读AXI总线协议,帮助学习者快速定位到具体实际问题,解决面试和实际项目中常见难题,如outstanding机制、握手机制原则、out of order机制,死锁问题等。

在协议的理解基础上,提供Masrter和Slave的设计案例模块,通过循序渐进的方式,理解RTL源代码,掌握AXI接口的视线。

即将开课,填写IC入行指导咨询老师,还可免费领取试听课

▼▼▼

在这里插入图片描述
在这里插入图片描述

**重磅彩蛋:**移知提供系统级IP实战项目,让你不仅可以操练模块级lab,更有实际NIC 400总线带你真实体验Arm项目,在项目中你不仅可以了解到防死锁机制…………

▶ 由浅入深,全面解析AMBA ACE&CHI协议

ACE&CHI课程属于最终进阶版本,移知作为Arm中国教育合作方,深耕AMBA系列专题课程,先后与20多位AMBA专家沟通讨论,最终开发出全网唯一AMBA进阶课《AMBA高性能总线ACE&CHI总线协议》,一课带你搞定ACE和CHI,助你攀上AMBA顶峰!

限量粉丝专享福利,填写IC入行指导,前500名,免费试听

▼▼▼

在这里插入图片描述
在这里插入图片描述

移知的目标是希望通过契合实际学习情况的难点进行针对性讲解,帮助各位快速入门,讲师的协议讲解不仅仅是照基于官方文档的解读,也会带上自己的理解以及一些设计实例。让大家在理解协议的本身,也能感悟到到背后的设计思想逻辑,从而可以做到触类旁通,举一反三,从模块级到系统级,从RTL小试牛刀,到RTL烂熟于心。

祝愿各位早日掌握AMBA总线!

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

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

相关文章

银河麒麟V10 SP1安装网络调试助手

文章目录 系统环境文件准备软件配置过程系统环境 系统镜像:Kylin-Desktop-V10-SP1-General-Release-2203-ARM64.iso 内核:5.4.18-53-generic 文件准备 网络调试助手可执行文件压缩包下载m-net-assist-arm64-main.zip 链接:https://pan.baidu.com/s/10Vu8Z6wOzCImXZWAW0Y…

USB采集卡如何打pts

一、使用采集卡提供的pts 二、手动打pts 1.usb采集设备pts的问题 2.采集卡驱动,UVC/UAC,ffmpeg的关系 3.如何自己打pts 4.音视频同步调优 5.NTP等联网调时工具带来的不同步问题 一、使用采集卡提供的pts 我们用使用pc摄像头和使用pc麦克风声卡里的方法&…

SQL分类及通用语法数据类型

一、SQL分类 DDL: 数据定义语言,用来定义数据库对象(数据库、表、字段)DML: 数据操作语言,用来对数据库表中的数据进行增删改DQL: 数据查询语言,用来查询数据库中表的记录DCL: 数据控制语言,用来创建数据库…

大数据技术之Hadoop:HDFS集群安装篇(三)

目录 分布式文件系统HDFS安装篇 一、为什么海量数据需要分布式存储 二、 分布式的基础架构分析 三、 HDFS的基础架构 四 HDFS集群环境部署 4.1 下载安装包 4.2 集群规划 4.3 上传解压 4.4 配置HDFS集群 4.5 准备数据目录 4.6 分发hadoop到其他服务器 4.7 配置环境变…

AlexNet卷积神经网络-笔记

AlexNet卷积神经网络-笔记 AlexNet卷积神经网络2012年提出 测试结果为: 通过运行结果可以发现, 在眼疾筛查数据集iChallenge-PM上使用AlexNet,loss能有效下降, 经过5个epoch的训练,在验证集上的准确率可以达到94%左右…

【NX】NX二次开发中遍历所有部件完整范例

一个入门的基本例子,这里提供完整代码,遍历所有部件,其他同理。 //author:autumoon //邮箱:9506163.com //日期:2023-08-03 /*************************************************************************…

大数据开发的前景怎么样?该怎么学习?

猎聘大数据研究院发布了《2022未来人才就业趋势报告》 从排名来看,2022年1-4月各行业中高端人才平均年薪来看,人工智能行业中高端人才平均年薪最高,为31.04万元;金融行业中高端人才以27.69万元的平均年薪位居第二;通信…

Prometheus-各种exporter

一、 nginx-prometheus-exporter 1 nginx 配置 1.1 Nginx 模块支持 nginx 安装的时候需要有 nginx 的状态模块: stub_status 可通过如下命令检查 nginx -V 2>&1 | grep -o with-http_stub_status_module1.2 Nginx 配置文件配置 添加如下配置到自己 nginx 的配置文…

【Spring框架】SpringBoot统一功能处理

目录 用户登录权限校验用户登录拦截器排除所有静态资源练习:登录拦截器拦截器实现原理 统一异常处理统一数据返回格式为什么需要统⼀数据返回格式?统⼀数据返回格式的实现 用户登录权限校验 用户登录拦截器 1.自定义拦截器 package com.example.demo.…

数据结构【第3章】——线性表

线性表的定义 线性表:零个或多个数据元素的有限序列。 1)线性表是一个序列。即元素之间是有顺序的,若元素存在多个,则第一个元素无前驱,最后一个元素无后继,其他每个元素都有且只有一个前驱和后继。 2&a…

百度地图18.8.0首创红绿灯雷达功能,支持全程静音导航、停车推荐

百度地图App最新版本18.8.0已发布,独家推出红绿灯雷达功能,适用于安卓和iOS系统。 根据官方描述说明,行车时手机启用红绿灯雷达,能够自动检测红绿灯,值得一提的是无需输入目的地。同时,依靠北斗高精定位技术…

如何用python做自然语言处理

如何用python做自然语言处理 使用Python进行自然语言处理(NLP)是非常常见和强大的。以下是一些基本步骤: 安装所需的库: 首先,您需要安装一些用于自然语言处理的Python库,如NLTK(自然语言工具包…

AMEYA360:尼得科科宝旋转型DIP开关系列汇总

旋转型DIP开关 S-4000 电路:BCD(十进制) 代码格式:实码 安装类型:表面贴装 调整位置:顶部 可水洗:无 端子类型:J 引线, 鸥翼型 旋转型DIP开关 SA-7000 电路:BCD(十进制), BCH(十六进制) 代码格式…

Qt5.14.2的安装教程

Qt5.14.2的安装教程 qt creator是qt桌面开发必备的软件,最近重新下载了一份,本文介绍一下Qt的安装过程。 找安装包 本文找到安装包,网址链接 qt5.14.2安装包官网: https://download.qt.io/archive/qt/5.14/5.14.2/ 这个官网下载速…

利用openTCS实现车辆调度系统(一)系统介绍

系统介绍 openTCS简介 官方的回答: openTCS(开放式运输控制系统的缩写)是一种免费的控制系统软件,用于协调自动导引车(AGV)和移动机器人车队,例如在生产工厂中。 通常应该可以控制任何具有通信…

Vue.js2+Cesium 五、WMS 服务加载,控制自图层显隐

Vue.js2Cesium 五、WMS 服务加载&#xff0c;控制自图层显隐 Demo <template><divid"cesium-container"style"width: 100%; height: 100%;"><div class"layer_container"><button id"btn">清除</button&g…

快速增加Shopee,lazada店铺销量的秘籍大揭秘

在竞争激烈的电商市场中&#xff0c;如何快速提高Shopee。lazada店铺的销量一直是卖家们关注的焦点。 优化产品信息&#xff1a;在Shopee平台上&#xff0c;完整填写产品标题、描述和关键词等信息非常重要。确保您的产品信息准确、清晰&#xff0c;并包含与目标买家搜索相关的…

Jest和Mocha两者之间有哪些区别?

什么是单元测试&#xff1f; 所谓单元测试&#xff0c;是对软件中单个功能组件进行测试的一种软件测试方式&#xff0c;其目的是确保代码中的每一个基本单元都能正常运行。因此&#xff0c;开发人员在应用程序开发的整个过程&#xff08;即代码编写过程&#xff09;中都需要进行…

SpringBoot + ajax 实现分页和增删查改

0目录 1.SpringBoot 2.SpringBoot分页&#xff1b;增删改查 1.SpringBoot分页 创建数据库和表 创建SpringBoot工程&#xff0c;引入springboot下的分页依赖 配置application.yml 实体类 Mapper接口 Mapper.xml Service接口 Service实现类 控制层 测试 加…

Liunx环境下git的详细使用(gitee版)

Liunx环境下git的详细使用&#xff08;gitee版&#xff09; 1.git是什么2.git操作2.1在gitee创建一个仓库2.2.gitignore2.3.git 3.git三板斧3.1add3.2 commit3.3push 4.git其他命令4.1查看当前仓库状态4.2查看提交日志4.3修改git里面文件名称4.4删除文件4.5修改远端仓库内容 1.…