sub- nyquist system optimization

44
Sub-Nyquist System Optimization By: Daniel Barsky Natalie Pistunovich Supervisors: Rolf Hilgendorf Inna Rivkin Final Presentation

Upload: megara

Post on 22-Feb-2016

30 views

Category:

Documents


0 download

DESCRIPTION

By: Daniel BarskyNatalie Pistunovich Supervisors: Rolf HilgendorfInna Rivkin. Sub- Nyquist System Optimization. Final Presentation. Outline. Previous work Test environment description Test results Conclusions Future work. Previous Work. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Sub- Nyquist System Optimization

Sub-Nyquist System Optimization

By: Daniel Barsky Natalie PistunovichSupervisors: Rolf Hilgendorf Inna Rivkin

Final Presentation

Page 2: Sub- Nyquist System Optimization

Outline

Previous workTest environment descriptionTest resultsConclusionsFuture work

Page 3: Sub- Nyquist System Optimization

Previous Work

Page 4: Sub- Nyquist System Optimization

Reminder – Pre-simulation analysis

Memory

Controller

.

.

.

A†

CTF

Expander DSP

Support Change Detector

Q-FrameOMP

FPGA 1 FPGA 2 FPGA 3

73%

98% 75%

Page 5: Sub- Nyquist System Optimization

Reminder – Pre-simulation analysis (Cont.)

Timeline

New IncomingSample

Expander Delay

Q-Frame Delay

3.5usec

OMP Delay

11usec

Pseudo-Inverse Delay

5usec

Reconstruction Delay

Sample readyFor reconstruction

Reconstruction Delay: Expander - ~15 cycles (@120MHz) CTF – ~1450 cycles (@120 MHz) DSP - ~500 cycles (@120 MHz)

Page 6: Sub- Nyquist System Optimization

Test Environment

Page 7: Sub- Nyquist System Optimization

Test Environment Overview - Matlab

txt

Filter Coefficients

txt

A Matrix

txt

Beta

General Datatxt

Beta

txt

Filter Coefficients

txt

A Matrix

Page 8: Sub- Nyquist System Optimization

Test Environment Overview – Matlab (Cont.)

txt

Input Data

txt

N

txt

N_frame

txt

Threshold

txt

Support

txt

Input Data

txt

N

txt

N_frame

txt

Threshold

txt

Support

Dataset_1 Dataset_2 Dataset_3

Page 9: Sub- Nyquist System Optimization

Test Environment Overview – Matlab (Cont.)

VHDL

Matlab_pack

...\General Data…\Dataset_1…\Dataset_2…\Dataset_3

VHDL

Matlab_pack

Page 10: Sub- Nyquist System Optimization

Test Environment Overview – Modelsim (Cont.)

CTF

Expander

Supp

lyIn

put

Sam

ples

Input Samples

NN_frameThreshold DSPSC

D

Samples FIFO

Filter Coefficient

FIFOFilter Coefficients

Expanded Samples

RecalculateSupport

Support

DelayedSamples

A Matri

A Matri

xRecord

Reconstructed

Data

Simulation Controller

Page 11: Sub- Nyquist System Optimization

Filter Coefficients FIFO ModuleReads the filter coefficients from

a fileUpon receiving a REQ, outputs a

line of 7 coefficients and an ACK signal

Page 12: Sub- Nyquist System Optimization

Test Environment Overview - Modelsim

CTF

Expander

Supp

lyIn

put

Sam

ples

Input Samples

NN_frameThreshold DSPSC

D

Samples FIFO

Filter Coefficient

FIFOFilter Coefficients

Expanded Samples

RecalculateSupport

Support

DelayedSamples

A Matri

A Matri

xRecord

Reconstructed

Data

Simulation Controller

Page 13: Sub- Nyquist System Optimization

Supply Samples Module

Reads from the files generated by Matlab: The input samples The N, N_frame, Threshold values The correct support

Upon receiving a positive pulse on the OE signal, starts generating the input samples

Page 14: Sub- Nyquist System Optimization

Supply Samples Module (Cont.)

FSM:Idle

Opens the first Dataset files (input samples,Nframe , threshold) and waits for an OE command

Read next datas

et

Done

OEReads samples from the relevantdataset and feeds them to the expander Dataset i<3

