cpu结构
中央处理器的体系结构可以分为两类,
一类为冯·诺依曼结构,
另一类为哈佛结构。
Intel 公司的中央处理器、ARM 的 ARM7、MIPS 公司的 MIPS处理器采用了冯·诺 依 曼 结 构; 而AVR、ARM9、ARM10、ARM11 以 及Cortex A 系列等则采用了哈佛结构。
冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。
哈佛结构将程序指令和数据分开存储,指令和数据可以有不同的数据宽度。此外,哈佛结构还采用了独立的程序总线和数据总线,分别作为 CPU 与每个存储器之间的专用通信路径,具有较高的执行效率。
下图 描述了冯·诺依曼结构和哈佛结构的区别
许多芯片采用的是如下图所示的改进的哈佛架构,它具有独立的地址总线和数据总线,两条总线由程序存储器和数据存储器分时共用。因此,改进的哈佛结构针对程序和数据,其实没有独立的总线,而是使用公用数据总线来完成程序存储模块或数据存储模块与 CPU 之间的数据传输,公用的地址总线来寻址程序和数据。
从指令集的角度来讲,中央处理器也可以分为两类,即 RISC(精简指令集计算机)和 CISC(复杂指令集计算机)。
CSIC 强调增强指令的能力、减少目标代码的数量,但是指令复杂,指令周期长;而 RISC 强调尽量减少指令集、指令单周期执行,但是目标代码会更大。ARM、MIPS、PowerPC 等 CPU 内核都采用了RISC 指令集。目前,RISC 和 CSIC 两者的融合非常明显。
上文摘抄自《Linux设备驱动开发详解:基于最新的Linux 4.0内核》