DSP II: ELEC STS Module

Similar documents
DSP II: ELEC TSK and SEM Modules

BIOS Instrumentation

Understanding Basic DSP/BIOS Features

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

DSP/BIOS Kernel Scalable, Real-Time Kernel TM. for TMS320 DSPs. Product Bulletin

How to Get Started With DSP/BIOS II

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

TMS320 DSP/BIOS User s Guide

Embedded Target for TI C6000 DSP 2.0 Release Notes

TMS320 DSP/BIOS User s Guide

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

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

Interfacing the ADS8320/ADS8325 to The TMS320C6711 DSP

TMS320C54x DSP/BIOS User s Guide

Implementation Techniques for DSP

DSP/BIOS, RTDX and Host-Target Communications

DSP/BIOS Real-Time Analysis (RTA) and Debugging Applied to a Video Application

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

TMS320 DSP Algorithm Standard Demonstration Application

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

Starting DSP software development for HERON C6000 products.

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

Conclusions. Introduction. Objectives. Module Topics

Single thread Scheduler All processes called once each sample

TI TMS320C6000 DSP Online Seminar

F28069 ControlCard Lab1

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY

TI DSP/BIOS Lab. By: David Waldo

Moving a TMS320C54x DSP/BIOS Application to the TMS320C55x DSP/BIOS Application

GE420 Laboratory Assignment 3 More SYS/BIOS

Texas Instruments. Noyau Temps Réel DSP BIOS TUTORIAL. Kit DSP DSK 6416

Mechatronics Laboratory Assignment 2 Serial Communication DSP Time-Keeping, Visual Basic, LCD Screens, and Wireless Networks

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

F28335 ControlCard Lab1

Laboratory Exercise 4

A Framework for Video Processing with the DM6437 DVDP *

Chapter 7. Hardware Implementation Tools

EE289 Lab Spring 2012

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

Multi-Threaded Systems

In this tutorial, we will discuss the architecture, pin diagram and other key concepts of microprocessors.

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

University of Texas at El Paso Electrical and Computer Engineering Department. EE 3176 Laboratory for Microprocessors I.

Floating-Point Unit. Introduction. Agenda

TimeMaster II H.O. User s Manual

427 Class Notes Lab2: Real-Time Clock Lab

TMS320C6000 DSP 32-Bit Timer Reference Guide

Reference Frameworks. Introduction

Microprocessor Architecture

Programming the TMS320VC5509 RTC Peripheral

Mechatronics Laboratory Assignment 4 Parallel Communication Glue Logic, Hardware Interrupts, Analog to Digital Conversions, and Board Fab

Hands-on Lab 1: LabVIEW NI-DAQ Basics 1

I/O Systems (3): Clocks and Timers. CSE 2431: Introduction to Operating Systems

Hardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator

Real-Time DSP for Educators

EE Embedded Systems Design. Lessons Exceptions - Resets and Interrupts

Using Model-Based Design to Design Real-Time Video Processing Systems

Hibernation Module. Introduction. Agenda

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

Techniques for Profiling on ROM-Based Applications

Upgrading Applications to DSP/BIOS II

Exercise 4-1. DSP Peripherals EXERCISE OBJECTIVES

MICROCONTROLLER AND PLC LAB-436 SEMESTER-5

csitnepal Unit 3 Basic Computer Organization and Design

2.2 THE MARIE Instruction Set Architecture

EE4390 Microprocessors

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab

MICROCOMPUTER OPERATION

ECE 372 Microcontroller Design Basic Assembly Programming. ECE 372 Microcontroller Design Basic Assembly Programming

1. Internal Architecture of 8085 Microprocessor

TI mmwave Labs. Vital Signs Measurement

Flow Chart. The diagrammatic representation shows a solution to a given problem.

Application Report. Trademarks. 1 The Input/Output Mini-driver Model. R. Stephen Preissig... Technical Training Organization ABSTRACT

COMMUNICATIONS WITH THE MULTI- CHANNEL HOST P RT INTERFACE

TMS320C6000 Code Composer Studio Tutorial

