STUDY AND TESTING OF COMPATIBILITY ISSUES BETWEEN THE TEXAS

INSTRUMENTS TMSC6713 DSP STARTER KIT AND CURRENT PC WINDOW

SYSTEMS

A Project

Presented to the faculty of the Department of Electrical and Electronic Engineering

California State University, Sacramento

Submitted in partial satisfaction of the requirements for the degree of

MASTER OF SCIENCE

in

Electrical and Electronic Engineering

by

Prabakar Marikani

FALL 2017

STUDY AND TESTING OF COMPATIBILITY ISSUES BETWEEN THE TEXAS

INSTRUMENTS TMSC6713 DSP STARTER KIT AND CURRENT PC WINDOW

SYSTEMS

A Project

by

Prabakar Marikani

Approved by:

______, Committee Chair Preetham B. Kumar, Ph.D.

______, Second Reader Fethi Belkhouche, Ph.D.

______Date

ii

Student: Prabakar Marikani

I certify that this student has met the requirements for format contained in the University format manual, and that this project is suitable for shelving in the Library and credit is to be awarded for the project.

______, Graduate Coordinator ______Preetham B. Kumar, Ph.D. Date

Department of Electrical and Electronic Engineering

iii

Abstract of

STUDY AND TESTING OF COMPATIBILITY ISSUES BETWEEN THE TEXAS

INSTRUMENTS TMSC6713 DSP STARTER KIT AND CURRENT PC WINDOW

SYSTEMS

by

Prabakar Marikani

This project work is focused on the study and possible resolution of interface

issues between the TMS C6713 DSP Starter Kit (DSK) and computers

operating on Windows versions higher than XP, such as Windows 7, 8 and 10.

Essentially, the current issues to be resolved are the compatibility issues between earlier

model processors and the PCs operating on newer Windows versions.

In order to validate the resolution of these compatibility issues, experiments such as signal generation and digital filtering design/implementation will be tried out using the interface, and the results will be recorded. This work will be very useful for the

DSP curriculum in the EEE Department at Sacramento State.

______, Committee Chair Dr. Preetham B. Kumar

______Date

iv

ACKNOWLEDGEMENTS

I would like to thank my Graduate Coordinator and my advisor for this project

Dr. Preetham Kumar for his support and guidance towards the project. I would like to thank him for always being there to help me understanding the topic and developing the project and also for encouraging me to give my best. Also I would like to thank him for his consistent support and guidance in my academics, from enrolling for classes until submission of my project. I would also like to thank all my professors throughout my

Master’s and Bachelor’s, for giving me an opportunity to learn and grow up to this level.

Lastly, I would like to express my heartfelt gratitude to my family for supporting me during this project. Also to my friends and roommates, thank you for listening, offering me advice, and supporting me through this entire process. This journey would not have been possible without the support of my family, professors and mentors, and my friends.

v

TABLE OF CONTENTS Page

Acknowledgements ...... v

List of Figures ...... viii

Chapter

1. INTRODUCTION ...... ……………………………………………………….. 1

1.1 Introduction to TMS C6X DSP ...... 2

2. EVOLUTON OF DSP IN COMMUNICATIONS ...... 5

2.1 3X Series ...... 6

2.2 5X Series ...... 7

2.3 6X Series ...... 8

3. VERSIONS AND COMPATABILITY ISSUES 10

3.1 CCS Version 3 ...... 10

3.2 CCS Version 4 ...... 10

3.3 CCS Version 5 ...... 11

3.4 CCS Version 6 ...... 12

4. TEST STUDIES ON THE 6713 DSK AND CODE COMPOSER VERSIONS . 13

4.1 Initial steps to create new project on the TMS320C6713 DSK ...... 13

4.2 Hello World Program ...... 15

4.2.1 Hello World Program Code ...... 15

4.3 Sine Wave Generation ...... 18

vi

4.3.1 Sine Wave Generator Program ...... 19

4.4 FIR Filter Implementation ...... 21

4.4.1 FIR Filter Implementation Program...... 22

5. CONCLUSION ...... 27

