APB3和APB4

内容参考APB协议详解_Ky-CSDN博客_apb协议https://blog.csdn.net/burningCky/article/details/109630018

APB2协议的特点:

  1. 低成本
  2. 低功耗
  3. 低带宽
  4. 无流水线
  5. 所有信号都是时钟上升沿有效
  6. 进行一次数据传输至少需要两个周期

APB:(APB3比APB2多两个信号,APB4比APB3多两个信号)

信号

描述

P_clk

APB2

时钟。所有信号都是时钟上升沿有效。

P_reset_n

APB2

复位。低电平有效

P_addr

APB2

APB地址总线。最大位宽为32位

P_sel_x

APB3

选通。APB master会将此信号生成给每个slave。它指示已选择的slave,并且需要进行数据传输。每个slave都有一个P_sel_x信号

P_enable

APB2

使能。当他为高时,表示数据有效。

P_write

APB2

读写控制。1:写;0:读;

P_wdata

APB2

写数据。Master通过P_wdata将数据写到slave,该总线最大宽度为32位

P_rdata

APB2

读数据。Master通过P_rdata将数据从slave读回来,最大位宽=32bit

PREADY

APB3

是一个对于slave的准备信号,用于扩展APB的传输;(DUT的输出)

PSLVERR APB3

是一个错误反馈信号表示当前传输的数据有误

PPROT APB4

PPROT:一种保护信号,可支持APB上的非安全传输和安全传输。

PPROT [0]:0:普通;1:特权。一些master使用它来指示其处理模式。特权处理模式通常在系统内具有更高级别的访问权限。

PPROT [1]:0:安全;1:非安全。这用于需要更大程度区分处理模式的系统中。

PPROT [2]:0:数据;1:指令。该位指示事务是数据访问还是指令访问。此指示仅作为提示,并非在所有情况下都是准确的。

PSTRB APB4

PSTRB:一个写选通信号,用于在写数据总线上进行稀疏数据传输。

这个信号位宽为4,每一位代表不同的作用,对应于写数据总线的一个字节的有效与否。

 无论是读还是写,都是两个周期。在第一个周期,PSEL为高,PENABLE为低,这个时候为data的传输做准备工作;第二个周期里,PSEL和PENABLE同时为高,进行data的传输。

APB2:写数据

APB3和APB4_第1张图片

 APB3:写数据,有等待

 相对于APB2无非就是多了个PREADY,也就是说,当PSEL为高,PENABLE为高时,总线会看PREADY是否为高,如果为高,则进行数据传输,如果为低,那么等待其变为高。

APB3和APB4_第2张图片

当PSEL和PENABLE都为高的时候,PREADY为低,说明slave没有准备好,需要继续等待PREADY拉高。

PSLVERR:当PSEL,PENABLE和PREADY均为高电平时,仅在APB传输的最后一个周期内才认为PSLVERR有效,其他时间不考虑PSLVERR。

APB3和APB4_第3张图片

 PSTRB:写选通信号PSTRB使写数据总线上的稀疏数据传输成为可能。 每个写选通信号对应于写数据总线的一个字节。 当置为高电平时,写选通脉冲指示写数据总线的相应字节通道包含有效信息。

你可能感兴趣的:(总线协议,其他)