Upload
praveen-kumar-chitluri
View
127
Download
2
Tags:
Embed Size (px)
DESCRIPTION
good dsp understand ppt for dsp lab
Citation preview
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 1
DSP LAB
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 2
LIST OF EXPERIMENTS
To study the architecture of DSP chips - TMS 320C 5X/6X Instructions.
To verify linear convolution. To verify the circular convolution. To design FIR filter (LP/HP) using windowing technique Using rectangular window Using triangular window Using Kaiser window To Implement IIR filter (LP/HP) on DSP Processors N-point FFT algorithm. MATLAB program to generate sum of sinusoidal signals. MATLAB program to find frequency response of analog LP/HP
filters. To compute power density spectrum of a sequence. To find the FFT of given 1 -D signal and plot.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 3
Experiment-1To study the architecture of DSP chips -
TMS 320C 5X/6X Instructions.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 4
DSP PROCESSOR
Hence a processor which is designed to perform the special operations (digital manipulations) on the digital signal within very less time can be called as a Digital signal processor.
The difference between a DSP processor, conventional microprocessor and a microcontroller are listed below.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 5
Microprocessor
General Purpose Processor such as Intel xx86 or Motorola 680xx family
Contains - only CPU -No RAM -No ROM -No I/O ports -No Timer
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 6
Microcontroller
Contains - CPU - RAM - ROM -I/O ports - Timer & - Interrupt circuitry Some Micro Controllers also contain
A/D, D/A and Flash Memory
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 7
DSP Processors
such as Texas instruments and Analog Devices Contains - CPU - RAM -ROM - I/O ports - Timer Optimized for – fast arithmetic Extended precision Dual operand fetch Zero overhead loop Circular buffering
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 8
TMS 320 C5X DSP PROCESSORS:
The above processor is the fifth generation processor of TMS 320c family and it is very long instruction word (VLIW) architecture developed by TI and it is 32 bit processor.
Applications: Various application in cell phones wireless communication Digital computer applications
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 9
TMS 320C6X DSP PROCESSORS:
The above processor is the sixth generation processor of TMS 320c family and it is very long instruction word (VLIW) architecture developed by TI and can execute 1600 MIPS
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 10
APPLICATIONS:
Wireless base stations Pooled modems Remote Access Servers Digital Subscriber Loop Systems Cable modems Multi Channel Telephone Systems
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 11
FEATURES:
32-bit Processor Eight functional units-----2 multipliers,
6 ALUs 32-bit 32 general purpose registers ALU performs 40 bit Arithmatic
Operations Enhanced DMA 16-bit host port interface Multichannel buffered serial ports 2-general purpose PLL’s
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 12
TMS320C6713 DSP Starter Kit (DSK)
The TMS320C6713 DSP Starter Kit (DSK) developed jointly with Spectrum Digital is a low-cost development platform designed to speed the development of high precision applications based on TI´s TMS320C6000 floating point DSP generation.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 13
'C6713 DSK Block Diagram
Daughter CardDaughter Card
Roomfor
Expansion
InternalMemoryCPU
ProgramCache
DataCache
EMIF
SDRAM(8 MB)
CE2
CE3
Flash ROM(256 kB)
I/O Port
CE1
CE0
DSK uses all four External Memory regions CE0 for SDRAM CE1 for Flash Memory and I/O Port (switches, LED’s, etc.) CE2 and CE3 pinned-out to daughter card connector
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 14
DSK 6713 STARTER KIT
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 15
DSK6713 Block Diagram
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 16
1. USB2.0 CY7C68013-56PVC, compatible with USB2.0 and USB1.1, including 8051
2. DSP TMS320C6713 TQFP-208 Package Device with, 4 layers board
3. SDRAM MT48LC4M16A2 1meg*16 *4 bank micron
4. FLASH AM29LV800B 8Mbit1Mbyte of AMD 5. RESET chip specialize for reset with button for
manually reset 6. POWER supply externally, special 5V, 3.3V, 1.6V
chip for steady voltage with remaining for other devices.
7. EEPROM 24LC64 for download of USB firmware 8. CPLD XC95144XL 9. AIC TLV320AIC23B sampling with 8-96KHZ, 4
channels
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 17
FFFF_FFFF
0000_0000
256 kB InternalProgram / Data
Peripheral Regs0180_0000
128 MB External
128 MB External
8000_0000
9000_0000
A000_0000
B000_0000
128 MB External
128 MB External
TMS320C6713
Available viaDaughter Card
Connector
‘C6713 DSK
8 MB SDRAM
256 kB FLASH
CPLD
C6713 DSK Memory Map
CPLD:LED’sDIP SwitchesDSK statusDSK rev#Daughter Card
9008_0000
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 18
Bus Structure
The C67xx DSP architecture is built around eight major 16-bit buses (four program/data buses and four address buses):
_ The program bus (PB) carries the instruction code and immediate operands from program memory.
_ Three data buses (CB, DB, and EB) interconnect to various elements, such as the CPU, data address generation logic, program address generation logic, on-chip peripherals, and data memory.
_ The CB and DB carry the operands that are read from data memory.
_ The EB carries the data to be written to memory. _ Four address buses (PAB, CAB, DAB, and EAB)
carry the addresses needed for instruction execution.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 19
Central Processing Unit (CPU)
The CPU is common to all C67xE devices. The C67x
CPU contains: _ 40-bit arithmetic logic unit (ALU) _ Two 40-bit accumulators _ Barrel shifter _ 17 × 17-bit multiplier _ 40-bit adder _ Compare, select, and store unit (CSSU) _ Data address generation unit _ Program address generation unit
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 20
Arithmetic Logic Unit (ALU)
The C67x DSP performs 2s-complement arithmetic with a 40-bit arithmetic logic unit (ALU) and two 40-bit accumulators (accumulators A and B). The ALU can also perform Boolean operations. The ALU uses these inputs:
_ 16-bit immediate value _ 16-bit word from data memory _ 16-bit value in the temporary register, T _ Two 16-bit words from data memory _ 32-bit word from data memory _ 40-bit word from either accumulator
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 21
Accumulators
Accumulators A and B store the output from the ALU or the multiplier/adder block. They can also provide a second input to the ALU; accumulator A can be an input to the multiplier/adder. Each accumulator is divided into three parts:
_ Guard bits (bits 39–32) _ High-order word (bits 31–16) _ Low-order word (bits 15–0)
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 22
Barrel Shifter
The C67x DSP barrel shifter has a 40-bit input connected to the accumulators or to data memory (using CB or DB), and a 40-bit output connected to the ALU or to data memory (using EB).
The barrel shifter can produce a left shift of 0 to 31 bits and a right shift of 0 to 16 bits on the input data
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 23
Multiplier/Adder Unit
The multiplier/adder unit performs 17 _ 17-bit 2s-complement multiplication with a 40-bit addition in a single instruction cycle.
The multiplier/adder block consists of several elements: a multiplier, an adder, signed/unsigned input control logic, fractional control logic, a zero detector, a rounder (2s complement), overflow/saturation logic, and a 16-bit temporary storage register (T).
The multiplier has two inputs: one input is selected from T, a data-memory operand, or accumulator A; the other is selected from program memory, data memory, accumulator A, or an immediate value
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 24
WORKING WITH MAT LAB
1)Double click on Matlab icon. -> Then Matlab will be opened2) To write the Matlab Program Goto file menu-> New -> Script(Mfile) -
> In the opened Script file write the Matlab code and save the file with an extension of .m
Ex: “linear.m”3)To execute Matlab Program Select the all lines in matlab program(ctrl+A)
of mfile and press “F9” to execute the matlab code
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 25
4)Entering the inputs in command window If the command window is displaying the
message like “enter the input sequence” then enter the sequence with square brackets and each sample values is spaced with single space
Ex: Enter input sequence [1 2 3 4] If it is asking a value input write the value
without brackets Ex: “enter length of sequence 4” After entering inputs It displays the Output
Graphs.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 26
PROCEDURE TO WORK ON CODE COMPOSER STUDIO
Test the USB port by running DSK Port test from the start menu
Use StartProgramsTexas InstrumentsCode
Composer StudioCode Composer Studio CDSK6713 Tools DSK6713 Diagnostic Utilities
Select StartSelect DSK6713 Diagnostic Utility Icon
from Desktop Select Start Option Utility Program will test the board After testing Diagnostic Status you will get PASS
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 27
To create the New Project Project New (File Name. pjt , Eg: Vectors.pjt) To Create a Source file File New Type the code (Save & give file
name, Eg: sum.c). To Add Source files to Project Project Add files to Project c/ccs
studio3.1/my projects/your project name/ sum.c(select the file type as c/c++ source files)
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 28
To Add rts.lib file & hello.cmd:
Project Add files to Project rts6700.lib (Path: c/ccs studio3.1/cg tools/c6000/lib/
rts6700.lib) Note: Select Object & Library in(*.o,*.l) in Type
of files
Project Add files to Project hello.cmd CMD file – Which is common for all non real
time programs. (Path: c/ccs studio3.1\tutorial\dsk
6713 \hello1\hello.cmd) Note: Select Linker Command file(*.cmd) in
Type of files
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 29
Compile:
To Compile: Project Compile project To Build: Project build project, To Rebuild: Project rebuild, Which will create the final .out
executable file.(Eg. Vectors.out).
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 30
Procedure to Load and Run program:
Load the program to DSK: File Load program Vectors. out
To Execute project: Debug Run.
Execution should halt at break point.
Now press F10. See the changes happening in the watch window.
Similarly go to view & select CPU registers to view the changes happening in CPU registers
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 31
Configure the graphical window as shown below
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 32
PROCEDURE FOR EXECUTING REAL TIME PROGRAMS
CONNECTING DSP PROCESSOR TO PC Connect the dsp processor to the pc
using usb cable connector. Check the DSK6713 diagnostics (IF you
get the “pass”then click on ok). Click on ccs studio3.1 desktop icon.
Then the window will be opened. Go to debug click on connect (then
target device will be connected to pc)
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 33
TO CREATE PROJECT Project new given project name
and select the family’TMS320C67XX’Then click ok
File new source file write deown the ‘c’program and save it with.’c’ exetention in current project file
File new dsp/bios.config file select dsk67xx click on dsk6713 and save it in current project.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 34
Project add files to project add source file
Project add files to project add library file by following the given path
c/ccs studio3.1/cgtools/c6000/dsk6713/DSK6713.bs/file.
Project add files to the project .Add the configuration file.
Now files are generated and included in generated files . in that open the 3rd file, and copy the header file and paste it in source file. Copy the include files named as ”dsk6713.h” and “dsk6713_aic23.h” paste it in current project folder.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 35
Now compile project.(project compile) Project build. Project rebuild all. File load program projectname.pjt
debug “project name .out” file click on open debug click on run
Now apply the input sine wave to line in of dsk6713 kit.
Observe the output at line out of dsk6713 by using CRO.
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 36
Dr. Naim Dahnoun, Bristol University, (c) Texas Instruments 2004Chapter 3, Slide 37
PREPARED BY A. RAJESH NAIDU