DSPRelated.com
Forums

how to generate DMAC instruction using compiler options in code composer studio in TMS320C28X

Started by Sanc...@Honeywell.com January 31, 2008
hello frens,
i m facing some problem in generating Dmac in assembly code.i hv written c code n i m able to compile it in code composer studio.but tat code is not able to generate dmac instruction.is thr some compiler options required to generate tat particular instruction.i m posting the c code :

#include
#include
void main()
{ /* Calculate sum of product using dual 16-bit multiply */
const signed short X[600] ={0}; /* Data information */
const signed short C[600]={0}; /* Coefficient information (located in low 4M) */
//const signed short int *ptr =(short int*)&X;
//const signed short int *ptr1 =(short int*)&C;
signed short sum = 0;
short int i=0;
// int N`0; /* Data and Coeff must be aligned to even address */
while(i<600)
{
//sum +=((*ptr++) * (*ptr1++));
sum+=(X[i]* C[i])>>5;
i++;
}
printf("\n%d\n",sum);
}

if thr is some compiler option to set to get required to generate DMAC instruction,than plz let me kno tat.
thnx

Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467
YXMgZmFyIGFzIEkga25vdywgeW91IG11c3QgZW5hYmxlIC1vMSAob3IgYmV0dGVyIC1vMykg
b3B0aW1pemF0aW9uIGxldmVsIApvcHRpb24uCgoKc2VlIFNQUlUwMjQgVE1TMzIwQzJ4L0My
eHgvQzV4IE9wdGltaXppbmcgQyBDb21waWxlciBVc2VyJ3MgR3VpZGUKYW5kCiBTUFJVNTE0
ICBUTVMzMjBDMjh4IE9wdGltaXppbmcgQy9DKysgQ29tcGlsZXIgVXNlcuKAmXMgR3VpZGUK
CgoKVmV1aWxsZXogcsOpcG9uZHJlIMOgIFNhbmNoaXQuR3VwdGFASG9uZXl3ZWxsLmNvbQpF
bnZvecOpIHBhciA6ICAgIGMyOHhAeWFob29ncm91cHMuY29tClBvdXIgOiAgYzI4eEB5YWhv
b2dyb3Vwcy5jb20KY2MgOiAgICAgCgpPYmpldCA6IFtjMjh4XSBob3cgdG8gZ2VuZXJhdGUg
RE1BQyBpbnN0cnVjdGlvbiB1c2luZyBjb21waWxlciBvcHRpb25zIGluIApjb2RlIGNvbXBv
c2VyIHN0dWRpbyBpbiBUTVMzMjBDMjhYCgpoZWxsbyBmcmVucywKaSBtIGZhY2luZyBzb21l
IHByb2JsZW0gaW4gZ2VuZXJhdGluZyBEbWFjIGluIGFzc2VtYmx5IGNvZGUuaSBodiB3cml0
dGVuIGMgCmNvZGUgbiBpIG0gYWJsZSB0byBjb21waWxlIGl0IGluIGNvZGUgY29tcG9zZXIg
c3R1ZGlvLmJ1dCB0YXQgY29kZSBpcyBub3QgCmFibGUgdG8gZ2VuZXJhdGUgZG1hYyBpbnN0
cnVjdGlvbi5pcyB0aHIgc29tZSBjb21waWxlciBvcHRpb25zIHJlcXVpcmVkIHRvIApnZW5l
cmF0ZSB0YXQgcGFydGljdWxhciBpbnN0cnVjdGlvbi5pIG0gcG9zdGluZyB0aGUgYyBjb2Rl
IDoKCiNpbmNsdWRlIDxzdGRpby5oPgojaW5jbHVkZSA8c3RkbGliLmg+CnZvaWQgbWFpbigp
CnsgLyogQ2FsY3VsYXRlIHN1bSBvZiBwcm9kdWN0IHVzaW5nIGR1YWwgMTYtYml0IG11bHRp
cGx5ICovCmNvbnN0IHNpZ25lZCBzaG9ydCBYWzYwMF0gPXswfTsgLyogRGF0YSBpbmZvcm1h
dGlvbiAqLwpjb25zdCBzaWduZWQgc2hvcnQgQ1s2MDBdPXswfTsgLyogQ29lZmZpY2llbnQg
aW5mb3JtYXRpb24gKGxvY2F0ZWQgaW4gbG93IAo0TSkgKi8KLy9jb25zdCBzaWduZWQgc2hv
cnQgaW50ICpwdHIgPShzaG9ydCBpbnQqKSZYOwovL2NvbnN0IHNpZ25lZCBzaG9ydCBpbnQg
KnB0cjEgPShzaG9ydCBpbnQqKSZDOwpzaWduZWQgc2hvcnQgc3VtID0gMDsgCnNob3J0IGlu
dCBpPTA7Ci8vIGludCBOPTYwMDsgLyogRGF0YSBhbmQgQ29lZmYgbXVzdCBiZSBhbGlnbmVk
IHRvIGV2ZW4gYWRkcmVzcyAqLwogd2hpbGUoaTw2MDApCiB7IAovL3N1bSArPSgoKnB0cisr
KSAqICgqcHRyMSsrKSk7CiBzdW0rPShYW2ldKiBDW2ldKT4+NTsgCiBpKys7CiB9CiBwcmlu
dGYoIlxuJWRcbiIsc3VtKTsKfQoKaWYgdGhyIGlzIHNvbWUgY29tcGlsZXIgb3B0aW9uIHRv
IHNldCB0byBnZXQgcmVxdWlyZWQgdG8gZ2VuZXJhdGUgRE1BQyAKaW5zdHJ1Y3Rpb24sdGhh
biBwbHogbGV0IG1lIGtubyB0YXQuCnRobngKCgoKQ2hlY2sgT3V0IEluZHVzdHJ5J3MgRmly
c3QgU2luZ2xlLUNoaXAsIE11bHRpLUZvcm1hdCwgUmVhbC1UaW1lIEhEIFZpZGVvIFRyYW5z
Y29kaW5nIFNvbHV0aW9uIGZvciBDb21tZXJjaWFsICYgQ29uc3VtZXIgRW5kIEVxdWlwbWVu
dDogd3d3LnRpLmNvbS9kbTY0NjcKCllvdSBjYW4gcG9zdCBhIG1lc3NhZ2Ugb3IgYWNjZXNz
IGFuZCBzZWFyY2ggdGhlIGFyY2hpdmVzIG9mIHRoaXMgZ3JvdXAgb24gRFNQUmVsYXRlZC5j
b206Cmh0dHA6Ly93d3cuZHNwcmVsYXRlZC5jb20vZ3JvdXBzL2MyOHgvMS5waHAKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm90ZTogSWYgeW91IGRvIGEgc2lt
cGxlICJyZXBseSIgd2l0aCB5b3VyIGVtYWlsIGNsaWVudCwgb25seSB0aGUgYXV0aG9yIG9m
IHRoaXMgbWVzc2FnZSB3aWxsIHJlY2VpdmUgeW91ciBhbnN3ZXIuICBZb3UgbmVlZCB0byBk
byBhICJyZXBseSBhbGwiIGlmIHlvdSB3YW50IHlvdXIgYW5zd2VyIHRvIGJlIGRpc3RyaWJ1
dGVkIHRvIHRoZSBlbnRpcmUgZ3JvdXAuCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fCkFib3V0IHRoaXMgZGlzY3Vzc2lvbiBncm91cDoKCkFyY2hpdmVzOiAgaHR0
cDovL3d3dy5kc3ByZWxhdGVkLmNvbS9ncm91cHMvYzI4eC8xLnBocAoKVG8gUG9zdDogIFNl
bmQgYW4gZW1haWwgdG8gYzI4eEB5YWhvb2dyb3Vwcy5jb20KCk90aGVyIERTUCBSZWxhdGVk
IEdyb3VwczogaHR0cDovL3d3dy5kc3ByZWxhdGVkLmNvbS9ncm91cHMucGhwCiAKWWFob28h
IEdyb3VwcyBMaW5rcwoKPCo+IFRvIHZpc2l0IHlvdXIgZ3JvdXAgb24gdGhlIHdlYiwgZ28g
dG86CiAgICBodHRwOi8vZ3JvdXBzLnlhaG9vLmNvbS9ncm91cC9jMjh4LwoKPCo+IFlvdXIg
ZW1haWwgc2V0dGluZ3M6CiAgICBJbmRpdmlkdWFsIEVtYWlsIHwgVHJhZGl0aW9uYWwKCjwq
PiBUbyBjaGFuZ2Ugc2V0dGluZ3Mgb25saW5lIGdvIHRvOgogICAgaHR0cDovL2dyb3Vwcy55
YWhvby5jb20vZ3JvdXAvYzI4eC9qb2luCiAgICAoWWFob28hIElEIHJlcXVpcmVkKQoKPCo+
IFRvIGNoYW5nZSBzZXR0aW5ncyB2aWEgZW1haWw6CiAgICBtYWlsdG86YzI4eC1kaWdlc3RA
eWFob29ncm91cHMuY29tIAogICAgbWFpbHRvOmMyOHgtZnVsbGZlYXR1cmVkQHlhaG9vZ3Jv
dXBzLmNvbQoKPCo+IFRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBncm91cCwgc2VuZCBhbiBl
bWFpbCB0bzoKICAgIGMyOHgtdW5zdWJzY3JpYmVAeWFob29ncm91cHMuY29tCgo8Kj4gWW91
ciB1c2Ugb2YgWWFob28hIEdyb3VwcyBpcyBzdWJqZWN0IHRvOgogICAgaHR0cDovL2RvY3Mu
eWFob28uY29tL2luZm8vdGVybXMvCiAK