4.2 Register Set
4.3.4 傳送與接收 Data封包
圖 13 傳送與接收 Data 封包
圖 13為傳送與接收Data時序的示意圖。在這裡我們會利用Guard Time這段時間來找 後,判斷下一個CTA為何?因此要判斷CTA#1 是TX、RX或can’t used。在圖 13 (A)中,
CTA#1 等於can’t used。
在 CAP 區間結束後,因為 CTA#1 等於 can’t used,所以 PHY-FSM 為 Ready 或 Sleep,
即不傳送也不接收,甚至可以把天線關閉。當 CTA#1 結束之後,會產生 Interrupt 事件
「equal cta end time」。此 Interrupt ISR 會判斷下一個 CTA 為何?CTA#2 等於 can’t used,
因此動作跟 CTA#1 一樣,PHY-FSM 為 Ready 或 Sleep。
當 CTA#2 結束之後,會產生 Interrupt 事件「equal cta end time」。此 Interrupt ISR 會 判斷下一個 CTA 為何?CTA#3 等於 TX。之後便設定 TX_BUF_START 等於 CTA#3 所 管的 Data Frame Buffer 的起始位址,還有設定 TX_BUF_LEN 等於傳送 Data 的總 bytes 數,最後設定 TX_START_TIME 為 CTA#3 的 Start Time。當 SUPERFRAME_TIME 等於 TX_START_TIME 的時後,軟體會下達指令,讓 PHY-FSM 改為 TX state,並開始傳送 Data 封包出去。
當 CTA#3 結束之後,會產生 Interrupt 事件「equal cta end time」。此 Interrupt ISR 會 判斷下一個 CTA 為何?CTA#4 等於 can’t used,動作跟 CTA#1 一樣,PHY-FSM 為 Ready 或 Sleep。當 CTA#4 結束之後,會產生 Interrupt 事件「equal cta end time」。此 Interrupt ISR 會判斷下一個 CTA 為何?CTA#5 等於 RX。之後便設定 PHY-FSM 改為 RX state,並開
始接收 Data 封包進來。
我們再來解釋圖 13 (B)。首先,PNC在傳送完Beacon封包之後或DEV在分析完 Beacon封包之後,判斷下一個CTA為何?因此要判斷CTA#1 是TX、RX或can’t used。在 圖 13B)中,CTA#1 等於TX。
在 CAP 區間結束後,因為 CTA#1 等於 TX,之後便設定 TX_BUF_START 等於 CTA#1 所管的 Data Frame Buffer 的起始位址,還有設定 TX_BUF_LEN 等於傳送 Data 的總 bytes 數,最後設定 TX_START_TIME 為 CTA#1 的 Start Time。當 SUPERFRAME_TIME 等於 TX_START_TIME 的時後,軟體會下達指令,讓 PHY-FSM 改為 TX state,並開始傳送 Data 封包出去。 管的 Data Frame Buffer 的起始位址,還有設定 TX_BUF_LEN 等於傳送 Data 的總 bytes 數,最後設定 TX_START_TIME 為 CTA#3 的 Start Time。當 SUPERFRAME_TIME 等於 TX_START_TIME 的時後,軟體會下達指令,讓 PHY-FSM 改為 TX state,並開始傳送 Data 封包出去。
當 CTA#3 結束之後,會產生 Interrupt 事件「equal cta end time」。此 Interrupt ISR 會 判斷下一個 CTA 為何?CTA#4 等於 TX。之後便設定 TX_BUF_START 等於 CTA#4 所 管的 Data Frame Buffer 的起始位址,還有設定 TX_BUF_LEN 等於傳送 Data 的總 bytes 數,最後設定 TX_START_TIME 為 CTA#4 的 Start Time。當 SUPERFRAME_TIME 等於 TX_START_TIME 的時後,軟體會下達指令,讓 PHY-FSM 改為 TX state,並開始傳送 Data 封包出去。
當 CTA#4 結束之後,會產生 Interrupt 事件「equal cta end time」。此 Interrupt ISR 會
接收 Data 封包進來。 管的 Data Frame Buffer 的起始位址,還有設定 TX_BUF_LEN 等於傳送 Data 的總 bytes 數,最後設定 TX_START_TIME 為 CTA#5 的 Start Time。當 SUPERFRAME_TIME 等於 TX_START_TIME 的時後,軟體會下達指令,讓 PHY-FSM 改為 TX state,並開始傳送 Data 封包出去。