圖17顯示的是一個標(biāo)準(zhǔn)的塊寫周期時序圖。塊寫周期可以在每一個時鐘周期完成一次數(shù)據(jù)傳輸。但是,本例中顯示了主機(jī)和從機(jī)插入等待狀態(tài)以控制數(shù)據(jù)傳輸速率的情況。圖中一共顯示了5個傳輸。第二次傳輸后,主機(jī)插入了一個等待狀態(tài)。第四次傳輸后,從機(jī)插入了一個等待狀態(tài)。整個周期在第五次傳輸之后結(jié)束。
圖17 標(biāo)準(zhǔn)塊寫周期
總線協(xié)議的執(zhí)行流程如下:
時鐘上升沿0:
·主機(jī)將有效地址置于ADR_O()和TGA_O();
·主機(jī)將WE_O置位,以表明進(jìn)入寫周期;
·主機(jī)輸出SEL_O()(bank select)表明其操作的數(shù)據(jù)地址;
·主機(jī)將CYC_O和TGC_O()置位,以表明周期的開始;
·主機(jī)將STB_O置位,以表明第一個段(phase)的開始;
注意:主機(jī)可以在時鐘上升沿1之前的任意時間,將CYC_O和TGC_O()置位。
時鐘上升沿1:
·從機(jī)解碼輸入,并作出從機(jī)響應(yīng)(ACK_I)。
時鐘上升沿2:
·主機(jī)將監(jiān)控ACK_I信號;
·主機(jī)將STB_O復(fù)位,以插入一個等待狀態(tài)(-WSW-)。
時鐘上升沿3:
·主機(jī)將有效地址置于ADR_O()和TGA_O();
·主機(jī)將WE_O置位,以表明進(jìn)入寫周期;
·主機(jī)輸出SEL_O()(bank select)表明其操作的數(shù)據(jù)地址;
·主機(jī)將CYC_O和TGC_O()置位,以表明周期的開始;
·主機(jī)將STB_O置位,以表明第二個段(phase)的開始。
時鐘上升沿4:
·主機(jī)將有效地址置于ADR_O()和TGA_O()
·主機(jī)將WE_O復(fù)位,以表明進(jìn)入讀周期;
·主機(jī)輸出SEL_O()(bank select)表明其操作的數(shù)據(jù)地址;
·主機(jī)將STB_O置位。
·從機(jī)解碼輸入,并對ACK_I做出相應(yīng)。
時鐘上升沿5:
·主機(jī)監(jiān)控ACK_I信號;
·主機(jī)將STB_O和CYC_O復(fù)位,以結(jié)束本次塊讀周期。
流水線塊寫操作
流水線塊寫模式的時序圖如圖18所示。
圖18 流水線塊寫周期
總線協(xié)議的執(zhí)行流程如下:
時鐘上升沿0:
·主機(jī)將有效地址置于ADR_O()和TGA_O();
·主機(jī)將WE_O置位,以表明進(jìn)入寫周期;
·主機(jī)輸出SEL_O()(bank select)表明其操作的數(shù)據(jù)地址;
·主機(jī)將CYC_O和TGC_O()置位,以表明周期的開始;
·主機(jī)將STB_O置位,以表明第一個段(phase)的開始;
·主機(jī)監(jiān)控ACK_I信號,并準(zhǔn)備鎖存DAT_I()和TGD_I()信號。
時鐘上升沿1:
·從機(jī)解碼輸入,并作出從機(jī)響應(yīng)(ACK_I);
·主機(jī)將有效地址置于ADR_O()和TGA_O();
·主機(jī)將WE_O置位,以表明進(jìn)入寫周期;
·主機(jī)輸出SEL_O()(bank select)表明其操作的數(shù)據(jù)地址;
·主機(jī)將STB_O置位,以表明第二個段(phase)的開始。
時鐘上升沿2:
時鐘上升沿3:
·從機(jī)解碼輸入,并作出從機(jī)響應(yīng)(ACK_I);
·當(dāng)STALL_I為低電平時(inactive),主機(jī)將STB_O信號復(fù)位。
時鐘上升沿4:
·主機(jī)將CYC_O信號復(fù)位,當(dāng)接受到第二個ACK_O信號時。
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
1926瀏覽量
64703 -
主機(jī)
+關(guān)注
關(guān)注
0文章
1000瀏覽量
35183
原文標(biāo)題:【博文連載】Wishbone總線周期之塊寫操作
文章出處:【微信號:ChinaAET,微信公眾號:電子技術(shù)應(yīng)用ChinaAET】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論