Top Banner
www.flextiles.eu FlexTiles 1 8 . 0 7 . 2 0 1 4 / A H S Benedikt Janßen Ruhr-University Bochum (RUB) FlexTiles Workshop at AHS 2014 FPGA-Based Emulation of the FlexTiles Platform
18

Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

Jun 19, 2015

Download

Engineering

FlexTiles Team

The FP7 FlexTiles Project will provide a tool-chain that allows DSPs, CPUs and a FPGA to be implemented on the FlexTiles Development Platform. This slide gives some details about the dynamic re-configurable of the FPGA by the CPU
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: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

www.flextiles.eu

FlexTiles

18.0

7.20

14/A

HS

Benedikt JanßenRuhr-University Bochum (RUB)

FlexTiles Workshop at AHS 2014

FPGA-Based Emulation of the FlexTiles Platform

Page 2: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

2 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Global View

GPP Node

AI

DSP FPGA Fabric

NI

GPP Node

NI

Network-on-Chip (NoC)

NI NI NI

AI AI

NI

Reconfig. Control

DDR Node

NI

Tile TileGPP Node

NI

I/O

NI

HW Acc. HW Acc.

Tile

Page 3: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

3 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Development Platform

Software Emulator

Based on Open Virtual Platform

Enable Software prototyping

Hardware Emulator

Sundance SMT166 Based on 2 Virtex-6 FPGAs

24-pin ATX connector

Based on the TU/e platform

Enable Hw/Sw prototyping

Page 4: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

4 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Development Platform

System Components

GPP Node MicroBlaze soft-core processors

Network on Chip Nodes connected via Network Interfaces

Network Interface Device Transport Layer (DTL) protocol

Accelerator Interface Newly developed within this project

Accelerators Micro-programmed

Data-flow

GPP Node

AI

Accelerator

NI

NoC

NI

Page 5: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

5 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Network on Chip

Network on Chip

AElite NoC

Network Interface

Main Task Data into packets NoC

NoC data out of packets

Device Transport Layer Master / Slave

Data flow Load / Store

Stream

GPP Node

AI

Accelerator

NI

NoC

NI

Page 6: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

6 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Accelerator Interface

Main Tasks

Control accelerators

Provide a unique interface

Components

Accelerator control

Protocol parser

GPP Node

AI

Accelerator

NI

NoC

NI

AC

Page 7: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

7 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

AI : DTL-To-AI

Device Transaction Layer (DTL)

Command (dtl_cmd)

Write (dtl_wr)

Read (dtl_rd)

DTL-To-AI Structure

GPP Node

AI

Accelerator

NI

NoC

NI

DTL2AIAC

Page 8: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

8 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

AI : Accelerator Control

Accelerator Control Structure GPP Node

AI

Accelerator

NI

NoC

NI

DTL2AIAC

in

out

Page 9: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

9 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Accelerators

Accelerator Types

Micro-programmed: FlexTiles DSP

Data-flow: Accelerators on eFPGA

Lite Accelerator

Example/Test Application

Implements 2 register banks

3 FIFOs

Adding two sequential values

GPP Node

AI

Accelerator

NI

NoC

NI

Page 10: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

10 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Software Functions

Accelerator Software Functions

send_rqst (int acc_number, int size, int ch_id, int addr, char type)

send_data (int acc_number, int size, int ch_id, int addr, int* array)

read_data (int acc_number, int size, int addr, int* array)

write_register (int acc_number, int ch_id, int addr, int value)

read_register (int acc_number, char regis)

GPP Node

AI

Accelerator

NI

NoC

NI

Page 11: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

11 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Development Platform Configuration

Xilinx Platform Studio Project

TUe Platform configured via XML file

Xilinx Microprocessor Project file (XMP)

Platform Configuration

User Constraint File (UCF)

Microprocessor Hardware Specification (MHS)

Microprocessor Software Specification (MSS)

Page 12: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

12 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Adding Accelerators

Accelerator Integration

Peripheral Core (PCORE)

Add Accelerator files to pcore directory

Add Accelerator entry to MHS

Configuration Files

Black Box Definition file (BBD)

Peripheral Analyze Order file (PAO)

Microprocessor Peripheral Definition (MPD)

Page 13: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

13 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Implementation

XPS Command Line Mode

xps -nw -scr system.tcl system.xmp

Simple Design:

GPP

AI+ Acc

DebugMonitor

NoC

Page 14: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

14 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Implementation Results

Results

Standalone platform Occupied Slices: 5%

IOB: 1%

RAMB36E1: 13%

RAMB18E1: 0%

BUFG: 9%

Platform with lite accelerator Occupied Slices: 7%

IOB: 1%

RAMB36E1: 13%

RAMB18E1: 1%

BUFG: 12%

GPP Node

NI

NoC

Monitor Node

GPP Node

AI

Lite Accelerator

NI

NoC

NI

Monitor Node

Page 15: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

15 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Implementation Results

Results

Platform with DSP Occupied Slices: 62%

IOB: 1%

RAMB36E1: 15%

RAMB18E1: 1%

BUFG: 9%

GPP Node

AI

DSP

NI

NoC

NI

Monitor Node

Page 16: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

16 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Challenges

Platform with DSP

Unroutable Signals (Rats Nests)

Colors

Monitor: yellow

GPP: cyan

NoC: purple

AI: green

DSP: red

Page 17: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

17 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Summary

Emulator Goal

Run demo application like optical flow

NoC

GPP Node

NI

NI

GPP Node

GPP Node

NI

NI

GPP Node

NI

NI

NI

NI

AI

Acc

AI

Acc

Acc

AI

Acc

AI

NoC

AURORA

Page 18: Conference on Adaptive Hardware and Systems (AHS'14) - FlexTiles FPGA Emulation

18 /

18.0

7.20

15/A

HS

14

The

info

rmat

ion

cont

aine

d in

thi

s do

cum

ent

and

any

atta

chm

ents

are

the

pro

pert

y of

Fle

xTile

s co

nsor

tium

. Y

ou a

re h

ereb

y no

tifie

d th

at a

ny r

evie

w,

diss

emin

atio

n, d

istr

ibut

ion,

co

pyin

g or

oth

erw

ise

use

of t

his

docu

men

t m

ust

be d

one

in a

ccor

danc

e w

ith t

he C

A o

f th

e pr

ojec

t (T

RT

/DJ/

6244

1278

5.20

11).

Tem

plat

e ve

rsio

n 1

.0

18

Many Thanks for Your Attention!

www.flextiles.eu

[email protected]

The last Slide