AMBA总线协议(3)——AHB(一)

目录

一、前言

二、什么是AHB总线

1、概述

2、一个典型的基于AHB总线的微处理器架构

3、基本的 AHB 传送特性       

三、AMBA AHB总线互联       

 四、小结


一、前言

        在之前的文章中我们初步的了解了一下AMBA总线中AHB,APB,AXI的信号线及其功能,从本文开始我们将正式开始学习AMBA总线的细节,本文着重介绍AHB协议,了解什么是AHB协议,其功能与互联方式。

二、什么是AHB总线

1、概述

        AHB 主要用于高性能模块(如 CPU、DMA 和 DSP 等)之间的连接,作为 SoC 的片上系统总线,它包括以下一些特性:突发传输;分块处理;单周期总线主机移交;单时钟沿操作;非三态执行;更宽的数据总线架构(64 位或者 128 位)。

        AHB 系统由主模块、从模块和基础结构(Infrastructure)3 部分组成,整个 AHB 总线上的传送都由主模块发出,由从模块负责回应。

组件描述
AHB主机AHB 总线可以有多个主机,通常有CPU,测试接口,DMA或者DSP
AHB从机外挂内存接口,APB桥,内部RAM,其他一些外围设备通常也能作为从机
APB低带宽的外围设备通常挂在APB上
基础结构仲裁器(arbiter)
主模块到从模块的多路器
从模块到主模块的多路器
译码器(decoder)
虚拟从模块(dummy S)
虚拟主模块(dummy M)所组成。

2、一个典型的基于AHB总线的微处理器架构

        下图就是一个典型的基于AHB总线的微处理器架构

        其中包含了二个主要的总线 高效能总线 (AHB) 和外围总线 (APB)。 AHB 主要是针对高效率、高频宽及快速系统模块所设计的总线,它可以连接如微处理器、芯片上或芯片外的内存模块和直接内存存取机制等高效率模块,此总线持别适合用于可合成和自动测试技术上的设计程序中。
AMBA 中的 APB 主要用在低速且低功率的外围,可针对外围作功率消耗及复杂接口的最佳化。由上图可知,负责 AMBA AHB 和 APB 之间的沟通管道为一桥梁(bridge),APB bridge 主要负责总线数据的栓取、译码及传送。
下表给出了AHB总线与APB总线的特性比较:
AMBA 高级高性能总线 AHBAMBA 高级外设总线

(1)高性能

(2)流水线操作

(3)猝发传输

(4)多个总线主设备

(5)分割交易

(1)低功耗

(2)锁存的地址和控制

(3)简单的接口

(4)适合很多外设

          AMBA 的主要目标是要让使用者能在最快的时间内完成一个以嵌入式微处理器为平台的系统设计它还可以让(具有重复使用特性的)外设及系统宏组件轻易被整合进(全客户、标准组件和逻辑数组为技术的)设计流程中;且让模块化的设计很容易的被整合进一个以微处理器为平台的系统开发环境。在 AMBA 的规格中亦提供一个测试控制接口,使得 AHB 和 APB 可透过外在的系统测试样品来作测试,因此也减轻了功能测试时的工作。

        简单说就是AMBA总线可以让用户快速设计属于自己的系统(一般是芯片),并且可轻易通过AMBA总线实现外设的挂载。

3、基本的 AHB 传送特性       

AHB 以仲裁器来控制多任务器以连接在其上的主机与从机。 在 AHB 总线上,其操作顺序一般如下:
(1)主机要求总线使用
(2)仲裁器响应允许信号
(3)从机送出地址与控制信号
        一次传送包括给出地址、控制信号周期(address, control)与数据周期(data cycle)。地址与控制信号周期最少需要一个周期,但是会因为数据的原因多出几个周期。数据周期可以通过HREADY 信号来延迟。拉起 HREADY 代表此次传送已经 OK。
AHB 支持批量式数据传送,可以自动递增地址。递增地址方式分为:持续递增(incrementing without wrapping at address boundary),另一种为回绕传送 (wrapping at address boundary.)。
在 AHB 上写数据总线将数据送到 从机,由读数据总线将数据送到 主机
从机以 HRESP[1:0]信号表示传送的状态:
(1)HRESP[1:0] = 00 (OKAY):当此信号再加上拉高的 HREADY(OKAY+高 HREADY)就表示此次的传送已完成。
(2)HRESP[1:0] = 01 (ERROR):传送失败。
(3)HRESP[1:0] = 10 (RETRY) and HRESP[1:0] = 11 (SPLIT):当数据传送无法立刻完成时,主机会继续尝试完成数据的传送。
这部分可以说是AHB传输的核心内容,这里让大家有一个初步的概念,在下一篇文章中会详细解释AMBA AHB的传输操作。

