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

正文內(nèi)容

wishbone協(xié)議中文版-文庫吧

2025-05-22 17:25 本頁面


【正文】 是0還是1都無效。 WE_O/WE_I:寫使能信號,代表當(dāng)前周期中進(jìn)行的操作是寫操作還是讀操作。1代表寫,0代表讀。 四、Wishbone支持的互聯(lián)類型 Wishbone規(guī)范支持的互聯(lián)類型有四種:點(diǎn)到點(diǎn)、共享總線、十字交叉(Crossbar)和基于交換結(jié)構(gòu) (Switch fabric)的互聯(lián)。這四種互聯(lián)方式在Wishbone規(guī)范中有明確的定義。如圖1(第4頁),點(diǎn)到點(diǎn)互聯(lián)是最簡單的互聯(lián)方式,它允許一個主設(shè)備和一個從設(shè)備相互通信。比如,主設(shè)備可能是一個處理器IP核,從設(shè)備可能是一個串行I/O端口或者存儲器。 點(diǎn)對點(diǎn)互聯(lián)的一個特殊應(yīng)用就是當(dāng)數(shù)據(jù)需要多個步驟順序進(jìn)行處理時,多個同時具有主設(shè)備接口和從設(shè)備接口的模塊串接在一起,如圖2所示。這種連接方式也稱作數(shù)據(jù)流連接。模塊A處理完數(shù)據(jù)后將處理結(jié)果送給模塊B,模塊B處理完模塊A送來的數(shù)據(jù)后再將處理結(jié)果送給模塊C處理。數(shù)據(jù)從一個模塊送往另一個模塊,常常將這種處理方式稱作流水線。流水線在處理器設(shè)計中非常重要,其好處是多個數(shù)據(jù)可以并行處理,從而提高系統(tǒng)的整體數(shù)據(jù)處理能力。 圖2 數(shù)據(jù)流方式互聯(lián)共享總線互聯(lián)方式如圖3所示。共享總線互聯(lián)方式適合于系統(tǒng)中有兩個或者多個主設(shè)備需要與一個或者多個從設(shè)備通信的場合,它們通過共享的總線進(jìn)行通信,其好處是結(jié)構(gòu)緊湊,節(jié)省布線資源,缺點(diǎn)是主設(shè)備希望與特定從設(shè)備通信時可能需要等待。主設(shè)備在需要與一個從設(shè)備通信時,需要先向仲裁器(圖中沒有給出)申請總線占有權(quán),獲得允許后開始占用總線并與目標(biāo)從設(shè)備開始通信,通信結(jié)束后釋放總線。當(dāng)多個主設(shè)備同時希望占有總線時,仲裁器通過一定的優(yōu)先級邏輯分配總線使用機(jī)會。 共享總線互聯(lián)方式在片上系統(tǒng)中得到了廣泛的使用,幾乎成了片上系統(tǒng)的標(biāo)志技術(shù)之一。共享總線技術(shù)在板級系統(tǒng)如PCI總線中也得到了應(yīng)用。 圖3 共享總線互聯(lián)方式十字交叉互聯(lián)方式較共享總線互聯(lián)方式略復(fù)雜。共享總線互聯(lián)方式在任一時刻只允許最多有一對主設(shè)備和從設(shè)備通過共享總線進(jìn)行通信,而十字交叉互聯(lián)方式最多同時允許超過一對的主設(shè)備和從設(shè)備對同時進(jìn)行通信,如圖4所示。當(dāng)然,在十字交叉互聯(lián)方式中,一個從設(shè)備在任一時刻只能與一個主設(shè)備進(jìn)行通信,兩個主設(shè)備不能同時訪問同一從設(shè)備。 圖4 十字交叉互聯(lián)方式(圖中虛線代表了一種可能的通信方式)類似的,基于交換結(jié)構(gòu)的互聯(lián)比十字交叉互聯(lián)方式的INTERCON模塊更復(fù)雜,一般的,基于交換結(jié)構(gòu)的互聯(lián)比十字交叉互聯(lián)允許同時通信的主從設(shè)備對更多。 隨著技術(shù)的發(fā)展,已經(jīng)出現(xiàn)了比片上總線更復(fù)雜的片上網(wǎng)絡(luò)技術(shù)(Network on chip)。基于片上網(wǎng)絡(luò)技術(shù),已經(jīng)出現(xiàn)了內(nèi)含幾十個32位處理器的芯片,已應(yīng)用于CISCO的高端路由器中。 五、Wishbone總線周期 一個總線周期由多個不可分的時鐘周期構(gòu)成,完成單次讀/寫操作、塊讀/寫操作或者讀改寫操作??偩€周期也分為單次讀/寫周期、塊讀/寫周期和讀改寫周期。一次塊讀/寫總線周期完成多次數(shù)據(jù)讀/寫操作。一般情況下,一次操作由主設(shè)備和從設(shè)備控制信號間的一次握手,以及同時進(jìn)行的地址和數(shù)據(jù)總線的一次傳輸構(gòu)成。塊操作表示整個操作需要完成多次數(shù)據(jù)傳送。在總線周期中主設(shè)備和從設(shè)備預(yù)先設(shè)定好的共同遵守控制信號握手規(guī)則,以及地址和數(shù)據(jù)總線的傳輸規(guī)則稱作總線協(xié)議。 在下文所給圖例中給出的信號均為主設(shè)備的輸入輸出信號。因此,對操作的描述也從主設(shè)備信號的角度展開,以便于讀者對照正文理解圖例。比如在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的輸入信號DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。的等價描述為:在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將適當(dāng)?shù)臄?shù)據(jù)放到其輸出信號DAT_O()和TGD_O(),將輸出信號ACK_O置高作為對主設(shè)備STB_O的響應(yīng)。 .1 復(fù)位操作 復(fù)位是數(shù)字系統(tǒng)最基本的操作。復(fù)位后,系統(tǒng)進(jìn)入預(yù)定的狀態(tài)。在遵守Wishbone總線規(guī)范的系統(tǒng)中,當(dāng)RST_I信號有效,系統(tǒng)開始復(fù)位。由于Wishbone規(guī)范規(guī)定的復(fù)位是同步復(fù)位,因此在復(fù)位信號有效后接下來的時鐘上升沿,所有信號和寄存器進(jìn)入預(yù)定狀態(tài)。因此,Wishbone規(guī)范要求RST_I信號有效時間至少要一個時鐘周期。在數(shù)字系統(tǒng)中,實(shí)際上更多的采用的是異步復(fù)位,而且復(fù)位信號的長度一般大于系統(tǒng)電平穩(wěn)定時間和系統(tǒng)時鐘頻率穩(wěn)定時間。如果在Wishbone接口中使用的是異步復(fù)位,需要在文檔中說明,因?yàn)閃ishbone接口默認(rèn)的是同步復(fù)位。 圖5 Wishbone總線的復(fù)位操作在圖5中,我們只給出了STB_O和CYC_O這兩個信號,而沒有給出其它信號。當(dāng)這兩個信號無效時,所有其他信號沒有意義。 操作發(fā)起 一個總線周期由至少一次總線操作構(gòu)成。操作總是由主設(shè)備發(fā)起,主設(shè)備發(fā)起的操作可以是單次讀/寫、塊讀/寫或者RMW操作。當(dāng)主設(shè)備將CYC_O置為高時,一個總線周期開始??偩€周期開始后,當(dāng)主設(shè)備將STB_O置為高時,一次總線操作開始。當(dāng)主設(shè)備將CYC_O置為低時,主設(shè)備的所有其他信號沒有意義。從設(shè)備只在CYC_I為高時才會對主設(shè)備發(fā)起的操作進(jìn)行響應(yīng)。 CYC_O和STB_O可以同時從無效變?yōu)橛行П硎静僮鏖_始,CYC_O持續(xù)有效直到操作結(jié)束,CYC_O和STB_O可以同時從無效變有效表示同時發(fā)起一次總線周期的同時,也發(fā)起總線操作,也可以同時從有效變?yōu)闊o效表示操作結(jié)束。因此,在只有一個主設(shè)備時,可以將CYC_O和STB_O合并為一個信號,比如在OpenRISC1200的源碼中就廣泛的使用了這種方式,信號的名字稱作CYCSTB_O。 當(dāng)存在多個主設(shè)備時,一個主設(shè)備完成操作后必須及時將CYC_O信號置為低,以讓出總線給其他主設(shè)備。此時,CYC_O信號等價于為總線占用請求信號。 基本握手協(xié)議 由于在整個總線周期,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è)備不僅可以完成通信,而且可以控制它們之間的通信速率。 圖6 Wishbone總線的基本握手協(xié)議如果從設(shè)備保證能夠在主設(shè)備發(fā)起操作時及時作出操作成功的響應(yīng),其ACK_O信號可以設(shè)計為STB_I和CYC_I信號的邏輯與,而ERR_O和RTY_O信號也可以不使用。因此ERR_O和RTY_O信號是可選的,而ACK_O信號是必須的。在點(diǎn)對點(diǎn)連接中,甚至可以將ACK_I信號直接置高。當(dāng)存在ERR_O和RTY_O信號,主設(shè)備當(dāng)發(fā)現(xiàn)ERR_O和RTY_O信號之一有效時如何進(jìn)行響應(yīng)取決于主設(shè)備的設(shè)計。 對于從設(shè)備,只有STB_I和CYC_I同時為高時,才能發(fā)起對主設(shè)備的響應(yīng)。 實(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/。 在圖6中,從STB_O到ACK_I存在一個長組合邏輯路徑,在實(shí)際系統(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)的吞吐量,后文將進(jìn)行詳細(xì)討論。 單次讀/寫操作每次操作只完成一次讀或者寫,是最基本的總線操作方式。但是,Wishbone主設(shè)備或者從設(shè)備也可以不支持單次讀/寫操作,甚至沒有地址和數(shù)據(jù)總線。 單次讀操作如圖7。在時鐘上升沿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)。 在時鐘上升沿1,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,并將STB_O和CYC_O置為低表示操作完成。從設(shè)備發(fā)現(xiàn)STB_O置低后,也將主設(shè)備的輸入信號ACK_I置低。 在圖7中,從設(shè)備可以上升沿0和上升沿1之間插入任意多個等待周期。 圖7 Wishbone總線的單次讀操作單次寫操作如圖8所示。在時鐘上升沿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到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿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中,從設(shè)備可以在上升沿0和上升沿1之間插入任意多個等待周期。 圖8 Wishbone總線的單次寫操作 塊讀周期 塊讀/寫操作每次讀/寫數(shù)據(jù)多次。塊讀/寫操作實(shí)際上是由順序進(jìn)行的多個單次讀/寫操作組合而成的。在同時存在多個主設(shè)備時,塊讀/寫操作非常有用,一個塊讀寫一般是不能打斷的,比如一次DMA,如圖9所示,在一次塊操作中,CRC_O信號必須保持為高。同時為了保證整個塊操作不被打斷,LOCK_O也可以置為高,但是LOCK_O不必須為高。典型地,主設(shè)備進(jìn)行一次DMA連續(xù)傳輸4個或者8個總線寬度單位的數(shù)據(jù),然后主動釋放總線,其后又試圖占用總線重新進(jìn)行DMA,直到所有的數(shù)據(jù)都傳輸完畢。這樣做的好處是允許其他優(yōu)先級更高的主設(shè)備在兩次DMA之間插入操作以完成更加緊急的任務(wù)。 圖9 Wishbone總線塊操作中CYC_O信號的用法塊讀操作如圖10所示。塊操作最多能夠在每個時鐘周期進(jìn)行一次數(shù)據(jù)讀或者寫,但是主設(shè)備和從設(shè)備都可以通過插入等待周期控制塊操作的速度。一次塊操作包括多次子操作。每一次子操作都是塊操作的一個階段,完成一次數(shù)據(jù)讀或者寫。圖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置高表示一次子操作開始。CYC_O和TGC_O()從無效變?yōu)橛行Э梢园l(fā)生在上升沿0以前的任何時刻。 在時鐘上升沿1到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿1,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第一次子操作。主設(shè)備將新地址信號ADR_O()、新TGA_O()放到總線上,將新的SEL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置。 在時鐘上升沿2到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第二次操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),繼續(xù)將主設(shè)備的ACK_I置高。 在時鐘上升沿2,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第二次子操作。主設(shè)備將STB_O信號置低表示插入等待周期。 在時鐘上升沿3到達(dá)之前,從設(shè)備檢測到STB_O信號為低,將ACK_I置低。 在時鐘上升沿3,主設(shè)備發(fā)起第三次操作,將新的地址信號ADR_O()、新的TGA_O()放到總線上,將WE_O置為低表示讀操作,將適當(dāng)?shù)腟EL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置,將STB_O置高表示第三次子操作開始。 在時鐘上升沿4到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第三次子操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 圖10 Wishbone總線的塊讀操作在時鐘上升沿4,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第三次子操作。主設(shè)備同時發(fā)起第五次子操作,將新地址信號ADR_O()、新TGA_O()放到總線上,將新的SEL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置。 在時鐘上升沿5到達(dá)之前,從設(shè)備檢測到主設(shè)備發(fā)起的第五次子操作,將適當(dāng)?shù)臄?shù)據(jù)放到主設(shè)備的DAT_I()和TGD_I(),將主設(shè)備的ACK_I置高作為對主設(shè)備STB_O的響應(yīng)。 在時鐘上升沿5,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,完成第五次子操作。主設(shè)備同時發(fā)起第六次子操作,將新地址信號ADR_O()、新TGA_O()放到總線上,將新的SEL_O()信號置高通知從設(shè)備將數(shù)據(jù)放在數(shù)據(jù)總線的適當(dāng)位置。 在時鐘上升沿5過后,從設(shè)備檢測到主設(shè)備發(fā)起的第六次子操作,但是由于數(shù)據(jù)沒有準(zhǔn)備好,它在新上升沿到達(dá)之前將ACK_I信號置低表示插入等待周期。上升沿5和6之間被插入了多個等待周期。當(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)。 在時鐘上升沿6,主設(shè)備發(fā)現(xiàn)ACK_I信號為高,將DAT_I()和TGD_I()采樣,并將STB_O和CYC_O置為低表示整個塊讀操作完成。 從設(shè)備發(fā)現(xiàn)STB_O置低后,也將主設(shè)備的ACK_I置低。 塊寫操作的例子如圖1
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1