Technical discussions about the TI C6000 DSPs (including the c62x, c64x and c67x DSPs).
|
TI's PDFs seem to point out the fact that the DSPLib was written for the
62XX series DSPs. I have attempted to compile in the DSPLib, and have had no luck, I can't even get a clean compile. Do i need to recompile the DSPlib for the 6711? I'm aware that most of these are definitly newbie questions, so any help I can get is appreciated. Thank you! --Matt |
|
|
|
> Date: Thu, 07 Feb 2002 16:45:11 -0000 > From: "starbuck3733t" <> > > TI's PDFs seem to point out the fact that the DSPLib was written for > the 62XX series DSPs. I have attempted to compile in the DSPLib, and > have had no luck, I can't even get a clean compile. Do i need to > recompile the DSPlib for the 6711? I'm aware that most of these are > definitly newbie questions, so any help I can get is appreciated. Thank > you! The dsplib does not seem to use any instructions specific to 67XX core; so I suppose it does not need to be recompiled. C62XX instructions are a subset of C67XX. What kind of error messages appeared during the compilation and for which routines? Regards, Andrew > --Matt |
|
|
|
--- In c6x@y..., "Andrew V. Nesterov" <nesterov@h...>
wrote: > > > Date: Thu, 07 Feb 2002 16:45:11 -0000 > > From: "starbuck3733t" <starbuck@m...> > > > > TI's PDFs seem to point out the fact that the DSPLib was written for > > the 62XX series DSPs. I have attempted to compile in the DSPLib, and > > have had no luck, I can't even get a clean compile. Do i need to > > recompile the DSPlib for the 6711? I'm aware that most of these are > > definitly newbie questions, so any help I can get is appreciated. Thank > > you! > > The dsplib does not seem to use any instructions specific to 67XX core; > so I suppose it does not need to be recompiled. C62XX instructions are > a subset of C67XX. > > What kind of error messages appeared during the compilation and for > which routines? > > Regards, > Andrew Andrew - I am using the audio example under ti\examples\6711 \bios\audio as a basis for my project, as the audio example seems like it would act like a pretty good shell for the EQ project. As per page 15 of the DSP Lib reference manual: (http://www-s.ti.com/sc/psheets/spru402/spru402.pdf) Added dsp62x.lib from ti\c6000\dsplib\lib and rts6201.lib from ti\c6000\cgtools\lib to the project, via the standard method. Should i be using rts6700.lib? I assume the other 6700 series lib, rts6700e.lib is for use with the emulator, which I do not have. also added "dsp62x.lib;rts6201.lib" to the include libraries box under the linker tab of the project build options, and c:\ti\c6000 \dsplib\lib to the library search path of the linker tab under build options for the project. Ran a build all: got 1 warning ## start error ## <Linking> >> C:\ti\myprojects\mss - audio\audiocfg.cmd, line 197: warning: (.args) not found Build Complete, 0 Errors, 1 Warnings, 0 Remarks. ## end error ## Lines 196-200 of the audiocfg.cmd example read: .args: fill=0 { *(.args) . += 0x4; } > SDRAM No real idea what this means, but the cmd is a generated file. Is there something I missed somewhere in the config tool? It's just a warning, so I continue. Anyway, now to doing something simple like passing an array of numbers to the maxval() routine. now add C:\ti\c6000\dsplib\include to the include search path (-i) under compiler|preprocessor, so that I can do an #include <maxval.h> I added #include <maxval.h> in the top of audio.c then, I added the following declarations in void main() short maxout; short stuff[4]; and this code to populate/call maxval. stuff[0] = 2; stuff[1] = 5; stuff[2] = -4; stuff[3] = 3; maxout = maxval(&stuff[], 4); Now my C might just be rusty, but DSPlib reference for maxval says: short maxval(short *x, int nx) where *x is a pointer to the input vector, the size of nx. I'm passing a pointer to the array 'stuff' and its size (4). I get the following error: "audio.c", line 57: error: expected an expression line 57 is the maxout = maxval(&stuff[],4); Like I said before, any help would be appreciated. |
|
|
|
The easy one first, you may want to call maxval as any of the following maxout = maxval(stuff, 4); maxout = maxval(&stuff[0], 4); maxout = maxval((short *)&stuff[0], 4); maxout = maxval((short *)stuff, 4); On the runtime support library issue: the audiocfg.cmd uses rtsbios.a67 RTS library (-lrtsbios.a67 somewhere in the middle of the file). .args is a section definition, for info on linker sections see SPRU186 Assembly language tools UM. I never ran into such an error though ... Regards, Andrew > Date: Tue, 12 Feb 2002 21:28:26 -0000 > From: "starbuck3733t" <> > Subject: Re: DSPLib on C6711 > > Andrew - I am using the audio example under ti\examples\6711 > \bios\audio as a basis for my project, as the audio example seems > like it would act like a pretty good shell for the EQ project. > > As per page 15 of the DSP Lib reference manual: > (http://www-s.ti.com/sc/psheets/spru402/spru402.pdf) > Added dsp62x.lib from ti\c6000\dsplib\lib and rts6201.lib from > ti\c6000\cgtools\lib to the project, via the standard method. Should > i be using rts6700.lib? I assume the other 6700 series lib, > rts6700e.lib is for use with the emulator, which I do not have. > also added "dsp62x.lib;rts6201.lib" to the include libraries box > under the linker tab of the project build options, and c:\ti\c6000 > \dsplib\lib to the library search path of the linker tab under build > options for the project. > > Ran a build all: got 1 warning > ## start error ## > <Linking> > >> C:\ti\myprojects\mss - audio\audiocfg.cmd, line 197: warning: > (.args) not found > > Build Complete, > 0 Errors, 1 Warnings, 0 Remarks. > ## end error ## > > Lines 196-200 of the audiocfg.cmd example read: > .args: fill=0 { > *(.args) > . += 0x4; > } > SDRAM > > No real idea what this means, but the cmd is a generated file. Is > there something I missed somewhere in the config tool? It's just a > warning, so I continue. > > Anyway, now to doing something simple like passing an array of > numbers to the maxval() routine. > > now add C:\ti\c6000\dsplib\include to the include search path (-i) > under compiler|preprocessor, so that I can do an #include <maxval.h> > > I added #include <maxval.h> in the top of audio.c then, > I added the following declarations in void main() > > short maxout; > short stuff[4]; > > and this code to populate/call maxval. > > stuff[0] = 2; > stuff[1] = 5; > stuff[2] = -4; > stuff[3] = 3; > maxout = maxval(&stuff[], 4); > > Now my C might just be rusty, but DSPlib reference for maxval says: > short maxval(short *x, int nx) > where *x is a pointer to the input vector, the size of nx. I'm > passing a pointer to the array 'stuff' and its size (4). > > I get the following error: > "audio.c", line 57: error: expected an expression > > line 57 is the maxout = maxval(&stuff[],4); > > Like I said before, any help would be appreciated. |
|
> I assume the other 6700 series lib, rts6700e.lib is for use with > the emulator, which I do not have. The suffix e in the library file name rts***e.lib is for big endian mode, whereas the rts***.lib is little endian. Regards, Tom Dillon |
|
|
|
I am currently trying to interface to the 6711DSK through the HPI port. Does anyone have any example host source code written in VB? Thanks in advance Dave Cranidge |