用於RF收發器的簡單基帶處理器
發布時間:2017-12-15 來源:Rejeesh Kutty 責任編輯:wenwei
【導讀】本文第一部分詳細描述該基帶處理器的一般設計原則。該部分主要是BBP的理論介紹。在第二部分,使用ADI公司的AD9361FPGA參考設計討論BBP的實際硬件實施。值得注意的是,主要設計目標是使設計盡可能簡單,並在實驗室環境中演示快速無線數據傳輸。在使用和幹擾RF頻譜時,須考慮到法規及其他影響。
如今,無線係統無處不在,無線設備和服務的數量持續增長。設計完整的RF係統是一項跨學科設計挑戰,模擬RF前端是其中最關鍵的部分。然而, AD9361 等集成RF收發器的推出顯著減少了此類設計的RF挑戰。這些收發器可為模擬RF信號鏈提供數字接口,允許輕鬆集成到ASIC或FPGA,進行基帶處理。基帶處理器(BBP)允許在終端應用和收發器設備之間的數字域中處理用戶數據。此外,使用Simulinkdengxitongjianmogongjukeyiqingsongwanchengjidaichuliqisheji。raner,xinshouyonghukenenghuifaxiannanyilijiehejiejuezhegetongxinxitongnanti。benwenchangshiweiwuxianchuanshutongxinxitongshejiheshishijiandandeRF基帶處理器。設計使用AD9361 FPGA參考設計框架,在AD-FMCOMMS2-EBZ和Xilinx® ZC706平台上實施。
基本設計
典型的RF係統如圖1所示,直接RF係統除外。該圖1僅顯示了單個數據路徑,反方向是該數據路徑的鏡像圖像。本文中提出的相關基帶處理器允許對數據進行處理,以使其在兩個RF係統之間進行無線傳輸。下文討論了基本設計要求。

