Presentation Part A - High Speed Digital Systems Lab

advertisement
High Speed Digital Systems Lab
By :
Genady Paikin, Ariel Tsror
Supervisors :
Inna Rivkin, Rolf Hilgendorf
Powerpoint Templates
Page 1
Agenda
 Introduction
 Learning Process
 Environment
 LabView
 LabView Problems
 JTag/ChipScope
Powerpoint Templates
Page 2
Agenda
 Hardware
 Implemented Blocks
 Xilinx Synthesis
 Part B Blocks
 System
 Verification Methods
 Full System Integration
Powerpoint Templates
Page 3
Introduction
 The project is part of the Sub-Nyquist
sampling and reconstruction card.
 Our goal is to implement DSP unit on
FlexRio FPGA cards under NI LabView
environment.
 Includes integration to the full
system.
Powerpoint Templates
Introduction
Page 4
High Level Architecture
Xampling
Powerpoint Templates
Introduction
Page 5
Sampling stage
 The sampling stage contain two units:
 Xampling sampling card.
 Expand.
Xampling
Analog in
4X62.5 Mhz
digital
A/D
62.5
Mhz
12X20.8 Mhz
digital
Expand
1:3
(250 1:4
decim.)
Powerpoint Templates
Introduction
Page 6
CTF module
 Goal : Detects the Support of x(t) and
forwards it to DSP unit.
 Triggered by :
 Initiation.
 SCD interrupt.
 Based on the OMP (Orthogonal
Matching Pursuit) algorithm.
Powerpoint Templates
Introduction
Page 7
DSP module
 Goal: Reconstructs the signal from the
samples.
 The unit receives the samples from the
memory (latency fifo), matrix A from the
memory, and signal support from the CTF
unit.
 The support and samples are coordinated
by the latency fifo.
 The unit performs pseudo-inverse of matrix
A (calculates As) using the signal support,
that is received from the CTF.
 Finally the unit multiplies the delayed
Powerpoint
signal with matrix
As.Templates
Page 8
Introduction
SCD module
 Goal: Detects a change of the signal
support.
 The unit uses the signal energy to
decide if the CTF needs to recalculate
the signal support.
Powerpoint Templates
Introduction
Page 9
Learning Process
 Composed of 2 independent processes :
 Algorithm :
o System main concept.
o Sampling stage (Xampling and Expand).
o CTF module.
o DSP module.
 LabView :
o LabView main concepts.
o FPGA under LabView.
o Integration.
o Implementing basic units.
• Reading matrix from file to memory on FlexRio FPGA
using LabView environment.
Powerpoint Templates
Learning Process
Page 10
LabView
 LabView is a System design platform
and development environment for a
visual programming.
 LabView allows simple integration of
several FPGAs together and simple
control of the FPGAs using Host VI
including importing / exporting file to
/ from the system.
Powerpoint Templates
Environment
Page 11
LabView
 There are two options of using VHDL
in LabView VIs :
 CLIP node.
 IP integration node.
Powerpoint Templates
Environment
Page 12
LabView
CLIP
Node
Powerpoint Templates
Environment
Page 13
LabView
CLIP Node
method
Powerpoint Templates
Environment
Page 14
LabView
IP Integration
Node
Powerpoint Templates
Environment
Page 15
LabView – Host VI
3 FPGAs
Writes to FPGA
(Clip method)
Powerpoint Templates
Environment
Page 16
LabView – Target VI
Reads
from
Host VI
Powerpoint Templates
Environment
Page 17
LabView Problems
 Does not support array implementation in VHDL.
 Does not support our packages when using VHDL.
 Very long compilation process.
 LabVIEW software tools don't support multi-core or
even multi-thread processes.
 LabVIEW does not allow stage separation (compilation,
elaboration, synthesizing, rout & map) in order to
isolate or at least to save time.
 Lack of debug tools. There is no access to the inner
signals in the FPGA.
 ChipScope/JTag is not supported (see JTag-issues)
 Lack of tutorials that show usage of VHDL in
LabVIEW.
Powerpoint Templates
Environment
Page 18
LabView Problems
Powerpoint Templates
Environment
Page 19
LabView Problems
Powerpoint Templates
Environment
Page 20
LabView Problems
Powerpoint Templates
Environment
Page 21
JTag / ChipScope
JTag is not supported under LabView
environment!
 A critical issue because we cannot
debug our design in the real
hardware.
Powerpoint Templates
Environment
Page 22
Block Diagram
DSP
Matrix A
(from memory)
Pseudo
Inverse
As+
Signal support
(from CTF)
A1 A2
Signal’s sample
(from memory)
Multiplication
Powerpoint Templates
Hardware
Reconstructed
signal
Page 23
Pseudo-Inverse Diagram
R matrix
As
QR Dec
Matrix
Inverse
R_inv
Pinv(As)
Q matrix
Mat Mult
Interface
Powerpoint Templates
Hardware
Page 24
Implemented Blocks
QR-Decomposition.
Matrix Multiplier Interface.
This blocks are Xilinx-oriented.
Powerpoint Templates
Hardware
Page 25
Xilinx Synthesis
 While we were trying to convert
Altera oriented code to Xilinx one, we
unfortunately discovered that Altera’s
synthesis is much stronger and also
more efficient than the Xilinx one.
Code that includes complicated loops
(implementing muxes) cannot be
synthesized at all.
Powerpoint Templates
Hardware
Page 26
Xilinx Synthesis
Powerpoint Templates
Hardware
Page 27
Part B Blocks
 Matrix Inverse – upper triangular
matrix inverter.
 Real Time Multiplier.
 SCD (Signal Change Detector).
Powerpoint Templates
Hardware
Page 28
Verification Methods
 Small Blocks Verification via Full DSP
Block.
 After a block is changed from Altera to
Xilinx, a full ModelSim simulation is
executed.
 Furthermore, the block is burned on the
FPGA using LabView in order to confirm
LabView compatibility and time
constrains.
Powerpoint Templates
System
Page 29
Verification Methods
 We verify that Matrix A is inverted
correctly using Matlab.
5
10
15
20
5
System
10
15
20
Powerpoint Templates
Page 30
Full System Integration
Full system integration will be
executed during Part B.
 Once we confirm that all the Xilinx
oriented units work well with LabView,
we will replace all the relevant mathscript
blocks with real hardware ones.
Powerpoint Templates
System
Page 31
Powerpoint Templates
The End
Page 32
Download