26
EE 445S Real-Time Digital Signal Processing Lab Fall 2013 Lab #1 Introduction to Hardware & Software Tools of TMS320C6748 DSK

EE 445S Real-Time Digital Signal Processing Lab Fall 2013

  • Upload
    reuben

  • View
    41

  • Download
    3

Embed Size (px)

DESCRIPTION

EE 445S Real-Time Digital Signal Processing Lab Fall 2013. Lab #1 Introduction to Hardware & Software Tools of TMS320C6748 DSK. Outline. Introduction C6748 DSK Board C6748 DSP C6700 Instruction Set Architecture DSP/BIOS Code Composer Studio winDSK LabVIEW MATLAB/MathScript. 2. - PowerPoint PPT Presentation

Citation preview

Page 1: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

EE 445S Real-Time Digital Signal Processing Lab

Fall 2013

Lab #1Introduction to Hardware & Software

Tools of TMS320C6748 DSK

Page 2: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

2

Outline IntroductionC6748 DSK BoardC6748 DSPC6700 Instruction Set ArchitectureDSP/BIOSCode Composer StudiowinDSKLabVIEWMATLAB/MathScript

Page 3: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

3

Introduction

Goal is to implement communication system components by writing C and/or assembly language programs for the TI TMS320C6748 fixed/floating-point DSP.

C6748 DSP resides on the OMAP-L138EVM board which connects to the PC by USB.

Page 4: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

4

Fixed vs. Floating Point DSP’s Fixed Point DSP’s (Modems, Controllers, Phones…)Cheaper and consume less powerNeed special care when programming to avoid

overflowsMore dominant in the marketTMS320C1x, ’C2x, ’C20x, ’C24x (16 bit, for

control) ’C5x, ’C54x, ’C55x (16 bit, wireless phones and

modems) ’C62x, ’C64x (16 bit, DSL, imaging, video)

Floating Point DSP’s (DSL, Video, Imaging…)Easier to program,Complex architecture (more computationally

demanding)More expensive. ’C3x, ’C4x, ’C67x (32-bit, DSL, imaging, video)

Page 5: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

5

Advantages of DSP’s vs. Analog Circuit

Can implement complex linear and non-linear algorithms,

Application can be modified simply by changing code,

Highly reliable,Manufacturing is fairly easy.

Page 6: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

6

OMAP-L138 Functional Block Diagram

Page 7: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

Functional Units

7

.M Multiplication Unit:16-bit × 16-bit, 32-bit × 32-bit, 64-bit × 64-bit

.L Logic Unit:Arithmetic, comparisons and logic operations.

.S Shifter Unit:Bit manipulation (set, get, shift, rotate).

.D Data Unit:Load/Store to/from memory (exclusively)Performs addition and pointer arithmetic.

Page 8: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

8

DSP Features

375/456-MHz Fixed/Floating-Point – Load-Store Architecture with VLIW architecture.

10/100 Mb/s Ethernet MAC (EMAC) USB2.0 OTG, USB1.1 OHCI interface Two inter-integrated circuit (I2C) bus interfaces One multichannel audio serial port (McASP) Two multichannel buffered serial ports (McBSP)

with FIFO buffers Two SPI interfaces with multiple chip selects. Four 64-bit general-purpose timers.

Page 9: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP Features (Contd.)

Configurable 16-bit host port interface (HPI). 9 banks of 16 pins of general-purpose

input/output (GPIO) with programmable interrupt/event generation modes.

Three UART interfaces Asynchronous and SDRAM external memory

interface (EMIFA) for slower memories or peripherals.

A higher speed DDR2/Mobile DDR controller. A Video Port Interface (VPIF)

9

Page 10: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

TMS320C6748 Megamodule Block Diagram

10

Page 11: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP Features (Contd.) C674x Two Level Cache Memory Architecture– 32K-Byte L1P Program RAM/Cache– 32K-Byte L1D Data RAM/Cache– 256K-Byte L2 Unified Mapped RAM/Cache– Flexible RAM/Cache Partition (L1 and L2) Enhanced Direct-Memory-Access Controller 3

(EDMA3)– 2 Channel Controllers– 3 Transfer Controllers– 64 Independent DMA Channels– 16 Quick DMA Channels– Programmable Transfer Burst Size

11

Page 12: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

C6748 Floating-Point VLIW DSP Core Load-Store Architecture With Non-Aligned

VLIW DSP Support Supports TI’s Basic Secure Boot – 64

General-Purpose Registers (32 Bit) Six ALU (32-/40-Bit) Functional Units