圖1. RF係統框圖
在兩個正交信號I & Q上重複數據
注zhu意yi,載zai波bo相xiang互hu獨du立li且qie彼bi此ci不bu同tong步bu。因yin此ci,發fa射she和he接jie收shou載zai波bo之zhi間jian存cun在zai相xiang位wei和he頻pin率lv偏pian移yi。這zhe將jiang對dui接jie收shou器qi的de解jie調tiao產chan生sheng不bu利li影ying響xiang。一yi個ge重zhong要yao問wen題ti是shi信xin號hao反fan轉zhuan,正zheng交jiao信xin號hao可ke能neng會hui反fan轉zhuan其qi作zuo用yong,因yin為wei偏pian移yi會hui定ding期qi合he並bing和he漂piao離li。克ke服fu這zhe種zhong不bu確que定ding性xing的de簡jian單dan方fang法fa是shi在zai兩liang個ge正zheng交jiao信xin號hao上shang重zhong複fu相xiang同tong數shu據ju。
以串行形式發送和接收數據(按位)
大多數情況下,與BBP連接的RF前端接口是DAC和ADC。這些是模擬信號的數字接口。因此,不能簡單地將數據發送到DAC輸入,並預計在ADC輸出端獲得相同數據。數據以串行形式發射,將單個位數據映射到DAC的全部分辨率。同樣,數據以串行形式接收,從ADC的全部分辨率解映射。這提供了充足的冗餘。如果這些是16位轉換器,則接收器將從可能的65536數據集中決定1或0。僅這一點,便可以顯著簡化解碼。
I & Q信號相互正交
RF前端設備(如AD9361)是I/Q收發器。如果輸入是正交信號,這些設備最有效。這些設備通常沿兩個數據路徑進行內部I/Q匹配和校正,以抵消二者之間的任何差異。規則是,實部(I)信號是餘弦函數,虛部(Q)信號是正弦函數。
調製方案是BPSK
可以部署信號幅度、頻率或相位調製的所有常見方法。檢測相位差異相對來說更加簡單。由於數據以串行形式傳輸,因此必然會選擇二進製相移鍵控(BPSK)。
位間隔是8個樣本
shujuxuyaoshixuxinxi,weijiange。kenengdezuidaweijiangeshicaiyangzhouqi。weileshijieshouqibaochijiandan,xuyaozugoudeshijianlaijiemaxinhaobingzuochujueding。zuijiandandeshixuhuifufangfashilingjiaoyuehefengzhijiance。zaizhezhongqingkuangxia,fengzhijiangbuyizhi。yinci,xuanzelingjiaoyuejinxingweijiangejiancehegenzong。liangzhongxitongzhijianyecunzaizaibochayi。zaimouxieqingkuangxia,zaiyonghushujuderenyiduan,yangbenkenengmohubuqing。weimeibangezhengxianxinhaoliuchu4個樣本,位間隔設置為8個樣本。因此,有效的傳輸速率是采樣頻率除以8。
數據沒有直流成分
shixuhexiangduixiangweihuifuyixinhaodelingjiaoyueweijichu。yinci,dangexinhaoxuyaobuhanrenhezhiliuchengfen。ciwai,yaoqiuxinhaomeigeyigeweijiangeyunxuzhishaoyigelingjiaoyue。zhengxianxinhaojianjuliangzhedeshuxing,bingqiefeichangfuheshangshuBPSK調製方案要求。
數據已加擾
用戶數據是任意的很可能是一長串1或0。數據需要加擾,以便在接收器端恢複時序和相位,從而更高效地跟蹤信號。
數據以數據包的形式傳輸
由於係統彼此不同步,因此接收器的信號會存在幅度、頻pin率lv和he相xiang位wei誤wu差cha。解jie調tiao信xin號hao是shi發fa射she信xin號hao相xiang對dui於yu本ben地di載zai波bo發fa生sheng相xiang位wei變bian化hua的de信xin號hao。載zai波bo可ke能neng會hui跟gen蹤zong一yi段duan時shi間jian,選xuan取qu數shu據ju,然ran後hou再zai跟gen蹤zong。因yin此ci,設she計ji需xu要yao做zuo好hao部bu分fen數shu據ju丟diu失shi的de準zhun備bei。為wei此ci,數shu據ju以yi數shu據ju包bao的de形xing式shi傳chuan輸shu。可ke重zhong複fu傳chuan輸shu多duo個ge數shu據ju包bao,而er非fei整zheng個ge數shu據ju。
使用CRC驗證數據包
數據包攜帶循環冗餘校驗(CRC)碼,因此如果存在不匹配,則允許接收器丟包,並請求再次發送。
在每個前同步碼期間完成時序和相位校正
數shu據ju包bao表biao頭tou攜xie帶dai前qian同tong步bu碼ma,用yong於yu將jiang其qi從cong接jie收shou到dao的de數shu據ju流liu中zhong劃hua分fen出chu來lai。此ci外wai,接jie收shou器qi使shi用yong該gai前qian同tong步bu碼ma複fu位wei信xin號hao的de時shi序xu和he相xiang位wei信xin息xi,以yi解jie調tiao數shu據ju包bao數shu據ju。
內置性能指標
接收器也支持統計計數器,如接收到的、丟棄的或校正的數據包數量。這些計數器用於衡量和監控性能指標,包括誤碼率和有效數據速率。
總而言之,數據作為數據包以串行形式發送和接收。數據包攜帶前同步碼和CRC。數據在收發器設備前的中間正交信號上經過BPSK調製和解調。因此,中間信號頻率和數據的位速率是采樣速率的八分之一。基帶處理器模塊及上述設計細節如圖2和3所示。

圖2. BBP發送功能框圖

圖3. BBP接收功能框圖
發送器讀取數據字節(字符寬度),並將其轉換為帶有表頭或前同步碼的數據包。將CRC添加到數據包末端。然後,對數據包數據進行加擾和串行處理。在連接到收發器之前,單個位數據相位調製餘弦(I)和正弦(Q)函數。
在接收方向,離線模塊恢複並跟蹤時序間隔和調製信號的相對相位。該信息用於從輸入的ADC樣本中恢複串行數據。然後組裝到數據包,並進行解擾。在數據包結束時,比較CRC,如果不匹配,則丟棄數據包。如果CRC匹配,數據傳遞給終端用戶。
實現
BBP設計在硬件中實施和測試。硬件是兩個評估板的組合:具有Zynq FPGA設備的Xilinx ZC706評估板,以及具有AD9361收發器的AD-FMCOMMS3-EBZ評估板。ADI提供支持該硬件的完整參考設計。該開源設計在主要工具版本中免費提供,可獲得完全支持和更新。硬件詳細信息參見下列URL:
ADI參考設計是支持Linux®框架的嵌入式係統。包含圍繞ARM®處理器的各種外設。AD9361設備連接到 axi_AD9361 IP外設。它在RF設備和係統存儲器之間傳輸原始采樣數據。
外設和設備通過Linux內核驅動程序進行初始化和控製。BBP則作為連接到 axi_AD9361的另一個IP外設。出於曆史原因,BBP IP命名為 axi_xcomm2ip 。Linux中的用戶空間應用程序用於在係統之間控製、發送和接收數據。
在ADI參考設計中,在發送方向,axi_AD9361 IP連接到解包模塊(util_upack),在接收方向,連接到打包模塊(util_cpack)。 在發送方向,BBP數據插入解包模塊和AD9361內核之間。為了使其不影響默認數據路徑,BBP支持可選的數據路徑多路複用器,以選擇解包數據源或BBP數據源。BBP允許參考設計數據路徑作為默認路徑,並僅在啟用時選擇BBP數據源。在接收方向,BBP僅連接到AD9361內核。參考設計數據路徑不受影響。這允許框架不受妨礙地引導和設置係統。在係統設置後,啟用BBP,可通過覆蓋默認數據路徑來進行數據傳輸。以ADI參考設計實施的BBP的框圖如圖4所示。

