firesim icon indicating copy to clipboard operation
firesim copied to clipboard

Usage as a framework for an end product with FPGAs

Open nfrancque opened this issue 4 years ago • 0 comments

Hi, please let me know if this is the right place to ask a question like this.

From what I can understand thus far, firesim at its core is a system that wraps AWS FPGA instances into a manager for deploying at scale. The primary use case for this seems to be stated as internal prototyping of ASICs etc and being able to hotswap different compute instances without upper layers needing to know. (This is awesome, btw :))

I work with FPGAs primarily so it seems like my perspective is a bit different than the intended audience?

What I am personally curious about is stripping away some of the simulation-specific aspects and just using this as a framework for deploying FPGAs at scale where they can be interacted with easily. In other words, some external API to customers for launching jobs that will eventually run on some FPGA in the cluster. Images would probably be written in VHDL rather than Chisel. Think some kind of remote push-button video analysis server or something along those lines where individuals just ask for an item to be analyzed and FireSim manages assigning an FPGA a pre-defined image and allowing this to provide data back to whatever central system communicates with the external world.

So, is this a direction FireSim would ever want to head in, or would forking for this be worth it? It seems in line with the project goals of enabling maximum heterogeneous computing at scale IMO. Exposing VHDL as a synthesis option seems like it should be trivial since F1 instances already give direct control over the Vivado build. I have not yet read much code so let me know if that is off base.

nfrancque avatar Dec 04 '21 13:12 nfrancque