如果你是一個IC工程師,并且當前的芯片設計是 基于各種復用IP的SOC芯片 ,你肯定聽說過AMBA、AHB、APB、AXI、AXI-lite、ACE、CHI等。
AMBA總線協(xié)議是一套由ARM提供的互連規(guī)范,該規(guī)范標準化了各種IP之間的芯片通信機制。這些設計通常有一個或多個微處理器以及集成其他一些組件——內部存儲器或外部存儲器橋、DSP、DMA、加速器和各種其他外圍設備,如USB、UART、PCIE、I2C等。AMBA協(xié)議的主要動機是用一種標準和高效的方法來重用這些跨多個設計的IP。
學習AMBA協(xié)議的第一步是了解這些不同的協(xié)議在哪里使用,是如何演進的,以及它們適合什么樣SOC設計。 下圖展示了傳統(tǒng)基于AMBA的SOC設計,它使用AHB(高級高性能)協(xié)議進行高帶寬互連,以及針對低帶寬外圍互連的APB(高級外圍總線)協(xié)議。
隨隨著越來越多的IP集成到SOC設計中,讀寫共享的AHB、APB總線已經無法滿足互聯(lián)需求了。2003年,AMBA3.0引入了 點對點連接協(xié)議 ——AXI(高級可擴展接口)。此外在2010年,又推出了一個增強版——AXI4。下圖說明了協(xié)議的演變以及行業(yè)中的SOC設計趨勢。
下圖說明了如何使用AXI互連來構建各種IP通信的的SOC。與以前的AHB/ASB總線相比,AXI互連有助于提高連接數(shù)量。
在移動和智能手機時代發(fā)生了進一步的演進,SOC集成了2/4/8核處理器和共享cache,并且需要跨內存子系統(tǒng)的硬件管理一致性。這導致了在AMBA修訂版4中引入了 ACE(AXI一致性協(xié)議擴展) 。
在當前HPC和數(shù)據(jù)中心市場的異構計算時代,單個芯片上集成越來越多的處理器核心以及GPU、DSP、FPGA、內存控制器和IO子系統(tǒng)。2013年,AMBA5引入了CHI協(xié)議,作為AXI/ACE協(xié)議的重新設計。基于信號的AXI/ACE協(xié)議被新的基于包的CHI協(xié)議所取代。
ARM已經開源了所有的協(xié)議,所有的規(guī)范都可以從ARM的網站上免費下載。
1、APB:高級外圍設備總線(APB) 用于連接低帶寬的外圍設備。它是一個簡單的非流水線協(xié)議。讀寫操作共享同一組信號,不支持burst數(shù)據(jù)傳輸。最新的規(guī)范(APB2.0)可以在ARM網站上找到, 是最容易學習的AMBA 協(xié)議 。
2、AHB:高級高性能總線(AHB) 用于連接共享總線上需要更高帶寬的組件。這些slave組件可以是內部內存或外部內存接口、DMA、DSP等。AHB可以通過burst數(shù)據(jù)傳輸來獲得更高的帶寬。
3、AHB-lite協(xié)議是AHB的一個簡化版本。簡化后 只支持一個主設計 ,這消除了對任何仲裁、重試、分割事務等的需求。
4、高級可擴展接口(AXI) 適合于高帶寬和低延遲互連。這是一個點對點的互連,并克服了AHB、APB等共享總線協(xié)議在可連接的代理數(shù)量方面的限制性。該協(xié)議支持多個outstanding 的數(shù)據(jù)傳輸、burst數(shù)據(jù)傳輸、單獨的讀寫通道和支持不同的總線寬度。
5、AXI-lite協(xié)議是AXI的簡化版本,簡化后不支持突發(fā)數(shù)據(jù)傳輸。
**6、AXI-stream **協(xié)議是AXI協(xié)議的另一種風格,它只支持數(shù)據(jù)流從master 流到slave。與完整的AXI或AXI-lite不同,AXI-stream 協(xié)議中沒有單獨的讀/寫通道,因為其目的是只在一個方向上流。
7、ACE-AXI協(xié)議是AXI4協(xié)議的擴展,應用于在一個芯片上集成多個CPU核心與一致性cache的場景。ACE協(xié)議擴展了AXI讀寫數(shù)據(jù)通道,同時 引入了單獨的snoop 地址、snoop 數(shù)據(jù)和snoop 響應通道 。這些額外的通道提供了實現(xiàn)基于snoop 的一致性協(xié)議的機制。
8、ACE-Lite —對于沒有自己cache的agents ,但仍屬于可共享一致性域的一部分,如DMA或網絡接口agent,使用ACE-lite協(xié)議實現(xiàn)這種“單向”一致性。
9、CHI —ACE協(xié)議作為AXI的擴展而開發(fā),以支持一致性互連。ACE協(xié)議使用了master/slave之間的信號電平通信,因此互連需要大量的線和增加的通道來進行snoops 和響應。這對于具有2/4核移動SOC 的小一致性clusters非常有效。隨著SOC上集成越來越多的一致性clusters ——AMBA5修訂版引入了CHI協(xié)議。CHI協(xié)議使用基于分層分組的通信協(xié)議,具有協(xié)議、鏈路層和物理層實現(xiàn),還支持基于QoS的流控制和重試機制。
概述是我們深入地了解這些協(xié)議的開始,進一步了解的最好方法是閱讀規(guī)范,以了解每個協(xié)議的細節(jié)。APB和AHB相對簡單,而且很容易學習。AXI和ACE/CHI相對復雜,需要詳細閱讀,以及了解緩存一致性和一般通信協(xié)議的基本知識。
-
dsp
+關注
關注
556文章
8155瀏覽量
357344 -
ARM
+關注
關注
134文章
9349瀏覽量
377357 -
dma
+關注
關注
3文章
576瀏覽量
103191 -
AMBA
+關注
關注
0文章
70瀏覽量
15445 -
總線協(xié)議
+關注
關注
0文章
128瀏覽量
15272
發(fā)布評論請先 登錄
評論