1、APB简介
APB是AMBA总线体系中的一员,因其具备低功耗、接口和控制简单的特点,广泛被运用于低带宽和不带总线的高性能外设接口,ASIC芯片中寄存器访问。
APB的传输信号只与时钟上升沿有关,故其具备以下优点:
- 易于实现高频操作;
- 性能与时钟占空比无关;
- 静态时序分析简单;
- 易于与基于上升沿的寄存器访问;
- 易于集成到基于周期的仿真器中。
在ASIC设计中,APB作为系统中的从机,与系统中的主总线通过Bridge(AHB to APB 或 AXI to APB)连接,APB从机包含以下接口规则:
- 整个访问中地址和控制信号有效(不分通道);
- 当无外设总线活动时接口功耗为零(外设总线不适用时为静态);
- 通过选通脉冲时序译码产生时序(无时钟接口);
- 整个访问过程中写数据有效(允许无毛刺透明锁存工具)。
2、APB基本原理
AMBA系统设计框图如下,其中AHB/ASB为系统中的main bus,而APB为次级bus,且AHB/ASB与APB通过BRIDGE进行桥接,APB适用于低带宽、低功耗的数据传输。
Bridge就是为了适配AHB和APB的读写操作,如果CPU需要访问UART接口,则先通过AHB总线发出读写指令,然后Bridge转成适配APB指令对UART进行读写transfer。
2.1、APB信号
名字 |
描述 |
PCLK |
系统时钟。 |
PRESETn |
复位,低电平有效。 |
PADDR[31:0] |
地址,32bit。 |
PSELx |
Slave选中信号。 |
PENABLE |
APB transfer使能信号。 |
PWRITE |
1、写操作; 0、读操作。 |
PRDATA |
读数据,32bit。 |
PWDATA |
写数据,32bit。 |
2.2、APB地址空间
图2
APB连接3个外设,分别是UART、Timers和Int Cont。A