arm可以直接跑java位元組碼(Java arm)

本文目錄一覽:

ARM架構是神馬???

以下是arm架構的概述:

1 CISC(Complex Instruction Set Computer,複雜指令集計算機)

在CISC指令集的各種指令中,大約有20%的指令會被反覆使用,占整個程序代碼的80%。而餘下的80%的指令卻不經常使用,在程序設計中只佔20%。

2 RISC(Reduced Instruction Set Computer,精簡指令集計算機)

RISC結構優先選取使用頻最高的簡單指令,避免複雜指令;將指令長度固定,指令格式和定址方式種類減少;以控制邏輯為主,不用或少用微碼控制等

RISC體系結構應具有如下特點:

1 採用固定長度的指令格式,指令歸整、簡單、基本定址方式有2~3種。

2 使用單周期指令,便於流水線操作執行。

3 大量使用寄存器,數據處理指令只對寄存器進行操作,只有載入/ 存儲指令可以訪問存儲器,以提高指令的執行效率。

除此以外,ARM體系結構還採用了一些特別的技術,在保證高性能的前提下盡量縮小晶元的面積,並降低功耗:

4 所有的指令都可根據前面的執行結果決定是否被執行,從而提高指令的執行效率。

5 可用載入/存儲指令批量傳輸數據,以提高數據的傳輸效率。

6 可在一條數據處理指令中同時完成邏輯處理和移位處理。

7 在循環處理中使用地址的自動增減來提高運行效率。

寄存器結構

ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:

1 31個通用寄存器,包括程序計數器(PC指針),均為32位的寄存器。

2 6個狀態寄存器,用以標識CPU的工作狀態及程序的運行狀態,均為32位,目前只使用了其中的一部分。

指令結構

ARM微處理器的在較新的體系結構中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節省30%~40%以上的存儲空間,同時具備32位代碼的所有優點。

體系結構擴充

當前ARM體系結構的擴充包括:

·Thumb 16位指令集,為了改善代碼密度;

·DSP DSP應用的算術運算指令集;

·Jazeller 允許直接執行Java位元組碼。

ARM處理器系列提供的解決方案有:

·無線、消費類電子和圖像應用的開放平台;

·存儲、自動化、工業和網路應用的嵌入式實時系統;

·智能卡和SIM卡的安全應用。

而 X86是由Intel推出的一種複雜指令集,用於控制晶元的運行的程序,現在X86已經廣泛運用到了家用PC領域。

ARM的意思是什麼?

ARM 即Advanced RISC Machines的縮寫,既可以認為是一個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字。

1985年4月26日,第一個ARM原型在英國劍橋的Acorn計算機有限公司誕生,由美國加州SanJoseVLSI技術公司製造。

20世紀80年代後期,ARM很快開發成Acorn的台式機產品,形成英國的計算機教育基礎。

1990年成立了Advanced RISC Machines Limited(後來簡稱為ARM Limited,ARM公司)。20世紀90年代,ARM 32位嵌入式RISC(Reduced lnstruction Set Computer)處理器擴展到世界範圍,佔據了低功耗、低成本和高性能的嵌入式系統應用領域的領先地位。ARM公司既不生產晶元也不銷售晶元,它只出售晶元技術授權。

1991 年 ARM 公司成立於英國劍橋,主要出售晶元設計技術的授權。目前,採用 ARM技術知識產權( IP )核的微處理器,即我們通常所說的 ARM 微處理器,已遍及工業控制、消費類電子產品、通信系統、網路系統、無線系統等各類產品市場,基於 ARM 技術的微處理器應用約佔據了 32 位 RISC 微處理器 75 %以上的市場份額, ARM 技術正在逐步滲入到我們生活的各個方面。

