于是乎,我们想到了总线,用一个统一的接口协议,设计出一个符合要求的总线,然后将ARM核和各种外设模块挂载在总线上,这样,命令和数据似乎便可以在CPU和外设之间自由穿梭。

1 AMBA总线

AMBA,英文全称为Advanced Microcontroller Bus Architecture,即高级微控制器总线架构。

AMBA的简易发展历史:

  • AMBA 1.0:ASB总线,APB总线

  • AMBA 2.0:ASB总线,APB总线,AHB总线

  • AMBA 3.0:ASB总线,APB总线,AHB总线,AXI总线

AMBA中,APB总线、AHB总线和AXI总线的使用较多,所以进行较为详细的介绍。

1.1 APB总线

1、特点

  • 低速总线,低功耗。
  • 接口简单。
  • 在桥接器中锁存地址信号和控制信号。
  • 适用于多种外设,例如Timer,UART等。
  • 上升沿触发。

2、组成

  • ahb_to_apb(桥接器),可以锁存所有的地址、数据和控制信号,进行二级译码来产生APB从设备选择信号。

  • APB总线上的所有其它模块都是APB从设备。

APB1总线:

(1)定时器TIM2到TIM7;

(2)RTC;

(3)WDT看门狗;

(4)SPI2 、SPI3;

(5)USART2、USART3;

(6)UART4、UART5;

(7)I2C1,I2C2;

(8)USB./CAN共享的512字节SRAM;

(9)bXCAN1、bXCAN2;

(10)后备寄存器BKP;

(11)电源控制PWR;

(12)DAC

APB2总线:

(1)USART1;

(2)高级控制定时器TIM1和TIM8;

(3)模数转换器ADC1、ADC2、ADC3;

(4)SPI1;

(5)外部中断EXTI;

(6)复用IO,AFIO;

(7)通用IO:GPIOA~G;

1.2 AHB总线

1、特点

  • 高速总线,高性能。
  • 可支持多个总线主设备(最多16个)。
  • 支持burst传输。
  • 总线带宽:8、16、32、64、128bits。
  • 上升沿触发。

2、组成

  • AHB主设备(master)。
  • AHB从设备(slave)。
  • AHB仲裁器(arbiter)。
  • AHB译码器(decoder)。

AHB总线连接着PCIE、USB、HDMI、ROM等高速接口设备

1.3 AXI总线

AXI(Advanced eXtensible Interface)是一种总线协议,是AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持Outstanding传输访问和乱序访问,并更加容易进行时序收敛。

AXI总线连接嵌入式处理器、片内RAM、DMA主机、ISP、CODEC等高速设备

AMBA总线架构简介的更多相关文章

  1. AMBA总线基础知识简介

    AMBA:Advanced Microcontroller Bus Architecture,是ARMA公司的片内互联总线协议. 1995 - AMBA1.0 APB外设总线及ASB系统总线发布. 1 ...

  2. AMBA总线介绍

    The Advanced Microcontroller Bus Architecture (AMBA) specification defines an on- chip communication ...

  3. AMBA总线协议AHB、APB

    一.什么是AMBA总线 AMBA总线规范是ARM公司提出的总线规范,被大多数SoC设计采用,它规定了AHB (Advanced High-performance Bus).ASB (Advanced ...

  4. AMBA总线协议AHB、APB、AXI对比分析【转】

    转自:https://blog.csdn.net/ivy_reny/article/details/56274412 一.AMBA概述    AMBA (Advanced Microcontrolle ...

  5. Cortex-M0(+)内核的处理器架构简介

    Cortex-M0(+)内核的处理器架构简介 2015年03月02日 16:51:12 阅读数:3158 系统架构 Cortex-M0处理器具有32位系统总线接口,以及32位地址线,即有4GB的地址空 ...

  6. LoadRunner系统架构简介

    1.LoadRunner系统架构简介 LoadRunner是通过创建虚拟用户来代替真实实际用户来操作客户端软件比如Internet Explorer,来向IIS.Apache等Web服务器发送HTTP ...

  7. crtmpserver的架构简介

    crtmpserver的架构简介 一.层 Layers . 机器层 Machine layer . 操作系统层 Operating System Layer   This layer is compo ...

  8. cavium octeon 处理器启动总线Bootbus 简介

    cavium octeon 处理器启动总线Bootbus 简介: 韩大卫@吉林师范大学 Boot-bus(启动总线)是cavium octeon处理器的一种用于启动系统的硬件. CPU通过boot b ...

  9. Extjs6官方文档译文——应用架构简介(MVC,MVVM)

    应用架构简介 Extjs 同时提供对于MVC和MVVM应用架构的支持.这两个架构方式共享某些概念,而且都旨在沿着逻辑层面划分应用程序代码.每种方法在选择如何划分应用组件上都有其各自的优势. 本指南的目 ...

  10. FC总线技术简介

    FC是由美国标准化委员会(ANSI)的X3T11小组于1988年提出的高速串行传输总线,解决了并行总线SCSI遇到的技术瓶颈,并在同一大的协议平台框架下可以映射更多FC-4上层协议.FC具备通道和网络 ...

随机推荐

  1. mybatisplus轻松完成一次模糊+分页查询

    之前一直用mybatis+pageinfo完成模糊+分页查询,还需要手写sql语句,之前一直没做尝试,今天试了试mybatisplus一个人完成模糊+分页,挺简单的 有一个小插曲是,我的前端接受的da ...

  2. Mysql查询几天前或几天后的日期

    查询 当天±天数 后的日期."-14"表示14天前的日期,"14"表示14天后的日期 NOW()精确到时分秒,CURDATE()只精确到天 #查询今天 1.se ...

  3. 【C3】05 层叠与继承

    本文旨在让你理解CSS的一些最基本的概念 --层叠.优先级和继承-- 这些概念决定着如何将CSS应用到HTML中,以及如何解决冲突. 尽管与课程的其他部分相比,完成这节课可能看起来没有那么直接的相关性 ...

  4. NVIDIA人形机器人AI套件:NVIDIA Isaac Manipulator 和 NVIDIA Isaac Perceptor

    IsaacManipulator 为机械臂提供了卓越的灵活性和模块化AI功能,并提供了一系列强大的基础模型和GPU加速库.它提供了高达80倍的路径规划加速,零样本感知提高了效率和吞吐量,使开发者能够实 ...

  5. 强化学习中经验池的替代设计——A3C算法

    读论文<Asynchronous methods for deep reinforcement learning>有感 ---------------------------------- ...

  6. 使用tensorbaoardx报错——Descriptors cannot not be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.

    运行代码报错: from tensorboardX import SummaryWriter 报错内容: 发生异常: TypeError Descriptors cannot not be creat ...

  7. Python 环境傻瓜式搭建 :Anaconda概述

    Anaconda概述 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存.切 ...

  8. SMU 2024 spring 天梯赛3

    SMU 2024 spring 天梯赛3 7-1 重要的话说三遍 - SMU 2024 spring 天梯赛3 (pintia.cn) I'm gonna WIN! I'm gonna WIN! I' ...

  9. SMCA:港中文提出注意力图校准的DETR加速方案 | ICCV 2021

    为了加速DETR收敛,论文提出了简单而有效的Spatially Modulated Co-Attention(SMCA)机制,通过在初始边界框位置给予较高的协同注意力响应值的约束来构建DETR的回归感 ...

  10. C语言之父和Linux之父谁更伟大?

    前言 在计算机软件领域,做出过重大贡献的神人很多,比如:<计算机程序设计艺术>(The Art of Computer Programming)一书的作者- Donald Knuth:Pa ...