當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件

  摘 要: 混沌序列的產(chǎn)生是混沌理論應(yīng)用于保密通信領(lǐng)域的一個重要問題。通過對Logistic映射進(jìn)行變換處理,利用整數(shù)運(yùn)算代替小數(shù)運(yùn)算,使程序便于在MCS-51系列單片機(jī)平臺上運(yùn)行,由此產(chǎn)生Logistic-Map混沌序列。
關(guān)鍵詞: 混沌序列;Logistic-Map;單片機(jī)

  混沌及其應(yīng)用是近年來非線性科學(xué)研究領(lǐng)域的一個熱點(diǎn)課題。自Pecora和Carroll提出了混沌同步概念,使混沌應(yīng)用于保密通信技術(shù)領(lǐng)域成為可能。但要進(jìn)行有效的混沌通信,首先必須產(chǎn)生穩(wěn)定的混沌序列信號。
混沌序列信號發(fā)生器最初是利用分立模擬電子元件來實(shí)現(xiàn)的,這種方法能有效地產(chǎn)生混沌信號,但降低了集成度,增大了體積,且在通信應(yīng)用時,因為元件參數(shù)較大的離散性,容易造成收發(fā)系統(tǒng)之間的電路參數(shù)失配。相比而言,用數(shù)字元件實(shí)現(xiàn),能簡化系統(tǒng)并提高抗干擾能力,例如,在DSP和FPGA等數(shù)字平臺上產(chǎn)生混沌序列,是一種較為有效的方法。
對于產(chǎn)生形式簡單并且應(yīng)用廣泛的Logistic-Map混沌序列[1]信號,可在速度較慢、資源有限的51系列單片機(jī)硬件平臺[2]上實(shí)現(xiàn)。由于Logistic映射中產(chǎn)生的迭代數(shù)據(jù)全是小數(shù),而單片機(jī)處理浮點(diǎn)數(shù)的能力較差,故需對Logistic-Map方程進(jìn)行映射變換,以便于在單片機(jī)上運(yùn)行實(shí)現(xiàn)。
1 Logistic方程的變換處理
Logistic方程是目前應(yīng)用較為廣泛的一種混沌映射,其迭代方程的數(shù)學(xué)表達(dá)式為


由于單片機(jī)并不適合于處理小數(shù),故為了方便于單片機(jī)的運(yùn)行處理,系數(shù)盡可能地選擇整數(shù),這里選取參數(shù)μ=4,其時域仿真波形如圖3所示。


Logistic方程中,x(n)的值均為0~1之間的小數(shù),而x(n)值的精確度對系統(tǒng)是否處于混沌狀態(tài)有一定的影響,精度過低會將混沌系統(tǒng)強(qiáng)制性帶出混沌。理論上,x(n)值的精確度越大越好,但實(shí)際上不可能選取無窮精度。在Matlab仿真時,軟件采用雙精度浮點(diǎn)的形式進(jìn)行數(shù)值運(yùn)算。
考慮到單片機(jī)處理浮點(diǎn)數(shù)的能力較差,通過線性映射:
  

  將x(n)∈(0,1)的值映射到X(n)∈(0,65 536)的區(qū)間上,而這屬于一個無符號整型變量的表數(shù)范圍。通過該映射,就能在保證變換前的數(shù)值精確到小數(shù)點(diǎn)后4位的情況下,用無符號整型變量代替雙精度浮點(diǎn)型變量的運(yùn)算,并且能在一定程度上反映小數(shù)點(diǎn)后第5位的情況。
  經(jīng)過映射變換后的Logistic映射方程變?yōu)椋?br />  
  式中X(n)∈(0,65 536)。數(shù)值仿真結(jié)果如圖4所示。由此可知,變換只改變了x(n)值的幅度,并沒有改變系統(tǒng)的性質(zhì)。

2 硬件設(shè)計
在硬件設(shè)計中,選用了51系列中的增強(qiáng)型單片機(jī)AT89S52。這款單片機(jī)內(nèi)置了8 KB的Flash,8個256 bit的片內(nèi)RAM,對于存儲程序和臨時數(shù)據(jù)值有足夠的空間,因此可采用單片工作模式,不需擴(kuò)展外圍存儲器。
圖5為Logistic混沌信號發(fā)生器的硬件電路圖。單片機(jī)的P1.6、P1.7分別輸出轉(zhuǎn)換控制信號和控制時鐘信號;P1.4、P1.5則將Logistic方程的迭代結(jié)果串行地送入數(shù)模轉(zhuǎn)換器。


