26
Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf תתת תתתתתתת תתתתתתת תתתתתת תתתת- תתתתתתת תתתתתתתת תתתתתת תתתתתתת תתתתתת תתתתTechnion - Israel institute of technology department of Electrical Engineering Sub -Nyquist Sampling System Architecture תתתתת תתתת2010 speed digital systems laboratory Characterization presentation

Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Embed Size (px)

Citation preview

Page 1: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Performed by: Yaron Recher & Shai Maylat

Supervisor: Mr. Rolf Hilgendorf

מהירות ספרתיות למערכות המעבדה

הטכניון - מכון טכנולוגי לישראל

הפקולטה להנדסת חשמל

Technion - Israel institute of technologydepartment of Electrical Engineering

Sub -Nyquist SamplingSystem Architecture

אביב 2010סמסטר

High speed digital systems laboratory

Characterization presentation

Page 2: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Project Overview

• Design system architecture

• Creating debug environment

• Architecture implementation on FPGA

• Creating controlling GUI

Page 3: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

General Algorithm Scheme

• Expand block: Recieves 4 channels from A/D and expands them to 12 channels (18bit each)

** Implemented in the same FPGA

• CTF block: Discovers supports out of 12 channels (support width 7 bit)

• DSP & Detector block**: Reconstructs the Initial Signal

Page 4: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

1x BOARD: ProcStar||| GiDEL

4x FPGA: Stratix||| EP3SE110 Altera

Overview

FPGA Environment

Page 5: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

PROCStar III Processing unit

Page 6: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Buses on Board

•FPGA to FPGA Bits Max.Freq.(MHz) L/R (I/O) : 100 250 // exp. IC4 V18_L/R : 10 300 Main : 40 300 // global•FPGA to PSDB Bits Max.Freq.(MHz)

L/R_IO : 20 300 // 7 to IC1 L_IN : 8 300 // PSDB to IC L2_IO : 85 300 // only to IC1

Page 7: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Memories• External from FPGA

Bank A: 256 MB DDR2 DRAM Bank B,C: 2 x 1 GB SODIMM

• Internal inside FPGA MLAB 640-bit (639 blocks)

Filter delay lines, small FIFO buffers and shift registers M9K Blocks 9,216-bit (16 blocks)

General purpose memory applications M114K Blocks 147,456-bit (2150 blocks)

Processor code storage, packet and video frame buffering.

Max.Freq.=333MHz

B Max.Freq.= 333MHz C Max.Freq.=166MHz

Max.Freq.=500MHz

Total Internal Memory: 1MByte

Page 8: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Project Goals

• Integrate Designs – Across linked FPGA’s• Set and support Test environment• Design and Implement Debug GUI• Improve Debug GUI to work environment GUI

Page 9: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

General Connectivity

20MHZ \2MHZ60MHZ 20MHZ 20MHZ 20MHZ

Page 10: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

1. Loading data on board FIFOs from PCI

2. Loading control registers from PCI

3. Transferring data to internal RAMs from external memory

4. Sending Start Loading signal to CTF/DSP/Exp. Units

5. Receiving Ready signal from the CTF/DSP/Exp. Units

6. Sending Ready signal to the main controller. All units ready

7. Main controller Starts the A2D and the system runs

Process FlowSimilar to all Units

Page 11: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Expander EntityInputs:Clk_60 – 60MHz input data clockClk_20 – 20MHz main output data clockClk_2 – 2MHz iteration output data clockClk_240 – 240MHz processing clock

From main controller :rst – resetstart_load – memory ready for readnum_of_itr – number of wanted slicepause – pause the system

From CTF :req_pulse – request of new slice

Memory (20[MHz]) :memory_data – data from memorymemory_ack – requested data is ready

From A/D (60[MHz]) :Data_from_AD – input data for the systemData_in_valid – the input is valid

Outputs:ready_to_arch – finished initilizationdata_to_main – main output to CTF/DSP (20[MHz])data_to_main_valid – main output is validdata_to_CTF – iteration output (2[MHz])data_to_CTF_valid – iteration output is validmemory_read_request – request data from memory

Page 12: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Expander BlocksIncluding on Board Memories

•A2D : FIFO on board memory•Coeff. : FIFO on board memory•Main Bus Debug : FIFO on board memory•CTFDebug : FIFO on board memory

•A2D Reader : Reads data from A2D, simulates A2D input•Main Debug Writer : Writes data from main bus to on board FIFO•CTF Debug Writer : Writes data from Expander to debug memory

•Main Bus Interface : Receives data from Expander & sends with high rate •CTF Bus Interface : Receives data from Expander & sends with high rate

•Main Controller : Controls the system operation

•Registers : Contain control data received from PCI

•Pll : On board Pll , similar to all

Block Description

DESIGNED TILL NOW:BLOCKS TO IMPLEMENT:

Page 13: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Expander Block DiagramDESIGNED TILL NOW: (NOT YET ON FPGA)BLOCKS TO IMPLEMENT:

Page 14: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Expander State MachineDESIGNED TILL NOW:PATH TO IMPLEMENT:

Page 15: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

CTF EntityOutputs:

To Controller :ready – ready to begin

