To begin working with Hastlayer you'll need the following:
- A .NET project that requires some hardware acceleration.
- A compatible FPGA board. You have the following options here:
- For production-level commercial workloads:
- Using Xilinx Alveo U50, U200, U250 or U280 Data Center Accelerator Cards on-premises or in the cloud. In the cloud you can use them on Azure in NP-series virtual machines.
- Using AWS EC2 F1 instances.
- For embedded workloads: Using single board/module computers with Xilinx Zynq-7000 series SoC. We officially support the Trenz Electronic TE0715-04-30-1C module, but the codebase isn't highly specific to it and you can make your own manifest provider and device driver by inheriting from the same base classes.
- For simpler workloads and testing: The Nexys A7 (formerly known as Nexys 4 DDR) board (which is NOT the same as the non-DDR Nexys 4, be sure to purchase the linked board!) is suitable. The Nexys A7-100T version is required. Note that this is a relatively low-end development board that can't fit huge algorithms and it only supports slow communication channels. So with this board Hastlayer is only suitable for simpler algorithms that only need to exchange small amount of data. Note that to work with Nexys cards, you need to use the Hastlayer SDK from source.
- For production-level commercial workloads:
- On Linux if you are using
System.Drawing
we suggest transitioning to ImageSharp instead. However if you need to stick with youSystem.Drawing
you have to to install the Mono project's implementation of libgdiplus too. On CentOS you need the "libgdiplus" package, while on Debian systems such as Ubuntu you need "libgdiplus" and "libc6-dev" too.
These would be your first steps on starting to work with Hastlayer:
- Create your first Hastlayer-accelerated app by following the Working with Hastlayer guide.
- Set up your hardware device, following the guide corresponding to the platform you're using: