📜  RISC和CISC处理器的区别| 2套

📅  最后修改于: 2021-09-28 09:24:22             🧑  作者: Mango

微处理器是单个芯片上的处理单元。它是一种集成电路,执行计算机 CPU 的核心功能。它是一种多用途可编程硅芯片,采用金属氧化物半导体 (MOS) 技术构建,该技术是时钟驱动和基于寄存器的。它接受二进制数据作为输入,并在按照存储在存储器中的指令规范对其进行处理后提供输出。这些微处理器能够以每秒 10 亿条指令的速度一次处理 128 位。

微处理器的特点:

  • 指令系统 –
    微处理器执行的完整指令集称为指令集。
  • 字长 –
    单条指令中处理的位数称为字长或字长。字长越大,CPU 的处理能力就越大。
  • 系统时钟速度 –
    时钟速度决定了单个指令在处理器中的执行速度。微处理器的速度由系统时钟控制。时钟速度通常以每秒百万周期 (MHz) 和每秒百万周期 (GHz) 来衡量。时钟速度被认为是预测处理器性能的一个非常重要的方面。

微处理器的分类:
除了基于字长的分类之外,分类还基于架构,即微处理器的指令集。这些分为RISC和CISC。

  1. RISC:
    它代表精简指令集计算机。它是一种微处理器体系结构,使用一小组统一长度的指令。这些是通常在一个时钟周期内执行的简单指令。 RISC芯片设计比较简单,价格也不贵。这种设计的挫折是计算机必须重复执行简单的操作,才能执行一个有大量处理操作的更大的程序。
    示例: SPARC、POWER PC 等。
  2. 国际证券交易委员会:
    它代表复杂指令集计算机。这些处理器为用户提供数百条不同大小的指令。 CISC 体系结构包括一套完整的专用电路,可以以非常高的速度执行这些指令。这些指令通过使用复杂的寻址模式与存储器交互。 CISC 处理器减少了程序大小,因此执行程序所需的内存周期数更少。这提高了整体执行速度。
    示例:英特尔架构、AMD
  3. 史诗:
    它代表显式并行指令计算。 RISC 和 CISC 处理器的最佳特性结合在架构中。它实现了指令的并行处理,而不是使用固定长度的指令。 EPIC 处理器的工作是通过使用一组包含基本指令和并行指令执行信息的复杂指令来支持的。它大大提高了这些处理器的效率。

以下是 RISC 和 CISC 之间的一些区别:

CISC RISC
A large number of instructions are present in the architecture. Very fewer instructions are present. The number of instructions are generally less than 100.
Some instructions with long execution times. These include instructions that copy an entire block from one part of memory to another and others that copy multiple registers to and from memory. No instruction with a long execution time due to very simple instruction set. Some early RISC machines did not even have an integer multiply instruction, requiring compilers to implement multiplication as a sequence of additions.
Variable-length encodings of the instructions. 
Example: IA32 instruction size can range from 1 to 15 bytes.
Fixed-length encodings of the instructions are used. 
Example: In IA32, generally all instructions are encoded as 4 bytes.
Multiple formats are supported for specifying operands. A memory operand specifier can have many different combinations of displacement, base and index registers. Simple addressing formats are supported. Only base and displacement addressing is allowed.
CISC supports array. RISC does not supports array.
Arithmetic and logical operations can be applied to both memory and register operands. Arithmetic and logical operations only use register operands. Memory referencing is only allowed by load and store instructions, i.e. reading from memory into a register and writing from a register to memory respectively.
Implementation programs are hidden from machine level programs. The ISA provides a clean abstraction between programs and how they get executed. Implementation programs exposed to machine level programs. Few RISC machines do not allow specific instruction sequences.
Condition codes are used. No condition codes are used.
The stack is being used for procedure arguments and return addresses. Registers are being used for procedure arguments and return addresses. Memory references can be avoided by some procedures.

参考 Set-1:RISC 和 CISC