发明名称 一种多线程流分支控制方法及其控制装置
摘要 一种多线程流分支控制方法及其控制装置,该方法的步骤为:①初始化;②取指令阶段:比较每个标量核内部PC寄存器与外部PC寄存器的值;③指令译码阶段:如果是分支指令,每个标量核中都“排空”流水线;④执行阶段:未被排空的流水线正常执行指令;⑤存储访问阶段:对分支指令计算出每个标量核的内部PC寄存器值;⑥写回阶段:对计算后所有标量核内部PC寄存器的值进行比较,将最小值赋值给外部PC寄存器。该控制装置包括多个标量核和一个外部PC寄存器,每个标量核中均包括一个内部PC寄存器以及依次相连的取指令单元、指令译码单元、执行单元、存储访问单元和写回单元。本发明具有原理简单、成本低廉、可靠性好、响应速度快、功耗低等优点。
申请公布号 CN102053821B 申请公布日期 2014.03.19
申请号 CN201110001555.4 申请日期 2011.01.06
申请人 中国人民解放军国防科学技术大学 发明人 邢座程;马安国;付桂涛;陈小保;黄平;汤先拓;何锐;王庆林;晏小波;李方圆;邱建雄;蔡放;闵银皮;梅家祥;孟晓冬;赵齐;王宏燕
分类号 G06F9/38(2006.01)I 主分类号 G06F9/38(2006.01)I
代理机构 湖南兆弘专利事务所 43008 代理人 赵洪;周长清
主权项 一种多线程流分支控制方法,其特征在于步骤为:① 初始化:在外部PC寄存器第一次初始化时,每个标量核的内部PC寄存器也初始化为相同值;② 取指令阶段:将每个标量核内部PC寄存器的值与外部PC寄存器的值进行比较,如果两者不相等,不接收当前指令,直到外部PC寄存器的值变化到与内部PC寄存器的值相等;如果两者相等,正常进行取指令操作;③ 指令译码阶段:判断指令类型,如果是分支指令,那么每个标量核中都需要排空流水线,即清除流水线在分支指令之后读入的任何指令;④ 执行阶段:未被排空的流水线正常执行指令;⑤ 存储访问阶段:对分支指令计算出每个标量核的内部PC寄存器值;⑥ 写回阶段:当所有标量核内部PC寄存器的值计算完成时,对所有值进行比较,获得一个最小值,将上述最小值赋值给外部PC寄存器;在每个取指令阶段结束前,所述外部PC寄存器要进行累加,指向指令存储器上物理地址相邻的下一条指令;所有正常进行取指令操作的标量核的内部PC寄存器也进行累加,与外部PC寄存器的值保持同步。
地址 410073 湖南省长沙市砚瓦池正街47号中国人民解放军国防科学技术大学计算机学院并行与分布处理重点实验室