Hi~C674xDSP核中有八个并行的功能单元,其中D1、D2执行数据储存和加载操作,S1、S2执行跳转和比较操作,M1、M2执行乘法操作,L1、L2执行数学和逻辑运算,以D1、D2为例,我的理解是既然是并行,那么意味着执行加载操作时哪个单元空就由哪个单元来负责执行(都是32bit的数,不考虑8字节等,以免一个执行高位另一个执行低位,不好比较),但我在看CCS汇编程序时发现出现连续的3个LDW操作都是由D2功能单元来完成的,这不应该是D1、D2轮流来加载以实现并行吗?
Shine:
c674x 内核8个功能单元并行的意思是指一个cycle最多可以执行8条指令。
user5117350:
回复 Shine:
您的意思是D1、D2并不等价,各自有各自的指令类型,只是优化好的话可以一个cycle连续执行D1、D2各自单元的指令?但这样如两者(D1、D2)的通用指令的话是不是就是哪个为空就在哪个执行啊