要較好地將單片機(jī)計算結(jié)果還原成模擬信號并在示波器上顯示出來,對D/A轉(zhuǎn)換器的精度有一定的要求[5]。數(shù)模轉(zhuǎn)換器的精度過低,會使許多不同的計算結(jié)果被轉(zhuǎn)換為相同的模擬電壓值,導(dǎo)致波形質(zhì)量的嚴(yán)重下降。這里選用了廉價高速的12位精度數(shù)模轉(zhuǎn)換器MAX538[2,6]。這款D/A轉(zhuǎn)換器是電壓輸出型,串行輸入方式,由單5 V電源供電。它采用菊花鏈結(jié)構(gòu),1次接收16位的數(shù)據(jù),其中只有低12位有效,而高四位只在構(gòu)成菊花鏈時使用。圖6為MAX538的時序圖,當(dāng)轉(zhuǎn)換控制信號為高電平時,D/A轉(zhuǎn)換器不接收新值,而將數(shù)字信號轉(zhuǎn)換成模擬信號,輸出的模擬信號電壓值:
  

  式中,VREF為基準(zhǔn)電壓,取為2.5 V;當(dāng)其為低點(diǎn)平時,每來1個控制時鐘脈沖就讀入1位值。

3 軟件流程設(shè)計
根據(jù)(3)式可知,程序中涉及到了減法、乘法和除法運(yùn)算。在單片機(jī)指令系統(tǒng)中,這3種運(yùn)算指令均為多周期指令,會占用較多的運(yùn)行時間,尤其是除法運(yùn)算。相對而言,賦值指令、移位指令與邏輯運(yùn)算指令則較為快速,因此,在保證準(zhǔn)確性的前提下,可用移位運(yùn)算代替乘、除運(yùn)算[7]。
在設(shè)計程序時,利用循環(huán)迭代,使單片機(jī)不斷地計算出Logistic方程的當(dāng)前值。程序流程圖如圖7所示。在整個循環(huán)體內(nèi),通過以下幾個步驟完成1次迭代運(yùn)算:

(1)將公式(3)中的減法運(yùn)算[65536-X(n)]用“異或”運(yùn)算[X(n)⊕0xFFFF]代替,所得值送入變量y所指向的存儲空間;
(2)將y的值與x相乘,實(shí)現(xiàn)[X(n)[65536-X(n)]],而這個乘法運(yùn)算的結(jié)果是一個32位的值,因此賦予長整型變量M32;
(3)乘法運(yùn)算結(jié)果要除以65 536,該值是2的16次方(65 536=216),故可通過將M32的值右移16位來替換除法運(yùn)算;
(4)在單片機(jī)指令系統(tǒng)中,除法運(yùn)算的結(jié)果是個16位的值,但移位運(yùn)算并不會改變變量的數(shù)據(jù)類型,故仍為32位的數(shù)據(jù)。所以,要令M32和0xFFFF相“與”,取出M32的低16位值存入與整型變量相對應(yīng)的存儲空間;
(5)用y的值左移2位替代乘以系數(shù)μ=4的運(yùn)算,計算出Logistic方程的當(dāng)前值;
(6)將計算結(jié)果送入數(shù)模轉(zhuǎn)換器。
數(shù)模轉(zhuǎn)換芯片MAX538是串行輸入的,上述步驟計算的結(jié)果是一個整型數(shù)值,不能1次送入D/A芯片,要將數(shù)值按權(quán)位的高低逐個取出并傳送。并且MAX538是12位的D/A芯片,只有低12數(shù)據(jù)有效。計算結(jié)果的16位數(shù)據(jù)中,對信號幅度影響較大的是高12位數(shù)據(jù),故要將x(n)的值右移4位,將高4位無效位清零,而把有效值保存在低12位。根據(jù)MAX538的信號時序,可得如圖8所示的流程圖。


混沌系統(tǒng)方程中,均為小數(shù)形式的運(yùn)算,增加了產(chǎn)生混沌信號時的硬件復(fù)雜程度。因此,通過對Logistic方程進(jìn)行線性變換,采用整數(shù)運(yùn)算替代浮點(diǎn)數(shù)運(yùn)算,可以在保證一定數(shù)值精度的情況下,提高程序的運(yùn)行速度,為利用51系列單片機(jī)產(chǎn)生混沌序列信號提供了一種實(shí)際可行的實(shí)現(xiàn)方法。


參考文獻(xiàn)
[1] 呂金虎,陸君安,陳士華.混沌時間序列分析及其應(yīng)用[M].武漢:武漢大學(xué)出版社,2002.
[2] 李群芳,張士軍,黃?。畣纹⑿陀嬎銠C(jī)與接口技術(shù)(第2版)[M].北京:電子工業(yè)出版社,2005.
[3] 趙艷紅,張春,吳楚.?dāng)U頻通信中數(shù)字混沌序列的產(chǎn)生[J].信息工程大學(xué)學(xué)報,2000(3):40-43.
[4] 劉文波.Logistic映射的電路實(shí)現(xiàn)及應(yīng)用[J].?dāng)?shù)據(jù)采集與處理,2001(1):129-132.
[5] 趙耿,鄭德玲,董冀媛.Logistic映射數(shù)字混沌產(chǎn)生器[J].北京科技大學(xué)學(xué)報,2001(2):173-176.
[6] 王福瑞.單片微機(jī)測控系統(tǒng)設(shè)計大全[M].北京:北京航空航天大學(xué)出版社,1998.
[7] 唐秋玲,覃團(tuán)發(fā),姚海濤,等.?dāng)?shù)字語音混沌保密通信系統(tǒng)及硬件實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2000(2):58-60.

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