doneWhen the dataset samples are done,reads the samples and data for the nextdataset Dataset 3 doneWhen all samples are done, do nothing

Page 15: Sub- Nyquist System Optimization

Test Environment Overview – Modelsim (Cont.)

CTF

Expander

Supp

lyIn

put

Sam

ples

Input Samples

NN_frameThreshold DSPSC

D

Samples FIFO

Filter Coefficient

FIFOFilter Coefficients

Expanded Samples

RecalculateSupport

Support

DelayedSamples

A Matri

A Matri

xRecord

Reconstructed

Data

Simulation Controller

Page 16: Sub- Nyquist System Optimization

A matrix, β coefficient modulesRead the appropriate data fromA fileUpon receiving an address,

outputThe appropriate data

Page 17: Sub- Nyquist System Optimization

Test Environment Overview – Modelsim (Cont.)

CTF

Expander

Supp

lyIn

put

Sam

ples

Input Samples

NN_frameThreshold DSPSC

D

Samples FIFO

Filter Coefficient

FIFOFilter Coefficients

Expanded Samples

RecalculateSupport

Support

DelayedSamples

A Matri

A Matri

xRecord

Reconstructed

Data

Simulation Controller

Page 18: Sub- Nyquist System Optimization

Samples FIFO module

Upon receiving a WE, stores incoming samples from the expander

Upon receiving OE, outputs stored samples to the DSP for reconstruction

Maximum FIFO length – defined by a Generic

Actual FIFO length – 4294 samples (@20MHz)

Page 19: Sub- Nyquist System Optimization

Test Environment Overview – Modelsim (Cont.)

CTF

Expander

Supp

lyIn

put

Sam

ples

Input Samples

NN_frameThreshold DSPSC

D

Samples FIFO

Filter Coefficient

FIFOFilter Coefficients

Expanded Samples

RecalculateSupport

Support

DelayedSamples

A Matri

A Matri

xRecord

Reconstructed

Data

Simulation Controller

Page 20: Sub- Nyquist System Optimization

Simulation Controller

The main part of the testbenchReceives all status signals from

all blocks, and sends control signalsto all blocks

Consists of 3 FSMs – Expander FSM, CTF FSM, DSP FSM

Page 21: Sub- Nyquist System Optimization

Simulation Controller (Cont.)

Expander FSM:Init

Initializes the expander and starts theprocess of loading the filter coefficients

Wait Read

y

Phase

Delay

Ready

InputSampl

es

Done

Counter

Samples Done

Waits until all coefficients have been loadedand the Expander is ready

Raises the “Data Valid” signal while supplyingzero samples (to generate phase shift)Raises the “Data Valid” signal and inputsreal samples to the ExpanderOnce the samples are finished, pauses theExpander

Page 22: Sub- Nyquist System Optimization

Simulation Controller (Cont.)

CTF FSM:Init

Initializes the CTF

Wait Read

yIdle

Ready

Wait DSP

Calculate

Support

SupportValid

DSP SupportACK

Support

Change

Waits until the CTF is readyInitiates the CTF support calculation andwaits for a “Support Valid” signalWaits until DSP acknowledges the newsupportWaits until the SCD indicates a changein the support, upon which time it willinitiate a recalculation of the support

Page 23: Sub- Nyquist System Optimization

Simulation Controller (Cont.)

DSP FSM:Wait

Support

DSP is ready and waiting for the CTF tocalculate a new support

Pseudo

Inverse

Support Change

Reconst-

ruction

DSP is calculating a new PseudoinversematrixPseudoinverse calculation done, samplesfrom the Samples FIFO are used for reconstruction

Support Valid

Pseudoinverse Done

SupportUnchanged

Page 24: Sub- Nyquist System Optimization

Simulation Results

Page 25: Sub- Nyquist System Optimization

Expander Initialization

Page 26: Sub- Nyquist System Optimization

Input Samples & Expander Operation

Page 27: Sub- Nyquist System Optimization

CTF Initialization

Page 28: Sub- Nyquist System Optimization

CTF Support Recovery (Incorrect)

Page 29: Sub- Nyquist System Optimization

CTF Support Recovery (Correct)

Page 30: Sub- Nyquist System Optimization

Sample FIFO

Page 31: Sub- Nyquist System Optimization

DSP Pseudoinverse Calculation

