導航:首頁 > 文檔加密 > nxp單片機加密後能寫入嗎

nxp單片機加密後能寫入嗎

發布時間:2023-01-20 20:28:27

① NXP mke02 單片機量產 怎麼加密燒錄程序

你可以用P800燒錄器,通過兩個方式加密程序:

  1. 在製作燒錄工程的時候,添加工程密碼和設定燒錄晶元的數量;

  2. 在燒錄的流程中,把「加密」動作放進去。

② 單片機裡面有程序嗎程序怎麼才能讀出來

最早的單片機裡面是沒有程序的,程序是在外置的程序存儲器裡面。現在大多數單片機都把程序區做在片內,做到真正的單片機。早期的單片機都是一次性寫入(OTP)的,現在很多都是FLASH的,可以反復寫的。最早的單片機是沒有加密的,是可以直接讀出來2進制的機器碼,直接就可以寫入另外一個單片機中。現在基本上都做了加密,正常的去讀是讀不出來的。

③ 單片機AT89C51在燒程序時按了加密,有解密方法嗎

一般不會的加了密也能讀,只是讀出的東西全是 FF,不是裡面執行的程序加了密晶元做一次晶元擦除操作晶元就應該空了,可以再次燒寫,如果出現問題可以考慮換一個單片機或編程器試試

④ 單片機加密狗是什麼技術

加密狗 加密狗是由彩虹天地公司首創,後來發展成如今的一個軟體保護的通俗行業名詞,"加密狗"是一種插在計算機並行口上的軟硬體結合的加密產品(新型加密狗也有usb口的)。一般都有幾十或幾百位元組的非易失性存儲空間可供讀寫,現在較新的狗內部還包含了單片機。軟體開發者可以通過介面函數和軟體狗進行數據交換(即對軟體狗進行讀寫),來檢查軟體狗是否插在介面上;或者直接用軟體狗附帶的工具加密自己EXE文件(俗稱"包殼")。這樣,軟體開發者可以在軟體中設置多處軟體鎖,利用軟體狗做為鑰匙來打開這些鎖;如果沒插軟體狗或軟體狗不對應,軟體將不能正常執行。
加密狗通過在軟體執行過程中和加密狗交換數據來實現加密的.加密狗內置單片機電路(也稱CPU),使得加密狗具有判斷、分析的處理能力,增強了主動的反解密能力。這種加密產品稱它為"智能型"加密狗.加密狗內置的單片機里包含有專用於加密的演算法軟體,該軟體被寫入單片機後,就不能再被讀出。這樣,就保證了加密狗硬體不能被復制。同時,加密演算法是不可預知、不可逆的。加密演算法可以把一個數字或字元變換成一個整數,如DogConvert(1)=17345、DogConvert(A)=43565。
加密狗是為軟體開發商提供的一種智能型的軟體保護工具,它包含一個安裝在計算機並行口或 USB 口上的硬體,及一套適用於各種語言的介面軟體和工具軟體。加密狗基於硬體保護技術,其目的是通過對軟體與數據的保護防止知識產權被非法使用。
加密狗的工作原理:
加密狗通過在軟體執行過程中和加密狗交換數據來實現加密的.加密狗內置單片機電路(也稱CPU),使得加密狗具有判斷、分析的處理能力,增強了主動的反解密能力。這種加密產品稱它為"智能型"加密狗.加密狗內置的單片機里包含有專用於加密的演算法軟體,該軟體被寫入單片機後,就不能再被讀出。這樣,就保證了加密狗硬體不能被復制。同時,加密演算法是不可預知、不可逆的。加密演算法可以把一個數字或字元變換成一個整數,如DogConvert(1)=17345、DogConvert(A)=43565。下面,我們舉個例子說明單片機演算法的使用。 比如一段程序中有這樣一句:A=Fx(3)。程序要根據常量3來得到變數A的值。於是,我們就可以把原程序這樣改寫:A=Fx(DogConvert(1)-12342)。那麼原程序中就不會出現常量3,而取之以DogConvert(1)-12342。這樣,只有軟體編寫者才知道實際調用的常量是3。而如果沒有加密狗,DogConvert函數就不能返回正確結果,結果算式A=Fx(DogConvert(1)-12342)結果也肯定不會正確。這種使盜版用戶得不到軟體使用價值的加密方式,要比一發現非法使用就警告、中止的加密方式更溫和、更隱蔽、更令解密者難以琢磨。此外,加密狗還有讀寫函數可以用作對加密狗內部的存儲器的讀寫。於是我們可以把上算式中的12342也寫到狗的存儲器中去,令A的值完全取決於DogConvert()和DogRead()函數的結果,令解密難上加難。不過,一般說來,加密狗單片機的演算法難度要低於一些公開的加密演算法,如DES等,因為解密者在觸及加密狗的演算法之前要面對許多難關
[編輯本段]目前最新的硬體加密原理
隨著解密技術的發展,單片機加密狗由於其演算法簡單,存儲空間小,容易被硬復制等原因,正逐漸被市場所淘汰。以北京彩虹天地信息技術股份有限公司為首的國內加密狗廠商研發出穩定性更好、存儲空間更大(最大為64K)、有效防止硬克隆的第四代加密狗——「智能卡」加密狗以其獨創的「代碼移植」原理,已經被國內大型商業軟體開發商如金蝶、用友、CAXA、廣聯達、神機妙算、魯班……所採用。
以世界上第一款智能卡加密鎖——宏狗為例,簡單介紹一下「代碼移植」原理。
「代碼移植」加密原理為一種全新的、可信的軟體保護模型,工作原理為:軟體中部分代碼經過編譯,「移植」到加密鎖硬體內部,軟體中沒有該段代碼的副本。
在這套軟體保護方案中,PC端應用軟體的關鍵的代碼和數據「消失」了,被安全地移植到精銳IV型加密鎖的硬體中保護起來。在需要使用時,應用軟體可以通過功能調用引擎來指令精銳IV運行硬體中的關鍵代碼和數據並返回結果,從而依然可以完成整個軟體全部的功能。由於這些代碼和數據在PC端沒有副本存在,因此解密者無從猜測演算法或竊取數據,從而極大程度上保證了整個軟體系統的安全性。簡言之,精銳IV提供了一套可信的解決方案,從理論上保證軟體加密的安全。
加密狗技術的運用案例
1、廣聯達造價軟體
2、清華斯維爾造價軟體
3、神機妙算造價軟體
4、魯班造價軟體