To Expander :req_pulse – requests next iteration To DSP :support – numbers of supportnum_of_supports – total number of supportssupport_valid – support data is valid

To Matrix RAM :A_addr – Address for data from RAMA_rd_req – read enable

Inputs:Clk_20 – 20MHz main input data clockClk_240 – 240MHz processing clockCLk 160 - 160MHz processing clock or as needed

From controller :reset – resetstart_load– memory ready for readpause – pause the systemN_Frame – FrameThreshhold - OMP stopping cond.Num_Of_Ite r- Number of iterations

From Expander :data_from_exp – iterational datadata_exp_valid - iterational data valid

From DSP : initiate – there has been support change

From Matrix RAM:A_data – data from RAM

From Main interface:data_main– input data for the expanderdata_main_valid– the data is valid

Page 16: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

CTF BlocksIncluding on Board Memories

•Iteration Debug : FIFO on board memory•Matrix : FIFO on board memory•Memory Debug : FIFO on board memory•Matrix internal : RAM memory

•Main Reader : Reads data from memory, simulates input from Exp. main•Exp.Debug Reader : Reads data from memory, simulates input from Exp. L/R•Matrix Writer : Reads ‘A’ matrix from memory, writes to internal memory•Memory Debug Writer: Writes Debug data to memory

•Main Bus Interface : Receives data from main bus & sends with low rate •CTF Bus Interface : Receives data from L/R bus & sends with low rate

•Exp. DebugMod. : Simulates Expander in debug mode•Dsp DebugMod : Simulates DSP in debug mode

•Main Controller : Controls the system operation

•Registers : Contain control data received from PCI

Block Description

DESIGNED TILL NOW:

+CTF to DSP

BLOCKS TO IMPLEMENT:

Page 17: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

CTF Block DiagramDESIGNED TILL NOW: (ON WORK- SIMULATIONS)BLOCKS TO IMPLEMENT:

CTF to DSP

interface

Page 18: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

CTF State MachineDESIGNED TILL NOW:PATH TO IMPLEMENT:

Page 19: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

DSP EntityOutputs:column_number– number of columndigital_signals – data outputsamples_valid_out– the output data is validsupport_changed– support change was detected

Inputs:Clk_20 – 20MHz main input data clockClk_240 – 240MHz processing clock

From controller :reset – resetstart– memory ready for readpause – pause the system

From CTF :support – numbers of supportsupport_num – how many support passedsupport_valid – support number is valid

Internal FIFO:samples_from_fifo– data from fifosamples_fifo_valid– the data is valid

From Main interface:samples_from_expander– input data for the expandersamples_expander_valid– the data is valid

From Matrix memory:memory_get – matrix row

Page 20: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

DSP BlocksIncluding on Board Memories

•MainBus : FIFO on board memory•Matrix : FIFO on board memory•Delay : FIFO on board memory•Output : FIFO on board memory•Matrix internal : RAM memory

•Main Reader : Reads data from memory, simulates input from Exp. Main•Matrix Writer : Reads ‘A’ matrix from memory, writes to internal memory•Output Writer : Writes outputdata to memory•Fifo Reader : Reads inputdata from delay fifo

•Main Bus Interface : Receives data from main bus & sends with low rate •Ctf DebugMod. : Simulates CTF in debug mode

•Main Controller : Controls the system operation

•Registers : Contain control data received from PCI

Block Description

DESIGNED TILL NOW:

+DSP to CTF interface

BLOCKS TO IMPLEMENT:

Page 21: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

DSP Block Diagram

DESIGNED TILL NOW: (NOT YET IMPLEMENTED)BLOCKS TO IMPLEMENT:

DSP to CTF

interface

Page 22: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

DSP State MachineDESIGNED TILL NOW:PATH TO IMPLEMENT:

Page 23: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

• Studying each group Entity’s I/O and single Debug mode operations (from Dima and Oleg)

• Studying Board busses, memories and communication clocks phase\skew problem (Gadi’s Project handle it)

• Design and Implement the communication blocks (Interface blocks) needed for the across linked FPGA’s- and the same time to be able to support groups with 1 FPGA Debug mode operation.

• Debug entire board+ all group’s Entity’s, we will held continuous meetings with the groups to synchronize with them and update them with the needed architecture changes. (each change they might have need to be informed and confirmed with us)

• Design and Implement Debug GUI (Visual C? JAVA? LabView?)- creating the test environment

• Improve GUI for board users

Future Aspirations

Page 24: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Gantt Chart

Learning the system

updated from previous group

Preparing the charactrization presentation

Studying needed Tools

Preparing the Midterm Presentation

System integration (Design)

System simulation

Writing C code Part A

Implement GUI Part A

Exams Period

Preparing Final presentation Part A

14/2/10 6/3/10 26/3/10 15/4/10 5/5/10 25/5/10 14/6/10 4/7/10 24/7/10 13/8/10

Page 25: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

project part B (Not in the Gantt…)

• Exams period B… •Test and Debug Entire Board• Finish GUI Test Environment • Improve GUI to System controlling GUI

Page 26: Performed by: Yaron Recher & Shai Maylat Supervisor: Mr. Rolf Hilgendorf המעבדה למערכות ספרתיות מהירות הטכניון - מכון טכנולוגי לישראל

Questions?