"解读x86、ARM和MIPS三种主流芯片架构"
指令集可以分为复杂指令集(CISC)和精简指令集(RISC)两部分,代表架构分别是x86、ARM和MIPS。下面我们将对这三种芯片架构进行详细的解读。
ARM RISC架构
ARM RISC架构是为了提高处理器运行速度而设计的芯片体系,其关键技术在于流水线操作即在一个时钟周期里完成多条指令。ARM指令集架构的主要特点是:
* 体积小、低功耗、低成本、高性能
* 大量使用寄存器且大多数数据操作都在寄存器中完成,指令执行速度更快
* 寻址方式灵活简单,执行效率高
* 指令长度固定,可通过多流水线方式提高处理效率
ARM RISC架构的设计目标是提高处理器的运行速度,以满足现代计算机系统的需求。
MIPS架构
MIPS是高效精简指令集计算机体系结构中的一种,与当前商业化最成功的ARM架构相比,MIPS的优势主要有五点:
* 早于ARM支持64bit指令和操作
* 有专门的除法器,可以执行除法指令
* 内核寄存器比ARM多一倍,在同样的性能下MIPS的功耗会比ARM更低
* 指令比ARM稍微多一些,执行部分运算更为灵活
* 在架构授权方面更为开放,允许授权商自行更改设计
然而,MIPS架构也存在一些不足之处:
* 内存地址起始有问题,导致了MIPS在内存和cache的支持方面都有限制
* 技术演进方向是并行线程,而ARM未来的发展方向是物理多核
* 结构更加简单,但是到现在还是顺序单/双发射,而ARM已经进化到了乱序双/三发射
* 学院派发展风格导致其商业进程远远滞后于ARM
* 软件平台也较为落后,应用软件与ARM体系相比要少很多
x86 CISC架构
x86 CISC架构是一种为了便于编程和提高记忆体访问效率的芯片设计体系,包括两大主要特点:
* 使用微代码,指令集可以直接在微代码记忆体里执行
* 拥有庞大的指令集,包括双运算元格式、寄存器到寄存器、寄存器到记忆体以及记忆体到寄存器的多种指令类型
x86指令体系的优势体现在能够有效缩短新指令的微代码设计时间,允许实现CISC体系机器的向上兼容,新的系统可以使用一个包含早期系统的指令集合。
然而,x86指令体系也存在一些缺点:
* 通用寄存器规模小,x86指令集只有8个通用寄存器,CPU大多数时间是在访问存储器中的数据,影响整个系统的执行速度
* 解码器影响性能表现,解码器的作用是把长度不定的x86指令转换为长度固定的类似于RISC的指令
* 寻址范围小,约束用户需要
* x86 CISC单个指令长度不同,运算能力强大,不过相对来说结构复杂,很难将CISC全部硬件集成在一颗芯片上
x86、ARM和MIPS三种芯片架构各有其优缺点,设计者需要根据具体情况选择合适的架构。