新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于PCIe+X86系統(tǒng)的毫米波信號實時處理研究及FPGA實現(xiàn)*

        基于PCIe+X86系統(tǒng)的毫米波信號實時處理研究及FPGA實現(xiàn)*

        作者:梁輝1,2,周建燁1,2袁行猛1,2(1. 中電科思儀科技(安徽)有限公司,安徽蚌埠 233050;2.電子測量儀器技術蚌埠市技術創(chuàng)新中心,安徽蚌埠 233050) 時間:2023-05-24 來源:電子產(chǎn)品世界 收藏
        編者按:為了滿足毫米波5G信號采集傳輸控制系統(tǒng)中對前端射頻芯片的控制以及5G數(shù)據(jù)到上位機的高速傳輸?shù)男枨螅O計了一套基于FPGA的高速采集系統(tǒng)。實現(xiàn)了基帶數(shù)據(jù)的高速傳輸,測試結果驗證了設計方案的可行性。該系統(tǒng)可允許用戶通過PCIe總線訪問FPGA中的用戶配置寄存器,同時該系統(tǒng)可對前端射頻產(chǎn)生的不高于4 GB/s的連續(xù)或非連續(xù)上行數(shù)據(jù)進行實時采集,同時可以將上位機中的下行數(shù)據(jù)以不少于4 GB/s的速率寫入FPGA側的DDR4。

        *基金項目:蚌埠市科技計劃項目,高性能5G增強移動寬帶通信矢量信號發(fā)生器

        本文引用地址:http://www.104case.com/article/202305/446926.htm

        0 引言

        隨著移動通信的迅猛發(fā)展及 技術的成熟,低頻頻譜資源的開發(fā)已經(jīng)非常成熟,剩余的低頻頻譜資源已經(jīng)不能滿足5G 時代10 Gbit/s 的峰值速率要求,因此未來5G 系統(tǒng)需要在頻段上尋找可用的頻譜資源。隨著全球移動通信技術向著網(wǎng)絡化和寬帶化趨勢發(fā)展,5G 商用的基站和手機也已近開始部署與批量生產(chǎn)。現(xiàn)在儀表除了能夠分析6 GHz 以下頻率的信號以外,還需要分析微波、等波形。傳輸?shù)募夹g難點主要在于5G 極高速的傳輸速率導致信號寬帶和基帶信號處理速度都將大大增加,對極高速數(shù)據(jù)流的實時處理和解析使得測試變得更加困難,作為測試技術的先行者,測試儀表5G功能毫米波測試技術開發(fā)也已提上日程[1]

        目前的高速數(shù)據(jù)傳輸系統(tǒng)中數(shù)據(jù)之所以可以高速、穩(wěn)定的進行傳輸,總線技術在其中起到了很大的作用。早期的總線是以PCI 總線為代表的并行總線,并行總線因其并行結構的缺陷,導致傳輸速率無法進一步提高。 總線作為其中代表,在帶寬、性能、時延、功耗、可靠性等方面有著卓越的表現(xiàn),為高速數(shù)據(jù)傳輸系統(tǒng)提供了堅實可靠的技術支持。

        賽靈思公司為其 提供了 IP 核,提供了多種用戶接口,可以大大降低設計成本,縮短整個項目的研發(fā)周期。隨著人們近年來對5G 移動通信和人工智能等領域的深入研究,越來越多的科研人員基于高性能運算平臺進行課題研究,但是運算過程中出現(xiàn)的海量數(shù)據(jù)傳輸問題成為需要克服的問題,所以對基于 高速數(shù)據(jù)傳輸系統(tǒng)進行研究有著重要的研究價值。

        基帶接收處理模塊是滿足多通道接收、不同系統(tǒng)帶寬、不同子載波間隔、多用戶基帶接收的指標要求,完成參數(shù)靈活可配單用戶、多用戶基帶信號接收功能,滿足5G 終端的低延時、高效率、高質量的處理能力。FPGA 是現(xiàn)階段實現(xiàn)采用的主流方式,具有較強的處理數(shù)字能力,設計采用Xilinx 公司的FPGA 芯片作為主要的實現(xiàn)平臺。為了實現(xiàn)基帶數(shù)據(jù)成功采集后的實時分析,采用PCIe 將FPGA 數(shù)據(jù)傳輸給上位機進行處理,突破高速信號不易實時分析的難題。

        1 系統(tǒng)架構

        為了滿足5G 信號采集傳輸控制系統(tǒng)中對前端射頻芯片的控制以及5G 數(shù)據(jù)到上位機的高速傳輸?shù)男枨蟆1驹O計實現(xiàn)了一套基于FPGA 的高速采集系統(tǒng)。該系統(tǒng)可允許用戶通過PCIe 總線訪問FPGA 中的用戶配置寄存器,同時該系統(tǒng)可對前端射頻產(chǎn)生的不高于4 GB/s(若使用多通道,則全部通道的累加帶寬不高于4 GB/s)的連續(xù)或非連續(xù)上行數(shù)據(jù)進行實時采集,同時可以將上位機中的下行數(shù)據(jù)以不低于4 GB/s 的速率寫入FPGA 側的DDR4,并通過控制相應的發(fā)送寄存器將DDR4 中的數(shù)據(jù)以循環(huán)或單次的形式發(fā)送給射頻端。

        1684988445957941.png

        系統(tǒng)設計主要分為兩部分:用戶側邏輯和PCIe_DMA 傳輸側邏輯。

        1.1 用戶側邏輯

        1)模擬數(shù)據(jù)產(chǎn)生模塊。用戶可通過配置寄存器來產(chǎn)生4 種帶寬模式的模擬數(shù)據(jù)。

        2)用戶寄存器配置模塊。用戶可通過cbus 接口讀寫用戶寄存器。通過用戶寄存器配置各類參數(shù)。

        3)上行組幀模塊。根據(jù)用戶配置的四種模式,對模擬數(shù)據(jù)產(chǎn)生模塊生成的數(shù)據(jù)添加相對應的32 字節(jié)幀頭和32 字節(jié)幀尾。

        4)下行解幀模塊。該部分由用戶自己實現(xiàn),對DMA收發(fā)控制器發(fā)出的下行數(shù)據(jù)進行解幀。

        1.2 PCIe_DMA傳輸側邏輯

        1)AXI 轉CBUS 模塊。該模塊實現(xiàn)用戶通過PCIe總線的AXI 接口訪問用戶端的CBUS 接口。

        2)DMA 收發(fā)控制模塊。該模塊提供1 路AXIS 接收接口,供用戶接入上行數(shù)據(jù);提供1 路AXI 接口供用戶讀寫寄存器;提供1 路AXI 接口,供用戶將下行數(shù)據(jù)寫入DDR4。提供1 路傳統(tǒng)中斷。

        3)上行數(shù)據(jù)接收緩沖模塊。該模塊實現(xiàn)1 個數(shù)據(jù)虛通道,使上行數(shù)據(jù)通過DDR4 緩存后再發(fā)送給DMA收發(fā)控制模塊。

        4)下行數(shù)據(jù)發(fā)送控制器模塊。該模塊實現(xiàn)用戶通過配置寄存器完成DDR4 中任意地址任意長度的下行數(shù)據(jù)循環(huán)發(fā)送和單次發(fā)送。

        5)AXI PCIE 橋模塊。該模塊使用XILINX 官方IP核實現(xiàn),用戶可通過AXI 接口實現(xiàn)對上位機的內存讀寫訪問。

        6)MIG DDR4 模塊。該模塊實現(xiàn)上行數(shù)據(jù)和下行數(shù)據(jù)的DDR4 緩存。

        2 FPGA詳細設計方案

        PCIe 數(shù)據(jù)采集DMA 控制器模塊(PCIE_DMA) 是該采集系統(tǒng)的核心模塊,圖2 為該模塊的邏輯設計框圖。上行數(shù)據(jù)流向描述如下:上位機用戶通過AXI_PCIE橋的PCIE_M_AXI 接口讀寫用戶寄存器,控制上行模擬數(shù)據(jù)的產(chǎn)生;上行模擬數(shù)據(jù)通過RX_AXIS 接口寫入上行數(shù)據(jù)接收緩沖,經(jīng)過FPGA 板載DDR4 做緩沖后通過RX_AXIS 接口寫入DMA 收發(fā)控制器;DMA收發(fā)控制器模塊將收到的數(shù)據(jù)通過PCIE_S_AXI 接口寫入上位機內存。下行數(shù)據(jù)流向描述如下:上位機用戶通過AXI_PCIE 橋的PCIE_M_AXI 接口讀寫DMA收發(fā)控制器中的發(fā)送配置寄存器;DMA 收發(fā)控制器通過PCIE_S_AXI 接口從上位機獲取下行數(shù)據(jù)并通過TX_AXI接口寫入FPGA 板載DDR4;上位機用戶通過AXI_PCIE 橋的PCIE_M_AXI 接口讀寫用戶側的發(fā)送地址、發(fā)送長度、發(fā)送周期等寄存器;下行數(shù)據(jù)發(fā)送控制器根據(jù)用戶側的發(fā)送地址、發(fā)送長度、發(fā)送周期等寄存器從板載DDR4 中讀取數(shù)據(jù)并通過TX_AXIS 接口發(fā)送到次級模塊。

        1684988595952127.png

        3 數(shù)據(jù)傳輸設計

        3.1 上行數(shù)據(jù)緩沖模塊

        3.1.1 輸入輸出接口

        1684988656376245.png

        圖3

        該模塊為上行數(shù)據(jù)緩沖模塊。該模塊利用vfifo 控制器實現(xiàn),vfifo 控制器本質是兩個DMA。第1 個DMA 將S_AXIS 收到的上行數(shù)據(jù)轉換成M_AXI 接口寫入DDR4做緩存,第2 個DMA 通過M_AXI 接口將數(shù)據(jù)從DDR4中讀出來并轉換成M_AXIS 接口送入次級處理模塊。該模塊主要為了實現(xiàn)瞬時帶寬較高的情況下,上行數(shù)據(jù)的緩存。

        3.2 下行數(shù)據(jù)發(fā)送控制器

        3.2.1 輸入輸出接口

        1684988757648973.png

        圖4

        該模塊是下行數(shù)據(jù)發(fā)送控制器模塊,此模塊可幫助用戶通過tx_addr、tx_len、tx_cycle、tx_start、tx_stop來實現(xiàn)從DDR4 中讀取任意長度的數(shù)據(jù)并以單次或者多次或者循環(huán)發(fā)送的方式發(fā)送到次級模塊。具體接口定義如下。

        tx_addr :發(fā)送地址。

        tx_len:發(fā)送長度。

        tx_cycle:循環(huán)發(fā)送次數(shù),0 為循環(huán)發(fā)送,1-n 為固定次數(shù)發(fā)送。

        tx_start:發(fā)送開始。

        tx_stop:循環(huán)發(fā)送停止。

        m_axi_mm2s:通過AXI 接口從DDR4 中讀取數(shù)據(jù)。

        m_axis_mm2s:通過AXIS 接口將下行數(shù)據(jù)發(fā)送給用戶。

        3.3 AXI轉CBUS

        1684988821287316.png

        圖5

        該模塊為AXI 轉CBUS 模塊。該模塊實現(xiàn)將來自PCIE IP 核的M_AXI 接口轉換成用戶讀寫寄存器CBUS接口。接口定義及時序如下。

        cbus_addr: 寄存器地址。

        cbus_wr: 寄存器寫使能。

        cbus_rd: 寄存器讀使能。

        cbus_din: 寄存器寫數(shù)據(jù)。

        cbus_dout: 寄存器讀返回數(shù)據(jù)。

        1684988894178153.png

        圖6 讀寫時序邏輯設計

        3.4 DMA收發(fā)控制器

        1684988977243884.png

        圖7

        該模塊為DMA 收發(fā)控制器模塊。該模塊實現(xiàn)上下行數(shù)據(jù)的DMA 傳輸。用戶上行數(shù)據(jù)通過adc_axis 接口寫入,通過PCIE_M_AXI 接口寫入AXI PCIE 橋。用戶下行的數(shù)據(jù)通過PCIE_M_AXI 接口從AXI PCIE 橋讀返回后,通過DDR_M_AXI 接口寫入FPGA 板載DDR4。PCIE_S_AXI 接口用于上位機通過AXI PCIE 橋來訪問DMA 收發(fā)控制器中的各個配置寄存器。cbus_axi 接口用于上位機通過AXI PCIE 橋來訪問用戶側的自定義寄存器。axi_aclk為AXI PCIE 橋產(chǎn)生的250 MHz 時鐘。Intx_msi_request為DMA 收發(fā)中斷。RcvEn 為上位機發(fā)出接收使能信號。Rxready 為DMA 接收控制器準備好信號。

        3.5 AXI PCIE橋模塊

        1684989081522541.png

        圖8

        該模塊為AXI PCIE 橋模塊。此模塊為XILINX 提供的IP 核,具體設置以及接口說明可參考官方手冊pg195 DMA/Bridge Subsystem for PCI Express v4.1。本設計中M_AXI_B 接口用于上位機讀寫DMA 收發(fā)控制器中的配置寄存器或者用戶側自定義的寄存器。S_AXI_B 接口用于DMA 收發(fā)控制器訪問上位機內存地址空間。S_AXI_LITE 接口用于動態(tài)配置AXI PCIE橋模塊,本設計不實際使用。Usr_irq_req 為DMA 收發(fā)控制器產(chǎn)生的中斷請求。PCIE_MGT 為8x Gen3 的PCIe 收發(fā)串行鏈路。s_axi_aclk 和s_axi_aresetn 為PCIe 輸出時鐘(250 M)和復位信號( 低有效)。其余輸入輸出接口本設計不實際使用。

        3.6 MIG模塊

        1684993393434312.png

        圖9

        該模塊為MIG 模塊,此模塊為XILINX 提供的IP 核,具體設置以及接口說明可參考官方手冊pg150 LogiCOREIP UltraScale Architecture-Based FPGAs Memory Interface Solutions v4.2。本設計中采用64 位DDR 數(shù)據(jù)位寬,時鐘1 200M。AXI 數(shù)據(jù)位寬512 位,輸入?yún)⒖紩r鐘300M。

        4 仿真與測試

        采用Vivado2020.2 軟件進行本次開發(fā)設計工作,開發(fā)的FPGA 型號為XCZU27DR-ff vg1517-2-i,本次設計通過基帶板以及整個采集平臺,驗證本次試驗的可行性。

        image.png

        圖10

        測試結果運行測試程序,啟動上行測試,上行測試結果如下圖所示,上行速率測試6 276 Mbyte/s,下行測試結果如下圖所示,下行速率測試6 620 Mbyte/s, 滿足數(shù)據(jù)實時傳輸要求。

        1684989311589813.png

        邏輯仿真(部分)

        圖11

        5 結束語

        本研究完成了毫米波基帶數(shù)據(jù)的實時傳輸,本設計主要研究開發(fā)了,經(jīng)過仿真和硬件驗證了傳輸?shù)恼_性,確認了本研究的可行性。

        參考文獻:

        [1] 袁行猛,徐蘭天,李奧.5G毫米波基帶數(shù)據(jù)傳輸?shù)难芯颗c實現(xiàn)[J].電子產(chǎn)品世界.2021(4):68-72.

        [2] 何世文,黃永明, 王海明,等.毫米波無線通信發(fā)展趨勢及技術挑戰(zhàn)[J].電信科學.2017(6):11-19.

        [3] 黃宇紅,劉盛綱,楊光,等.5G高頻系統(tǒng)關鍵技術及設計[M].北京:人民郵電出版社.2018.

        [4] 3GPP TS 38.215:NR;Physical layer measurements[S].

        [5] 3GPP TS 38.214:NR;Physical layer procedures for data[S].

        (本文來源于《電子產(chǎn)品世界》雜志2023年5月期)

        image.png


        image.png




        關鍵詞: 202305 5G NR 毫米波 PCIe FPGA X86

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 桦南县| 蓬溪县| 禄丰县| 凤阳县| 仪陇县| 大余县| 巴里| 犍为县| 云浮市| 广灵县| 普兰县| 全南县| 清涧县| 华池县| 巴林右旗| 衡山县| 邵阳县| 驻马店市| 齐河县| 南昌县| 化隆| 蒲城县| 仪陇县| 泗洪县| 兴安盟| 平塘县| 清丰县| 江山市| 子洲县| 宿松县| 梁平县| 宁夏| 马公市| 安仁县| 清河县| 保靖县| 阆中市| 马边| 闻喜县| 呼伦贝尔市| 新平|