ECE 448: Lab 6 DSP and FPGA Embedded Resources (Digital Downconverter)

Slides:



Advertisements
Similar presentations
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Advertisements

DSPs Vs General Purpose Microprocessors
Programmable FIR Filter Design
Commercial FPGAs: Altera Stratix Family Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
Reconfigurable Computing (EN2911X, Fall07) Lecture 04: Programmable Logic Technology (2/3) Prof. Sherief Reda Division of Engineering, Brown University.
Processor Architecture Needed to handle FFT algoarithm M. Smith.
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Distributed Arithmetic
FPGA Programming for Real Time Analysis of Lidar Systems
FIR Tap Filter Optimization CE222 Final Project Spring 2003 S oleste H ilberg N icole S tarr.
Sampling, Reconstruction, and Elementary Digital Filters R.C. Maher ECEN4002/5002 DSP Laboratory Spring 2002.
Digital Kommunikationselektronik TNE027 Lecture 4 1 Finite Impulse Response (FIR) Digital Filters Digital filters are rapidly replacing classic analog.
Distributed Arithmetic: Implementations and Applications
© 2003 Xilinx, Inc. All Rights Reserved Multi-rate Systems.
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Digital Communication Techniques
Using Programmable Logic to Accelerate DSP Functions 1 Using Programmable Logic to Accelerate DSP Functions “An Overview“ Greg Goslin Digital Signal Processing.
GallagherP188/MAPLD20041 Accelerating DSP Algorithms Using FPGAs Sean Gallagher DSP Specialist Xilinx Inc.
GPGPU platforms GP - General Purpose computation using GPU
Group member: Zhaoxin Mamengduo Cfang Stanley The Implementation of Delta-Sigma Modulation in Digital-to-Analog Converter 1.
Finite Impuse Response Filters. Filters A filter is a system that processes a signal in some desired fashion. –A continuous-time signal or continuous.
Digital Signals and Systems
0 - 1 © 2010 Texas Instruments Inc Practical Audio Experiments using the TMS320C5505 USB Stick “FIR Filters” Texas Instruments University Programme Teaching.
ECE 448: Lab 4 FIR Filters.
DARPA Digital Audio Receiver, Processor and Amplifier Group Z James Cotton Bobak Nazer Ryan Verret.
Using Programmable Logic to Accelerate DSP Functions 1 Using Programmable Logic to Accelerate DSP Functions “A Tutorial“ Greg Goslin Digital Signal Processing.
ECE 2372 Modern Digital System Design
Firmware based Array Sorter and Matlab testing suite Final Presentation August 2011 Elad Barzilay & Uri Natanzon Supervisor: Moshe Porian.
© 2003 Xilinx, Inc. All Rights Reserved Answers DSP Design Flow.
ECE Department: University of Massachusetts, Amherst ECE 354 Lab 5: Data Compression.
Department of Communication Engineering, NCTU 1 Unit 5 Programmable Logic and Storage Devices – RAMs and FPGAs.
Scott Robinson Aaron Sikorski Peter Phelps.  Introduction  FIR Filter Design  Optimization  Application  Edge Detection  Sobel Filter  Communications.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
This material exempt per Department of Commerce license exception TSU Multi-rate Systems.
Professor A G Constantinides 1 Interpolation & Decimation Sampling period T, at the output Interpolation by m: Let the OUTPUT be [i.e. Samples exist at.
Digital Phase Control System for SSRF LINAC C.X. Yin, D.K. Liu, L.Y. Yu SINAP, China
ECE 448: Lab 5 DSP and FPGA Embedded Resources (Signal Filtering and Display)
Instructor: Evgeniy Kuksin Preformed by: Ziv Landesberg Duration: 1 semester.
Introduction to Experiment 6 Internal FPGA Memories, Pseudo Random Number Generator, Advanced Testbenches ECE 448 Spring 2009.
Generating Sinusoidal Signals Prof. Brian L. Evans Dept. of Electrical and Computer Engineering The University of Texas at Austin EE 445S Real-Time Digital.
Digital filters Honza Černocký, ÚPGM. Aliases Numerical filters Discrete systems Discrete-time systems etc. 2.
ECE 353 Introduction to Microprocessor Systems Michael G. Morrow, P.E. Module #7 Assessment Quiz.
ECE 448: Lab 7 Design and Testing of an FIR Filter.
REGISTER MANAGMENT TOOL Preformed by: Liat Honig Nitzan Carmel Supervisor: Moshe Porian Date: 29/1/2012 winter semester 2011 Duration: One semester Middle.
School of Computer and Communication Engineering, UniMAP Mohd ridzuan mohd nor DKT 122/3 - DIGITAL SYSTEM I Chapter.
A Mini Stereo Digital Audio Processor Design DINESH GUNDU VIGNESH SABARINATH.
Software Defined Radio PhD Program on Electrical Engineering Sampling Theory and Quantization José Vieira.
Lecture 5B Block Diagrams HASH Example.
© 2003 Xilinx, Inc. All Rights Reserved Answers DSP Design Flow.
DEPARTMENTT OF ECE TECHNICAL QUIZ-1 AY Sub Code/Name: EC6502/Principles of digital Signal Processing Topic: Unit 1 & Unit 3 Sem/year: V/III.
Rohini Ravichandran Kaushik Narayanan A MINI STEREO DIGITAL AUDIO PROCESSOR (BEHAVIORAL MODEL)
Lab Environment and Miniproject Assignment Spring 2009 ECE554 Digital Engineering Laboratory.
Finite Impuse Response Filters. Filters A filter is a system that processes a signal in some desired fashion. –A continuous-time signal or continuous.
Class Exercise 1B.
Voice Manipulator Department of Electrical & Computer Engineering
Lab 4 Application of RTOS
Embedded Systems Design
By: Mohammadreza Meidnai Urmia university, Urmia, Iran Fall 2014
FPGA Implementation of Multicore AES 128/192/256
This chapter provides a series of applications.
Registers and Counters Register : A Group of Flip-Flops. N-Bit Register has N flip-flops. Each flip-flop stores 1-Bit Information. So N-Bit Register Stores.
Quantization in Implementing Systems
Multiplier-less Multiplication by Constants
VLSI Programming 2IMN35 Lab 1 Questionnaire
Registers.
CSC 220: Computer Organization
ECE 448: Lab 4 FIR Filters.
Christian Hackmann and Evert Nord
Voice Manipulator Department of Electrical & Computer Engineering
Optimizing RTL for EFLX Tony Kozaczuk, Shuying Fan December 21, 2016
Presentation transcript:

ECE 448: Lab 6 DSP and FPGA Embedded Resources (Digital Downconverter)

Lab 6 Top Level Input Buffer Output Buffer EPP Interface TunerFilter WAV Format PC

Task 1 : PC Communication (20%) Input arrives asynchronously Input FIFO provides synchronous data to DDC. Output FIFO allows asynchronous access to the output data. Output Buffer is 4096 bytes. Inputs larger than ~16000 bytes will need to be sent and read in segments.

Task 1 : FIFO and EPP Interface Connections EPP (Code Provided) In FIFO EppAstbEppDstbEppWrEppDBEppWait 8 8 busOut din wr_en Out FIFO … dout rd_en din busIn dout rd_en

EPP UCF Assignments

Task 1: File Transfer Demo

Task 2: Tuner / NCO (15%) Switches form 5-bit Frequency Control Word, corresponding to a frequency f chosen from (0,0.5,1.0,…15.5) kHz. f = 0.5*sw(4:0) in kHz 20-bit accumulator: sum[n] = sum[n-1] + inc Update accumulator every valid_in pulse (on for one clock) Tuner sw[4:0] step data data_in valid valid_in Valid_out data_out 5 8 8

bit signed cosine values in a Lookup Table (LUT) Cosine values stored in 1 inferred or instantiated Block RAM 10 MSBs of accumulator used to address the LUT Output data_out = data_in * cos(accum(19:10)) every valid_in pulse Task 2: Cosine Lookup and Modulation

Task 2: Simulating Analog Signals Change the signal property in the simulation application to: Show the waveform in analog form Change the height of the analog waveform Change the radix of the signal to signed or unsigned

Task 3: Decimating FIR Filter (30%) 32 tap FIR Filter using serial approach 1 Multiplier, can be inferred or instantiated 32 8-bit samples stored in 16 instantiated SRLC16E primitives Starts processing when valid input is high (high for one clock cycle) Generates a valid output pulse (on for one clock) Output downsampled by a factor of 4 FIR Filter data data_in valid valid_in valid_out data_out 8 8

Finite Impulse Response (FIR) Filters FIR: Given an impulse input, the filter output goes to zero in a finite number of clocks because there is no feedback of the output to the input Filter: manipulate the frequency response Examples: low-pass, high-pass, band pass, notch, arbitrary Equation: y: output x: input h: filter coefficients a.k.a filter taps N: number of coefficients

Low Pass Filter

Serial Approach Output every N clocks One multiplier Two input Adder Multiply-Accumulate (MACC) Note the bit growth

Parallel Approach Output every clock One multiplier per tap N-input adder x[n]: shift register h[n]: stored constants Note the bit growth

Parallel-Serial Approach K multipliers Output every N/2 clocks 2+1 input Adder Multiply-Accumulate (MAC) Note the bit growth

Task 3: Downsampling Low-pass anti-aliasing filter Sample output of filter once every R samples. Direct implementation not an efficient way of downsampling (Task 6) Down-sampling by 3: fir_out

Task 3: Saturation Example 17 bit input Saturate 1 bit, round to 8 bits

Task 3: SRLC16E Primitive See pages for full instantiation template

Task 3: Data Buffer See pages for full instantiation template … x0x0 x1x1 x7x7 Sample k-31 … Addr[3:0] … Addr[4] dout Sample k Sample k-2

Task 4: Full DDC Operation (20%) Data can be played back in MATLAB, or by any media player after completion of Task 7. Output should be clear, with minimal background static and no high pitched noises.

Task 5: Parallel-Serial Operation (15%) Modify Task 3 to use two multipliers using parallel-serial approach Output values should remain the same Increase in resource utilization Decrease in latency

Tasks 6 and 7: Optimized Downsampling Task 6: Bonus(10%), Task 7: Bonus (10%) Only interested in every fourth sample. Calculate only y[4i]. Don’t bother calculating y[4i+1], y[4i+2], y[4i+3].

Task 8: WAV Format Bonus (10%) WAV Header added to beginning of output data stream. Data Format : PCM Sample Rate kHz Assume known data stream length (5510 bytes). Length fields may be larger Data stored in little-endian order

CORE Generator Demonstration