References ...... 29

vii

LIST OF FIGURES

Figures Page

1. CCS Software Tool ...... 14

2. HelloWorld Program Output ...... 17

3. Sine Wave Generation Block diagram ...... 19

4. FIR Filter Implementation Block diagram ...... 22

5. Filter Input Sine Wave with 2 KHz Frequency ...... 24

6. Filter Input Sine Wave with 4 KHz Frequency ...... 25

7. Time Period Representation of the Filter Input Signal ...... 26

viii

1 i

1

Chapter 1

INTRODUCTION

Code Composer Studio [4] is an integrated development environment (IDE) that

supports TI's (Texas Instruments) and Embedded Processors portfolio.

Originally Code Composer was a product from a company called GO DSP located in

Toronto, Canada, and it was acquired by TI in 1997. After the acquisition, Code

Composer was bundled with a real-time kernel named DSP/BIOS and its name was appended with the word Studio. Code Composer Studio contains set of designed tools used for developing and debugging various embedded applications.

The most important application of Code Composer Studio is to design embedded projects and to perform low-level (bare metal) JTAG based debugging. In recent years, unmodified versions with open source IDE includes support for OS level application debug (, Android, Windows Embedded) and open source compiler suites such as GCC [4].

This integrated development environment provides a user friendly interface which allows the user to interact with the application in each step of the project development. Environment like this allows the user to get used to the compiling and debugging tools faster than other environments. Code Composer Studio includes

2

important features like Eclipse software framework and advanced embedded debug

capabilities which provides rich user interacting development environment for embedded

developers. This integrated environment consists of optimizing /C++ compiler, source

code editor, project build environment, debugger, profiler, and many other features used

for supporting TI’s Embedded Processor [8].

1.1 Introduction to TMS C6X DSP

TMS C6X DSP is one of the most powerful processors developed by Texas

Instruments. It is a low cost development platform mainly designed to increase the

development speed of high precision TI’s applications. This DSP Kit uses USB

communications for plug-and-play functionality. It provides innovative product designs with many features for both experienced and novice designers [1].

This Kit includes latest TI fast simulators and access to the Analysis Tool Kit

which contains Cache Analysis tool and Multi-Event Profiler. Cache Analysis is used for

providing optimized cache usage which helps to improve the application performance.

Cache optimization is achieved by providing graphical representation of the on-chip

cache activity over a period of time. By using this data user can get peak performance by

quickly determining whether their code using on-chip cache [8]. The DSK includes the

Fast Run Time Support libraries and utilities such as Flash burn to program flash, Update

3

Advisor to download tools, utilities and software and a power on self-test and diagnostic utility to ensure the DSK is operating correctly.

The DSK features the TMS320C6713 DSP, a 225 MHz device delivering up to

1800 million (MIPs) and 1350 MFLOPS. This DSP generation is designed for applications that require high precision accuracy [9]. The C6713 is based on the TMS320C6000 DSP platform designed to needs of high-performing high-precision applications such as pro-audio, medical and diagnostic. Other hardware features of the

TMS320C6713 DSK board include [8],

Embedded JTAG support via USB

High-quality 24-bit stereo codec

Four 3.5mm audio jacks for microphone, line in, speaker and line out

512K words of Flash and 16 MB SDRAM

Expansion port connector for plug-in modules

On-board standard IEEE JTAG interface

+5V universal power supply

In order to study the compatibility issue between the DSP Kit and current PC windows system, we used sine wave generation program and FIR filter implementation program. The programs are written using C language in Code composer studio version

4

5.3.0 and we used Window’s 10 PC for this experimentation. The generation programs are compiled and implemented using the DSP Kit TMS320C6713.

5

Chapter 2

EVOLUTON OF DSP IN COMMUNICATIONS

Evolution of Digital signal [2] processing includes introduction of large number of digital signal processing (DSP) products. DSP has become a key component in many consumer, communications, medical, and industrial products, which use a variety of hardware approaches to implement DSP, ranging from the use of off-the-shelf microprocessors to field-programmable gate arrays (FPGAs) to custom integrated circuits