使用加密狗進行加密的一些策略

現在的解密技術排除法律和道德因素,就從學術角度來說是門科學。它與加密技術一樣是相輔相成不斷提高。
以下就針對使用加密狗(加密鎖)進行硬體保護談談幾點心得:
針對於使用加密狗的解密有什麼方法?
1、硬體復制
復制硬體,即解密者復制Sentinel Superpro相同的加密鎖。由於加密鎖採用了彩虹公司專用的ASIC晶元技術,因此復制該加密鎖非常困難,且代價太大。
2、監聽
解密者利用並口監聽程序,進行解密,其工作機制是:
監聽程序,記錄應用程序對並口發的查詢串和加密鎖發回的響應串。當移去加密鎖時,如果程序再對並口發查詢串確認身份時,監聽程序返回所記錄的響應串。程序認為加密鎖仍然在並口上,是合法用戶繼續運行,應用程序也就被解密了。
3、 列印機共享器
將加密鎖插在列印機共享器上,多台計算機共同使用列印機共享器上的一把加密鎖。(後面簡述對抗策略)
4、 DEBUG
解密者DEBUG等反編譯程序,修改程序源代碼或跳過查詢比較。應用程序也就被解密了。
對於以上的幾種解密方法加密者可以考慮使用以下幾種加密策略:
1、針對上述監聽和DEBUG問題解密方法,本人推薦充分利用加密狗開發商的API函數調用的加密策略:
a、 針對並口監聽程序
1)對加密鎖進行演算法查詢
Ø 正確的查詢響應驗證
用戶生成大量查詢響應對,如200對。在程序運行過程中對激活的加密演算法單元隨機的發送在200對之中的一對「345AB56E」―――「63749128」。查詢串「345AB56E」,哪么演算法單元返回的下確的響應串應該是「63749128」,若是,則程序認為加密鎖在並口上,是合法用戶,繼續運行,反之終止程序。
Ø 隨機非激活演算法驗證
我們對非激活的加密鎖演算法單元發隨機生成的查詢串,如:「7AB2341」,非激活演算法單元只要是有查詢就會有響應串。因此返回響應串「7AB2341」,在程序中判斷響應串與查詢串是否相同,如果相同,則證明我們的加密鎖仍然在口上。繼續運行程序。
Ø 隨機激活演算法驗證
假設監聽程序了解了上面的機制。即對非激活的加密演算法我們發什麼查詢串則返回相同的響應串。哪么我也有對策。對激活的加密演算法單元發隨機生成的查詢串,如:「345AB56E」由於是激活演算法響應串肯定與查詢串肯定不等。所以假如返回響應串「7253ABCD」,在程序中判斷響應串與查詢串是否不同,如果不同,則證明我們的加密鎖仍然在並口上,繼續運行程序。
上面三種加密策略在程序同時使用,相符相承,相互補充。即使監聽程序記錄下來我們的部分查詢響應。
2) 分時查詢
用戶把查詢響應對分組,如120對分為4組。每30對一組。頭三個月使用第一組,第二個月三個月使用第二組以此類推,監聽程序就算記錄了頭三個月。第二個月三個月以後程序仍然無法使用。
也可以再生成100對「臨時委員」,每次運行隨意抽出1對與以上分組結合使用。使記錄程序在三個月內也無法記錄完全。程序也無法使用。
3) 隨機讀寫存儲單元
為了防監聽程序。我們的策略是:程序在啟動時,我們利用隨機函數隨機生成的一個數,假設是「98768964」。我們在指定的18#單元寫入這個數。哪么我們在程序運行中,每調用一個功能程序前讀取18#單元,數判定是否是我們寫入的數「98768964」。因為每次寫入的數是隨機生成的,所以監聽程序記錄不到當次啟動時寫入的隨機數,它返回的數肯定是一個不匹配的數。我們就可以就此判定是否是合法用戶。Sentinel Superpro加密鎖可以重復寫10萬次以上。也就是說每天寫三次也可以使用一百年。
2、 針對列印共享器的加密策略
為了防列印共享器。我們的策略是:程序在啟動時,我們利用隨機函數隨要生成的一個數,假設是「7762523A」。我們在指定的34#單元寫入這個數。哪么在程序運行中,每調用一個功能程序前讀取34#單元,以判定是否是我們寫入的數「7762523A」。以此判定是否是合法用戶。因為每次寫入的數隨機生成的,同時使用列印共享器的其他非法用戶的程序一進入也會寫入一個不同的隨機數。那麼第一個用戶的程序在校驗是否是第一個用戶寫入的數時,就會被認為是非法的用戶。所以在一個階段也只是一個程序使用。(例如RAINBOW公司開的Sentinel Superpro加密鎖可以重復10萬次以上。也就是說每天寫三次也就可以使用一百年。)
3、 針對DEBUG跟蹤的加密鎖的安全策略
1)分散法
針對DEBUG跟蹤。在調用每個重要功能模塊前,我們建議要對加密鎖進行查詢,校驗身份。如果只在程序開始部分校驗身份,DEBUG跟蹤程序部分可以輕易的跳過校驗部分,而一些不良用戶可以在驗證後可以將加密鎖拔下用在其它計算機。
2)延時法
針對某一具體查詢校驗,都有三步驟:
Ø 查詢得到響應串
Ø 比較響應串和查詢串是否匹配
Ø 執行相應的步驟
我們建議以上三個步驟要延時執行。最好鞀三步驟相互遠離些,甚至放到不同的子程序或函數中。例如:我們執行「查詢得到響應串」 後,相隔50執行「比較響應串和查詢串是否匹配」。假如程序需要調用一個函數。哪么我們就在這個函數里執行「執行相應的步驟」。這樣程序更難於被破解。
3)整體法
將響應串作為程序中數據使用。
例如:我們有返回值「87611123」,而我們程序需要「123」這個數。我們可以讓「87611123」減去「8761000」得到「123」。這樣以來任何對加密程序的修改都會使程序紊亂。
4)迷惑法
一般情況下我們的程序執行相應的驗證步驟。驗證是非法用戶就會退出。這樣很容易被發現代碼特徵。我們知道是非法用戶後繼續執行一些無用的操作使程序紊亂。以迷惑解密者。
以上為現如今軟體開發商使用硬體加密狗(加密鎖)進行軟體保護時可以使用的幾種切實可行的幾種加密策略。

