有關(guān)單片機(jī)的概念及學(xué)習(xí)應(yīng)用重要部分細(xì)解
三、 從經(jīng)典電子技術(shù)時代到現(xiàn)代電子技術(shù)時代
進(jìn)入20世紀(jì)80年代,世紀(jì)經(jīng)濟(jì)中最重要的變革是計算機(jī)的產(chǎn)業(yè)革命。而計算機(jī)產(chǎn)業(yè)革命的最重要標(biāo)志則是計算機(jī)嵌入式應(yīng)用的誕生。近代電子計算機(jī)是應(yīng)數(shù)值計算要求誕生的。在很長的時間內(nèi),電子計算機(jī)都是以發(fā)展海量數(shù)值計算為己任。但是電子計算機(jī)表現(xiàn)出的邏輯運算、處理、控制能力,吸引了電子控制領(lǐng)域的專家,他們要求發(fā)展能滿足控制對象要求,實現(xiàn)嵌入式應(yīng)用的計算機(jī)系統(tǒng)。如果將滿足海量數(shù)據(jù)處理的計算機(jī)系統(tǒng)稱為通用計算機(jī)系統(tǒng),那么則可把嵌入到對象體系(如艦船、飛機(jī)、機(jī)車等)中的計算機(jī)系統(tǒng)稱作嵌入式計算機(jī)。顯而易見,兩者的技術(shù)發(fā)展方向是不同的。前者要求海量數(shù)據(jù)存儲、吞吐、高速數(shù)據(jù)處理分析及傳輸;而后者要求在對象環(huán)境中可靠運行,對外部物理參數(shù)的高速采集、邏輯分析處理和對外部對象的快速控制等。早期人們將通用計算機(jī)加上數(shù)據(jù)采集單元、輸出驅(qū)動電路勉為其難地構(gòu)成一個熱處理爐的溫控系統(tǒng)。這樣的通用計算機(jī)系統(tǒng)不可能為大多數(shù)電子系統(tǒng)采用,而且要使通用計算機(jī)系統(tǒng)滿足嵌入式應(yīng)用要求,必然影響高速數(shù)值處理技術(shù)的發(fā)展。為了解決計算機(jī)技術(shù)發(fā)展的矛盾,在20世紀(jì)70年代,半導(dǎo)體專家另辟蹊徑,完全按照電子系統(tǒng)的計算機(jī)嵌入式應(yīng)用要求,將一個微型計算機(jī)的基本系統(tǒng)集成在一個芯片上,形成了早期的單片機(jī)(Single Chip Microcomputer)。單片機(jī)問世后,在計算機(jī)領(lǐng)域中開始出現(xiàn)了通用計算機(jī)系統(tǒng)和嵌入式系統(tǒng)的兩大分支。此后,無論是嵌入式系統(tǒng),還是通用計算機(jī)系統(tǒng)都得到了飛速的發(fā)展。
早期雖然有通用計算機(jī)改裝而成的嵌入式計算機(jī)系統(tǒng),而真正意義上的嵌入式系統(tǒng)始于單片機(jī)的出現(xiàn)。因為單片機(jī)是專門為嵌入式應(yīng)用設(shè)計的,單片機(jī)只能實現(xiàn)嵌入式應(yīng)用。單片機(jī)能最好地滿足嵌入式應(yīng)用的環(huán)境要求,例如,芯片級的物理空間、大規(guī)模集成電路的低價位、良好的外圍接口總線和突出控制功能的指令系統(tǒng)。
單片機(jī)有計算機(jī)系統(tǒng)內(nèi)核,嵌入到電子系統(tǒng)中,為電子系統(tǒng)智能化奠定了基礎(chǔ)。因此,當(dāng)前單片機(jī)在電子系統(tǒng)中的廣泛使用,使經(jīng)典電子系統(tǒng)迅速過渡到智能化的現(xiàn)代電子系統(tǒng)。
四、 單片機(jī)開創(chuàng)了現(xiàn)代電子系統(tǒng)時代
1?單片機(jī)與嵌入式系統(tǒng)
嵌入式系統(tǒng)源于計算機(jī)的嵌入式應(yīng)用,早期嵌入式系統(tǒng)為通用計算機(jī)經(jīng)改裝后嵌入到對象體系中的各種電子系統(tǒng),如艦船的自動駕駛儀,輪機(jī)監(jiān)測系統(tǒng)等。嵌入式系統(tǒng)首先是一個計算機(jī)系統(tǒng),其次它被嵌入到對象體系中、在對象體系中實現(xiàn)對象要求的數(shù)據(jù)采集、處理、狀態(tài)顯示、輸出控制等功能,由于嵌入在對象體系中,嵌入式系統(tǒng)的計算機(jī)沒有計算機(jī)的獨立形式及功能。單片機(jī)完全是按照嵌入式系統(tǒng)要求設(shè)計的,因此單片機(jī)是最典型的嵌入式系統(tǒng)。早期的單片機(jī)只是按嵌入式應(yīng)用技術(shù)要求設(shè)計的計算機(jī)單芯片集成,故名單片機(jī)。隨后,單片機(jī)為滿足嵌入式應(yīng)用要求不斷增強(qiáng)其控制功能與外圍接口功能,尤其是突出控制功能,因此國際上已將單片機(jī)正名為微控制器(MCU,Microcontroller Unit)。
2?單片機(jī)構(gòu)成的現(xiàn)代電子系統(tǒng)將成為主流電子系統(tǒng)
單片機(jī)是器件級計算機(jī)系統(tǒng),它可以嵌入到任何對象體系中去,實現(xiàn)智能化控制。小到微型機(jī)械,如手表、助聽器。集成器件級的低價位,低到幾元、十幾元,足以使單片機(jī)普及到許多民用家電、電子玩具中去。單片機(jī)構(gòu)成的現(xiàn)代電子系統(tǒng)已深入到各家各戶,正改變我們的生活,如家庭中的音響、電視機(jī)、洗衣機(jī)、微波爐、電話、防盜系統(tǒng)、空調(diào)機(jī)等。單片機(jī)革新了原有電子系統(tǒng),如微波爐采用單片機(jī)控制后,可方便地進(jìn)行時鐘設(shè)置、程序記憶、功率控制;空調(diào)機(jī)采用單片機(jī)后不但遙控參數(shù)設(shè)置方便,運行狀態(tài)自動變換,還可實現(xiàn)變頻控制。目前許多家用電器如VCD、DVD只有單片機(jī)出現(xiàn)后才可能實現(xiàn)其功能。
3?嵌入式系統(tǒng)帶動了整個電子產(chǎn)業(yè)
目前電子元器件產(chǎn)業(yè)除了微處理器、嵌入式系統(tǒng)器件外,大多是圍繞現(xiàn)代電子系統(tǒng)配套的元器件產(chǎn)業(yè),例如滿足人機(jī)交互用的按鍵,LED/LCD顯示驅(qū)動、LED/LCD顯示單元、語音集成器件等,滿足數(shù)據(jù)采集通道要求的數(shù)字傳感器、ADC、數(shù)據(jù)采集模塊、信號調(diào)理模塊等,滿足伺服驅(qū)動控制的DAC、固體繼電器、步進(jìn)電機(jī)控制器、變頻控制單元等,滿足通信要求的各種總線驅(qū)動器、電平轉(zhuǎn)換器等。
世界電子元器件在嵌入式系統(tǒng)帶動下,沿著充分滿足嵌入式應(yīng)用的現(xiàn)代電子系統(tǒng)要求發(fā)展。這就使原來經(jīng)典電子系統(tǒng)的天地愈來愈小。電子系統(tǒng)中的各類從業(yè)人員應(yīng)盡早轉(zhuǎn)向現(xiàn)代電子系統(tǒng)的康莊大道。
五、 單片機(jī)將造就新一代電子精英
如果說五十年代起,無線電世界造就了幾代精英,那么當(dāng)今的單片機(jī)世界將會造就出新一代電子精英。
1?單片機(jī)帶你進(jìn)入智能化電子領(lǐng)域
若將經(jīng)典電子系統(tǒng)當(dāng)作一個僵死的電子系統(tǒng),那么智能化的現(xiàn)代電子系統(tǒng)則是一個具有“生命”的電子系統(tǒng)。單片機(jī)應(yīng)用系統(tǒng)的硬件結(jié)構(gòu)給予電子系統(tǒng)“身軀”,單片機(jī)應(yīng)用系統(tǒng)的應(yīng)用程序賦予其“生命”。例如,在設(shè)計智能化儀器顯示器的顯示功能時,可在開機(jī)時顯示系統(tǒng)自檢結(jié)果,未進(jìn)入工作時顯示各種待機(jī)狀態(tài),儀器運行時顯示運行過程,工作結(jié)束后可顯示當(dāng)前結(jié)果、自檢結(jié)果、原始數(shù)據(jù)、各種處理報表等。在無人值守時,可給定各種自動運行功能。
電子系統(tǒng)的智能化為無止境境界,常常不需硬件資源的增添就能實現(xiàn)各種翻新功能。這也是當(dāng)前許多家用電器功能大量增設(shè)的因素之一。
2?單片機(jī)帶你進(jìn)入計算機(jī)工控領(lǐng)域
21世紀(jì)是全人類進(jìn)入計算機(jī)時代的世紀(jì),許多人不是在制造計算機(jī)便是在使用計算機(jī)。在使用計算機(jī)的人們中,只有從事嵌入式系統(tǒng)應(yīng)用的人才真正地進(jìn)入到計算機(jī)系統(tǒng)的內(nèi)部軟、硬件體系中,才能真正領(lǐng)會計算機(jī)的智能化本質(zhì)并掌握智能化設(shè)計的知識。從學(xué)習(xí)單片機(jī)應(yīng)用技術(shù)入手是當(dāng)今培養(yǎng)計算機(jī)應(yīng)用軟、硬件技術(shù)人才的最佳道路之一。
3?單片機(jī)帶你進(jìn)入最具魅力的電子世界
獨具魅力的單片機(jī)能使你體會到電腦的真諦,你可以用單片機(jī)親自動手設(shè)計智能玩具,可以設(shè)計不同的應(yīng)用程序?qū)崿F(xiàn)不同的功能。既有硬件制作又有軟件設(shè)計,既動腦、又動手。初級水平可開發(fā)智能玩具,用宏指令編程。中級水平可開發(fā)一些智能控制器,如電腦鼠、智能車、各種遙控模型。高級水平可開發(fā)機(jī)器人,如機(jī)器人足球賽,開發(fā)工業(yè)控制單元,網(wǎng)絡(luò)通信等,并用匯編語言或高級語言設(shè)計應(yīng)用程序。圍繞單片機(jī)及嵌入式系統(tǒng)形成的電子產(chǎn)業(yè)的未來,將會為電子愛好者提供廣闊的天地,一個比當(dāng)年無線電世界更廣闊、更豐富、更持久、更具魅力的電子世界。投身到單片機(jī)世界來,將使你一生受益。
單片機(jī)攻擊技術(shù)
目前,攻擊單片機(jī)主要有四種技術(shù),分別是:
(1)軟件攻擊
該技術(shù)通常使用處理器通信接口并利用協(xié)議、加密算法或這些算法中的安全漏洞來進(jìn)行攻擊。軟件攻擊取得成功的一個典型事例是對早期ATMEL AT89C 系列單片機(jī)的攻擊。攻擊者利用了該系列單片機(jī)擦除操作時序設(shè)計上的漏洞,使用自編程序在擦除加密鎖定位后,停止下一步擦除片內(nèi)程序存儲器數(shù)據(jù)的操作,從而使加過密的單片機(jī)變成沒加密的單片機(jī),然后利用編程器讀出片內(nèi)程序。
(2) 電子探測攻擊
該技術(shù)通常以高時間分辨率來監(jiān)控處理器在正常操作時所有電源和接口連接的模擬特性,并通過監(jiān)控它的電磁輻射特性來實施攻擊。因為單片機(jī)是一個活動的電子器件,當(dāng)它執(zhí)行不同的指令時,對應(yīng)的電源功率消耗也相應(yīng)變化。這樣通過使用特殊的電子測量儀器和數(shù)學(xué)統(tǒng)計方法分析和檢測這些變化,即可獲取單片機(jī)中的特定關(guān)鍵信息。
(3)過錯產(chǎn)生技術(shù)
該技術(shù)使用異常工作條件來使處理器出錯,然后提供額外的訪問來進(jìn)行攻擊。使用最廣泛的過錯產(chǎn)生攻擊手段包括電壓沖擊和時鐘沖擊。低電壓和高電壓攻擊可用來禁止保護(hù)電路工作或強(qiáng)制處理器執(zhí)行錯誤操作。時鐘瞬態(tài)跳變也許會復(fù)位保護(hù)電路而不會破壞受保護(hù)信息。單片機(jī)和時鐘瞬態(tài)跳變可以在某些處理器中影響單條指令的解碼和執(zhí)行。
(4)探針技術(shù)
該技術(shù)是直接暴露芯片內(nèi)部連線,然后觀察、操控、干擾半導(dǎo)體以達(dá)到攻擊目的。為了方便起見,人們將以上四種攻擊技術(shù)分成兩類,一類是侵入型攻擊(物理攻擊),這類攻擊需要破壞封裝,然后借助電源測試設(shè)備、顯微鏡和微定位器,在專門的實驗室花上幾小時甚至幾周時間才能完成。所有的微探針技術(shù)都屬于侵入型攻擊。另外三種方法屬于非侵入型攻擊,被攻擊的單片機(jī)不會被物理損壞。在某些場合非侵入型攻擊是特別危險的,這是因為非侵入型攻擊所需設(shè)備通常可以自制和升級,因此非常廉價。
大部分非侵入型攻擊需要攻擊者具備良好的處理器知識和軟件知識。與之相反,侵入型的探針攻擊則不需要太多的初始知識,而且通??捎靡徽紫嗨频募夹g(shù)對付寬范圍的產(chǎn)品。
單片機(jī)侵入型攻擊的一般過程
侵入型攻擊的第一步是揭去芯片封裝。有兩種方法可以達(dá)到這一目的:第一種是完全溶解掉芯片封裝,暴露金屬連線。第二種是只移掉硅核上面的塑料封裝。第一種方法需要將芯片綁定到測試夾具上,借助綁定臺來操作。第二種方法除了需要具備攻擊者一定的知識和必要的技能外,還需要個人的智慧和耐心,但操作起來相對比較方便。
芯片上面的塑料可以用小刀揭開,芯片周圍的環(huán)氧樹脂可以用濃硝酸腐蝕掉。熱的濃硝酸會溶解掉芯片封裝而不會影響芯片及連線。該過程一般在非常干燥的條件下進(jìn)行,因為水的存在可能會侵蝕已暴露的鋁線連接。
接著在超聲池里先用丙酮清洗該芯片以除去殘余硝酸,然后用清水清洗以除去鹽分并干燥。沒有超聲池,一般就跳過這一步。這種情況下,芯片表面會有點臟,但是不太影響紫外光對芯片的操作效果。最后一步是尋找保護(hù)熔絲的位置并將保護(hù)熔絲暴露在紫外光下。一般用一臺放大倍數(shù)至少100倍的顯微鏡,從編程電壓輸入腳的連線跟蹤進(jìn)去,來尋找保護(hù)熔絲。若沒有顯微鏡,則采用將芯片的不同部分暴露到紫外光下并觀察結(jié)果的方式進(jìn)行簡單的搜索。操作時應(yīng)用不透明的紙片覆蓋芯片以保護(hù)程序存儲器不被紫外光擦除。將保護(hù)熔絲暴露在紫外光下5~10分鐘就能破壞掉保護(hù)位的保護(hù)作用,之后,使用簡單的編程器就可直接讀出程序存儲器的內(nèi)容。
對于使用了防護(hù)層來保護(hù)EEPROM單元的單片機(jī)來說,使用紫外光復(fù)位保護(hù)電路是不可行的。對于這種類型的單片機(jī),一般使用微探針技術(shù)來讀取存儲器內(nèi)容。在芯片封裝打開后,將芯片置于顯微鏡下就能夠很容易的找到從存儲器連到電路其它部分的數(shù)據(jù)總線。
由于某種原因,芯片鎖定位在編程模式下并不鎖定對存儲器的訪問。利用這一缺陷將探針放在數(shù)據(jù)線的上面就能讀到所有想要的數(shù)據(jù)。在編程模式下,重啟讀過程并連接探針到另外的數(shù)據(jù)線上就可以讀出程序和數(shù)據(jù)存儲器中的所有信息。
還有一種可能的攻擊手段是借助顯微鏡和激光切割機(jī)等設(shè)備來尋找保護(hù)熔絲,從而尋查和這部分電路相聯(lián)系的所有信號線。由于設(shè)計有缺陷,因此,只要切斷從保護(hù)熔絲到其它電路的某一根信號線,就能禁止整個保護(hù)功能。由于某種原因,這根線離其它的線非常遠(yuǎn),所以使用激光切割機(jī)完全可以切斷這根線而不影響臨近線。這樣,使用簡單的編程器就能直接讀出程序存儲器的內(nèi)容。
雖然大多數(shù)普通單片機(jī)都具有熔絲燒斷保護(hù)單片機(jī)內(nèi)代碼的功能,但由于通用低檔的單片機(jī)并非定位于制作安全類產(chǎn)品,因此,它們往往沒有提供有針對性的防范措施且安全級別較低。加上單片機(jī)應(yīng)用場合廣泛,銷售量大,廠商間委托加工與技術(shù)轉(zhuǎn)讓頻繁,大量技術(shù)資料外瀉,使得利用該類芯片的設(shè)計漏洞和廠商的測試接口,并通過修改熔絲保護(hù)位等侵入型攻擊或非侵入型攻擊手段來讀取單片機(jī)的內(nèi)部程序變得比較容易。
評論