基于DSP的混沌信號(hào)源的設(shè)計(jì)與實(shí)現(xiàn)
3 程序設(shè)計(jì)和精度問(wèn)題
3.1 程序設(shè)計(jì)
此設(shè)計(jì)中的DSP主要用于微分?jǐn)?shù)值的迭代運(yùn)算,其計(jì)算性能將決定信號(hào)產(chǎn)生速度,這里采用TI公司的TMS320C5402型低功率器件作為核心,其速度可達(dá)100 MI/s,以Lorenz方程為例,其方程如下:
式中,參數(shù)值分別為:α=5.5,β=-7.4,k1=0.25,k2=0.1。
圖2為系統(tǒng)程序流程。
3.2 精度問(wèn)題
混沌信號(hào)的產(chǎn)生主要借助于:DSP強(qiáng)大的運(yùn)算能力,采用數(shù)值計(jì)算方法,可根據(jù)不同的精度要求選用不同的方法。精度越高,運(yùn)算量越大,則混沌信號(hào)的頻率越低,所以要根據(jù)實(shí)際需要選取合適的精度。混沌方程的微分?jǐn)?shù)值計(jì)算方法主要有:歐拉方法、改進(jìn)歐拉方法及四階龍格一庫(kù)塔法。這3種方法精度由低到高,計(jì)算量也由低到高。運(yùn)算量的大小直接決定運(yùn)算速度,即決定混沌信號(hào)的產(chǎn)生速度。選用何種計(jì)算方法取決于對(duì)精度和速率的要求以及對(duì)運(yùn)算量的承受能力。上述核心程序采用四階龍格一庫(kù)塔法。
4 信號(hào)的驗(yàn)證與測(cè)試
4.1 信號(hào)驗(yàn)證
產(chǎn)生的信號(hào)是否為混沌信號(hào)必須經(jīng)過(guò)驗(yàn)證。判斷混沌信號(hào)的方法很多,但都存在需要復(fù)雜運(yùn)算的問(wèn)題。一般情況下通過(guò)示波器顯示的單通道波形很難判斷混沌與否。MATLAB和TI公司聯(lián)合開(kāi)發(fā)的MATLAB Link for CCS Development Tool(簡(jiǎn)稱(chēng)CCSlink)工具箱更適合于程序的調(diào)試,對(duì)混沌信號(hào)的驗(yàn)證不夠靈活。這里采用一種簡(jiǎn)單有效的方法判斷DSP產(chǎn)生的信號(hào)是否混沌。運(yùn)用 JTAG測(cè)試技術(shù)和CCS的在線調(diào)試功能,直接訪問(wèn)DSP內(nèi)存。以Lorenz混沌信號(hào)的檢測(cè)為例,在CCS編譯環(huán)境的程序部分通過(guò)設(shè)定,將數(shù)據(jù)X存在 DSP的地址0X0088,Y存在地址0X0099,Z存在地址0X00A0,使用探針功能采集內(nèi)存中的數(shù)據(jù),并將其存為DAT文件格式,然后利用 Matlab強(qiáng)大的圖形能力對(duì)數(shù)據(jù)進(jìn)行處理,通過(guò)分析相圖判斷信號(hào)是否為混沌信號(hào)。這里共采集98 047個(gè)點(diǎn)的數(shù)據(jù)。利用Matlab方法將采集到的DSP產(chǎn)生的數(shù)據(jù)制成波形圖和相圖,分別如圖3、圖4所示。由圖3和圖4易知產(chǎn)生的數(shù)據(jù)是混沌的,從而驗(yàn)證了設(shè)計(jì)的正確性。
評(píng)論