⑤ 單片機原理的加密方法

科研成果保護是每一個科研人員最關心的事情,加密方法有軟體加密,硬體加密,軟硬體綜合加密,時間加密,錯誤引導加密,專利保護等措施有矛就有盾,有盾就有矛,有矛有盾,才促進矛盾質量水平的提高加密只講盾,也希望網友提供更新的加密思路,現先講一個軟體加密:利用MCS-51 中A5 指令加密,其實世界上所有資料,包括英文資料都沒有講這條指令,其實這是很好的加密指令A5 功能是二位元組空操作指令加密方法在A5 後加一個二位元組或三位元組操作碼,因為所有反匯編軟體都不會反匯編A5 指令,造成正常程序反匯編亂套,執行程序無問題仿製者就不能改變你的源程序。
硬體加密:8031/8052單片機就是8031/8052掩模產品中的不合格產品,內部有ROM,可以把8031/8052 當8751/8752 來用,再擴展外部程序器,然後調用8031 內部子程序當然你所選的同批8031晶元的首地址及所需用的中斷入口均應轉到外部程序區。
硬體加密
用高電壓或激光燒斷某條引腳,使其讀不到內部程序,用高電壓會造成一些器件損壞重要RAM 數據採用電池(大電容,街機採用的辦法)保護,拔出晶元數據失去機器不能起動,或能初始化,但不能運行。
用真假方法加密
擦除晶元標識
把8X52單片機,標成8X51 單片機,並用到後128B的RAM 等方法,把AT90S8252 當AT89C52,初始化後程序段中並用到EEPROM 內容,你再去聯想吧!
用激光(或絲印)打上其它標識如有的單片機引腳兼容,有的又不是同一種單片機,可張冠李戴,只能意會了,這要求你知識面廣一點 。
用最新出廠編號的單片機,如2000 年後的AT89C 就難解密,或新的單片機品種,如AVR 單片機。
DIP 封裝改成PLCC,TQFP,SOIC,BGA等封裝,如果量大可以做定製ASIC,或軟封裝,用不需外晶振的單片機工作(如AVR 單片機中的AT90S1200),使用更復雜的單片機,FPGA+AVR+SRAM=AT40K系列。
硬體加密與軟體加密只是為敘說方便而分開來講,其實它們是分不開的,互相支撐,互相依存的軟體加密:其目的是不讓人讀懂你的程序,不能修改程序,你可以………….....
利用單片機未公開,未被利用的標志位或單元,作為軟體標志位,如8031/8051有一個用戶標志位,PSW.1 位,是可以利用的程序入口地址不要用整地址,如:XX00H,XXX0H,可用整地址-1,或-2,而在整地址處加二位元組或三位元組操作碼,在無程序的空單元也加上程序機器碼,最好要加巧妙一點用大容量晶元,用市場上模擬器不能模擬的晶元,如內部程序為64KB 或大於64KB 的器件,如:AVR 單片機中ATmega103 的Flash 程序存儲器為128KBAT89S8252/AT89S53中有EEPROM,關鍵數據存放在EEPROM 中,或程序初始化時把密碼寫到EEPROM 中,程序執行時再查密碼正確與否,盡量不讓人家讀懂程序。關於單片機加密,講到這里,就算拋磚引玉。