(ICs). As wireless communication standards evolve, the demand for a (DSP) supplying computation with high performance, high flexibility and low power-dissipation is gaining momentum in various industries. The specification of early

DSP was to execute filter algorithm like Finite-impulse response filters, infinite-impulse response filters, Convolution and Correlation and Fast Fourier response. The main application of DSP [3] in communication is to perform mathematical operations on the digitally represented signals. In such applications DSP is powerful enough to outperform most of the general purpose processors for time critical applications. Most of the DSP tasks require repetitive numeric computations, real-time processing, high memory and system flexibility. The effective Digital Signal Processors are often more cost-effective than the other custom hardware, where the development cost of custom ICs may be prohibitive. DSP processors often have an advantage in terms of speed, cost, and energy efficiency.

6

Texas Instruments TMS320 is a general name given to a series of Digital Signal

Processors products produces by Texas Instruments. This DSP processor is available with different forms including Fixed-point arithmetic DSP, Floating-point arithmetic DSP and

Microprocessor DSP. This particular architecture has been around for a while and different products have been developed based on this architecture.

The product codes used by Texas Instruments [4] after the first TMS32010 processor have involved a very popular series of processor named TMS320Cabcd where “a’ is the main series, ‘b’ the generation and ‘cd’ is some custom number for a minor sub-variant. By using this naming method “C5X” is used as abbreviation for products like TMS320C5510.

2.1 3X Series

This series is the very first floating point processor with 16.7 MHZ speed and

60-ns single cycle execution time. It can process 20 – 30 Million Instructions per Second.

This series processor uses two 1k x 32- bit single cycle dual-access RAM blocks and one

4K x 32-bit single cycle dual-access ROM block [6]. Since the majority of the instructions execute in a single cycle (after the pipeline is filled), the figure of 60 ns also indicates how long it takes to execute one instruction. Alternatively, we can say that the

7 device can execute 16.7 MIPS. This helps the processor to perform floating point addition and multiplication in single cycle.

The single cycle operation is achieved by the generation of internal clock with a period of 60 ns. Normally the actual signal produced by the external sources like oscillator or crystal has double the frequency of the internal device speed which is 33.3

MHZ and with the period of 30 ns. This frequency is then divided on-chip to generate the internal clock with a period of 60 ns. The above features allow the newer versions of the

TMS320C30 and other members of the ‘C3x generation to operate in higher frequencies range. This floating point DSP can be used to exploit delayed branch logic and it contains as many as three delay slots.

2.2 5X series

The TMS320C5x processors are the fastest and highest-performance processors among the TI 16-bit fixed point digital signal processors. This efficient application [6] is achieved through larger on-chip memory space, faster cycle time and systematic integration of more than one signal-processing functions. C5X is the most power efficient processors among the other TI’s digital signal processors. It can process 20 – 30 Million

Instructions per Second with the processing speed of 20-35 ns single cycle execution time. These processors make use of its Bit reversed / index addressing mode for Fast

8

Fourier Transform applications. The power efficiency of this processors is achieved by

the inclusion of special features like Power down mode, 8 Auxiliary registers, Single

cycle 16*16 bit parallel multiplier, 32 bit accumulator and 32 bit ALU.

It has some special peripheral features include Eight-level hardware stack, 11

context-switch registers to shadow the contents of strategic CPU-controlled registers

during interrupts, Full-duplex, Synchronous serial port, which directly interface to codec,

Concurrent external DMA performance, using holds and On-chip clock generator. The

major applications of these processors are Digital Cellular Base stations, PDA’s, Digital

Cordless Phones, Modems, Digital audio players, Digital still cameras, GPS receivers,

Wireless modems, Desktop video conferencing and digital audio and video compression

[6].

2.3 6X Series

The TMS320C6x family of digital signal processors (DSPs) is the first among

the other TI processors to employ VelociTI architecture [10], a new code-generation capability, and a large set of representative benchmarks. VelociTI architecture is a very long instruction word (VLIW) architecture. This architecture helps to push the performance of DSP to a new level. VelociTi, like other VLIWs, allows parallel fetch, decode, and execution of multiple instructions that compose the VLIW instruction word.

