<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 一種短波通用信號(hào)產(chǎn)生平臺(tái)硬件結(jié)構(gòu)設(shè)計(jì)

          一種短波通用信號(hào)產(chǎn)生平臺(tái)硬件結(jié)構(gòu)設(shè)計(jì)

          作者:張煒 楊虎 路軍 時(shí)間:2008-06-26 來源:電子技術(shù)應(yīng)用 收藏

            1 硬件平臺(tái)概述

          本文引用地址:http://www.ex-cimer.com/article/84838.htm

            通用信號(hào)產(chǎn)生平臺(tái)在綜合控制器的控制下產(chǎn)生 1.5M~30MHz的標(biāo)準(zhǔn)通信信號(hào)(包括AM、FM、FSK、SSB、DSB、CW等),輸出電平-40~0dBm,步進(jìn)值1dB。平臺(tái)主要由綜合控制器、信號(hào)產(chǎn)生器、HF頻率綜合器、功放和天線五個(gè)模塊單元組成,如圖1所示。綜合控制器實(shí)現(xiàn)平臺(tái)的整體控制,主要包括FPGA配置、信號(hào)參數(shù)控制等。HF信號(hào)產(chǎn)生器主要由FPGA控制單元、DDS信號(hào)產(chǎn)生單元等部分組成。為濾除信號(hào)產(chǎn)生器中的雜散頻率分量,保證輸出信號(hào)的質(zhì)量,采用截止頻率為 30MHz的低通濾波器。HF頻率綜合器產(chǎn)生300MHz時(shí)鐘信號(hào),提供給DDS使用。信號(hào)產(chǎn)生器生成的通信信號(hào)經(jīng)功放、天線輸出。

            2 綜合控制器

            綜合控制器主要由、卡等組成。系統(tǒng)采用分層控制方式,控制參數(shù)由控制人員通過綜合控制器的控制界面輸入或接收外部的控制指令來獲取。這些控制參數(shù)通過工控機(jī)中的控制接口卡,經(jīng)分系統(tǒng)中相應(yīng)的控制參數(shù)接口輸入到相應(yīng)的分系統(tǒng)中,以實(shí)現(xiàn)對(duì)平臺(tái)各個(gè)單元的工作模式及具體通信參數(shù)的控制。綜合控制器在工作時(shí),負(fù)責(zé)向其控制的設(shè)備注入運(yùn)行參數(shù),工作時(shí)對(duì)可控設(shè)備的工作狀態(tài)(基帶信號(hào)類型、碼速率、信號(hào)樣式、工作頻率、功率輸出、跳頻參數(shù)等) 進(jìn)行調(diào)控,根據(jù)指令刷新運(yùn)行參數(shù)。其工作過程如圖2所示。根據(jù)所采用的控制方案可以將控制系統(tǒng)分為兩部分,一是綜合控制器中的控制接口卡,另一部分是各個(gè)模塊單元(即信號(hào)產(chǎn)生器、頻率綜合器)的控制參數(shù)接口。

            控制接口卡采用微機(jī)PCI插卡的模式,實(shí)現(xiàn)微機(jī)與模擬器之間的連接。控制接口卡占用7 個(gè)I/O口地址,讀寫(基地址+0)端口代表地址數(shù)據(jù)總線上傳輸8位數(shù)據(jù)信息,寫(基地址+2)端口代表地址數(shù)據(jù)總線上傳輸高8位地址信息,寫(基地址+ 7)端口代表地址數(shù)據(jù)總線上傳輸?shù)?位地址信息,(基地址+3)、(基地址+4)、(基地址+5)、(基地址+6)端口則控制GPS秒信號(hào)的輸出,以產(chǎn)生模擬器所需的啟動(dòng)、結(jié)束脈沖??刂平涌诳üδ苁疽鈭D如圖3所示。

            3 HF信號(hào)產(chǎn)生器

            HF信號(hào)產(chǎn)生器采用了軟件無線電的思想:首先在硬件上搭建一個(gè)通用的通信信號(hào)平臺(tái),每一種特殊的調(diào)制方式和工作體制都有一套專門的軟件來完成,實(shí)際使用過程中只需要在通用的通信平臺(tái)上加載一定的軟件即可完成特定的功能。HF信號(hào)產(chǎn)生器包括控制參數(shù)接口和信號(hào)產(chǎn)生單元。

            3.1 控制參數(shù)接口

            控制參數(shù)接口主要實(shí)現(xiàn)各模塊單元控制參數(shù)的獲取。其功能示意圖如圖4所示,主要由一片可編程CPLD芯片(isp1032E-70LJI)編程實(shí)現(xiàn)。

            3.2 信號(hào)產(chǎn)生單元

            本單元所采用的硬件平臺(tái)方案為DDS+FPGA方案,DDS實(shí)現(xiàn)信號(hào)調(diào)制,F(xiàn)PGA實(shí)現(xiàn)信號(hào)處理。DDS本身具備信號(hào)的頻率調(diào)制、相位調(diào)制及幅度調(diào)制功能,因此信號(hào)處理部分需要完成相應(yīng)的基帶數(shù)據(jù)處理并能夠同步控制DDS。FPGA是一種現(xiàn)場(chǎng)可編程邏輯陣列,它內(nèi)部含有大量的實(shí)現(xiàn)組合邏輯的資源,借助于 EDA工具,設(shè)計(jì)者可以很方便地將這些邏輯門連接起來組成乘法器、地址發(fā)生器等各種邏輯塊,利用這些邏輯模塊又可以組成FIR、FFT等更高級(jí)別的邏輯結(jié)構(gòu)[1]。像微處理器一樣,基于RAM的FPGA可以無限制地重復(fù)編程,本系統(tǒng)中加載一個(gè)新的設(shè)計(jì)只需要幾百毫秒,這樣利用實(shí)時(shí)現(xiàn)場(chǎng)重構(gòu)可以大大減少硬件的開銷。

            信號(hào)產(chǎn)生單元采用軟件無線電技術(shù),即采用通用的硬件平臺(tái),依據(jù)加載不同的軟件來實(shí)現(xiàn)不同的功能。標(biāo)準(zhǔn)信號(hào)產(chǎn)生器的工作流圖如圖5所示。

            顯然,系統(tǒng)在工作中將各種調(diào)制方式體現(xiàn)為不同的調(diào)制文件(*.o),新的調(diào)制方式對(duì)于系統(tǒng)而言只是增加調(diào)制文件,這是典型的軟件無線電思想。在信號(hào)產(chǎn)生單元中,這些調(diào)制文件的載體是FPGA,這里需要考慮的是如何靈活地實(shí)現(xiàn)調(diào)制文件的加載,或者說如何根據(jù)上層需要,對(duì)FPGA進(jìn)行任意構(gòu)造。根據(jù)任務(wù)改變的需要,在不同的任務(wù)階段,利用其現(xiàn)有的硬件資源,按需要形成不同的功能,完成不同的用途。這種轉(zhuǎn)換是完全的,包括功能、算法、芯片管腳定義等。

            本文中筆者采用的系統(tǒng)重構(gòu)方法是:軟件平臺(tái)可對(duì)功能電路進(jìn)行編程、編譯、仿真和控制等,形成構(gòu)造代碼(比特流文件),即調(diào)制文件不通過外部ROM,而是借助系統(tǒng)總線,送入FPGA配置存儲(chǔ)器,實(shí)現(xiàn)相應(yīng)功能。FPGA這種動(dòng)態(tài)數(shù)據(jù)配置流程如圖6所示。

            控制參數(shù)由控制人員通過微機(jī)或工作站的控制界面輸入,這些控制參數(shù)通過控制接口卡,送到控制總線與數(shù)據(jù)總線上,平臺(tái)中的各部分通過自身的分系統(tǒng)控制接口獲取相應(yīng)的參數(shù)。這樣,控制人員就可以實(shí)現(xiàn)對(duì)各個(gè)部分的控制,完成具體通信參數(shù)的通信方式的生成。


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();