close

 

 

 

Wishbone Bus的基本架構

 

 

 

 

Wishbon BusMastersSlavesBus的框架 (Bus Framework) 所組成。

 

 

Wishbon BusMastersSlaves之介面訊號 (Interface Signals) 包括系統Bus Framework (1SYSCON ) 提供的 RST CLK 以及由Master所輸出的ADRWDT (1 MasterDAT_O)WESELSTBCYC等訊號,及由Slave回應的RDT (1 MasterDAT_I) ACK

 

 

另外,還保留一些可以User Defined的擴充訊號,這些擴充訊號關於 Burst Transaction的部分,在Specification另有定義,這部分是為了得到更好的效率,本章實驗也都有應用。

 

 

 

 

 w001

 

1 Wishbon BusMastersSlaves之介面訊號

 

 

 

 

Wishbon Bus可以適用多種Bus topology,最常用的為Shared Bus型態,為Cost較低,且效率亦可的架構。本章所應用的皆為此一架構。上圖Shared Bus型態,邏輯上為一共同的Bus,但實體上,有兩類實現方式:Tri-state BusMultiplexed Bus,如下圖[2 ]。前者為實體真正共用同一導線之Bus,再PCB層級較常使用(PCI即是) ,再SoCFPGAOn-Chip-Bus

 

 

為了TimingBus contention 造成Electron migration的問題,則較少使用Tri-state Bus,而是以Multiplexed Bus的型態,此一型態Bus電流的切換,發生在事先已良好定義的Multiplexer內,一般認為較易使用,並且因為Bus負載為隔離的,而具有有較好的Timing特性。本章所應用的皆為Multiplexed Bus架構。

 

 

 

 w002

 

 

 

 

2 Wishbon Bus Shared Bus型態

 

 

 

 w003

 

 

 

 

 

3 Multiplexed Bus架構之Shared Bus

 

 

 

 

 w004

 

 

 

 

4

 

 

 

 

 

 

另外Wishbone Bus也可以應用在下圖Data Through Put最好的Cross Bar Pipeline Data-flow[6 ]topology

 

 

 

 w005

 

 

 

 

5 Wishbone BusPipeline Data-flow topology

 

 

 

 

 

左下圖[7 ]Wishbone Bus Write的基本Timing圖,這是一個具有ClockBus,所有的信號在ClockPostive Edge被確認。

 

 

 

 w006

 

 

 

6 Wishbone Bus Write/ Read的基本Timing

 

 

 

 

 

在此Write Timing中, MasterSTB CYC 同時assert後, Slave 非同步地回應以ACK 並準備在接著的Postive edge收下Master要求在位址ADR要寫的資料DAT_O,若Slave認為它無法及時接受此一寫入要求,則可以延後assert ACK,如下圖[8 ]。相類似地Read Timing[9 ]

 

 

 

 

 

 w007

 

 

 

 

7延後assert ACK, Synchronous Cycle Termination

 

 

 

 

 

 

另外, 為了System Clock Cycle 邏輯閘timing delay的問題,系統可以選擇不以非同步方式回應資料與ACK(Asynchronous Cycle Termination) ,而是以與7相同的同步型態,在下一個Cycle才回應,(Synchronous Cycle Termination) ,以減少critial path timing delay 提高System clock frequecy Bus throughput

 

 

 w008

 

 

 

8 WishboneBurst Synchronous Cycle或稱Advanced Synchronous Cycle Termination

 

 

 

 

 

7laterncy2 cyclesThroughput2 cycles per data transfer,並不佳,在包括Wishbone的多種Bus System都會以Busrt的方式(Wishbone SpecificationAdvanced Synchronous Cycle Termination) ,如10,使Throughput維持為1 cycle per data transfer的較好方式。

 

 

 

 

 

而為方便Burst的實現,Wishbone Master會另外產生CTI (Cycle Type Identifier)BTE (Burst Type Extension)訊號,如9,提供Slave作為Pre-fetch的依據.

 

 

 w009

 

 

 

 

9 Wishbone CTI (Cycle Type Identifier)BTE (Burst Type Extension)訊號

 

 

 

 

 

10是上述幾種Wishbone Cycle型態的效率比較表,本章的實驗的設計中,在一些throughput需求較高的MasterSlave採取Advanced Synchronous Cycle Termination,而一些簡單而無throughput需求的MasterSlave則採Asynchronous Synchronous Cycle Termination. Wishbone Bus的定義與設計也確保這些能力不同的Master/Slave間仍可相容。

 

 

 

 w010

 

 

 10幾種Wishbone Cycle型態的效率比較表

 

 

 

 

 

 

 

 

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 zeppe 的頭像
    zeppe

    ZEPPE

    zeppe 發表在 痞客邦 留言(0) 人氣()