9

During execution, each instruction is performed on a single functional pair. TI considers this architecture as a Quantum leap in the performance of the TI digital signal processors.

This functions allow the processors to be used in multi-channel and multi-function applications. It can process 1600 Million Instructions per Second at a speed of 5 ns internal cycle time. This particular series of processors run at a frequency of 150 to 300

MHZ.

Some unique features like 0.25 micron 5 – layer metal, One Megabit On-chip

RAM, Four- channel DMA, SRAM, SB-SRAM, SDRAM interface, two Multichannel

TI/EI serial port and 352-pin BGA make these processors predominantly used in highest level of performance and high-precision applications.

The major applications of these processors are Medical, Industry applications, digital imaging, 3D graphics, speech recognition and voice-over packet, digital communications infrastructure, video and image processing, audio and medical imaging, instrumentation and automotive [6]. Texas Instruments provided deep integration and support for the C6X series in GNU compiler collection (GCC). GCC is a compiler system produced by the GNU project supporting various programming languages. The deep integration helped TI to provide Linux kernel to C6X. This culminated in C6X being a supported architecture in GCC release 4.7 on March 22, 2012.

10

Chapter 3

CODE COMPOSER STUDIO VERSIONS AND COMPATABILITY ISSUES

3.1 CCS Version 3

This category "Code Composer Studio v3" includes the 3.0, 3.1, 3.2 and 3.3 releases. The v3.x included the IDE, debugger, Texas Instruments emulation drivers, simulators, compilers and DSP/BIOS. CCSv3.3 is the last release to support the

F24x/24xx family of . This version of CCS is compatible with Windows

2000 Service Pack 4, Windows XP Home Service Pack 1 & 2 and Windows XP Pro

Service Pack 1 & 2. They require 1-2 GB RAM and 500-2 GB free hard disc space. This version had all major chip support components for the DaVinci platform bundled in a single installer package. The major disadvantage is that they are compatible only with 32- bit version. Code Composer Studio 3.x (CCSv3) has limited support for Windows Vista and is not supported in Windows 7 (both 32 and 64 bit versions) [4].

3.2 CCS Version 4

Code Composer Studio V4 is based on the Eclipse open source software framework. They are mainly used for creating development tools. It includes the functionality of Eclipse software framework with advanced embedded debug capabilities.

11

CCSv4 comes bundled with various other components like DSP/BIOS, RTSC and 3P

Emulation drivers. A 'Typical Install' will install most of these and will use around 2 GB of space. A 'Custom Install' can be used to choose only the components of interest to reduce the final install size. 2GB of memory or more memory is highly recommended, it will run with 1GB but it will be slow. CCSv4 supports XP, Vista and Windows7.

3.3 CCS Version 5

This is the first CCS version with no modifications on the latest version of

Eclipse called ‘Stock’ eclipse and CDT. This features enable the users to integrate a wider range of 3rd party plugins and allows the upgradation of CCS open source components and also provide improvements in performance, usability and stability. This version automatically updated Eclipse and CDT for any latest updates which provides compatibility with Eclipse plugins also. CCS v5 is currently using Eclipse 3.6 and CDT

7.0. The most notable improvement is the speed and accuracy improvements on the indexer. It can automatically highlights syntax error in the source code as the source types and Console view highlights errors in red. Its multi-core improvements include execution of GEL commands in each CPU, loading programs and to run past initialization routines.

12

Some of the missing features in this version are no Grid mode support, no in

place editing for columns, AddExpression command does not support explicit expression

formatting and no bit field enumerations. Its major limitation is that the active project is

not selected as the user clicks on a project in the project view. CCS v5 supports both

windows and Linux operating systems.

3.4 CCS Version 6

Code Composer studio V6 is a major release and thus includes many new

features and enhancements. The new features allow the users to become familiar with the

Code composer studio easily. This version of Code Composer Studio is based on Eclipse

