1.1ARM-Advanced RISC Machines
ARM(Advanced RISC Machines),既可以認為是一個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字。
1991年ARM公司成立于英國劍橋,主要出售芯片設計技術的授權。目前,采用ARM技術知識產權(IP)核的微處理器,即我們通常所說的ARM微處理器,已遍及工業控制、消費類電子產品、通信系統、網絡系統、無線系統等各類產品市場,基于ARM技術的微處理器應用約占據了32位RISC微處理器75%以上的市場份額,ARM技術正在逐步滲入到我們生活的各個方面。
ARM公司是專門從事基于RISC技術芯片設計開發的公司,作為知識產權供應商,本身不直接從事芯片生產,靠轉讓設計許可由合作公司生產各具特色的芯片,世界各大半導體生產商從ARM公司購買其設計的ARM微處理器核,根據各自不同的應用領域,加入適當的外圍電路,從而形成自己的ARM微處理器芯片進入市場。目前,全世界有幾十家大的半導體公司都使用ARM公司的授權,因此既使得ARM技術獲得更多的第三方工具、制造、軟件的支持,又使整個系統成本降低,使產品更容易進入市場被消費者所接受,更具有競爭力。
1.2 ARM微處理器的應用領域及特點
1.2.1 ARM微處理器的應用領域
到目前為止,ARM微處理器及技術的應用幾乎已經深入到各個領域:
1、工業控制領域:作為32的RISC架構,基于ARM核的微控制器芯片不但占據了高端微控制器市場的大部分市場份額,同時也逐漸向低端微控制器應用領域擴展,ARM微控制器的低功耗、高性價比,向傳統的8位/16位微控制器提出了挑戰。
2、無線通訊領域:目前已有超過85%的無線通訊設備采用了ARM技術, ARM以其高性能和低成本,在該領域的地位日益鞏固。
3、網絡應用:隨著寬帶技術的推廣,采用ARM技術的ADSL芯片正逐步獲得競爭優勢。此外,ARM在語音及視頻處理上行了優化,并獲得廣泛支持,也對DSP的應用領域提出了挑戰。
4、消費類電子產品:ARM技術在目前流行的數字音頻播放器、數字機頂盒和游戲機中得到廣泛采用。
5、成像和安全產品:現在流行的數碼相機和打印機中絕大部分采用ARM技術。手機中的32位SIM智能卡也采用了ARM技術。
除此以外,ARM微處理器及技術還應用到許多不同的領域,并會在將來取得更加廣泛的應用。
1.2.2 ARM微處理器的特點
采用RISC架構的ARM微處理器一般具有如下特點:
1、體積小、低功耗、低成本、高性能;
2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;
3、大量使用寄存器,指令執行速度更快;
4、大多數數據操作都在寄存器中完成;
5、尋址方式靈活簡單,執行效率高;
6、指令長度固定;
1.3 ARM微處理器系列
ARM微處理器目前包括下面幾個系列,以及其它廠商基于ARM體系結構的處理器,除了具有ARM體系結構的共同特點以外,每一個系列的ARM微處理器都有各自的特點和應用領域。
- ARM7系列
- ARM9系列
- ARM9E系列
- ARM10E系列
- SecurCore系列
- Inter的Xscale
- Inter的StrongARM
其中,ARM7、ARM9、ARM9E和ARM10為4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應用領域的需求。SecurCore系列專門為安全要求較高的應用而設計。
以下我們來詳細了解一下各種處理器的特點及應用領域。
1.3.1 ARM7微處理器系列
ARM7系列微處理器為低功耗的32位RISC處理器,最適合用于對價位和功耗要求較高的消費類應用。ARM7微處理器系列具有如下特點:
- 具有嵌入式ICE-RT邏輯,調試開發方便。
- 極低的功耗,適合對功耗要求較高的應用,如便攜式產品。
- 能夠提供0.9MIPS/MHz的三級流水線結構。
- 代碼密度高并兼容16位的Thumb指令集。
- 對操作系統的支持廣泛,包括Windows CE、Linux、Palm OS等。
- 指令系統與ARM9系列、ARM9E系列和ARM10E系列兼容,便于用戶的產品升級換代。
- 主頻最高可達130MIPS,高速的運算處理能力能勝任絕大多數的復雜應用。
ARM7系列微處理器的主要應用領域為:工業控制、Internet設備、網絡和調制解調器設備、移動電話等多種多媒體和嵌入式應用。
ARM7系列微處理器包括如下幾種類型的核:ARM7TDMI、ARM7TDMI-S、
ARM720T、ARM7EJ。其中,ARM7TMDI是目前使用最廣泛的32位嵌入式RISC處理器,屬低端ARM處理器核。TDMI的基本含義為:
T: 支持16為壓縮指令集Thumb;
D: 支持片上Debug;
M:內嵌硬件乘法器(Multiplier)
I: 嵌入式ICE,支持片上斷點和調試點;
本書所介紹的Samsung公司的S3C4510B即屬于該系列的處理器。
1.3.2 ARM9微處理器系列
ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能。具有以下特點:
- 5級整數流水線,指令執行效率更高。
- 提供1.1MIPS/MHz的哈佛結構。
- 支持32位ARM指令集和16位Thumb指令集。
- 支持32位的高速AMBA總線接口。
- 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統。
- MPU支持實時操作系統。
- 支持數據Cache和指令Cache,具有更高的指令和數據處理能力。
ARM9系列微處理器主要應用于無線設備、儀器儀表、安全系統、機頂盒、高端打印機、數字照相機和數字攝像機等。
ARM9系列微處理器包含ARM920T、ARM922T和ARM940T三種類型,以適用于不同的應用場合。
1.3.3 ARM9E微處理器系列
ARM9E系列微處理器為可綜合處理器,使用單一的處理器內核提供了微控制器、DSP、Java應用系統的解決方案,極大的減少了芯片的面積和系統的復雜程度。ARM9E系列微處理器提供了增強的DSP處理能力,很適合于那些需要同時使用DSP和微控制器的應用場合。
ARM9E系列微處理器的主要特點如下:
- 支持DSP指令集,適合于需要高速數字信號處理的場合。
- 5級整數流水線,指令執行效率更高。
- 支持32位ARM指令集和16位Thumb指令集。
- 支持32位的高速AMBA總線接口。
- 支持VFP9浮點處理協處理器。
- 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統。
- MPU支持實時操作系統。
- 支持數據Cache和指令Cache,具有更高的指令和數據處理能力。
- 主頻最高可達300MIPS。
ARM9系列微處理器主要應用于下一代無線設備、數字消費品、成像設備、工業控制、存儲設備和網絡設備等領域。
ARM9E系列微處理器包含ARM926EJ-S、ARM946E-S和ARM966E-S三種類型,以適用于不同的應用場合。
1.3.4 ARM10E微處理器系列
ARM10E系列微處理器具有高性能、低功耗的特點,由于采用了新的體系結構,與同等的ARM9器件相比較,在同樣的時鐘頻率下,性能提高了近50%,同時,ARM10E系列微處理器采用了兩種先進的節能方式,使其功耗極低。
ARM10E系列微處理器的主要特點如下:
- 支持DSP指令集,適合于需要高速數字信號處理的場合。
- 6級整數流水線,指令執行效率更高。
- 支持32位ARM指令集和16位Thumb指令集。
- 支持32位的高速AMBA總線接口。
- 支持VFP10浮點處理協處理器。
- 全性能的MMU,支持Windows CE、Linux、Palm OS等多種主流嵌入式操作系統。
- 支持數據Cache和指令Cache,具有更高的指令和數據處理能力
- 主頻最高可達400MIPS。
- 內嵌并行讀/寫操作部件。
ARM10E系列微處理器主要應用于下一代無線設備、數字消費品、成像設備、工業控制、通信和信息系統等領域。
ARM10E系列微處理器包含ARM1020E、ARM1022E和ARM1026EJ-S三種類型,以適用于不同的應用場合。
1.3.5 SecurCore微處理器系列
SecurCore系列微處理器專為安全需要而設計,提供了完善的32位RISC技術的安全解決方案,因此,SecurCore系列微處理器除了具有ARM體系結構的低功耗、高性能的特點外,還具有其獨特的優勢,即提供了對安全解決方案的支持。
SecurCore系列微處理器除了具有ARM體系結構各種主要特點外,還在系統安全方面具有如下的特點:
- 帶有靈活的保護單元,以確保操作系統和應用數據的安全。
- 采用軟內核技術,防止外部對其進行掃描探測。
- 可集成用戶自己的安全特性和其他協處理器。
SecurCore系列微處理器主要應用于一些對安全性要求較高的應用產品及應用系統,如電子商務、電子政務、電子銀行業務、網絡和認證系統等領域。
SecurCore系列微處理器包含SecurCore SC100、SecurCore SC110、SecurCore SC200和SecurCore SC210四種類型,以適用于不同的應用場合。
1.3.6 StrongARM微處理器系列
Inter StrongARM SA-1100處理器是采用ARM體系結構高度集成的32位RISC微處理器。它融合了Inter公司的設計和處理技術以及ARM體系結構的電源效率,采用在軟件上兼容ARMv4體系結構、同時采用具有Intel技術優點的體系結構。
Intel StrongARM處理器是便攜式通訊產品和消費類電子產品的理想選擇,已成功應用于多家公司的掌上電腦系列產品。
1.3.7 Xscale處理器
Xscale 處理器是基于ARMv5TE體系結構的解決方案,是一款全性能、高性價比、低功耗的處理器。它支持16位的Thumb指令和DSP指令集,已使用在數字移動電話、個人數字助理和網絡產品等場合。
Xscale 處理器是Inter目前主要推廣的一款ARM微處理器。
1.4 ARM微處理器結構
1.4.1 RISC體系結構
傳統的CISC(Complex Instruction Set Computer,復雜指令集計算機)結構有其固有的缺點,即隨著計算機技術的發展而不斷引入新的復雜的指令集,為支持這些新增的指令,計算機的體系結構會越來越復雜,然而,在CISC指令集的各種指令中,其使用頻率卻相差懸殊,大約有20%的指令會被反復使用,占整個程序代碼的80%。而余下的80%的指令卻不經常使用,在程序設計中只占20%,顯然,這種結構是不太合理的。
基于以上的不合理性,1979年美國加州大學伯克利分校提出了RISC(Reduced Instruction Set Computer,精簡指令集計算機)的概念,RISC并非只是簡單地去減少指令,而是把著眼點放在了如何使計算機的結構更加簡單合理地提高運算速度上。RISC結構優先選取使用頻最高的簡單指令,避免復雜指令;將指令長度固定,指令格式和尋地方式種類減少;以控制邏輯為主,不用或少用微碼控制等措施來達到上述目的。
到目前為止,RISC體系結構也還沒有嚴格的定義,一般認為,RISC體系結構應具有如下特點:
- 采用固定長度的指令格式,指令歸整、簡單、基本尋址方式有2~3種。
- 使用單周期指令,便于流水線操作執行。
- 大量使用寄存器,數據處理指令只對寄存器進行操作,只有加載/ 存儲指令可以訪問存儲器,以提高指令的執行效率。
除此以外,ARM體系結構還采用了一些特別的技術,在保證高性能的前提下盡量縮小芯片的面積,并降低功耗:
- 所有的指令都可根據前面的執行結果決定是否被執行,從而提高指令的執行效率。
- 可用加載/存儲指令批量傳輸數據,以提高數據的傳輸效率。
- 可在一條數據處理指令中同時完成邏輯處理和移位處理。
- 在循環處理中使用地址的自動增減來提高運行效率。
當然,和CISC架構相比較,盡管RISC架構有上述的優點,但決不能認為RISC架構就可以取代CISC架構,事實上,RISC和CISC各有優勢,而且界限并不那么明顯。現代的CPU往往采用CISC的外圍,內部加入了RISC的特性,如超長指令集CPU就是融合了RISC和CISC的優勢,成為未來的CPU發展方向之一。
1.4.2 ARM微處理器的寄存器結構
ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:
- 31個通用寄存器,包括程序計數器(PC指針),均為32位的寄存器。
- 6個狀態寄存器,用以標識CPU的工作狀態及程序的運行狀態,均為32位,目前只使用了其中的一部分。
同時,ARM處理器又有7種不同的處理器模式,在每一種處理器模式下均有一組相應的寄存器與之對應。即在任意一種處理器模式下,可訪問的寄存器包括15個通用寄存器(R0~R14)、一至二個狀態寄存器和程序計數器。在所有的寄存器中,有些是在7種處理器模式下共用的同一個物理寄存器,而有些寄存器則是在不同的處理器模式下有不同的物理寄存器。
關于ARM處理器的寄存器結構,在后面的相關章節將會詳細描述。
1.4.3 ARM微處理器的指令結構
ARM微處理器的在較新的體系結構中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節省30%~40%以上的存儲空間,同時具備32位代碼的所有優點。
關于ARM處理器的指令結構,在后面的相關章節將會詳細描述。
1.5 ARM微處理器的應用選型
鑒于ARM微處理器的眾多優點,隨著國內外嵌入式應用領域的逐步發展,ARM微處理器必然會獲得廣泛的重視和應用。但是,由于ARM微處理器有多達十幾種的內核結構,幾十個芯片生產廠家,以及千變萬化的內部功能配置組合,給開發人員在選擇方案時帶來一定的困難,所以,對ARM芯片做一些對比研究是十分必要的。
以下從應用的角度出發,對在選擇ARM微處理器時所應考慮的主要問題做一些簡要的探討。
ARM微處理器內核的選擇
從前面所介紹的內容可知,ARM微處理器包含一系列的內核結構,以適應不同的應用領域,用戶如果希望使用WinCE或標準Linux等操作系統以減少軟件開發時間,就需要選擇ARM720T以上帶有MMU(Memory Management Unit)功能的ARM芯片,ARM720T、ARM920T、ARM922T、ARM946T、Strong-ARM都帶有MMU功能。而ARM7TDMI則沒有MMU,不支持Windows CE和標準Linux,但目前有uCLinux等不需要MMU支持的操作系統可運行于ARM7TDMI硬件平臺之上。事實上,uCLinux已經成功移植到多種不帶MMU的微處理器平臺上,并在穩定性和其他方面都有上佳表現。
本書所討論的S3C4510B即為一款不帶MMU的ARM微處理器,可在其上運行uCLinux操作系統。
系統的工作頻率
系統的工作頻率在很大程度上決定了ARM微處理器的處理能力。ARM7系列微處理器的典型處理速度為0.9MIPS/MHz,常見的ARM7芯片系統主時鐘為20MHz-133MHz,ARM9系列微處理器的典型處理速度為1.1MIPS/MHz,常見的ARM9的系統主時鐘頻率為100MHz-233MHz,ARM10最高可以達到700MHz。不同芯片對時鐘的處理不同,有的芯片只需要一個主時鐘頻率,有的芯片內部時鐘控制器可以分別為ARM核和USB、UART、DSP、音頻等功能部件提供不同頻率的時鐘。
芯片內存儲器的容量
大多數的ARM微處理器片內存儲器的容量都不太大,需要用戶在設計系統時外擴存儲器,但也有部分芯片具有相對較大的片內存儲空間,如ATMEL的AT91F40162就具有高達2MB的片內程序存儲空間,用戶在設計時可考慮選用這種類型,以簡化系統的設計。
片內外圍電路的選擇
除ARM微處理器核以外,幾乎所有的ARM芯片均根據各自不同的應用領域,擴展了相關功能模塊,并集成在芯片之中,我們稱之為片內外圍電路,如USB接口、IIS接口、LCD控制器、鍵盤接口、RTC、ADC和DAC、DSP協處理器等,設計者應分析系統的需求,盡可能采用片內外圍電路完成所需的功能,這樣既可簡化系統的設計,同時提高系統的可靠性。
上一篇:淺析基于MB86R01的汽車數字化虛擬儀表設計
下一篇:ARM中C和匯編混合編程及示例
推薦閱讀
史海拾趣
對于門控夜明燈電路,網友們可能會有多種問題,以下是一些常見問題及其詳細回答:
一、工作原理相關問題
-
問:門控夜明燈電路是如何實現自動開關的?
答: 門控夜明燈電路主要通過門控開關、延遲電路、光控電路和電源電路等幾部分組成。當門打開時,門控開關觸發電路,使電燈點亮。同時,延遲電路控制電燈的點亮時間,一般為幾十秒左右。光控電路則確保在光線較暗的環境下(如夜晚)電路才會工作,而在白天則自動封鎖電路,避免電燈誤亮。 -
問:電路中的光控部分是如何工作的?
答: 電路中的光控部分通常由光敏電阻器(如MG45型)和相關的電子元件組成。光敏電阻器的阻值會隨著光照強度的變化而變化。在白天,由于光照強度大,光敏電阻器呈現低阻值狀態,導致電路中的某個三極管(如VT3)導通,進而封鎖整個電路,使電燈不會點亮。而在夜晚,光照強度減弱,光敏電阻器呈現高阻值狀態,三極管截止,電路恢復正常工作狀態,受門控開關控制。
二、安裝調試相關問題
-
問:如何安裝門控夜明燈電路?
答: 安裝門控夜明燈電路時,首先需要將干簧管安裝在門框上,將小磁鐵安裝在門上,并確保兩者在門關閉時能夠對準并吸合。接著,將電路板固定在合適的位置,并連接好電源線和電燈線。最后,進行電路調試,確保電路能夠正常工作。 -
問:如何調整電燈的點亮時間?
答: 電燈的點亮時間主要由延遲電路中的電阻和電容決定。要調整點亮時間,可以通過改變電阻(如R2)的阻值或電容(如C1)的容量來實現。一般來說,電阻阻值增大或電容容量增大,都會導致點亮時間延長;反之,則點亮時間縮短。
三、故障排除相關問題
-
問:如果電燈不亮,可能是什么原因?
答: 如果電燈不亮,可能是由多種原因造成的。首先,應檢查電源是否正常,以及電路中的保險絲是否熔斷。其次,檢查門控開關是否工作正常,即干簧管和小磁鐵是否能夠在門打開時正確觸發電路。此外,還應檢查光控電路是否因光線過強而處于封鎖狀態。最后,檢查電燈本身是否損壞。 -
問:電燈在白天也會亮,怎么辦?
答: 如果電燈在白天也會亮,可能是光控電路出現了問題。首先,應檢查光敏電阻器是否損壞或受到其他光源的干擾。其次,檢查與光敏電阻器相關的電子元件(如VT3)是否工作正常。如果問題依然存在,可能需要重新調整光控電路的靈敏度或更換相關元件。
四、其他相關問題
-
問:門控夜明燈電路適用于哪些場合?
答: 門控夜明燈電路適用于需要自動照明的各種場合,如家庭玄關、走廊、樓梯間等。它能夠在人們進門時自動點亮電燈,為人們提供方便,同時也能夠節省能源。 -
問:如何選擇合適的電燈與電路匹配?
答: 在選擇電燈與電路匹配時,首先需要考慮電燈的功率和類型。由于門控夜明燈電路通常設計為低功耗電路,因此建議選擇功率較小、發光效率較高的電燈,如LED燈泡。此外,還需要確保電燈的電壓和電流與電路的輸出相匹配,以避免電路損壞或電燈燒毀。
隨著公司規模的逐漸擴大,喜美克斯公司開始思考如何進一步拓展市場。他們深入研究市場趨勢和消費者需求,制定了針對不同市場的精準營銷策略。通過與當地合作伙伴的緊密合作,喜美克斯成功地將產品打入了多個新興市場,實現了銷售額的快速增長。
Calmos Systems Inc公司注重企業文化建設和團隊建設。公司倡導創新、協作、務實的企業文化,鼓勵員工敢于嘗試、勇于創新。同時,公司還注重員工的培訓和發展,為員工提供廣闊的職業發展空間和晉升機會。在團隊建設方面,公司定期組織各類團建活動,增強員工之間的凝聚力和向心力。這些舉措使得公司擁有一支高效、團結、富有創造力的團隊,為公司的發展提供了有力保障。
以上便是關于Calmos Systems Inc公司在電子行業里發展起來的5個相關故事。這些故事展示了公司在創立初期、技術創新、市場拓展、國際化戰略以及企業文化與團隊建設等方面的努力和成果,為公司的發展奠定了堅實的基礎。
2013年8月26日,蘇州鋒馳微電子有限公司在江蘇省蘇州市張家港市正式成立,法定代表人為Fang Gang Feng。公司初期便明確了以集成電路IP、物聯網、計算機軟硬件、電子產品、集成電路及應用電路方案技術的設計、研發為核心業務的發展方向。在成立之初,面對激烈的市場競爭,蘇州鋒馳憑借對技術的執著追求和敏銳的市場洞察力,逐步在行業內站穩腳跟。
我公司從事無線通訊,在羅湖區有一套90多m2的正規寫字樓,此處于市區中心交通便利,周圍環境優美;配帶有各辦公桌具、ADSL網絡 現尋求從事工控行業的創業者一起創業合作 如果您創業需要有一個上好的辦公環境,又希望盡可能節省成本,且享受高質量的 ...… 查看全部問答∨ |
|
已經很晚了,快一點了,可是我靜不下來。 明天是周一,可是我們新進的員工, 自從培訓結束以后,公司就沒有給我們安排什么了。 上周五,推遲一周的所謂的論文交上去了, 明天開始,我們幾十號人,開始“自由活動”, 電話到人力部,得到的回應 ...… 查看全部問答∨ |
|
掛4個i2c器件,1個24cxx,3個是同一個公司的器件,差別只在地址不同.只有兩個通信正常.我用avr不管用硬的還是軟的都可以.準備用軟的了.… 查看全部問答∨ |
上面在第一次分享當中介紹了慢速GPIO功能,它是通過VPB橋復位,速度較慢。這次介紹快速GPIO操作,它是通過局部總線訪問。使用到的寄存器有: FIOMASK 屏蔽寄存器,0有效 FIODIR 設置方向 FIOPIN &nbs ...… 查看全部問答∨ |
為什么我的stm32中斷處理程序沒有響應?PA1->LED1 PA2->LED2PC0->KEY1 PC1->KEY2主程序#include \"stm32f10x.h\"#include \"stm32f10x_conf.h\"extern void Delay(vu32 nCount);void RCC_Config(void);void GPIO_Config(void);void EXTI_Con ...… 查看全部問答∨ |