Blowing Fuses with the SVF Player

The Efinity SVF Player is a JTAG SVF player that sends JTAG commands to an FPGA. The player reads the JTAG commands from a serial vector format (.svf) file. You can use the SVF Player without opening a project. The Efinity SVF Player requires a JTAG cable or mini-module with the FTDI n232H chipset.

The Efinity Bitstream Security Key Generator creates an .svf that you use with the SVF Player to blow fuses in s. These fuses contain key information for bitstream encryption and/or RSA authentication, and also control JTAG access to the .

The .svf used for blowing fuses performs a variety of JTAG commands.
  • It checks the 's IDCODE and compares it to the .svf to ensure that the player is targeting the correct .
  • For AES encryption, the key is sent in eight 32-bit words, followed by a validation step.
  • For RSA authentication, the key is sent in twelve 32-bit words, followed by a validation step.
  • It has commands to blow the JTAG fuse.

The .svf only has commands for the bitstream security features that you turned on in the Efinity Bitstream Security Key Generator.

Important: You can only blow the fuses once, and you cannot undo it after you have blown them. So make sure that you are really ready before you take this step.

Figure 1. SVF Player
To blow fuses with the SVF Player:
  1. Choose a USB Target. Ensure that your board is connected to your computer and turned on. Click the Refresh button to search for newly connected boards.
  2. Click the Open SVF File button to load the .svf that you generated with the Efinity Bitstream Security Key Generator. The content of the .svf displays in the console.
    Note: If you make changes to the .svf, you can reload it using the Reload button.
  3. Click the Play button to play the .svf file. It takes a very short amount of time to blow fuses.
  4. Toggle CRESET_N or power cycle your board for the new fuse settings to take effect.
Important: Do not try to blow the same fuses a second time (for example, do not run the same .svf twice in a row).
Typically, you will not receive any errors when running the SVF Player. However, you may receive a TDO mismatch error in the following situations:
  • You are trying to blow fuses that are already blown.
  • You are trying to blow fuses for the wrong , that is, the you selected in the Efinity Bitstream Security Key Generator is not the same as the one on your board.