行動WiMAX完全剖析

Virtual PHY加速802.16e通訊協定開發

作者: 葉哲芳 / 蘇盟凱 / 賴宏俊
2009 年 10 月 04 日

虛擬實體層(VPHY)顧名思義為一套虛擬實體層平台工具,可取代真正的實體層平台作為被MAC層軟體操作的對象,如此一來,整體性的功能測試便可進行,減輕未來將MAC層軟體介接到真正實體層平台時的開發負擔。而為達到整體性的功能測試,VPHY必須提供完善的操作介面供MAC層軟體使用、模擬真實的實體層行為,以符合MAC層軟體運行時的需求及資料連結,以供端點對端點的測試功能。
 



以下將對所開發出來的VPHY做介紹,首先會說明VPHY框架架構,接著再介紹依此VPHY架構所開發出可供全球微波存取互通介面(WiMAX)16e基地台(BS)/行動通訊台(MS)的MAC層軟體所使用的VPHY。



VPHY架構介紹



圖1為VPHY架構的示意圖,在VPHY框架之中,可同時存在多個VPHY實體(Entity),這些實體皆是透過VPHY實體辨識碼(ID)被MAC層軟體所識別,通常每個VPHY實體是被一個MAC層軟體所使用。透過圖中的實體管理員,MAC層軟體可以指定創建模擬某種通訊協定的VPHY實體,在創建完成後,VPHY模組會提供一個VPHY實體辨識碼給MAC層軟體使用,之後透過傳訊的方式,可使MAC層軟體得以對該VPHY實體進行操作。在每個VPHY實體之中,都有一個模擬該通訊協定實體層行為的協定部分(Protocol Part),至於MAC層軟體對實體層的操作,實際上則是反應在該協定部的行為。


資料來源:資策會
圖1 VPHY架構圖




在框架示意圖中的最下部為乙太網路射頻(Ethernet RF),提供資料連結能力並負責傳送該通訊協定下射頻所應該承載的資料,在資料連結的部分所採用的方法是乙太網路封包,故取名為乙太網路射頻。以下將介紹VPHY實體、乙太網路射頻及協定部分。
 



VPHY實體負責提供標準運行架構
 



針對不同通訊協定所制定的VPHY,在架構中仍有其共通之處,其中包括與MAC層之間都是以傳訊的方式來溝通,且皆利用乙太網路射頻進行資料傳送,VPHY實體的功能就在於統整這些共通之處,提供一個統一的運行架構供其下的協定部分及其上的MAC層軟體使用。
 



對於傳訊方面,在VPHY實體之中設有兩個列(Queue),一個用來儲存送抵該VPHY實體的訊息,包括MAC層軟體對VPHY的控制訊息及乙太網路射頻所接收到屬於該VPHY實體的封包;另一列用來儲存該VPHY實體想傳送出去的訊息,如VPHY傳送給MAC層軟體的訊息。
 



鑑於送抵VPHY實體的訊息必然要有人負責處理,因此輸入訊息的處理工作也被統整在VPHY實體中,此部分的功能大抵上是先將訊息取出列,然後依據該訊息的類別來做相對應的處理,而由於協定部分的不同會有迥異的訊息處理方式,因此VPHY模組中會有資料庫維護相對於各種協定部的訊息處理函式,VPHY實體透過查詢資料庫可知該訊息對應到何種處理函式,呼叫該處理函式之後,該處理函式的內部行為是由協定部分所處理,在訊息處理完之後,便會進行該訊息的釋放動作。
 



在上述的訊息處理動作之中,隱含著VPHY實體與協定部分之間的聯結關係,因為處理訊息的流程由VPHY實體而起,中間會導引到協定部分,而協定部分要處理該訊息必須要用到其資料庫,因此VPHY實體之中必須連結到其下協定部分所使用的資料庫,如此才能在訊息處理過程中被使用。
 



乙太網路射頻傳送/接收VPHY封包
 



VPHY封包的格式如圖2所示,在封包格式中,若是乙太網路標頭值(Header)中的類別欄位填為對應到VPHY類別的數值,則該封包便是一個VPHY的封包,接下來的VPHY區段標頭值(Fragment Header)是用來將無法一次傳送的VPHY載重量(Payload)切割成數個較小封包來傳送。


