一、芯片产业
1.CPU核
CPU又叫中央处理器,其主要功能是进行运算和逻辑运算,内部结构大概可以分为控制单元、算术逻辑单元和存储单元等几个部分。按照其处理信息的字长可以分为:八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器等等。
cpu厂家主要工作:
机器码设计、主频、高速缓存(cache)、多核集成、硬件浮点运算、数据运算。功耗等。
CISC: Complex Instruction Set Computer, 复杂指令集计算机;
RISC: Reduced Instruction Set Computer, 精简指令集计算机;
(1)ARM
ARM是Advanced RISC Machines的编写,它是一家微处理器行业的知名企业,该企业设计了大量
高性能、廉价、低功耗的RISC(精简指令集)处理器。
ARM 公司的特点是只设计芯片,而不生产它将技术授权给半导体厂商,并提供服务。
ARM将其芯片设计技术 (内核、体系扩展、微处理器和系统芯片方案) 授权给Intel, Samsung
高通 (Qualcomm),意法半导体等半导体制造商,这些厂商拿到ARM内核以后,再设计外用
的各种控制器,和ARM核整合成一块SOC芯片。
(2)MIPS
MIPS(Million Instructions Per Second)技术公司是美国一家设计制造高性能、 高档次及嵌入式32
位和64位处理器的厂商,在RISC外理器方面占有重要地位,MIPS的商业模式和ARM相似,也是研发处理器内核,将知识产权授权给其他公司。我国的国产处理器厂商龙芯就是获得MIPS32和MIPS64架构的授权,借此开发龙芯CPU。
(3)PowerPc
PowerPC (英语: Performance Optimization With Enhanced RISC - Performance Computing,有时简称PPC) 是一种精简指令集 (RISC) 架构的中央处理器 (CPU),其基本的设计源自IBM的POWER (Performance Optimized With Enhanced RISC);
(4)Intel
X86架构是复杂指令集,主要用于PC产业。
(5)RISC-V
RISC-V(读作"RISC-FIVE")是基于精简指令集计算(RISC)原理建立的开放指令集架构(ISA),V表示为第五代RISC(精简指令集计算机),表示此前已经有四代RISC处理器原型芯片。每一代RISC处理器都是在同一人带领下完成,那就是加州大学伯克利分校的David A. Patterson教授。与大多数ISA相反,RISCV ISA可以免费地用于所有希望的设备中,允许任何人设计、制造和销售RISC-V芯片和软件。
2.SOC芯片
SOC(System On Chip:CPU核 + 外围控制器),片上系统,即在一块芯片上集成一整个信息处理系
统,简单来说 SoC芯片是在中央处理器CPU的基础上扩展专用接口的超大规模集成电路,是智能设备的"大脑"。
(1)主流厂家
- 德州仪器(TI)
- 高通(Qualcomm)
- 三星(Samsung)
- 恩智浦(NXP)
- 全志(Allwinner Technology)
- 华为海思(HiSilicon)
- 联发科(MTK)
- 瑞星微(rockchip)
(2)产品解决方案
- 手机解决方案
- 平板解决方案
- 智能电视解决方案
- ...
3.产品
- 特斯拉
- 小米
- 华为
- 格力
- 大疆
- ...
二、ARM核发展
ARN公司在经典处理器ARM11以后的产品改用Cortex命名,并分成A、R和M三类,冒在为各种不同的市场提供服务。Cortex系列属于ARMV7架构,由于应用领域不同,基于V7架构的Cortex处理器系列所采用的技术也不相同,基于V7A的称为Cortex-A系列,基于V7R的称为Cortex-R系列,基于V7M的称为Cortex-M系列。
ARM内核 (架构)版本及处理器版本 | |
ARMv1 | ARM1 |
ARMv2 | ARM2.ARM3 |
ARMv3 | ARM6.ARM7 |
ARMv4 | StrongARM、ARM7TDMI, ARM9TDMI |
ARMv5 | ARM7EJ.ARMOE.ARM10E.XScale |
ARMv6 | ARM11.ARMCortexM |
ARMv7 | ARMCortex-A. ARMCortex-M. ARMCortex-R |
ARMv8 | ARMCortex.A30. ARMCortex-A50. ARMCortex-A70 |
(1)VFP
VFP(Vector Floating-point Coprocessor for ARM)向吊浮点运算单元(协处理器) 、 它提供低成本的单精度和倍精度浮点运算能力,并完全相容于ANSI/IEEE Std 754-1985 二进制浮点尊数标准。VFP 提供大多数适用于浮点运算的应用,例如PDA、智慧手机、语音压缩与解压、3D图像以及数位音效、打印机、机上盒,和汽车应用等。
(2)Jazelle
Jazelle是ARN体系结构的一种相关技术,用于在外理器指令层次对JAVA加速。ARM的Jazelle技术停Jave加速得到比基于软件的Jave虚拟机(VM)高得多的性能,和同等的非Java加速核相比功耗降低80%.
(3)Thumb
表示ARM处理器可以工作在Thumb状态,执行Thumb指令集,ARM指令集是32bit的指令集,在
Thumb状态执行的指令集是16bit的。Thumb指令集不是完整的指令集,它是ARM指令集的子集。
但是Thumb指令具有更高的代码密度,即占用存储空间小,仅为ARM代码规格的65%,但其性能却下降的很少。所以,Thumb指令集使ARM处理器能应用到有限的存储带宽,并且,代码密度要求很高的嵌入式系统中去。Thumb-2 是 Thumb 指令集的一项主要增强功能,并且由 ARMv6T2 和 ARMV7M体系结构定义Thumb-2提供了几乎与ARM指令集完全一样的功能。它兼有16位和32位指令,开可检家与ARM 类似的性能,但其代码密度与 Thumb 代码类似。
(4)TrustZone
TustZone是ARN针对消费电子设备设计的一种硬件架构,其目的是为消费电子产品构建一个安全
框架来抵御各种可能rustZone在概念上将SoC的硬件和软件资源划分为安全(Secure World)和非安全(NormaWorld)两个世界,所有需要保密的操作在安全世界执行(如指纹识别、密码处理、数据加解密、安全认证等),其余操作在非安全世界执行 (如用户操作系统、各种应用程序等)。
(5)SIMD
SIMD, 即 single instruction multiple data单指令流多数据流,也就是说一次运算指令可以执行多个数据流,从而提高程序的运算速度,实质是通过数据并行来提高执行效率。
(6)NEON
ARMV7之后,将SIMD升级为 NEON技术 相当手扩展了浮点运算向量表 有一个VFS的二维向量表,将数据存放到这个表中,Cpu可以一次性取某个区域进行执行,NEON就是SIMD的升级相当于将上面SIMD执行指令的表格长度与宽度进行扩展,提升了数据集的压缩算法。 NENO可以进行指令扩展来实现相关功能,但我们一般不使用,如果做一些GPU相关的工作就需要利用NENO的浮点运算特性。可用于加速多媒体和信号处理算法(如视频编码/解码)、2D/3D图形、游戏、音频和语音处理、图像处理技术、电话和声音合成,其性能至少为ARMv5的3倍,为ARMv6 SIMD性能的两倍在SIMD的基础上提升了两倍效率所以运算速度的加快不是单纯的提升CPU的频幸通过这两个技术提升指令执行的方式,还有其他的方法(比如增加二级缓存)。