為了實(shí)現(xiàn)在給定時(shí)鐘頻率下的最大可能吞吐量,Wishbone采用了周期異步結(jié)束方式。這樣做的結(jié)果是從主設(shè)備的STB_O到從設(shè)備的ACK_O/ERR_O/RTY_O再到主設(shè)備的ACK_I/ERR_I/RTY_I輸入形成了一個(gè)異步回路,如圖23。在大型SoC設(shè)計(jì)中,該回路往往成為整個(gè)設(shè)計(jì)的關(guān)鍵路徑,限制系統(tǒng)時(shí)鐘頻率的進(jìn)一步提高。在深亞微米時(shí)代,由于線延遲往往比門延遲更大,這一異步回路更加可能成為系統(tǒng)性能的瓶頸。
圖23 Wishbone總線的異步周期結(jié)束路徑
這一問題的最簡單解決方法是插入寄存器將回路斷開,但這樣做的缺點(diǎn)是在每一次總線操作中都需要插入一個(gè)等待周期,從而制約了總線吞吐量。如圖24所示,在上升沿0主設(shè)備發(fā)起了一次操作,在上升沿1從設(shè)備發(fā)起響應(yīng)將ACK_O置高,在上升沿2主設(shè)備檢測到ACK_I為高完成第一次操作并發(fā)起第二次操作,但是在上升沿2從設(shè)備并不知道主設(shè)備會(huì)發(fā)起第二次操作,因此只能將ACK_O信號(hào)置低。在上升沿3從設(shè)備才能對(duì)第二次操作發(fā)起響應(yīng)將ACK_O置高,在上升沿3主設(shè)備檢測到ACK_I為高完成第二次操作。
圖24 Wishbone總線的傳統(tǒng)同步周期結(jié)束方式
在圖24中,每一次傳輸都需要兩個(gè)時(shí)鐘周期,一半的帶寬被浪費(fèi)。如果從設(shè)備在上升沿3知道主設(shè)備將發(fā)起新的操作,它將能夠在上升沿3就對(duì)主設(shè)備的操作發(fā)起響應(yīng),從而節(jié)省時(shí)鐘周期提高了系統(tǒng)的吞吐量,利用該思想改進(jìn)后的同步時(shí)序如圖25所示。
圖25 Wishbone總線改進(jìn)的同步周期結(jié)束方式
在圖25的上升沿1,主設(shè)備發(fā)起操作,在上升沿2,從設(shè)備將ACK_O置高,在上升沿3,從設(shè)備知道主設(shè)備將發(fā)起新的操作,于是將ACK_O繼續(xù)置高。因此, 3個(gè)時(shí)鐘周期就完成了2次操作,而不是原來大的4個(gè)時(shí)鐘周期,于是吞吐量提高了25%。一般的,改進(jìn)后,N次操作需要N+1個(gè)時(shí)鐘周期,而不是2N個(gè)時(shí)鐘周期,吞吐量改善為(N-1)/N%。
改進(jìn)后的同步周期結(jié)束方式具備異步周期結(jié)束方式的吞吐量優(yōu)勢(shì),同時(shí)具備傳統(tǒng)同步結(jié)束方式的延遲優(yōu)勢(shì)。改進(jìn)后的同步周期結(jié)束方式稱作Wishbone寄存反饋周期結(jié)束方式。
表2 優(yōu)化結(jié)果比較
-
寄存器
+關(guān)注
關(guān)注
31文章
5363瀏覽量
121193 -
總線
+關(guān)注
關(guān)注
10文章
2903瀏覽量
88399 -
Wishbone
+關(guān)注
關(guān)注
0文章
16瀏覽量
10444
原文標(biāo)題:【博文連載】Wishbone總線同步結(jié)束與異步結(jié)束對(duì)比
文章出處:【微信號(hào):ChinaAET,微信公眾號(hào):電子技術(shù)應(yīng)用ChinaAET】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
wishbone總線
基于WISHBONE總線的FLASH閃存接口設(shè)計(jì)
基于Wishbone片上總線的IP核的互聯(lián)
基于Wishbone總線的UART IP核設(shè)計(jì)
![基于<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b>的UART IP核設(shè)計(jì)](https://file1.elecfans.com//web2/M00/A5/E7/wKgZomUMOrWAAGUWAAAOdRCQZ4Q309.jpg)
基于WISHBONE總線的FLASH閃存接口設(shè)計(jì)
![基于<b class='flag-5'>WISHBONE</b><b class='flag-5'>總線</b>的FLASH閃存接口設(shè)計(jì)](https://file.elecfans.com/web2/M00/49/00/pYYBAGKhtDKAbkqgAAAM_gQfa4w690.jpg)
基于WISHBONE總線的通用接口控制器
![基于<b class='flag-5'>WISHBONE</b><b class='flag-5'>總線</b>的通用接口控制器](https://file.elecfans.com/web2/M00/49/22/pYYBAGKhtDqAEUUwAAAOFNqiKpo706.jpg)
Wishbone總線實(shí)現(xiàn)UART IP核設(shè)計(jì)
![<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b>實(shí)現(xiàn)UART IP核設(shè)計(jì)](https://file.elecfans.com/web2/M00/49/2B/pYYBAGKhtDyAKnE_AAAMjaEOU7Y150.jpg)
基于FPGA的SDX總線與Wishbone總線接口設(shè)計(jì)
![基于FPGA的SDX<b class='flag-5'>總線</b>與<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b>接口設(shè)計(jì)](https://file.elecfans.com/web2/M00/49/44/pYYBAGKhtEKANZZSAAATtTtER-c073.jpg)
基于AMBA與WISHBONE的SoC總線橋KBar控制器的設(shè)計(jì)
Wishbone一般總線規(guī)范的共同特點(diǎn)
![<b class='flag-5'>Wishbone</b>一般<b class='flag-5'>總線</b>規(guī)范的共同特點(diǎn)](https://file.elecfans.com/web1/M00/56/79/o4YBAFs-sxWATpKWAABVFvU51vE529.png)
Wishbone總線周期之復(fù)位操作
![<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b><b class='flag-5'>周期</b>之復(fù)位操作](https://file.elecfans.com/web1/M00/57/08/o4YBAFtFWL2AUeYnAAAVLUIMq6k916.png)
標(biāo)準(zhǔn)Wishbone協(xié)議:流水線Wishbone協(xié)議
![標(biāo)準(zhǔn)<b class='flag-5'>Wishbone</b>協(xié)議:流水線<b class='flag-5'>Wishbone</b>協(xié)議](https://file.elecfans.com/web1/M00/57/51/o4YBAFtGo8aAbxZcAAAHizDvWYQ238.png)
Wishbone總線的突發(fā)結(jié)束
![<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b>的突發(fā)<b class='flag-5'>結(jié)束</b>](https://file.elecfans.com/web1/M00/58/69/pIYBAFtZHfiADcwKAAAWI76FYHM594.png)
Wishbone總線的主要特征概括
![<b class='flag-5'>Wishbone</b><b class='flag-5'>總線</b>的主要特征概括](https://file.elecfans.com/web1/M00/5B/4D/pIYBAFtuOM6AGYxkAAASSkehqKo397.png)
Wishbone II交易總線:速度的另一個(gè)等級(jí)
![<b class='flag-5'>Wishbone</b> II交易<b class='flag-5'>總線</b>:速度的另一個(gè)等級(jí)](https://file.elecfans.com//web2/M00/7A/ED/pYYBAGNx8JGAQ0uoAAAid-Xic3o069.jpg)
評(píng)論