新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 片上總線Wishbone 學(xué)習(xí)(六)總線周期之握手協(xié)議

片上總線Wishbone 學(xué)習(xí)(六)總線周期之握手協(xié)議

作者: 時間:2016-12-15 來源:網(wǎng)絡(luò) 收藏
由于在整個總線周期,CYC_O必須始終保持有效,因此,此后我們將在給出的圖中忽略該信號,只在必要的時候給出。

握手發(fā)生在主設(shè)備和從設(shè)備之間。握手協(xié)議是主設(shè)備和從設(shè)備在握手時所遵守的共同規(guī)則。如圖6,當(dāng)主設(shè)備準(zhǔn)備好,它將STB_O信號置高。STB_O信號一直為高,直到從設(shè)備通過置高ACK_O、ERR_O、RTY_O對本次操作發(fā)起響應(yīng)。在圖7中我們以主設(shè)備的ACK_I信號作為示例,后文也如此。通過握手,主設(shè)備和從設(shè)備不僅可以完成通信,而且可以控制它們之間的通信速率。

本文引用地址:http://2s4d.com/article/201612/330216.htm



圖1Wishbone總線的基本握手協(xié)議

如果從設(shè)備保證能夠在主設(shè)備發(fā)起操作時及時作出操作成功的響應(yīng),其ACK_O信號可以設(shè)計為STB_I和CYC_I信號的邏輯與,而ERR_O和RTY_O信號也可以不使用。因此ERR_O和RTY_O信號是可選的,而ACK_O信號是必須的。在點對點連接中,甚至可以將ACK_I信號直接置高。當(dāng)存在ERR_O和RTY_O信號,主設(shè)備當(dāng)發(fā)現(xiàn)ERR_O和RTY_O信號之一有效時如何進行響應(yīng)取決于主設(shè)備的設(shè)計。

對于從設(shè)備,只有STB_I和CYC_I同時為高時,才能發(fā)起對主設(shè)備的響應(yīng)。

實際上,對于主設(shè)備,其最小配置為只有ACK_I、CLK_I、CYC_O、RST_I和STB_O;而對于從設(shè)備,其最小配置為只有ACK_O、CLK_I、CYC_I、RST_I和STB_I,這里CYC和STB信號可以合并到一起成為一個信號,通常命名為CYCSTB_O/。

在圖1中,從STB_O到ACK_I存在一個長組合邏輯路徑,在實際系統(tǒng)中很可能成為關(guān)鍵路徑。因此,在設(shè)計中應(yīng)盡量保證STB_O是觸發(fā)器的直接輸出。如果從STB_O到ACK_I存在一個長組合邏輯路徑延遲不能滿足設(shè)計的時序要求,可將從設(shè)備的ACK_O經(jīng)過觸發(fā)器寄存后再輸出,從而將長組合邏輯打破,但系統(tǒng)的吞吐量也將因此減小。關(guān)于如何即打破長組合邏輯又不影響系統(tǒng)的吞吐量,以后的文章將進行詳細(xì)討論。



評論


技術(shù)專區(qū)

關(guān)閉