摘要: 本文提出了一種使用直接數(shù)字合成(DDFS)的方法來模擬8路信號,用于智能天線的測試及各種通信設(shè)備的設(shè)計。以及該信號源的硬件電路板設(shè)計的一種特殊方法,使得該硬件有較強的擴展性。
關(guān)鍵字: 多路,信號源,DDFS,可編程器件,高速D/A
1.引言
智能天線是由多個天線單元組成的天線陣列,但是傳統(tǒng)的波形發(fā)生器多為兩路,無法模擬智能天線所接收到的陣列信號。本文研制的多通路信號源,能同時產(chǎn)生獨立且時鐘同步的8路信號。通過可視化的操作界面對各陣元天線的波形進行設(shè)計。系統(tǒng)采用了板卡分離的設(shè)計使得系統(tǒng)有較強的擴展性,方便了工程人員對通信設(shè)備的各種設(shè)計。
2.系統(tǒng)基本原理
系統(tǒng)框圖如圖(1)所示。本系統(tǒng)采用DDFS的方法產(chǎn)生所需波形。PLD用于地址累加,RAM 用于波形存儲,本系統(tǒng)采用51系列的單片機進行接口的控制。51系列單片機雖然是8位的單片機,但卻是一個十分經(jīng)典通用的單片機系列。它的操作簡單,特別是與計算機的串口的連接,完全不用理會底層的操作。但是它也有一個致命的弱點——運行速度較低,計算性能較低,完全無法和具有流水指令集的DSP相比,因此無法直接使用它實現(xiàn)DDFS頻率合成,所以須采用計算機生成波形數(shù)據(jù),使用較高頻率下工作的PLD器件推動RAM陣列合成所需的信號。
系統(tǒng)里波形存儲沒有采用一般的單一存儲器的存儲方法,因為在較高頻率下無法使用非易失性存儲器,若使用高速存儲器SRAM,則在二次加電后數(shù)據(jù)將會丟失。這里使用了雙存儲器方法,即同時使用FLASH和SRAM存儲數(shù)據(jù),所需數(shù)據(jù)通過計算機計算后經(jīng)串行口或USB口下載到FLASH中。以后每次加電,數(shù)據(jù)再從FLASH轉(zhuǎn)移到高速RAM中進行DDFS合成。這樣就可以彌補兩者的不足。
前面已經(jīng)介紹了本系統(tǒng)所使用的雙存儲器機制,這里再介紹一下各存儲器的選型及工作方式。FLASH使用W29C040,它的寫操作是按頁操作,每頁256個字節(jié),容量為512K字節(jié)。SRAM使用的是ALLIANCE的AS7C3256-15,容量32K字節(jié),速度為15 。經(jīng)過電腦計算軟件計算所得的數(shù)據(jù)經(jīng)過計算機串口或USB口下載到系統(tǒng)板中,在每次加電后數(shù)據(jù)再從FLASH轉(zhuǎn)存到RAM中。
在計算機下載中數(shù)據(jù)又分為從串口下載和USB口下載,數(shù)據(jù)如果從串口下載首先必須下載到RAM中,再一頁一頁的寫到FLASH中,因為串口速率最高為128000波特率,接收一個字節(jié)的最短時間為 ,單片機在寫完一個字節(jié)后寫線就升高,由參考資料的時序可以看出若FLASH寫線變高時間過長就會進入內(nèi)部的寫操作,因此接下載的數(shù)據(jù)將無法寫入FLASH。為此必須先把256個字節(jié)數(shù)據(jù)寫到RAM中再從RAM寫到FLASH。如果使用USB接口,只要設(shè)置在高速狀態(tài)下就可以直接寫FLASH。
系統(tǒng)所采用的RAM數(shù)據(jù)位只有8位,而DA為12位所以必須由2片RAM合成一個12位的數(shù)據(jù)。但是如果這樣,其中一片RAM 要丟掉一半的存儲空間,所以使用3片RAM提供共24位數(shù)據(jù)給2片DA,這樣節(jié)省了RAM空間,其電路如圖(2)
系統(tǒng)的USB接口采用飛利浦的USB接口芯片PDIUSBD12。PDIUSBD12是一片USB接口芯片它可以把串行數(shù)據(jù)轉(zhuǎn)換為8位的并行數(shù)據(jù),符合通用串行總線USB 1.1 版規(guī)范,集成了FIFO存儲器收發(fā)器以及電壓調(diào)整器,可與任何外部微控制器/微處理實現(xiàn)高速并行接口2M 字節(jié)/秒,完全自治的直接內(nèi)存存取DMA 操作,集成320 字節(jié)多結(jié)構(gòu)FIFO 存儲器,主端點的雙緩沖配置增加了數(shù)據(jù)吞吐量并輕松實現(xiàn)實時數(shù)據(jù)傳輸,在批量模式和同步模式下均可實現(xiàn)1M 字節(jié)/秒的數(shù)據(jù)傳輸速率。
由于微處理器速度限制和數(shù)字濾波器運算量的要求,系統(tǒng)通常在中頻部分進行數(shù)字化,然后再進入DSP進行處理。因此該系統(tǒng)產(chǎn)生的8路模擬信號最高輸出為10.7MHz。理論上只要相位累加器的位數(shù)足夠大相位分辨率可以足夠精確,但綜合考察目前存儲器、計數(shù)器的技術(shù)水平,選擇D/A轉(zhuǎn)換速率不小于要求輸出基帶最高頻率的四倍則。這里選取了AD9752。此芯片是美國AD公司生產(chǎn)的高性能DA器件。它是TxDACTM系列成員之一,其分辨率為12位,速率可達100MHz,它采用單一電源供電,范圍為2.7-5.5V。 AD9752采用先進的COMS工藝。邊緣觸發(fā)鎖存和1.2V的帶補償?shù)膬?nèi)置參考電壓,提供了完整的單片DAC解決方案。AD9752是差分電流輸出,滿量程為20mA,輸出阻抗大于100kΩ。它的差分電流輸出,支持單端或差分應(yīng)用。電流輸出可直接與電阻連接提供兩個互補的單端電壓輸出,也可直接輸入變壓器,輸出電壓為1.25V。由于DA的時鐘是在上升沿鎖存數(shù)據(jù),因此D/A數(shù)據(jù)的輸入要考慮到在同時鐘源下,會與下降沿鎖數(shù)據(jù)的器件存在一個脈沖的時延,因此在它的時鐘端加入了一個非門進行時鐘的翻轉(zhuǎn)。DA輸出的信號須加以低通濾波器平滑信號,但由于所需信號為一個10.7M的帶通信號所以可以用一個帶通濾波器代替。
PLD使用的是MAX7128-15,在設(shè)計時使用了圖形化參數(shù)宏模塊(LPM)和硬件描述語言(AHDL)相結(jié)合的方法。PLD內(nèi)部框圖如圖(3)。其中外部數(shù)據(jù)總線用于連接單片機的地址和數(shù)據(jù)總線。由于系統(tǒng)共用一套總線所以總線控制主要是進行總線的仲裁,使單片機不會與相位累加器產(chǎn)生總線上的碰撞。地址,數(shù)據(jù)總線用于連接RAM地址和數(shù)據(jù)總線,地址譯碼用于選擇各個RAM。
3.電路板設(shè)計
在電路板的設(shè)計中發(fā)現(xiàn),如果使用一塊電路板則布線過長且有較多的信號反射。而且系統(tǒng)時鐘走線很難達到一致??v觀此系統(tǒng)發(fā)現(xiàn),此系統(tǒng)電路單元重復(fù)較多。所以采用了板卡分離的設(shè)計方法,即把單片機和可編程器件作為系統(tǒng)主板如圖(4)左,而把DA和RAM作為一塊擴展卡,每個擴展卡上有兩路輸出信號,通過總線擴展把他們連接起來。這樣就可使用不同的擴展卡實現(xiàn)不同的系統(tǒng)功能,為系統(tǒng)更進一步的開發(fā)提供了很寬的空間。此外這樣的設(shè)計也減小了系統(tǒng)的體積,提高了單元電路的利用率。
4.軟件設(shè)計
控制程序設(shè)計
在單片機上所需實現(xiàn)的主要是各種端口的控制,沒有較復(fù)雜的算法,因此只給出了程序的流程圖,其中包括中斷處理程序和上電復(fù)位初始化程序兩部分。在初始化的時候?qū)SB的初始化稍復(fù)雜,須進行USB總線的枚舉,同步斷點使能,模式設(shè)置等。各流程如圖(5)
系統(tǒng)軟件設(shè)計
系統(tǒng)軟件采用VB編寫,主要是完成數(shù)據(jù)的下載和波形的計算。對于數(shù)據(jù)的下載主要是對串口和USB的操作。在VB中有大量的控件可使用,使得各種操作變得簡單。在下載程序中主要使用了Microsoft comm Control控件控制串行口的數(shù)據(jù)下載,這里得串口采用定時中斷的方式發(fā)送數(shù)據(jù)。這是因為在單片機端為了設(shè)計簡單沒有進行數(shù)據(jù)的流控,因此數(shù)據(jù)可能會丟失。對于USB的操作VB需要調(diào)用Creatfile(),CreatFile(),WriteFile(),ClosseFile()等API函數(shù)。調(diào)用這些API需要進行申明,但是它的申明與C中有所不同,具體參考了VB中所帶的“API文本瀏覽器”中的內(nèi)容。系統(tǒng)軟件除了負責(zé)下載還要負責(zé)進行波形的數(shù)據(jù)計算,此系統(tǒng)主要是給智能天線測試用,所以設(shè)計的軟件只模擬天線陣列中8個天線接收的不同信號。它可以調(diào)整信號的數(shù)量,可以對每個信號進行幅度和相位的調(diào)整,并且可以模擬理想狀態(tài)下的陣列輸出信號,這樣便可以與所要測試的系統(tǒng)進行比較。圖(6)是軟件界面。圖中只顯示了兩路信號,圖(7)是用示波器顯示的與圖(6)相對應(yīng)的系統(tǒng)輸出波形。
5.結(jié)語
這個系統(tǒng)方便了通信設(shè)計人員對通信設(shè)備的設(shè)計和調(diào)試。同時該系統(tǒng)的靈活設(shè)計使得系統(tǒng)又有較強的擴展功能,更換板卡就可以使系統(tǒng)具有不同的功能。使得系統(tǒng)可以方便的用于其它設(shè)備設(shè)計的調(diào)試中。