微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 行业新闻动态 > 你知道X86构架,你知道SH构架吗?

你知道X86构架,你知道SH构架吗?

时间:04-27 来源:3721RD 点击:

用到消费电子、汽车电子、通信设备等领域。

RISC,这里再次提到了RISC,在深入了解SuperH之前,有必要先解释一下"RISC"。

RISC(Riduced Instruction Set Computer)精简指令集计算机。简单,总是相对而言的,那么复杂指令集计算机是什么呢?

CISC(Complex Instruction Set Computer)复杂指令集计算机。

那么所谓的"精简",精简在哪里?所谓的"复杂",是在哪些方面复杂呢?别急,详见下文。

RISC是精简指令集CPU,指令位数较短,内部还有快速处理指令的电路,使得指令的译码与数据的处理较快,所以执行效率比CISC高,不过,必须经过编译程序的处理,才能发挥它的效率。

例如,大家都知道的IBM的 Power PC为RISC CPU的结构。

除此之外,经常见到的PC中的CPU,Pentium-Pro(P6)、Pentium-II,Cyrix的M1、M2、AMD的K5、K6实际上是改进了的CISC,也可以说是结合了CISC和RISC的部分优点。

现在有必要把两者放在一起,比较一下,这样看起来更加一目了然,见下表。

RISC与CISC的主要特征对比表

比较内容

CISC

RISC

指令系统

复杂,庞大

简单,精简

指令数目

一般大于200

一般小于100

指令格式

一般大于4

一般小于4

寻址方式

一般大于4

一般小于4

指令字长

不固定

等长

可访存指令

不加限制

只有LOAD/STORE指令

各种指令使用频率

相差很大

相差不大

各种指令执行时间

相差很大

绝大多数在一个周期内完成

优化编译实现

很难

较容易

程序源代码长度

较短

较长

控制器实现方式

绝大多数为微程序控制

绝大多数为硬布线控制

软件系统开发时间

较短

较长

如果到这里对于RISC与CISC还是不清楚的话,那么请记住下面的这句话:

对于CISC和RISC的实现而言,它们所侧重的复杂性不同:CISC处理器的实现复杂性更高,而RISC编译器的复杂性更高。

那么一个新的问题来了,为什么需要RISC呢?

当使用高级语言进行程序设计时,编译器为了兼容早期的CPU,一般不会生成特殊的复杂指令。

如果舍弃这些不常用的复杂指令,就能简化CPU的设计。这正是RISC的出发点。

下面从纯技术的角度出发,来概括RISC的特点:

1)RISC指令系统较小:种类的数量较少,只提供简单指令。这些指令大多都能在4,5个时钟周期内完成。

2)指令的操作数必须预存于寄存器中,这样取指操作的时间也统一了。

3)指令长度,寻址方式,格式都整齐划一:这样可以充分利用流水线,基本上可实现一个时钟脉冲执行一条指令的目标。

4)RISC的子程序调用与CISC的不同:在CISC中,程序调用、返回时需将上下文保存在堆栈中,需要内存操作。而RISC将它们存放在寄存器中,而且参数也使用寄存器传递 。


5)RISC中断可视为特殊的子程序链接:CISC中发生中断时,所有的寄存器内容都被压入堆栈,而RISC对中断进行区分对待,分为轻量级和重量级。对轻量级中断 只保存需要保存的寄存器内容;对重量级中断的处理如同常规中断。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top