⑥ 關於單片機的種類問題

單片機的分類Ⅰ 按生產廠家分
美國的英特爾(Intel) 公司、摩托羅拉(Motorola)公司、國家辦導體(NS) 公司、Atmel公司、微晶元(Microchip) 公司、洛克威爾(Rockwell)公司、莫斯特克公司(Mostek)、齊洛格(Zilog)公司、仙童(Fairchid)公司、德州儀器(TI)公司等等。日本的電氣(NS)公司、東芝(Toshiba)公司、富士通(Fujitsu)公司、松下公司、日立(Hitachi)公司、日電(NEC)公司、夏普公司等等。荷蘭的飛利浦(Philips)公司。德國的西門子(Siemens)公司等等。
Ⅱ 按字長分(1)4-BIT 單片機
4 位單片機的控制功能較弱,CPU 一次只能處理4 位二進制數。這類單片機常用於計算器、各種形態的智能單元以及作為家用電器中的控制器。典型產品有NEC 公司的UPD 75××系列、NS 公司的COP400 系列、松下公司的MN1400 系列、ROCKWELL 公司的PPS/1系列、富士通公司的MB88 系列、夏普公司的SM××系列、Toshiba 公司的TMP47×××系列等等。
① 華邦公司的W741系列的4位單片機帶液晶驅動,在線燒錄,保密性高,低操作電壓(1.2V~1.8V)。
② 東芝單片機的4位機在家電領域有很大市場。
(2)8-BIT 單片機
8 位單片機 8 位單片機的控制功能較強,品種最為齊全。和4 位單片機相比,它不僅具有較大的存儲容量和定址范圍,而且中斷源、並行I/O 介面和定時器/計數器個數都有了不同程度的增加,並集成有全雙工串列通信介面。在指令系統方面,普遍增設了乘除指令和比較指令。特別是8 位機中的高性能增強型單片機,除片內增加了A/D 和D/A 轉換器外,還集成有定時器捕捉/比較寄存器、監視定時器(Watchdog)、匯流排控制部件和晶體振盪電路等。這類單片機由於其片內資源豐富和功能強大,主要在工業控制、智能儀表、家用電器和辦公自動化系統中應用。代表產品有Intel 公司的MCS-48 系列和MCS-51 系列 、Microchip 公司的PIC16C××系列和PIC17C××系列以及PIC1400 系列、Motorola 公司的M68HC05 系列和M68HC11 系列、Zilog 公司的Z8 系列、荷蘭Philips 公司的80C51 系列(同MCS-51 兼容)、Atmel公司的AT89 系列(同MCS-51 兼容)、NEC 公司的UPD78××系列等等。
1)51系列單片機
8031/8051/8751是Intel公司早期的產品。應用的早,影響很大,已成為世界上的工業標准。後來很多晶元廠商以各種方式與Intel公司合作,也推出了同類型的單片機,如同一種單片機的多個版本一樣,雖都在不斷的改變製造工藝,但內核卻一樣,也就是說這類單片機指令系統完全兼容,絕大多數管腳也兼容;在使用上基本可以直接互換。人們統稱這些與8051內核相同的單片機為「51系列單片機」。
8031片內不帶程序存儲器ROM,使用時用戶需外接程序存儲器和一片邏輯電路373,外接的程序存儲器多為EPROM的2764系列。用戶若想對寫入到EPROM中的程序進行修改,必須先用一種特殊的紫外線燈將其照射擦除,之後再可寫入。寫入到外接程序存儲器的程序代碼沒有什麼保密性可言。
8051片內有4k ROM,無須外接外存儲器和373,更能體現「單片」的簡練。但是所編的程序無法寫入到其ROM中,只有將程序交晶元廠代為寫入,並是一次性的,不能改寫其內容。
8751與8051基本一樣,但8751片內有4k的EPROM,用戶可以將自己編寫的程序寫入單片機的EPROM中進行現場實驗與應用,EPROM的改寫同樣需要用紫外線燈照射一定時間擦除後再寫入。
在眾多的51系列單片機中,要算 ATMEL 公司的AT89C51、AT89S52更實用,因他不但和8051指令、管腳完全兼容,而且其片內的4K程序存儲器是FLASH工藝的,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改寫,一般專為 ATMEL AT89xx 做的編程器均帶有這些功能。顯而易見,這種單片機對開發設備的要求很低,開發時間也大大縮短。寫入單片機內的程序還可以進行加密,這又很好地保護了你的勞動成果。而且,AT89C51、AT89S51目前的售價比8031還低,市場供應也很充足。
AT89S51、52是2003年ATMEL推出的新型品種,除了完全兼容8051外,還多了ISP編程和看門狗功能。
ATMEL公司的51系列還有AT89C2051、AT89C1051等品種,這些晶元是在AT89C51的基礎上將一些功能精簡掉後形成的精簡版。AT89C2051取掉了P0口和P2口,內部的程序FLASH存儲器也小到2K,封裝形式也由51的P40腳改為20腳,相應的價格也低一些,特別適合在一些智能玩具,手持儀器等程序不大的電路環境下應用;AT89C1051在2051的基礎上,再次精簡掉了串口功能等,程序存儲器再次減小到1k,當然價格也更低。
51 單片機目前已有多種型號,市場上目前供貨比較足的晶元還要算ATMEL 的51、52 晶元, HYUNDAI 的GMS97 系列,WINBOND 的78e52,78e58,77e58 等。
GMS97 系列是一次性燒寫,一般只有大量生產的人才買。at89c51,52 因可以很容易地解密,一般人們只用它來做實驗,或者用在一些即使解了密也無關緊要的場合。89c2051 只有20 腿,體積小巧,在一些簡單應用和體積有限的場合得到廣泛應用。
2)PIC系列單片機
由美國Microchip公司推出的PIC單片機系列產品,首先採用了RISC結構的嵌入式微控制器,其高速度、低電壓、低功耗、大電流LCD驅動能力和低價位OTP技術等都體現出單片機產業的新趨勢。
現在PIC系列單片機在世界單片機市場的份額排名中已逐年升位,尤其在8位單片機市場,據稱已從1990年的第20位上升到目前的第二位。PIC單片機從覆蓋市場出發,已有三種(又稱三層次)系列多種型號的產品問世,所以在全球都可以看到PIC單片機從電腦的外設、家電控制、電訊通信、智能儀器、汽車電子到金融電子各個領域的廣泛應用。現今的PIC單片機已經是世界上最有影響力的嵌入式微控制器之一。
① PIC 8位單片機的分類
PIC 8位單片機產品共有三個系列,即基本級、中級和高級。
a基本級系列該級產品的特點是低價位,如PIC16C5X,適用於各種對成本要求嚴格的家電產品選用。又如PIC12C5XX是世界第一個8腳的低價位單片機,因其體積很小,完全可以應用在以前不能使用單片機的家電產品的空間。
b中級系列該級產品是PIC最豐富的品種系列。它是在基本級產品上進行了改進,並保持了很高的兼容性。外部結構也是多種的,從8引腳到68引腳的各種封裝,如PIC12C6XX。該級產品其性能很高,如內部帶有A/D變換器、E2PROM數據存儲器、比較器輸出、PWM輸出、I2C和SPI等介面。PIC中級系列產品適用於各種高、中和低檔的電子產品的設計中。
c高級系列該系列產品如PIC17CXX,其特點是速度快,所以適用於高速數字運算的應用場合中,加之它具備一個指令周期內(160ns)可以完成8×8(位)二進制乘法運算能力,所以可取代某些DSP產品。再有PIC17CXX具有豐富的I/O控制功能,並可外接擴展EPROM和RAM,使它成為目前8位單片機中性能最高的機種之一。所以很適用於高、中檔的電子設備中使用。
上述的三層次(級)的PIC 8位單片機還具有很高的代碼兼容性,用戶很容易將代碼從某型號轉換到另一個型號中。PIC 8位單片機具有指令少、執行速度快等優點,其主要原因是PIC系列單片機在結構上與其它單片機不同。該系列單片機引入了原用於小型計算機的雙匯流排和兩級指令流水結構。這種結構與一般採用CISC(復雜指令集計算機)的單片機在結構上是有不同的。
雙匯流排結構
具有CISC結構的單片機均在同一存儲空間取指令和數據,片內只有一種匯流排。這種匯流排既要傳送指令又要傳送數據(如圖1-a所示)。因此,它不可能同時對程序存儲器和數據存儲器進行訪問。因與CPU直接相連的匯流排只有一種,要求數據和指令同時通過,顯然「亂套」,這正如一個「瓶頸」,瓶內的數據和指令要一起倒出來,往往就被瓶頸卡住了。所以具有這種結構的單片機,只能先取出指令,再執行指令(在此過程中往往要取數),然後,待這條指令執行完畢,再取出另一條指令,繼續執行下一條。這種結構通常稱為馮•諾依曼結構,又稱普林斯頓結構。
在這里PIC系列單片機採用了一種雙匯流排結構,即所謂哈佛結構。這種結構有兩種匯流排,即程序匯流排和數據匯流排。這兩種匯流排可以採用不同的字長,如PIC系列單片機是八位機,所以其數據匯流排當然是八位。但低檔、中檔和高檔的PIC系列機分別有12位、14位和16位的指令匯流排。這樣,取指令時則經指令匯流排,取數據時則經數據匯流排,互不沖突。
② 兩級指令流水線結構
由於PIC系列單片機採用了指令空間和數據空間分開的哈佛結構,用了兩種位數不同的匯流排。因此,取指令和取數據有可能同時交疊進行,所以在PIC系列微控制器中取指令和執行指令就採用指令流水線結構。當第一條指令被取出後,隨即進入執行階段,這時可能會從某寄存器取數而送至另一寄存器,或從一埠向寄存器傳送數等,但數據不會流經程序匯流排,而只是在數據匯流排中流動,因此,在這段時間內,程序匯流排有空,可以同時取出第二條指令。當第一條指令執行完畢,就可執行第二條指令,同時取出第3條指令,……如此等等。這樣,除了第一條指令的取出,其餘各條指令的執行和下一條指令的取出是同時進行的,使得在每個時鍾周期可以獲得最高效率。
在大多數微控制器中,取指令和指令執行都是順序進行的,但在PIC單片機指令流水線結構中,取指令和執行指令在時間上是相互重疊的,所以PIC系列單片機才可能實現單周期指令。
只有涉及到改變程序計數器PC值的程序分支指令(例如GOTO、CALL)等才需要兩個周期。
此外,PIC的結構特點還體現在寄存器組上,如寄存器I/O口、定時器和程序寄存器等都是採用了RAM結構形式,而且都只需要一個周期就可以完成訪問和操作。而其它單片機常需要兩個或兩個以上的周期才能改變寄存器的內容。上述各項,就是PIC系列單片機能做到指令總數少,且大都為單周期指令的重要原因。
3)AVR系列單片機
AVR單片機是1997年由ATMEL公司研發出的增強型內置Flash的RISC(Reced Instruction Set CPU) 精簡指令集高速8位單片機。AVR的單片機可以廣泛應用於計算機外部設備、工業實時控制、儀器儀表、通訊設備、家用電器等各個領域。
①AVR單片機的優勢及特點
a AVR單片機易於入手、便於升級、費用低廉。 單片機初學者只需一條ISP下載線,把編輯、調試通過的軟體程序直接在線寫入AVR單片機,即可以開發AVR單片機系列中的各種封裝的器件。AVR單片機因此在業界號稱「一線打天下」。 AVR程序寫入是直接在電路板上進行程序修改、燒錄等操作,這樣便於產品升級。AVR單片機可使用ISP在線下載編程方式(即把PC機上編譯好的程序寫到單片機的程序存儲器中),不需購買模擬器、編程器、擦抹器和晶元適配器等,即可進行所有AVR單片機的開發應用,這可節省很多開發費用。程序存儲器擦寫可達10000次以上,不會產生報廢品。
b高速、低耗、保密。首先,AVR單片機是高速嵌入式單片機: AVR單片機具有預取指令功能,即在執行一條指令時,預先把下一條指令取進來,使得指令可以在一個時鍾周期內執行。多累加器型,數據處理速度快。AVR單片機具有32個通用工作寄存器,相當於有32條立交橋,可以快速通行。中斷響應速度快。AVR單片機有多個固定中斷向量入口地址,可快速響應中斷。AVR單片機耗能低。對於典型功耗情況,WDT關閉時為100nA,更適用於電池供電的應用設備。有的器件最低1.8 V即可工作。AVR單片機保密性能好。它具有不可破解的位加密鎖Lock Bit技術,保密位單元深藏於晶元內部,無法用電子顯微鏡看到。
c I/O口功能強,具有A/D轉換等電路。AVR單片機的I/O口是真正的I/O口,能正確反映I/O口輸入/輸出的真實情況。工業級產品,具有大電流(灌電流)10mA~40mA,可直接驅動可控硅SSR或繼電器,節省了外圍驅動器件。AVR單片機內帶模擬比較器,I/O口可用作A/D轉換,可組成廉價的A/D轉換器。ATmega48/8/16等器件具有8路10位A/D。部分AVR單片機可組成零外設元件單片機系統,使該類單片機無外加元器件即可工作,簡單方便,成本又低。AVR單片機可重設啟動復位,以提高單片機工作的可靠性。有看門狗定時器實行安全保護,可防止程序走亂(飛),提高了產品的抗干擾能力。
d 有功能強大的定時器/計數器及通訊介面。定時/計數器T/C有8位和16位,可用作比較器。計數器外部中斷和PWM(也可用作D/A)用於控制輸出,某些型號的AVR單片機有3~4個PWM,是作電機無級調速的理想器件。AVR單片機有串列非同步通訊UART介面,不佔用定時器和SPI同步傳輸功能,因其具有高速特性,故可以工作在一般標准整數頻率下,而波特率可達576K。
②AVR 8-Bit MCU的最大特點
與其它8-Bit MCU相比,AVR 8-Bit MCU最大的特點是:
• 哈佛結構,具備1MIPS / MHz的高速運行處理能力;
• 超功能精簡指令集(RISC),具有32個通用工作寄存器,克服了如8051 MCU採用單一ACC進行處理造成的瓶頸現象;
• 快速的存取寄存器組、單周期指令系統,大大優化了目標代碼的大小、執行效率,部分型號FLASH非常大,特別適用於使用高級語言進行開發;
• 作輸出時與PIC的HI/LOW相同,可輸出40mA(單一輸出),作輸入時可設置為三態高阻抗輸入或帶上拉電阻輸入,具備10mA-20mA灌電流的能力;
• 片內集成多種頻率的RC振盪器、上電自動復位、看門狗、啟動延時等功能,外圍電路更加簡單,系統更加穩定可靠;
• 大部分AVR片上資源豐富:帶E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;
• 大部分AVR除了有ISP功能外,還有IAP功能,方便升級或銷毀應用程序。
(3)16-BIT 單片機
16 位單片機是在1983 年以後發展起來的。這類單片機的特點是:CPU是16 位的,運算速度普遍高於8 位機,有的單片機的定址能力高達1MB,片內含有A/D 和D/A轉換電路,支持高級語言。這類單片機主要用於過程式控制制、智能儀表、家用電器以及作為計算機外部設備的控制器等。典型產品有Intel 公司的MCS-96/98 系列、Motorola 公司的M68HC16系列、NS 公司的783××系列、TI公司的MSP430系列等等。
其中,以MSP430系列最為突出。它採用了精簡指令集( RISC )結構,具有豐富的定址方式( 7 種源操作數定址、 4 種目的操作數定址)、簡潔的 27 條內核指令以及大量的模擬指令;大量的寄存器以及片內數據存儲器都可參加多種運算;還有高效的查表處理指令;有較高的處理速度,在 8MHz 晶體驅動下指令周期為 125 ns 。這些特點保證了可編制出高效率的源程序。
在運算速度方面, MSP430 系列單片機能在 8MHz 晶體的驅動下,實現 125ns 的指令周期。 16 位的數據寬度、 125ns 的指令周期以及多功能的硬體乘法器(能實現乘加)相配合,能實現數字信號處理的某些演算法(如 FFT 等)。
MSP430 系列單片機的中斷源較多,並且可以任意嵌套,使用時靈活方便。當系統處於省電的備用狀態時,用中斷請求將它喚醒只用 6us 。
超低功耗 MSP430 單片機之所以有超低的功耗,是因為其在降低晶元的電源電壓及靈活而可控的運行時鍾方面都有其獨到之處。
首先, MSP430 系列單片機的電源電壓採用的是 1.8~3.6V 電壓。因而可使其在 1MHz 的時鍾條件下運行時, 晶元的電流會在 200~400uA 左右,時鍾關斷模式的最低功耗只有 0.1uA 。
其次,獨特的時鍾系統設計。在 MSP430 系列中有兩個不同的系統時鍾系統:基本時鍾系統和鎖頻環( FLL 和 FLL+ )時鍾系統或 DCO 數字振盪器時鍾系統。有的使用一個晶體振盪器( 32768Hz ) , 有的使用兩個晶體振盪器)。由系統時鍾系統產生 CPU 和各功能所需的時鍾。並且這些時鍾可以在指令的控制下,打開和關閉,從而實現對總體功耗的控制。
由於系統運行時打開的功能模塊不同,即採用不同的工作模式,晶元的功耗有著顯著的不同。在系統中共有一種活動模式( AM )和五種低功耗模式( LPM0~LPM4 )。在等待方式下,耗電為 0.7uA ,在節電方式下,最低可達 0.1uA 。
系統工作穩定 上電復位後,首先由 DCOCLK 啟動 CPU ,以保證程序從正確的位置開始執行,保證晶體振盪器有足夠的起振及穩定時間。然後軟體可設置適當的寄存器的控制位來確定最後的系統時鍾頻率。如果晶體振盪器在用做 CPU 時鍾 MCLK 時發生故障, DCO 會自動啟動,以保證系統正常工作;如果程序跑飛,可用看門狗將其復位。
豐富的片上外圍模塊 MSP430 系列單片機的各成員都集成了較豐富的片內外設。它們分別是看門狗( WDT )、模擬比較器 A 、定時器 A ( Timer_A )、定時器 B ( Timer_B )、串口 0 、 1 ( USART0 、 1 )、硬體乘法器、液晶驅動器、 10 位 /12 位 ADC 、 I 2 C 匯流排直接數據存取( DMA )、埠 O ( P0 )、埠 1~6 ( P1~P6 )、基本定時器( Basic Timer )等的一些外圍模塊的不同組合。其中,看門狗可以使程序失控時迅速復位;模擬比較器進行模擬電壓的比較,配合定時器,可設計出 A/D 轉換器; 16 位定時器( Timer_A 和 Timer_B )具有捕獲 / 比較功能,大量的捕獲 / 比較寄存器,可用於事件計數、時序發生、 PWM 等;有的器件更具有可實現非同步、同步及多址訪問串列通信介面可方便的實現多機通信等應用;具有較多的 I/O 埠,最多達 6*8 條 I/O 口線; P0 、 P1 、 P2 埠能夠接收外部上升沿或下降沿的中斷輸入; 12/14 位硬體 A/D 轉換器有較高的轉換速率,最高可達 200kbps ,能夠滿足大多數數據採集應用;能直接驅動液晶多達 160 段;實現兩路的 12 位 D/A 轉換;硬體 I 2 C 串列匯流排介面實現存儲器串列擴展;以及為了增加數據傳輸速度,而採用直接數據傳輸( DMA )模塊。 MSP430 系列單片機的這些片內外設為系統的單片解決方案提供了極大的方便。
方便高效的開發環境 目前 MSP430 系列有 OPT 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開發手段不同。對於 OPT 型和 ROM 型的器件是使用模擬器開發成功之後在燒寫或掩膜晶元;對於 FLASH 型則有十分方便的開發調試環境,因為器件片內有 JTAG 調試介面,還有可電擦寫的 FLASH 存儲器,因此採用先下載程序到 FLASH 內,再在器件內通過軟體控製程序的運行,由 JTAG 介面讀取片內信息供設計者調試使用的方法進行開發。這種方式只需要一台 PC 機和一個 JTAG 調試器,而不需要模擬器和編程器。開發語言有匯編語言和 C 語言。
MSP430 單片機目前主要以 FLASH 型為主。
(4)32-BIT 單片機
32 位單片機的字長為32 位,是單片機的頂級產品,具有極高的運算速度。近年來,隨著家用電子系統的新發展,32 位單片機的市場前景看好。
繼16 位單片機出現後不久,幾大公司先後推出了代表當前最高性能和技術水平的32 位單片微機系列。32 位單片機具有極高的集成度,內部採用新穎的RISC(精簡指令系統計算機)結構,CPU 可與其他微控制器兼容,主頻頻率可達33MHz 以上,指令系統進一步優化,運算速度可動態改變,設有高級語言編譯器,具有性能強大的中斷控制系統、定時/事件控制系統、同步/非同步通信控制系統。代表產品有Intel 公司的MCS-80960 系列、Motorola 公司的M68300 系列、Hitachi 公司的Super H(簡稱SH)系列等等。
這類單片機主要應用於汽車、航空航天、高級機器人、軍事裝備等方面。它代表著單片機發展中的高、新技術水平。
ARM在32位MCU中的主流地位是毫無疑問的。ARM公司於1991年成立於英國劍橋,主要出售晶元設計技術的授權。目前,採用ARM技術智能財產(IP)核心的處理器,即我們通常所說的ARM處理器,已遍及工業控制、消費類電子產品、通信系統、網路系統、無線系統等各類產品市場,基於ARM技術的處理器應用約占據了32位RISC微處理器75%以上的市場,ARM技術不止逐步滲入到我們生活的各個方面,我們甚至可以說,ARM於人類的生活環境中,已經是不可或缺的一環。
目前市面上常見的ARM處理器架構,可分為ARM7、ARM9以及ARM11,新推出的Cortex系列尚在進行開發驗證,市面上還未有相關產品推出。ARM也是嵌入式處理器中首先推出多核心架構的廠商。
ARM首個多核心架構為ARM11 MPCore,架構於原先的ARM11處理器核心之上。ARM11核心是發布於2002年10月份,為了進一步提升效能,其管線長度擴展到8階,處理單元則增加為預取、解碼、發送、轉換/MAC1、執行/MAC2、內存存取/MAC3和寫入等八個單元,體繫上屬於ARM V6指令集架構。ARM11採用當時最先進的0.13μm製造製程,運行頻率最高可達500到700MHz。如果採用90nm製程,ARM11核心的工作頻率能夠輕松達到1GHz以上—對於嵌入式處理器來說,這顯然是個相當驚人的程度,不過顯然1GHz在ARM11體系中不算是個均衡的設定,因此幾乎沒有廠商推出達到1GHz的ARM11架構處理器。
ARM11的邏輯核心也經過大量的改進,其中最重要的當屬「靜/動態組合轉換的預測功能」。ARM11的執行單元包含一個64位、4種狀態的地址轉換緩沖,它主要用來儲存最近使用過的轉換地址。當採用動態轉換預測機制而無法在定址緩沖內找到正確的地址時,靜態轉換預測功能就會立刻接替它的位置。在實際測試中,單純採用動態預測的准確率為88%,單純採用靜態預測機制的准確率只有77%,而ARM11的靜/動態預測組合機制可實現92%的高准確率。針對高時脈速度帶來功耗增加的問題,ARM11採用一項名為「IEM(Intelligent Energy Manager)」的智能電源管理技術,該技術可根據任務負荷情況動態調節處理器的電壓,進而有效降低自身的功耗。這一系列改進讓ARM11的功耗效能比得以繼續提高,平均每MHz只需消耗0.6mW(有快取時為0.8mW)的電力,處理器的最高效能可達到660 Dhrystone MIPS,遠超過上一代產品。
Ⅲ 按製造工藝分
① HMOS 工藝 高密度短溝道MOS 工藝,具有高速度、高密度的特點。
② CHMOS(或HCMOS)工藝 互補的金屬氧化物的HMOS 工藝,是CMOS 和HMOS 的結合,具有高密度、高速度、低功耗的特點。Intel 公司產品型號中若帶有字母「C」 ,Motorola 公司產品型號中若帶有字母「HC」或「L」 ,通常為CHMOS 工藝。

