托马苏洛算法

✍ dations ◷ 2025-09-15 07:43:55 #托马苏洛算法

托马苏洛算法(英语:Tomasulo algorithm)是IBM罗伯特·托马苏洛1967年所研发用来改善处理器乱序执行指令级并行性的硬件算法。

在处理器中,先后执行的指令之间经常具有相关性(例如后一条指令用到前一条指令向寄存器写入的结果),因此早期简单的处理器使后续指令停顿,直到其所需的资源已经由前序指令准备就绪。托马苏洛算法则通过动态调度的方式,在不影响结果正确性的前提下,重新排列指令实际执行的顺序(乱序执行),提高时间利用效率。IBM System/360 Model 91处理器的浮点运算器中率先使用了这种算法。:92

该算法与之前同样用于实现指令流水线动态调度的计分板不同在于它使用了寄存器重命名机制。指令之间具有数据相关性(例如后条指令的源寄存器恰好是前条指令要写入的目标寄存器),进行动态调度时必须避免三类冒险:写后读(Read-after-Write, RAW)、写后写(Write-after-Write, WAW)、读后写(Write-after-Read, WAR)。:90:319-321第一种冒险也被称为真数据相关(true data dependence),而后两种冒险则并没有那么致命,它们可以由寄存器重命名来予以解决。:321-322托马苏洛算法使用了一个共享数据总线(common data bus, CDB)将已计算出的值广播给所有需要这个值作为指令源操作数的保留站。该算法尽可能降低了使用计分板技术导致的流水线停顿,从而改善了并行计算的效率。

在指令的发射(issue)阶段,如果操作数和保留站都准备就绪,那么指令就可以直接发射并执行。如果操作数未就绪,则进入保留站的指令会跟踪即将产生这个所需操作数的那个功能单元。如果连可用的保留站功能单元都已经不够用,那么该指令必须被停顿。为了化解读后写(WAR)和写后写(WAW)冲突,需要在该阶段进行指令的寄存器重命名。从指令队列中取出下一条指令,如果其所用到的操作数目前位于寄存器中,那么如果与指令匹配的功能单元(这类处理器通常具有多个功能单元以发挥指令级并行的优势)当前可用,则发射该指令;否则,由于没有可用的功能单元,指令被停顿,直到保留站或缓存可用。尽管执行时可能并未按照指令代码的先后顺序,但是它们在发射过程还是按照原先的顺序。这是为了确保指令顺序执行时的一些现象,例如处理器异常,能够以顺序执行时的同样顺序出现。:90-91下一个阶段为执行阶段。在该阶段,指令对应的操作被执行。执行前需要保证所有操作数可用,同时写后读(RAW)冲突已经被化解。系统通过计算有效地址来避免存储区的冲突,从而保证程序的正确性。最后的阶段为写结果阶段,算术逻辑单元(ALU)的计算结果被写回到寄存器,以及任何正在等待该结果的保留站中,如果是存储(store)指令,则写回到存储器中。

相关

  • 身体畸形恐惧症体象障碍(body dysmorphic disorder,缩写:BDD)或称躯体变形障碍、身体臆形症、丑形恐怖,是一种精神障碍,患者过度关注自己的体像并对自身体貌缺陷进行夸张或臆想,在大多数病例中,患
  • CBe有机铍化学是研究含有铍-碳键的化学分支。有机铍化合物中,铍都以+2价的形式出现。有机铍化合物具有很高的毒性,对空气和水敏感。二烃基铍是有机铍化合物的一种,可由格氏试剂或
  • 台20线台20线是中华民国(台湾)一条横贯于南部地区的省道。西起于台南市汤德章纪念公园中山路段;东迄于台东县关山镇德高,与省道台9线于德高陆桥附近相接。主线全长203.982公里,并另有甲
  • Illiger约翰·卡尔·威廉·伊利格(德语:Johann Karl Wilhelm Illiger,1775年11月19日-1813年5月10日)是德国昆虫学家和动物学家,出生于不伦瑞克一商人家庭,师从昆虫学家约翰·克里斯蒂安·
  • 岛屿包装者岛屿包装者 Island Packers,美国海峡群岛国家公园的特约商,定期有船班从文图拉前往国家公园的五座岛屿。有时候还会在特定季节有赏鲸船的船班。游客除了做轻型飞机和搭自己私
  • 塞拉菲娜·路易塞拉菲娜·路易(法语:Séraphine Louis,1864年-1942年),以桑利斯的塞拉菲娜(Séraphine de Senlis)之名闻名,法国女画家,稚拙派(又称素朴派,来自法语naïf)代表画家之一。塞拉菲娜生于瓦
  • 回家的路 (电影)《回家的路》(韩语:집으로 가는 길,英语:)是一部2013年上映的韩国电影,改编自真实事件。剧情讲述一名韩国平凡主妇在法国奥利机场涉嫌毒品走私,之后被关在马提尼克岛的监狱,丈夫为了
  • 马尔科·切基纳托马尔科·切基纳托(Marco Cecchinato,1992年9月30日-)是一位意大利职业网球男运动员。2018年6月5日,切基纳托在2018法网八强爆冷击败前冠军诺瓦克·乔科维奇,取得职业网球生涯当中
  • 让-罗贝尔·阿尔冈让-罗贝尔·阿尔冈(法语:Jean-Robert Argand,.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","Code2000
  • 联合阵线联合阵线(西班牙语:Frente UNIDOS)是厄瓜多尔的一个已不存在的左翼政党联盟。该联盟成立于2014年9月18日。2018年,该联盟解散。该联盟的意识形态是21世纪社会主义、进步主义。该