APB Protocol - Part1
APB Protocol - Part1
PART - 1
KOTHA VANI
INDEX
◦ Introduction
◦ APB Topology
◦ Block Diagram
◦ Signal Description
◦ Protection Unit Support
◦ Operating States
Introduction
◦ The APB protocol is a low-cost interface, low frequency, low power and a
Single channel protocol used to connect various peripherals or memory
components to a CPU in SoC designs.
◦ The APB interface is not pipelined and is a simple, synchronous protocol.
Every transfer takes at least two cycles to complete.
◦ Used to communicate with the low bandwidth peripheral components like
I2C, PCI, UART, Timer, Keypad and PIO.
◦ The APB interface is designed for accessing the programmable control
registers of peripheral devices. APB peripherals are typically connected to
the main memory system using an APB bridge. For example, a bridge from
AXI to APB could be used to connect a number of APB peripherals to an
AXI memory system.
APB Topology
Block Diagram
Signal Description
SIGNAL SOURCE DESCRIPTION
PCLK Clock PCLK is a clock signal. All APB signals are timed against the rising
edge of PCLK.
PRESETn System bus PRESETn is the reset signal and is active-LOW. PRESETn is normally
reset connected directly to the system bus reset signal.
PADDR Master PADDR is the APB address bus.
PSELx Master The Master generates a PSELx signal for each Slave. PSELx indicates
that the Slave is selected and that a data transfer is required.
PENABLE Master PENABLE indicates the second and subsequent cycles of an APB
transfer.
PWRITE Master PWRITE indicates an APB write access when HIGH and an APB read
access when LOW
PWDATA Master The PWDATA write data bus is driven by the APB bridge Master
during write cycles when PWRITE is HIGH.
SIGNAL SOURCE DESCRIPTION
PSTRB Master PSTRB indicates which byte lanes to update during a write transfer.
There is one write strobe for each 8 bits of the write data bus. PSTRB
must not be active during a read transfer.
PREADY Slave PREADY is used to extend an APB transfer by the Slave.
PSLVERR Slave Transfer error. PSLVERR is an optional signal that can be asserted
HIGH by the Slave to indicate an error condition on an APB transfer
PRDATA Slave The PRDATA read data bus is driven by the selected Slave during
read cycles when PWRITE is LOW.
Protection Unit Support
Operating States
• Idle state → default state