|
STM32介紹以及與通常ARM的區別
ARM是英國的芯片設計公司,其最成功的莫過(guò)于32位嵌入式CPU核----ARM系列,最常用的是ARM7和ARM9,ARM公司主要提供IP核,就是CPU的內核結構,只包括最核心的部分,并不是完整的處理器. ARM把這個(gè)核賣(mài)給各大半導體公司,如 Pllips 三星 ,ATMEL 等等,許多公司,甚至Intel.
ARM為了對付 8位機市場(chǎng),最近推出了 Cortex-M3核,STM32就是意大利的意法半導體基于Cortex-M3的32位嵌入式處理器,Cortex_M3核 性?xún)r(jià)比更高,價(jià)格低,可以與8位單片機競爭
ARM Cortex-M3 處理器初探
單片機市場(chǎng)的規?梢杂谩熬逕o(wú)霸”來(lái)形容,預計到2010時(shí)每年能有20G片的出貨量。世界各地的器件供應商紛紛亮出自己的得意之作,他們提供的器件和架構也是各具特色。業(yè)界內部可謂是百花齊放,熱鬧非凡,好戲不斷。各行各業(yè)對單片機能力的要求也一直“得寸進(jìn)尺”,而且還又要馬兒跑,又要馬兒不吃草——處理器必須在不怎么增加主頻和功耗的條件下干更多的活兒。 另一方面, 處理器之間的互連也在加深, 看這一串串熟悉的字眼: 串口,USB,以太網(wǎng),無(wú)線(xiàn)數傳……處理器如欲支持這些數據通道,就必須在片上塞進(jìn)更多的外設。軟件方面的情況也如出一轍:應用程序的功能一直在花樣翻新,性能需求也是變本加厲:更高的運算速度,更硬的實(shí)時(shí)能力,更多的功能模塊,更炫的圖形界面,……所有這些要求單片機都得照單全收。在這個(gè)大環(huán)境下,ARM Cortex‐M3處理器,作為Cortex系列的處女作,為了讓32位處理器入主作莊單片機市場(chǎng),轟轟烈烈地誕生了!由于采用了最新的設計技術(shù),它的門(mén)數更低,性能卻更強。許多曾經(jīng)只能求助于高級32位處理器或DSP的軟件設計,都能在M3上跑得很快很歡。相信用不了多久,M3就一定能在32位嵌入式處理器市場(chǎng)中脫穎而出,像當年8051推動(dòng)整個(gè)業(yè)界那樣,再次放飛設計師的夢(mèng)想,實(shí)現多年的夙愿!
M3的招牌功夫包括:
1 性能強勁。在相同的主頻下能做處理更多的任務(wù),全力支持勁爆的程序設計。
2 功耗低。延長(cháng)了電池的壽命——這簡(jiǎn)直就是便攜式設備的命門(mén)(如無(wú)線(xiàn)網(wǎng)絡(luò )應用)。
3 實(shí)時(shí)性好。采用了很前衛甚至革命性的設計理念,使它能極速地響應中斷,而且響應中斷所需的周期數是確定的。
4 代碼密度得到很大改善。一方面力挺大型應用程序,另一方面為低成本設計而省吃?xún)用。
5 使用更方便,F在從8位/16位處理器轉到32位處理器之風(fēng)刮得越來(lái)越猛,更簡(jiǎn)單的編程模型和更透徹的調試系統,為與時(shí)俱進(jìn)的人們大大減負。 更多的技術(shù)交流請加2269819323 了解更多www.edu118.com
6 低成本的整體解決方案。讓32位系統比和8位/16位的還便宜,低端的Cortex‐M3單片機甚至還賣(mài)不到1美元。
7 遍地開(kāi)花的優(yōu)秀開(kāi)發(fā)工具。免費的,便宜的,全能的,要什么有什么。
降低成本還有一招,就是使基礎代碼在所有系統中都可以重用,至少要方便移植。CMA的內核架構非常精工細作,使它與C語(yǔ)言成為了一個(gè)夢(mèng)幻絕配。優(yōu)質(zhì)的C程序代碼三下五除二就可以移植并重用,使升級和移植一下子從攔路虎變成了紙老虎。
值得一提的是,M3并不是第一個(gè)被拿去做萬(wàn)金油型處理器的內核。那廉頗雖老卻依然驍勇的ARM7/ARM9處理器,在通用嵌入式處理器市場(chǎng)中德高望重,至今擁有無(wú)數鐵桿粉絲。半導體業(yè)界的群英們,像NXP(philips)、TI、Atmel、OKI、ST等,都以ARM為內核,做出了各自身懷絕技的32位MCU。ARM7作為最受歡迎的32位嵌入式處理器,被載入了亮煌煌的幾頁(yè)史冊——每年超過(guò)10億片出貨量,為各行各業(yè)的嵌入式設備中都找得到它們的身影。
M3作為ARM7的后繼者,大刀闊斧地改革了設計架構。從而顯著(zhù)地簡(jiǎn)化了編程和調試的復雜度,處理能力也更加強大。除此之外,CM3還突破性地引入了很多時(shí)尚的甚至嶄新的技術(shù),專(zhuān)門(mén)滿(mǎn)足單片機應用程序的需求。比如,服務(wù)于“使命‐關(guān)鍵”應用的不可屏蔽中斷,極度敏捷并且擁有確定性的嵌套向量中斷系統,原子性質(zhì)的位操作,還有一個(gè)可選的內存保護單元。這些令人驚艷和振奮的新特性,讓老的ARM玩家們再次找到“初戀”時(shí)烈焰迸發(fā)的感覺(jué),也使萍水相逢就有激爽觸電般的體驗!相信讀者一旦有機會(huì )用到了它,就會(huì )為它的秀外慧中而贊嘆,愛(ài)不釋手!
Cortex-M3 處理器內核 vs. 基于Cortex-M3的MCU
Cortex‐M3處理器內核是單片機的中央處理單元(CPU)。完整的基于CM3的MCU還需要很多其它組件。在芯片制造商得到CM3處理器內核的使用授權后,它們就可以把CM3內核用在自己的硅片設計中,添加存儲器,外設,I/O以及其它功能塊。不同廠(chǎng)家設計出的單片機會(huì )有不同的配置,包括存儲器容量、類(lèi)型、外設等都各具特色。本書(shū)主講處理器內核本身。如果想要了解某個(gè)具體型號的處理器,還需查閱相關(guān)廠(chǎng)家提供的文檔。
一路走來(lái)
讓我們回頓一下ARM的進(jìn)化史,你會(huì )知道為什么會(huì )有品種如此之多的ARM處理器和ARM架構。ARM在1990年成立,當初的名字是“Advanced RISC Machines Ltd.,”,當時(shí)它是三家公司的合資——它們分別是蘋(píng)果電腦,Acorn電腦公司,以及VLSI技術(shù)(公司)。在1991年,ARM推出了ARM6處理器家族,VLSI則是第一個(gè)吃螃蟹的人。后來(lái),陸續有其它巨頭:包括TI, NEC, Sharp, ST等,都獲取了ARM授權,它們真正地把ARM處理器大面積地輔開(kāi),使得ARM處理器在手機,硬盤(pán)控制器,PDA,家庭娛樂(lè )系統以及其它消費電子中都大展雄才。
現如今,ARM芯片的出貨量每年都比上一年多20億片以上。不像很多其它的半導體公司,ARM從不制造和銷(xiāo)售具體的處理器芯片。取而代之的,是ARM把處理器的設計授權給相關(guān)的商務(wù)合作伙伴,讓他們去根據自己的強項設計具體的芯片,這些伙伴可都是巨頭啊;贏(yíng)RM低成本和高效的處理器設計方案,得到授權的廠(chǎng)商生產(chǎn)了多種多樣的的處理器、單片機以及片上系統(SoC)。這種商業(yè)模式就是所謂的“知識產(chǎn)權授權”。
除了設計處理器,ARM也設計系統級IP和軟件IP。為了挺它們,ARM開(kāi)發(fā)了許多配套的基礎開(kāi)發(fā)工具、硬件以及軟件產(chǎn)品。使用這些工具,合作伙伴可以更加舒心地開(kāi)發(fā)他們自己的產(chǎn)品。
ARM的各種架構版本 更多的技術(shù)交流請加2269819323 了解更多www.edu118.com
ARM十幾年如一日地開(kāi)發(fā)新的處理器內核和系統功能塊。這些包括流行的ARM7TDMI處理器,還有更新的高檔產(chǎn)品ARM1176TZ(F)‐S處理器,后者能拿去做高檔手機。功能的不斷進(jìn)化,處理水平的持續提高,年深日久造就了一系列的ARM架構。要說(shuō)明的是,架構版本號和名字中的數字并不是一碼事。比如,ARM7TDMI是基于A(yíng)RMv4T架構的(T表示支持“Thumb指令”); ARMv5TE架構則是伴隨著(zhù)ARM9E處理器家族亮相的。 ARM9E家族成員包括ARM926E‐S和ARM946E‐S。ARMv5TE架構添加了“服務(wù)于多媒體應用增強的DSP指令”。 后來(lái)又出了ARM11,ARM11是基于A(yíng)RMv6架構建成的;贏(yíng)RMv6架構的處理器包括ARM1136J(F)‐S,ARM1156T2(F)‐S,以及ARM1176JZ(F)‐S。ARMv6是ARM進(jìn)化史上的一個(gè)重要里程碑:從那時(shí)候起,許多突破性的新技術(shù)被引進(jìn),存儲器系統加入了很多的嶄新的特性,單指令流多數據(SIMD)指令也是從v6開(kāi)始首次引入的。而最前衛的新技術(shù),就是經(jīng)過(guò)優(yōu)化的Thumb‐2指令集,它專(zhuān)為低成本的單片機及汽車(chē)組件市場(chǎng)。
ARMv6的設計中還有另一個(gè)重大的決定:雖然這個(gè)架構要能上能下,從最低端的MCU到最高端的“應用處理器”都通吃,但不能因此就這也會(huì ),那也會(huì ),但就是都不精。仍須定位準確,使處理器的架構能勝任每個(gè)應用領(lǐng)域。結果就是,要使ARMv6能夠靈活地配置和剪裁。對于成本敏感市場(chǎng),要設計一個(gè)低門(mén)數的架構,讓她有極強的確定性;另一方面,在高端市場(chǎng)上,不管是要有豐富功能的還是要有高性能的,都要有拿得出手的好東西。
最近的幾年,基于從ARMv6開(kāi)始的新設計理念,ARM進(jìn)一步擴展了它的CPU設計,成果就是ARMv7架構的閃亮登場(chǎng)。在這個(gè)版本中,內核架構首次從單一款式變成3種款式。
1 款式A:設計用于高性能的“開(kāi)放應用平臺”——越來(lái)越接近電腦了
2 款式R:用于高端的嵌入式系統,尤其是那些帶有實(shí)時(shí)要求的——又要快又要實(shí)時(shí)。
3 款式M:用于深度嵌入的,單片機風(fēng)格的系統中——本書(shū)的主角。 讓我們再進(jìn)距離地考察這3種款式:
1 款式A(ARMv7‐A):需要運行復雜應用程序的“應用處理器”支持大型嵌入式操作系統(不一定實(shí)時(shí)——譯注),比如Symbian(諾基亞智能手機用),Linux,以及微軟的Windows CE和智能手機操作系統Windows Mobile。這些應用需要勁爆的處理性能,并且需要硬件MMU實(shí)現的完整而強大的虛擬內存機制,還基本上會(huì )配有Java支持,有時(shí)還要求一個(gè)安全程序執行環(huán)境(用于電子商務(wù)——譯注)。典型的產(chǎn)品包括高端手機和手持儀器,電子錢(qián)包以及金融事務(wù)處理機。
2 款式R(ARMv7‐R):硬實(shí)時(shí)且高性能的處理器。標的是高端實(shí)時(shí)市場(chǎng)。那些高級的玩意,像高檔轎車(chē)的組件,大型發(fā)電機控制器,機器手臂控制器等,它們使用的處理器不但要很好很強大,還要極其可靠,對事件的反應也要極其敏捷。
3 款式M(ARMv7‐M):認準了舊世代單片機的應用而量身定制。在這些應用中,尤其是對于實(shí)時(shí)控制系統,低成本、低功耗、極速中斷反應以及高處理效率,都是至關(guān)重要的。
Cortex系列是v7架構的第一次亮相,其中Cortex‐M3就是按款式M設計的。 到目前為止,Cortex‐M3也是款式M中被撫養成人的獨苗。
更多的技術(shù)交流請加2269819323 了解更多www.edu118.com
|
|