圖2 VPHY封包格式圖



VPHY載重量所攜帶的資料是從VPHY協定標頭值(Protocol Header)開始,此標頭值主要目的是標示該資料是屬於何種協定類別,此外該標頭值也負責兩個VPHY端點間測量時距的功能,稱為Ping的動作,在目前的設計中,Ping分為兩種,一種是指定某端點來測量,另一種是指定想接收該協定類別的所有端點來測量。在VPHY協定標頭值之後,是VPHY協定負載量,此部分的格式會依不同的協定類別有差異化,稍後會有IEEE 802.16e WiMAX OFDMA的VPHY協定負載量格式介紹。
 



乙太網路射頻所負責的是處理VPHY格式的網路封包,在動作上可分成傳送與接收,在傳送方面,乙太網路射頻將協定部分提供的VPHY協定負載量加上VPHY格式的標頭值之後傳送出去;在接收方面,首先要先將VPHY格式的標頭值解讀後,可知該封包屬於何種協定類別,接下來要去詢問VPHY模組中各個歸屬於此類協定類別的VPHY實體,是否有意願要接收處理此VPHY協定負載量,若是,乙太網路射頻會將該VPHY協定負載量封裝成訊息傳送給該VPHY實體。
 



協定部分支援MAC層軟體所需的訊息介面
 



如上述,VPHY實體中所有與該通訊協定相關的功能都實際操作於協定部分之中,為達成此需求,協定部分必須具備完善的訊息介面以供MAC層軟體操作,此外在VPHY協定負載量的格式規畫也須能承載該通訊協定所需資訊,而在運作行為方面,則須能模擬實體層行為以符合MAC層軟體的開發需求。
 



WiMAX VPHY設計面面觀
 



以下將描述可搭配802.16e WiMAX的VPHY設計,以此為例,更容易了解VPHY概念與功能。
 



WiMAX VPHY功能進展歸納
 



WiMAX VPHY目前提供的功能如下:
 


支援分時雙工(TDD)模式,並可設定射頻參數




下行方向可支援傳送Preamble、FCH、Normal/Compressed MAP、PUSC Zone
  突波(Burst)、Two-Antenna多重輸入多重輸出(MIMO)with Matrix A/B突波、混合性的自動重發請求(HARQ) 脈衝及群播與廣播服務(MBS)突波。


上行方向可支援傳送CDMA Ranging Code、PUSC Zone Burst、快速反饋(Fast Feedback)、自動重發請求突波(HARQ Burst)、自動重發請求確認(HARQ ACK)、噪聲基底密度數(Noise Floor Calculation)、安全區域(Safety Zone)、MIMO with STTD/SM/CSM。




訊號狀態報告(Signal Conditional Report)
  VPHY於下行方向將會回報訊號強度特徵(RSSI)、載波干擾訊號比(CINR)及頻率偏移(Frequency Offset),而上行方向則會回報RSSI、CINR、時間偏移(Timing Offset)和頻率偏移。




通道模擬器(Channel Emulator)
  VPHY可模擬基地台與用戶端設備(CPE)之間通道的狀態,如路徑損耗(Path Loss)、干擾位準(Interference Level)、雜訊位準(Noise Level)及往返延遲(Trip Delay)。



WiMAX VPHY協定負載量依上/下行有別
 



根據圖2對於VPHY封包的說明,可知VPHY封包可用來搭配傳送各種MAC層軟體資料,而在下文中,即介紹專門為WiMAX所設計的VPHY協定負載量。
 



於下行方向,將VPHY協定負載量分為下行前置訊號(DL Preamble)和下行突波(DL Burst)兩類,而下行突波又可根據其突波特性區分為矩形突波(Rectangular Burst)及線性突波(Linear Burst),兩者皆帶有下行MIMO資訊,另外,上行方向方面,VPHY協定負載量目前僅有上行突波(UL Burst)一種樣式,之後則再依據上行突波特性細分為上行資料突波(UL Data Burst)、分碼多重存取(CDMA Code)、自動重發請求確認及快速反饋;上行資料突波則會夾帶UL MIMO資訊。
 



