1 引言 Chua’s電路、Chen系統、Lu系統Liu系統的提出,極大豐富了混沌動力學的研究,尤其在電類學科群,如保密通訊、功率電子學、雷達與通信對抗等應用領域。對于混沌保密心臟的混沌信號源,人們也一直在探索產生混沌信號的新方法。傳統的采用模擬電路產生混沌信號的方法存在結構復雜、噪聲高、精度達不到要求、對外界環境(如溫度變化等)特別敏感而難以有效應用的問題,對于DSP的浮點精度相同而且采用相同的數型和算法,得到的結果應該是一致的,這在硬件設計中很難實現。所以,本文采用DSP設計和實現了混沌信號源,并運用簡單有效的JTAG測試技術和 CCS在線調試功能,直接訪問DSP內存,驗證了混沌信號。 2 系統分析與設計 首先根據需要選取產生混沌信號的混沌方程。然后確定方程的系數及初值。與采用分立元件設計信號源不同的是:分立元件設計混沌信號源的系數是需要通過電路結構分析計算各元件的參數值得到,而采用DSP設計信號源直接設定即可;分立元件設計混沌信號源時不必設定初值,而采用DSP設計混沌信號源時方程的初值設定是必不可少的。初值可以是不為零的任意數,但最好選取在混沌系統的吸引子中,這樣能使系統迅速進入混沌。因為DSP產生的混沌信號極其有限,可根據實際需要在輸出端采用其他電路設計增益放大電路。圖1為系統設計流程。 3 程序設計和精度問題 3.1 程序設計 此設計中的DSP主要用于微分數值的迭代運算,其計算性能將決定信號產生速度,這里采用TI公司的TMS320C5402型低功率器件作為核心,其速度可達100 MI/s,以Lorenz方程為例,其方程如下: 式中,參數值分別為:α=5.5,β=-7.4,k1=0.25,k2=0.1。 圖2為系統程序流程。 3.2 精度問題 混沌信號的產生主要借助于:DSP強大的運算能力,采用數值計算方法,可根據不同的精度要求選用不同的方法。精度越高,運算量越大,則混沌信號的頻率越低,所以要根據實際需要選取合適的精度。混沌方程的微分數值計算方法主要有:歐拉方法、改進歐拉方法及四階龍格一庫塔法。這3種方法精度由低到高,計算量也由低到高。運算量的大小直接決定運算速度,即決定混沌信號的產生速度。選用何種計算方法取決于對精度和速率的要求以及對運算量的承受能力。上述核心程序采用四階龍格一庫塔法。 4 信號的驗證與測試 4.1 信號驗證 產生的信號是否為混沌信號必須經過驗證。判斷混沌信號的方法很多,但都存在需要復雜運算的問題。一般情況下通過示波器顯示的單通道波形很難判斷混沌與否。MATLAB和TI公司聯合開發的MATLAB Link for CCS Development Tool(簡稱CCSlink)工具箱更適合于程序的調試,對混沌信號的驗證不夠靈活。這里采用一種簡單有效的方法判斷DSP產生的信號是否混沌。運用 JTAG測試技術和CCS的在線調試功能,直接訪問DSP內存。以Lorenz混沌信號的檢測為例,在CCS編譯環境的程序部分通過設定,將數據X存在 DSP的地址0X0088,Y存在地址0X0099,Z存在地址0X00A0,使用探針功能采集內存中的數據,并將其存為DAT文件格式,然后利用 Matlab強大的圖形能力對數據進行處理,通過分析相圖判斷信號是否為混沌信號。這里共采集98 047個點的數據。利用Matlab方法將采集到的DSP產生的數據制成波形圖和相圖,分別如圖3、圖4所示。由圖3和圖4易知產生的數據是混沌的,從而驗證了設計的正確性。 4.2 可重用性測試 為驗證系統的可通用性,對Lorenz混沌信號產生模塊稍作修改,修改的內容包括:微分方程、參數值以及初始值。 Liu系統的方程為: 采用同樣的方法,得到Liu系統產生的混沌信號。如圖5和圖6所示。 5 結論 針對模擬電路設計的混沌信號模塊結構復雜、噪聲高等缺點,采用DSP實現了可調精度的混沌信號產生模塊,并實現了Lorenz方程和Liu系統的混沌信號。總結如下:以TI公司的TMS320C5402型DSP為例給出了混沌信號源詳細的設計方法,并對信號進行了驗證;運用JTAG測試技術和CCS的在線調試,直接訪問DSP內存,進而判斷信號是否發生混沌,此方法簡單有效。該模塊的設計可根據不同應用需求,如對混沌信號產生速率、功耗、精度等方面的要求,選擇不同器件片。所以具有很大的通用性和靈活性。 |