Implementation Techniques for DSP

Similar documents
Dual Tone Multi-Frequency (DTMF) Generation with TI-DSP TMS320C6713 Processor

As CCS starts up, a splash screen similar to one shown below will appear.

ECE 487 LAB 1 ÇANKAYA UNIVERSITY Overview of DSP Board

Lab 4- Introduction to C-based Embedded Design Using Code Composer Studio, and the TI 6713 DSK

Code Composer Studio Operation Manual

Experiment 6 Finite Impulse Response Digital Filter (FIR).

Digital Signal Processing Laboratory 7: IIR Notch Filters Using the TMS320C6711

F28069 ControlCard Lab1

Chapter 7. Hardware Implementation Tools

A DSP Systems Design Course based on TI s C6000 Family of DSPs

DSP Laboratory (EELE 4110) Lab#6 Introduction to Texas Instruments DSK TMS320C6711

ECE4703 Real-Time DSP Orientation Lab

APPENDIX A. CODE COMPOSER STUDIO (CCS) v5: A BRIEF TUTORIAL FOR THE DSK6713

F28335 ControlCard Lab1

CPE 323: Laboratory Assignment #1 Getting Started with the MSP430 IAR Embedded Workbench

Workshop Goals. Page 2 of 68

As CCS starts up, a splash screen similar to one shown below will appear.

The sl_api (batch) Server/Loader example.

PCM3006 Daughtercard for the Texas Instruments TMS320C6X11 Digital Signal Processing (DSP) Starter Kit

Cyclone II FFT Co-Processor Reference Design

FFT Co-Processor Reference Design

Create and Debug a CCSv5.5 Project for DSK6713- or DUETT-Board1

TI TMS320C6000 DSP Online Seminar

Digital Signal Processing and Applications with the TMS320C6713 DSK

TMS570LS Microcontrollers: Using the NHET as a General Purpose I/O Pin

TUTORIAL Auto Code Generation for F2833X Target

Conclusions. Introduction. Objectives. Module Topics

BASICS OF THE RENESAS SYNERGY PLATFORM

SMT107 User Manual User Manual (QCF42); Version 3.0, 8/11/00; Sundance Multiprocessor Technology Ltd. 1999

TUTORIAL Auto Code Generation for F2803X Target

Sensor Controller Studio Hands-On

TUTORIAL Auto Code Generation for F2806X Target

F28027 USB Stick Lab1_3

Embedded Target for TI C6000 DSP 2.0 Release Notes

The sl_api (threads) Server/Loader example.

Interfacing the ADS8320/ADS8325 to The TMS320C6711 DSP

: REAL TIME SYSTEMS LABORATORY DEVELOPMENT: EXPERIMENTS FOCUSING ON A DUAL CORE PROCESSOR

Texas Instruments Code Composer and ez-dsp Setup Notes

TMS320C6000 TCP/IP Stack Software. User's Guide

IAR C-SPY Hardware Debugger Systems User Guide

Using the DSK In CalPoly EE Courses - Dr Fred DePiero

Lab 6 : Introduction to Simulink, Link for CCS & Real-Time Workshop

Note that FLIP is an Atmel program supplied by Crossware with Atmel s permission.

THE OPTIMIZATION AND REAL-TIME IMPLEMENTATION OF

3 TUTORIAL. In This Chapter. Figure 1-0. Table 1-0. Listing 1-0.

System Framework Overview Guide and Instructions on How to Use the Template Projects

Outline: System Development and Programming with the ADSP-TS101 (TigerSHARC)

A DSP/BIOS AIC23 Codec Device Driver for the TMS320C6416 DSK

WS_CCESSH-OUT-v1.00.doc Page 1 of 8