⑦ 判斷單片機是否加密--單片機高手請進

1.明顯是被加密,因為匯編指令是幾乎不可能這么從小到大的順序排列的。有的單片機加密的結果就是讀出的代碼全是0。

2.你從被加密的單片機中讀出的代碼已經不是原始代碼了,因為加密相當於隨機的打亂順序再從新排列,只有恢復最原始的排列,其代碼才有意義,所以你把加密後的代碼寫入另外一個單片機,肯定無法正常運行。

3.如果沒有被加密,讀出的代碼寫入另外一個同型號單片機是沒有問題的。至於反匯編,在你想徹底了解代碼的意思時才用的著,對於不同的單片機,匯編語言不同,反匯編的工具也就不一樣,看是什麼單片機了。

閱讀全文

與nxp單片機加密後能寫入嗎相關的資料

熱點內容
加密晶元的計算方法 瀏覽:185
手機存儲為什麼找不到微信文件夾 瀏覽:695
msf埠遷移命令 瀏覽:880
工商app積分怎麼查詢 瀏覽:143
鐵路app怎麼買火車票 瀏覽:309
移魅族除的app怎麼添加 瀏覽:240
兔籠子大號加密 瀏覽:171
單片機程序燒錄操作成功 瀏覽:878
指標高拋低吸點位源碼 瀏覽:205
25匹壓縮機銅管 瀏覽:570
單片機單燈左移05 瀏覽:150
買伺服器練手什麼配置 瀏覽:783
伺服器被毀該怎麼辦 瀏覽:939
python私有庫 瀏覽:514
Python有中文嗎 瀏覽:736
麥塊的伺服器為什麼都進不去 瀏覽:474
新買的伺服器如何打開 瀏覽:35
安卓軟體游戲怎麼開發 瀏覽:319
用撲克擺愛心解壓神器怎麼擺 瀏覽:70
松下製冷壓縮機 瀏覽:275