波特率連續(xù)可調(diào)的串口通信技術
摘要 在基于PCI接口波特率連續(xù)可調(diào)的串口通信技術中,串口通信模塊作為整個PCI接口功能的本地模塊,是實現(xiàn)PCI接口模塊與外部串口信息的溝通。文中介紹了波特率連續(xù)可調(diào)技術的實現(xiàn)原理和方法,并基于PCI接口和FPGA技術完成通信模塊的實現(xiàn)與測試驗證。其具有設計的靈活性和應用的廣泛性。
關鍵詞 PCI接口;串口通信;波特率連續(xù)可調(diào);DDS;FPGA
基于PCI總線的串口通信技術,在工業(yè)領域中有著重要的應用。而目前市場上基于PCI總線的串口通信卡,雖然可以實現(xiàn)多串口收發(fā)且波特率可調(diào),但可調(diào)的波特率只是幾個點,不能實現(xiàn)連續(xù)可調(diào)。但在一些軍事通信中,經(jīng)常會需要波特率連續(xù)可調(diào),以滿足軍事通信中對波特率的特殊要求。文中基于這個要求,采用硬件描述語言,實現(xiàn)這一功能要求在FPGA上的研究、開發(fā)、測試與驗證。
1 波特率連續(xù)可調(diào)的串口通信
1.1 串口通信中的波特率技術
在數(shù)據(jù)通信中,波特率等于每秒鐘傳輸?shù)臄?shù)據(jù)位數(shù)。在串行通訊中,收發(fā)雙方基于同一波特率實現(xiàn)數(shù)據(jù)的發(fā)送與接收。波特率即為發(fā)送或接收信號的頻率。
1.2 波特率連續(xù)可調(diào)的DDS方法
1.2.1 設計要求
例如RS232標準中串行通信波特率的一般要求范圍是300~115 200 bit·s-1。而傳統(tǒng)的串行通信卡支持波特率可調(diào)只是在某幾點可調(diào)。文中研究的目標是波特率連續(xù)可調(diào),例如要求波特率在300~115 200 bit·s-1之間可以實現(xiàn)步進為1 bit·s-1甚至0.1 bit·s-1的調(diào)節(jié)。
改變波特率即改變信號發(fā)送或信號接收時鐘的頻率,可以采用對基準時鐘進行數(shù)據(jù)分頻的方法,但達不到調(diào)節(jié)的連續(xù)性。文中采用改進的DDS方法,實現(xiàn)對發(fā)送時鐘fclk步進為1 bit·s-1的調(diào)節(jié)。
1.2.2 DDS原理介紹
直接數(shù)字頻率合成DDS(Direct Digital Synthesis)是種把一系列數(shù)字信號通過D/A轉(zhuǎn)換器轉(zhuǎn)換為模擬信號的合成技術。傳統(tǒng)DDS的核心結(jié)構(gòu)如圖1所示。
輸出頻率可由式(1)確定。
其中,fclk是時鐘頻率;FCW是頻率控制字;L為相位累加字的字長。
1.2.3 產(chǎn)生頻率連續(xù)可調(diào)的時鐘信號
在傳統(tǒng)的DDS技術中,頻率最小步進值的尾數(shù)不是零,給后續(xù)的頻率合成造成不便,所以采用改進的DDS技術,循環(huán)相位累加器設定一個可調(diào)的最大值作為溢出值,最大值溢出后,以余值而不是以零作為下一次累加的起始值。結(jié)構(gòu)框圖如圖2所示。
改進后的DDS輸出頻率可由式(3)確定
最小頻率精度可由式(4)確定
評論