TMS320C64x+™ DSP System Integration Workshop using DSP/BIOS
 Training Home TRAINING HOME
DETAILS
LOGISTICS

Duration
4.0 Days


  OVERVIEW   

The TMS320C64x+™ DSP System Integration Workshop using DSP/BIOS has been designed to use the latest hardware and software development tools available from Texas Instruments. In addition, this workshop builds around the concepts required to easily author simple DSP solutions and how to easily adapt them into increasingly more complex systems as system requirements evolve.

This workshop is not intended to be platform specific. While the labs were written on the 6437, the concepts and API apply to all TI DSP platforms. In fact, code written in the manner shown in this workshop can be easily adapted from one TI DSP processor to another.

Each of the first 10 chapters of the workshop include one or more 'hands on' lab sessions, intended to allow the attendee to 'try out' the concepts covered and obtain confidence in their ability to author code with the TI tools. Most of the labs adapt prior labs to new solutions, in the same manner as would be done in real life, rather than via 'fill in the blanks' or other non-realistic simulations of actual DSP system authoring.

 

European workshop pricing: €2250 excluding VAT includes a take-home C5510, C6713, C6416, F2812, or F2808 DSK
€1800 excluding VAT without a take-home DSK
Israeli workshop pricing: $950  (Please note: This is for the Israeli venue only)
United States workshop pricing: $1595.00 USD
China workshop pricing: RMB 3000 tax included
Taiwan workshop pricing: NT$ 26775 tax included
Rest of Asia (excluding Korea and Japan) US$ 750 tax excluded

 

 

Workshops are conducted in the following languages:

  • All European and USA Multi-day workshops are conducted in English
  • Workshops in Korea are conducted in Korean
  • Workshops in Japan are conducted in Japanese
  • Workshops in China and Taiwan are conducted in Mandarin Chinese
  • Workshops in other parts of Asia are conducted in English

 

Who should attend

This workshop is designed for engineers who need to develop or sharpen their design and development skills in real-time software design using Code Composer Studio and DSP/BIOS.

Course Prerequisites

Familiarity with C programming will be very helpful, as almost all the code present in the class is C based. Experience in writing code in C is optimal, but even those able to barely read and follow simple C coding examples should not be overly challenged.

Since this class does not presume a particular TI DSP platform, no prior experience with any particular DSP hardware is required. However, users who will develop on a particular platform may want to consider attending one of the platform specific workshops available from TI to round out their knowledge before beginning their design.

Workshop Comparison Chart

Processor-to-Workshop Selection Chart

Workshop Comparison Chart

Workshop Applicable Devices Primary OS Peripheral programming Framework or Example Code Algorithms Interrupts Cache DMA Flash Stand-alone system
DaVinci™ System Integration using Linux DM644x, DM646x, DM355, OMAP35x Linux PSP Linux drivers Codec Engine call xDM codecs/algorithms     none  
TMS320C64x+™ DSP System Integration using DSP/BIOS DM643x, C642x, DM647, DM648 DSP/BIOS PSP BIOS drivers Framework Components (DSKT, DMAN, ACOPY) call xDAIS or xDM algorithms Yes   DSKT and DMAN framework components  
TMS320C645x DSP System Integration Workshop C645x DSP/BIOS CSL 3.0, NDK, SRIO   none Yes Yes EDMA 3.0 details yes
TMS320C6000 DSP Optimization Workshop All C6000, detailed CPU architecture   overview   create a XDAIS algorithm Basic Yes brief discussion  
TMS320C64x/C67x™ DSP System Integration Workshop C6414T, C6415T, C6416T DSP/BIOS CSL 2.0, Serial port, DMA Programming examples none Yes Yes EDMA 2.0 details yes
TMS320DM64x™Video System Integration Workshop DM642 DSP/BIOS CSL 2.0, Serial port, DMA Programming examples none Yes Yes EDMA 2.0 details yes
TMS320C28x™ DSP Workshop F283xx, F282xx, F281x, F280x No OS or DSP/BIOS C header files Programming examples none Yes   C28x DMA examples yes

 

Back to Top

Processor-to-Workshop Selection Chart

 

Processor Platforms Processors Recommended Workshop Tool used
DaVinci™ Digital Media Processors TMS320DM644x DaVinci™ System Integration using Linux DM6446 EVM
  TMS320DM646x DaVinci™ System Integration using Linux DM6446 EVM
  TMS320DM355 DaVinci™ System Integration using Linux DM6446 EVM
  TMS320DM643x TMS320C64x+™ DSP System Integration using DSP/BIOS DM6437 EVM
  TMS320DM642 TMS320DM64x™Video System Integration Workshop DM642 EVM
  TMS320DM647 TMS320C64x+™ DSP System Integration using DSP/BIOS DM6437 EVM
  TMS320DM648  TMS320C64x+™ DSP System Integration using DSP/BIOS DM6437 EVM
OMAP™ Applications Processors OMAP35x™ DaVinci™ System Integration using Linux DM6446 EVM
TMS320C6000™ DSPs TMS320C6414T/15T/16T  TMS320C64x/C67x™ DSP System Integration Workshop 6416T EVM
  TMS320C6410/12/13/18 TMS320C64x/C67x™ DSP System Integration Workshop 6416T EVM
  TMS320C645x™ TMS320C645x DSP System Integration Workshop 6455 EVM
  TMS320C642x™ TMS320C64x+™ DSP System Integration using DSP/BIOS DM6437 EVM
  TMS320C67x™ TMS320C64x/C67x™ DSP System Integration Workshop 6416T EVM
  TMS320C672x™ TMS320C64x/C67x™ DSP System Integration Workshop 6416T EVM
