TI中文支持网
TI专业的中文技术问题搜集分享网站

在计算指令周期时(Delay_Slot),其是否包括了功能单元的延时时间(Function Uint Latency)?

例如,对于FMPYDP指令,在手册上给出的是:

Instruction Type 4-cycle
Delay Slots 3
Functional Unit Latency 1

这样理解:功能单元的延时时间(Function Uint Latency)是不包括在指令周期时(Delay_Slot)中的。因而总的执行时间是:4 cycles

 

而对于指令:MPYDP,在手册上给出的是:

Instruction Type MPYDP
Delay Slots 9
Functional Unit Latency 4

这个感觉是:在计算指令周期时(Delay_Slot),好像是包括了功能单元的延时时间(Function Uint Latency),不然该指令执行延时也太长了。

CVD:

这两者的概念是不一样的,Delay Slots是指输出寄存器的值要等几个cycle才能被使用,Functional Unit Latency是指该指令执行要连续地占用几个周期的功能单元,在这几个周期内该单元不能执行其他指令。

CVD:

在CHIP Smarter即将发布的智能汇编开发工具DSPer中,指令的这些信息都会直观地在代码中显示,如图:

 

chenpjh:

回复 CVD:

CHIP Smarter:

    DSPer是你开发的?什么时候可以用?与CCS相比有什么突出的功能?

 

    静候佳音!

chenpjh:

回复 CVD:

这儿有两个问题:

(1)总的指令周期数:应为二者之和;

(2)Delay Slots是可以通过pipeline来消化,进而提高DSP的执行速度,而Function Unit Latnecy不等于1时,不能通过pipeline进行流水,因而该功能单元不能被其它指令占用;

上面两观点对不对?

user5282335:

回复 chenpjh:

请问下:

当我计算一条指令的运行周期时:是否要加上Functional Unit Latency和Delay_Slot的周期?????

赞(0)
未经允许不得转载:TI中文支持网 » 在计算指令周期时(Delay_Slot),其是否包括了功能单元的延时时间(Function Uint Latency)?
分享到: 更多 (0)