FPGA firmware can be stored in external flash (so that the board boots automatically) or in RAM (which requires loading each time).
As of today the supported upload method is via USB through SAM D21 which allows to burn the program in flash so that it can be read back from the FPGA at boot.
We are have a partially working USB blaster compatibility on SAM D21 so in the future you should be able to see SAM D21 USB port as a jtag interface compatible with quartus and this will allow you to use programmer, signaltap, nios ide etc.
Finally the board has a provision for a JTAG connector (which is not mounted). Pinout is compatible with USB blaster but pitch is not so you’ll have to adapt the wiring, eventually by using the 10 pin to flying terminals cabling supplied with Atmel-ICE.
The only downside of using direct jtag connection is that it will interfere with SAM as it also is using JTAG to communicate with FPGA, so it should be used only with SAM in boot mode or in a state where it does not use JTAG.
some final remarks on flash images: we currently have dual boot and flash is 2 Megabytes so the first 512K host the boot image that produces the arduino logo on HDMI and is able to program or launch the second image, located in the second 512K page, which is the one that can be updated by simply including its header in the arduino code.
this means that there is 1MB in flash free for your usage...