李 威
(河海大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇常州,213022)
基于CORDIC算法的無線傳感器網(wǎng)絡(luò)同步時鐘源的研究
李 威
(河海大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇常州,213022)
時鐘同步是無線傳感器網(wǎng)絡(luò)的一項重要支撐技術(shù)。針對無線傳感器網(wǎng)絡(luò)的時鐘同步,本文提出了一種基于CORDIC算法的改進型DDS系統(tǒng)。介紹了CORDIC算法的原理,采用QuartusⅡ軟件對時鐘源系統(tǒng)的各個模塊進行了詳細設(shè)計。實驗結(jié)果表明,系統(tǒng)的性能指標達到了設(shè)計要求。
時鐘同步;無線傳感器網(wǎng)絡(luò);DDS;CORDIC
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)融合了傳感器技術(shù)、嵌入式技術(shù)、數(shù)據(jù)處理技術(shù)和通信技術(shù),被廣泛地應(yīng)用于軍事、環(huán)境、交通、工業(yè)、家居等領(lǐng)域[1]。無線傳感器網(wǎng)絡(luò)是一種由大量部署在監(jiān)測區(qū)域中具有感知、通信和處理能力的傳感器節(jié)點以自組織方式構(gòu)成的網(wǎng)絡(luò),并以多跳的方式將數(shù)據(jù)由數(shù)據(jù)源沿多個節(jié)點傳送至匯聚節(jié)點。無線傳感器網(wǎng)絡(luò)的諸多特性,如有限的硬件資源和能量、密集的節(jié)點分布、龐大的網(wǎng)絡(luò)規(guī)模、動態(tài)的網(wǎng)絡(luò)拓撲等,決定了其廣闊的應(yīng)用前景。
時鐘同步技術(shù)是無線傳感器網(wǎng)絡(luò)的一項重要支撐技術(shù),為網(wǎng)絡(luò)中各個節(jié)點的本地時鐘提供一個統(tǒng)一的時間標尺。在無線傳感器網(wǎng)絡(luò)中,節(jié)點晶振漂移和信息交換過程中產(chǎn)生傳輸延遲等因素導(dǎo)致各節(jié)點本地時鐘之間存在一定偏差。對于需要協(xié)同工作的傳感器節(jié)點來說,統(tǒng)一的時間尺度是必要的。此外,傳感器網(wǎng)絡(luò)的一些特殊應(yīng)用,如傳感器節(jié)點的數(shù)據(jù)融合,休眠喚醒節(jié)能機制等,對基準時鐘提出了很高的要求。因此,無線傳感器網(wǎng)絡(luò)中的同步時鐘源具有重要的研究意義和實用價值。
圖1 直角坐標下向量的旋轉(zhuǎn)
因此,CORDIC算法旋轉(zhuǎn)模式的差分方程可以寫為:
因此,由式(5)和(6)可以得到:
本時鐘源主要采用MCU + FPGA架構(gòu),實現(xiàn)了基于CORDIC算法的改進型DDS系統(tǒng)。該系統(tǒng)主要由MCU、銣原子振蕩器、FPGA、數(shù)模轉(zhuǎn)換器和低通濾波器等5部分組成。其中,MCU主要負責(zé)將所需波形的配置數(shù)據(jù)發(fā)送至FPGA。銣原子振蕩器主要為FPGA提供頻率基準。FPGA根據(jù)接收到的配置數(shù)據(jù),通過DDS模塊產(chǎn)生相應(yīng)頻率和相位的波形,最后經(jīng)由數(shù)模轉(zhuǎn)換器和低通濾波器輸出。DDS的工作原理框圖如圖2所示。
圖2 DDS工作原理框圖
DDS的實質(zhì)是以基準頻率源(銣原子振蕩器)對相位進行等間隔采樣,其工作過程[4]如下:在參考時鐘的作用下,位相位累加器對頻率控制字進行累加,其輸出為相位碼的高位,然后通過ROM查詢表轉(zhuǎn)換得到相應(yīng)的位幅度碼。幅度碼由外接的數(shù)模轉(zhuǎn)換器變換得到模擬的階梯波電壓,最后經(jīng)過低通濾波器濾掉諧波分量,抑制高頻雜散,平滑為連續(xù)的正弦波形。通過外接比較器可以得到抖動很小的方波信號,即所需的標準時鐘源。因此,通過改變頻率控制字就可以改變輸出頻率。此時輸出信號的頻率為:
DDS技術(shù)的關(guān)鍵在于相幅轉(zhuǎn)換模塊。由于ROM查表法受到ROM存儲容量的限制,其性能提高的空間有限。在實際應(yīng)用中,實時的正余弦計算替代ROM查表法可以節(jié)省更多的資源[5]。因此,本文采用CORDIC算法通過加/減法和移位運算,實現(xiàn)正余弦計算以替代ROM查詢表。
下面采用QuartusⅡ軟件對DDS系統(tǒng)的各個模塊進行了詳細設(shè)計,給出并分析了各模塊的仿真結(jié)果。
2.1 相位累加器模塊
圖3 相位累加器模塊的宏模塊圖
圖3 是一個6位的相位累加器。在時鐘脈沖clock的控制下,頻率控制字dataa[5..0]與頻率控制字寄存器相加。每個時鐘周期頻率控制字累加一次,再與相位控制字datab[5..0]相加并輸出。因此,輸出序列本質(zhì)上是一組等差數(shù)列,數(shù)列的公差即為頻率控制字。
圖4 相位累加器模塊的仿真結(jié)果
如圖4所示,在clock信號的控制下,頻率控制字dataa設(shè)置為4,相位控制字datab設(shè)置為0,輸出結(jié)果out產(chǎn)生步長為4的數(shù)列,遞增到64時溢出,進入下一個周期。觀察仿真結(jié)果可知,輸出信號的周期為1.6。
2.2 相位轉(zhuǎn)換模塊
由于角度值、輸出的正余弦值及其中間結(jié)果均采用二進制補碼格式的定點數(shù),因此相位累加器的輸出值需要完成相位轉(zhuǎn)換才能接入CORDIC模塊進行計算。相位累加器的輸出范圍為,頻率分辨率為,所以相位累加器輸出的相位為。經(jīng)過角度擴展后的CORDIC模塊覆蓋的角度范圍為,而的范圍是,因此采用即可將相位轉(zhuǎn)換為的二進制補碼相位值。
圖5 相位轉(zhuǎn)換模塊的宏模塊圖
圖6 相位轉(zhuǎn)換模塊的仿真結(jié)果
從圖6可以看出,當相位累加器輸出為45時,相位轉(zhuǎn)換模塊將其轉(zhuǎn)換為弧度1.078所對應(yīng)的二進制補碼138。
2.3 CORDIC模塊
圖7 CORDIC模塊的宏模塊圖
CORDIC模塊的宏模塊圖如圖7所示。它作為實時的正余弦計算器,替代了傳統(tǒng)DDS系統(tǒng)的ROM查詢表,實現(xiàn)了輸入一個相位值,輸出與之對應(yīng)的正余弦值,且相位和幅度值均采用二進制補碼表示。
觀察圖8所示仿真結(jié)果可知,當輸入相位值為H86(對應(yīng)角度)時,CORDIC模塊的正弦值輸出為H6F,即0.8672,余弦值輸出為H3F,即0.4922,近似等于正余弦的理論計算值。
圖8 CORDIC模塊的仿真結(jié)果
本文主要采用MCU + FPGA架構(gòu),設(shè)計了基于CORDIC算法的改進型DDS系統(tǒng)。傳統(tǒng)DDS系統(tǒng)的ROM查詢表占用資源多且時間很難同步。本文采用CORDIC算法通過加/減法和移位運算實現(xiàn)了正余弦計算。實驗結(jié)果表明,該方案能夠充分發(fā)揮CORDIC算法的優(yōu)勢,時鐘源系統(tǒng)的性能指標達到了設(shè)計要求。
[1]F. Sivrikaya, B. Yener. Time synchronization in sensor networks: a survey. IEEE Network, 2004, 18(4): 45-50.
[2]S. Aggarwal, P. K. Meher, K. Khare. Scale-Free Hyperbolic CORDIC Processor and Its Application to Waveform Generation. IEEE Transactions on Circuits and Systems I: Regular Papers, 2013, 60(2): 314-326.
[3]M. Kumm, H. Klingbeil, P. Zipf. An FPGA-Based Linear All-Digital Phase-Locked Loop. IEEE Transactions on Circuits and Systems I: Regular Papers, 2010, 57(9): 2487-2497.
[4]Dengwei Fu, A. N. Willson. A two-stage angle-rotation architecture and its error analysis for efficient digital mixer implementation. IEEE Transactions on Circuits and Systems I: Regular Papers, 2006, 53(3): 604-614.
[5]A. Sharma, R. D. Daruwala. Digital frequency (sinusoidal) synthesizer using CORDIC algorithm. The 3rd IEEE International Conference on Communication Software and Networks (ICCSN 2011), pp. 521-524, May 27-29, 2011, Xi'an, China.
CORDIC-based Clock Source for Time Synchronization in Wireless Sensor Networks
Li Wei
(College of Internet of Things Engineering, Hohai University, Changzhou,213022, China)
Time synchronization is an important supporting technology for wireless sensor networks (WSNs). In this paper, a CORDIC-based DDS system is proposed for time synchronization in WSNs. The principle of CORDIC algorithm is briefly discussed. Using QuartusⅡ, the clock source system is designed in detail. The experiment results show that the performance of the system can meet the design requirements.
time synchronization; wireless sensor networks; DDS; CORDIC
李威(1980-),男,副教授,主要從事無線傳感器網(wǎng)絡(luò)、統(tǒng)計信號處理方向的研究工作。
國家自然科學(xué)基金(61401147),中央高校基本科研業(yè)務(wù)費(2013B09214)資助課題