WiMAX基地台VPHY的三大狀態後續處理迥異



在WiMAX系統中,基地台是以單點對多點的模式與建置在企業或住宅的用戶端進行訊息與資料傳遞,負責規畫每個訊框下無線資源的分配,為此根據基地台特性,基地台VPHY主要工作即為傳送下行資料至乙太網路射頻、接收由乙太網路射頻所送來的上行資料與決定訊框前進(Frame Advance)的時機。
 



訊息的傳遞是基地台VPHY與MAC層軟體溝通的主要方式,訊息根據傳遞方向與功能性分為請求、回應及通知三類,請求訊息是由MAC發送至基地台VPHY,另外兩類訊息則是由基地台VPHY傳遞至MAC。訊息內容除了基地台VPHY的控制訊號外,也包含上行/下行資料。基地台VPHY訊息類型可參照表1~3。















表1 MAC傳送至BS VPHY的請求訊息類型
訊息類型 目的
CAPABILITY 詢問BS VPHY支援的能力
SET_CONFIG 設定BS VPHY
QUERY_CONFIG 詢問目前BS VPHY的設定值
START 啟動BS VPHY
STOP 停止BS VPHY
FRAME_START 設定下個訊框的傳送與接收控制資訊
DL_BURST 傳送預計下個訊框傳出的下行資料
DL_HARQ_BURST 傳送預計下個訊框傳出的下行HARQ資料
END_OF_DL_FRAME 通知BS VPHY已完成一個下行副訊框(即完成一次資源排程程序)


資料來源:資策會














表2 BS VPHY傳送至MAC的回應訊息類型
訊息類型 目的
CAPABILITY 回應BS VPHY支援的能力
SET_CONFIG 回應設定BS VPHY
QUERY_CONFIG 回應目前BS VPHY的設定值
START 回應啟動BS VPHY請求訊息是否正確
STOP 回應停止BS VPHY請求訊息是否正確
FRAME_START 回應下個訊框設定的控制資訊是否正確
DL_BURST 處理預計下個訊框傳出的下行資料是否正確
DL_HARQ_BURST 處理預計下個訊框須要傳出的下行HARQ資料是否正確


資料來源:資策會

 













表3 BS VPHY傳送至MAC的通知訊息類型
訊息類型 目的
FRAME_START 通知MAC層一個訊框的啟始
UL_BURST 傳送上行資料給MAC層
UL_HARQ_BURST 傳送上行HARQ資料給MAC層
CDMA 傳送CDMA code給MAC層軟體
ACKCHANNEL 傳送HARQ ACK資訊給MAC層
CQICH 告知通道量測結果
NOISE_INFO 告知雜訊量測結果


資料來源:資策會


目前基地台VPHY設計有三種狀態:初始(Initiate)、準備就緒(Ready)及運行(Run)。當基地台VPHY在不同的狀態下,對於不同的訊息後續處理也有別,如QUERY_CONFIG_REQUEST訊息僅在MAC層設定基地台VPHY結構成功後,才算有效(即為在準備就緒或運行狀態),否則須回覆此次請求失敗。接下來就依序介紹基地台VPHY重要程序:
 





初始基地台VPHY
  由於每塊硬體平台皆有其支援能力,如多工模式、射頻頻率、頻寬或MIMO支援與否等特性,所以基地台VPHY也須先初始底層特性,並透過訊息的交換(CAPABILITY_REQUEST及CAPABILITY_RESPONSE)將這些特性與能力回報給MAC層,供MAC層來選擇設定整個基地台。等到MAC層將基地台VPHY正確設定完成後,即可啟動基地台VPHY,完成基地台VPHY初始化程序。另外,MAC層可透過STOP_REQUEST訊息來停止基地台VPHY運行。




訊框前進
  由於基地台VPHY須能順利的掌握訊框前進的時機,所以基地台VPHY內部有專門的訊框計時器來計算訊框時間。當基地台VPHY被啟動後,此計時器即開始運作,等到計時器期限終止(Timer Expire),則代表一個訊框已經結束,亦同於宣告下一個訊框開始,此時基地台VPHY會傳送FRAME_START_INDICATION訊息通知MAC層,來觸發MAC層開始進行資源排程程序。當基地台VPHY被停止時,內部的訊框計時器則被終止。