To install the Texas Instruments CCS Compiler, follow these steps: 1. Go to the TI Wiki page (

DSP II: ELEC STS Module

Section 2: Getting Started with a FPU Demo Project using EK-LM4F232

TI DSP/BIOS Lab. By: David Waldo

With Fixed Point or Floating Point Processors!!

Mechatronics Laboratory Assignment #1 Programming a Digital Signal Processor and the TI OMAPL138 DSP/ARM

Cortex-M3/M4 Software Development

ECE 5655/4655 Laboratory Problems

Exercise 4-1. DSP Peripherals EXERCISE OBJECTIVES

Developing and Integrating FPGA Co-processors with the Tic6x Family of DSP Processors

2 TUTORIAL. Overview. VisualDSP Getting Started Guide 2-1 for SHARC DSPs

Lab 1: Introduction to C Programming. (Creating a program using the Microsoft developer Studio, Compiling and Linking)

Further Studies of a FFT-Based Auditory Spectrum with Application in Audio Classification

Rapid Prototyping System for Teaching Real-Time Digital Signal Processing

2014, IJARCSSE All Rights Reserved Page 461

Configuring Code Composer Studio for OMAP Debugging

STM32L100C-Discovery Board Projects

Digital Signal Processing and Applications with the TMS320C6713 and TMS320C6416 DSK second edition

SignalMaster Manual Version PN: M072005

2 ABOUT VISUALDSP++ In This Chapter. Figure 2-0. Table 2-0. Listing 2-0.

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

Using the TMS320C5509 USB Bootloader

DSP/BIOS by Degrees: Using DSP/BIOS (CCStudio 2.0) Features in an Existing Application

Digital Signal Processors: fundamentals & system design. Lecture 2. Maria Elena Angoletta CERN

MEM MEM Control Applications of DSP. Lab 2. Project Creating & GPIO DSP28355 & CCSv5

Module 2: Adding IP to a Hardware Design

Lab 0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio

Laboratory 4 Interrupt I/O

EE289 Lab Spring 2012

Modular ARM System Design

Debugging Shared Memory Systems

Classification of Semiconductor LSI

Introduction to EZ430 RF2500

Real-Time DSP for Educators

Introduction to the M16C Development Environment

Moses Jones Application Note ECE 480 Design Team 7 Programming Altimeters. Using MSP 430 Launch Pad 11/8/2013

April 4, 2001: Debugging Your C24x DSP Design Using Code Composer Studio Real-Time Monitor

TI s PCI2040 PCI-to-DSP Bridge

Application Note for EVP

Embedded Systems. 2. Software Development. Lothar Thiele. Computer Engineering and Networks Laboratory

M16C/62P QSK QSK62P Plus Tutorial 1. Software Development Process using HEW4

DSP Applications Using C and the TMS320C6x DSK

Code Composer Studio Getting Started Guide

Code Composer Studio Development Tools v3.3. Getting Started Guide

Exercise 3-1. The Program Controller EXERCISE OBJECTIVES

GLOSSARY. VisualDSP++ Kernel (VDK) User s Guide B-1

LAB #1: The CSM12C32 Module and PBMCUSLK Project Board

Bootloading the TMS320VC5402 in HPI Mode

Choosing the Appropriate Simulator Configuration in Code Composer Studio IDE

NEW CEIBO DEBUGGER. Menus and Commands

Getting Started Guide: TMS-FET470A256 IAR Kickstart Development Kit

Transcription:

Implementation Techniques for DSP 1 Implementation Techniques for DSP Part 1: Development Tools (3 hours) Part 2: FFT Implementation (6 hours) Introduction The laboratory exercises presented in this handout will help you put into practice most of the material covered in the DSP implementation module and in particular the use of the Code Composer Studio (CCS) which comprises of the compiler, assembler, linear assembler, linker and simulator. You are also required in Part to implement and FFT algorithm and produce a full report. Equipment required Hardware PC with Windows NT DSP Starter Kit DSK6211 DSP Platform 1 Power supply Parallel port cable Signal generator Oscilloscope Software CCS software development tools (compiler, assembly, linear assembly, linker) See directory p:\courses\ naim\fft 1 Naim Dahnoun 2001 (email: Naim.Dahnoun@Bristol.ac.uk)

Implementation Techniques for DSP 2 1. Part 1: Development Tools (Using the code generation tools) 1.1 Objective In this section use the program FFTlab.c to get familiar with compiling, assembling, linking and debugging. 1.2 Background The CCS consists of the following modules: The C-compiler, assembler, linker, simulator and the debugger. If the source code is written in C language, the code should be compiled using the Optimising C Compiler provided by Texas Instruments [SPRU187]. This compiler will translate the C source code into an assembly code. The assembly code generated by either the programmer, the compiler or the linear assembler is then passed through the assembler that translates the code into object code. The resultant object file(s), any library code and a command file are all combined by the linker which produces a single executable file, see Figure 1. The command file mainly provides the target hardware information to the linker. Error! No topic specified. Figure 1 Development tools 1.3 using the Code Composer Studio, CCS The CCS is similar to other Integrated Design Environments (IDE) such as those produced by Microsoft and Borland. Before editing a file(s), compiling, assembling, linking, running and debugging you need to do the following: A. Create a new project (see Figure 2) Project:New The project information is stored in the.mak file

Implementation Techniques for DSP 3 Figure 2: Creating a new project B. Set the project options Project:Options The project options control the options for the compiler, assembler and linker. B.1 Compiler options Figure 3 shows the property sheet where the compiler options are entered and Table 1 shows the options used in this lab.

Implementation Techniques for DSP 4 Figure 3: Compiler options tab Option Description -g Enables source level debugging -s Creates an interlist file -o3 Highest optimisation level Table 1: Compiler options used in this lab B. 2 Assembler options Table 2 shows the options used in this laboratory Option Description -g Similar to the compiler option -g -l Creates a list file -s Makes all symbols appear as global Table 2: Assembler options used in this laboratory

Implementation Techniques for DSP 5 B. 3 Linker options Table 3 shows the linker options used in this laboratory Option Description -o <filename> Specifies the output file (filename.out) -m <filename> Specifies the memory map file (filename.map) Table 3: Compiler options used in this lab 1.4 Starting the experiment 1 Copy all the files in p:\course\naim\fft to your working directory. 2 Setup the hardware by: (a) Connect the DSK to the PC and connect the power supply (b) Push the reset button on the DSK (c) Open the CCS 2 Create a new project (call it fftlab.mak) 3 Set the compiler, assembler and linker options as shown in Tables 1, 2 and 3 4 Add the files to the project (Project:Add Files) as shown in Figure 3 5 Set CCS to automatically load the executable file (.out) after every build operation by selecting Option:Program Load and ticking the Load Program after Build option 6 Build the executable file. To do this either by (a) Select Project:Rebuild All (b) Or use the Rebuild All toolbar icon 7 Run to the main function by selecting Debug:Go Main 8 Follow the instructions of the demonstrator

Implementation Techniques for DSP 6 3. Part 2: FFT Implementation 3. 1 Introduction The Fourier transform is a fundamental tool for spectral analysis. The combination of existence of fast calculation algorithms and high speed and low cost processors has led to a vast diversity of applications which span from high performance spectrum analysis to simple gadgets. 3.2 i Objective of the experiment During the next two laboratory sessions, you are required to implement an FFT algorithm of your choice on the TMS320C6211 DSP processor. The code should initially be written in C language and if time allows!, you can implement part of the code in assembly. You are also required to produce a formal report describing your FFT algorithm, the implementation issues and finally discuss your results. Steps to follow 1- Write the FFT algorithm in C and test its functionality using any C compiler. To make the debugging simple, create an input data structure and limit your number of FFT points to 16 (make your FFT length parameter a variable that you can change). 2- Once your FFT algorithm is fully tested and functional do the necessary modifications for porting the C code to the TMS320C6211 platform. At this stage you can use the Code Composer studio with the DSK6211 to debug and test your code (see Part 1). 3- Once step 2 is successfully completed, you can move on to the real-time implementation. Due to the fact that not all the material couldn t be completed during the lectures because of the time constraint, the overhead code for initialisation of the codec, Multichannel Buffered Serial Port (McBSP), Enhanced Direct Memory Access (EDMA) and interrupts has been written for you and explained during the in Part 1 session (see code in p:\courses\ naim\fft\fftlab.mak). The EDMA is programmed to transfer an N (count) input data sequence sampled from the codec through the Serial Port 0 at a rate f s determined by the Internal Timer 1. The EDMA is also programmed to generate an interrupt when the transfer of N data samples is completed. This interrupt is also programmed to call the edma_isr( ) function, where the FFT code should reside (see Figure 4 and Figure 5).

Implementation Techniques for DSP 7 Buffer (ping) Destination address 1 count Serial Port Source address EDMA Buffer (pong) FFT Processing Destination address 2 event (internal timer 1 is selected) Switch address at the completion of a transfer count Figure 4: Illustration of the EDMA functionality Signal Generator Osciloscope/ Spetrum analyser A/D Codec D/A S e r i a l P o r t 1 TMS320C6211 PC DSK6211 Figure 5: Block diagram of the DSP platform

Implementation Techniques for DSP 8