Visible to Intel only — GUID: gyi1575517735506
Ixiasoft
4.5. Loading Your AFU into the Intel FPGA PAC N3000
$ cd prj/pac_baseline/build/
$ $ ls -1
chip.asm.rpt
chip.done
chip.fit.finalize.rpt
chip.fit.place.rpt
chip.fit.plan.rpt
chip.fit.route.rpt
chip.fit.rpt
chip.fit.summary
chip.flow.rpt
chip_out.sof.rpt
chip.pin
chip.pow.rpt
chip.pow.summary
chip.sld
chip.sta.rpt
chip.sta.summary
chip.syn.rpt
chip.syn.smsg
chip.syn.summary
pac-n3000.map
pac-n3000-secure-update-raw.bin
pac-n3000.sof
The file pac-n3000-secure-update-raw.bin is a binary file formatted to be loaded into the N3000 FPGA flash. Before this file can be loaded into the flash, the prepended authentication blocks generated by PACSign must be added to the binary file prior to loading using the OPAE tool fpgasupdate. The following instructions guide you in creating an image file with the proper authentication blocks for an N3000 that has not had the root entry hash programmed. Typically, when developing an AFU in a lab environment, do not program the root entry hash until the AFU is production ready.
For more information, refer to the Security User Guide for Intel FPGA Programmable Acceleration Card N3000 Variants.
export PYTHONPATH=/usr/local/lib/python3.6/site-packages/
- Create the image and load using fpgasupdate.
$ PACSign SR -t UPDATE -H openssl_manager \ -i pac-n3000-secure-update-raw.bin -o unsigned_PAC_N3000_RSU.bin No root key specified. Generate unsigned bitstream? Y = yes, N = no: y No CSK specified. Generate unsigned bitstream? Y = yes, N = no: y
By responding with 'y', you are creating an unsigned binary file that can be loaded into a N3000 board that has not had the root key hash loaded into flash. - Perform the fpgasupdate write process.
$ sudo fpgasupdate unsigned_PAC_N3000_RSU.bin <PCIe B:D.F>
Note: The fpgasupdate write process take approximately 40 minutes to complete. - Once fpgasupdate completes, perform a remote system update to load the new FPGA image, then verify the expected FPGA is loaded with OPAE tools fpgainfo fme and fpgainfo port.
$ sudo rsu fpga <PCIe B:D.F> $ sudo fpgainfo fme $ sudo fpgainfo port