指令集、架构、微架构、内核 是什么?

一.指令集与图灵机:

        说起指令集,就得提到图灵,倒不是图灵发明了各种指令集,而是我们所有人的计算机的工作模式本质上和图灵机一样:

任何复杂的运算都能分解成有限个基本运算指令。

        任何复杂的运算最终都可以分解成有限个基本指令来完成:加、减、乘、除、与、或、非、移位 等算术运算或逻辑运算。指令集就是有限个基本运算指令的集合。

        主流的指令集分为ARM 和 x86, ARM是精简指令集,x86是复杂指令集,换言之完成一个复杂的运算X86指令可能需要2条,但是ARM指令可能需要10多条。

比较图灵机原型和现代计算机,你会发现很多相似之处:

1.无限长的纸带:程序代码;

2.一个读写头head:相当于程序计数器PC;

3.一套控制规则Table:相当于CPU有限的指令集;

4.一个状态寄存器:相当于程序或计算机的状态输出;

         不同的CPU,指令集不一样,支持运行的机器指令也不同,但是有一条是相同的:每一条CPU只能支持有限个指令。

二.两大架构:哈佛架构和冯.诺依曼架构:

        有了CPU处理器,还需要配套的主板或开发板、内存RAM、硬盘或flash存储器,才能构成一个完整的计算机整机系统。

        冯诺依曼架构:程序中的指令和数据混合存储,存储在同一块存储器上。(指令和数据同时存放在同一个存储器的不同物理地址上,一般我们再把这些数据和指令从外存加载到内存);

        哈佛结构:指令和数据被分开独立存储,它们分别被存放到程序存储器和数据存储器。每个存储器都独立编址,独立访问,而且指令和数据可以同时在一个时钟内并行访问;优点是运行效率越高,但cpu结构越复杂;8051系列采用的哈佛结构。

        X86、ARM、MIPS架构的cpu都是采用的冯.诺依曼架构。目前

三.微架构--内核:

        微架构,也就是处理器架构。集成电路工程师在设计处理器时,会按照指令集规定的指令,设计具体的译码和运算电路来支持这些指令的运行。指令集在处理器内部的具体硬件电路的实现,我们称之为微架构。

        ARM公司主要通过IP授权盈利,目前主要分为以下三种授权方式:

1.指令集、架构授权(可以基于该指令集设计自己的微架构,甚至可以对指令集进行扩展或缩减,如龙芯以前就是永久购买了MIPS永久指令集授权,自己又添加了很多指令)。

2.内核授权(又称为微架构授权,ARM公司根据自己的指令集设计不同的微架构,即cpu内核,如cortex A/M3等, ST公司、TI公司等都购买了ARM的微架构授权)。

3.使用授权。

 

 

                                    

 

你可能感兴趣的:(嵌入式)