傳送與接收控制資訊
  控制資訊(Vector)對於硬體平台是相當重要的資訊,它將決定硬體平台在訊框中何時該傳送接收資料及該如何傳送接收。所以當基地台VPHY進行設計時,必須先定義其傳送(TX)/接收(RX)控制資訊,而MAC層則應該在進行資源排程時,對基地台VPHY設定對應的TX/RX控制資訊。當基地台VPHY時序切換至下一個訊框時,資料的傳送與接收便會依據先前設定的控制資訊來進行。



若MAC層設定錯誤的控制資訊,基地台VPHY則會回覆錯誤狀況,並會視相關的副訊框(Sub-frame)為失敗的副訊框。在一個失敗的下行副訊框中,基地台VPHY被禁止傳送資料至乙太網路射頻,反之,一個失敗的上行副訊框,則是禁止資料接收。




下行資料傳送
  為了避免基地台VPHY處理下行資料時的延遲,造成資料無法於適當的訊框中傳送出去,因此MAC層須要在前一個訊框進行時,依序將預計傳送的下行資料(以突波為單位)交付給基地台VPHY。基地台VPHY則會在訊框切換後,根據TX控制資訊及下行資料來完成VPHY協定負載量內欄位的填寫,之後再透過乙太網路射頻送出。



目前基地台VPHY可傳送的下行資料分為三類,分別為前置訊號、矩形突波及線性突波。基地台VPHY在每個訊框啟始時,會送出前置訊號,供用戶端同步,而矩形突波和線性突波則是用來傳遞基地台與用戶端之間的資料。

 




上行資料接收
  上行資料的接收可分為兩個程序:過濾(Filter)及處理(Handle)。在上行副訊框進行時,乙太網路射頻會持續接收VPHY封包,透過基地台VPHY的過濾程序,將屬於此基地台的VPHY封包接收進來,而丟棄不符合的VPHY封包。



VPHY封包接收進來後,基地台VPHY進入處理程序。若VPHY封包內的協定負載量內容符合RX控制資訊的設定,則該VPHY封包視為正確,反之,則丟棄。最後,基地台VPHY會根據當下處理的資料種類,透過不同的通知(Indication)訊息將資訊整理打包回報給MAC層。目前基地台VPHY可進行處理的上行資料分為四類,分別為上行常態資訊(UL Normal Data)、分碼多重存取碼、自動重發請求確認和快速反饋。
 



WiMAX行動通訊台VPHY運作藉VPHY協定覆載量/MAC訊息處理達成 行動通訊台VPHY主要工作有兩項:其一為從乙太網路射頻接收來自基地台VPHY的訊息,依據DL-MAP的描述正確解讀VPHY協定負載量,取出MAC原始數據,傳送至MAC層;其二為依據MAC控制資訊的指示及資料,組出VPHY協定負載量,並在正確的訊框傳送至乙太網路射頻。對應到VPHY架構,工作由VPHY協定負載量及MAC訊息處理程序完成。
 



行動通訊台VPHY分成初始、同步、標準及待機四種狀態,初始為VPHY被啟用的初始狀態;同步為行動通訊台對依MAC設定頻率的前置訊號同步及其訊號狀況回報的狀態;標準則是行動通訊台鎖定特定基地台,與其正常傳送及接收的狀態;至於待機是行動通訊台鎖定特定基地台後,被MAC指示進入睡眠的狀態。四種狀態的轉換由MAC層控制,VPHY狀態轉移與接收MAC層訊息的關係如圖3。



圖3 MS VPHY狀態轉移圖




