超标量处理器可以在一个时钟周期内同时独立执行多条指令,它包括冗余的执行资源,如多个浮点单元,算术逻辑单元和整数移位器。这种类型的处理器是为并行计算和推测性执行而设计的,不需要特殊的软件。它可以通过操作和重新排...
超标量处理器可以在一个时钟周期内同时独立执行多条指令,它包括冗余的执行资源,如多个浮点单元,算术逻辑单元和整数移位器。这种类型的处理器是为并行计算和推测性执行而设计的,不需要特殊的软件。它可以通过操作和重新排列代码来提高许多处理器密集型应用程序的执行速度。它常用于几种类型的计算机中,包括服务器、台式机甚至笔记本电脑。

台式机中可以使用超标量处理器尽管这种体系结构的某些方面自20世纪60年代以来就已在处理器中使用,真正的超标量处理器直到很晚才发布,一些在80年代末90年代初销售的精简指令集计算(RISC)处理器是超标量的,它们的简单内核和固定长度的指令使得并行指令的调度和调度变得相对容易,许多非RISC处理器制造出来自20世纪90年代末以来,超标量体系结构也出现了,嵌入式、低功耗和其他专用处理器通常是例外,它们会优化设计的其他方面,而不是并行执行有些处理器可以与来自多个执行线程的指令共享一个管道,称为超级线程当一个功能单元因为等待当前正在执行的线程而处于空闲状态时,它可以同时从另一个线程执行一条指令,这种技术有助于充分利用处理器,但效率不如同步多线程(SMT),一个超标量处理器可以同时执行多个线程的多条指令,同时执行的线程可以竞争但是,对于系统和处理器资源,这可能会降低系统速度。具有多级管道的处理器可以同时执行多条指令,只要它们处于不同的执行阶段。相反,在超标量处理器中,多个指令可以同时在同一个阶段执行。虽然这种处理器与多核处理器有许多相似之处,但它们并不相同。多核处理器包含几个完整的处理器,称为核心,在一种设备中,多核处理器的每个核心通常都是超标量的,并且可以包括几个并行管道。超标量处理器的一个主要特点是它能够出于效率的原因无序地执行程序代码这一点,它必须知道任何一条指令对另一条指令的依赖性。如果一条指令影响另一条指令的结果或使用另一条指令的资源,则这两条指令很可能不能并行执行。有技术可以消除某些类型的依赖关系,但其他指令必须延迟处理,直到资源可用如果发生系统中断,无序执行还必须能够保证寄存器、标志和其他资源的正确内容。在这种情况下,系统状态必须看起来相同,就像代码是按设计顺序执行的一样。另一个考虑因素是处理器应该检查多少条指令以找到并行执行的机会。数量越大,执行效率就越高。这还包括在已检查代码。