MIPS® MT ASE
多线程(同一个CPU上同时存在多个活动线程)是一种容忍存储器和执行延迟的技术,并可提高处理器功能单元的利用率。这种由英特尔推广普及的技术又被称为超线程(Hyper-Threading)。在数据相关停顿(data-dependent stall)或缓存丢失(cache miss)期间,通过切换线程,处理器管线能够达到80-90%的利用率。MIPS MT ASE为MIPS架构的多线程实现提供了一个构架。
相关链接:34K - 1004K
- 多线程是一种用来可在系统内产生最大吞吐量的执行模式
- 允许多个软件线程使用所有执行和存储器带宽,而非某个软件线程停顿下来等待资源
- 支持两种MT模式:
- 多个虚拟处理器,允许多个操作系统在一个实际CPU上同时运行
- 多个线程环境(Thread Context),其中单个软件程序的多个线程可在一个实际CPU上同时运行
- 服务质量(QoS)调度满足实时要求
- 线程在多核系统中可重分配
- 代码只需少许变化或无需改变,系统吞吐量立即提高20-40%
- TC (Thread Context,线程环境)可复制用户模式状态,比如通用寄存器
- VPE (Virtual Processor Elements,虚拟处理器元素)可复制特权模式状态,比如TLB和有关中断的状态寄存器
- 由硬件处理可运行线程的切换
- 可实现线程间的细化切换,包括每一个CPU周期切换
- 线程切换策略完全由客户定义――可以是循环调度(Round-Robin)、加权循环调度、优先级调度等等
- 由软件控制可运行线程的创建和中止
- 支持硬件事件(如中断)中止或唤醒线程
- 门控存储可用作线程之间的通信通道――允许线程的数据驱动调度
- 线程可标记为特权级别,这时其可访问另一个线程的资源
- 支持类似于特殊VPE(向量处理单元) 的中断
- 提供软件控制来激活或禁用每一个TC和VPE
See MIPS Run, Second Edition
Author: Sweetman, Dominic
Publisher: Morgan Kaufmann; 2 edition (October 31, 2006)
ISBN-10: 0120884216
ISBN-13: 978-0120884216
MIPS Assembly Language Programming
Author: Britton, Robert
Publisher: Prentice Hall; illustrated edition edition (June 7, 2003)
ISBN-10: 0131420445
ISBN-13: 978-0131420441
The Mips Programmer's Handbook
Author: Bunce, Philip; Farquhar, Erin
Publisher: Morgan Kaufmann; 1st edition (January 15, 1994)
ISBN-10: 1558602976
ISBN-13: 978-1558602977
Real-Time Embedded Multithreading Using ThreadX and MIPS
Author: Lamie, Edward
Publisher: Newnes; Pap/Cdr edition (December 26, 2008)
ISBN-10: 1856176312
ISBN-13: 978-1856176316
Computer Architecture, Fourth Edition: A Quantitative Approach
Authors: Hennessy, John; Patterson, David
Publisher: Morgan Kaufmann; 4 edition (September 27, 2006)
ISBN-10: 0123704901
ISBN-13: 978-0123704900