hi
I want some basic function in assembly language like division of two numbers and square root of a number for c6000 dsp processor or c6474 dsp processor . please suggest any link from where i can get it.
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.
hi
I want some basic function in assembly language like division of two numbers and square root of a number for c6000 dsp processor or c6474 dsp processor . please suggest any link from where i can get it.
You can look at the Run-time support library.
RTS is open source. The source code is zipped inside the Code Generation Tools folder. For example, the source code in the default installation path is at: C:\Program Files\Texas Instruments\C6000 Code Generation Tools 6.1.11\lib\rtssrc.zip
Some examples:
You can check the division function (divi) that is called when you divide 2 integers at C:\Program Files\Texas Instruments\C6000 Code Generation Tools 6.1.11\lib\rtssrc divi.asm.
I very strongly recommend that you not write any assembly language for 64x+. It is a VERY difficult task, even for very experienced assembly programmers. Reasons why:
I recommend using C code with optimization cranked up, potentially making use of some intrinsics. If you decide to go down the assembly route there is something called "serial" assembly or "linear" assembly which would at least eliminate the need to understand the VLIW architecture and the instruction scheduling, i.e. you would write assembly like you're used to writing it and let the assembly optimizer handle the rest.
hi
thank for answer.
can you suggest me any link from where i get code of all basic mathematical function in assembly language ( fully optimise clock cycle ) .
these functions like division, sure root, cube root, magnitude of complex no, recipocal of a number.
This type of thing would be sold by other companies as TI does not provide it. We provide a standard C library but that is not hand-optimized assembly.
Brad Griffis said:This type of thing would be sold by other companies as TI does not provide it.
Does anyone know of a company who does what Brad is referring to? I'm interested in obtaining these highly optimized math operations for the C64 DSP mentioned previously like the division.
You can find 3rd party libraries here:
Which processor are you using and what specific algorithms are you looking for? Perhaps I can make a more specific recommendation.
I'm using the C64x DSP on the OMAP3530. For now, I'm looking for FFTs and other simpler stuff like optimized division operations. For the FFT, I was planning to use the one included with DSPLIB but remained unsure about the division operations.
My C64x experience with division operations (TI run time lib) is that they are cpu cycle intensive and disqualify pipelining when division operations are within a loop. Just looking for alternatives that can help me speed up my development time.
Joe Joe said:For now, I'm looking for FFTs and other simpler stuff like optimized division operations. For the FFT, I was planning to use the one included with DSPLIB but remained unsure about the division operations.
Yes, dsplib is good for the FFTs. I recommend IQmath for the division.
Joe Joe said:My C64x experience with division operations (TI run time lib) is that they are cpu cycle intensive and disqualify pipelining when division operations are within a loop. Just looking for alternatives that can help me speed up my development time.
The IQmath library allows you to inline the calls for this very reason.