team dc-hsba

40
Robert Benson David Hover Jonathan Tate Paul Niewoonder

Upload: odessa

Post on 22-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Team DC-HSBA. Robert Benson David Hover Jonathan Tate Paul Niewoonder. ROBERT BENSON. Primary Goal. Embedded Software Graphics Accelerator Shader Unit Media-Centric Co-Processor High Floating-Point Computation Performance Graphical Computation Complete Software Graphics Pipeline. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Team DC-HSBA

Robert BensonDavid Hover

Jonathan TatePaul Niewoonder

Page 2: Team DC-HSBA

ROBERT BENSON

Page 3: Team DC-HSBA

Primary GoalEmbedded Software Graphics Accelerator

Shader Unit Media-Centric Co-Processor High Floating-Point Computation Performance Graphical Computation

Complete Software Graphics Pipeline

Page 4: Team DC-HSBA

HardwareCustom Multi-FPGA Development Board

Cyclone III FPGAsOutputs

VGA Port LEDs

Inputs 8-Directional Joysticks JTAG Programming Port

Page 5: Team DC-HSBA

Hardware Block Diagram

Page 6: Team DC-HSBA

Hardware DetailsAbdomen

Cyclone III (EP3C16Q240C8)DAC (ADV7123)Serial Programming Device (EPCS)JTAG Configuration Port

LegCyclone III (EP3C25E144C7)DDR SDRAM (512 MBit)Ports for GPIO

Page 7: Team DC-HSBA

Hardware DetailsI/O Widgets

8 Directional JoystickRGB LEDs

Communication MethodsMemory – DDR SSTL_2Inter FPGA - LVDS

Page 8: Team DC-HSBA

Hardware Power

Page 9: Team DC-HSBA

Cost EstimateExpenses

Unit Cost Quantity ExtendedLobster

Leg FPGA $ 60 2 $ 120 Abdomen FPGA $ 30 1 $ 30 Memory $ 6 2 $ 12 Discrete $ 50 1 $ 50 Power $ 77 1 $ 77 I/O $ 40 1 $ 40 Board $ 70 1 $ 70

Total $ 399 Both Revisions $ 798

CrabLeg FPGA $ 60 4 $ 240 Abdomen FPGA $ 30 1 $ 30 Memory $ 6 4 $ 24 Discrete $ 70 1 $ 70 Power $ 109 1 $ 109 I/O $ 50 1 $ 50 Board $ 200 1 $ 200

Total 723 $ 723

Total Costs $1,521

Page 10: Team DC-HSBA

Schematics?

Page 11: Team DC-HSBA

Layout?

Page 12: Team DC-HSBA

DAVID HOVER

Page 13: Team DC-HSBA

SoftwareUser Application Software

Main User InterfaceBenchmarksDemosTetrisphere Clone

Graphics Pipeline SoftwareAssembler

Page 14: Team DC-HSBA

Main MenuSee attached

Page 15: Team DC-HSBA

Benchmarks & DemosBenchmarks

Matrix MultiplicationsMatrix-Vector MultiplicationsTranscendental Function Calculation

DemosRacecarBouncing BlobBuffaloBeach

Page 16: Team DC-HSBA

Software Implementation“Game Loop”

Poll User InputUpdate “Game” StateRedraw Environment

OpenDC APISimilar To OpenGLSmaller Subset

Page 17: Team DC-HSBA

Example OpenDC FunctionsState Manipulation

dcEnable()dcClear()dcFinish()

Matrix ManipulationdcMatrixMode()dcLoadIdentity()

Parameter ManipulationdcBindShader()dcBindTexture()dcUniform1f()

Page 18: Team DC-HSBA

General Software Layout

Page 19: Team DC-HSBA

Graphics Pipeline SoftwareHardware to

Software Abstraction

Page 20: Team DC-HSBA

The Assembler - Flex Matches expressions Literal or regular expressions Can perform any action after a match The main task is to turn matches into

tokens for the upcoming parser

Page 21: Team DC-HSBA

Flex (Cont.)Our Lexer has the following properties Matches all valid assembly commands Allows for comments, i.e, anything after a

semicolon is ignored Ignores all white space Is able to distinguish between arguments and

labels.

Page 22: Team DC-HSBA

The Assembler – BisonInvoked after the lexerSends tokens through an annotated context-free

grammar.A context-free grammar, for example, has the

form of:stmts : stmt stmts | stmt ;

This is one of many definitions.This stores data as it parses

Page 23: Team DC-HSBA

Bison (Cont.)The parser is general, all commands are

treated equallyValidity is checked per completed commandAfter completion, the parser passes the

finished data to be converted into a bitstream

Page 24: Team DC-HSBA

JONATHAN TATE

Page 25: Team DC-HSBA

System Logic DesignPrebuilt

SOPC BuilderMemory ControllersNIOS II Processor

CustomCachesLVDS to Avalon Interconnect BridgeShader Unit

Page 26: Team DC-HSBA

Shader ALU

Page 27: Team DC-HSBA

Shader Unit

Page 28: Team DC-HSBA

Leg Shader Block

Page 29: Team DC-HSBA

Shader Thread Scheduling

Cycle0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Thread 1 x Thread 2 x

Thread 3 x Thread 4 x

Thread 1 y Thread 2 y

Thread 3 y Thread 4 y

Thread 1 z Thread 2 z

Thread 3 z Thread 4 z

Thread 1 x

Page 30: Team DC-HSBA