圖4. BBP IP框圖
本文中討論的設計、初始化和數據傳輸使用一對這種硬件。設置僅需一對HDMI®監視器、鍵盤和鼠標及天線。係統彼此完全不同步,但需要相同設置。在每個方向,數據在不同載波上傳輸。設備1的發射載波頻率和設備2的接收載波頻率相同,但在另一個方向上不同。然而,如果回送中使用單個設備,發射和接收載波必須具有相同的頻率。BBP的HDL設計采用ADI庫模塊。
控製(微處理器)接口
AXI-Lite接口用於通過處理器控製和監控BBP。使用ADI公共庫(hdl/library/common/up_axi.v)中的up_axi模塊,可以輕鬆推斷該接口模塊。該模塊將AXI-Lite接口轉換為簡單內存,如讀取和寫入總線。和任何其他ADI IP一樣,添加內部寄存器和內存。寄存器映射如表1所示。


表1. BBP寄存器映射
up_axi: 模塊端口及其端口映射如下所述。
up_rstn: AXI接口複位(異步低電平有效),連接到 s_axi_aresetn.
up_clk: AXI接口時鍾,連接到 s_axi_aclk.
up_axi_*: AXI接口信號,連接到等效 s_axi_* 端口
up_wreq, up_waddr, up_wdata, up_wack: 內部寫入接口, the up_wreq 信號與地址和數據一同置位,以指示寫入請求。請求需要通過up_wack 端口應答。
如下所示,實施簡單的寄存器寫入。
always @(negedge up_rstn or posedge up_clk)
begin
if (up_rstn == 0) begin
up_wack <= ''d0;
up_reg0 <= UP_REG0_RESET_VALUE;
end else begin
up_wack <= up_wreq_s;
if ((up_wreq_s == 1''b1) && (up_waddr == UP_ REG0_ADDRESS)) begin
up_reg0 <= up_wdata[UP_REG0_WIDTH-1:0];
end
end
end
模塊在二者之間執行地址轉換。AXI接口使用字節地址,但內部總線使用DWORD地址。結果是,up_axi模塊丟棄AXI地址的兩個最低有效位,以生成內部DWORD地址。
up_rreq, up_raddr, up_rdata, up_rack: 內部讀取接口, up_rreq 信號與地址一同置位,以指示讀取請求。請求需要與讀取數據一同通過 up_rack 端口應答。
如下所示,實施與上述相同的寄存器用於讀取。
always @(negedge up_rstn or posedge up_clk)
begin
if (up_rstn == 0) begin
up_rack <= ''d0;
up_rdata <= ''d0;
end else begin
up_rack <= up_rreq_s;
if ((up_rreq_s == 1''b1) && (up_raddr == UP_ REG0_ADDRESS)) begin
up_rdata <= up_reg0;
end else begin
up_rdata <= 32''d0;
end
end
end
相同地址轉換也適用於讀取。讀取數據僅在請求時驅動,否則設置為零。這是因為up_axi模塊將單個讀取數據從各個地址組傳遞到OR門。因此,未選擇的地址組需要驅動讀取數據零。
如上方寄存器映射表中所列,BBP有三個地址空間。常見寄存器空間映射至0x000、發送(DAC)映射至0x800 (0x200),接收(ADC)映射至0xC00 (0x300)。軟件(Linux用戶空間應用程序)應當將發送數據包數據寫入緩衝器,並從另一個緩衝器中讀取接收到的數據包數據。數據包大小選擇為32字節,帶有3字節前同步碼和1字節CRC。
數據接口
對於接收和發送方向的兩個通道,AD9361接口內核包含兩對16位I/Q數據。內核按照與AD9361數字接口相同的時鍾運行。在2R2T模式下,這是采樣速率的4倍。在1R1T模式下,這是采樣速率的2倍。有效數據速率由有效信號控製。因此在2R2T模式下,每4個時鍾置位一次有效。在1R1T模式下,每2個時鍾置位一次有效。BBP旨在支持2R2T和1R1T模式。它使用單個發送和接收通道。內部邏輯在2R2T和1R1T模式下以采樣速率運行。然後,BBP在其時鍾頻率下,通過接口內核傳輸數據。這樣是為了在BBP內演示時鍾轉換。在許多情況下,用戶可能希望無論收發器的接口速率如何,都能在采樣速率下運行BBP邏輯。
使用Xilinx基元BUFR和BUFG,生成采樣頻率內部時鍾。BUFR是分壓器,BUFG是高扇出時鍾緩衝器。為此,也可以使用MMCM。如下所示,生成內部時鍾。
parameter XCOMM2IP_1T1R_OR_2T2R_N = 0; localparam XCOMM2IP_SCLK_DIVIDE = (XCOMM2IP_1T1R_OR_2T2R_N == 1) ? "2" : "4";
BUFR #(.BUFR_DIVIDE(XCOMM2IP_SCLK_DIVIDE)) i_bufr (
.CLR (1''b0),
.CE (1''b1),
.I (clk),
.O (s_clk_s));
BUFG i_bufg (
.I (s_clk_s),
.O (s_clk));
使用BUFR和BUFG可(ke)確(que)保(bao)時(shi)鍾(zhong)頻(pin)率(lv)鎖(suo)定(ding),但(dan)會(hui)影(ying)響(xiang)相(xiang)位(wei)確(que)定(ding)性(xing)。最(zui)大(da)相(xiang)位(wei)不(bu)確(que)定(ding)性(xing)是(shi)單(dan)個(ge)接(jie)口(kou)時(shi)鍾(zhong)周(zhou)期(qi)。通(tong)過(guo)帶(dai)有(you)同(tong)步(bu)信(xin)號(hao)的(de)四(si)級(ji)寄(ji)存(cun)器(qi)陣(zhen)列(lie),可(ke)以(yi)輕(qing)鬆(song)補(bu)償(chang)該(gai)不(bu)確(que)定(ding)性(xing)。然(ran)而(er),設(she)計(ji)采(cai)用(yong)了(le)雙(shuang)端(duan)口(kou)RAM模塊來實現數據傳輸。這也是為了展示常見信號處理要求的應用實例。使用ADI庫內存模塊(ad_mem)可以推斷出雙端口RAM元件。
發送接口
在發送方向,處理器將數據包數據寫入緩衝器(參見上方寄存器映射表)。然後,請求硬件發送該數據包。BBP將jiang數shu據ju包bao連lian續xu發fa送song給gei設she備bei。在zai數shu據ju包bao開kai始shi時shi,檢jian查zha是shi否fou有you任ren何he請qing求qiu。如ru果guo沒mei有you待dai處chu理li的de請qing求qiu,則ze發fa送song空kong閑xian數shu據ju包bao。如ru果guo有you請qing求qiu等deng待dai處chu理li,讀du取qu並bing發fa送song數shu據ju包bao緩huan衝chong器qi。
發送邏輯使用自由運行位計數器,按照位寬運行。當位計數器為0x0shi,gengxinhuanchongqiduqudizhi。youyuzaishujubaochuanshuqijiankenenghuisuishichuxianchuliqiqingqiu,yincizaishujubaochuanshukaishishihuilijibuhuobingqingling。zaishujubaochuanshukaishishi,ruguoqingqiudengdaichuli,zeyingdahuizhichuliqijiekou。liyongqingqiuzaihuanchongqishujuhuokongxianshujuzhijianjinxingxuanze。

