Wishbone總線產生、發展
市場是推動技術前進的主要動力,人們對各種電子產品不斷的更新,更好,更完美的追求刺激了技術的不斷升級和創新。反映在IC設計領域,人們開始追求芯片的系統化,單一化,整體化,突出強調從宏觀上提高芯片上的性能。SoC正是在這樣的環境下孕育而生,并獲得了快速的發展。調查,2004年SoC芯片占芯片設計的26%;預測,到2010年市場上90%的芯片是SOC芯片。Wishbone總線也是順應了芯片技術的發展,提出的一種片上總線系統方案。該方案有助于SoC芯片的整合,加快芯片設計及充分利用前人開發的IP核等。傳統的IP核設計沒有考慮到可重用設計方法,因此在SoC中要將這些由不同廠家開發的IP核集成到一個芯片中不是一件很容易的事。首先遇到的是如何有效,可靠的把兩個或以上的IP核信號互聯起來。Silicore公司開發的Wishbone總線能有效的將各種需要的IP核整合起來,使他們之間可以無障礙的通信。而且Wishbone的設計簡單、易行,能夠適應各種類型IP(軟核,固核,硬核)。
1999年6月,Silicore公司發布Wishbone總線標準A版,即初級版:
1999年7月,Silicore公司發布Wishbone總線標準A.1版;
2001年1月,Silicore公司發布Wishbone總線標準B版;
2001年1月,Silicore公司發布Wishbone總線標準B.1版;
2002年1月,Silicore公司發布Wishbone總線標準B.2版:
2002年9月,Silicore公司發布Wishbone總線標準B.3版。Wishbone總線設計思想
片上總線設計遵循簡單,靈活和可移植性。這樣能夠在不增加復雜度的情況下將各個不同IP模塊連接起來。Wishbone就是這樣的一種總線,它能夠有效的幫助系統工程師標準化IP模塊的接口,實現SOC。Wishbone是采用主端(MASTER)和從端(S“wE)的架構。主端模塊發出數據傳送請求,然后通過一個互連網絡和從端進行數據交換,如圖3一l所示。這個互連網絡我們稱之為INTERCON,它使得主端順利訪問從端。圖1中圓圈部分是INTERCON,起到連接主端和從端的作用。它的作用類似電信領域的術語“云朵”。在電信領域,電話系統被模擬成云朵,它代表電話交換和傳輸系統。電話機根據電話號碼通過云朵和另一端建立連接。如果電話連接的是同一幢大樓的另一電話,那么云朵代表的是當地的一個小交換系統:如果電話連接是另一個國家的,那么云朵代表的是光纖和衛星組成的一個傳輸系統。也就是說,不同地域的主端和從端相連,使用不同的連接方式。Wishbone總線與此相同,終端類似電話機,1NTERCON類似電話網絡“云朵”,各終端之間訪問通過INTERCON,再根據不同的情況采用不同的互連方式。Wishbone將它稱為可變互連網絡。可變互連網絡的連接形式有點對點,數據流,共享總線和交叉總線。
圖 1 Wishbone系統架構
Wishbone名字的由來
根據美國韋伯斯特(Webster,1758—1843,美國詞典編輯家)詞典,WISHBONE是指大多數鳥類胸骨前的一塊叉狀型的鎖骨。在名字定義初期,Silicore公司設想找一個能夠反映雙向總線這一特點的名字。這些總線是由多路選擇器和三態門實現的,它們的形狀類似Y,和鎖骨(WISHBONE)相似,所以后來被稱為WISHBONE總線。這個名字是由Wade Peterson,一名Silicore公司的工程師,在當年美國感恩節上提出的。Wishbone總線的主要特征
一般總線規范的共同特點為同時適用于于軟核、固核和硬核設計;對開發工具和目標硬件沒有特殊要求,并且幾乎兼容已有的所有綜合工具;可以用多種硬件描述語言來實現;支持結構化設計方法學,以提高大團隊的設計效率;靈活的數據和地址總線寬度,支持大端和小端操作;支持主從設備接口,支持多主設備,這是片上共享總線通信所必須的,多個主設備同時需要進行總線操作時,由仲裁器決定當前哪個主設備可以使用總線,仲裁邏輯用戶可以自行定義。此外,在作者看來,Wishbone總線規范的特點還包括:
本文引用地址:http://www.j9360.com/article/201612/330221.htm1.支持點到點、共享總線、十字交叉(Crossbar)和基于交換結構(Switchfabric)的互聯。Wishbone總線規范是"輕量級(Lightweight)"規范,它實際上更加側重于點對點互聯以及復雜度不高的共享總線片上系統互聯。因此,與其他總線規范相比,Wishbone的接口更加簡單緊湊,接口需要的互聯邏輯非常少(見本章后續的例子),這是Wishbone的一個重要優勢。熟悉AMBA總線的讀者在讀完本章后就能夠理Wishbone比AMBA總線簡單的多,但是兩者各有個的優勢。AMBA將所有的外設分為高速設備和低速設備,高速設備連接到系統總線,通常通信的數據量也較大,如SDRAM控制器、NANDFlash控制器、LCD控制器,低速設備連接外設總線,通常通信數據量小,如通用串口、計時器等。外設總線與系統總線通過總線橋接器相連。在實際系統中,處理器、系統總線、外設總線間的時鐘頻率的典型比值之一是4:2:1,因此整個系統的功耗被有效降低。另外一個好處是通過在總線橋接器中添加DMA引擎,系統總線和外設總線可以實現速率解耦。而依照Wishbone規范,Wishbone總線上所有設備都要連接到同一總線,無論是高速設備還是低速設備。與Wishbone總線相比,AMBA的缺點是設計較為復雜。但是實際上,Wishbone總線也設計為類似AMBA總線的架構,但此時系統為雙Wishbone總線架構。
2.支持典型的數據操作,包括:單次讀/寫操作、塊讀/寫操作,讀改寫(RMW,Read-Modify-Write,細節見后文)操作。最快情況下一個時鐘周期可完成一次操作,操作的結束方式包括:成功、錯誤和重試(Retry)。一個總線周期完成一次操作,一次操作可以是單次讀/寫操作、塊讀/寫操作或者讀改寫操作。操作總是在某一總線周期內完成的,因此操作結束方式也稱為總線周期結束方式,兩者說法在后文將視情況使用。成功是操作的正常結束方式,錯誤表示操作失敗,造成失敗的原因可能是地址或者數據校驗錯誤,寫操作或者讀操作不支持等。重試表示從設備當前忙,不能及時處理該操作,該操作可以稍后重新發起。接收到操作失敗或者重試后,主設備如何響應取決于主設備的設計者。
3.允許從設備進行部分地址解碼,有利于減少了冗余地址譯碼邏輯,提高地址譯碼速度。這一點本書將通過實例說明。
4.支持用戶定義的標簽。這些標簽可以用于為地址、數據總線提供額外的信息如奇偶校驗,為總線周期提供額外的信息如中斷向量、緩存控制操作的類型等。Wishbone規范只定義標簽的時序,而標簽的具體含義用戶可自行定義。支持用戶定義的標簽是Wishbone規范區別與其他片上總線規范的重要特征之一。
5.全同步化設計,包括復位方式。但是實際上復位方式采用同步還是異步并不影響IP的互聯互通,因此兼容Wishbone規范的IP完全可以采用異步方式,http://www.opencores.org上面的很多兼容Wishbone規范的開源IP采用的就是異步復位。
總結以上內容,Wishbone總線規范區別于其他總線規范的兩個核心特點是:(1)是輕量級規范,因此接口更加簡單緊湊;(2)支持支持用戶定義的標簽。
評論