<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 直接擴頻通信同步系統的FPGA設計與實(shí)現

直接擴頻通信同步系統的FPGA設計與實(shí)現

作者: 時(shí)間:2012-04-13 來(lái)源:網(wǎng)絡(luò ) 收藏

2.1 信號存儲器
信號存儲單元由一個(gè)雙口RAM構成,在采樣時(shí)鐘驅動(dòng)下,接收信號按地址順序存于RAM中。RAM的讀取時(shí)鐘是做乘法的計算時(shí)鐘,在采樣速率不是很快時(shí),計算時(shí)鐘可以是采樣時(shí)鐘的數十倍,可以達到上百兆,而讀取數據寬度也可以擴展為接收數據寬度的整數倍,一次讀取多個(gè)接收數據參與運算,這樣串行運算變?yōu)椴⑿羞\算,極大提高了處理速度。如圖3所示,接收到的數據按從地址0到地址7的順序存儲,讀取數據寬度是接收信號的4倍,那么每存儲4個(gè)數據后讀取地址一次,一次并行讀取4個(gè)數據和本地PN碼做乘法。

本文引用地址:http://dyxdggzs.com/article/155105.htm

c.jpg


如果PN碼周期是127,讀取寬度為40,那么4個(gè)計算時(shí)鐘就可以完成乘法計算,但是讀取寬度太寬會(huì )增加內部邏輯單元的使用量,需要在資源和速率方面做權衡。
2.2 PN碼存儲器
在傳統的法中,PN碼如果選取m序列可由做反饋移位產(chǎn)生,順序讀取,這樣會(huì )影響運算效率。本文將PN碼由Matlab工具軟件生成,然后按一定格式存儲于內部存儲器,可選取ROM存儲,讀取寬度和信號存儲器的讀取寬度相同。PN碼存儲器不,每次都按地址遞增順序讀取數據,操作和信號存儲器類(lèi)似,不再贅述。
2.3 乘法器和積分器
這兩個(gè)模塊主要是接收數據和本地PN碼進(jìn)行累加功能。接收到的數據首先和本地碼相乘,然后將相乘結果累加完成積分功能。
乘法并不需要FPGA器件內部的硬件乘法器,如果PN碼為1則將接收數據取正號,PN碼為0則將接收數據取負號。每個(gè)乘法器時(shí)鐘完成一個(gè)讀取地址中一組數據的乘操作,乘完將一組相乘結果求和后輸入到積分器進(jìn)行每一組數據的累加。如果每組參與乘加的數據很多,一個(gè)時(shí)鐘不能完成加法運算可以采用流水線(xiàn)方法優(yōu)化算法。
積分器累加的次數由PN碼長(cháng)度和每次參與乘法運算的數據個(gè)數有關(guān)(即讀取數據的寬度),數據個(gè)數越多需要累加的次數越少。累加結束后將計算結果輸入到門(mén)限鑒別器做后續判決,同時(shí)積分器清零。
2.4 門(mén)限鑒別器
門(mén)限鑒別器的功能是對判決積分器的計算結果進(jìn)行最大值檢測。檢測值超過(guò)門(mén)限預設值,則給跟蹤單元使能信號,啟動(dòng)跟蹤功能,否則不作任何操作。
門(mén)限值的設定需要通過(guò)Matlab工具軟件仿真得出。m序列有很好的特性,當接收信號與本地碼時(shí)積分器會(huì )輸出一個(gè)明顯高于不時(shí)的峰值,在實(shí)際應用的場(chǎng)合由于噪聲大小不同峰值也不是固定值,要根據情況進(jìn)行仿真設定一個(gè)比較適合的數值。數值過(guò)大會(huì )出現漏警現象,即已經(jīng)但受噪聲影響積分器輸出值小于門(mén)限值而使無(wú)法正常工作。數值過(guò)小會(huì )導致不同步時(shí)啟動(dòng)跟蹤單元。一般多次仿真,并把門(mén)限值設置稍大有利于正常運行。

3 FPGA仿真結果與分析
時(shí)選取的是Xilinx公司Virtex系列的XC4VSX35芯片,該芯片含有34560個(gè)邏輯單元,可用I/O腳448個(gè),192個(gè)18×18 Xtreme DSP,18kb Block RAM 192個(gè),最高工作頻率500M。以Xillnx公司的ISE 10.1開(kāi)發(fā)軟件為平臺,運用Verlog語(yǔ)言作為輸入,并編譯、仿真、下載驗證了同步捕獲系統。圖4為系統仿真圖,clk_1是數據采樣時(shí)鐘,每次時(shí)鐘上升沿接收數據由data_in輸入,clk_2為計算時(shí)鐘,每次采樣一個(gè)數據后4個(gè)計算時(shí)鐘相關(guān)值由he輸出,由圖可以看出并行相關(guān)運算速度很快。本系統的門(mén)限值設置為125,如圖he值沒(méi)有超過(guò)門(mén)限值則下一個(gè)時(shí)鐘清零,如果系統捕獲成功he超過(guò)門(mén)限則輸入給跟蹤單元的使能信號enable保持一個(gè)周期的高電平,從而啟動(dòng)跟蹤單元工作。

d.jpg



4 結論
本文提出的改進(jìn)滑動(dòng)相關(guān)算法運算速度快,捕獲時(shí)間短,起來(lái)比較簡(jiǎn)單。利用FPGA了算法,仿真結果滿(mǎn)足系統要求,該方法成功應用在解擴端,使用效果良好。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>