Familiarization With Dsp Kit

Embed Size (px)

Citation preview

  • 8/11/2019 Familiarization With Dsp Kit

    1/14

    FAMILIARIZATION WITH DSP KIT

    DSP STARTER KIT

    The Code Composer StudioTMIDE is a development environment that tightly integrates the

    tools needed to create winning DSP applications. It is designed for the Texas Instruments TI! high

    performance TMS"#$C%$$$ C%$$$! and digital signal processor DSP! platforms.

    The Key components of the Code Compose St!d"o IDE "nc#!de$

    o Tuning tools for optimi&ing applications

    o C'C(( Compiler) *ssem+ly ,ptimi&er and -iner Code /eneration Tools!

    o 0eal1Time ,perating System DSP'2I,S!

    o *+ility to dynamically connect and disconnect from targets

    o 0eal1Time Data Exchange +etween host and target 0TD3!

    o 4pdate *dvisor

    o Instruction Set Simulator

    o *dvanced Event Triggering

    o Data 5isuali&ation

    The Code Composer Studio IDE 5ersion ".$ Tuning Edition! integrates all host and target

    tools in a unified environment. It also simplifies DSP system configuration and application design

    to help designers get started faster than ever +efore.

    The Code Composer Studio IDE) an integral component of TI.s software strategy) includes

    the features necessary to tae you through each step of the application development flow. *ll of

    these features are provided in an integrated product allowing developers to focus their energy on

    innovation.

    Code Composer Studio Setup is a utility that is used to define the target +oard or simulator

  • 8/11/2019 Familiarization With Dsp Kit

    2/14

    the user will use with the Code Composer Studio IDE. This information is called the system

    configuration and consists of a device driver that handles communication with the target plus other

    information and files that descri+e the characteristics of your target) such as the default memory

    map. The Code Composer Studio IDE needs this information to esta+lish communication with

    your target system and to determine which tools are applica+le for the given target.

    *s DSP applications +ecome more complex) it is important to structure them in an

    efficient) maintaina+le manner. This re6uires use of a real1time ernel that ena+les system

    functions to +e allocated to different threads. The DSP'2I,S ernel provides an efficient set of

    ernel) real1time analysis) and peripheral configuration services) eliminating the need to develop

    and maintain custom DSP operating systems. DSP'2I,S is an integral part of the Code Composer

    Studio IDE. The ernel o+7ect +rowser displays the state of operating system o+7ects such as tass

    and semaphores!) and provides data on stac usage and stac overflow'underflow. Thesecapa+ilities mae it easier to de+ug applications and optimi&e usage of ,S and system resources.

    DSP'2I,S consists of four parts8 a real1time ernel) real1time analysis services) peripheral

    configuration li+raries) and a graphical configuration tool. 9or each supported processor)

    DSP'2I,S includes a set of peripheral management functions and macros nown as the Chip

    Support -i+rary CS-!. The CS- supports on1chip peripherals for all TMS"#$C:$$$ and

    TMS"#$C%$$$ devices and is fully integrated into the DSP'2I,S Configuration tool. The CS-

    supports +oth graphical and programmatic peripheral configuration and control) eliminating the

    need to remem+er individual register flags settings or painstaingly calculate +itmaps.

    Code Composer Studio IDE;s open plug1in architecture called

    The Code Composer Studio IDE includes fully integrated code editing environment tunedfor writing C) C(( and DSP assem+ly code. The editor provides standard editing features such as8

    eyword highlighting) printing) cut and paste) drag and drop) etc. The maximum num+er of lines

    per file is #)=>?)>@")%>@ and the maximum num+er of characters per line is ":$$.

    The Code Composer Studio compile tools shifts the +urden of optimi&ation from hand1coded

    assem+ly to the C Compiler. Aith these tools it is possi+le to exploit the high performance of TI;s

  • 8/11/2019 Familiarization With Dsp Kit

    3/14

    DSP platforms without ever writing hand1coded assem+ly.

    De%!&&e

    The Code Composer Studio de+ugger maes it easy to find and fix errors in realBtime

    em+edded applications. 9or example) de+ugger commands ena+le you to control program

    execution. De+ugger windows and dialogs allow you to view source code and trac the values of

    program varia+les in memory and registers. 2reapoints ena+le you to stop execution at a specified

    location and examine the current state of the program.

    Re'#(T"me D't' E)ch'n&e *RTD+,

    0TD3 allows designers to monitor continuously their systems and gain realBtime insights

    into running applications. It also allows data to +e streamed with *ctive3Bcompliant application

    such as Excel) -a+5IEA or M*T-*2. Ahen displaying 0TD3 data) host applications can readeither live or saved data. The IDE also supports 0TD3 with multiple processors on either the same

    or different scan paths.

    App#"c't"on Code T!n"n&

    The Code Composer Studio IDE now offers a series of tools called Tuning Tools! to help

    developers to optimi&e applications. These tools allow users to set goals and trac progress

    towards goals +y collecting different sets of data. * new *dvice Aindow provides on1the1fly

    recommendations a+out how to mae code meet user goals.

    The IDE has two -ayouts) tuning layout and standard layout!) which can +e toggled from the

    main tool+ar. Standard layout is the default) while tuning layout represented +y a tuning for icon

    on the tool+ar! opens advice windows on the left side. The tuning layout focuses attention on the

    optimi&ation needs of the user.s program. The advice window wals the user through the

    optimi&ation'tuning process specific to the DSP device and a selected goal.

    D't' -"s!'#".'t"on

    Code Composer Studio IDE incorporates an advanced signal analysis interface that ena+les

    developers to monitor signal data critically and thoroughly. The new features are useful indeveloping applications for communications) wireless) and image processing) as well as general

    DSP applications. Time'fre6uency) Constellation plot) Eye diagram) Image display etc are the

    various graphs that can +e drawn.

    Re'#(T"me An'#ys"s

    0eal1time analysis tools help developers to see time1related interactions +etween code

  • 8/11/2019 Familiarization With Dsp Kit

    4/14

    sections. They can reveal su+tle real1time pro+lems that otherwise might go undetected. Code

    Composer Studio IDE allows developers to pro+e) trace and monitor a DSP application while it

    runs. Even after the program has halted) information already captured through real1time analysis

    tools can provide invalua+le insight into the se6uence of events that led up to the current point of

    execution.

    /ene'# E)tens"on L'n&!'&e */EL,

    The /eneral Extension -anguage /E-! is an interpretive language similar to C that lets

    you create functions to extend Code Composer Studio IDE;s usefulness. *fter creating /E-

    functions using the /E- grammar) you can load them into Code Composer Studio IDE. Aith /E-)

    you can access actual'simulated target memory locations and add options to the IDE;s /E- menu.

    /E- is particularly useful for automated testing.

    CONCL0SION

    Code Composer Studio IDE v".$ represents the evolution of the DSP development

    environment. It contains functionality needed +y today;s larger) distri+uted) glo+al pro7ect teams.

    2y reducing time spent on repetitive tass and tool development) the IDE gives the developer more

    time to focus on innovation.

  • 8/11/2019 Familiarization With Dsp Kit

    5/14

    SOFTWARE DE-ELOPMENT FLOW IN TMS PROCESSORS

    Too#s Desc"pt"ons

    The following list descri+es the tools that are shown in 9igure =1=8

    The C1C22 comp"#e translates C'C(( source code into assem+ly language source code.

    The compiler pacage includes the #"%'y(%!"#d!t"#"ty) with which you can +uild your

    own runtime li+raries.

    The 'ssem%#e translates assem+ly language source files into machine language C,99

    o+7ect files. Source files can contain instructions) assem+ler directives) and macro

    directives. ou can use assem+ler directives to control various aspects of the assem+ly

    process) such as the source listing format) data alignment) and section content.The

  • 8/11/2019 Familiarization With Dsp Kit

    6/14

    'ssem%#e translates assem+ly language source files into machine language C,99 o+7ect

    files. The TMS"#$C:>x)::x tools include two assem+lers. The mnemonic assem+ler

    accepts mnemonic assem+ly source files. The alge+raic assem+ler accepts alge+raic

    assem+ly source files. Source files can contain instructions) assem+ler directives) and

    macro directives. ou can use assem+ler directives to control various aspects of the

    assem+ly process) such as the source listing format) data alignment) and section content.

    The #"n3e com+ines relocata+le C,99 o+7ect files created +y the assem+ler! into a single

    executa+le C,99 o+7ect module. *s it creates the executa+le module) it +inds sym+ols to

    memory locations and resolves all references to those sym+ols. It also accepts archiver

    li+rary mem+ers and output modules created +y a previous liner run. -iner directives

    allow you to com+ine o+7ect file sections) +ind sections or sym+ols to addresses or within

    memory ranges) and define or redefine glo+al sym+ols.

    The 'ch"4e collects a group of files into a single archive file. 9or example) you can

    collect several macros into a macro li+rary. The assem+ler searches the li+rary and uses the

    mem+ers that are called as macros +y the source file. ou can also use the archiver to

    collect a group of o+7ect files into an o+7ect li+rary. The liner includes in the li+rary the

    mem+ers that resolve external references during the lin.

    The mnemon"c(to('#&e%'"c 'ssem%#y t'ns#'to !t"#"ty converts an assem+ly language

    source file containing mnemonic instructions to an assem+ly language source file

    containing alge+raic instructions.

    The #"%'y(%!"#d !t"#"ty +uilds your own customi&ed C'C(( runtime1support li+rary.

    Standard runtime1support li+rary functions are provided as source code in rts.src and as

    o+7ect code in rts.li+.

    The TMS"#$C:>x)::x Code Composer Studio de%!&&eaccepts C,99 files as input) +ut

    most EP0,M programmers do not.

    The he) con4es"on !t"#"ty converts a C,99 o+7ect file into TI1tagged) Intel) Motorola) orTetronixo+7ect format. The converted file can +e downloaded to an EP0,Mprogrammer.

    The '%so#!te #"ste accepts lined o+7ect files as input and creates .a+s files as output. ou

    assem+le .a+s files to produce a listing that contains a+solute rather than relative addresses.

    Aithout the a+solute lister) producing such a listing would +e tedious and re6uire many

    manual operations.

  • 8/11/2019 Familiarization With Dsp Kit

    7/14

    The coss(efeence #"ste uses o+7ect files to produce a cross1reference listing showing

    sym+ols) their definitions) and their references in the lined source files.

    The C,99 d"s'ssem%#eonly in c::x! accepts o+7ect files and executa+le files as input

    and produces an assem+ly listing as output. This listing shows assem+ly instructions) their

    opcodes) and the section program counter values. The disassem+ly listing is useful for

    viewing the8

    *ssem+ly instructions and their si&e

    Encoding of assem+ly instructions

    ,utput of a lined executa+le file

    The o%5ect f"#e d"sp#'y !t"#"typrints the contents of o+7ect files) executa+le files) and'or

    archive li+raries in +oth human reada+le and 3M- formats.

    The n'me !t"#"ty only in c::x! prints a list of names defined and referenced in a C,99

    o+7ect or an executa+le file.

    The st"p !t"#"ty removes sym+ol ta+le and de+ugging information from o+7ect and

    executa+le files.

    The purpose of this development process is to produce a module that can +e executed in a C:>x

    target system. ou can use one of several de+ugging tools to refine and correct your code.

    *vaila+le products include8

    *n instruction1accurate software simulator

    *n evaluation module E5M!

    *n 3DS emulator

    These de+ugging tools are accessed within Code Composer Studio.

  • 8/11/2019 Familiarization With Dsp Kit

    8/14

    TMS 678 DSP PROCESSORS

    TMS"#$ DSP family consists of fixed1point) floating1point) and multiprocessor digital

    signal processors DSPs!. The TMS"#$ DSP architecture is designed specifically for real1timesignal processing. The following characteristics mae this family the ideal choice for a wide range

    of processing applications8

    1 5ery flexi+le instruction set

    1 Inherent operational flexi+ility

    1 igh1speed performance

    1 Innovative parallel architecture

    1 Cost1effectiveness

    1 C1friendly architecture

    Today) the TMS"#$ DSP family consists of three supported DSP platforms8

    TMS"#$C#$$$) TMS"#$C:$$$) and TMS"#$C%$$$. Aithin the C:$$$ DSP platform there are

    three generations) the TMS"#$C:x) TMS"#$C:>x) and TMS"#$C::x.

    The C:>x DSP has a high degree of operational flexi+ility and speed. It com+ines an

    advanced modified arvard architecture with one program memory +us) three data memory

    +uses) and four address +uses!) a CP4 with application1specific hardware logic) on1chip memory)

    on1chip peripherals) and a highly speciali&ed instruction set. Spinoff devices that com+ine the

    C:>x CP4 with customi&ed on1chip memory and peripheral configurations have +een) and

    continue to +e) developed for speciali&ed areas of the electronics maret.

    The C:>x devices offer these advantages8

    Enhanced arvard architecture +uilt around one program +us) three data +uses) and four

    address +uses for increased performance and versatility

    *dvanced CP4 design with a high degree of parallelism and application specific hardware

    logic for increased performance

    * highly speciali&ed instruction set for faster algorithms and for optimi&ed high1level

    language operation

  • 8/11/2019 Familiarization With Dsp Kit

    9/14

    Modular architecture design for fast development of spinoff devices

    *dvanced IC processing technology for increased performance and low power

    consumption

    -ow power consumption and increased radiation hardness +ecause of new static designtechni6ues

    9:6 TMS678C;G1words program) %>G1words data)

    and %>G1words I',!) with extended program memory in the C:>@) C:>F) C:>$#) C:>=$)

    and C:>#$.

    Inst!ct"on set

    Single1instruction repeat and +loc repeat operations

    2loc memory move instructions for +etter program and data management

    Instructions with a "#1+it long operand

    Instructions with #1 or "1operand simultaneous reads

  • 8/11/2019 Familiarization With Dsp Kit

    10/14

    *rithmetic instructions with parallel store and parallel load

    Conditional1store instructions

    9ast return from interrupt

    ,n1chip peripherals

    Software1programma+le wait1state generator

    Programma+le +an1switching logic

    ,n1chip phase1loced loop P--! cloc generator with internal oscillator or external cloc

    source. Aith the external cloc source) there are several multiplier values availa+le from

    one of the device

    Speed$ #:'#$'=:'=#.:'=$1ns execution time for a single1cycle) fixed1point+ instruction >$

    MIPS':$ MIPS'%% MIPS'@$ MIPS'=$$ MIPS!8

    Po=e

    Power consumption control with ID-E =) ID-E #) and ID-E " instructions for power1down

    modes

    Control to disa+le the C-G,4T signal

    Em!#'t"on8 IEEE Standard ==>F.= +oundary scan logic interfaced to on1chip scan1+ased emulation

    logic

    Intod!ct"on to the TMS678C;;)

    The TMS"#$C::x digital signal processor DSP! represents the latest generation of ;C:$$$

    DSPs from Texas Instruments. The ;C::x is +uilt on the proven legacy of the ;C:>x and is source

    code compati+le with the ;C:>x) protecting the customer;s software investment. 9ollowing the

    trends set +y the;C:>x) the ;C::x is optimi&ed for power efficiency) low system cost) and +est1in1

    class performance for tight power +udgets. The TMS"#$C::x is a low1power) general1purpose

    signal processing architecture with an instruction set optimi&ed for efficiency) ease of use) and

    compactness. *lthough the ;C::x instruction set is much more powerful and flexi+le than that of

    previous generations) the architecture is completely compati+le with TMS"#$C:>x instructions.

    This allows programs developed on the ;C:>x to +e re1assem+led and executed on the ;C::x with

    +it1exact results. * highly parallel architecture complements the ;C::x instruction set

  • 8/11/2019 Familiarization With Dsp Kit

    11/14

    and ena+les increased code density while reducing the num+er of cycles re6uired per operation.

    The union of an efficient) compact instruction set with a highly parallel architecture provides a

    high1performance signal processing engine while minimi&ing code si&e and power consumption.

    The ey features of TMS"#$C::x are

    * "# x =%1+it Instruction +uffer 6ueue

    Two =?1+it x=?1+it M*C units

    ,ne >$1+it *-4

    ,ne >$1+it 2arrel Shifter

    ,ne =%1+it *-4

    9our >$1+it accumulators

    Twelve independent +uses8

    Three data read +uses

    Two data write +uses

    9ive data address +uses

    ,ne program read +us

    ,ne program address +us

    4ser1configura+le ID-E Domains

    The TMS"#$C%$$$ digital signal processor DSP! platform is part of the TMS"#$ DSP

    family. The TMS"#$C%#xxDSP generation and the TMS"#$C%>x DSP generation comprise fixed1

    point devices in the C%$$$ DSP platform) and the TMS"#$C%?x DSP generation comprises

    floating point devices in the C%$$$ DSP platform. The TMS"#$C%#x and TMS"#$C%>x DSPs are

    code1compati+le. The TMS"#$C%#x and TMS"#$C%?x DSPs are code1compati+le. *ll three use

    the 5elociTI architecture) a high1performance) advanced 5-IA very long instruction word!

    architecture) maing these DSPs excellent choices for multichannel and multifunction applications.

    =1: Introduction

    The C%$$$ devices execute up to eight "#1+it instructions per cycle. The C%#x'C%?x

    device;s core CP4 consists of "# general1purpose registers of "#1+it word length and eight

  • 8/11/2019 Familiarization With Dsp Kit

    12/14

    functional units. The C%>x core CP4 consists of %> general1purpose "#1+it registers and eight

    functional units. These eight functional units contain8

    Two multipliers

    Six *-4s

    The C%$$$ generation has a complete set of optimi&ed development tools) including an

    efficient C compiler) an assem+ly optimi&er for simplified assem+ly language programming and

    scheduling) and a Aindows +ased de+ugger interface for visi+ility into source code execution

    characteristics. * hardware emulation +oard) compati+le with the TI 3DS:=$ emulator interface) is

    also availa+le. This tool complies with IEEE Standard ==>F.=H=FF$) IEEE Standard Test *ccess

    Port and 2oundary1Scan *rchitecture.

    9eatures of the C%$$$ devices include8

    *dvanced 5-IA CP4 with eight functional units) including two multipliers and six

    arithmetic units

    Executes up to eight instructions per cycle for up to ten times the performance of typical

    DSPs

    *llows designers to develop highly effective 0ISC1lie code for fast development time

    Instruction pacing

    /ives code si&e e6uivalence for eight instructions executed serially or in parallel

    0educes code si&e) program fetches) and power consumption

    Conditional execution of all instructions

    0educes costly +ranching

    Increases parallelism for higher sustained performance

    Efficient code execution on independent functional units

    Industry;s most efficient C compiler on DSP +enchmar suite

    Industry;s first assem+ly optimi&er for fast development and improved paralleli&ation

    @'=%'"#1+it data support) providing efficient memory support for a variety of applications

    >$1+it arithmetic options add extra precision for vocoders and other computationally

    intensive applications

    Fe't!es 'nd Opt"ons of the TMS678C>7)1C>?)

  • 8/11/2019 Familiarization With Dsp Kit

    13/14

    Saturation and normali&ation provide support for ey arithmetic operations

    9ield manipulation and instruction extract) set) clear) and +it counting support common

    operation found in control and data manipulation applications.

    The C%?x has these additional features8

    ardware support for single1precision "#1+it! and dou+le1precision %>1+it! IEEE floating1

    point operations

    "# x "#1+it integer multiply with "#1 or %>1+it result.

    The C%>x additional features include8

    Each multiplier can perform two =% x =%1+it or four @ x @ +it multiplies every cloc cycle.

    uad @1+it and dual =%1+it instruction set extensions with data flow support

    Support for non1aligned "#1+it word! and %>1+it dou+le word! memory accesses

    Special communication1specific instructions have +een added to address common

    operations in error1correcting codes.

  • 8/11/2019 Familiarization With Dsp Kit

    14/14

    2it count and rotate hardware extends support for +it1level algorithms.