This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

how to use low-level kernels in IMGLIB?

Hi, all,

  In the Appendix A  of SPRUF30A: TMS320C64x+ DSP Image/Video Processing Library (v2.0.1) Programmer's Guide, some low-level kernels such as IMG_mulS_16s, IMG_add_16s is provided. Now I want to use some of them, but I can't find the head files in the include folder of the IMGLIB or the source code in the kernels folder of the IMGLIB for the low-level kernels. Furthermore, the c example code in the appendix of SPRUF30A has some mistake. for example, in the kernel  IMG_mulS_8, for (i = 0; i < count >> 4; i += 16) should be for (i = 0; i < count  i += 16); rp3_rp2_rp1_rp0 = _mpysu4 (cD_cD_cD_cD, p7_p6_p5_p4) and rp7_rp6_rp5_rp4 = _mpysu4 (cD_cD_cD_cD, p3_p2_p1_p0) should be   rp3_rp2_rp1_rp0 = _mpysu4 (cD_cD_cD_cD, p3_p2_p1_p0) and  rp7_rp6_rp5_rp4 = _mpysu4 (cD_cD_cD_cD, p7_p6_p5_p4). I correct these mistake, but the execution speed is not faster than equivalent code written in standard ANSI C language.

  I think these low-level kernels should be assembly-optimized and is running very fast. but where can I find the head file of these kernels? Is it included in IMGLIB?

Thanks!

 

Guishanjun