Sine Wave Generation on the XUP Virtex-II Pro Development System Steven Wasson ECE 443 – Hardware Design in VHDL Assignment 3 – Sine Wave Generation October.

Slides:



Advertisements
Similar presentations
Mini-Lecture 8 Intellectual Property. Agenda Discussion of Lab7 Solutions and lessons learned Intellectual Property Description of class agenda from this.
Advertisements

L23 – Adder Architectures. Adders  Carry Lookahead adder  Carry select adder (staged)  Carry Multiplexed Adder  Ref: text Unit 15 9/2/2012 – ECE 3561.
Analysis of Clocked Sequential Circuits
Counters. In class excercise How to implement a “counter”, which will count as 0,3,1,4,5,7,0,3,1,…… Q2Q1Q0D2D1D
This lesson covers the following outcomes Unit 54 P1, P7, P8 Unit 6 P10, P11.
Design Goal Design an Analog-to-Digital Conversion chip to meet demands of high quality voice applications such as: Digital Telephony, Digital Hearing.
6/12/20151 Sequence Detectors Lecture Notes – Lab 4 Sequence detection is the act of recognizing a predefined series of inputs A sequence detector is a.
1 A Tool for System Simulation: SIMULINK Can be used for simulation of various systems: – Linear, nonlinear; Input signals can be arbitrarily generated:
Generate a clock pulse clk inp outp
Electrical and Computer Engineering iLights Nick Wittemen, EE Chris Merola, EE José Figueroa, EE Matt Ryder, EE Midway Design Review.
SIMULINK Dr. Samir Al-Amer. SIMULINK SIMULINK is a power simulation program that comes with MATLAB Used to simulate wide range of dynamical systems To.
v8.2 System Generator Audio Quick Start
9/15/09 - L22 Sequential Circuit Design Copyright Joanne DeGroat, ECE, OSU1 Sequential Circuit Design Creating a sequential circuit to address a.
ECEN 248 Lab 6: De-Bouncing, Counters & LCD Display Control
Sub-Nyquist Sampling DSP & SCD Modules Presented by: Omer Kiselov, Daniel Primor Supervised by: Ina Rivkin, Moshe Mishali Winter 2010High Speed Digital.
ECE 448: Lab 4 FIR Filters.
Numerical algorithms for power system protection Prof. dr. sc. Ante Marušić, doc. dr. sc. Juraj Havelka University of Zagreb Faculty of Electrical Engineering.
8254 Programmable Interval Timer
Student : Andrey Kuyel Supervised by Mony Orbach Spring 2011 Final Presentation High speed digital systems laboratory High-Throughput FFT Technion - Israel.
Models of Computation: FSM Model Reading: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
Simulink ® Interface Course 13 Active-HDL Interfaces.
Implementation of MAC Assisted CORDIC engine on FPGA EE382N-4 Abhik Bhattacharya Mrinal Deo Raghunandan K R Samir Dutt.
Spring Introduction  Today’s tutorial focuses on introducing you to Xilinx ISE and Modelsim.  These tools are used for Verilog Coding Simulation.
Assertion Based Testing. Testing and verification Does the design function according to the specifications? Example.
Sequential Arithmetic ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
VHDL Project Specification Naser Mohammadzadeh. Schedule  due date: Tir 18 th 2.
1 Programming of FPGA in LiCAS ADC for Continuous Data Readout Week 3 Report Jack Hickish.
1 Combinational Logic Design Digital Computer Logic Kashif Bashir
Division Harder Than Multiplication Because Quotient Digit Selection/Estimation Can Have Overflow Condition – Divide by Small Number OR even Worse – Divide.
ECE 448: Spring 11 Lab 3 Part 1 Sequential Logic for Synthesis.
ECE 448: Lab 6 DSP and FPGA Embedded Resources (Digital Downconverter)
Design of a Novel Bridge to Interface High Speed Image Sensors In Embedded Systems Tareq Hasan Khan ID: ECE, U of S Term Project (EE 800)
Counters. In class excercise How to implement a “counter”, which will count as 0,3,1,4,5,7,0,3,1,…… Q2Q1Q0D2D1D
CascadedBCDCntr&Display Aim : Capture, simulate and implement a 2-digit, loadable BCD up/down counter, with chip enable I/P (CE) and chip enable O/P (CEO).
Recursive Average The recursive average is a very efficient way to obtain a time-weighted average by low-pass filtering the signal. y[n] = (1-a)y[n-1]
Design Examples ELEC 418 Advanced Digital Systems Dr. Ron Hayne Images Courtesy of Thomson Engineering.
9/15/09 - L15 Decoders, Multiplexers Copyright Joanne DeGroat, ECE, OSU1 Decoders and Multiplexer Circuits.
ECE 448: Lab 4 VGA Display. Bouncing Ball.. Organization and Grading.
FPGA Sound Recorder & Terminal Interface Steven Wasson ECE 443 Assignments 5 & 6 December 5, 2007.
SIMULINK-Tutorial 1 Class ECES-304 Presented by : Shubham Bhat.
ECE 448: Lab 7 Design and Testing of an FIR Filter.
Sonar Sensor Project Polaroid Sonar Sensor Details of the Project
Sin & Cos with Amplitude and Phase.. In the equation, 2 is a multiplier and called an amplitude. Amplitude describes the “height” of the trigonometric.
1 AGBell – EECT by Andrew G. Bell (260) Lecture 11.
Menu Navigation Presented by: Tzahi Ezra Advisors: Moshe Porian Netanel Yamin One semester project Project initiation: NOV 2014 PROJECT’S MID PRESENTATION.
PHYSICS CLASS ACTIVITY. CLASS ACTIVITY: TUNING FORK FREQUENCY.
The Discrete Fourier Transform
12.7 Graphing Trigonometric Functions Day 1: Sine and Cosine.
12.7 Graphing Trigonometric Functions Day 1: Sine and Cosine.
LECTURE3 NET /11/ Lect3 NET 301. LAN DATA TRANSMISSION Layer1 Physical Layer:  Electronic, Electrical, mechanical and procedural aspects.
Basic Xilinx Design Capture. © 2006 Xilinx, Inc. All Rights Reserved Basic Xilinx Design Capture After completing this module, you will be able.
Unit 2 Discrete System 中華技術學院電子系 蔡樸生 副教授 林盈灝 副教授.
Hardware Description Language
Using Xilinx ChipScope Pro Tools
Ct1303 LAN Rehab Alfallaj.
CHAPTER 1 INTRODUCTION NUMBER SYSTEMS AND CONVERSION
Ct1303 LAN Rehab Alfallaj.
NET 301 LECTURE3 30/11/1436 Lect3 NET 301.
University of Maryland Baltimore County Department of Computer Science and Electrical Engineering   CMPE 212 Laboratory (Discussion 11) Hasib Hasan
ECET 230 Innovative Education--snaptutorial.com
Implementing Combinational and Sequential Logic in VHDL
ECE 434 Advanced Digital System L12
A Comparison of Field Programmable Gate
Introduction to ModelSim Implementing Sequential
Net 222: Communications and networks fundamentals (Practical Part)
Finite State Machines.
LECTURE 18: FAST FOURIER TRANSFORM
DIGITAL ON/OFF AM MODULATOR AMIT R SHARMA & AKRAM SHAZAD.
RTL Design Methodology
LECTURE 18: FAST FOURIER TRANSFORM
Presentation transcript:

Sine Wave Generation on the XUP Virtex-II Pro Development System Steven Wasson ECE 443 – Hardware Design in VHDL Assignment 3 – Sine Wave Generation October 17, 2007

Sine Computation via CORDIC 16-Bit Architecture with Radix Point after the MSB The Input Angle (Z 0 ) is represented as Fractions of pi not radians  Can be signed [-1, +1) or unsigned [0, 2) Output is signed and is computed from the following iterative equations for i = [0..15]:  Z i+1 = Z i – σ i α i, where α i = atan(2 -i ) / π.  X i+1 = X i – σ i Y i  Y i+1 = Y i + σ i X i  ║(X 0, Y 0 )║ ≈  σ i = +1 if Z i ≥ 0 else -1 Signed Fractions of Pi Representation of Input Angle Unsigned Fractions of Pi Representation of Input Angle

Sine Wave Generation Discrete Sine Wave in radians: sin(2πfnT S ) Discrete Sine Wave in fractions of pi: sin(2fnT S ) Let T S = (F S = 65,536 Hz)  sin(2 -15 fn)  Place the radix point of f after the MSB  The parameter, f, can either be interpreted as an integer frequency value or a fraction of the Nyquist rate (32,768 Hz) Use the MULT18X18 Virtex-II primitive to compute f * n Compute the sine wave for f periods and repeat indefinitely  One period: N = 1 / (f * T S ) = 65,536 / fBAD!!  f periods: N f = 1 / T S = 65,536GOOD!!  n can now be derived from a free-running 16-bit counter

Block Diagram SINE_WAVE_OUT (16-bit) DONE Y GO Frequency 16-bit System_Clock 100 MHz 16-Bit Counter Clock Divider f out = f in / 2 Clock Divider f out = f in / 1526 Sample_Clock ≈ 65,536 Hz CORDIC_Clock 50 MHz 16-bit Multiplier MULT18X18 Sine Wave Controller CORDIC 16-Bit Sequential Implementation DATA_IN SAMPLE_PULSE n f * SINE_WAVE_OUT is valid on Rising Edge of SAMPLE_PULSE

Simulation with ModelSim & MATLAB Simulate with frequency = 100 Hz for 100 ms Save simulation data to a text file Read data into MATLAB and plot

Verification with Chipscope & MATLAB Capture 8192 samples Save captured data to a text file Read data into MATLAB and plot

Resource Utilization without Chipscope

Resource Utilization with Chipscope

Preview of Next Week’s Presentation PC_BEEP_TONE_INDivider Buttons[4:0] Switch Debouncer Tone Select Sine Wave Generator Square Wave Generator Frequency AC97 CODEC Switch[0] DATA_IN The goal is to hear the difference in sound between a “pure” tone (sine wave) and a heavily distorted tone (square wave).