1. Insert the Screamer M.2
Optionally use the provided adapter cards to fit your target.
2. Power the target system
Once booted, FPGA prog done LED LD3 will be green.
3. Connect with USB 3
Plug the USB 3 cable to the Screamer M.2 and to your control computer.
Get the PCILeech gateware & software as explained in:
Refer to the SPI Flash Programming section of JTAG+Serial Programmer for detailed instructions.
In short:
1. Power the Screamer from the PCIe M.2 connector ! (JTAG cable alone does not provide all the voltage required)
2. Connect the JTAG cable to the corresponding pins on the Screamer board.
3. Get the latest version of openocd from:
4. Get the proxy bitstream “bscan_spi_xc7a35t.bit” from:
5. Program the SPI Flash using this configuration file:
interface ftdi ftdi_vid_pid 0x0403 0x6011 ftdi_channel 0 ftdi_layout_init 0x0098 0x008b reset_config none source [find cpld/xilinx-xc7.cfg] source [find cpld/jtagspi.cfg] adapter_khz 10000 proc fpga_program {} { global _CHIPNAME xc7_program $_CHIPNAME.tap } init jtagspi_init 0 bscan_spi_xc7a35t.bit jtagspi_program pcileech_screamer_m2_top.bin 0x0 fpga_program shutdown
openocd -f flash_screamer.cfg
In case of programming error, refer to Troubleshooting
The programming went well but the FPGA Prog Done LED is not green.
You may have an issue with the Flash SPI Quad Enable bit. This bit should have been set on the Screamer M.2 at the factory, but maybe your board got skipped in the process. You can reenable the bit this way:
1. Apply this patch on OpenOCD:
cd openocd git apply qe_command.patch make sudo make install
2. In the flash_screamer.cfg file, replace the “fpga_program” fonction by this one:
proc fpga_program {} { jtagspi set_qe 0 1 global _CHIPNAME xc7_program $_CHIPNAME.tap }
3. Run OpenOCD again:
openocd -f flash_screamer.cfg