Lab #1 Introduction to Hardware & Software Tools of TMS320C6748 DSK

Slides:



Advertisements
Similar presentations
DSPs Vs General Purpose Microprocessors
Advertisements

Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk Spring 2011 Semester Project.
TigerSHARC and Blackfin Different Applications. Introduction Quick overview of TigerSHARC Quick overview of Blackfin low power processor Case Study: Blackfin.
Embedded Systems Programming
Introduction.
Architectural Support for Operating Systems. Announcements Most office hours are finalized Assignments up every Wednesday, due next week CS 415 section.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
1 Architectural Analysis of a DSP Device, the Instruction Set and the Addressing Modes SYSC5603 (ELG6163) Digital Signal Processing Microprocessors, Software.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
Introduction to ARM Architecture, Programmer’s Model and Assembler Embedded Systems Programming.
Midterm Tuesday October 23 Covers Chapters 3 through 6 - Buses, Clocks, Timing, Edge Triggering, Level Triggering - Cache Memory Systems - Internal Memory.
Embedded Systems Programming
EE 345S Real-Time Digital Signal Processing Lab Fall 2008
ASPPRATECH.
EENG 3910: Project V Digital Signal Processing (DSP) System Design
Computer Organization and Assembly language
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Anne Mascarin DSP Marketing The MathWorks
Getting Started With DSP A. What is DSP? B. Which TI DSP do I use? Highest performance C6000 Most power efficient C5000 Control optimized C2000 TMS320C6000™
INPUT-OUTPUT ORGANIZATION
Ehsan Shams Saeed Sharifi Tehrani. What is DSP ? Digital Signal Processing (DSP) is used in a wide variety of applications, and it is hard to find a good.
Cortex-M3 Debugging System
DSP Development System
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
EE 1106: Introduction to EE Freshman Practicum
Digital Signal Processors for Real-Time Embedded Systems By Jeremy Kohel.
Architecture and Applications of DSP
Intro to CS Chapt 2 Data Manipualtion 1 Data Manipulation How is data manipulated inside a computer? –How is data input? –How is it stored? –How is it.
Typical Microcontroller Purposes
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
EE 445S Real-Time Digital Signal Processing Lab Fall 2011 Lab #1 Introduction to Hardware & Software Tools of TMS320C6748 DSK.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
28/03/2003Julie PRAST, LAPP CNRS, FRANCE 1 The ATLAS Liquid Argon Calorimeters ReadOut Drivers A 600 MHz TMS320C6414 DSPs based design.
32-Bit-Digital Signal Controller Texas Instruments Incorporated
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
VLSI Algorithmic Design Automation Lab. THE TI OMAP PLATFORM APPROACH TO SOC.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
MICROOCESSORS AND MICROCONTROLLER:
DSP Architectures Additional Slides Professor S. Srinivasan Electrical Engineering Department I.I.T.-Madras, Chennai –
CIS250 OPERATING SYSTEMS Chapter One Introduction.
1 Lecture 1: Computer System Structures We go over the aspects of computer architecture relevant to OS design  overview  input and output (I/O) organization.
What is a Microprocessor ? A microprocessor consists of an ALU to perform arithmetic and logic manipulations, registers, and a control unit Its has some.
Lecture 7: Overview Microprocessors / microcontrollers.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Fundamentals of Programming Languages-II
System Software Design Engineer: Mac Gainor Western Washington University.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Module 12: I/O Systems I/O hardware Application I/O Interface
Embedded Systems Design
Introduction.
CS703 - Advanced Operating Systems
ECE 3551 Microcomputer Systems 1
Digital Signal Processor
The TMS320C6x Family of DSPs
Introduction to Digital Signal Processors (DSPs)
Chapter 1 Introduction.
EE 445S Real-Time Digital Signal Processing Lab Spring 2014
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
CS703 - Advanced Operating Systems
Digital Signal Processors-1
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
ADSP 21065L.
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

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

Outline Introduction C6748 DSK Board C6748 DSP C6700 Instruction Set Architecture DSP/BIOS Code Composer Studio winDSK LabVIEW MATLAB/MathScript 2 2

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. 3 3

Fixed vs. Floating Point DSP’s Fixed Point DSP’s (Modems, Controllers, Phones…) Cheaper and consume less power Need special care when programming to avoid overflows More dominant in the market TMS320C1x, ’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) 4 4

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. 5 5

OMAP-L138 Functional Block Diagram 6 6

Functional Units .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. 7

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. 8 8

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

TMS320C6748 Megamodule Block Diagram 10

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

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

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

DSP/BIOS A 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

DSP/BIOS features The scheduler Memory manager Its associated thread classes provide a mechanism for arranging and controlling the software’s execution. Memory manager control the operation of the memory/ cache architecture and control allocation of memory resources. Periodically interrupt the currently executing thread Determine what the highest priority thread is that is ready to execute Start that thread running Hardware timers 15

DSP/BIOS features (Contd.) Instrumentation provides deterministic, minimally-invasive analysis, profiling, and statistical functions. Communications resources queues, pipes, streams and a device driver mechanism. Support libraries provide standardization of access and hardware abstraction across multiple DSPs. 16

DSP/BIOS Thread Types HWI SWI Priority TSK IDL Hardware Interrupts Implements ‘urgent’ part of real-time event Hardware interrupt triggers ISRs to run Priorities set by hardware HWI Hardware Interrupts Performs HWI ‘follow-up’ activity ‘posted’ by software PRDs (periodic functions) are prioritized as SWIs 14 priority levels SWI Software Interrupts Priority TSK Tasks Runs programs concurrently under separate contexts Usually enabled to run by posting a ‘semaphore’ (a task signaling mechanism) 15 priority levels Using PRDs in a TSK-based video system is not really recommended because PRDs will ALWAYS have a higher priority than TSKs because PRDs are prioritized as SWIs. IDL Background Multiple IDL functions Runs as an infinite loop (like traditional while loop) Single priority level 17

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. 18 18

winDSK A windows-based DSP demonstration program No need of other software. Direct communication with DSP board through serial port Demonstration of all the projects are available. 19 19

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. 20 20

LabVIEW Online LabView Interactive Tutorial can be found at: Front Panel Block Diagram Online LabView Interactive Tutorial can be found at: http://www.ni.com/gettingstarted/labviewbasics/ 21 21

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…). 22 22

MATLAB Command Window Workspace Current Directory Command History 23

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 type help <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/tutorial s/ 24 24

MathScript http://zone.ni.com/devzone/cda/tut/p/id/3502 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 25 25

…The End! See You Next Week! 26 26