首页 理论教育 并行操作及其在指令执行中的应用举例

并行操作及其在指令执行中的应用举例

时间:2023-07-02 理论教育 版权反馈
【摘要】:所有并行执行的指令构成一个执行包,执行包中的每条指令必须使用不同的功能单元。下面3个例子直观地说明了p比特位设置和执行模式的对应。图2-23完全串行执行p位模式图2-24完全并行执行p位模式图2-25混合执行p位模式在汇编程序中,“||”表示本条指令和前一条指令并行执行。如果程序的结果依赖于指令A、指令B或指令C,那么将会产生错误。

并行操作及其在指令执行中的应用举例

TMS320C6x系列DSP一次同时取8条指令,这8条指令构成一个取指包,取指包的结构如图2-22所示。

978-7-111-37346-9-Chapter02-54.jpg

图2-22 取指包结构

从图2-22取指包的结构中可以看出,每条指令的0比特为p比特位。p比特位控制指令的并行执行方式。从指令A到指令H,如果第n条指令的p=1,那么,指令n+1与指令n在同一周期并行执行;如果第n条指令的p=0,那么,指令n+1在指令n的下一周期执行。所有并行执行的指令构成一个执行包,执行包中的每条指令必须使用不同的功能单元

取指包的最后一条指令的p比特位总是为0,所以,一个执行包最多包括8条指令,执行包不能跨越取指包的边界,每个取指包的开始,也将是下一个执行包的开始。

根据p比特位的不同设置,每个取指包可以有以下3种不同的执行模式:①完全串行;②完全并行;③混合执行。

下面3个例子直观地说明了p比特位设置和执行模式的对应。

1)完全串行执行p位模式,如图2-23所示。

2)完全并行执行p位模式,如图2-24所示。(www.xing528.com)

3)混合执行p位模式,如图2-25所示。

978-7-111-37346-9-Chapter02-55.jpg

图2-23 完全串行执行p位模式

978-7-111-37346-9-Chapter02-56.jpg

图2-24 完全并行执行p位模式

978-7-111-37346-9-Chapter02-57.jpg

图2-25 混合执行p位模式

在汇编程序中,“||”表示本条指令和前一条指令并行执行。如果程序从取指包n中跳转到取指包m中的某一条指令i,则程序从取指包m的指令i开始执行,而指令i之前的所有指令将被忽略,即使是和指令i在同一执行包中的指令。如果程序从其他取指包的指令跳转到指令D,则指令C以及指令A、指令B都不会执行。如果程序的结果依赖于指令A、指令B或指令C,那么将会产生错误

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