本文從AES的算法原理和基于ARM核嵌入式系統(tǒng)的開發(fā)著手,研究了AES算法的設(shè)計(jì)原則、數(shù)學(xué)知識、整體結(jié)構(gòu)、算法描述以及AES存住的優(yōu)點(diǎn)利局限性。 針對ARM核的體系結(jié)構(gòu)及特點(diǎn),對AES算法進(jìn)行了優(yōu)化設(shè)計(jì),提出了從AES算法本身和其結(jié)構(gòu)兩個(gè)方面進(jìn)行優(yōu)化的方法,在算法本身優(yōu)化方面是把加密模塊中的字節(jié)替換運(yùn)算、列混合運(yùn)算和解密模塊中的逆列混合運(yùn)算中原來的復(fù)雜的運(yùn)算分別轉(zhuǎn)換為簡單的循環(huán)移位、乘和異或運(yùn)算。在算法結(jié)構(gòu)優(yōu)化方面是在輸入輸山接口上采用了4個(gè)32位的寄存器對128bits數(shù)據(jù)進(jìn)行了并行輸入并行輸出的優(yōu)化設(shè)計(jì);在密鑰擴(kuò)展上的優(yōu)化設(shè)計(jì)是采用內(nèi)部擴(kuò)展,即在進(jìn)行每一輪的運(yùn)算過程的同時(shí)算出下一輪的密鑰,并把下一輪的密鑰暫存在SRAM里,使得密鑰擴(kuò)展與加/解密運(yùn)算并行執(zhí)行;加密和解密優(yōu)化設(shè)計(jì)是將輪函數(shù)查表操作中的四個(gè)操作表查詢工作合并成一個(gè)操作表查詢工作,同時(shí)為了使加密代碼在解密代碼中可重用,節(jié)省硬件資源,在解密過程中采用了與加密相一致的過程順序。 根據(jù)上述的優(yōu)化設(shè)計(jì),基于ARM核嵌入式系統(tǒng)的ADS開發(fā)環(huán)境,提出了AES實(shí)現(xiàn)的軟硬件方案、AES加密模塊和解密模塊的實(shí)現(xiàn)方案以及測試方案,總結(jié)了基于ARM下的高效編程技巧及混合接口規(guī)則,在集成開發(fā)環(huán)境下對算法進(jìn)行了實(shí)現(xiàn),分別得出了初始密鑰為128bits、192bits和256bits下的加密與解密的結(jié)果,并得劍了正確驗(yàn)證。在性能測試的過程中應(yīng)用編譯器的優(yōu)化選項(xiàng)和其它優(yōu)化技巧優(yōu)化了算法,使算法具有較高的加密速度。
標(biāo)簽: ARM AES 嵌入式系統(tǒng) 算法優(yōu)化
上傳時(shí)間: 2013-04-24
上傳用戶:liansi
ARM處理器的工作模式 ARM處理器狀態(tài) ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時(shí)處理器執(zhí)行32位的字對齊的ARM指令;第二種為Thumb狀態(tài),此時(shí)處理器執(zhí)行16位的、半字對齊的Thumb指令。在程序的執(zhí)行過程中,微處理器可以隨時(shí)在兩種工作狀態(tài)之間切換,并且,處理器工作狀態(tài)的轉(zhuǎn)變并不影響處理器的工作模式和相應(yīng)寄存器中的內(nèi)容。但ARM微處理器在開始執(zhí)行代碼時(shí),應(yīng)該處于ARM狀態(tài)。 ARM處理器狀態(tài) 進(jìn)入Thumb狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位(位0)為1時(shí),可以采用執(zhí)行BX指令的方法,使微處理器從ARM狀態(tài)切換到Thumb狀態(tài)。此外,當(dāng)處理器處于Thumb狀態(tài)時(shí)發(fā)生異常(如IRQ、FIQ、Undef、Abort、SWI等),則異常處理返回時(shí),自動切換到Thumb狀態(tài)。 進(jìn)入ARM狀態(tài):當(dāng)操作數(shù)寄存器的狀態(tài)位為0時(shí),執(zhí)行BX指令時(shí)可以使微處理器從Thumb狀態(tài)切換到ARM狀態(tài)。此外,在處理器進(jìn)行異常處理時(shí),把PC指針放入異常模式鏈接寄存器中,并從異常向量地址開始執(zhí)行程序,也可以使處理器切換到ARM狀態(tài)。ARM處理器模式 ARM微處理器支持7種運(yùn)行模式,分別為:用戶模式(usr):ARM處理器正常的程序執(zhí)行狀態(tài)。快速中斷模式(fiq):用于高速數(shù)據(jù)傳輸或通道處理。外部中斷模式(irq):用于通用的中斷處理。管理模式(svc):操作系統(tǒng)使用的保護(hù)模式。數(shù)據(jù)訪問終止模式(abt):當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入該模式,可用于虛擬存儲及存儲保護(hù)。系統(tǒng)模式(sys):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù)。定義指令中止模式(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入該模式,可用于支持硬件協(xié)處理器的軟件仿真。ARM處理器模式 ARM微處理器的運(yùn)行模式可以通過軟件改變,也可以通過外部中斷或異常處理改變。大多數(shù)的應(yīng)用程序運(yùn)行在用戶模式下,當(dāng)處理器運(yùn)行在用戶模式下時(shí),某些被保護(hù)的系統(tǒng)資源是不能被訪問的。 除用戶模式以外,其余的所有6種模式稱之為非用戶模式,或特權(quán)模式;其中除去用戶模式和系統(tǒng)模式以外的5種又稱為異常模式,常用于處理中斷或異常,以及需要訪問受保護(hù)的系統(tǒng)資源等情況。ARM寄存器 ARM處理器共有37個(gè)寄存器。其中包括:31個(gè)通用寄存器,包括程序計(jì)數(shù)器(PC)在內(nèi)。這些寄存器都是32位寄存器。以及6個(gè)32位狀態(tài)寄存器。 關(guān)于寄存器這里就不詳細(xì)介紹了,有興趣的人可以上網(wǎng)找找,很多這方面的資料。異常處理 當(dāng)正常的程序執(zhí)行流程發(fā)生暫時(shí)的停止時(shí),稱之為異常,例如處理一個(gè)外部的中斷請求。在處理異常之前,當(dāng)前處理器的狀態(tài)必須保留,這樣當(dāng)異常處理完成之后,當(dāng)前程序可以繼續(xù)執(zhí)行。處理器允許多個(gè)異常同時(shí)發(fā)生,它們將會按固定的優(yōu)先級進(jìn)行處理。當(dāng)一個(gè)異常出現(xiàn)以后,ARM微處理器會執(zhí)行以下幾步操作:進(jìn)入異常處理的基本步驟:將下一條指令的地址存入相應(yīng)連接寄存器LR,以便程序在處理異常返回時(shí)能從正確的位置重新開始執(zhí)行。將CPSR復(fù)制到相應(yīng)的SPSR中。根據(jù)異常類型,強(qiáng)制設(shè)置CPSR的運(yùn)行模式位。強(qiáng)制PC從相關(guān)的異常向量地址取下一條指令執(zhí)行,從而跳轉(zhuǎn)到相應(yīng)的異常處理程序處。如果異常發(fā)生時(shí),處理器處于Thumb狀態(tài),則當(dāng)異常向量地址加載入PC時(shí),處理器自動切換到ARM狀態(tài)。 ARM微處理器對異常的響應(yīng)過程用偽碼可以描述為: R14_ = Return LinkSPSR_= CPSRCPSR[4:0] = Exception Mode NumberCPSR[5] = 0 ;當(dāng)運(yùn)行于 ARM 工作狀態(tài)時(shí)If == Reset or FIQ then;當(dāng)響應(yīng) FIQ 異常時(shí),禁止新的 FIQ 異常CPSR[6] = 1PSR[7] = 1PC = Exception Vector Address異常處理完畢之后,ARM微處理器會執(zhí)行以下幾步操作從異常返回:將連接寄存器LR的值減去相應(yīng)的偏移量后送到PC中。將SPSR復(fù)制回CPSR中。若在進(jìn)入異常處理時(shí)設(shè)置了中斷禁止位,要在此清除。
上傳時(shí)間: 2013-11-15
上傳用戶:hanbeidang
如何使用高級觸發(fā)測量程序跑飛:LA系列邏輯分析儀內(nèi)部集成了32位的定時(shí)器、32位的計(jì)數(shù)器和高速比較模塊,高效的使用以上模塊資源可以使您的測量事半功倍。邏輯分析儀在實(shí)際應(yīng)用中主要作用有:1.觀察波形,看看測量波形中是否存在毛刺、干擾、頻率是否正確等;2.時(shí)序測量,對被測信號進(jìn)行時(shí)序校對,看看操作時(shí)序是否符合要求。3.輔助分析,利用邏輯分析儀完善的協(xié)議分析功能來進(jìn)行輔助分析;4.查錯(cuò)功能,利用邏輯分析儀強(qiáng)大的觸發(fā)功能來進(jìn)行錯(cuò)誤捕獲。當(dāng)單片機(jī)的PC值(程序計(jì)數(shù)器)對沒有程序的地方進(jìn)行取指時(shí),稱為程序跑飛。程序跑飛的原因有多種,主要有以下原因:1) 客觀原因:單片機(jī)受到外界強(qiáng)干擾造成PC值寄存器改變;2)程序Bug:用戶程序調(diào)用函數(shù)指針,對非程序空間進(jìn)行對用。以80C51單片機(jī)為例子,當(dāng)程序跑到非用戶程序區(qū)時(shí),單片機(jī)使用PSEN對外部程序進(jìn)行取指,使用邏輯分析儀可以設(shè)置觸發(fā)條件,當(dāng)使用PSEN對外部程序進(jìn)行取指時(shí)進(jìn)行記錄,把出錯(cuò)情況前后的狀態(tài)記錄下來進(jìn)行分析,查找出錯(cuò)原因。如80C51的取指范圍正確為0x0000~0x3fff,則當(dāng)對0x3fff以上地址進(jìn)行取指時(shí)為程序跑飛。分析80C51對外部程序取指的時(shí)序,如圖1所示。
上傳時(shí)間: 2013-10-11
上傳用戶:panpanpan
RA8802 是一個(gè)中英文文字與繪圖模式的點(diǎn)矩陣液晶顯示(LCD)控制器,可最大支援320x240 點(diǎn)的LCD 面 板。內(nèi)建512Kbyte 的字形碼可以顯示中文字型、數(shù)字符號與英文字母。在文字模式中,RA8802 可接收標(biāo)準(zhǔn) 中文文字內(nèi)碼直接顯示中文,而不需要進(jìn)入繪圖模式以繪圖方式描繪中文,可以節(jié)省許多微處理器時(shí)間,提 升液晶顯示中文之處理效率。
上傳時(shí)間: 2014-06-08
上傳用戶:wweqas
一般認(rèn)為Windows CE是一個(gè)適合嵌入式應(yīng)用的通用作業(yè)系統(tǒng),然而,從系統(tǒng)的角度來看,Windows CE並不只是一個(gè)作業(yè)系統(tǒng),它還包括對多種目標(biāo)處理器以及週邊設(shè)備的支援,並提供了系統(tǒng)開發(fā)工具、應(yīng)用開發(fā)工具、整合的應(yīng)用程式
標(biāo)簽: Windows 嵌入式 系統(tǒng)
上傳時(shí)間: 2015-07-01
上傳用戶:asasasas
Linux是一個(gè)Open Source的UNIX-like作業(yè)系統(tǒng),除了有著廣大的支援社群以外,穩(wěn)定、模組化、擁有廣大的應(yīng)用免費(fèi)應(yīng)用軟體支援是它主要的優(yōu)點(diǎn)。ARM嵌入式處理器則是目前應(yīng)用在嵌入式系統(tǒng)領(lǐng)域中,佔(zhàn)有率最高的處理器,同時(shí)也是Linux核心目前所能夠支援的處理器之一,然而要使得Linux在ARM嵌入式處理器上運(yùn)作,勢必要經(jīng)過移植 (porting) 的過程,也就是要將平臺相依 (platform dependent) 的部分做適當(dāng)?shù)男薷?/p>
標(biāo)簽: UNIX-like Source Linux Open
上傳時(shí)間: 2015-11-08
上傳用戶:dengzb84
本程序?qū)崿F(xiàn)了一個(gè)數(shù)字頻率計(jì)。它由一個(gè)測頻控制信號發(fā)生器TESTCTL,8個(gè)有時(shí)鐘的十進(jìn)制計(jì)數(shù)器CNT10,一個(gè)32位鎖存器REG32B組成。
標(biāo)簽: TESTCTL 程序 數(shù)字頻率計(jì) 控制信號
上傳時(shí)間: 2013-12-16
上傳用戶:894898248
verilog 實(shí)現(xiàn) 優(yōu)化的16位比較器 可以輸出大于,小于,等于。模塊化設(shè)計(jì),可擴(kuò)展為32位
上傳時(shí)間: 2015-05-16
上傳用戶:dongbaobao
《Java手機(jī)程式設(shè)計(jì)入門》/王森 書號:29014 頁數(shù):約 492 頁 ISBN:957-200-527-8 出版日期:2001年08月25日 出版廠商:知城數(shù)位科技股份有限公司 訂價(jià):380 第一章 Java 2 Micro Edition概論陣 第二章 Java程式設(shè)計(jì)簡介陣 第三章 撰寫您的第一個(gè)手機(jī)程式陣 第四章 在實(shí)體機(jī)器上執(zhí)行MIDlet陣 第五章 J2ME Wireless Toolkit陣 第六章 Motorola A6288手機(jī)程式開發(fā)陣 第七章 JBuilder MobileSet陣 第八章 MIDP for Palm 第九章 MIDlet的事件處理陣 第十章 MIDP圖形使用者介面程式設(shè)計(jì)陣 第十一章 MIDP圖形處理陣 第十二章 MIDP資料庫程式設(shè)計(jì)陣 第十三章 MIDP網(wǎng)路程式設(shè)計(jì)陣 附錄A MID其他參考資源總整理陣 附錄B Motorola J2ME SDK
標(biāo)簽: 29014 Java 2001 ISBN
上傳時(shí)間: 2016-12-01
上傳用戶:coeus
eeworm.com VIP專區(qū) 單片機(jī)源碼系列 32資源包含以下內(nèi)容:1. C51單片機(jī)_定時(shí)器可調(diào)時(shí)鐘_程序.docx2. 單片機(jī)的40個(gè)實(shí)驗(yàn).pdf3. 通信速率可調(diào)的單片機(jī)多機(jī)通信系統(tǒng)研究.zip4. 小車程序.doc5. 基于MC9S12HY32的電動汽車儀表盤設(shè)計(jì).zip6. 基于AVR的太陽能高速公路智能電子顯示屏系統(tǒng)設(shè)計(jì).zip7. 智能小車程序.doc8. 基于51單片機(jī)多功能太陽能路燈的設(shè)計(jì).zip9. 從零開始學(xué)單片機(jī)C語言 李建清.掃描版.pdf10. PWM調(diào)速+循跡智能小車程序.doc11. 單片機(jī)驅(qū)動數(shù)碼管顯示設(shè)計(jì).pdf12. 51單片機(jī)的結(jié)構(gòu)知識.doc13. C18編輯器入門.pdf14. 單片機(jī)的學(xué)習(xí)資料+實(shí)驗(yàn)精華.doc15. 16x16+ds1302.rar16. 基于C8051F020的等精度測量頻率.doc17. 8路搶答器設(shè)計(jì).doc18. MSP430單片機(jī)C語言應(yīng)用程序設(shè)計(jì)實(shí)例精講.rar19. AVR系列單片機(jī)C語言.pdf20. 51單片機(jī)編程中常用的一些函數(shù).zip21. 51單片機(jī)在線調(diào)試仿真系統(tǒng)(MSUODS_Tri)培訓(xùn)手冊.pdf22. 51單片機(jī)教程詳細(xì)解析(經(jīng)典收藏).pdf23. MCS51單片機(jī)原理_定時(shí)器.pdf24. 51單片機(jī)經(jīng)典入門教程(非常棒的教程).pdf25. Keil uVision2 軟件.rar26. 51單片機(jī)最小系統(tǒng)原理圖.doc27. 34個(gè)單片機(jī)實(shí)例(包括框圖和程序).doc28. 單片機(jī)外圍電路擴(kuò)展.ppt29. HC6800EM3 v20原理圖(電路圖).pdf30. 單片機(jī)外圍電路設(shè)計(jì).docx31. ARM體系結(jié)構(gòu)概述.pdf32. 單片機(jī)硬件電路設(shè)計(jì).ppt33. PC與單片機(jī)借助LABview進(jìn)行簡單的接受和發(fā)送數(shù)據(jù).rar34. 單片機(jī)定時(shí)器詳解.doc35. 單片機(jī)控制步進(jìn)電機(jī)程序.doc36. 用單片機(jī)設(shè)計(jì)電子音樂門鈴.rar37. [30.Arduino.Projects.for.the.Evil.Genius].Simon.Monk.文字版.pdf38. 單片機(jī)的串口知識.zip39. [Getting.Started.with.Arduino(2nd.2011.9)].Massimo.Banzi.文字版.pdf40. 智能小車制作.doc41. 智能循跡小車設(shè)計(jì)報(bào)告.ppt42. Arduino_電子積木基礎(chǔ)套裝中文教程.pdf43. Tiny6410SDK-1111-底板原理圖(Tiny6410開發(fā)板原理圖).pdf44. ATmega64資料.PDF45. arduino語言說明.doc46. Sonix(松翰)8bit單片26系列IO型原理及基礎(chǔ)教程.pdf47. ATmega128資料.PDF48. arduino_manual.pdf49. 基于單片機(jī)的智能型金屬探測器的設(shè)計(jì).doc50. 電動機(jī)的單片機(jī)控制.pdf51. Arduino使用教程.pdf52. ENC-03M陀螺儀模塊.rar53. 單片機(jī)器件手冊.pdf54. Arduino電子積木用戶手冊.pdf55. RF905-無線調(diào)試板開發(fā)包.rar56. [Beginning.Arduino].Michael.McRoberts.文字版.pdf57. Arduino_booklet02.pdf58. 郭天祥《十天學(xué)會單片機(jī)和C語言編程》.pdf59. [Arduino:A.Quick-Start.Guide].Maik.Schmidt.文字版.pdf60. 實(shí)驗(yàn)四 移位寄存器.pdf61. 郭天祥51單片機(jī).rar62. STC89C52單片機(jī)的中文介紹.pdf63. 基于單片機(jī)的數(shù)字電壓表設(shè)計(jì).pdf64. 郭天祥 十天學(xué)會單片機(jī)和c語言--課后答案.doc65. 12864點(diǎn)陣型液晶顯示.pdf66. 單片機(jī)學(xué)習(xí)方法與感悟.rar67. pcf8591資料.pdf68. 萬年歷C程序.rar69. ATmega16_cn學(xué)習(xí)資料.pdf70. C8051F34x中文版.pdf71. C51單片機(jī)及C語言知識點(diǎn)必備秘籍.pdf72. 51實(shí)驗(yàn)板原理圖顯示部分.pdf73. HT45R37 使用SPI 進(jìn)行資料傳輸?shù)姆椒?pdf74. 32位單片機(jī)C語言編程:基于PIC32圖書電子版.zip75. HT45F23 Comparator 功能使用範(fàn)例.pdf76. HOT-51電路圖.pdf77. HT45F23 OPA 功能.pdf78. AVR單片機(jī)C語言程序設(shè)計(jì)實(shí)例精粹[圖與程序].rar79. HT45F23 ADC 功能應(yīng)用實(shí)例.pdf80. 單片機(jī)面試題.doc81. 如何將代碼燒入STC單片機(jī).doc82. 8051C語言設(shè)計(jì)藝術(shù).pdf83. 51單片機(jī)學(xué)習(xí)資料打包.zip84. 10天學(xué)會單片機(jī)實(shí)例100.zip85. 單片機(jī)的40個(gè)實(shí)驗(yàn).pdf86. atmega48資料.pdf87. MCS-51單片機(jī)原理.pdf88. AVR單片機(jī)C語言開發(fā)入門指導(dǎo).pdf89. PID通俗釋義.doc90. MSP430 電容單觸式傳感器設(shè)計(jì)指南.pdf91. AVR系列單片機(jī)C語言編程與應(yīng)用實(shí)例.pdf92. 51單片機(jī)小精靈.rar93. 基于單片機(jī)的嵌入式TCP/IP協(xié)議棧的設(shè)計(jì)與實(shí)現(xiàn).pdf94. 實(shí)戰(zhàn)AVR單片機(jī)C語言.pdf95. 如何設(shè)計(jì)復(fù)雜的多任務(wù)程序.rar96. 流水燈的設(shè)計(jì).pdf97. 深入淺出AVR單片機(jī).pdf98. 巡線小車.zip99. 89ZLG72單片機(jī)資料.pdf100. ATmega48單片機(jī)學(xué)習(xí)板.doc
上傳時(shí)間: 2013-07-30
上傳用戶:eeworm
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1