FlashPro Software v11.4 User Guide Datasheet by Microchip Technology
O Microsemi
FlashPro for Software v11.4
User’s Guide
NOTE: PDF files are intended to be viewed on the printed page; links and cross-references in this PDF file
may point to external files and generate an error when clicked. View the online help included with
software to enable all linked content.
OMicrosemi
FlashPro User's Guide
FlashPro User's Guide 3
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Table of Contents
About FlashPro .............................................................................................. 5
Supported Families...................................................................................... 10
FlashPro Interface ....................................................................................... 12
Introductory Programming Tutorials ......................................................... 19
Advanced Tutorials ...................................................................................... 52
Programming Settings and Operations ..................................................... 66
Single Device Configuration ....................................................................... 71
Chain Programming ..................................................................................... 75
Chain Editing ................................................................................................ 83
Configuring a Programmer ......................................................................... 86
Configuring Security ................................................................................... 89
IGLOO and ProASIC3 Programming .......................................................... 98
Programming File Actions for IGLOO and ProASIC3 Devices ................................................ 99
SmartFusion and Fusion (AFS) Programming ........................................ 102
Generating Programming Files ................................................................ 106
Importing and Exporting Files .................................................................. 126
Using Hot Keys .......................................................................................... 130
import_config .......................................................................................................................... 155
remove_device ....................................................................................................................... 163
remove_non_actel_device_from_database ........................................................................... 164
Troubleshooting ........................................................................................ 185
Electrical Parameters ................................................................................ 215
Electrical Specifications ............................................................................ 219
Solutions to Common Issues Using Device Debug ................................ 226
Frequently Asked Questions .................................................................... 228
OMicmsemi.
Table of Contents
4 FlashPro User's Guide
Embedded Flash Memory (NVM) Frequently Asked Questions ............. 230
Device Debug User Interface .................................................................... 238
Debug SERDES ..................................................................................................................... 250
Live Probes ............................................................................................................................ 255
Active Probes ......................................................................................................................... 256
Contacting Microsemi ............................................................................... 277
Regulatory and Compliance Information ............................................................................... 279
Product Support ........................................................................................ 280
0 Microsemi
Micrusemi
Flasth Tutorial
http ://www. microsemi.com/producls/lpqa-soUdesiqn-resources/pmqramminq/flashpmexpress#uven/iew
FlashPro User's Guide 5
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
About FlashPro
FlashPro is Microsemi's programming software tool for SmartFusion, IGLOO, ProASIC3, Fusion devices.
You will be able to navigate easily through the FlashPro software because of its similarities with other
Microsemi software tools. The FlashPro software includes the following features:
• Supports modification of I/O states during programming
• Supports automatic construction of chain from scan chain operation
• Supports importing non-Microsemi BSDL files for automatic chain construction
• Supports direct multiple Microsemi device chain programming and serialization
• Supports single device STAPL files generation
• Supports single device SVF files generation
• Supports single device IEEE 1532 files generation
• Supports Chain STAPL file generation
• Supports Chain SVF file generation
• Supports a single GUI to drive multiple FlashPro5/4/3/3X programmers for parallel programming
• Supports 1.2V programming for IGLOO devices
Note: Note: Parallel programming via FlashPro (USB/LPT1) or FlashPro Lite programmers is not supported.
• Supports device serialization for parallel programming
• A redesigned GUI, which features a project manager to manage the programming files and data
• Enhanced In-System Programming (ISP) Support
An optional In-House Programming (IHP) service is available if you are purchasing Microsemi devices in
volume. Contact Microsemi for more information.
For step-by-step instructions on how to use these features, see the FlashPro Tutorial.
If you arrived here by pressing the F1 key in FlashPro, use the Search tool in help for more information on
specific content, or click the Help button embedded in any dialog box or GUI for context-specific help.
Installing FlashPro Express Software
See the FlashproExpress Installation Instructions on the Microsemi website for information on how to install
FlashproExpress software and relevant system requirements.
View the detailed Install Instructions and System Requirements at the Flashpro Express software page:
http://www.microsemi.com/products/fpga-soc/design-resources/programming/flashproexpress#overview
Programming Tool Model Overview
The FlashPro software is designed for use in the operation, user design, and production programming flows.
Design Debug
The figure below illustrates the programming design flow when an engineer is in debug mode. In the
programming design flow, the new Programming files (STAPL/ PDB) are generated for a design change and
are sent to the FlashPro software for testing and debugging the design.
Note: FlashPoint is integrated into Designer; therefore, the STAPL file is generated from Designer. FlashPro v6.2 and
greater can be used to export STAPL files from PDB files created by FlashPoint (Designer).
FlashPoint
(Designer)
EMPL/ PDB Flk
Slush Device SYAPL
FlashPlo
Sohware
FhshPmi
JTAG
MASKS/E
FllShPolnt
(FhshPm v6.0)
HashPo'lIl
{Daslgnefl 5|ngle Dem STAPL
- mm m
mm. , was me firmware FlashPloa masts/E
/‘
nlnlni
comm-m Flla "Damon,”
6 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 1 · Programming Design Flow
Operation/Production Planning
The figure below shows an illustration of the operation flow. In this illustration, the production coordinator
generates the programming files (STAPL/PDB) with or without serialization and/or security settings (see
Programming application note for further information). The production coordinator loads the programming
file in the FlashPro software to set up the configurations for production programming, such as Serialization
options, Action selections, and Procedure selections, etc.
Figure 2 · Operation Flow
The production coordinator may want to generate different configuration files for each programming station
(depending on the logistics and serialization options). For example, if the Programming file contains 10,000
serial data and the production coordinator decides to split the serial data designation to one thousand for
each programming station, then ten configuration files will be generated (one for each of the ten
programming stations). However, if you are not using serialization, you only need one configuration file.
The production coordinator can test the configuration files with one or more FlashPro5/4/3/3X programmers
before sending it to the production programming floor. If PDB files are used in the production flow, warning
icons may appear on the FlashPro/FlashPoint GUI because the automatic audit cannot find the source file
on the production environment; the PDB file contains the valid programming data. If STAPL files are used,
loaded STAPL files will be audited on execution of an action to determine if the original STAPL file has been
modified. If it has not been modified, the action will continue to run. If it has been modified you will be
prompted to reload the modified STAPL file, or to continue running the current action. If you select to reload
the modified STAPL file, all previous programming settings will be refreshed and will need to be performed
again.
o Microsemi.
%
magnum We $25ng Hashrmi "AG FraAS‘G/E
v Ema w
ondumnn (unrdmatol
Senahzatmnlog ongvammmg Log to. mom keepmg
JTAG
FlashPro I FlashProB ProASIG/E
Software
PDB Flle wlth
Securlty Settings
Programming Tool User Model Overview - SmartFusion Only
FlashPro User's Guide 7
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Operation/Production Programming
The figure below shows an illustration of the production programming flow. The operator imports the
configuration file and begins programming the devices by clicking the Run button. The operator's interaction
with FlashPro should be limited.
At the end of a programming session, the serialization log file (if applicable) and the programming log file are
sent back to the production coordinator for record keeping.
Figure 3 · Production Programming Flow
Express Configuration Programming (IGLOO, ProASIC3 and Fusion devices only)
The figure below illustrates the Express Configuration Programming Flow. In this flow, you can program the
security setting into the IGLOO, ProASIC3 and Fusion family device directly from the FlashPro software.
Note: FlashPoint is integrated into the FlashPro v6.0 and later software.
Figure 4 · Express Configuration Programming Flow
Programming Tool User Model Overview - SmartFusion Only
The FlashPro software is designed for use in the operation, user design, and production programming flows.
Design Debug
The figure below illustrates the programming design flow when an engineer is in debug mode. In the
programming design flow, the new files (FDB, UFC, EFC) are generated for a design change and are sent to
the FlashPro software for testing and debugging the design.
OMicmsemi.
58an um:
snvuma
FlashPolnl
(Designev) FDB uporu mu
Save
Q FIlshPm mm
\b 50M“ _. FlashPro max Smarlfuslon
Smmmslgn
(M55)
EFC
singIe Danika
STAPL/PDB
FlashPolnl
(Designed FDB
Q Flathm "AG
urc Scum“ 31mm 4/3 Smanfuslon
SmarlDeslgn \_J
(M55)
EFC
_ ngmmmlng
“film“ “'9 Soluuons
8 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 5 · SmartFusion Programming Design Debug Flow
Operation/Production Planning
The figure below shows an illustration of the operation flow. In this illustration, the production coordinator
generates the programming files (STAPL/PDB) with or without serialization and/or security settings (see
Programming application note for further information). The production coordinator loads the programming
file in the FlashPro software to set up the configurations for production programming, such as Serialization
options, Action selections, and Procedure selections, etc.
Figure 6 · SmartFusion Operation Flow
The production coordinator may want to generate different configuration files for each programming station
(depending on the logistics and serialization options). For example, if the Programming file contains 10,000
serial data and the production coordinator decides to split the serial data designation to one thousand for
each programming station, then ten configuration files will be generated (one for each of the ten
programming stations). However, if you are not using serialization, you only need one configuration file.
The production coordinator can test the configuration files with one or more FlashPro5/4/3/3X programmers
before sending it to the production programming floor. If PDB files are used in the production flow, warning
icons may appear on the FlashPro/FlashPoint GUI because the automatic audit cannot find the source file
on the production environment; the PDB file contains the valid programming data. If STAPL files are used,
loaded STAPL files will be audited on execution of an action to determine if the original STAPL file has been
modified. If it has not been modified, the action will continue to run. If it has been modified you will be
prompted to reload the modified STAPL file, or to continue running the current action. If you select to reload
the modified STAPL file, all previous programming settings will be refreshed and will need to be performed
again.
Operation/Production Programming
The figure below shows an illustration of the production programming flow. The operator imports the
configuration file and begins programming the devices by clicking the Run button. The operator's interaction
with FlashPro should be limited.
FlzshPm
[onllgmatmn me
Snflware
Senahzatmnlog
O Miclosemi.
%
FIasanA/mx
ms
valFusmn
v
Pvagvammmg Lag
mu m
ondumnn (nnrdmatol
to: mom keepw ng
SmanFusion grogramming flow
FlashPro
Software
JTAG
FIashProA/S/SX _, SmanFusion
Sammy Only (no file)
FDB
EFC
UFC
l
FldSIlPlO PDE
SmartFusion2 Programming
FlashPro User's Guide 9
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
At the end of a programming session, the serialization log file (if applicable) and the programming log file are
sent back to the production coordinator for record keeping.
Figure 7 · SmartFusion Production Programming Flow
Creating a New PDB for SmartFusion
The figure below illustrates the new SmartFusion programming flow. In this flow you can program the
security, FPGA Array, FlashROM and Embedded Flash Memory (NVM) for SmartFusion.
Figure 8 · Creating a New PDB for SmartFusion
SmartFusion2 Programming
SmartFusion2 programming is executed from within Libero SoC.
See the Libero SoC help for information on SmartFusion2 programming, including programming
authentication error codes and programming error codes.
Q Microsemi
SmanFusxonZ
|GLOO2
SmanFusxon
Fusxon
IGLOO
PmAS‘CS
10 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Supported Families
Microsemi's Libero SoC software supports the following families of devices:
• SmartFusion2
• IGLOO2
• SmartFusion
• IGLOO
• ProASIC3
• Fusion
When we specify a family name, we refer to the device family and all its derivatives, unless otherwise
specified. See the table below for a list of supported device families and their derivatives:
Table 1 · Product Families and Derivatives
Device
Family
Family
Derivatives
Description
SmartFusion2 N/A Address fundamental requirements for advanced security, high reliability and low power in
critical industrial, military, aviation, communications and medical applications.
IGLOO2
N/A
Low-power mixed-signal programmable solution
SmartFusion SmartFusion SmartFusion intelligent mixed-signal FPGAs are the only devices that integrate an FPGA,
ARM Cortex-M3, and programmable analog, offering full customization and IP protection.
Fusion N/A Mixed-signal FPGA integrating ProASIC3 FPGA fabric, programmable analog block, support
for ARM® Cortex
TM
-M1 soft processors, and flash memory into a monolithic device.
IGLOO
IGLOO
The ultra-low-power, programmable solution
IGLOOe
Higher density IGLOO FPGAs with six PLLs and additional I/O standards
IGLOO nano
The industry’s lowest power, smallest size solution
IGLOO PLUS
The low-power FPGA with enhanced I/O capabilities
ProASIC3
ProASIC3
The low-power, low-cost, FPGA solution
ProASIC3E
Higher density ProASIC3 FPGAs with six PLLs and additional I/O standards
ProASIC3
nano
Lowest cost solution with enhanced I/O capabilities
ProASIC3L
The FPGA that balances low power, performance, and low cost
Automotive
ProASIC3
ProASIC3 FPGAs qualified for automotive applications
Military
ProASIC3/EL
Military temperature A3PE600L, A3P1000, and A3PE3000L
RT ProASIC3
Radiation-tolerant RT3PE600L and RT3PE3000L
o Microsemi.
Micrusemi website
http ://www. microsemi.com/producls/lpqa-soudesiqn-resources/pmqramming/flashpru#uven/iew
0 en create
Installing FlashPro Software and Hardware
FlashPro User's Guide 11
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Installing FlashPro Software and Hardware
See the FlashPro Installation Instructions on the Microsemi website for information on how to install
FlashPro software/hardware and relevant system requirements.
View the detailed Install Instructions and System Requirements at the FlashPro software page:
http://www.microsemi.com/products/fpga-soc/design-resources/programming/flashpro#overview
Starting FlashPro
You can start the FlashPro software from Programs > Microsemi FlashPro vx.x >
FlashPro. If you installed the program in a folder other than FlashPro, choose that folder from the
Programs menu.
The figure below shows the FlashPro GUI. From this GUI, you can create a new project by clicking the New
Project button or open an existing project by clicking the Open Project button.
You can also access the above features from the menu bar. You can access all the other features after you
open or create a new project.
single chain grogramming Lg
“mm mm -
saga-u: mm: “mo
mm x mm mm x
m 'wsw : 7mm
Flow window
Status
cm nl "um ‘vx\nr-\qu_nnndumanmmn\—n_mm.pn-
m m: -v mamas—nu.
nun- ‘ an; unm- = my
mun-q
nw-flmunpflflunluml
- .- m mu mun-I11.
12 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
FlashPro Interface
The main FlashPro interface consists of two views, one for Single Device Programming and the other for
Chain Programming (see figure below). The GUI consists of a Flow window, Device Configuration Window
(for single or chain programming), Log window and a Status bar. The Log window displays programming
information, error messages, and warning messages. The Status bar displays your programming mode
(chain programming or single device programming) and file status.
Figure 9 · FlashPro for Single Device File Programming
Note the different options in the Flow window for the Chain Programming GUI and the Single Device
Programming GUI. In addition to the different Flow window options, the Chain Programming GUI view
consists of the Chain Configuration window which displays the devices in your chain.
o Micmsemi.
Lump”. mm \EHX
5-mm1mzwmswwmmm
‘03:! 1 Magm- BE A»; mHthII \n ~
mmfi »
DMW
mnmnm
w smmzm
\ . ‘
... .m M M, s.“
i am ~- \ .. w m M. w- 1 M pm
“I‘m _: _,, M EM”
amw
\
mm" mm.“ 3.3.“:
mm mm mm 1
grourumu wuss“ = “mm
(mud m 9mm ‘v-xmmmnmmfigmmmummn.mmmaigmmrm‘
m In: ‘V:\k1un\pravummu_agawn:\2:t\dumnu\Amplnammd’h‘ 11.: men mm suceustully.
Chgcxxng in: autumn “lid-L25. .. _
Fest-mung m Pruwrmrs. , «
Mmgmm Am]
M Rims-1mm 4
>
ha‘
Nzw my I
mam Nave
PVDYZ‘
mam Lazatmn
( \Dacuments and Semnusvav‘ew Bmwse
ngvammg mud:
r: Smubdewze
r cm
Em Hap
Creating a New Project
FlashPro User's Guide 13
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 10 · FlashPro for Chain Programming
Creating a New Project
With the FlashPro software, you have the option of choosing either the Single STAPL file or Chain
programming mode. You make this choice through the New Project dialog box (see figure below). By
choosing the Chain Programming mode, you are enabling chain programming. The Single STAPL file
Programming mode functions with the same programming capabilities as the FlashPro software v4.2.
To create a new project:
1. Click the New Project button or from the File menu choose New Project.
2. From the New Project dialog box, type in the name of your project in the Project Name field.
Figure 11 · New Project Dialog Box
3. If necessary, change the default location of your project in the Project Location field.
4. Choose your Programming mode (Single device or Chain).
5. Click OK. The FlashPro GUI displays (see figure below).
nmm mum -
mum worm-x mum
mm u mm mm I
\m-umm-Lunw-um—mmnummqa- n- In: wan-u ”sun-m.
nnu . an. cncnnl x 1cm . vuln- . 1.:
llow window
14 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 12 · FlashPro GUI
Note: You can switch between the two programming modes from Tools > Mode. From there, you can choose either Single
Device Programming or Chain Programming.
Opening a Project
You can open a project from the File menu or by clicking on the Open Project button in the flow window.
To open a project:
1. From the File menu, choose Open Project. The Open Project dialog box appears.
2. Find your project file or type in your project file name in the File name field.
3. Click Open.
Saving a Project
Click the Save button on the toolbar, or from the File menu choose Save Project to save your project.
If you want to save your project under a different name/path, from the File menu choose Save Project As
and save your project with the new name.
Parallel Programming with FlashPro5/4/3/3X
Parallel programming enables you to program multiple Microsemi devices in parallel with multiple
programmers. In parallel programming, all targeted devices are programmed with the same programming
file (STAPL). The targeted device or chain configuration that is connected to each programmer must be
identical.
The FlashPro software together with the FlashPro5/4/3/3X programmers supports parallel programming via
a USB port. You can connect up to sixteen FlashPro5/4/3/3X's to a PC via a USB v1.1 or a USB v2.0 port.
FlashPro5/4/3/3X requires a self-powered hub.
Connecting FlashPro5/4/3/3X (a USB v2.0 enabled programmer) to USB v1.1 port increases device
programming time due to a slow data transfer rate on the USB v1.1 port in comparison to a USB v2.0 port.
Note: FlashPro (USB/LPT1) or FlashPro Lite programmers do not support parallel programming.
//\\
FIISM’IOB FroASlCS/E
FlashPmS "OASIGIE
n35 "pm; ProASl CZIE
FlashPro3 PMSIGIE
Reuse Serial Data
0 Micmsemi.
skig Serial Data
Serialization with FlashPro
FlashPro User's Guide 15
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
The following figure illustrates how you can connect a FlashPro5/4/3/3X programmer for parallel
programming.
Figure 13 · Connecting a FlashPro5/4/3/3X Programmer
An independent thread processes the STAPL file during parallel programming. In an Microsemi test, parallel
programming is approximately five times faster than programming 16 devices sequentially.
Note: Microsemi has tested Belkin PCI-USB cards and hubs. We have found that parallel programming works best with
the vendor's latest driver installed and with the matching hubs.
Serialization with FlashPro
You can use the FlashROM in the ProASIC3 device for serialization. For each target ProASIC3 device,
different FlashROM contents are generated.
Serial Programming enables you to program a sequence of ProASIC3 devices in serial with an identical
FPGA program and with different serialization data. Serialization data can consist of different FlashROM
content and/or AES key values. To learn how to activate the serialization feature, see Skip Serial Data or
Reuse Serial Data.
There are two different STAPL formats that support serial programming, multiple actions to multiple serial
data and single action to multiple FlashROM.
Multiple Actions to Multiple FlashROM Serial Data
This format supports a generic STAPL player because the STAPL player does not provide a mechanism for
Serial Programming. One programming action is created to target different serial data. See examples below:
- PROGRAM_1 programs the FPGA Array and the first serial data.
OMicmsemi.
HAELEJLE
PROGRAM
[EASE
VERIFV
PROGRAMJ‘RRAV
ERASE ARRAY
VERIFY ARRAY
DEVICE INFO
W
PROGRAMVSVf
ERASEM
VERIVVAW
PROGRAM ARRAYSV'
ERASE ARRAY svf
VERIFVJRRAYstf
16 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
- PROGRAM_2 programs the FPGA Array and the second serial data.
Single Action to Multiple FlashROM Serial Data
This format is created when the target programmer is FlashPro, Sculptor II, or BP auto programmer, where
the newly innovated Microsemi Serial Programming mechanism is supported. One programming action will
program multiple serial data in serial.
FlashPro and SVF
SVF (Serial Vector Format) is an industry standard file format that is used to describe JTAG operations. Like
STAPL files, SVF files are used for describing the in-system programming algorithm for SmartFusion,
IGLOO, ProASIC3 and Fusion family devices. Unlike STAPL files, SVF files support only one ACTION or
programming flow per file, due to language limitations. In addition, the SVF specification does not support
message display and flow control, such as conditional statements or loops.
As a result, Microsemi tools (Designer and FlashPro software) generate a set of SVF files corresponding to
the equivalent STAPL ACTIONS that are applicable to the silicon features selected.
For example, for a typical STAPL file that has the following ACTIONS: ERASE, ERASE_ALL, PROGRAM,
PROGRAM_ARRAY, VERIFY, VERIFY_ARRAY, DEVICE_INFO, READ_IDCODE, and
VERIFY_DEVICE_INFO, a set of corresponding SVF files are generated and named: ERASE.svf,
ERASE_ALL.svf, PROGRAM.svf, PROGRAM_ARRAY.svf, etc. These files are generated in a folder,
<Programming File Name>_svf, created during generation. The diagram below demonstrates the
differences between the STAPL and SVF files that are created.
Figure 14 · STAPL vs SVF files
NOTE: DEVICE_INFO.svf file is not generated because SVF files do not support messsage display or flow control.
Table 2 · SVF Outline
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
O Microsemi.
FlashPro and the 1532 File Format
FlashPro User's Guide 17
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
SVF File
Array
FROM
NVM
(Flash
Memory
System
Builder)
Security
Settings
Previously
Programmed
Device?
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
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
STAPL Actions not Available with SVF
The following STAPL actions are not available with SVF: DEVICE_INFO, VERIFY_DEVICE_INFO,
READ_IDCODE
FlashPro and the 1532 File Format
1532 is an IEEE industry standard file format that is used to describe JTAG operations. Like STAPL files,
1532 files are used for describing the in-system programming algorithm for SmartFusion, IGLOO, ProASIC3
and Fusion family devices. 1532 programming file generation will generate two files (*.isc, *.bsd) within a
folder.
The folder will be created with the following name <Programming File Name>_1532. The *.bsd file contains
the IEEE 1532 programming algorithm. The *.isc file contains the programming data to be programmed into
the device.
IEEE 1532 programming files will only be exported in FlashPro for SmartFusion devices when an FDB has been properly
imported.
STAPL to 1532 Action Mapping
The IEEE 1532 standard requires using default ACTION names in order to function with 1532 compliant
players. The table below describes the STAPL to 1532 ACTION name mappings.
NOTE: 1532 ACTIONs can have a data member parameter to allow reuse of the same ACTION name for different
features.
Table 3 · STAPL to 1532 Action Name Mapping
0 Microsemi
18 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
STAPL Action
1532 Action
ERASE_FROM
ERASE(FROM)
PROGRAM_FROM
PROGRAM(FROM)
VERIFY_FROM
VERIFY(FROM)
PROGRAM
PROGRAM
PROGRAM_ARRAY
PROGRAM(ARRAY)
ERASE_ARRAY
ERASE(ARRAY)
ERASE
ERASE
ERASE_ALL
ERASE(ALLDATA)
VERIFY
VERIFY
VERIFY_ARRAY
VERIFY(ARRAY)
READ_IDCODE
READ(IDCODE)
ENC_DATA_AUTHENTICATION
VERIFY(ENCDATA)
PROGRAM_SECURITY
PROGRAM(SECURITY)
DEVICE_INFO
READ
VERIFY_NVM
VERIFY_NVM
VERIFY_SECURITY
VERIFY(SECURITY)
PROGRAM_NVM PROGRAM_NVM
STAPL Actions not Available with 1532
The following STAPL action is not available with 1532: VERIFY_DEVICE_INFO
New Projec'
Single STAPL/PDB File Basic Tutorial
FlashPro User's Guide 19
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Introductory Programming Tutorials
Single STAPL/PDB File Basic Tutorial
This section provides step-by-step instructions to familiarize you with the basic features of the FlashPro
software, specifically how to program a device. For more detailed step-by-step instructions and help with
advanced features of the software, please see specific topics in the online help.
Note: This tutorial assumes that you have already installed the latest version of FlashPro software and have started the
program.
First, create a new project and name it Tutorial. If FlashPro is launched through the Libero SoC, a new
project will be created automatically and a PDB or FDB file loaded, if available.
To Create a Project:
1. Click the New Project button in FlashPro.
2. In the New Project dialog box, type Tutorial in the Project Name field.
Figure 15 · New Project Dialog Box
3. If necessary, change the default location of your project in the Project Location field.
4. Select the Single device Programming mode
5. Click OK. The FlashPro GUI displays (see figure below). The Programmer List Window updates with
your programmer information.
CMimsemi.
I
Hum’m mm
wmwz-«mwwwmmmm
DD‘H Q Q IT'V ED .5. my». *6
MM D 9 —'W°ma’ .p mm.
Dram—l w my...“ 03
' Phi—- m...— M P-uu— Pay—m
n... In: 5.... [w
s
g WW“...
5
g . 9.1.2.0 .
J
. m H mm 1
pleura—ex aasu- - nunrzu
tuned 1|:- wro):ct ‘v:\anmu-miamwumunmnmmauagmuqur
m we ‘vnmmmam..m_amuu\Human“xxmnm.m- hu hten lama :mcesaxuuy.
nmau : am; cucmux : 7m numm : H
mm“ in: "mm “ya-m...
“gamma m ”mm".
uAm-‘Awm Am]
M v WMMWWW|w pa sum
\wmwwm
Prowmnn ma
n... m 0: 15:55:11 znu » Mode F Bum r-‘ Mama
\nxnwzown—m_nnw\mmm
Dclxg-ur V-rxxvn: 9.1.2.0 Am
ma PROGRAM
1:2:
1- ‘ Puma-u.
naswu
oumn
mum!
Avnson V
20 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 16 · FlashPro Main Window
Loading and Configuring a Programming File
Once you have created your project and connected your programmer, you are ready to load your PDB or
STAPL file.
To load a Programming file:
1. Click the Configure device button. The Single Device Configuration window displays in FlashPro .
2. Click the Browse button to find your Programming file.
3. From the Load Programming File dialog box, select your Programming file and click Open.
The Single Device Configuration Window updates to list your Programming file information and the actions
available with your Programming file in the Action list box (see figure below). Program is the default action
displayed in the Action list box.
Note: Microsemi recommends using the default settings.
Figure 17 · Single Device Configuration Window
Programming File Actions
Single STAPL/PDB File Basic Tutorial
FlashPro User's Guide 21
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
This tutorial gives instructions on how to program a device. For an explanation on the other actions
available, see Programming File Actions.
Programming a Device
Now that you have loaded your PDB file, programming a device is the next step.
To program a device:
1. From the Action list, select Program (see figure below).
Figure 18 · Selecting Program from the Action List box
2. Click the Procedures button (see figure below).
Figure 19 · Procedures Button
The Select Action And Procedures dialog box appears, showing the procedures for the Programming
action (see figure below). Microsemi recommends using the default settings.
OMicmsemi,
Select Action And Procedures
El W_INIT|AL|ZE
GIECK_AND_BAI:KUP_CAUB
DD_ERA5E
DU_PFIIJGF|AM
DU_VERIFY_BEIL
DD_PROGRAM_RLOEK
DD_VEHIFY_PGM_HLOI2K
DD_PFIIJGF|AM_NVM_3
lflflflmflfllfl
v|
Mewufiooedns
LIEL‘
T 03375
Howl-Ill Fiona-let
in type F‘“
FlathmS uthS3I5IUSB I u
Puma-nu
sum
mm PASSED
22 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 20 · Select Action and Procedures Dialog Box
3. Click the Restore Default Procedures button.
4. In FlashPro click the Program button to program your device.
The Programmer List Window updates the Programmer Status column with Run Passed indicating that
you have successfully programmed the device (see figure below).
Note: The status indicator updates during programming to show the programming progress, then it will
change to a pass or fail result when the operation is complete.
Figure 21 · Successfully Programmed Device
5. View the Log window and take note of the details about your programmed device.
OMicmsemi.
FIashRUM Seflmgs Slay I all
flfiaaaaaai
FIashROM sun me type
(2 smde sun m: Feral dev‘oes f‘ one 5mm fie my device ‘
mm." at «was to pvogvam: Inn 1.92: ngramma ..
Hula LEI mm Cmml
Single STAPL/PDB File Basic Tutorial
FlashPro User's Guide 23
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Single Microsemi Device with Serialization Tutorial
This tutorial provides step-by-step instructions on how to program a single Microsemi Device with
Serialization. Before you begin this tutorial, make sure you have already installed the FlashPro software and
that you are familiar with the basic features of using the FlashPro software.
First, create the file generator using FROM for device serialization. You must have access to the Libero IDE
v8.0 or later software to complete this step.
To Configure the FROM data for serialization:
1. Generate FROM via the Catalog.
2. From the Properties section in the FlashROM Settings dialog box, select Auto Inc or Read From
File region. For the Auto Inc region, specify the step value. You will not be able to modify this value in
the FlashPoint software.
3. Complete the normal design flow and finish place and route.
4. Select Program FlashROM .
5. Click Browse to find the UFC file.
6. Check the FPGA Array box and click Next. The FlashROM Settings window appears (as shown in the
figure below).
Figure 22 · FlashROM Settings- Step 2 of 2
7. Select the FROM page you want to program and data value for the configured regions.
Note: Note: The generated STAPL file contains only the data that targets the selected FROM page.
8. Modify properties for the serialization by specifying the Start and Max values. For the Auto Inc region,
specify the Start and Max values. For the Read From File region, select the file name of the custom
serialization file.
9. Select the FlashROM programming file type you want to generate from the two options below:
Choose single STAPL file for all devices: generates one programming file with all FROM values.
Choose one STAPL file per device: generates a separate programming file for each FROM value.
1.
2.
3.
4.
mm mm -
24 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
10. Enter the number of devices you want to program and generate the required programming file.
11. Click the Finish button.
You have completed the steps to enable device serialization. Now you are ready to program a device using
Device Serialization in FlashPro.
To program a device using device serialization:
1. Click the New Project button in the FlashPro.
2. In the New Project dialog box, type Tutorial in the Project Name field.
3. Check the Single STAPL file option from the Programming Mode area.
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro GUI appears (see figure below).
Figure 23 · FlashPro Main GUI
The Programmer List Window updates with your programmer information.
6. Click the Configure STAPL File button to load the STAPL file. The Single STAPL Configuration
Window appears in the FlashPro GUI.
7. Click the Browse button to find your STAPL file.
8. From the Load STAPL File dialog box, find your STAPL file and click Open. The Single STAPL
Configuration Window updates to list your STAPL file information and the actions available with your
STAPL file in the Action list box (see figure below).
C Micmsemi.
MlJmDflxn 1.: a... 2: 19m.“ znn A
vbn_uu_lunl V:\luxm\prnqun- uanIJ-na-
5mm nun” Vuntnn. 9 .n
xnm nun!” wumn: 9.1.241 mosnm .
man
5 mm
pony-um L s “00"“
5 mm osuam
mun anmm
mun nmcx v
. )
¥
:1; “Puma.” Mme
Serial Senings
:1
mmwmul‘zwm-n
All 49
;|
#l
“'_|
*\
I7 View unused data
'7 View used data
'7 View skipped data
Fier: "‘
I7 Log serial data: Region_6_:1 v
Help Cancel
Single STAPL/PDB File Basic Tutorial
FlashPro User's Guide 25
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 24 · Single STAPL Configuration Window with STAPL File Uploaded
9. From the Single Device Configuration Window in FlashPro, check the Serialization box and click
the Select Serialization Indexes button.
The Serial Settings dialog box appears (see figure below).
Figure 25 · Serial Settings Dialog Box
10. From the Serial Settings dialog box, click All to select all the serial data.
11. Click OK. The Serialization Indexes text box updates (see figure below).
OMimsemi.
l7 Se'iaization
- Selializalion
Action PROGRAM v Procedures... I
:1
Selial Indexes I State I Programme: I
U nused
U nused
U nused
U nused
U nused
U nused
U nused
U nused
U nused
U nused
mmwmmgww—
6
Next Suial’lzalion Data 1
Note: This t
Preferences
mo
:e
TDI TDI mo TDI TDD
TMS TMS TM
T“ T“ Mammal KK’Ncn-Aml
26 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 26 · Single STAPL File Configuration Window- Serialization Indexes Update
12. Click the Program button to program your device using serialization.
Chain Programming Tutorial
This tutorial demonstrates how to directly program an APA300 device that is part of a heterogeneous JTAG
chain. The example in this tutorial uses one APA300 device and three non-Microsemi devices configured as
shown in the figure below.
Note: This tutorial is performed in Advanced Mode. You can change your display mode to Advanced Mode from the
Preferences dialog box.
Figure 27 · APA Device Tutorial Example
First, create a new project.
To create a new project:
1. Click the New Project button in FlashPro.
2. In the New Project dialog box, type Tutorial in the Project Name field.
3. Select the Chain option in the Programming Mode.
O Micmsemi.
New Project
Project Name:
TutoriaII
Project Location:
C :\AEteIpvj\Tutorial Browse. ‘ ‘
Programmhg mode
(" Sinnje devite
5 Chain
Cancel Help
\FlashPm
a: m W m; ngvamvs mnqmm mm: nap
\nsm? \Hnremammimgg Esmam
mm. *D Joan; @
a -> am %
umpm‘ r menngvmvs If;
7 :1
7 “w.” “"33"." \ am “am' “am \ nun/mam
Lu Maw-Hm: Lulmndm
Newfiemrmfimamm
Software Vexsxun a o a do
cream: new project - Acne)yr)\fpkuicuzuzxal\cucuxxal-v:u‘
Software szslun a o
Cxeacgd new project - . Accelvr)\Tul:or)al\Tucox)a).wro‘
4 mm: 4 [Hub A Wan-I; Am]
M Nada/mesnzham (mm %
Chain Programming Tutorial
FlashPro User's Guide 27
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 28 · New Project Dialog Box
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro GUI appears (see figure below).
Figure 29 · FlashPro Main GUI
Note: Note: The Programmer List Window updates with your programmer information.
6. From the Menu bar, click Programmers > Scan Chain (or select the programmer in the Programmer
List Window, right-click and choose Scan Chain).
Scan Chain shows how the devices are ordered in the chain in the Log window (see figure below). In this example, APA300 is the
first device and will be programmed first in the chain since it is connected directly to TDO.
OMicmsemi.
Scan chaxn. r.
Found. 32 mscrucnon register bus.
chrokxng Inconza,”
navooe 1: 113mm? Mr: Accal Part: APASEIEI
Davxce 2: Unknown
Dance 3: Unknmm
Dance 4: Unknown
soan Cheun PASSED.
5| programmer '30175'
-" programmer ‘30175'
programmer '30175'
programme: ‘30175'
programmer '30175'
programs: ‘30175'
programmer '30175'
programs: ‘30175'
AddAelel Dme fl
Add NmAdelDwiee
Add Aclel Device
Programming "9: _.|
4‘ Device
Device: v
Help OK Cancel
no
0 c Wanaa‘slesmes‘gnevvmw\APAEHD stp
NunAm=\ a ome 2
28 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 30 · Log Window Scan Chain Order
7. From the Chain Configuration window, click either ; or
buttons to add devices to the chain. In this example, click the Add
Microsemi Device button because the APA300 is the first device in the chain.
The Add Microsemi Device dialog box displays (see figure below).
Figure 31 · Add Microsemi Device Dialog Box
8. Select the File radio button and click the Browse button to find your programming file.
9. Select the Device radio button, then choose the APA300 device from the Device drop-down.
10. In the STAPL File field, load the APA300.stp file by using the Browse button to locate the file.
11. In the Name field, keep APA300 as the default name.
12. The APA300 device is added to the Chain Configuration Window (see figure below).
Figure 32 · Chain Configuration Window: Device One
12. Click the Add Non-Microsemi Device button to add the non-Microsemi device. The Add Non-
Microsemi Device dialog box appears (see figure below). You can load the BSDL file or enter the IR
length and Max TCK Frequency of the device. In this tutorial, you will enter the IR length and Max TCK
frequency for this device.
o Microsemi.
Add Non-Adel Device
(‘ File
BSDL file:
A
(F Data
IR length: 2
Max TCK Freq; 1 M12
Name: Device 2
Help El Cancel
, n) mo ... m. no m1m.
l7 Shaw EhamEdmng
a
rug
0 c Wanaa‘slestwes‘gnevvmpfl\APAJHD sun
2 NunAm=\ .2 Dawn: 2
mo
I7 Show cm mm
mm:
< apacwei="" 2="" nun="" ade‘="" 3="" apatmfl="" rue="" o="" c="" wanuab‘lesmeswnevvmpfl="" \apaiiei="" gm="" dew-:2="" 2="" 9mg="" 3="" ‘="" m="" a="" a="" a="">
Chain Programming Tutorial
FlashPro User's Guide 29
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 33 · Add Non-Microsemi Device Window
14. For this device, enter 8 in the IR length field and keep the Max TCK freq default to 1MHz.
15. Name the device, "Device 2” and click OK. The second device now appears in the Chain Configuration
Window (as shown in the figure below).
Figure 34 · Chain Configuration Window: Device Two
16. Repeat step 15 for Device 3 and Device 4.
17. Check the Enable Device box for the APA300 device. After you add all the devices in the chain, the
Chain Configuration Window should look like the figure below.
Figure 35 · Chain Configuration Window: All Devices in the Chain
18. After you have added all of the devices to the chain in the correct order, click the Run button to
program the chain.
19. When programming is complete, the results are listed in the Log window (see figure below).
0 Micmsemi
m1
qugtmunx ‘10)15‘ - 5m. cm".
qugtam-e: ‘mns‘ - scan Che)" msm
nruwtamnér ‘1m15‘ dzvlce ‘Ammu' Execumnw action P110611“
Vrugtamnér ‘1m15‘ dzvlce ‘Ammu' strum = ucmrmmsnau
Fxngtammer ‘Juns‘ - davnce ‘Avmuu- Pwocnmums mm
Vrugtamner ‘1m15‘ - dzvlce ‘Ammu' vnumm pxoamum B113...
qugtmmzx ‘10)15‘ dzvxc: mmua- vuumm umrpaosmnm m—s...
Vrugtamnér uum‘ uzvlce ‘Awuuu' nmsneu me mu m Jammy Auuh mapsea Lune umwnfln
“Mum“ ‘mns . new: 1mm mm“ mm YROGRAN mac».
qugtmue: ‘10)75‘ = Chaxn yxugxmxng mm.
Create PDB
Deyte mama; —_[.
Package ,M
New smanmswr 13
mm (\ncerpnvmaymawna
FlashPmnt SmartFusIun Programming I e
security settings
FPGA Array FlashROM Embedded Flash Memory files
Specily your l/O States During Programming
Reprogramming a Secured Device
30 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 36 · Programmer List Window: Programming Complete
SmartFusion Programming Tutorial
You can program your SmartFusion device without using the Libero SoC by using an EFC or UFC file from
standalone SmartDesign, or using an FDB file from standalone Designer.
To program a SmartFusion device without using the Libero SoC:
1. Start FlashPro and click New Project to create a new project. Specify your Project Name, Project
Location and Programming Mode.
2. Click Configure Device.
3. Single Mode: Click the Create button to create your new PDB programming file. The create PDB
dialog box appears (as shown in the figure below).
Figure 37 · Create PDB Dialog Box
Chain Mode: Click Add Microsemi Device and choose a SmartFusion device from the drop-down menu.
Click the Create PDB button in the Chain Configuration Window. The Create PDB dialog box appears.
4. Specify your PDB parameters. Click OK to continue. The FlashPoint SmartFusion Programming File
dialog box appears.
5. Specify your security settings and select which silicon features you want to program. Click the Import
button for your FPGA Array, FlashROM and Embedded Flash Memory files to add them to your PDB
file.
You must have a FDB file to program your FPGA Array, a UFC file to program your FlashROM, and a
EFC file to program your Embedded Flash Memory.
Click the Modify buttons if you wish to modify your FlashROM or Embedded Flash Memory files
before you save your PDB file.
6. (Optional) Specify your I/O States During Programming.
7. Click Save PDB to save your new PDB file.
If you make changes to your Security, I/O States During Programming, EFC, UFC or FDB file, click Modify
in FlashPro to open and re-save your PDB with the updated files and settings.
See Reprogramming a Secured Device for information on programming a secured SmartFusion device.
w
Generator
ihmn featumfi) in he vlwvammed:
0 l7 5w» 5mm;
I7 FPGA WHY
I7 F‘ashROM
Onwa‘ F‘ad’vRW :nrf‘uwamn file:
HWYROMMR
Embeddm Hash Mermrv am; (EFWE):
C Microsemi.
creat g a new gr eat
Single STAPL/PDB lee
Black Muck V V . V .
Fmglam "m mm“ flngnd Endl ullmn Fl:
‘ [7 Im:wvm_ 1 F,\FHI_M-mly_fihdgafi:
r Pvngvammlng pmv‘ws‘y seamed was)
Modfy 1/0 3am Dmna vaammmm
ihcm smmtwe (max bmth Isa HEX chews)
[—
adv
Madly
Maxi mgr. Cancel
Modifying Memory Contents and Programming a Device Tutorial
FlashPro User's Guide 31
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Modifying Memory Contents and Programming a Device Tutorial
This tutorial provides step-by-step instructions on how to load a Program Database (PDB) file, modify the
memory contents, and program the device.
Before you begin this tutorial, you should have a design with an EFMB client in it with a generated
programming file for this design. You will first create a new project and title it "tutorial." If FlashPro is
launched through Libero SoC, a new project will automatically be created and a PDB file will be loaded, if
available.
Creating a new project
If you are familiar with this feature, follow the basic procedures for creating a new project. However, if you
would like step-by-step instructions, see the creating a new project section in the Single STAPL/PDB File
Basic Tutorial.
Loading and Configuring a PDB File
Once you have created your project and connected your programmer, you are ready to load your PDB file.
To load a PDB file:
1. Click the Configure Device button. The Single PDB Configuration window appears in FlashPro.
2. Click the Browse button to find your PDB file.
3. From the Load PDB File dialog box, find your PDB file and click Open.
Modify Embedded Flash Memory Block Content
Now, you are ready to modify the Embedded Flash Memory Block content.
To modify Embedded Flash Memory Block content:
1. Click the PDB Configuration button to open FlashPoint.
B
Figure 38 · Program File Generator
OMicmsemi.
Mum rmmm rim Mnmnlyflinrk
Mm rmmm
MW. .
mum"... WWi mm. . wk mm...“
mm.
951mm“ mum‘s
m n m M“...
Puma- rip-Ill":- flu-II.» mm "‘ Mllnnl any.» flru-ullln—nr’rm-vlri-
Ila-I mix-mm mm Wm
‘ p mm m m. r p
1 v m... m... m. um r ,7 ommw WW
1 W 0”an o: I) W l’ 1’ WWW lVlllflmhl
. w im m on ow .— .— o‘vmw WW
5 ,7 WM...“ w m .— r
L Li fl
Emb
The original cunfigurafiun file has changed.
Click on the Modify button to view the details,
Ennligllalion Fl:
i\thFm\Fmion_VlW\tm Modfy...
S gleSTAFL/FDBf b8 ctuto I
Basic Tutorial
Programming 3 device
creatin anew r act
9 TAPL/PDB File
32 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
2. Check the Program box.
3. Click the Modify button to import Embedded Flash Memory Block configuration and memory content
file. The Modify Embedded Flash Memory Block dialog box appears
Figure 39 · Modify Embedded Flash Memory Block Content Dialog Box
4. Click the Import Configuration File button to import the Embedded Flash Memory Block configuration
and memory content from the EFC file. This will populate the client table below. All clients that belong
to this block will be selected by default.
5. Click the Import content button if you want to change the client memory content.
6. Click OK.
7. Click Finish.
Note: FlashPoint audits original configuration and memory content files and warns you if the files cannot be located or if
they have been updated. These files are not required as the last updated configuration and memory content is stored in the
PDB.
Figure 40 · Audit Warning
Proceed to program the device. For steps on how to program a device, see the Programming a device
section of the Single STAPL/PDB file basic tutorial.
Modifying FlashROM Contents and Programming a Device Tutorial
This tutorial provides step-by-step instructions on how to load a Program Database (PDB) file, modify the
memory contents, and program the device.
Before you begin this tutorial, you should have a design with an EFMB client in it with a generated
programming file for this design. You will first create a new project and title it "tutorial." If FlashPro is
launched through the Libero SoC Project Manager, a new project will automatically be created and a PDB
file will be loaded, if available.
Creating a new project
If you are familiar with this feature, follow the basic procedures for creating a new project. However, if you
would like step-by-step instructions, see the creating a new project section in the Single STAPL/PDB File
Basic Tutorial.
Pmuummlnu nu
Yo comm,
laud ammo Dmummmm m
m (leak: new ma Ne
srd- um. tmfigumlm mm
1‘
2‘
FlashPo l
rogramm g
le Generator
ihmn fsammfi) in be programmed
0 l7 mm mm;
I7 FPGA WHY
I7 FlashROM
Onwal F‘ashROM mnfiuuamn file:
mmvfilomuk
Embeddm Flash Mermrv am; (EFWE
512.; 1 a:
C Microsemi.
Sums,“
Fmglall
Black
Mall-
Muck
Luann"
may“ Endigll m. Fig
l l7
lm:wvm_
r Pvngvammlng pmvlws‘y seamed was)
Modfy 1/0 Baas Dmna vaammmm
ilcm slirlature (max bmth Isa HEX this)
[—
Hall:
1
FAFHLM-myjhadc Madly
Maxi lesh Cancel
Modifying FlashROM Contents and Programming a Device Tutorial
FlashPro User's Guide 33
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Loading and Configuring a PDB File
Once you have created your project and connected your programmer, you are ready to load your PDB file.
To load a PDB file:
1. Click the Configure Device button. The Single Device Configuration Window displays in FlashPro
(see figure below).
Figure 41 · Single Device Configuration Window
2. Click the Browse button to find your PDB file. From the Load Programming File dialog box, find
your PDB file and click Open. .
Modify FlashROM Content
Now you are ready to modify the FlashROM content.
1. Click the PDB Configuration button. This opens FlashPoint.
2. Select FlashROM under Silicon feature(s) to be programmed (see figure below).
Figure 42 · FlashPoint Programming File Generator
OMimsemi.
5‘
FlashRUM Selungs up 1 of 1 W‘
Fladfilm vegans v
new".
Dag: HED'WLU
I7 sun Dag! n
5m m: n
I7 Law"! ‘5
Cmnl SKI-l
l7 sun; mad
p 1». HR
vane mmtrmowm
p Issmmlwm
l7
l7
l7
Hdv L]: Frush caml
Programm g a dev 0e
5 gle STAFLIPDB be c tum al
cre 'ng a new 9 ' ct
STAPL/PDB We
basic tutorial
34 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
3. Click the Browse button to select the *.ufc FlashROM configuration file by and navigating to the
configuration file. This file is normally present in the SmartGen subfolder of the Libero SoC project, in a
folder with the FlashROM IP block's name.
4. Click Next.
5. Select the FlashROM pages you want to program (see figure below).
Figure 43 · FlashROM Settings Dialog Box
6. Click Finish.
Proceed to program the device. For steps on how to program a device, see the Programming a device
section of the Single STAPL/PDB file basic tutorial.
Programming Only Security Settings Tutorial
This tutorial provides step-by-step instructions on how to program only the security settings into a device.
No design or PDB file is needed to follow this tutorial.
First create a new project and name it tutorial. If FlashPro is launched from the Project Manager, a new
project will automatically be created and a PDB file will be loaded, if available. For this tutorial you always
need to create a new project.
Creating a New Project
If you are familiar with this feature, follow the basic procedures for creating a new project. However, if you
would like step-by-step instructions, see the creating a new project section in the Single STAPL/PDB file
basic tutorial.
Configuring the Security Settings
Once you have created your project and connected your programmer, you are ready to load your PDB file.
Create PDB
Programming Only Security Settings Tutorial
FlashPro User's Guide 35
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
To configure the security settings:
1. Click the Configure Device button. The Single Device Configuration window appears in FlashPro
(see figure below).
Figure 44 · Single Device Configuration Window
2. Click Create. This opens the Create PDB dialog box, as shown in the figure below.
Figure 45 · Create PDB Dialog Box
3. Select the desired device and package (if available) from the drop down list, and specify the filename
and location. Click OK. FlashPoint opens. SmartFusion, IGLOO, ProASIC3 and Fusion family devices
support securing the device with a pass key as well as encrypting programming files using an AES
key. Flash devices can also be permanently locked, preventing reprogramming.
4. Check the Security Settings checkbox to secure the unsecured device.
Warning: Make a note of the security keys that you are using. Once a device is secured, it cannot be
reprogrammed without those keys.
Eetuvly \eve‘ rm this dwke:
' * mm - mm min Pass Key‘ a
, mm: rm Anav Fm both wrlm md venrym.
- Llsa m. Pass Kay m wnla m mm
- - mm".
, Lucklhe rhmnom Furbuth mum and mm we. the
ma mm“
A u; the we; Kay m lead a mu:
. . Nan: v
Custum Level. Mm we
Pass Key (max length .5 32 "a (hays):
g Canal: Vanda" m
as KEY (mix Ham .5 32 rcx mavs):
—‘l
adv
Cancel
Single STAPL/PDB Ile basic tutorial
Prggrammlng a device
36 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 46 · Security Settings Dialog Box
5. Click Finish.
Proceed to program the device. For steps on how to program a device, see the Programming a device
section of the Single STAPL/PDB file basic tutorial.
Automatic Chain Construction Tutorial
This tutorial demonstrates how to automatically scan a chain of devices and construct the chain within
FlashPro. Automatic chain construction saves the effort of manually adding each device to your chain.
The software also scans the chain before constructing it, which reduces the possibilities of having errors in
the chain. This feature is fully automated if your chain is composed of only Microsemi devices. If you have
non-Microsemi devices in your chain, you can still use the Auto Chain Construction feature. However, you
will be required to either manually add the BSDL file or enter the IR length and max TCK for each non-
Microsemi device. This tutorial goes through the flow for an Microsemi-only chain first, followed by
instructions on adding Non-Microsemi devices to the database.
Note: This tutorial requires that your chain is connected to the computer you are using, via an Microsemi programmer, and
that you have suitable programming files to program the devices in your chain.
To automatically scan a chain of devices and construct the chain:
1. Start a new project in FlashPro. Select Chain as the Programming Mode.
2. Click the Configure Chain button in FlashPro.
3. From the Configuration menu, choose Construct Chain Automatically; or click the Construct the
chain from a Scan Chain operation link in the Chain Configuration Window, see below.
mm” “mm.” -
IBM and Due cuitsnnu
mmmaao‘m. ansnmN
mm “mm: . (mm;
Scan Programmeds)
The device chain M be automatically built to match the
physical chain of one o! more progammevs.
Select the progranvneds) you want to scan
Progemmeds]
Select All Unselect M
Help
i Hmwm [mm] El
Buzawwawmswwmcmw
nsu ! inasm- El In a Mama in r‘
r ...., ,, .... M u." p. -... . .
l "32'... i ”a. i m l a.“ a...“ ‘ mum- l
i an! rum-:1 mwluss 2m sun Dam PASSED l7
mm W5
'-~-—-‘“ 0..ng awn", flfl 5M
“Mn-w mom. WI
. . m W M. m.
i mm m w W. m. m. m m
iuiwmuammummm a II] ’ r
Sui-I
n...
m:
Automatic Chain Construction Tutorial
FlashPro User's Guide 37
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 47 · Construct Chain Automatically
4. A popup appears asking you to select the programmer you would like to use from the ones attached to
your computer. Choose the appropriate programmer (as shown in the figure below) and click OK.
Figure 48 · Select Programmer Popup
Automatic chain construction starts. The Log window documents the detection and verification of all devices
in your chain. The devices are added to the chain in the Chain Configuration Window; see figure below for
an example.
Figure 49 · Scan Chain Configuration Passed
Mlcmseml.
0
r7 smmzm
Duh ‘
I WMNVNSLI s1 nrlwmumzs
m
Mm Add
MM and
a dance!
a mu:
“magma
mm mm.” ilzl gmwnm
Wm
Manx cm: as...»
him
Mm Mg m dcwcfl
Settings {or No Icroseml Devices
m"
I? smwiaos
fl—lflJJ
_l
W mom
om u... m.
Mun/w
nu nx
mm)
mm.
owl
Enfle
s.“
515i!
I,“ man—z
5 mm \
3 NunAoTz‘ flawed 2 I
“Mssm man u a In ‘ r
g 5 mmwnuammmmzs a a II! ‘ r ‘ I'
38 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
In some cases, FlashPro is not able to uniquely identify the device due to shared IDCODEs, and lists all
possible devices (ex: AGL030V2/AGL030V5). Once a programming file is loaded for that device, the device
field only shows one device, since the programming file will only be targeted to one device.
Adding Non-Microsemi Devices to the Chain
FlashPro recognizes non-Microsemi devices in the chain, but it does not contain any device information,
such as IR length or Max TCK. The figure below lists Microsemi devices and non-Microsemi devices in the
chain.
Figure 50 · Non-Microsemi Devices in a Chain
You must import the BSDL file into Microsemi's non-Microsemi device database for FlashPro to recognize
your non-Microsemi device.
To import the device BSDL into the FlashPro non-Microsemi device database and run the scan
chain:
1. From the Tools menu, choose Import Settings for Non-Microsemi Devices. This opens the Import
Settings for Non-Microsemi Devices dialog box. This dialog box enables you to import and remove
BSDL files from the database and lists all the device information contained in the BSDL file.
2. Click the Import BSDL Files button and navigate to the folder that contains your BSDL files. Select
the file and click OK. Once the BSDL is imported into the database, the original BSDL file is no longer
audited by FlashPro. If changes are made to the original source BSDL file, it will not affect the BSDL
file that has been imported into the non-Microsemi device database.
Remove BSDL files from the database by selecting the file and clicking the Remove button.
3. Once you have the appropriate BSDL files loaded to the database, you can construct the chain. To do
so, from the Configuration menu, choose Construct Chain Automatically and select the appropriate
programmer from the dialog box. FlashPro runs a scan chain, detects the devices in the chain, and
associates them with the BSDL files in the database, as shown in the figure below.
Figure 51 · Non-Microsemi Devices in the Chain with Associated BSDL Files
It is possible to add multiple BSDL files to your Non-Microsemi device database that have the same
IDCODE. If the BSDL files list the same IR length but different TCK values, FlashPro automatically chooses
the file with the lowest TCK value by default and no action is required. If the IR lengths are different you
receive an error message asking you to resolve the conflict.
To resolve the issue, click the drop-down arrow adjacent to the device name. This opens the Non-Microsemi
Device Configuration dialog box (as shown in the figure below). From here you can choose the BSDL file
that you wish to use. Browse to the BSDL file or use the Data to input the IR length and Max TCK
Frequency. Once you select your data you can enter a new name or use the default.
OMicrosemi.
Non-Aclel Device Configuration]
um. file: V:\kiranhrogamning_designs\sar_v _|
(‘ Data
IR length: iii
Max ICK Flam: D MHz
Name: AFSGUUFGZSG
Heb 0K Camel
Chain Programming Tutorial
Understanding the Chain Configuration Window
lmgort Settings lor Non-Microsemi Devices
eNVM Client JTAG Protection Tutorial EFMB Client JTAG Protection Tutorial
eNVM/EFMB Client JTAG Protection Use Flow
FlashPro User's Guide 39
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 52 · Non-Microsemi Device Configuration Dialog Box
For a tutorial on manually adding both Microsemi and non-Microsemi devices to your chain as well as
programming the chain, refer to the Chain Programming Tutorial.
See Also
Understanding the Chain Configuration Window
Import Settings for Non-Microsemi Devices
eNVM/EFMB Client JTAG Protection Use Flow
eNVM/EFMB client JTAG protection enables you to protect specific clients with a User Pass Key while
leaving others unprotected.
See the eNVM Client JTAG Protection Tutorial or EFMB Client JTAG Protection Tutorial for step by step
instructions.
OMicrosemr'.
IP Vendor programs and protects
Wm,” , eNVM/EFMB client with FlashLock [p Cum,"
and provides device to IP Customer
Stan v San
IPVendor Options
y LAuows Immed availability for
eNVM/EFMB deems by IP Cummevs.
3:: fire/S: IPCusrorner willonlybeahlem
read eNVM/EFMB diems mac have
net bcen prmeered by p Vendor.
v 2‘ Allows only 52ch dienmo be
programmed by IP Customer,
Md READ/WRITE are", ThelP Cummer cnnreprograrrr
HAG "ammo dim, eNVM/EFMB diemswhkh hive rm
been memd by IP Vendor
IP Cum Opu'uns:
Allows IP Cusmma In mm:
Invoke sthP'c unprorecred eNVM/EFMD dear: for lrrvok: Fladrl’m
(awn imports Erc file) wommming in mmory spur: (auto impms EFC fie)
um has not been warmed by
rrre v Vendor.
Mofifysem nysmmgsm
mwmm
Program om mm urge!
euvwerm on
Program device wmr eww
man an and secumy
Finish
CUB
eNVM/EFMB Client JTAG Protection use flow diagram
40 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 53 · eNVM/EFMB Client JTAG Protection Tutorial Use Flow
.
eNVM Client JTAG Protection Tutorial - SmartFusion
This tutorial provides step-by-step instructions on how to enable JTAG protection for eNVM clients. The
protection can be read, write or both and it is protected with a User Pass Key (FlashLock).
The JTAG protection of eNVM clients enables you to protect specific clients with a User Pass Key while
leaving others unprotected.
One example use is IP customization. This enables an IP vendor to allow limited visibility to eNVM clients for
IP customers. The IP vendor can protect specific clients and leave other clients unprotected for modification
by IP customers. See the eNVM/EFMB Client JTAG Protection use flow diagram for a detailed example of a
typical use case.
Before you begin this tutorial, make sure you have already installed the FlashPro software and that you are
familiar with its basic features.
JTAG READ/WRITE protection is set when you create your original eNVM in Libero SoC. You cannot
change this setting in FlashPro/FlashPoint.
Add Ddld Sludge (Hem
eNVM Client JTAG Protection Tutorial - SmartFusion
FlashPro User's Guide 41
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Importing an EFC (Embedded Flash Configuration) File with Client JTAG
protection in a Previously Unsecured PDB
1. Create a client in eNVM configurator with JTAG read and write protect (as shown in the figure below).
If the MSS block is generated with an eNVM client with JTAG protection then FlashPro requires that you
specify a User Pass Key prior to programming or exporting programming files.
Figure 54 · Generating the EFC File with JTAG Protection
2. Import the EFC file with JTAG protection in FlashPoint. When the EFC file is imported the Security
Settings box is checked automatically, implying that you must set the User Pass Key (as shown in the
figure below).
The PDB file cannot be saved without specifying the pass key.
CMicmsemi.
llasthvnl mum.
Please pro e m Pm Kev
umwmwwmwm m4 amum\wa\dew...\he«.fdz mm. ..
Siam ram-(5).». yum-d;
r‘ MOM
OH '7
Edmwmwwmwm m4 num\x,..\ms;nm_o,ak W. .. My. ..
o Svecfy uoswu um: Harm"
summ(mwhlser£xmp:
42 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 55 · Importing the EFC File with JTAG Protection
3. Click Specify to open the Security Settings dialog box. Notice that Enable eNVM client JTAG
protection box is checked. This indicates that reading, writing, and verifying of other eNVM pages are
allowed but the reading and writing of specific eNVM clients are protected.
4. To enforce the eNVM client JTAG protection in the PDB file, enter a Pass Key or click Generate
random key (as shown in the figure below).
Secu ly Sell gs
5mm lave! for us dam:
r um
r‘ Madun
Montcalm
-Ahwmudvufwluuflhewfinay.
-Ahwrea&u,writmaflvufmdflemofl.
ammumxm mmmdmmmmnm
Wmsmd).
mm
0W :mhhemmdm me wanna
mmnmwumsm.
PassKey(mx|aI¢husCEl'€(d’w5):
IFriaumsamcFm Guam: vandal: key
AsxcnmaxI-vhsazrcxdus):
—J
_l #fl
eNVM Client JTAG Protection Tutorial - SmartFusion
FlashPro User's Guide 43
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 56 · Setting Security
Custom Level Security Settings
If you select Custom Level security and decide to protect writing of the entire eNVM block, then the eNVM
client JTAG protection Write, if enabled, will be overridden by full block protection.
If the Read protection of the eNVM block is left open, then the eNVM client JTAG protection Read will be
enabled if a client has a read protection enabled.
If you choose to encrypt the entire eNVM block, then the eNVM client JTAG protection Write will be disabled
if enabled, due to enforced encryption. The eNVM client JTAG protection Write, if enabled, will be
overridden by full block protection.
To set Custom Level Security:
1. Click Custom Level to open the Custom Security Level dialog box (as shown in the figure below)
Set
Sacuvily Setting:
Siicon Feature Seculily Encrypt
FPEA Array r r Look with FlashLock
FIashROM I— [—
eNVM In a) I7 l l‘ |
block
I’ Enable M3 debugger
Help
I" Permanently lock the security sett‘ngs,
To see eNVM client JTAG protection infurmamn place your mouse cursor over each eNVM
44 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 57 · Setting Security for Unprotected eNVM Clients
2. Click the Set Security checkbox to secure Read, Write and Verify using Flash Lock. In this mode you
can unlock Read and Verify and only protect Write by FlashLock. The eNVM client JTAG read
protection will be enabled.
3. Click the Encrypt checkbox to secure Write using the AES Key. Read, Verify will be secured by
FlashLock in this mode. You must enter the AES key in addition to the Pass Key before saving the
PDB file.
Setting Standard Security Levels
There are two types of standard level security: High and Medium. If either of the two is selected the eNVM
client JTAG protection is overridden or disabled. You can enforce Read, Write and Verify protection of the
entire eNVM block with the Pass Key and/or AES key. JTAG protection of specific pages will not be
available.
Importing EFC (Embedded Flash Configuration) File with Client JTAG Protection
in Previously Secured PDB
The secure PDB file exported from FlashPro is called a secured PDB.
If you import an EFC file that has JTAG protection into a secured PDB file but does not have eNVM clients
with JTAG protection enabled then the FlashPro returns an EFC file has eNVM client JTAG protection
and cannot be loaded error, as shown in the figure below.
Ecflehumdukfimmmnadcmbebeded.
mmbemodifiodhacuthmndPDB.
0K
CmettlyloadedEFChasedeatJMGpvohecflmmd
cmbochauedhamuflyseandm.
Vwmwdatemymtbthflw
mfleforeadnlrflvflaldut.
OK
eNVM/EFMB Client JTAG Protection use flow diagram
EFMB Client JTAG Protection Tutorial - Fusion
FlashPro User's Guide 45
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 58 · EFC File with JTAG Protection Cannot be Imported into a Secured PDB Error Message
You can import any EFC file that does not have JTAG protection.
You cannot import a new EFC with JTAG protection into a secured PDB that already has an EFC file
imported with eNVM client JTAG protection. You can update the memory content by importing MEM files for
the specific clients (as shown in the figure below).
Figure 59 · New EFC File Cannot Overwrite Existing eNVM Client JTAG Protection Error Message
EFMB Client JTAG Protection Tutorial - Fusion
This tutorial provides step-by-step instructions on how to enable JTAG protection for eNVM clients. The
protection can be read, write or both and it is protected with a User Pass Key (FlashLock).
The JTAG protection of EFMB clients enables you to protect specific clients with a User Pass Key while
leaving others unprotected.
One example use is IP customization. This enables an IP vendor to allow limited visibility to EFMB clients for
IP customers. The IP vendor can protect specific clients and leave other clients unprotected for modification
by IP customers. See the eNVM/EFMB Client JTAG Protection use flow diagram for a detailed example of a
typical use case.
Before you begin this tutorial, make sure you have already installed the FlashPro and/or Designer software
and that you are familiar with its basic features.
JTAG READ/WRITE protection is set when you create your original EFMB in Libero SoC. You cannot
change this setting in Designer/FlashPoint or FlashPro/FlashPoint.
EFMB Client JTAG Protection in Designer/FlashPoint
If the ADB file has an EFM (Embedded Flash Memory) block with page/client JTAG protection enabled, the
EFC file appears in the FlashPoint window when you click the Programming File button in Designer.
A message indicating JTAG protection is enabled appears in the Embedded Flash Memory Block (EFMB)
tooltip, as shown in the figure below.
CMicmsemi.
llnsM’vInl I’rwgmm (mm-rah"
wmrweummmmaa:
OW Sealkvsdm
F FPGAMay
mp_NvM,uva_msT
[FM dlentlTAG mum" Is enabledv
Slap 1 ‘71 1
_J
I" Wan-In: 97mm sound dun-(s)
0 MyWme-whwamfmn.
Skmswu! (max law. Is x mm):
[—
LI
Embedded am mm m (Ema):
Plug— :h: m; migiufl Enliyld'nn n.
\ p WWW" ‘ Emmm" Mnfly
QL-fl
46 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 60 · EFMB Client JTAG Protection
To set EFMB Client JTAG Protection:
1. Check the Security Settings or Programming previously secured devices checkbox and click
Next. The Security Settings dialog box opens.
2. Specify the appropriate security settings.
If the EFM block is generated with an EFMB client with JTAG protection then FlashPro requires that you
specify a User Pass Key prior to programming or exporting programming files.
3. Import the EFC file with JTAG protection in the FlashPoint dialog box. When the EFC file is imported
the Security Settings box is checked automatically, implying that you must set the User Pass Key (as
shown in the figure below).
The PDB file cannot be saved without specifying the pass key.
C Microsemi.
5mm" fealqu(S) ta he Dvnqvammed
o v 577de 52W
7 FIGA may
I— FlashROM
qumd memory (an ‘quvilmn N2
[(7, \Duzumert: ard saunrrade«was:vrddraewp fdmrpow d; mm
6 Embedded Hash Memw mm (Ema)
pm“ 3:: L535," n..na.dn.dd.a.m..=
A .7 WWW ‘ DMMedwmwa My
r— mddmmw w!“uu)‘/ )zuvzd dmzm
a Svenfv l/o SlatesDuWI] Pvfiqvamqu
5mm" Shznatuve (max \emjth dd HEX chars)
[—
New 5de (m
5m. ysetr as swznrz
SetunlY \eve‘ rd zmsdewe
, , mdh NDDmteman
7de wntmqand VEHVWHZ an» we»: may
Mammy
7de 125mm], wvmnq, and Wm dnne HashRoM
7de 125mm], wvmnq, and Wm dnne EFMB (EFMB (her!
—| None JYMDvmectmmsenah‘ed)
on Enab‘e m [hemmewm
EFMBzhentlmepmtectmmsgnawed
cdstdm Lavd Wm M
PassKeV (max Math ‘5 ammau)
yazcsczzsssoszmsusflwn55mmx szral: randum m
as Kev (max ‘EHEIMS 32HE>< zhavs)="" |—="" geneva="" 2="" vandam="" key="" "ed="" m="" w="" my="">
EFMB Client JTAG Protection Tutorial - Fusion
FlashPro User's Guide 47
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 61 · Importing the EFC File with JTAG Protection
4. Click Next to open the Security Settings dialog box. Notice that the Enable EFMB client JTAG
protection box is checked. This indicates that reading, writing, and verifying of other EFMB pages are
allowed but the reading and writing of specific EFMB clients are protected.
5. To enforce the EFMB client JTAG protection in the PDB file, enter a Pass Key or click Generate
random key (as shown in the figure below).
Figure 62 · Setting Security
Custom Level Security Settings
If you select Custom Level security and decide to protect writing of the entire EFMB, then the EFMB client
JTAG protection Write, if enabled, will be overridden by full block protection.
mmmmm
FlashPm Single STAFL Basic Tutorial
FlashPm Single STAFL Basic Tutorial
48 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
If the Read protection of the EFMB is left open, then the EFMB client JTAG protection Read will be enabled
if a client has Read protection enabled.
If you choose to encrypt the entire EFMB, then the EFMB client JTAG protection Write will be disabled due
to enforced encryption. The EFMB client JTAG protection Write, if enabled, will be overridden by full block
protection.
To set Custom Level Security:
1. Click Custom Level to open the Custom Security Level dialog box (as shown in the figure below)
Figure 63 · Setting Security for Unprotected eNVM Clients
2. Click the Set Security checkbox to secure Read, Write and Verify using Flash Lock. In this mode you
can unlock Read and Verify and only protect Write by FlashLock. The EFMB client JTAG read
protection will be enabled.
3. Click the Encrypt checkbox to secure Write using the AES Key. Read, Verify will be secured by
FlashLock in this mode. You must enter the AES Key in addition to the Pass Key before saving the
PDB file.
Setting Standard Security Levels
There are two types of standard level security: High and Medium. If either of the two is selected the EFMB
client JTAG protection is overridden or disabled. You can enforce Read, Write and Verify protection of the
entire EFMB with the Pass Key and/or AES key. JTAG protection of specific pages will not be available.
EFMB client JTAG Protection via FlashPro/FlashPoint
If the PDB file was created with the EFMB client and JTAG protection is enabled you can click Modify in
FlashPro to change the settings.
Fusion Calibration Backup and Recovery Tutorial
This tutorial provides step-by-step instructions on how to backup and recover default calibration data on a
Fusion device. It assumes that you have created a new project, connected your programmer, and loaded a
Fusion PDB/STAPL file created in Designer v8.4 or above.
If you would like step-by-step instructions on how to create a new project, see the Creating a New Project
section in the FlashPro Single STAPL Basic Tutorial..
If you would like step-by-step instructions on loading a programming file, see the Loading and Configuring a
Programming File section in the FlashPro Single STAPL Basic Tutorial.
Note: This feature is only supported in STAPL and PDB programming files.
programs:
programmer
proqramer
programmer
programmer
programer
programmer
programmer
programer
programmer
programme:
programmer
programmer
programmer
programmer
programmer
programmer
'07393'
'07898'
'D7398'
'D7598'
'D759fi'
'D7BQB'
'07398'
'07898'
'D7396'
OMicmsemi.
Scan Chum. ..
Scan Chain PASSED.
Executing action PROGRAM
Checkinq for Backup Calibration Data...
Reading Master Calibration Data. . .
Hriring Calibracion Backup Copy
Erase . . .
Completed erase
Programing FPGA Array
'07393'
'07595'
'CI7ESE'
'CI7ESE'
'CI'IEBE'
'CI'IEBE'
'CI'IEBE'
‘ 07593'
Scan Chain. ..
Scan Chain PASSED.
Executing actinn RECOVER_CALIB
Checking fur Backup Calibration Data...
Reading Haste: Calibratinn Data...
Writing Calibration Backup Copy
Checking for Backup Calibration Date...
Restoring Master Calibratzon Date.
2 mag“ with a valid (Fab fik associated with it
created zutnnnticzlly and the PDB file loaded
Siggle STAPL/PDB file basic tutorial
Specify I/O States During Programming Tutorial
FlashPro User's Guide 49
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Backing Up Default Fusion Calibration Data
A backup copy of the Fusion calibration data is created once after ANY programming ACTION, except
READ_IDCODE, is executed. The copy will be stored in the spare pages of eNVM. The FlashPro Log
window shows that a backup copy of the calibration data has been created (as shown in the figure below).
Figure 64 · FlashPro Log Window
Recovering Default Fusion Calibration Data
1. Load the PDB/STAPL file created in Designer v8.4 or above.
2. In the FlashPro Configuration window, click Advanced and select RECOVER_CALIB (as shown in the
figure below).
Figure 65 · RECOVER_CALIB
3. Click Run to restore the original Fusion calibration data. The Log window shows the data is restored (as shown
in the figure below).
Figure 66 · Restoring Original Calibration Data
Note: The Calibration data can only be restored after a backup has been made.
Specify I/O States During Programming Tutorial
This tutorial explains how to modify the I/O states during programming within FlashPro for used and unused
I/Os. It also explains how to modify the Boundary Scan Registers (BSRs) for each I/O to allow for more
detailed customization of the I/O states during programming. Finally, it shows how to save and load these
settings with a file.
Note: This tutorial requires a design with a valid *.pdb file associated with it. If you launch FlashPro from a Libero SoC
project, a FlashPro project is created automatically and the PDB file loaded. Otherwise, you can start a new FlashPro
project and load a PDB file; refer to Single STAPL/PDB file basic tutorial for more information.
OH” .
Modify Boundary Scan Registers
section
Evenly m 5mg; nunnq mmmmm
,7
[fffi
’7
’7
’7
’7
’7
’7
’7
’7
’7
’7
’7
{7
’7
’7
’7
’7
,7
Specilying l/O States During Programming
50 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
You can also modify the individual Boundary Scan Registers; see the Modify Boundary Scan Registers
section for more information.
To modify the state of an I/O during programming:
1. Once your PDB is successfully loaded, from the Configuration menu, choose PDB Configuration.
This brings up FlashPoint . FlashPoint is the tool that allows you to modify the PDB programming file
from within FlashPro.
2. In FlashPoint, click the Specify I/O States During Programming button. The Specify I/O States
During Programming dialog box appears (as shown below). This dialog box enables you to modify the
I/O states during programming for all used and unused I/Os.
Figure 67 · I/O States During Programming Window
The default view displays a grid with 4 columns: Port Name, Macro Cell, Pin Number, and I/O State (Output
Only). Port Name lists the port associated with each of theses pins, if the pin is not used in the design, the
Port Name for this pin reads Unused. The Pin Number column contains a list of all the pins for the package
associated with the design open in FlashPro.The Macro Cell column contains the Microsemi macro
associated with each pin, as with Port Names, if the pin is not used, the Macro Cell for this pin reads
Unused. The I/O State column is the only column editable in FlashPro.
3. Select an I/O State from the drop-down menu for each I/O you want to modify.
Please refer to Specifying I/O States During Programming for information on sorting and selecting multiple
entries in the grid.
4. Click Save in the Specify I/O States During Programming window, then Finish in FlashPoint to return
to FlashPro. The PDB is updated with your new settings.
Congratulations, you have successfully modified the I/O states that will be held during programming.
Modifying Boundary Scan Registers
Each I/O in your device is comprised of an Input, Output and Output Enable Boundary Scan Register (BSR)
cell.
The BSR cells enable you to define I/O states during programming and control the individual states for each
Input, Output, and Output Enable register.
o Microsemi.
Sgec y g l/O States
During Programming - l/O States and BSR Details help topic
Sgecwymg l/O Slates Durmg Programmmg
Specwqu l/O Slates Durmq Proqrammmq - I/O States and BSR Details
Specify I/O States During Programming Tutorial
FlashPro User's Guide 51
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
To modify the individual Boundary Scan Registers of an I/O in your device:
1. Select the Show BSR Details checkbox in the Specify I/O States During Programming window.
This replaces the I/O State (Output Only) column with a Boundary Scan Registers column that is split
into Input, Output Enable and Output.
2. Modify each of the registers for any I/O to set your custom options. See the Specifying I/O States
During Programming - I/O States and BSR Details help topic for an explanation of the individual BSR
settings.
3. (Optional) Uncheck the Show BSR Details checkbox to return to the default view.
Note: Note: Updated I/Os with non-default settings are displayed as User-Defined BSR in the default
view.
Click OK and complete programming to save your updated settings to the ADB and programming files.
Saving and Loading I/O State Settings
Click Save to File to save your changes. This enables you to save your custom I/O settings in an IOS file.
Click Load from File to load a previously saved *.ios file.
You must click OK and complete programming to save your updated settings to the ADB and programming files.
See Also
Specifying I/O States During Programming
Specifying I/O States During Programming - I/O States and BSR Details
OMicmsemi,
TDO
TDI
TMS
TCK
YDI TDO TDI TDO
ms — ms ¥
1cx TCK
Astso Azrssoo
O .
New Praject
Pmiett Name:
Prajsrx Lomfim:
D:\FIashProvSDWulti_A:te|_Chain' amm___|
ngamhg made
f‘ sang; sun Fla
F Chain
52 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Advanced Tutorials
Multiple Device Chain Programming
This tutorial provides step-by-step instructions on how to program multiple Microsemi devices in a chain.
You should already be familiar with the basic features of the FlashPro software.
Note: This tutorial does not provide software installation instructions. Please have FlashPro already installed before you
begin.
In the figure below, there are three devices in a chain (two A3P250 and one A3PE600). In this section, we
will program these three devices in the chain.
Figure 68 · APA Device Tutorial Example
First you need to create a project.
To create a new project:
1. Click the New Project button in FlashPro.
2. From the New Project dialog box, type “Tutorial” in the Project Name field.
3. Check the Chain box (see figure below).
Figure 69 · New Project Dialog Box
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro main window appears.
Note: Note: The Programmer List window updates with your programmers information.
6. From the Programmers menu, choose Scan Chain (or select the programmer in the Programmer
List window, right-click, then choose Scan Chain) (see figure below).
O Micmsemi.
m...- m...—
n— Sm
saw
him
Qsém
fikmw
.aam
mu.
Rdeed-a’wwma
:1qume mm ‘
5| prngrammer '01245- : Found 24 inscxuccinn rzgxsczz bins.
A programme: '01245' : Checking IDCODES...
programmer Iu1245- : DechE 1: znncr Mfr: Accel Pan: mupzsu
pzugzamme: '01245' : Davie: 2: 123261CF th: Acczl Pan: nuansnu
programmer '01245' Devlce 3: “1410' Mr: Accel Part: AJPZSU
prugramme: '01245' Scan cham PASSED.
;|_>i\ml /\ Errors A Wam'ngs A Info I
7‘
*"lm _I :I M fl—‘Zm:
Psmumiflw
M. u— n- ..'.".. "mg inn-- is»: m. 1,": min:
WWW
Add Aclel Device
Mane : AflPZSU
Help Cancel
Multiple Device Chain Programming
FlashPro User's Guide 53
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 70 · Select Programmer Window
Scan Chain shows how the devices are ordered in the chain in the log window (see figure below). In this
case, A3P250 is the first device that will be programmed in the chain since it is connected directly to TDO.
Figure 71 · Scan Chain Order in the Log Window
7. Click the Configure Chain button. The Chain Configuration window displays (see figure below).
Figure 72 · Chain Configuration Window
8. In the Chain Configuration window, click the Add Device button to add devices to the chain. The
Add Microsemi Device dialog box appears (as shown in the figure below).
Figure 73 · Add Microsemi Device Dialog Box
9. Choose the "A3P250" device from the Device drop-down.
O Micmsemi
‘ m: wmmmefl
m- Mm m M a—‘mww
F SMMEM law hm.
.r mu
am: an
Mu] um
.1
Lung»-
L M M £4‘ZL‘S:
“WWW ”mom |
I £9250 EATZSV D a w [-7
WESW Em.—
15‘
7 mm, Wm. M “mm m...“ WM
flame Yvw am: (n-hkd ‘ "
;
Y
a
y "mm“ 'aans‘ device ‘luyzsn‘ mum: m m as n 9 zaas (mum Lime mmm. 5
A ngxmx 'uana‘ devlce ‘AJPZSD‘ Kxecucmg mum vxocxm ”55m.
« r All [m Wan-w Axnful
54 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
10. In the STAPL file field, use the Browse button to locate the A3P250.stp file.
11. In the Name field, leave A3P250 as default. The A3P250 device is added into the Chain
Configuration window (see figure below).
Figure 74 · Device One Chain Configuration Window
12. Repeat the same process for A3PE600 and the other A3P250 respectively.
13. After you have finished adding all of the devices in the chain, the Chain Configuration window
updates.
Figure 75 · Chain Configuration Window: All Devices in the Chain
14. Once all the devices have been added to the chain in the correct order, click the Run button to
program the chain.
15. When Programming is complete, the Programmer List window displays. See figure below.
Figure 76 · Programmer List Window Done
Congratulations! You have just completed the FlashPro Multiple Microsemi Device Chain Programming
tutorial.
Multiple Device Serialization Chain Programming
This tutorial provides step-by-step instructions on how to program multiple Microsemi devices with
serialization. Before you begin this tutorial, you should already be familiar with the basic features of the
FlashPro software.
Note: This tutorial does not provide software installation instructions. Please have FlashPro already installed before you
begin.
In this tutorial you will program two devices in a chain (one device is A3P250 and the other is A3PE600).
The STAPL file for the first A3P250 device contains 10 serialization data. See figure below.
TDD
TDI TDI TDO TDI TDO TDI TDO
TMS TMS — TMS i TMS
TCK TCK TCK
ASPZSD A3PE600
0
New iject
Project Name:
Tutorial
Pwiect Location:
D :\F|aShPrDVSD\Multi_AEtel_Chain Browse. ‘ ‘
Pragrammhg made
(" Sings 5mm. Fla
5 Chain
TCK
ASPZSO
O Micmsemi.
m (al
a m
G 2w Test
4;: 51m am"
a flan-1v:
unm-
Run Sakhed vavammevx
Ram/aw m Frommm
mum ugl
Multiple Device Serialization Chain Programming
FlashPro User's Guide 55
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 77 · APA Device Tutorial Example
First you need to create a project.
To create a new project:
1. Click the New Project button in FlashPro.
2. From the New Project dialog box, type "Tutorial" in the Project Name field.
3. Check the Chain box (as shown in the figure below).
Figure 78 · New Project Dialog Box
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro main window appears and updates the Programmer List info with your
programmer information.
6. From the Programmers menu, choose Scan Chain (or select the programmer in the Programmer List
window, right-click, then choose Scan Chain) (as shown in the figure below).
Figure 79 · Scan Chain Selection
Scan Chain shows how the devices are ordered in the chain in the log window (see figure below). In this
case, A3P250 is the first device will be programmed in the chain since it is connected directly to TDO.
OMicmsemi.
5| programme: '03175‘ : round 24 instruction regjsrer hits.
—’I programmer '03175‘ : Checlung IDCODES.
Drowrammer '03175‘ : Device 2A141CF ufr: Actcl Part: napzsu
programmer '03175‘ : Device 1232610" Mfr: Accel Parr: napEsoo
programmer '03175‘ : nevme 2A141CF nrr: Accel Fart: ASPZSU
programmer vnana‘ : Scan Chaln mssrn.
< 4=""> All Evrurs Warnings Info
7r
7 wwnmm
mm ; ,, M g—‘mmw
stnthmEII-u y: m V
‘ ”w" ‘ "" " M3» “mi“ ‘ 5%‘ ‘57; “in 32‘: ‘msuz‘
Add Aclel Device
A” File
Programming file: _]
45‘ Device
Device:
Mane : [napzsu—
Help Cancel
~--— L.»- mm m aw
WM“,
Fsmn-‘Em \l-udDm
om -- m .'.. “:43 5:: 22*: m it:
1 new EAm c o m ' F
new» E
: Am EAmm c: a Ill
56 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 80 · Scan Chain Order in the Log Window
7. Click the Configure Chain button . The Chain Configuration window appears (see figure below).
Figure 81 · Chain Configuration Window
8. In the Chain Configuration window, click the Add Device button to add devices to the chain. The
Add Microsemi Device dialog box appears.
9. Choose A3P250 device from the Device drop-down menu (as shown in the figure below).
Figure 82 · Add Microsemi Device Dialog Box
10. In the STAPL file field, use the Browse button to locate the A3P250.stp file.
11. In the Name field, leave A3P250 as default.
12. Click OK. The A3P250 device is added into the Chain Configuration window.
13. Repeat steps 8 to 11 for A3PE600 and A3P250 respectively. After you are finished adding all devices
in the chain, the Chain Configuration window updates (as shown in the figure below).
Figure 83 · Chain Configuration Window for all Devices
O Micmsemi.
Serial Settings
_1
All -.
4|
, ‘ «- nu
wmumut-wN—n
'7 View unused data
I7 View used data
I7 View skipped data
Filer: *
I7 Log sevialdata: Region_fi_fl v
Plaulnmm Ilium-ml
rum-m Iraq-Hum
u.“ up: nu:
H mm...“ ‘
TDD
TDI
TMS a;
TCK
_2i
Multiple Programmer Multiple Device Chain Programming
FlashPro User's Guide 57
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
14. From the Chain Configuration Window, check the Enable Serial box. This enables the Serial Data
option in the Chain Configuration window.
15. Click Select in the Serial Data column, the Serial Settings dialog box displays as shown in the figure
below.
Figure 84 · Serial Settings Dialog Box
16. From the Serial Settings dialog box, click the All button to select all the serial data.
17. Click OK.
18. Once all the devices have been added to the chain in the correct order and serialization has been
selected, click the Run button to program the chain.
19. When programming is complete, the Programmer List window appears and indicates that the devices
are ready for programming (as shown in the figure below).
Figure 85 · Programmer List Window Done
Congratulations! You have just completed the FlashPro Multiple Device Serialization Chain Programming
tutorial.
Multiple Programmer Multiple Device Chain Programming
This tutorial demonstrates step-by-step instructions on how to parallel program two chains using two
programmers, each with two Microsemi SoC Devices (A3P250 and A3PE600). See the figure below for an
illustration.
Figure 86 · APA Device Tutorial Example
OMicmsemi.
New Praject ‘E‘
Project Name:
Tutorial
Project anfim:
D:\FIashProvSDWult_quv_Multi_ Bruwse...|
Pragummg made —
r Sings sun. Ha
(I‘ Chain
IE] Canal | Heb |
. ‘ Imam ”1;” law-T.- urn-m H
< mm="" mm:="" mm="" 17="" 2="" mm="" rum»;="" mums="" 17="">
58 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
You should already be familiar with the basic features of the FlashPro software before you begin this tutorial.
Note: This tutorial does not provide software installation instructions. Please have FlashPro already installed before you
begin.
First you need to create a project.
1. Click the New Project button in FlashPro.
2. From the New Project dialog box, type “Tutorial” in the Project Name field.
3. Check the Chain box (see figure below).
Figure 87 · New Project Dialog Box
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro main window appears and displays your updated programmer information (as
shown in the figure below).
Figure 88 · FlashPro User Interface
6. From the Programmers menu, choose Scan Chain (or select the programmer in the Programmer
List window, right-click, then choose Scan Chain). The Select Programmer(s) dialog box displays
(see figure below).
O Microsemi.
Selecl programmerls)
Select the programmer“) you want to scan:
Prugrammerls]
mum. Hummer Frau-I'm nunlnIner n ”M.
u... u... u... m...“
mm “mm 5c chain-Assn W
Ndeucm In Wm
' A «mm. “mm“ ‘ . Wm m mm “mm; m. WWW m m. mew)” mum Wm... 1m; mu
“mum mm . um“. Inconh...
“mum mm . gm. mm ”55w.
43m 2&er mu] '
w (
7". —| :1 fli' 5%
FSMMEM
, IR u-nx Emil. Eulh , sum
”W "- 7" w Mm D-v'wv 5-“ ”h" on. M“
I s:..
Multiple Programmer Multiple Device Chain Programming
FlashPro User's Guide 59
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 89 · Select Programmer Window
The Programmer List window shows the Scan Chain Test was passed and how the devices are ordered in
the chain (see figure below).
Figure 90 · Scan Chain Order in the Log Window
7. Click the Configure Chain button . The Chain Configuration window appears (as shown in the figure
below).
Figure 91 · Chain Configuration Window
8. In the Chain Configuration window, click the Add Device button to add devices to the chain. The
Add Microsemi Device dialog box appears.
9. Choose A3PE600 device from the Device drop-down menu (as shown in the figure below).
OMicmsemi.
Aclel Device Configuratinn
Prugvammingfile: V:\luran\pvngamming_designs\ J
F Device
Device: VFW" .
Name : ASPEEUD
Heb OK Cancel
10‘
11‘
12‘
"I _Iu«-m _Iww— a4 4%
mm.”
wsmnmsm
u— a. A'L. “a1? ‘"‘" 2"" 1-: man:
um“ ::I 44 51M
WWW
rsmwm
n...» u— n. .. my? 5;»: g»:- A‘.“ 51‘:- man:
Wham
» Ilmu-mna [vacuum m mm...” Dual-“mu mm Mm
m». I»: aun- mm
‘ Anus thva mm M mu. v Anew
mm
60 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 92 · Add Microsemi Device Dialog Box
10. In the STAPL file field, use the Browse button to locate the A3PE600.stp file.
11. In the Name field, leave A3PE600 as default.
12. The A3PE600 device is added into the Chain Configuration window (as shown in the figure below).
Figure 93 · Device One Chain Configuration Window
13. Repeat steps 8 to 11 for A3P250. After you are finished adding all devices in the chain, the Chain
Configuration window updates (as shown in the figure below).
Figure 94 · Chain Configuration Window for all Devices
14. Once all the devices have been added to the chain in the correct order and serialization has been
selected, click the Run button to program the chain.
15. When programming is complete, the Programmer List Window appears (as shown in the figure
below).
Figure 95 · Programmer List Window Done
Congratulations! You have just completed the FlashPro Multiple Device Serialization Chain Programming
tutorial.
TDO
TDI TDI TDD? TDI TDD
TMS—o— TMS TMS
TCK TCK TCK
A3P250 MPEGOO
New Praject
Project Name:
Tutorial
Project anfim:
D:\F|ashProv50\Mult_quv_Mu|t_I Bruwse...|
Pragummg made
r Sings sun. Ha
(I‘ Chain
OMicrosemi.
Multiple Programmer and Multiple Device Serialization Chain Programming
FlashPro User's Guide 61
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Multiple Programmer and Multiple Device Serialization Chain
Programming
This tutorial demonstrates step-by-step instructions on how to parallel program two chains using two
programmers, each with two Microsemi SoC Devices (A3P250 with Serialization and A3PE600). See the
figure below for an illustration.
Figure 96 · APA Device Tutorial Example
You should already be familiar with the basic features of the FlashPro software before you begin this tutorial.
The STAPL file for the A3P250 device contains 10 serialization data.
Note: This tutorial does not provide software installation instructions. Please have FlashPro already installed before you
begin.
First you need to create a project.
1. Click the New Project button in FlashPro.
2. From the New Project dialog box, type “Tutorial” in the Project Name field.
3. Check the Chain box (see figure below).
Figure 97 · New Project Dialog Box
4. If necessary, change the default location of your project in the Project Location field.
5. Click OK. The FlashPro main window and the Programmer List window displays your updated
programmer information.
6. From the Programmers menu, choose Scan Chain (or select the programmer in the Programmer
List window, right-click, then choose Scan Chain). The Select Programmer(s) dialog box appears
(as shown in the figure below).
OMimsemi.
Selecl programmerls)
Select the pvngvammefls) you want to scan:
ongrammerls]
E] 01245
D 03178
Salad AI Unwiect All
» um um. I’m-m ”a...“ . mm
m Im an:- m
7 mm Emma mmm mm mm mm 7
flfl ymwomm
‘ 4 flaws-mm
l ”w- \ "- I m mam-mm 22:: w 1 3;: \mm‘
W
62 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 98 · Select Programmer Window
The Programmer List window shows the Scan Chain Test was passed and how the devices are ordered in
the chain (see figure below). In this example, A3PE600 will be programmed first in the chain since it is
connected directly to TDO.
Figure 99 · Scan Chain Order in the Log Window
7. Click the Configure Chain button . The Chain Configuration window appears (as shown in the figure
below).
Figure 100 · Chain Configuration Window
8. In the Chain Configuration window, click the Add Microsemi Device button to add devices to the
chain. The Add Microsemi Device dialog box appears.
9. Choose A3PE600 device from the Device drop-down menu (as shown in the figure below).
o Microsemi.
Aclel Device Configuratinn
Programming file: V:\kAvan\pmgvammlng_designs\ ._J
(‘ Devite
Devte: , .
Name : ABPESDD
Mu'EK Eu.» En
mm. mm o
2 man a Arm [2] m
Multiple Programmer and Multiple Device Serialization Chain Programming
FlashPro User's Guide 63
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 101 · Add Microsemi Device Dialog Box
10. In the STAPL file field, use the Browse button to locate the A3PE600.stp file.
11. In the Name field, leave A3PE600 as default. The A3PE600 device is added into the Chain
Configuration window.
12. Repeat the steps above to add the A3P250. After finished adding all devices in the chain, the Chain
Configuration window updates (see figure below).
Figure 102 · Chain Configuration Window for all Devices
14. In the Chain Configuration Window, check the Enable Serial box.
15. Click Select in the Serial Data column. The Serial Settings dialog box appears (as shown in the
figure below).
Serial Seliings
fi‘lmul‘whld
8 , ‘
All I»
M
f
'7 View mused data
I7 View used data
[7 View sbped data
@=*
i7 Logserialdota: Regiun_fi_fl v
Help
cm
a..." »...m M In...“ m...” u
m- m. m- m
‘ .mm ”mm .mm “mm 9 “WWW.“
7 mm mm mm“ mluuwn v nmmmkm
Chain min Tutnrizl
64 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 103 · Serial Settings Dialog Box
16. From the Serial Settings dialog box, click the All button to select all the serial data.
17. Click OK.
18. Once all the devices have been added to the chain in the correct order and serialization has been
selected, click the Runbutton to program the chain.
19. When programming is complete, the Programmer List window updates (as shown in the figure
below).
Figure 104 · Programmer List Window Done
Congratulations! You have just completed the FlashPro Multiple Programmer and Multiple Device Serialization Chain
Programming tutorial.
Setting Disabled Microsemi SoC Devices to HIGH-Z
This tutorial explains how to set disabled Microsemi SoC SmartFusion, IGLOO, ProASIC3, Fusion devices
in a chain to HIGH-Z during chain programming.
Note: This tutorial requires a design with valid *.pdb/*.stp files for a chain of devices. If you launch FlashPro from a Libero
SoC project, a FlashPro project is created automatically and the PDB/STP file loaded. Otherwise, you can start a new
FlashPro project and load a PDB/STP file; refer to the Chain Programming Tutorial for more information.
1. Once all your devices have been added to the chain, from the Chain Configuration window, choose
which devices you would like disabled during programming by de-selecting the appropriate checkbox
from the Enable Device column.
Now that you have disabled devices a checkbox appears in the HIGH-Z column of the Chain Configuration
window. If the HIGH-Z column is not shown in the Chain Configuration Grid, right-click any column header
and choose HIGH-Z.
o Microsemi.
L m M 5%???"
r7 smcmim \WDM
. In warm ( .u: Emu: ‘ 5:.“
”9"“ " '9 'i um» [um] o..." squ “M o... “'5" Z
2 mum/5 EMBLEM/5|?! D s m «
Setting Disabled Microsemi SoC Devices to HIGH-Z
FlashPro User's Guide 65
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
2. Select the HIGH-Z checkbox to ensure your disabled devices enter HIGH-Z mode and remains in that
mode until chain programming is complete.
HIGHZ is not supported if enabled Microsemi devices are executing one of the following ACTIONS:
• PROGRAM_NVM_ACTIVE_ARRAY
• VERIFY_NVM_ACTIVE_ARRAY
• READ_IDCODE
Disabled devices I/Os will not go to HIGHZ and the they will not tri-state. Any other ACTION will work as
expected
Figure 105 · HIGH-Z Option in FlashPro
OMicmsemi,
66 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Programming Settings and Operations
Introduction
The FlashPro software enables you to connect multiple programmers to your computer. With each
programmer you select, you can connect the programmer, perform a self-test, customize, add, and remove
and analyze the JTAG chain.
Programmer Settings
The Programmer Settings dialog box includes setting options for FlashPro5/4/3/3X, FlashPro Lite and
FlashPro.
Note: You can set the TCK setting in the PDB/STAPL file by selecting the TCK frequency in the Programmer Settings
dialog box.
Limitation of the TCK frequency for the selected programmer:
• FlashPro supports 1-4 MHz
• FlashPro Lite is limited to 1, 2, or 4 MHz only.
• FlashPro5/4/3/3X supports 1-4 MHz.
Limitation of the TCK frequency for the target device:
• IGLOO, ProASIC3, and Fusion – 10MHz to 20MHz
• ProASICPLUS and ProASIC – 10 MHz.
During execution, the frequency set by the FREQUENCY statement in the PDB/STAPL file will override the
TCK frequency setting selected by you in the Programmer Settings dialog box unless the Force TCK
Frequency checkbox is selected.
To set your programmer settings:
1. From the Tools menu, choose Programmer Settings.The Programmer Settings dialog box appears
(as shown in the figure below).
Programmer Settings
FlashPro User's Guide 67
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 106 · Programmer Settings Dialog Box for FlashPro
2. Click a programmer tab and check the appropriate settings for your programmer.
3. Click OK.
FlashPro Programmer Settings
Choose your programmer settings for FlashPro (see above figure). If you choose to add the Force TCK
Frequency, select the appropriate MHz frequency. After you have made your selection(s), click OK.
Default Settings
• The Vpp, Vpn, Vdd(l), and Vddp options are checked (Vddp is set to 2.5V) to instruct the FlashPro
programmer(s) to supply Vpp, Vpn, Vdd(l) and Vddp.
• The Drive TRST option is unchecked to instruct the FlashPro programmer(s) NOT to drive the TRST
pin.
• The Force TCK Frequency option is unchecked to instruct FlashPro to use the TCK frequency
specified by the Frequency statement in the STAPL file(s).
FlashPro Lite Programmer Settings
If you choose to add the Force TCK Frequency, select the appropriate MHz frequency. After you have made
your selection(s), click OK.
Default Settings
• The Vpp and Vpn options are checked to instruct the FlashPro Lite programmer(s) to supply Vpp and
Vpn.
• The Drive TRST option is unchecked to instruct the FlashPro Lite programmer(s) NOT to drive the
TRST pin.
OMicmsemi.
68 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
• The Force TCK Frequency option is unchecked to instruct the FlashPro Lite to use the TCK frequency
specified by the Frequency statement in the STAPL file(s).
FlashPro5/4/3/3X Programmer Settings
For FlashPro3, you have the option of choosing the Set Vpump setting or the Force TCK Frequency. If you
choose the Force TCK Frequency, select the appropriate MHz frequency. For FlashPro5/4/3X settings, you
have the option of switching the TCK mode between Free running clock and Discrete clocking. After you
have made your selections(s), click OK.
Default Settings
• The Vpump option is checked to instruct the FlashPro3 programmer(s) to supply Vpump to the device.
• The Force TCK Frequency option is unchecked to instruct the FlashPro3 to use the TCK frequency
specified by the Frequency statement in the PDB/STAPL file(s).
• FlashPro3x default TCK mode setting is Free running clock
TCK Setting (ForceTCK Frequency)
If Force TCK Frequency is checked (in the Programmer Setting) then the selected TCK value is set for
the programmer and the Frequency statement in the PDB/STAPL file is ignored.
Note: FlashPro Lite RevA supports only 4MHz on TCK.
Default TCK frequency
When the PDB/STAPL file or Chain does not exist, the default TCK frequency is set to 4MHz. In the Single
Device File Programming mode, FlashPro will parse through the file and search for the "freq" keyword and
the "MAX_FREQ" Note field, which are expected in all Microsemi flash device files. The FlashPro software
uses the lesser value of the two as the default TCK frequency.
In Chain Programming mode, when more than one Microsemi flash device is targeted in the chain, the
FlashPro software passes through all of the files and searches for the "freq" keyword and the "MAX_FREQ"
Note field. The FlashPro software uses the lesser value of all the TCK frequency settings and the
"MAX_FREQ" Note field values.
Ping Programmers
To ping a programmer(s):
1. From the Programmers menu, choose Ping.
2. Select the programmers you want to connect from the Select Programmer(s) dialog box.
3. Click OK.
Note: You can click the Refresh/Rescan for Programmers button to quickly ping new programmers.
Performing a Self-Test
To perform a self-test:
1. From the Programmers menu, choose Self Test.
2. Select the programmer(s) you want to self-test from the Select Programmer(s) dialog box.
3. Click OK.
Note: You must connect the programmer to the self-test board that comes with your programmer before performing a self-
test.
You can also perform self-test by right-clicking on a specific programmer from the Programmer List
Window and selecting Self-Test.
O Microsemi.
Scanning a Chain
FlashPro User's Guide 69
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Note: Self-test is not supported with FlashPro4 or FlashPro Lite programmers. These programmers are rigorously tested at
the factory during production.
Scanning a Chain
The scan chain operation scans and analyzes the JTAG chain connected to programmer(s) you have
selected.
To scan a chain:
1. From the Programmers menu, choose Scan Chain.
2. Select the programmers you want to scan from the Select Programmer(s) dialog box.
3. Click OK.
You can also perform Scan Chain by right-clicking on a specific programmer from the Programmer List
Window and selecting Scan Chain.
To scan and check a chain:
1. From the Tools menu, choose Modes > Chain Programming.
2. From the Chain Configuration window, select auto construct or add devices.
3. From the Programmers menu, choose Scan and Check Chain.
4. Select the programmers that you want to scan and check chain from the Select Programmer(s) dialog
box.
5. Click OK.
You can also perform Scan Chain and Scan and Check Chain by right-clicking a specific programmer from
the Programmer List Window and selecting Scan Chain or Scan and Check Chain.
Enabling and Disabling Programmers
Once your programmer is enabled you can connect the programmer, perform a self-test, scan the chain, or
remove it.
To enable a programmer:
1. From the View menu, choose Programmer Details Window.
2. Check the Enable programmer checkbox in the Programmer Details Window.
The Programmer Details window displays all the information about your programmer.
Note: Note: You can also enable your programmer from the Programmer List window by checking the
checkbox in the Programmer Enabled column.
Disable your programmer by unchecking the Enable programmer checkbox from the Programmer Details
Window or by unchecking the checkbox in the Programmer Enabled column in the Programmer window.
Renaming a Programmer
Enter the new programmer name in the Programmer Details window to rename the programmer. By
default, the programmer name is the same as the programmer ID.
Removing a Programmer
To remove a programmer:
1. From the Programmers menu, choose Remove.
2. Select the programmers you want to remove from the Select Programmer(s) dialog box.
3. Click OK.
OMicmsemi.
Select programmer‘sp
Select the pmgvammefls) you want to ping:
ongwnmerls]
El D1238
70 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Selecting Programmers
The Select Programmer(s) dialog box gives you the option of selecting all and unselecting all of the
programmers that you want to ping. See figure below.
Figure 107 · Selecting Programmer(s) Dialog Box
OMicmsemi.
Device 3
Device 1 Device 1
TDO
TDI
introduction
PmASICPLUS and PmASIC programming
Chain Settings
Single Device Programming
FlashPro User's Guide 71
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Single Device Configuration
Single Device Programming
When devices are joined together in a JTAG chain, all of their Instruction Registers (IR) and Data Registers
(DR) are put in a long shift register from TDI to TDO. The IR length defers from device to device and the DR
length depends on the instruction that shifts into the instruction register.
When targeting Device 2 (see figure below), you need to know the IR length for Device 1 and Device 3.
Given this information, you can bypass both devices by shifting an all one pattern into their instruction
registers before and after the instruction targeted at Device 2. The number of bits you shift before Device 2's
instruction is the pre IR length, and the number of bits you need to add after Device 2's instruction is the post
IR length. In this case, the pre IR bits are shifted into
Device 1 and post IR bits are shifted into Device 3.
Figure 108 ·
Targeting Device 2
When the bypass instruction is shifted into Device 1 and Device 3, the TDI and TDO of the two devices are
connected to the 1-bit bypass register at the Shift-DR state. To correctly shift the data in and data out of
Device 2's register, you need to shift one bit of data before and after Device 2's data.
The number of bits you need to shift into the data register for Device 1 is the pre-DR length and the number
of bits we need to shift into the data register for Device 3 is the post-DR length. With the IR and DR length
information, you can shift instructions and data into Device 2 with the correct registration.
To create the JTAG chain (shown in the above figure):
1. Connect the TCK and TMS from the programmer to all of the devices.
2. Connect the programmer’s TDI pin to the TDI pin of device 3.
3. For all devices in the chain, connect the TDO output of one device to the TDI input of the next device.
4. Connect the TDO output of the last device to the programmer’s TDO input.
The order of devices in the chain is set by the connections of TDI to TDO.
The ChainBuilder software takes the order of the devices in a chain and their IR lengths and adds the pre-
IR, post-IR, pre-DR, and post-DR padding bits in the device you want to program, which properly aligns the
instructions and data within the IR and DR of the devices.
If you do not use the ChainBuilder software, the FlashPro software tries to find the pre-IR, post IR, pre-DR,
and post-DR values during the Analyze Chain operation.
For more information, see ProASIC programming and ProASICPLUS and ProASIC programming
introduction.
To find out how to set the IR length, see Chain Settings.
Loading a Programming File
You can either load a programming file from the Configuration menu or from the Single Device
Programming Window. The section below describes how to load a programming file from the Single
Device Programming Window.
Select Target Device
Stale-1:! Tar get Devin?
72 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
To Load a programming file from the Single Device Programming window:
1. From the View menu, choose Single Device Configuration to activate the Single Device
Configuration Window.
2. Click the Browse button in the Single Device Configuration Window (see figure below).
Figure 109 · Signal Device Configuration Window
The Load Programming File dialog box appears.
3. Navigate to your programming file, select it, and click Open. The programming file is loaded and the
Single Device Configuration Window updates.
Select Target Device
The Select Target Device dialog box is located in the Configuration menu.
The Select Target Device dialog box enables you to select the target device you want to program. If you
are only programming one device in a chain, there is no need for you to make a selection. The Select
Target Device dialog box automatically displays your device (see figure below).
Figure 110 · Select Target Device (One Device in a Chain)
If you are programming more than one Flash device in a chain, you need to select the target device you
want to program. If you attempt to program your device without selecting a target device, a warning
message appears.
If the warning message appears, click OK and the Select Target Device dialog box appears. From the
Select Target Device dialog box, select the device you want to program (see figure below).
Figure 111 · Select Target Device (Multiple Devices in a Chain)
Click the down arrow to display the list of devices in your chain. Then, make your selection and click OK.
sut I’rt ‘ l'usl 1H. values
Single STAPL file Qrogramming information
Single Device Programming Information
Chain Parameter
Chain Settings
FlashPro User's Guide 73
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Note: When the FlashPro software does not detect your chain configuration, you must specify the Pre/Post IR fields by
entering these values in the Set Pre/Post IR Values dialog box (see figure below).
Figure 112 · Pre IR and Post IR Values for the Target Device
For more information, see Single STAPL file programming information.
Chain Settings
Click the Chain Parameter button in the Single Device Configuration window to set the chain settings
(see the Chain Settings dialog box below). See Single Device Programming Information for more
information about these STAPL settings.
Figure 113 · Chain Settings Dialog Box
Serial Settings
Click the Select Serialization Indexes/Select Serialization Actions button from the Single Device
Configuration Window. The Serial Settings dialog box appears (as shown in the figure below).
Note: Depending on the STAPL file format (Microsemi format or generic format) used, you will either see Indexes
columns or Actions columns in the Serial Settings dialog box.
Serial Sellings
mmwmm§wmmd
v \
All
M
AH
I7 View unused data
I7 Vlew used data
I7 Vlew skipped data
Filter: *
l— Lug serial data: v
Ll
OK
Camel I
74 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 114 · Serial Settings Dialog Box
Click the red arrow buttons in the center of the dialog box to move from the Actions column to the Selected
Actions column. The indexes/actions available for selection are located on the left and the indexes/actions
you choose to select are located on the right column. Viewing options are available in the checkboxes under
the Actions column. If you check Log serial data, you can select the FlashROM region name where the
serial data will be stored.
O Micmsemi.
Chain Configuration Window
Hm N m—m—m 2 mom-i 1 ml—
Chain Order
Automatic Chain Construction Tutorial
direct chain pmgnmming witho
1-3an Chain STAPL file
Chain Order
FlashPro User's Guide 75
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Chain Programming
Chain Order
The chain order is located in the Chain Configuration Window. The devices you add to the chain must be
in the correct order and must match the physical chain to be programmed. The TDO for the first device
connects to the programmer, and the last device's TDI connects to the programmer. The devices in the
chain go in order from a device's TDI into the next device's TDO, as shown in the figure below.
Figure 115 · Chain Order
Multiple Device Chain Programming
The FlashPro software enables direct chain programming without generating a chain STAPL file. Each
device will be programmed in sequential order starting from device 1 to device N. See example below. For
more information about chain order, see the Chain Order help topic.
TDI > Device N > Device N-1 >… > Device 2 > Device 1 > TDO
You have the advantage of using the Chain Builder GUI interface to construct the target physical chain.
Therefore, you do not need to calculate the PRE/POST IR/DR value of the target device. Instead, you must
provide either a valid BSDL file or the IR length and TCK Fmax values when you add a non-Microsemi
device to the chain.
You also have the advantage of automatically generating the chain from a scan chain operation. If you
connect the target chain to your Microsemi programmer, then you can automatically construct the chain.
Refer to the Automatic Chain Construction Tutorial for more information.
Note: Even though the FlashPro software enables direct chain programming without generating a Chain STAPL file, this
functionality is still available. For more information, see Export Chain STAPL file.
Device Programming Compatibility
The following is a list of flash devices that can be programmed together in a chain.
• SmartFusion, IGLOO, ProASIC3 and Fusion, excluding ProASIC3L, families can be programmed in
the same chain.
• ProASICPLUS can only be programmed with other ProASICPLUS devices.
• ProASIC can only be programmed with other ProASIC devices.
Programmer Support
FlashPro5/4/3/3X supports only SmartFusion, IGLOO, ProASIC3 and Fusion family devices. The Vpump on
FlashPro5/4/3/3X is designed to support the programming of only one device. Please make sure that
Vpump, Vcc and Vjtag are provided on board for chain programming. Connect the Vpump to the header as
the FlashPro software will attempt to check for all external supplies, including Vpump, to ensure successful
programming. There is no limitation to the chain length; however, ensure that the JTAG signal integrity and
the timing are preserved.
FlashPro and FlashPro Lite support both ProASICPLUS and ProASIC devices. However you cannot program
both devices in the same chain.
Unless all supplies are provided on board, there is a limitation of programming eight ProASICPLUS or
ProASIC devices in a chain.
OMicmsemi.
Chain
Time 1 5'" Status
P
Q "’3 9' Dav} DevZ Dcvl :‘ PASS
PASS PASS PASS
2 502
Pregammer
g; Deva DevZ Devl FAIL
FAIL PASS PASS
2 502
Programmer ‘—_‘
a Dav} DevZ Dcvl FA",
N/A FAIL PASS
2 5:32
Programmer <fi a="" dev3="" devz="" dev]="" pass="" pass="" pass="" pass="" 3="" 503="" programmer="">fi><—_| £3="" deva="" devz="" dev!="" pass="" pass="" pass="" pass="">—_|>
76 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Multiple Device Serialization in a Chain
When you program multiple SmartFusion, IGLOO, ProASIC3 and Fusion family parts, you can use the
serialization functionality for more than one device. You must generate STAPL files with the correct
serialization data in them to use this functionality.
Each serialization enabled STAPL file may contain a different number of serialization data, but you may only
select the same number of serialization data to program in a single Serialization/Programming session.
See the example below for further explanation:
In this example, you have a chain of two devices (one device is an A3P250 and the other device is an
A3PE600). The STAPL file for the A3P250 contains 10,000 serialization data and the STAPL file for the
A3PE600 has 5,000 serialization data. In a single Serialization/Programming session, you are allowed to
select serialization data indexed from 1 to 1,000 for the A3PE600 device and serialization data indexed from
5,001 to 6000 for the A3P250 device. However, FlashPro errors out (at the beginning of a programming
operation) when the amount of the Serialization data you select is different from the devices.
Reuse Serial Data That Failed Programming
If any of the devices in the chain fail programming, the entire chain fails. All of the devices with serialization
enabled will fail as well. The serialization data will be reused or skipped based on your settings. See the
example below for more information:
You have a chain with three devices. Device 1 and Device 3 are serialization enabled. You have selected
Serialization Data 1 to 100 for Device 1 and 501 to 600 for Device 3, and you have set to reuse any unused
Serialization Data. Device 2 is targeted for programming without serialization. See the figure below for an
illustration.
At time t0, all devices in the chain passed programming so the Serialization Data indexes are advance to 2
and 502 for Device 3 and Device 1 respectively. At time t1 and t2, one of the devices failed programming so
the device indexes are reused for time t3.
Note that at time t2, when Device 2 failed to program; Device 3 will not be programmed.
Multiple Device Serialization and Parallel Programming
The FlashPro software enables parallel programming for ProASIC3, excluding ProASIC3L, family devices
using multiple FlashPro5/4/3/3X programmers. The following figure illustrates how the indexes are reused in
a parallel programming environment.
O Microsemi.
Chain
Time 1 SDI Status
Pregammerl ‘
Dev: DevZ Devl PASS
PASS PASS PASS
a Z 502
Pmyammerz ‘
Dev3 DevZ Dev! FAIL
FAIL PASS PASS
Pregammerl
Dev} 9 DevZ Devl FAIL
a N/A FAIL PASS
3 503
Prognmmerz ‘——‘
Dev3 DevZ Dev! PASS
PASS PASS PASS
Z 502
Prugrammerl ‘——‘
Dev3 DevZ Devl PASS
PASS PASS PASS
Q; 4 504
Pruyammerz ‘——|
Dev} DevZ Devl PASS
PASS
PASS
PASS
Chain Configuration Window
FlashPro User's Guide 77
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
At time t0, the chain failed to program so index 2 and 502 are reassigned to Device 3 and Device 1
respectively at time t1. The failed indexes are not assigned to the programmer that previously failed. It will
always be assigned to the devices in the first programmer in the Programmer List.
Chain Configuration Window
The Chain Configuration Window displays the chain order, the chain editing options, and the chain
configuration grid (see figure below). The Chain Configuration Grid enables you to view and set options for
each of your devices. Right-click a column heading in the grid and choose a menu option to show or hide a
specific column.
The Chain Configuration Grid enables you to view, sort and/or set the following options:
• Device - Device name
• Name - Editable field for a user-specified device name. If you have two or more identical devices in
your chain you can use this column to give them unique names.
• File - Path to programming file
• IR Length - Device instruction length.
• Max TCK (MHz) - Maximum clock frequency to program a specific device. FlashPro uses this
information to ensure that the programmer operates at a frequency lower than the slowest device in
the chain.
• Enable Device - Select to enable the device for programming
• Enable Serial- Select to enable serialization when you have loaded a serialization programming file
• Action - List of programming actions for your device.
• Procedures - Advanced option; enables you to customize the list of recommended and optional
procedures for the selected Action.
• Serial Data - Opens the Serial Settings dialog box; enables you to set your serialization data.
• Serial Status - Displays serialization status; lists serialization index(es)/action(s) that have been used
and shows the next serialization data that will be programmed.
OMicmsemi.
Chain Editing
Organize buttons (located am to the Add Microsemi and Add N
Using the Oxgggjg buttons in the Chain Promgfl‘ g gg'd
xi wwnmefl
m m2". m1.» , [:I LILI 5|
.2 - - ,, fawn“
. In MuTEl s...» EMM- . 5...:
i own i N— "- unw- pm) um. w‘ Am- 9... iulmi
Wm
Chain Editing
Action
PROGRAM
DEVICE_INFO
ERASE
ERASE_ALL
ERASE_ARRAY
ERASE FROM
PROGRAM_ARRA
PROGRAMjROM
READJDCODE
VERIFY
VERIFY_ARRAY
VERIFY_FROM
78 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
• HIGH-Z - Sets disabled Microsemi SoC SmartFusion, IGLOO, ProASIC3, Fusion devices in the chain
to HIGH-Z (tri-states all the I/Os) during chain programming of enabled Microsemi devices in the daisy
chain.
The Show Chain Editing checkbox, when checked displays your chain editing options (Configure device,
Add Microsemi Device, Add Non-Microsemi Device, and organization buttons to move your device within the
grid).
Note: For information on how to Add Microsemi and Non-Microsemi devices, see Chain Editing.
Note: For information on how to use the Organize buttons (located next to the Add Microsemi and Add Non-Microsemi
buttons) in the Chain Configuration grid, see Using the Organize buttons in the Chain Programming grid.
You can enable programming and serialization by checking the Enable Device checkbox and the Enable
Serial checkbox in the Chain Configuration grid.
Figure 116 · Chain Configuration Window
Chain Editing Options
The FlashPro software enables you to automatically construct the chain by clicking the Construct the chain
from a Scan Chain operation link, or by selecting Construct Chain Automatically from the
Configuration menu.
FlashPro also enables you to manually edit your chain by adding Microsemi and Non-Microsemi devices.
You can add devices by clicking the Add Microsemi Device button and the Add Non-Microsemi Device
button, or you can select these options from the Configuration menu.
For more information about how to edit the chain, see Chain Editing.
Editing the Chain Configuration Grid
The Chain Configuration Grid enables you to select an Action for your device, Enable Serialization, and edit
the grid using the right-click menu.
To select an Action from the Configuration Grid:
1. Choose the device you would like to program and check the Enable Device checkbox.
2. In the Action column, click the down arrow to expose the drop down menu (see figure below).
3. Select your desired action.
Figure 117 · Drop Down Menu for Select Action
o Microsemi.
Mon
PROGRAM
PROGRAM_FROM
VERIFY
VERIFYiFROM
Sui-l
5‘
Serial Settings
I7 Evuuvam w
13 gelect Actlon. .. Ctrl+Shlft+A
SeLialization >
Load STAPL File... Ctvl+5hift+L
Chain Configuration Window
Mm
Imnm
m. m .535: g»;- m.“ ml Mum:
‘ AISBW a AIEWD g V Pnunfim EH
Chain Editing
FlashPro User's Guide 79
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Before you can enable serialization, you must check the Enable Device checkbox.
To enable Serialization:
1. Check the Enable Serial checkbox. By enabling serialization, the action options change.
2. In the Action column, click the down arrow to expose the drop down menu (see figure below).
Figure 118 · Drop Down Menu for Select Action
3. Select your desired action.
Figure 119 · Serial Data Column
4. Click the Select button from the Serial Data column, which is next to the Action column (see above
figure). The Serial Settings dialog box displays.
5. Choose your serial settings from the Serial Settings dialog box.
See Serial Settings for more information about this topic.
Note: Uncheck the Enable Serial checkbox to disable serialization.
To edit the Chain Configuration Grid:
1. Select the device you would like to edit and right click anywhere in the row of the selected device.
2. Select and click an option from the right-click menu.
Note: The Device Configuration menu (see figure below) includes options for configuring your device.
Figure 120 · Device Configuration Menu
Chain Editing
The chain order is located in the Chain Configuration Window (see figure below). The devices you add to the
chain must be in the correct order and must match the physical chain to be programmed.
Figure 121 · Chain Configuration Window
Check the Show Chain Editing checkbox to display chain editing options (Add Microsemi Device, Add
Non-Microsemi Device). See figure below.
G Micmsemi
I“ w w fig 5%
“mm“ w W
m IMIEK 5...... (ml: m...
“WI" ""— F'" 1...... [mm mm 5...... “W um ""W
I mm. an: ovw-mwmganmnD w l7 p pun-2m. y
mu 5
. l7
rmaF—i v
Adding Microsemi Devices
Adding Non-Microsemi Devices
Adding Microsemi Devices lrom a STAPL File
Automatic Chain Construction Tutorial
Chain Programming Tutorial
I“ w w fig 5%
“mm“ w W
m In In: 5...» (ml: 59...:
"I'— F'" mm [mm mm 5...; “W" mm ""W
s w
mu
0 v \i..wmgm.nc1
80 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 122 · Chain Configuration Window
You can edit the chain by adding Microsemi and Non-Microsemi Devices, for information refer to:
• Adding Microsemi Devices
• Adding Non-Microsemi Devices
• Adding Microsemi Devices from a STAPL File
• Automatic Chain Construction Tutorial
• Chain Programming Tutorial
Using the Organize Buttons in the Chain Programming Grid
The organize buttons enable you to select the order of the devices in your Chain Programming grid (see
figure below).
Figure 123 · Chain Configuration Window (Displaying Organize Buttons)
You can move devices up and down or delete devices within the grid. See the table below for a description
of each button.
Table 4 · Organize Buttons
Button
Description
Moves your device up in the Chain Programming grid.
Moves your device down in the Chain Programming grid.
Deletes your device from the Chain Programming grid.
Cutting, Copying and Pasting Devices from the Chain
If you want to make changes to your chain, you must make these changes from the spreadsheet in the
Chain Programming grid.
To copy or cut a device from the chain programming grid:
1. Select the device you would like to edit and right click anywhere in the row of the selected device. The
right-click menu appears.
2. Select Copy or Cut from the right-click menu to copy your device.
To paste a device from the chain programming grid:
1. Right-click the location where you would like to Paste the device.
2. Select Paste from the right-click menu .
o Microsemi.
:11!!!
Using the Organize buttons in the Chain
Programming grid
Skip Serial Data
Removing Devices from the Chain
FlashPro User's Guide 81
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Removing Devices from the Chain
If you want to make changes to your chain, you must make these changes from the spreadsheet in the
Chain Programming grid.
To remove a device from the chain programming grid:
1. Select the device you would like to remove and right click anywhere in the row of the selected device.
The right-click menu appears.
2. ChooseRemove from the right-click menu to delete your device.
Moving Devices within the Chain
You can move devices within the chain by using the Organize buttons (located next to the Add Microsemi
and Add Non-Microsemi Device buttons) in the Chain Programming grid (as shown in the figure below).
Figure 124 · Organize Buttons
To move or delete a device within the chain:
1. Click a device to select it.
2. Click one of the Organize button arrows to move your device up or down the spreadsheet. Click the
delete button (red X) to remove a device.
For more information about the Organize buttons, see Using the Organize buttons in the Chain
Programming grid.
Skip Serial Data
If you are unable to perform the programming action on your device, if your device fails to program, and you
have selected the Skip Serial Data serialization setting, the software automatically uses the next serial data
when you program the next device. By default, the software is set to Skip Serial Data.
You can change the serialization setting by selecting Tools > Serialization or you can click the Skip serial
data icon or the Reuse serial data icon from the toolbar.
Reuse Serial Data
If your device fails to program, and you have selected the Reuse Serial Data serialization setting, the
software automatically reuses the current serial data when you program the next device.
Note: The FlashPro default setting is Skip Serial Data.
You can change the serialization setting by selecting Tools > Serialization or you can click the Skip serial
data icon or the Reuse serial data icon from the toolbar.
Serialization with Parallel Programming
When programming the multiple ProASIC3 devices in parallel, while performing serialization at the same
time, each target device is assigned a Serial Index/Action for each programming run. Upon each successful
completion of each programming run, a new index is assigned to the each target device for the next
programming run. This process continues until the selected Serial Indices/Actions are exhausted.
Note: If programming failure is encountered, depending on the user setting, the failed serial data may be reused or skipped
in the next programming run.
OMicmsemi.
82 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
If, in the last programming run, the remaining number selected Serial Indices/Actions is less than the number of targeted
ProASIC3 devices, the targeted devices without an assigned Serial Index/Action are skipped in the final serial
programming run.
Add Adel Device
Adding a Microsemi Device
FlashPro User's Guide 83
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Chain Editing
Adding a Microsemi Device
To add an Microsemi device:
1. Click the Add Microsemi Device button from the Chain Programming grid. The Add Microsemi
Device dialog box appears (see figure below).
Figure 125 · Add Microsemi Device
2. Click the Device radio button and choose your device from the Device list drop-down menu.
3. Click the File radio button, then click the Browse button in the Programming file text box to find your
PDB/STAPL file. The Use File dialog box appears.
4. Find your PDB/STAPL file and click Open. Your PDB/STAPL file name appears in the Name text box.
You can change the name by clicking in the text box.
5. Click OK. Your device displays in the Chain Programming grid.
You can also add a Microsemi device from Configuration > Add Microsemi Device.
Adding a Microsemi Device from Files
To add a Microsemi device from a file:
1. From the Configuration menu, choose Add Microsemi Devices From Files. The Add Microsemi
Devices From Files dialog box appears.
2. Locate your file and click Open. Your device displays in the Chain Programming grid.
Adding a Non-Microsemi Device
When adding a non-Microsemi device, you must choose either a BSDL file or customize the Instruction
Register (IR) length and the Max TCK frequency of the device.
IR Length
The IR length specifies the number of IR bits in a specific device.
Add Non»Aclcl Device
84 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Max TCK Frequency
Maximum clock frequency to program a specific device. FlashPro uses this information to ensure that the
programmer operates at a frequency lower than the slowest device in the chain.
BSDL File
Boundary Scan Description Language (BSDL) files describe the characteristics of a specific device. When
using a BSDL file, FlashPro extracts the IR length and TCK frequency for the specific device and uses the
information to build the FlashPro STAPL file. If you do not have a BSDL file for your specific device, you
must manually enter the IR length and Max TCK for your device. This information should be found in the
datasheet for the device.
To add a non Microsemi device using a BSDL file:
1. Click the Add Non-Microsemi Device button in the Chain Programming window. The Add Non-
Microsemi Device dialog box appears (see figure below).
Figure 126 · Add Non-Microsemi Device Dialog Box
2. Type in the BSDL file or locate it by clicking the Browse button. If you click the Browse button to find
your BSDL file, the Use File dialog box displays.
3. Select your BSDL file from the Use File dialog box, and click Open.
4. Click OK, and your device appears in the Chain Programming grid.
When closing the Add Non-Microsemi Device window, if you specified a BSDL file, it is parsed and its IR
length and Max TCK frequency are retrieved.
Note: If you select a BSDL file, you cannot specify an IR length and Max TCK frequency.
To add a Non-Microsemi device using an IR length and a Max TCK frequency:
1. Click the Add Non-Microsemi Device button from the Chain Programming window.
2. Click the Data option from the Add Non-Microsemi Device dialog box.
3. Enter the IR length AND the Max TCK frequency in MHz.
4. Click OK.
If you decide to use custom data, you must specify both an IR length and Max TCK frequency.
Note: The IR length must be an integer greater than or equal to 2, and the Max TCK frequency must be a float greater than
or equal to 1.
Non-Aclel Device Cnnfiguralinn
(‘ Data
IR length: 0
Max ICK Flam: D MHz
Name: AFSGUUFGZSG
Help UK
Camel
OMicrosemi.
Adding a Non-Microsemi Device
FlashPro User's Guide 85
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Non-Microsemi Device Configuration Dialog Box
It is possible to add multiple BSDL files to your Non-Microsemi device database that have the same
IDCODE. If the BSDL files list the same IR length but different TCK values, FlashPro automatically chooses
the file with the lowest TCK value by default and no action is required. If the IR lengths are different you
receive an error message asking you to resolve the conflict.
To resolve the issue, click the drop-down arrow adjacent to the device name. This opens the Non-Microsemi
Device Configuration dialog box (as shown in the figure below). From here you can choose the device that
you wish to use. Select the device from the dropdown menu and enter a new name or use the default.
Figure 127 · Non-Microsemi Device Configuration Dialog Box
OMicmsemi,
Selecl Aclion And Procedures ‘E‘
Anion:
DEVI(E_INFO v
Plucsdues
VEHIFY_IDEDDE
. HEAD_INITIALIZE
, _ »,L\F‘_EAL\B
READ_IDEDDE_IJNLY
E DD_DEVIEE_INFD
E DU_QUERY_SECURITY
DD_E><|t restore="" defaulprooedres="" i="" new="" |="" w="" i="">|t>
86 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Configuring a Programmer
Selecting an Action
The available actions are depend on what type of STAPL file you have loaded into the software.
To configure a programmer:
1. From the Configuration menu, choose Select Action. The Select Action and Procedures dialog
box appears (see figure below). You can change the procedures for each action; the procedures that
appear will vary depending on both your device and the action you have selected.
Figure 128 · Select Action and Procedures Dialog Box
2. Click the checkboxes of the available procedures or click the Restore Default Procedures button in
the Select Action and Procedures dialog box.
3. Click OK.
Click the Restore Default Procedures to return to default settings.
For example, if you wish to disable the gathering of Check and Backup calibration data:
1. In the Action drop-down menu, choose DEVICE_INFO.
2. Click Procedures to open the Select Action and Procedures dialog box (as shown in the figure
above).
3. Click CHECK_AND_BACKUP_CALIB to clear the checkbox and disable it.
4. Click OK to continue.
Using Serialization
To use serialization:
1. Enable serialization by checking the Serialization checkbox.
2. Select an action in the Action text box.
Serial
Tutorial (EFMB)
Sel tings
Region_6_3
i—I—
Modifling Memoq Contents and Programming 3 Device
Modifying FlashROM Contents and Programming a Device Tutorial
Modifying Programming Settings in FlashPro with a PDB File
FlashPro User's Guide 87
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
3. Click the Select Serialization Indexes button. The Serial Settings dialog box displays (see figure
below).
Note: Note: Depending on the STAPL file format (Microsemi format or generic format) used, you will either
see Indexes columns or Actions columns in the Serial Settings dialog box.
Figure 129 · Serial Settings Dialog Box
Note: Depending on your STAPL file, you would click the Select Serialization Action button (see figure below).
Figure 130 · Select Serialization Actions Button
Modifying Programming Settings in FlashPro with a PDB File
FlashPro enables you to modify programming settings within the software by using a PDB file. This feature
is available only for PDB files generated from Designer v8.1 or greater. This feature allows modification of
features being programmed, security settings, and memory content update for FlashROM and Embedded
Flash Memory Blocks (Fusion only). Please refer to Modifying Memory Contents and Programming a Device
Tutorial (EFMB) and Modifying FlashROM Contents and Programming a Device Tutorial for an example.
OMicmsemi.
Conliqurina securilv FlashROM and Embedded Flash Memorv Block settinqs in FlashPm
88 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Note: You cannot add or remove the FPGA feature from your PDB. If you would like to add or remove this feature from
your PDB, regenerate the PDB from Designer.
See Also
Configuring security, FlashROM and Embedded Flash Memory Block settings in FlashPro
OMicmsemi.
fluthi
I— ”my”;
IV w A A w
l7 FlafloM
fm-szmmm
Swim futile“) m b. wag-mud:
Ongml mom nonfigunmn Fla:
Wedded Flam Mammy Ends (5MB):
- Pmyullnlng file Genera!” - Slep 1 of z
Imps
Pull-n
Ihnk
III-e
Ilnnk
analinn
miinal Carlin-dim Fi-
I I7 MUMMILI
Rb‘mmafi:
Mum. ,
rmm‘
Ha‘n
Sccurig setting
FlnstROM
may 110 Magnum; Pmymgm
Elmsqmmmu length ‘5 a PEX (has):
[—
Embedded Flash Mcmog Block
Came!
Configuring Security, FlashROM and Embedded Flash Memory Settings in FlashPro
FlashPro User's Guide 89
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Configuring Security
Configuring Security, FlashROM and Embedded Flash Memory
Settings in FlashPro
1. From the Configuration menu, choose Load Programming File (PDB).
2. Select the PDB file and click Open, this loads the programming file.
3. From the Configuration menu, choose PDB Configuration. The Programming File Generator
appears (see figure below).
Figure 131 · Programming File Generator
4. Select the Silicon feature(s) you want to program:
• Security settings
• FlashROM
• Embedded Flash Memory Block
5. Check the Programming previously secured device(s) box if you are reprogramming a device that
has been secured.
Because the SmartFusion, IGLOO, ProASIC3 and Fusion families enable you to program the Security
Settings separately from the FPGA Array and/or FlashROM, you must indicate if the Security Settings were
previously programmed into the target device. This requirement also applies when you generate
programming files for reprogramming.
6. Enter the Silicon signature (0-8 HEX characters).
7. Click Next.
OMimsemi.
nl you n; nu w a
swim ram-5(5) ho be magma:
o l7 Sammy ”this
F PM NH
|7 HasNIOM
01ng Human (mflgflanm m
W mum
mud-d Huh Mum!" axis (ems):
Plug-l LEE; mig'nal Enll'gnalim Fill
‘ p’ u Hldzwfiwhin Madly.
r MAW; W a , M 4: W
may no Sumswnm; Fwy-mung...
swkmsummmmgm s n "mm-5y
[—
Ha‘v
m um um.
90 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Configuring Security Settings in FlashPro
To configure the security settings:
1. From the Configuration menu, choose Load Programming File (PDB).
2. Select the PDB file and click Open, this loads the programming file.
3. From the Configuration menu, choose PDB Configuration. The Programming File Generator
appears (as shown in the figure below).
Figure 132 · Programming File Generator
4. Check the Security Settings checkbox and click Next. This brings up the Security Settings dialog
box (shown below).
FlashPoinl , Programming File General-2r 7512;. I 013
5mm \eve‘ fw tfus device:
- man when wlh xza-m Mvanud 5mm mm (mm A
and Pass Kev
, y r .
, , Mum Use Ass mm me a: wry the m may
, use A5 mm m; u vwa m F‘ashnom we the ma 7
nharfacu‘
. . Nun: V
cm.» Laval. . Defau‘l um
Pass Key (max Ierwlh is 32 HE< chars):="" an”;="" vandm="" m="" aes="" kay="" (max="" \ength="" s="" 32="" ex="" (hays):="" genevas="" vandnm="" by="" hap="">< next="" cancel="">
Configuring Security Settings in FlashPro
FlashPro User's Guide 91
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Figure 133 · Security Settings Dialog Box
5. Move the sliding bar to select the security level for FPGA, FlashROM, and EFMB (see table for a
description of the security levels).
Table 5 · Security Level Descriptions
Security
Level
Security Option
Description
High Protect with a
128-bit Advanced
Encryption
Standard (AES)
key and a Pass
Key
Access to the device is protected by an AES Key and the Pass Key. The Write and Verify
operations of the FPGA Array use a 128-bit AES encrypted bitstream. From the JTAG
interface, the Write operation of the FlashROM uses a 128-bit AES encrypted bitstream.
Read back of the FlashROM content via the JTAG interface is protected by the Pass Key.
Read back of the FlashROM content is allowed from the FPGA Array.
Medium Protect with Pass
Key The Write and Verify operations of the FPGA Array require a Pass Key. From the JTAG
interface, the Read and Write operations on the FlashROM content require a Pass Key.
You can Verify the FlashROM content via the JTAG interface without a Pass Key. Read
back of the FlashROM content is allowed from the FPGA Array.
None No Security The Write and Verify operations of the FPGA Array do not require keys. The Read, Write,
and Verify operations of the FlashROM content also do not require keys.
Note: Note: When a device is programmed with a Pass key and AES key, only the Pass key is required
for reprogramming since re-entering the correct Pass key unlocks the bits that restrict programming
to require AES encryption and also unlocks the bits that prohibit reprogramming altogether (if
locked); thus both plaintext and encrypted programming are [re-] enabled.
6. Enter the Pass Key and/ or the AES Key as appropriate. You can generate a random key by clicking
the Generate random key button.
The Pass Key protects all the Security Settings for the FPGA Array and/or FlashROM.
The AES Key decrypts FPGA Array and/or FlashROM programming file content. Use the AES Key if
you intend to program the device at an unsecured site or if you plan to update the design at a remote
site in the future.
OMicmsemi.
change or disable your security Keys
C ustum Sec urity Level
Custom Level
Device Feature
Security Selling:
ml Enclwl Road
FPEA Anny P l7
FIashHDM I7 I7
filmaIBUNVMJNST [II 1] F ['7
l— Permanenfly luck the security settings.
Help
Cancel
Security W!
Device Feature . Enclym
Rzld I Velilyl Wril:
FPGAAn-y
92 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
7. Click Finish.
You can also customize the security levels by clicking the Custom Level button.
To change or disable your security keys you must run the ERASE_SECURITY action code. This erases your
security settings and enables you to generate the programming file with new keys and reprogram, or to
generate a programming file that has no security key.
Custom Security Settings
For advanced use, you can customize your security levels.
To set custom security levels:
1. Click the Custom Level button in the Setup Security page. The Custom Security dialog box appears
(see figure below).
Figure 134 · Custom Security Level
2. Select the FPGA Array Security, the FlashROM Security, and Embedded Flash Memory block
levels.
The silicon features can have different Security Settings. See the tables below for a description of
the custom security option levels for FPGA Array, FlashROM, and Embedded Flash Memory
block.
Table 6 · FPGA Array
Security Option
Description
Lock for both writing and verifying
Allows writing/erasing and
verification of the FPGA Array
via the JTAG interface only with
a valid Pass Key.
o Microsemi.
n ‘ 5:1 Sea-mm
F Security a'a‘m new Verityl Write
FPGAArrIy |7 r [a] E
F Security Em,” Read | Verityl um:
Imam-v P I W I w .; w :4
Set Sen-ritySefliI-g!
Dank-tun i ‘I HEW bad I V2,", “m
rPGAAn-y F F 1
Mare-Inn
Human
. 52: Sean Settings
Mum-tare 5 . Encrypt Read I Verify
WI. P r [fl [fl .2
Denoefelnlre S V Encrypt Mead Velifyl .
Human W [7 E
Custom Security Settings
FlashPro User's Guide 93
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Security Option
Description
Lock for writing
Allows the writing/erasing of the
FPGA Array only with a valid
Pass Key. Verification is allowed
without a valid Pass Key.
Use the AES Key for both writing and verifying
Allows the writing/erasing and
verification of the FPGA Array
only with a valid AES Key via the
JTAG interface. This configures
the device to accept an
encrypted bitstream for
reprogramming and verification
of the FPGA Array. Use this
option if you intend to complete
final programming at an
unsecured site or if you plan to
update the design at a remote
site in the future. Accessing the
device security settings requires
a valid Pass Key.
Allow write and verify
Allows writing/erasing and
verification of the FPGA Array
with plain text bitstream and
without requiring a Pass Key or
an AES Key. Use this option
when you develop your product
in-house.
Note: The ProASIC3 family FPGA Array is always read protected regardless of the Pass Key or the AES Key protection.
Table 7 · FlashROM
Security Option
Description
Lock for both reading and writing
Allows the writing/erasing and
reading of the FlashROM via the
JTAG interface only with a valid
Pass Key. Verification is allowed
without a valid Pass Key.
Lock for writing
Allows the writing/erasing of the
FlashROM via the JTAG
interface only with a valid Pass
Key. Reading and verification is
allowed without a valid Pass
Key.
Use the AES Key for writing
Allows the writing/erasing of the
FlashROM via the JTAG
interface only with a valid AES
Key. This configures the device
to accept an encrypted bitstream
for reprogramming of the
0 Microsemi,
Dunn-mm WW!!!
nun | Veriryl Write
run-non 1 ‘
Micah-mu Encrym
'° Sewn-v 7 new I Verml W310
fimwurewvfljlsl’fll) E m [ E
DeviceFe-ture Encrypt S m, V 9’
Read | Vetify Write
«mmwvans-nu) El [B] 5
Deviceme Encrwt mm 7 I
Verity | Write
nmwnrevuvuJusnu) ‘-
94 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Security Option
Description
FlashROM. Use this option if you
complete final programming at
an unsecured site or if you plan
to update the design at a remote
site in the future.
Note: The bitstream that is read
back from the FlashROM is
always unencrypted (plain text).
Allow reading, writing, and verifying
Allows writing/erasing, reading
and verification of the FlashROM
content with a plain text
bitstream and without requiring a
valid Pass Key or an AES Key.
Note: The FPGA Array can always read the FlashROM content regardless of these Security Settings.
Table 8 · Embedded Flash Memory Block
Security Option
Description
Lock for reading, verifying, and writing
Allows the writing and reading
of the Embedded Flash
Memory Block via the JTAG
interface only with a valid Pass
Key. Verification accomplished
by reading back and compare.
Lock for writing
Allows the writing of the
Embedded Flash Memory
Block via the JTAG interface
only with a valid Pass Key.
Reading and verification is
allowed without a valid Pass
Key.
Use AES Key for writing
Allows the writing of the
Embedded Flash Memory
Block via the JTAG interface
only with a valid AES Key. This
configures the device to accept
an encrypted bitstream for
reprogramming of the
Embedded Flash Memory
Block. Use this option if you
complete final programming at
an unsecured site or if you
plan to update the design at a
remote site in the future. The
bitstream that is read back
from the Embedded Flash
Memory Block is always
unencrypted (plain text), when
a valid pass key is provided.
O Microsemi.
. sq sen-lily swings
Dune Felluve . Em:
59W“! w m | Vemy | m
finnwemwluust (a 1) r r ‘ [
Custom Security Level W‘
‘ Set Security Suing:
Device Feature Secuiuol Enclwl Rea d “his
FPEA Anny P l7 “
FIashHDM I7 . I7
filmal:UNVM_INST [fl 1] F ['7
l— Permanenfly luck the security settings.
Changing or Disabling Security Keys
FlashPro User's Guide 95
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Security Option
Description
Allow reading, writing, and verifying
Allows writing, reading and
verification of the Embedded
Flash Memory Block content
with a plain text bitstream and
without requiring a valid Pass
Key or an AES Key.
3. To make the Security Settings permanent, select the Permanently lock the security settings check
box. This option prevents any future modifications of the Security Setting of the device. A Pass Key is
not required if you use this option.
Note: Note: When you make the Security Settings permanent, you can never reprogram the Silicon
Signature. If you lock the write operation for the FPGA Array or the FlashROM, you can never
reprogram the FPGA Array or the FlashROM, respectively. If you use an AES key, this key cannot be
changed once you permanently lock the device.
To use the Permanent FlashLock™ feature, select Lock for both writing and verifying for FPGA Array
and Lock for both reading and writing for FlashROM and select the Permanently lock the security
settings checkbox as shown in the figure below. This will make your device one-time-programmable.
Custom Security Level- Permanent Lock
4. Click the OK button. The Security Settings page appears with the Custom security setting
information.
Changing or Disabling Security Keys
To change or disable your security keys you must run the ERASE_SECURITY action code.
ERASE_SECURITY erases your security settings and enables you to generate the programming file with
new keys and reprogram, or to generate a programming file that has no security key.
Your action codes vary according to device family:
OMimsemi.
Programming File Actions - SmartFusion and Fusion Devices
Programming Actions - IGLOO and FroASICS Devices
FlashRDM Selllngs Slap 1 no 1
Flad’ilm Yawng: Ream
Program Pmputn
p.93 Name fian'nnJLn
I7 sun Dag! n
5m m: n
I7 nglh 15
cm": sun:
I? sun; mad
p 1». HR
vane mmtrawsum
p 29mm mam
l7
l7
l7
Hdv Back Fl'ilsh camel
96 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
• Programming File Actions - SmartFusion and Fusion Devices
• Programming Actions - IGLOO and ProASIC3 Devices
Configuring FlashROM Settings in FlashPro
To configure the FlashROM settings:
1. From the Configuration menu, choose Load Programming File (PDB).
2. Select the PDB file and click Open, this loads the programming file.
3. From the Configuration menu, choose PDB Configuration. The Programming File Generator
appears.
4. Check the FlashROM checkbox and click Browse to load a FlashROM configuration file. Click Next.
This brings up the FlashROM Settings dialog box (see figure below).
Figure 135 · FlashROM Settings Dialog Box
5. Select the FlashROM memory page that you want to program.
6. Enter the data value for the configured regions.
7. If you selected the region with a Read From File, specify the file location.
8. If you selected the Auto Increment region, specify the Start and Max values.
9. Enter the number of devices you want to program.
10. Click the Target Programmer button. The Select Programmer Type dialog box appears.
11. Click Finish. FlashPoint generates your programming file.
Note: You cannot change the FlashROM region configuration from FlashPoint. You can only change the configuration
from the FlashROM core generator.
O Microsemi.
Programming Only Security Settings Tutorial
Express Configuration
FlashPro User's Guide 97
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Express Configuration
The express configuration feature in FlashPro allows you to set the security settings as well as FlashROM
content without a design. This allows the production flow to be executed in parallel to the design effort if
needed.
For example, you can pre-program the security settings with the High Security setting and serialize the
device using FlashROM without the FPGA design in a secured programming environment. The FPGA Array
and EFMB design can be programmed in unsecured programming environment using encrypted
programming file. Refer to Programming Only Security Settings Tutorial for more information.
Note: This feature is only available for SmartFusion, IGLOO, ProASIC3 and Fusion devices.
OMicmsemi,
98 FlashPro User's Guide
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
IGLOO and ProASIC3 Programming
O Microsemi.
Non: When we specify a fam
Supported Fm es topic
FlashROM .md Security
Express Configuration
FlashPro User's Guide 99
NOTE: Links and cross-references in this PDF file may point to external files and generate an error
when clicked. View the online help included with software to enable all linked content.
Programming File Actions for IGLOO and ProASIC3 Devices
IGLOO and ProASIC3 devices support the following features:
• FPGA Array
• FlashROM
• Security settings
You can program these features separately or together using different programming files or by using one
programming file.
Note: When we specify a family name, we refer to the device family and all its derivatives, unless otherwise specified. See
the Supported Families topic for a complete list of families and their derivatives.
The STAPL files for IGLOO and ProASIC3, excluding ProASIC3L, devices include actions targeted at one,
two, or all three of the IGLOO and ProASIC3 features (FPGA Array and FlashROM and Security Settings).
The combinations of the features you selected to target results in different actions that are available in the
STAPL file. See the following table for an illustration.
The table indicates that if you choose the feature FPGA Array, it will be affected by the PROGRAM file
action.
If you choose the feature Security, it will be unaffected by the PROGRAM action.
Table 9 · IGLOO and ProASIC3 Device Programming Actions
Features Selected
FPGA
Array FlashROM Security FPGA
Array and
FlashROM
FPGA
Array and
Security
FlashROM and Security
STAPL Actions Available (correspond with Features Selected above)
PROGRAM
X
X
X
X
X
VERIFY
X
X
X
X
X
ERASE
X
X
X
X
X
ERASE_ALL
X
X
X
X
X
X
DEVICE_INFO
X
X
X
X
X
X
READ_IDCODE
X
X
X
X
X
X
ERASE_FROM
X
X
X
PROGRAM_FROM
ERASE_ARRAY
X
X
X
VERIFY_ARRAY
X
X
X
ENC_DATA_AUT