片上總線Wishbone 學(xué)習(xí)(六)總線周期之握手協(xié)議
握手發(fā)生在主設(shè)備和從設(shè)備之間。握手協(xié)議是主設(shè)備和從設(shè)備在握手時(shí)所遵守的共同規(guī)則。如圖6,當(dāng)主設(shè)備準(zhǔn)備好,它將STB_O信號(hào)置高。STB_O信號(hào)一直為高,直到從設(shè)備通過置高ACK_O、ERR_O、RTY_O對(duì)本次操作發(fā)起響應(yīng)。在圖7中我們以主設(shè)備的ACK_I信號(hào)作為示例,后文也如此。通過握手,主設(shè)備和從設(shè)備不僅可以完成通信,而且可以控制它們之間的通信速率。
本文引用地址:http://www.biyoush.com/article/201612/330216.htm圖1
如果從設(shè)備保證能夠在主設(shè)備發(fā)起操作時(shí)及時(shí)作出操作成功的響應(yīng),其ACK_O信號(hào)可以設(shè)計(jì)為STB_I和CYC_I信號(hào)的邏輯與,而ERR_O和RTY_O信號(hào)也可以不使用。因此ERR_O和RTY_O信號(hào)是可選的,而ACK_O信號(hào)是必須的。在點(diǎn)對(duì)點(diǎn)連接中,甚至可以將ACK_I信號(hào)直接置高。當(dāng)存在ERR_O和RTY_O信號(hào),主設(shè)備當(dāng)發(fā)現(xiàn)ERR_O和RTY_O信號(hào)之一有效時(shí)如何進(jìn)行響應(yīng)取決于主設(shè)備的設(shè)計(jì)。
對(duì)于從設(shè)備,只有STB_I和CYC_I同時(shí)為高時(shí),才能發(fā)起對(duì)主設(shè)備的響應(yīng)。
實(shí)際上,對(duì)于主設(shè)備,其最小配置為只有ACK_I、CLK_I、CYC_O、RST_I和STB_O;而對(duì)于從設(shè)備,其最小配置為只有ACK_O、CLK_I、CYC_I、RST_I和STB_I,這里CYC
在圖1中,從STB_O到ACK_I存在一個(gè)長組合邏輯路徑,在實(shí)際系統(tǒng)中很可能成為關(guān)鍵路徑。因此,在設(shè)計(jì)中應(yīng)盡量保證STB_O是觸發(fā)器的直接輸出。如果從STB_O到ACK_I存在一個(gè)長組合邏輯路徑延遲不能滿足設(shè)計(jì)的時(shí)序要求,可將從設(shè)備的ACK_O經(jīng)過觸發(fā)器寄存后再輸出,從而將長組合邏輯打破,但系統(tǒng)的吞吐量也將因此減小。關(guān)于如何即打破長組合邏輯又不影響系統(tǒng)的吞吐量,以后的文章將進(jìn)行詳細(xì)討論。
評(píng)論