郭夢霞
(陜西職業(yè)技術(shù)學院 管理系,陜西 西安 710000)
科學技術(shù)的飛速發(fā)展給我們的生活帶來了日新月異的變化,而通信技術(shù)的進步更是對社會的文明和進步產(chǎn)生了深刻的影響[1]。進入21世紀以來,移動通信已經(jīng)發(fā)展到大規(guī)模商用并逐漸成為人們生活中不可缺少的通信方式之一。目前,移動通信正朝著寬帶化、移動化的趨勢發(fā)展,3G系統(tǒng)的峰值傳輸速率已遠遠不能滿足人們?nèi)找嬖鲩L的需求[2]。面對高速發(fā)展的移動市場以及大量低成本、高帶寬的無線技術(shù)的普及,3GPP引進了高速下行鏈路分組接入(HSDPA)和增強型上行鏈路(HSUPA)這兩種技術(shù),使用MIMO和OFDM技術(shù),建立一個能獲得高傳輸速率、低等待時間、基于包優(yōu)化的可演進的無線接入架構(gòu)[3]。目前語音業(yè)務(wù)在移動市場取得了巨大的成功,但隨著數(shù)據(jù)業(yè)務(wù)和應(yīng)用的重要性和日益劇增的信息需求,LTE能為用戶帶來更豐富的服務(wù)。
根據(jù)研究問題的著眼點不同,無線通信系統(tǒng)的仿真通常分為鏈路級和系統(tǒng)級仿真。鏈路級仿真一般用于算法的研究和算法優(yōu)劣比較,通過對無線系統(tǒng)收發(fā)端之間的鏈路通信質(zhì)量進行仿真,得到鏈路性能曲線,從而對物理層的關(guān)鍵技術(shù)進行評估。系統(tǒng)級仿真的主要目的是根據(jù)鏈路級仿真結(jié)果,檢驗系統(tǒng)級特征所帶來的系統(tǒng)容量和頻譜效率,對整個系統(tǒng)表現(xiàn)出來的各項性能統(tǒng)計指標進行考察。隨著目前FPGA的廣泛使用,且其主頻和處理速度也日益加快,很多算法也逐漸由FPGA硬件來實現(xiàn),這也就逐步形成了以FPGA芯片、DSP或ARM處理器組成的通信modem芯片。而硬件建模工作量大,對時序要求非常嚴格,測試用例的執(zhí)行效率較低[4-5]。由于芯片的局限性和高額的流片費用,需要在芯片流片前對其進行充分的仿真和測試,使其滿足所需要的功能。芯片的系統(tǒng)仿真也就應(yīng)運而生,在芯片流片之前,為DSP軟件提供了仿真運行平臺,提高了DSP軟件的正確性。
基于VC平臺的軟件模擬仿真平臺包括4部分,如圖1所示,ST樁、協(xié)議棧樁、硬件平臺樁以及測試用例的管理。該模擬平臺模擬協(xié)議棧RRC和硬件BBP的處理,完成RRC、硬件和DSP軟件之間的交互,從而完成對DSP軟件代碼的相關(guān)測試[6]。
1)ST樁:包括驅(qū)動管理,各種中斷的管理和配置,以及符號中斷、浮動中斷等。以及模塊間交互過程中狀態(tài)的維護和流程的控制,模擬虛擬小區(qū)的配置,完成小區(qū)資源池的維護,包括頻點、小區(qū)ID等。
2)協(xié)議棧樁:包括 RRC樁、MAC樁等,完成 RRC、MAC的流程處理,實現(xiàn)小區(qū)搜索、測量、隨即接入、切換等功能,并實現(xiàn)和DSP軟件之間的原語交互,模擬真實協(xié)議棧的功能。
3)硬件邏輯樁:包括定時、小區(qū)搜索、測量等模塊,為DSP軟件提供定時和數(shù)據(jù)等相關(guān)功能,實現(xiàn)了viterbi譯碼、tuebo譯碼等打樁功能,并提供了硬件邏輯和DSP軟件之間的交互處理。
4)測試用例管理:存放了測試用例,實現(xiàn)了測試用例的運行和管理,以及結(jié)果的判斷和匹配。
圖1 仿真平臺模塊組成Fig.1 Simulation platform modules
仿真平臺實現(xiàn)了用戶終端的控制流程,并根據(jù)收到的原語來維護用戶終端的狀態(tài),如圖2所示具體包括:
1)維護用戶終端的狀態(tài),包括下電狀態(tài)、FREE空閑態(tài)、IDLE態(tài)、Connected連接態(tài);
2)維護用戶終端空閑泰德子狀態(tài),包括掃頻、初搜、初始解廣播狀態(tài)等;
3)維護用戶終端IDLE態(tài)的子狀態(tài),包括IDLE尋呼、解廣播、解臨區(qū)廣播、IDLE態(tài)測量等狀態(tài);
4)維護用戶CONNECT終端連接態(tài)的子狀態(tài),包括下行信道控制、上行信道控制、CQI、測量等子狀態(tài)控制。
圖2 仿真平臺處理流程Fig.2 Simulation platform processing
郵箱是一個環(huán)形緩沖區(qū),如圖3所示。郵箱包括一個讀指針DataReadAddr,保存當前數(shù)據(jù)的讀取指針,記錄了已經(jīng)讀取了數(shù)據(jù)的地址;以及一個寫指針DataWriteAddr,保存了已經(jīng)寫入的數(shù)據(jù)的地址;寫入數(shù)據(jù)的長度,記錄了當前環(huán)形緩沖區(qū)中保存的數(shù)據(jù)長度,即寫指針和讀指針之間的長度。當時據(jù)需要寫入緩沖區(qū)時,將數(shù)據(jù)寫入緩沖區(qū),并將寫指針地址加上寫入數(shù)據(jù)的長度,同時將保存的數(shù)據(jù)長度加上寫入的數(shù)據(jù)長度;當需要從緩沖區(qū)讀取數(shù)據(jù)時,需要將讀指針加上讀取數(shù)據(jù)的長度,并將保存的數(shù)據(jù)長度減去讀取的數(shù)據(jù)長度,同時需要保證讀取的數(shù)據(jù)長度不大于保存的數(shù)據(jù)長度。
圖3 環(huán)形緩沖區(qū)結(jié)構(gòu)Fig.3 Ring buffer structure
2.3.1 數(shù)據(jù)的寫入
數(shù)據(jù)的寫入分為2種情況,即寫指針大于讀指針、寫指針小于讀指針(超過一環(huán))。對于寫指針大于讀指針的情況,即正常的數(shù)據(jù)存儲,如圖4所示。將數(shù)據(jù)寫入緩沖區(qū)[7],并將寫指針向前移動寫入數(shù)據(jù)的長度。需要提前保證寫入的數(shù)據(jù)長度小于空閑緩沖區(qū)的長度。空閑緩沖區(qū)如圖中紅色區(qū)域所示,藍色區(qū)域表示緩沖區(qū)中已有數(shù)據(jù)。
圖4 正常數(shù)據(jù)的寫入Fig.4 Data written to normal
圖5 寫指針超過一環(huán)Fig.5 Write pointer over one ring
另外一種情況是寫指針小于讀指針,這種情況是寫指針超過一環(huán),如圖5所示。這種情況下寫指針會從0開始計數(shù),結(jié)果是寫指針小于讀指針。這種情況下數(shù)據(jù)的寫入需要分為2部分,首先寫入當前寫指針到緩沖區(qū)起始位置的數(shù)據(jù),寫指針指向0位置。再寫入剩下的數(shù)據(jù),寫指針指向剩下的數(shù)據(jù)的長度。
2.3.2 數(shù)據(jù)的讀取
數(shù)據(jù)的讀取也分為2種情況,即寫指針大于讀指針,寫指針小于讀指針 (超過一環(huán))。對于寫指針大于讀指針的情況,屬于正常的數(shù)據(jù)讀取,如圖6所示。讀取數(shù)據(jù)的長度不能打大于緩沖區(qū)中所保存的數(shù)據(jù)長度,這種情況下,讀指針不會超過范圍,不會指向緩沖區(qū)的起始位置0。將數(shù)據(jù)從緩沖區(qū)讀出后,將讀指針的位置加上讀出的數(shù)據(jù)長度,并更新為新的讀指針。
圖6 正常的數(shù)據(jù)讀取Fig.6 Normal data read
另一種情況是讀指針越過緩沖區(qū)的起始位置0,即寫指針大于讀指針的情況,如圖7所示。這種情況下,數(shù)據(jù)的讀取需要分為2步來進行,首先需要讀取當前讀指針到緩沖區(qū)起始位置0之間的數(shù)據(jù),并將讀指針指向起始位置0。然后再讀取剩下的數(shù)據(jù),并將讀指針指向剩下的數(shù)據(jù)長度。
協(xié)議棧RRC、MAC和物理層DSP之間通過郵箱進行數(shù)據(jù)通信,即RRC、MAC層將相關(guān)原語發(fā)送到下行郵箱,并配置一IPCM中斷給驅(qū)動。物理層DSP收到該中斷后,調(diào)用相關(guān)處理過程從郵箱中取出數(shù)據(jù)[8],并進行原語的解析和處理。協(xié)議棧RRC、MAC共用一個公共郵箱,MAC還有一專有郵箱,用于實現(xiàn)MAC專有原語的發(fā)送。其具體過程如圖8所示。
圖8 DSP軟件從郵箱中讀取數(shù)據(jù)Fig.8 DSP software to read data from the mailbox
圖9 軟件處理流程Fig.9 DSP software to read data from the mailbox
4G系統(tǒng)具有相當?shù)膹?fù)雜度,對其系統(tǒng)級性能的評估和有關(guān)候選關(guān)鍵技術(shù)的研究需要系統(tǒng)級仿真平臺的支持。并且,在modem芯片流片前對DSP物理層軟件進行仿真能夠保證芯片的開發(fā)和物理層軟件的開發(fā)齊頭并進,更好的保證開發(fā)進度,縮短開發(fā)周期,盡早發(fā)現(xiàn)軟件bug,提高物理層軟件的正確性。通過該仿真平臺,能夠模擬4G的相關(guān)功能,驗證物理層軟件的正確性,縮短開發(fā)周期,更好的保證芯片的開發(fā)質(zhì)量。并且,該仿真平臺使用C語言開發(fā),編程簡潔,方便后繼開發(fā);且平臺的可移植性好,方便在不同操作系統(tǒng)上移植開發(fā)。同時,該仿真平臺使用模塊化設(shè)計,具有良好的擴展性,通過修改代碼硬件邏輯的樁代碼,可以使用在不同的芯片開發(fā)平臺上。
[1]付曉.LTE-3G技術(shù)的未來發(fā)展[J].郵電設(shè)計技術(shù),2006(2):39-41 FU Xiao.The future development of LTE-3G technology[J].Posts and Design Technology,2006(2):39-41.
[2]唐利平,劉鐮斧.3GPP-LTE及其物理層技術(shù)綜述[J].信息技術(shù),2008(10):130-144.TANG Li-ping,LIU Qian-fu.Survey of 3GPP-LTE and physical layer[J].Information Technology,2008(10):130-144.
[3]楊鵬,李波.LTE的關(guān)鍵技術(shù)及其標準演進[J].電信網(wǎng)技術(shù),2009(4):40-42.YANG Peng,LI Bo.The key technologies and standards evolution of LTE[J].Telecom Network Technology,2009(4):40-42.
[4]黃沄,羅明偉,張鵬.一種含有常數(shù)項的新超混純系數(shù)及其FPGA實現(xiàn)[J].重慶師范大學學校:自然科學版,2015(1):116-120.HUANG Yun,LUO Ming-wei,ZHANG Peng.A novel hyperchaotic system with constant term and its circnit implementation based on FPGA[J].Journal of Chongqing Normal University:Natwral Science Edition,2015(1):116-120.
[5]彭木根,王文博.3G無線資源管理與網(wǎng)絡(luò)規(guī)劃優(yōu)化[M].北京:人民郵電出版社,2006.
[6]沈嘉.3GPP LTE核心技術(shù)及標準化發(fā)展[J].移動通信,2006(8):45-49.SHEN Jia.3GPP LTE core technology development and standardization[J].Mobile Communication,2006(8):45-49.
[7]王文龍,張少博,陳海峰.一種試驗數(shù)據(jù)處理軟件設(shè)計[J].火箭推進 ,2012(1):76-80.WANG Wen-long,ZHANG Shao-bo,CHEN Hai-feng.Design of a test data processing software[J].Journal of Rocket Propulsion,2012(1):76-80.
[8]周彬倩,李文意,楊民京,等.基于單相背靠背H橋級聯(lián)結(jié)構(gòu)的仿真研究[J].陜西電力,2014(4):41-44.ZHOU Bin-qian,LI Wen-yi,YANG Min-jing,et al.Simulation study on single-phase back to back H-bridge cascade structure[J].Shaanxi Electric Power,2014(4):41-44.