由VPHY架構可知,乙太網路射頻接收的VPHY負載量是否傳到協定部分,須先經協定部分的過濾程序做初步檢查,過濾程序確認該負載量需協定部分處理後,乙太網路射頻才會將該VPHY協定負載量傳送至協定部。行動通訊台過濾程序會因VPHY狀態有別。初始狀態下,毋須處理任何負載量;同步狀態下,只須處理MAC關心頻率下的前置訊號;標準狀態下,須處理某特定基地台所發送的訊號;待機狀態下與同步狀態下過濾程序相同。MAC傳送至VPHY的訊息種類參照表4,而VPHY傳送至MAC的訊息種類則參照表5。














表4 MAC傳送至VPHY的訊息類型
訊息類型 目的
SYNC 依指定頻率下的所有BS做掃描及回報
SWITCH_TO_BS 依指定頻率、前置訊號的BS做連線溝通
SLEEP 指示MS進入睡眠狀態
CFG 設定VPHY所需參數
UPDT_MAP_CID 更新VPHY解讀DL-MAP時所用的CID值
TX_VECTOR 設定下個訊框的傳送控制資訊
TX_DATA 傳送下個訊框的傳送資料
CTRL_RF_POWER 控制RF功率大小


資料來源:資策會













表5 VPHY傳送至MAC的訊息類型
訊息類型 目的
SYNC_REP 回報前置訊號的訊號品質
START_FRM 開始新的訊框
SET_PARAM 設定VPHY解讀DL-MAP後得到的參數
RX_DATA 傳送接收的MAC未經處理的資料
RX_DATA_QUALITY MAC未經處理的資料的接收訊號品質
SYNC_LOSS 同步遺失
MSG_CFRM MAC-> VPHY訊息錯誤確認


資料來源:資策會


MAC層想要開始掃描某頻率的基地台訊號時,傳送同步訊息至VPHY,相關參數包含想要掃描基地台的中心頻率、頻寬、快速傅利葉轉換(FFT)尺寸、循環字首(CP)長度。VPHY收到同步訊息後,根據MAC所帶的參數掃描基地台,並將掃描到的基地台前置訊號狀況利用SYNC_REP回報至MAC層。
 



MAC層決定與特定基地台進行連線溝通時,傳送SWITCH_TO_BS訊息至VPHY,相關參數包含想要掃描基地台的中心頻率、頻寬、快速傅利葉轉換尺寸、循環字首長度及前置訊號索引(Preamble Index),此時,VPHY進入標準狀態。



VPHY進入標準狀態後,則開始一般傳送及接收程序。因為行動通訊台接收DL VPHY 協定負載量必須依循一定的順序,順序為前置訊號、DLFP、DL-MAP,最後才是標準資料(Normal Data)。所以在標準狀態下,VPHY使用變數RxFlag來記錄預期接收的負載量類型。RxFlag描述四種可能狀態:WaitPreamble、WaitDLFP、WaitDLMAP、標準。在WaitPreamble狀態時只接收前置訊號,接收正進行溝通的基地台的前置訊號後,RxFlag進入WaitDLFP狀態,開始等待DLFP。WaitDLFP狀態下只接收DLFP,正確接收DLFP後,進入WaitDLMAP狀態,此狀態下只接收DL-MAP。VPHY接收到負載量為DL-MAP後,除了解讀完相關標頭(Header),還必須解讀DL-MAP原始訊號,以得到當下訊框接收資料控制資訊(以下簡稱接收控制資訊),一旦成功解讀出當下訊框的接收控制資訊,RxFlag進入標準狀態。標準狀態時則依接收控制資訊來決定必須處理的VPHY協定負載量。另外,RxFlag在任何一狀態下接收到前置訊號後,代表基地台開始另一個新的訊框,所以都會進入WaitDLFP狀態。RxFlag狀態轉移方式如圖4。


資料來源:資策會
圖4 RxFlag狀態轉移圖(只處在VPHY NORMAL狀態下)




標準狀態下,行動通訊台VPHY處理VPHY協定負載量的一般流程如下:MS收到前置訊號後,可知DLFP參數;收到DLFP並解讀其內容,可知DL-MAP相關參數;收到DL-MAP,解讀DL-MAP得到當下訊框的接收控制資訊;最後,依接收控制資訊,接收屬於自己的VPHY協定負載量,並將該負載量的MAC原始訊號,傳送至MAC層。
 



