16
Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture Proposal Overall Project Objective: Implementing Noise Cancellation Algorithm in Hardware

Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Noise Canceling in 1-D Data: Presentation #2

Seri Rahayu Abd RaufFatima BoujarwahJuan ChenLiyana Mohd SharippArti Thumar

M2

Jan 24, 2005Architecture Proposal

Overall Project Objective: Implementing Noise Cancellation Algorithm in Hardware

Page 2: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Status

• Design proposal (Done)• Architecture proposal:

– Final algorithm description (Done)– High level simulation in C (Done)– Mapping of algorithm into hardware

(Done) – Behavioral Verilog simulation and test

bench (Debugging)• To be done:

– Floor plan– Structural Verilog– Layout– Spice simulation

Page 3: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Design Decisions

• Use 16-bit floating point numbers approximating up to 10-5

• Choose M=1 because target applications do not usually have higher harmonics

• Change integer multipliers and adders to floating point

• Make a bigger ROM table for the sine and cosine functions

Page 4: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Algorithm Description

• Goal: To minimize noise• Algorithm: Based on adaptive

filtering depending on signal weights

• Pseudo-code:i) Take the input signal and model it

using Fourier Transformii) For each sample, model it by

approximating the weight constant and feeding it back to the next sample

iii) Each sample model is then subtracted from the original input signal to monitor the error

Page 5: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Original Flow-chart

Page 6: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Revised Flow-chart

Page 7: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

The Micron Experiment

Page 8: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

High Level Simulation in C

Simulation of input before the modification

Page 9: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Simulation of input file after the modification

Page 10: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Error comparison

Page 11: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Mapping of Algorithm into Hardware

• Major functional components:– Floating point multipliers (FPM)– Floating point adders (FPA)– 16-bit Registers (Reg)– ROM – sine, cosine

– SRAM – μ, μ0, ω0

Page 12: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

FP

A

w0 RO

M

FP

M

cos

FP

A

sin

FP

M

x2

FP

S

out

input

FP

MShifter

FP

M

FP

M

x1

error

mu

sumw0

FP

AF

PA

w1w2

Block Diagram

Page 13: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Behavioral Verilogalways@(datum)begin

w1=0;w2=0;offset = 10;in = datum - offset;sumw0 = sumw0 + w0;x1 = sin(sumw0);x2 = cos(sumw0);

/* output = truncated Fourier Series*/out = 0;out = w1 * x1 + w2 * x2;

/* calculate error*/e = in - out;

/*update amplitude weights */temp = 2*mu*e;w1 = w1 + temp*x1;w2 = w2 + temp*x2;

end

Page 14: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Revised Transistor Count

Part Transistors

16-bit FPA 5x500 = 2500

16-bit FPM 5x4000 = 20000

SRAM 500

ROM 1600

Registers 7x16x14 = 1568

Total ≈ 26168

Page 15: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Challenges…

• Timing issues– Need to reuse hardware

(multipliers)– Clock skew – Pipelined architecture to

increase speed and throughput

• SRAM implementation• ROM implementation• Transistor count is too high

Page 16: Noise Canceling in 1-D Data: Presentation #2 Seri Rahayu Abd Rauf Fatima Boujarwah Juan Chen Liyana Mohd Sharipp Arti Thumar M2 Jan 24, 2005 Architecture

Questions?