• AMBA APB学习记录(AMBA 3)


    前言

    APB自发布以来,已经经过了多个版本的迭代
    最初的版本已经过时,目前使用的是三个修订版本
    amba 2 版本定义的是最简单的apb
    amba 3 相对 2 添加了PREADY/PSLVERR信号
    amba 4 相对 3 添加了PPROT/PSTRB信号

    amba2的apb:AMBA APB学习记录(AMBA 2.0)

    APB3 原理

    Two types of write/read transfer are described in this section:
    • With no wait states
    • With wait states.
    在这里插入图片描述

    写等待

    当从机的ready为低电平时,从机没有准备好接收数据,主机维持高电平,保持主机的发送数据。
    从机ready拉高以后,一次传输完成,可以当作从机的传输完成标志信号。
    ready的有效范围同enable的高电平范围相同。
    在这里插入图片描述

    在这里插入图片描述

    读等待

    当从机的ready信号为高时,表示读出的数据为有效数据。可作为传输完成标志。
    在这里插入图片描述

    写错误

    错误信号的有效范围为ready的高电平时钟,即传输的最后一个时钟。
    在这里插入图片描述

    读错误

    错误信号的有效范围为ready的高电平时钟,即传输的最后一个时钟。
    在这里插入图片描述

    在这里插入图片描述

    APB4修订部分

    Source

    APB4在APB3的基础上添加了两个端口,一个是PPROT,一个是PSTRB。 (其实在平时工作中几乎用不到这两个,主要还是APB3)
    PPROT:一种保护信号,可支持APB上的非安全传输和安全传输。
    PSTRB:一个写选通信号,用于在写数据总线上进行稀疏数据传输。
    我们直接来看看官方文档里对这两个端口的解释
    PPROT
    为了支持复杂的系统设计,通常需要互连和系统中的其他设备提供针对非法交易的保护。 对于APB接口,此保护由PPROT [2:0]信号提供。
    这个信号位宽为3,每一位代表不同的作用。
    PPROT [0]:普通或特权
    低代表正常
    高代表特权
    一些master使用它来指示其处理模式。特权处理模式通常在系统内具有更高级别的访问权限。
    PPROT [1]:安全还是非安全
    低代表安全
    高代表非安全
    这用于需要更大程度区分处理模式的系统中。
    PPROT [2]:数据还是指令
    低代表数据
    高代表指令
    该位指示事务是数据访问还是指令访问。此指示仅作为提示,并非在所有情况下都是准确的。 例如,传输包含指令和数据项的混合。 建议默认情况下,除非明确将其称为指令访问,否则将访问标记为数据访问。

    写选通信号PSTRB使写数据总线上的稀疏数据传输成为可能。 每个写选通信号对应于写数据总线的一个字节。 当置为高电平时,写选通脉冲指示写数据总线的相应字节通道包含有效信息。 写数据总线的每八位有一个写选通脉冲,因此PSTRB [n]对应于PWDATA [(8n + 7): ( 8n)]。

    Reference

    APB协议详解

  • 相关阅读:
    【3D目标检测】Monocular 3D Object Detection with Pseudo-LiDAR Point Cloud
    Android studio在Ubuntu桌面上 创建桌面图标,以及导航栏图标
    数据获取与预处理
    idea 模板参数注释 {@link}
    模拟IIC通讯协议(stm32)(硬件iic后面在补)
    MySQL8 一文读懂存储过程
    redis 的 java实现 —— jedis
    DNS查询流程
    金蝶云星空与旺店通·旗舰奇门对接集成收料通知单查询连通新增采购订单(金蝶收料通知单-旺店通采购订单开单)
    Python网络爬虫:使用Requests库精通网络请求
  • 原文地址:https://blog.csdn.net/I_LOVE_MCU/article/details/126031293