4.x. It requires 2 GB of memory space and disk space of 400MB. It runs on 1.0GHz x86 compatible processor and has the capability to run even on the Dual Core x86 compatible processor. This version does not require temporary space needed by the installer. Unlike other versions of code composer studio supports windows, Linux and Mac. It runs on

Windows XP SP3, Windows 7 and even Windows 8. Windows 10 is supported only by

CCS version 6.1.3. This particular version of CCS also supports MacOS.

13

Chapter 4

TEST STUDIES ON THE 6713 DSK AND CODE COMPOSER VERSIONS

For experiments to study the compatibility issues of TMS320C6713 DSK with

the PCs, we used the Code composer studio version 5.3.0 and windows 10 operating

system. Earlier attempts to establish the connection between TMS320C6713 and Linux

had failed. In order to check the connection between the DSP kit and PC we used a

simple “Hello World” program and were able to see the output successfully on the

console. Then we decided to run Sine wave generation FIR digital filter implementation

programs.

4.1 Initial steps to create new project on the TMS320C6713 DSK

The steps provided below are used to create and run program in Code composer studio version 5.3.0. Assuming CCS is installed in C drive, given below is a summarized listing of steps and files required to make a project [9]:

1) Open CCS.

2) To create new project go to Project→ New.

3) Remember to select target TMS320C6713. Then chose output type as

“Executable”, family as “C6000”, variant as “TMS320C67XX” and

DSK6713. We used “Spectrum Digital DSK-EVM-eZdsp onboard USB

14

Emulator” as connection. Then we selected the option “Empty project

with main.c”. Go to Debug and select Connect. Now the target board is

connected to CCS.

4) Add source file (.c) code to the main.c file in the project.

5) Then add necessary library support files to the project.

6) Go to Project → Build All.

7) File → Load Program.

8) Debug → Run/ Resume.

9) Then the required output will appear on the oscilloscope and the

compiling status will appear on the Console.

Figure 1 - CCS Software Tool [4]

15

4.2 Hello World Program

In order to check the connection between the DSK Kit and PCs with windows

10 we ran and compiled the simple “Hello World” program. By using the procedure given in the previous section, we created a new CCS project in Code

Composer Studio version 5.3.0. Then included the program to display “Hello World” in the Console in the main.c file. Then by using the option Project  Build All, we built the program and then performed debugging using Run Debug. This will create the output file with the format main.out. The .out is the executable file which contains the output from the build process is the file that can be loaded and executed on a target device. It can be directly loaded and debugged using CCS or can be converted to a different format, such as a hex format and programmed to the target using a hex programmer. Then, we loaded the main.out file using the option Run  load and the sentence appeared on the Console window. This program confirms the compatibility and connection between the DSK Kit TMS3206713 and the PCs with Windows 10 operating system.

4.2.1 Hello World Program Code

The following is the listing of the “Hello World” program

/*

16

/* H E L L O.C /* */

#include #include "hello.h"

#define BUFSIZE 30 struct PARMS str = { 2934, 9432, 213, 9432, &str }; /* * ======main ======*/ void main() { #ifdef FILEIO int i; char scanStr[BUFSIZE]; char fileStr[BUFSIZE]; size_t readSize; FILE *fptr; #endif /* write a string to stdout */ puts("hello world!\n"); #ifdef FILEIO /* clear char arrays */ for (i = 0; i < BUFSIZE; i++) { scanStr[i] = 0 /* deliberate syntax error */ fileStr[i] = 0; } /* read a string from stdin */ scanf("%s", scanStr); /* open a file on the host and write char array */ fptr = fopen("file.txt", "w"); fprintf(fptr, "%s", scanStr);

17

fclose(fptr); /* open a file on the host and read char array */ fptr = fopen("file.txt", "r"); fseek(fptr, 0L, SEEK_SET); readSize = fread(fileStr, sizeof(char), BUFSIZE, fptr); printf("Read a %d byte char array: %s \n", readSize, fileStr); fclose(fptr); #endif }

The following is the output module of the program:

Figure 2 - HelloWorld Program Output

18

