ARM的IP核有几种结构版本?
ARMçæ¬â
ï¼ V1çæ¶æ该çæ¶æåªå¨ååæºARM1åºç°è¿ï¼åªæ26ä½ç寻å空é´ï¼æ²¡æç¨äºåä¸äº§åã
å ¶åºæ¬æ§è½æ:
åºæ¬çæ°æ®å¤çæ令ï¼æ ä¹æ³ï¼ï¼
åºäºåèãååååçLoad/Storeæ令;
转移æ令ï¼å æ¬åç¨åºè°ç¨åé¾æ¥æ令ï¼
ä¾æä½ç³»ç»ä½¿ç¨ç软件ä¸ææ令SWIï¼
寻å空é´ï¼64MBï¼226ï¼ã
ARMçæ¬â ¡ï¼ V2çæ¶æ该çæ¶æ对V1çè¿è¡äºæ©å±ï¼ä¾å¦ARM2åARM3ï¼V2aï¼æ¶æãå å«äºå¯¹32ä½ä¹æ³æ令ååå¤çå¨æ令çæ¯æã
çæ¬2aæ¯çæ¬2çåç§ï¼ARM3è¯çéç¨äºçæ¬2aï¼æ¯ç¬¬ä¸çéç¨çä¸CacheçARMå¤çå¨ãåæ ·ä¸º26ä½å¯»å空é´ï¼ç°å¨å·²ç»åºå¼ä¸å使ç¨ã
V2çæ¶æä¸çæ¬V1ç¸æ¯ï¼å¢å äºä»¥ä¸åè½ï¼
ä¹æ³åä¹å æ令ï¼
æ¯æåå¤çå¨æä½æ令ï¼
å¿«éä¸æ模å¼ï¼
SWP/SWPBçæåºæ¬åå¨å¨ä¸å¯åå¨äº¤æ¢æ令;
寻å空é´ï¼64MBã
ARMçæ¬â ¢ ï¼ V3çæ¶æARMä½ä¸ºç¬ç«çå ¬å¸ï¼å¨1990年设计ç第ä¸ä¸ªå¾®å¤çå¨éç¨çæ¯çæ¬3çARM6ãå®ä½ä¸ºIPæ ¸ãç¬ç«çå¤çå¨ãå ·æçä¸é«éç¼åãMMUååç¼å²çéæCPUã
åç§çæ¬æ3Gå3Mãçæ¬3Gæ¯ä¸ä¸çæ¬2aååå ¼å®¹ççæ¬3ï¼çæ¬3Må¼å ¥äºæ符å·åæ 符å·æ°ä¹æ³åä¹å æ令ï¼è¿äºæ令产çå ¨é¨64ä½ç»æã
V3çæ¶æï¼ ç®åå·²åºå¼ ï¼å¯¹ARMä½ç³»ç»æä½äºè¾å¤§çæ¹å¨ï¼
寻å空é´å¢è³32ä½ï¼4GBï¼ï¼å½åç¨åºç¶æä¿¡æ¯ä»åæ¥çR15å¯åå¨ç§»å°å½åç¨åºç¶æå¯åå¨CPSRä¸ï¼Current Program Status
Registerï¼;
å¢å äºç¨åºç¶æä¿åå¯åå¨SPSRï¼Saved Program Status
Registerï¼ï¼
å¢å äºä¸¤ç§å¼å¸¸æ¨¡å¼ï¼ä½¿æä½ç³»ç»ä»£ç å¯æ¹ä¾¿å°ä½¿ç¨æ°æ®è®¿é®ä¸æ¢å¼å¸¸ãæ令é¢åä¸æ¢å¼å¸¸åæªå®ä¹æ令å¼å¸¸ãï¼
å¢å äºMRS/MSRæ令ï¼ä»¥è®¿é®æ°å¢çCPSR/SPSRå¯åå¨ï¼
å¢å äºä»å¼å¸¸å¤çè¿åçæ令åè½ã
ARMçæ¬â £ ï¼ V4çæ¶æV4çæ¶æå¨V3çä¸ä½äºè¿ä¸æ¥æ©å ï¼V4çæ¶ææ¯ç®ååºç¨æ广çARMä½ç³»ç»æï¼ARM7ãARM8ãARM9åStrongARMé½éç¨è¯¥æ¶æã
V4ä¸å强å¶è¦æ±ä¸26ä½å°å空é´å ¼å®¹ï¼èä¸è¿æç¡®äºåªäºæ令ä¼å¼èµ·æªå®ä¹æ令å¼å¸¸ã
æ令éä¸å¢å äºä»¥ä¸åè½ï¼
符å·ååé符å·åååå符å·ååèçå/åæ令ï¼
å¢å äºTåç§ï¼å¤çå¨å¯å·¥ä½å¨Thumbç¶æï¼å¢å äº16ä½Thumbæ令éï¼
å®åäºè½¯ä»¶ä¸æSWIæ令çåè½ï¼
å¤çå¨ç³»ç»æ¨¡å¼å¼è¿ç¹ææ¹å¼æ¶ä½¿ç¨ç¨æ·å¯åå¨æä½;
æä¸äºæªä½¿ç¨çæ令空é´æè·ä¸ºæªå®ä¹æ令
ARMçæ¬â ¤ ï¼ V5çæ¶æV5çæ¶ææ¯å¨V4çåºç¡ä¸å¢å äºä¸äºæ°çæ令ï¼ARM10åXscaleé½éç¨è¯¥çæ¶æã
è¿äºæ°å¢å½ä»¤æï¼
带æé¾æ¥å交æ¢ç转移BLXæ令ï¼
计æ°å导é¶CLZæ令ï¼
BRKä¸ææ令ï¼
å¢å äºæ°åä¿¡å·å¤çæ令ï¼V5TEçï¼ï¼
为åå¤çå¨å¢å æ´å¤å¯éæ©çæ令ï¼
æ¹è¿äºARM/Thumbç¶æä¹é´çåæ¢æçï¼
E---å¢å¼ºåDSPæ令éï¼å æ¬å ¨é¨ç®æ³æä½å16ä½ä¹æ³æä½ï¼
J----æ¯ææ°çJAVAï¼æä¾åè代ç æ§è¡ç硬件åä¼å软件å éåè½ã
ARMçæ¬â ¥ ï¼ V6çæ¶æV6çæ¶ææ¯2001å¹´åå¸çï¼é¦å å¨2002å¹´æ¥å£åå¸çARM11å¤çå¨ä¸ä½¿ç¨ãå¨éä½èçµéå°åæ¶ï¼è¿å¼ºåäºå¾å½¢å¤çæ§è½ãéè¿è¿½å ææè¿è¡å¤åªä½å¤ççSIMD(Single
Instruction, Multiple Dataï¼åæ令å¤æ°æ® )åè½ï¼å°è¯é³åå¾åçå¤çåè½æé«å°äºååæºç4åã
æ¤æ¶æå¨V5çåºç¡ä¸å¢å äºä»¥ä¸åè½ï¼
THUMBTMï¼35%代ç å缩ï¼
DSPæ©å ï¼é«æ§è½å®ç¹DSPåè½ï¼
JazelleTMï¼Javaæ§è½ä¼åï¼å¯æé«8åï¼
Mediaæ©å ï¼é³/è§é¢æ§è½ä¼åï¼å¯æé«4å
å ¶åºæ¬æ§è½æ:
åºæ¬çæ°æ®å¤çæ令ï¼æ ä¹æ³ï¼ï¼
åºäºåèãååååçLoad/Storeæ令;
转移æ令ï¼å æ¬åç¨åºè°ç¨åé¾æ¥æ令ï¼
ä¾æä½ç³»ç»ä½¿ç¨ç软件ä¸ææ令SWIï¼
寻å空é´ï¼64MBï¼226ï¼ã
ARMçæ¬â ¡ï¼ V2çæ¶æ该çæ¶æ对V1çè¿è¡äºæ©å±ï¼ä¾å¦ARM2åARM3ï¼V2aï¼æ¶æãå å«äºå¯¹32ä½ä¹æ³æ令ååå¤çå¨æ令çæ¯æã
çæ¬2aæ¯çæ¬2çåç§ï¼ARM3è¯çéç¨äºçæ¬2aï¼æ¯ç¬¬ä¸çéç¨çä¸CacheçARMå¤çå¨ãåæ ·ä¸º26ä½å¯»å空é´ï¼ç°å¨å·²ç»åºå¼ä¸å使ç¨ã
V2çæ¶æä¸çæ¬V1ç¸æ¯ï¼å¢å äºä»¥ä¸åè½ï¼
ä¹æ³åä¹å æ令ï¼
æ¯æåå¤çå¨æä½æ令ï¼
å¿«éä¸æ模å¼ï¼
SWP/SWPBçæåºæ¬åå¨å¨ä¸å¯åå¨äº¤æ¢æ令;
寻å空é´ï¼64MBã
ARMçæ¬â ¢ ï¼ V3çæ¶æARMä½ä¸ºç¬ç«çå ¬å¸ï¼å¨1990年设计ç第ä¸ä¸ªå¾®å¤çå¨éç¨çæ¯çæ¬3çARM6ãå®ä½ä¸ºIPæ ¸ãç¬ç«çå¤çå¨ãå ·æçä¸é«éç¼åãMMUååç¼å²çéæCPUã
åç§çæ¬æ3Gå3Mãçæ¬3Gæ¯ä¸ä¸çæ¬2aååå ¼å®¹ççæ¬3ï¼çæ¬3Må¼å ¥äºæ符å·åæ 符å·æ°ä¹æ³åä¹å æ令ï¼è¿äºæ令产çå ¨é¨64ä½ç»æã
V3çæ¶æï¼ ç®åå·²åºå¼ ï¼å¯¹ARMä½ç³»ç»æä½äºè¾å¤§çæ¹å¨ï¼
寻å空é´å¢è³32ä½ï¼4GBï¼ï¼å½åç¨åºç¶æä¿¡æ¯ä»åæ¥çR15å¯åå¨ç§»å°å½åç¨åºç¶æå¯åå¨CPSRä¸ï¼Current Program Status
Registerï¼;
å¢å äºç¨åºç¶æä¿åå¯åå¨SPSRï¼Saved Program Status
Registerï¼ï¼
å¢å äºä¸¤ç§å¼å¸¸æ¨¡å¼ï¼ä½¿æä½ç³»ç»ä»£ç å¯æ¹ä¾¿å°ä½¿ç¨æ°æ®è®¿é®ä¸æ¢å¼å¸¸ãæ令é¢åä¸æ¢å¼å¸¸åæªå®ä¹æ令å¼å¸¸ãï¼
å¢å äºMRS/MSRæ令ï¼ä»¥è®¿é®æ°å¢çCPSR/SPSRå¯åå¨ï¼
å¢å äºä»å¼å¸¸å¤çè¿åçæ令åè½ã
ARMçæ¬â £ ï¼ V4çæ¶æV4çæ¶æå¨V3çä¸ä½äºè¿ä¸æ¥æ©å ï¼V4çæ¶ææ¯ç®ååºç¨æ广çARMä½ç³»ç»æï¼ARM7ãARM8ãARM9åStrongARMé½éç¨è¯¥æ¶æã
V4ä¸å强å¶è¦æ±ä¸26ä½å°å空é´å ¼å®¹ï¼èä¸è¿æç¡®äºåªäºæ令ä¼å¼èµ·æªå®ä¹æ令å¼å¸¸ã
æ令éä¸å¢å äºä»¥ä¸åè½ï¼
符å·ååé符å·åååå符å·ååèçå/åæ令ï¼
å¢å äºTåç§ï¼å¤çå¨å¯å·¥ä½å¨Thumbç¶æï¼å¢å äº16ä½Thumbæ令éï¼
å®åäºè½¯ä»¶ä¸æSWIæ令çåè½ï¼
å¤çå¨ç³»ç»æ¨¡å¼å¼è¿ç¹ææ¹å¼æ¶ä½¿ç¨ç¨æ·å¯åå¨æä½;
æä¸äºæªä½¿ç¨çæ令空é´æè·ä¸ºæªå®ä¹æ令
ARMçæ¬â ¤ ï¼ V5çæ¶æV5çæ¶ææ¯å¨V4çåºç¡ä¸å¢å äºä¸äºæ°çæ令ï¼ARM10åXscaleé½éç¨è¯¥çæ¶æã
è¿äºæ°å¢å½ä»¤æï¼
带æé¾æ¥å交æ¢ç转移BLXæ令ï¼
计æ°å导é¶CLZæ令ï¼
BRKä¸ææ令ï¼
å¢å äºæ°åä¿¡å·å¤çæ令ï¼V5TEçï¼ï¼
为åå¤çå¨å¢å æ´å¤å¯éæ©çæ令ï¼
æ¹è¿äºARM/Thumbç¶æä¹é´çåæ¢æçï¼
E---å¢å¼ºåDSPæ令éï¼å æ¬å ¨é¨ç®æ³æä½å16ä½ä¹æ³æä½ï¼
J----æ¯ææ°çJAVAï¼æä¾åè代ç æ§è¡ç硬件åä¼å软件å éåè½ã
ARMçæ¬â ¥ ï¼ V6çæ¶æV6çæ¶ææ¯2001å¹´åå¸çï¼é¦å å¨2002å¹´æ¥å£åå¸çARM11å¤çå¨ä¸ä½¿ç¨ãå¨éä½èçµéå°åæ¶ï¼è¿å¼ºåäºå¾å½¢å¤çæ§è½ãéè¿è¿½å ææè¿è¡å¤åªä½å¤ççSIMD(Single
Instruction, Multiple Dataï¼åæ令å¤æ°æ® )åè½ï¼å°è¯é³åå¾åçå¤çåè½æé«å°äºååæºç4åã
æ¤æ¶æå¨V5çåºç¡ä¸å¢å äºä»¥ä¸åè½ï¼
THUMBTMï¼35%代ç å缩ï¼
DSPæ©å ï¼é«æ§è½å®ç¹DSPåè½ï¼
JazelleTMï¼Javaæ§è½ä¼åï¼å¯æé«8åï¼
Mediaæ©å ï¼é³/è§é¢æ§è½ä¼åï¼å¯æé«4å
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-03-27
各ARM体系结构版本
ARM体系结构从最初开发到现在有了很大的改进,并仍在完善和发展。
为了清楚地表达每个ARM应用实例所使用的指令集,ARM公司定义了6种主要的ARM指令集体系结构版本,以版本号V1~V6表示ARM版本Ⅰ: V1版架构
该版架构只在原型机ARM1出现过,只有26位的寻址空间,没有用于商业产品。
其基本性能有:
基本的数据处理指令(无乘法);
基于字节、半字和字的Load/Store指令;
转移指令,包括子程序调用及链接指令;
供操作系统使用的软件中断指令SWI;
寻址空间:64MB(226)。 ARM版本Ⅱ: V2版架构
该版架构对V1版进行了扩展,例如ARM2和ARM3(V2a)架构。包含了对32位乘法指令和协处理器指令的支持。
版本2a是版本2的变种,ARM3芯片采用了版本2a,是第一片采用片上Cache的ARM处理器。同样为26位寻址空间,现在已经废弃不再使用。
V2版架构与版本V1相比,增加了以下功能:
乘法和乘加指令;
支持协处理器操作指令;
快速中断模式;
SWP/SWPB的最基本存储器与寄存器交换指令;
寻址空间:64MB。 ARM版本Ⅲ : V3版架构
ARM作为独立的公司,在1990年设计的第一个微处理器采用的是版本3的ARM6。它作为IP核、独立的处理器、具有片上高速缓存、MMU和写缓冲的集成CPU。
变种版本有3G和3M。版本3G是不与版本2a向前兼容的版本3,版本3M引入了有符号和无符号数乘法和乘加指令,这些指令产生全部64位结果。
V3版架构( 目前已废弃 )对ARM体系结构作了较大的改动:寻址空间增至32位(4GB);
当前程序状态信息从原来的R15寄存器移到当前程序状态寄存器CPSR中(Current Program Status Register);
增加了程序状态保存寄存器SPSR(Saved Program Status Register);
增加了两种异常模式,使操作系统代码可方便地使用数据访问中止异常、指令预取中止异常和未定义指令异常。;
增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;
增加了从异常处理返回的指令功能。 ARM版本Ⅳ : V4版架构
V4版架构在V3版上作了进一步扩充,V4版架构是目前应用最广的ARM体系结构,ARM7、ARM8、ARM9和StrongARM都采用该架构。
V4不再强制要求与26位地址空间兼容,而且还明确了哪些指令会引起未定义指令异常。
指令集中增加了以下功能:
符号化和非符号化半字及符号化字节的存/取指令;
增加了T变种,处理器可工作在Thumb状态,增加了16位Thumb指令集;
完善了软件中断SWI指令的功能;
处理器系统模式引进特权方式时使用用户寄存器操作;
把一些未使用的指令空间捕获为未定义指令 ARM版本Ⅴ : V5版架构
V5版架构是在V4版基础上增加了一些新的指令,ARM10和Xscale都采用该版架构。
这些新增命令有:
带有链接和交换的转移BLX指令;
计数前导零CLZ指令;
BRK中断指令;
增加了数字信号处理指令(V5TE版); 为协处理器增加更多可选择的指令;
改进了ARM/Thumb状态之间的切换效率;
E---增强型DSP指令集,包括全部算法操作和16位乘法操作;
J----支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能。 ARM版本Ⅵ : V6版架构
V6版架构是2001年发布的,首先在2002年春季发布的ARM11处理器中使用。在降低耗电量地同时,还强化了图形处理性能。通过追加有效进行多媒体处理的SIMD(Single Instruction, Multiple Data,单指令多数据 )功能,将语音及图像的处理功能提高到了原型机的4倍。
此架构在V5版基础上增加了以下功能:
THUMBTM:35%代码压缩;
DSP扩充:高性能定点DSP功能;
JazelleTM:Java性能优化,可提高8倍;
Media扩充:音/视频性能优化,可提高4倍
ARM体系结构从最初开发到现在有了很大的改进,并仍在完善和发展。
为了清楚地表达每个ARM应用实例所使用的指令集,ARM公司定义了6种主要的ARM指令集体系结构版本,以版本号V1~V6表示ARM版本Ⅰ: V1版架构
该版架构只在原型机ARM1出现过,只有26位的寻址空间,没有用于商业产品。
其基本性能有:
基本的数据处理指令(无乘法);
基于字节、半字和字的Load/Store指令;
转移指令,包括子程序调用及链接指令;
供操作系统使用的软件中断指令SWI;
寻址空间:64MB(226)。 ARM版本Ⅱ: V2版架构
该版架构对V1版进行了扩展,例如ARM2和ARM3(V2a)架构。包含了对32位乘法指令和协处理器指令的支持。
版本2a是版本2的变种,ARM3芯片采用了版本2a,是第一片采用片上Cache的ARM处理器。同样为26位寻址空间,现在已经废弃不再使用。
V2版架构与版本V1相比,增加了以下功能:
乘法和乘加指令;
支持协处理器操作指令;
快速中断模式;
SWP/SWPB的最基本存储器与寄存器交换指令;
寻址空间:64MB。 ARM版本Ⅲ : V3版架构
ARM作为独立的公司,在1990年设计的第一个微处理器采用的是版本3的ARM6。它作为IP核、独立的处理器、具有片上高速缓存、MMU和写缓冲的集成CPU。
变种版本有3G和3M。版本3G是不与版本2a向前兼容的版本3,版本3M引入了有符号和无符号数乘法和乘加指令,这些指令产生全部64位结果。
V3版架构( 目前已废弃 )对ARM体系结构作了较大的改动:寻址空间增至32位(4GB);
当前程序状态信息从原来的R15寄存器移到当前程序状态寄存器CPSR中(Current Program Status Register);
增加了程序状态保存寄存器SPSR(Saved Program Status Register);
增加了两种异常模式,使操作系统代码可方便地使用数据访问中止异常、指令预取中止异常和未定义指令异常。;
增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;
增加了从异常处理返回的指令功能。 ARM版本Ⅳ : V4版架构
V4版架构在V3版上作了进一步扩充,V4版架构是目前应用最广的ARM体系结构,ARM7、ARM8、ARM9和StrongARM都采用该架构。
V4不再强制要求与26位地址空间兼容,而且还明确了哪些指令会引起未定义指令异常。
指令集中增加了以下功能:
符号化和非符号化半字及符号化字节的存/取指令;
增加了T变种,处理器可工作在Thumb状态,增加了16位Thumb指令集;
完善了软件中断SWI指令的功能;
处理器系统模式引进特权方式时使用用户寄存器操作;
把一些未使用的指令空间捕获为未定义指令 ARM版本Ⅴ : V5版架构
V5版架构是在V4版基础上增加了一些新的指令,ARM10和Xscale都采用该版架构。
这些新增命令有:
带有链接和交换的转移BLX指令;
计数前导零CLZ指令;
BRK中断指令;
增加了数字信号处理指令(V5TE版); 为协处理器增加更多可选择的指令;
改进了ARM/Thumb状态之间的切换效率;
E---增强型DSP指令集,包括全部算法操作和16位乘法操作;
J----支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能。 ARM版本Ⅵ : V6版架构
V6版架构是2001年发布的,首先在2002年春季发布的ARM11处理器中使用。在降低耗电量地同时,还强化了图形处理性能。通过追加有效进行多媒体处理的SIMD(Single Instruction, Multiple Data,单指令多数据 )功能,将语音及图像的处理功能提高到了原型机的4倍。
此架构在V5版基础上增加了以下功能:
THUMBTM:35%代码压缩;
DSP扩充:高性能定点DSP功能;
JazelleTM:Java性能优化,可提高8倍;
Media扩充:音/视频性能优化,可提高4倍