新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM和FPGA的聲納波形產(chǎn)生系統(tǒng)設(shè)計(jì)

        基于ARM和FPGA的聲納波形產(chǎn)生系統(tǒng)設(shè)計(jì)

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

        一般地,DDS輸出信號(hào)頻率為一個(gè)參考時(shí)鐘周期內(nèi)的相位增量,由此可得:

        由圖2可知,相當(dāng)與rad,相位累加器溢出一次所歷經(jīng)的采樣脈沖(參考時(shí)鐘)個(gè)數(shù)與DDS輸出一個(gè)周期的信號(hào)所包含的采樣脈沖個(gè)數(shù)是相等的,即:

        將(1)式代入(2),可得:

        由(3)可知,在參考時(shí)鐘一定的情況下,頻率控制字 決定了DDS輸出頻率。 實(shí)際上改變的是信號(hào)的相位增長(zhǎng)速率, 越大,相位累加的曲線越陡峭,溢出一次所需的時(shí)間越短,對(duì)應(yīng)輸出信號(hào)的周期也越小,輸出信號(hào)的頻率就越大;與此相反, 越小,相位累加的曲線越平坦,溢出一次所需的時(shí)間越長(zhǎng),對(duì)應(yīng)輸出信號(hào)的周期也越大,輸出信號(hào)的頻率就越小;當(dāng) 按線性變化時(shí),輸出信號(hào)即為線性調(diào)頻信號(hào),改變 的變化規(guī)律,就可實(shí)現(xiàn)不同規(guī)律的調(diào)頻,如雙曲、指數(shù)、對(duì)數(shù)調(diào)頻等。當(dāng) =1時(shí),DDS輸出最小頻率:

        (4)式也是所謂的頻率分辨率。

        3、系統(tǒng)硬件實(shí)現(xiàn)

          系統(tǒng)硬件設(shè)計(jì)采用模塊化結(jié)構(gòu),由通訊模塊、控制模塊、波形產(chǎn)生模塊和電源模塊四部分構(gòu)成,如圖3所示。

        3.1 控制模塊及通訊模塊

          作為控制模塊的核心,選用Philips公司的7TDMI系列微處理器LPC2292。控制模塊和通訊模塊實(shí)現(xiàn)了本系統(tǒng)與外部主控設(shè)備(一般為PC機(jī))的通信,通過(guò)RS232串口,并口EPP或USB通訊接口,接收主控設(shè)備發(fā)出的聲納波形信號(hào)的幅度、頻率、相位、帶寬等參數(shù)控制字,用以控制波形產(chǎn)生模塊產(chǎn)生相應(yīng)的聲納波形。

        3.2 波形產(chǎn)生模塊

          DDS技術(shù)的實(shí)現(xiàn)依賴于高速、高性能的數(shù)字器件,一般有兩種方案,一種是使用DDS專用芯片,另一種用可編程邏輯器件自行設(shè)計(jì)。DDS專用芯片控制方式固定,價(jià)格較高,而以其速度高、規(guī)模大、可編程,以及有強(qiáng)大EDA軟件支持等特性,十分適合實(shí)現(xiàn)DDS技術(shù)。本系統(tǒng)用實(shí)現(xiàn)DDS技術(shù)。FPGA選用Altera公司的Cyclone II系列的EP2C20F484C8N。

        4、系統(tǒng)軟件開(kāi)發(fā)

          本系統(tǒng)的軟件主要分為主控設(shè)備應(yīng)用程序設(shè)計(jì),F(xiàn)PGA波形設(shè)計(jì)部分和控制部分。
          
          主控設(shè)備應(yīng)用程序是在X86平臺(tái)上,VC環(huán)境下開(kāi)發(fā)的。主要功能是通過(guò)RS232串口,并口EPP或USB任何一種通訊接口,實(shí)現(xiàn)主控設(shè)備與ARM通信。ARM控制部分的程序?qū)崿F(xiàn)對(duì)通訊接口的訪問(wèn),并實(shí)現(xiàn)對(duì)FPGA的控制。

          FGPA波形設(shè)計(jì)過(guò)程采用自頂向下模塊化的結(jié)構(gòu),主要包括時(shí)鐘模塊、寄存器讀寫(xiě)及控制模塊、DDS模塊,如圖4所示。

        相位累加器是決定DDS性能的一個(gè)關(guān)鍵部分,相位累加器設(shè)計(jì)的好壞將直接影響到整個(gè)系統(tǒng)的性能,因此要從FPGA內(nèi)部結(jié)構(gòu)出發(fā),設(shè)計(jì)出既節(jié)約系統(tǒng)資源,又能大幅度提高系統(tǒng)速度和性能的累加器結(jié)構(gòu)[3]。在設(shè)計(jì)相位累加器的加法器模塊時(shí)不用庫(kù)中提供的lmp_add_sub模塊,而是采用流水線技術(shù),使用Verilog HDL編程實(shí)現(xiàn)。流水線示意圖見(jiàn)圖5。

          相幅轉(zhuǎn)換采用ROM查找表法實(shí)現(xiàn)。主要考慮的問(wèn)題是FPGA內(nèi)部存儲(chǔ)器容量的大小,而EP2C20內(nèi)部有大量的ROM資源可利用,因此可直接調(diào)用lpm_rom模塊來(lái)實(shí)現(xiàn)。



        關(guān)鍵詞: ARM FPGA 聲納波形產(chǎn)生

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 贵南县| 七台河市| 武功县| 浦城县| 阳曲县| 灵台县| 响水县| 陇西县| 许昌县| 大厂| 泗水县| 安乡县| 西贡区| 宜兰县| 凌源市| 五台县| 神池县| 新郑市| 上栗县| 全南县| 文水县| 博野县| 麦盖提县| 龙川县| 凌海市| 乌恰县| 惠州市| 休宁县| 元江| 资源县| 伊春市| 汉源县| 宁阳县| 白银市| 汤阴县| 斗六市| 伊金霍洛旗| 千阳县| 平顺县| 汪清县| 临沂市|