圖5. 發送數據路徑
數據包數據的前兩個字節設置為0xfff0。第三個字節用於表示空閑(0xc5)或數據(0xa6)數據包。CRC字節作為數據包的最後一個字節插入。CRC多項式為x8 + x2 + x + 1。除表頭外的所有字節已加擾。加擾多項式與SONET/SDH (x7 + x6 + 1)相同。
餘弦和正弦查找表用於生成調製載波。在8個樣本中,位間隔等於完整的信號周期(0至2)。位數據用於反轉信號。然後,數據寫入小緩衝器,並使用接口時鍾,根據AD9361接口內核中的有效信號讀取。
接收接口
在接收方向,針對表頭模式0xfff0,監控I/Q數據。這種獨特的模式在數據包傳輸中隻出現一次。可以發送數據包數據,以使加擾器輸出重複該模式。軟件會限製並阻止該做法。12個(ge)連(lian)續(xu)位(wei)間(jian)隔(ge)的(de)該(gai)係(xi)列(lie)同(tong)相(xiang)數(shu)據(ju)序(xu)列(lie)用(yong)於(yu)通(tong)過(guo)時(shi)序(xu)恢(hui)複(fu)模(mo)塊(kuai)複(fu)位(wei)並(bing)跟(gen)蹤(zong)接(jie)收(shou)器(qi)時(shi)序(xu)和(he)相(xiang)位(wei)。因(yin)此(ci),將(jiang)複(fu)位(wei)其(qi)時(shi)序(xu)計(ji)數(shu)器(qi)並(bing)將(jiang)其(qi)相(xiang)位(wei)值(zhi)設(she)置(zhi)為(wei)0x1。該序列後的第一個反轉被視為0x0。在此之後,時序恢複模塊在整個數據包傳輸過程中保持其狀態不變。
數shu據ju恢hui複fu模mo塊kuai計ji算suan信xin號hao的de平ping均jun值zhi,並bing決jue定ding信xin號hao的de當dang前qian相xiang位wei。然ran後hou,與yu時shi序xu恢hui複fu模mo塊kuai跟gen蹤zong的de相xiang對dui相xiang位wei進jin行xing比bi較jiao。如ru果guo發fa生sheng衝chong突tu,根gen據ju過guo去qu的de信xin號hao變bian化hua做zuo決jue定ding。這zhe是shi因yin為wei衝chong突tu通tong常chang是shi由you相xiang位wei切qie換huan引yin起qi的de。

