流水线原理
一条指令运行的阶段:取指、译码、执行、访存、写回、更新PC。
CPU在每个时间周期执行一条指令。
每个时钟周期开始时,状态元素(程序计数器、条件码寄存器、寄存器文件以及数据存储器)是根据前一条指令设置的。信号传播通过组合逻辑,创建出新的状态元素的值。在下一个周期开始时,这些值会被加载到状态元素中。
自助餐厅:允许多个顾客同时经过系统,而不是要等到一个用户完成了所有从头到尾的过程,才让下一个开始。顾客按照相同的顺序经过各个阶段,即使他们并不需要某些菜。
流水线化可增加系统的吞吐量,即单位时间向服务的顾客总数,不过它也会轻微地增加延迟,即服务一个用户所需要的时间。如自助餐厅中一个只需要沙拉的顾客。
在流水线系统中,从头到尾执行一条指令所需要的时间称为延迟。
在流水线系统中,运行时钟的速率是由最慢阶段的延迟限制的,因此对硬件设计者来说,将系统计算设计划分成一组具有相同延迟的阶段是一个严峻的挑战。
多核处理器的到来
一个处理器的功耗:P=fcv (f-主频 , c-电容 , v-电压)
21世纪初,计算机发展遇到了“能量墙”,如果继续增加CPU的时钟频率,那么芯片的功耗会太大,解决方法是用多个小处理器核取代单个大处理器,所有核的总面积不变。