9.3.6 FlashPro® and SVF

SVF (Serial Vector Format) is an industry‑standard file format used to describe JTAG operations. Like STAPL files, SVF files are used to describe the in‑system programming algorithms for IGLOO®, ProASIC3, SmartFusion®, and Fusion family devices.

Unlike STAPL files, SVF files support only a single ACTION, or programming flow, per file due to language limitations. In addition, the SVF specification does not support message display or flow‑control constructs, such as conditional statements or loops.

As a result, Microchip® programming tools, including Designer and FlashPro® software, generate a set of SVF files corresponding to the individual STAPL ACTIONS applicable to the selected silicon features.

For example, a typical STAPL file may include the following ACTIONS:
  • ERASE
  • ERASE_ALL
  • PROGRAM
  • PROGRAM_ARRAY
  • VERIFY
  • VERIFY_ARRAY
  • DEVICE_INFO
  • READ_IDCODE
  • VERIFY_DEVICE_INFO

In this case, a corresponding set of SVF files is generated and named accordingly, such as ERASE.svf, ERASE_ALL.svf, PROGRAM.svf, PROGRAM_ARRAY.svf, and so on. These files are generated in a folder named: \_svf , which is created during file generation.

The following figure illustrates the differences between STAPL and SVF files.

Figure 9-15. STAPL vs SVF files
???
Note: The DEVICE_INFO.svf file is not generated because SVF files do not support message display or flow control.
Table 9-2. SVF Outline
SVF FileArrayFROMNVM (Flash Memory System Builder)Security SettingsPreviously Programmed Device?
ERASEXXYES or NO
ERASE_ALLXXXYES or NO
ERASE_ARRAYXYES or NO
ERASE_FROMXYES or NO
ERASE_SECURITYXYES or NO
PROGRAMXXYES or NO
PROGRAM_ARRAYXYES or NO
PROGRAM_FROMXYES or NO
PROGRAM_NVMXYES or NO
PROGRAM_SECURITYXYES or NO
VERIFYXXXYES or NO
VERIFY_ARRAYXYES or NO
VERIFY_FROMXYES or NO
VERIFY_NVMXNO
ENC_DATA_AUTHENTICATIONXYES

SVF File

Array

FROM

NVM

(Flash Memory System Builder)

Security Settings

Previously Programmed Device?

ERASE

X

X

YES or NO

ERASE_ALL

X

X

X

YES or NO

ERASE_ARRAY

X

YES or NO

ERASE_FROM

X

YES or NO

ERASE_SECURITY

X

YES or NO

PROGRAM

X

X

YES or NO

PROGRAM_ARRAY

X

YES or NO

PROGRAM_FROM

X

YES or NO

PROGRAM_NVM

X

YES or NO

SVF File

Array

FROM

NVM

(Flash Memory System Builder)

Security Settings

Previously Programmed Device?

PROGRAM_SECURITY

X

YES or NO

VERIFY

X

X

X

YES or NO

VERIFY_ARRAY

X

YES or NO

VERIFY_FROM

X

YES or NO

VERIFY_NVM

X

NO

ENC_DATA_AUTHENTICATION

X

YES