ARM 公司是專門從事基於 RISC 技術晶元設計開發的公司,作為知識產權供應商,本身不直接從事晶元生產,靠轉讓設計許可由合作公司生產各具特色的晶元,世界各大半導體生產商從ARM公司購買其設計的 ARM 微處理器核,根據各自不同的應用領域,加入適當的外圍電路,從而形成自己的 ARM 微處理器晶元進入市場。目前,全世界有幾十家大的半導體公司都使用 ARM 公司的授權,因此既使得 ARM 技術獲得更多的第三方工具、製造、軟體的支持,又使整個系統成本降低,使產品更容易進入市場被消費者所接受,更具有競爭力。

ARM處理器的三大特點是:耗電少功能強、16位/32位雙指令集和眾多合作夥伴。

ARM商品模式的強大之處在於它在世界範圍有超過100個的合作夥伴(Partners)。ARM 是設計公司,本身不生產晶元。採用轉讓許可證制度,由合作夥伴生產晶元。

當前ARM體系結構的擴充包括:

·Thumb 16位指令集,為了改善代碼密度;

·DSP DSP應用的算術運算指令集;

·Jazeller 允許直接執行Java位元組碼。

ARM處理器系列提供的解決方案有:

·無線、消費類電子和圖像應用的開放平台;

·存儲、自動化、工業和網路應用的嵌入式實時系統;

·智能卡和SIM卡的安全應用。

