AMBA总线协议(2)——AMBA信号

一、前言

        在之前的文章中我们已经对AMBA总线协议进行了一个简单的介绍,这篇文章我们来详细介绍AHB,APB,AXI协议的信号。对于AMBA总线协议有一个初步直观的认识。

二、AMBA信号

         所有 AMBA 信号的命名都用名称的第一个字母来指示信号和哪个总线相关联。信号名称中用一个小写的 n 表示该信号低电平有效,否则信号的名称总是用大写字母来表示。 

三、AHB信号

AHB的信号前缀都是H

AHB 信号
名称 来源 描述

HCLK

总线时钟

时钟源
时钟为所有总线传输提供时基。所有信号时序都和
HCLK 的 上升沿相关。
HRESETn
复位信号
复位控制器
总线复位信号低有效并用来复位系统和总线。这是唯
一的低有效的信号。
 HADDR[31:0]
地址总线 
 主机   32 位系统地址总线。 
  HTRANS[1:0]
传输类型  
  主机  
  表示当前传输的类型,可以是不连续、连续、空闲和忙。  
HWRITE
传输方向  
  主机    读写操作,1-写;0-读  
HSIZE[2:0]
传输大小  
  主机     表示传输的大小,典型情况是字节(8 位)、半字(16位)或者是字(32 位)。协议允许最大的传输大小可以达到 1024 位。  
  HBURST[2:0]
突发类型  
  主机     表示传输是否组成了突发的一部分。支持四个、八个或者 16 个节拍的突发传输并且突发传输可以是增量或者是回环。  
HPROT[3:0]
保护控制  
  主机     提供总线访问的附加信息并且主要是打算给那些希望执行某种保护级别的模块使用的。这个信号指示当前传输是否为预取指或者数据传输,同时也表示传输是保护模式访问还是用户模式访问。对带存储器管理单元的总线主机而言这些信号也用来指示当前传输是高速缓存的(cache)还是缓冲的(buffer)。  
  HWDATA[31:0]
写数据总线  
  主机     写数据总线用来在写操作期间从主机到总线从机传输数据。建议最小的数据总线宽度为 32 位。然而,在要求高带宽运行时扩展(数据总线)还是很容易的。  
HSELx
从机选择  
  译码器     
S 选择信号:表示当前哪个 S 被选择在传送 . 地址选择就是地址译码出来的 S 选择信号HSELx
  HRDATA[31:0]
读数据总线  
  从机     读数据总线用来在读操作期间从总线从机向总线主机传输数据。建议最小的数据总线宽度为 32 位。然而,在要求高带宽运行时扩展(数据总线)还是很容易的。  
HREADY
传输完成  
  从机  
  当 HREADY 为高时表示总线上的传输已经完成。在扩展传输时该信号可能会被拉低。
注意:总线上的从机要求 HREADY 作为输入输出信号。  
  HRESP[1:0]
传输响应  
  从机     传输响应给传输状态提供了附加信息。提供四种不同的响应:OKEY、ERROR、RETRY 和 SPLIT。  
        AMBA AHB也有许多信号请求支持多主机操作。许多这些仲裁信号用于点对点连接,表 2.2中后缀 x用来表示信号来自模块 x。例如,一个系统中会有许多的信号 HBUSREQx,例如 HBUSREQarmHBUSREQdmaHBUSREQtic。这里不做展开。

四、APB信号

         所有的 AMBA APB 信号使用单个字母 P 作为前缀。有些 APB 信号,例如时钟,可能 直接连接到系统总线上的对应信号。
名称 来源 描述

PCLK

总线时钟

时钟源 PCLK 的上升沿用作所有 APB 传输的时基。
PRESETn
APB 复位
复位控制器 APB 总线复位信号为低有效并且通常将该信号直接连接到系统总线复位信号。
  PADDR[31:0]
APB 地址总线 
 主机   这是 APB 地址总线,可高达 32 位宽度并由外设总线桥接单元驱动。 
 PSELx
APB 选择 
 译码器 
 来自二级译码器的信号,从外设总线桥接单元内到每个外设总线从机 x。
该信号表示从机设备被选中并且要求一次数据传输。每个总线从机都有
一个 PSELx 信号。 
 PENABLE
APB 选通 
 主机 
 这个选通信号用来给外设总线上的所有访问提供时间。使能信号用来表
示一次 APB 传输的第二个周期。 PENABLE 的上升沿出现在 APB 传输
的中间。 
 PWRITE