Shader Thread SchedulingCycle

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30Thread 1 x

Thread 2 x Thread 3 x

Thread 4 x Thread 1 y

Thread 2 y Thread 3 y

Thread 4 y Thread 1 z

Thread 2 z Thread 3 z

Thread 4 z Thread 1 w

Thread 2 w Thread 3 w

Thread 4 w Thread 1 x

Page 31: Team DC-HSBA

PAUL NIEWOONDER

Page 32: Team DC-HSBA

Arithmetic – Multiply-AddMultiply Unit

Page 33: Team DC-HSBA

Arithmetic – Multiply-AddAdd Unit

Page 34: Team DC-HSBA

Arithmetic – Inverse Square Rootfloat InvSqrt(float x){float xhalf = 0.5f * x;int i = *(int*)&x; i = 0x5f3759d5 - (i >> 1);x = *(float*)&i;x = x*(1.5f - xhalf*x*x); return x;

}

Page 35: Team DC-HSBA

Arithmetic – DividerChained subtract and bit shiftRequires many LUTs

Full divide support would take up most of the available board space

Limited divide support (1 divide per sixteen cycles)

Page 36: Team DC-HSBA

Case DesignPlexiglas substrateVentilation holesFan mount

Joystick control mountVGA output port

Page 37: Team DC-HSBA

ScheduleID Task Name Duration Start Finish

1 Capstone Proj ect 104 days Mon 1/11/10 Sat 4/24/102 Board Design 104 days Mon 1/11/10 Sat 4/24/103 Lobster 82 days Mon 1/11/10 Fri 4/2/104 Leg Design 19 days Mon 1/11/10 Fri 1/29/108 Central Design 6 days Sun 1/31/10 Fri 2/5/10

12 Power Design 7 days Sat 2/6/10 Fri 2/12/10

13 Board Layout 20 days Sat 2/13/10 Thu 3/4/10

14 Revi sion 1 At Advanced Circuits 8 days Fri 3/5/10 Fri 3/12/10

15 Revi sion 1 Test ing and Revision 6 days Sat 3/13/10 Thu 3/18/10

16 Revi sion 2 At Advanced Circuits 8 days Fri 3/19/10 Fri 3/26/10

17 Revi sion 2 Test ing 7 days Sat 3/27/10 Fri 4/2/10

18 Crab 22 days Sat 4/3/10 Sat 4/24/1019 Design Expansi on 7 days Sat 4/3/10 Fri 4/9/10

20 Revi sion 1 At Advanced Circuits 8 days Sat 4/10/10 Sat 4/17/10

21 Revi sion 1 Test ing 7 days Sun 4/18/10 Sat 4/24/10

22 Softw are 98 days Mon 1/11/10 Sun 4/18/1023 Assembler 20 days Mon 1/11/10 Sat 1/30/10

24 Software Requi rements Specifi cati on 49 days Mon 1/11/10 Sun 2/28/10

25 Iteration 1 14 days Mon 3/1/10 Sun 3/14/1031 Iteration 2 21 days Mon 3/15/10 Sun 4/4/1034 Iteration 3 14 days Mon 4/5/10 Sun 4/18/1037 Logic Design 83 days Sun 1/17/10 Fri 4/9/1038 Micro Cache Design 7 days Sun 1/17/10 Sat 1/23/10

39 Shader Pipel ine 7 days Sun 2/14/10 Sat 2/20/10

40 Shader Control Unit 21 days Sun 2/21/10 Sat 3/13/10

41 Mult iply Add Uni t 20 days Sun 1/17/10 Fri 2/5/10

42 Excess Floating Point Uni ts 14 days Sun 2/7/10 Sat 2/20/10

43 Testi ng 1 7 days Sat 3/13/10 Fri 3/19/10

44 Revi sion 1 7 days Sat 3/20/10 Fri 3/26/10

45 Testi ng 2 7 days Sat 3/27/10 Fri 4/2/10

46 Revi sion 2 7 days Sat 4/3/10 Fri 4/9/10

47 PDR 1 day Tue 1/26/10 Tue 1/26/10

48 CDR 1 day Thu 2/25/10 Thu 2/25/10

49 Mil estone 1 1 day Tue 3/16/10 Tue 3/16/10

50 Mil estone 2 1 day Thu 4/15/10 Thu 4/15/10

51 Expo 1 day Thu 4/29/10 Thu 4/29/10

1/262/25

3/164/15

4/29

30 2 5 8 11 14 17 20 23 26 29 1 4 7 10 13 16 19 22 25 28 3 6 9 12 15 18 21 24 27 30 2 5 8 11 14 17 20 23 26 29 2 5 8December 2009 January 2010 February 2010 March 2010 April 2010 May 2010

Page 38: Team DC-HSBA

Milestone DeliverablesMilestone 1

Revision 1 of Lobster FPGA BoardIteration 1 of the Software

Milestone 2Lobster FPGA BoardIteration 3 of the SoftwareAll Logic

Capstone ExpoCrab FPGA Board

Page 39: Team DC-HSBA

Division of LaborJonathan Tate

System Logic Design

Shader ProgramsGraphics Pipeline

Control SoftwareDavid Hover

AssemblerUser Application

Software

Robert BensonBoard DesignUser Application

SoftwareGraphics Pipeline

Control SoftwarePaul Niewoonder

Arithmetic Logic Design

Case

Page 40: Team DC-HSBA

QUESTIONS?