Interfacing C and TMS320C6713 Assembly Language (Part-I)

This paper describes an interfacing of C and the TMS320C6713 assembly language which is crucially important for many real-time applications. Similarly, interfacing of C with the assembly language of a conventional microprocessor such as MC68000 is presented for comparison. However, it should be noted that the way the C compiler passes arguments among various functions in the TMS320C6713-based environment is totally different from the way the C compiler passes arguments in a conventional microprocessor such as MC68000. Therefore, it is very important for a user of the TMS320C6713-based system to properly understand and follow the register conventions when interfacing C with the TMS320C6713 assembly language subroutine. It should be also noted that in some cases (examples 6-9) the endian-mode of the board needs to be taken into consideration. In this paper, one method is presented in great detail. Other methods will be presented in the future.




References:
[1] A A Wardak, G A King, R Backhouse, Interfacing high-level and
assembly language with microcodes in 3-D image generation. Journal of
Microprocessors and Microsystems, Vol. 18, No.4, May 1994,
Butterworth-Heinemann Ltd.
[2] A A Wardak, Real-Time 3-D Image Generation with TMS320C30
EVM, Journal of Microcomputer Applications, Vol. 18, pp 355-373,
1995, Academic Press Limited.
[3] TMS320C6000 Optimizing C Compiler User-s Guide, SPRU187K,
Texas Instruments, Dallas, TX, 2002.
[4] R Chassaing, Digital Signal Processing and Applications with the 6713
and C6416 DSK, Wiley, New York, 2005.
[5] TMS320C6000 Programmer-s Guide, SPRU198G, Texas Instruments,
Dallas, TX, 2002.
[6] TMS320C6000 CPU and Instruction Set Reference Guide, October
2000, Literature Number: SPRU189F.
[7] TMS320C6000 Assembly Language Tools, User's Guide, Literature
Number: SPRU186K, October 2002.
[8] http://193.140.141.8/~redizkan/Interfacing_C_and_Assembly.pdf