• Supports 32-Bit Integer, SP (IEEE Single Precision/32-Bit) and DP (IEEE Double Precision/64-Bit) Floating Point• Supports up to Four SP Additions Per clock, Four DP Additions Every 2 clocks.

12

Page 13: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

C6748 Floating-Point VLIW DSP Core (Contd.)

Two Multiply Functional Units Mixed-Precision IEEE Floating Point Multiply

Supported up to:– 2 SP x SP → SP Per Clock– 2 SP x SP → DP Every Two Clocks– 2 SP x DP → DP Every Three Clocks– 2 DP x DP → DP Every Four Clocks Fixed Point Multiply Supports Two 32 x 32-Bit

Multiplies, Four 16 x 16-Bit Multiplies, or Eight 8 x 8-Bit Multiplies per Clock Cycle, and Complex Multiples

13

Page 14: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP/BIOSA real-time operating system specific

to the Texas Instruments DSPs. DSP/BIOS provides a wide range of

system services to an embedded application: Preemptive multitasking Memory management Real-time analysis.

14

Page 15: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP/BIOS featuresThe scheduler

Its associated thread classes provide a mechanism for arranging and controlling the software’s execution.

Memory managercontrol the operation of the memory/ cache

architecture and control allocation of memory resources.

15

Periodically interrupt the

currently executing thread

Periodically interrupt the

currently executing thread

Determine what the highest priority thread is that is

ready to execute

Determine what the highest priority thread is that is

ready to execute

Start that thread running

Start that thread running

Hardware timers

Hardware timers

Page 16: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP/BIOS features (Contd.)

Instrumentationprovides deterministic, minimally-invasive

analysis, profiling, and statistical functions.

Communications resourcesqueues, pipes, streams and a device driver

mechanism.

Support librariesprovide standardization of access and

hardware abstraction across multiple DSPs.

16

Page 17: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

DSP/BIOS Thread Types

Priorit

y

HWIHardware Interrupts

Implements ‘urgent’ part of real-time event Hardware interrupt triggers ISRs to run Priorities set by hardware

SWISoftware Interrupts

Performs HWI ‘follow-up’ activity ‘posted’ by software PRDs (periodic functions) are prioritized as SWIs 14 priority levels

TSKTasks

Runs programs concurrently under separate contexts Usually enabled to run by posting a ‘semaphore’

(a task signaling mechanism) 15 priority levels

IDLBackground

Multiple IDL functions Runs as an infinite loop (like traditional while loop) Single priority level

Page 18: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

18

Code Composer Studio

CCS is TI’s proprietary IDE that provides a transition between a high-level DSP program and an on-board machine language program. It is used to: Generate programs for the C6748 DSP using

C language,Load them into the DSK,Run them,Monitor program execution.

Page 19: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

19

winDSKA windows-based DSP demonstration

programNo need of other software.Direct communication with DSP board

through serial portDemonstration of all the projects are

available.

Page 20: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

20

LabVIEW

Laboratory Virtual Instrumentation Engineering Workbench.

It is a powerful IDE for data acquisition, instrumentation, analysis, signal processing, control…

LabVIEW programs called Virtual Instruments (VI’s).

Each VI has 2 components:Front Panel: user interface of the VI, has

all controls and indicators for I/O.Block Diagram: code is added using

graphical representations of functions to control front panel objects.

Page 21: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

21

LabVIEW

Front Panel

Block Diagram

Online LabView Interactive Tutorial can be found at:

http://www.ni.com/gettingstarted/labviewbasics/

Page 22: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

22

MATLAB

MATrix LABoratory. It is a numerical computing environment

and programming language. Allows easy matrix manipulation, plotting

of functions and data, implementation of algorithms, creation of GUI’s…

Includes many specialized toolboxes that extend the regular MATLAB environment (communications, Control, Signal Processing…).

Page 23: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

23

MATLABCommand Window

Current Directory

Workspace

Command History

Page 24: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

24

MATLAB

MATLAB Help is very practical and user-friendly.

Can access the MATLAB Help by pressing F1, or going to “Help → MATLAB Help”.

Also, in the Command Window, can typehelp <function_name> to show the help

document of a given function.lookfor <keyword> to searche all help

documents for a given keyword. MATLAB Tutorial can be found at

http://www.mathworks.com/academia/student_center/tutorials/

Page 25: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

25

MathScript

Software from LabVIEW. Same syntax as MATLAB but does not support

all functions available in MATLAB. Appendix D in course reader http://zone.ni.com/devzone/cda/tut/p/id/3502

Page 26: EE 445S Real-Time Digital  Signal Processing Lab Fall 2013

26

…The End!

See You Next Week!