因為解讀DL-MAP的工作由VPHY執行,所以,當行動通訊台MAC層獲得基地台MAC層配置的連線識別(CID)時,必須傳送UPDT_MAP_CID訊息(相關參數為想要增加或刪除的連線識別值)至行動通訊台VPHY,通知VPHY解讀DL-MAP時,須要更新的連線識別,幫助VPHY利用更新過的連線識別解讀DL-MAP,取得接收控制資訊,如此才能正確接收行動通訊台須處理的資料。
 



當VPHY解讀DL-MAP時,記錄此訊框接收控制資訊,成功處理完DL-MAP後,傳送START_FRM(相關參數為訊框數)至MAC層,通知MAC新的訊框開始。



若DL-MAP中某些參數,如訊框長短(Frame Duration)、基地台識別碼等,有所改變時,傳送SET_PARAM及更新過的相關參數至MAC層。接著藉已記錄接收控制資訊的幫助,處理乙太網路射頻傳過來的VPHY協定負載量並判斷其是否為行動通訊台須處理的資料,若是,則將此負載量中屬於MAC原始資料的部分以RX_DATA訊息傳送至MAC層。另外,RX_DATA之後,VPHY傳送RX_DATA_QUALITY至MAC層,提供其訊號接收品質。因為傳送至MAC的原始資料中,包含UL-MAP,所以當MAC層成功解讀UL-MAP後,必須將解讀所得下個訊框的傳送資料的控制資訊(以下簡稱傳送控制資訊)以TX_VECTOR訊息傳送至VPHY,且以TX_DATA訊息傳送下個訊框要傳送的資料。VPHY在收到新的前置訊號後,立即依預先記錄的傳送控制資訊所描述的方式,組出適當的VPHY協定負載量來包容想要傳送的MAC原始資料,將該負載量傳送至乙太網路射頻。
 



MAC層傳送SWITCH_TO_BS後進入VPHY標準狀態後的訊息流程如圖5。



資料來源:資策會
圖5 MAC層傳送SWITCH_TO_BS後訊息流程




MAC層收到資料若包含VPHY需要的資訊,如下行通道描述單元(DCD)中的突波模式(Burst Profile),則透過CFG伴隨相關資訊傳送至VPHY。若VPHY在一定期間內無法正常收到基地台的前置訊號,則傳送SYNC_LOSS至MAC層,通知此時VPHY對基地台的同步遺失。若MAC層想要進入睡眠模式,則傳送待機至VPHY,此時VPHY會進入睡眠狀態。若MAC層想要修改VPHY協定負載量中的電源參數,則傳送CTRL_RF_POWER至VPHY,透過修改射頻電源,進而影響傳送於負載量中的電源欄位。若VPHY收到MAC的訊息後,發現此訊息攜帶的任何參數不合理時,則VPHY會傳送MSG_CFRM,通知MAC此道訊息不完全正常運作。



本文介紹針對IEEE 802.16e WiMAX所設計的VPHY,藉由如此設計的VPHY,提供開發MAC層軟體時所需要的控制介面及傳輸功能,對於所開發出來的MAC層軟體,由於可透過VPHY進行整合性測試,將大幅度提高其正確性及減輕未來移植到真正實體層的困難度。
 



(本文作者任職於資策會網路多媒體研究所)

》想看更多內容?快來【免費加入會員】【登入會員】,享受更多閱讀文章的權限喔!
標籤
相關文章

導入同步取樣技術 多工DAQ效能晉級

2010 年 01 月 04 日

滿足新世代攻擊防範需求 安全控制器設計精益求精

2011 年 04 月 28 日

結合車載資通訊 ITS增進運輸系統安全與效率

2012 年 06 月 11 日

結合RFID/霍爾元件/溫度感測器 MCU打造上鎖電源插座

2013 年 08 月 24 日

氮化鎵電晶體添柴加薪 無線充電功率密度更進一步

2019 年 02 月 27 日

穿戴式計時比賽系統即時測量數據 提升游泳競賽安全與資訊透明

2025 年 09 月 04 日
前一篇
QuickLogic標準產品針對Netbook/MID設計
下一篇
節能效率再提升 混合式FPGA綠化工業電機