引言 片上系統是在單芯片上實(shí)現全部電子系統的集成,通過(guò)使多個(gè)設備集成在一個(gè)芯片上,實(shí)現系統級的功能,減少甚至不再需要外部器件的使用,達到應用功能的快速實(shí)現、靈活修改及方便升級。進(jìn)行片上系統設計時(shí),首先要考慮的問(wèn)題是系統的體系結構。為了提高開(kāi)發(fā)模塊的重復利用率,降低開(kāi)發(fā)成本,用戶(hù)采用了片上系統(芯片內部)總線(xiàn)。與芯片間總線(xiàn)(如SPI、I2C、UART、并行總線(xiàn))、板卡間總線(xiàn)(ISA、PCI、VME)、設備間總線(xiàn)(USB、1394、 RS232)不同的是,片上系統總線(xiàn)為用戶(hù)提供了一個(gè)堪稱(chēng)“理想”的環(huán)境:片上系統模塊間不會(huì )面臨干擾、匹配等傳統問(wèn)題;但是片上系統的時(shí)序要求異常嚴格。 由于OPENCore和其它致力于開(kāi)放知識產(chǎn)權(OPEN Intellectual Property)的組織的大力推廣(開(kāi)發(fā)設計了大量基于標準化片上總線(xiàn)的免費模塊),用戶(hù)在片上系統總線(xiàn)的選擇上更傾向于采用那些標準化、開(kāi)放化的方案。目前,業(yè)界采用比較多的標準化、開(kāi)放化的總線(xiàn)方案包括:IBM 公司的CoreConnect、ARM的AMBA和Silicore公司的Wishbone。 1 三種總線(xiàn)的邏輯結構圖及描述 1.1 IBM CoreConnect綜述 圖1是CoreConnect的邏輯總線(xiàn)結構圖。 ![]() 從圖1可以看到CoreConnect定義了一個(gè)清晰的結構,囊括了所有系統組件和它們之間的連接。它一共設計了3種總線(xiàn)和1個(gè)高性能總線(xiàn)與低性能總線(xiàn)連接的橋,分別是OPB、PLB、DCR總線(xiàn)和OPB橋。OPB總線(xiàn)連接外部設備;PLB總線(xiàn)連接處理器、外部高速緩存和高速存儲器,是解決處理器運算瓶頸的總線(xiàn);DCR總線(xiàn)將所有連接在PLB上的模塊通過(guò)雛菊花環(huán)的方式進(jìn)行互聯(lián)配置,通過(guò)它來(lái)分配配置信息,減少對OPB和PLB總線(xiàn)的帶寬占用;OPB橋實(shí)現了PLB總線(xiàn)和OPB總線(xiàn)的互聯(lián)。因為PLB和OPB的性能差異,所以設計中OPB橋在 OPB總線(xiàn)端相當于一個(gè)主OPB設備,而在PLB總線(xiàn)端則相當于一個(gè)從PLB設備。這樣在從PLB設備發(fā)出信號時(shí),主OPB設備就根據它的可接收情況進(jìn)行分拆、重發(fā)等等。 1.2 ARM的AMBA綜述 圖2是AMBA的邏輯總線(xiàn)結構圖。 ![]() 從圖2可以看到,AMBA也設計了3種總線(xiàn)結構和1個(gè)總線(xiàn)之間的橋。不同的是,AHB/ASB 總線(xiàn)是并列的關(guān)系。AHB/ASB總線(xiàn)都是系統總線(xiàn),都可以實(shí)現與高性能設備的高速連接。ASB總線(xiàn)是ARM的第一代系統總線(xiàn),但是ARM還是建議在新的設計中使用AHB總線(xiàn)。這不僅因為AHB可以實(shí)現更高性能的連接,而且由于A(yíng)HB在使用ASIC開(kāi)發(fā)的自動(dòng)設計工具中整合起來(lái)更容易。APB橋的功能只是減少低性能總線(xiàn)對高性能總線(xiàn)造成的延遲。 1.3 Silicore的Wishbone綜述 圖3是Wishbone的邏輯總線(xiàn)結構圖。 ![]() 圖3中Wishbone的邏輯結構是這三種總線(xiàn)結構中最簡(jiǎn)單的一種,而且它只定義了一種總線(xiàn)結構——高速總線(xiàn)。如果一個(gè)系統既需要高速,也需要低速外部設備總線(xiàn),則可以提供兩個(gè)不同的Wishbone接口。這樣要比設計兩個(gè)不同的總線(xiàn)接口簡(jiǎn)單。Wishbone的用戶(hù)必須根據具體情況對協(xié)議標準進(jìn)行擴展和詳細設計,定義數據順序和標簽的意義。其它的特性和函數同樣也可以由用戶(hù)自行添加。從這個(gè)意義說(shuō),Wishbone更像是給出了一個(gè)框架,等待用戶(hù)提出具體的實(shí)現方法和規范。 2 分析和對比 所有這三種總線(xiàn)都采用完全同步的方式,以時(shí)鐘信號為參考,在時(shí)鐘信號上升沿進(jìn)行數據驅動(dòng)或采樣。此外,它們在總線(xiàn)操作方式上也基本相同。三種總線(xiàn)最顯著(zhù)的不同之處在于它們具體的性能參數、提供協(xié)議的完整性以及對協(xié)議應用的嚴格性。 表1主要對CoreConnect的PLB總線(xiàn)和AMBA的ASP總線(xiàn)結構作一對比,以便更清楚地看到這兩個(gè)系統的性能差別。 表1 ![]() 還有一個(gè)很重要的問(wèn)題是如何使用。雖然三種總線(xiàn)都聲明是免費使用的,但是IBM的 CoreConnect和ARM的AMBA都要求用戶(hù)注冊,使用中要標明原公司出處。更重要的是,對IBM和ARM來(lái)說(shuō)總線(xiàn)是免費的,但是連接這些總線(xiàn)的 IP不是免費的。當然可以自己設計符合以上兩種總線(xiàn)標準的IP,并免費提供給別人使用,但是IBM和ARM可沒(méi)有這樣做。相反,開(kāi)放知識產(chǎn)權模塊組織(OPENCoreS.ORG)將Wishbone作為自己開(kāi)發(fā)SoC系統采用的總線(xiàn)結構。這在其網(wǎng)站上可以看到。 3 結論 從這三種結構上我們可以看到,它們的設計程度是重、中、輕三個(gè)等級。IBM的CoreConnect是重度設計,適合復雜和高端的應用,需要遵守嚴格的操作協(xié)議;AMR的AMBA是中度設計,適合較復雜的應用,需要遵守較簡(jiǎn)單的操作協(xié)議;而Wishbone是輕度設計,適合較簡(jiǎn)單、靈活、增加自己定義部分的應用,使用是完全免費的。 IBM的先天優(yōu)勢使得CoreConnect能在業(yè)界長(cháng)期存在,即便它不被廣泛接受。由于A(yíng)RM的大力推廣和AMBA自身的技術(shù)特性,這種總線(xiàn)協(xié)議會(huì )在大多數應用領(lǐng)域被更多的設計者采用;而由于OPENCoreS組織的大力支持,Wishbone總線(xiàn)也將在比較長(cháng)的時(shí)間內,在自由設計者和中小型EDA 企業(yè)中占據主導地位。 參考文獻 1. ARM Corp AMBA 2. IBM Corp CoreConnect 3. Silicore Corp WISHBONE 4. OpenCores 作 者:石家莊經(jīng)濟學(xué)院 王飛 孫成立 來(lái) 源:單片機與嵌入式系統應用 2003(11) |