ARM處理器本身是32位設計,但也配備16位指令集。一般來講存儲器比等價32位代碼節省達35%,然而保留了32位系統的所有優勢。ARM的Jazelle技術使Java加速得到比基於軟體的Java虛擬機(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增強的16位和32位算術運算能力,提高了性能和靈活性。ARM還提供兩個前沿特性來輔助帶深嵌入處理器的高集成SoC器件的調試,它們是嵌入式ICE-RT邏輯和嵌入式跟蹤宏核(ETMS)系列。

當前有5個產品系列——ARM7、ARM9、ARM9E、ARM10和SecurCore。

1、ARM7系列

優化用於對價位和功耗敏感的消費應用的低功耗32位核,有:

·嵌入式ICE-RT邏輯;

·非常低的功耗;

·三段流水線和馮·諾依曼結構,提供0.9MIPS/MHz。

2、SecurCore SC100特為安全市場設計,帶特定的抗拒竄改和反工程的特性。還帶靈活的保護單元確保操作系統和應用數據的安全。

3、ARM9系列

高性能和低功耗領先的硬宏單元,帶有:

·5段流水線;

·哈佛結構提供1.1MIPS/MHz。

ARM920T和ARM922T內置全性能的MMU、指令和數據cache和高速AMBA匯流排介面。AMBA片上匯流排是一個開放標準,已成為SoC構建和IP庫開發的事實標準。AMBA先進的高性能匯流排(AHB)介面現由所有新的ARM核支持,提供開發全綜合設計系統。

ARM940T內置指令和數據cache、保護單元和高速AMBA匯流排介面。

4、ARM9E系列

可綜合處理器,帶有DSP擴充和緊耦合存儲器(TCM)介面,使存儲器以完全的處理器速度運轉,可直接連接到內核上。

ARM966E-S用於矽片尺寸重要,而對cache沒要求的實時嵌入式應用,可配置TCM大小:0、4K、8K、16K,最大達64M。

ARM946E-S內置集成保護單元,提供實時嵌入式操作系統的cache核方案。

ARM926ET-S帶Jazelle擴充、分開的指令和數據高速AHB介面及全性能MMU。

VFP9 向量浮點可綜合協處理器進一步提高ARM9E處理器性能,提供浮點操作的硬體支持。

5、ARM10系列

硬宏單元,帶有:

·64位AHB指令和數據介面;

·6段流水線;

·1.25MIPS/MHz;

·比同等的ARM9器件性能提高50%。

兩種新的先進的節能方式得到了異常低的耗電。VFP10協處理器完善地依從ARM10器件提供高性能的浮點解決方案。

ARM的概念

概述

ARM(Advanced RISC Machines)處理器是Acorn計算機有限公司面向低預算市場設計的第一款RISC微處理器。更早稱作Acorn RISC Machine。

ARM處理器本身是32位設計,但也配備16位指令集。一般來講比等價32位代碼節省達35%,卻能保留32位系統的所有優勢。

ARM的Jazelle技術使Java加速得到比基於軟體的Java虛擬機(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增強的16位和32位算術運算能力,提高了性能和靈活性。ARM還提供兩個前沿特性來輔助帶深嵌入處理器的高集成SoC器件的調試,它們是嵌入式ICE-RT邏輯和嵌入式跟蹤宏核(ETMS)系列。

編輯本段

特點

ARM處理器的三大特點是:耗電少功能強、16位/32位雙指令集和合作夥伴眾多。

1、體積小、低功耗、低成本、高性能;

2、支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;

3、大量使用寄存器,指令執行速度更快;

4、大多數數據操作都在寄存器中完成;

5、定址方式靈活簡單,執行效率高;

6、指令長度固定。

編輯本段

結構

體系結構

1 CISC(Complex Instruction Set Computer,複雜指令集計算機)

在CISC指令集的各種指令中,大約有20%的指令會被反覆使用,占整個程序代碼的80%。而餘下的80%的指令卻不經常使用,在程序設計中只佔20%。

2 RISC(Reduced Instruction Set Computer,精簡指令集計算機)

RISC結構優先選取使用頻最高的簡單指令,避免複雜指令;將指令長度固定,指令格式和定址方式種類減少;以控制邏輯為主,不用或少用微碼控制等

RISC體系結構應具有如下特點:

1 採用固定長度的指令格式,指令歸整、簡單、基本定址方式有2~3種。

2 使用單周期指令,便於流水線操作執行。

3 大量使用寄存器,數據處理指令只對寄存器進行操作,只有載入/ 存儲指令可以訪問存儲器,以提高指令的執行效率。

除此以外,ARM體系結構還採用了一些特別的技術,在保證高性能的前提下盡量縮小晶元的面積,並降低功耗:

4 所有的指令都可根據前面的執行結果決定是否被執行,從而提高指令的執行效率。

5 可用載入/存儲指令批量傳輸數據,以提高數據的傳輸效率。

6 可在一條數據處理指令中同時完成邏輯處理和移位處理。

7 在循環處理中使用地址的自動增減來提高運行效率。

寄存器結構

ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:

1 31個通用寄存器,包括程序計數器(PC指針),均為32位的寄存器。

2 6個狀態寄存器,用以標識CPU的工作狀態及程序的運行狀態,均為32位,目前只使用了其中的一部分。

指令結構

ARM微處理器的在較新的體系結構中支持兩種指令集:ARM指令集和Thumb指令集。其中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的

ARM代碼相比較,可節省30%~40%以上的存儲空間,同時具備32位代碼的所有優點。

編輯本段

ARM處理器模式

處理器模式 說明

用戶模式(usr) ARM處理器正常的程序執行狀態

系統模式(sys) 運行具有特權的操作系統任務

快中斷模式(fiq) 支持高速數據傳輸或通道處理

管理模式(svc) 操作系統保護模式

數據訪問終止模式(abt) 用於虛擬存儲器及存儲器保護

中斷模式(irq) 用於通用的中斷處理

未定義指令終止模式(und) 支持硬體協處理器的軟體模擬

除用戶模式外,其餘6種模式稱為非用戶模式或特權模式;用戶模式和系統模式之外的5種模式稱為異常模式。ARM處理器的運行模式可以通過軟體改變,也可以通過外部中斷或異常處理改變。

編輯本段

體系結構擴充

當前ARM體系結構的擴充包括:

·Thumb 16位指令集,為了改善代碼密度;

·DSP DSP應用的算術運算指令集;

·Jazeller 允許直接執行Java位元組碼。

ARM處理器系列提供的解決方案有:

·無線、消費類電子和圖像應用的開放平台;

·存儲、自動化、工業和網路應用的嵌入式實時系統;

·智能卡和SIM卡的安全應用。

編輯本段

歷史

1978年12月5日,物理學家赫爾曼·豪澤(Hermann Hauser)和工程師Chris Curry,在英國劍橋創辦了CPU公司(Cambridge Processing Unit),主要業務是為當地市場供應電子設備。1979年,CPU公司改名為Acorn計算機公司。

起初,Acorn公司打算使用摩托羅拉公司的16位晶元,但是發現這種晶元太慢也太貴。”一台售價500英鎊的機器,不可能使用價格100英鎊的CPU!”他們轉而向Intel公司索要80286晶元的設計資料,但是遭到拒絕,於是被迫自行研發。

1985年,Roger Wilson和Steve Furber設計了他們自己的第一代32位、6M Hz的處理器, Roger Wilson和Steve Furber[1]用它做出了一台RISC指令集的計算機,簡稱ARM(Acorn RISC Machine)。這就是ARM這個名字的由來。

RISC的全稱是”精簡指令集計算機”(reduced instruction set computer),它支持的指令比較簡單,所以功耗小、價格便宜,特別合適移動設備。早期使用ARM晶元的典型設備,就是蘋果公司的牛頓PDA。

20世紀80年代後期,ARM很快開發成Acorn的台式機產品,形成英國的計算機教育基礎。

1990年11月27日,Acorn公司正式改組為ARM計算機公司。蘋果公司出資150萬英鎊,晶元廠商VLSI出資25萬英鎊,Acorn本身則以150萬英鎊的知識產權和12名工程師入股。公司的辦公地點非常簡陋,就是一個穀倉。 20世紀90年代,ARM 32位嵌入式RISC(Reduced lnstruction Set Computer)處理器擴展到世界範圍,佔據了低功耗、低成本和高性能的嵌入式系統應用領域的領先地位。ARM公司既不生產晶元也不銷售晶元,它只出售晶元技術授權。

編輯本段

市場前景

微軟公司(2011年)宣布,下一版Windows將正式支持ARM處理器。這是計算機工業 arm處理器[2]發展歷史上的一件大事,標識著x86處理器的主導地位發生動搖。目前在移動設備市場,ARM處理器的市場份額超過90%;在伺服器市場,今年(2011年)就會有2.5GHz的伺服器上市;在桌面電腦市場,現在又有了微軟的支持。ARM成為主流,恐怕指日可待。難怪有人驚呼,Intel公司將被擊敗!

與這場轟轟烈烈的變革相比,它的主角ARM公司卻沒有受到太多的關注,顯得不太起眼。這家遠離矽谷、位於劍橋大學的英國公司,到底是怎麼走到今天的,居然能將晶元巨人Intel拉下馬?

展望未來,即使Intel成功地實施了Atom戰略,將x86晶元的功耗和價格大大降低,它與ARM競爭也將非常吃力。因為ARM的商業模式是開放的,任何廠商都可以購買授權,所以未來並不是Intel vs. ARM,而是Intel vs. 世界上所有其他半導體公司。那樣的話,Intel的勝算能有多少呢?

arm32位固定指令中怎麼容納32位變數

在ARM指令中,有三個操作數,目的操作數,第一原操作數,第二原操作數,其中最有意思的就是第二原操作數了,在ARM 指令中,第二原操作數共有12位,分成兩個部分,一個部分佔8位,能表示0—255,另外一個部分佔4位,表示第一個部分8位數零擴展成32位的右循環移位,0001右循環移位2位,0010右循環移位4位,以此類推,來擴大用12位表示更大的數,但不能表示全部,這就是所謂的8位點陣圖原理,你細細品一下,覺得很有意思的,至於8位點陣圖不能表示的立即數就只能另外想辦法處理了,最多用四次相或處理,比如:(KK#00)ORR(PP#0100)ORR(YY#1000)ORR(XX#1100),其中KK、PP、YY、XX表示任意的8位立即數,用這樣的方法是不是可以實現任意的32位立即數呢?

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/285841.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 16:06
下一篇 2024-12-22 16:06

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論