APB總線


APB(Advance Peripheral Bus)是AMBA總線的一部分,從1998年第一版至今共有3個版本。

AMBA 2 APB Specfication:定義最基本的信號interface, 讀寫transfer, APB bridge, APB slave.

AMBA 3 APB:增加定義信號PREADY, PSLVERR來完成對wait state和Error reporting的功能。

AMBA 4 APB:增加定義信號PPROT, PSTRB來支持secure, supervisor和sparse data transfer的功能。

 

APB主要用在低速的IP接口上,協議簡單,時鍾clock也比較低,power較小。

 

APB總線中的信號:

PSELx:由APB bridge產生的信號,針對每一個peripheral bus slave,表示一個slave 是被選中的,有transfer需要傳輸。

PENABLE:在一個transfer的second and subsequent cycles有效。

PSTRB:只能在寫操作中用來指示byte lanes,在讀操作中全為1。

PREADY:由slave產生,來extend an APB transfer,結束前一時鍾有效,表示下一時鍾transfer結束。

PSLVERR:APB transfer的最后一個cycle有效,當PSEL, PENABLE, PREADY同時有效時,不需要該引腳時,tie0

當需要bridge時,PSLVERR可以與AXI總線中的BRESP[1],AHB總線中的HRESP[0]連接一起。

PPROT:分別表示Normal or privileged, Secure or non_secure, Data or Instruction。

在APB總線中分別有PWDATA和PRDATA,但這並不表示它支持同時讀寫,

因為他沒有分別的讀寫握手信號,在讀寫過程中,addr/enable/sel也不可變的,兩組數據信號,可能只是為了簡化邏輯。

 

write transfer:T1時刻,建立階段(Setup)。在PCLK上升沿采樣PADDR,PWDATA,PWRITE,PSEL信號。

                      T2時刻,通信階段(Access)。采樣PENABLE,PREDAY信號。

                      T3時刻,transfer結束。所以一個APB的transfer最少需要兩個時鍾。

 

APB的write操作也需要兩個cycle,可能是考慮與讀操作的一致性,

這樣在AHB2APB 和APB2APB bridge上,邏輯更簡單一些。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM