Forum Discussion
Hi sir
Upon checking, Using the dual_fpga_pfl_max2 allows you to program FPGA 1 with the user hardware 1 (PGM 1), and FPGA 2 with the design in user hardware 2 (PGM 2).
(1) FPGA 1 designs are loaded into PGM1 (User Hardware 1) which uses address mapping from 0x01640000 - 0x02C5FFFF) in the flash.
(2) FPGA 2 designs are loaded into PGM2 (User Hardware 2) which uses address mapping from 0x02C60000 - 0x0427FFFF) in the flash.
(3) After compiling your designs for each FPGA, verify that the FPGAs configures as expected.
(4) Then create the flash files
(a) Open NIOS II command shell
(b) Navigate to the directory where the sof file is located for the designs
(c) Create the flash files for each FPGA
(1) Create flash file for Fpga 1 in the NIOS II command shell. Type "sof2flash --input=<yourfile>.sof --offset=0x01640000 --pfl --optionbit=0x00018000 --programmingmode=PS"
(2) Create flash file for Fpga 2 in the NIOS II command shell. Type "sof2flash --input=<yourfile>.sof --offset=0x02c60000 --pfl --optionbit=0x00018000 --programmingmode=PS"
(5) Program the flash with both FPGA designs
(a) In the Nios II command shell
(1) Programming User Hardware 1 with FPGA 1 flash file. In NIOS II command shell type: "nios2-flash-programmer --base=0x0 <yourfpga1file>.flash
(2) Programming User Hardware 2 with FPGA 2 flash file. In NIOS II command shell type: "nios2-flash-programmer --base=0x0 <yourfpga2file>.flash
(6) Program the MAX II device with the "pfl_read_write_x16.pof"
(7) Power cycle the board and both FPGAs should be programmed from flash.