4.3 Sine Wave Generation

To check the compatibility for the sine wave generation experiment, we initially tried execution of the program in Linux machines but the program was not compatible with the usage of Code Composer Studio version 5.3.0 in the Windows Operating

System. After several attempts to find the correct Code Composer Studio version for

Windows, we identified CCS V5 Windows 10 Operating System to be a compatible system.

After setting up the circuit as shown, we connected the DSK to the PCs USB

port and DSK Kit headphone output port to the Oscilloscope, as shown in the schematic

in Figure 3. We created a new Code Composer Studio project with the name

Sine_Wave_Generator. We chose output type “Executable”, family “C6000”, variant

“TMS320C67XX” and “DSK6713”, and used the setting of “Spectrum Digital DSK-

EVM-eZdsp onboard USB Emulator” as connection. Then we selected the option “Empty

project with main.c” and added the header program “sine.h” which contains the function

definitions for the sine wave generator. Then we added the library files which were

needed for the program compilation. Then the program was successfully built and

debugged without any error. Even though the program was compiled without any issue

we were not able to see the sine wave in the Oscilloscope. By running the “Hello world”

program we confirmed that DSK Kit TMS320C6713 is compatible with Windows 10

19

operating system; however for the “Sine wave generation” program we could not see the

output in the oscilloscope.

The following is the block diagram for sine wave generation,

Figure 3 - Sine Wave Generation Block diagram

4.3.1 Sine Wave Generator Program

// **************************************************************** // Description: This application uses Probe Points to obtain input // (a sine wave). It then takes this signal, and applies a gain // factor to it. // Filename: main.c // ****************************************************************

#include #include "sine.h" // gain control variable int gain = INITIALGAIN; // declare and initalize a IO buffer Buffer Contents current Buffer;

20

// Define some functions static void processing();// process the input and generate output static void dataIO();// dummy function to be used with ProbePoint void main() { puts("SineWave example started.\n");

while(TRUE) // loop forever { /* Read input data using a probe-point connected to a host file. Write output data to a graph connected through a probe-point. */ dataIO();

