Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based...

29
Microelectro nic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping Virtual-Lab 2004 Setubal, Portugal

Transcript of Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based...

Page 1: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

Microelectronic Systems Institute

Leandro Soares Indrusiak

Manfred Glesner

Ricardo Reis

Lookup-based Remote Laboratory for FPGA Digital Design Prototyping

Virtual-Lab 2004Setubal, Portugal

Page 2: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

2

Outline

• Motivation and Background– why FPGAs?

• Underlying software platform– why lookup-based?

• Remote Laboratory of Digital Design– what are the advantages?– and how about the disadvantages?

• Conclusions and Future Work

Page 3: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

3

Motivation and Background

• the design of digital electronic systems comprehends several rather complex tasks

• prototyping is necessary, for instance:– evaluation of the functionality by the end

user– evaluation of performance, power

consumption, heat dissipation, etc. under real operation conditions

Page 4: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

4

Motivation and Background

• prototyping of digital integrated circuits (ASICs) is really expensive

• FPGAs have been used by both companies and universities as prototyping platforms

• in some cases, FPGAs are even incorporated to consumer products

Page 5: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

5

Motivation and Background

• XCV800 Xilinx Virtex FPGA– 888.439 system gates– 487.44 HZ – 100MHZ– 166 IO-Pins

• 2 SRAM-Banks– each 512K*16 Bit

• 16 Mbit Flash RAM

www.xess.com

Page 6: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

6

Motivation and Background

• FPGAs offer– lower cost– more flexibility– faster prototyping cycles– affordable CAD support

• furthermore– on-the-field updates, reconfigurability

(partial and total), etc.

Page 7: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

7

Software Platform

• remote access to FPGAs– prototyped system must receive data from

external sources – prototyped system interacts with other

subsystems that cannot be physically integrated

– users may not be physically co-located with the FPGA resources they want to use

• software layer to ease remote access is needed

Page 8: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

8

Software Platform

• FPGAs should be accessed regardless of their network location or implementation details

Network

FPGA Platform AFPGA Platform B

FPGA Platform C

CLIENTprocess

process

processconfigureconfigure

Page 9: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

9

Software Platform

configuration bank

sub system

A

sub system

B

• our approach: FPGA encapsulation

Page 10: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

10

Software Platform

– TCP/IP based– middleware-based

approach• loose coupling between

clients and servers• alternatives: CORBA,

Jini, UPnP, webservices (UDDI+SOAP), etc.

client server

middleware

queries for

service

advertisesservice

• FPGA distribution over a network

Page 11: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

11

Software Platform

• Jini – it comprehends a Java-based set of APIs and

network protocols that support development and deployment of distributed systems organized as federations of services that are highly adaptive to change

– most of the facilities for service lookup, discovery and join are already implemented and freely available

– includes a programming model covering leases, events and transactions

Page 12: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

12

Software Platform

• Jini – Jini view of the network doesn't involve a

central controlling authority– the set of all services available on the network

form a federation - a group composed of equal peers

– Jini's infrastructure provides a way for clients and services to find each other

Page 13: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

13

Software Platform

• the basic mechanisms for adding, removing, finding and accessing services rely on the following protocols– discovery: supports both service providers

and clients on the location of lookup servers– join: allows the service providers to take part

on a federation of services by registering with a lookup server

– lookup: supports clients looking for services within the federation

Page 14: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

14

Software Platform

Server

Server

discovery

Page 15: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

15

Software Platform

Lookup Server

Proxy

Proxy

join

Server

Server

Page 16: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

16

Software Platform

Lookup Server

Proxy

Proxy

Server

Server

Client

discovery

Page 17: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

17

Software Platform

Lookup Server

Proxy

Proxy

Server

Server

Client

lookup

key

matches

Page 18: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

18

Software Platform

Lookup Server

Proxy

Server

Server

Client

Proxy

Page 19: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

19

Software Platform

lookup serviceclientreconfigurable

hardware service backend service configuration bank

create( )

registerService( )

discoverLookup( )

lookupService( )

configure( )getConfiguration( )

configure( )

process( )

process( )

discoverLookup( )

Page 20: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

20

Digital Design Remote Lab• laboratory activities usually involve iterations

over design entry, simulation, synthesis, analysis and prototypation phases

• a typical design problem is given (e.g. design a triple-DES encryption/decryption module able to support a rate of 100 Mbits/s) and the students work over the CAD tools to achieve an acceptable solution

• once an implementation is achieved, an FPGA configuration file can be generated and the design can be remotely prototyped using the proposed infrastructure

Page 21: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

21

Digital Design Remote Lab

Network

Reconfigurable Platform B

student

processconfigure

Reconfigurable Platform A

image/video

Page 22: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

22

Digital Design Remote Lab

reconfigurable hardware

module

reconfigurable hardware service

& lookup service

client

Page 23: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

23

Digital Design Remote Lab

• advantages– students can access the lab anywhere and

anytime– boards can be shared more efficiently– international design contests– video feed can provide further possibilities by

providing visual feedback from measuring instruments

– Java-based approach allows for platform independence

Page 24: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

24

Digital Design Remote Lab

• disadvantages– setting up both software and hardware

infrastructure can be complicated– currently rely on general purpose video

streaming (Microsoft Portrait) and communication (ICQ) packages, which are not available on every platform

– working with different FPGA platforms adds complexity

• board sharing is more difficult, as configurations must be specifically generated

• backend module is board-dependent

Page 25: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

25

Conclusions

• the technical infrastructure to build efficient access to remote FPGA boards was presented

• such infrastructure was used to set a remote laboratory for prototyping digital integrated circuits, allowing more flexibility and efficiency than the previously reported approaches

Page 26: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

26

Conclusions

• maintenance costs are lower, but setup costs are higher

• lack more detailed data about student acceptance

• lack more work on the integration of remote lab and lectures and/or online courses

Page 27: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

27

Future Work

• integration of the encapsulated FPGA boards within a simulation environment, allowing the users to validate parts of the system simulation model with the parts of the system which are already implemented in the FPGA board

• develop intelligent service proxies, in order to allow an FPGA board to use other services

Page 28: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

28

Thanks for your attention

Microelectronic Systems Institute

http://www.microelectronic.e-technik.tu-darmstadt.de http://www.inf.ufrgs.br

Leandro Soares Indrusiak

Manfred Glesner

Ricardo Reis

<indrusiak, glesner>@mes.tu-darmstadt.de

[email protected]

Page 29: Microelectronic Systems Institute Leandro Soares Indrusiak Manfred Glesner Ricardo Reis Lookup-based Remote Laboratory for FPGA Digital Design Prototyping.

29

Software Platform

• data type abstraction

ba

cken

d

int

float

int[ ]

10101110101011101010101010101010100101010101010010101010101001001010100111001010101010011100100001011111

mem

ory

hard

war

e de

sign

mem

ory

inte

rfac

e ty

pe a

bstr

actio

n

std_

logi

c_ve

ctor

bit_

vect

or

object domain hardware domain