ARM基礎(chǔ)知識(shí)教程(一):ARM簡介
ARM將其技術(shù)授權(quán)給世界上許多著名的半導(dǎo)體、軟件和OEM廠商,每個(gè)廠商得到的都是一套獨(dú)一無二的ARM相關(guān)技術(shù)及服務(wù)。利用這種合伙關(guān)系,ARM很快成為許多全球性RISC標(biāo)準(zhǔn)的締造者。
目前,總共有30家半導(dǎo)體公司與ARM簽訂了硬件技術(shù)使用許可協(xié)議,其中包括Intel、IBM、LG半導(dǎo)體、NEC、SONY、菲利浦和國民半導(dǎo)體這樣的大公司。至于軟件系統(tǒng)的合伙人,則包括微軟、升陽和MRI等一系列知名公司。
ARM架構(gòu)是面向低預(yù)算市場設(shè)計(jì)的第一款RISC微處理器。
2.產(chǎn)品介紹
ARM提供一系列內(nèi)核、體系擴(kuò)展、微處理器和系統(tǒng)芯片方案。
由于所有產(chǎn)品均采用一個(gè)通用的軟件體系,所以相同的軟件可在所有產(chǎn)品中運(yùn)行(理論上如此)。典型的產(chǎn)品如下。
(1)CPU內(nèi)核
--ARM7:小型、快速、低能耗、集成式RISC內(nèi)核,用于移動(dòng)通信。
-- ARM7TDMI(Thumb):這是公司授權(quán)用戶最多的一項(xiàng)產(chǎn)品,將ARM7指令集同Thumb擴(kuò)展組合在一起,以減少內(nèi)存容量和系統(tǒng)成本。
同時(shí),它還利用嵌入式ICE調(diào)試技術(shù)來簡化系統(tǒng)設(shè)計(jì),并用一個(gè)DSP增強(qiáng)擴(kuò)展來改進(jìn)性能。該產(chǎn)品的典型用途是數(shù)字蜂窩電話和硬盤驅(qū)動(dòng)器。
--ARM9TDMI:采用5階段管道化ARM9內(nèi)核,同時(shí)配備Thumb擴(kuò)展、調(diào)試和Harvard總線。在生產(chǎn)工藝相同的情況下,性能可達(dá)ARM7TDMI的兩倍之多。常用于連網(wǎng)和頂置盒。
(2)體系擴(kuò)展
-- Thumb:以16位系統(tǒng)的成本,提供32位RISC性能,特別注意的是它所需的內(nèi)存容量非常小。
(3)嵌入式ICE調(diào)試
由于集成了類似于ICE的CPU內(nèi)核調(diào)試技術(shù),所以原型設(shè)計(jì)和系統(tǒng)芯片的調(diào)試得到了極大的簡化。
(4)微處理器
--ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低價(jià)、低能耗、封裝式常規(guī)系統(tǒng)微型處理器,配有高速緩存
(Cache)、內(nèi)存管理、寫緩沖和JTAG。廣泛應(yīng)用于手持式計(jì)算、數(shù)據(jù)通信和消費(fèi)類多媒體。
--ARM940T、920T系列:低價(jià)、低能耗、高性能系統(tǒng)微處理器,配有Cache、內(nèi)存管理和寫緩沖。應(yīng)用于高級(jí)引擎管理、保安系統(tǒng)、頂置盒、便攜計(jì)算機(jī)和高檔打印機(jī)。
--StrongARM:性能很高、同時(shí)滿足常規(guī)應(yīng)用需要的一種微處理器技術(shù),與DEC聯(lián)合研制,后來授權(quán)給Intel。SA110處理器、SA1100 PDA系統(tǒng)芯片和SA1500多媒體處理器芯片均采用了這一技術(shù)。
--ARM7500和ARM7500FE:高度集成的單芯片RISC計(jì)算機(jī),基于一個(gè)緩存式ARM7 32位內(nèi)核,擁有內(nèi)存和I/O控制器、3個(gè)DMA通道、片上視頻控制器和調(diào)色板以及立體聲端口;ARM7500FE則增加了一個(gè)浮點(diǎn)運(yùn)算單元以及對(duì)EDO DRAM的支持。特別適合電視頂置盒和網(wǎng)絡(luò)計(jì)算機(jī)(NC)。
Windows CE的Pocket PC只支持ARMWindows CE可支持多種嵌入式處理器,但基于Windows CE的Pocket PC則只支持ARM一種。微軟在對(duì)SH3、MIPS、ARM等嵌入式處理器做了評(píng)估后認(rèn)為,ARM是一種性價(jià)比較好的選擇。由于目前ARM在手持設(shè)備市場占有90%以上的份額,只支持ARM,可以有效地縮短應(yīng)用程序開發(fā)與測試的時(shí)間,也降低了研發(fā)費(fèi)用。由于ARM開放其處理器授權(quán),因此,用戶在市場上可以在多家整機(jī)廠商中進(jìn)行選擇,從而保證了這一市場的競爭性。
ARM結(jié)構(gòu)簡介
ARM系列是英國先進(jìn)RISC機(jī)器公司(Advanced RISC Machines,ARM)公司的產(chǎn)品[1]。第一個(gè)基于RISC指令集的ARM芯片是在1985年開始設(shè)計(jì)的,采用的是典型的32位RISC體系結(jié)構(gòu),其指令擁有4位的寄存器地址域,可以訪問R0-R15這16個(gè)寄存器。而其他的寄存器只有在特殊的情況下才可以訪問到。ARM使用了標(biāo)準(zhǔn)的、固定長度的32位指令格式,所有的ARM指令使用了4位的條件碼來決定該指令是否應(yīng)當(dāng)執(zhí)行,這種方式可以解決一些條件分支的問題,從而對(duì)代碼的密度和性能都有好處.
由于體系結(jié)構(gòu)設(shè)計(jì)以及器件技術(shù)上的特點(diǎn),使得ARM處理器可以與一些復(fù)雜得多的微處理器相抗衡,特別是在需要很少能耗的嵌入式處理場合。
1990年,ARM公司成立了。在ARM7中,將ARM體系結(jié)構(gòu)完全擴(kuò)展到32位(原來的ARM處理器只有26位的地址空間),并將主頻提升到40MHz,另外還集成了一個(gè)8KB的Cache。比較有趣的是,ARM7可以支持一種稱為"Thumb"的模式,可以運(yùn)行新的16位指令。這主要是通過在ARM7芯片的指令預(yù)取階段增加一個(gè)硬件,完成Thumb指令到正常的32位RISC指令的轉(zhuǎn)換來達(dá)到目的的。通過引入Thumb模式,只需要付出很少的硬件代價(jià),就可以將代碼的密度提升大約25%-35%,并使得應(yīng)用的運(yùn)行更為迅速。
1995年,ARM、Apple、DEC公司聯(lián)合聲明將開發(fā)一種用于PDA的高性能、低功耗的微處理器,主要是基于ARM體系結(jié)構(gòu)的。DEC將自己在MPU設(shè)計(jì)上的優(yōu)勢帶入ARM芯片設(shè)計(jì)中。一年后,StrongARM SA-110問世了,并成為嵌入式微處理器設(shè)計(jì)的一個(gè)里程碑。
StrongARM SA-110可以工作在200MHz,而能耗不到1瓦。在體系結(jié)構(gòu)上,
StrongARM將原來ARM中的三級(jí)流水線擴(kuò)展到五級(jí),在器件工藝上,大量采用了最新的體系結(jié)構(gòu)和器件技術(shù),大大降低了芯片工作時(shí)的能耗。
StrongARM的出現(xiàn)并不是ARM發(fā)展歷程上的唯一分支。1996年,ARM8發(fā)布了,采用同樣的五級(jí)流水線,并在72MHz條件下,達(dá)到了84MIPS的指標(biāo)。而在1997年,ARM9內(nèi)核采用了與StrongARM相同的五級(jí)流水線。ARM9TDMI在0.25um工藝條件下,可以在200MHz達(dá)到220MIPS的性能。ARM9的另外一個(gè)版本ARM9E對(duì)SIMD做了增強(qiáng),包括8位和16位SIMD加法和減法,16位和32位乘法,以及相應(yīng)的算術(shù)操作等.
1997年,Intel接管了StrongARM,并開發(fā)了幾個(gè)后續(xù)產(chǎn)品。1998年,Intel開始用0.18um工藝生產(chǎn)StrongARM處理器。在1999年度嵌入式微處理器論壇上,Intel宣布將在其第二代StrongARM中采用7級(jí)流水線,并在0.18um工藝條件下,達(dá)到600MHz的速度,而能耗將僅僅為不到0.5瓦,同時(shí),將新的微處理器命名為StrongARM Xscale[8]。
ARM9EJ是ARM9E在Java支持上的增強(qiáng)版本。它采用了類似Thumb的機(jī)制,通過很少的硬件代價(jià),使大多數(shù)Java虛擬機(jī)字節(jié)碼可以加速執(zhí)行,更為復(fù)雜的Java虛擬機(jī)字節(jié)碼可以通過軟件的方式執(zhí)行。這樣,使得Java虛擬機(jī)字節(jié)碼的執(zhí)行速度提升了大約8倍左右。這對(duì)于嵌入式場合的Java應(yīng)用無疑是極其有效的。
ARM的成功在于它極高的性能以及極低的能耗,使得它能夠與高端的MIPS和PowerPC嵌入式微處理器相抗衡。另外,根據(jù)市場需要進(jìn)行功能的擴(kuò)展,也是ARM取得成功的一個(gè)重要因素。隨著更多廠商的支持和加入,可以預(yù)見,在將來一段時(shí)間之內(nèi),ARM仍將主宰32位嵌入式微處理器市場。
ARM取得了極大的成功,世界上幾乎所有主要的半導(dǎo)體廠商都從ARM公司購買ARM ISA許可。目前ARM系列芯片已經(jīng)被廣泛的應(yīng)用于移動(dòng)電話、手持式計(jì)算機(jī)以及各種各樣的嵌入式應(yīng)用領(lǐng)域,成為世界上銷量最大的32位微處理器。
最新的市場調(diào)查表明,ARM占據(jù)了整個(gè)32位嵌入式微處理器市場的90%。
ARM(Advanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計(jì)了大量高性能、廉價(jià)、耗能低的RISC處理器、相關(guān)技術(shù)及軟件。技術(shù)具有性能高、成本低和能耗省的特點(diǎn)。適用于多種領(lǐng)域,比如嵌入控制、消費(fèi)/教育類多媒體、DSP和移動(dòng)式應(yīng)用等。
ARM將其技術(shù)授權(quán)給世界上許多著名的半導(dǎo)體、軟件和OEM廠商,每個(gè)廠商得到的都是一套獨(dú)一無二的ARM相關(guān)技術(shù)及服務(wù)。利用這種合伙關(guān)系,ARM很快成為許多全球性RISC標(biāo)準(zhǔn)的締造者。
目前,總共有30家半導(dǎo)體公司與ARM簽訂了硬件技術(shù)使用許可協(xié)議,其中包括Intel、IBM、LG半導(dǎo)體、NEC、SONY、菲利浦和國民半導(dǎo)體這樣的大公司。至于軟件系統(tǒng)的合伙人,則包括微軟、升陽和MRI等一系列知名公司。
ARM架構(gòu)是面向低預(yù)算市場設(shè)計(jì)的第一款RISC微處理器。
2.產(chǎn)品介紹
ARM提供一系列內(nèi)核、體系擴(kuò)展、微處理器和系統(tǒng)芯片方案。
由于所有產(chǎn)品均采用一個(gè)通用的軟件體系,所以相同的軟件可在所有產(chǎn)品中運(yùn)行(理論上如此)。典型的產(chǎn)品如下。
(1)CPU內(nèi)核
--ARM7:小型、快速、低能耗、集成式RISC內(nèi)核,用于移動(dòng)通信。
-- ARM7TDMI(Thumb):這是公司授權(quán)用戶最多的一項(xiàng)產(chǎn)品,將ARM7指令集同Thumb擴(kuò)展組合在一起,以減少內(nèi)存容量和系統(tǒng)成本。
同時(shí),它還利用嵌入式ICE調(diào)試技術(shù)來簡化系統(tǒng)設(shè)計(jì),并用一個(gè)DSP增強(qiáng)擴(kuò)展來改進(jìn)性能。該產(chǎn)品的典型用途是數(shù)字蜂窩電話和硬盤驅(qū)動(dòng)器。
--ARM9TDMI:采用5階段管道化ARM9內(nèi)核,同時(shí)配備Thumb擴(kuò)展、調(diào)試和Harvard總線。在生產(chǎn)工藝相同的情況下,性能可達(dá)ARM7TDMI的兩倍之多。常用于連網(wǎng)和頂置盒。
(2)體系擴(kuò)展
-- Thumb:以16位系統(tǒng)的成本,提供32位RISC性能,特別注意的是它所需的內(nèi)存容量非常小。
(3)嵌入式ICE調(diào)試
由于集成了類似于ICE的CPU內(nèi)核調(diào)試技術(shù),所以原型設(shè)計(jì)和系統(tǒng)芯片的調(diào)試得到了極大的簡化。
(4)微處理器
--ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低價(jià)、低能耗、封裝式常規(guī)系統(tǒng)微型處理器,配有高速緩存
(Cache)、內(nèi)存管理、寫緩沖和JTAG。廣泛應(yīng)用于手持式計(jì)算、數(shù)據(jù)通信和消費(fèi)類多媒體。
--ARM940T、920T系列:低價(jià)、低能耗、高性能系統(tǒng)微處理器,配有Cache、內(nèi)存管理和寫緩沖。應(yīng)用于高級(jí)引擎管理、保安系統(tǒng)、頂置盒、便攜計(jì)算機(jī)和高檔打印機(jī)。
--StrongARM:性能很高、同時(shí)滿足常規(guī)應(yīng)用需要的一種微處理器技術(shù),與DEC聯(lián)合研制,后來授權(quán)給Intel。SA110處理器、SA1100 PDA系統(tǒng)芯片和SA1500多媒體處理器芯片均采用了這一技術(shù)。
--ARM7500和ARM7500FE:高度集成的單芯片RISC計(jì)算機(jī),基于一個(gè)緩存式ARM7 32位內(nèi)核,擁有內(nèi)存和I/O控制器、3個(gè)DMA通道、片上視頻控制器和調(diào)色板以及立體聲端口;ARM7500FE則增加了一個(gè)浮點(diǎn)運(yùn)算單元以及對(duì)EDO DRAM的支持。特別適合電視頂置盒和網(wǎng)絡(luò)計(jì)算機(jī)(NC)。
Windows CE的Pocket PC只支持ARMWindows CE可支持多種嵌入式處理器,但基于Windows CE的Pocket PC則只支持ARM一種。微軟在對(duì)SH3、MIPS、ARM等嵌入式處理器做了評(píng)估后認(rèn)為,ARM是一種性價(jià)比較好的選擇。由于目前ARM在手持設(shè)備市場占有90%以上的份額,只支持ARM,可以有效地縮短應(yīng)用程序開發(fā)與測試的時(shí)間,也降低了研發(fā)費(fèi)用。由于ARM開放其處理器授權(quán),因此,用戶在市場上可以在多家整機(jī)廠商中進(jìn)行選擇,從而保證了這一市場的競爭性。
ARM結(jié)構(gòu)簡介
ARM系列是英國先進(jìn)RISC機(jī)器公司(Advanced RISC Machines,ARM)公司的產(chǎn)品[1]。第一個(gè)基于RISC指令集的ARM芯片是在1985年開始設(shè)計(jì)的,采用的是典型的32位RISC體系結(jié)構(gòu),其指令擁有4位的寄存器地址域,可以訪問R0-R15這16個(gè)寄存器。而其他的寄存器只有在特殊的情況下才可以訪問到。ARM使用了標(biāo)準(zhǔn)的、固定長度的32位指令格式,所有的ARM指令使用了4位的條件碼來決定該指令是否應(yīng)當(dāng)執(zhí)行,這種方式可以解決一些條件分支的問題,從而對(duì)代碼的密度和性能都有好處.
由于體系結(jié)構(gòu)設(shè)計(jì)以及器件技術(shù)上的特點(diǎn),使得ARM處理器可以與一些復(fù)雜得多的微處理器相抗衡,特別是在需要很少能耗的嵌入式處理場合。
1990年,ARM公司成立了。在ARM7中,將ARM體系結(jié)構(gòu)完全擴(kuò)展到32位(原來的ARM處理器只有26位的地址空間),并將主頻提升到40MHz,另外還集成了一個(gè)8KB的Cache。比較有趣的是,ARM7可以支持一種稱為"Thumb"的模式,可以運(yùn)行新的16位指令。這主要是通過在ARM7芯片的指令預(yù)取階段增加一個(gè)硬件,完成Thumb指令到正常的32位RISC指令的轉(zhuǎn)換來達(dá)到目的的。通過引入Thumb模式,只需要付出很少的硬件代價(jià),就可以將代碼的密度提升大約25%-35%,并使得應(yīng)用的運(yùn)行更為迅速。
1995年,ARM、Apple、DEC公司聯(lián)合聲明將開發(fā)一種用于PDA的高性能、低功耗的微處理器,主要是基于ARM體系結(jié)構(gòu)的。DEC將自己在MPU設(shè)計(jì)上的優(yōu)勢帶入ARM芯片設(shè)計(jì)中。一年后,StrongARM SA-110問世了,并成為嵌入式微處理器設(shè)計(jì)的一個(gè)里程碑。
StrongARM SA-110可以工作在200MHz,而能耗不到1瓦。在體系結(jié)構(gòu)上,
StrongARM將原來ARM中的三級(jí)流水線擴(kuò)展到五級(jí),在器件工藝上,大量采用了最新的體系結(jié)構(gòu)和器件技術(shù),大大降低了芯片工作時(shí)的能耗。
StrongARM的出現(xiàn)并不是ARM發(fā)展歷程上的唯一分支。1996年,ARM8發(fā)布了,采用同樣的五級(jí)流水線,并在72MHz條件下,達(dá)到了84MIPS的指標(biāo)。而在1997年,ARM9內(nèi)核采用了與StrongARM相同的五級(jí)流水線。ARM9TDMI在0.25um工藝條件下,可以在200MHz達(dá)到220MIPS的性能。ARM9的另外一個(gè)版本ARM9E對(duì)SIMD做了增強(qiáng),包括8位和16位SIMD加法和減法,16位和32位乘法,以及相應(yīng)的算術(shù)操作等.
1997年,Intel接管了StrongARM,并開發(fā)了幾個(gè)后續(xù)產(chǎn)品。1998年,Intel開始用0.18um工藝生產(chǎn)StrongARM處理器。在1999年度嵌入式微處理器論壇上,Intel宣布將在其第二代StrongARM中采用7級(jí)流水線,并在0.18um工藝條件下,達(dá)到600MHz的速度,而能耗將僅僅為不到0.5瓦,同時(shí),將新的微處理器命名為StrongARM Xscale[8]。
ARM9EJ是ARM9E在Java支持上的增強(qiáng)版本。它采用了類似Thumb的機(jī)制,通過很少的硬件代價(jià),使大多數(shù)Java虛擬機(jī)字節(jié)碼可以加速執(zhí)行,更為復(fù)雜的Java虛擬機(jī)字節(jié)碼可以通過軟件的方式執(zhí)行。這樣,使得Java虛擬機(jī)字節(jié)碼的執(zhí)行速度提升了大約8倍左右。這對(duì)于嵌入式場合的Java應(yīng)用無疑是極其有效的。
ARM的成功在于它極高的性能以及極低的能耗,使得它能夠與高端的MIPS和PowerPC嵌入式微處理器相抗衡。另外,根據(jù)市場需要進(jìn)行功能的擴(kuò)展,也是ARM取得成功的一個(gè)重要因素。隨著更多廠商的支持和加入,可以預(yù)見,在將來一段時(shí)間之內(nèi),ARM仍將主宰32位嵌入式微處理器市場。
ARM取得了極大的成功,世界上幾乎所有主要的半導(dǎo)體廠商都從ARM公司購買ARM ISA許可。目前ARM系列芯片已經(jīng)被廣泛的應(yīng)用于移動(dòng)電話、手持式計(jì)算機(jī)以及各種各樣的嵌入式應(yīng)用領(lǐng)域,成為世界上銷量最大的32位微處理器。
評(píng)論