APB 传输方向 
 主机  读写操作,1-写;0-读 
 PRDATA
APB 读数据总线 
 从机 
 读数据总线由被选中的从机在读周期(PWRITE 为低)期间驱动。读数
据总线可达到 32 位宽度。 
 PWDATA
APB 写数据总线 
 主机 
 写数据总线由外设总线桥接单元在写周期(PWRITE 为高)期间驱动。
写数据总线可达到 32 位宽度。 

五、AXI信号

1、全局信号

信号

描述

ACLK

Clock source

全局时钟信号

ARESETn

Reset source

全局复位信号,低电平有效

2、写地址通道信号

    信号

描述

AWID[3:0]

主机

写地址ID,这个信号是写地址信号组的ID tag。

AWADDR[31:0]

主机

写地址。

AWLEN[3:0]

主机

突发式写的长度。此长度决定突发式写所传输的数据的个数。

AWSIZE[2:0]

主机

突发式写的大小。

AWBURST[1:0]

主机

突发式写的类型。

AWLOCK[1:0]

主机

锁类型。

AWCACHE[3:0]

主机

Cache类型。这信号指明事务的bufferable、cacheable、write-through、write-back、allocate attributes信息。

AWPROT[2:0]

主机

保护类型。

AWVALID

主机

写地址有效。

1 = 地址和控制信息有效

0 = 地址和控制信息无效

这个信号会一直保持,直到AWREADY变为高。

AWREADY

设备

写地址准备好。这个信号用来指明设备已经准备好接受地址和控制信息了。

1 = 设备准备好

0 =  设备没准备好

3、写数据通道信号 

信号

描述

WID[3:0]

主机

写ID tag,WID的值必须与AWID的值匹配

WDATA[31:0]

主机

写的数据。

WSTRB[3:0]

主机

写阀门。WSTRB[n]标示的区间为WDATA[(8*n)+7:(8*n)]

WLAST

主机

写的最后一个数据。

WVALID

主机

写有效

1 = 写数据和阀门有效

0 =  写数据和阀门无效

WREADY

设备

写就绪。指明设备已经准备好接受数据了

1 = 设备就绪

0 = 设备未就绪

4、写响应通道信号

信号

描述

BID[3:0]

设备

响应ID , 这个数值必须与AWID的数值匹配。

BRESP[1:0]

设备

写响应。这个信号指明写事务的状态。可能有的响应:OKAY、EXOKAY、SLVERR、DECERR。

BVALID

设备

写响应有效。

1 = 写响应有效

0 = 写响应无效

BREADY

主机

接受响应就绪。该信号表示主机已经能够接受响应信息。

1 = 主机就绪

0 = 主机未就绪

5、读地址通道信号

信号

描述

ARID[3:0]

主机

读地址ID。

ARADDR[31:0]

主机

读地址。

ARLEN[3:0]

主机

突发式读长度。

ARSIZE[2:0]

主机

突发式读大小。

ARBURST[1:0]

主机

突发式读类型。

ARLOCK[1:0]

主机

锁类型。

ARCACHE[3:0]

主机

Cache类型。

ARPROT[2:0]

主机

保护类型。

ARVALID

主机

读地址有效。信号一直保持,直到ARREADY为高。

1 = 地址和控制信息有效

0 = 地址和控制信息无效

ARREADY

设备

读地址就绪。指明设备已经准备好接受数据了。

1 = 设备就绪

0 = 设备未就绪

6、读数据通道信号

信号

描述

RID[3:0]

设备

读ID tag。RID的数值必须与ARID的数值匹配。

RDATA[31:0]

设备

读数据。

RRESP[1:0]

设备

读响应。这个信号指明读传输的状态:OKAY、EXOKAY、SLVERR、DECERR。

RLAST

设备

读事务传送的最后一个数据。

RVALID

设备

读数据有效。

1 = 读数据有效。

0 = 读数据无效。

RREADY

主机

读数据就绪。

1 = 主机就绪

0 = 主机未就绪

7、低功耗接口信号

信号

描述

CSYSREQ

CLOCK controller

系统低功耗请求。此信号来自系统时钟控制器,使外围设备进入低功耗状态。

CSYSACK

外围设备

低功耗请求应答。

CACTIVE

外围设备

Clock active

1 = 外围设备时钟请求

0 = 外围设备时钟无请求

你可能感兴趣的:(AMBA总线协议,fpga开发,fpga,硬件架构,arm,arm开发)