Functional Description
The APB Interconnect core is a bridge to arbitrate among multiple
masters to a single slave based on priority level. The APB Interconnect core grants request to master with the selected
priority. The APB Interconnect core thas two main interfaces:
- APB Master Interface—Provides 32 master interfaces to the APB Interconnect core.
- APB Slave Interface—Supports single slave interface.
The APB Interconnect core operates based on AMBA 3 APB protocol
specifications. The following describes the general operation of the APB Interconnect core:
- When
apb_evalis asserted, it indicates that APB Interconnect is inEVALUATIONstate, where it analyzes all masters' request and decide which master to grant. - During
EVALUATIONstate (i.e.,apb_eval=1), any assertion ofPSELmarks the start of the APB request.- For an APB write request,
PWRITEneeds to assert too.PADDRandPWDATAcontain destination address and the intendedDATAto be written. - For an APB read request,
PWRITEneeds to be 0 whilePADDRcontains the address of the register to be read.
- For an APB write request,
- The
PENABLEsignal needs to be1at one clock cycle after the assertion ofPSELfor the APB request to be successful. ThePENABLEassertion marks the start of transfer of the APB request. - The
PREADYsignal is a return or response signal from the slave. The assertionPREADYindicates that the slave has completed the APB request. - The
PRDATAsignal contains the result of the APB read request and it is valid whenPREADYis1. - Masters' input signals (
PSEL,PENABLE,PWRITE,PADDR, andPWDATA) need to be maintained throughout the APB request, i.e., from the assertion ofPSELuntil the assertion ofPREADY. - Upon receiving
PREADY, master may change thePSEL,PENABLE,PWRITE,PADDR, andPWDATAsignals for the next request or transfer.