利用MIPS多线程处理器优化SoC设计利用MIPS多线程处理器优化SoC设计多线程是一种基于硬件或软件的处理技术,它的首要目标是计算型工作中利用并发来提高性能。多线程也可以用于区别各种任务,以便可以将优先权分配给更多时间敏感的流量,如语音、视频或关键数据。而公认的基于软件的多线程技术,如任务切换和基于软件的线程调度已经存在了相当一段时间,很少有人知道基于硬件的多线程的历史。基于硬件的多线程技术其实已经存在了相当长一段时间,其实现可以追溯到20世纪60年代的CDC6600。在CDC6600电脑中,10个硬件线程被用来保证从I/O处理器到约16个外围设备的响应时间。这个例子的处理器运行速度远远超过了许多I/O设备,是一个充分利用多线程优势的典型应用,因为空闲处理时间可以被从线程到线程切换的有益工作所取代。在70年代,DenelcorHEP机是在CPU内,而不是在I/O实际执行线程切换。类似上例,最终结果是每个周期的指令(IPC)有了显著改善。之后10年推出的其他几个系统和学术研究进一步展示了硬件多线程的好处。今天的市场上有许多多线程处理器。英特尔公司已经利用其超线程技术将该技术引入高端计算应用领域。此外,其他许多SoC制造商,如Broadcom、Lantiq、Mobileye、NetLogicMicrosystems、PMC-Sierra、RalinkTechnology和SigmaDesigns也交付了上百万个采用多线程处理器的产品。许多这样的SoC都采用了基于业界标准MIPS架构的多线程MIPS3234K系列内核或多线程、多处理MIPS321004K一致处理系统(CPS)。目前硬件多线程已经成为主流应用,并越来越被视为SoC设计中实现最佳性能的有效方法。用多线程提高流水线利用率如前所述,增加一个给定单线程处理器的IPC数量是一个主要目标