地址不變突發(fā)是一個(gè)總線周期,在這個(gè)總線周期中完成多次操作,但是地址不變。地址不變突發(fā)的典型應(yīng)用是以DMA方式讀/寫FIFO。主設(shè)備在時(shí)鐘的某一個(gè)上升沿將CTI()置為3’b001后,下一個(gè)周期的操作必須與本周期,包括SEL_O()信號(hào)也不能改變,即在地址不變突發(fā)中的每一次操作除傳輸?shù)臄?shù)據(jù)可能發(fā)生變化外其他都是相同的。
圖27 Wishbone總線的地址不變突發(fā)示例
圖27給出了一個(gè)地址不變突發(fā)寫總線周期示例。圖中主設(shè)備和從設(shè)備一共進(jìn)行了4次操作。
在時(shí)鐘上升沿0,主設(shè)備將地址信號(hào)ADR_O()放到總線上,將數(shù)據(jù)信號(hào)DAT_O()、TGD_O()放到總線上,將WE_O置為高表示寫操作,將CTI_O()置為3’b001表示地址不變突發(fā)總線周期,將適當(dāng)?shù)腟EL_O()信號(hào)置高通知從設(shè)備將數(shù)據(jù)總線上哪些信號(hào)是有效的,將CYC_O和TGC_O置高表示操作正在進(jìn)行,將STB_O置高表示第一次寫操作開始。
在時(shí)鐘上升沿1,從設(shè)備檢測(cè)到主設(shè)備的寫操作,將DAT_I()采樣,并置高ACK_O。
在時(shí)鐘上升沿2,主設(shè)備檢測(cè)到ACK_I為高,知道第一次傳輸順利完成,由于數(shù)據(jù)沒有準(zhǔn)備好,于是將STB_O置低表示插入等待周期。
在等待周期,從設(shè)備知道地址不變突發(fā)寫操作仍然在進(jìn)行,因此一直將ACK_O置高。但是此時(shí)主設(shè)備和從設(shè)備知道沒有真正的傳輸發(fā)生。
在時(shí)鐘上升沿3,主設(shè)備已經(jīng)將新的數(shù)據(jù)準(zhǔn)備好,于是將STB_O置高表示第二次寫操作開始,并更新DAT_O()。
在時(shí)鐘上升沿4,從設(shè)備檢測(cè)到主設(shè)備的寫操作,將DAT_I()采樣。同時(shí)從設(shè)備發(fā)現(xiàn)沒有足夠的空間存儲(chǔ)數(shù)據(jù)或者由于其他原因不能及時(shí)接收新的數(shù)據(jù),于是將ACK_O置低插入等待周期。主設(shè)備檢測(cè)到ACK_I為高,于是發(fā)起第三次操作,更新DAT_O()。
在時(shí)鐘上升沿5,從設(shè)備發(fā)現(xiàn)可以繼續(xù)接收數(shù)據(jù),于是將DAT_I()采樣并將ACK_O置高。
在時(shí)鐘上升沿6,主設(shè)備檢測(cè)到ACK_I為高,于是發(fā)起第四次操作,更新DAT_O(),同時(shí)將CTI_O置為3’b111表示本次操作為最后一次操作。
在時(shí)鐘上升沿7,從設(shè)備將DAT_I()采樣,并根據(jù)CTI_O為3’b111知道本次地址不變突發(fā)寫操作完成,于是將ACK_O置低。
-
時(shí)鐘
+關(guān)注
關(guān)注
10文章
1714瀏覽量
131274 -
總線
+關(guān)注
關(guān)注
10文章
2858瀏覽量
87912 -
Wishbone
+關(guān)注
關(guān)注
0文章
16瀏覽量
10409
原文標(biāo)題:【博文連載】Wishbone總線地址不變突發(fā)結(jié)束方式
文章出處:【微信號(hào):ChinaAET,微信公眾號(hào):電子技術(shù)應(yīng)用ChinaAET】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論