TMS320C2000™ Digital Signal Controllers TMS320F283xx TMS320C28x™ DSP Workshop F28335 eZdsp
  TMS320F282xx  TMS320C28x™ DSP Workshop F28335 eZdsp
  TMS320F281x  TMS320C28x™ DSP Workshop F28335 eZdsp
  TMS320F280x TMS320C28x™ DSP Workshop F28335 eZdsp

Course Details

Classes begin at 8:30 a.m. and run through 5:30 p.m. each day. You can expect to finish class between noon and 2:00pm on the final day. 

Cancellation Policy

  • European classes are subject to cancellation if minimum number of attendees is not  met one week prior to the date of the workshop.  
  • US classes are subject to cancellation if minimum number of attendees is not met two weeks prior to  the date of the workshop.

   Minimum = 5   Maximum = 12

Workshop Agenda

 1. Introduction

  • List objectives of the workshop
  • Overview of the topics to be covered in the workshop
  • Brief overview of the DSK
  • Lab: learn how to test and configure an EVM 'out of the box'

 2. Real-Time System Concepts

  • Define the topology common to most DSP systems
  • List factors involved in design of a real-time system
  • Compare and contrast tradeoffs in R/T system design
  • Identify where various BIOS elements apply to DSP systems
  • Observe how BIOS can be used in systems from small to extensive
  • Lab: practice CCS skills to create/download/debug DSP project

 3. Hardware Interrupts (HWI)

  • Describe the concepts of foreground / background processing
  • List details of the Idle (IDL) thread
  • Compare Hardware Interrupts (HWI) to ISR’s
  • Demonstrate how to invoke Interrupt Preemption
  • Describe the purpose of the Interrupt Monitor
  • Create an HWI object using CCS Gconf tool
  • Add an idle thread to a given CCS project
  • Lab: Observe performance of HWI threads using CCS tools

 4. Software Interrupts (SWI)

  • Describe the basic concepts of SWIs
  • Demonstrate how to post a SWI
  • Describe the SWI object
  • List several SWI posting options
  • Demonstrate how QUEues can be used to communicate from HWI to SWI
  • Lab: Add an SWI to an HWI-based system; use QUE to pass buffers between threads 

 5. Tasks and Semaphores (TSK, SEM)

  • Describe the fundamental concepts of tasks
  • Demonstrate the use of semaphores in tasks
  • Author TSK code using simple data block pointers
  • Create a TSK with the CCS GUI
  • Describe the TSK object
  • Explain the value of double buffers in DSP systems
  • Lab: Modify SWI based code to employ TSK

 6. Streams (SIO)

  • Describe the concept of BIOS streams
  • List the key stream API
  • Adapt a Task to use stream interfacing
  • Describe the benefits of multi-buffer streams
  • Set up a stream via the configuration tool
  • Describe how streams can interface to SWI
  • Lab: Adapt TSK system to employ streams to IOM driver

 7. Multi-Threaded Systems (CLK, PRD)

  • Describe the way BIOS can implement a time base
  • Setup a time base via the BIOS CLK module
  • Describe the results of invoking various BIOS CLK API
  • Set functions to run at a periodic rate via the PRD module
  • Describe how to implement delayed ‘one-shot’ functions
  • Describe how the scheduler can be managed via BIOS API
  • List various BIOS scheduler management API
  • Lab: scheduler management API for system performance

 8. BIOS Instrumentation (LOG, STS, SYS, TRC)

  • Demonstrate statistical data on variables without halting the DSP
  • Describe why printf() is unsuitable for real-time systems
  • Describe how LOG_printf() overcomes this problem
  • Demonstrate how to use LOG_printf() in debugging
  • Describe how to implement trace control
  • Demonstrate how to perform real-time graphing
  • Describe the various API for responding to system errors
  • Lab: Incorporate/ observe R/T instrumentation into lab solution

 9. Static Systems (GCONF, TCONF)

  • List the advantages and limitations of static systems
  • Demonstrate how to define target memory in CCS
  • Demonstrate routing S/W components into desired H/W memory
  • Describe the files created in a CCS project build
  • Observe the results of a built project
  • Describe how to optimally tune a static system
  • Describe the startup sequence of a BIOS based system
  • Lab: adapt prior lab to use different linking options 

10. Dynamic Systems (MEM, BUF)

  • Contrast static and dynamic system coding benefits
  • Implement dynamic BIOS object creation and deletion
  • Contrast the BIOS MEM API to malloc and free
  • Contrast MEM API with BUF API
  • Lab: Modify the prior static solutions to employ dynamic methods

11. Inter-Thread Communication (MSGQ, ...) 

  • Become familiar with signaling/data transfer methods in DSP/BIOS
    • ATM Atomic Fxns
    • SEM Semaphore
    • LCK Lock
    • MBX Mailbox
    • QUE Queue
    • SCOM Synchronized Comm
    • MSGQ Message Queue
  • Each API compared/contrasted to select optimal choice in an application

12. Input Output Mini-Drivers (IOM)

  • Describe the concepts of BIOS drivers
  • List the key MD API
  • List the basic activities in each MD function
  • Describe the support tools for writing IOMs
  • Describe all components of an example IOM

13. DSP Algorithm Standard (XDAIS)

  • Describe the benefits of using XDAIS compliant algorithms
  • Describe how users control algorithm behaviour
  • Describe how users control algorithm’s RAM and ROM usage
  • Describe how XDAIS algorithms support multiple instances
  • List the interface methods required in XDAIS algorithms
  • List the sequence of actions in using an XDAIS algorithm
  • Use Component Wizard to develop an XDAIS interface

14. Review

  • Review of lessons learned
  • Overview of TI development tools
  • Where to go for more information