Download - Sub- Nyquist System Optimization
![Page 1: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/1.jpg)
Sub-Nyquist System Optimization
By: Daniel Barsky Natalie PistunovichSupervisors: Rolf Hilgendorf Inna Rivkin
Final Presentation
![Page 2: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/2.jpg)
Outline
Previous workTest environment descriptionTest resultsConclusionsFuture work
![Page 3: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/3.jpg)
Previous Work
![Page 4: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/5.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/6.jpg)
Test Environment
![Page 7: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/7.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/8.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/10.jpg)
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
xβ
A Matri
xRecord
Reconstructed
Data
Simulation Controller
![Page 11: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/11.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/12.jpg)
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
xβ
A Matri
xRecord
Reconstructed
Data
Simulation Controller
![Page 13: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/13.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/14.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/15.jpg)
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
xβ
A Matri
xRecord
Reconstructed
Data
Simulation Controller
![Page 16: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/16.jpg)
A matrix, β coefficient modulesRead the appropriate data fromA fileUpon receiving an address,
outputThe appropriate data
![Page 17: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/17.jpg)
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
xβ
A Matri
xRecord
Reconstructed
Data
Simulation Controller
![Page 18: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/18.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/19.jpg)
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
xβ
A Matri
xRecord
Reconstructed
Data
Simulation Controller
![Page 20: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/20.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/21.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/22.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/23.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/24.jpg)
Simulation Results
![Page 25: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/25.jpg)
Expander Initialization
![Page 26: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/26.jpg)
Input Samples & Expander Operation
![Page 27: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/27.jpg)
CTF Initialization
![Page 28: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/28.jpg)
CTF Support Recovery (Incorrect)
![Page 29: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/29.jpg)
CTF Support Recovery (Correct)
![Page 30: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/30.jpg)
Sample FIFO
![Page 31: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/31.jpg)
DSP Pseudoinverse Calculation
![Page 32: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/32.jpg)
DSP Support Change Detector
![Page 33: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/33.jpg)
DSP Support Change Detector (False Positives)
![Page 34: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/34.jpg)
DSP Support Change Detector (False Positives)
![Page 35: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/35.jpg)
DSP Support Change Detector (Failure to detect)
![Page 36: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/36.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/37.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/38.jpg)
Conclusions
![Page 39: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/39.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/40.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/41.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/42.jpg)
Future Work
![Page 43: Sub- Nyquist System Optimization](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/43.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062310/568161db550346895dd1e80e/html5/thumbnails/44.jpg)
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