Top Banner
Final presentation – part B Dor Obstbaum and Kami Elbaz Advisor: Moshe Porian November 2012 FPGA SETTING USING FLASH Bi – semester project
30

Final presentation – part B

Feb 23, 2016

Download

Documents

Marcie

FPGA Setting Using Flash. Final presentation – part B. Bi – semester project. Dor Obstbaum and Kami Elbaz. Advisor: Moshe Porian . November 2012. FPGA Setting Using Flash. Project movie. Content. Introduction. Introduction Display FLASH Performance Configuration Testability - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Final presentation – part B

Final presentation – part B

Dor Obstbaum and Kami Elbaz

Advisor: Moshe Porian

November 2012

FPGA SETTING USING FLASH

Bi – semester project

Page 2: Final presentation – part B

Project movieFPGA SETTING USING FLASH

Page 3: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Content• Introduction• Display• FLASH

• Performance

• Configuration

• Testability

• GUI• Conclusions

Page 4: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Motivation• Hardware operates by configuration written

in the registers

registers

Hardware System

FPGA setting using FLASH system

Software HostFLASH memory

• Software writes up to date configuration in the FLASH memory

• FPGA setting using FLASH system does the connection

Software

Independent!

Page 5: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

TOP Architecture

Page 6: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

What have we achieved in part B of the project?

•CFI interface with FLASH memory•Automatic configuration of clients using data base stored in FLASH•Wishbone Bus upgrade for enhancing system performance•Watchdog and Power features added•GUI with abundant capabilities

Page 7: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Display client

Technical Demands:•VESA protocol •Operates on a 65 MHz clock•Produces 3 kinds of pictures: lines, columns, damka squares• control frame ROI and shape width and color•Supports any kind of Resolution and timing by Generics•Inputs: Wishbone interface to configure registers•Outputs: RGB, hsync, vsync, blank

1024

768

Our Configuration

Page 8: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Display client

65 MHz100 MHz

Integrated from

RunLen project

Page 9: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Display client

Integrated from

RunLen project

Enable Lines

Line ROILine width

RGB start val

Enable Lines

Line ROI

RGB start val

RGB

Line color diff

Line color diff

Line width

Page 10: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Display client

We Want Our Frames like These:

And NOT like these:

How do we keep Synchronization when registersAre updated?

Page 11: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Synthetic Data Provider

Page 12: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Waveform

Wishbone transactions configures registers

Register Valid is ‘0’ while registers are updated

VESA generator requests data for a new frame

Valid Data is supplied after 1 cycle

Page 13: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI

Conclusions

FLASH Memory

Page 14: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

FLASH Client

Technical Demands:•Common FLASH Interface protocol (CFI)•Wishbone Interface•Performs Read, Write, Reset and Erase transactions•Initiative read on power-on•Contains a timeout algorithm•Generic: adaptable to different FLASH sizes and clock frequencies.

BUS

Wishbone

CFI

Page 15: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

FLASH Client block diagramInitiative read for configuration

Read address 0x000000

System power on

FLASH

Page 16: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Write transaction

FLASH

Write command

BUS transaction ends. Client enters stall

mode while writing data to FLASH.

Page 17: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Performance – Wishbone upgrade

Wishbone Master

Wishbone Slave

Standard bus

RegistersControl unit

RAM

Address advancer

FSMFSM FSM

Pipeline bus

Registers

RAM

Wishbone Bus – Old version

Wishbone Bus – New version

Wishbone Slave

•Simple interface•Enhanced performance•Less logic elements•Contains Watchdog

Wishbone Master

FSMstart

done

Page 18: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Performance enhancement

•Throughput: 1/12 [bytes/cycle]

•Throughput: 1 [bytes/cycle]

Old version

New version

Page 19: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Simple Interface – RX path exampleOld version

New version

MDWM mediates between mp-decoder, wishbone master and RAM

No need for MDWM

Page 20: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Configuration

Page 21: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Config Control Block•Reads data from FLASH into internal RAM•Configures clients using Wishbone bus transactions•Option for re-configuration•Option for unit disable

Page 22: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Testability – Test plan• All FLASH transactions• Correct configuration of clients• Generic system• System boundaries• Hardware tests

Page 23: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Test environment

Page 24: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

GUI - CapabilitiesOperational features:•Read, Write and erase transactions to FLASH•Data abstraction – very little knowledge needed for operation•Data base creation – for storing in FLASH•Direct transaction to clients•Easy work with text files•Generates only correct packets with legal valuesDebug features:•TX and RX messages display•Option for changing or removing CRC/EOF/SOF•Generates text files available for simulation

GUI user guide

included

Page 25: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

GUI appearance

Page 26: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

Synthesis results

Page 27: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

max frequency

Improvement of 4.6% from part A of the project

•Required frequency: 100 MHz•Part A max frequency: 128.34 MHz•Part B max frequency: 134.25 MHz

Page 28: Final presentation – part B

Possible ApplicationAny hardware client can be connected to the system if it possesses a Wishbone Slave connection. Such a client could be a Pulse Width Modulator (PWM) . A PWM can define a unique frequency for many servo controllers.In order to prevent the case that on system power on there would be some default insufficient value on the frequency input of servo devices, the PWM will function as a client of the FPGA setting using FLASH system.Data would be loaded from the Flash memory for correct configuration.

Page 29: Final presentation – part B

Introduction

Display

FLASH

Performance

Configuration

Testability

GUI and p&r

Conclusions

What have we learned?• Planning and Specifying a Project• Writing reusable generic code• Protocols: UART, Wishbone, VESA, CFI• Read and understand Verilog code• Integration of many components• Verify logic correctness using waveforms, text files, BMP

files and scripts• Testing our hardware using GUI and debug with signaltap• Documentation of the work done• SVN, Code Review and running a project diary are useful

tools• Expect code to be used by others in the future

Page 30: Final presentation – part B

DEMO