一種精度可調(diào)的數(shù)字控制移相原理
1 引 言
本文引用地址:http://2s4d.com/article/77955.htm移相電路在現(xiàn)代通訊技術(shù)、波形調(diào)制和雷達(dá)掃描等許多方面有著大量的運(yùn)用。目前實(shí)現(xiàn)方式大致可分為模擬和數(shù)字2類。模擬移相器的電路較為復(fù)雜、線性差、響應(yīng)時(shí)間慢,抗電磁干擾能力差。而數(shù)字移相器主要分2類[1]:第一類是運(yùn)用直接數(shù)字式頻率合成技術(shù)DDS。另一類是利用單片機(jī)計(jì)數(shù)延時(shí)的方法實(shí)現(xiàn)。其中使用DDS的移相器的實(shí)現(xiàn)精度大多依照"360°/2°"的方式實(shí)現(xiàn),即其能夠?qū)崿F(xiàn)180°,90°,45°,22.5°,11.25°等精度[2]。另外其實(shí)現(xiàn)電路也較為復(fù)雜;而第二類利用單片機(jī)雖然可以實(shí)現(xiàn)較高精度的移相,但使用的單片機(jī)屬于硬核IP[2],在大規(guī)模集成和使用權(quán)問題上十分不方便。本文介紹的基于可編程數(shù)字控制方法的移相原理,其精度可以通過精度控制輸入信號(hào)任意賦予(在本文中精度調(diào)制為1°來(lái)說(shuō)明)。此原理的電路采用采樣電路和精度為1°的360倍倍頻器等進(jìn)行延時(shí)輸出波形,方法簡(jiǎn)便,電路結(jié)構(gòu)簡(jiǎn)單,能夠配合任意工藝特性加以實(shí)現(xiàn),且能夠方便地集成到大規(guī)模電路中去。
2 基本原理
本系統(tǒng)是基于數(shù)字倍頻器進(jìn)行延時(shí)操作而實(shí)現(xiàn)的移相。實(shí)現(xiàn)原理是把輸入模擬波形(如正弦信號(hào))的周期Tin轉(zhuǎn)化為原來(lái)的1/data,Tin/data即為移相精度,data值通過精度控制輸入信號(hào)賦值。當(dāng)data為360時(shí),精度為1°;當(dāng)data為720時(shí),精度為0.5°;若要更小的精度,可依此類推。本文中為便于顯示移相波形,把精度設(shè)置為1°。則精度為Tin/360,所用的倍頻器倍頻因子即為360。這樣經(jīng)n個(gè)Tin/360延時(shí)(n為移相的具體數(shù)值,由記時(shí)控制輸入信號(hào)D賦值),再輸出波形。和原波形相比就形成了移相。從實(shí)現(xiàn)的電路方面來(lái)講,要把輸入波形周期變?yōu)樵瓉?lái)的1/360,或者說(shuō)把輸入波形的頻率變?yōu)樵瓉?lái)的360倍,最直接的辦法就是采用倍頻器。而數(shù)字倍頻器的輸入是數(shù)字信號(hào),則應(yīng)先把模擬量轉(zhuǎn)化為數(shù)字量,這就需要一個(gè)模擬比較器。在得到倍頻輸出信號(hào)后,為了要得到希望的n值,還應(yīng)在倍頻器后添加數(shù)字定時(shí)輸出計(jì)數(shù)器,以輸出延時(shí)控制信號(hào)。最后把模擬信號(hào)輸入A/D電路,通過ROM存儲(chǔ),再在延時(shí)控制信號(hào)的作用下延時(shí)輸出數(shù)字量,再經(jīng)過D/A電路還原為模擬量,最終實(shí)現(xiàn)移相操作。其中倍頻器具有360倍倍頻能力。
輸入模擬信號(hào)(如正弦波)經(jīng)過信號(hào)比較器,波形電壓與零伏比較后,高于零伏的電壓段轉(zhuǎn)化為高電平,低于的轉(zhuǎn)化為低電平,這樣輸入信號(hào)就轉(zhuǎn)化為周期相同的數(shù)字信號(hào)。A/D,ROM,D/A和一些控制電路構(gòu)成移相輸出控制模塊。其中移相控制部分的倍頻器,定時(shí)輸出計(jì)數(shù)器構(gòu)成可編程數(shù)字控制部分,都可以通過硬件語(yǔ)言編譯實(shí)現(xiàn)。這樣得到的系統(tǒng)硬件原理框圖如圖1所示。
以下著重說(shuō)明數(shù)字倍頻器、數(shù)字定時(shí)輸出計(jì)數(shù)器和數(shù)模混合輸出控制電路。
2.1數(shù)字倍頻器
這里使用的數(shù)字倍頻器(電路如圖2所示)的算法是基于采樣的原理來(lái)實(shí)現(xiàn)[4],理論上能夠?qū)崿F(xiàn)任意倍倍頻,這里為方便說(shuō)明和顯示波形,設(shè)置為360倍,即倍頻因子為360,精度為1°。
當(dāng)信號(hào)A經(jīng)過比較器后,A轉(zhuǎn)化為具有相同周期的數(shù)字信號(hào)DA,他們的周期均為Tclk_in。通過引入高頻時(shí)鐘信號(hào)(其周期為Thf_clk)采樣,以此來(lái)計(jì)數(shù)在一個(gè)Tclk_in中含有的Thf_clk的個(gè)數(shù),把這個(gè)結(jié)果記為Nhf。則有:
Nhf=Tclk_in/Thf_clk (1)
由于倍頻因子是360,所以對(duì)于倍頻后的結(jié)果clk_div_n1有:
Nhf_of_clk_dive_n1=Nhf/360 (2)
Tclk_div_n1=Nhf_of_clk_dive_n1×Thf_clk (3)
Tclk_div_n1為倍頻后倍頻器輸出波形的周期,Nhf_of_clk_dive_n1為一個(gè)Tclk_div_n1中含有的采樣信號(hào)周期的個(gè)數(shù)。
聯(lián)立式(1),(2),(3),可得:
Tclk_div_n1=Tclk_in/360 (4)
亦即:
fclk_in×360=fclk_div_n1 (5)
從而實(shí)現(xiàn)了360倍倍頻。Tclk_div_n1就是信號(hào)A相移27π/360(即1°)時(shí)所占的時(shí)間間隔。圖3是本倍頻器的仿真波形(這里把倍頻因子固定為360)。在每次輸入信號(hào)周期變化后,都按照新的周期進(jìn)行360倍倍頻
這里應(yīng)說(shuō)明的幾點(diǎn)是:
(1)如圖2所示,data就是精度控制信號(hào),不難看出,實(shí)際上他也就是倍頻器的倍頻因子。當(dāng)data=360時(shí),移相精度為1°。那么當(dāng)倍頻因子改變時(shí),移相精度隨之而改變。若data為720,則移相精度為0.5°;若data為3 600,則移相精度為0.1°。這些都可以通過改變精度控制信號(hào)data來(lái)實(shí)現(xiàn),從而達(dá)到精度可變的目的。
(2)reset為復(fù)位信號(hào),在輸入信號(hào)DA(也就是電路圖中信號(hào)clk_in)時(shí)應(yīng)先復(fù)位。
(3)從圖3可以看到,每隔一個(gè)Tclk_in,Nhf就會(huì)被重新計(jì)算一次,并與上次的結(jié)果作比較,這樣輸出信號(hào)cal_dif會(huì)在輸入信號(hào)clk_in的周期發(fā)生變化時(shí)(也就是兩個(gè)Nhf數(shù)值不一樣時(shí)),輸出一個(gè)高電頻。這個(gè)高電頻就是下兩個(gè)模塊數(shù)字定時(shí)輸出計(jì)數(shù)器和數(shù)?;旌陷敵隹刂齐娐分幸徊糠帜K的復(fù)位信號(hào),從而達(dá)到倍頻器輸出信號(hào)周期自調(diào)節(jié)的目的。
(4)式(1)~式(5)的推導(dǎo)實(shí)際上都忽略了除法中的余數(shù)問題。當(dāng)式(1)除不盡時(shí)要考慮余數(shù)的四舍五入問題。式(2),式(4)應(yīng)修改為:
Nhf_of_clk_dive_n1=Nhf/360 (6)
Tclk_in=360×Tclk_div_n1+R (7)
其中,R為倍頻后的時(shí)間余數(shù),RN是倍頻后的計(jì)數(shù)整數(shù)的余數(shù),他們是同一概念的2種表述.對(duì)余數(shù)四舍五入的實(shí)現(xiàn)方式是先把Tclk_div_n1作二倍頻處理得到Tclk_div_n2。以Tclk_div_n2對(duì)輸入周期Tclk_in再次采樣后得到值N。按照理想無(wú)余數(shù)的情況考慮,N應(yīng)該是720。但當(dāng)余數(shù)存在的情況下,若N大于720,則說(shuō)明,RN≥0.5。那么表示倍頻器的輸出結(jié)果Tclk_div_n1的式(3)應(yīng)修改為:
Tclk_div_n1=(Nhf_of_clk_dive_n1+RN)×Thf_clk (8)
當(dāng)RN≥0.5時(shí),按四舍五入考慮,可得:
Tclk_div_n1=(Nhf_of_clk_dive_n1+1)×Thf_clk (9)
若N沒有大于720,則說(shuō)明RN<0.5。那么就按照式(3)處理;否則應(yīng)該按照式(9)處理。
2.2 定時(shí)輸出計(jì)數(shù)器
定時(shí)輸出計(jì)數(shù)器的輸入有計(jì)數(shù)數(shù)據(jù)data(9位)、復(fù)位信號(hào)set、數(shù)據(jù)輸入加載信號(hào)q和clk,輸出out.其中clk接倍頻器輸出信號(hào)clk_div_n1。定時(shí)輸出計(jì)數(shù)器的仿真波形如圖4所示。計(jì)數(shù)器的復(fù)位分2種情況;首先是倍頻器的輸出信號(hào)cal_dif引起的復(fù)位;然后在輸入新的數(shù)據(jù)data時(shí),由q引起的復(fù)位。由于數(shù)據(jù)data是9位,則僅當(dāng)D<101101000(即10進(jìn)制的360)時(shí),q才引起復(fù)位。否則不復(fù)位,數(shù)據(jù)也不加載。當(dāng)計(jì)數(shù)器復(fù)位后,out為0,在data個(gè)周期后,out輸出高電平。如仿真波形圖4所示,每輸入一個(gè)小于360的數(shù),則輸出信號(hào)變?yōu)榈碗娖剑钡窖舆t時(shí)間結(jié)束后輸出高電平。
2.3輸出控制模塊
輸出控制模塊的主要作用是波形保持。先保持兩組波形一致,即先在模擬輸入信號(hào)輸入A/D[5,6]轉(zhuǎn)換電路后,得到的數(shù)字量同時(shí)輸入到兩個(gè)相同的ROM中存儲(chǔ)。在這個(gè)過程中倍頻器一直處于復(fù)位狀態(tài)。在ROM中存儲(chǔ)完一個(gè)輸入信號(hào)局期后,給一個(gè)信號(hào)使倍頻器停止復(fù)位,開始正常工作。ROM1在計(jì)數(shù)器開始運(yùn)作時(shí)就開始循環(huán)輸出數(shù)據(jù)。ROM2在響應(yīng)完延時(shí)信號(hào)后循環(huán)輸出數(shù)據(jù)。其原理框圖如下:
3 最終仿真波形
這里的A/D電路是10位逐次逼近型電路,輸入信號(hào)周期為720 μs,時(shí)鐘工作頻率為5 MHz,每隔11個(gè)時(shí)鐘周期采一次樣。應(yīng)根據(jù)采樣的次數(shù)確定ROM的大小。這里的輸入模擬信號(hào)周期為720μs,A/D時(shí)鐘周期為0.2μs,共采樣300次,每次10位數(shù),則這里需要4 k的兩個(gè)ROM。ROM2的輸出由定時(shí)輸出計(jì)數(shù)器控制。這里假設(shè)相移要求為17°,則其時(shí)間延遲Tdelay=17×Tclk_div_n1。最終仿真波形如圖6,圖7所示。
圖7是圖6左下角數(shù)據(jù)的放大。這是由Cadence 公司的仿真軟件Spectre仿真計(jì)算得到。在圖6中,上面的波形為原來(lái)的正弦輸入信號(hào);中間的是不經(jīng)過移相而直接輸出的結(jié)果;下面的是移相后的波形。由軟件顯示計(jì)算2個(gè)波形的時(shí)間差為:TB-TA=38.9066μs-4.90673μs=33.999 9μs△34 μs。根據(jù)本文介紹的延時(shí)控制理論,延時(shí)的數(shù)值應(yīng)為:TDelay=17×(720μs/360)=34μs。由此可見,仿真后得到數(shù)據(jù)和理論數(shù)據(jù)完全吻合,從而證實(shí)了本文原理的正確性。
4 結(jié) 語(yǔ)
通過上面論證,文中移相器的精度理論上可以任意定義。倍頻器在因溫度等外界因素導(dǎo)致輸入信號(hào)A的周期發(fā)生變化時(shí),能立刻自我調(diào)整,使輸出與輸入的關(guān)系恒定(即fclk_in×360=fclk_div_n1),并能夠根據(jù)外部輸入信號(hào)A的周期變化進(jìn)行自我調(diào)節(jié)適應(yīng),另外對(duì)倍頻后的時(shí)間余數(shù)進(jìn)行了四舍五入處理,因而具有精度高,失真度小的特點(diǎn)。如果調(diào)整工藝,并使用性能較高的比較器,那么還可以使得移相器的輸入信號(hào)頻率大大提高,從而滿足高頻電路的移相需要,拓寬了應(yīng)用領(lǐng)域。同時(shí)本移相器除了適合正弦信號(hào)外,還適用于三角波信號(hào)和其他模擬信號(hào)的移相。
模擬信號(hào)相關(guān)文章:什么是模擬信號(hào)
比較器相關(guān)文章:比較器工作原理
塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理 數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評(píng)論