/* Apply the gain to the input to obtain the output */ processing(); } } static void processing() { int size = BUFFSIZE;

while(size--){ currentBuffer.output[size] = currentBuffer.input[size] * gain; // apply gain to input } } static void dataIO() { /* do data I/O */ return; }

// **************************************************************** // Description: This application uses ProbePoints to obtain input // (a sine wave). It then takes this signal, and applies a gain // factor to it. // Filename: Sine.h // **************************************************************** // define boolean TRUE #ifndef TRUE #define TRUE 1 #endif

21

// buffer constants #define BUFFSIZE 0x64 #define INITIALGAIN 5

// IO buffer structure typedef struct IOBuffer { int input[BUFFSIZE]; int output[BUFFSIZE]; } BufferContents;

4.4 FIR Filter Implementation

We performed a similar procedure as the sine wave generation to create the FIR

filter implementation. Before creating the new project, we identified the process to set the

Sampling frequency for the DSK Kit TMS320C6713, from the manual provided for the

Kit. Using the assigned sampling frequency in the Filter design Matlab program, we

found the coefficients needed to perform Finite Impulse Response filter implementation.

Then the new CCS project was created with the necessary library support files and the

filter program written in C language was added. We used two different sources to

generate two sine waves operating in two different frequencies 2 KHz and 4 KHz and

both the signals were provided as input the DSK Kit. The filter program has been

compiled and debugged using the CCS Version 5.3.0 and the output of the program was

given to the DSK Kit. By connecting the Headphone Jack output of the DSK Kit to the

oscilloscope, we can see that DSK Kit filters and passes only the signals with the DSK

22

sampling frequency among the two different frequencies sine wave provided from two different sources.

The schematic of the FIR filter implementation is shown in Figure 3 below.

Figure 4 - FIR Filter Implementation Block diagram

4.4.1 FIR Filter Implementation Program

% Matlab Program to calculate the FIR bandstop filter coefficients, filter_design.m

% Program to calculate the FIR bandstop filter coefficients

clear N = 50 % specifies the filter order (50) fs = 16000 % specifies the sampling frequency

23

f =[ 3900 4100] % specifies the analog filter cutoff frequency vector in Hz. wn=2*pi*f/fs % transforms the analog cutoff frequency vector, f Hz, to ;digital cutoff frequency vector, wn, rad. wn=wn/pi % normalizes the digital cutoff frequency vector h = fir1(N,wn,'stop') % calculates the Fir bandstop filter coefficients

//Fir.c FIR filter. Include coefficient file with length N

#include "bs2700.cof" //coefficient file BS @ 2700Hz int yn = 0; //initialize filter's output short dly[N]; //delay samples interrupt void c_int11() //ISR { short i;

dly[0] = input_sample(); //new input @ beginning of buffer yn = 0; //initialize filter's output for (i = 0; i< N; i++) yn += (h[i] * dly[i]); //y(n) += h(i)* x(n-i) for (i = N-1; i > 0; i--) //starting @ end of buffer dly[i] = dly[i-1]; //update delays with data move

output_sample(yn >> 15);//scale output filter return; }

void main() { comm_intr(); //init DSK, codec, McBSP while(1); //infinite loop }

The following pictures are the filter inputs with different frequencies.

24

Figure 5 - Filter Input Sine Wave with 2 KHz Frequency

25

Figure 6 - Filter Input Sine Wave with 4 KHz Frequency

26

Figure 7 - Time Period Representation of the Filter Input Signal

27

Chapter 5

CONCLUSION

This project has focused on one of the very practical issues facing the operation

of the TMS320C6713 DSK on PCs running Windows versions 7 or higher. The primary

interfacing program is the Code Composer Studio (CCS), which in itself has various

versions, starting from version 3 to version 7. The compatibility issue study was done

systematically, utilizing all the latter versions of CCS one by one and testing the

compilation/execution of typical DSK programs such as signal generation and digital

filtering. In the case of signal generation, compilation was completed successfully, however, execution of the output file to display the sine wave on the oscilloscope did not go through successfully, even though the command message indicated completion of the program. In the case of the digital filtering, we were able to perform the compilation successfully similar to sine wave generation, but the execution of the output file to display the FIR filtered signal on the digital signal analyzer did not go through successfully.

The final conclusion made from the above analysis using different CCS versions is as follows: even though we were able to connect the DSK Kit 6713 successfully with the PCs operating on newer windows version and successfully compile/execute the DSK

28 programs, some compatibility issue due to some missing library files prevents us from displaying the required output on the digital signal analyzer.

29

REFERENCES

[1] J. Eyre and J. Bier, " The evolution of DSP processors ", IEEE Signal Processing

Magazine, March 2000.

[2] Lapsley, "DSP Processor Fundamentals: Architectures and Features", New

York:IEEE Press, 1996.

[3] R.G. Lyons, Understanding Digital Signal Processing, MA, Reading:Addison

Wesley,1996.

[4] Code Composer Studio page at wiki.

[5] Akrem Elrajoubi, Simon S. Ang and Ali Abushaiba, “TMS320F28335 DSP

Programming using MATLAB Simulink Embedded Coder: Techniques and

Advancements”, Control and Modeling for Power Electronics (COMPEL), 2017

IEEE 18th Workshop.

[6] Edwin J. Tan and Wendi B. Heinzelman, “ DSP Architectures: Past, Present and

Future”.

[7] Kun Shan Lin, Gene A. Frantz and Ray Kumar, “ The TMS320 Family of Digital

Signal Processors”, IEEE-1987.

[8] Texas Instruments TMS320 Page at wiki. (https:// en. wikipedia.org/wiki/

Texas_Instruments_TMS320).

[9] Vijay K. Madisetti and Douglas B. Williams, “Introduction to the TMS320 Family of

Digital Signal Processors”, Boca Raton: CRC Press LLC, 1999.

30

[10] Loc Truong, “The VelociTI™ Architecture of the TMS320C6xxx”, Hot Chips IX

Symposium, August 1997.