Sie sind auf Seite 1von 22

DSP Software System Design-Fall2012

Lec1

Dr M Shamim Baig

DSP Software System Design


Instructor : Dr M Shamim Baig (msbaig@case.edu.pk) TA : Mr Jawad mob#0300-9501850 Yahoo group: case_dsp2012??? (TA invitation to join) Prerequisites: P based systems, C/ Assembly programming, Basic DSP algorithms

Text/ ref Books DSP Software Development Techniques for Embedded & Real-Time Systems by Robert Oshana Users Manuals of Texas Instruments DSP processors.

Course Grading Policy Assignments/Project Mid-semester Exam End-Semester Exam

16% 34% 50%

Course Outline
Our everyday lives involve the use of DSP systems in things such as cell phone & high-speed

modems; companies like Texas Instruments,


Analog Devices, Lucent have introduced several DSP processors to meet the high performance demands of todays signal processing. This course provides the know-how for the

implementation & optimization of computationally


intensive signal processing algorithms on these DSP processors.

Course Contents

Introduction to DSP system Overview of Embedded & Real time Systems

Embedded System Development Life Cycle using DSP


Overview of DSP Algorithms Digital Signal Processors Architectures

Optimizing DSP Software


Real-Time Operating Systems for DSP Testing & Debugging DSP systems Managing the DSP software development / framework Extending to System on a Chip (SoC) Architectures Future trends of DSP software technology

Digital Signal Processing


Digital

signal processing (DSP) is a method of processing signals and data in order to enhance or modify those signals, or to analyze those signals to determine specific information content.

Digital Signal Processor (DSP)

A DSP is really just a special form of

microprocessor. It has all of the same basic characteristics and components; a CPU, memory, instruction set, buses, etc.

The primary difference is that each of these components is customized slightly to perform signal processing operations more efficiently.
DSPs, therefore, consume less time, energy and power than a general-purpose microprocessor for carrying out signal processing tasks.

Applications for DSPs

Low cost Low power High performance

Low-Cost DSP Applications: motor control

Microcontroller vs DSP in motor control

Contd

Low power DSPs: Battery operated products

Low power DSPs allow designers to meet strict size, weight & power constraints.

Low power DSPs allow designers to deliver maximum performance & higher density systems

High Performance DSP Applications


Use VLIW, extensive parallelism/ pipelining & optimizing compilers
DSL modems

networked camera base station transceivers security identification wireless LAN industrial scanner multimedia gateway high speed printer professional audio advanced encryption

Many of todays complex algorithms are composed of basic signal processing function blocks that DSPs are very efficient at computing

Common DSP Algorithms/ Equations

Specialty of DSP

High speed MAC For loop efficiency Special addressing modes & data buffers Pipelining & Parallelism Software optimization High speed I/O

Embedded & Real-time Systems


Embedded

system

Resource constraint
Cost, Size, weight, power, energy CPU cycles, Memory, Peripherals

Application Specific design

Real-time

systems

React to events in environment Meet Time constraints for processing


Repetition rate & latency

DSP Implementation Options: (control, flexibility, stable, cost)

Right combination of processing elements to meet performance/ cost/ power trade-offs.

A DSP System

ADC & DAC in DSP system

DSP sampling & Instruction rate


for human speech signal

Sampling period (T) = 1 / Sampling Frequency (fs) where fs = 2 x fin-max (Nyquist criteria) T = 1 / 8000 = 125 microseconds Sampling period (T) / Instruction cycle time = number of instructions per sample For a 100 MHz -processor that executes one instruction per cycle the instruction cycle time would be 1/100 MHz = 10 ns

125 us / 10 ns = 12,500 instructions per sample 125 us / 5 ns = 25,000 instructions per sample (for a 200 MHz processor) 125 s / 2 ns = 62,500 instructions per sample (for a 500 MHz processor)

Das könnte Ihnen auch gefallen