real-time kernel documentation

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

8/26/2010. Introduction to 8085 BLOCK DIAGRAM OF INTEL Introduction to Introduction to Three Units of 8085

Digital IP Cell 8-bit Microcontroller PE80

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book

12-Dec-11. Gursharan Singh Maninder Kaur. Introduction to 8085 BLOCK DIAGRAM OF INTEL Introduction to Introduction to 8085

I/O Devices & Debugging. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Lab 1 Introduction to TI s TMS320C6713 DSK Digital Signal Processing Board

FPGA IMPLEMENTATION OF A PROCESSOR THROUGH VERILOG

The HC11. Alexandra Carey & Richard Hughey. University of California, School of Engineering Santa Cruz, CA 95064

Zero-Latency Interrupts and TI-RTOS on C2000 Devices. Todd Mullanix TI-RTOS Apps Manager March, 5, 2018

Laboratory 10. Programming a PIC Microcontroller - Part II

ECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives:

DM6437 BIOS Integration Workshop A Real-time Software Designer s Workshop

ME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7

Hands-on Lab 2: LabVIEW NI-DAQ Basics 2

Topic 11: Timer ISMAIL ARIFFIN FKE UTM SKUDAI JOHOR

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.

Goals of this Lecture

Choosing the Appropriate Simulator Configuration in Code Composer Studio IDE

The CMXBug Manual. The CMXBug Manual

Configuring Code Composer Studio for OMAP Debugging

Mechatronics Laboratory Assignment 2 Text LCD screen, DSP/BIOS and Transmission Control Protocol/Internet Protocol (TCPIP) Communication

Architecture of 8085 microprocessor

Explanation of PIC 16F84A processor data sheet Part 1: overview of the basics

Transcription:

Objectives DSP II: ELEC 4523 STS Module Become familiar with STS module and its use Reading SPRU423 TMS320 DSP/BIOS Users Guide: Statistics Object Manager (STS Module) (section) PowerPoint Slides from DSP/BIOS II Workshop: Module 3 Code Composer Studio Online Help: STS Module Lab Module Prerequisites May want to do the CLK module before the STS module but it is not necessary. Description The STS module manages statistics objects. Statistics are stored based on the information given the object. Information stored by the STS object consists of Count. The number of values on the target in an application-supplied data series Total. The arithmetic sum of the individual data values on the target in this series Maximum. The largest value already encountered on the target in this series Average. Using the count and total, the Statistics View Analysis Tool calculates the average on the host Information is stored on the target in 32-bit words and on the host in 64-bit words. The accumulated data can also be filtered before it is diplayed on the host. Figure 1 shows the variable accumulation on the target and host. The host requests data from the target and then clears the accumulated data on the target. Data is accumulated on the host in the 64-bit words. The filter (A total +B)/C or (A total +B)/(C count) can be applied to the data before it is displayed. When specifying the STS object the values of A, B and C are specified. The default values are A=1, B=0 and C=1.

STS Module Page 2/5 Figure 1: Host/Target variable accumulation, taken from SPRU423 TMS320 DSP/BIOS Users Guide The host reads and clears the target data with interrupts disabled. This allows tasks on the target to updated STS data reliably. Functions in the STS module are STS_add - Update statistics using provided value STS_delta - Update statistics using difference between provided value and setpoint STS_reset - Reset values stored in STS object STS_set - Save a setpoint value To track information about a varying value use the STS_add function. The definition is void STS_add(STS_Handle sts, LgInt value); The STS_add function passes a value to the STS object which increments the count and updates the total and maximum values. To track the minimum value of a variable pass the negative value to the STS object. To time events or monitor incremental differences in a value use the STS_set and STS_delta functions. Their definitions are void STS_set(STS_Handle sts, LgInt value); void STS_delta(STS_Handle sts, LgInt value); The STS_set function puts the value in the "previous" storage location as seen in Figure 1. Then when STS_delta function is called the "previous" value is subtracted from the new value and used to update the accumulator. This can be handy when wanting to track how long a function takes to run or an event to occur. Use the CLK module function CLK_gethtime to get the current high resolution system time and pass that value to the functions. This would look like STS_set(&stsObj, CLK_gethtime()); /* function that you want to time goes here */ STS_delta(&stsObj, CLK_gethtime());

