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