Page 32: Sub- Nyquist System Optimization

DSP Support Change Detector

Page 33: Sub- Nyquist System Optimization

DSP Support Change Detector (False Positives)

Page 34: Sub- Nyquist System Optimization

DSP Support Change Detector (False Positives)

Page 35: Sub- Nyquist System Optimization

DSP Support Change Detector (Failure to detect)

Page 36: Sub- Nyquist System Optimization

0 10 20 30 40 50 60 70 80 90-180

-160

-140

-120

-100

-80

-60

Frequency (MHz)

Pow

er/fr

eque

ncy

(dB

/Hz)

Spectrum of y1[n] (after expand)

0 10 20 30 40 50 60 70 80 90-180

-160

-140

-120

-100

-80

-60

-40

Frequency (MHz)

Pow

er/fr

eque

ncy

(dB

/Hz)

Reconstructed sequence #1

0 10 20 30 40 50 60 70 80 90-180

-160

-140

-120

-100

-80

-60

-40

Frequency (MHz)

Pow

er/fr

eque

ncy

(dB

/Hz)

Reconstructed sequence #2

Reconstruction Example #1 – AM + sine

Page 37: Sub- Nyquist System Optimization

0 10 20 30 40 50 60 70 80 90-170

-160

-150

-140

-130

-120

-110

-100

-90

-80

-70

Frequency (MHz)

Pow

er/fr

eque

ncy

(dB

/Hz)

Spectrum of y1[n] (after expand)

0 20 40 60 80-200

-190

-180

-170

-160

-150

-140

-130

-120

-110

-100

Frequency (MHz)

Pow

er/fr

eque

ncy

(dB

/Hz)

Reconstructed sequence #1

0 20 40 60 80-180

-160

-140

-120

-100

-80

-60

Frequency (MHz)P

ower

/freq

uenc

y (d

B/H

z)

Reconstructed sequence #2

Reconstruction Example #2 – AM + FM

Page 38: Sub- Nyquist System Optimization

Conclusions

Page 39: Sub- Nyquist System Optimization

Hardware UtilizationLEs Block

RAM bitsDSP Half-Blocks

Previous Analysis (DSP Halfblocks)

Expander 43,856 5Mbit 448CTF 31,000 6Mbit 604DSP 62,913 1.2Mbit 752Avaliable on Stratix III 260

203,520 15Mbit 768

21%

33% 58%

15%

40% 78%

31%

8% 98%

73%98%

75%

(based on synthesis results of the different groups, including arcitecture blocks)

Page 40: Sub- Nyquist System Optimization

Reconstruction Latency

ExpanderCTFDSP

15 Cycles

1087 Cycles

29,823 Cycles

Timeline

New IncomingSample

Expander Delay

CTF Delay

9.06usec

DSP Delay

248.5usecSample readyFor reconstruction

Timeline

New IncomingSample

Expander Delay CTF Delay

14.5usec

DSP Delay

5usecSample readyFor reconstruction

Previous Evaluation:

Page 41: Sub- Nyquist System Optimization

Further Conclusions

Support calculation is unstable, and extremely sensitive to input phase (relative to the NCO’s phase)

SCD is highly prone to misdetections & false positives!

The system seems to have more trouble with FM signals than with AM/sine

Page 42: Sub- Nyquist System Optimization

Future Work

Page 43: Sub- Nyquist System Optimization

Future Work

Characterize the dependency of the support calculation on the input phase

Use fewer resources at a higher clock frequency at the reconstruction stage - in an attempt to squeeze it in with the Expander

Reimplement Pseudoinverse to share resources with the CTF, to fit them both in the same FPGA

Simulate & integrate implementation

Page 44: Sub- Nyquist System Optimization

Gantt ChartFinish Part A Project Report

Characterize CTF dependency on phase(Matlab+Modelsim)

Reimplement reconstruction block

Simulate reconstruction block

Extract MaMu from CTF

Reimplement Pseudoinverse block

Simulate pseudoinverse block

Synthesize blocks

Simulate system with new blocks

Synthesize & Integrate Blocks

Final Part B Presentation

Write Part B Project Book

3/10/2011 3/30/2011 4/19/2011 5/9/2011 5/29/2011 6/18/2011 7/8/2011 7/28/2011 8/17/2011 9/6/2011