STS Module Page 3/5 To create an STS object open the configuration file and right click on Instrumentation->STS and select Insert STS. After the object is inserted you can change its name and properties. To view the statistics when running an application open the statistics view by selecting DSP/BIOS->Statistics View. This view will show statistics on the STS objects you have created as well as statistics on HWI, PIP, PRD, TSK and SWI modules. To select statistics gathering on these modules make sure they are selected in the DSP/BIOS->RTA Control Panel. Also, to select the objects you want displayed right click on the Statistics View and select Properties Page. Select in the menu all the objects you want displayed. Laboratory Part 1 Create a new project called stslab. Create a new DSP/BIOS Configuration file and use the C6xxx.cdb template for use with the simulator. Save the file as stslab.cdb and include it in your project. Also include the stslabcfg.cmd file. If using the simulator then change the RTDX interface to Simulator by right clicking on Input/Output->RTDX and bringing up the properties. Change the RTDX mode to Simulator. If you do not do this then when you load your program you will see the error "RTDX application does not match emulation protocol." If you are loading onto an EVM or DSK you shouldn t need to change this. Create three STS objects called period, timing and avg. See the Description section on how to create an STS object. See below on how to set up the properties of these objects. Add a periodic task to the configuration. This is part of the PRD module but you don t need to know about the module to be able to do this lab. Add a periodic task by right clicking on Scheduling->PRD and selecting Insert PRD. A new periodic task should be added called PRD0. Specify the function the periodic task will run by right clicking on PRD0 and bringing up its properties. Next to Function type in the function name _stsprd. This will specify the C function stsprd as the function it will call. Also set the period to 2 ticks. This will cause the function stsprd to be executed every 2 milliseconds. Create a main.c file and include a main function that does nothing and a function stsprd. Include this file in your project. The main structure of the file is #include <std.h> #include <sts.h> #include <prd.h> #include <clk.h> #include "stslabcfg.h" main() { } stsprd()

STS Module Page 4/5 { /* your code here */ } In the function stsprd do the following: Add a loop that increments its count variable from 0 to 99. Inside this loop use the avg STS object to get the average of the count variable. Open the statistics view, DSP/BIOS-> Statistics View and make sure the objects you want are selected in the properties page. Part 2 In the function stsprd add the following: Determine the amount of time it takes the loop that was added in part 1 to run. Use the function call CLK_gethtime to get the high resolution clock time, the STS_set and STS_delta functions and the timing STS object. Display the timing statistics in milliseconds. Since the high resolution timer is in 4 instruction cycles and the clock rate is 133 MHz the time in milliseconds is calculated by (total 4 1000ms/s)/(133,000,000 Hz count). Use this to set up the filtering values of A, B and C for the timing STS object. Open the objects properties in the configuration file and change A, B and C. Part 3 In this part you will be determining how often the stsprd function is called. This should be 2 ms. To time how often the stsprd is called use the STS_delta function at the beginning of the stsprd function and STS_set right after it. The first time the STS_delta function is called the "previous" value is initialized to zero (default) so the delta will just be how long it has taken to call the function since the CLK clock started. For a periodic function this should be the value of the period. The STS_set function then sets the previous value so that when the stsprd function is called again the time between the two functions calls is determined. In the function stsprd add the following: At the beginning of the function add the STS calls to determine the period of the periodic function. Use the function call CLK_gethtime to get the high resolution clock time, STS_delta followed by STS_set and the period STS object. Display the period statistics in milliseconds. Since the high resolution timer is in 4 instruction cycles and the clock rate is 133 MHz the time in milliseconds is calculated by (total 4 1000ms/s)/(133,000,000 Hz count). Use this to set up the filtering values of A, B and C for the period STS object. Open the objects properties in the configuration file and change A, B and C.

STS Module Page 5/5