圖6. 接收數據路徑
然後,解調的位數據組裝到字節,並進行解擾。如果傳輸緩衝器為空,則數據寫入傳輸緩衝器。在數據包結束時驗證CRC。如(ru)果(guo)匹(pi)配(pei)且(qie)傳(chuan)輸(shu)緩(huan)衝(chong)器(qi)已(yi)寫(xie)入(ru),則(ze)通(tong)知(zhi)處(chu)理(li)器(qi)接(jie)口(kou)。軟(ruan)件(jian)應(ying)當(dang)監(jian)控(kong)該(gai)請(qing)求(qiu),如(ru)果(guo)已(yi)設(she)置(zhi),通(tong)過(guo)讀(du)取(qu)其(qi)內(nei)容(rong)來(lai)清(qing)空(kong)緩(huan)衝(chong)器(qi)。然(ran)後(hou),必(bi)須(xu)清(qing)除(chu)請(qing)求(qiu),以(yi)便(bian)繼(ji)續(xu)進(jin)行(xing)數(shu)據(ju)包(bao)傳(chuan)輸(shu)。
構建說明和下載
本文介紹簡單RF基帶處理器的理論和實施詳情。討論了在ZC706和AD-FMCOMMS3-EBZ硬件上實現該設計的實際方案。快速演示和構建說明的完整設計文件參見https://wiki.analog.com/resources/fpga/docs/hdl/xcomm2ip。此頁麵也詳細介紹了HDL設計、軟件、RF設置、性能和分析。
本文轉載自亞德諾半導體。
推薦閱讀:
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
微波功率管
微波開關
微波連接器
微波器件
微波三極管
微波振蕩器
微電機
微調電容
微動開關
微蜂窩
位置傳感器
溫度保險絲
溫度傳感器
溫控開關
溫控可控矽
聞泰
穩壓電源
穩壓二極管
穩壓管
無焊端子
無線充電
無線監控
無源濾波器
五金工具
物聯網
顯示模塊
顯微鏡結構
線圈
線繞電位器
線繞電阻