三、AMBA AHB总线互联       

        AMBA AHB 总线协议设计使用一个中央多路选择器互联方案。使用该方案所有总线主机设备输出地址和控制信号来指示它们想执行的传输。同时仲裁器决定哪一个主机能够将它的地址和控制信号连通到所有的从机。当然也需要一个译码器来控制读数据和响应多路信号选择器,多路信号选择器选中来自传输中所包含从机的适当信号。

 四、小结

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

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

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

相关文章

vue + vue-office 实现多种文件(docx、excel、pdf)的预览

支持多种文件( docx、excel、pdf)预览的vue组件库,支持vue2/3。也支持非Vue框架的预览。 github: 《仓库地址》 演 示: 《演示效果》 功能特色 一站式:提供docx、pdf、excel多种文档的在线预览方案,有它就够了简单&#xff1a…

简历本-专业在线简历制作下载网站 自带智能简历诊断

简历本是一个高效的在线简历制作与管理工具,为求职者提供专业简历模板,使用简历本5分钟就能制作一份优秀简历,可随时随地将简历下载为Word、PDF、图片格式文件,可在线发送或投递,不过使用需要注册登陆,提供…

Docker+Selenium Grid搭建自动化测试平台

安装docker yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install docker-ce -y Create a Docker Network docker network create grid 下载镜像 hu…

perl下载与安装教程【工具使用】

Perl是一个高阶程式语言,由 Larry Wall和其他许多人所写,融合了许多语言的特性。它主要是由无所不在的 C语言,其次由 sed、awk,UNIX shell 和至少十数种其他的工具和语言所演化而来。Perl对 process、档案,和文字有很强…

ONES × 鲁邦通|打造研发一体化平台,落地组织级流程规范

近日,ONES 签约工业互联网行业领先的解决方案提供商——鲁邦通,助力鲁邦通优化组织级流程规范,落地从需求到交付的全生命周期线上化管理。 依托于 ONES 一站式研发管理平台,鲁邦通在软硬件设计开发、项目管理和精益生产等方面的数…

16----公式

本节我们来学习如何在markdown中打印公式 Markdown是一种轻量级标记语言,常用于撰写文档、博客和论坛帖子。虽然Markdown本身并不支持数学公式,但可以使用一些扩展来实现公式的显示。在支持公式扩展的 Markdown 解析器中,我们可以使用 Katex …

嵌入式:ARM Day6

作业:完成cortex-A7核UART总线实验 目的:1.输入a,显示b,将输入的字符的ASCII码下一位字符输出 2.原样输出输入的字符串 源码: uart4.h #ifndef __UART4_H__ #define __UART4_H__#include "stm32mp1xx_rcc.h" #incl…

.netcore windows app启动webserver

创建controller: using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.Json.Serialization; using System.Threading.Tasks;namespace MyWorker.…

安防监控/视频集中存储/云存储平台EasyCVR v3.3增加首页告警类型

安防监控/视频集中存储/云存储EasyCVR视频汇聚平台,可支持海量视频的轻量化接入与汇聚管理。平台能提供视频存储磁盘阵列、视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集群、语音对讲、云台控制、电子地图、平台级联、H.265自动转码等…

.netcore grpc客户端工厂及依赖注入使用

一、客户端工厂概述 gRPC 与 HttpClientFactory 的集成提供了一种创建 gRPC 客户端的集中方式。可以通过依赖包Grpc.Net.ClientFactory中的AddGrpcClient进行gRPC客户端依赖注入AddGrpcClient函数提供了许多配置项用于处理一些其他事项;例如AOP、重试策略等 二、案…

微服务中间件--分布式事务

分布式事务 a.理论基础1) CAP定理2) BASE理论 b.Seata1) XA模式1.a) 实现XA模式 2) AT模式3) TCC模式3.a) 代码实现 4) Saga模式5) 四种模式对比6) TC的异地多机房容灾架构 a.理论基础 1) CAP定理 分布式系统有三个指标: Consistency(一致性&#xff…

【仿写tomcat】四、解析http请求信息,响应给前端,HttpServletRequest、HttpServletResponse的简单实现

思考 在解析请求之前我们要思考一个问题,我们解析的是其中的哪些内容? 对于最基本的实现,当然是请求类型,请求的url以及请求参数,我们可以根据请求的类型作出对应的处理,通过url在我们的mapstore中找到se…