freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

wishbone協(xié)議中文版-在線瀏覽

2025-07-24 17:25本頁面
  

【正文】 。操作總是在某一總線周期內(nèi)完成的,因此操作結(jié)束方式也稱為總線周期結(jié)束方式。重試表示從設(shè)備當(dāng)前忙,不能及時處理該操作,該操作可以稍后重新發(fā)起。 SEL_O()/SEL_I():有效數(shù)據(jù)總線選擇信號,標(biāo)識當(dāng)前操作中數(shù)據(jù)總線上哪些比特是有效的,以總線粒度為單位。比如一個具有32位寬、粒度為1個字節(jié)的數(shù)據(jù)總線的選擇信號應(yīng)定義為SEL_O(3:0)/ SEL_I(3:0),SEL(4’b1001)代表當(dāng)前操作中數(shù)據(jù)總線的最高和最低字節(jié)有效。只有該信號有效,Wishbone主設(shè)備和從設(shè)備接口的其它信號才有意義。實際上,該信號的實際作用等同于其他總線標(biāo)準(zhǔn)中的仲裁申請信號。GNT_O()是仲裁器輸出的允許信號,一般有多個;而對于一個主設(shè)備,其允許信號輸入GNT_I卻只有一個。在操作過程中,仲裁器可能會提前將總線占用權(quán)收回并分配給其他主設(shè)備從而打斷當(dāng)前主設(shè)備的操作,LOCK_O/LOCK_I有效代表本次總線操作是不可打斷的。圖1中只有一個主設(shè)備和一個從設(shè)備,因此沒畫出仲裁器模塊,該模塊可以視為是INTERCON的一部分,見本章最后給出的例子。選通有效代表主設(shè)備發(fā)起一次總線操作。在Wishbone總線規(guī)范中,CYC_O/CYC_I是最高層的控制信號,只有該信號有效,STB_O/STB_I信號才有意義。 WE_O/WE_I:寫使能信號,代表當(dāng)前周期中進(jìn)行的操作是寫操作還是讀操作。 四、Wishbone支持的互聯(lián)類型 Wishbone規(guī)范支持的互聯(lián)類型有四種:點到點、共享總線、十字交叉(Crossbar)和基于交換結(jié)構(gòu) (Switch fabric)的互聯(lián)。如圖1(第4頁),點到點互聯(lián)是最簡單的互聯(lián)方式,它允許一個主設(shè)備和一個從設(shè)備相互通信。 點對點互聯(lián)的一個特殊應(yīng)用就是當(dāng)數(shù)據(jù)需要多個步驟順序進(jìn)行處理時,多個同時具有主設(shè)備接口和從設(shè)備接口的模塊串接在一起,如圖2所示。模塊A處理完數(shù)據(jù)后將處理結(jié)果送給模塊B,模塊B處理完模塊A送來的數(shù)據(jù)后再將處理結(jié)果送給模塊C處理。流水線在處理器設(shè)計中非常重要,其好處是多個數(shù)據(jù)可以并行處理,從而提高系統(tǒng)的整體數(shù)據(jù)處理能力。共享總線互聯(lián)方式適合于系統(tǒng)中有兩個或者多個主設(shè)備需要與一個或者多個從設(shè)備通信的場合,它們通過共享的總線進(jìn)行通信,其好處是結(jié)構(gòu)緊湊,節(jié)省布線資源,缺點是主設(shè)備希望與特定從設(shè)備通信時可能需要等待。當(dāng)多個主設(shè)備同時希望占有總線時,仲裁器通過一定的優(yōu)先級邏輯分配總線使用機(jī)會。共享總線技術(shù)在板級系統(tǒng)如PCI總線中也得到了應(yīng)用。共享總線互聯(lián)方式在任一時刻只允許最多有一對主設(shè)備和從設(shè)備通過共享總線進(jìn)行通信,而十字交叉互聯(lián)方式最多同時允許超過一對的主設(shè)備和從設(shè)備對同時進(jìn)行通信,如圖4所示。 圖4 十字交叉互聯(lián)方式(圖中虛線代表了一種可能的通信方式)類似的,基于交換結(jié)構(gòu)的互聯(lián)比十字交叉互聯(lián)方式的INTERCON模塊更復(fù)雜,一般的,基于交換結(jié)構(gòu)的互聯(lián)比十字交叉互聯(lián)允許同時通信的主從設(shè)備對更多。基于片上網(wǎng)絡(luò)技術(shù),已經(jīng)出現(xiàn)了內(nèi)含幾十個32位處理器的芯片,已應(yīng)用于CISCO的高端路由器中??偩€周期也分為單次讀/寫周期、塊讀/寫周期和讀改寫周期。一般情況下,一次操作由主設(shè)備和從設(shè)備控制信號間的一次握手,以及同時進(jìn)行的地址和數(shù)據(jù)總線的一次傳輸構(gòu)成。在總線周期中主設(shè)備和從設(shè)備預(yù)先設(shè)定好的共同遵守控制信號握手規(guī)則,以及地址和數(shù)據(jù)總線的傳輸規(guī)則稱作總線協(xié)議。因此,對操作的描述也從主設(shè)備信號的角度展開,以便于讀者對照正文理解圖例。的等價描述為:在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將適當(dāng)?shù)臄?shù)據(jù)放到其輸出信號DAT_O()和TGD_O(),將輸出信號ACK_O置高作為對主設(shè)備STB_O的響應(yīng)。復(fù)位后,系統(tǒng)進(jìn)入預(yù)定的狀態(tài)。由于Wishbone規(guī)范規(guī)定的復(fù)位是同步復(fù)位,因此在復(fù)位信號有效后接下來的時鐘上升沿,所有信號和寄存器進(jìn)入預(yù)定狀態(tài)。在數(shù)字系統(tǒng)中,實際上更多的采用的是異步復(fù)位,而且復(fù)位信號的長度一般大于系統(tǒng)電平穩(wěn)定時間和系統(tǒng)時鐘頻率穩(wěn)定時間。 圖5 Wishbone總線的復(fù)位操作在圖5中,我們只給出了STB_O和CYC_O這兩個信號,而沒有給出其它信號。 操作發(fā)起 一個總線周期由至少一次總線操作構(gòu)成。當(dāng)主設(shè)備將CYC_O置為高時,一個總線周期開始。當(dāng)主設(shè)備將CYC_O置為低時,主設(shè)備的所有其他信號沒有意義。 CYC_O和STB_O可以同時從無效變?yōu)橛行П硎静僮鏖_始,CYC_O持續(xù)有效直到操作結(jié)束,CYC_O和STB_O可以同時從無效變有效表示同時發(fā)起一次總線周期的同時,也發(fā)起總線操作,也可以同時從有效變?yōu)闊o效表示操作結(jié)束。 當(dāng)存在多個主設(shè)備時,一個主設(shè)備完成操作后必須及時將CYC_O信號置為低,以讓出總線給其他主設(shè)備。 基本握手協(xié)議 由于在整個總線周期,CYC_O必須始終保持有效,因此,此后我們將在給出的圖中忽略該信號,只在必要的時候給出。握手協(xié)議是主設(shè)備和從設(shè)備在握手時所遵守的共同規(guī)則。STB_O信號一直為高,直到從設(shè)備通過置高ACK_O、ERR_O、RTY_O對本次操作發(fā)起響應(yīng)。通過握手,主設(shè)備和從設(shè)備不僅可以完成通信,而且可以控制它們之間的通信速率。因此ERR_O和RTY_O信號是可選的,而ACK_O信號是必須的。當(dāng)存在ERR_O和RTY_O信號,主設(shè)備當(dāng)發(fā)現(xiàn)ERR_O和RTY_O信號之一有效時如何進(jìn)行響應(yīng)取決于主設(shè)備的設(shè)計。 實際上,對于主設(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/。因此,在設(shè)計中應(yīng)盡量保證STB_O是觸發(fā)器的直接輸出。關(guān)于如何即打破長組合邏輯又不影響系統(tǒng)的吞吐量,后文將進(jìn)行詳細(xì)討論。但是,Wishbone主設(shè)備或者從設(shè)備也可以不支持單次讀/寫操作,甚至沒有地址和數(shù)據(jù)總線。在時鐘上升沿0,主設(shè)備將地址信號ADR_O()、TGA_O()放到總線上,將WE_O置為低表示讀操作,將適當(dāng)?shù)腟EL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置,將CYC_O和TGC_O置高表示操作正在進(jìn)行,將STB_O置高表示操作開始。 在時鐘上升沿1,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,并將STB_O和CYC_O置為低表示操作完成。 在圖7中,從設(shè)備可以上升沿0和上升沿1之間插入任意多個等待周期。在時鐘上升沿0,主設(shè)備將地址信號ADR_O()、TGA_O()放到總線上,將數(shù)據(jù)信號DAT_O()、TGD_O()放到總線上,將WE_O置高表示寫操作,將適當(dāng)?shù)腟EL_O()信號置高通知從設(shè)備數(shù)據(jù)總線DAT_O()的哪些信號是有效的,將CYC_O和TGC_O置高表示操作正在進(jìn)行,將STB_O置高表示操作開始。 在時鐘上升沿1,從設(shè)備將DAT_I()和TGD_I()采樣;主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將STB_O和CYC_O置為低表示操作完成;從設(shè)備發(fā)現(xiàn)STB_O置低后,也將主設(shè)備的ACK_I置低。 圖8 Wishbone總線的單次寫操作 塊讀周期 塊讀/寫操作每次讀/寫數(shù)據(jù)多次。在同時存在多個主設(shè)備時,塊讀/寫操作非常有用,一個塊讀寫一般是不能打斷的,比如一次DMA,如圖9所示,在一次塊操作中,CRC_O信號必須保持為高。典型地,主設(shè)備進(jìn)行一次DMA連續(xù)傳輸4個或者8個總線寬度單位的數(shù)據(jù),然后主動釋放總線,其后又試圖占用總線重新進(jìn)行DMA,直到所有的數(shù)據(jù)都傳輸完畢。 圖9 Wishbone總線塊操作中CYC_O信號的用法塊讀操作如圖10所示。一次塊操作包括多次子操作。圖10的塊操作由五次讀操作完成,其過程如下: 在時鐘上升沿0,主設(shè)備將地址信號ADR_O()、TGA_O()放到總線上,將WE_O置為低表示讀操作,將適當(dāng)?shù)腟EL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置,將CYC_O和TGC_O()置高表示操作正在進(jìn)行,將STB_O置高表示一次子操作開始。 在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。主設(shè)備將新地址信號ADR_O()、新TGA_O()放到總線上,將新的SEL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置。 在時鐘上升沿2,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第二次子操作。 在時鐘上升沿3到達(dá)之前,從設(shè)備檢測到STB_O信號為低,將ACK_I置低。 在時鐘上升沿4到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第三次子操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。主設(shè)備同時發(fā)起第五次子操作,將新地址信號ADR_O()、新TGA_O()放到總線上,將新的SEL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置。 在時鐘上升沿5,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第五次子操作。 在時鐘上升沿5過后,從設(shè)備檢測到主設(shè)備發(fā)起的第六次子操作,但是由于數(shù)據(jù)沒有準(zhǔn)備好,它在新上升沿到達(dá)之前將ACK_I信號置低表示插入等待周期。當(dāng)從設(shè)備準(zhǔn)備好數(shù)據(jù),在時鐘上升沿6到達(dá)之前,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 從設(shè)備發(fā)現(xiàn)STB_O置低后,也將主設(shè)備的ACK_I置低。圖11的一次塊寫操作由五個相互關(guān)聯(lián)的單次寫操作完成。 在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿2到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第二次寫操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿3到達(dá)之前,從設(shè)備檢測到STB_O為低,也將ACK_I置低。 在時鐘上升沿4到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第三次寫操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿5到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第四次寫操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿5之后新的時鐘上升沿到達(dá)之前,從設(shè)備發(fā)現(xiàn)因為某些原因暫時無法繼續(xù)接收數(shù)據(jù),因此將ACK_I信號置低,插入等待。并將STB_O和CYC_O置低表示整個塊寫操作完成。信號量即當(dāng)前可用資源的計數(shù)。一次對信號量的等待操作是獲得信號量的過程,讀取當(dāng)前信號量的值,如果發(fā)現(xiàn)有可利用資源,則將信號量減1,否則進(jìn)入等待狀態(tài)。一個進(jìn)程對信號的讀取、計算新的信號量值、更新信號量的值這三個步驟是不允許被其他進(jìn)程打破的,如果被打破,則信號量的值將會發(fā)生錯誤,RMW操作的最大用途在于信號量操作。改是不發(fā)生在總線上的,它發(fā)生在主設(shè)備內(nèi)部。CYC_O和TGC_O()可以發(fā)生在上升沿0以前的任何時刻。 在時鐘上升沿1,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第一次子操作。 在時鐘上升沿1之后新的上升沿到達(dá)之前,從設(shè)備檢測到主設(shè)備將STB_O置低,于是將ACK_I置低。 在時鐘上升沿3到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿之后,從設(shè)備發(fā)現(xiàn)STB_O為低,于是將ACK_I置低。目前常見的32為處理器的數(shù)據(jù)總線粒度為1字節(jié),在傳送時,一個32位數(shù)據(jù)的最高字節(jié)可以放在數(shù)據(jù)總線的最低8位傳送,也可以放在數(shù)據(jù)總線的最高8位傳送,因此出現(xiàn)了大端和小端兩種數(shù)據(jù)組織方法。Wishbone同時支持大端和小端兩者數(shù)據(jù)組織方式。 這兩者數(shù)據(jù)組織方式在一般文獻(xiàn)中都可以找到。有時需要將大端和小端的接口互聯(lián)起來,下圖給出了將數(shù)據(jù)組織為大端的IP A和數(shù)據(jù)組織為大端的IP B相連的情形。 圖14 大端和小端的接口互聯(lián)六、Wishbone寄存反饋總線周期 周期的同步與異步結(jié)束方式之對比 為了實現(xiàn)在給定時鐘頻率下的最大可能吞吐量,Wishbone采用了周期異步結(jié)束方式。在大型SoC設(shè)計中,該回路往往成為整個設(shè)計的關(guān)鍵路徑,限制系統(tǒng)時鐘頻率的進(jìn)一步提高。 圖15 Wishbone總線的異步周期結(jié)束路徑這一問題的最簡單解決方法是插入寄存器將回路斷開,但這樣做的缺點是在每一次總線操作中都需要插入一個等待周期,從而制約了總線吞吐量。在上升沿4從設(shè)備才能對第二次操作發(fā)起響應(yīng)將ACK_O置高,在上升沿4主設(shè)備檢測到ACK_I為高完成第二次操作。如果從設(shè)備在上升沿3知道主設(shè)備將發(fā)起新的操作,它將能夠在上升沿3就對主設(shè)備的操作發(fā)起響應(yīng),從而節(jié)省時鐘周期提高了系統(tǒng)的吞吐量,利用該思想改進(jìn)后的同步時序如圖17所示。因此, 3個時鐘周期就完成了2次操作,而不是原來大的4個時鐘周期,于是吞吐量提高了25%。 改進(jìn)后的同步周期結(jié)束方式具備異步周期結(jié)束方式的吞吐量優(yōu)勢,同時具備傳統(tǒng)同步結(jié)束方式的延遲優(yōu)勢。 Wishbone寄存反饋周期結(jié)束方式 在Wishbone寄存反饋周期結(jié)束方式中,主設(shè)備需要事先通知從設(shè)備操作下一時鐘周期是否將發(fā)起新的總線操作,這是通過周期類型識別地址標(biāo)簽CTI_O()/CTI_I()和突發(fā)類型擴(kuò)展地址標(biāo)簽BTE_O()/BTE_I()完成的。如果主設(shè)備或者從設(shè)備之一不支持這種周期結(jié)束方式,它們只能以傳統(tǒng)周期結(jié)束方式工作。CTI_O()/CTI_I()的具體定義如表2。主設(shè)備和從設(shè)備可以支持這些突發(fā)模式中的一部分,對于不支持的突發(fā)模式,主設(shè)備必須將CTI_O()置為3’b000,從設(shè)備必須將CTI_I()理解為3’b000。從設(shè)備可利用CTI_I()信號確定在下一周期對主設(shè)備的響應(yīng),但是由于此時還不知道STB_I信號的狀態(tài),因此從設(shè)備在確定在下一周期對主設(shè)備的響應(yīng)時只能忽略STB_I信號,因此即使在STB_I信號為低的情況下,從設(shè)備仍然可能將ACK_O/ERR_O/RTY_O置高。 突發(fā)類型擴(kuò)展地址標(biāo)簽BTE_O()/BTE_I()是對CTI_O()/CTI_I()=3’b010情況下的突發(fā)類型信息的擴(kuò)展,描述的是地址值是如何變化的。 表3 遞增和遞減突發(fā)類型擴(kuò)展 BTE_IO(1
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1